[ckan-changes] commit/ckan: 3 new changesets

Bitbucket commits-noreply at bitbucket.org
Wed Oct 26 11:00:05 UTC 2011


3 new commits in ckan:


https://bitbucket.org/okfn/ckan/changeset/7c017d8f5133/
changeset:   7c017d8f5133
branch:      feature-1380-fix-css
user:        zephod
date:        2011-10-26 12:45:44
summary:     [css][m]: Fixed up the user list template and linked it on the main page.
affected #:  3 files

diff -r 4c88433797b6e1997fd91d9833e60f0aeb937c6e -r 7c017d8f5133f2046b669594926fefcb61faad40 ckan/public/css/style.css
--- a/ckan/public/css/style.css
+++ b/ckan/public/css/style.css
@@ -280,6 +280,7 @@
   padding-left: 0px;
 }
 #sidebar .widget-list li.widget-container {
+  padding-bottom: 1em;
   border-bottom: 1px solid #e0e0e0;
   margin-bottom: 1em;
 }
@@ -549,6 +550,12 @@
 ul.userlist .badge {
   color: #fc0;
 }
+.user-search input[type=text],
+.user-search input[type=password] {
+  width: 70%;
+  margin-top: 5px;
+}
+
 
 
 /* ================== */


diff -r 4c88433797b6e1997fd91d9833e60f0aeb937c6e -r 7c017d8f5133f2046b669594926fefcb61faad40 ckan/templates/layout_base.html
--- a/ckan/templates/layout_base.html
+++ b/ckan/templates/layout_base.html
@@ -147,6 +147,11 @@
           <div class="textwidget"><ul><li>
+                <a href="${url(controller='user', action='index')}">
+                  Users
+                </a>
+              </li>
+              <li><a href="${url(controller='tag', action='index')}">
                   Tags
                 </a>


diff -r 4c88433797b6e1997fd91d9833e60f0aeb937c6e -r 7c017d8f5133f2046b669594926fefcb61faad40 ckan/templates/user/list.html
--- a/ckan/templates/user/list.html
+++ b/ckan/templates/user/list.html
@@ -9,26 +9,24 @@
   
   <py:match path="primarysidebar"><li class="widget-container widget_text" py:if="not c.hide_welcome_message">
-      <form id="user-search" action="" method="GET">
+      <form id="user-search" class="user-search" action="" method="GET"><input type="text" id="q" name="q" value="${c.q}" />
-        <input type="submit" name="" value="Search »" />
+        <input type="submit" class="pretty-button small-button" name="" value="Search »" /></form>
-      <p i18n:msg="item_count">
+      <p py:if="c.q" i18n:msg="item_count"><strong>${c.page.item_count}</strong> users found.
       </p></li>
-    
-
   </py:match><py:match path="minornavigation"><ul class="tabbed">
-      <li>
+      <li py:attrs="{'class':'current-tab'} if c.order_by=='name' else {}">
+        <a href="?q=${c.q}&order_by=name" rel="nofollow">Sort by name</a>
+      </li>
+      <li py:attrs="{'class':'current-tab'} if c.order_by=='edits' else {}"><a href="?q=${c.q}&order_by=edits" rel="nofollow">Sort by edits</a></li>
-      <li>
-        <a href="?q=${c.q}&order_by=name" rel="nofollow">Sort by name</a>
-      </li></ul></py:match>
 



https://bitbucket.org/okfn/ckan/changeset/fc4fa7f93676/
changeset:   fc4fa7f93676
branch:      feature-1380-fix-css
user:        zephod
date:        2011-10-26 12:50:01
summary:     [close-branch]:
affected #:  0 files


https://bitbucket.org/okfn/ckan/changeset/f600e0d37f6c/
changeset:   f600e0d37f6c
user:        zephod
date:        2011-10-26 12:55:18
summary:     [merge,from-branch]: Pulled in CSS fixes.
affected #:  22 files

diff -r 9f02da7ab51c65b9b0d549177243cf88a33a872f -r f600e0d37f6cbe3963b0ad610c08bd868f1d1f62 ckan/config/deployment.ini_tmpl
--- a/ckan/config/deployment.ini_tmpl
+++ b/ckan/config/deployment.ini_tmpl
@@ -152,6 +152,11 @@
 ## Enable if the API is at a different domain
 # ckan.api_url = http://www.ckan.net
 
+## html content to be inserted just before </head> tag (e.g. extra stylesheet)
+## NB: can use html e.g. <strong>blah</strong>
+## NB: can have multiline strings just indent following lines
+# ckan.template_head_end = <link rel="stylesheet" href="http://mysite.org/css/custom.css" type="text/css"> 
+
 ## html content to be inserted just before </body> tag (e.g. google analytics code)
 ## NB: can use html e.g. <strong>blah</strong>
 ## NB: can have multiline strings just indent following lines


diff -r 9f02da7ab51c65b9b0d549177243cf88a33a872f -r f600e0d37f6cbe3963b0ad610c08bd868f1d1f62 ckan/lib/app_globals.py
--- a/ckan/lib/app_globals.py
+++ b/ckan/lib/app_globals.py
@@ -29,6 +29,7 @@
         # has been setup in load_environment():
         self.site_id = config.get('ckan.site_id')
 
+        self.template_head_end = config.get('ckan.template_head_end', '')
         self.template_footer_end = config.get('ckan.template_footer_end', '')
 
         # hide these extras fields on package read


diff -r 9f02da7ab51c65b9b0d549177243cf88a33a872f -r f600e0d37f6cbe3963b0ad610c08bd868f1d1f62 ckan/public/css/blueprint/screen.css
--- a/ckan/public/css/blueprint/screen.css
+++ b/ckan/public/css/blueprint/screen.css
@@ -93,15 +93,23 @@
 textarea {width:390px;height:250px;padding:5px;}
 form.inline {line-height:3;}
 form.inline p {margin-bottom:0;}
-.error, .alert, .notice, .success, .info {padding:0.8em;margin-bottom:1em;border:2px solid #ddd;}
-.error, .alert {background:#fbe3e4;color:#8a1f11;border-color:#fbc2c4;}
-.notice {background:#fff6bf;color:#514721;border-color:#ffd324;}
-.success {background:#e6efc2;color:#264409;border-color:#c6d880;}
-.info {background:#d5edf8;color:#205791;border-color:#92cae4;}
-.error a, .alert a {color:#8a1f11;}
-.notice a {color:#514721;}
-.success a {color:#264409;}
-.info a {color:#205791;}
+.flash-messages .error, 
+.flash-messages .alert, 
+.flash-messages .notice, 
+.flash-messages .success, 
+.flash-messages .info {
+  padding:0.8em;margin-bottom:1em;border:2px solid #ddd;
+}
+.flash-messages .error, 
+.flash-messages .alert {background:#fbe3e4;color:#8a1f11;border-color:#fbc2c4;}
+.flash-messages .notice {background:#fff6bf;color:#514721;border-color:#ffd324;}
+.flash-messages .success {background:#e6efc2;color:#264409;border-color:#c6d880;}
+.flash-messages .info {background:#d5edf8;color:#205791;border-color:#92cae4;}
+.flash-messages .error a, 
+.flash-messages .alert a {color:#8a1f11; text-decoration: underline;}
+.flash-messages .notice a {color:#514721; text-decoration: underline;}
+.flash-messages .success a {color:#264409; text-decoration: underline;}
+.flash-messages .info a {color:#205791; text-decoration: underline;}
 
 /* grid.css */
 .container {width:950px;margin:0 auto;}
@@ -262,4 +270,4 @@
 hr.space {background:#fff;color:#fff;visibility:hidden;}
 .clearfix:after, .container:after {content:"\0020";display:block;height:0;clear:both;visibility:hidden;overflow:hidden;}
 .clearfix, .container {display:block;}
-.clear {clear:both;}
\ No newline at end of file
+.clear {clear:both;}


diff -r 9f02da7ab51c65b9b0d549177243cf88a33a872f -r f600e0d37f6cbe3963b0ad610c08bd868f1d1f62 ckan/public/css/pretty_buttons.css
--- /dev/null
+++ b/ckan/public/css/pretty_buttons.css
@@ -0,0 +1,111 @@
+/* ================================== */
+/* = Twitter.Bootstrap Form Buttons = */
+/* ================================== */
+.pretty-button {
+  cursor: pointer;
+  display: inline-block;
+  background-color: #e6e6e6;
+  background-repeat: no-repeat;
+  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), color-stop(0.25, #ffffff), to(#e6e6e6));
+  background-image: -webkit-linear-gradient(#ffffff, #ffffff 0.25, #e6e6e6);
+  background-image: -moz-linear-gradient(#ffffff, #ffffff 0.25, #e6e6e6);
+  background-image: -ms-linear-gradient(#ffffff, #ffffff 0.25, #e6e6e6);
+  background-image: -o-linear-gradient(#ffffff, #ffffff 0.25, #e6e6e6);
+  background-image: linear-gradient(#ffffff, #ffffff 0.25, #e6e6e6);
+  padding: 4px 14px;
+  text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75);
+  color: #333;
+  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
+  font-weight: normal;
+  font-size: 13px;
+  line-height: 18px;
+  border: 1px solid #ccc;
+  border-bottom-color: #bbb;
+  -webkit-border-radius: 4px;
+  -moz-border-radius: 4px;
+  border-radius: 4px;
+  -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
+  -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
+  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
+  -webkit-transition: 0.1s linear all;
+  -moz-transition: 0.1s linear all;
+  transition: 0.1s linear all;
+}
+.pretty-button.depressed,
+.pretty-button:hover {
+  background-position: 0 -15px;
+  color: #333;
+  text-decoration: none;
+}
+.pretty-button.primary, .pretty-button.danger {
+  color: #fff;
+}
+.pretty-button.primary:hover, .pretty-button.danger:hover {
+  color: #fff;
+}
+.pretty-button.primary {
+  background-color: #0064cd;
+  background-repeat: repeat-x;
+  background-image: -khtml-gradient(linear, left top, left bottom, from(#049cdb), to(#0064cd));
+  background-image: -moz-linear-gradient(#049cdb, #0064cd);
+  background-image: -ms-linear-gradient(#049cdb, #0064cd);
+  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #049cdb), color-stop(100%, #0064cd));
+  background-image: -webkit-linear-gradient(#049cdb, #0064cd);
+  background-image: -o-linear-gradient(#049cdb, #0064cd);
+  background-image: linear-gradient(#049cdb, #0064cd);
+  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
+  border-color: #0064cd #0064cd #003f81;
+  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
+}
+.pretty-button.danger {
+  background-color: #9d261d;
+  background-repeat: repeat-x;
+  background-image: -khtml-gradient(linear, left top, left bottom, from(#d83a2e), to(#9d261d));
+  background-image: -moz-linear-gradient(#d83a2e, #9d261d);
+  background-image: -ms-linear-gradient(#d83a2e, #9d261d);
+  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #d83a2e), color-stop(100%, #9d261d));
+  background-image: -webkit-linear-gradient(#d83a2e, #9d261d);
+  background-image: -o-linear-gradient(#d83a2e, #9d261d);
+  background-image: linear-gradient(#d83a2e, #9d261d);
+  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
+  border-color: #9d261d #9d261d #5c1611;
+  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
+}
+.pretty-button.large {
+  font-size: 16px;
+  line-height: 28px;
+  -webkit-border-radius: 6px;
+  -moz-border-radius: 6px;
+  border-radius: 6px;
+}
+.pretty-button.small-button {
+  padding-right: 9px;
+  padding-left: 9px;
+  font-size: 11px;
+}
+.pretty-button.disabled {
+  background-image: none;
+  filter: alpha(opacity=65);
+  -khtml-opacity: 0.65;
+  -moz-opacity: 0.65;
+  opacity: 0.65;
+  cursor: default;
+}
+.pretty-button:disabled {
+  background-image: none;
+  filter: alpha(opacity=65);
+  -khtml-opacity: 0.65;
+  -moz-opacity: 0.65;
+  opacity: 0.65;
+  cursor: default;
+}
+.pretty-button.depressed,
+.pretty-button:active {
+  -webkit-box-shadow: inset 0 3px 7px rgba(0, 0, 0, 0.1), 0 1px 2px rgba(0, 0, 0, 0.05);
+  -moz-box-shadow: inset 0 3px 7px rgba(0, 0, 0, 0.1), 0 1px 2px rgba(0, 0, 0, 0.05);
+  box-shadow: inset 0 3px 7px rgba(0, 0, 0, 0.1), 0 1px 2px rgba(0, 0, 0, 0.05);
+}
+button.pretty-button::-moz-focus-inner, input.pretty-button::-moz-focus-inner {
+  padding: 0;
+  border: 0;
+}


diff -r 9f02da7ab51c65b9b0d549177243cf88a33a872f -r f600e0d37f6cbe3963b0ad610c08bd868f1d1f62 ckan/public/css/style.css
--- a/ckan/public/css/style.css
+++ b/ckan/public/css/style.css
@@ -1,4 +1,5 @@
 @import url('/css/forms.css');
+ at import url('/css/pretty_buttons.css');
 
 .header.outer {
   background-color: #e2e2e2;
@@ -147,17 +148,67 @@
   color: #183661;
 }
 
+fieldset {
+  border: 0px;
+  border-bottom: 1px solid #e0e0e0;
+}
 
-/* Basic page elements */
 
+/* ====== */
+/* Tables */
+/* ====== */
+table th {
+  border: 1px solid #e0e0e0;
+  background-color: #e2e2e2;
+  background-image: -webkit-gradient(linear, left top, left bottom, from(#f0f0f0), to(#e2e2e2)); 
+  background-image: -webkit-linear-gradient(top, #f0f0f0, #e2e2e2); 
+  background-image:    -moz-linear-gradient(top, #f0f0f0, #e2e2e2); 
+  background-image:     -ms-linear-gradient(top, #f0f0f0, #e2e2e2); 
+  background-image:      -o-linear-gradient(top, #f0f0f0, #e2e2e2); 
+  background-image:         linear-gradient(top, #f0f0f0, #e2e2e2);
+            filter: progid:DXImageTransform.Microsoft.gradient(startColorStr='#f0f0f0', EndColorStr='#e2e2e2');
+}
+table caption {
+  caption-side: bottom; 
+  color: #888;
+  font-size: 0.9em;
+  background-color: white;
+}
+tbody tr:nth-child(even) td, tbody tr.even td {
+  background-color: #FCF6CF;
+}
+tbody tr:nth-child(odd) td, tbody tr.odd td {
+  background-color: #FEFEF2;
+}
+tbody tr.table-empty td {
+  background: #f8f8f8;
+  border: 1px solid #eee;
+  font-style: italic;
+  color: #333;
+  font-size: 90%;
+}
+
+
+
+/* ==================== */
+/* Common page elements */
+/* ==================== */
+#content {
+  border-right: 1px solid #e0e0e0;
+}
 .page_heading {
-  margin-top: 1em;
-  margin-bottom: 1em;
+  margin-top: 0.9em;
+  margin-bottom: 0.7em;
   font-size: 2.2em;
   font-weight: normal;
 }
 
+
+/* =============== */
+/* MinorNavigation */
+/* =============== */
 #minornavigation {
+  margin-bottom: 1em;
   border: 1px solid #e0e0e0;
   background-color: #e2e2e2;
   background-image: -webkit-gradient(linear, left top, left bottom, from(#f0f0f0), to(#e2e2e2)); 
@@ -173,23 +224,37 @@
           border-radius: 5px; 
   -moz-background-clip: padding; -webkit-background-clip: padding-box; background-clip: padding-box; 
 }
-
-#minornavigation ul.tabbed li.action {
-  float: right;
+#minornavigation ul {
+  list-style: none; 
+  padding: 4px;
+  margin: 0;
 }
 #minornavigation li {
-  border: 1px solid transparent;
+  display: inline-block;
+  margin-right: 3px;
+  border: 2px solid transparent;
+  padding: 5px 11px 5px 9px
+}
+#minornavigation li.action {
+  float: right;
 }
 #minornavigation li.current-tab {
   background: #000;
   background-color: #fff;
   border: 1px solid #777;
-  border-bottom: 1px solid #ccc;
-  border-right: 1px solid #ccc;
+  border-bottom: 0px solid #ccc;
+  border-right: 0px solid #ccc;
      -moz-border-radius: 5px; 
   -webkit-border-radius: 5px; 
           border-radius: 5px; 
-          
+}
+#minornavigation li a {
+  text-decoration: none;
+  font-weight: bold;
+}
+#minornavigation li a img {
+  margin-bottom: -4px;
+  padding-right: 5px;
 }
 #minornavigation li.current-tab a,
 #minornavigation li.current-tab a:hover,
@@ -197,18 +262,29 @@
   color: #222;
 }
 
-/* Side bar widgets */
-ul.widget-list {
+
+/* ======= */
+/* Sidebar */
+/* ======= */
+#sidebar {
+  margin-right: -10px;
+  padding-left: 9px;
+  overflow: hidden;
+}
+#sidebar h2, 
+#sidebar h3 {
+  font-size: 1.3em;
+}
+#sidebar .widget-list {
   list-style: none;
   padding-left: 0px;
 }
-
-ul.widget-list li.widget-container {
+#sidebar .widget-list li.widget-container {
+  padding-bottom: 1em;
   border-bottom: 1px solid #e0e0e0;
   margin-bottom: 1em;
 }
-
-ul.widget-list li.widget-container.boxed {
+#sidebar .widget-list li.widget-container.boxed {
   border-bottom: 0;
   background-color: #FFF7C0;
   padding: 15px;
@@ -218,854 +294,58 @@
           border-radius: 15px; 
 }
 
-/* Notices */
 
-.notice a, .notice a:visited,
-.success a, .success a:visited {
-  text-decoration: underline;
-}
 
-/* Hints */
-
-.hint {
-  font-size: 0.8em;
-  color: #888;
-  margin-bottom: 0;
-}
-
-/* Tables */
-table th {
-  border: 1px solid #e0e0e0;
-  background-color: #e2e2e2;
-  background-image: -webkit-gradient(linear, left top, left bottom, from(#f0f0f0), to(#e2e2e2)); 
-  background-image: -webkit-linear-gradient(top, #f0f0f0, #e2e2e2); 
-  background-image:    -moz-linear-gradient(top, #f0f0f0, #e2e2e2); 
-  background-image:     -ms-linear-gradient(top, #f0f0f0, #e2e2e2); 
-  background-image:      -o-linear-gradient(top, #f0f0f0, #e2e2e2); 
-  background-image:         linear-gradient(top, #f0f0f0, #e2e2e2);
-            filter: progid:DXImageTransform.Microsoft.gradient(startColorStr='#f0f0f0', EndColorStr='#e2e2e2');
-}
-
-table caption {
-  caption-side: bottom; 
-  color: #888;
-  font-size: 0.9em;
-  background-color: white;
-}
-
-tbody tr:nth-child(even) td, tbody tr.even td {
-  background-color: #FCF6CF;
-}
-tbody tr:nth-child(odd) td, tbody tr.odd td {
-  background-color: #FEFEF2;
-}
-
-tbody tr.table-empty td {
-  background: #f8f8f8;
-  border: 1px solid #eee;
-  font-style: italic;
-  color: #333;
-  font-size: 90%;
-}
-
-/* ============== */
-/* = Navigation = */
-/* ============== */
-
-#minornavigation {
-  margin-bottom: 1em;
-}
-
-.nominor #minornavigation {
-  display: none;
-}
-
-#minornavigation ul {
-  list-style: none; 
-  padding: 1px;
-  margin: 0;
-}
-
-#minornavigation ul li {
-  display: inline-block;
-  margin-right: 3px;
-  padding: 5px 11px 5px 9px
-}
-
-#minornavigation ul li a {
-  text-decoration: none;
-  font-weight: bold;
-}
-
-#minornavigation ul li a img {
-  margin-bottom: -4px;
-  padding-right: 5px;
-}
-
-#sidebar {
-  margin-right: -10px;
-  padding-left: 9px;
-  overflow: hidden;
-}
-
-#sidebar h2, #sidebar h3 {
-  font-size: 1.3em;
-}
-
-#sidebar ul.property-list li ul {
-  margin-left: -2em;
-}
-
-#content {
-  border-right: 1px solid #e0e0e0;
-}
 
 /* ============== */
 /* = Pagination = */
 /* ============== */
-
 .pager {
 	width: 100%;
 	text-align: center;
 	margin: 0 0 1.2em 0;
 	clear: both;
 }
-
 .pager span, .pager a {
 	text-decoration: none;
 	margin: 0em;
 	border: none;
 	padding: 0.3em 0.1em;
 }
-
 .pager a:hover, .pager a:active {
 	color: #fff;
 	background-color: #c22;
 }
-
 .pager span.pager_dotdot {
 	color: #aaa;
 }
-
 .pager span.pager_curpage {
 	font-weight: bold;
 	border: 1px solid #ddd;
 }
 
 
-/* ==========================
- * Facets
- */
 
-.facet-box {
-
-}
-
-#sidebar .facet-box h2 {
+/* ====== */
+/* Facets */
+/* ====== */
+.facet-box h2 {
     color: #000;
     font-size: 1.2em;
 }
-
-.facet-options {
+.facet-box .facet-options {
     margin-top: 0.5em;
 }
-
-.facet-options li {
+.facet-box .facet-options li {
     padding-top: 0.2em;
     color: #000; 
 }
 
-.register-link {
-    padding-top: 10px;
-}
 
-.dataset-search-filters {
-    margin-top: 15px;
-}
 
-.search-field {
-    display: inline-block;
-    margin-right: 5px;
-    margin-bottom: 10px;
-    padding: 2px 2px 4px 3px;
-    font-size: 14px;
-    background-color: #FFF7C0;
-    -moz-border-radius: 3px;
-    -webkit-border-radius: 3px;
-    border-radius: 3px;
-    line-height: 16px;
-    /*
-    -moz-box-shadow: 1px 1px 3px #bbb;
-    -webkit-box-shadow: 1px 1px 3px #bbb;
-    box-shadow: 1px 1px 3px #bbb;
-    */
-}
-
-.search-field img {
-    margin-bottom: -3px;
-}
-
-.search-field-name::after {
-    content: ":";
-}
-
-.search-field-value {
-    font-weight: bold;
-}
-
-/* ================ */
-/* = Forms common = */
-/* ================ */
-
-fieldset {
-  border: 0px;
-  border-bottom: 1px solid #e0e0e0;
-}
-
-
-/* ============== */
-/* = Login Form = */
-/* ============== */
-
-form.simple-form label {
-    display: inline-block; 
-    float: left;
-    min-width: 40%;
-    padding-top: 0.5em;
-    padding-bottom: 1em;
-}
-
-form.simple-form fieldset input {
-    border: 1px solid #E7E7E7;
-    padding: 0.5em; 
-    width: 40%;
-    margin-bottom: 1em
-}
-
-form.simple-form textarea {
-    width: 99%;
-}
-
-.purge-button {
-  border: none;
-  background: none;
-  background-color: #b33a3a;
-  color: white;
-  display: block;
-  margin-bottom: 1em;
-}
-
-.purge-button:hover {
-  border: none;
-}
-
-
-/* ===================== */
-/* = Dataset read view = */
-/* ===================== */
-
-.property-list {
-  list-style: none;
-  padding-left: 3em;
-}
-
-#sidebar .property-list li h3 {
-  font-size: 1.1em;
-  font-weight: bold; 
-  margin-bottom: 0.5em;
-  margin-left: -2em;
-}
-
-#sidebar .property-list li {
-  margin-bottom: 0.2em;
-}
-
-.dataset .api div {
-    background:#f0f0f0;
-    padding:10px;
-}
-
-.dataset .api h5 {
-    font-weight:bold;
-    margin-bottom:1em!important;
-    font-size:1em;
-}
-
-.dataset .api code {
-    background:#444;
-    color:#fff;
-    padding:3px 10px ;
-    margin-bottom:1em;
-    display:block;
-}
-.dataset .api code a {
-    color:#fff;
-}
-
-/* ===================== */
-/* = User Listing      = */
-/* ===================== */
-
-body.user-list #content {
-}
-
-ul.userlist, ul.userlist ul {
-  list-style-type: none;
-  margin: 0;
-  padding: 0;
-}
-
-ul.userlist li.user {
-  display: inline-block;
-  width: 200px;
-  margin-bottom: 15px;
-}
-
-ul.userlist li ul span.edits {
-  color: #333;
-  font-size: 1.1em;
-  font-weight: bold;
-  margin-left: 3px;
-}
-
-ul.userlist li.user .username {
-}
-
-#content ul.userlist .username img {
-  margin-bottom: -3px;
-}
-
-ul.userlist .created {
-  color: #888;
-}
-
-ul.userlist .badge {
-  color: #fc0;
-}
-
-body.user-list .sort {
-  float: right;
-}
-
-body.user-list .sort a {
-  background: #eee;
-  padding: 5px;
-  border-bottom: 1px solid #ccc; 
-  border-right: 1px solid #ccc; 
-}
-
-.gravatar {
-  border: 1px solid #777;
-  padding: 1px;
-  width: 120px;
-  height: 120px;
-  margin: 0 auto 10px auto;
-}
-
-/* ===================== */
-/* = Stateful stuff    = */
-/* ===================== */
-
-.state-deleted, .state-deleted a, .state-deleted * {
-  color: rgba(0, 0, 0, 0.4);
-}
-
-.state-deleted {
-  padding-left: 3px;
-}
-
-.state-deleted:hover * {
-  color: rgba(0, 0, 0, 0.8);
-}
-
-.state-notice {
-  text-transform: uppercase;
-  font-size: 120%;
-  background: #f4a83d;
-  padding: 15px;
-  text-align: center;
-  color: #fff;
-}
-
-/* ================ */
-/* = Search boxes = */
-/* ================ */
-
-form.dataset-search {
-  margin-bottom: 35px;
-}
-
-form.dataset-search input.search {
-  width: 100%;
-  font-size: 1.2em;
-  margin: 0px;
-  
-  border: 1px solid #ccc;
-  padding: 0.5em;
-  font-weight: bold;
-
-     -moz-border-radius: 5px; 
-  -webkit-border-radius: 5px; 
-          border-radius: 5px; 
- -moz-background-clip: padding; -webkit-background-clip: padding-box; background-clip: padding-box; 
-}
-
-.dataset-search input.button {
-    display: inline-block;
-    float: right;
-    margin-top: 5px;
-    margin-right: 10px !important;
-    margin-bottom: 1px !important;
-}
-
-.dataset-search-filters {
-  margin-top: 1em;
-  margin-bottom: 1em;
-  color: #888;
-}
-
-.dataset-search-filters label {
-  padding-left: 1em;
-}
-
-/* =================== */
-/* = Dataset listing = */
-/* =================== */
-
-ul.datasets {
-	padding-left: 0;
-    margin: 0 0 1em 0;
-}
-
-.datasets .header {
-    padding-top: 0.5em;
-    font-weight: bold;
-    font-size: 1.1em;
-}
-
-.datasets .extract {
-	padding-top: 0.3em;
-}
-
-.datasets li {
-	list-style: none;
-	padding: 1em 0 0.2em 0.0em;
-	border-bottom: 1px solid #ececec;
-	overflow: hidden;
-	/*white-space: nowrap;*/
-}
-
-.datasets li a {
-	text-decoration: none;
-}
-
-.datasets li img {
-	margin-bottom: -2px;
-}
-
-.search_meta {
-    float:right;
-}
-
-ul.dataset_formats {
-    float: right;
-    padding: 0 0 3px 0; 
-    margin: 0;
-    font-family: monospace;
-}
-
-ul.dataset_formats li {
-    display: inline;
-    margin: 0;
-    padding: 0 5px 0 5px;
-    border: none;
-    font-weight: normal;
-    font-size: 0.9em;
-    color: #808080;
-    background:#ececec;
-}
-
-.openness {
-    clear:right;
-    float:right;
-    font-size:0.8em;
-}
-
-.openness img {
-    vertical-align:top;
-}
-
-.openness li {
-    margin:0;
-    padding:0;
-    border:none;    
-}
-
-
-.signup {
-  color: white; 
-  border-bottom: 0;
-  background-color: #FFF7C0;
-  padding: 15px;
-  padding-top: 10px;
-     -moz-border-radius: 15px; 
-  -webkit-border-radius: 15px; 
-          border-radius: 15px;
-  padding-bottom: 10px;
-}
-
-.signup h2 {
-  margin-top: 0;
-  margin-bottom: 0;
-  font-size: 1.2em;
-}
-
-.subscribe {
-  float: right;
-  margin-top: -6px;
-  margin-bottom: -10px;
-}
-
-.subscribe input[type='text'] {
-  border: 1px solid #ccc;
-  padding: 4px;
-  margin-right: 10px;
-}
-
-/* ===================== */
-/* = Edit Dataset Page = */
-/* ===================== */
-
-body.package.edit .edit-summary {
-  display: none;
-}
-
-body.package.edit div#content {
-  margin-right: 29px;
-  margin-left: 0px;
-  float: right;
-  padding-right: 0;
-  padding-left: 20px;
-  border: none;
-  border-left: 1px solid #eee;
-}
-body.package.edit div#sidebar {
-  padding-left: 0px;
-  float: left;
-  margin-right: 0px;
-}
-body.package.edit ul.widget-list {
-  margin-left: 1.5em;
-  margin-right: 0;
-}
-ul.edit-form-navigation {
-  list-style-type: none;
-  padding-left: 0;
-}
-ul.edit-form-navigation li a {
-  text-decoration: none;
-  font-weight: bold;
-  display: block;
-  padding: 7px 0 7px 10px;
-  margin-bottom: 7px;
-  border: 1px transparent solid;
-}
-ul.edit-form-navigation li a.active,  
-ul.edit-form-navigation li a:hover {
-  border: 1px solid #e0e0e0;
-  background-color: #e2e2e2;
-  background-image: -webkit-gradient(linear, left top, left bottom, from(#f0f0f0), to(#e2e2e2)); 
-  background-image: -webkit-linear-gradient(top, #f0f0f0, #e2e2e2); 
-  background-image:    -moz-linear-gradient(top, #f0f0f0, #e2e2e2); 
-  background-image:     -ms-linear-gradient(top, #f0f0f0, #e2e2e2); 
-  background-image:      -o-linear-gradient(top, #f0f0f0, #e2e2e2); 
-  background-image:         linear-gradient(top, #f0f0f0, #e2e2e2);
-            filter: progid:DXImageTransform.Microsoft.gradient(startColorStr='#f0f0f0', EndColorStr='#e2e2e2');
-
-  border-right: none;
-     -moz-border-radius-bottomleft: 5px; 
-  -webkit-border-bottom-left-radius: 5px; 
-          border-bottom-left-radius: 5px; 
-     -moz-border-radius-topleft: 5px; 
-  -webkit-border-top-left-radius: 5px; 
-          border-top-left-radius: 5px; 
-
-  -moz-background-clip: padding; -webkit-background-clip: padding-box; background-clip: padding-box; 
-}
-
-div.markdown-editor {
-  background: #EEE;
-  border-radius: 5px 5px;
-  -webkit-border-radius: 5px;
-  -moz-border-radius: 5px;
-  border: 1px solid #CCC;
-  padding: 0 5px 5px 10px;
-  width: 32em;
-}
-div.markdown-editor .button-row {
-  padding-right: 40px;
-  text-align: center;
-}
-
-div.markdown-preview {
-  background: white;
-  border: 1px solid #CCC;
-  padding: 5px;
-  margin-bottom: 5px;
-  overflow: auto;
-}
-
-textarea.markdown-input {
-  margin-bottom: 5px;
-  padding: 5px;
-  display: block;
-}
-
-
-/* ====================== */
-/* = Add Resources Page = */
-/* ====================== */
-
-input#Resource--url {
-  width: 60%;
-}
-
-button.done-editing {
-  float: right;
-}
-
-div.resource-add {
-  background: #eee;
-  padding-top: 10px;
-  padding-bottom: 5px;
-  border: 1px solid #e0e0e0;
-  border-left: none;
-  border-right: none;
-}
-div.resource-add li h4 {
-  display: inline;
-  padding-right: 20px;
-}
-div.resource-add-subpane {
-  margin-top: 10px;
-}
-div.resource-add .fileinfo {
-  margin: 7px 0;
-}
-
-
-/* ==================== */
-/* = Add Dataset Page = */
-/* ==================== */
-
-/* do this here to avoid js flash when we hide in js */
-body.package.new form fieldset {
-  display: none;
-}
-
-body.package.new form fieldset#basic-information {
-  display: block;
-}
-
-body.package.new .edit-summary {
-  display: none;
-}
-
-body.package.new dt.homepage-label,
-body.package.new dd.homepage-field,
-body.package.new dd.homepage-instructions 
-{
-  display: none;
-}
-body.package.new dt.tags-label,
-body.package.new dd.tags-field,
-body.package.new dd.tags-instructions 
-{
-  display: none;
-}
-body.package.new dt.description-label,
-body.package.new dd.description-field,
-body.package.new dd.description-instructions 
-{
-  display: none;
-}
-body.package.new dt.license-label,
-body.package.new dd.license-field,
-body.package.new dd.license-instructions 
-{
-  display: none;
-}
-
-body.package.new .instructions {
-  font-size: 10px;
-}
-
-a.url-edit {
-  font-weight: normal;
-  margin-left: 10px;
-}
-dd.name-field {
-  padding-top: 0.2em;
-}
-dd.name-field p {
-  margin-bottom: 4px;
-}
-
-body.package.read #sidebar ul.tags, 
-body.package.read #sidebar ul.groups {
-  margin-bottom: 10px;
-}
-
-input.url-input {
-  width: 250px;
-}
-
-
-.success .new-dataset {
-  font-size: 150%;
-}
-.success .new-dataset a {
-  font-weight: bold;
-}
-
-
-/* ================== */
-/* = Add Group Page = */
-/* ================== */
-
-body.group.new fieldset#extras,
-body.group.new fieldset#datasets {
-  display: none;
-}
-body.group.new .description-label,
-body.group.new .description-field,
-body.group.new .state-label,
-body.group.new .state-field {
-  display: none;
-}
-
-
-/* ============= */
-/* = Mini-Tabs = */
-/* ============= */
-ul.button-row {
-  margin-bottom: 5px;
-}
-ul.button-row li {
-  display: inline;
-  margin-right: 10px;
-}
-
-
-
-/* ============================== */
-/* = Controller-specific tweaks = */
-/* ============================== */
-
-body.package.search #minornavigation { 
-  display: none;
-}
-body.package.search #menusearch {
-  display: none;
-}
- 
-body.index.home #minornavigation {
-  display: none;
-}
-body.index.home #sidebar {
-  display: none;
-}
-
-body.index.home .front-page .action-box h1 {
-  padding-top: 0.6em;
-  padding-bottom: 0.5em;
-  font-size: 2.1em;
-}
-
-body.index.home .front-page .action-box {
-  border-radius: 20px;
-  background:  #FFF7C0;
-}
-
-body.index.home .front-page .action-box-inner {
-  margin: 20px;
-  margin-bottom: 5px;
-  min-height: 15em;
-}
-body.index.home .front-page .action-box-inner.collaborate {
-  background:url(/img/collaborate.png) no-repeat right top;
-}
-
-body.index.home .front-page .action-box-inner.share {
-  background:url(/img/share.png) no-repeat right top;
-}
-
-body.index.home .front-page .action-box-inner.find {
-  background:url(/img/find.png) no-repeat right top;
-}
-
-body.index.home .front-page .action-box-inner a {
-  font-weight: bold;
-}
-
-body.index.home .front-page .action-box-inner input {
-  font-family: 'Ubuntu';
-  border-radius: 10px;
-  background-color: #fff;
-  border: 0px;
-  font-size: 1.3em;
-  width: 90%;
-  border: 1px solid #999;
-  color: #666;
-  padding: 0.5em;
-}
-
-body.index.home .front-page .action-box-inner .create-button {
-  display: block;
-  float: right;
-  font-weight: normal;
-  font-family: 'Ubuntu';
-  margin-top: 1.5em;
-  border-radius: 10px;
-  background-color: #B22;
-  border: 0px;
-  font-size: 1.3em;
-  color: #fff;
-  padding: 0.5em;
-}
-
-body.index.home .front-page .action-box-inner .create-button:hover {
-  background-color: #822;
-}
-
-body.index.home .front-page .action-box-inner ul {
-margin-top: 1em;
-margin-bottom: 0;
-}
-
-body.index.home .front-page .whoelse {
-  margin-top: 1em;
-}
-
-body.index.home .front-page .group {
-  overflow: hidden;
-}
-
-body.index.home .front-page .group h3 {
-  margin-bottom: 0.5em;
-}
-
-body.index.home .front-page .group p {
-  margin-bottom: 0em;
-  min-height: 6em;
-}
-
-body.index.home .front-page .group strong {
-  display: block;
-  margin-bottom: 1.5em;
-}
-  
-
+/* ======================= */
+/* = Generic Form Footer = */
+/* ======================= */
 div.form-submit {
   background: #eee;
   padding: 20px;
@@ -1083,154 +363,384 @@
   clear: both;
 }
 
-/* ==================== */
-/* = Multi-form pages = */
-/* ==================== */
-body.admin form#form-purge-packages, 
-body.admin form#form-purge-revisions {
-  margin-bottom: 30px;
-  text-align: right;
+
+
+/* ============= */
+/* = Home Page = */
+/* ============= */
+body.index.home #minornavigation {
+  display: none;
 }
-body.admin .actions button, 
-body.admin .actions input {
-  margin: 0;
+body.index.home #sidebar {
+  display: none;
 }
-body.authz form {
-  margin-bottom: 30px;
+body.index.home .front-page .action-box h1 {
+  padding-top: 0.6em;
+  padding-bottom: 0.5em;
+  font-size: 2.1em;
 }
-body.authz form button {
-  width: 120px;
+body.index.home .front-page .action-box {
+  border-radius: 20px;
+  background:  #FFF7C0;
+}
+body.index.home .front-page .action-box-inner {
+  margin: 20px;
+  margin-bottom: 5px;
+  min-height: 15em;
+}
+body.index.home .front-page .action-box-inner.collaborate {
+  background:url(/img/collaborate.png) no-repeat right top;
+}
+body.index.home .front-page .action-box-inner.share {
+  background:url(/img/share.png) no-repeat right top;
+}
+body.index.home .front-page .action-box-inner.find {
+  background:url(/img/find.png) no-repeat right top;
+}
+body.index.home .front-page .action-box-inner a {
+  font-weight: bold;
+}
+body.index.home .front-page .action-box-inner input {
+  font-family: 'Ubuntu';
+  border-radius: 10px;
+  background-color: #fff;
+  font-size: 1.3em;
+  width: 90%;
+  border: 1px solid #999;
+  color: #666;
+  padding: 0.5em;
+  display: inline-block;
+  margin-right: 5px;
+  margin-bottom: 10px;
+  line-height: 16px;
+}
+body.index.home .front-page .action-box-inner .create-button {
+  display: block;
   float: right;
+  font-weight: normal;
+  font-family: 'Ubuntu';
+  margin-top: 1.5em;
+  border-radius: 10px;
+  background-color: #B22;
+  border: 0px;
+  font-size: 1.3em;
+  color: #fff;
+  padding: 0.5em;
+}
+body.index.home .front-page .action-box-inner .create-button:hover {
+  background-color: #822;
+}
+body.index.home .front-page .action-box-inner ul {
+  margin-top: 1em;
+  margin-bottom: 0;
+}
+body.index.home .front-page .whoelse {
+  margin-top: 1em;
+}
+body.index.home .front-page .group {
+  overflow: hidden;
+}
+body.index.home .front-page .group h3 {
+  margin-bottom: 0.5em;
+}
+body.index.home .front-page .group p {
+  margin-bottom: 0em;
+  min-height: 6em;
+}
+body.index.home .front-page .group strong {
+  display: block;
+  margin-bottom: 1.5em;
 }
 
 
+/* ======================== */
+/* Search Page: Filter List */
+/* ======================== */
+.filter-list {
+    display: inline-block;
+    margin-right: 5px;
+    margin-bottom: 10px;
+    padding: 2px 2px 4px 3px;
+    font-size: 14px;
+    background-color: #FFF7C0;
+    -moz-border-radius: 3px;
+    -webkit-border-radius: 3px;
+    border-radius: 3px;
+    line-height: 16px;
+}
+.filter-list img {
+    margin-bottom: -3px;
+}
+.filter-list .name::after {
+    content: ":";
+}
+.filter-list .value {
+    font-weight: bold;
+}
+
+
+/* ============== */
+/* = Login Form = */
+/* ============== */
+form.simple-form label {
+    display: inline-block; 
+    float: left;
+    min-width: 40%;
+    padding-top: 0.5em;
+    padding-bottom: 1em;
+}
+form.simple-form input[type=text],
+form.simple-form input[type=password] {
+    border: 1px solid #E7E7E7;
+    padding: 0.5em; 
+    width: 40%;
+    margin-bottom: 1em
+}
+
+
+
 /* ================================== */
-/* = Twitter.Bootstrap Form Buttons = */
+/* = Dataset/Group View: Sidebar List */
 /* ================================== */
-.pretty-button {
-  cursor: pointer;
+.property-list {
+  list-style: none;
+  padding-left: 3em;
+}
+.property-list li {
+  margin-bottom: 0.2em;
+}
+.property-list li ul {
+  margin-left: -2em;
+}
+.property-list li h3 {
+  font-size: 1.1em;
+  font-weight: bold; 
+  margin-bottom: 0.5em;
+  margin-left: -2em;
+}
+
+
+
+/* ============== */
+/* = User Index = */
+/* ============== */
+ul.userlist, 
+ul.userlist ul {
+  list-style-type: none;
+  margin: 0;
+  padding: 0;
+}
+ul.userlist li.user {
   display: inline-block;
-  background-color: #e6e6e6;
-  background-repeat: no-repeat;
-  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), color-stop(0.25, #ffffff), to(#e6e6e6));
-  background-image: -webkit-linear-gradient(#ffffff, #ffffff 0.25, #e6e6e6);
-  background-image: -moz-linear-gradient(#ffffff, #ffffff 0.25, #e6e6e6);
-  background-image: -ms-linear-gradient(#ffffff, #ffffff 0.25, #e6e6e6);
-  background-image: -o-linear-gradient(#ffffff, #ffffff 0.25, #e6e6e6);
-  background-image: linear-gradient(#ffffff, #ffffff 0.25, #e6e6e6);
-  padding: 4px 14px;
-  text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75);
+  width: 200px;
+  margin-bottom: 15px;
+}
+ul.userlist li ul span.edits {
   color: #333;
-  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
-  font-weight: normal;
-  font-size: 13px;
-  line-height: 18px;
-  border: 1px solid #ccc;
-  border-bottom-color: #bbb;
-  -webkit-border-radius: 4px;
-  -moz-border-radius: 4px;
-  border-radius: 4px;
-  -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
-  -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
-  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
-  -webkit-transition: 0.1s linear all;
-  -moz-transition: 0.1s linear all;
-  transition: 0.1s linear all;
+  font-size: 1.1em;
+  font-weight: bold;
+  margin-left: 3px;
 }
-.pretty-button.depressed,
-.pretty-button:hover {
-  background-position: 0 -15px;
-  color: #333;
-  text-decoration: none;
+ul.userlist .username img {
+  margin-bottom: -3px;
 }
-.pretty-button.primary, .pretty-button.danger {
+ul.userlist .created {
+  color: #888;
+}
+ul.userlist .badge {
+  color: #fc0;
+}
+.user-search input[type=text],
+.user-search input[type=password] {
+  width: 70%;
+  margin-top: 5px;
+}
+
+
+
+/* ================== */
+/* = User Read page = */
+/* ================== */
+.gravatar {
+  border: 1px solid #777;
+  padding: 1px;
+  width: 120px;
+  height: 120px;
+  margin: 0 auto 10px auto;
+}
+
+
+/* ========================= */
+/* = Dataset Snapshot View = */
+/* ========================= */
+.state-deleted, .state-deleted a, .state-deleted * {
+  color: rgba(0, 0, 0, 0.4);
+}
+.state-deleted {
+  padding-left: 3px;
+}
+.state-deleted:hover * {
+  color: rgba(0, 0, 0, 0.8);
+}
+.state-notice {
+  text-transform: uppercase;
+  font-size: 120%;
+  background: #aaa;
+  padding: 15px;
+  text-align: center;
   color: #fff;
 }
-.pretty-button.primary:hover, .pretty-button.danger:hover {
-  color: #fff;
+
+
+/* =============== */
+/* = Search Page = */
+/* =============== */
+body.package.search #minornavigation { 
+  display: none;
 }
-.pretty-button.primary {
-  background-color: #0064cd;
-  background-repeat: repeat-x;
-  background-image: -khtml-gradient(linear, left top, left bottom, from(#049cdb), to(#0064cd));
-  background-image: -moz-linear-gradient(#049cdb, #0064cd);
-  background-image: -ms-linear-gradient(#049cdb, #0064cd);
-  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #049cdb), color-stop(100%, #0064cd));
-  background-image: -webkit-linear-gradient(#049cdb, #0064cd);
-  background-image: -o-linear-gradient(#049cdb, #0064cd);
-  background-image: linear-gradient(#049cdb, #0064cd);
-  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
-  border-color: #0064cd #0064cd #003f81;
-  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
+body.package.search #menusearch {
+  display: none;
 }
-.pretty-button.danger {
-  background-color: #9d261d;
-  background-repeat: repeat-x;
-  background-image: -khtml-gradient(linear, left top, left bottom, from(#d83a2e), to(#9d261d));
-  background-image: -moz-linear-gradient(#d83a2e, #9d261d);
-  background-image: -ms-linear-gradient(#d83a2e, #9d261d);
-  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #d83a2e), color-stop(100%, #9d261d));
-  background-image: -webkit-linear-gradient(#d83a2e, #9d261d);
-  background-image: -o-linear-gradient(#d83a2e, #9d261d);
-  background-image: linear-gradient(#d83a2e, #9d261d);
-  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
-  border-color: #9d261d #9d261d #5c1611;
-  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
+.dataset-search {
+  margin-bottom: 35px;
 }
-.pretty-button.large {
-  font-size: 16px;
-  line-height: 28px;
-  -webkit-border-radius: 6px;
-  -moz-border-radius: 6px;
-  border-radius: 6px;
+.dataset-search input.search {
+  width: 100%;
+  font-size: 1.2em;
+  margin: 0px;
+  border: 1px solid #ccc;
+  padding: 0.5em;
+  font-weight: bold;
+     -moz-border-radius: 5px; 
+  -webkit-border-radius: 5px; 
+          border-radius: 5px; 
+ -moz-background-clip: padding; -webkit-background-clip: padding-box; background-clip: padding-box; 
 }
-.pretty-button.small {
-  padding-right: 9px;
-  padding-left: 9px;
-  font-size: 11px;
-}
-.pretty-button.disabled {
-  background-image: none;
-  filter: alpha(opacity=65);
-  -khtml-opacity: 0.65;
-  -moz-opacity: 0.65;
-  opacity: 0.65;
-  cursor: default;
-}
-.pretty-button:disabled {
-  background-image: none;
-  filter: alpha(opacity=65);
-  -khtml-opacity: 0.65;
-  -moz-opacity: 0.65;
-  opacity: 0.65;
-  cursor: default;
-}
-.pretty-button.depressed,
-.pretty-button:active {
-  -webkit-box-shadow: inset 0 3px 7px rgba(0, 0, 0, 0.1), 0 1px 2px rgba(0, 0, 0, 0.05);
-  -moz-box-shadow: inset 0 3px 7px rgba(0, 0, 0, 0.1), 0 1px 2px rgba(0, 0, 0, 0.05);
-  box-shadow: inset 0 3px 7px rgba(0, 0, 0, 0.1), 0 1px 2px rgba(0, 0, 0, 0.05);
-}
-button.pretty-button::-moz-focus-inner, input.pretty-button::-moz-focus-inner {
-  padding: 0;
-  border: 0;
+.dataset-search input.button {
+    display: inline-block;
+    float: right;
+    margin-top: 5px;
+    margin-right: 10px !important;
+    margin-bottom: 1px !important;
 }
 
 
-/* ====================================== */
-/* = Correct mistakes made by blueprint = */
-/* ====================================== */
-
-body.success,
-body.error {
-  background: #fff;
-  padding: 0;
-  margin-bottom: 0;
-  border: none;
-  color: #000;
+/* ======================================== */
+/* = Dataset listing (eg. search results) = */
+/* ======================================== */
+ul.datasets {
+	padding-left: 0;
+  margin: 0 0 1em 0;
+}
+ul.datasets li {
+	list-style: none;
+	padding: 1em 0 0.2em 0.0em;
+	border-bottom: 1px solid #ececec;
+	overflow: hidden;
+}
+ul.datasets li .header {
+    padding-top: 0.5em;
+    font-weight: bold;
+    font-size: 1.1em;
+}
+ul.datasets li .extract {
+	padding-top: 0.3em;
+}
+ul.datasets li a {
+	text-decoration: none;
+}
+ul.datasets li img {
+	margin-bottom: -2px;
+}
+ul.datasets .search_meta {
+    float:right;
+}
+ul.datasets ul.dataset_formats {
+    float: right;
+    padding: 0 0 3px 0; 
+    margin: 0;
+    font-family: monospace;
+}
+ul.datasets ul.dataset_formats li {
+    display: inline;
+    margin: 0;
+    padding: 0 5px 0 5px;
+    border: none;
+    font-weight: normal;
+    font-size: 0.9em;
+    color: #808080;
+    background:#ececec;
+}
+ul.datasets .openness {
+    clear:right;
+    float:right;
+    font-size:0.8em;
+}
+ul.datasets .openness img {
+    vertical-align:top;
+}
+ul.datasets .openness li {
+    margin:0;
+    padding:0;
+    border:none;    
 }
 
-.top-bar {
+
+
+/* =================== */
+/* = Markdown Editor = */
+/* =================== */
+.markdown-editor {
+  background: #EEE;
+  border-radius: 5px 5px;
+  -webkit-border-radius: 5px;
+  -moz-border-radius: 5px;
+  border: 1px solid #CCC;
+  padding: 0 5px 5px 10px;
+  width: 32em;
+}
+.markdown-editor .button-row {
+  padding-right: 40px;
+  text-align: center;
+}
+.markdown-editor div.markdown-preview {
+  background: white;
+  border: 1px solid #CCC;
+  padding: 5px;
+  margin-bottom: 5px;
+  overflow: auto;
+}
+.markdown-editor textarea.markdown-input {
+  margin-bottom: 5px;
+  padding: 5px;
+  display: block;
+}
+
+
+/* =================== */
+/* = URL Slug Editor = */
+/* =================== */
+input.url-slug-editor {
+  width: 250px;
+}
+
+
+/* ============= */
+/* = Mini-Tabs = */
+/* ============= */
+ul.button-row {
+  margin-bottom: 5px;
+}
+ul.button-row li {
+  display: inline;
+  margin-right: 10px;
+}
+
+
+/* ================== */
+/* = Welcome Banner = */
+/* ================== */
+.welcome-banner {
   width: 100%;
   /* Old background was a little less intrusive */
   background: #fcba63;
@@ -1238,14 +748,12 @@
   padding: 0;
   border-bottom: 1px solid #faa;
   font-weight: bold;
-}
-.top-bar-text {
   line-height: 30px;
 }
-.top-bar-text a {
+.welcome-banner a {
   text-decoration: underline;
 }
-.top-bar button.js-kill-button {
+.welcome-banner button {
   float: right;
   margin-right: 20px;
   margin-top: 3px;
@@ -1253,10 +761,98 @@
 }
 
 
-/* ============================= */
-/* = Inline resource edit form = */
-/* ============================= */
+/* ================================= */
+/* = Edit Dataset Page: Navigation = */
+/* ================================= */
+body.package.edit div#content {
+  /* Flip the sidebar to the left-hand side */
+  margin-right: 29px;
+  margin-left: 0px;
+  float: right;
+  padding-right: 0;
+  padding-left: 20px;
+  border: none;
+  border-left: 1px solid #eee;
+}
+body.package.edit div#sidebar {
+  /* Flip the sidebar to the left-hand side */
+  padding-left: 0px;
+  float: left;
+  margin-right: 0px;
+}
+body.package.edit ul.widget-list {
+  margin-left: 1.5em;
+  margin-right: 0;
+}
+ul.dataset-edit-nav {
+  list-style-type: none;
+  padding-left: 0;
+}
+ul.dataset-edit-nav li a {
+  text-decoration: none;
+  font-weight: bold;
+  display: block;
+  padding: 7px 0 7px 10px;
+  margin-bottom: 7px;
+  border: 1px transparent solid;
+}
+ul.dataset-edit-nav li a.active,  
+ul.dataset-edit-nav li a:hover {
+  border: 1px solid #e0e0e0;
+  background-color: #e2e2e2;
+  background-image: -webkit-gradient(linear, left top, left bottom, from(#f0f0f0), to(#e2e2e2)); 
+  background-image: -webkit-linear-gradient(top, #f0f0f0, #e2e2e2); 
+  background-image:    -moz-linear-gradient(top, #f0f0f0, #e2e2e2); 
+  background-image:     -ms-linear-gradient(top, #f0f0f0, #e2e2e2); 
+  background-image:      -o-linear-gradient(top, #f0f0f0, #e2e2e2); 
+  background-image:         linear-gradient(top, #f0f0f0, #e2e2e2);
+            filter: progid:DXImageTransform.Microsoft.gradient(startColorStr='#f0f0f0', EndColorStr='#e2e2e2');
+  border-right: none;
+     -moz-border-radius-bottomleft: 5px; 
+  -webkit-border-bottom-left-radius: 5px; 
+          border-bottom-left-radius: 5px; 
+     -moz-border-radius-topleft: 5px; 
+  -webkit-border-top-left-radius: 5px; 
+          border-top-left-radius: 5px; 
+  -moz-background-clip: padding; -webkit-background-clip: padding-box; background-clip: padding-box; 
+}
 
+
+
+/* ===================== */
+/* = Edit Dataset Page = */
+/* ===================== */
+.dataset-edit-form .edit-summary {
+  /* Needs refactoring. Clutters the page too much. */
+  display: none;
+}
+.dataset-edit-form input#Resource--url {
+  width: 60%;
+}
+.dataset-edit-form .resource-add {
+  background: #eee;
+  padding-top: 10px;
+  padding-bottom: 5px;
+  border: 1px solid #e0e0e0;
+  border-left: none;
+  border-right: none;
+}
+.dataset-edit-form .resource-add li h4 {
+  display: inline;
+  padding-right: 20px;
+}
+.dataset-edit-form .resource-add .subpane {
+  margin-top: 10px;
+}
+.dataset-edit-form .resource-add .fileinfo {
+  margin: 7px 0;
+}
+
+
+
+/* ================================ */
+/* = Edit Dataset Page: Resources = */
+/* ================================ */
 .resource-table-edit tbody tr td,
 .resource-table-view tbody tr td {
   /* Constrain structure against overflow */
@@ -1264,7 +860,6 @@
   overflow: hidden;
   white-space: nowrap;
 }
-
 .resource-table-edit tr {
   overflow: hidden;
 }
@@ -1333,3 +928,134 @@
   padding-left: 4px; 
   border-left: 1px dashed #aaa;
 }
+
+
+/* ==================== */
+/* = Add Dataset Page = */
+/* ==================== */
+.dataset-create-form fieldset {
+  /* Show only one field */
+  display: none;
+}
+.dataset-create-form fieldset#basic-information {
+  display: block;
+}
+.dataset-create-form .edit-summary {
+  display: none;
+}
+.dataset-create-form dt.homepage-label,
+.dataset-create-form dd.homepage-field,
+.dataset-create-form dd.homepage-instructions 
+{
+  display: none;
+}
+.dataset-create-form dt.tags-label,
+.dataset-create-form dd.tags-field,
+.dataset-create-form dd.tags-instructions 
+{
+  display: none;
+}
+.dataset-create-form dt.description-label,
+.dataset-create-form dd.description-field,
+.dataset-create-form dd.description-instructions 
+{
+  display: none;
+}
+.dataset-create-form dt.license-label,
+.dataset-create-form dd.license-field,
+.dataset-create-form dd.license-instructions 
+{
+  display: none;
+}
+.dataset-create-form a.url-edit {
+  font-weight: normal;
+  margin-left: 10px;
+}
+.dataset-create-form dd.name-field {
+  padding-top: 0.2em;
+}
+.dataset-create-form dd.name-field p {
+  margin-bottom: 4px;
+}
+
+
+
+/* ===================== */
+/* = Dataset View Page = */
+/* ===================== */
+body.package.read #sidebar ul.tags, 
+body.package.read #sidebar ul.groups {
+  margin-bottom: 10px;
+}
+.flash-messages .success .new-dataset {
+  font-size: 150%;
+}
+.flash-messages.success .new-dataset a {
+  font-weight: bold;
+}
+
+
+
+/* ================== */
+/* = Add Group Page = */
+/* ================== */
+.group-create-form fieldset#extras,
+.group-create-form fieldset#datasets {
+  display: none;
+}
+.group-create-form .description-label,
+.group-create-form .description-field,
+.group-create-form .state-label,
+.group-create-form .state-field {
+  display: none;
+}
+
+
+
+/* ============== */
+/* = Admin Page = */
+/* ============== */
+body.admin form#form-purge-packages, 
+body.admin form#form-purge-revisions {
+  margin-bottom: 30px;
+  text-align: right;
+}
+
+
+
+/* ======================= */
+/* = Authorization Pages = */
+/* ======================= */
+body.authz form {
+  margin-bottom: 30px;
+  text-align: right;
+}
+body.authz form button {
+  min-width: 120px;
+}
+
+
+
+/* ================== */
+/* :: QUESTIONABLE :: */
+/* ================== */
+.dataset .api div {
+    background:#f0f0f0;
+    padding:10px;
+}
+.dataset .api h5 {
+    font-weight:bold;
+    margin-bottom:1em!important;
+    font-size:1em;
+}
+.dataset .api code {
+    background:#444;
+    color:#fff;
+    padding:3px 10px ;
+    margin-bottom:1em;
+    display:block;
+}
+.dataset .api code a {
+    color:#fff;
+}
+


diff -r 9f02da7ab51c65b9b0d549177243cf88a33a872f -r f600e0d37f6cbe3963b0ad610c08bd868f1d1f62 ckan/public/scripts/application.js
--- a/ckan/public/scripts/application.js
+++ b/ckan/public/scripts/application.js
@@ -20,7 +20,7 @@
 
     var isFrontPage = $('body.index.home').length > 0;
     if (isFrontPage) {
-      CKAN.Utils.setupTopBar($('.top-bar'));
+      CKAN.Utils.setupWelcomeBanner($('.js-welcome-banner'));
     }
 
     var isDatasetView = $('body.package.read').length > 0;
@@ -106,17 +106,16 @@
     input.change(callback);
   };
 
-  my.setupTopBar = function(topBar) {
+  my.setupWelcomeBanner = function(banner) {
 
     var cookieName = 'ckan_killtopbar';
     var isKilled = ($.cookie(cookieName)!=null);
     if (!isKilled) {
-      topBar.show();
+      banner.show();
       // Bind to the close button
-      topBar.find('.js-kill-button').live('click', function() {
-        console.log('killing top-bar');
+      banner.find('.js-kill-button').live('click', function() {
         $.cookie(cookieName, 'true', { expires: 365 });
-        topBar.hide();
+        banner.hide();
       });
     }
   };
@@ -126,7 +125,7 @@
     var titleInput = $('.js-title');
     var urlText = $('.js-url-text');
     var urlSuffix = $('.js-url-suffix');
-    var urlInput = $('.js-url-input');
+    var urlInput = $('.js-url-slug-editor');
     var validMsg = $('.js-url-is-valid');
 
     var api_url = '/api/2/util/is_slug_valid';
@@ -411,10 +410,10 @@
   my.setupDatasetEditNavigation = function() {
 
     function showSection(sectionToShowId) {
-      $('.dataset fieldset').hide();
-      $('.dataset fieldset#'+sectionToShowId).show();
-      $('.edit-form-navigation li a').removeClass('active');
-      $('.edit-form-navigation li a[href=#section-'+sectionToShowId+']').addClass('active');
+      $('.dataset-edit-form fieldset').hide();
+      $('.dataset-edit-form fieldset#'+sectionToShowId).show();
+      $('.dataset-edit-nav li a').removeClass('active');
+      $('.dataset-edit-nav li a[href=#section-'+sectionToShowId+']').addClass('active');
       window.location.hash = 'section-'+sectionToShowId;
     }
 
@@ -424,7 +423,7 @@
     showSection(initialSection);
     
     // Adjust form state on click
-    $('.edit-form-navigation li a').live('click', function(e) {
+    $('.dataset-edit-nav li a').live('click', function(e) {
       var $el = $(e.target);
       // Prefix="#section-"
       var showMe = $el.attr('href').slice(9);
@@ -632,7 +631,7 @@
       this.reset();
       $target.addClass('depressed');
 
-      var $subPane = $('<div />').addClass('resource-add-subpane');
+      var $subPane = $('<div />').addClass('subpane');
       this.el.append($subPane);
 
       var tempResource = new CKAN.Model.Resource({});


diff -r 9f02da7ab51c65b9b0d549177243cf88a33a872f -r f600e0d37f6cbe3963b0ad610c08bd868f1d1f62 ckan/public/scripts/templates.js
--- a/ckan/public/scripts/templates.js
+++ b/ckan/public/scripts/templates.js
@@ -1,6 +1,6 @@
 
 CKAN.Templates.resourceAddLinkFile = ' \
-  <form class="resource-add"> \
+  <form> \
     <dl> \
       <dt> \
         <label class="field_opt" for="url"> \
@@ -18,7 +18,7 @@
 ';
 
 CKAN.Templates.resourceAddLinkApi = ' \
-  <form class="resource-add"> \
+  <form> \
     <dl> \
       <dt> \
         <label class="field_opt" for="url"> \


diff -r 9f02da7ab51c65b9b0d549177243cf88a33a872f -r f600e0d37f6cbe3963b0ad610c08bd868f1d1f62 ckan/templates/_util.html
--- a/ckan/templates/_util.html
+++ b/ckan/templates/_util.html
@@ -368,11 +368,11 @@
             ><py:if test="revision.state!='deleted'"><input type="hidden" name="action" value="delete"/>
-            <input type="submit" name="submit" value="Delete" class="pretty-button small" />
+            <input type="submit" name="submit" value="Delete" class="pretty-button small-button" /></py:if><py:if test="revision.state=='deleted'"><input type="hidden" name="action" value="undelete"/>
-            <input type="submit" name="submit" value="Undelete" class="pretty-button small" />
+            <input type="submit" name="submit" value="Undelete" class="pretty-button small-button" /></py:if></form></div>
@@ -422,10 +422,10 @@
                 id=revision['id'])}"
             ><py:if test="revision['state']!='deleted'">
-            <button type="submit" name="action" value="delete" class="pretty-button small">Delete</button>
+            <button type="submit" name="action" value="delete" class="pretty-button small-button">Delete</button></py:if><py:if test="revision['state']=='deleted'">
-            <button type="submit" name="action" value="undelete" class="pretty-button small">Undelete</button>
+            <button type="submit" name="action" value="undelete" class="pretty-button small-button">Undelete</button></py:if></form></div>


diff -r 9f02da7ab51c65b9b0d549177243cf88a33a872f -r f600e0d37f6cbe3963b0ad610c08bd868f1d1f62 ckan/templates/group/edit.html
--- a/ckan/templates/group/edit.html
+++ b/ckan/templates/group/edit.html
@@ -6,7 +6,7 @@
   <py:def function="page_heading">Edit: ${c.group.display_name}</py:def>
 
 
-  <div py:match="content">
+  <div py:match="content" class="group-edit-form">
     ${Markup(c.form)}
   </div>
 


diff -r 9f02da7ab51c65b9b0d549177243cf88a33a872f -r f600e0d37f6cbe3963b0ad610c08bd868f1d1f62 ckan/templates/group/new.html
--- a/ckan/templates/group/new.html
+++ b/ckan/templates/group/new.html
@@ -5,7 +5,7 @@
   <py:def function="page_title">Add A Group</py:def><py:def function="page_heading">Add A Group</py:def>
 
-  <div py:match="content">
+  <div py:match="content" class="group-create-form">
     ${Markup(c.form)}
   </div>
 


diff -r 9f02da7ab51c65b9b0d549177243cf88a33a872f -r f600e0d37f6cbe3963b0ad610c08bd868f1d1f62 ckan/templates/group/new_group_form.html
--- a/ckan/templates/group/new_group_form.html
+++ b/ckan/templates/group/new_group_form.html
@@ -20,7 +20,7 @@
     <dt><label class="field_opt" for="title">Url</label></dt><dd class="name-field"><span class="url-text">${g.site_url+h.url_for(controller='group',id=None)+'/'}<span class="js-url-viewmode js-url-suffix"> </span><a style="display: none;" href="#" class="url-edit js-url-editlink js-url-viewmode">(edit)</a></span>
-      <input style="display: none;" id="name" maxlength="100" name="name" type="text" class="url-input js-url-editmode js-url-input" value="${data.get('name', '')}" />
+      <input style="display: none;" id="name" maxlength="100" name="name" type="text" class="url-slug-editor js-url-editmode js-url-slug-editor" value="${data.get('name', '')}" /><p class="js-url-is-valid"> </p></dd><dd style="display: none;" class="js-url-editmode instructions basic">2+ chars, lowercase, using only 'a-z0-9' and '-_'</dd>


diff -r 9f02da7ab51c65b9b0d549177243cf88a33a872f -r f600e0d37f6cbe3963b0ad610c08bd868f1d1f62 ckan/templates/layout_base.html
--- a/ckan/templates/layout_base.html
+++ b/ckan/templates/layout_base.html
@@ -42,12 +42,13 @@
     ${optional_head()}
   </py:if>
 
+  ${h.literal(getattr(g, 'template_head_end', ''))}
 </head><body class="${request.environ.get('pylons.routes_dict', {}).get('action')} 
              ${request.environ.get('pylons.routes_dict', {}).get('controller').split(':')[-1]}">
-   <div class="top-bar" style="display: none;">
-     <span class="top-bar-text">First time at ${g.site_url_nice}? Visit our <a href="${h.url_for(controller='home', action='about')}">About page</a> to find out more.</span>
+   <div class="welcome-banner js-welcome-banner" style="display: none;">
+     <span>First time at ${g.site_title}? Visit our <a href="${h.url_for(controller='home', action='about')}">About page</a> to find out more.</span><button class="pretty-button js-kill-button">x</button></div><div id="wrap">
@@ -146,6 +147,11 @@
           <div class="textwidget"><ul><li>
+                <a href="${url(controller='user', action='index')}">
+                  Users
+                </a>
+              </li>
+              <li><a href="${url(controller='tag', action='index')}">
                   Tags
                 </a>


diff -r 9f02da7ab51c65b9b0d549177243cf88a33a872f -r f600e0d37f6cbe3963b0ad610c08bd868f1d1f62 ckan/templates/package/edit.html
--- a/ckan/templates/package/edit.html
+++ b/ckan/templates/package/edit.html
@@ -16,7 +16,7 @@
 
   <py:match path="primarysidebar"><li class="widget-container widget_text">
-      <ul class="edit-form-navigation">
+      <ul class="dataset-edit-nav"><!-- One button for each fieldset --><li><a href="#section-basic-information">Basic Information</a></li><li><a href="#section-further-information">Futher Information</a></li>
@@ -27,7 +27,7 @@
     </li></py:match>
 
-  <div py:match="content" class="dataset">
+  <div py:match="content" class="dataset-edit-form">
     ${c.form}
   </div>
 


diff -r 9f02da7ab51c65b9b0d549177243cf88a33a872f -r f600e0d37f6cbe3963b0ad610c08bd868f1d1f62 ckan/templates/package/facets.html
--- a/ckan/templates/package/facets.html
+++ b/ckan/templates/package/facets.html
@@ -18,11 +18,11 @@
 </py:def><py:def function="field_list()">
-    <div class="search-field-list" py:if="c.fields">
-        <div class="search-field" py:for="(field, value) in c.fields">
-            <span class="search-field-name">${h.facet_title(field)}</span>
-            <span class="search-field-value">${value}</span>
-            <a class="search-field-remove" href="${c.remove_field(field, value)}">
+    <div class="filter-list" py:if="c.fields">
+        <div class="filter-entry" py:for="(field, value) in c.fields">
+            <span class="name">${h.facet_title(field)}</span>
+            <span class="value">${value}</span>
+            <a href="${c.remove_field(field, value)}">
                 ${h.icon('unfilter')}
             </a></div>  


diff -r 9f02da7ab51c65b9b0d549177243cf88a33a872f -r f600e0d37f6cbe3963b0ad610c08bd868f1d1f62 ckan/templates/package/new.html
--- a/ckan/templates/package/new.html
+++ b/ckan/templates/package/new.html
@@ -8,7 +8,7 @@
 
   <py:def function="body_class">hide-sidebar</py:def>
 
-  <div py:match="content">
+  <div py:match="content" class="dataset-create-form"><h3 py:if="c.error" class="form-errors">
       Error: ${c.error}
     </h3>


diff -r 9f02da7ab51c65b9b0d549177243cf88a33a872f -r f600e0d37f6cbe3963b0ad610c08bd868f1d1f62 ckan/templates/package/new_package_form.html
--- a/ckan/templates/package/new_package_form.html
+++ b/ckan/templates/package/new_package_form.html
@@ -1,4 +1,4 @@
-<form id="dataset-edit" class="dataset_create_form ckan" method="post" 
+<form id="dataset-edit" method="post" 
   py:attrs="{'class':'has-errors'} if errors else {}"
   xmlns:i18n="http://genshi.edgewall.org/i18n"
   xmlns:py="http://genshi.edgewall.org/"


diff -r 9f02da7ab51c65b9b0d549177243cf88a33a872f -r f600e0d37f6cbe3963b0ad610c08bd868f1d1f62 ckan/templates/user/list.html
--- a/ckan/templates/user/list.html
+++ b/ckan/templates/user/list.html
@@ -9,26 +9,24 @@
   
   <py:match path="primarysidebar"><li class="widget-container widget_text" py:if="not c.hide_welcome_message">
-      <form id="user-search" action="" method="GET">
+      <form id="user-search" class="user-search" action="" method="GET"><input type="text" id="q" name="q" value="${c.q}" />
-        <input type="submit" name="" value="Search »" />
+        <input type="submit" class="pretty-button small-button" name="" value="Search »" /></form>
-      <p i18n:msg="item_count">
+      <p py:if="c.q" i18n:msg="item_count"><strong>${c.page.item_count}</strong> users found.
       </p></li>
-    
-
   </py:match><py:match path="minornavigation"><ul class="tabbed">
-      <li>
+      <li py:attrs="{'class':'current-tab'} if c.order_by=='name' else {}">
+        <a href="?q=${c.q}&order_by=name" rel="nofollow">Sort by name</a>
+      </li>
+      <li py:attrs="{'class':'current-tab'} if c.order_by=='edits' else {}"><a href="?q=${c.q}&order_by=edits" rel="nofollow">Sort by edits</a></li>
-      <li>
-        <a href="?q=${c.q}&order_by=name" rel="nofollow">Sort by name</a>
-      </li></ul></py:match>
 


diff -r 9f02da7ab51c65b9b0d549177243cf88a33a872f -r f600e0d37f6cbe3963b0ad610c08bd868f1d1f62 ckan/templates/user/login.html
--- a/ckan/templates/user/login.html
+++ b/ckan/templates/user/login.html
@@ -26,7 +26,7 @@
         <!--legend i18n:msg="site_title">Login</legend--><label for="login">Login:</label>
-        <input name="login" value="" />
+        <input type="text" name="login" value="" /><br/><label for="password">Password:</label><input type="password" name="password" value="" />


diff -r 9f02da7ab51c65b9b0d549177243cf88a33a872f -r f600e0d37f6cbe3963b0ad610c08bd868f1d1f62 ckan/templates/user/perform_reset.html
--- a/ckan/templates/user/perform_reset.html
+++ b/ckan/templates/user/perform_reset.html
@@ -20,7 +20,7 @@
         <br/></fieldset><div>
-        ${h.submit('save', _('Save'))}
+        <input type="submit" id="save" name="save" class="pretty-button primary" value="Save" /></div></form></div>


diff -r 9f02da7ab51c65b9b0d549177243cf88a33a872f -r f600e0d37f6cbe3963b0ad610c08bd868f1d1f62 ckan/templates/user/request_reset.html
--- a/ckan/templates/user/request_reset.html
+++ b/ckan/templates/user/request_reset.html
@@ -11,7 +11,7 @@
       ><fieldset><label for="user">User name:</label>
-        <input name="user" value="" /><br/>
+        <input type="text" name="user" value="" /><br/></fieldset><div><input type="submit" id="reset" name="reset" class="pretty-button primary" value="Reset Password" />


diff -r 9f02da7ab51c65b9b0d549177243cf88a33a872f -r f600e0d37f6cbe3963b0ad610c08bd868f1d1f62 ckan/tests/functional/test_home.py
--- a/ckan/tests/functional/test_home.py
+++ b/ckan/tests/functional/test_home.py
@@ -58,6 +58,11 @@
         url = url_for('guide')
         assert url == 'http://wiki.okfn.org/ckan/doc/'
 
+    def test_template_head_end(self):
+        offset = url_for('home')
+        res = self.app.get(offset)
+        assert 'ckan.template_head_end = <link rel="stylesheet" href="TEST_TEMPLATE_HEAD_END.css" type="text/css"> '
+
     def test_template_footer_end(self):
         offset = url_for('home')
         res = self.app.get(offset)


diff -r 9f02da7ab51c65b9b0d549177243cf88a33a872f -r f600e0d37f6cbe3963b0ad610c08bd868f1d1f62 test-core.ini
--- a/test-core.ini
+++ b/test-core.ini
@@ -47,6 +47,9 @@
 # ckan.plugins = amqp_notifier
 
 # use <strong> so we can check that html is *not* escaped
+ckan.template_head_end = <link rel="stylesheet" href="TEST_TEMPLATE_HEAD_END.css" type="text/css"> 
+
+# use <strong> so we can check that html is *not* escaped
 ckan.template_footer_end = <strong>TEST TEMPLATE_FOOTER_END TEST</strong>
 
 # mailer

Repository URL: https://bitbucket.org/okfn/ckan/

--

This is a commit notification from bitbucket.org. You are receiving
this because you have the service enabled, addressing the recipient of
this email.




More information about the ckan-changes mailing list