Changes to the page-navigation
authorLuzifr <szekely@woltlab.com>
Thu, 24 Nov 2011 18:57:08 +0000 (19:57 +0100)
committerLuzifr <szekely@woltlab.com>
Thu, 24 Nov 2011 18:57:12 +0000 (19:57 +0100)
wcfsetup/install/files/acp/style/style.css
wcfsetup/install/files/js/WCF.js
wcfsetup/install/files/lib/system/template/plugin/PagesFunctionTemplatePlugin.class.php

index 2eaab6f49060307e55b061633367a2d5618f080a..95e191b74c69ea9ec0851e366d3a2e1087f066d8 100644 (file)
@@ -326,7 +326,7 @@ header.pageHeader nav.topMenu > div {
 }
 
 header.pageHeader nav.topMenu > div > ul {
-       
+       /* none */
 }
 
 header.pageHeader nav.topMenu > div > ul > li {
@@ -773,6 +773,8 @@ section.content .content {
 
 /* ############## Sidebar ############## */
 
+/* Note that the sidebar may change to float soon! */
+
 /* Globals */
 
 aside.sidebar {
@@ -1763,6 +1765,41 @@ textarea[disabled='disabled'] {
 
 
 
+/* ############## ToDo: Small Buttons ############## */
+
+/* Globals */
+
+.smallButtons {
+       list-style-type: none;
+       margin-right: -1px;
+       margin-bottom: -1px;
+}
+
+.smallButtons > li {
+       margin-left: -5px;
+       display: inline-block;
+}
+
+.smallButtons > li > a {
+       white-space: nowrap;
+       padding: 3px 7px;
+       display: block;
+}
+
+.smallButtons > li.separator > a {
+       border-right: 1px dotted #bcd;
+}
+
+.smallButtons > li:first-child > a {
+       border-top-left-radius: 13px;
+}
+
+.smallButtons > li:last-child > a {
+       border-bottom-right-radius: 7px;
+}
+
+
+
 /* ############## Large Buttons ############## */
 
 /* Colors are being taken from the global color styles */
@@ -2110,7 +2147,7 @@ input[type='button'],
 }
 
 .menu ul {
-       /* This is the general toggle switch for menu orientation (options: left|center|right) */
+       /* Toggle switch for menu orientation (options: left|center|right) */
        text-align: center;
 }
 
@@ -2452,13 +2489,6 @@ tbody tr:hover td {
 
 /* ToDo: Table Header Specials */
 
-/* Is that still in use? 
-.menu ~ .border {
-       border-top-left-radius: 0 !important;
-       border-top-right-radius: 0 !important;
-}
-*/
-
 .menu ~ .border thead th:first-child {
        border-top-left-radius: 0 !important;
 }
@@ -2641,11 +2671,40 @@ tr .columnURL {
 
 /* ToDo: Children */
 
-.pageNavigation ul li.children,
-.pageNavigation ul li.children:hover,
-.pageNavigation ul li.children:active,
-.pageNavigation ul li.children:focus {
+.pageNavigation ul li.children {
        display: inline-block;
+       position: relative;
+}
+
+.pageNavigation ul li.children > a {
+       margin-right: -30px;
+       position: relative;
+       z-index: 100;
+}
+
+.pageNavigation ul li.children div {
+       text-align: left;
+       border-radius: 3px;
+       position: absolute;
+       margin-top: 5px;
+       width: 0px;
+       height: 0px;
+       overflow: hidden;
+}
+
+.pageNavigation ul li.children:hover a ~ div {
+       width: auto;
+       height: auto;
+       min-width: 150px;
+       max-width: 200px;
+       left: auto;
+       top: auto;
+       overflow: visible;
+}
+
+.pageNavigation ul li.children input {
+       width: 28px;
+       height: 9px;
 }
 
 .pageNavigation ul li.children img {
@@ -2927,7 +2986,7 @@ div#ajaxExceptionStacktrace {
 
 /* Login Box */
 
-/* Do not use the class ".loginBox" to style the box! */
+/* Note: Do not use the class ".loginBox" to style the box! */
 
 #loginBox dl {
        margin-right: 20px;
@@ -3155,7 +3214,7 @@ input[type='button'].default:hover,
 .largeButtons ul li a:hover,
 .smallButtons > li > a:hover,
 .badgeButton:hover,
-.pageNavigation ul li:not(.disabled):hover,
+.pageNavigation ul li:not(.disabled):not(.children):hover,
 .clipboardEditor > ul > li:hover,
 .preInput:hover .dropdownCaption {
        color: #666;
@@ -3182,7 +3241,7 @@ input[type='button'].default:focus,
 .largeButtons ul li a:focus,
 .smallButtons > li > a:focus,
 .badgeButton:focus,
-.pageNavigation ul li:not(.disabled):active,
+.pageNavigation ul li:not(.disabled):not(.children):active,
 .clipboardEditor > ul > li:focus,
 .preInput .dropdownCaption:focus,
 input[type='reset']:active,
@@ -3194,7 +3253,7 @@ input[type='button'].default:active,
 .largeButtons ul li.default a:active,
 .smallButtons > li.default > a:active,
 .badgeButton:active,
-.pageNavigation ul li:not(.disabled):focus,
+.pageNavigation ul li:not(.disabled):not(.children):focus,
 .clipboardEditor > ul > li:active,
 .preInput .dropdownCaption:active {
        color: #333;
@@ -3510,159 +3569,6 @@ input[type='button'][disabled='disabled'],
 
 
 
-
-
-
-
-
-
-/* ############## CSS Experiments (active) ############## */
-
-
-
-/* ToDo: User Panel 
-
-this is taken from "userPanel.tpl" (inline-css) 
-will change soon! 
-
-       CSS should be moved to a user css-file, whereas many parts may be left out except for the following ones:
-        - [.scrollableContainer] Don't touch!
-        - [.scrollableItems] Keep the inflated width, you may lower its number but it must be incredible bloated
-        - [.scrollableItems > div] Must be a fixed-width float, otherwise it would break the scrollable class
-          from jQueryTools. Do NOT use css-tables or [display: inline-block] as it won't work with the whole magic
-
-*/
-
-/* ToDo: User Notifications */
-
-.userNotificationContainer {
-       width: 240px;
-       z-index: 510;   /* adjust to any value you like, it *MUST* be higher than 'header.pageHeader nav.topMenu' */
-       overflow: hidden;
-}
-
-.scrollableContainer {
-       position: relative;
-       width: 250px;
-       overflow: hidden;
-}
-
-.scrollableContainer .scrollableItems {
-       position: relative;
-       width: 20000em;
-}
-
-.scrollableContainer .scrollableItems > div {
-       border-right: 1px solid rgba(192, 192, 192, 1);
-       float: left;
-       width: 250px;
-}
-
-.scrollableContainer {
-       font-size: 90%;
-}
-
-.scrollableContainer > div:first-child ul {
-       margin: 0;
-       padding: 0;
-}
-
-.scrollableContainer > div:first-child li {
-       border-top: 1px solid rgba(192, 192, 192, 1);
-       cursor: pointer;
-       padding: 7px;
-}
-
-.scrollableContainer > div:first-child li:first-child {
-       border-top-width: 0;
-}
-
-div.scrollableContainer > div:first-child p {
-       padding: 0 1px;
-}
-
-.userNotificationDetails {
-       padding: 7px;
-       width: 236px;
-}
-
-.userNotificationDetails hgroup {
-       margin-bottom: 7px;
-       display: table;
-       width: 100%;
-}
-
-.userNotificationDetails .row {
-       display: table-row;
-}
-
-.userNotificationDetails .row div {
-       text-align: center;
-       display: table-cell;
-       vertical-align: middle;
-}
-
-.userNotificationDetails .row div:first-child {
-       width: 64px;
-}
-
-.userNotificationDetails .row div:last-child {
-       padding-left: 7px;
-}
-
-.userNotificationDetails .avatar img {
-       height: 64px;
-       width: 64px;
-}
-
-.userNotificationDetails h1 {
-       font-size: 110%;
-}
-
-.userNotificationDetails section {
-       border-top: 1px solid rgba(192, 192, 192, 1);
-       padding-top: 7px;
-}
-
-.userNotificationDetails nav {
-       text-align: center;
-       border-top: 1px solid rgba(192, 192, 192, 1);
-       margin-top: 7px;
-       padding-top: 7px;
-}
-
-.userNotificationDetails ul {
-       list-style-type: none;
-       display: inline-block;
-}
-
-.userNotificationDetails li {
-       cursor: pointer;
-       border: 1px solid rgba(192, 192, 192, 1) !important;
-       padding: 3px;
-       display: inline-block;
-}
-
-.userNotificationDetails li:hover {
-       
-}
-
-#userNotificationDetailsLoading {
-       background-color: rgba(255, 255, 255, .5);
-       background-image: url('{@RELATIVE_WCF_DIR}icon/spinner1.svg');
-       background-position: center center;
-       background-size: 24px;
-       background-repeat: no-repeat;
-       position: absolute;
-}
-
-
-
-
-
-
-
-
 /* ############## ACP Package List ############## */
 
 /* -- -- -- Package Standalone -- -- -- */
@@ -3869,37 +3775,144 @@ div.scrollableContainer > div:first-child p {
 
 
 
-/* ############## ToDo: Small Buttons ############## */
+/* ############## CSS Experiments (active) ############## */
 
-/* Globals */
 
-ul.smallButtons {
-       list-style-type: none;
-       margin-right: -1px;
-       margin-bottom: -1px;
+
+/* ToDo: User Panel 
+
+this is taken from "userPanel.tpl" (inline-css) 
+will change soon! 
+
+       CSS should be moved to a user css-file, whereas many parts may be left out except for the following ones:
+        - [.scrollableContainer] Don't touch!
+        - [.scrollableItems] Keep the inflated width, you may lower its number but it must be incredible bloated
+        - [.scrollableItems > div] Must be a fixed-width float, otherwise it would break the scrollable class
+          from jQueryTools. Do NOT use css-tables or [display: inline-block] as it won't work with the whole magic
+
+*/
+
+/* ToDo: User Notifications */
+
+.userNotificationContainer {
+       width: 240px;
+       z-index: 510;   /* adjust to any value you like, it *MUST* be higher than 'header.pageHeader nav.topMenu' */
+       overflow: hidden;
 }
 
-ul.smallButtons > li {
-       margin-left: -5px;
-       display: inline-block;
+.scrollableContainer {
+       position: relative;
+       width: 250px;
+       overflow: hidden;
 }
 
-ul.smallButtons > li > a {
-       white-space: nowrap;
-       padding: 3px 7px;
-       display: block;
+.scrollableContainer .scrollableItems {
+       position: relative;
+       width: 20000em;
 }
 
-ul.smallButtons > li.separator > a {
-       border-right: 1px dotted #bcd;
+.scrollableContainer .scrollableItems > div {
+       border-right: 1px solid rgba(192, 192, 192, 1);
+       float: left;
+       width: 250px;
 }
 
-ul.smallButtons > li:first-child > a {
-       border-top-left-radius: 13px;
+.scrollableContainer {
+       font-size: 90%;
 }
 
-ul.smallButtons > li:last-child > a {
-       border-bottom-right-radius: 7px;
+.scrollableContainer > div:first-child ul {
+       margin: 0;
+       padding: 0;
+}
+
+.scrollableContainer > div:first-child li {
+       border-top: 1px solid rgba(192, 192, 192, 1);
+       cursor: pointer;
+       padding: 7px;
+}
+
+.scrollableContainer > div:first-child li:first-child {
+       border-top-width: 0;
+}
+
+div.scrollableContainer > div:first-child p {
+       padding: 0 1px;
+}
+
+.userNotificationDetails {
+       padding: 7px;
+       width: 236px;
+}
+
+.userNotificationDetails hgroup {
+       margin-bottom: 7px;
+       display: table;
+       width: 100%;
+}
+
+.userNotificationDetails .row {
+       display: table-row;
+}
+
+.userNotificationDetails .row div {
+       text-align: center;
+       display: table-cell;
+       vertical-align: middle;
+}
+
+.userNotificationDetails .row div:first-child {
+       width: 64px;
+}
+
+.userNotificationDetails .row div:last-child {
+       padding-left: 7px;
+}
+
+.userNotificationDetails .avatar img {
+       height: 64px;
+       width: 64px;
+}
+
+.userNotificationDetails h1 {
+       font-size: 110%;
+}
+
+.userNotificationDetails section {
+       border-top: 1px solid rgba(192, 192, 192, 1);
+       padding-top: 7px;
+}
+
+.userNotificationDetails nav {
+       text-align: center;
+       border-top: 1px solid rgba(192, 192, 192, 1);
+       margin-top: 7px;
+       padding-top: 7px;
+}
+
+.userNotificationDetails ul {
+       list-style-type: none;
+       display: inline-block;
+}
+
+.userNotificationDetails li {
+       cursor: pointer;
+       border: 1px solid rgba(192, 192, 192, 1) !important;
+       padding: 3px;
+       display: inline-block;
+}
+
+.userNotificationDetails li:hover {
+       
+}
+
+#userNotificationDetailsLoading {
+       background-color: rgba(255, 255, 255, .5);
+       background-image: url('{@RELATIVE_WCF_DIR}icon/spinner1.svg');
+       background-position: center center;
+       background-size: 24px;
+       background-repeat: no-repeat;
+       position: absolute;
 }
 
 
@@ -3909,6 +3922,9 @@ ul.smallButtons > li:last-child > a {
 
 
 
+
+
+
 /* ToDo: Profile Button 
 
 this is taken from "user.tpl" (inline-css) 
@@ -3944,7 +3960,9 @@ div#profileButtonContainer button:hover {
        background-image: linear-gradient(top, rgba(224, 224, 224, 1), rgba(192, 192, 192, 1));
 }
 
-/* ############## ToDo ############## */
+
+
+/* ############## ToDo: Action Proxy Loading ############## */
 
 #actionProxyLoading {
        text-align: center;
@@ -4016,7 +4034,7 @@ div.ajaxDebugMessage p:last-child {
 
 /* ############## ToDo ############## */
 
-/* Is all that really still necessary? We wanted to support good browsers only */
+/* Is that really still necessary? We wanted to support good browsers only */
 
 /* End clearfix */
 .ui-helper-zfix {
index 52a95062af28a0f36b35378296b2f4d24b92d4fc..1dc93d1e1bfa3dda936a385ff4e895e396327beb 100644 (file)
@@ -3611,13 +3611,13 @@ $.widget('ui.wcfPages', {
                                        var $leftChildrenImage = $('<img src="' + this.options.arrowDownIcon + '" alt="" />');
                                        $leftChildrenLink.append($leftChildrenImage);
                                        
-                                       var $leftChildrenInput = $('<input type="text" name="pageNo" class="short" />');
+                                       var $leftChildrenInput = $('<input type="text" name="pageNo" class="tiny" />');
                                        $leftChildren.append($leftChildrenInput);
                                        $leftChildrenInput.keydown($.proxy(this._handleInput, this));
                                        $leftChildrenInput.keyup($.proxy(this._handleInput, this));
                                        $leftChildrenInput.blur($.proxy(this._stopInput, this));
                                        
-                                       var $leftChildrenContainer = $('<div></div>');
+                                       var $leftChildrenContainer = $('<div class="dropdown"></div>');
                                        $leftChildren.append($leftChildrenContainer);
                                        
                                        var $leftChildrenList = $('<ul></u>');
@@ -3654,13 +3654,13 @@ $.widget('ui.wcfPages', {
                                        var $rightChildrenImage = $('<img src="' + this.options.arrowDownIcon + '" alt="" />');
                                        $rightChildrenLink.append($rightChildrenImage);
                                        
-                                       var $rightChildrenInput = $('<input type="text" name="pageNo" class="short" />');
+                                       var $rightChildrenInput = $('<input type="text" name="pageNo" class="tiny" />');
                                        $rightChildren.append($rightChildrenInput);
                                        $rightChildrenInput.keydown($.proxy(this._handleInput, this));
                                        $rightChildrenInput.keyup($.proxy(this._handleInput, this));
                                        $rightChildrenInput.blur($.proxy(this._stopInput, this));
                                        
-                                       var $rightChildrenContainer = $('<div></div>');
+                                       var $rightChildrenContainer = $('<div class="dropdown"></div>');
                                        $rightChildren.append($rightChildrenContainer);
                                        
                                        var $rightChildrenList = $('<ul></ul>');
index 7dd2a744645184e3d849f9d1a164245476a27468..4b2291af47c0a79fecffa7969e6999945a423b12 100644 (file)
@@ -151,7 +151,7 @@ class PagesFunctionTemplatePlugin implements IFunctionTemplatePlugin {
                                        $html .= $this->makeLink($tagArgs['link'], 2, $tagArgs['page']);
                                }
                                else {
-                                       $html .= '<li class="children"><a onclick="multiPagesLinks.startPageNumberInput(this)">&hellip;<img src="'.self::getIconPath('arrowDown.png').'" alt="" /></a><input type="text" name="pageNo" class="short" /><div><ul>'."\n";
+                                       $html .= '<li class="children"><a onclick="multiPagesLinks.startPageNumberInput(this)">&hellip;<img src="'.self::getIconPath('arrowDown.png').'" alt="" /></a><input type="text" name="pageNo" class="tiny" /><div><ul>'."\n";
                                        
                                        $k = 0;
                                        $step = intval(ceil(($left - 2) / self::SHOW_SUB_LINKS));
@@ -175,7 +175,7 @@ class PagesFunctionTemplatePlugin implements IFunctionTemplatePlugin {
                                        $html .= $this->makeLink($tagArgs['link'], $tagArgs['pages'] - 1, $tagArgs['page']);
                                }
                                else {
-                                       $html .= '<li class="children"><a onclick="multiPagesLinks.startPageNumberInput(this)">&hellip;<img src="'.self::getIconPath('dropown1.svg').'" alt="" /></a><input type="text" name="page" class="short" /><div><ul>'."\n";
+                                       $html .= '<li class="children"><a onclick="multiPagesLinks.startPageNumberInput(this)">&hellip;<img src="'.self::getIconPath('dropdown1.svg').'" alt="" /></a><input type="text" name="page" class="tiny" /><div><ul>'."\n";
                                        
                                        $k = 0;
                                        $step = intval(ceil(($tagArgs['pages'] - $right) / self::SHOW_SUB_LINKS));