You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@rave.apache.org by mf...@apache.org on 2012/04/10 18:56:13 UTC

svn commit: r1311865 [7/7] - in /rave/branches/bootstrap: ./ rave-components/rave-web/src/main/java/org/apache/rave/portal/web/util/ rave-portal-resources/src/main/resources/ rave-portal-resources/src/main/webapp/WEB-INF/jsp/templates/ rave-portal-reso...

Modified: rave/branches/bootstrap/rave-portal-resources/src/main/webapp/css/default.css
URL: http://svn.apache.org/viewvc/rave/branches/bootstrap/rave-portal-resources/src/main/webapp/css/default.css?rev=1311865&r1=1311864&r2=1311865&view=diff
==============================================================================
--- rave/branches/bootstrap/rave-portal-resources/src/main/webapp/css/default.css (original)
+++ rave/branches/bootstrap/rave-portal-resources/src/main/webapp/css/default.css Tue Apr 10 16:56:11 2012
@@ -1,1355 +1,1064 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-html {
-    background-color: #EBEBEB;
-}
-
-body {
-    color: #000000;
-    font-size: 62.5%;
-    font-family: Arial, Helvetica, sans-serif;
-    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr = "#D7D7D3", endColorstr = "#EBEBEB");
-    background: -moz-linear-gradient(center top, #D7D7D3 0%, #EBEBEB 50%) repeat scroll 0 0 transparent;
-    background: -webkit-gradient(linear, left top, left bottom, from(#D7D7D3), to(#EBEBEB));
-    margin: 0;
-}
-
-/* general html fields */
-
-header, nav, article, section, footer {
-    display: block;
-    margin: 0;
-    padding: 0;
-}
-
-header {
-    line-height: 3em;
-}
-
-ul, ol, table, p {
-    margin: 0;
-    padding: 0;
-}
-
-h1, h2, h3, h4, h5, h6 {
-    color: #193240;
-    text-transform: uppercase;
-    font-weight: normal;
-    margin: 10px 0 15px;
-    padding: 5px 0;
-}
-
-h1 {
-    font-size: 1.4em;
-    padding: 15px;
-}
-
-h2 {
-    font-size: 1.2em;
-    margin-top: 2em;
-    border-bottom: 1px solid #a3afb6;
-}
-
-h3, h4, h5, h6 {
-    border-bottom: none;
-    font-size: 1em;
-    margin-bottom: 0;
-}
-
-dt {
-    display: inline;
-    float: left;
-}
-
-a, a:visited, a:hover {
-    color: #107EC0;
-}
-
-a:hover {
-    background-color: #e6ebed;
-}
-
-a img {
-    border: none;
-}
-
-.clear-float {
-    clear: both;
-}
-
-.hidden {
-    display: none;
-}
-
-.horizontal-list li, .paging li {
-    display: inline;
-    list-style: none;
-    padding: 0 10px;
-}
-
-.horizontal-list li:last-child, .paging li:last-child {
-    padding-right: 0;
-}
-
-.paging li {
-    padding: 0;
-}
-
-.paging li:after {
-    content: "|";
-}
-
-.paging li:last-child:after {
-    margin-right: 0;
-    content: "";
-}
-
-.paging li a, .paging li a:visited {
-    text-decoration: none;
-    padding: 0 10px;
-}
-
-.paging li a:hover {
-    text-decoration: underline;
-}
-
-.paging li .currentPage {
-    padding: 0 10px;
-}
-
-/* Header */
-header {
-    height: 3em;
-    color: #F2F2F2;
-    background-color: #222222;
-}
-
-header img {
-    max-width: 150px;
-}
-
-header a, header a:visited {
-    color: #F2F2F2;
-    text-decoration: none;
-    padding: 2px;
-    font-weight: bold;
-}
-
-header a:hover {
-    color: #F2F2F2;
-    background-color: #666666;
-    text-decoration: none;
-}
-
-header h1 {
-    text-transform: none;
-    font-size: 1.5em;
-    font-weight: bold;
-    margin: 0 auto;
-    padding: 0 0 0 15px;
-    vertical-align: middle;
-    width: 100%;
-    color: #F2F2F2;
-}
-
-.header-mobile {
-    height: auto;
-}
-
-.topnav {
-    float: right;
-    margin-right: 15px;
-    font-size: 1.1em;
-}
-
-/* content */
-#content {
-    background-color: transparent;
-    padding: 0 20px;
-    width: 90%;
-    margin: 1em auto 0;
-    min-height: 800px;
-}
-
-#content p {
-    margin: 1em 0;
-}
-
-#personProfileContent {
-    background-color: transparent;
-    padding: 0 20px;
-    width: 90%;
-    margin: 1em auto 0;
-}
-
-.person-profile-page-content {
-    background: none !important;
-}
-
-#person-profile-left {
-    float: left;
-    width: 65%;
-    margin-right: 5px;
-}
-
-#person-profile-right {
-    float: left;
-    width: 33%;
-}
-
-/* Widgets */
-.widget {
-    padding: 5px;
-    background-color: white;
-    box-shadow: 2px 2px 4px #666666;
-    border-radius: 0 0 5px 5px;
-    height: 100%;
-}
-
-.widget-mobile {
-    box-shadow: none;
-    border-radius: 0 0 0 0;
-    padding: 0;
-}
-
-.widget-wrapper-transitional {
-    position: absolute;
-    z-index: 1000;
-    left: 0.25%;
-    top: 51px;
-}
-
-.widget-wrapper-canvas {
-    position: absolute;
-    z-index: 1000;
-    left: 0.25%;
-    top: 72px;
-    width: 99.5%;
-    height: 100%;
-    opacity: 1;
-    vertical-align: top;
-}
-
-.widget-wrapper {
-    vertical-align: top;
-    margin-bottom: 20px;
-    /* prevents adjusting of other gadgets when gadget is being dragged */
-    border: 1px solid transparent;
-}
-
-.widget-wrapper-mobile {
-    margin-bottom: 3px;
-}
-
-.widget-title-bar {
-    color: #FFFFFF;
-    background: #767676; /* IE 7*/
-    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr = "#999999", endColorstr = "#666666");
-    background: -moz-linear-gradient(center top, #999 0%, #666 25%) repeat scroll 0 0 transparent;
-    background: -webkit-gradient(linear, left top, left bottom, from(#999), to(#666));
-    border-radius: 5px 5px 0 0;
-    padding: 2px;
-    border-bottom: solid 1px #CCCCCC;
-    box-shadow: 2px 2px 4px #666666;
-}
-
-.widget-title-bar:hover {
-    cursor: move;
-}
-
-.widget-title-bar-locked:hover {
-    cursor: default !important;
-}
-
-.widget-title-bar-mobile {
-    border-radius: 0;
-    line-height: 2.5em;
-}
-
-.widget-title-bar-mobile:hover {
-    cursor: pointer;
-}
-
-.widget-title {
-    display: inline;
-}
-
-.widget-title a {
-    background: none;
-    color: #ffffff;
-    text-decoration: none;
-}
-
-.widget-title a:hover {
-    text-decoration: underline;
-}
-
-.widget-disabled-icon {
-    float: right;
-    cursor: default;
-}
-
-.widget-disabled-icon-store {
-    cursor: default;
-    display: inline-block;
-    vertical-align: middle;
-}
-
-/*** various widget preference related classes ***/
-.widget-prefs {
-    border: 1px solid #D3D3D3;
-    background-color: white;
-    display: none;
-}
-
-.widget-prefs-required-text {
-    font-size: 0.8em;
-    margin-top: 5px;
-    margin-bottom: 5px;
-}
-
-.widget-prefs-label {
-    vertical-align: top;
-    font-size: 0.8em;
-    text-align: right;
-}
-
-.widget-prefs-label-required {
-
-}
-
-.widget-prefs-input {
-    font-family: Arial, Helvetica, sans-serif;
-    font-size: 0.8em;
-}
-
-.widget-prefs-input-required {
-
-}
-
-.widget-prefs-input-failed-validation {
-    background-color: yellow;
-}
-
-.regions {
-    width: 98%;
-    margin: 1em auto;
-}
-
-.region {
-    float: left;
-    display: block;
-    padding: 5px 0;
-    margin-right: 20px;
-    width: auto;
-    height: 100%;
-}
-
-.widgetRow {
-    display: inline;
-    margin-bottom: 5px;
-}
-
-.region-mobile {
-    display: block;
-    width: 100%;
-    padding: 0;
-    margin-right: 0;
-    float: none;
-}
-
-.regionDragging {
-    border: 1px solid black;
-}
-
-.region.regionNonDragging{
-	border: 1px solid transparent;
-}
-
-.columns_1_1 {
-    width: 90%;
-}
-
-.columns_2_1, .columns_2_2 {
-    width: 45%;
-}
-
-.columns_2wn_1 {
-    width: 60%;
-}
-
-.columns_2wn_2 {
-    width: 30%;
-}
-
-.columns_3_1, .columns_3_2, .columns_3_3 {
-    width: 30%
-}
-
-.columns_3nwn_1, .columns_3nwn_3 {
-    width: 22%;
-}
-
-.columns_3nwn_2 {
-    width: 45%;
-}
-
-.columns_4_1, .columns_4_2, .columns_4_3, .columns_4_4 {
-    width: 22%;
-}
-
-.columns_3nwn_1_bottom_1, .columns_3nwn_1_bottom_3 {
-    width: 22%;
-}
-
-.columns_3nwn_1_bottom_2 {
-    width: 45%;
-}
-
-.columns_3nwn_1_bottom_4 {
-    width: 93%;
-    clear: both;
-}
-
-.columns_2_2, .columns_3_3, .columns_3nwn_3, .columns_4_4, .columns_3nwn_1_bottom_3, .columns_3nwn_1_bottom_4, .person_profile_2 {
-    margin-right: 0;
-}
-
-.columns_3_newuser_1, .columns_3_newuser_2 {
-    width: 46%;
-}
-
-.columns_3_newuser_3 {
-    width: 93%;
-    clear: both;
-}
-
-.columns_3_newuser_static {
-    float: left;
-    height: 100%;
-    margin-right: 5px;
-    width: 30%;
-}
-
-.columns_3_newuser_static ul {
-    margin-top: 15px;
-}
-
-.columns_3_newuser_static ul li {
-    margin-left: 20px;
-}
-
-.columns_3_newuser_widgets {
-    float: left;
-    width: 65%;
-}
-
-.columns_3_newuser_subtitle {
-    display: inline-block;
-    width: 100%;
-    text-align: center;
-}
-
-.person_profile_1 {
-    width: 97%;
-}
-
-.storeSearch {
-    float: right;
-    width: 225px;
-    padding: 1em;
-}
-
-.storeBox {
-    margin-right: 275px;
-    padding: 1em;
-}
-
-.storeSearch form p {
-    margin: 0;
-}
-
-#storeWidgetDetail {
-    width: 100%;
-}
-
-.storeItem {
-    border: 1px solid #B3C4CF;
-    margin: 1em auto;
-    padding: 10px;
-    background-color: #F2F2F2;
-    color: black;
-    border-radius: 5px;
-    box-shadow: 2px 2px 2px black;
-}
-
-.storeItemFeatured {
-    background-color: #D5EAF9;
-}
-
-.widget-users-dialog {
-    height: 200px;
-}
-
-.widget-users {
-    list-style-type: none;
-}
-
-.widget-user {
-
-}
-
-.widget-content {
-    width: 80%;
-    margin: 0 auto;
-    padding: 1em 1%;
-    max-width: 960px;
-}
-
-.detailWidgetInfo {
-    margin: 0 30% 0 0;
-}
-
-.detailWidgetPreview {
-    width: 28%;
-    margin: 0 0 1em 2%;
-    float: right;
-}
-
-.detailWidgetScreenshot img, .detailWidgetThumbnail img {
-    max-width: 100%;
-    margin-bottom: 1em;
-}
-
-.detailWidgetThumbnail {
-    display: none;
-}
-
-.new-comment {
-    margin: 1em 0;
-}
-
-.new-comment textarea {
-    max-width: 95%;
-}
-
-.comment {
-    margin: 1em 0 2em 0;
-}
-
-ul.comments li {
-    list-style: none;
-}
-
-ul.storeItems {
-    padding: 0;
-    margin: 1em auto;
-}
-
-ul.storeItems li {
-    list-style: none;
-}
-
-.storeItemLeft, .storeItemCenter {
-    vertical-align: top;
-}
-
-.storeItemLeft {
-    float: left;
-    width: 120px;
-}
-
-.storeItemCenter {
-    margin-left: 140px;
-}
-
-.storeWidgetThumbnail {
-    margin-bottom: 1em;
-}
-
-.storeWidgetDesc {
-    margin: 1em 0;
-}
-
-.storeWidgetDisabled {
-    background-color: #FCE8D7;
-    border: 1px solid #B3C4CF;
-    margin: 3px;
-    padding: 3px;
-}
-
-.widgetRating {
-    margin: 1em 0;
-}
-
-.secondaryPageItemTitle {
-    font-size: 1.2em;
-}
-
-.ui-sortable-placeholder {
-    background-color: #DDDDDD;
-    border: 1px dashed #767676;
-    visibility: visible !important;
-
-}
-
-.ui-sortable-placeholder * {
-    visibility: hidden;
-}
-
-button.widget-toolbar-btn {
-    width: 1em;
-}
-
-button.widget-toolbar-btn-prefs {
-    display: none;
-}
-
-button.widget-toolbar-btn-min {
-    display: none;
-}
-
-.widget-toolbar-toggle-collapse {
-    display: inline-block;
-    vertical-align: middle;
-    cursor: pointer;
-    /* IE 7 hacks for inline-block */
-    zoom: 1;
-    *display: inline;
-}
-
-/* Form fields */
-
-fieldset {
-    margin: 0;
-    padding: 0;
-    border: none;
-}
-
-p label, span.label {
-    width: 120px;
-    float: left;
-    display: block;
-    position: relative;
-}
-
-label.formradio {
-    float: none;
-    left: 0;
-    margin-left: 120px;
-    margin-bottom: 0.4em;
-    margin-right: 0;
-    position: static;
-    top: auto;
-    width: auto;
-}
-
-input.long, textarea.long {
-    width: 400px;
-}
-
-.checkboxlist {
-    float: left;
-    list-style: none;
-}
-
-/* Associated with JQuery validation CSS */
-.error {
-    color: #ff0000;
-}
-
-span.error, label.error {
-    font-size: 10px;
-    display: block;
-    float: none;
-    margin: 0.5em 0 auto 120px;
-}
-
-.warn {
-    font-weight: bold;
-}
-
-/* End of form fields */
-
-#tabsHeader {
-    background-color: #FFFFFF;
-}
-
-#tabs {
-    border-bottom: 1px solid #B4C4CF;
-    margin: 0;
-    padding: 10px 15px 0 13px;
-    white-space: nowrap;
-}
-
-.rave-ui-tab {
-    background-color: #FFFFFF;
-    border: 1px solid #B4C4CF;
-    color: #767676;
-    display: inline-block;
-    font-style: italic;
-    font-weight: normal;
-    height: 25px;
-    position: relative;
-    top: 1px;
-    /* IE 7 hacks for inline-block */
-    zoom: 1;
-    *display: inline;
-}
-
-.rave-ui-tab a, .rave-ui-tab a:visited {
-    color: #767676;
-    text-decoration: none;
-}
-
-.rave-ui-tab:hover, .rave-ui-tab a:hover {
-    background-color: #D7D7D3;
-    color: #000000;
-}
-
-.rave-ui-tab-selected, .rave-ui-tab-selected:hover {
-    background-color: #D7D7D3;
-    border-bottom: 1px solid #D7D7D3;
-    color: #000000;
-    font-style: normal;
-    font-weight: bold;
-}
-
-.rave-ui-tab-mobile {
-    border: none;
-    background-color: #FFFFFF;
-    color: #767676;
-    font-weight: normal;
-    font-style: normal;
-}
-
-.rave-ui-tab-mobile a, .rave-ui-tab-mobile a:visited {
-    color: #767676;
-    text-decoration: none;
-}
-
-.rave-ui-tab-mobile:hover, .rave-ui-tab-mobile a:hover {
-    color: #000000;
-    border: none;
-    background-color: #FFFFFF;
-}
-
-.rave-ui-tab-selected-mobile, .rave-ui-tab-selected-mobile:hover {
-    border: 1px solid #B4C4CF;
-    border-bottom: 1px solid #FFFFFF;
-    background-color: #FFFFFF;
-    color: #000000;
-    font-style: normal;
-    font-weight: bold;
-}
-
-#dialog {
-    width: 400px;
-    display: none;
-}
-
-#dialog label {
-    display: block;
-}
-
-#dialog input {
-    display: block;
-}
-
-#dialog label {
-    margin-top: 0.5em;
-}
-
-#dialog input {
-    width: 95%;
-}
-
-#dialog textarea {
-    width: 95%;
-}
-
-#add_page {
-    cursor: pointer;
-    width: 18px;
-    display: inline-block;
-    vertical-align: middle;
-    margin-left: 10px;
-    padding-bottom: 4px;
-    padding-top: 3px;
-    /* IE 7 hacks for inline-block */
-    zoom: 1;
-    *display: inline;
-}
-
-#pageContent, .pageContent {
-    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr = "#D7D7D3", endColorstr = "#EBEBEB");
-    background: -moz-linear-gradient(center top, #D7D7D3 0%, #EBEBEB 50%) repeat scroll 0 0 transparent;
-    background: -webkit-gradient(linear, left top, left bottom, from(#D7D7D3), to(#EBEBEB));
-    font-size: 1.1em;
-}
-
-.pageContent-mobile {
-    background: none !important;
-    background-color: #FFFFFF !important;
-    margin-top: 3px;
-}
-
-.page-title {
-    display: inline-block;
-    padding: 5px 10px;
-    cursor: pointer;
-    /* IE 7 hacks for inline-block */
-    zoom: 1;
-    *display: inline;
-}
-
-.emptyPageMessage {
-    background-color: #FFFFFF;
-    border: 1px solid #B4C4CF;
-    border-radius: 10px 10px 10px 10px;
-    box-shadow: 1px 1px 0 #D9DADC;
-    font-weight: bold;
-    margin: 20px auto;
-    padding: 20px;
-    text-align: center;
-    width: 300px;
-    font-size: 1.25em;
-}
-
-.emptyPageMessageWrapper {
-    padding-top: 20px;
-}
-
-/* page menu related styles */
-#pageMenuWrapper {
-    position: relative;
-    display: inline-block;
-    vertical-align: middle;
-    /* IE 7 hacks for inline-block */
-    zoom: 1;
-    *display: inline;
-}
-
-.page-menu {
-    border: 1px solid black;
-    position: absolute;
-    display: none;
-    left: 18px;
-    top: 0;
-    width: 80px;
-    background-color: #FFFFFF;
-    z-index: 1000;
-    cursor: pointer;
-}
-
-.page-menu-item {
-    padding: 3px;
-}
-
-.page-menu-item:hover {
-    background-color: #B4C4CF;
-}
-
-.page-menu-item-disabled {
-    color: #D3D3D3;
-}
-
-#pageMenuButton {
-    cursor: pointer;
-    margin-right: 10px;
-}
-
-/* widget menu related styles */
-.widget-menu-wrapper {
-    position: relative;
-    display: inline-block;
-    vertical-align: middle;
-    /* IE 7 hacks for inline-block */
-    zoom: 1;
-    *display: inline;
-}
-
-.widget-menu {
-    border: 1px solid black;
-    position: absolute;
-    display: none;
-    left: 18px;
-    top: 0;
-    width: 100px;
-    background-color: #FFFFFF;
-    z-index: 1000;
-    cursor: pointer;
-}
-
-.widget-menu-item {
-    padding: 3px;
-    color: #000000;
-}
-
-.widget-menu-item:hover {
-    background-color: #B4C4CF;
-}
-
-.widget-menu-item-disabled {
-    color: #D3D3D3;
-}
-
-.widget-menu-item-divider {
-    border-top: 1px solid #000000;
-}
-
-.widget-menu-button {
-    cursor: pointer;
-}
-
-.widget-tags-select {
-
-    font-family: Arial, Helvetica, sans-serif;
-    font-size: 11px;
-}
-
-#errorStack {
-    display: none;
-    width: 90%;
-    margin: auto;
-}
-
-.errorMessage {
-    text-align: center;
-    font-size: 150%;
-}
-
-.errorLogo {
-    text-align: center;
-}
-
-/** Admin interface **/
-.admincontent {
-    margin: 0 auto;
-    width: 80%;
-    padding: 1em 20px;
-    font-size: 1.1em;
-}
-
-.admincontent p {
-    margin: 1em 0;
-}
-
-.admincontent .searchbox {
-    float: right;
-    margin-top: 1em;
-}
-
-.admincontent .goback {
-    padding-top: 1em;
-}
-
-.searchbox form, .searchbox fieldset {
-    display: inline;
-    height: 1em;
-    margin: 0;
-    padding: 0;
-}
-
-.admincontent h2 {
-    margin-top: 0;
-    padding-top: 1em;
-    border: none;
-}
-
-.admincontent table {
-    margin: 1.5em 0;
-    padding: 0;
-    border-collapse: collapse;
-    font-size: 13px;
-    border: 1px solid #ddd;
-    -webkit-border-radius: 4px;
-    -moz-border-radius: 4px;
-    border-radius: 4px;
-}
-
-.admincontent table th, .admincontent table td {
-    padding: 5px 5px 4px;
-    line-height: 1.5em;
-    text-align: left;
-}
-
-.admincontent table th {
-    padding-top: 4px;
-    font-weight: bold;
-    vertical-align: middle;
-    border-bottom: 1px solid #ddd;
-    background-color: #000000;
-    color: #ffffff;
-}
-
-.admincontent table td {
-    vertical-align: top;
-}
-
-.admincontent table th+th, .admincontent table td+td {
-    border-left: 1px solid #ddd;
-}
-
-.admincontent table tr+tr td {
-    border-top: 1px solid #ddd;
-}
-
-.admincontent table tbody tr:first-child td:first-child {
-    -webkit-border-radius: 4px 0 0 0;
-    -moz-border-radius: 4px 0 0 0;
-    border-radius: 4px 0 0 0;
-}
-
-.admincontent table tbody tr:first-child td:last-child {
-    -webkit-border-radius: 0 4px 0 0;
-    -moz-border-radius: 0 4px 0 0;
-    border-radius: 0 4px 0 0;
-}
-
-.admincontent table tbody tr:last-child td:first-child {
-    -webkit-border-radius: 0 0 0 4px;
-    -moz-border-radius: 0 0 0 4px;
-    border-radius: 0 0 0 4px;
-}
-
-.admincontent table tbody tr:last-child td:last-child {
-    -webkit-border-radius: 0 0 4px 0;
-    -moz-border-radius: 0 0 4px 0;
-    border-radius: 0 0 4px 0;
-}
-
-.admincontent tbody tr:nth-child(odd) {
-    background-color: #D3D3D3;
-}
-
-.admincontent tbody tr:hover {
-    background-color: #B4C4CF;
-}
-
-.admincontent th a, .admincontent th a:visited {
-    color: #FFFFFF;
-    text-decoration: none;
-}
-
-.admincontent td a, .admincontent td a:visited {
-    color: #000000;
-    text-decoration: none;
-}
-
-.admincontent tbody tr:hover a, .admincontent table a:hover {
-    background-color: transparent;
-    text-decoration: underline;
-}
-
-.admincontent .leftcolumn {
-    float: left;
-    width: 70%;
-}
-
-.admincontent .rightcolumn {
-    float: right;
-    width: 30%;
-}
-
-.admincontent figure {
-    display: block;
-    margin: 1em 0;
-    width: 100%;
-}
-
-.admincontent figure.screenshot img {
-    max-width: 100%;
-}
-
-.admincontent figcaption {
-    display: block;
-    margin: 0 0 1em 0;
-    padding: 0;
-    font-style: italic;
-}
-
-.datatable tbody tr {
-    cursor: pointer;
-}
-
-.formbox {
-    border: 1px solid #B4C4CF;
-    margin: 1em 10px;
-    padding: 0 10px;
-}
-
-.booleancell {
-    width: 50px;
-}
-
-.textcell {
-    width: 150px;
-}
-
-.largetextcell {
-    width: 300px
-}
-
-.alert-message {
-    color: #FFFFFF;
-    position: relative;
-    padding: 7px 15px;
-    margin-top: 1em;
-    margin-bottom: 1em;
-    background-color: #eedc94;
-    background-repeat: repeat-x;
-    background-image: -moz-linear-gradient(top, #fceec1, #eedc94);
-    background-image: -ms-linear-gradient(top, #fceec1, #eedc94);
-    background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #fceec1), color-stop(100%, #eedc94));
-    background-image: -webkit-linear-gradient(top, #fceec1, #eedc94);
-    background-image: linear-gradient(top, #fceec1, #eedc94);
-    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr = '#fceec1', endColorstr = '#eedc94', GradientType = 0);
-    text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
-    border-color: #eedc94 #eedc94 #e4c652;
-    border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
-    text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
-    border-width: 1px;
-    border-style: solid;
-    -webkit-border-radius: 4px;
-    -moz-border-radius: 4px;
-    border-radius: 4px;
-    -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25);
-    -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25);
-    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25);
-}
-
-.alert-message p, #content .alert-message p {
-    margin: 0;
-}
-
-.alert-message div, #content .alert-message div {
-    margin-top: 5px;
-    margin-bottom: 2px;
-    line-height: 28px;
-}
-
-.alert-message.success {
-    background-color: #57a957;
-    background-repeat: repeat-x;
-    background-image: -moz-linear-gradient(top, #62c462, #57a957);
-    background-image: -ms-linear-gradient(top, #62c462, #57a957);
-    background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #62c462), color-stop(100%, #57a957));
-    background-image: -webkit-linear-gradient(top, #62c462, #57a957);
-    background-image: -o-linear-gradient(top, #62c462, #57a957);
-    background-image: linear-gradient(top, #62c462, #57a957);
-    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr = '#62c462', endColorstr = '#57a957', GradientType = 0);
-    text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
-    border-color: #57a957 #57a957 #3d773d;
-    border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
-}
-
-.alert-message.info {
-    background-color: #767676;
-    background-repeat: repeat-x;
-    background-image: -moz-linear-gradient(top, #999999, #666666);
-    background-image: -ms-linear-gradient(top, #999999, #666666);
-    background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #999999), color-stop(100%, #666666));
-    background-image: -webkit-linear-gradient(top, #999999, #666666);
-    background-image: -o-linear-gradient(top, #999999, #666666);
-    background-image: linear-gradient(top, #999999, #666666);
-    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr = '#999999', endColorstr = '#666666', GradientType = 0);
-    text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
-    border-color: #767676 #767676 #3d773d;
-    border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
-}
-
-.topbar-message {
-    position: relative;
-    top: 0;
-    left: 0;
-    background-color: #57a957;
-    line-height: 28px;
-    width: 100%;
-    padding-top: 8px;
-    text-align: center;
-    font-size: 14px;
-}
-
-/*CSS style for user profile tabs*/
-.profile-submenu ul {
-	height: 2.5em;
-	background-color: #41627E;
-	text-align: center;
-}
-
-.profile-submenu li {
-	display: inline;
-    list-style: none;
-    padding: 0 10px;
-    color: #FFFFFF;
-    font-size: 1.5em;
-}
-
-.profile-tag {
-	display: inline;
-}
-
-.profile-tag:hover {
-	background:#A9BCF5;
-	color:#000000;
-	cursor:pointer;
-}
-
-.profile-tag-page {
-	display: none;
-}
-
-.profile-info-hidden {
-    display: none;
-}
-
-.profile-info-visible {
-	display: inline;
-}
-
-table.profile-table {
-	width: 100%;
-}
-td.profile-body-column {
-	width: 100%;
-	vertical-align: top;
-}
-
-@media all and (max-width: 900px) {
-    .storeSearch {
-        width: 100%;
-        float: none;
-    }
-
-    .storeBox {
-        margin: 0;
-    }
-}
-
-@media all and (max-width: 550px) {
-
-    body {
-        font-size: 0.75em;
-    }
-
-    header {
-        height: auto;
-    }
-
-    header h1 {
-        width: 100%;
-        clear: both;
-    }
-
-    .topnav {
-        float: none;
-        display: block;
-    }
-
-    #content {
-        width: 100%;
-        padding: 0;
-    }
-
-    h2, h3, h4, h5, h6 {
-        margin: 0 0 1em 0;
-        padding: 0;
-    }
-
-    .admincontent {
-        width: auto;
-    }
-
-    .storeSearch, .storeBox {
-        float: none;
-        width: 98%;
-        padding: 1em 1%;
-    }
-
-    .storeItem {
-        box-shadow: none;
-        padding: 0 10px;
-    }
-
-    .storeItemLeft, .storeItemCenter {
-        width: 100%;
-        float: none;
-        margin: 1em 0;
-    }
-
-    .widget-content {
-        width: 95%;
-        padding: 1em 10px;
-    }
-
-    .detailWidgetInfo, .detailWidgetPreview, .widgetComments, .widgetTags {
-        width: 98%;
-        padding: 0 1%;
-    }
-
-    .detailWidgetPreview {
-        float: none;
-    }
-
-    .detailWidgetScreenshot {
-        display: none;
-    }
-
-    .detailWidgetThumbnail {
-        display: block;
-    }
-
-    p label, span.label {
-        width: 100%;
-        float: none;
-    }
-
-    input.long, textarea.long {
-        width: 100%;
-    }
-
-    .largetextcell {
-        width: auto;
-    }
-
-    .admincontent .rightcolumn, .admincontent .leftcolumn, .admincontent .searchbox {
-        width: 100%;
-        float: none;
-        margin-top: 0;
-    }
-
-    .region {
-        clear: both;
-        width: 100%;
-        margin: 0;
-        padding: 1em 0;
-    }
-
-    .widget, .widget-title-bar {
-        box-shadow: none;
-        border: 1px solid #767676;
-    }
-
-    .emptyPageMessage {
-        width: 80%;
-        padding: 1em 5px;
-    }
-}
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+
+
+
+header {
+    line-height: 3em;
+}
+
+ul, ol, table, p {
+    margin: 0;
+    padding: 0;
+}
+
+h1, h2, h3, h4, h5, h6 {
+    text-transform: uppercase;
+}
+
+
+dt {
+    display: inline;
+    float: left;
+}
+
+
+.hidden {
+    display: none;
+}
+
+.horizontal-list li, .paging li {
+    display: inline;
+    list-style: none;
+    padding: 0 10px;
+}
+
+.horizontal-list li:last-child, .paging li:last-child {
+    padding-right: 0;
+}
+
+.paging li {
+    padding: 0;
+}
+
+.paging li:after {
+    content: "|";
+}
+
+.paging li:last-child:after {
+    margin-right: 0;
+    content: "";
+}
+
+.paging li a, .paging li a:visited {
+    text-decoration: none;
+    padding: 0 10px;
+}
+
+.paging li a:hover {
+    text-decoration: underline;
+}
+
+.paging li .currentPage {
+    padding: 0 10px;
+}
+
+/* Header */
+header {
+    height: 3em;
+    color: #F2F2F2;
+    background-color: #222222;
+}
+
+header img {
+    max-width: 150px;
+}
+
+header a, header a:visited {
+    color: #F2F2F2;
+    text-decoration: none;
+    padding: 2px;
+    font-weight: bold;
+}
+
+header a:hover {
+    color: #F2F2F2;
+    background-color: #666666;
+    text-decoration: none;
+}
+
+header h1 {
+    text-transform: none;
+    font-size: 1.5em;
+    font-weight: bold;
+    margin: 0 auto;
+    padding: 0 0 0 15px;
+    vertical-align: middle;
+    width: 100%;
+    color: #F2F2F2;
+}
+
+.header-mobile {
+    height: auto;
+}
+
+.topnav {
+    float: right;
+    margin-right: 15px;
+    font-size: 1.1em;
+}
+
+/* content */
+#content {
+    background-color: transparent;
+    padding: 0 20px;
+    width: 90%;
+    margin: 1em auto 0;
+    min-height: 800px;
+}
+
+#content p {
+    margin: 1em 0;
+}
+
+#personProfileContent {
+    background-color: transparent;
+    padding: 0 20px;
+    width: 90%;
+    margin: 1em auto 0;
+}
+
+.person-profile-page-content {
+    background: none !important;
+}
+
+#person-profile-left {
+    float: left;
+    width: 65%;
+    margin-right: 5px;
+}
+
+#person-profile-right {
+    float: left;
+    width: 33%;
+}
+
+/* Widgets */
+.widget {
+    padding: 5px;
+    background-color: white;
+    box-shadow: 2px 2px 4px #666666;
+    border-radius: 0 0 5px 5px;
+    height: 100%;
+}
+
+.widget-mobile {
+    box-shadow: none;
+    border-radius: 0 0 0 0;
+    padding: 0;
+}
+
+.widget-wrapper-transitional {
+    position: absolute;
+    z-index: 1000;
+    left: 0.25%;
+    top: 51px;
+}
+
+.widget-wrapper-canvas {
+    position: absolute;
+    z-index: 1000;
+    left: 0.25%;
+    top: 72px;
+    width: 99.5%;
+    height: 100%;
+    opacity: 1;
+    vertical-align: top;
+}
+
+.widget-wrapper {
+    vertical-align: top;
+    margin-bottom: 20px;
+    /* prevents adjusting of other gadgets when gadget is being dragged */
+    border: 1px solid transparent;
+}
+
+.widget-wrapper-mobile {
+    margin-bottom: 3px;
+}
+
+.widget-title-bar {
+    color: #FFFFFF;
+    background: #767676; /* IE 7*/
+    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr = "#999999", endColorstr = "#666666");
+    background: -moz-linear-gradient(center top, #999 0%, #666 25%) repeat scroll 0 0 transparent;
+    background: -webkit-gradient(linear, left top, left bottom, from(#999), to(#666));
+    border-radius: 5px 5px 0 0;
+    padding: 2px;
+    border-bottom: solid 1px #CCCCCC;
+    box-shadow: 2px 2px 4px #666666;
+}
+
+.widget-title-bar:hover {
+    cursor: move;
+}
+
+.widget-title-bar-locked:hover {
+    cursor: default !important;
+}
+
+.widget-title-bar-mobile {
+    border-radius: 0;
+    line-height: 2.5em;
+}
+
+.widget-title-bar-mobile:hover {
+    cursor: pointer;
+}
+
+.widget-title {
+    display: inline;
+}
+
+.widget-title a {
+    background: none;
+    color: #ffffff;
+    text-decoration: none;
+}
+
+.widget-title a:hover {
+    text-decoration: underline;
+}
+
+.widget-disabled-icon {
+    float: right;
+    cursor: default;
+}
+
+.widget-disabled-icon-store {
+    cursor: default;
+    display: inline-block;
+    vertical-align: middle;
+}
+
+/*** various widget preference related classes ***/
+.widget-prefs {
+    border: 1px solid #D3D3D3;
+    background-color: white;
+    display: none;
+}
+
+.widget-prefs-required-text {
+    font-size: 0.8em;
+    margin-top: 5px;
+    margin-bottom: 5px;
+}
+
+.widget-prefs-label {
+    vertical-align: top;
+    font-size: 0.8em;
+    text-align: right;
+}
+
+.widget-prefs-label-required {
+
+}
+
+.widget-prefs-input {
+    font-family: Arial, Helvetica, sans-serif;
+    font-size: 0.8em;
+}
+
+.widget-prefs-input-required {
+
+}
+
+.widget-prefs-input-failed-validation {
+    background-color: yellow;
+}
+
+.regions {
+    width: 98%;
+    margin: 1em auto;
+}
+
+.region {
+    float: left;
+    display: block;
+    padding: 5px 0;
+    margin-right: 20px;
+    width: auto;
+    height: 100%;
+}
+
+.widgetRow {
+    display: inline;
+    margin-bottom: 5px;
+}
+
+.region-mobile {
+    display: block;
+    width: 100%;
+    padding: 0;
+    margin-right: 0;
+    float: none;
+}
+
+.regionDragging {
+    border: 1px solid black;
+}
+
+.region.regionNonDragging{
+	border: 1px solid transparent;
+}
+
+.columns_1_1 {
+    width: 90%;
+}
+
+.columns_2_1, .columns_2_2 {
+    width: 45%;
+}
+
+.columns_2wn_1 {
+    width: 60%;
+}
+
+.columns_2wn_2 {
+    width: 30%;
+}
+
+.columns_3_1, .columns_3_2, .columns_3_3 {
+    width: 30%
+}
+
+.columns_3nwn_1, .columns_3nwn_3 {
+    width: 22%;
+}
+
+.columns_3nwn_2 {
+    width: 45%;
+}
+
+.columns_4_1, .columns_4_2, .columns_4_3, .columns_4_4 {
+    width: 22%;
+}
+
+.columns_3nwn_1_bottom_1, .columns_3nwn_1_bottom_3 {
+    width: 22%;
+}
+
+.columns_3nwn_1_bottom_2 {
+    width: 45%;
+}
+
+.columns_3nwn_1_bottom_4 {
+    width: 93%;
+    clear: both;
+}
+
+.columns_2_2, .columns_3_3, .columns_3nwn_3, .columns_4_4, .columns_3nwn_1_bottom_3, .columns_3nwn_1_bottom_4, .person_profile_2 {
+    margin-right: 0;
+}
+
+.columns_3_newuser_1, .columns_3_newuser_2 {
+    width: 46%;
+}
+
+.columns_3_newuser_3 {
+    width: 93%;
+    clear: both;
+}
+
+.columns_3_newuser_static {
+    float: left;
+    height: 100%;
+    margin-right: 5px;
+    width: 30%;
+}
+
+.columns_3_newuser_static ul {
+    margin-top: 15px;
+}
+
+.columns_3_newuser_static ul li {
+    margin-left: 20px;
+}
+
+.columns_3_newuser_widgets {
+    float: left;
+    width: 65%;
+}
+
+.columns_3_newuser_subtitle {
+    display: inline-block;
+    width: 100%;
+    text-align: center;
+}
+
+.person_profile_1 {
+    width: 97%;
+}
+
+.storeSearch {
+    float: right;
+    width: 225px;
+    padding: 1em;
+}
+
+.storeBox {
+    margin-right: 275px;
+    padding: 1em;
+}
+
+.storeSearch form p {
+    margin: 0;
+}
+
+#storeWidgetDetail {
+    width: 100%;
+}
+
+.storeItem {
+    border: 1px solid #B3C4CF;
+    margin: 1em auto;
+    padding: 10px;
+    background-color: #F2F2F2;
+    color: black;
+    border-radius: 5px;
+    box-shadow: 2px 2px 2px black;
+}
+
+.storeItemFeatured {
+    background-color: #D5EAF9;
+}
+
+.widget-users-dialog {
+    height: 200px;
+}
+
+.widget-users {
+    list-style-type: none;
+}
+
+.widget-user {
+
+}
+
+.widget-content {
+    width: 80%;
+    margin: 0 auto;
+    padding: 1em 1%;
+    max-width: 960px;
+}
+
+.detailWidgetInfo {
+    margin: 0 30% 0 0;
+}
+
+.detailWidgetPreview {
+    width: 28%;
+    margin: 0 0 1em 2%;
+    float: right;
+}
+
+.detailWidgetScreenshot img, .detailWidgetThumbnail img {
+    max-width: 100%;
+    margin-bottom: 1em;
+}
+
+.detailWidgetThumbnail {
+    display: none;
+}
+
+.new-comment {
+    margin: 1em 0;
+}
+
+.new-comment textarea {
+    max-width: 95%;
+}
+
+.comment {
+    margin: 1em 0 2em 0;
+}
+
+ul.comments li {
+    list-style: none;
+}
+
+ul.storeItems {
+    padding: 0;
+    margin: 1em auto;
+}
+
+ul.storeItems li {
+    list-style: none;
+}
+
+.storeItemLeft, .storeItemCenter {
+    vertical-align: top;
+}
+
+.storeItemLeft {
+    float: left;
+    width: 120px;
+}
+
+.storeItemCenter {
+    margin-left: 140px;
+}
+
+.storeWidgetThumbnail {
+    margin-bottom: 1em;
+}
+
+.storeWidgetDesc {
+    margin: 1em 0;
+}
+
+.storeWidgetDisabled {
+    background-color: #FCE8D7;
+    border: 1px solid #B3C4CF;
+    margin: 3px;
+    padding: 3px;
+}
+
+.widgetRating {
+    margin: 1em 0;
+}
+
+.secondaryPageItemTitle {
+    font-size: 1.2em;
+}
+
+.ui-sortable-placeholder {
+    background-color: #DDDDDD;
+    border: 1px dashed #767676;
+    visibility: visible !important;
+
+}
+
+.ui-sortable-placeholder * {
+    visibility: hidden;
+}
+
+button.widget-toolbar-btn {
+    width: 1em;
+}
+
+button.widget-toolbar-btn-prefs {
+    display: none;
+}
+
+button.widget-toolbar-btn-min {
+    display: none;
+}
+
+.widget-toolbar-toggle-collapse {
+    display: inline-block;
+    vertical-align: middle;
+    cursor: pointer;
+    /* IE 7 hacks for inline-block */
+    zoom: 1;
+    *display: inline;
+}
+
+/* Form fields */
+
+fieldset {
+    margin: 0;
+    padding: 0;
+    border: none;
+}
+
+p label, span.label {
+    width: 120px;
+    float: left;
+    display: block;
+    position: relative;
+}
+
+label.formradio {
+    float: none;
+    left: 0;
+    margin-left: 120px;
+    margin-bottom: 0.4em;
+    margin-right: 0;
+    position: static;
+    top: auto;
+    width: auto;
+}
+
+input.long, textarea.long {
+    width: 400px;
+}
+
+.checkboxlist {
+    float: left;
+    list-style: none;
+}
+
+/* Associated with JQuery validation CSS */
+.error {
+    color: #ff0000;
+}
+
+span.error, label.error {
+    font-size: 10px;
+    display: block;
+    float: none;
+    margin: 0.5em 0 auto 120px;
+}
+
+.warn {
+    font-weight: bold;
+}
+
+/* End of form fields */
+
+#tabsHeader {
+    background-color: #FFFFFF;
+}
+
+#tabs {
+    border-bottom: 1px solid #B4C4CF;
+    margin: 0;
+    padding: 10px 15px 0 13px;
+    white-space: nowrap;
+}
+
+.rave-ui-tab {
+    background-color: #FFFFFF;
+    border: 1px solid #B4C4CF;
+    color: #767676;
+    display: inline-block;
+    font-style: italic;
+    font-weight: normal;
+    height: 25px;
+    position: relative;
+    top: 1px;
+    /* IE 7 hacks for inline-block */
+    zoom: 1;
+    *display: inline;
+}
+
+.rave-ui-tab a, .rave-ui-tab a:visited {
+    color: #767676;
+    text-decoration: none;
+}
+
+.rave-ui-tab:hover, .rave-ui-tab a:hover {
+    background-color: #D7D7D3;
+    color: #000000;
+}
+
+.rave-ui-tab-selected, .rave-ui-tab-selected:hover {
+    background-color: #D7D7D3;
+    border-bottom: 1px solid #D7D7D3;
+    color: #000000;
+    font-style: normal;
+    font-weight: bold;
+}
+
+.rave-ui-tab-mobile {
+    border: none;
+    background-color: #FFFFFF;
+    color: #767676;
+    font-weight: normal;
+    font-style: normal;
+}
+
+.rave-ui-tab-mobile a, .rave-ui-tab-mobile a:visited {
+    color: #767676;
+    text-decoration: none;
+}
+
+.rave-ui-tab-mobile:hover, .rave-ui-tab-mobile a:hover {
+    color: #000000;
+    border: none;
+    background-color: #FFFFFF;
+}
+
+.rave-ui-tab-selected-mobile, .rave-ui-tab-selected-mobile:hover {
+    border: 1px solid #B4C4CF;
+    border-bottom: 1px solid #FFFFFF;
+    background-color: #FFFFFF;
+    color: #000000;
+    font-style: normal;
+    font-weight: bold;
+}
+
+#dialog {
+    width: 400px;
+    display: none;
+}
+
+#dialog label {
+    display: block;
+}
+
+#dialog input {
+    display: block;
+}
+
+#dialog label {
+    margin-top: 0.5em;
+}
+
+#dialog input {
+    width: 95%;
+}
+
+#dialog textarea {
+    width: 95%;
+}
+
+#add_page {
+    cursor: pointer;
+    width: 18px;
+    display: inline-block;
+    vertical-align: middle;
+    margin-left: 10px;
+    padding-bottom: 4px;
+    padding-top: 3px;
+    /* IE 7 hacks for inline-block */
+    zoom: 1;
+    *display: inline;
+}
+
+#pageContent, .pageContent {
+    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr = "#D7D7D3", endColorstr = "#EBEBEB");
+    background: -moz-linear-gradient(center top, #D7D7D3 0%, #EBEBEB 50%) repeat scroll 0 0 transparent;
+    background: -webkit-gradient(linear, left top, left bottom, from(#D7D7D3), to(#EBEBEB));
+    font-size: 1.1em;
+}
+
+.pageContent-mobile {
+    background: none !important;
+    background-color: #FFFFFF !important;
+    margin-top: 3px;
+}
+
+.page-title {
+    display: inline-block;
+    padding: 5px 10px;
+    cursor: pointer;
+    /* IE 7 hacks for inline-block */
+    zoom: 1;
+    *display: inline;
+}
+
+.emptyPageMessage {
+    background-color: #FFFFFF;
+    border: 1px solid #B4C4CF;
+    border-radius: 10px 10px 10px 10px;
+    box-shadow: 1px 1px 0 #D9DADC;
+    font-weight: bold;
+    margin: 20px auto;
+    padding: 20px;
+    text-align: center;
+    width: 300px;
+    font-size: 1.25em;
+}
+
+.emptyPageMessageWrapper {
+    padding-top: 20px;
+}
+
+/* widget menu related styles */
+.widget-menu-wrapper {
+    position: relative;
+    display: inline-block;
+    vertical-align: middle;
+    /* IE 7 hacks for inline-block */
+    zoom: 1;
+    *display: inline;
+}
+
+.widget-menu {
+    border: 1px solid black;
+    position: absolute;
+    display: none;
+    left: 18px;
+    top: 0;
+    width: 100px;
+    background-color: #FFFFFF;
+    z-index: 1000;
+    cursor: pointer;
+}
+
+.widget-menu-item {
+    padding: 3px;
+    color: #000000;
+}
+
+.widget-menu-item:hover {
+    background-color: #B4C4CF;
+}
+
+.widget-menu-item-disabled {
+    color: #D3D3D3;
+}
+
+.widget-menu-item-divider {
+    border-top: 1px solid #000000;
+}
+
+.widget-menu-button {
+    cursor: pointer;
+}
+
+.widget-tags-select {
+
+    font-family: Arial, Helvetica, sans-serif;
+    font-size: 11px;
+}
+
+#errorStack {
+    display: none;
+    width: 90%;
+    margin: auto;
+}
+
+.errorMessage {
+    text-align: center;
+    font-size: 150%;
+}
+
+
+/** Admin interface **/
+.admincontent {
+    margin: 0 auto;
+    width: 80%;
+    padding: 1em 20px;
+    font-size: 1.1em;
+}
+
+.admincontent p {
+    margin: 1em 0;
+}
+
+.admincontent .searchbox {
+    float: right;
+    margin-top: 1em;
+}
+
+.admincontent .goback {
+    padding-top: 1em;
+}
+
+.searchbox form, .searchbox fieldset {
+    display: inline;
+    height: 1em;
+    margin: 0;
+    padding: 0;
+}
+
+
+.admincontent .leftcolumn {
+    float: left;
+    width: 70%;
+}
+
+.admincontent .rightcolumn {
+    float: right;
+    width: 30%;
+}
+
+.admincontent figure {
+    display: block;
+    margin: 1em 0;
+    width: 100%;
+}
+
+.admincontent figure.screenshot img {
+    max-width: 100%;
+}
+
+
+
+
+.booleancell {
+    width: 50px;
+}
+
+.textcell {
+    width: 150px;
+}
+
+.largetextcell {
+    width: 300px
+}
+
+/*CSS style for user profile tabs*/
+.profile-submenu ul {
+	height: 2.5em;
+	background-color: #41627E;
+	text-align: center;
+}
+
+.profile-submenu li {
+	display: inline;
+    list-style: none;
+    padding: 0 10px;
+    color: #FFFFFF;
+    font-size: 1.5em;
+}
+
+.profile-tag {
+	display: inline;
+}
+
+.profile-tag:hover {
+	background:#A9BCF5;
+	color:#000000;
+	cursor:pointer;
+}
+
+.profile-tag-page {
+	display: none;
+}
+
+.profile-info-hidden {
+    display: none;
+}
+
+.profile-info-visible {
+	display: inline;
+}
+
+@media all and (max-width: 900px) {
+    .storeSearch {
+        width: 100%;
+        float: none;
+    }
+
+    .storeBox {
+        margin: 0;
+    }
+}
+
+@media all and (max-width: 550px) {
+
+
+    header {
+        height: auto;
+    }
+
+    header h1 {
+        width: 100%;
+        clear: both;
+    }
+
+    .topnav {
+        float: none;
+        display: block;
+    }
+
+    #content {
+        width: 100%;
+        padding: 0;
+    }
+
+    h2, h3, h4, h5, h6 {
+        margin: 0 0 1em 0;
+        padding: 0;
+    }
+
+    .admincontent {
+        width: auto;
+    }
+
+    .storeSearch, .storeBox {
+        float: none;
+        width: 98%;
+        padding: 1em 1%;
+    }
+
+    .storeItem {
+        box-shadow: none;
+        padding: 0 10px;
+    }
+
+    .storeItemLeft, .storeItemCenter {
+        width: 100%;
+        float: none;
+        margin: 1em 0;
+    }
+
+    .widget-content {
+        width: 95%;
+        padding: 1em 10px;
+    }
+
+    .detailWidgetInfo, .detailWidgetPreview, .widgetComments, .widgetTags {
+        width: 98%;
+        padding: 0 1%;
+    }
+
+    .detailWidgetPreview {
+        float: none;
+    }
+
+    .detailWidgetScreenshot {
+        display: none;
+    }
+
+    .detailWidgetThumbnail {
+        display: block;
+    }
+
+    p label, span.label {
+        width: 100%;
+        float: none;
+    }
+
+    input.long, textarea.long {
+        width: 100%;
+    }
+
+    .largetextcell {
+        width: auto;
+    }
+
+    .admincontent .rightcolumn, .admincontent .leftcolumn, .admincontent .searchbox {
+        width: 100%;
+        float: none;
+        margin-top: 0;
+    }
+
+    .region {
+        clear: both;
+        width: 100%;
+        margin: 0;
+        padding: 1em 0;
+    }
+
+    .widget, .widget-title-bar {
+        box-shadow: none;
+        border: 1px solid #767676;
+    }
+
+    .emptyPageMessage {
+        width: 80%;
+        padding: 1em 5px;
+    }
+}

Added: rave/branches/bootstrap/rave-portal-resources/src/main/webapp/css/rave.css
URL: http://svn.apache.org/viewvc/rave/branches/bootstrap/rave-portal-resources/src/main/webapp/css/rave.css?rev=1311865&view=auto
==============================================================================
--- rave/branches/bootstrap/rave-portal-resources/src/main/webapp/css/rave.css (added)
+++ rave/branches/bootstrap/rave-portal-resources/src/main/webapp/css/rave.css Tue Apr 10 16:56:11 2012
@@ -0,0 +1,23 @@
+.center{
+    text-align: center;
+    display: block;
+    margin-left: auto;
+    margin-right: auto;
+}
+
+.navbar-spacer{
+    margin-top: 50px;
+}
+
+/* page menu related styles */
+/*
+    NOTE: bootstrap doesn't have a native style for a disabled dropdown item
+          so we created this
+*/
+.menu-item-disabled a,
+.menu-item-disabled a:visited,
+.menu-item-disabled a:active,
+.menu-item-disabled a:hover {
+    color: #CCCCCC !important;
+    background-color: #FFFFFF;
+}
\ No newline at end of file

Modified: rave/branches/bootstrap/rave-portal-resources/src/main/webapp/script/rave.js
URL: http://svn.apache.org/viewvc/rave/branches/bootstrap/rave-portal-resources/src/main/webapp/script/rave.js?rev=1311865&r1=1311864&r2=1311865&view=diff
==============================================================================
--- rave/branches/bootstrap/rave-portal-resources/src/main/webapp/script/rave.js (original)
+++ rave/branches/bootstrap/rave-portal-resources/src/main/webapp/script/rave.js Tue Apr 10 16:56:11 2012
@@ -691,7 +691,7 @@ var rave = rave || (function() {
         }
 
         function showInfoMessage(message) {
-            $("<div />", {'class':'topbar-message', 'text':message})
+            $("<div />", {'class':'alert alert-success navbar-spacer', 'text':message})
                     .hide()
                     .prependTo("body")
                     .slideDown('fast').delay(5000)

Modified: rave/branches/bootstrap/rave-portal-resources/src/main/webapp/script/rave_layout.js
URL: http://svn.apache.org/viewvc/rave/branches/bootstrap/rave-portal-resources/src/main/webapp/script/rave_layout.js?rev=1311865&r1=1311864&r2=1311865&view=diff
==============================================================================
--- rave/branches/bootstrap/rave-portal-resources/src/main/webapp/script/rave_layout.js (original)
+++ rave/branches/bootstrap/rave-portal-resources/src/main/webapp/script/rave_layout.js Tue Apr 10 16:56:11 2012
@@ -20,33 +20,20 @@
 var rave = rave || {};
 rave.layout = rave.layout || (function() {
     var MOVE_PAGE_DEFAULT_POSITION_IDX = -1;
-    var $dialog;
-    var $movePageDialog;
     var $moveWidgetDialog;
-    
+    var $movePageDialog = $("#movePageDialog");
+    var $pageForm = $("#pageForm");
     var $tab_title_input = $("#tab_title"),
         $tab_id = $("#tab_id"),
         $page_layout_input = $("#pageLayout");
-
-    // define the form object    
-    var $form = $("#pageForm", $dialog);  
     
     // page menu related functions
     var pageMenu = (function() {
-        var $button = $("#pageMenuButton");
-        var $menu = $("#pageMenu");
+        var $addPageButton = $("#addPageButton");
         var $menuItemEdit = $("#pageMenuEdit");
         var $menuItemDelete = $("#pageMenuDelete");
         var $menuItemMove = $("#pageMenuMove");
-                        
-        function hideMenu() {
-            $menu.hide();
-        }
-        
-        function showMenu() {
-            $menu.show();
-        }
-        
+
         /**
          * Initializes the private pageMenu closure
          * - binds click event handler to menu button
@@ -54,122 +41,34 @@ rave.layout = rave.layout || (function()
          * - binds body click event handler to close the menu
          */
         function init() {
-            // modal dialog init: custom buttons and a "close" callback reseting the form inside
-            $dialog = $( "#dialog" ).dialog({
-                autoOpen: false,
-                modal: true,
-                buttons: [
-                    {
-                        text: rave.getClientMessage("common.add"),
-                        id: "AddPageBtn",
-                        click: function() {
-                            addPage();
-                        }
-                    },
-                    {
-                        text: rave.getClientMessage("common.update"),
-                        id: "UpdatePageBtn",
-                        click: function() {
-                            updatePage();
-                        }
-                    },
-                    {
-                        text: rave.getClientMessage("common.cancel"),
-                        id: "CancelPageBtn",
-                        click: function() {
-                            $(this).dialog("close");
-                        }
-                    }
-                ],
-                open: function(event, ui) {
-                    $dialog.unbind("submit");
-                    if ($tab_id.val() == '') {
-                        $("#"+this.id).dialog("option", "title", rave.getClientMessage("page.add"));
-                        $("#UpdatePageBtn").hide();
-                        $("#AddPageBtn").show();
-                        $dialog.submit(function() {
-                            $("#AddPageBtn").click();
-                            return false;
-                        });
-                    }
-                    else {
-                        $("#"+this.id).dialog("option", "title", rave.getClientMessage("page.update"));
-                        $("#UpdatePageBtn").show();
-                        $("#AddPageBtn").hide();
-                        $dialog.submit(function() {
-                            $("#UpdatePageBtn").click();
-                            return false;
-                        });
-
-                    }
+            // initialize the page form validator overriding the
+            // styles to wire in bootstrap styles
+            $pageForm.validate({
+                errorElement: 'span',
+                errorClass: 'help-inline',
+                highlight: function (element, errorClass) {
+                    $(element).parent().parent().addClass('error');
                 },
-                close: function() {
-                    $form[ 0 ].reset();
-                    $tab_id.val('');
-                    $("#pageFormErrors").html("");
+                unhighlight: function (element, errorClass) {
+                    $(element).parent().parent().removeClass('error');
                 }
             });
 
-            // the modal dialog for moving a page
-            $movePageDialog = $("#movePageDialog").dialog({
-                autoOpen: false,
-                modal: true,
-                buttons: [
-                    {
-                        text: rave.getClientMessage("common.move"),
-                        click: function() {
-                            movePage();
-                        }
-                    },
-                    {
-                        text: rave.getClientMessage("common.cancel"),
-                        click: function() {
-                            $( this ).dialog( "close" );
-                        }
-                    }
-                ],
-                open: function() {
-                    $("#moveAfterPageId").focus();
-                },
-                close: function() {
-                    $("#movePageForm")[0].reset();
-                }
-            });
+            // initialize the close button in the page menu dialog
+            $("#pageMenuCloseButton").click(rave.layout.closePageDialog);
 
-            // the modal dialog for moving a widget
-            $moveWidgetDialog = $("#moveWidgetDialog").dialog({
-                autoOpen: false,
-                modal: true,
-                buttons: [
-                    {
-                        text: rave.getClientMessage("common.move"),
-                        click: function() {
-                            moveWidgetToPage($(this).data('regionWidgetId'));
-                        }
-                    },
-                    {
-                        text: rave.getClientMessage("common.cancel"),
-                        click: function() {
-                            $(this).dialog("close");
-                        }
-                    }
-                ],
-                open: function() {
-                    $("#moveToPageId").focus();
-                },
-                close: function() {
-                    $("#moveWidgetForm")[0].reset();
-                }
+            // setup the edit page menu item
+            $addPageButton.bind('click', function(event) {
+                $("#pageMenuDialogHeader").html(rave.getClientMessage("page.add"));
+                var $pageMenuUpdateButton = $("#pageMenuUpdateButton");
+                $pageMenuUpdateButton.html(rave.getClientMessage("common.add"));
+                // unbind the previous click event since we are sharing the
+                // dialog between separate add/edit page actions
+                $pageMenuUpdateButton.unbind('click');
+                $pageMenuUpdateButton.click(rave.layout.addPage);
+                $("#pageMenuDialog").modal('show');
             });
 
-            // initialize the page menu and button
-            $button.bind('click', function(event) {  
-                $menu.toggle();
-                // prevent the menu button click event from bubbling up to parent 
-                // DOM object event handlers such as the page tab click event
-                event.stopPropagation();
-            });         
-
             // setup the edit page menu item
             $menuItemEdit.bind('click', function(event) {
                  rave.api.rpc.getPagePrefs({pageId: getCurrentPageId(),
@@ -177,47 +76,36 @@ rave.layout = rave.layout || (function()
                                             $tab_title_input.val(result.result.name);
                                             $tab_id.val(result.result.entityId);
                                             $page_layout_input.val(result.result.pageLayout.code);
-                                            $dialog.dialog( "open" );
+                                            $("#pageMenuDialogHeader").html(rave.getClientMessage("page.update"));
+                                            var $pageMenuUpdateButton = $("#pageMenuUpdateButton");
+                                            $pageMenuUpdateButton.html(rave.getClientMessage("common.save"));
+                                            // unbind the previous click event since we are sharing the
+                                            // dialog between separate add/edit page actions
+                                            $pageMenuUpdateButton.unbind('click');
+                                            $pageMenuUpdateButton.click(rave.layout.updatePage);
+                                            $("#pageMenuDialog").modal('show');
                                         }
                 });
-
-                pageMenu.hide();
-                // prevent the menu button click event from bubbling up to parent 
-                // DOM object event handlers such as the page tab click event
-                event.stopPropagation();
             });
 
             // setup the delete page menu item if it is not disabled
-            if (!$menuItemDelete.hasClass("page-menu-item-disabled")) {                            
+            if (!$menuItemDelete.hasClass("menu-item-disabled")) {
                 $menuItemDelete.bind('click', function(event) {
                     // send the rpc request to delete the page
                     rave.api.rest.deletePage({pageId: getCurrentPageId(), successCallback: rave.viewPage});
-                    pageMenu.hide();
-                    // prevent the menu button click event from bubbling up to parent 
-                    // DOM object event handlers such as the page tab click event
-                    event.stopPropagation();
                 });
             }
 
-            // setup the edit page menu item if it is not disabled
-            if (!$menuItemDelete.hasClass("page-menu-item-disabled")) {
+            // setup the move page menu item if it is not disabled
+            if (!$menuItemMove.hasClass("menu-item-disabled")) {
                 $menuItemMove.bind('click', function(event) {
-                    pageMenu.hide();                 
-                    $movePageDialog.dialog("open");
-                    // prevent the menu button click event from bubbling up to parent 
-                    // DOM object event handlers such as the page tab click event
-                    event.stopPropagation();
+                    $movePageDialog.modal('show');
                 });      
             }
-
-            // close the page menu if the user clicks outside of it           
-            $("html").click(pageMenu.hide);
         }
         
         return {
-            init: init,
-            hide: hideMenu,
-            show: showMenu
+            init: init
         }
     })();
 
@@ -256,6 +144,32 @@ rave.layout = rave.layout || (function()
          * - binds body click event handler to close the menu
          */
         function init() {
+            // the modal dialog for moving a widget
+            $moveWidgetDialog = $("#moveWidgetDialog").dialog({
+                autoOpen: false,
+                modal: true,
+                buttons: [
+                    {
+                        text: rave.getClientMessage("common.move"),
+                        click: function() {
+                            moveWidgetToPage($(this).data('regionWidgetId'));
+                        }
+                    },
+                    {
+                        text: rave.getClientMessage("common.cancel"),
+                        click: function() {
+                            $(this).dialog("close");
+                        }
+                    }
+                ],
+                open: function() {
+                    $("#moveToPageId").focus();
+                },
+                close: function() {
+                    $("#moveWidgetForm")[0].reset();
+                }
+            });
+
             // initialize the widget menu and button
             $(".widget-menu-button").each(function(index, element) {
                 if (!$(element).hasClass("widget-menu-item-disabled")) {
@@ -299,7 +213,7 @@ rave.layout = rave.layout || (function()
                 $menuItemDelete  = $("#widget-" + widgetId + "-menu-delete-item");
                 if (!$menuItemDelete.hasClass("widget-menu-item-disabled")) {
                     $menuItemDelete.bind('click', function(event) {                       
-                        var regionWidgetId = rave.getObjectIdFromDomId(this.id); 
+                        var regionWidgetId = rave.getObjectIdFromDomId(this.id);
                          // hide the widget menu
                         rave.layout.hideWidgetMenu(regionWidgetId);                                         
                         // invoke the rpc call to remove the widget from the page
@@ -401,7 +315,7 @@ rave.layout = rave.layout || (function()
      */        
     function addPage() {
         // if the form has passed validation submit the request
-        if ($("#pageForm").valid()) {        
+        if ($pageForm.valid()) {
             var newPageTitle = $tab_title_input.val();
             var newPageLayoutCode = $page_layout_input.val();
 
@@ -433,7 +347,7 @@ rave.layout = rave.layout || (function()
     }
 
     function updatePage() {
-        if ($("#pageForm").valid()) {
+        if ($pageForm.valid()) {
             // send the rpc request to update the page
             rave.api.rpc.updatePagePrefs({pageId: $tab_id.val(),
                                             title: $tab_title_input.val(),
@@ -443,6 +357,12 @@ rave.layout = rave.layout || (function()
                                             }});
         }
     }
+
+    function closePageDialog() {
+        $pageForm[0].reset();
+        $tab_id.val('');
+        $("#pageMenuDialog").modal("hide");
+    }
     
     /**
      * Invokes the RPC call to delete a regionWidget from a page
@@ -476,19 +396,10 @@ rave.layout = rave.layout || (function()
     * initializes the rave.layout namespace code
     */
     function init() {
-        // add_page button to open the dialog for creating a new page
-        $( "#add_page" )
-                .button({ 
-                    text: false,
-                    icons: {primary:'ui-icon-plusthick'} 
-                })
-                .click(function() {
-                    $dialog.dialog( "open" );
-                })
-                .show();
-
         pageMenu.init();
         widgetMenu.init();
+        // initialize the bootstrap dropdowns
+        $(".dropdown-toggle").dropdown();
     }
    
     // public rave.layout API
@@ -497,6 +408,10 @@ rave.layout = rave.layout || (function()
         getCurrentPageId: getCurrentPageId,
         hideWidgetMenu: widgetMenu.hide,
         deleteRegionWidget: deleteRegionWidget,
-        enableEditPrefsMenuItem: widgetMenu.enableEditPrefsMenuItem
+        enableEditPrefsMenuItem: widgetMenu.enableEditPrefsMenuItem,
+        addPage: addPage,
+        updatePage: updatePage,
+        movePage: movePage,
+        closePageDialog: closePageDialog
     };    
 })();

Modified: rave/branches/bootstrap/rave-providers/rave-opensocial-provider/rave-opensocial-core/src/test/java/org/apache/rave/gadgets/oauth/inject/DefaultOAuthStoreTest.java
URL: http://svn.apache.org/viewvc/rave/branches/bootstrap/rave-providers/rave-opensocial-provider/rave-opensocial-core/src/test/java/org/apache/rave/gadgets/oauth/inject/DefaultOAuthStoreTest.java?rev=1311865&r1=1311864&r2=1311865&view=diff
==============================================================================
--- rave/branches/bootstrap/rave-providers/rave-opensocial-provider/rave-opensocial-core/src/test/java/org/apache/rave/gadgets/oauth/inject/DefaultOAuthStoreTest.java (original)
+++ rave/branches/bootstrap/rave-providers/rave-opensocial-provider/rave-opensocial-core/src/test/java/org/apache/rave/gadgets/oauth/inject/DefaultOAuthStoreTest.java Tue Apr 10 16:56:11 2012
@@ -36,13 +36,9 @@ import org.junit.Before;
 import org.junit.Test;
 import org.springframework.test.util.ReflectionTestUtils;
 
-import static org.easymock.EasyMock.createMock;
-import static org.easymock.EasyMock.createNiceMock;
-import static org.easymock.EasyMock.expect;
-import static org.easymock.EasyMock.replay;
-import static org.easymock.EasyMock.verify;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
+import static org.easymock.EasyMock.*;
+import static org.junit.Assert.*;
+import static org.hamcrest.CoreMatchers.*;
 
 /**
  * Test for {@link DefaultOAuthStore}