summaryrefslogtreecommitdiff
path: root/web/public
diff options
context:
space:
mode:
Diffstat (limited to 'web/public')
-rw-r--r--web/public/css/flexigrid/flexigrid.css1370
-rw-r--r--web/public/css/flexigrid/images/load-large.gifbin0 -> 3208 bytes
-rw-r--r--web/public/css/flexigrid/images/load.gifbin1737 -> 1849 bytes
-rw-r--r--web/public/css/flexigrid/images/load.pngbin827 -> 885 bytes
-rw-r--r--web/public/css/smoothness/jquery-ui-1.8.10.custom.css8
-rw-r--r--web/public/css/taginfo.css266
-rw-r--r--web/public/favicon.icobin318 -> 318 bytes
-rw-r--r--web/public/img/arrow.pngbin0 -> 269 bytes
-rw-r--r--web/public/img/mapbg/world.pngbin0 -> 7415 bytes
-rw-r--r--web/public/js/customSelect.jquery.js26
-rw-r--r--web/public/js/flexigrid.js37
-rw-r--r--web/public/js/jquery.tipsy.js241
-rw-r--r--web/public/js/taginfo.js181
13 files changed, 1220 insertions, 909 deletions
diff --git a/web/public/css/flexigrid/flexigrid.css b/web/public/css/flexigrid/flexigrid.css
index 4b41e6d..86f1b69 100644
--- a/web/public/css/flexigrid/flexigrid.css
+++ b/web/public/css/flexigrid/flexigrid.css
@@ -1,722 +1,648 @@
-@charset "UTF-8";
-/* CSS Document */
-
-.flexigrid
- {
- font-size: 80%;
- position: relative;
- border: 0px solid #eee;
- overflow: hidden;
- color: #000;
- }
-
- .flexigrid.hideBody
- {
- height: 26px !important;
- border-bottom: 1px solid #ccc;
- }
-
- .ie6fullwidthbug
- {
- border-right: 0px solid #ccc;
- padding-right: 2px;
- }
-
-.flexigrid div.nDiv
- {
- background: #eee url(images/line.gif) repeat-y -1px top;
- border: 1px solid #ccc;
- border-top: 0px;
- overflow: auto;
- left: 0px;
- position: absolute;
- z-index: 999;
- float: left;
- }
-
- .flexigrid div.nDiv table
- {
- margin: 2px;
- }
-
-.flexigrid div.hDivBox
- {
- float: left;
- padding-right: 40px;
- }
-
-.flexigrid div.bDiv table
- {
- margin-bottom: 10px;
- }
-
- .flexigrid div.bDiv table.autoht
- {
- border-bottom: 0px;
- margin-bottom: 0px;
- }
-
-.flexigrid div.nDiv td
- {
- padding: 2px 3px;
- border: 1px solid #eee;
- cursor: default;
- }
-
-.flexigrid div.nDiv tr:hover td, .flexigrid div.nDiv tr.ndcolover td
- {
-/* background: #d5effc url(images/hl.png) repeat-x top;*/
- border: 1px solid #a8d8eb;
- }
-
- .flexigrid div.nDiv td.ndcol1
- {
- border-right: 1px solid #ccc;
- }
-
- .flexigrid div.nDiv td.ndcol2
- {
- border-left: 1px solid #fff;
- padding-right: 10px;
- }
-
- .flexigrid div.nDiv tr:hover td.ndcol1, .flexigrid div.nDiv tr.ndcolover td.ndcol1
- {
- border-right: 1px solid #d2e3ec;
- }
-
- .flexigrid div.nDiv tr:hover td.ndcol2, .flexigrid div.nDiv tr.ndcolover td.ndcol2
- {
- border-left: 1px solid #eef8ff;
- }
-
- .flexigrid div.nBtn
- {
- position: absolute;
- height: 24px;
- width: 14px;
- z-index: 900;
- /*background: #fafafa url(images/fhbg.gif) repeat-x bottom;*/
- border: 0px solid #ccc;
- border-left: 1px solid #ccc;
- top: 0px;
- left: 0px;
- margin-top: 1px;
- cursor: pointer;
- display: none;
- }
-
- .flexigrid div.nBtn div
- {
- height: 24px;
- width: 12px;
- border-left: 1px solid #fff;
- float: left;
- /*background: url(images/ddn.png) no-repeat center;*/
- }
-
- .flexigrid div.nBtn.srtd
- {
- /*background: url(images/wbg.gif) repeat-x 0px -1px;*/
- }
-
-
-.flexigrid div.mDiv
- {
- /*background: url(images/wbg.gif) repeat-x top;*/
- border: 1px solid #ccc;
- border-bottom: 0px;
- border-top: 0px;
- font-weight: bold;
- display: block;
- overflow: hidden;
- white-space: nowrap;
- position: relative;
- }
-
-.flexigrid div.mDiv div
- {
- padding: 6px;
- white-space: nowrap;
- }
-
- .flexigrid div.mDiv div.ptogtitle
- {
- position: absolute;
- top: 4px;
- right: 3px;
- padding: 0px;
- height: 16px;
- width: 16px;
- overflow: hidden;
- border: 1px solid #ccc;
- cursor: pointer;
- }
-
- .flexigrid div.mDiv div.ptogtitle:hover
- {
- background-position: left -2px;
- border-color: #bbb;
- }
-
- .flexigrid div.mDiv div.ptogtitle span
- {
- display: block;
- border-left: 1px solid #eee;
- border-top: 1px solid #fff;
- border-bottom: 1px solid #ddd;
- width: 14px;
- height: 14px;
- /*background: url(images/uup.png) no-repeat center;*/
- }
-
- .flexigrid div.mDiv div.ptogtitle.vsble span
- {
- /*background: url(images/ddn.png) no-repeat center;*/
- }
-
-.flexigrid div.tDiv /*toolbar*/
- {
- background: #fafafa /*url(images/bg.gif) repeat-x top*/;
- position: relative;
- border: 1px solid #ccc;
- border-bottom: 0px;
- overflow: hidden;
- }
-
- .flexigrid div.tDiv2
- {
- float: left;
- clear: both;
- padding: 1px;
- }
-
-.flexigrid div.sDiv /*toolbar*/
- {
- background: #fafafa /*url(images/bg.gif) repeat-x top*/;
- position: relative;
- border: 1px solid #ccc;
- border-top: 0px;
- overflow: hidden;
- display: none;
- }
-
- .flexigrid div.sDiv2
- {
- float: left;
- clear: both;
- padding: 5px;
- padding-left: 5px;
- width: 1024px;
- }
-
- .flexigrid div.sDiv2 input, .flexigrid div.sDiv2 select
- {
- vertical-align: middle;
- }
-
- .flexigrid div.btnseparator
- {
- float: left;
- height: 22px;
- border-left: 1px solid #ccc;
- border-right: 1px solid #fff;
- margin: 1px;
- }
-
- .flexigrid div.fbutton
- {
- float: left;
- display: block;
- cursor: pointer;
- padding: 1px;
- }
-
- .flexigrid div.fbutton div
- {
- float: left;
- padding: 1px 3px;
- }
-
- .flexigrid div.fbutton span
- {
- float: left;
- display: block;
- padding: 3px;
- }
-
- .flexigrid div.fbutton:hover, .flexigrid div.fbutton.fbOver
- {
- padding: 0px;
- border: 1px solid #ccc;
- }
-
- .flexigrid div.fbutton:hover div, .flexigrid div.fbutton.fbOver div
- {
- padding: 0px 2px;
- border-left: 1px solid #fff;
- border-top: 1px solid #fff;
- border-right: 1px solid #eee;
- border-bottom: 1px solid #eee;
- }
-
-
-/* end toolbar*/
-
-.flexigrid div.hDiv
- {
- background: rgb(198,200,202);
- position: relative;
- border: 1px solid #ccc;
-/* border-bottom: 0px;*/
- font-weight: bold;
- overflow: hidden;
- }
-
-.flexigrid div.hDiv table
- {
- border-right: 1px solid #fff;
- }
-
- .flexigrid div.cDrag
- {
- float: left;
- position: absolute;
- z-index: 2;
- overflow: visible;
- }
-
- .flexigrid div.cDrag div
- {
- float: left;
- background: none;
- display: block;
- position: absolute;
- height: 24px;
- width: 5px;
- cursor: col-resize;
- }
-
- .flexigrid div.cDrag div:hover, .flexigrid div.cDrag div.dragging
- {
- background: url(images/line.gif) repeat-y 2px center;
- }
-
-.flexigrid div.iDiv
- {
- border: 1px solid #316ac5;
- position: absolute;
- overflow: visible;
- background: none;
- }
-
- .flexigrid div.iDiv input, .flexigrid div.iDiv select, .flexigrid div.iDiv textarea
- {
- }
-
- .flexigrid div.iDiv input.tb
- {
- border: 0px;
- padding: 0px;
- width: 100%;
- height: 100%;
- padding: 0px;
- background: none;
- }
-
-.flexigrid div.bDiv
- {
- border: 1px solid #ccc;
- border-top: 0px;
- background: rgb(230,231,232);
- overflow: auto;
- position: relative;
- }
-
-.flexigrid div.bDiv table
- {
- border-bottom: 1px solid #ccc;
- }
-
- .flexigrid div.hGrip
- {
- position: absolute;
- top: 0px;
- right: 0px;
- height: 5px;
- width: 5px;
- background: url(images/line.gif) repeat-x center;
- margin-right: 1px;
- cursor: col-resize;
- }
-
- .flexigrid div.hGrip:hover, .flexigrid div.hGrip.hgOver
- {
- border-right: 1px solid #999;
- margin-right: 0px;
- }
-
- .flexigrid div.vGrip
- {
- height: 5px;
- overflow: hidden;
- position: relative;
- background: rgb(198,200,202);
- border: 1px solid #ccc;
- border-top: 0px;
- text-align: center;
- cursor: row-resize;
- }
-
- .flexigrid div.vGrip span
- {
- display: block;
- margin: 1px auto;
- width: 20px;
- height: 1px;
- overflow: hidden;
- border-top: 1px solid #aaa;
- border-bottom: 1px solid #aaa;
- background: none;
- }
-
-.flexigrid div.hDiv th, .flexigrid div.bDiv td /* common cell properties*/
- {
- text-align: left;
- border-right: 1px solid #ddd;
- border-left: 1px solid #fff;
- overflow: hidden;
- vertical-align: top !important;
- }
-
- .flexigrid div.hDiv th div, .flexigrid div.bDiv td div, div.colCopy div/* common inner cell properties*/
- {
- padding: 5px;
- border-left: 0px solid #fff;
- }
-
-.flexigrid div.hDiv th, div.colCopy
- {
- font-weight: normal;
- height: 24px;
- cursor: default;
- white-space: nowrap;
- overflow: hidden;
- }
-
-div.colCopy {
- background: #fafafa url(images/fhbg.gif) repeat-x bottom;
- border: 1px solid #ccc;
- border-bottom: 0px;
- overflow: hidden;
- }
-
-.flexigrid div.hDiv th.sorted
- {
- background: rgb(188,189,192);
- border-bottom: 0px solid #ccc;
- }
-
- .flexigrid div.hDiv th.thOver
- {
- }
-
- .flexigrid div.hDiv th.thOver div, .flexigrid div.hDiv th.sorted.thOver div
- {
- border-bottom: 1px solid orange;
- padding-bottom: 4px;
- }
-
- .flexigrid div.hDiv th.sorted div
- {
- border-bottom: 0px solid #ccc;
- padding-bottom: 5px;
- }
-
- .flexigrid div.hDiv th.thMove
- {
- background: #fff;
- color: #fff;
- }
-
- .flexigrid div.hDiv th.sorted.thMove div
- {
- border-bottom: 1px solid #fff;
- padding-bottom: 4px
- }
-
- .flexigrid div.hDiv th.thMove div
- {
- background: #fff !important;
- }
-
- .flexigrid div.hDiv th div.sdesc
- {
- background: url(images/dn.png) no-repeat center top;
- }
-
- .flexigrid div.hDiv th div.sasc
- {
- background: url(images/up.png) no-repeat center top;
- }
-
-.flexigrid div.bDiv td
- {
- border-bottom: 1px solid #fff;
- vertical-align: top;
- white-space: nowrap;
- }
-
- .flexigrid div.hDiv th div
- {
- }
-
- .flexigrid span.cdropleft
- {
- display: block;
- background: url(images/prev.gif) no-repeat -4px center;
- width: 24px;
- height: 24px;
- position: relative;
- top: -24px;
- margin-bottom: -24px;
- z-index: 3;
- }
-
- .flexigrid div.hDiv span.cdropright
- {
- display: block;
- background: url(images/next.gif) no-repeat 12px center;
- width: 24px;
- height: 24px;
- float: right;
- position: relative;
- top: -24px;
- margin-bottom: -24px;
- }
-
-
- .flexigrid div.bDiv td div
- {
- border-top: 0px solid #fff;
- padding-bottom: 4px;
- }
-
-
- .flexigrid tr td.sorted
- {
- background: rgb(220,221,222);
- border-right: 1px solid #ddd;
- border-bottom: 1px solid #f3f3f3;
- }
-
- .flexigrid tr td.sorted div
- {
- }
-
-
- .flexigrid tr.erow td
- {
- background: rgb(220,221,222);
- border-bottom: 1px solid #f7f7f7;
- }
-
- .flexigrid tr.erow td.sorted
- {
- background: rgb(209,211,212);
- border-bottom: 1px solid #e3e3e3;
- }
-
- .flexigrid tr.erow td.sorted div
- {
- }
-
- .flexigrid div.bDiv tr:hover td,
- .flexigrid div.bDiv tr:hover td.sorted,
- .flexigrid div.bDiv tr.trOver td.sorted,
- .flexigrid div.bDiv tr.trOver td
- {
- background: #d9ebf5;
- border-left: 1px solid #eef8ff;
- border-bottom: 1px dotted #a8d8eb;
- }
-
-/* .flexigrid div.bDiv tr.trSelected:hover td,
- .flexigrid div.bDiv tr.trSelected:hover td.sorted,
- .flexigrid div.bDiv tr.trOver.trSelected td.sorted,
- .flexigrid div.bDiv tr.trOver.trSelected td,
- .flexigrid tr.trSelected td.sorted,
- .flexigrid tr.trSelected td
- {
- background: #d5effc url(images/hl.png) repeat-x top;
- border-right: 1px solid #d2e3ec;
- border-left: 1px solid #eef8ff;
- border-bottom: 1px solid #a8d8eb;
- }*/
-
- /* novstripe adjustments */
-
- .flexigrid.novstripe .bDiv table
- {
- border-bottom: 1px solid #ccc;
- border-right: 1px solid #ccc;
- }
-
- .flexigrid.novstripe div.bDiv td
- {
- border-right-color: #fff;
- }
-
- .flexigrid.novstripe div.bDiv tr.erow td.sorted
- {
- border-right-color: #e3e3e3;
- }
-
- .flexigrid.novstripe div.bDiv tr td.sorted
- {
- border-right-color: #f3f3f3;
- }
-
- .flexigrid.novstripe div.bDiv tr.erow td
- {
- border-right-color: #f7f7f7;
- border-left-color: #f7f7f7;
- }
-
-/* .flexigrid.novstripe div.bDiv tr.trSelected:hover td,
- .flexigrid.novstripe div.bDiv tr.trSelected:hover td.sorted,
- .flexigrid.novstripe div.bDiv tr.trOver.trSelected td.sorted,
- .flexigrid.novstripe div.bDiv tr.trOver.trSelected td,
- .flexigrid.novstripe tr.trSelected td.sorted,
- .flexigrid.novstripe tr.trSelected td
- {
- border-right: 1px solid #0066FF;
- border-left: 1px solid #0066FF;
- } */
-
- .flexigrid.novstripe div.bDiv tr.trOver td, .flexigrid.novstripe div.bDiv tr:hover td
- {
- border-left-color: #d9ebf5;
- border-right-color: #d9ebf5;
- }
-
- /* end novstripe */
-
-.flexigrid div.pDiv
- {
- background: url(images/wbg.gif) repeat-x 0 -1px;
- border: 1px solid #ccc;
- border-top: 0px;
- overflow: hidden;
- white-space: nowrap;
- position: relative;
- }
-
-.flexigrid div.pDiv div.pDiv2
- {
- margin: 3px;
- margin-left: -2px;
- float: left;
- width: 1024px;
- }
-
- div.pGroup
- {
- float: left;
- background: none;
- height: 24px;
- margin: 0px 5px;
- }
-
- .flexigrid div.pDiv .pPageStat, .flexigrid div.pDiv .pcontrol
- {
- position: relative;
-
- top: 5px;
- overflow: visible;
- }
-
- .flexigrid div.pDiv input
- {
- vertical-align: text-top;
- position: relative;
- top: -5px;
- }
-
- .flexigrid div.pDiv div.pButton
- {
- float: left;
- width: 22px;
- height: 22px;
- border: 0px;
- cursor: pointer;
- overflow: hidden;
- }
-
- .flexigrid div.pDiv div.pButton:hover, .flexigrid div.pDiv div.pButton.pBtnOver
- {
- width: 20px;
- height: 20px;
- border: 1px solid #ccc;
- cursor: pointer;
- }
-
- .flexigrid div.pDiv div.pButton span
- {
- width: 20px;
- height: 20px;
- display: block;
- float: left;
- }
-
- .flexigrid div.pDiv div.pButton:hover span, .flexigrid div.pDiv div.pButton.pBtnOver span
- {
- width: 19px;
- height: 19px;
- border-top: 1px solid #fff;
- border-left: 1px solid #fff;
- }
-
-
- .flexigrid .pSearch
- {
- background: url(images/magnifier.png) no-repeat center;
- }
-
- .flexigrid .pFirst
- {
- background: url(images/first.gif) no-repeat center;
- }
-
- .flexigrid .pPrev
- {
- background: url(images/prev.gif) no-repeat center;
- }
-
- .flexigrid .pNext
- {
- background: url(images/next.gif) no-repeat center;
- }
-
- .flexigrid .pLast
- {
- background: url(images/last.gif) no-repeat center;
- }
-
- .flexigrid .pReload
- {
- background: url(images/load.png) no-repeat center;
- }
-
- .flexigrid .pReload.loading
- {
- background: url(images/load.gif) no-repeat center;
- }
-
-/* ie adjustments */
-
- .flexigrid.ie div.hDiv th div, .flexigrid.ie div.bDiv td div, div.colCopy.ie div/* common inner cell properties*/
- {
- overflow: hidden;
- }
-
+@charset "UTF-8";
+/* CSS Document */
+
+.flexigrid {
+ font-size: 80%;
+ position: relative;
+ border: 0px solid #ddddd4;
+ overflow: hidden;
+ color: #000;
+ margin-bottom: 10px;
+}
+
+.flexigrid.hideBody {
+ height: 26px !important;
+ border-bottom: 1px solid #ddddd4;
+}
+
+.ie6fullwidthbug {
+ border-right: 0px solid #ddddd4;
+ padding-right: 2px;
+}
+
+.flexigrid div.nDiv {
+ background: #eee url(images/line.gif) repeat-y -1px top;
+ border: 1px solid #ddddd4;
+ border-top: 0px;
+ overflow: auto;
+ left: 0px;
+ position: absolute;
+ z-index: 999;
+ float: left;
+}
+
+.flexigrid div.nDiv table {
+ margin: 2px;
+}
+
+.flexigrid div.hDivBox {
+ float: left;
+ padding-right: 40px;
+}
+
+.flexigrid div.hDivBox table {
+ background: #b8b8b0;
+}
+
+.flexigrid div.bDiv table {
+ margin-bottom: 10px;
+}
+
+.flexigrid div.bDiv table.autoht {
+ border-bottom: 0px;
+ margin-bottom: 0px;
+}
+
+.flexigrid div.nDiv td {
+ padding: 2px 3px;
+ border: 1px solid #ddddd4;
+ cursor: default;
+}
+
+.flexigrid div.nDiv tr:hover td, .flexigrid div.nDiv tr.ndcolover td {
+ border: 1px solid #ddddd4;
+}
+
+.flexigrid div.nDiv td.ndcol1 {
+ border-right: 1px solid #ddddd4;
+}
+
+.flexigrid div.nDiv td.ndcol2 {
+ border-left: 1px solid #ddddd4;
+ padding-right: 10px;
+}
+
+.flexigrid div.nDiv tr:hover td.ndcol1, .flexigrid div.nDiv tr.ndcolover td.ndcol1 {
+ border-right: 1px solid #d2e3ec;
+}
+
+.flexigrid div.nDiv tr:hover td.ndcol2, .flexigrid div.nDiv tr.ndcolover td.ndcol2 {
+ border-left: 1px solid #eef8ff;
+}
+
+.flexigrid div.nBtn {
+ position: absolute;
+ height: 24px;
+ width: 14px;
+ z-index: 900;
+ border: 0px solid #ccc;
+ border-left: 1px solid #ccc;
+ top: 0px;
+ left: 0px;
+ margin-top: 1px;
+ cursor: pointer;
+ display: none;
+}
+
+.flexigrid div.nBtn div {
+ height: 24px;
+ width: 12px;
+ border-left: 1px solid #fff;
+ float: left;
+}
+
+.flexigrid div.nBtn.srtd {
+}
+
+.flexigrid div.mDiv {
+ border: 1px solid #ccc;
+ border-bottom: 0px;
+ border-top: 0px;
+ font-weight: bold;
+ display: block;
+ overflow: hidden;
+ white-space: nowrap;
+ position: relative;
+}
+
+.flexigrid div.mDiv div {
+ padding: 6px;
+ white-space: nowrap;
+}
+
+.flexigrid div.mDiv div.ptogtitle {
+ position: absolute;
+ top: 4px;
+ right: 3px;
+ padding: 0px;
+ height: 16px;
+ width: 16px;
+ overflow: hidden;
+ border: 1px solid #ccc;
+ cursor: pointer;
+}
+
+.flexigrid div.mDiv div.ptogtitle:hover {
+ background-position: left -2px;
+ border-color: #bbb;
+}
+
+.flexigrid div.mDiv div.ptogtitle span {
+ display: block;
+ border-left: 1px solid #eee;
+ border-top: 1px solid #fff;
+ border-bottom: 1px solid #ddd;
+ width: 14px;
+ height: 14px;
+}
+
+.flexigrid div.mDiv div.ptogtitle.vsble span {
+}
+
+.flexigrid div.tDiv /*toolbar*/ {
+ background: #fafafa;
+ position: relative;
+ border: 1px solid #ccc;
+ border-bottom: 0px;
+ overflow: hidden;
+}
+
+.flexigrid div.tDiv2 {
+ float: left;
+ clear: both;
+ padding: 1px;
+}
+
+.flexigrid div.sDiv /*toolbar*/ {
+ position: relative;
+ float: right;
+ margin-right: 4px;
+}
+
+.flexigrid div.sDiv2 {
+ float: left;
+ padding: 1px 0 0 5px;
+}
+
+.flexigrid div.sDiv2 input, .flexigrid div.sDiv2 select {
+ background: url(images/magnifier.png) no-repeat right #ffffff;
+}
+
+.flexigrid div.sDiv2 select {
+ margin: 0;
+ padding: 0;
+}
+
+.flexigrid span.customStyleSelectBox {
+ padding: 0 4px;
+}
+
+.flexigrid div.btnseparator {
+ float: left;
+ height: 22px;
+ border-left: 1px solid #b8b8b0;
+ margin: 1px;
+}
+
+.flexigrid div.fbutton {
+ float: left;
+ display: block;
+ cursor: pointer;
+ padding: 1px;
+}
+
+.flexigrid div.fbutton div {
+ float: left;
+ padding: 1px 3px;
+}
+
+.flexigrid div.fbutton span {
+ float: left;
+ display: block;
+ padding: 3px;
+}
+
+.flexigrid div.fbutton:hover, .flexigrid div.fbutton.fbOver {
+ padding: 0px;
+ border: 1px solid #ccc;
+}
+
+.flexigrid div.fbutton:hover div, .flexigrid div.fbutton.fbOver div {
+ padding: 0px 2px;
+ border-left: 1px solid #fff;
+ border-top: 1px solid #fff;
+ border-right: 1px solid #eee;
+ border-bottom: 1px solid #eee;
+}
+
+/* end toolbar*/
+
+.flexigrid div.hDiv {
+ position: relative;
+ font-weight: bold;
+ overflow: hidden;
+}
+
+.flexigrid div.hDiv table {
+ border-right: 1px solid #ddddd4;
+}
+
+.flexigrid div.cDrag {
+ float: left;
+ position: absolute;
+ z-index: 2;
+ overflow: visible;
+}
+
+.flexigrid div.cDrag div {
+ float: left;
+ background: none;
+ display: block;
+ position: absolute;
+ height: 24px;
+ width: 3px;
+ cursor: col-resize;
+}
+
+.flexigrid div.cDrag div:hover, .flexigrid div.cDrag div.dragging {
+ background-color: #808080;
+}
+
+.flexigrid div.iDiv {
+ border: 1px solid #316ac5;
+ position: absolute;
+ overflow: visible;
+ background: none;
+}
+
+.flexigrid div.iDiv input, .flexigrid div.iDiv select, .flexigrid div.iDiv textarea {
+}
+
+.flexigrid div.iDiv input.tb {
+ border: 0px;
+ padding: 0px;
+ width: 100%;
+ height: 100%;
+ padding: 0px;
+ background: none;
+}
+
+.flexigrid div.bDiv {
+ border-right: 1px solid #ddddd4;
+ background: #ddddd4;
+ overflow: auto;
+ position: relative;
+}
+
+.flexigrid div.bDiv table {
+ border-bottom: 1px solid #ddddd4;
+}
+
+.flexigrid div.hGrip {
+ position: absolute;
+ top: 0px;
+ right: 0px;
+ height: 5px;
+ width: 5px;
+ background: url(images/line.gif) repeat-x center;
+ margin-right: 1px;
+ cursor: col-resize;
+}
+
+.flexigrid div.hGrip:hover, .flexigrid div.hGrip.hgOver {
+ border-right: 1px solid #999;
+ margin-right: 0px;
+}
+
+.flexigrid div.vGrip {
+ height: 5px;
+ overflow: hidden;
+ position: relative;
+ background: #ddddd4;
+ border: 1px solid #ccc;
+ border-top: 0px;
+ text-align: center;
+ cursor: row-resize;
+}
+
+.flexigrid div.vGrip span {
+ display: block;
+ margin: 1px auto;
+ width: 20px;
+ height: 1px;
+ overflow: hidden;
+ border-top: 1px solid #aaa;
+ border-bottom: 1px solid #aaa;
+ background: none;
+}
+
+.flexigrid div.hDiv th, .flexigrid div.bDiv td /* common cell properties*/ {
+ text-align: left;
+ border-right: 1px solid #ddddd4;
+ /*border-left: 1px solid #ddddd4;*/
+ overflow: hidden;
+ vertical-align: top !important;
+}
+
+.flexigrid div.hDiv th div, .flexigrid div.bDiv td div, div.colCopy div/* common inner cell properties*/ {
+ padding: 2px 6px;
+ border-right: 0px solid #ddddd4;
+}
+
+.flexigrid div.hDiv th, div.colCopy {
+/* font-weight: normal;*/
+ height: 27px;
+ cursor: default;
+ white-space: nowrap;
+ overflow: hidden;
+}
+
+.flexigrid div.hDiv th div {
+}
+
+.flexigrid div.hDiv th img {
+ position: relative;
+ top: 3px;
+}
+
+div.colCopy {
+ border: 1px solid #ccc;
+ border-bottom: 0px;
+ overflow: hidden;
+}
+
+.flexigrid div.hDiv th.sorted {
+ background: #a0a098;
+ border-bottom: 0px solid #ccc;
+}
+
+.flexigrid div.hDiv th.thOver {
+}
+
+.flexigrid div.hDiv th.thOver div, .flexigrid div.hDiv th.sorted.thOver div {
+ border-bottom: 1px solid orange;
+}
+
+.flexigrid div.hDiv th.sorted div {
+}
+
+.flexigrid div.hDiv th.thMove {
+ background: #fff;
+ color: #fff;
+}
+
+.flexigrid div.hDiv th.sorted.thMove div {
+ border-bottom: 1px solid #fff;
+ padding-bottom: 4px
+}
+
+.flexigrid div.hDiv th.thMove div {
+ background: #fff !important;
+}
+
+.flexigrid div.hDiv th div.sdesc {
+ background: url(images/ddn.png) no-repeat center top;
+}
+
+.flexigrid div.hDiv th div.sasc {
+ background: url(images/uup.png) no-repeat center top;
+}
+
+.flexigrid div.bDiv td {
+ border-bottom: 0px;
+ vertical-align: top;
+ white-space: nowrap;
+}
+
+.flexigrid div.hDiv th div {
+}
+
+.flexigrid span.cdropleft {
+ display: block;
+ background: url(images/prev.gif) no-repeat -4px center;
+ width: 24px;
+ height: 24px;
+ position: relative;
+ top: -24px;
+ margin-bottom: -24px;
+ z-index: 3;
+}
+
+.flexigrid div.hDiv span.cdropright {
+ display: block;
+ background: url(images/next.gif) no-repeat 12px center;
+ width: 24px;
+ height: 24px;
+ float: right;
+ position: relative;
+ top: -24px;
+ margin-bottom: -24px;
+}
+
+.flexigrid div.bDiv td {
+ background: #e8e8e4;
+}
+
+.flexigrid div.bDiv td div {
+ border-top: 0px solid #ddddd4;
+ padding-bottom: 4px;
+}
+
+.flexigrid tr td.sorted {
+ border-right: 1px solid #ddd;
+ border-bottom: 0px;
+}
+
+.flexigrid tr td.sorted div {
+}
+
+.flexigrid tr.erow td {
+ background: #d0d0c8;
+ border-bottom: 0px;
+}
+
+.flexigrid tr.erow td.sorted {
+ border-bottom: 0px;
+}
+
+.flexigrid tr.erow td.sorted div {
+}
+
+.flexigrid div.bDiv tr:hover td,
+.flexigrid div.bDiv tr:hover td.sorted,
+.flexigrid div.bDiv tr.trOver td.sorted,
+.flexigrid div.bDiv tr.trOver td {
+ background: #ffffff;
+ border-bottom: 0px; /*1px dotted #a8d8eb;*/
+}
+
+/* .flexigrid div.bDiv tr.trSelected:hover td,
+ .flexigrid div.bDiv tr.trSelected:hover td.sorted,
+ .flexigrid div.bDiv tr.trOver.trSelected td.sorted,
+ .flexigrid div.bDiv tr.trOver.trSelected td,
+ .flexigrid tr.trSelected td.sorted,
+ .flexigrid tr.trSelected td
+ {
+ background: #d5effc url(images/hl.png) repeat-x top;
+ border-right: 1px solid #d2e3ec;
+ border-left: 1px solid #eef8ff;
+ border-bottom: 1px solid #a8d8eb;
+ }*/
+
+/* novstripe adjustments */
+
+.flexigrid.novstripe .bDiv table {
+ border-bottom: 1px solid #ccc;
+ border-right: 1px solid #ccc;
+}
+
+.flexigrid.novstripe div.bDiv td {
+ border-right-color: #fff;
+}
+
+.flexigrid.novstripe div.bDiv tr.erow td.sorted {
+}
+
+.flexigrid.novstripe div.bDiv tr td.sorted {
+}
+
+.flexigrid.novstripe div.bDiv tr.erow td {
+ border-right-color: #f7f7f7;
+ border-left-color: #f7f7f7;
+}
+
+/* .flexigrid.novstripe div.bDiv tr.trSelected:hover td,
+ .flexigrid.novstripe div.bDiv tr.trSelected:hover td.sorted,
+ .flexigrid.novstripe div.bDiv tr.trOver.trSelected td.sorted,
+ .flexigrid.novstripe div.bDiv tr.trOver.trSelected td,
+ .flexigrid.novstripe tr.trSelected td.sorted,
+ .flexigrid.novstripe tr.trSelected td
+ {
+ border-right: 1px solid #0066FF;
+ border-left: 1px solid #0066FF;
+ } */
+
+.flexigrid.novstripe div.bDiv tr.trOver td, .flexigrid.novstripe div.bDiv tr:hover td {
+ border-left-color: #d9ebf5;
+ border-right-color: #d9ebf5;
+}
+
+/* end novstripe */
+
+.flexigrid div.pDiv {
+ background: #ddddd4;
+ border-top: 0px;
+ overflow: hidden;
+ white-space: nowrap;
+ position: relative;
+}
+
+.flexigrid div.pDiv div.pDiv2 {
+ padding: 2px 0 1px 0;
+ float: left;
+ margin-bottom: 1px;
+ background-color: #b8b8b0;
+ width: 800px;
+ -moz-border-radius-topleft: 4px;
+ -khtml-border-radius-topleft: 4px;
+ -webkit-border-radius-topleft: 4px;
+ -chrome-border-radius-topleft: 4px;
+ -o-border-radius-topleft: 4px;
+ -moz-border-radius-topright: 4px;
+ -khtml-border-radius-topright: 4px;
+ -webkit-border-radius-topright: 4px;
+ -chrome-border-radius-topright: 4px;
+ -o-border-radius-topright: 4px;
+}
+
+div.pGroup {
+ float: left;
+ background: none;
+ height: 24px;
+ margin: 0px 5px;
+}
+
+.flexigrid div.pDiv .pPageStat {
+ width: 220px;
+ display: block;
+}
+
+.flexigrid div.pDiv .pPageStat, .flexigrid div.pDiv .pcontrol {
+ position: relative;
+ top: 1px;
+ overflow: visible;
+}
+
+.flexigrid div.pDiv input {
+ vertical-align: text-top;
+ position: relative;
+ top: -2px;
+ border: 0px none; /* 1px solid #a0a0a0;*/
+ -moz-border-radius: 4px;
+ -khtml-border-radius: 4px;
+ -webkit-border-radius: 4px;
+ -chrome-border-radius: 4px;
+ -o-border-radius: 4px;
+ margin: 0;
+ padding: 2px;
+}
+
+.flexigrid div.pDiv div.pButton {
+ float: left;
+ width: 22px;
+ height: 22px;
+ border: 0px;
+ cursor: pointer;
+ overflow: hidden;
+}
+
+.flexigrid div.pDiv div.pButton:hover, .flexigrid div.pDiv div.pButton.pBtnOver {
+ width: 20px;
+ height: 20px;
+ border: 1px solid #f0f0f0;
+ -moz-border-radius: 4px;
+ -khtml-border-radius: 4px;
+ -webkit-border-radius: 4px;
+ -chrome-border-radius: 4px;
+ -o-border-radius: 4px;
+ cursor: pointer;
+}
+
+.flexigrid div.pDiv div.pButton span {
+ width: 20px;
+ height: 20px;
+ display: block;
+ float: left;
+}
+
+.flexigrid div.pDiv div.pButton:hover span, .flexigrid div.pDiv div.pButton.pBtnOver span {
+ width: 19px;
+ height: 19px;
+/* border-top: 1px solid #fff;
+ border-left: 1px solid #fff;*/
+}
+
+.flexigrid .pSearch {
+ background: url(images/magnifier.png) no-repeat center;
+}
+
+.flexigrid .pFirst {
+ background: url(images/first.gif) no-repeat center;
+}
+
+.flexigrid .pPrev {
+ background: url(images/prev.gif) no-repeat center;
+}
+
+.flexigrid .pNext {
+ background: url(images/next.gif) no-repeat center;
+}
+
+.flexigrid .pLast {
+ background: url(images/last.gif) no-repeat center;
+}
+
+.flexigrid .pReload {
+ background: url(images/load.png) no-repeat center;
+}
+
+.flexigrid .pReload.loading {
+ background: url(images/load.gif) no-repeat center;
+}
+
+/* ie adjustments */
+
+.flexigrid.ie div.hDiv th div, .flexigrid.ie div.bDiv td div, div.colCopy.ie div/* common inner cell properties*/ {
+ overflow: hidden;
+}
+
diff --git a/web/public/css/flexigrid/images/load-large.gif b/web/public/css/flexigrid/images/load-large.gif
new file mode 100644
index 0000000..77264c0
--- /dev/null
+++ b/web/public/css/flexigrid/images/load-large.gif
Binary files differ
diff --git a/web/public/css/flexigrid/images/load.gif b/web/public/css/flexigrid/images/load.gif
index 68f01d0..8b6c8a6 100644
--- a/web/public/css/flexigrid/images/load.gif
+++ b/web/public/css/flexigrid/images/load.gif
Binary files differ
diff --git a/web/public/css/flexigrid/images/load.png b/web/public/css/flexigrid/images/load.png
index d65defb..3529e65 100644
--- a/web/public/css/flexigrid/images/load.png
+++ b/web/public/css/flexigrid/images/load.png
Binary files differ
diff --git a/web/public/css/smoothness/jquery-ui-1.8.10.custom.css b/web/public/css/smoothness/jquery-ui-1.8.10.custom.css
index f48e0b8..1fe7933 100644
--- a/web/public/css/smoothness/jquery-ui-1.8.10.custom.css
+++ b/web/public/css/smoothness/jquery-ui-1.8.10.custom.css
@@ -73,7 +73,7 @@
.ui-state-hover, .ui-widget-content .ui-state-hover, .ui-widget-header .ui-state-hover, .ui-state-focus, .ui-widget-content .ui-state-focus, .ui-widget-header .ui-state-focus { border: 1px solid #ffffff; background: #ffffff; font-weight: normal; color: #000000; }
.ui-state-hover a, .ui-state-hover a:hover { color: #000000; text-decoration: none; }
/*.ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active { border: 1px solid #aaaaaa; background: #f0f0f0 url(images/ui-bg_glass_75_e6e6e6_1x400.png) 50% 50% repeat-x; font-weight: normal; color: #212121; }*/
-.ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active { border: 1px solid #aaaaaa; background: rgb(220, 221, 222); font-weight: normal; color: #000000; }
+.ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active {/* border: 1px solid #c0c0c0;*/ background: #ddddd4; font-weight: normal; color: #000000; }
/*.ui-state-active a, .ui-state-active a:link, .ui-state-active a:visited { color: #212121; text-decoration: none; }*/
.ui-state-active a, .ui-state-active a:link, .ui-state-active a:visited { color: #000000; text-decoration: none; }
.ui-widget :active { outline: none; }
@@ -305,7 +305,7 @@
*
* http://docs.jquery.com/UI/Autocomplete#theming
*/
-.ui-autocomplete { position: absolute; cursor: default; background-color: #f0f0f0; border: 1px solid #a0a0a0; font-size: 80%; }
+.ui-autocomplete { position: absolute; cursor: default; background-color: #f0f0f0; /*border: 1px solid #c0c0c0;*/ font-size: 80%; }
/* workarounds */
* html .ui-autocomplete { width:1px; } /* without this, the menu expands to 100% in IE6 */
@@ -421,11 +421,11 @@ button.ui-button::-moz-focus-inner { border: 0; padding: 0; } /* reset extra pad
*/
.ui-tabs { position: relative; padding: 0; zoom: 1; } /* position: relative prevents IE scroll bug (element with position: relative inside container with overflow: auto appear as "fixed") */
.ui-tabs .ui-tabs-nav { margin: 0; padding: .2em 1em 0; }
-.ui-tabs .ui-tabs-nav li { list-style: none; float: left; position: relative; top: 1px; margin: 0 .2em 1px 0; border-bottom: 0 !important; padding: 0; white-space: nowrap; }
+.ui-tabs .ui-tabs-nav li { list-style: none; float: left; position: relative; /*top: 1px;*/ margin: 0 .2em 1px 0; border-bottom: 0 !important; padding: 0; white-space: nowrap; }
.ui-tabs .ui-tabs-nav li a { float: left; padding: .2em 1em; text-decoration: none; }
.ui-tabs .ui-tabs-nav li.ui-tabs-selected { margin-bottom: 0; padding-bottom: 1px; }
.ui-tabs .ui-tabs-nav li.ui-tabs-selected a, .ui-tabs .ui-tabs-nav li.ui-state-disabled a, .ui-tabs .ui-tabs-nav li.ui-state-processing a { cursor: text; }
.ui-tabs .ui-tabs-nav li a, .ui-tabs.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-selected a { cursor: pointer; } /* first selector in group seems obsolete, but required to overcome bug in Opera applying cursor: text overall if defined elsewhere... */
-.ui-tabs .ui-tabs-panel { display: block; border-width: 0; padding: 1em 1.4em; background-color: rgb(220, 221, 222); border: 1px solid #a0a0a0;
+.ui-tabs .ui-tabs-panel { display: block; border-width: 0; padding: 20px; background-color: #ddddd4; /*border: 1px solid #c0c0c0;*/
-moz-border-radius-topleft: 4px; -webkit-border-top-left-radius: 4px; border-top-left-radius: 4px; -moz-border-radius-topright: 4px; -webkit-border-top-right-radius: 4px; border-top-right-radius: 4px; }
.ui-tabs .ui-tabs-hide { display: none !important; }
diff --git a/web/public/css/taginfo.css b/web/public/css/taginfo.css
index b69face..b151a44 100644
--- a/web/public/css/taginfo.css
+++ b/web/public/css/taginfo.css
@@ -17,22 +17,28 @@ img.icon_large {
}
h1 {
- margin: 0;
+ margin: 0 0 4px 0;
font-size: 150%;
}
+h1.section {
+ text-transform: uppercase;
+}
+
h2 {
- font-weight: normal;
margin-top: 20px;
margin-bottom: 4px;
}
p {
- margin-top: 2px;
+ color: #404040;
+ margin: 0 0 6px 0;
+ max-width: 60em;
}
-p.text {
- max-width: 60em;
+p.emphasis {
+ font-weight: bold;
+ font-size: 110%;
}
iframe {
@@ -49,11 +55,7 @@ a {
a:hover {
text-decoration: underline;
}
-/*
-a.taglink {
- color: #4a837c !important;
-}
-*/
+
span.badchar {
color: #e00000;
}
@@ -82,6 +84,10 @@ a.section {
text-decoration: none;
}
+div.pre {
+ margin-bottom: 20px;
+}
+
/* ========== */
span.button {
@@ -102,44 +108,81 @@ span.disabled {
/* ========== */
-div#top {
- margin: 15px 20px;
+.tipsy { font-size: 80%; position: absolute; padding: 5px; z-index: 100000; }
+.tipsy-inner { background-color: #000; color: #FFF; max-width: 180px; padding: 5px 8px 4px 8px; text-align: center; }
+
+/* Rounded corners */
+.tipsy-inner { border-radius: 4px; -moz-border-radius: 4px; -webkit-border-radius: 4px; }
+
+.tipsy-arrow { position: absolute; width: 0; height: 0; line-height: 0; border: 5px dashed #000; }
+
+/* Rules to colour arrows */
+.tipsy-arrow-n { border-bottom-color: #000; }
+.tipsy-arrow-s { border-top-color: #000; }
+.tipsy-arrow-e { border-left-color: #000; }
+.tipsy-arrow-w { border-right-color: #000; }
+
+.tipsy-n .tipsy-arrow { top: 0px; left: 50%; margin-left: -5px; border-bottom-style: solid; border-top: none; border-left-color: transparent; border-right-color: transparent; }
+.tipsy-nw .tipsy-arrow { top: 0; left: 10px; border-bottom-style: solid; border-top: none; border-left-color: transparent; border-right-color: transparent;}
+.tipsy-ne .tipsy-arrow { top: 0; right: 10px; border-bottom-style: solid; border-top: none; border-left-color: transparent; border-right-color: transparent;}
+.tipsy-s .tipsy-arrow { bottom: 0; left: 50%; margin-left: -5px; border-top-style: solid; border-bottom: none; border-left-color: transparent; border-right-color: transparent; }
+.tipsy-sw .tipsy-arrow { bottom: 0; left: 10px; border-top-style: solid; border-bottom: none; border-left-color: transparent; border-right-color: transparent; }
+.tipsy-se .tipsy-arrow { bottom: 0; right: 10px; border-top-style: solid; border-bottom: none; border-left-color: transparent; border-right-color: transparent; }
+.tipsy-e .tipsy-arrow { right: 0; top: 50%; margin-top: -5px; border-left-style: solid; border-right: none; border-top-color: transparent; border-bottom-color: transparent; }
+.tipsy-w .tipsy-arrow { left: 0; top: 50%; margin-top: -5px; border-right-style: solid; border-left: none; border-top-color: transparent; border-bottom-color: transparent; }
+
+/* ========== */
+
+span.customStyleSelectBox {
+ margin: 0;
+ padding: 1px 4px 0 4px;
+ border:1px solid #a0a0a0;
+ background-color: #ffffff;
+ -moz-border-radius: 4px;
+ -khtml-border-radius: 4px;
+ -webkit-border-radius: 4px;
+ -chrome-border-radius: 4px;
+ -o-border-radius: 4px;
+ font-size: 90%;
}
-div#top div#top_right {
- position: absolute;
- right: 20px;
- top: 30px;
+span.customStyleSelectBox.changed { }
+
+.customStyleSelectBoxInner {
+ background:url(/img/arrow.png) no-repeat center right;
}
-div#top div#top_right form {
- float: left;
- padding-left: 6px;
+/* ========== */
+
+div#header {
+ padding: 15px 20px 20px 20px;
}
-div#date {
+div#header_date {
position: absolute;
- top: 10px;
- right: 21px;
+ top: 12px;
+ right: 20px;
font-size: 80%;
text-align: right;
color: #808080;
}
-div#top form#set_language {
+div#header div#header_forms {
+ position: absolute;
+ right: 20px;
+ top: 31px;
+}
+
+div#header div#header_forms form {
+ float: left;
+ padding-left: 22px;
}
select#locale {
+ font-size: 90%;
background-color: #ffffff;
- height: 24px;
- width: 100px;
- padding: 2px;
- border: 1px solid #808080;
- -moz-border-radius: 4px;
- -khtml-border-radius: 4px;
- -webkit-border-radius: 4px;
- -chrome-border-radius: 4px;
- -o-border-radius: 4px;
+ width: 98px;
+ border: none;
}
input#search {
@@ -147,8 +190,9 @@ input#search {
background-repeat: no-repeat;
background-position: right 3px;
height: 18px;
+ width: 228px;
padding: 2px;
- border: 1px solid #808080;
+ border: 1px solid #a0a0a0;
-moz-border-radius: 4px;
-khtml-border-radius: 4px;
-webkit-border-radius: 4px;
@@ -159,16 +203,21 @@ input#search {
input#search:active {
}
+/* ========== */
+
div#main {
- margin: 20px 20px 0 20px;
+ margin: 0 20px;
}
+/* ========== */
+
div#footer {
clear: both;
position: relative;
- top: 4px;
font-size: 90%;
- margin-left: 20px;
+ margin: 0 20px;
+ padding: 4px 0;
+ height: 20px;
}
div#footer_left {
@@ -177,37 +226,75 @@ div#footer_left {
div#footer_right {
position: absolute;
- right: 20px;
+ right: 0px;
text-align: right;
}
/* ========== */
-div#tabs {
- margin-top: 14px;
+div.box {
+ background-color: #ddddd4;
+ padding: 20px;
+ -moz-border-radius: 4px;
+ -khtml-border-radius: 4px;
+ -webkit-border-radius: 4px;
+ -chrome-border-radius: 4px;
+ -o-border-radius: 4px;
}
-div#tabs h2 {
- margin: 0 0 10px 0;
- font-size: 100%;
+.resize, .ui-tabs-panel {
+ overflow: hidden;
}
-div#tabs form {
- margin-bottom: 6px;
- font-size: 80%;
+/* ========== */
+
+div.boxes {
+ width: 232px;
+ float: right;
+}
+
+table.boxes {
+ border-collapse: collapse;
+}
+
+.boxes h2 {
+ text-transform: uppercase;
+ font-weight: normal;
+ margin: 16px 0 2px 0px;
+}
+
+.boxes h2 a {
+ color: #000000;
+ text-decoration: none;
+}
+
+table.boxes td {
+ vertical-align: bottom;
+}
+
+table.boxes td.box {
+ vertical-align: top;
+ font-size: 90%;
+ background-color: #ddddd4;
+ padding: 8px;
+ margin-bottom: 10px;
+ -moz-border-radius: 4px;
+ -khtml-border-radius: 4px;
+ -webkit-border-radius: 4px;
+ -chrome-border-radius: 4px;
+ -o-border-radius: 4px;
}
/* ========== */
-table.stats {
- margin-top: 0;
- margin-left: 16px;
- margin-bottom: 20px;
- font-size: 80%;
+div#tabs h2, div.box h2 {
+ margin: 0 0 10px 0;
+ font-size: 120%;
}
-div.stats h2 {
- margin-top: 0;
+div#tabs form {
+ margin-bottom: 6px;
+ font-size: 80%;
}
/* ========== */
@@ -247,17 +334,17 @@ span.char {
-o-border-radius: 4px;
}
-.tag-description {
- color: #808080;
- width: 50%;
-}
-
form#filter-form {
margin-top: 10px;
clear: both;
float: right;
}
+select#filter {
+ width: 146px;
+ background-color: #ffffff;
+}
+
div.canvas {
border: 1px solid #cccccc;
background-color: #ffffff;
@@ -286,33 +373,31 @@ div.bar {
margin: 4px 0 0 6px !important;
padding: 0 !important;
height: 8px;
- background-color: #c0c0c0;
+ background-color: #a0a098;
}
/* ========== */
table.list {
- width: 100%;
- background-color: #fbfbff0;
border-collapse: collapse;
}
table.list th, table.list td {
- border: 1px solid #ffffff;
- padding: 3px;
+ border-right: 1px solid #ddddd4;
+ padding: 2px 6px;
vertical-align: top;
}
table.list th {
- background-color: rgb(85%,85%,85%);
+ background-color: #b8b8b0;
}
table.list td {
- background-color: rgb(95%,95%,95%);
+ background-color: #e8e8e4;
}
table.list td.even {
- background-color: rgb(90%,90%,90%);
+ background-color: #d0d0c8;
}
table.list th.tl, table.list td.tl {
@@ -377,7 +462,12 @@ table.drilldown td#feature {
/* ========== */
table.desc {
- background-color: #f0f0f0;
+ background-color: #b8b8b0;
+ -moz-border-radius: 4px;
+ -khtml-border-radius: 4px;
+ -webkit-border-radius: 4px;
+ -chrome-border-radius: 4px;
+ -o-border-radius: 4px;
padding: 6px;
width: 100%;
}
@@ -397,47 +487,3 @@ table.desc td {
}
/* ========== */
-
-table#index {
- width: 100%;
- border-collapse: collapse;
-}
-
-table#index h2 {
- margin: 16px 0 2px 0px;
-}
-
-table#index h2 a {
- color: #000000;
- text-decoration: none;
-}
-
-table#index td {
- vertical-align: bottom;
-}
-
-table#index td.box {
- vertical-align: top;
- font-size: 90%;
- background-color: rgb(90%,89%,85%);
- padding: 6px;
- margin-bottom: 10px;
- -moz-border-radius: 4px;
- -khtml-border-radius: 4px;
- -webkit-border-radius: 4px;
- -chrome-border-radius: 4px;
- -o-border-radius: 4px;
-}
-
-table#index td.box p {
- margin: 0;
- padding: 8px;
-}
-
-/* ========== */
-
-div#instance_description a {
- text-decoration: underline;
-}
-
-/* ========== */
diff --git a/web/public/favicon.ico b/web/public/favicon.ico
index 698794f..1a04d3e 100644
--- a/web/public/favicon.ico
+++ b/web/public/favicon.ico
Binary files differ
diff --git a/web/public/img/arrow.png b/web/public/img/arrow.png
new file mode 100644
index 0000000..4b35e9d
--- /dev/null
+++ b/web/public/img/arrow.png
Binary files differ
diff --git a/web/public/img/mapbg/world.png b/web/public/img/mapbg/world.png
new file mode 100644
index 0000000..d544068
--- /dev/null
+++ b/web/public/img/mapbg/world.png
Binary files differ
diff --git a/web/public/js/customSelect.jquery.js b/web/public/js/customSelect.jquery.js
new file mode 100644
index 0000000..b28c0ed
--- /dev/null
+++ b/web/public/js/customSelect.jquery.js
@@ -0,0 +1,26 @@
+(function($){
+ $.fn.extend({
+
+ customStyle : function(options) {
+ if(!$.browser.msie || ($.browser.msie&&$.browser.version>6)){
+ return this.each(function() {
+
+ var currentSelected = $(this).find(':selected');
+ $(this).after('<span class="customStyleSelectBox"><span class="customStyleSelectBoxInner">'+currentSelected.text()+'</span></span>').css({position:'absolute', opacity:0 /*,fontSize:$(this).next().css('font-size')*/});
+ var selectBoxSpan = $(this).next();
+ var selectBoxWidth = parseInt($(this).width()) - parseInt(selectBoxSpan.css('padding-left')) -parseInt(selectBoxSpan.css('padding-right'));
+ var selectBoxSpanInner = selectBoxSpan.find(':first-child');
+ selectBoxSpan.css({display:'inline-block'});
+ selectBoxSpanInner.css({width:selectBoxWidth, display:'inline-block'});
+ var selectBoxHeight = parseInt(selectBoxSpan.height()) + parseInt(selectBoxSpan.css('padding-top')) + parseInt(selectBoxSpan.css('padding-bottom'));
+ $(this).height(selectBoxHeight).change(function(){
+ // selectBoxSpanInner.text($(this).val()).parent().addClass('changed'); This was not ideal
+ selectBoxSpanInner.text($(this).find(':selected').text()).parent().addClass('changed');
+ // Thanks to Juarez Filho & PaddyMurphy
+ });
+
+ });
+ }
+ }
+ });
+})(jQuery);
diff --git a/web/public/js/flexigrid.js b/web/public/js/flexigrid.js
index 95914bf..66813c3 100644
--- a/web/public/js/flexigrid.js
+++ b/web/public/js/flexigrid.js
@@ -94,6 +94,14 @@
);
},
+ getRp: function() {
+ return p.rp;
+ },
+ newRp: function(value) {
+ p.newp = 1;
+ p.rp = value;
+ g.populate();
+ },
fixHeight: function (newH) {
newH = false;
if (!newH) newH = $(g.bDiv).height();
@@ -117,7 +125,11 @@
var hrH = g.bDiv.offsetTop + newH;
if (p.height != 'auto' && p.resizable) hrH = g.vDiv.offsetTop;
$(g.rDiv).css({height: hrH});
-
+
+ var width_pDiv = jQuery(g.pDiv).width();
+ var width_hDiv = jQuery(g.hDiv).find('tr').width() - 1;
+ jQuery(g.pDiv).find('.pDiv2').width( Math.min(width_pDiv, width_hDiv) );
+
},
dragStart: function (dragtype,e,obj) { //default drag function start
@@ -250,6 +262,7 @@
this.rePosDrag();
this.fixHeight();
this.colresize = false;
+ this.populate();
}
else if (this.vresize)
{
@@ -393,6 +406,11 @@
if (this.pDiv) {
this.domElements.pPageStat.html(p.nomsg);
}
+ if (p.emptymsg != null) {
+ jQuery(this.gDiv).replaceWith('<span class="emptymsg">' + p.emptymsg + '</span>');
+ } else {
+ jQuery(this.gDiv).remove();
+ }
return false;
}
@@ -527,7 +545,7 @@
tbody = null; data = null; i = null;
- if (p.onSuccess) p.onSuccess();
+ if (p.onSuccess) p.onSuccess(g);
if (p.hideOnSubmit) $(g.block).remove();//$(t).show();
this.hDiv.scrollLeft = this.bDiv.scrollLeft;
@@ -599,7 +617,7 @@
this.domElements.pReload.addClass('loading');
}
- $(g.block).css({top:g.bDiv.offsetTop});
+ $(g.block).css({top:g.bDiv.offsetTop, width: jQuery(g.pDiv).find('.pDiv2').width()});
if (p.hideOnSubmit) $(this.gDiv).prepend(g.block); //$(t).hide();
@@ -1168,7 +1186,7 @@
{
g.pDiv.className = 'pDiv';
g.pDiv.innerHTML = '<div class="pDiv2"></div>';
- $(g.bDiv).after(g.pDiv);
+ $(g.bDiv).parent().prepend(g.pDiv);
var html = ' <div class="pGroup"> <div class="pFirst pButton"><span></span></div><div class="pPrev pButton"><span></span></div> </div> <div class="btnseparator"></div> <div class="pGroup"><span class="pcontrol">'+p.pagetext+' <input type="text" size="4" value="1" /> '+p.outof+' <span> 1 </span></span></div> <div class="btnseparator"></div> <div class="pGroup"> <div class="pNext pButton"><span></span></div><div class="pLast pButton"><span></span></div> </div> <div class="btnseparator"></div> <div class="pGroup"> <div class="pReload pButton"><span></span></div> </div> <div class="btnseparator"></div> <div class="pGroup"><span class="pPageStat"></span></div>';
$('div',g.pDiv).html(html);
@@ -1215,8 +1233,8 @@
//add search button
if (p.searchitems)
{
- $('.pDiv2',g.pDiv).prepend("<div class='pGroup'> <div class='pSearch pButton'><span></span></div> </div> <div class='btnseparator'></div>");
- $('.pSearch',g.pDiv).click(function(){$(g.sDiv).slideToggle('fast',function(){$('.sDiv:visible input:first',g.gDiv).trigger('focus');});});
+/* $('.pDiv2',g.pDiv).prepend("<div class='pGroup'> <div class='pSearch pButton'><span></span></div> </div> <div class='btnseparator'></div>");
+ $('.pSearch',g.pDiv).click(function(){$(g.sDiv).slideToggle('fast',function(){$('.sDiv:visible input:first',g.gDiv).trigger('focus');});}); */
//add search box
g.sDiv.className = 'sDiv';
@@ -1235,11 +1253,11 @@
if (p.qtype=='') p.qtype = sitems[0].name;
- $(g.sDiv).append("<div class='sDiv2'>"+p.findtext+" <input type='text' size='30' name='q' class='qsbox' /> <select name='qtype'>"+sopt+"</select> <!--input type='button' value='Clear' /--></div>");
+ $(g.sDiv).append("<div class='btnseparator'></div> <div class='sDiv2'>"/*+p.findtext*/+" <input type='text' size='20' name='q' class='qsbox' />"); // <select name='qtype'>"+sopt+"</select> <!--input type='button' value='Clear' /--></div>");
$('input[name=q],select[name=qtype]',g.sDiv).keydown(function(e){if(e.keyCode==13) g.doSearch()});
$('input[value=Clear]',g.sDiv).click(function(){$('input[name=q]',g.sDiv).val(''); p.query = ''; g.doSearch(); });
- $(g.bDiv).after(g.sDiv);
+ $(g.pDiv).children().first().append(g.sDiv);
}
@@ -1279,7 +1297,8 @@
gtop = g.bDiv.offsetTop;
$(g.block).css(
{
- width: g.bDiv.style.width,
+ //width: g.bDiv.style.width,
+ width: jQuery(g.pDiv).find('.pDiv2').width(),
height: gh,
background: 'white',
position: 'relative',
diff --git a/web/public/js/jquery.tipsy.js b/web/public/js/jquery.tipsy.js
new file mode 100644
index 0000000..9567ed3
--- /dev/null
+++ b/web/public/js/jquery.tipsy.js
@@ -0,0 +1,241 @@
+// tipsy, facebook style tooltips for jquery
+// version 1.0.0a
+// (c) 2008-2010 jason frame [jason@onehackoranother.com]
+// released under the MIT license
+
+(function($) {
+
+ function maybeCall(thing, ctx) {
+ return (typeof thing == 'function') ? (thing.call(ctx)) : thing;
+ };
+
+ function Tipsy(element, options) {
+ this.$element = $(element);
+ this.options = options;
+ this.enabled = true;
+ this.fixTitle();
+ };
+
+ Tipsy.prototype = {
+ show: function() {
+ var title = this.getTitle();
+ if (title && this.enabled) {
+ var $tip = this.tip();
+
+ $tip.find('.tipsy-inner')[this.options.html ? 'html' : 'text'](title);
+ $tip[0].className = 'tipsy'; // reset classname in case of dynamic gravity
+ $tip.remove().css({top: 0, left: 0, visibility: 'hidden', display: 'block'}).prependTo(document.body);
+
+ var pos = $.extend({}, this.$element.offset(), {
+ width: this.$element[0].offsetWidth,
+ height: this.$element[0].offsetHeight
+ });
+
+ var actualWidth = $tip[0].offsetWidth,
+ actualHeight = $tip[0].offsetHeight,
+ gravity = maybeCall(this.options.gravity, this.$element[0]);
+
+ var tp;
+ switch (gravity.charAt(0)) {
+ case 'n':
+ tp = {top: pos.top + pos.height + this.options.offset, left: pos.left + pos.width / 2 - actualWidth / 2};
+ break;
+ case 's':
+ tp = {top: pos.top - actualHeight - this.options.offset, left: pos.left + pos.width / 2 - actualWidth / 2};
+ break;
+ case 'e':
+ tp = {top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left - actualWidth - this.options.offset};
+ break;
+ case 'w':
+ tp = {top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left + pos.width + this.options.offset};
+ break;
+ }
+
+ if (gravity.length == 2) {
+ if (gravity.charAt(1) == 'w') {
+ tp.left = pos.left + pos.width / 2 - 15;
+ } else {
+ tp.left = pos.left + pos.width / 2 - actualWidth + 15;
+ }
+ }
+
+ $tip.css(tp).addClass('tipsy-' + gravity);
+ $tip.find('.tipsy-arrow')[0].className = 'tipsy-arrow tipsy-arrow-' + gravity.charAt(0);
+ if (this.options.className) {
+ $tip.addClass(maybeCall(this.options.className, this.$element[0]));
+ }
+
+ if (this.options.fade) {
+ $tip.stop().css({opacity: 0, display: 'block', visibility: 'visible'}).animate({opacity: this.options.opacity});
+ } else {
+ $tip.css({visibility: 'visible', opacity: this.options.opacity});
+ }
+ }
+ },
+
+ hide: function() {
+ if (this.options.fade) {
+ this.tip().stop().fadeOut(function() { $(this).remove(); });
+ } else {
+ this.tip().remove();
+ }
+ },
+
+ fixTitle: function() {
+ var $e = this.$element;
+ if ($e.attr('title') || typeof($e.attr('original-title')) != 'string') {
+ $e.attr('original-title', $e.attr('title') || '').removeAttr('title');
+ }
+ },
+
+ getTitle: function() {
+ var title, $e = this.$element, o = this.options;
+ this.fixTitle();
+ var title, o = this.options;
+ if (typeof o.title == 'string') {
+ title = $e.attr(o.title == 'title' ? 'original-title' : o.title);
+ } else if (typeof o.title == 'function') {
+ title = o.title.call($e[0]);
+ }
+ title = ('' + title).replace(/(^\s*|\s*$)/, "");
+ return title || o.fallback;
+ },
+
+ tip: function() {
+ if (!this.$tip) {
+ this.$tip = $('<div class="tipsy"></div>').html('<div class="tipsy-arrow"></div><div class="tipsy-inner"></div>');
+ }
+ return this.$tip;
+ },
+
+ validate: function() {
+ if (!this.$element[0].parentNode) {
+ this.hide();
+ this.$element = null;
+ this.options = null;
+ }
+ },
+
+ enable: function() { this.enabled = true; },
+ disable: function() { this.enabled = false; },
+ toggleEnabled: function() { this.enabled = !this.enabled; }
+ };
+
+ $.fn.tipsy = function(options) {
+
+ if (options === true) {
+ return this.data('tipsy');
+ } else if (typeof options == 'string') {
+ var tipsy = this.data('tipsy');
+ if (tipsy) tipsy[options]();
+ return this;
+ }
+
+ options = $.extend({}, $.fn.tipsy.defaults, options);
+
+ function get(ele) {
+ var tipsy = $.data(ele, 'tipsy');
+ if (!tipsy) {
+ tipsy = new Tipsy(ele, $.fn.tipsy.elementOptions(ele, options));
+ $.data(ele, 'tipsy', tipsy);
+ }
+ return tipsy;
+ }
+
+ function enter() {
+ var tipsy = get(this);
+ tipsy.hoverState = 'in';
+ if (options.delayIn == 0) {
+ tipsy.show();
+ } else {
+ tipsy.fixTitle();
+ setTimeout(function() { if (tipsy.hoverState == 'in') tipsy.show(); }, options.delayIn);
+ }
+ };
+
+ function leave() {
+ var tipsy = get(this);
+ tipsy.hoverState = 'out';
+ if (options.delayOut == 0) {
+ tipsy.hide();
+ } else {
+ setTimeout(function() { if (tipsy.hoverState == 'out') tipsy.hide(); }, options.delayOut);
+ }
+ };
+
+ if (!options.live) this.each(function() { get(this); });
+
+ if (options.trigger != 'manual') {
+ var binder = options.live ? 'live' : 'bind',
+ eventIn = options.trigger == 'hover' ? 'mouseenter' : 'focus',
+ eventOut = options.trigger == 'hover' ? 'mouseleave' : 'blur';
+ this[binder](eventIn, enter)[binder](eventOut, leave);
+ }
+
+ return this;
+
+ };
+
+ $.fn.tipsy.defaults = {
+ className: null,
+ delayIn: 0,
+ delayOut: 0,
+ fade: false,
+ fallback: '',
+ gravity: 'n',
+ html: false,
+ live: false,
+ offset: 0,
+ opacity: 0.8,
+ title: 'title',
+ trigger: 'hover'
+ };
+
+ // Overwrite this method to provide options on a per-element basis.
+ // For example, you could store the gravity in a 'tipsy-gravity' attribute:
+ // return $.extend({}, options, {gravity: $(ele).attr('tipsy-gravity') || 'n' });
+ // (remember - do not modify 'options' in place!)
+ $.fn.tipsy.elementOptions = function(ele, options) {
+ return $.metadata ? $.extend({}, options, $(ele).metadata()) : options;
+ };
+
+ $.fn.tipsy.autoNS = function() {
+ return $(this).offset().top > ($(document).scrollTop() + $(window).height() / 2) ? 's' : 'n';
+ };
+
+ $.fn.tipsy.autoWE = function() {
+ return $(this).offset().left > ($(document).scrollLeft() + $(window).width() / 2) ? 'e' : 'w';
+ };
+
+ /**
+ * yields a closure of the supplied parameters, producing a function that takes
+ * no arguments and is suitable for use as an autogravity function like so:
+ *
+ * @param margin (int) - distance from the viewable region edge that an
+ * element should be before setting its tooltip's gravity to be away
+ * from that edge.
+ * @param prefer (string, e.g. 'n', 'sw', 'w') - the direction to prefer
+ * if there are no viewable region edges effecting the tooltip's
+ * gravity. It will try to vary from this minimally, for example,
+ * if 'sw' is preferred and an element is near the right viewable
+ * region edge, but not the top edge, it will set the gravity for
+ * that element's tooltip to be 'se', preserving the southern
+ * component.
+ */
+ $.fn.tipsy.autoBounds = function(margin, prefer) {
+ return function() {
+ var dir = {ns: prefer[0], ew: (prefer.length > 1 ? prefer[1] : false)},
+ boundTop = $(document).scrollTop() + margin,
+ boundLeft = $(document).scrollLeft() + margin,
+ $this = $(this);
+
+ if ($this.offset().top < boundTop) dir.ns = 'n';
+ if ($this.offset().left < boundLeft) dir.ew = 'w';
+ if ($(window).width() + $(document).scrollLeft() - $this.offset().left < margin) dir.ew = 'e';
+ if ($(window).height() + $(document).scrollTop() - $this.offset().top < margin) dir.ns = 's';
+
+ return dir.ns + (dir.ew ? dir.ew : '');
+ }
+ };
+
+})(jQuery);
diff --git a/web/public/js/taginfo.js b/web/public/js/taginfo.js
index 3ea3957..8362b58 100644
--- a/web/public/js/taginfo.js
+++ b/web/public/js/taginfo.js
@@ -1,6 +1,73 @@
// taginfo.js
+var grids = {};
+var current_grid = '';
+
+function resize_home() {
+ var tagcloud = jQuery('#tagcloud');
+ tagcloud.empty();
+ tagcloud.height(0);
+
+ resize_wrapper();
+
+ var height = tagcloud.parent().innerHeight();
+ tagcloud.parent().children().each(function(index) {
+ if (this.id != 'tagcloud') {
+ height -= jQuery(this).outerHeight(true);
+ }
+ });
+ tagcloud.height(height - 20);
+
+ var tags = tagcloud_data();
+ var cloud = '';
+ for (var i=0; i < tags.length; i++) {
+ cloud += '<a href="/keys/' + tags[i][0] + '" style="font-size: ' + tags[i][1] + 'px;">' + tags[i][0] + '</a> ';
+ }
+ tagcloud.append(cloud);
+
+ var tags = tagcloud.children().toArray().sort(function(a, b) {
+ return parseInt(jQuery(a).css('font-size')) - parseInt(jQuery(b).css('font-size'));
+ });
+
+ while (tagcloud.get(0).scrollHeight > tagcloud.height()) {
+ jQuery(tags.shift()).remove();
+ }
+}
+
+function resize_window() {
+ resize_wrapper(true);
+}
+
+function resize_wrapper(resize_grid) {
+ var height = jQuery(window).height();
+
+ height -= jQuery('div#header').outerHeight(true);
+ height -= jQuery('div.pre').outerHeight(true);
+ height -= jQuery('.ui-tabs-nav').outerHeight(true);
+ height -= jQuery('div#footer').outerHeight(true);
+
+ var wrapper = jQuery('.resize,.ui-tabs-panel');
+ wrapper.outerHeight(height);
+
+ if (resize_grid) {
+ if (grids[current_grid]) {
+ var grid = grids[current_grid][0].grid;
+ var oldrp = grid.getRp();
+ var rp = calculate_flexigrid_rp(jQuery(grids[current_grid][0]).parents('.ui-tabs-panel, div.box'));
+ if (rp != oldrp) {
+ grid.newRp(rp);
+ grid.fixHeight();
+ }
+ }
+ }
+}
+
jQuery(document).ready(function() {
+
+ jQuery('select').customStyle();
+ jQuery('*[title]').tipsy({ opacity: 1, delayIn: 500 });
+ jQuery(window).resize(resize_window);
+
jQuery.getQueryString = (function(a) {
if (a == "") return {};
var b = {};
@@ -10,16 +77,6 @@ jQuery(document).ready(function() {
}
return b;
})(window.location.search.substr(1).split('&'))
-
- jQuery('#instance_description').dialog({
- autoOpen: false,
- position: [20, 50],
- title: texts.instance_description.title
- });
-
- jQuery('#instance').click(function() {
- jQuery('#instance_description').dialog('open');
- });
});
function print_wiki_link(title, options) {
@@ -261,21 +318,48 @@ jQuery(document).ready(function() {
/* ============================ */
-var grids = {};
-
var flexigrid_defaults = {
method : 'GET',
dataType : 'json',
showToggleBtn : false,
+ height : 'auto',
usepager : true,
- useRp : true,
- rp : 15,
- rpOptions : [10,15,20,25,50,100],
+ useRp : false,
+ onSuccess : function(grid) {
+ jQuery('*[title]').tipsy({ opacity: 1, delayIn: 500, gravity: 'w' });
+ grid.fixHeight();
+ }
};
+function calculate_flexigrid_rp(box) {
+ var height = box.innerHeight();
+
+ height -= box.children('h2').outerHeight(true);
+ height -= box.children('.boxpre').outerHeight(true);
+ height -= box.children('.pDiv').outerHeight();
+ height -= box.children('.pHiv').outerHeight();
+ height -= 80; // table tools and header, possibly horizontal scrollbar
+
+ return Math.floor(height / 28);
+}
+
function create_flexigrid(domid, options) {
+ current_grid = domid;
if (grids[domid] == null) {
- grids[domid] = jQuery('#' + domid).flexigrid(jQuery.extend({}, flexigrid_defaults, texts.flexigrid, options));
+ // grid doesn't exist yet, so create it
+ var me = jQuery('#' + domid);
+ var rp = calculate_flexigrid_rp(me.parents('.ui-tabs-panel, div.box'));
+ grids[domid] = me.flexigrid(jQuery.extend({}, flexigrid_defaults, texts.flexigrid, options, { rp: rp }));
+ jQuery('*[title]').tipsy({ opacity: 1, delayIn: 500, gravity: 's' });
+ } else {
+ // grid does exist, make sure it has the right size
+ var grid = grids[domid][0].grid;
+ var oldrp = grid.getRp();
+ var rp = calculate_flexigrid_rp(jQuery(grids[domid][0]).parents('.ui-tabs-panel, div.box'));
+ if (rp != oldrp) {
+ grid.newRp(rp);
+ grid.fixHeight();
+ }
}
}
@@ -285,14 +369,14 @@ var create_flexigrid_for = {
create_flexigrid('grid-keys', {
url: '/api/2/db/keys?include=prevalent_values',
colModel: [
- { display: texts.osm.key, name: 'key', width: 180, sortable: true },
- { display: '<span title="Number of objects with this key"><img src="/img/types/all.16.png" alt=""/> Total</span>', name: 'count_all', width: 250, sortable: true, align: 'center' },
- { display: '<span title="Number of nodes with this key"><img src="/img/types/node.16.png" alt=""/> Nodes</span>', name: 'count_nodes', width: 250, sortable: true, align: 'center' },
- { display: '<span title="Number of ways with this key"><img src="/img/types/way.16.png" alt=""/> Ways</span>', name: 'count_ways', width: 250, sortable: true, align: 'center' },
- { display: '<span title="Number of relations with this key"><img src="/img/types/relation.16.png" alt=""/> Relation</span>', name: 'count_relations', width: 250, sortable: true, align: 'center' },
- { display: 'Users', name: 'users_all', width: 44, sortable: true, align: 'right' },
- { display: '<img src="/img/sources/wiki.16.png" alt="Wiki" title="Wiki"/>', name: 'in_wiki', width: 20, sortable: true, align: 'center' },
- { display: '<img src="/img/sources/josm.16.png" alt="JOSM" title="JOSM"/>', name: 'in_josm', width: 20, sortable: true, align: 'center' },
+ { display: texts.osm.key, name: 'key', width: 160, sortable: true },
+ { display: '<span title="Number of objects with this key"><img src="/img/types/all.16.png" alt=""/> Total</span>', name: 'count_all', width: 200, sortable: true, align: 'center' },
+ { display: '<span title="Number of nodes with this key"><img src="/img/types/node.16.png" alt=""/> Nodes</span>', name: 'count_nodes', width: 220, sortable: true, align: 'center' },
+ { display: '<span title="Number of ways with this key"><img src="/img/types/way.16.png" alt=""/> Ways</span>', name: 'count_ways', width: 220, sortable: true, align: 'center' },
+ { display: '<span title="Number of relations with this key"><img src="/img/types/relation.16.png" alt=""/> Relation</span>', name: 'count_relations', width: 220, sortable: true, align: 'center' },
+ { display: '<span title="Number of users currently owning objects with this key">Users</span>', name: 'users_all', width: 44, sortable: true, align: 'right' },
+ { display: '<img src="/img/sources/wiki.16.png" alt="Wiki" title="Key has wiki page"/>', name: 'in_wiki', width: 20, sortable: true, align: 'center' },
+ { display: '<img src="/img/sources/josm.16.png" alt="JOSM" title="Key appears in JOSM config"/>', name: 'in_josm', width: 20, sortable: true, align: 'center' },
{ display: '<span title="Number of different values for this key">Values</span>', name: 'values_all', width: 70, sortable: true, align: 'right' },
{ display: 'Prevalent Values', name: 'prevalent_values', width: 500, sortable: true }
],
@@ -301,7 +385,6 @@ var create_flexigrid_for = {
],
sortname: 'count_all',
sortorder: 'desc',
- height: 420,
preProcess: function(data) {
data.rows = jQuery.map(data.data, function(row, i) {
return { 'cell': [
@@ -338,7 +421,6 @@ var create_flexigrid_for = {
],
sortname: 'count_all',
sortorder: 'desc',
- height: 420,
preProcess: function(data) {
data.rows = jQuery.map(data.data, function(row, i) {
return { 'cell': [
@@ -364,7 +446,6 @@ var create_flexigrid_for = {
],
usepager: false,
useRp: false,
- height: 130,
preProcess: function(data) {
return {
total: 4,
@@ -392,7 +473,7 @@ var create_flexigrid_for = {
],
sortname: 'to_count',
sortorder: 'desc',
- height: 410,
+ emptymsg: '[No combinations found (only checked the most common ones).]',
preProcess: function(data) {
data.rows = jQuery.map(data.data, function(row, i) {
return { 'cell': [
@@ -410,7 +491,7 @@ var create_flexigrid_for = {
url: '/api/2/wiki/tags?key=' + encodeURIComponent(key) + '&value=' + encodeURIComponent(value),
colModel: [
{ display: 'Language', name: 'lang', width: 150, sortable: false },
- { display: 'Wikipage', name: 'title', width: 200, sortable: false, align: 'right' },
+ { display: 'Wiki page', name: 'title', width: 200, sortable: false, align: 'right' },
{ display: 'Description', name: 'description', width: 400, sortable: false },
{ display: 'Image', name: 'image', width: 120, sortable: false },
{ display: 'Objects', name: 'objects', width: 80, sortable: false },
@@ -420,7 +501,6 @@ var create_flexigrid_for = {
],
usepager: false,
useRp: false,
- height: 300,
preProcess: function(data) {
return {
total: data.size,
@@ -459,7 +539,7 @@ var create_flexigrid_for = {
],*/
sortname: 'v',
sortorder: 'asc',
- height: 300,
+ emptymsg: '[No JOSM styles for this tag]',
preProcess: function(data) {
data.rows = jQuery.map(data.data, function(row, i) {
return { 'cell': [
@@ -486,7 +566,6 @@ var create_flexigrid_for = {
],
usepager: false,
useRp: false,
- height: 130,
preProcess: function(data) {
return {
total: 4,
@@ -506,20 +585,19 @@ var create_flexigrid_for = {
create_flexigrid('grid-values', {
url: '/api/2/db/keys/values?key=' + encodeURIComponent(key) + '&filter=' + encodeURIComponent(filter_type),
colModel: [
- { display: texts.misc.count, name: 'count', width: 300, sortable: true, align: 'center' },
- { display: texts.osm.value, name: 'value', width: 500, sortable: true }
+ { display: texts.osm.value, name: 'value', width: 500, sortable: true },
+ { display: texts.misc.count, name: 'count', width: 300, sortable: true, align: 'center' }
],
searchitems: [
{ display: texts.osm.value, name: 'value' }
],
sortname: 'count',
sortorder: 'desc',
- height: 410,
preProcess: function(data) {
data.rows = jQuery.map(data.data, function(row, i) {
return { 'cell': [
- print_value_with_percent(row.count, row.fraction),
- link_to_value(key, row.value)
+ link_to_value(key, row.value),
+ print_value_with_percent(row.count, row.fraction)
] };
});
delete data.data;
@@ -540,7 +618,6 @@ var create_flexigrid_for = {
],
sortname: 'to_count',
sortorder: 'desc',
- height: 410,
preProcess: function(data) {
data.rows = jQuery.map(data.data, function(row, i) {
return { 'cell': [
@@ -568,7 +645,7 @@ var create_flexigrid_for = {
],
sortname: 'v',
sortorder: 'asc',
- height: 410,
+ emptymsg: '[No JOSM styles for this key]',
preProcess: function(data) {
data.rows = jQuery.map(data.data, function(row, i) {
return { 'cell': [
@@ -588,7 +665,7 @@ var create_flexigrid_for = {
url: '/api/2/wiki/keys?key=' + encodeURIComponent(key),
colModel: [
{ display: 'Language', name: 'lang', width: 150, sortable: false },
- { display: 'Wikipage', name: 'title', width: 160, sortable: false, align: 'right' },
+ { display: 'Wiki page', name: 'title', width: 160, sortable: false, align: 'right' },
{ display: 'Description', name: 'description', width: 400, sortable: false },
{ display: 'Image', name: 'image', width: 120, sortable: false },
{ display: 'Objects', name: 'objects', width: 80, sortable: false },
@@ -598,7 +675,6 @@ var create_flexigrid_for = {
],
usepager: false,
useRp: false,
- height: 400,
preProcess: function(data) {
return {
total: data.size,
@@ -633,7 +709,6 @@ var create_flexigrid_for = {
],
sortname: 'count_all',
sortorder: 'desc',
- height: 420,
preProcess: function(data) {
data.rows = jQuery.map(data.data, function(row, i) {
return { 'cell': [
@@ -655,7 +730,6 @@ var create_flexigrid_for = {
],
sortname: 'count_all',
sortorder: 'desc',
- height: 420,
preProcess: function(data) {
data.rows = jQuery.map(data.data, function(row, i) {
return { 'cell': [
@@ -679,7 +753,6 @@ var create_flexigrid_for = {
],
sortname: 'count_all',
sortorder: 'desc',
- height: 420,
preProcess: function(data) {
data.rows = jQuery.map(data.data, function(row, i) {
return { 'cell': [
@@ -713,7 +786,6 @@ var create_flexigrid_for = {
],
sortname: 'k',
sortorder: 'asc',
- height: 400,
preProcess: function(data) {
data.rows = jQuery.map(data.data, function(row, i) {
return { 'cell': [
@@ -745,7 +817,6 @@ var create_flexigrid_for = {
],
sortname: 'count_all',
sortorder: 'desc',
- height: 420,
preProcess: function(data) {
data.rows = jQuery.map(data.data, function(row, i) {
var wikilinks = [];
@@ -775,7 +846,6 @@ var create_flexigrid_for = {
{ display: 'Wiki Key Pages', name: 'wiki_key_pages', width: 260, sortable: true, align: 'center' },
{ display: 'Wiki Tag Pages', name: 'wiki_tag_pages', width: 260, sortable: true, align: 'center' }
],
- height: 540,
sortname: 'code',
sortorder: 'asc',
showToggleBtn: false,
@@ -814,7 +884,6 @@ var create_flexigrid_for = {
],
sortname: 'count_all',
sortorder: 'desc',
- height: 420,
preProcess: function(data) {
data.rows = jQuery.map(data.data, function(row, i) {
return { 'cell': [
@@ -831,19 +900,6 @@ var create_flexigrid_for = {
});
},
characters_in_keys: {
- statistics: function() {
- create_flexigrid('grid-statistics', {
- colModel: [
- { display: '&nbsp;', name: 'row', width: 10, sortable: true, align: 'center' },
- { display: texts.misc.count, name: 'count', width: 40, sortable: true, align: 'right' },
- { display: 'Fraction', name: 'fraction', width: 60, sortable: true, align: 'right' },
- { display: 'Characters in Key', name: 'characters', width: 810, sortable: true }
- ],
- width: 990,
- height: 200,
- usepager: false
- });
- },
whitespace: function() {
create_flexigrid('grid-whitespace', {
url: '/api/2/db/keys?filters=characters_space&include=prevalent_values',
@@ -863,7 +919,6 @@ var create_flexigrid_for = {
],
sortname: 'count_all',
sortorder: 'desc',
- height: 420,
preProcess: function(data) {
data.rows = jQuery.map(data.data, function(row, i) {
return { 'cell': [
@@ -901,7 +956,6 @@ var create_flexigrid_for = {
],
sortname: 'count_all',
sortorder: 'desc',
- height: 420,
preProcess: function(data) {
data.rows = jQuery.map(data.data, function(row, i) {
return { 'cell': [
@@ -941,7 +995,6 @@ var create_flexigrid_for = {
],
sortname: 'length',
sortorder: 'asc',
- height: 420,
preProcess: function(data) {
data.rows = jQuery.map(data.data, function(row, i) {
return { 'cell': [