diff options
| author | Jigar Amin - OpenERP <jam@tinyerp.com> | 2012-09-13 10:06:44 +0530 |
|---|---|---|
| committer | Jigar Amin - OpenERP <jam@tinyerp.com> | 2012-09-13 10:06:44 +0530 |
| commit | 188eff46ecade0774bf40fbafbe84e31e801b4c2 (patch) | |
| tree | df139787a70cfe8deeaa8544e3a12966aa4abc58 /addons | |
| parent | 14ed53e196441985e6242b4bcad4f0ed411646a8 (diff) | |
| parent | cd004c2c77e95cf3ab3c2889806b5ce54d107874 (diff) | |
[merge] lp:openerp-web
bzr revid: jam@tinyerp.com-20120913043644-t41gs5n4kp8a0j0e
Diffstat (limited to 'addons')
80 files changed, 309 insertions, 16332 deletions
diff --git a/addons/web/__openerp__.py b/addons/web/__openerp__.py index 44a3caaf8ec..fcfdca60a2a 100644 --- a/addons/web/__openerp__.py +++ b/addons/web/__openerp__.py @@ -48,7 +48,6 @@ This module provides the core of the OpenERP Web Client. "static/src/js/views.js", "static/src/js/data.js", "static/src/js/data_export.js", - "static/src/js/data_import.js", "static/src/js/search.js", "static/src/js/view_form.js", "static/src/js/view_list.js", @@ -63,7 +62,6 @@ This module provides the core of the OpenERP Web Client. "static/lib/jquery.textext/jquery.textext.css", "static/src/css/base.css", "static/src/css/data_export.css", - "static/src/css/data_import.css", "static/lib/cleditor/jquery.cleditor.css", ], 'qweb' : [ diff --git a/addons/web/static/src/css/base.css b/addons/web/static/src/css/base.css index 73457e2bc19..16861a7853f 100644 --- a/addons/web/static/src/css/base.css +++ b/addons/web/static/src/css/base.css @@ -25,6 +25,7 @@ display: none !important; } } + .openerp.openerp_webclient_container { height: 100%; position: relative; @@ -40,7 +41,7 @@ text-shadow: 0 1px 1px rgba(255, 255, 255, 0.5); /* http://www.quirksmode.org/dom/inputfile.html * http://stackoverflow.com/questions/2855589/replace-input-type-file-by-an-image - */ + */ */ } .openerp :-moz-placeholder { color: #afafb6 !important; @@ -111,28 +112,6 @@ .openerp h4 { margin: 4px 0; } -.openerp .oe_semantic_html_override ul, .openerp .oe_semantic_html_override ol { - margin: 0; - padding: 0; -} -.openerp .oe_semantic_html_override ul ul, .openerp .oe_semantic_html_override ul ol, .openerp .oe_semantic_html_override ul li, .openerp .oe_semantic_html_override ol ul, .openerp .oe_semantic_html_override ol ol, .openerp .oe_semantic_html_override ol li { - margin: 0; - padding: 0; -} -.openerp .oe_semantic_html_override ul li, .openerp .oe_semantic_html_override ol li { - list-style-type: none; -} -.openerp ul.oe_semantic_html_override { - margin: 0; - padding: 0; -} -.openerp ul.oe_semantic_html_override ul, .openerp ul.oe_semantic_html_override ol, .openerp ul.oe_semantic_html_override li { - margin: 0; - padding: 0; -} -.openerp ul.oe_semantic_html_override li { - list-style-type: none; -} .openerp a.button:link, .openerp a.button:visited, .openerp button, .openerp input[type='submit'], .openerp .ui-dialog-buttonpane .ui-dialog-buttonset .ui-button { display: inline-block; border: 1px solid #ababab; @@ -265,7 +244,7 @@ border-radius: 0 0 2px 2px; } .openerp.ui-dialog .ui-dialog-buttonpane button { - margin: 0; + margin: 0 4px 0 0; } .openerp.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset { float: left; @@ -602,26 +581,6 @@ padding: 0 16px; list-style: none; zoom: 1; - margin: 0; - padding: 0; -} -.openerp .oe_notebook ul, .openerp .oe_notebook ol, .openerp .oe_notebook li { - margin: 0; - padding: 0; -} -.openerp .oe_notebook li { - list-style-type: none; -} -.openerp .oe_notebook ul, .openerp .oe_notebook ol { - margin: 0; - padding: 0; -} -.openerp .oe_notebook ul ul, .openerp .oe_notebook ul ol, .openerp .oe_notebook ul li, .openerp .oe_notebook ol ul, .openerp .oe_notebook ol ol, .openerp .oe_notebook ol li { - margin: 0; - padding: 0; -} -.openerp .oe_notebook ul li, .openerp .oe_notebook ol li { - list-style-type: none; } .openerp .oe_notebook.ui-corner-all { -moz-border-radius: 0; @@ -697,6 +656,8 @@ top: 26px; left: 0; z-index: 1; + margin: 0; + padding: 0; border: 1px solid #afafb6; background: white; padding: 4px 0; @@ -714,6 +675,7 @@ float: none; display: block; position: relative; + margin: 0; padding: 2px 8px; } .openerp .oe_dropdown_menu > li:hover { @@ -831,9 +793,10 @@ font-size: 14px; height: 100%; } -.openerp .oe_login li { +.openerp .oe_login ul, .openerp .oe_login li { + margin: 0; list-style-type: none; - padding-bottom: 4px; + padding: 0 0 4px 0; } .openerp .oe_login button { float: right; @@ -926,17 +889,6 @@ -webkit-box-shadow: 0 0 18px rgba(0, 0, 0, 0.9); box-shadow: 0 0 18px rgba(0, 0, 0, 0.9); } -.openerp .oe_login .oe_login_pane ul, .openerp .oe_login .oe_login_pane ol { - margin: 0; - padding: 0; -} -.openerp .oe_login .oe_login_pane ul ul, .openerp .oe_login .oe_login_pane ul ol, .openerp .oe_login .oe_login_pane ul li, .openerp .oe_login .oe_login_pane ol ul, .openerp .oe_login .oe_login_pane ol ol, .openerp .oe_login .oe_login_pane ol li { - margin: 0; - padding: 0; -} -.openerp .oe_login .oe_login_pane ul li, .openerp .oe_login .oe_login_pane ol li { - list-style-type: none; -} .openerp .oe_login .oe_login_pane h2 { margin-top: 0; font-size: 18px; @@ -1015,17 +967,6 @@ background-image: -o-linear-gradient(top, #646060, #262626); background-image: linear-gradient(to bottom, #646060, #262626); } -.openerp .oe_topbar ul, .openerp .oe_topbar ol { - margin: 0; - padding: 0; -} -.openerp .oe_topbar ul ul, .openerp .oe_topbar ul ol, .openerp .oe_topbar ul li, .openerp .oe_topbar ol ul, .openerp .oe_topbar ol ol, .openerp .oe_topbar ol li { - margin: 0; - padding: 0; -} -.openerp .oe_topbar ul li, .openerp .oe_topbar ol li { - list-style-type: none; -} .openerp .oe_topbar .oe_topbar_item { display: block; padding: 5px 10px 7px; @@ -1098,17 +1039,6 @@ text-shadow: 0 1px 1px white; padding-bottom: 16px; } -.openerp .oe_leftbar ul, .openerp .oe_leftbar ol { - margin: 0; - padding: 0; -} -.openerp .oe_leftbar ul ul, .openerp .oe_leftbar ul ol, .openerp .oe_leftbar ul li, .openerp .oe_leftbar ol ul, .openerp .oe_leftbar ol ol, .openerp .oe_leftbar ol li { - margin: 0; - padding: 0; -} -.openerp .oe_leftbar ul li, .openerp .oe_leftbar ol li { - list-style-type: none; -} .openerp a.oe_logo { width: 220px; display: block; @@ -1164,6 +1094,9 @@ margin: 0; } .openerp .oe_menu > li { + list-style-type: none; + padding: 0; + margin: 0; float: left; } .openerp .oe_menu > li > a { @@ -1203,7 +1136,9 @@ } .openerp .oe_secondary_submenu li { position: relative; + margin: 0; padding: 1px 0 1px 20px !important; + list-style-type: none; } .openerp .oe_secondary_submenu li a { display: block; @@ -1306,6 +1241,13 @@ .openerp .oe_application > div { height: 100%; } +.openerp .oe_application .oe_breadcrumb_item:not(:last-child) { + display: inline-block; + max-width: 7em; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; +} .openerp .oe_view_manager .oe_view_manager_body { height: inherit; } @@ -1316,16 +1258,6 @@ width: 100%; table-layout: fixed; } -.openerp .oe_view_manager table.oe_view_manager_header ul { - padding: 0; - margin-right: 0; - margin-top: 0; - margin-bottom: 0; -} -.openerp .oe_view_manager table.oe_view_manager_header ul li { - list-style-type: none; - margin: 0; -} .openerp .oe_view_manager table.oe_view_manager_header .oe_header_row { clear: both; text-shadow: 0 1px 1px white; @@ -1397,6 +1329,10 @@ float: left; margin-right: 8px; } +.openerp .oe_view_manager ul.oe_pager_group { + padding: 0; + margin: 0; +} .openerp .oe_view_manager .oe_pager_group { float: left; height: 24px; @@ -1412,6 +1348,8 @@ height: 24px; line-height: 24px; padding: 0; + margin: 0; + list-style-type: none; float: left; border-right: 1px solid #ababab; } @@ -1436,14 +1374,17 @@ text-shadow: 0 1px 2px rgba(0, 0, 0, 0.4); } .openerp .oe_view_manager .oe_view_manager_switch { - margin-left: 8px; + padding: 0; + margin: 0 0 0 8px; } .openerp .oe_view_manager .oe_view_manager_switch li { - text-align: center; + margin: 0; width: 24px; height: 24px; line-height: 16px; padding: 0; + text-align: center; + list-style-type: none; } .openerp .oe_view_manager .oe_view_manager_switch li a { position: relative; @@ -2047,135 +1988,6 @@ .openerp .oe_form div.oe_form_configuration .oe_form_group_cell div div { padding: 1px 0; } -.openerp .oe_form ul.oe_form_steps, .openerp .oe_form ul.oe_form_steps_clickable { - display: inline-block; - padding-right: 18px; -} -.openerp .oe_form ul.oe_form_steps li, .openerp .oe_form ul.oe_form_steps_clickable li { - display: inline-block; - margin-right: -20px; - background-color: #fcfcfc; - background-image: -webkit-gradient(linear, left top, left bottom, from(#fcfcfc), to(#dedede)); - background-image: -webkit-linear-gradient(top, #fcfcfc, #dedede); - background-image: -moz-linear-gradient(top, #fcfcfc, #dedede); - background-image: -ms-linear-gradient(top, #fcfcfc, #dedede); - background-image: -o-linear-gradient(top, #fcfcfc, #dedede); - background-image: linear-gradient(to bottom, #fcfcfc, #dedede); -} -.openerp .oe_form ul.oe_form_steps li:first-child .label, .openerp .oe_form ul.oe_form_steps_clickable li:first-child .label { - border-left: 1px solid #cacaca; - padding-left: 14px; -} -.openerp .oe_form ul.oe_form_steps li:last-child, .openerp .oe_form ul.oe_form_steps_clickable li:last-child { - border-right: 1px solid #cacaca; -} -.openerp .oe_form ul.oe_form_steps li:last-child .label, .openerp .oe_form ul.oe_form_steps_clickable li:last-child .label { - padding-right: 14px; -} -.openerp .oe_form ul.oe_form_steps li:last-child .arrow, .openerp .oe_form ul.oe_form_steps_clickable li:last-child .arrow { - display: none; -} -.openerp .oe_form ul.oe_form_steps li .label, .openerp .oe_form ul.oe_form_steps_clickable li .label { - color: #4c4c4c; - text-shadow: 0 1px 1px #fcfcfc, 0 -1px 1px #dedede; - padding: 7px; - display: inline-block; - padding-left: 24px; - margin: 0; - position: relative; -} -.openerp .oe_form ul.oe_form_steps li .arrow, .openerp .oe_form ul.oe_form_steps_clickable li .arrow { - width: 17px; - display: inline-block; - vertical-align: top; - overflow: hidden; - margin-left: -5px; -} -.openerp .oe_form ul.oe_form_steps li .arrow span, .openerp .oe_form ul.oe_form_steps_clickable li .arrow span { - position: relative; - width: 24px; - height: 24px; - display: inline-block; - margin-left: -12px; - margin-top: 3px; - box-shadow: -1px 1px 2px rgba(255, 255, 255, 0.2), inset -1px 1px 1px rgba(0, 0, 0, 0.2); - background-color: #dedede; - background: -moz-linear-gradient(135deg, #dedede, #fcfcfc); - background: -o-linear-gradient(135deg, #fcfcfc, #dedede); - background: -webkit-gradient(linear, left top, right bottom, from(#fcfcfc), to(#dedede)); - -moz-border-radius: 3px; - -webkit-border-radius: 3px; - border-radius: 3px; - -webkit-transform: rotate(45deg); - -moz-transform: rotate(45deg); - -ms-transform: rotate(45deg); - -o-transform: rotate(45deg); - transform: rotate(45deg); -} -.openerp .oe_form ul.oe_form_steps li.oe_active, .openerp .oe_form ul.oe_form_steps_clickable li.oe_active { - background-color: #729fcf; - background-image: -webkit-gradient(linear, left top, left bottom, from(#729fcf), to(#3465a4)); - background-image: -webkit-linear-gradient(top, #729fcf, #3465a4); - background-image: -moz-linear-gradient(top, #729fcf, #3465a4); - background-image: -ms-linear-gradient(top, #729fcf, #3465a4); - background-image: -o-linear-gradient(top, #729fcf, #3465a4); - background-image: linear-gradient(to bottom, #729fcf, #3465a4); -} -.openerp .oe_form ul.oe_form_steps li.oe_active .arrow span, .openerp .oe_form ul.oe_form_steps_clickable li.oe_active .arrow span { - background-color: #3465a4; - background: -moz-linear-gradient(135deg, #3465a4, #729fcf); - background: -o-linear-gradient(135deg, #729fcf, #3465a4); - background: -webkit-gradient(linear, left top, right bottom, from(#729fcf), to(#3465a4)); -} -.openerp .oe_form ul.oe_form_steps li.oe_active .label, .openerp .oe_form ul.oe_form_steps_clickable li.oe_active .label { - color: white; - text-shadow: 0 1px 1px #729fcf, 0 -1px 1px #3465a4; -} -.openerp .oe_form ul.oe_form_steps_clickable li { - cursor: pointer; -} -.openerp .oe_form ul.oe_form_steps_clickable li:hover { - background-color: #e8e8e8; - background-image: -webkit-gradient(linear, left top, left bottom, from(#e8e8e8), to(#cacaca)); - background-image: -webkit-linear-gradient(top, #e8e8e8, #cacaca); - background-image: -moz-linear-gradient(top, #e8e8e8, #cacaca); - background-image: -ms-linear-gradient(top, #e8e8e8, #cacaca); - background-image: -o-linear-gradient(top, #e8e8e8, #cacaca); - background-image: linear-gradient(to bottom, #e8e8e8, #cacaca); -} -.openerp .oe_form ul.oe_form_steps_clickable li:hover .label { - text-shadow: 0 -1px 1px #fcfcfc, 0 1px 1px #dedede; -} -.openerp .oe_form ul.oe_form_steps_clickable li:hover .arrow span { - background-color: #e8e8e8; - background-image: -webkit-gradient(linear, left top, left bottom, from(#e8e8e8), to(#cacaca)); - background-image: -webkit-linear-gradient(top, #e8e8e8, #cacaca); - background-image: -moz-linear-gradient(top, #e8e8e8, #cacaca); - background-image: -ms-linear-gradient(top, #e8e8e8, #cacaca); - background-image: -o-linear-gradient(top, #e8e8e8, #cacaca); - background-image: linear-gradient(to bottom, #e8e8e8, #cacaca); -} -.openerp .oe_form ul.oe_form_steps_clickable li .label { - color: #7c7bad; -} -.openerp .oe_form ul.oe_form_steps_clickable li.oe_active:hover { - background-color: #4c85c2; - background-image: -webkit-gradient(linear, left top, left bottom, from(#4c85c2), to(#284d7d)); - background-image: -webkit-linear-gradient(top, #4c85c2, #284d7d); - background-image: -moz-linear-gradient(top, #4c85c2, #284d7d); - background-image: -ms-linear-gradient(top, #4c85c2, #284d7d); - background-image: -o-linear-gradient(top, #4c85c2, #284d7d); - background-image: linear-gradient(to bottom, #4c85c2, #284d7d); -} -.openerp .oe_form ul.oe_form_steps_clickable li.oe_active:hover .label { - text-shadow: 0 -1px 1px #729fcf, 0 1px 1px #3465a4; -} -.openerp .oe_form ul.oe_form_steps_clickable li.oe_active:hover .arrow span { - background-color: #284d7d; - background: -moz-linear-gradient(135deg, #284d7d, #4c85c2); - background: -o-linear-gradient(135deg, #4c85c2, #284d7d); - background: -webkit-gradient(linear, left top, right bottom, from(#4c85c2), to(#284d7d)); -} .openerp .oe_form .oe_subtotal_footer { width: 1% !important; } @@ -2463,27 +2275,137 @@ .openerp.ui-autocomplete li:not(.oe_m2o_dropdown_option) + li.oe_m2o_dropdown_option { margin-top: 10px; } -.openerp .oe_form_field_status { +.openerp ul.oe_form_status, .openerp ul.oe_form_status_clickable { + display: inline-block; margin: 0; - padding: 0; + padding: 0 18px 0 0; } -.openerp .oe_form_field_status ul, .openerp .oe_form_field_status ol { - margin: 0; +.openerp ul.oe_form_status li, .openerp ul.oe_form_status_clickable li { + display: inline-block; + list-style-type: none; + margin: 0 -20px 0 0; padding: 0; + background-color: #fcfcfc; + background-image: -webkit-gradient(linear, left top, left bottom, from(#fcfcfc), to(#dedede)); + background-image: -webkit-linear-gradient(top, #fcfcfc, #dedede); + background-image: -moz-linear-gradient(top, #fcfcfc, #dedede); + background-image: -ms-linear-gradient(top, #fcfcfc, #dedede); + background-image: -o-linear-gradient(top, #fcfcfc, #dedede); + background-image: linear-gradient(to bottom, #fcfcfc, #dedede); } -.openerp .oe_form_field_status ul ul, .openerp .oe_form_field_status ul ol, .openerp .oe_form_field_status ul li, .openerp .oe_form_field_status ol ul, .openerp .oe_form_field_status ol ol, .openerp .oe_form_field_status ol li { - margin: 0; - padding: 0; +.openerp ul.oe_form_status li:first-child .label, .openerp ul.oe_form_status_clickable li:first-child .label { + border-left: 1px solid #cacaca; + padding-left: 14px; } -.openerp .oe_form_field_status ul li, .openerp .oe_form_field_status ol li { - list-style-type: none; +.openerp ul.oe_form_status li:last-child, .openerp ul.oe_form_status_clickable li:last-child { + border-right: 1px solid #cacaca; +} +.openerp ul.oe_form_status li:last-child .label, .openerp ul.oe_form_status_clickable li:last-child .label { + padding-right: 14px; } -.openerp .oe_form_field_status ul, .openerp .oe_form_field_status ol, .openerp .oe_form_field_status li { +.openerp ul.oe_form_status li:last-child .arrow, .openerp ul.oe_form_status_clickable li:last-child .arrow { + display: none; +} +.openerp ul.oe_form_status li .label, .openerp ul.oe_form_status_clickable li .label { + color: #4c4c4c; + text-shadow: 0 1px 1px #fcfcfc, 0 -1px 1px #dedede; + padding: 7px; + display: inline-block; + padding-left: 24px; margin: 0; - padding: 0; + position: relative; } -.openerp .oe_form_field_status li { - list-style-type: none; +.openerp ul.oe_form_status li .arrow, .openerp ul.oe_form_status_clickable li .arrow { + width: 17px; + display: inline-block; + vertical-align: top; + overflow: hidden; + margin-left: -5px; +} +.openerp ul.oe_form_status li .arrow span, .openerp ul.oe_form_status_clickable li .arrow span { + position: relative; + width: 24px; + height: 24px; + display: inline-block; + margin-left: -12px; + margin-top: 3px; + box-shadow: -1px 1px 2px rgba(255, 255, 255, 0.2), inset -1px 1px 1px rgba(0, 0, 0, 0.2); + background-color: #dedede; + background: -moz-linear-gradient(135deg, #dedede, #fcfcfc); + background: -o-linear-gradient(135deg, #fcfcfc, #dedede); + background: -webkit-gradient(linear, left top, right bottom, from(#fcfcfc), to(#dedede)); + -moz-border-radius: 3px; + -webkit-border-radius: 3px; + border-radius: 3px; + -webkit-transform: rotate(45deg); + -moz-transform: rotate(45deg); + -ms-transform: rotate(45deg); + -o-transform: rotate(45deg); + transform: rotate(45deg); +} +.openerp ul.oe_form_status li.oe_active, .openerp ul.oe_form_status_clickable li.oe_active { + background-color: #729fcf; + background-image: -webkit-gradient(linear, left top, left bottom, from(#729fcf), to(#3465a4)); + background-image: -webkit-linear-gradient(top, #729fcf, #3465a4); + background-image: -moz-linear-gradient(top, #729fcf, #3465a4); + background-image: -ms-linear-gradient(top, #729fcf, #3465a4); + background-image: -o-linear-gradient(top, #729fcf, #3465a4); + background-image: linear-gradient(to bottom, #729fcf, #3465a4); +} +.openerp ul.oe_form_status li.oe_active .arrow span, .openerp ul.oe_form_status_clickable li.oe_active .arrow span { + background-color: #3465a4; + background: -moz-linear-gradient(135deg, #3465a4, #729fcf); + background: -o-linear-gradient(135deg, #729fcf, #3465a4); + background: -webkit-gradient(linear, left top, right bottom, from(#729fcf), to(#3465a4)); +} +.openerp ul.oe_form_status li.oe_active .label, .openerp ul.oe_form_status_clickable li.oe_active .label { + color: white; + text-shadow: 0 1px 1px #729fcf, 0 -1px 1px #3465a4; +} +.openerp ul.oe_form_status_clickable li { + cursor: pointer; +} +.openerp ul.oe_form_status_clickable li:hover { + background-color: #e8e8e8; + background-image: -webkit-gradient(linear, left top, left bottom, from(#e8e8e8), to(#cacaca)); + background-image: -webkit-linear-gradient(top, #e8e8e8, #cacaca); + background-image: -moz-linear-gradient(top, #e8e8e8, #cacaca); + background-image: -ms-linear-gradient(top, #e8e8e8, #cacaca); + background-image: -o-linear-gradient(top, #e8e8e8, #cacaca); + background-image: linear-gradient(to bottom, #e8e8e8, #cacaca); +} +.openerp ul.oe_form_status_clickable li:hover .label { + text-shadow: 0 -1px 1px #fcfcfc, 0 1px 1px #dedede; +} +.openerp ul.oe_form_status_clickable li:hover .arrow span { + background-color: #e8e8e8; + background-image: -webkit-gradient(linear, left top, left bottom, from(#e8e8e8), to(#cacaca)); + background-image: -webkit-linear-gradient(top, #e8e8e8, #cacaca); + background-image: -moz-linear-gradient(top, #e8e8e8, #cacaca); + background-image: -ms-linear-gradient(top, #e8e8e8, #cacaca); + background-image: -o-linear-gradient(top, #e8e8e8, #cacaca); + background-image: linear-gradient(to bottom, #e8e8e8, #cacaca); +} +.openerp ul.oe_form_status_clickable li .label { + color: #7c7bad; +} +.openerp ul.oe_form_status_clickable li.oe_active:hover { + background-color: #4c85c2; + background-image: -webkit-gradient(linear, left top, left bottom, from(#4c85c2), to(#284d7d)); + background-image: -webkit-linear-gradient(top, #4c85c2, #284d7d); + background-image: -moz-linear-gradient(top, #4c85c2, #284d7d); + background-image: -ms-linear-gradient(top, #4c85c2, #284d7d); + background-image: -o-linear-gradient(top, #4c85c2, #284d7d); + background-image: linear-gradient(to bottom, #4c85c2, #284d7d); +} +.openerp ul.oe_form_status_clickable li.oe_active:hover .label { + text-shadow: 0 -1px 1px #729fcf, 0 1px 1px #3465a4; +} +.openerp ul.oe_form_status_clickable li.oe_active:hover .arrow span { + background-color: #284d7d; + background: -moz-linear-gradient(135deg, #284d7d, #4c85c2); + background: -o-linear-gradient(135deg, #4c85c2, #284d7d); + background: -webkit-gradient(linear, left top, right bottom, from(#4c85c2), to(#284d7d)); } .openerp .oe_form .oe_form_field_one2many > .oe_view_manager .oe_list_pager_single_page { display: none; @@ -2545,7 +2467,7 @@ .openerp .oe_list.oe_list_editable.oe_editing .oe_m2o_cm_button { display: none; } -.openerp .oe_list.oe_list_editable.oe_editing .oe_form_field input { +.openerp .oe_list.oe_list_editable.oe_editing .oe_form_field input, .openerp .oe_list.oe_list_editable.oe_editing .oe_form_field textarea { height: 27px; } .openerp .oe_list.oe_list_editable.oe_editing .oe_form_field input, .openerp .oe_list.oe_list_editable.oe_editing .oe_form_field textarea { @@ -2555,9 +2477,6 @@ border: 1px solid #aaaaff; margin: 0; } -.openerp .oe_list.oe_list_editable.oe_editing .oe_form_field textarea { - height: 60px; -} .openerp .oe_list.oe_list_editable.oe_editing .oe_form_field.oe_form_field_float input, .openerp .oe_list.oe_list_editable.oe_editing .oe_form_field.oe_form_view_integer input { text-align: right; } @@ -2574,10 +2493,13 @@ .openerp .oe_form .oe_form_field_many2many > .oe_list .oe_list_pager_single_page { display: none; } +.openerp .oe_list_buttons .oe_alternative { + visibility: hidden; +} .openerp .oe_list_buttons .oe_list_save, .openerp .oe_list_buttons .oe_list_discard { display: none; } -.openerp .oe_list_buttons.oe_editing .oe_list_add, .openerp .oe_list_buttons.oe_editing .oe_list_button_import { +.openerp .oe_list_buttons.oe_editing .oe_list_add { display: none; } .openerp .oe_list_buttons.oe_editing .oe_list_save { @@ -2586,6 +2508,9 @@ .openerp .oe_list_buttons.oe_editing .oe_list_discard { display: inline; } +.openerp .oe_list_buttons.oe_editing .oe_alternative { + visibility: visible; +} .openerp .oe_list { position: relative; } @@ -2826,16 +2751,6 @@ float: right; color: #333333; } -.openerp .oe_semantic_html li { - list-style-type: disc; - display: list-item; -} -.openerp .oe_semantic_html ul { - padding-left: 1em; -} -.openerp .oe_semantic_html p { - color: #4c4c4c !important; -} .kitten-mode-activated { background-image: url(http://placekitten.com/g/1365/769); diff --git a/addons/web/static/src/css/base.sass b/addons/web/static/src/css/base.sass index 5e346b32df2..e3cb661d580 100644 --- a/addons/web/static/src/css/base.sass +++ b/addons/web/static/src/css/base.sass @@ -124,19 +124,6 @@ $sheet-max-width: 860px content: $icon-name color: $color -@mixin ul-html-override() - margin: 0 - padding: 0 - ul, ol, li - margin: 0 - padding: 0 - li - list-style-type: none - -@mixin semantic-html-override() - ul, ol - @include ul-html-override() - // }}} @media print @@ -200,10 +187,6 @@ $sheet-max-width: 860px vertical-align: middle h4 margin: 4px 0 - .oe_semantic_html_override - @include semantic-html-override - ul.oe_semantic_html_override - @include ul-html-override // }}} // Button style {{{ a.button:link, a.button:visited, button, input[type='submit'], .ui-dialog-buttonpane .ui-dialog-buttonset .ui-button @@ -283,7 +266,7 @@ $sheet-max-width: 860px margin: 0 @include radius(0 0 2px 2px) button - margin: 0 + margin: 0 4px 0 0 .ui-dialog-buttonset float: left .ui-button @@ -509,8 +492,6 @@ $sheet-max-width: 860px padding: 0 16px list-style: none zoom: 1 - @include ul-html-override - @include semantic-html-override .oe_notebook.ui-corner-all @include radius(0) .oe_notebook:before, .oe_notebook:after @@ -567,6 +548,8 @@ $sheet-max-width: 860px top: 26px left: 0 z-index: 1 + margin: 0 + padding: 0 border: 1px solid $tag-border background: white padding: 4px 0 @@ -582,6 +565,7 @@ $sheet-max-width: 860px float: none display: block position: relative + margin: 0 padding: 2px 8px > a white-space: nowrap @@ -670,9 +654,10 @@ $sheet-max-width: 860px text-align: center font-size: 14px height: 100% - li + ul, li + margin: 0 list-style-type: none - padding-bottom: 4px + padding: 0 0 4px 0 button float: right display: inline-block @@ -730,7 +715,6 @@ $sheet-max-width: 860px text-align: left @include radius(8px) @include box-shadow(0 0 18px rgba(0, 0, 0, 0.9)) - @include semantic-html-override h2 margin-top: 0 font-size: 18px @@ -795,7 +779,6 @@ $sheet-max-width: 860px width: 100% height: 31px @include vertical-gradient(#646060, #262626) - @include semantic-html-override .oe_topbar_item display: block padding: 5px 10px 7px @@ -846,7 +829,6 @@ $sheet-max-width: 860px border-right: 1px solid $tag-border text-shadow: 0 1px 1px white padding-bottom: 16px - @include semantic-html-override a.oe_logo width: 220px display: block @@ -897,6 +879,9 @@ $sheet-max-width: 860px padding: 0 margin: 0 > li + list-style-type: none + padding: 0 + margin: 0 float: left > a display: block @@ -926,7 +911,9 @@ $sheet-max-width: 860px display: inline-block li position: relative + margin: 0 padding: 1px 0 1px 20px !important + list-style-type: none a display: block color: #4c4c4c @@ -1001,6 +988,12 @@ $sheet-max-width: 860px text-decoration: underline > div height: 100% + .oe_breadcrumb_item:not(:last-child) + display: inline-block + max-width: 7em + white-space: nowrap + overflow: hidden + text-overflow: ellipsis // }}} // ViewManager common {{{ .oe_view_manager @@ -1012,14 +1005,6 @@ $sheet-max-width: 860px table.oe_view_manager_header width: 100% table-layout: fixed - ul - padding: 0 - margin-right: 0 - margin-top: 0 - margin-bottom: 0 - li - list-style-type: none - margin: 0 .oe_header_row //min-height: 26px //line-height: 26px @@ -1074,6 +1059,9 @@ $sheet-max-width: 860px .oe_pager_value float: left margin-right: 8px + ul.oe_pager_group + padding: 0 + margin: 0 .oe_pager_group float: left height: 24px @@ -1086,6 +1074,8 @@ $sheet-max-width: 860px height: 24px line-height: 24px padding: 0 + margin: 0 + list-style-type: none float: left border-right: 1px solid #ababab &:last-child @@ -1104,13 +1094,16 @@ $sheet-max-width: 860px // }}} // ViewManager.switches {{{ .oe_view_manager_switch - margin-left: 8px + padding: 0 + margin: 0 0 0 8px li - text-align: center + margin: 0 width: 24px height: 24px line-height: 16px padding: 0 + text-align: center + list-style-type: none a position: relative .oe_vm_switch_list:after, .oe_vm_switch_tree:after @@ -1571,72 +1564,6 @@ $sheet-max-width: 860px padding: 1px 0 .oe_form_group_cell div div padding: 1px 0 - ul.oe_form_steps, ul.oe_form_steps_clickable - display: inline-block - padding-right: 18px - li - display: inline-block - margin-right: -20px - @include vertical-gradient(#fcfcfc, #dedede) - &:first-child .label - border-left: 1px solid #cacaca - padding-left: 14px - &:last-child - border-right: 1px solid #cacaca - .label - padding-right: 14px - .arrow - display: none - .label - color: #4c4c4c - text-shadow: 0 1px 1px #fcfcfc, 0 -1px 1px #dedede - padding: 7px - display: inline-block - padding-left: 24px - margin: 0 - position: relative - .arrow - width: 17px - display: inline-block - vertical-align: top - overflow: hidden - margin-left: -5px - span - position: relative - width: 24px - height: 24px - display: inline-block - margin-left: -12px - margin-top: 3px - box-shadow: -1px 1px 2px rgba(255,255,255,0.2), inset -1px 1px 1px rgba(0,0,0,0.2) - @include skew-gradient(#fcfcfc, #dedede) - @include radius(3px) - @include transform(rotate(45deg)) - li.oe_active - @include vertical-gradient(#729fcf, #3465a4) - .arrow span - @include skew-gradient(#729fcf, #3465a4) - .label - color: white - text-shadow: 0 1px 1px #729fcf, 0 -1px 1px #3465a4 - ul.oe_form_steps_clickable - li - cursor: pointer - &:hover - @include vertical-gradient(darken(#fcfcfc, 8%), darken(#dedede, 8%)) - .label - text-shadow: 0 -1px 1px #fcfcfc, 0 1px 1px #dedede - .arrow span - @include vertical-gradient(darken(#fcfcfc, 8%), darken(#dedede, 8%)) - .label - color: $link-color - li.oe_active - &:hover - @include vertical-gradient(darken(#729fcf, 10%), darken(#3465a4, 10%)) - .label - text-shadow: 0 -1px 1px #729fcf, 0 1px 1px #3465a4 - .arrow span - @include skew-gradient(darken(#729fcf, 10%), darken(#3465a4, 10%)) .oe_subtotal_footer width: 1% !important td.oe_form_group_cell @@ -1878,9 +1805,75 @@ $sheet-max-width: 860px margin-top: 10px // }}} // FormView.fieldstatus {{{ - .oe_form_field_status - @include semantic-html-override - @include ul-html-override + ul.oe_form_status, ul.oe_form_status_clickable + display: inline-block + margin: 0 + padding: 0 18px 0 0 + li + display: inline-block + list-style-type: none + margin: 0 -20px 0 0 + padding: 0 + @include vertical-gradient(#fcfcfc, #dedede) + &:first-child .label + border-left: 1px solid #cacaca + padding-left: 14px + &:last-child + border-right: 1px solid #cacaca + .label + padding-right: 14px + .arrow + display: none + .label + color: #4c4c4c + text-shadow: 0 1px 1px #fcfcfc, 0 -1px 1px #dedede + padding: 7px + display: inline-block + padding-left: 24px + margin: 0 + position: relative + .arrow + width: 17px + display: inline-block + vertical-align: top + overflow: hidden + margin-left: -5px + span + position: relative + width: 24px + height: 24px + display: inline-block + margin-left: -12px + margin-top: 3px + box-shadow: -1px 1px 2px rgba(255,255,255,0.2), inset -1px 1px 1px rgba(0,0,0,0.2) + @include skew-gradient(#fcfcfc, #dedede) + @include radius(3px) + @include transform(rotate(45deg)) + li.oe_active + @include vertical-gradient(#729fcf, #3465a4) + .arrow span + @include skew-gradient(#729fcf, #3465a4) + .label + color: white + text-shadow: 0 1px 1px #729fcf, 0 -1px 1px #3465a4 + ul.oe_form_status_clickable + li + cursor: pointer + &:hover + @include vertical-gradient(darken(#fcfcfc, 8%), darken(#dedede, 8%)) + .label + text-shadow: 0 -1px 1px #fcfcfc, 0 1px 1px #dedede + .arrow span + @include vertical-gradient(darken(#fcfcfc, 8%), darken(#dedede, 8%)) + .label + color: $link-color + li.oe_active + &:hover + @include vertical-gradient(darken(#729fcf, 10%), darken(#3465a4, 10%)) + .label + text-shadow: 0 -1px 1px #729fcf, 0 1px 1px #3465a4 + .arrow span + @include skew-gradient(darken(#729fcf, 10%), darken(#3465a4, 10%)) // }}} // FormView.one2many {{{ .oe_form .oe_form_field_one2many > .oe_view_manager @@ -1944,14 +1937,12 @@ $sheet-max-width: 860px .oe_m2o_cm_button display: none .oe_form_field - input + input, textarea height: $row-height input, textarea @include radius(0) border: 1px solid #aaf margin: 0 - textarea - height: 60px &.oe_form_field_float,&.oe_form_view_integer input text-align: right @@ -1971,15 +1962,19 @@ $sheet-max-width: 860px // }}} // ListView {{{ .oe_list_buttons + .oe_alternative + visibility: hidden .oe_list_save, .oe_list_discard display: none &.oe_editing - .oe_list_add, .oe_list_button_import + .oe_list_add display: none .oe_list_save display: inline-block .oe_list_discard display: inline + .oe_alternative + visibility: visible .oe_list position: relative @@ -2166,15 +2161,6 @@ $sheet-max-width: 860px float: right color: #333 // }}} - .oe_semantic_html // a style to use normal html - li - list-style-type: disc - display: list-item - ul - padding-left: 1em - p - color: #4C4C4C !important - // Kitten Mode {{{ .kitten-mode-activated background-image: url(http://placekitten.com/g/1365/769) diff --git a/addons/web/static/src/css/data_import.css b/addons/web/static/src/css/data_import.css deleted file mode 100644 index 47cd52aa081..00000000000 --- a/addons/web/static/src/css/data_import.css +++ /dev/null @@ -1,46 +0,0 @@ -.openerp .oe_import_grid { - border: none; - border-collapse: collapse; -} -.openerp .oe_import_grid-header .oe_import_grid-cell { - background: url(../img/gradientlinebg.gif) repeat-x #CCCCCC; - border-bottom: 1px solid #E3E3E3; - font-weight: bold; - text-align: left; -} -.openerp .oe_import_grid-row .oe_import_grid-cell { - border-bottom: 1px solid #E3E3E3; -} - -.openerp .oe_import_no_result .oe_import_result { - display: none; -} -.openerp .oe_import fieldset { - cursor: pointer; -} -.openerp .oe_import fieldset legend:before { - content: '\25BC '; -} -.openerp .oe_import fieldset.oe_closed legend:before { - content: '\25B6 '; -} -.openerp .oe_import fieldset.oe_closed table { - display: none; -} -.openerp .oe_import .separator.horizontal { - font-weight: bold; - border-bottom-width: 1px; - margin: 6px 4px 6px 1px; - height: 20px; -} -.openerp .duplicate_fld{ - background-color:#FF6666; -} -.openerp .select_fld{ - background: none repeat scroll 0 0 white; -} -.openerp .ui-autocomplete { - max-height: 300px; - overflow-y: auto; - padding-right: 20px; -} diff --git a/addons/web/static/src/js/data_import.js b/addons/web/static/src/js/data_import.js deleted file mode 100644 index 3c677b0ec26..00000000000 --- a/addons/web/static/src/js/data_import.js +++ /dev/null @@ -1,393 +0,0 @@ -openerp.web.data_import = function(instance) { -var QWeb = instance.web.qweb, - _t = instance.web._t; -/** - * Safari does not deal well at all with raw JSON data being returned. As a - * result, we're going to cheat by using a pseudo-jsonp: instead of getting - * JSON data in the iframe, we're getting a ``script`` tag which consists of a - * function call and the returned data (the json dump). - * - * The function is an auto-generated name bound to ``window``, which calls - * back into the callback provided here. - * - * @param {Object} form the form element (DOM or jQuery) to use in the call - * @param {Object} attributes jquery.form attributes object - * @param {Function} callback function to call with the returned data - */ -function jsonp(form, attributes, callback) { - attributes = attributes || {}; - var options = {jsonp: _.uniqueId('import_callback_')}; - window[options.jsonp] = function () { - delete window[options.jsonp]; - callback.apply(null, arguments); - }; - if ('data' in attributes) { - _.extend(attributes.data, options); - } else { - _.extend(attributes, {data: options}); - } - $(form).ajaxSubmit(attributes); -} - -instance.web.DataImport = instance.web.Dialog.extend({ - template: 'ImportDataView', - dialog_title: {toString: function () { return _t("Import Data"); }}, - init: function(parent, dataset){ - var self = this; - this._super(parent, {}); - this.model = parent.model; - this.fields = []; - this.all_fields = []; - this.fields_with_defaults = []; - this.required_fields = null; - - var convert_fields = function (root, prefix) { - prefix = prefix || ''; - _(root.fields).each(function (f) { - self.all_fields.push(prefix + f.name); - if (f.fields) { - convert_fields(f, prefix + f.id + '/'); - } - }); - }; - this.ready = $.Deferred.queue().then(function () { - self.required_fields = _(self.fields).chain() - .filter(function (field) { - return field.required && - !_.include(self.fields_with_defaults, field.id); }) - .pluck('id') - .uniq() - .value(); - convert_fields(self); - self.all_fields.sort(); - }); - }, - start: function() { - var self = this; - this._super(); - this.open({ - buttons: [ - {text: _t("Close"), click: function() { self.destroy(); }}, - {text: _t("Import File"), click: function() { self.do_import(); }, 'class': 'oe_import_dialog_button'} - ], - close: function(event, ui) { - self.destroy(); - } - }); - this.toggle_import_button(false); - this.$el.find('#csvfile').change(this.on_autodetect_data); - this.$el.find('fieldset').change(this.on_autodetect_data); - this.$el.delegate('fieldset legend', 'click', function() { - $(this).parent().toggleClass('oe_closed'); - }); - this.ready.push(new instance.web.DataSet(this, this.model).call( - 'fields_get', [], function (fields) { - self.graft_fields(fields); - self.ready.push(new instance.web.DataSet(self, self.model) - .default_get(_.pluck(self.fields, 'id')).then(function (fields) { - _.each(fields, function(val, key) { - if (val) { - self.fields_with_defaults.push(key); - } - }); - }) - ) - })); - }, - graft_fields: function (fields, parent, level) { - parent = parent || this; - level = level || 0; - - var self = this; - if (level === 0) { - parent.fields.push({ - id: 'id', - name: 'id', - string: _t('External ID'), - required: false - }); - } - _(fields).each(function (field, field_name) { - // Ignore spec for id field - // Don't import function fields (function and related) - if (field_name === 'id') { - return; - } - // Skip if there's no state which could disable @readonly, - // if a field is ever always readonly we can't import it - if (field.readonly) { - // no states at all - if (_.isEmpty(field.states)) { return; } - // no state altering @readonly - if (!_.any(field.states, function (modifiers) { - return _(modifiers).chain().pluck(0).contains('readonly').value(); - })) { return; } - } - - var f = { - id: field_name, - name: field_name, - string: field.string, - required: field.required - }; - - switch (field.type) { - case 'many2many': - case 'many2one': - // push a copy for the bare many2one field, to allow importing - // using name_search too - even if we default to exporting the XML ID - var many2one_field = _.extend({}, f) - parent.fields.push(many2one_field); - f.name += '/id'; - break; - case 'one2many': - f.name += '/id'; - f.fields = []; - // only fetch sub-fields to a depth of 2 levels - if (level < 2) { - self.ready.push(new instance.web.DataSet(self, field.relation).call( - 'fields_get', [], function (fields) { - self.graft_fields(fields, f, level+1); - })); - } - break; - } - parent.fields.push(f); - }); - }, - toggle_import_button: function (newstate) { - instance.web.dialog(this.$el, 'widget') - .find('.oe_import_dialog_button') - .button('option', 'disabled', !newstate); - }, - do_import: function() { - if(!this.$el.find('#csvfile').val()) { return; } - var lines_to_skip = parseInt(this.$el.find('#csv_skip').val(), 10); - var with_headers = this.$el.find('#file_has_headers').prop('checked'); - if (!lines_to_skip && with_headers) { - lines_to_skip = 1; - } - var indices = [], fields = []; - this.$el.find(".sel_fields").each(function(index, element) { - var val = element.value; - if (!val) { - return; - } - indices.push(index); - fields.push(val); - }); - - jsonp(this.$el.find('#import_data'), { - url: '/web/import/import_data', - data: { - model: this.model, - meta: JSON.stringify({ - skip: lines_to_skip, - indices: indices, - fields: fields - }) - } - }, this.on_import_results); - }, - on_autodetect_data: function() { - if(!this.$el.find('#csvfile').val()) { return; } - jsonp(this.$el.find('#import_data'), { - url: '/web/import/detect_data' - }, this.on_import_results); - }, - on_import_results: function(results) { - this.$el.find('#result').empty(); - var headers, result_node = this.$el.find("#result"); - - if (results['error']) { - result_node.append(QWeb.render('ImportView.error', { - 'error': results['error']})); - this.$el.find('fieldset').removeClass('oe_closed'); - return; - } - if (results['success']) { - if (this.getParent().getParent().active_view == "list") { - this.getParent().reload_content(); - } - this.destroy(); - return; - } - - if (results['records']) { - var lines_to_skip = parseInt(this.$el.find('#csv_skip').val(), 10), - with_headers = this.$el.find('#file_has_headers').prop('checked'); - headers = with_headers ? results.records[0] : null; - - result_node.append(QWeb.render('ImportView.result', { - 'headers': headers, - 'records': lines_to_skip ? results.records.slice(lines_to_skip) - : with_headers ? results.records.slice(1) - : results.records - })); - this.$el.find('fieldset').addClass('oe_closed'); - } - this.$el.find('form').removeClass('oe_import_no_result'); - - this.$el.delegate('.oe_m2o_drop_down_button', 'click', function () { - $(this).prev('input').focus(); - }); - - var self = this; - this.ready.then(function () { - var $fields = self.$el.find('.sel_fields').bind('blur', function () { - if (this.value && !_(self.all_fields).contains(this.value)) { - this.value = ''; - } - }).autocomplete({ - minLength: 0, - source: self.all_fields, - change: self.on_check_field_values - }).focus(function () { - $(this).autocomplete('search'); - }); - // Column auto-detection - _(headers).each(function (header, index) { - var field_name = self.match_column_to_field(header); - if (field_name) { - $fields.eq(index).val(field_name); - } - }); - self.on_check_field_values(); - }); - }, - /** - * Returns the name of the field (nested) matching the provided column name - * - * @param {String} name column name to look for - * @param {Array} [fields] fields to look into for the provided name - * @returns {String|undefined} - */ - match_column_to_field: function (name, fields) { - fields = fields || this.fields; - var f; - f = _(fields).detect(function (field) { - return field.name === name - }); - if (!f) { - f = _(fields).detect(function (field) { - // TODO: levenshtein between header and field.string - return field.string.toLowerCase() === name.toLowerCase(); - }); - } - if (f) { return f.name; } - - // if ``name`` is a path (o2m), we need to recurse through its .fields - var index = name.indexOf('/'); - if (index === -1) { return undefined; } - // Get the first path section, try to find the matching field - var column_name = name.substring(0, index); - f = _(fields).detect(function (field) { - // field.name for o2m is $foo/id, so we want to match on id - return field.id === column_name; - }); - if (!f) { - f = _(fields).detect(function (field) { - return field.string.toLowerCase() === column_name.toLowerCase(); - }); - } - if (!f) { return undefined; } - - // if we found a matching field for the first path section, recurse in - // its own .fields to try and get the rest of the path matched - var rest = this.match_column_to_field( - name.substring(index+1), f.fields); - if (!rest) { return undefined; } - return f.id + '/' + rest; - }, - /** - * Looks through all the field selections, and tries to find if two - * (or more) columns were matched to the same model field. - * - * Returns a map of the multiply-mapped fields to an array of offending - * columns (not actually columns, but the inputs containing the same field - * names). - * - * Also has the side-effect of marking the discovered inputs with the class - * ``duplicate_fld``. - * - * @returns {Object<String, Array<String>>} map of duplicate field matches to same-valued inputs - */ - find_duplicate_fields: function() { - // Maps values to DOM nodes, in order to discover duplicates - var values = {}, duplicates = {}; - this.$el.find(".sel_fields").each(function(index, element) { - var value = element.value; - var $el = $(element).removeClass('duplicate_fld'); - if (!value) { return; } - - if (!(value in values)) { - values[value] = element; - } else { - var same_valued_field = values[value]; - if (value in duplicates) { - duplicates[value].push(element); - } else { - duplicates[value] = [same_valued_field, element]; - } - $el.add(same_valued_field).addClass('duplicate_fld'); - } - }); - return duplicates; - }, - on_check_field_values: function () { - this.$el.find("#message, #msg").remove(); - - var required_valid = this.check_required(); - - var duplicates = this.find_duplicate_fields(); - if (_.isEmpty(duplicates)) { - this.toggle_import_button(required_valid); - } else { - var $err = $('<div id="msg" style="color: red;">'+_t("Destination fields should only be selected once, some fields are selected more than once:")+'</div>').insertBefore(this.$el.find('#result')); - var $dupes = $('<dl>').appendTo($err); - _(duplicates).each(function(elements, value) { - $('<dt>').text(value).appendTo($dupes); - _(elements).each(function(element) { - var cell = $(element).closest('td'); - $('<dd>').text(cell.parent().children().index(cell)).appendTo($dupes); - }); - }); - this.toggle_import_button(false); - } - - }, - check_required: function() { - var self = this; - if (!self.required_fields.length) { return true; } - - // Resolve field id based on column name, as there may be - // several ways to provide the value for a given field and - // thus satisfy the requirement. - // (e.g. m2o_id or m2o_id/id columns may be provided) - var resolve_field_id = function(column_name) { - var f = _.detect(self.fields, function(field) { - return field.name === column_name; - }); - if (!f) { return column_name; }; - return f.id; - }; - - var selected_fields = _(this.$el.find('.sel_fields').get()).chain() - .pluck('value') - .compact() - .map(resolve_field_id) - .value(); - - var missing_fields = _.difference(this.required_fields, selected_fields); - if (missing_fields.length) { - this.$el.find("#result").before('<div id="message" style="color:red">' + _t("*Required Fields are not selected :") + missing_fields + '.</div>'); - return false; - } - return true; - }, - destroy: function() { - this.$el.remove(); - this._super(); - } -}); -}; diff --git a/addons/web/static/src/js/view_form.js b/addons/web/static/src/js/view_form.js index 08c9b96660e..7d328f012fe 100644 --- a/addons/web/static/src/js/view_form.js +++ b/addons/web/static/src/js/view_form.js @@ -321,7 +321,7 @@ instance.web.FormView = instance.web.View.extend(instance.web.form.FieldManagerM } this.datarecord = record; this._actualize_mode(); - this.set({ 'title' : record.id ? record.display_name : "New record" }); + this.set({ 'title' : record.id ? record.display_name : "New" }); if (this.qweb) { this.kill_current_form(); @@ -1399,6 +1399,10 @@ instance.web.form.FormRenderingEngine = instance.web.form.FormRenderingEngineInt if (! page.__ic) return; page.__ic.on("change:effective_invisible", null, function() { + if (!page.__ic.get('effective_invisible')) { + $new_notebook.tabs('select', i); + return; + } var current = $new_notebook.tabs("option", "selected"); if (! pages[current].__ic || ! pages[current].__ic.get("effective_invisible")) return; @@ -2400,10 +2404,6 @@ instance.web.form.FieldTextHtml = instance.web.form.AbstractField.extend(instanc template: 'FieldTextHtml', init: function() { this._super.apply(this, arguments); - if (this.field.type !== 'html' && ! this.options.safe) { - throw new Error(_.str.sprintf( - _t("Error with field %s, it is not allowed to use the widget 'html' with any other field type than 'html'"), this.string)); - } }, initialize_content: function() { var self = this; @@ -2437,7 +2437,7 @@ instance.web.form.FieldTextHtml = instance.web.form.AbstractField.extend(instanc }, render_value: function() { if (! this.get("effective_readonly")) { - this.$textarea.val(this.get('value')); + this.$textarea.val(this.get('value') || ''); this._updating_editor = true; this.$cleditor.updateFrame(); this._updating_editor = false; @@ -2712,8 +2712,10 @@ instance.web.form.CompletionFieldMixin = { _create_context: function(name) { var tmp = {}; var field = (this.options || {}).create_name_field; - if (field !== false && (this.options || {}).quick_create !== false) - tmp["default_" + field] = name || "name"; + if (field === undefined) + field = "name"; + if (field !== false && name && (this.options || {}).quick_create !== false) + tmp["default_" + field] = name; return tmp; }, }; @@ -2773,7 +2775,8 @@ instance.web.form.FieldMany2One = instance.web.form.AbstractField.extend(instanc this.$drop_down = this.$el.find(".oe_m2o_drop_down_button"); this.$follow_button = $(".oe_m2o_cm_button", this.$el); - this.$follow_button.click(function() { + this.$follow_button.click(function(ev) { + ev.preventDefault(); if (!self.get('value')) { self.focus(); return; @@ -2951,14 +2954,10 @@ instance.web.form.FieldMany2One = instance.web.form.AbstractField.extend(instanc var lines = _.escape(str).split("\n"); var link = ""; var follow = ""; - if (! this.options.highlight_first_line) { - link = lines.join("<br />"); - } else { - link = lines[0]; - follow = _.rest(lines).join("<br />"); - if (follow) - link += "<br />"; - } + link = lines[0]; + follow = _.rest(lines).join("<br />"); + if (follow) + link += "<br />"; var $link = this.$el.find('.oe_form_uri') .unbind('click') .html(link); diff --git a/addons/web/static/src/js/view_list.js b/addons/web/static/src/js/view_list.js index df61e9bd6bd..015cd1636f1 100644 --- a/addons/web/static/src/js/view_list.js +++ b/addons/web/static/src/js/view_list.js @@ -21,8 +21,6 @@ instance.web.ListView = instance.web.View.extend( /** @lends instance.web.ListVi // whether the view rows can be reordered (via vertical drag & drop) 'reorderable': true, 'action_buttons': true, - // if true, the 'Import', 'Export', etc... buttons will be shown - 'import_enabled': true, }, /** * Core class for list-type displays. @@ -281,7 +279,7 @@ instance.web.ListView = instance.web.View.extend( /** @lends instance.web.ListVi self.reload_content(); }); - // Add button and Import link + // Add button if (!this.$buttons) { this.$buttons = $(QWeb.render("ListView.buttons", {'widget':self})); if (this.options.$buttons) { @@ -292,10 +290,6 @@ instance.web.ListView = instance.web.View.extend( /** @lends instance.web.ListVi this.$buttons.find('.oe_list_add') .click(this.proxy('do_add_record')) .prop('disabled', grouped); - this.$buttons.on('click', '.oe_list_button_import', function() { - self.on_sidebar_import(); - return false; - }); } // Pager @@ -358,7 +352,6 @@ instance.web.ListView = instance.web.View.extend( /** @lends instance.web.ListVi this.sidebar = new instance.web.Sidebar(this); this.sidebar.appendTo(this.options.$sidebar); this.sidebar.add_items('other', _.compact([ - self.is_action_enabled('create') && { label: _t("Import"), callback: this.on_sidebar_import }, { label: _t("Export"), callback: this.on_sidebar_export }, self.is_action_enabled('delete') && { label: _t('Delete'), callback: this.do_delete_selected } ])); diff --git a/addons/web/static/src/js/views.js b/addons/web/static/src/js/views.js index d0a5b1841bb..eab00d8b295 100644 --- a/addons/web/static/src/js/views.js +++ b/addons/web/static/src/js/views.js @@ -20,7 +20,7 @@ instance.web.ActionManager = instance.web.Widget.extend({ }, start: function() { this._super.apply(this, arguments); - this.$el.on('click', '.oe_breadcrumb_item', this.on_breadcrumb_clicked); + this.$el.on('click', 'a.oe_breadcrumb_item', this.on_breadcrumb_clicked); }, dialog_stop: function () { if (this.dialog) { @@ -95,7 +95,7 @@ instance.web.ActionManager = instance.web.Widget.extend({ break; } } - var subindex = $e.parent().find('.oe_breadcrumb_item[data-id=' + $e.data('id') + ']').index($e); + var subindex = $e.parent().find('a.oe_breadcrumb_item[data-id=' + $e.data('id') + ']').index($e); this.select_breadcrumb(index, subindex); }, select_breadcrumb: function(index, subindex) { @@ -148,7 +148,7 @@ instance.web.ActionManager = instance.web.Widget.extend({ for (var j = 0; j < tit.length; j += 1) { var label = _.escape(tit[j]); if (i === this.breadcrumbs.length - 1 && j === tit.length - 1) { - titles.push(label); + titles.push(_.str.sprintf('<span class="oe_breadcrumb_item">%s</span>', label)); } else { titles.push(_.str.sprintf('<a href="#" class="oe_breadcrumb_item" data-id="%s">%s</a>', item.id, label)); } @@ -566,7 +566,8 @@ instance.web.ViewManager = instance.web.Widget.extend({ } return controller.get('title'); }); - if (next && next.action && next.action.res_id && self.active_view === 'form' && self.model === next.action.res_model && id === next.action.res_id) { + if (next && next.action && next.action.res_id && self.dataset && + self.active_view === 'form' && self.dataset.model === next.action.res_model && id === next.action.res_id) { // If the current active view is a formview and the next item in the breadcrumbs // is an action on same object (model / res_id), then we omit the current formview's title titles.pop(); @@ -1270,9 +1271,6 @@ instance.web.View = instance.web.Widget.extend({ }, do_search: function(view) { }, - on_sidebar_import: function() { - new instance.web.DataImport(this, this.dataset).open(); - }, on_sidebar_export: function() { new instance.web.DataExport(this, this.dataset).open(); }, diff --git a/addons/web/static/src/xml/base.xml b/addons/web/static/src/xml/base.xml index 9ec53a89863..b6b89a4f1ec 100644 --- a/addons/web/static/src/xml/base.xml +++ b/addons/web/static/src/xml/base.xml @@ -427,9 +427,9 @@ <div class="oe_view_manager"> <table class="oe_view_manager_header"> <col width="20%"/> - <col width="25%"/> - <col width="20%"/> <col width="35%"/> + <col width="15%"/> + <col width="30%"/> <tr class="oe_header_row oe_header_row_top"> <td colspan="2"> <h2 class="oe_view_title" t-if="widget.flags.display_title !== false"> @@ -653,9 +653,6 @@ <button type="button" class="oe_button oe_list_add oe_highlight"> <t t-esc="widget.options.addable"/> </button> - <span class="oe_alternative" t-if="widget.options.import_enabled"> - <span class="oe_fade">or</span> <a href="#" class="oe_bold oe_list_button_import">Import</a> - </span> </t> </div> <t t-name="ListView.pager"> @@ -699,9 +696,10 @@ <t t-jquery="button.oe_list_add" t-operation="after"> <button class="oe_button oe_list_save oe_highlight" type="button">Save</button> - </t> - <t t-jquery="a.oe_list_button_import" t-operation="after"> - <a href="#" class="oe_bold oe_list_discard">Discard</a> + <span class="oe_alternative"> + <span class="oe_fade">or</span> + <a href="#" class="oe_bold oe_list_discard">Discard</a> + </span> </t> </t> <t t-extend="ListView.row"> @@ -1065,7 +1063,7 @@ </span> </t> <t t-name="FieldStatus"> - <ul t-att-class="'oe_form_field_status ' + (widget.options.clickable ? 'oe_form_steps_clickable' : 'oe_form_steps')" t-att-style="widget.node.attrs.style"/> + <ul t-att-class="'oe_form_field_status ' + (widget.options.clickable ? 'oe_form_status_clickable' : 'oe_form_status')" t-att-style="widget.node.attrs.style"/> </t> <t t-name="FieldStatus.content"> <t t-foreach="widget.selection" t-as="i"> diff --git a/addons/web_kanban/static/src/css/kanban.css b/addons/web_kanban/static/src/css/kanban.css index f63dd371604..48cf725ead3 100644 --- a/addons/web_kanban/static/src/css/kanban.css +++ b/addons/web_kanban/static/src/css/kanban.css @@ -74,7 +74,6 @@ .openerp .oe_kanban_view .oe_kanban_group_title { font-size: 16px; font-weight: bold; - min-height: 32px; color: #333333; text-shadow: 0 1px 0 white; } @@ -85,6 +84,11 @@ vertical-align: top; padding: 6px 6px 6px 5px; } +.openerp .oe_kanban_view .oe_kanban_column ul, .openerp .oe_kanban_view .oe_kanban_column li, .openerp .oe_kanban_view .oe_kanban_group_header ul, .openerp .oe_kanban_view .oe_kanban_group_header li { + margin: 0; + padding: 0; + list-style-type: none; +} .openerp .oe_kanban_view .oe_kanban_group_header.oe_kanban_no_group { padding: 0px; } @@ -105,6 +109,7 @@ } .openerp .oe_kanban_view .oe_kanban_aggregates { padding: 0; + margin: 0px; } .openerp .oe_kanban_view .oe_kanban_group_folded .oe_kanban_group_title, .openerp .oe_kanban_view .oe_kanban_group_folded.oe_kanban_column > *, .openerp .oe_kanban_view .oe_kanban_group_folded .oe_kanban_aggregates, .openerp .oe_kanban_view .oe_kanban_group_folded .oe_kanban_add { display: none; diff --git a/addons/web_kanban/static/src/css/kanban.sass b/addons/web_kanban/static/src/css/kanban.sass index ddafee12581..95a63dbd1a2 100644 --- a/addons/web_kanban/static/src/css/kanban.sass +++ b/addons/web_kanban/static/src/css/kanban.sass @@ -92,7 +92,6 @@ .oe_kanban_group_title font-size: 16px font-weight: bold - min-height: 32px color: #333333 text-shadow: 0 1px 0 white > span @@ -101,6 +100,10 @@ .oe_kanban_column, .oe_kanban_group_header vertical-align: top padding: 6px 6px 6px 5px + ul, li + margin: 0 + padding: 0 + list-style-type: none .oe_kanban_group_header.oe_kanban_no_group padding: 0px @@ -121,6 +124,7 @@ height: 100% .oe_kanban_aggregates padding: 0 + margin: 0px .oe_kanban_group_folded .oe_kanban_group_title, &.oe_kanban_column > *, .oe_kanban_aggregates, .oe_kanban_add display: none diff --git a/addons/web_kanban/static/src/js/kanban.js b/addons/web_kanban/static/src/js/kanban.js index a4dbae559b7..5f9f3027b65 100644 --- a/addons/web_kanban/static/src/js/kanban.js +++ b/addons/web_kanban/static/src/js/kanban.js @@ -742,7 +742,8 @@ instance.web_kanban.KanbanRecord = instance.web.Widget.extend({ .toggleClass('oe_kanban_draghandle', this.view.is_action_enabled('edit')); } - this.$el.find('.oe_kanban_action').click(function() { + this.$el.find('.oe_kanban_action').click(function(ev) { + ev.preventDefault(); var $action = $(this), type = $action.data('type') || 'button', method = 'do_action_' + (type === 'action' ? 'object' : type); diff --git a/addons/web_kanban/static/src/xml/web_kanban.xml b/addons/web_kanban/static/src/xml/web_kanban.xml index 8a1b27c9726..3537e96b4c8 100644 --- a/addons/web_kanban/static/src/xml/web_kanban.xml +++ b/addons/web_kanban/static/src/xml/web_kanban.xml @@ -47,9 +47,8 @@ <div class="oe_fold_column"> <div t-attf-class="oe_kanban_group_title #{widget.undefined_title ? 'oe_kanban_group_title_undefined' : ''}"> <span><t t-esc="widget.title"/></span> - <span class="oe_kanban_group_length">(<t t-esc="widget.group.length"/>)</span> + <span class="oe_kanban_group_length oe_tag" style="position:relative; top:-2px;"><t t-esc="widget.group.length"/></span> </div> - <div class="oe_clear"/> <ul class="oe_kanban_aggregates"> <li t-foreach="widget.aggregates" t-as="aggregate"> <span><t t-esc="aggregate"/>:</span> <t t-esc="aggregate_value"/> diff --git a/addons/web_mobile/__init__.py b/addons/web_mobile/__init__.py deleted file mode 100644 index ee5959455ad..00000000000 --- a/addons/web_mobile/__init__.py +++ /dev/null @@ -1 +0,0 @@ -import controllers diff --git a/addons/web_mobile/__openerp__.py b/addons/web_mobile/__openerp__.py deleted file mode 100644 index b37db9eeb54..00000000000 --- a/addons/web_mobile/__openerp__.py +++ /dev/null @@ -1,12 +0,0 @@ -{ - 'name': 'OpenERP Web Mobile', - 'category': 'Hidden', - 'description': """ -OpenERP Web Mobile. -=================== - -""", - 'version': '2.0', - 'depends': [], - 'auto_install': True, -} diff --git a/addons/web_mobile/controllers.py b/addons/web_mobile/controllers.py deleted file mode 100644 index ae05056bdc3..00000000000 --- a/addons/web_mobile/controllers.py +++ /dev/null @@ -1,21 +0,0 @@ -#!/usr/bin/env python - -import werkzeug - -try: - # embedded - import openerp.addons.web.common.http as openerpweb - from openerp.addons.web.controllers.main import View -except ImportError: - # standalone - import web.common.http as openerpweb - from web.controllers.main import View - -class Mobile(openerpweb.Controller): - _cp_path = '/mobile' - - @openerpweb.httprequest - def index(self, req): - r = werkzeug.utils.redirect('/web_mobile/static/src/web_mobile.html', 301) - r.autocorrect_location_header = False - return r diff --git a/addons/web_mobile/i18n/ar.po b/addons/web_mobile/i18n/ar.po deleted file mode 100644 index 146e5e35711..00000000000 --- a/addons/web_mobile/i18n/ar.po +++ /dev/null @@ -1,106 +0,0 @@ -# Arabic translation for openerp-web -# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR <EMAIL@ADDRESS>, 2011. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" -"POT-Creation-Date: 2012-07-02 09:06+0200\n" -"PO-Revision-Date: 2012-02-08 00:39+0000\n" -"Last-Translator: kifcaliph <Unknown>\n" -"Language-Team: Arabic <ar@li.org>\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-09-05 04:56+0000\n" -"X-Generator: Launchpad (build 15901)\n" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:17 -msgid "OpenERP" -msgstr "OpenERP" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:22 -msgid "Database:" -msgstr "قاعدة البيانات:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:30 -msgid "Login:" -msgstr "الدخول:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:32 -msgid "Password:" -msgstr "كلمة المرور:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:34 -msgid "Login" -msgstr "تسجيل الدخول" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:36 -msgid "Bad username or password" -msgstr "اسم مستخدم او كلمة مرور خاطئة" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:42 -msgid "Powered by openerp.com" -msgstr "مدعومة بكل من openerp.com و kifcaliph" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:49 -msgid "Home" -msgstr "القائمة الرئيسية" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:57 -msgid "Favourite" -msgstr "مفضّلة" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:58 -msgid "Preference" -msgstr "التفضيلات" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:123 -msgid "Logout" -msgstr "تسجيل الخروج" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:132 -msgid "There are no records to show." -msgstr "لا يوجد سجلات للعرض" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:183 -msgid "Open this resource" -msgstr "فتح هذا المصدر" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:223 -#: addons/web_mobile/static/src/xml/web_mobile.xml:226 -msgid "Percent of tasks closed according to total of tasks to do..." -msgstr "نسبة المهام المنتهية إلي إجمالي المهام..." - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:264 -#: addons/web_mobile/static/src/xml/web_mobile.xml:268 -msgid "On" -msgstr "تشغيل" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:265 -#: addons/web_mobile/static/src/xml/web_mobile.xml:269 -msgid "Off" -msgstr "إطفاﺀ" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:294 -msgid "Form View" -msgstr "عرض النموذج" diff --git a/addons/web_mobile/i18n/bg.po b/addons/web_mobile/i18n/bg.po deleted file mode 100644 index 019f04f1ab4..00000000000 --- a/addons/web_mobile/i18n/bg.po +++ /dev/null @@ -1,106 +0,0 @@ -# Bulgarian translation for openerp-web -# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR <EMAIL@ADDRESS>, 2012. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" -"POT-Creation-Date: 2012-07-02 09:06+0200\n" -"PO-Revision-Date: 2012-07-11 14:08+0000\n" -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" -"Language-Team: Bulgarian <bg@li.org>\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-09-05 04:56+0000\n" -"X-Generator: Launchpad (build 15901)\n" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:17 -msgid "OpenERP" -msgstr "OpenERP" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:22 -msgid "Database:" -msgstr "База данни:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:30 -msgid "Login:" -msgstr "Вход:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:32 -msgid "Password:" -msgstr "Парола:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:34 -msgid "Login" -msgstr "Вход" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:36 -msgid "Bad username or password" -msgstr "Грешно потребителско име или парола" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:42 -msgid "Powered by openerp.com" -msgstr "Powered by openerp.com" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:49 -msgid "Home" -msgstr "Начало" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:57 -msgid "Favourite" -msgstr "Любими" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:58 -msgid "Preference" -msgstr "Предпочитания" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:123 -msgid "Logout" -msgstr "Изход" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:132 -msgid "There are no records to show." -msgstr "Няма записи за показване." - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:183 -msgid "Open this resource" -msgstr "Отвори този ресурс" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:223 -#: addons/web_mobile/static/src/xml/web_mobile.xml:226 -msgid "Percent of tasks closed according to total of tasks to do..." -msgstr "Процент на приключените задачи съпоставен с общия брой задачи..." - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:264 -#: addons/web_mobile/static/src/xml/web_mobile.xml:268 -msgid "On" -msgstr "Включено" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:265 -#: addons/web_mobile/static/src/xml/web_mobile.xml:269 -msgid "Off" -msgstr "Изключено" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:294 -msgid "Form View" -msgstr "" diff --git a/addons/web_mobile/i18n/bn.po b/addons/web_mobile/i18n/bn.po deleted file mode 100644 index 4f8f1a69dc5..00000000000 --- a/addons/web_mobile/i18n/bn.po +++ /dev/null @@ -1,106 +0,0 @@ -# Bengali translation for openerp-web -# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR <EMAIL@ADDRESS>, 2011. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" -"POT-Creation-Date: 2012-07-02 09:06+0200\n" -"PO-Revision-Date: 2012-04-14 22:49+0000\n" -"Last-Translator: Kazi Shahnoor Ashraf <kazidxb@gmail.com>\n" -"Language-Team: Bengali <bn@li.org>\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-09-05 04:56+0000\n" -"X-Generator: Launchpad (build 15901)\n" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:17 -msgid "OpenERP" -msgstr "ওপেন-ই-আর-পি" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:22 -msgid "Database:" -msgstr "উপাত্তুৎস" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:30 -msgid "Login:" -msgstr "প্রবেশ করুন:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:32 -msgid "Password:" -msgstr "শব্দচাবি:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:34 -msgid "Login" -msgstr "প্রবেশ করুন" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:36 -msgid "Bad username or password" -msgstr "ব্যবহারকারীর নাম অথবা পাসওয়ার্ড এ ভূল আছে" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:42 -msgid "Powered by openerp.com" -msgstr "openerp.com এর কর্তৃত্বে" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:49 -msgid "Home" -msgstr "ঘর" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:57 -msgid "Favourite" -msgstr "প্রিয়" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:58 -msgid "Preference" -msgstr "পছন্দসমূহ" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:123 -msgid "Logout" -msgstr "লগআউট" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:132 -msgid "There are no records to show." -msgstr "তথ্য প্রদর্শনের জন্য কিছু নাই" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:183 -msgid "Open this resource" -msgstr "এই তথ্যসম্পদ খুলুন" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:223 -#: addons/web_mobile/static/src/xml/web_mobile.xml:226 -msgid "Percent of tasks closed according to total of tasks to do..." -msgstr "সর্বমোট করনীয় কাজের শতাংশ কাজ বন্ধ হয়েছে" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:264 -#: addons/web_mobile/static/src/xml/web_mobile.xml:268 -msgid "On" -msgstr "চালু" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:265 -#: addons/web_mobile/static/src/xml/web_mobile.xml:269 -msgid "Off" -msgstr "বন্ধ" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:294 -msgid "Form View" -msgstr "গাঠনিক দৃশ্য" diff --git a/addons/web_mobile/i18n/ca.po b/addons/web_mobile/i18n/ca.po deleted file mode 100644 index 6481bd25841..00000000000 --- a/addons/web_mobile/i18n/ca.po +++ /dev/null @@ -1,106 +0,0 @@ -# Catalan translation for openerp-web -# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR <EMAIL@ADDRESS>, 2012. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" -"POT-Creation-Date: 2012-07-02 09:06+0200\n" -"PO-Revision-Date: 2012-06-16 18:14+0000\n" -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" -"Language-Team: Catalan <ca@li.org>\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-09-05 04:56+0000\n" -"X-Generator: Launchpad (build 15901)\n" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:17 -msgid "OpenERP" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:22 -msgid "Database:" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:30 -msgid "Login:" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:32 -msgid "Password:" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:34 -msgid "Login" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:36 -msgid "Bad username or password" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:42 -msgid "Powered by openerp.com" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:49 -msgid "Home" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:57 -msgid "Favourite" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:58 -msgid "Preference" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:123 -msgid "Logout" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:132 -msgid "There are no records to show." -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:183 -msgid "Open this resource" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:223 -#: addons/web_mobile/static/src/xml/web_mobile.xml:226 -msgid "Percent of tasks closed according to total of tasks to do..." -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:264 -#: addons/web_mobile/static/src/xml/web_mobile.xml:268 -msgid "On" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:265 -#: addons/web_mobile/static/src/xml/web_mobile.xml:269 -msgid "Off" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:294 -msgid "Form View" -msgstr "" diff --git a/addons/web_mobile/i18n/cs.po b/addons/web_mobile/i18n/cs.po deleted file mode 100644 index 9777ac873ee..00000000000 --- a/addons/web_mobile/i18n/cs.po +++ /dev/null @@ -1,107 +0,0 @@ -# Czech translation for openerp-web -# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR <EMAIL@ADDRESS>, 2012. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" -"POT-Creation-Date: 2012-07-02 09:06+0200\n" -"PO-Revision-Date: 2012-03-22 09:44+0000\n" -"Last-Translator: Jiří Hajda <robie@centrum.cz>\n" -"Language-Team: openerp-i18n-czech <openerp-i18n-czech@lists.launchpad.net>\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-09-05 04:56+0000\n" -"X-Generator: Launchpad (build 15901)\n" -"X-Poedit-Language: Czech\n" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:17 -msgid "OpenERP" -msgstr "OpenERP" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:22 -msgid "Database:" -msgstr "Databáze:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:30 -msgid "Login:" -msgstr "Přihlášovací jméno:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:32 -msgid "Password:" -msgstr "Heslo:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:34 -msgid "Login" -msgstr "Přihlášovací jméno" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:36 -msgid "Bad username or password" -msgstr "Chybné jméno nebo heslo" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:42 -msgid "Powered by openerp.com" -msgstr "Založeno na openerp.com" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:49 -msgid "Home" -msgstr "Domov" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:57 -msgid "Favourite" -msgstr "Oblíbené" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:58 -msgid "Preference" -msgstr "Předvolby" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:123 -msgid "Logout" -msgstr "Odhlásit" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:132 -msgid "There are no records to show." -msgstr "Žádný záznam ke zobrazení." - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:183 -msgid "Open this resource" -msgstr "Otevřít tento zdroj" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:223 -#: addons/web_mobile/static/src/xml/web_mobile.xml:226 -msgid "Percent of tasks closed according to total of tasks to do..." -msgstr "Procento uzavřených úloh ze všech úloh k vykonání..." - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:264 -#: addons/web_mobile/static/src/xml/web_mobile.xml:268 -msgid "On" -msgstr "Zapnuto" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:265 -#: addons/web_mobile/static/src/xml/web_mobile.xml:269 -msgid "Off" -msgstr "Vypnuto" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:294 -msgid "Form View" -msgstr "Formulářový pohled" diff --git a/addons/web_mobile/i18n/da.po b/addons/web_mobile/i18n/da.po deleted file mode 100644 index bce5f4665f1..00000000000 --- a/addons/web_mobile/i18n/da.po +++ /dev/null @@ -1,106 +0,0 @@ -# Danish translation for openerp-web -# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR <EMAIL@ADDRESS>, 2011. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" -"POT-Creation-Date: 2012-07-02 09:06+0200\n" -"PO-Revision-Date: 2011-10-11 13:54+0000\n" -"Last-Translator: Jonas Mortensen <Unknown>\n" -"Language-Team: Danish <da@li.org>\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-09-05 04:56+0000\n" -"X-Generator: Launchpad (build 15901)\n" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:17 -msgid "OpenERP" -msgstr "OpenERP" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:22 -msgid "Database:" -msgstr "Database:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:30 -msgid "Login:" -msgstr "Log ind:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:32 -msgid "Password:" -msgstr "Adgangskode:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:34 -msgid "Login" -msgstr "Log ind" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:36 -msgid "Bad username or password" -msgstr "Forkert brugernavn eller adgangskode" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:42 -msgid "Powered by openerp.com" -msgstr "Drevet af openerp.com" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:49 -msgid "Home" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:57 -msgid "Favourite" -msgstr "Favorit" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:58 -msgid "Preference" -msgstr "Præference" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:123 -msgid "Logout" -msgstr "Log ud" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:132 -msgid "There are no records to show." -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:183 -msgid "Open this resource" -msgstr "Åbn denne ressource" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:223 -#: addons/web_mobile/static/src/xml/web_mobile.xml:226 -msgid "Percent of tasks closed according to total of tasks to do..." -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:264 -#: addons/web_mobile/static/src/xml/web_mobile.xml:268 -msgid "On" -msgstr "Slået til" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:265 -#: addons/web_mobile/static/src/xml/web_mobile.xml:269 -msgid "Off" -msgstr "Slået fra" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:294 -msgid "Form View" -msgstr "" diff --git a/addons/web_mobile/i18n/de.po b/addons/web_mobile/i18n/de.po deleted file mode 100644 index 0a3c6869ad8..00000000000 --- a/addons/web_mobile/i18n/de.po +++ /dev/null @@ -1,106 +0,0 @@ -# German translation for openerp-web -# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR <EMAIL@ADDRESS>, 2011. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" -"POT-Creation-Date: 2012-07-02 09:06+0200\n" -"PO-Revision-Date: 2012-02-07 19:08+0000\n" -"Last-Translator: Ferdinand @ Camptocamp <Unknown>\n" -"Language-Team: German <de@li.org>\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-09-05 04:56+0000\n" -"X-Generator: Launchpad (build 15901)\n" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:17 -msgid "OpenERP" -msgstr "OpenERP" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:22 -msgid "Database:" -msgstr "Datenbank:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:30 -msgid "Login:" -msgstr "Benutzername:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:32 -msgid "Password:" -msgstr "Passwort:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:34 -msgid "Login" -msgstr "Anmeldung" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:36 -msgid "Bad username or password" -msgstr "Falscher Benutzername oder Passwort" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:42 -msgid "Powered by openerp.com" -msgstr "Powered by openerp.com" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:49 -msgid "Home" -msgstr "Startseite" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:57 -msgid "Favourite" -msgstr "Favorit" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:58 -msgid "Preference" -msgstr "Einstellungen" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:123 -msgid "Logout" -msgstr "Abmeldung" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:132 -msgid "There are no records to show." -msgstr "Keine Datensätze gefunden" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:183 -msgid "Open this resource" -msgstr "Öffnen dieses Datensatzes" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:223 -#: addons/web_mobile/static/src/xml/web_mobile.xml:226 -msgid "Percent of tasks closed according to total of tasks to do..." -msgstr "Prozent der abgeschlossenen Aufgaben im Vergleich zu allen offenen." - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:264 -#: addons/web_mobile/static/src/xml/web_mobile.xml:268 -msgid "On" -msgstr "Ein" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:265 -#: addons/web_mobile/static/src/xml/web_mobile.xml:269 -msgid "Off" -msgstr "Aus" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:294 -msgid "Form View" -msgstr "Formular Ansicht" diff --git a/addons/web_mobile/i18n/en_GB.po b/addons/web_mobile/i18n/en_GB.po deleted file mode 100644 index 3a939a922f3..00000000000 --- a/addons/web_mobile/i18n/en_GB.po +++ /dev/null @@ -1,106 +0,0 @@ -# English (United Kingdom) translation for openerp-web -# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR <EMAIL@ADDRESS>, 2012. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" -"POT-Creation-Date: 2012-07-02 09:06+0200\n" -"PO-Revision-Date: 2012-02-09 11:41+0000\n" -"Last-Translator: John Bradshaw <Unknown>\n" -"Language-Team: English (United Kingdom) <en_GB@li.org>\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-09-05 04:56+0000\n" -"X-Generator: Launchpad (build 15901)\n" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:17 -msgid "OpenERP" -msgstr "OpenERP" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:22 -msgid "Database:" -msgstr "Database:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:30 -msgid "Login:" -msgstr "Login:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:32 -msgid "Password:" -msgstr "Password:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:34 -msgid "Login" -msgstr "Login" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:36 -msgid "Bad username or password" -msgstr "Bad username or password" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:42 -msgid "Powered by openerp.com" -msgstr "Powered by openerp.com" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:49 -msgid "Home" -msgstr "Home" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:57 -msgid "Favourite" -msgstr "Favourite" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:58 -msgid "Preference" -msgstr "Preference" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:123 -msgid "Logout" -msgstr "Logout" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:132 -msgid "There are no records to show." -msgstr "There are no records to show." - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:183 -msgid "Open this resource" -msgstr "Open this resource" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:223 -#: addons/web_mobile/static/src/xml/web_mobile.xml:226 -msgid "Percent of tasks closed according to total of tasks to do..." -msgstr "Percent of tasks closed in total of tasks to do..." - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:264 -#: addons/web_mobile/static/src/xml/web_mobile.xml:268 -msgid "On" -msgstr "On" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:265 -#: addons/web_mobile/static/src/xml/web_mobile.xml:269 -msgid "Off" -msgstr "Off" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:294 -msgid "Form View" -msgstr "Form View" diff --git a/addons/web_mobile/i18n/es.po b/addons/web_mobile/i18n/es.po deleted file mode 100644 index a3804b7ccd2..00000000000 --- a/addons/web_mobile/i18n/es.po +++ /dev/null @@ -1,108 +0,0 @@ -# Spanish translation for openerp-web -# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR <EMAIL@ADDRESS>, 2011. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" -"POT-Creation-Date: 2012-07-02 09:06+0200\n" -"PO-Revision-Date: 2012-02-13 12:38+0000\n" -"Last-Translator: Daniel Campos (Avanzosc) <Unknown>\n" -"Language-Team: Spanish <es@li.org>\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-09-05 04:56+0000\n" -"X-Generator: Launchpad (build 15901)\n" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:17 -msgid "OpenERP" -msgstr "OpenERP" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:22 -msgid "Database:" -msgstr "Base de datos:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:30 -msgid "Login:" -msgstr "Inicio de Sesión:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:32 -msgid "Password:" -msgstr "Contraseña:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:34 -msgid "Login" -msgstr "Inicio de sesión" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:36 -msgid "Bad username or password" -msgstr "Nombre de usuario o contraseña incorrectos" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:42 -msgid "Powered by openerp.com" -msgstr "Desarrollado por openerp.com" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:49 -msgid "Home" -msgstr "Inicio" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:57 -msgid "Favourite" -msgstr "Favorito" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:58 -msgid "Preference" -msgstr "Preferencia" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:123 -msgid "Logout" -msgstr "Cerrar sesión" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:132 -msgid "There are no records to show." -msgstr "No hay registros para mostrar." - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:183 -msgid "Open this resource" -msgstr "Abrir este recurso" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:223 -#: addons/web_mobile/static/src/xml/web_mobile.xml:226 -msgid "Percent of tasks closed according to total of tasks to do..." -msgstr "" -"Porcentaje de la tarea realizado de acuerdo al total de la tarea a " -"realizar..." - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:264 -#: addons/web_mobile/static/src/xml/web_mobile.xml:268 -msgid "On" -msgstr "On" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:265 -#: addons/web_mobile/static/src/xml/web_mobile.xml:269 -msgid "Off" -msgstr "Off" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:294 -msgid "Form View" -msgstr "Vista de Formulario" diff --git a/addons/web_mobile/i18n/es_CL.po b/addons/web_mobile/i18n/es_CL.po deleted file mode 100644 index 5735252fb4d..00000000000 --- a/addons/web_mobile/i18n/es_CL.po +++ /dev/null @@ -1,108 +0,0 @@ -# Spanish (Chile) translation for openerp-web -# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR <EMAIL@ADDRESS>, 2012. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" -"POT-Creation-Date: 2012-07-02 09:06+0200\n" -"PO-Revision-Date: 2012-04-14 15:07+0000\n" -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" -"Language-Team: Spanish (Chile) <es_CL@li.org>\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-09-05 04:56+0000\n" -"X-Generator: Launchpad (build 15901)\n" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:17 -msgid "OpenERP" -msgstr "OpenERP" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:22 -msgid "Database:" -msgstr "Base de datos:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:30 -msgid "Login:" -msgstr "Inicio de Sesión:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:32 -msgid "Password:" -msgstr "Contraseña:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:34 -msgid "Login" -msgstr "Inicio de sesión" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:36 -msgid "Bad username or password" -msgstr "Nombre de usuario o contraseña incorrectos" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:42 -msgid "Powered by openerp.com" -msgstr "Desarrollado por openerp.com" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:49 -msgid "Home" -msgstr "Inicio" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:57 -msgid "Favourite" -msgstr "Favorito" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:58 -msgid "Preference" -msgstr "Preferencias" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:123 -msgid "Logout" -msgstr "Cerrar sesión" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:132 -msgid "There are no records to show." -msgstr "No hay registros para mostrar." - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:183 -msgid "Open this resource" -msgstr "Abrir este recurso" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:223 -#: addons/web_mobile/static/src/xml/web_mobile.xml:226 -msgid "Percent of tasks closed according to total of tasks to do..." -msgstr "" -"Porcentaje de la tarea realizado de acuerdo al total de la tarea a " -"realizar..." - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:264 -#: addons/web_mobile/static/src/xml/web_mobile.xml:268 -msgid "On" -msgstr "Activo" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:265 -#: addons/web_mobile/static/src/xml/web_mobile.xml:269 -msgid "Off" -msgstr "Apagar" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:294 -msgid "Form View" -msgstr "Vista formulario" diff --git a/addons/web_mobile/i18n/es_CR.po b/addons/web_mobile/i18n/es_CR.po deleted file mode 100644 index 897393df778..00000000000 --- a/addons/web_mobile/i18n/es_CR.po +++ /dev/null @@ -1,109 +0,0 @@ -# Spanish translation for openerp-web -# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR <EMAIL@ADDRESS>, 2011. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2012-07-02 09:06+0200\n" -"PO-Revision-Date: 2012-02-16 21:38+0000\n" -"Last-Translator: Carlos Vásquez (CLEARCORP) " -"<carlos.vasquez@clearcorp.co.cr>\n" -"Language-Team: Spanish <es@li.org>\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-09-05 04:56+0000\n" -"X-Generator: Launchpad (build 15901)\n" -"Language: es\n" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:17 -msgid "OpenERP" -msgstr "OpenERP" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:22 -msgid "Database:" -msgstr "Base de datos:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:30 -msgid "Login:" -msgstr "Usuario:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:32 -msgid "Password:" -msgstr "Contraseña:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:34 -msgid "Login" -msgstr "Iniciar sesión" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:36 -msgid "Bad username or password" -msgstr "Nombre de usuario o contraseña incorrectos" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:42 -msgid "Powered by openerp.com" -msgstr "Powered by openerp.com" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:49 -msgid "Home" -msgstr "Inicio" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:57 -msgid "Favourite" -msgstr "Favorito" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:58 -msgid "Preference" -msgstr "Preferencia" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:123 -msgid "Logout" -msgstr "Cerrar sesión" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:132 -msgid "There are no records to show." -msgstr "No hay registros para mostrar." - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:183 -msgid "Open this resource" -msgstr "Abrir este recurso" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:223 -#: addons/web_mobile/static/src/xml/web_mobile.xml:226 -msgid "Percent of tasks closed according to total of tasks to do..." -msgstr "" -"Porcentaje de tareas cerradas respecto al total de tareas por hacer..." - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:264 -#: addons/web_mobile/static/src/xml/web_mobile.xml:268 -msgid "On" -msgstr "Encender" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:265 -#: addons/web_mobile/static/src/xml/web_mobile.xml:269 -msgid "Off" -msgstr "Apagar" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:294 -msgid "Form View" -msgstr "Vista Formulario" diff --git a/addons/web_mobile/i18n/es_EC.po b/addons/web_mobile/i18n/es_EC.po deleted file mode 100644 index 338c62e4529..00000000000 --- a/addons/web_mobile/i18n/es_EC.po +++ /dev/null @@ -1,108 +0,0 @@ -# Spanish (Ecuador) translation for openerp-web -# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR <EMAIL@ADDRESS>, 2011. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" -"POT-Creation-Date: 2012-07-02 09:06+0200\n" -"PO-Revision-Date: 2011-10-07 17:50+0000\n" -"Last-Translator: Cristian Salamea (Gnuthink) <ovnicraft@gmail.com>\n" -"Language-Team: Spanish (Ecuador) <es_EC@li.org>\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-09-05 04:56+0000\n" -"X-Generator: Launchpad (build 15901)\n" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:17 -msgid "OpenERP" -msgstr "OpenERP" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:22 -msgid "Database:" -msgstr "Base de datos:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:30 -msgid "Login:" -msgstr "Iniciar sesión:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:32 -msgid "Password:" -msgstr "Contraseña:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:34 -msgid "Login" -msgstr "Iniciar sesión" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:36 -msgid "Bad username or password" -msgstr "Usuario o contraseña incorrecta" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:42 -msgid "Powered by openerp.com" -msgstr "Desarrollado por openerp.com" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:49 -msgid "Home" -msgstr "Inicio" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:57 -msgid "Favourite" -msgstr "Favorito" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:58 -msgid "Preference" -msgstr "Preferencia" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:123 -msgid "Logout" -msgstr "Salir" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:132 -msgid "There are no records to show." -msgstr "No hay registros" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:183 -msgid "Open this resource" -msgstr "Abrir" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:223 -#: addons/web_mobile/static/src/xml/web_mobile.xml:226 -msgid "Percent of tasks closed according to total of tasks to do..." -msgstr "" -"Porcentaje de la tarea realizado de acuerdo al total de la tarea a " -"realizar..." - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:264 -#: addons/web_mobile/static/src/xml/web_mobile.xml:268 -msgid "On" -msgstr "On" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:265 -#: addons/web_mobile/static/src/xml/web_mobile.xml:269 -msgid "Off" -msgstr "Off" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:294 -msgid "Form View" -msgstr "Formulario" diff --git a/addons/web_mobile/i18n/et.po b/addons/web_mobile/i18n/et.po deleted file mode 100644 index 76371411d8d..00000000000 --- a/addons/web_mobile/i18n/et.po +++ /dev/null @@ -1,106 +0,0 @@ -# Estonian translation for openerp-web -# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR <EMAIL@ADDRESS>, 2011. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" -"POT-Creation-Date: 2012-07-02 09:06+0200\n" -"PO-Revision-Date: 2011-10-10 19:23+0000\n" -"Last-Translator: Aare Vesi <Unknown>\n" -"Language-Team: Estonian <et@li.org>\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-09-05 04:56+0000\n" -"X-Generator: Launchpad (build 15901)\n" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:17 -msgid "OpenERP" -msgstr "OpenERP" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:22 -msgid "Database:" -msgstr "Andmebaas:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:30 -msgid "Login:" -msgstr "Kasutajanimi:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:32 -msgid "Password:" -msgstr "Salasõna:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:34 -msgid "Login" -msgstr "Sisene" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:36 -msgid "Bad username or password" -msgstr "Vale kasutajanimi või salasõna" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:42 -msgid "Powered by openerp.com" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:49 -msgid "Home" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:57 -msgid "Favourite" -msgstr "Lemmik" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:58 -msgid "Preference" -msgstr "Eelistus" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:123 -msgid "Logout" -msgstr "Välju" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:132 -msgid "There are no records to show." -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:183 -msgid "Open this resource" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:223 -#: addons/web_mobile/static/src/xml/web_mobile.xml:226 -msgid "Percent of tasks closed according to total of tasks to do..." -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:264 -#: addons/web_mobile/static/src/xml/web_mobile.xml:268 -msgid "On" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:265 -#: addons/web_mobile/static/src/xml/web_mobile.xml:269 -msgid "Off" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:294 -msgid "Form View" -msgstr "" diff --git a/addons/web_mobile/i18n/fi.po b/addons/web_mobile/i18n/fi.po deleted file mode 100644 index c18787af4c2..00000000000 --- a/addons/web_mobile/i18n/fi.po +++ /dev/null @@ -1,106 +0,0 @@ -# Finnish translation for openerp-web -# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR <EMAIL@ADDRESS>, 2012. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" -"POT-Creation-Date: 2012-07-02 09:06+0200\n" -"PO-Revision-Date: 2012-03-19 11:54+0000\n" -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" -"Language-Team: Finnish <fi@li.org>\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-09-05 04:56+0000\n" -"X-Generator: Launchpad (build 15901)\n" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:17 -msgid "OpenERP" -msgstr "OpenERP" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:22 -msgid "Database:" -msgstr "Tietokanta:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:30 -msgid "Login:" -msgstr "Käyttäjätunnus:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:32 -msgid "Password:" -msgstr "Salasana:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:34 -msgid "Login" -msgstr "Kirjaudu" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:36 -msgid "Bad username or password" -msgstr "Virheellinen käyttäjätunnus tai salasana" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:42 -msgid "Powered by openerp.com" -msgstr "openerp.com mahdollistaa" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:49 -msgid "Home" -msgstr "Alkuun" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:57 -msgid "Favourite" -msgstr "Suosikki" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:58 -msgid "Preference" -msgstr "Preferenssi" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:123 -msgid "Logout" -msgstr "Kirjaudu ulos" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:132 -msgid "There are no records to show." -msgstr "Ei näytettäviä tietueita" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:183 -msgid "Open this resource" -msgstr "Avaa tämä resurssi" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:223 -#: addons/web_mobile/static/src/xml/web_mobile.xml:226 -msgid "Percent of tasks closed according to total of tasks to do..." -msgstr "Suljettujen tehtävien prosenttiosuus tehtävien kokonaismäärästä..." - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:264 -#: addons/web_mobile/static/src/xml/web_mobile.xml:268 -msgid "On" -msgstr "Päällä" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:265 -#: addons/web_mobile/static/src/xml/web_mobile.xml:269 -msgid "Off" -msgstr "Pois päältä" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:294 -msgid "Form View" -msgstr "Lomakenäkymä" diff --git a/addons/web_mobile/i18n/fr.po b/addons/web_mobile/i18n/fr.po deleted file mode 100644 index 7988c524fe9..00000000000 --- a/addons/web_mobile/i18n/fr.po +++ /dev/null @@ -1,106 +0,0 @@ -# French translation for openerp-web -# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR <EMAIL@ADDRESS>, 2011. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" -"POT-Creation-Date: 2012-07-02 09:06+0200\n" -"PO-Revision-Date: 2012-02-15 09:26+0000\n" -"Last-Translator: Fabrice (OpenERP) <Unknown>\n" -"Language-Team: French <fr@li.org>\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-09-05 04:56+0000\n" -"X-Generator: Launchpad (build 15901)\n" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:17 -msgid "OpenERP" -msgstr "OpenERP" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:22 -msgid "Database:" -msgstr "Base de données :" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:30 -msgid "Login:" -msgstr "Identifiant :" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:32 -msgid "Password:" -msgstr "Mot de passe :" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:34 -msgid "Login" -msgstr "Connexion" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:36 -msgid "Bad username or password" -msgstr "Mauvais nom d'utilisateur ou mot de passe" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:42 -msgid "Powered by openerp.com" -msgstr "Propulsé par OpenERP.com" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:49 -msgid "Home" -msgstr "Accueil" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:57 -msgid "Favourite" -msgstr "Favoris" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:58 -msgid "Preference" -msgstr "Préférences" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:123 -msgid "Logout" -msgstr "Déconnexion" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:132 -msgid "There are no records to show." -msgstr "Aucun enregistrement" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:183 -msgid "Open this resource" -msgstr "Ouvrir cette ressource" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:223 -#: addons/web_mobile/static/src/xml/web_mobile.xml:226 -msgid "Percent of tasks closed according to total of tasks to do..." -msgstr "Proportion de tâches terminées..." - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:264 -#: addons/web_mobile/static/src/xml/web_mobile.xml:268 -msgid "On" -msgstr "Activé" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:265 -#: addons/web_mobile/static/src/xml/web_mobile.xml:269 -msgid "Off" -msgstr "Désactivé" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:294 -msgid "Form View" -msgstr "Vue formulaire" diff --git a/addons/web_mobile/i18n/gl.po b/addons/web_mobile/i18n/gl.po deleted file mode 100644 index 1027c734daa..00000000000 --- a/addons/web_mobile/i18n/gl.po +++ /dev/null @@ -1,106 +0,0 @@ -# Galician translation for openerp-web -# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR <EMAIL@ADDRESS>, 2011. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" -"POT-Creation-Date: 2012-07-02 09:06+0200\n" -"PO-Revision-Date: 2012-02-13 23:11+0000\n" -"Last-Translator: Amós Oviedo <Unknown>\n" -"Language-Team: Galician <gl@li.org>\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-09-05 04:56+0000\n" -"X-Generator: Launchpad (build 15901)\n" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:17 -msgid "OpenERP" -msgstr "OpenERP" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:22 -msgid "Database:" -msgstr "Base de datos:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:30 -msgid "Login:" -msgstr "Inicio de sesión:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:32 -msgid "Password:" -msgstr "Contrasinal:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:34 -msgid "Login" -msgstr "Inicio de sesión" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:36 -msgid "Bad username or password" -msgstr "Nome de usuario ou contrasinal incorrectos" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:42 -msgid "Powered by openerp.com" -msgstr "Powered by openerp.com" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:49 -msgid "Home" -msgstr "Inicio" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:57 -msgid "Favourite" -msgstr "Favorito" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:58 -msgid "Preference" -msgstr "Preferenza" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:123 -msgid "Logout" -msgstr "Pechar sesión" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:132 -msgid "There are no records to show." -msgstr "Non hai rexistros que amosar." - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:183 -msgid "Open this resource" -msgstr "Abrir este recurso" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:223 -#: addons/web_mobile/static/src/xml/web_mobile.xml:226 -msgid "Percent of tasks closed according to total of tasks to do..." -msgstr "Porcentaxe de tareas pechadas dacordo ao total de tarefas a facer..." - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:264 -#: addons/web_mobile/static/src/xml/web_mobile.xml:268 -msgid "On" -msgstr "On" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:265 -#: addons/web_mobile/static/src/xml/web_mobile.xml:269 -msgid "Off" -msgstr "Off" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:294 -msgid "Form View" -msgstr "Vista de Formulario" diff --git a/addons/web_mobile/i18n/hr.po b/addons/web_mobile/i18n/hr.po deleted file mode 100644 index bae6c72f4dd..00000000000 --- a/addons/web_mobile/i18n/hr.po +++ /dev/null @@ -1,106 +0,0 @@ -# Croatian translation for openerp-web -# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR <EMAIL@ADDRESS>, 2011. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" -"POT-Creation-Date: 2012-07-02 09:06+0200\n" -"PO-Revision-Date: 2012-02-08 08:47+0000\n" -"Last-Translator: Marijan Rajic <Unknown>\n" -"Language-Team: Croatian <hr@li.org>\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-09-05 04:56+0000\n" -"X-Generator: Launchpad (build 15901)\n" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:17 -msgid "OpenERP" -msgstr "OpenERP" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:22 -msgid "Database:" -msgstr "Baza podataka:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:30 -msgid "Login:" -msgstr "Prijava:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:32 -msgid "Password:" -msgstr "Lozinka:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:34 -msgid "Login" -msgstr "Prijava" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:36 -msgid "Bad username or password" -msgstr "Neispravno korisničko ime ili lozinka" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:42 -msgid "Powered by openerp.com" -msgstr "Powered by openerp.com" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:49 -msgid "Home" -msgstr "Naslovnica" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:57 -msgid "Favourite" -msgstr "Omiljeno" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:58 -msgid "Preference" -msgstr "Preference" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:123 -msgid "Logout" -msgstr "Odjava" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:132 -msgid "There are no records to show." -msgstr "Ne postoje zapisi." - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:183 -msgid "Open this resource" -msgstr "Otvori ovaj resurs" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:223 -#: addons/web_mobile/static/src/xml/web_mobile.xml:226 -msgid "Percent of tasks closed according to total of tasks to do..." -msgstr "Postotak zatvorenih zadataka u odnosu na ukupan broj zadanih..." - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:264 -#: addons/web_mobile/static/src/xml/web_mobile.xml:268 -msgid "On" -msgstr "On" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:265 -#: addons/web_mobile/static/src/xml/web_mobile.xml:269 -msgid "Off" -msgstr "Off" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:294 -msgid "Form View" -msgstr "Pogled obrasca" diff --git a/addons/web_mobile/i18n/it.po b/addons/web_mobile/i18n/it.po deleted file mode 100644 index 97e482624b1..00000000000 --- a/addons/web_mobile/i18n/it.po +++ /dev/null @@ -1,107 +0,0 @@ -# Italian translation for openerp-web -# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR <EMAIL@ADDRESS>, 2011. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" -"POT-Creation-Date: 2012-07-02 09:06+0200\n" -"PO-Revision-Date: 2012-02-16 22:00+0000\n" -"Last-Translator: Davide Corio - agilebg.com <davide.corio@agilebg.com>\n" -"Language-Team: Italian <it@li.org>\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-09-05 04:56+0000\n" -"X-Generator: Launchpad (build 15901)\n" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:17 -msgid "OpenERP" -msgstr "OpenERP" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:22 -msgid "Database:" -msgstr "Database:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:30 -msgid "Login:" -msgstr "Login:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:32 -msgid "Password:" -msgstr "Password:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:34 -msgid "Login" -msgstr "Login" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:36 -msgid "Bad username or password" -msgstr "Username o password errati" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:42 -msgid "Powered by openerp.com" -msgstr "Powered by openerp.com" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:49 -msgid "Home" -msgstr "Home" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:57 -msgid "Favourite" -msgstr "Preferito" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:58 -msgid "Preference" -msgstr "Preferenze" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:123 -msgid "Logout" -msgstr "Disconnetti" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:132 -msgid "There are no records to show." -msgstr "Non ci sono record da mostrare." - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:183 -msgid "Open this resource" -msgstr "Apri questa risorsa" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:223 -#: addons/web_mobile/static/src/xml/web_mobile.xml:226 -msgid "Percent of tasks closed according to total of tasks to do..." -msgstr "" -"Percentuale di task chiusi in base al totale dai test da completare..." - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:264 -#: addons/web_mobile/static/src/xml/web_mobile.xml:268 -msgid "On" -msgstr "Sì" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:265 -#: addons/web_mobile/static/src/xml/web_mobile.xml:269 -msgid "Off" -msgstr "No" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:294 -msgid "Form View" -msgstr "Vista Form" diff --git a/addons/web_mobile/i18n/ja.po b/addons/web_mobile/i18n/ja.po deleted file mode 100644 index bf325b7bd47..00000000000 --- a/addons/web_mobile/i18n/ja.po +++ /dev/null @@ -1,106 +0,0 @@ -# Japanese translation for openerp-web -# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR <EMAIL@ADDRESS>, 2012. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" -"POT-Creation-Date: 2012-07-02 09:06+0200\n" -"PO-Revision-Date: 2012-07-19 04:00+0000\n" -"Last-Translator: Akira Hiyama <Unknown>\n" -"Language-Team: Japanese <ja@li.org>\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-09-05 04:56+0000\n" -"X-Generator: Launchpad (build 15901)\n" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:17 -msgid "OpenERP" -msgstr "OpenERP" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:22 -msgid "Database:" -msgstr "データベース:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:30 -msgid "Login:" -msgstr "ログイン:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:32 -msgid "Password:" -msgstr "パスワード:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:34 -msgid "Login" -msgstr "ログイン" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:36 -msgid "Bad username or password" -msgstr "ユーザ名あるいはパスワードが正しくありません" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:42 -msgid "Powered by openerp.com" -msgstr "openerp.comによる" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:49 -msgid "Home" -msgstr "ホーム" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:57 -msgid "Favourite" -msgstr "お気に入り" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:58 -msgid "Preference" -msgstr "プリファレンス" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:123 -msgid "Logout" -msgstr "ログアウト" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:132 -msgid "There are no records to show." -msgstr "表示するレコードはありません。" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:183 -msgid "Open this resource" -msgstr "このリソースを開く" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:223 -#: addons/web_mobile/static/src/xml/web_mobile.xml:226 -msgid "Percent of tasks closed according to total of tasks to do..." -msgstr "実行する全てのタスクのうち,このパーセントを終了しました…" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:264 -#: addons/web_mobile/static/src/xml/web_mobile.xml:268 -msgid "On" -msgstr "オン" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:265 -#: addons/web_mobile/static/src/xml/web_mobile.xml:269 -msgid "Off" -msgstr "オフ" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:294 -msgid "Form View" -msgstr "フォームビュー" diff --git a/addons/web_mobile/i18n/ka.po b/addons/web_mobile/i18n/ka.po deleted file mode 100644 index bbe8fed4cc9..00000000000 --- a/addons/web_mobile/i18n/ka.po +++ /dev/null @@ -1,106 +0,0 @@ -# Georgian translation for openerp-web -# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR <EMAIL@ADDRESS>, 2012. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" -"POT-Creation-Date: 2012-07-02 09:06+0200\n" -"PO-Revision-Date: 2012-03-15 19:04+0000\n" -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" -"Language-Team: Georgian <ka@li.org>\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-09-05 04:56+0000\n" -"X-Generator: Launchpad (build 15901)\n" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:17 -msgid "OpenERP" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:22 -msgid "Database:" -msgstr "მონაცემთა ბაზა:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:30 -msgid "Login:" -msgstr "მომხმარებელი:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:32 -msgid "Password:" -msgstr "პაროლი:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:34 -msgid "Login" -msgstr "შესვლა" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:36 -msgid "Bad username or password" -msgstr "არასწორი მომხმარებლის სახელი ან პაროლი" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:42 -msgid "Powered by openerp.com" -msgstr "მხარდაჭერილია openerp.com-ის მიერ" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:49 -msgid "Home" -msgstr "მთავარი" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:57 -msgid "Favourite" -msgstr "ფავორიტი" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:58 -msgid "Preference" -msgstr "პარამეტრები" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:123 -msgid "Logout" -msgstr "გამოსვლა" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:132 -msgid "There are no records to show." -msgstr "ჩანაწერები არ არის" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:183 -msgid "Open this resource" -msgstr "გახსენი ეს რესურსი" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:223 -#: addons/web_mobile/static/src/xml/web_mobile.xml:226 -msgid "Percent of tasks closed according to total of tasks to do..." -msgstr "სულ გასაკეთებელი ამოცანებიდან დახურული ამოცანების პროცენტი" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:264 -#: addons/web_mobile/static/src/xml/web_mobile.xml:268 -msgid "On" -msgstr "ჩართული" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:265 -#: addons/web_mobile/static/src/xml/web_mobile.xml:269 -msgid "Off" -msgstr "გამორთული" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:294 -msgid "Form View" -msgstr "ფორმის ხედი" diff --git a/addons/web_mobile/i18n/mk.po b/addons/web_mobile/i18n/mk.po deleted file mode 100644 index 9005eeda502..00000000000 --- a/addons/web_mobile/i18n/mk.po +++ /dev/null @@ -1,106 +0,0 @@ -# Macedonian translation for openerp-web -# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR <EMAIL@ADDRESS>, 2012. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" -"POT-Creation-Date: 2012-07-02 09:06+0200\n" -"PO-Revision-Date: 2012-02-08 11:05+0000\n" -"Last-Translator: Nikola Stojanoski <nstojanoski@vion.mk>\n" -"Language-Team: Macedonian <mk@li.org>\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-09-05 04:56+0000\n" -"X-Generator: Launchpad (build 15901)\n" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:17 -msgid "OpenERP" -msgstr "OpenERP" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:22 -msgid "Database:" -msgstr "Датабаза:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:30 -msgid "Login:" -msgstr "Корисничко име:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:32 -msgid "Password:" -msgstr "Лозинка:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:34 -msgid "Login" -msgstr "Најава" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:36 -msgid "Bad username or password" -msgstr "Погрешно корисничко име или лозинка" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:42 -msgid "Powered by openerp.com" -msgstr "Овозможено од openerp.com" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:49 -msgid "Home" -msgstr "Дома" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:57 -msgid "Favourite" -msgstr "Омилени" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:58 -msgid "Preference" -msgstr "Параметри" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:123 -msgid "Logout" -msgstr "Одјава" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:132 -msgid "There are no records to show." -msgstr "Нема податоци за прикажување" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:183 -msgid "Open this resource" -msgstr "Отвори го овој ресурс" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:223 -#: addons/web_mobile/static/src/xml/web_mobile.xml:226 -msgid "Percent of tasks closed according to total of tasks to do..." -msgstr "Процент од завршени задачи од листата на задачи..." - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:264 -#: addons/web_mobile/static/src/xml/web_mobile.xml:268 -msgid "On" -msgstr "Вклучено" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:265 -#: addons/web_mobile/static/src/xml/web_mobile.xml:269 -msgid "Off" -msgstr "Исклучено" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:294 -msgid "Form View" -msgstr "Форм Преглед" diff --git a/addons/web_mobile/i18n/mn.po b/addons/web_mobile/i18n/mn.po deleted file mode 100644 index 21dc45e034f..00000000000 --- a/addons/web_mobile/i18n/mn.po +++ /dev/null @@ -1,106 +0,0 @@ -# Mongolian translation for openerp-web -# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR <EMAIL@ADDRESS>, 2012. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" -"POT-Creation-Date: 2012-07-02 09:06+0200\n" -"PO-Revision-Date: 2012-06-13 17:29+0000\n" -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" -"Language-Team: Mongolian <mn@li.org>\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-09-05 04:56+0000\n" -"X-Generator: Launchpad (build 15901)\n" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:17 -msgid "OpenERP" -msgstr "OpenERP" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:22 -msgid "Database:" -msgstr "Өгөгдлийн бааз:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:30 -msgid "Login:" -msgstr "Нэвтрэх" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:32 -msgid "Password:" -msgstr "Нууц үг:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:34 -msgid "Login" -msgstr "Нэвтрэх" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:36 -msgid "Bad username or password" -msgstr "Хэрэглэгчийн нэр эсвэл нууц үг буруу байна" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:42 -msgid "Powered by openerp.com" -msgstr "Дэмжсэн openerp.com" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:49 -msgid "Home" -msgstr "Нүүр" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:57 -msgid "Favourite" -msgstr "Эрхэм" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:58 -msgid "Preference" -msgstr "Тохиргоо" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:123 -msgid "Logout" -msgstr "Гарах" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:132 -msgid "There are no records to show." -msgstr "Харуулах бичлэг алга байна." - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:183 -msgid "Open this resource" -msgstr "Энэ нөөцийг нээх" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:223 -#: addons/web_mobile/static/src/xml/web_mobile.xml:226 -msgid "Percent of tasks closed according to total of tasks to do..." -msgstr "Хийх ёстой бүх ажлаас хаагдсан ажлын эзлэх хувь..." - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:264 -#: addons/web_mobile/static/src/xml/web_mobile.xml:268 -msgid "On" -msgstr "Асаах" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:265 -#: addons/web_mobile/static/src/xml/web_mobile.xml:269 -msgid "Off" -msgstr "Унтраах" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:294 -msgid "Form View" -msgstr "Форм Харагдац" diff --git a/addons/web_mobile/i18n/nb.po b/addons/web_mobile/i18n/nb.po deleted file mode 100644 index 406c72fa7ec..00000000000 --- a/addons/web_mobile/i18n/nb.po +++ /dev/null @@ -1,106 +0,0 @@ -# Norwegian Bokmal translation for openerp-web -# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR <EMAIL@ADDRESS>, 2012. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" -"POT-Creation-Date: 2012-07-02 09:06+0200\n" -"PO-Revision-Date: 2012-03-29 11:37+0000\n" -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" -"Language-Team: Norwegian Bokmal <nb@li.org>\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-09-05 04:56+0000\n" -"X-Generator: Launchpad (build 15901)\n" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:17 -msgid "OpenERP" -msgstr "OpenERP" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:22 -msgid "Database:" -msgstr "Database:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:30 -msgid "Login:" -msgstr "Login:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:32 -msgid "Password:" -msgstr "Passord:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:34 -msgid "Login" -msgstr "Logg inn" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:36 -msgid "Bad username or password" -msgstr "Feil brukernavn eller passord" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:42 -msgid "Powered by openerp.com" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:49 -msgid "Home" -msgstr "Hjem" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:57 -msgid "Favourite" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:58 -msgid "Preference" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:123 -msgid "Logout" -msgstr "Logg ut" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:132 -msgid "There are no records to show." -msgstr "Det er ingen poster å vise." - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:183 -msgid "Open this resource" -msgstr "Åpne denne resurssen" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:223 -#: addons/web_mobile/static/src/xml/web_mobile.xml:226 -msgid "Percent of tasks closed according to total of tasks to do..." -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:264 -#: addons/web_mobile/static/src/xml/web_mobile.xml:268 -msgid "On" -msgstr "På" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:265 -#: addons/web_mobile/static/src/xml/web_mobile.xml:269 -msgid "Off" -msgstr "Av" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:294 -msgid "Form View" -msgstr "Skjemavisning" diff --git a/addons/web_mobile/i18n/nl.po b/addons/web_mobile/i18n/nl.po deleted file mode 100644 index b368e428ab1..00000000000 --- a/addons/web_mobile/i18n/nl.po +++ /dev/null @@ -1,106 +0,0 @@ -# Dutch translation for openerp-web -# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR <EMAIL@ADDRESS>, 2011. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" -"POT-Creation-Date: 2012-07-02 09:06+0200\n" -"PO-Revision-Date: 2012-02-11 08:31+0000\n" -"Last-Translator: Mario Gielissen <Unknown>\n" -"Language-Team: Dutch <nl@li.org>\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-09-05 04:56+0000\n" -"X-Generator: Launchpad (build 15901)\n" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:17 -msgid "OpenERP" -msgstr "OpenERP" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:22 -msgid "Database:" -msgstr "Database:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:30 -msgid "Login:" -msgstr "Inlognaam:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:32 -msgid "Password:" -msgstr "Wachtwoord:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:34 -msgid "Login" -msgstr "Aanmelden" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:36 -msgid "Bad username or password" -msgstr "Verkeerde gebruikersnaam of wachtwoord" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:42 -msgid "Powered by openerp.com" -msgstr "Powered by openerp.com" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:49 -msgid "Home" -msgstr "Home" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:57 -msgid "Favourite" -msgstr "Favoriet" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:58 -msgid "Preference" -msgstr "Voorkeur" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:123 -msgid "Logout" -msgstr "Afmelden" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:132 -msgid "There are no records to show." -msgstr "Er zijn geen records aanwezig." - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:183 -msgid "Open this resource" -msgstr "Open deze hulpbron" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:223 -#: addons/web_mobile/static/src/xml/web_mobile.xml:226 -msgid "Percent of tasks closed according to total of tasks to do..." -msgstr "Percentage van gesloten taken van het totaal aantal taken..." - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:264 -#: addons/web_mobile/static/src/xml/web_mobile.xml:268 -msgid "On" -msgstr "Aan" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:265 -#: addons/web_mobile/static/src/xml/web_mobile.xml:269 -msgid "Off" -msgstr "Uit" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:294 -msgid "Form View" -msgstr "Formulier Weergave" diff --git a/addons/web_mobile/i18n/nl_BE.po b/addons/web_mobile/i18n/nl_BE.po deleted file mode 100644 index 36d0a1a8331..00000000000 --- a/addons/web_mobile/i18n/nl_BE.po +++ /dev/null @@ -1,107 +0,0 @@ -# Dutch (Belgium) translation for openerp-web -# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR <EMAIL@ADDRESS>, 2011. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" -"POT-Creation-Date: 2012-07-02 09:06+0200\n" -"PO-Revision-Date: 2012-05-15 14:19+0000\n" -"Last-Translator: Els Van Vossel (Agaplan) <Unknown>\n" -"Language-Team: Dutch (Belgium) <nl_BE@li.org>\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-09-05 04:56+0000\n" -"X-Generator: Launchpad (build 15901)\n" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:17 -msgid "OpenERP" -msgstr "OpenERP" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:22 -msgid "Database:" -msgstr "Database:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:30 -msgid "Login:" -msgstr "Login:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:32 -msgid "Password:" -msgstr "Wachtwoord:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:34 -msgid "Login" -msgstr "Login" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:36 -msgid "Bad username or password" -msgstr "Verkeerde gebruikersnaam of wachtwoord" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:42 -msgid "Powered by openerp.com" -msgstr "Door openerp.com" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:49 -msgid "Home" -msgstr "Home" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:57 -msgid "Favourite" -msgstr "Favorieten" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:58 -msgid "Preference" -msgstr "Voorkeur" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:123 -msgid "Logout" -msgstr "Afmelden" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:132 -msgid "There are no records to show." -msgstr "Er kunnen geen records worden weergegeven" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:183 -msgid "Open this resource" -msgstr "Openen" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:223 -#: addons/web_mobile/static/src/xml/web_mobile.xml:226 -msgid "Percent of tasks closed according to total of tasks to do..." -msgstr "" -"Percentage afgesloten taken ten opzichte van totaal uit te voeren taken" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:264 -#: addons/web_mobile/static/src/xml/web_mobile.xml:268 -msgid "On" -msgstr "Aan" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:265 -#: addons/web_mobile/static/src/xml/web_mobile.xml:269 -msgid "Off" -msgstr "Uit" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:294 -msgid "Form View" -msgstr "Formulierweergave" diff --git a/addons/web_mobile/i18n/pl.po b/addons/web_mobile/i18n/pl.po deleted file mode 100644 index 8a101bcc7bc..00000000000 --- a/addons/web_mobile/i18n/pl.po +++ /dev/null @@ -1,106 +0,0 @@ -# Polish translation for openerp-web -# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR <EMAIL@ADDRESS>, 2011. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" -"POT-Creation-Date: 2012-07-02 09:06+0200\n" -"PO-Revision-Date: 2011-11-04 16:26+0000\n" -"Last-Translator: Grzegorz Grzelak (OpenGLOBE.pl) <grzegorz@openglobe.pl>\n" -"Language-Team: Polish <pl@li.org>\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-09-05 04:56+0000\n" -"X-Generator: Launchpad (build 15901)\n" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:17 -msgid "OpenERP" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:22 -msgid "Database:" -msgstr "Baza danych:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:30 -msgid "Login:" -msgstr "Login:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:32 -msgid "Password:" -msgstr "Hasło:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:34 -msgid "Login" -msgstr "Login" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:36 -msgid "Bad username or password" -msgstr "Niepoprawna nazwa użytkownika lub hasło" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:42 -msgid "Powered by openerp.com" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:49 -msgid "Home" -msgstr "Strona główna" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:57 -msgid "Favourite" -msgstr "Ulubione" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:58 -msgid "Preference" -msgstr "Preferencje" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:123 -msgid "Logout" -msgstr "Wyloguj" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:132 -msgid "There are no records to show." -msgstr "Brak rekordów do wyświetlenia" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:183 -msgid "Open this resource" -msgstr "Otwórz ten zasób" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:223 -#: addons/web_mobile/static/src/xml/web_mobile.xml:226 -msgid "Percent of tasks closed according to total of tasks to do..." -msgstr "Procent zamkniętych zadań w stosunku do sumy zadań do wykonania..." - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:264 -#: addons/web_mobile/static/src/xml/web_mobile.xml:268 -msgid "On" -msgstr "Wł." - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:265 -#: addons/web_mobile/static/src/xml/web_mobile.xml:269 -msgid "Off" -msgstr "Wył." - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:294 -msgid "Form View" -msgstr "Widok formularza" diff --git a/addons/web_mobile/i18n/pt.po b/addons/web_mobile/i18n/pt.po deleted file mode 100644 index f0b70745c46..00000000000 --- a/addons/web_mobile/i18n/pt.po +++ /dev/null @@ -1,108 +0,0 @@ -# Portuguese translation for openerp-web -# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR <EMAIL@ADDRESS>, 2011. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" -"POT-Creation-Date: 2012-07-02 09:06+0200\n" -"PO-Revision-Date: 2011-11-21 22:23+0000\n" -"Last-Translator: Daniel Reis (SECURITAS SA) <Unknown>\n" -"Language-Team: Portuguese <pt@li.org>\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-09-05 04:56+0000\n" -"X-Generator: Launchpad (build 15901)\n" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:17 -msgid "OpenERP" -msgstr "OpenERP" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:22 -msgid "Database:" -msgstr "Base de Dados:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:30 -msgid "Login:" -msgstr "Utilizador:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:32 -msgid "Password:" -msgstr "Palavra-chave:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:34 -msgid "Login" -msgstr "Sessão" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:36 -msgid "Bad username or password" -msgstr "Nome de utilizador ou senha incorrectos" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:42 -msgid "Powered by openerp.com" -msgstr "Desenvolvido por openerp.com" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:49 -msgid "Home" -msgstr "Início" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:57 -msgid "Favourite" -msgstr "Favorito" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:58 -msgid "Preference" -msgstr "Preferência" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:123 -msgid "Logout" -msgstr "Terminar Sessão" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:132 -msgid "There are no records to show." -msgstr "Não existem registos para mostrar." - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:183 -msgid "Open this resource" -msgstr "Abrir este recurso" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:223 -#: addons/web_mobile/static/src/xml/web_mobile.xml:226 -msgid "Percent of tasks closed according to total of tasks to do..." -msgstr "" -"Percentagem de tarefas fechadas de acordo com o total de tarefas a " -"desenvolver..." - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:264 -#: addons/web_mobile/static/src/xml/web_mobile.xml:268 -msgid "On" -msgstr "Activo" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:265 -#: addons/web_mobile/static/src/xml/web_mobile.xml:269 -msgid "Off" -msgstr "Inactivo" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:294 -msgid "Form View" -msgstr "Vista de Formulário" diff --git a/addons/web_mobile/i18n/pt_BR.po b/addons/web_mobile/i18n/pt_BR.po deleted file mode 100644 index 5b70bed3432..00000000000 --- a/addons/web_mobile/i18n/pt_BR.po +++ /dev/null @@ -1,107 +0,0 @@ -# Brazilian Portuguese translation for openerp-web -# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR <EMAIL@ADDRESS>, 2012. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" -"POT-Creation-Date: 2012-07-02 09:06+0200\n" -"PO-Revision-Date: 2012-02-08 06:51+0000\n" -"Last-Translator: Marcelo Sa - www.jambu.com.br <marcelo@jambu.com.br>\n" -"Language-Team: Brazilian Portuguese <pt_BR@li.org>\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-09-05 04:56+0000\n" -"X-Generator: Launchpad (build 15901)\n" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:17 -msgid "OpenERP" -msgstr "OpenERP" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:22 -msgid "Database:" -msgstr "Banco de Dados:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:30 -msgid "Login:" -msgstr "Login:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:32 -msgid "Password:" -msgstr "Senha:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:34 -msgid "Login" -msgstr "Login" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:36 -msgid "Bad username or password" -msgstr "Nome de usuário ou senha inválido" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:42 -msgid "Powered by openerp.com" -msgstr "Desenvolvido por openerp.com" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:49 -msgid "Home" -msgstr "Início" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:57 -msgid "Favourite" -msgstr "Favorito" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:58 -msgid "Preference" -msgstr "Preferências" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:123 -msgid "Logout" -msgstr "Sair" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:132 -msgid "There are no records to show." -msgstr "Não há registro para visualizar." - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:183 -msgid "Open this resource" -msgstr "Abrir este recurso" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:223 -#: addons/web_mobile/static/src/xml/web_mobile.xml:226 -msgid "Percent of tasks closed according to total of tasks to do..." -msgstr "" -"Percentual de tarefas fechadas de acordo com o total de tarefas pendentes..." - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:264 -#: addons/web_mobile/static/src/xml/web_mobile.xml:268 -msgid "On" -msgstr "Ativo" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:265 -#: addons/web_mobile/static/src/xml/web_mobile.xml:269 -msgid "Off" -msgstr "Desativado" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:294 -msgid "Form View" -msgstr "Visualização de formulário" diff --git a/addons/web_mobile/i18n/ro.po b/addons/web_mobile/i18n/ro.po deleted file mode 100644 index c7d1757018b..00000000000 --- a/addons/web_mobile/i18n/ro.po +++ /dev/null @@ -1,108 +0,0 @@ -# Romanian translation for openerp-web -# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR <EMAIL@ADDRESS>, 2012. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" -"POT-Creation-Date: 2012-07-02 09:06+0200\n" -"PO-Revision-Date: 2012-03-19 23:11+0000\n" -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" -"Language-Team: Romanian <ro@li.org>\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-09-05 04:56+0000\n" -"X-Generator: Launchpad (build 15901)\n" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:17 -msgid "OpenERP" -msgstr "OpenERP" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:22 -msgid "Database:" -msgstr "Baza de date:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:30 -msgid "Login:" -msgstr "Autentificare:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:32 -msgid "Password:" -msgstr "Parola:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:34 -msgid "Login" -msgstr "Autentificare" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:36 -msgid "Bad username or password" -msgstr "Utilizator sau parola incorect/a" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:42 -msgid "Powered by openerp.com" -msgstr "Oferit de openerp.com" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:49 -msgid "Home" -msgstr "Acasa" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:57 -msgid "Favourite" -msgstr "Preferat (a)" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:58 -msgid "Preference" -msgstr "Preferinta" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:123 -msgid "Logout" -msgstr "Deconectare" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:132 -msgid "There are no records to show." -msgstr "Nu exista nicio inregistrare de afisat." - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:183 -msgid "Open this resource" -msgstr "Deschideti acesta resursa" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:223 -#: addons/web_mobile/static/src/xml/web_mobile.xml:226 -msgid "Percent of tasks closed according to total of tasks to do..." -msgstr "" -"Procent al sarcinilor inchise in conformitate cu totalul sarcinilor de " -"efectuat..." - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:264 -#: addons/web_mobile/static/src/xml/web_mobile.xml:268 -msgid "On" -msgstr "Pornit (a)" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:265 -#: addons/web_mobile/static/src/xml/web_mobile.xml:269 -msgid "Off" -msgstr "Oprit (a)" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:294 -msgid "Form View" -msgstr "Vizualizare formular" diff --git a/addons/web_mobile/i18n/ru.po b/addons/web_mobile/i18n/ru.po deleted file mode 100644 index 290f978e973..00000000000 --- a/addons/web_mobile/i18n/ru.po +++ /dev/null @@ -1,106 +0,0 @@ -# Russian translation for openerp-web -# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR <EMAIL@ADDRESS>, 2011. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" -"POT-Creation-Date: 2012-07-02 09:06+0200\n" -"PO-Revision-Date: 2012-02-17 07:40+0000\n" -"Last-Translator: Aleksei Motsik <Unknown>\n" -"Language-Team: Russian <ru@li.org>\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-09-05 04:56+0000\n" -"X-Generator: Launchpad (build 15901)\n" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:17 -msgid "OpenERP" -msgstr "OpenERP" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:22 -msgid "Database:" -msgstr "База данных:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:30 -msgid "Login:" -msgstr "Имя пользователя:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:32 -msgid "Password:" -msgstr "Пароль:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:34 -msgid "Login" -msgstr "Войти" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:36 -msgid "Bad username or password" -msgstr "Неверное имя пользователя или пароль" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:42 -msgid "Powered by openerp.com" -msgstr "На платформе openerp.com" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:49 -msgid "Home" -msgstr "Домой" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:57 -msgid "Favourite" -msgstr "Закладки" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:58 -msgid "Preference" -msgstr "Настройки" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:123 -msgid "Logout" -msgstr "Завершить сеанс" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:132 -msgid "There are no records to show." -msgstr "Нечего показывать." - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:183 -msgid "Open this resource" -msgstr "Открыть этот ресурс" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:223 -#: addons/web_mobile/static/src/xml/web_mobile.xml:226 -msgid "Percent of tasks closed according to total of tasks to do..." -msgstr "Процент закрытых задач от открытых..." - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:264 -#: addons/web_mobile/static/src/xml/web_mobile.xml:268 -msgid "On" -msgstr "Вкл." - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:265 -#: addons/web_mobile/static/src/xml/web_mobile.xml:269 -msgid "Off" -msgstr "Откл." - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:294 -msgid "Form View" -msgstr "В виде формы" diff --git a/addons/web_mobile/i18n/sk.po b/addons/web_mobile/i18n/sk.po deleted file mode 100644 index 7212510c569..00000000000 --- a/addons/web_mobile/i18n/sk.po +++ /dev/null @@ -1,106 +0,0 @@ -# Slovak translation for openerp-web -# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR <EMAIL@ADDRESS>, 2011. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" -"POT-Creation-Date: 2012-07-02 09:06+0200\n" -"PO-Revision-Date: 2011-10-23 14:55+0000\n" -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" -"Language-Team: Slovak <sk@li.org>\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-09-05 04:56+0000\n" -"X-Generator: Launchpad (build 15901)\n" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:17 -msgid "OpenERP" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:22 -msgid "Database:" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:30 -msgid "Login:" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:32 -msgid "Password:" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:34 -msgid "Login" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:36 -msgid "Bad username or password" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:42 -msgid "Powered by openerp.com" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:49 -msgid "Home" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:57 -msgid "Favourite" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:58 -msgid "Preference" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:123 -msgid "Logout" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:132 -msgid "There are no records to show." -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:183 -msgid "Open this resource" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:223 -#: addons/web_mobile/static/src/xml/web_mobile.xml:226 -msgid "Percent of tasks closed according to total of tasks to do..." -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:264 -#: addons/web_mobile/static/src/xml/web_mobile.xml:268 -msgid "On" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:265 -#: addons/web_mobile/static/src/xml/web_mobile.xml:269 -msgid "Off" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:294 -msgid "Form View" -msgstr "" diff --git a/addons/web_mobile/i18n/sl.po b/addons/web_mobile/i18n/sl.po deleted file mode 100644 index 456d4919aeb..00000000000 --- a/addons/web_mobile/i18n/sl.po +++ /dev/null @@ -1,106 +0,0 @@ -# Slovenian translation for openerp-web -# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR <EMAIL@ADDRESS>, 2011. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" -"POT-Creation-Date: 2012-07-02 09:06+0200\n" -"PO-Revision-Date: 2012-01-30 17:52+0000\n" -"Last-Translator: ERP Basing <erp@basing.si>\n" -"Language-Team: Slovenian <sl@li.org>\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-09-05 04:56+0000\n" -"X-Generator: Launchpad (build 15901)\n" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:17 -msgid "OpenERP" -msgstr "OpenERP" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:22 -msgid "Database:" -msgstr "Podatkovna baza" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:30 -msgid "Login:" -msgstr "Prijava:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:32 -msgid "Password:" -msgstr "Geslo:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:34 -msgid "Login" -msgstr "Prijava" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:36 -msgid "Bad username or password" -msgstr "Napačno uporabniško ime ali geslo" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:42 -msgid "Powered by openerp.com" -msgstr "Poganja openerp.com" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:49 -msgid "Home" -msgstr "Domov" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:57 -msgid "Favourite" -msgstr "Priljubljen" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:58 -msgid "Preference" -msgstr "Lastnost" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:123 -msgid "Logout" -msgstr "Odjava" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:132 -msgid "There are no records to show." -msgstr "Ni vnosov za prikaz" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:183 -msgid "Open this resource" -msgstr "Odpri vir" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:223 -#: addons/web_mobile/static/src/xml/web_mobile.xml:226 -msgid "Percent of tasks closed according to total of tasks to do..." -msgstr "Delež končanih nalog" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:264 -#: addons/web_mobile/static/src/xml/web_mobile.xml:268 -msgid "On" -msgstr "Vključeno" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:265 -#: addons/web_mobile/static/src/xml/web_mobile.xml:269 -msgid "Off" -msgstr "Izključeno" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:294 -msgid "Form View" -msgstr "Prikaz obrazca" diff --git a/addons/web_mobile/i18n/sq.po b/addons/web_mobile/i18n/sq.po deleted file mode 100644 index bb9f583d9e1..00000000000 --- a/addons/web_mobile/i18n/sq.po +++ /dev/null @@ -1,106 +0,0 @@ -# Albanian translation for openerp-web -# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR <EMAIL@ADDRESS>, 2012. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" -"POT-Creation-Date: 2012-07-02 09:06+0200\n" -"PO-Revision-Date: 2012-02-01 00:18+0000\n" -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" -"Language-Team: Albanian <sq@li.org>\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-09-05 04:56+0000\n" -"X-Generator: Launchpad (build 15901)\n" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:17 -msgid "OpenERP" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:22 -msgid "Database:" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:30 -msgid "Login:" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:32 -msgid "Password:" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:34 -msgid "Login" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:36 -msgid "Bad username or password" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:42 -msgid "Powered by openerp.com" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:49 -msgid "Home" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:57 -msgid "Favourite" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:58 -msgid "Preference" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:123 -msgid "Logout" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:132 -msgid "There are no records to show." -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:183 -msgid "Open this resource" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:223 -#: addons/web_mobile/static/src/xml/web_mobile.xml:226 -msgid "Percent of tasks closed according to total of tasks to do..." -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:264 -#: addons/web_mobile/static/src/xml/web_mobile.xml:268 -msgid "On" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:265 -#: addons/web_mobile/static/src/xml/web_mobile.xml:269 -msgid "Off" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:294 -msgid "Form View" -msgstr "" diff --git a/addons/web_mobile/i18n/sr@latin.po b/addons/web_mobile/i18n/sr@latin.po deleted file mode 100644 index a3519d58d96..00000000000 --- a/addons/web_mobile/i18n/sr@latin.po +++ /dev/null @@ -1,106 +0,0 @@ -# Serbian Latin translation for openerp-web -# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR <EMAIL@ADDRESS>, 2012. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" -"POT-Creation-Date: 2012-07-02 09:06+0200\n" -"PO-Revision-Date: 2012-02-09 21:11+0000\n" -"Last-Translator: zmmaj <Unknown>\n" -"Language-Team: Serbian Latin <sr@latin@li.org>\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-09-05 04:56+0000\n" -"X-Generator: Launchpad (build 15901)\n" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:17 -msgid "OpenERP" -msgstr "OpenERP" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:22 -msgid "Database:" -msgstr "Baza podataka:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:30 -msgid "Login:" -msgstr "Prijava:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:32 -msgid "Password:" -msgstr "Lozinka:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:34 -msgid "Login" -msgstr "Prijava" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:36 -msgid "Bad username or password" -msgstr "Pogrešno korisničko ime ili lozinka" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:42 -msgid "Powered by openerp.com" -msgstr "Pogonjeno od openerp.com" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:49 -msgid "Home" -msgstr "Početak" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:57 -msgid "Favourite" -msgstr "Omiljeni" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:58 -msgid "Preference" -msgstr "Preference" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:123 -msgid "Logout" -msgstr "Odjava" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:132 -msgid "There are no records to show." -msgstr "Nema zapisa koje bih prikazao." - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:183 -msgid "Open this resource" -msgstr "Otvori ovaj resurs" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:223 -#: addons/web_mobile/static/src/xml/web_mobile.xml:226 -msgid "Percent of tasks closed according to total of tasks to do..." -msgstr "Procenat gotovih radnji u odnosu na ukupan broj radnji..." - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:264 -#: addons/web_mobile/static/src/xml/web_mobile.xml:268 -msgid "On" -msgstr "Uključeno" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:265 -#: addons/web_mobile/static/src/xml/web_mobile.xml:269 -msgid "Off" -msgstr "Isključeno" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:294 -msgid "Form View" -msgstr "Pregled Obrasca" diff --git a/addons/web_mobile/i18n/sv.po b/addons/web_mobile/i18n/sv.po deleted file mode 100644 index 389fef0e665..00000000000 --- a/addons/web_mobile/i18n/sv.po +++ /dev/null @@ -1,106 +0,0 @@ -# Swedish translation for openerp-web -# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR <EMAIL@ADDRESS>, 2012. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" -"POT-Creation-Date: 2012-07-02 09:06+0200\n" -"PO-Revision-Date: 2012-04-17 12:46+0000\n" -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" -"Language-Team: Swedish <sv@li.org>\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-09-05 04:56+0000\n" -"X-Generator: Launchpad (build 15901)\n" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:17 -msgid "OpenERP" -msgstr "OpenERP" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:22 -msgid "Database:" -msgstr "Databas:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:30 -msgid "Login:" -msgstr "Användarnamn:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:32 -msgid "Password:" -msgstr "Lösenord:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:34 -msgid "Login" -msgstr "Logga in" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:36 -msgid "Bad username or password" -msgstr "Fel användanamn eller lösenord" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:42 -msgid "Powered by openerp.com" -msgstr "Baserad på openerp.com" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:49 -msgid "Home" -msgstr "Hem" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:57 -msgid "Favourite" -msgstr "Favorit" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:58 -msgid "Preference" -msgstr "Inställning" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:123 -msgid "Logout" -msgstr "Logga ut" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:132 -msgid "There are no records to show." -msgstr "Det finns inte några poster att visa." - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:183 -msgid "Open this resource" -msgstr "Öppna denna resurs" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:223 -#: addons/web_mobile/static/src/xml/web_mobile.xml:226 -msgid "Percent of tasks closed according to total of tasks to do..." -msgstr "Andel avslutade uppgifter i jämförelse med alla..." - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:264 -#: addons/web_mobile/static/src/xml/web_mobile.xml:268 -msgid "On" -msgstr "På" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:265 -#: addons/web_mobile/static/src/xml/web_mobile.xml:269 -msgid "Off" -msgstr "Av" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:294 -msgid "Form View" -msgstr "Formulär" diff --git a/addons/web_mobile/i18n/tr.po b/addons/web_mobile/i18n/tr.po deleted file mode 100644 index b34dcdac8fd..00000000000 --- a/addons/web_mobile/i18n/tr.po +++ /dev/null @@ -1,106 +0,0 @@ -# Turkish translation for openerp-web -# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR <EMAIL@ADDRESS>, 2012. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" -"POT-Creation-Date: 2012-07-02 09:06+0200\n" -"PO-Revision-Date: 2012-02-09 20:15+0000\n" -"Last-Translator: Ahmet Altınışık <Unknown>\n" -"Language-Team: Turkish <tr@li.org>\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-09-05 04:56+0000\n" -"X-Generator: Launchpad (build 15901)\n" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:17 -msgid "OpenERP" -msgstr "OpenERP" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:22 -msgid "Database:" -msgstr "Veritabanı:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:30 -msgid "Login:" -msgstr "Kullanıcı:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:32 -msgid "Password:" -msgstr "Şifre:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:34 -msgid "Login" -msgstr "Oturum Aç" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:36 -msgid "Bad username or password" -msgstr "Hatalı Kullanıcı ya da şifre" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:42 -msgid "Powered by openerp.com" -msgstr "openerp.com ile yapıldı" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:49 -msgid "Home" -msgstr "Anasayfa" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:57 -msgid "Favourite" -msgstr "Favori" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:58 -msgid "Preference" -msgstr "Tercih" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:123 -msgid "Logout" -msgstr "Oturumu kapat" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:132 -msgid "There are no records to show." -msgstr "Gösterilecek kayıt yok" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:183 -msgid "Open this resource" -msgstr "Bu kaynağı aç" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:223 -#: addons/web_mobile/static/src/xml/web_mobile.xml:226 -msgid "Percent of tasks closed according to total of tasks to do..." -msgstr "toplam yapılacak iş sayısına göre kapanmış işlerin yüzdesi..." - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:264 -#: addons/web_mobile/static/src/xml/web_mobile.xml:268 -msgid "On" -msgstr "Açık" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:265 -#: addons/web_mobile/static/src/xml/web_mobile.xml:269 -msgid "Off" -msgstr "Kapalı" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:294 -msgid "Form View" -msgstr "Form Görünümü" diff --git a/addons/web_mobile/i18n/uk.po b/addons/web_mobile/i18n/uk.po deleted file mode 100644 index 5a3efb38fde..00000000000 --- a/addons/web_mobile/i18n/uk.po +++ /dev/null @@ -1,106 +0,0 @@ -# Ukrainian translation for openerp-web -# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR <EMAIL@ADDRESS>, 2011. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" -"POT-Creation-Date: 2012-07-02 09:06+0200\n" -"PO-Revision-Date: 2011-12-07 16:51+0000\n" -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" -"Language-Team: Ukrainian <uk@li.org>\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-09-05 04:56+0000\n" -"X-Generator: Launchpad (build 15901)\n" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:17 -msgid "OpenERP" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:22 -msgid "Database:" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:30 -msgid "Login:" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:32 -msgid "Password:" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:34 -msgid "Login" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:36 -msgid "Bad username or password" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:42 -msgid "Powered by openerp.com" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:49 -msgid "Home" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:57 -msgid "Favourite" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:58 -msgid "Preference" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:123 -msgid "Logout" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:132 -msgid "There are no records to show." -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:183 -msgid "Open this resource" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:223 -#: addons/web_mobile/static/src/xml/web_mobile.xml:226 -msgid "Percent of tasks closed according to total of tasks to do..." -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:264 -#: addons/web_mobile/static/src/xml/web_mobile.xml:268 -msgid "On" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:265 -#: addons/web_mobile/static/src/xml/web_mobile.xml:269 -msgid "Off" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:294 -msgid "Form View" -msgstr "" diff --git a/addons/web_mobile/i18n/web_mobile.pot b/addons/web_mobile/i18n/web_mobile.pot deleted file mode 100644 index 84347fb6b9c..00000000000 --- a/addons/web_mobile/i18n/web_mobile.pot +++ /dev/null @@ -1,107 +0,0 @@ -# Translations template for PROJECT. -# Copyright (C) 2012 ORGANIZATION -# This file is distributed under the same license as the PROJECT project. -# FIRST AUTHOR <EMAIL@ADDRESS>, 2012. -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: PROJECT VERSION\n" -"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2012-07-02 09:06+0200\n" -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" -"Language-Team: LANGUAGE <LL@li.org>\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=utf-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 0.9.6\n" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:17 -msgid "OpenERP" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:22 -msgid "Database:" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:30 -msgid "Login:" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:32 -msgid "Password:" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:34 -msgid "Login" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:36 -msgid "Bad username or password" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:42 -msgid "Powered by openerp.com" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:49 -msgid "Home" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:57 -msgid "Favourite" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:58 -msgid "Preference" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:123 -msgid "Logout" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:132 -msgid "There are no records to show." -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:183 -msgid "Open this resource" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:223 -#: addons/web_mobile/static/src/xml/web_mobile.xml:226 -msgid "Percent of tasks closed according to total of tasks to do..." -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:264 -#: addons/web_mobile/static/src/xml/web_mobile.xml:268 -msgid "On" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:265 -#: addons/web_mobile/static/src/xml/web_mobile.xml:269 -msgid "Off" -msgstr "" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:294 -msgid "Form View" -msgstr "" - diff --git a/addons/web_mobile/i18n/zh_CN.po b/addons/web_mobile/i18n/zh_CN.po deleted file mode 100644 index 63a172eb75d..00000000000 --- a/addons/web_mobile/i18n/zh_CN.po +++ /dev/null @@ -1,106 +0,0 @@ -# Chinese (Simplified) translation for openerp-web -# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR <EMAIL@ADDRESS>, 2012. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" -"POT-Creation-Date: 2012-07-02 09:06+0200\n" -"PO-Revision-Date: 2012-02-08 02:41+0000\n" -"Last-Translator: Wei \"oldrev\" Li <oldrev@gmail.com>\n" -"Language-Team: Chinese (Simplified) <zh_CN@li.org>\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-09-05 04:56+0000\n" -"X-Generator: Launchpad (build 15901)\n" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:17 -msgid "OpenERP" -msgstr "OpenERP" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:22 -msgid "Database:" -msgstr "数据库:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:30 -msgid "Login:" -msgstr "用户名:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:32 -msgid "Password:" -msgstr "密码:" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:34 -msgid "Login" -msgstr "登录" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:36 -msgid "Bad username or password" -msgstr "用户名或密码错误" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:42 -msgid "Powered by openerp.com" -msgstr "由 openerp.com 驱动" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:49 -msgid "Home" -msgstr "主页" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:57 -msgid "Favourite" -msgstr "收藏" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:58 -msgid "Preference" -msgstr "偏好设定" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:123 -msgid "Logout" -msgstr "注销" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:132 -msgid "There are no records to show." -msgstr "无可用数据。" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:183 -msgid "Open this resource" -msgstr "打开该资源" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:223 -#: addons/web_mobile/static/src/xml/web_mobile.xml:226 -msgid "Percent of tasks closed according to total of tasks to do..." -msgstr "任务关闭百分比取决于总体任务代办情况..." - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:264 -#: addons/web_mobile/static/src/xml/web_mobile.xml:268 -msgid "On" -msgstr "开" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:265 -#: addons/web_mobile/static/src/xml/web_mobile.xml:269 -msgid "Off" -msgstr "关" - -#. openerp-web -#: addons/web_mobile/static/src/xml/web_mobile.xml:294 -msgid "Form View" -msgstr "表单视图" diff --git a/addons/web_mobile/static/lib/jquery_mobile/css/jqm-docs.css b/addons/web_mobile/static/lib/jquery_mobile/css/jqm-docs.css deleted file mode 100644 index fd9eb9916ea..00000000000 --- a/addons/web_mobile/static/lib/jquery_mobile/css/jqm-docs.css +++ /dev/null @@ -1,240 +0,0 @@ -/* jqm docs css - -Beware: lots of last-minute CSS going on in here -cobblers, shoes, -*/ - -body { background: #dddddd; } - -.ui-mobile #jqm-home { background: #e5e5e5 url(../images/jqm-sitebg.png) top center repeat-x; } -.ui-mobile #jqm-homeheader { padding: 40px 10px 0; text-align: center; margin: 0 auto; } -.ui-mobile #jqm-homeheader h1 { margin: 0 0 ; } -.ui-mobile #jqm-homeheader p { margin: .3em 0 0; line-height: 1.3; font-size: .9em; font-weight: bold; color: #666; } -.ui-mobile #jqm-version { text-indent: -99999px; background: url(../images/version.png) top right no-repeat; width: 119px; height: 122px; overflow: hidden; position: absolute; z-index: 50; top: 0; right: 0; } -.ui-mobile .jqm-themeswitcher { margin: 10px 25px 10px 10px; } - -h2 { margin-top:1.5em; } -p code { font-size:1.2em; font-weight:bold; } - -dt { font-weight: bold; margin: 2em 0 .5em; } -dt code, dd code { font-size:1.3em; line-height:150%; } -pre { white-space: pre; white-space: pre-wrap; word-wrap: break-word; } - -#jqm-homeheader img { width: 235px; } - -.ui-header .jqm-home { top:0.65em; } -nav { margin: 0; } - -p.intro { - font-size: .96em; - line-height: 1.3; - border-top: 1px solid #75ae18; - border-bottom: 0; - background: none; - margin: 1.5em 0; - padding: 1.5em 15px 0; - -} -p.intro strong { - color: #558e08; -} -.footer-docs { - padding: 5px 0; -} -.footer-docs p { - float: left; - margin-left:15px; - font-weight: normal; - font-size: .9em; -} - -.type-interior .content-secondary { - border-right: 0; - border-left: 0; - margin: 10px -15px 0; - background: #fff; - border-top: 1px solid #ccc; -} -.type-home .ui-content { - margin-top: 5px; -} -.type-interior .ui-content { - padding-bottom: 0; -} -.content-secondary .ui-collapsible-contain { - padding: 10px 15px; - -} -.content-secondary .ui-collapsible-heading { - margin: 0 0 30px; -} -.content-secondary .ui-collapsible-heading-collapsed, -.content-secondary .ui-collapsible-content { - padding:0; - margin: 0; -} - - - -/* F bar theme - just for the docs overview headers */ -.ui-bar-f { - border: 1px solid #56A00E; - background: #74b042; - color: #fff; - font-weight: bold; - text-shadow: 0 -1px 1px #234403; - background-image: -moz-linear-gradient(top, - #74b042, - #56A00E); - background-image: -webkit-gradient(linear,left top,left bottom, - color-stop(0, #74b042), - color-stop(1, #56A00E)); - -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorStr='#81a8ce', EndColorStr='#5e87b0')"; -} -.ui-bar-f, -.ui-bar-f .ui-link-inherit { - color: #fff; -} -.ui-bar-f .ui-link { - color: #fff; - font-weight: bold; -} - - - - -/* docs site layout */ - -@media all and (min-width: 650px){ - - .jqm-home { - position: absolute; - left: 10px; - top: 0; - } - .type-home .ui-content { - margin-top: 5px; - } - .ui-mobile #jqm-homeheader { - max-width: 340px; - } - .ui-mobile .jqm-themeswitcher { - float: right; - } - p.intro { - margin: 2em 0; - } - .type-home .ui-content, - .type-interior .ui-content { - padding: 0; - background: url(../images/px-ccc.gif) 50% 0 repeat-y; - } - .type-interior .ui-content { - background-position: 45%; - overflow: hidden; - } - .content-secondary { - text-align: left; - float: left; - width: 45%; - background: none; - border-top: 0; - } - .content-secondary, - .type-interior .content-secondary { - margin: 30px 0 20px 2%; - padding: 20px 4% 0 0; - background: none; - } - .type-index .content-secondary { - padding: 0; - } - .type-index .content-secondary .ui-listview { - margin: 0; - } - - .ui-mobile #jqm-homeheader { - padding: 0; - } - .content-primary { - width: 45%; - float: right; - margin-top: 30px; - margin-right: 1%; - padding-right: 1%; - } - .content-primary ul:first-child { - margin-top: 0; - } - .content-secondary h2 { - position: absolute; - left: -9999px; - } - .type-interior .content-primary { - padding: 1.5em 6% 3em 0; - margin: 0; - } - /* fix up the collapsibles - expanded on desktop */ - .content-secondary .ui-collapsible-heading { - display: none; - } - .content-secondary .ui-collapsible-contain { - margin:0; - } - .content-secondary .ui-collapsible-content { - display: block; - margin: 0; - padding: 0; - } - .type-interior .content-secondary .ui-li-divider { - padding-top: 1em; - padding-bottom: 1em; - } - .type-interior .content-secondary { - margin: 0; - padding: 0; - } - -} -@media all and (min-width: 750px){ - .type-home .ui-content, - .type-interior .ui-content { - background-position: 39%; - } - .content-secondary { - width: 34%; - } - .content-primary { - width: 56%; - padding-right: 1%; - } - .type-interior .ui-content { - background-position: 34%; - } -} - -@media all and (min-width: 1200px){ - .type-home .ui-content{ - background-position: 38.5%; - } - .type-interior .ui-content { - background-position: 30%; - } - .content-secondary { - width: 30%; - padding-right:6%; - margin: 30px 0 20px 5%; - } - .type-interior .content-secondary { - margin: 0; - padding: 0; - } - .content-primary { - width: 50%; - margin-right: 5%; - padding-right: 3%; - } - .type-interior .content-primary { - width: 60%; - } -}
\ No newline at end of file diff --git a/addons/web_mobile/static/lib/jquery_mobile/css/jquery-ui-1.8.9.custom.css b/addons/web_mobile/static/lib/jquery_mobile/css/jquery-ui-1.8.9.custom.css deleted file mode 100644 index 8a73ef48ce9..00000000000 --- a/addons/web_mobile/static/lib/jquery_mobile/css/jquery-ui-1.8.9.custom.css +++ /dev/null @@ -1,573 +0,0 @@ -/* - * jQuery UI CSS Framework 1.8.9 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Theming/API - */ - -/* Layout helpers -----------------------------------*/ -.ui-helper-hidden { display: none; } -.ui-helper-hidden-accessible { position: absolute !important; clip: rect(1px 1px 1px 1px); clip: rect(1px,1px,1px,1px); } -.ui-helper-reset { margin: 0; padding: 0; border: 0; outline: 0; line-height: 1.3; text-decoration: none; font-size: 100%; list-style: none; } -.ui-helper-clearfix:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; } -.ui-helper-clearfix { display: inline-block; } -/* required comment for clearfix to work in Opera \*/ -* html .ui-helper-clearfix { height:1%; } -.ui-helper-clearfix { display:block; } -/* end clearfix */ -.ui-helper-zfix { width: 100%; height: 100%; top: 0; left: 0; position: absolute; opacity: 0; filter:Alpha(Opacity=0); } - - -/* Interaction Cues -----------------------------------*/ -.ui-state-disabled { cursor: default !important; } - - -/* Icons -----------------------------------*/ - -/* states and images */ -.ui-icon { display: block; text-indent: -99999px; overflow: hidden; background-repeat: no-repeat; } - - -/* Misc visuals -----------------------------------*/ - -/* Overlays */ -.ui-widget-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; } - - -/* - * jQuery UI CSS Framework 1.8.9 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Theming/API - * - * To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=Verdana,Arial,sans-serif&fwDefault=normal&fsDefault=1.1em&cornerRadius=4px&bgColorHeader=cccccc&bgTextureHeader=03_highlight_soft.png&bgImgOpacityHeader=75&borderColorHeader=aaaaaa&fcHeader=222222&iconColorHeader=222222&bgColorContent=ffffff&bgTextureContent=01_flat.png&bgImgOpacityContent=75&borderColorContent=aaaaaa&fcContent=222222&iconColorContent=222222&bgColorDefault=e6e6e6&bgTextureDefault=02_glass.png&bgImgOpacityDefault=75&borderColorDefault=d3d3d3&fcDefault=555555&iconColorDefault=888888&bgColorHover=dadada&bgTextureHover=02_glass.png&bgImgOpacityHover=75&borderColorHover=999999&fcHover=212121&iconColorHover=454545&bgColorActive=ffffff&bgTextureActive=02_glass.png&bgImgOpacityActive=65&borderColorActive=aaaaaa&fcActive=212121&iconColorActive=454545&bgColorHighlight=fbf9ee&bgTextureHighlight=02_glass.png&bgImgOpacityHighlight=55&borderColorHighlight=fcefa1&fcHighlight=363636&iconColorHighlight=2e83ff&bgColorError=fef1ec&bgTextureError=02_glass.png&bgImgOpacityError=95&borderColorError=cd0a0a&fcError=cd0a0a&iconColorError=cd0a0a&bgColorOverlay=aaaaaa&bgTextureOverlay=01_flat.png&bgImgOpacityOverlay=0&opacityOverlay=30&bgColorShadow=aaaaaa&bgTextureShadow=01_flat.png&bgImgOpacityShadow=0&opacityShadow=30&thicknessShadow=8px&offsetTopShadow=-8px&offsetLeftShadow=-8px&cornerRadiusShadow=8px - */ - - -/* Component containers -----------------------------------*/ -.ui-widget { font-family: Verdana,Arial,sans-serif; font-size: 1.1em; } -.ui-widget .ui-widget { font-size: 1em; } -.ui-widget input, .ui-widget select, .ui-widget textarea, .ui-widget button { font-family: Verdana,Arial,sans-serif; font-size: 1em; } -.ui-widget-content { border: 1px solid #aaaaaa; background: #ffffff url(images/ui-bg_flat_75_ffffff_40x100.png) 50% 50% repeat-x; color: #222222; } -.ui-widget-content a { color: #222222; } -.ui-widget-header { border: 1px solid #aaaaaa; background: #cccccc url(images/ui-bg_highlight-soft_75_cccccc_1x100.png) 50% 50% repeat-x; color: #222222; font-weight: bold; } -.ui-widget-header a { color: #222222; } - -/* Interaction states -----------------------------------*/ -.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default { border: 1px solid #d3d3d3; background: #e6e6e6 url(images/ui-bg_glass_75_e6e6e6_1x400.png) 50% 50% repeat-x; font-weight: normal; color: #555555; } -.ui-state-default a, .ui-state-default a:link, .ui-state-default a:visited { color: #555555; text-decoration: none; } -.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 #999999; background: #dadada url(images/ui-bg_glass_75_dadada_1x400.png) 50% 50% repeat-x; font-weight: normal; color: #212121; } -.ui-state-hover a, .ui-state-hover a:hover { color: #212121; text-decoration: none; } -.ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active { border: 1px solid #aaaaaa; background: #ffffff url(images/ui-bg_glass_65_ffffff_1x400.png) 50% 50% repeat-x; font-weight: normal; color: #212121; } -.ui-state-active a, .ui-state-active a:link, .ui-state-active a:visited { color: #212121; text-decoration: none; } -.ui-widget :active { outline: none; } - -/* Interaction Cues -----------------------------------*/ -.ui-state-highlight, .ui-widget-content .ui-state-highlight, .ui-widget-header .ui-state-highlight {border: 1px solid #fcefa1; background: #fbf9ee url(images/ui-bg_glass_55_fbf9ee_1x400.png) 50% 50% repeat-x; color: #363636; } -.ui-state-highlight a, .ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a { color: #363636; } -.ui-state-error, .ui-widget-content .ui-state-error, .ui-widget-header .ui-state-error {border: 1px solid #cd0a0a; background: #fef1ec url(images/ui-bg_glass_95_fef1ec_1x400.png) 50% 50% repeat-x; color: #cd0a0a; } -.ui-state-error a, .ui-widget-content .ui-state-error a, .ui-widget-header .ui-state-error a { color: #cd0a0a; } -.ui-state-error-text, .ui-widget-content .ui-state-error-text, .ui-widget-header .ui-state-error-text { color: #cd0a0a; } -.ui-priority-primary, .ui-widget-content .ui-priority-primary, .ui-widget-header .ui-priority-primary { font-weight: bold; } -.ui-priority-secondary, .ui-widget-content .ui-priority-secondary, .ui-widget-header .ui-priority-secondary { opacity: .7; filter:Alpha(Opacity=70); font-weight: normal; } -.ui-state-disabled, .ui-widget-content .ui-state-disabled, .ui-widget-header .ui-state-disabled { opacity: .35; filter:Alpha(Opacity=35); background-image: none; } - -/* Icons -----------------------------------*/ - -/* states and images */ -.ui-icon { width: 16px; height: 16px; background-image: url(images/ui-icons_222222_256x240.png); } -.ui-widget-content .ui-icon {background-image: url(images/ui-icons_222222_256x240.png); } -.ui-widget-header .ui-icon {background-image: url(images/ui-icons_222222_256x240.png); } -.ui-state-default .ui-icon { background-image: url(images/ui-icons_888888_256x240.png); } -.ui-state-hover .ui-icon, .ui-state-focus .ui-icon {background-image: url(images/ui-icons_454545_256x240.png); } -.ui-state-active .ui-icon {background-image: url(images/ui-icons_454545_256x240.png); } -.ui-state-highlight .ui-icon {background-image: url(images/ui-icons_2e83ff_256x240.png); } -.ui-state-error .ui-icon, .ui-state-error-text .ui-icon {background-image: url(images/ui-icons_cd0a0a_256x240.png); } - -/* positioning */ -.ui-icon-carat-1-n { background-position: 0 0; } -.ui-icon-carat-1-ne { background-position: -16px 0; } -.ui-icon-carat-1-e { background-position: -32px 0; } -.ui-icon-carat-1-se { background-position: -48px 0; } -.ui-icon-carat-1-s { background-position: -64px 0; } -.ui-icon-carat-1-sw { background-position: -80px 0; } -.ui-icon-carat-1-w { background-position: -96px 0; } -.ui-icon-carat-1-nw { background-position: -112px 0; } -.ui-icon-carat-2-n-s { background-position: -128px 0; } -.ui-icon-carat-2-e-w { background-position: -144px 0; } -.ui-icon-triangle-1-n { background-position: 0 -16px; } -.ui-icon-triangle-1-ne { background-position: -16px -16px; } -.ui-icon-triangle-1-e { background-position: -32px -16px; } -.ui-icon-triangle-1-se { background-position: -48px -16px; } -.ui-icon-triangle-1-s { background-position: -64px -16px; } -.ui-icon-triangle-1-sw { background-position: -80px -16px; } -.ui-icon-triangle-1-w { background-position: -96px -16px; } -.ui-icon-triangle-1-nw { background-position: -112px -16px; } -.ui-icon-triangle-2-n-s { background-position: -128px -16px; } -.ui-icon-triangle-2-e-w { background-position: -144px -16px; } -.ui-icon-arrow-1-n { background-position: 0 -32px; } -.ui-icon-arrow-1-ne { background-position: -16px -32px; } -.ui-icon-arrow-1-e { background-position: -32px -32px; } -.ui-icon-arrow-1-se { background-position: -48px -32px; } -.ui-icon-arrow-1-s { background-position: -64px -32px; } -.ui-icon-arrow-1-sw { background-position: -80px -32px; } -.ui-icon-arrow-1-w { background-position: -96px -32px; } -.ui-icon-arrow-1-nw { background-position: -112px -32px; } -.ui-icon-arrow-2-n-s { background-position: -128px -32px; } -.ui-icon-arrow-2-ne-sw { background-position: -144px -32px; } -.ui-icon-arrow-2-e-w { background-position: -160px -32px; } -.ui-icon-arrow-2-se-nw { background-position: -176px -32px; } -.ui-icon-arrowstop-1-n { background-position: -192px -32px; } -.ui-icon-arrowstop-1-e { background-position: -208px -32px; } -.ui-icon-arrowstop-1-s { background-position: -224px -32px; } -.ui-icon-arrowstop-1-w { background-position: -240px -32px; } -.ui-icon-arrowthick-1-n { background-position: 0 -48px; } -.ui-icon-arrowthick-1-ne { background-position: -16px -48px; } -.ui-icon-arrowthick-1-e { background-position: -32px -48px; } -.ui-icon-arrowthick-1-se { background-position: -48px -48px; } -.ui-icon-arrowthick-1-s { background-position: -64px -48px; } -.ui-icon-arrowthick-1-sw { background-position: -80px -48px; } -.ui-icon-arrowthick-1-w { background-position: -96px -48px; } -.ui-icon-arrowthick-1-nw { background-position: -112px -48px; } -.ui-icon-arrowthick-2-n-s { background-position: -128px -48px; } -.ui-icon-arrowthick-2-ne-sw { background-position: -144px -48px; } -.ui-icon-arrowthick-2-e-w { background-position: -160px -48px; } -.ui-icon-arrowthick-2-se-nw { background-position: -176px -48px; } -.ui-icon-arrowthickstop-1-n { background-position: -192px -48px; } -.ui-icon-arrowthickstop-1-e { background-position: -208px -48px; } -.ui-icon-arrowthickstop-1-s { background-position: -224px -48px; } -.ui-icon-arrowthickstop-1-w { background-position: -240px -48px; } -.ui-icon-arrowreturnthick-1-w { background-position: 0 -64px; } -.ui-icon-arrowreturnthick-1-n { background-position: -16px -64px; } -.ui-icon-arrowreturnthick-1-e { background-position: -32px -64px; } -.ui-icon-arrowreturnthick-1-s { background-position: -48px -64px; } -.ui-icon-arrowreturn-1-w { background-position: -64px -64px; } -.ui-icon-arrowreturn-1-n { background-position: -80px -64px; } -.ui-icon-arrowreturn-1-e { background-position: -96px -64px; } -.ui-icon-arrowreturn-1-s { background-position: -112px -64px; } -.ui-icon-arrowrefresh-1-w { background-position: -128px -64px; } -.ui-icon-arrowrefresh-1-n { background-position: -144px -64px; } -.ui-icon-arrowrefresh-1-e { background-position: -160px -64px; } -.ui-icon-arrowrefresh-1-s { background-position: -176px -64px; } -.ui-icon-arrow-4 { background-position: 0 -80px; } -.ui-icon-arrow-4-diag { background-position: -16px -80px; } -.ui-icon-extlink { background-position: -32px -80px; } -.ui-icon-newwin { background-position: -48px -80px; } -.ui-icon-refresh { background-position: -64px -80px; } -.ui-icon-shuffle { background-position: -80px -80px; } -.ui-icon-transfer-e-w { background-position: -96px -80px; } -.ui-icon-transferthick-e-w { background-position: -112px -80px; } -.ui-icon-folder-collapsed { background-position: 0 -96px; } -.ui-icon-folder-open { background-position: -16px -96px; } -.ui-icon-document { background-position: -32px -96px; } -.ui-icon-document-b { background-position: -48px -96px; } -.ui-icon-note { background-position: -64px -96px; } -.ui-icon-mail-closed { background-position: -80px -96px; } -.ui-icon-mail-open { background-position: -96px -96px; } -.ui-icon-suitcase { background-position: -112px -96px; } -.ui-icon-comment { background-position: -128px -96px; } -.ui-icon-person { background-position: -144px -96px; } -.ui-icon-print { background-position: -160px -96px; } -.ui-icon-trash { background-position: -176px -96px; } -.ui-icon-locked { background-position: -192px -96px; } -.ui-icon-unlocked { background-position: -208px -96px; } -.ui-icon-bookmark { background-position: -224px -96px; } -.ui-icon-tag { background-position: -240px -96px; } -.ui-icon-home { background-position: 0 -112px; } -.ui-icon-flag { background-position: -16px -112px; } -.ui-icon-calendar { background-position: -32px -112px; } -.ui-icon-cart { background-position: -48px -112px; } -.ui-icon-pencil { background-position: -64px -112px; } -.ui-icon-clock { background-position: -80px -112px; } -.ui-icon-disk { background-position: -96px -112px; } -.ui-icon-calculator { background-position: -112px -112px; } -.ui-icon-zoomin { background-position: -128px -112px; } -.ui-icon-zoomout { background-position: -144px -112px; } -.ui-icon-search { background-position: -160px -112px; } -.ui-icon-wrench { background-position: -176px -112px; } -.ui-icon-gear { background-position: -192px -112px; } -.ui-icon-heart { background-position: -208px -112px; } -.ui-icon-star { background-position: -224px -112px; } -.ui-icon-link { background-position: -240px -112px; } -.ui-icon-cancel { background-position: 0 -128px; } -.ui-icon-plus { background-position: -16px -128px; } -.ui-icon-plusthick { background-position: -32px -128px; } -.ui-icon-minus { background-position: -48px -128px; } -.ui-icon-minusthick { background-position: -64px -128px; } -.ui-icon-close { background-position: -80px -128px; } -.ui-icon-closethick { background-position: -96px -128px; } -.ui-icon-key { background-position: -112px -128px; } -.ui-icon-lightbulb { background-position: -128px -128px; } -.ui-icon-scissors { background-position: -144px -128px; } -.ui-icon-clipboard { background-position: -160px -128px; } -.ui-icon-copy { background-position: -176px -128px; } -.ui-icon-contact { background-position: -192px -128px; } -.ui-icon-image { background-position: -208px -128px; } -.ui-icon-video { background-position: -224px -128px; } -.ui-icon-script { background-position: -240px -128px; } -.ui-icon-alert { background-position: 0 -144px; } -.ui-icon-info { background-position: -16px -144px; } -.ui-icon-notice { background-position: -32px -144px; } -.ui-icon-help { background-position: -48px -144px; } -.ui-icon-check { background-position: -64px -144px; } -.ui-icon-bullet { background-position: -80px -144px; } -.ui-icon-radio-off { background-position: -96px -144px; } -.ui-icon-radio-on { background-position: -112px -144px; } -.ui-icon-pin-w { background-position: -128px -144px; } -.ui-icon-pin-s { background-position: -144px -144px; } -.ui-icon-play { background-position: 0 -160px; } -.ui-icon-pause { background-position: -16px -160px; } -.ui-icon-seek-next { background-position: -32px -160px; } -.ui-icon-seek-prev { background-position: -48px -160px; } -.ui-icon-seek-end { background-position: -64px -160px; } -.ui-icon-seek-start { background-position: -80px -160px; } -/* ui-icon-seek-first is deprecated, use ui-icon-seek-start instead */ -.ui-icon-seek-first { background-position: -80px -160px; } -.ui-icon-stop { background-position: -96px -160px; } -.ui-icon-eject { background-position: -112px -160px; } -.ui-icon-volume-off { background-position: -128px -160px; } -.ui-icon-volume-on { background-position: -144px -160px; } -.ui-icon-power { background-position: 0 -176px; } -.ui-icon-signal-diag { background-position: -16px -176px; } -.ui-icon-signal { background-position: -32px -176px; } -.ui-icon-battery-0 { background-position: -48px -176px; } -.ui-icon-battery-1 { background-position: -64px -176px; } -.ui-icon-battery-2 { background-position: -80px -176px; } -.ui-icon-battery-3 { background-position: -96px -176px; } -.ui-icon-circle-plus { background-position: 0 -192px; } -.ui-icon-circle-minus { background-position: -16px -192px; } -.ui-icon-circle-close { background-position: -32px -192px; } -.ui-icon-circle-triangle-e { background-position: -48px -192px; } -.ui-icon-circle-triangle-s { background-position: -64px -192px; } -.ui-icon-circle-triangle-w { background-position: -80px -192px; } -.ui-icon-circle-triangle-n { background-position: -96px -192px; } -.ui-icon-circle-arrow-e { background-position: -112px -192px; } -.ui-icon-circle-arrow-s { background-position: -128px -192px; } -.ui-icon-circle-arrow-w { background-position: -144px -192px; } -.ui-icon-circle-arrow-n { background-position: -160px -192px; } -.ui-icon-circle-zoomin { background-position: -176px -192px; } -.ui-icon-circle-zoomout { background-position: -192px -192px; } -.ui-icon-circle-check { background-position: -208px -192px; } -.ui-icon-circlesmall-plus { background-position: 0 -208px; } -.ui-icon-circlesmall-minus { background-position: -16px -208px; } -.ui-icon-circlesmall-close { background-position: -32px -208px; } -.ui-icon-squaresmall-plus { background-position: -48px -208px; } -.ui-icon-squaresmall-minus { background-position: -64px -208px; } -.ui-icon-squaresmall-close { background-position: -80px -208px; } -.ui-icon-grip-dotted-vertical { background-position: 0 -224px; } -.ui-icon-grip-dotted-horizontal { background-position: -16px -224px; } -.ui-icon-grip-solid-vertical { background-position: -32px -224px; } -.ui-icon-grip-solid-horizontal { background-position: -48px -224px; } -.ui-icon-gripsmall-diagonal-se { background-position: -64px -224px; } -.ui-icon-grip-diagonal-se { background-position: -80px -224px; } - - -/* Misc visuals -----------------------------------*/ - -/* Corner radius */ -.ui-corner-tl { -moz-border-radius-topleft: 4px; -webkit-border-top-left-radius: 4px; border-top-left-radius: 4px; } -.ui-corner-tr { -moz-border-radius-topright: 4px; -webkit-border-top-right-radius: 4px; border-top-right-radius: 4px; } -.ui-corner-bl { -moz-border-radius-bottomleft: 4px; -webkit-border-bottom-left-radius: 4px; border-bottom-left-radius: 4px; } -.ui-corner-br { -moz-border-radius-bottomright: 4px; -webkit-border-bottom-right-radius: 4px; border-bottom-right-radius: 4px; } -.ui-corner-top { -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-corner-bottom { -moz-border-radius-bottomleft: 4px; -webkit-border-bottom-left-radius: 4px; border-bottom-left-radius: 4px; -moz-border-radius-bottomright: 4px; -webkit-border-bottom-right-radius: 4px; border-bottom-right-radius: 4px; } -.ui-corner-right { -moz-border-radius-topright: 4px; -webkit-border-top-right-radius: 4px; border-top-right-radius: 4px; -moz-border-radius-bottomright: 4px; -webkit-border-bottom-right-radius: 4px; border-bottom-right-radius: 4px; } -.ui-corner-left { -moz-border-radius-topleft: 4px; -webkit-border-top-left-radius: 4px; border-top-left-radius: 4px; -moz-border-radius-bottomleft: 4px; -webkit-border-bottom-left-radius: 4px; border-bottom-left-radius: 4px; } -.ui-corner-all { -moz-border-radius: 4px; -webkit-border-radius: 4px; border-radius: 4px; } - -/* Overlays */ -.ui-widget-overlay { background: #aaaaaa url(images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x; opacity: .30;filter:Alpha(Opacity=30); } -.ui-widget-shadow { margin: -8px 0 0 -8px; padding: 8px; background: #aaaaaa url(images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x; opacity: .30;filter:Alpha(Opacity=30); -moz-border-radius: 8px; -webkit-border-radius: 8px; border-radius: 8px; }/* - * jQuery UI Resizable 1.8.9 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Resizable#theming - */ -.ui-resizable { position: relative;} -.ui-resizable-handle { position: absolute;font-size: 0.1px;z-index: 99999; display: block;} -.ui-resizable-disabled .ui-resizable-handle, .ui-resizable-autohide .ui-resizable-handle { display: none; } -.ui-resizable-n { cursor: n-resize; height: 7px; width: 100%; top: -5px; left: 0; } -.ui-resizable-s { cursor: s-resize; height: 7px; width: 100%; bottom: -5px; left: 0; } -.ui-resizable-e { cursor: e-resize; width: 7px; right: -5px; top: 0; height: 100%; } -.ui-resizable-w { cursor: w-resize; width: 7px; left: -5px; top: 0; height: 100%; } -.ui-resizable-se { cursor: se-resize; width: 12px; height: 12px; right: 1px; bottom: 1px; } -.ui-resizable-sw { cursor: sw-resize; width: 9px; height: 9px; left: -5px; bottom: -5px; } -.ui-resizable-nw { cursor: nw-resize; width: 9px; height: 9px; left: -5px; top: -5px; } -.ui-resizable-ne { cursor: ne-resize; width: 9px; height: 9px; right: -5px; top: -5px;}/* - * jQuery UI Selectable 1.8.9 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Selectable#theming - */ -.ui-selectable-helper { position: absolute; z-index: 100; border:1px dotted black; } -/* - * jQuery UI Accordion 1.8.9 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Accordion#theming - */ -/* IE/Win - Fix animation bug - #4615 */ -.ui-accordion { width: 100%; } -.ui-accordion .ui-accordion-header { cursor: pointer; position: relative; margin-top: 1px; zoom: 1; } -.ui-accordion .ui-accordion-li-fix { display: inline; } -.ui-accordion .ui-accordion-header-active { border-bottom: 0 !important; } -.ui-accordion .ui-accordion-header a { display: block; font-size: 1em; padding: .5em .5em .5em .7em; } -.ui-accordion-icons .ui-accordion-header a { padding-left: 2.2em; } -.ui-accordion .ui-accordion-header .ui-icon { position: absolute; left: .5em; top: 50%; margin-top: -8px; } -.ui-accordion .ui-accordion-content { padding: 1em 2.2em; border-top: 0; margin-top: -2px; position: relative; top: 1px; margin-bottom: 2px; overflow: auto; display: none; zoom: 1; } -.ui-accordion .ui-accordion-content-active { display: block; } -/* - * jQuery UI Autocomplete 1.8.9 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Autocomplete#theming - */ -.ui-autocomplete { position: absolute; cursor: default; } - -/* workarounds */ -* html .ui-autocomplete { width:1px; } /* without this, the menu expands to 100% in IE6 */ - -/* - * jQuery UI Menu 1.8.9 - * - * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Menu#theming - */ -.ui-menu { - list-style:none; - padding: 2px; - margin: 0; - display:block; - float: left; -} -.ui-menu .ui-menu { - margin-top: -3px; -} -.ui-menu .ui-menu-item { - margin:0; - padding: 0; - zoom: 1; - float: left; - clear: left; - width: 100%; -} -.ui-menu .ui-menu-item a { - text-decoration:none; - display:block; - padding:.2em .4em; - line-height:1.5; - zoom:1; -} -.ui-menu .ui-menu-item a.ui-state-hover, -.ui-menu .ui-menu-item a.ui-state-active { - font-weight: normal; - margin: -1px; -} -/* - * jQuery UI Button 1.8.9 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Button#theming - */ -.ui-button { display: inline-block; position: relative; padding: 0; margin-right: .1em; text-decoration: none !important; cursor: pointer; text-align: center; zoom: 1; overflow: visible; } /* the overflow property removes extra width in IE */ -.ui-button-icon-only { width: 2.2em; } /* to make room for the icon, a width needs to be set here */ -button.ui-button-icon-only { width: 2.4em; } /* button elements seem to need a little more width */ -.ui-button-icons-only { width: 3.4em; } -button.ui-button-icons-only { width: 3.7em; } - -/*button text element */ -.ui-button .ui-button-text { display: block; line-height: 1.4; } -.ui-button-text-only .ui-button-text { padding: .4em 1em; } -.ui-button-icon-only .ui-button-text, .ui-button-icons-only .ui-button-text { padding: .4em; text-indent: -9999999px; } -.ui-button-text-icon-primary .ui-button-text, .ui-button-text-icons .ui-button-text { padding: .4em 1em .4em 2.1em; } -.ui-button-text-icon-secondary .ui-button-text, .ui-button-text-icons .ui-button-text { padding: .4em 2.1em .4em 1em; } -.ui-button-text-icons .ui-button-text { padding-left: 2.1em; padding-right: 2.1em; } -/* no icon support for input elements, provide padding by default */ -input.ui-button { padding: .4em 1em; } - -/*button icon element(s) */ -.ui-button-icon-only .ui-icon, .ui-button-text-icon-primary .ui-icon, .ui-button-text-icon-secondary .ui-icon, .ui-button-text-icons .ui-icon, .ui-button-icons-only .ui-icon { position: absolute; top: 50%; margin-top: -8px; } -.ui-button-icon-only .ui-icon { left: 50%; margin-left: -8px; } -.ui-button-text-icon-primary .ui-button-icon-primary, .ui-button-text-icons .ui-button-icon-primary, .ui-button-icons-only .ui-button-icon-primary { left: .5em; } -.ui-button-text-icon-secondary .ui-button-icon-secondary, .ui-button-text-icons .ui-button-icon-secondary, .ui-button-icons-only .ui-button-icon-secondary { right: .5em; } -.ui-button-text-icons .ui-button-icon-secondary, .ui-button-icons-only .ui-button-icon-secondary { right: .5em; } - -/*button sets*/ -.ui-buttonset { margin-right: 7px; } -.ui-buttonset .ui-button { margin-left: 0; margin-right: -.3em; } - -/* workarounds */ -button.ui-button::-moz-focus-inner { border: 0; padding: 0; } /* reset extra padding in Firefox */ -/* - * jQuery UI Dialog 1.8.9 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Dialog#theming - */ -.ui-dialog { position: absolute; padding: .2em; width: 300px; overflow: hidden; } -.ui-dialog .ui-dialog-titlebar { padding: .4em 1em; position: relative; } -.ui-dialog .ui-dialog-title { float: left; margin: .1em 16px .1em 0; } -.ui-dialog .ui-dialog-titlebar-close { position: absolute; right: .3em; top: 50%; width: 19px; margin: -10px 0 0 0; padding: 1px; height: 18px; } -.ui-dialog .ui-dialog-titlebar-close span { display: block; margin: 1px; } -.ui-dialog .ui-dialog-titlebar-close:hover, .ui-dialog .ui-dialog-titlebar-close:focus { padding: 0; } -.ui-dialog .ui-dialog-content { position: relative; border: 0; padding: .5em 1em; background: none; overflow: auto; zoom: 1; } -.ui-dialog .ui-dialog-buttonpane { text-align: left; border-width: 1px 0 0 0; background-image: none; margin: .5em 0 0 0; padding: .3em 1em .5em .4em; } -.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset { float: right; } -.ui-dialog .ui-dialog-buttonpane button { margin: .5em .4em .5em 0; cursor: pointer; } -.ui-dialog .ui-resizable-se { width: 14px; height: 14px; right: 3px; bottom: 3px; } -.ui-draggable .ui-dialog-titlebar { cursor: move; } -/* - * jQuery UI Slider 1.8.9 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Slider#theming - */ -.ui-slider { position: relative; text-align: left; } -.ui-slider .ui-slider-handle { position: absolute; z-index: 2; width: 1.2em; height: 1.2em; cursor: default; } -.ui-slider .ui-slider-range { position: absolute; z-index: 1; font-size: .7em; display: block; border: 0; background-position: 0 0; } - -.ui-slider-horizontal { height: .8em; } -.ui-slider-horizontal .ui-slider-handle { top: -.3em; margin-left: -.6em; } -.ui-slider-horizontal .ui-slider-range { top: 0; height: 100%; } -.ui-slider-horizontal .ui-slider-range-min { left: 0; } -.ui-slider-horizontal .ui-slider-range-max { right: 0; } - -.ui-slider-vertical { width: .8em; height: 100px; } -.ui-slider-vertical .ui-slider-handle { left: -.3em; margin-left: 0; margin-bottom: -.6em; } -.ui-slider-vertical .ui-slider-range { left: 0; width: 100%; } -.ui-slider-vertical .ui-slider-range-min { bottom: 0; } -.ui-slider-vertical .ui-slider-range-max { top: 0; }/* - * jQuery UI Tabs 1.8.9 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Tabs#theming - */ -.ui-tabs { position: relative; padding: .2em; 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 .2em 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 a { float: left; padding: .5em 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: none; } -.ui-tabs .ui-tabs-hide { display: none !important; } -/* - * jQuery UI Datepicker 1.8.9 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Datepicker#theming - */ -.ui-datepicker { width: 17em; padding: .2em .2em 0; display: none; } -.ui-datepicker .ui-datepicker-header { position:relative; padding:.2em 0; } -.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next { position:absolute; top: 2px; width: 1.8em; height: 1.8em; } -.ui-datepicker .ui-datepicker-prev-hover, .ui-datepicker .ui-datepicker-next-hover { top: 1px; } -.ui-datepicker .ui-datepicker-prev { left:2px; } -.ui-datepicker .ui-datepicker-next { right:2px; } -.ui-datepicker .ui-datepicker-prev-hover { left:1px; } -.ui-datepicker .ui-datepicker-next-hover { right:1px; } -.ui-datepicker .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-next span { display: block; position: absolute; left: 50%; margin-left: -8px; top: 50%; margin-top: -8px; } -.ui-datepicker .ui-datepicker-title { margin: 0 2.3em; line-height: 1.8em; text-align: center; } -.ui-datepicker .ui-datepicker-title select { font-size:1em; margin:1px 0; } -.ui-datepicker select.ui-datepicker-month-year {width: 100%;} -.ui-datepicker select.ui-datepicker-month, -.ui-datepicker select.ui-datepicker-year { width: 49%;} -.ui-datepicker table {width: 100%; font-size: .9em; border-collapse: collapse; margin:0 0 .4em; } -.ui-datepicker th { padding: .7em .3em; text-align: center; font-weight: bold; border: 0; } -.ui-datepicker td { border: 0; padding: 1px; } -.ui-datepicker td span, .ui-datepicker td a { display: block; padding: .2em; text-align: right; text-decoration: none; } -.ui-datepicker .ui-datepicker-buttonpane { background-image: none; margin: .7em 0 0 0; padding:0 .2em; border-left: 0; border-right: 0; border-bottom: 0; } -.ui-datepicker .ui-datepicker-buttonpane button { float: right; margin: .5em .2em .4em; cursor: pointer; padding: .2em .6em .3em .6em; width:auto; overflow:visible; } -.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current { float:left; } - -/* with multiple calendars */ -.ui-datepicker.ui-datepicker-multi { width:auto; } -.ui-datepicker-multi .ui-datepicker-group { float:left; } -.ui-datepicker-multi .ui-datepicker-group table { width:95%; margin:0 auto .4em; } -.ui-datepicker-multi-2 .ui-datepicker-group { width:50%; } -.ui-datepicker-multi-3 .ui-datepicker-group { width:33.3%; } -.ui-datepicker-multi-4 .ui-datepicker-group { width:25%; } -.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header { border-left-width:0; } -.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header { border-left-width:0; } -.ui-datepicker-multi .ui-datepicker-buttonpane { clear:left; } -.ui-datepicker-row-break { clear:both; width:100%; } - -/* RTL support */ -.ui-datepicker-rtl { direction: rtl; } -.ui-datepicker-rtl .ui-datepicker-prev { right: 2px; left: auto; } -.ui-datepicker-rtl .ui-datepicker-next { left: 2px; right: auto; } -.ui-datepicker-rtl .ui-datepicker-prev:hover { right: 1px; left: auto; } -.ui-datepicker-rtl .ui-datepicker-next:hover { left: 1px; right: auto; } -.ui-datepicker-rtl .ui-datepicker-buttonpane { clear:right; } -.ui-datepicker-rtl .ui-datepicker-buttonpane button { float: left; } -.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current { float:right; } -.ui-datepicker-rtl .ui-datepicker-group { float:right; } -.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header { border-right-width:0; border-left-width:1px; } -.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header { border-right-width:0; border-left-width:1px; } - -/* IE6 IFRAME FIX (taken from datepicker 1.5.3 */ -.ui-datepicker-cover { - display: none; /*sorry for IE5*/ - display/**/: block; /*sorry for IE5*/ - position: absolute; /*must have*/ - z-index: -1; /*must have*/ - filter: mask(); /*must have*/ - top: -4px; /*must have*/ - left: -4px; /*must have*/ - width: 200px; /*must have*/ - height: 200px; /*must have*/ -}/* - * jQuery UI Progressbar 1.8.9 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Progressbar#theming - */ -.ui-progressbar { height:1.2em; text-align: left; } -.ui-progressbar .ui-progressbar-value {margin: -1px; height:100%;background-image:url(/web_mobile/static/lib/jquery_mobile/img/progress-bar.gif) }
\ No newline at end of file diff --git a/addons/web_mobile/static/lib/jquery_mobile/css/jquery.mobile-1.0a4.1.css b/addons/web_mobile/static/lib/jquery_mobile/css/jquery.mobile-1.0a4.1.css deleted file mode 100644 index 4216af1115d..00000000000 --- a/addons/web_mobile/static/lib/jquery_mobile/css/jquery.mobile-1.0a4.1.css +++ /dev/null @@ -1,1683 +0,0 @@ -/* -* jQuery Mobile Framework -* Copyright (c) jQuery Project -* Dual licensed under the MIT (MIT-LICENSE.txt) and GPL (GPL-LICENSE.txt) licenses. -* Note: Code is in draft form and is subject to change -*/ - - -/* A ------------------------------------------------------------------------------------------------------------*/ - -.ui-bar-a { - border: 1px solid #2A2A2A; - background: #111111; - color: #ffffff; - font-weight: bold; - text-shadow: 0 -1px 1px #000000; - background-image: -moz-linear-gradient(top, - #3c3c3c, - #111111); - background-image: -webkit-gradient(linear,left top,left bottom, - color-stop(0, #3c3c3c), - color-stop(1, #111111)); - -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorStr='#3c3c3c', EndColorStr='#111111')"; -} -.ui-bar-a, -.ui-bar-a input, -.ui-bar-a select, -.ui-bar-a textarea, -.ui-bar-a button { - font-family: Helvetica, Arial, sans-serif; -} -.ui-bar-a .ui-link-inherit { - color: #fff; -} -.ui-bar-a .ui-link { - color: #7cc4e7; - font-weight: bold; -} -.ui-body-a { - border: 1px solid #2A2A2A; - background: #222222; - color: #fff; - text-shadow: 0 1px 0 #000; - font-weight: normal; - background-image: -moz-linear-gradient(top, - #666666, - #222222); - background-image: -webkit-gradient(linear,left top,left bottom, - color-stop(0, #666666), - color-stop(1, #222222)); - -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorStr='#666666', EndColorStr='#222222)')"; -} -.ui-body-a, -.ui-body-a input, -.ui-body-a select, -.ui-body-a textarea, -.ui-body-a button { - font-family: Helvetica, Arial, sans-serif; -} -.ui-body-a .ui-link-inherit { - color: #fff; -} -.ui-body-a .ui-link { - color: #2489CE; - font-weight: bold; -} -.ui-br { - border-bottom: rgb(130,130,130); - border-bottom: rgba(130,130,130,.3); - border-bottom-width: 1px; - border-bottom-style: solid; -} -.ui-btn-up-a { - border: 1px solid #222; - background: #333333; - font-weight: bold; - color: #fff; - text-shadow: 0 -1px 1px #000; - background-image: -moz-linear-gradient(top, - #555555, - #333333); - background-image: -webkit-gradient(linear,left top,left bottom, - color-stop(0, #555555), - color-stop(1, #333333)); - -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorStr='#555555', EndColorStr='#333333')"; -} -.ui-btn-up-a a.ui-link-inherit { - color: #fff; -} -.ui-btn-hover-a { - border: 1px solid #000; - background: #444444; - font-weight: bold; - color: #fff; - text-shadow: 0 -1px 1px #000; - background-image: -moz-linear-gradient(top, - #666666, - #444444); - background-image: -webkit-gradient(linear,left top,left bottom, - color-stop(0, #666666), - color-stop(1, #444444)); - -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorStr='#666666', EndColorStr='#444444')"; -} -.ui-btn-hover-a a.ui-link-inherit { - color: #fff; -} -.ui-btn-down-a { - border: 1px solid #000; - background: #3d3d3d; - font-weight: bold; - color: #fff; - text-shadow: 0 -1px 1px #000; - background-image: -moz-linear-gradient(top, - #333333, - #5a5a5a); - background-image: -webkit-gradient(linear,left top,left bottom, - color-stop(0, #333333), - color-stop(1, #5a5a5a)); - -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorStr='#333333', EndColorStr='#5a5a5a')"; -} -.ui-btn-down-a a.ui-link-inherit { - color: #fff; -} -.ui-btn-up-a, -.ui-btn-hover-a, -.ui-btn-down-a { - font-family: Helvetica, Arial, sans-serif; - text-decoration: none; -} - - -/* B ------------------------------------------------------------------------------------------------------------*/ - -.ui-bar-b { - border: 1px solid #456f9a; - background: #5e87b0; - color: #fff; - font-weight: bold; - text-shadow: 0 -1px 1px #254f7a; - background-image: -moz-linear-gradient(top, - #81a8ce, - #5e87b0); - background-image: -webkit-gradient(linear,left top,left bottom, - color-stop(0, #81a8ce), - color-stop(1, #5e87b0)); - -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorStr='#81a8ce', EndColorStr='#5e87b0')"; -} -.ui-bar-b, -.ui-bar-b input, -.ui-bar-b select, -.ui-bar-b textarea, -.ui-bar-b button { - font-family: Helvetica, Arial, sans-serif; -} -.ui-bar-b .ui-link-inherit { - color: #fff; -} -.ui-bar-b .ui-link { - color: #7cc4e7; - font-weight: bold; -} - -.ui-body-b { - border: 1px solid #C6C6C6; - background: #cccccc; - color: #333333; - text-shadow: 0 1px 0 #fff; - font-weight: normal; - background-image: -moz-linear-gradient(top, - #e6e6e6, - #cccccc); - background-image: -webkit-gradient(linear,left top,left bottom, - color-stop(0, #e6e6e6), - color-stop(1, #cccccc)); - -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorStr='#e6e6e6', EndColorStr='#cccccc')"; -} -.ui-body-b, -.ui-body-b input, -.ui-body-b select, -.ui-body-b textarea, -.ui-body-b button { - font-family: Helvetica, Arial, sans-serif; -} -.ui-body-b .ui-link-inherit { - color: #333333; -} -.ui-body-b .ui-link { - color: #2489CE; - font-weight: bold; -} -.ui-btn-up-b { - border: 1px solid #145072; - background: #2567ab; - font-weight: bold; - color: #fff; - text-shadow: 0 -1px 1px #145072; - background-image: -moz-linear-gradient(top, - #4e89c5, - #2567ab); - background-image: -webkit-gradient(linear,left top,left bottom, - color-stop(0, #5f9cc5), - color-stop(1, #396b9e)); - -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorStr='#4e89c5', EndColorStr='#2567ab')"; -} -.ui-btn-up-b a.ui-link-inherit { - color: #fff; -} -.ui-btn-hover-b { - border: 1px solid #00516e; - background: #4b88b6; - font-weight: bold; - color: #fff; - text-shadow: 0 -1px 1px #014D68; - background-image: -moz-linear-gradient(top, - #72b0d4, - #4b88b6); - background-image: -webkit-gradient(linear,left top,left bottom, - color-stop(0, #72b0d4), - color-stop(1, #4b88b6)); - -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorStr='#72b0d4', EndColorStr='#4b88b6')"; -} -.ui-btn-hover-b a.ui-link-inherit { - color: #fff; -} -.ui-btn-down-b { - border: 1px solid #225377; - background: #4e89c5; - font-weight: bold; - color: #fff; - text-shadow: 0 -1px 1px #225377; - background-image: -moz-linear-gradient(top, - #396b9e, - #4e89c5); - background-image: -webkit-gradient(linear,left top,left bottom, - color-stop(0, #396b9e), - color-stop(1, #4e89c5)); - -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorStr='#396b9e', EndColorStr='#4e89c5')"; -} -.ui-btn-down-b a.ui-link-inherit { - color: #fff; -} -.ui-btn-up-b, -.ui-btn-hover-b, -.ui-btn-down-b { - font-family: Helvetica, Arial, sans-serif; - text-decoration: none; -} - - -/* C ------------------------------------------------------------------------------------------------------------*/ - -.ui-bar-c { - border: 1px solid #B3B3B3; - background: #e9eaeb; - color: #3E3E3E; - font-weight: bold; - text-shadow: 0 1px 1px #fff; - background-image: -moz-linear-gradient(top, - #f0f0f0, - #e9eaeb); - background-image: -webkit-gradient(linear,left top,left bottom, - color-stop(0, #f0f0f0), - color-stop(1, #e9eaeb)); - -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorStr='#f0f0f0', EndColorStr='#e9eaeb')"; -} -.ui-bar-c, -.ui-bar-c input, -.ui-bar-c select, -.ui-bar-c textarea, -.ui-bar-c button { - font-family: Helvetica, Arial, sans-serif; -} -.ui-body-c { - border: 1px solid #B3B3B3; - color: #333333; - text-shadow: 0 1px 0 #fff; - background: #f0f0f0; - background-image: -moz-linear-gradient(top, - #eeeeee, - #dddddd); - background-image: -webkit-gradient(linear,left top,left bottom, - color-stop(0, #eeeeee), - color-stop(1, #dddddd)); - -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorStr='#eeeeee', EndColorStr='#dddddd')"; -} -.ui-body-c, -.ui-body-c input, -.ui-body-c select, -.ui-body-c textarea, -.ui-body-c button { - font-family: Helvetica, Arial, sans-serif; -} -.ui-body-c .ui-link-inherit { - color: #333333; -} -.ui-body-c .ui-link { - color: #2489CE; - font-weight: bold; -} - -.ui-btn-up-c { - border: 1px solid #ccc; - background: #eee; - font-weight: bold; - color: #444; - text-shadow: 0 1px 1px #f6f6f6; - background-image: -moz-linear-gradient(top, - #fefefe, - #eeeeee); - background-image: -webkit-gradient(linear,left top,left bottom, - color-stop(0, #fdfdfd), - color-stop(1, #eeeeee)); - -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorStr='#fdfdfd', EndColorStr='#eeeeee')"; -} -.ui-btn-up-c a.ui-link-inherit { - color: #2F3E46; -} - -.ui-btn-hover-c { - border: 1px solid #bbb; - background: #dadada; - font-weight: bold; - color: #101010; - text-shadow: 0 1px 1px #fff; - background-image: -moz-linear-gradient(top, - #ededed, - #dadada); - background-image: -webkit-gradient(linear,left top,left bottom, - color-stop(0, #ededed), - color-stop(1, #dadada)); - -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorStr='#ededed', EndColorStr='#dadada')"; -} -.ui-btn-hover-c a.ui-link-inherit { - color: #2F3E46; -} -.ui-btn-down-c { - border: 1px solid #808080; - background: #fdfdfd; - font-weight: bold; - color: #111111; - text-shadow: 0 1px 1px #ffffff; - background-image: -moz-linear-gradient(top, - #eeeeee, - #fdfdfd); - background-image: -webkit-gradient(linear,left top,left bottom, - color-stop(0, #eeeeee), - color-stop(1, #fdfdfd)); - -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorStr='#eeeeee', EndColorStr='#fdfdfd')"; -} -.ui-btn-down-c a.ui-link-inherit { - color: #2F3E46; -} -.ui-btn-up-c, -.ui-btn-hover-c, -.ui-btn-down-c { - font-family: Helvetica, Arial, sans-serif; - text-decoration: none; -} - - -/* D ------------------------------------------------------------------------------------------------------------*/ - -.ui-bar-d { - border: 1px solid #ccc; - background: #bbb; - color: #333; - text-shadow: 0 1px 0 #eee; - background-image: -moz-linear-gradient(top, - #ddd, - #bbb); - background-image: -webkit-gradient(linear,left top,left bottom, - color-stop(0, #ddd), - color-stop(1, #bbb)); - -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorStr='#dddddd', EndColorStr='#bbbbbb')"; -} -.ui-bar-d, -.ui-bar-d input, -.ui-bar-d select, -.ui-bar-d textarea, -.ui-bar-d button { - font-family: Helvetica, Arial, sans-serif; -} -.ui-bar-d .ui-link-inherit { - color: #333; -} -.ui-bar-d .ui-link { - color: #2489CE; - font-weight: bold; -} -.ui-body-d { - border: 1px solid #ccc; - color: #333333; - text-shadow: 0 1px 0 #fff; - background: #ffffff; -} -.ui-body-d, -.ui-body-d input, -.ui-body-d select, -.ui-body-d textarea, -.ui-body-d button { - font-family: Helvetica, Arial, sans-serif; -} -.ui-body-d .ui-link-inherit { - color: #333333; -} -.ui-body-d .ui-link { - color: #2489CE; - font-weight: bold; -} -.ui-btn-up-d { - border: 1px solid #ccc; - background: #fff; - font-weight: bold; - color: #444; - text-shadow: 0 1px 1px #fff; -} -.ui-btn-up-d a.ui-link-inherit { - color: #333; -} -.ui-btn-hover-d { - border: 1px solid #aaa; - background: #eeeeee; - font-weight: bold; - color: #222; - cursor: pointer; - text-shadow: 0 1px 1px #fff; - background-image: -moz-linear-gradient(top, - #fdfdfd, - #eeeeee); - background-image: -webkit-gradient(linear,left top,left bottom, - color-stop(0, #fdfdfd), - color-stop(1, #eeeeee)); - -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorStr='#fdfdfd', EndColorStr='#eeeeee')"; -} -.ui-btn-hover-d a.ui-link-inherit { - color: #222; -} -.ui-btn-down-d { - border: 1px solid #aaaaaa; - background: #ffffff; - font-weight: bold; - color: #111; - text-shadow: 0 1px 1px #ffffff; - background-image: -moz-linear-gradient(top, - #eeeeee, - #ffffff); - background-image: -webkit-gradient(linear,left top,left bottom, - color-stop(0, #eeeeee), - color-stop(1, #ffffff)); - -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorStr='#eeeeee', EndColorStr='#ffffff')"; -} -.ui-btn-down-d a.ui-link-inherit { - color: #111; -} -.ui-btn-up-d, -.ui-btn-hover-d, -.ui-btn-down-d { - font-family: Helvetica, Arial, sans-serif; - text-decoration: none; -} - - -/* E ------------------------------------------------------------------------------------------------------------*/ - -.ui-bar-e { - border: 1px solid #F7C942; - background: #fadb4e; - color: #333; - text-shadow: 0 1px 0 #fff; - background-image: -moz-linear-gradient(top, - #fceda7, - #fadb4e); - background-image: -webkit-gradient(linear,left top,left bottom, - color-stop(0, #fceda7), - color-stop(1, #fadb4e)); - -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorStr='#fceda7', EndColorStr='#fadb4e')"; -} -.ui-bar-e, -.ui-bar-e input, -.ui-bar-e select, -.ui-bar-e textarea, -.ui-bar-d button { - font-family: Helvetica, Arial, sans-serif; -} -.ui-bar-e .ui-link-inherit { - color: #333; -} -.ui-bar-e .ui-link { - color: #2489CE; - font-weight: bold; -} -.ui-body-e { - border: 1px solid #F7C942; - color: #333333; - text-shadow: 0 1px 0 #fff; - background: #faeb9e; - background-image: -moz-linear-gradient(top, - #fff, - #faeb9e); - background-image: -webkit-gradient(linear,left top,left bottom, - color-stop(0, #fff), - color-stop(1, #faeb9e)); - -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorStr='#ffffff', EndColorStr='#faeb9e')"; -} -.ui-body-e, -.ui-body-e input, -.ui-body-e select, -.ui-body-e textarea, -.ui-body-e button { - font-family: Helvetica, Arial, sans-serif; -} -.ui-body-e .ui-link-inherit { - color: #333333; -} -.ui-body-e .ui-link { - color: #2489CE; - font-weight: bold; -} -.ui-btn-up-e { - border: 1px solid #F7C942; - background: #fadb4e; - font-weight: bold; - color: #333; - text-shadow: 0 1px 0 #fff; - background-image: -moz-linear-gradient(top, - #fceda7, - #fadb4e); - background-image: -webkit-gradient(linear,left top,left bottom, - color-stop(0, #fceda7), - color-stop(1, #fadb4e)); - -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorStr='#fceda7', EndColorStr='#fadb4e')"; -} -.ui-btn-up-e a.ui-link-inherit { - color: #333; -} -.ui-btn-hover-e { - border: 1px solid #e79952; - background: #fbe26f; - font-weight: bold; - color: #111; - text-shadow: 0 1px 1px #fff; - background-image: -moz-linear-gradient(top, - #fcf0b5, - #fbe26f); - background-image: -webkit-gradient(linear,left top,left bottom, - color-stop(0, #fcf0b5), - color-stop(1, #fbe26f)); - -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorStr='#fcf0b5', EndColorStr='#fbe26f')"; -} - -.ui-btn-hover-e a.ui-link-inherit { - color: #333; -} -.ui-btn-down-e { - border: 1px solid #F7C942; - background: #fceda7; - font-weight: bold; - color: #111; - text-shadow: 0 1px 1px #ffffff; - background-image: -moz-linear-gradient(top, - #fadb4e, - #fceda7); - background-image: -webkit-gradient(linear,left top,left bottom, - color-stop(0, #fadb4e), - color-stop(1, #fceda7)); - -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorStr='#fadb4e', EndColorStr='#fceda7')"; -} -.ui-btn-down-e a.ui-link-inherit { - color: #333; -} -.ui-btn-up-e, -.ui-btn-hover-e, -.ui-btn-down-e { - font-family: Helvetica, Arial, sans-serif; - text-decoration: none; -} - - -/* links within "buttons" ------------------------------------------------------------------------------------------------------------*/ - -a.ui-link-inherit { - text-decoration: none !important; -} - - -/* Active class used as the "on" state across all themes ------------------------------------------------------------------------------------------------------------*/ - -.ui-btn-active { - border: 1px solid #155678; - background: #4596ce; - font-weight: bold; - color: #fff; - cursor: pointer; - text-shadow: 0 -1px 1px #145072; - text-decoration: none; - background-image: -moz-linear-gradient(top, - #85bae4, - #5393c5); - background-image: -webkit-gradient(linear,left top,left bottom, - color-stop(0, #85bae4), - color-stop(1, #5393c5)); - -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorStr='#85bae4', EndColorStr='#5393c5')"; - outline: none; -} -.ui-btn-active a.ui-link-inherit { - color: #fff; -} - - -/* button inner top highlight ------------------------------------------------------------------------------------------------------------*/ - -.ui-btn-inner { - border-top: 1px solid #fff; - border-color: rgba(255,255,255,.3); -} - - -/* corner rounding classes ------------------------------------------------------------------------------------------------------------*/ - -.ui-corner-tl { - -moz-border-radius-topleft: .6em; - -webkit-border-top-left-radius: .6em; - border-top-left-radius: .6em; -} -.ui-corner-tr { - -moz-border-radius-topright: .6em; - -webkit-border-top-right-radius: .6em; - border-top-right-radius: .6em; -} -.ui-corner-bl { - -moz-border-radius-bottomleft: .6em; - -webkit-border-bottom-left-radius: .6em; - border-bottom-left-radius: .6em; -} -.ui-corner-br { - -moz-border-radius-bottomright: .6em; - -webkit-border-bottom-right-radius: .6em; - border-bottom-right-radius: .6em; -} -.ui-corner-top { - -moz-border-radius-topleft: .6em; - -webkit-border-top-left-radius: .6em; - border-top-left-radius: .6em; - -moz-border-radius-topright: .6em; - -webkit-border-top-right-radius: .6em; - border-top-right-radius: .6em; -} -.ui-corner-bottom { - -moz-border-radius-bottomleft: .6em; - -webkit-border-bottom-left-radius: .6em; - border-bottom-left-radius: .6em; - -moz-border-radius-bottomright: .6em; - -webkit-border-bottom-right-radius: .6em; - border-bottom-right-radius: .6em; - } -.ui-corner-right { - -moz-border-radius-topright: .6em; - -webkit-border-top-right-radius: .6em; - border-top-right-radius: .6em; - -moz-border-radius-bottomright: .6em; - -webkit-border-bottom-right-radius: .6em; - border-bottom-right-radius: .6em; -} -.ui-corner-left { - -moz-border-radius-topleft: .6em; - -webkit-border-top-left-radius: .6em; - border-top-left-radius: .6em; - -moz-border-radius-bottomleft: .6em; - -webkit-border-bottom-left-radius: .6em; - border-bottom-left-radius: .6em; -} -.ui-corner-all { - -moz-border-radius: .6em; - -webkit-border-radius: .6em; - border-radius: .6em; -} - - - -/* Interaction cues ------------------------------------------------------------------------------------------------------------*/ -.ui-disabled { - opacity: .3; -} -.ui-disabled, -.ui-disabled a { - cursor: default !important; -} - -/* Icons ------------------------------------------------------------------------------------------------------------*/ - -.ui-icon { - background: #666; - background: rgba(0,0,0,.4); - background-image: url(../img/icons-18-white.png); - background-repeat: no-repeat; - -moz-border-radius: 9px; - -webkit-border-radius: 9px; - border-radius: 9px; -} - - -/* Alt icon color ------------------------------------------------------------------------------------------------------------*/ - -.ui-icon-alt { - background: #fff; - background: rgba(255,255,255,.3); - background-image: url(../img/icons-18-black.png); - background-repeat: no-repeat; -} - -/* HD/"retina" sprite ------------------------------------------------------------------------------------------------------------*/ - -@media only screen and (-webkit-min-device-pixel-ratio: 1.5), - only screen and (min--moz-device-pixel-ratio: 1.5), - only screen and (min-resolution: 240dpi) { - - .ui-icon-plus, .ui-icon-minus, .ui-icon-delete, .ui-icon-arrow-r, - .ui-icon-arrow-l, .ui-icon-arrow-u, .ui-icon-arrow-d, .ui-icon-check, - .ui-icon-gear, .ui-icon-refresh, .ui-icon-forward, .ui-icon-back, - .ui-icon-grid, .ui-icon-star, .ui-icon-alert, .ui-icon-info, .ui-icon-home, .ui-icon-search, - .ui-icon-checkbox-off, .ui-icon-checkbox-on, .ui-icon-radio-off, .ui-icon-radio-on { - background-image: url(../img/icons-36-white.png); - -moz-background-size: 776px 18px; - -o-background-size: 776px 18px; - -webkit-background-size: 776px 18px; - background-size: 776px 18px; - } - .ui-icon-alt { - background-image: url(../img/icons-36-black.png); - } -} - -/* plus minus */ -.ui-icon-plus { - background-position: -0 50%; -} -.ui-icon-minus { - background-position: -36px 50%; -} - -/* delete/close */ -.ui-icon-delete { - background-position: -72px 50%; -} - -/* arrows */ -.ui-icon-arrow-r { - background-position: -108px 50%; -} -.ui-icon-arrow-l { - background-position: -144px 50%; -} -.ui-icon-arrow-u { - background-position: -180px 50%; -} -.ui-icon-arrow-d { - background-position: -216px 50%; -} - -/* misc */ -.ui-icon-check { - background-position: -252px 50%; -} -.ui-icon-gear { - background-position: -288px 50%; -} -.ui-icon-refresh { - background-position: -324px 50%; -} -.ui-icon-forward { - background-position: -360px 50%; -} -.ui-icon-back { - background-position: -396px 50%; -} -.ui-icon-grid { - background-position: -432px 50%; -} -.ui-icon-star { - background-position: -468px 50%; -} -.ui-icon-alert { - background-position: -504px 50%; -} -.ui-icon-info { - background-position: -540px 50%; -} -.ui-icon-home { - background-position: -576px 50%; -} -.ui-icon-search { - background-position: -612px 50%; -} -.ui-icon-checkbox-off { - background-position: -684px 50%; -} -.ui-icon-checkbox-on { - background-position: -648px 50%; -} -.ui-icon-radio-off { - background-position: -756px 50%; -} -.ui-icon-radio-on { - background-position: -720px 50%; -} - - -/* checks,radios */ -.ui-icon-checkbox-off, -.ui-icon-checkbox-on, -.ui-icon-radio-off, -.ui-icon-radio-on { - background-color: transparent; - -moz-border-radius: 0; - -webkit-border-radius: 0; - border-radius: 0; -} -.ui-icon-searchfield { - background-image: url(../img/icon-search-black.png); - background-size: 16px 16px; -} - -/* loading icon */ -.ui-icon-loading { - background-image: url(../img/ajax-loader.png); - width: 40px; - height: 40px; - -moz-border-radius: 20px; - -webkit-border-radius: 20px; - border-radius: 20px; - background-size: 35px 35px; -} - - -/* Button corner classes ------------------------------------------------------------------------------------------------------------*/ - -.ui-btn-corner-tl { - -moz-border-radius-topleft: 1em; - -webkit-border-top-left-radius: 1em; - border-top-left-radius: 1em; -} -.ui-btn-corner-tr { - -moz-border-radius-topright: 1em; - -webkit-border-top-right-radius: 1em; - border-top-right-radius: 1em; -} -.ui-btn-corner-bl { - -moz-border-radius-bottomleft: 1em; - -webkit-border-bottom-left-radius: 1em; - border-bottom-left-radius: 1em; -} -.ui-btn-corner-br { - -moz-border-radius-bottomright: 1em; - -webkit-border-bottom-right-radius: 1em; - border-bottom-right-radius: 1em; -} -.ui-btn-corner-top { - -moz-border-radius-topleft: 1em; - -webkit-border-top-left-radius: 1em; - border-top-left-radius: 1em; - -moz-border-radius-topright: 1em; - -webkit-border-top-right-radius: 1em; - border-top-right-radius: 1em; -} -.ui-btn-corner-bottom { - -moz-border-radius-bottomleft: 1em; - -webkit-border-bottom-left-radius: 1em; - border-bottom-left-radius: 1em; - -moz-border-radius-bottomright: 1em; - -webkit-border-bottom-right-radius: 1em; - border-bottom-right-radius: 1em; -} -.ui-btn-corner-right { - -moz-border-radius-topright: 1em; - -webkit-border-top-right-radius: 1em; - border-top-right-radius: 1em; - -moz-border-radius-bottomright: 1em; - -webkit-border-bottom-right-radius: 1em; - border-bottom-right-radius: 1em; -} -.ui-btn-corner-left { - -moz-border-radius-topleft: 1em; - -webkit-border-top-left-radius: 1em; - border-top-left-radius: 1em; - -moz-border-radius-bottomleft: 1em; - -webkit-border-bottom-left-radius: 1em; - border-bottom-left-radius: 1em; -} -.ui-btn-corner-all { - -moz-border-radius: 1em; - -webkit-border-radius: 1em; - border-radius: 1em; -} - -/* radius clip workaround for cleaning up corner trapping */ -.ui-corner-tl, -.ui-corner-tr, -.ui-corner-bl, -.ui-corner-br, -.ui-corner-top, -.ui-corner-bottom, -.ui-corner-right, -.ui-corner-left, -.ui-corner-all, -.ui-btn-corner-tl, -.ui-btn-corner-tr, -.ui-btn-corner-bl, -.ui-btn-corner-br, -.ui-btn-corner-top, -.ui-btn-corner-bottom, -.ui-btn-corner-right, -.ui-btn-corner-left, -.ui-btn-corner-all { - -webkit-background-clip: padding-box; - -moz-background-clip: padding-box; - background-clip: padding-box; -} - -/* Overlay / modal ------------------------------------------------------------------------------------------------------------*/ - -.ui-overlay { - background: #666; - opacity: .5; - filter: Alpha(Opacity=50); - position: absolute; - width: 100%; - height: 100%; -} -.ui-overlay-shadow { - -moz-box-shadow: 0px 0px 12px rgba(0,0,0,.6); - -webkit-box-shadow: 0px 0px 12px rgba(0,0,0,.6); - box-shadow: 0px 0px 12px rgba(0,0,0,.6); -} -.ui-shadow { - -moz-box-shadow: 0px 1px 4px rgba(0,0,0,.3); - -webkit-box-shadow: 0px 1px 4px rgba(0,0,0,.3); - box-shadow: 0px 1px 4px rgba(0,0,0,.3); -} -.ui-bar-a .ui-shadow, -.ui-bar-b .ui-shadow , -.ui-bar-c .ui-shadow { - -moz-box-shadow: 0px 1px 0 rgba(255,255,255,.3); - -webkit-box-shadow: 0px 1px 0 rgba(255,255,255,.3); - box-shadow: 0px 1px 0 rgba(255,255,255,.3); -} -.ui-shadow-inset { - -moz-box-shadow: inset 0px 1px 4px rgba(0,0,0,.2); - -webkit-box-shadow: inset 0px 1px 4px rgba(0,0,0,.2); - box-shadow: inset 0px 1px 4px rgba(0,0,0,.2); -} -.ui-icon-shadow { - -moz-box-shadow: 0px 1px 0 rgba(255,255,255,.4); - -webkit-box-shadow: 0px 1px 0 rgba(255,255,255,.4); - box-shadow: 0px 1px 0 rgba(255,255,255,.4); -} - - -/* Focus state - set here for specificity ------------------------------------------------------------------------------------------------------------*/ - -.ui-focus { - -moz-box-shadow: 0px 0px 12px #387bbe; - -webkit-box-shadow: 0px 0px 12px #387bbe; - box-shadow: 0px 0px 12px #387bbe; -} - -/* unset box shadow in browsers that don't do it right ------------------------------------------------------------------------------------------------------------*/ - -.ui-mobile-nosupport-boxshadow * { - -moz-box-shadow: none !important; - -webkit-box-shadow: none !important; - box-shadow: none !important; -} - -/* ...and bring back focus */ -.ui-mobile-nosupport-boxshadow .ui-focus { - outline-width: 2px; -} - -/* -* jQuery Mobile Framework -* Copyright (c) jQuery Project -* Dual licensed under the MIT (MIT-LICENSE.txt) and GPL (GPL-LICENSE.txt) licenses. -* Note: Code is in draft form and is subject to change -*/ - -/* some unsets - more probably needed */ -.ui-mobile, .ui-mobile body { height: 100%; } -.ui-mobile fieldset, .ui-page { padding: 0; margin: 0; } -.ui-mobile a img, .ui-mobile fieldset { border: 0; } - -/* responsive page widths */ -.ui-mobile-viewport { margin: 0; overflow-x: hidden; -webkit-text-size-adjust: none; -ms-text-size-adjust:none; -webkit-tap-highlight-color: rgba(0, 0, 0, 0); } - -/* "page" containers - full-screen views, one should always be in view post-pageload */ -.ui-mobile [data-role=page], .ui-mobile [data-role=dialog], .ui-page { top: 0; left: 0; width: 100%; min-height: 100%; position: absolute; display: none; border: 0; } -.ui-mobile .ui-page-active { display: block; overflow: visible; } - -/*orientations from js are available */ -.portrait, -.portrait .ui-page, -.landscape, -.landscape .ui-page { min-height: 100%; } - -/* loading screen */ -.ui-loading .ui-mobile-viewport { overflow: hidden !important; } -.ui-loading .ui-loader { display: block; } -.ui-loading .ui-page { overflow: hidden; } -.ui-loader { display: none; position: absolute; opacity: .85; z-index: 100; left: 50%; width: 200px; margin-left: -130px; margin-top: -35px; padding: 10px 30px; } -.ui-loader h1 { font-size: 15px; text-align: center; } -.ui-loader .ui-icon { position: static; display: block; opacity: .9; margin: 0 auto; width: 35px; height: 35px; background-color: transparent; } - -/*fouc*/ -.ui-mobile-rendering > * { visibility: hidden; } - -/*headers, content panels*/ -.ui-bar, .ui-body { position: relative; padding: .4em 15px; overflow: hidden; display: block; clear:both; } -.ui-bar { font-size: 16px; margin: 0; } -.ui-bar h1, .ui-bar h2, .ui-bar h3, .ui-bar h4, .ui-bar h5, .ui-bar h6 { margin: 0; padding: 0; font-size: 16px; display: inline-block; } - -.ui-header, .ui-footer { display: block; } -.ui-page .ui-header, .ui-page .ui-footer { position: relative; } -.ui-header .ui-btn-left { position: absolute; left: 10px; top: .4em; } -.ui-header .ui-btn-right { position: absolute; right: 10px; top: .4em; } -.ui-header .ui-title, .ui-footer .ui-title { text-align: center; font-size: 16px; display: block; margin: .6em 90px .8em; padding: 0; text-overflow: ellipsis; overflow: hidden; white-space: nowrap; outline: 0 !important; } - -/*content area*/ -.ui-content { border-width: 0; overflow: visible; overflow-x: hidden; padding: 15px; } -.ui-page-fullscreen .ui-content { padding:0; } - -/* icons sizing */ -.ui-icon { width: 18px; height: 18px; } - -/* fullscreen class on ui-content div */ -.ui-fullscreen { } -.ui-fullscreen img { max-width: 100%; } - -/* non-js content hiding */ -.ui-nojs { position: absolute; left: -9999px; } - - -/* -* jQuery Mobile Framework -* Copyright (c) jQuery Project -* Dual licensed under the MIT (MIT-LICENSE.txt) or GPL (GPL-LICENSE.txt) licenses. -*/ -.spin { - -webkit-transform: rotate(360deg); - -webkit-animation-name: spin; - -webkit-animation-duration: 1s; - -webkit-animation-iteration-count: infinite; -} -@-webkit-keyframes spin { - from {-webkit-transform: rotate(0deg);} - to {-webkit-transform: rotate(360deg);} -} - -/* Transitions from jQtouch (with small modifications): http://www.jqtouch.com/ -Built by David Kaneda and maintained by Jonathan Stark. -*/ -.in, .out { - -webkit-animation-timing-function: ease-in-out; - -webkit-animation-duration: 350ms; -} - -.slide.in { - -webkit-transform: translateX(0); - -webkit-animation-name: slideinfromright; -} - -.slide.out { - -webkit-transform: translateX(-100%); - -webkit-animation-name: slideouttoleft; -} - -.slide.in.reverse { - -webkit-transform: translateX(0); - -webkit-animation-name: slideinfromleft; -} - -.slide.out.reverse { - -webkit-transform: translateX(100%); - -webkit-animation-name: slideouttoright; -} - -.slideup.in { - -webkit-transform: translateY(0); - -webkit-animation-name: slideinfrombottom; - z-index: 10; -} - -.slideup.out { - -webkit-animation-name: dontmove; - z-index: 0; -} - -.slideup.out.reverse { - -webkit-transform: translateY(100%); - z-index: 10; - -webkit-animation-name: slideouttobottom; -} - -.slideup.in.reverse { - z-index: 0; - -webkit-animation-name: dontmove; -} -.slidedown.in { - -webkit-transform: translateY(0); - -webkit-animation-name: slideinfromtop; - z-index: 10; -} - -.slidedown.out { - -webkit-animation-name: dontmove; - z-index: 0; -} - -.slidedown.out.reverse { - -webkit-transform: translateY(-100%); - z-index: 10; - -webkit-animation-name: slideouttotop; -} - -.slidedown.in.reverse { - z-index: 0; - -webkit-animation-name: dontmove; -} - -@-webkit-keyframes slideinfromright { - from { -webkit-transform: translateX(100%); } - to { -webkit-transform: translateX(0); } -} - -@-webkit-keyframes slideinfromleft { - from { -webkit-transform: translateX(-100%); } - to { -webkit-transform: translateX(0); } -} - -@-webkit-keyframes slideouttoleft { - from { -webkit-transform: translateX(0); } - to { -webkit-transform: translateX(-100%); } -} - -@-webkit-keyframes slideouttoright { - from { -webkit-transform: translateX(0); } - to { -webkit-transform: translateX(100%); } -} - - -@-webkit-keyframes slideinfromtop { - from { -webkit-transform: translateY(-100%); } - to { -webkit-transform: translateY(0); } -} - -@-webkit-keyframes slideinfrombottom { - from { -webkit-transform: translateY(100%); } - to { -webkit-transform: translateY(0); } -} - -@-webkit-keyframes slideouttobottom { - from { -webkit-transform: translateY(0); } - to { -webkit-transform: translateY(100%); } -} - -@-webkit-keyframes slideouttotop { - from { -webkit-transform: translateY(0); } - to { -webkit-transform: translateY(-100%); } -} -@-webkit-keyframes fadein { - from { opacity: 0; } - to { opacity: 1; } -} - -@-webkit-keyframes fadeout { - from { opacity: 1; } - to { opacity: 0; } -} - -.fade.in { - opacity: 1; - z-index: 10; - -webkit-animation-name: fadein; -} -.fade.out { - z-index: 0; - -webkit-animation-name: fadeout; -} - -/* The properties in this rule are only necessary for the 'flip' transition. - * We need specify the perspective to create a projection matrix. This will add - * some depth as the element flips. The depth number represents the distance of - * the viewer from the z-plane. According to the CSS3 spec, 1000 is a moderate - * value. - */ -.viewport-flip { - -webkit-perspective: 1000; - position: absolute; -} - -.ui-mobile-viewport-transitioning, -.ui-mobile-viewport-transitioning .ui-page { - width: 100%; - height: 100%; - overflow: hidden; -} - -.flip { - -webkit-animation-duration: .65s; - -webkit-backface-visibility:hidden; - -webkit-transform:translateX(0); /* Needed to work around an iOS 3.1 bug that causes listview thumbs to disappear when -webkit-visibility:hidden is used. */ -} - -.flip.in { - -webkit-transform: rotateY(0) scale(1); - -webkit-animation-name: flipinfromleft; -} - -.flip.out { - -webkit-transform: rotateY(-180deg) scale(.8); - -webkit-animation-name: flipouttoleft; -} - -/* Shake it all about */ - -.flip.in.reverse { - -webkit-transform: rotateY(0) scale(1); - -webkit-animation-name: flipinfromright; -} - -.flip.out.reverse { - -webkit-transform: rotateY(180deg) scale(.8); - -webkit-animation-name: flipouttoright; -} - -@-webkit-keyframes flipinfromright { - from { -webkit-transform: rotateY(-180deg) scale(.8); } - to { -webkit-transform: rotateY(0) scale(1); } -} - -@-webkit-keyframes flipinfromleft { - from { -webkit-transform: rotateY(180deg) scale(.8); } - to { -webkit-transform: rotateY(0) scale(1); } -} - -@-webkit-keyframes flipouttoleft { - from { -webkit-transform: rotateY(0) scale(1); } - to { -webkit-transform: rotateY(-180deg) scale(.8); } -} - -@-webkit-keyframes flipouttoright { - from { -webkit-transform: rotateY(0) scale(1); } - to { -webkit-transform: rotateY(180deg) scale(.8); } -} - - -/* Hackish, but reliable. */ - -@-webkit-keyframes dontmove { - from { opacity: 1; } - to { opacity: 1; } -} - -.pop { - -webkit-transform-origin: 50% 50%; -} - -.pop.in { - -webkit-transform: scale(1); - opacity: 1; - -webkit-animation-name: popin; - z-index: 10; -} - -.pop.out.reverse { - -webkit-transform: scale(.2); - opacity: 0; - -webkit-animation-name: popout; - z-index: 10; -} - -.pop.in.reverse { - z-index: 0; - -webkit-animation-name: dontmove; -} - -@-webkit-keyframes popin { - from { - -webkit-transform: scale(.2); - opacity: 0; - } - to { - -webkit-transform: scale(1); - opacity: 1; - } -} - -@-webkit-keyframes popout { - from { - -webkit-transform: scale(1); - opacity: 1; - } - to { - -webkit-transform: scale(.2); - opacity: 0; - } -} - -/* -* jQuery Mobile Framework -* Copyright (c) jQuery Project -* Dual licensed under the MIT (MIT-LICENSE.txt) or GPL (GPL-LICENSE.txt) licenses. -*/ - -/* content configurations. */ -.ui-grid-a, .ui-grid-b, .ui-grid-c, .ui-grid-d { overflow: hidden; } -.ui-block-a, .ui-block-b, .ui-block-c, .ui-block-d, .ui-block-e { margin: 0; padding: 0; border: 0; float: left; min-height:1px;} - -/* grid solo: 100 - single item fallback */ -.ui-grid-solo .ui-block-a { width: 100%; float: none; } - -/* grid a: 50/50 */ -.ui-grid-a .ui-block-a, .ui-grid-a .ui-block-b { width: 50%; } -.ui-grid-a .ui-block-a { clear: left; } - -/* grid b: 33/33/33 */ -.ui-grid-b .ui-block-a, .ui-grid-b .ui-block-b, .ui-grid-b .ui-block-c { width: 33.333%; } -.ui-grid-b .ui-block-a { clear: left; } - -/* grid c: 25/25/25/25 */ -.ui-grid-c .ui-block-a, .ui-grid-c .ui-block-b, .ui-grid-c .ui-block-c, .ui-grid-c .ui-block-d { width: 25%; } -.ui-grid-c .ui-block-a { clear: left; } - -/* grid d: 20/20/20/20/20 */ -.ui-grid-d .ui-block-a, .ui-grid-d .ui-block-b, .ui-grid-d .ui-block-c, .ui-grid-d .ui-block-d, .ui-grid-d .ui-block-e { width: 20%; } -.ui-grid-d .ui-block-a { clear: left; } - - -/* -* jQuery Mobile Framework -* Copyright (c) jQuery Project -* Dual licensed under the MIT (MIT-LICENSE.txt) or GPL (GPL-LICENSE.txt) licenses. -*/ -/* fixed page header & footer configuration */ -.ui-header, .ui-footer, .ui-page-fullscreen .ui-header, .ui-page-fullscreen .ui-footer { position: absolute; overflow: hidden; width: 100%; border-left-width: 0; border-right-width: 0; } -.ui-header-fixed, .ui-footer-fixed { - z-index: 1000; - -webkit-transform: translateZ(0); /* Force header/footer rendering to go through the same rendering pipeline as native page scrolling. */ -} -.ui-footer-duplicate, .ui-page-fullscreen .ui-fixed-inline { display: none; } -.ui-page-fullscreen .ui-header, .ui-page-fullscreen .ui-footer { opacity: .9; } - - -/* -* jQuery Mobile Framework -* Copyright (c) jQuery Project -* Dual licensed under the MIT (MIT-LICENSE.txt) or GPL (GPL-LICENSE.txt) licenses. -*/ -.ui-navbar { overflow: hidden; } -.ui-navbar ul, .ui-navbar-expanded ul { list-style:none; padding: 0; margin: 0; position: relative; display: block; border: 0;} -.ui-navbar-collapsed ul { float: left; width: 75%; margin-right: -2px; } -.ui-navbar-collapsed .ui-navbar-toggle { float: left; width: 25%; } -.ui-navbar li.ui-navbar-truncate { position: absolute; left: -9999px; top: -9999px; } -.ui-navbar li .ui-btn, .ui-navbar .ui-navbar-toggle .ui-btn { display: block; font-size: 12px; text-align: center; margin: 0; border-right-width: 0; } -.ui-navbar li .ui-btn { margin-right: -1px; } -.ui-navbar li .ui-btn:last-child { margin-right: 0; } -.ui-header .ui-navbar li .ui-btn, .ui-header .ui-navbar .ui-navbar-toggle .ui-btn, -.ui-footer .ui-navbar li .ui-btn, .ui-footer .ui-navbar .ui-navbar-toggle .ui-btn { border-top-width: 0; border-bottom-width: 0; } -.ui-navbar .ui-btn-inner { padding-left: 2px; padding-right: 2px; } -.ui-navbar-noicons li .ui-btn .ui-btn-inner, .ui-navbar-noicons .ui-navbar-toggle .ui-btn-inner { padding-top: .8em; padding-bottom: .9em; } -/*expanded page styles*/ -.ui-navbar-expanded .ui-btn { margin: 0; font-size: 14px; } -.ui-navbar-expanded .ui-btn-inner { padding-left: 5px; padding-right: 5px; } -.ui-navbar-expanded .ui-btn-icon-top .ui-btn-inner { padding: 45px 5px 15px; text-align: center; } -.ui-navbar-expanded .ui-btn-icon-top .ui-icon { top: 15px; } -.ui-navbar-expanded .ui-btn-icon-bottom .ui-btn-inner { padding: 15px 5px 45px; text-align: center; } -.ui-navbar-expanded .ui-btn-icon-bottom .ui-icon { bottom: 15px; } -.ui-navbar-expanded li .ui-btn .ui-btn-inner { min-height: 2.5em; } -.ui-navbar-expanded .ui-navbar-noicons .ui-btn .ui-btn-inner { padding-top: 1.8em; padding-bottom: 1.9em; } - - -/* -* jQuery Mobile Framework -* Copyright (c) jQuery Project -* Dual licensed under the MIT (MIT-LICENSE.txt) or GPL (GPL-LICENSE.txt) licenses. -*/ -.ui-btn { display: block; text-align: center; cursor:pointer; position: relative; margin: .5em 5px; padding: 0; } -.ui-btn:focus, .ui-btn:active { outline: none; } -.ui-header .ui-btn, .ui-footer .ui-btn, .ui-bar .ui-btn { display: inline-block; font-size: 13px; margin: 0; } -.ui-btn-inline { display: inline-block; } -.ui-btn-inner { padding: .6em 25px; display: block; text-overflow: ellipsis; overflow: hidden; white-space: nowrap; position: relative; } -.ui-header .ui-btn-inner, .ui-footer .ui-btn-inner, .ui-bar .ui-btn-inner { padding: .4em 8px .5em; } -.ui-btn-icon-notext { display: inline-block; width: 20px; height: 20px; padding: 2px 1px 2px 3px; text-indent: -9999px; } -.ui-btn-icon-notext .ui-btn-inner { padding: 0; } -.ui-btn-icon-notext .ui-btn-text { position: absolute; left: -999px; } -.ui-btn-icon-left .ui-btn-inner { padding-left: 33px; } -.ui-header .ui-btn-icon-left .ui-btn-inner, -.ui-footer .ui-btn-icon-left .ui-btn-inner, -.ui-bar .ui-btn-icon-left .ui-btn-inner { padding-left: 27px; } -.ui-btn-icon-right .ui-btn-inner { padding-right: 33px; } -.ui-header .ui-btn-icon-right .ui-btn-inner, -.ui-footer .ui-btn-icon-right .ui-btn-inner, -.ui-bar .ui-btn-icon-right .ui-btn-inner { padding-right: 27px; } -.ui-btn-icon-top .ui-btn-inner { padding-top: 33px; } -.ui-header .ui-btn-icon-top .ui-btn-inner, -.ui-footer .ui-btn-icon-top .ui-btn-inner, -.ui-bar .ui-btn-icon-top .ui-btn-inner { padding-top: 27px; } -.ui-btn-icon-bottom .ui-btn-inner { padding-bottom: 33px; } -.ui-header .ui-btn-icon-bottom .ui-btn-inner, -.ui-footer .ui-btn-icon-bottom .ui-btn-inner, -.ui-bar .ui-btn-icon-bottom .ui-btn-inner { padding-bottom: 27px; } - -/*btn icon positioning*/ -.ui-btn-icon-notext .ui-icon { display: block; } -.ui-btn-icon-left .ui-icon, .ui-btn-icon-right .ui-icon { position: absolute; top: 50%; margin-top: -9px; } -.ui-btn-icon-top .ui-icon, .ui-btn-icon-bottom .ui-icon { position: absolute; left: 50%; margin-left: -9px; } -.ui-btn-icon-left .ui-icon { left: 10px; } -.ui-btn-icon-right .ui-icon {right: 10px; } -.ui-header .ui-btn-icon-left .ui-icon, -.ui-footer .ui-btn-icon-left .ui-icon, -.ui-bar .ui-btn-icon-left .ui-icon { left: 4px; } -.ui-header .ui-btn-icon-right .ui-icon, -.ui-footer .ui-btn-icon-right .ui-icon, -.ui-bar .ui-btn-icon-right .ui-icon { right: 4px; } -.ui-header .ui-btn-icon-top .ui-icon, -.ui-footer .ui-btn-icon-top .ui-icon, -.ui-bar .ui-btn-icon-top .ui-icon { top: 4px; } -.ui-header .ui-btn-icon-bottom .ui-icon, -.ui-footer .ui-btn-icon-bottom .ui-icon, -.ui-bar .ui-btn-icon-bottom .ui-icon { bottom: 4px; } -.ui-btn-icon-top .ui-icon { top: 5px; } -.ui-btn-icon-bottom .ui-icon { bottom: 5px; } -/*hiding native button,inputs */ -.ui-btn-hidden { position: absolute; top: 0; left: 0; width: 100%; height: 100%; -webkit-appearance: button; opacity: 0; cursor: pointer; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; filter: alpha(opacity=0); } - - -/* -* jQuery Mobile Framework -* Copyright (c) jQuery Project -* Dual licensed under the MIT (MIT-LICENSE.txt) or GPL (GPL-LICENSE.txt) licenses. -*/ -.ui-collapsible-contain { margin: .5em 0; } -.ui-collapsible-heading { font-size: 16px; display: block; margin: 0 -8px; padding: 0; border-width: 0 0 1px 0; position: relative; } -.ui-collapsible-heading a { text-align: left; margin: 0; } -.ui-collapsible-heading a .ui-btn-inner { padding-left: 40px; } -.ui-collapsible-heading a span.ui-btn { position: absolute; left: 6px; top: 50%; margin: -12px 0 0 0; width: 20px; height: 20px; padding: 1px 0px 1px 2px; text-indent: -9999px; } -.ui-collapsible-heading a span.ui-btn .ui-btn-inner { padding: 10px 0; } -.ui-collapsible-heading a span.ui-btn .ui-icon { left: 0; margin-top: -10px; } -.ui-collapsible-heading-status { position:absolute; left:-9999px; } -.ui-collapsible-content { display: block; padding: 10px 0 10px 8px; } -.ui-collapsible-content-collapsed { display: none; } - -.ui-collapsible-set { margin: .5em 0; } -.ui-collapsible-set .ui-collapsible-contain { margin: -1px 0 0; } - - -/* -* jQuery Mobile Framework -* Copyright (c) jQuery Project -* Dual licensed under the MIT (MIT-LICENSE.txt) or GPL (GPL-LICENSE.txt) licenses. -*/ -.ui-controlgroup, fieldset.ui-controlgroup { padding: 0; margin: .5em 0 1em; } -.ui-bar .ui-controlgroup { margin: 0 .3em; } -.ui-controlgroup-label { font-size: 16px; line-height: 1.4; font-weight: normal; margin: 0 0 .3em; } -.ui-controlgroup-controls { display: block; width: 95%;} -.ui-controlgroup li { list-style: none; } -.ui-controlgroup-vertical .ui-btn, -.ui-controlgroup-vertical .ui-checkbox, .ui-controlgroup-vertical .ui-radio { margin: 0; border-bottom-width: 0; } -.ui-controlgroup-vertical .ui-controlgroup-last { border-bottom-width: 1px; } -.ui-controlgroup-horizontal { padding: 0; } -.ui-controlgroup-horizontal .ui-btn, -.ui-controlgroup-horizontal .ui-checkbox, .ui-controlgroup-horizontal .ui-radio { display: inline-block; margin: 0 -5px 0 0; } -.ui-controlgroup-horizontal .ui-checkbox, .ui-controlgroup-horizontal .ui-radio { display: inline; } -.ui-controlgroup-horizontal .ui-checkbox .ui-btn, .ui-controlgroup-horizontal .ui-radio .ui-btn, -.ui-controlgroup-horizontal .ui-checkbox:last-child, .ui-controlgroup-horizontal .ui-radio:last-child { margin-right: 0; } -.ui-controlgroup-horizontal .ui-controlgroup-last { margin-right: 0; } -.ui-controlgroup .ui-checkbox label, .ui-controlgroup .ui-radio label { font-size: 16px; } -/* conflicts with listview.. -.ui-controlgroup .ui-btn-icon-notext { width: 30px; height: 30px; text-indent: -9999px; } -.ui-controlgroup .ui-btn-icon-notext .ui-btn-inner { padding: 5px 6px 5px 5px; } -*/ - -@media all and (min-width: 450px){ - .ui-controlgroup-label { vertical-align: top; display: inline-block; width: 20%; margin: 0 2% 0 0; } - .ui-controlgroup-controls { width: 60%; display: inline-block; } -} - -/* -* jQuery Mobile Framework -* Copyright (c) jQuery Project -* Dual licensed under the MIT (MIT-LICENSE.txt) or GPL (GPL-LICENSE.txt) licenses. -*/ -.ui-dialog { min-height: 480px; } -.ui-dialog .ui-header, .ui-dialog .ui-content, .ui-dialog .ui-footer { margin: 15px; position: relative; } -.ui-dialog .ui-header, .ui-dialog .ui-footer { z-index: 10; width: auto; } -.ui-dialog .ui-content, .ui-dialog .ui-footer { margin-top: -15px; } - -/* -* jQuery Mobile Framework -* Copyright (c) jQuery Project -* Dual licensed under the MIT (MIT-LICENSE.txt) or GPL (GPL-LICENSE.txt) licenses. -*/ -.ui-checkbox, .ui-radio { position:relative; margin: .2em 0 .5em; z-index: 1; } -.ui-checkbox .ui-btn, .ui-radio .ui-btn { margin: 0; text-align: left; z-index: 2; } -.ui-checkbox .ui-btn-inner, .ui-radio .ui-btn-inner { white-space: normal; } -.ui-checkbox .ui-btn-icon-left .ui-btn-inner,.ui-radio .ui-btn-icon-left .ui-btn-inner { padding-left: 45px; } -.ui-checkbox .ui-btn-icon-right .ui-btn-inner, .ui-radio .ui-btn-icon-right .ui-btn-inner { padding-right: 45px; } -.ui-checkbox .ui-icon, .ui-radio .ui-icon { top: 1.1em; } -.ui-checkbox .ui-btn-icon-left .ui-icon, .ui-radio .ui-btn-icon-left .ui-icon {left: 15px; } -.ui-checkbox .ui-btn-icon-right .ui-icon, .ui-radio .ui-btn-icon-right .ui-icon {right: 15px; } -/* input, label positioning */ -.ui-checkbox input,.ui-radio input { position:absolute; left:20px; top:50%; width: 10px; height: 10px; margin:-5px 0 0 0; outline: 0 !important; z-index: 1; } - -/* -* jQuery Mobile Framework -* Copyright (c) jQuery Project -* Dual licensed under the MIT (MIT-LICENSE.txt) or GPL (GPL-LICENSE.txt) licenses. -*/ -.ui-field-contain { background: none; padding: 1.5em 0; margin: 0; border-bottom-width: 1px; overflow: visible; } -.ui-field-contain:first-child { border-top-width: 0; } -@media all and (min-width: 450px){ - .ui-field-contain { border-width: 0; padding: 0; margin: 1em 0; } -} - -/* -* jQuery Mobile Framework -* Copyright (c) jQuery Project -* Dual licensed under the MIT (MIT-LICENSE.txt) or GPL (GPL-LICENSE.txt) licenses. -*/ -.ui-select { display: block; position: relative; } -.ui-select select { position: absolute; left: -9999px; top: -9999px; } -.ui-select .ui-btn { overflow: hidden; } -.ui-select .ui-btn select { cursor: pointer; -webkit-appearance: button; left: 0; top:0; width: 100%; height: 100%; opacity: 0; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; filter: alpha(opacity=0); } -@-moz-document url-prefix() {.ui-select .ui-btn select { opacity: 0.0001; }} -.ui-select .ui-btn select.ui-select-nativeonly { opacity: 1; text-indent: 0; } - -.ui-select .ui-btn-icon-right .ui-btn-inner { padding-right: 45px; } -.ui-select .ui-btn-icon-right .ui-icon { right: 15px; } - -/* labels */ -label.ui-select { font-size: 16px; line-height: 1.4; font-weight: normal; margin: 0 0 .3em; display: block; } - -/*listbox*/ -.ui-select .ui-btn-text, .ui-selectmenu .ui-btn-text { display: inline-block; min-height: 1em; } -.ui-select .ui-btn-text { text-overflow: ellipsis; overflow: hidden; display: block;} - -.ui-selectmenu { position: absolute; padding: 0; z-index: 100 !important; width: 80%; max-width: 350px; padding: 6px; } -.ui-selectmenu .ui-listview { margin: 0; } -.ui-selectmenu .ui-btn.ui-li-divider { cursor: default; } -.ui-selectmenu-hidden { top: -9999px; left: -9999px; } -.ui-selectmenu-screen { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 99; } -.ui-screen-hidden, .ui-selectmenu-list .ui-li .ui-icon { display: none; } -.ui-selectmenu-list .ui-li .ui-icon { display: block; } -.ui-li.ui-selectmenu-placeholder { display: none; } -.ui-selectmenu .ui-header .ui-title { margin: 0.6em 46px 0.8em; } - -@media all and (min-width: 450px){ - label.ui-select { display: inline-block; width: 20%; margin: 0 2% 0 0; } - .ui-select { width: 60%; display: inline-block; } -} - -/* when no placeholder is defined in a multiple select, the header height doesn't even extend past the close button. this shim's content in there */ -.ui-selectmenu .ui-header h1:after { content: '.'; visibility: hidden; } - -/* -* jQuery Mobile Framework -* Copyright (c) jQuery Project -* Dual licensed under the MIT (MIT-LICENSE.txt) or GPL (GPL-LICENSE.txt) licenses. -*/ -label.ui-input-text { font-size: 16px; line-height: 1.4; display: block; font-weight: normal; margin: 0 0 .3em; } -input.ui-input-text, textarea.ui-input-text { background-image: none; padding: .4em; line-height: 1.4; font-size: 16px; display: block; width: 95%; } -input.ui-input-text { -webkit-appearance: none; } -textarea.ui-input-text { height: 50px; -webkit-transition: height 200ms linear; -moz-transition: height 200ms linear; -o-transition: height 200ms linear; transition: height 200ms linear; } -.ui-input-search { padding: 0 30px; width: 77%; background-position: 8px 50%; background-repeat: no-repeat; position: relative; } -.ui-input-search input.ui-input-text { border: none; width: 98%; padding: .4em 0; margin: 0; display: block; background: transparent none; outline: 0 !important; } -.ui-input-search .ui-input-clear { position: absolute; right: 0; top: 50%; margin-top: -14px; } -.ui-input-search .ui-input-clear-hidden { display: none; } - -/* orientation adjustments - incomplete!*/ -@media all and (min-width: 450px){ - label.ui-input-text { vertical-align: top; display: inline-block; width: 20%; margin: 0 2% 0 0 } - input.ui-input-text, - textarea.ui-input-text, - .ui-input-search { width: 60%; display: inline-block; } - .ui-input-search { width: 50%; } - .ui-input-search input.ui-input-text { width: 98%; /*echos rule from above*/ } -} - -/* -* jQuery Mobile Framework -* Copyright (c) jQuery Project -* Dual licensed under the MIT (MIT-LICENSE.txt) or GPL (GPL-LICENSE.txt) licenses. -*/ -.ui-listview { margin: 0; counter-reset: listnumbering; } -.ui-content .ui-listview { margin: -15px; } -.ui-content .ui-listview-inset { margin: 1em 0; } -.ui-listview, .ui-li { list-style:none; padding:0; } -.ui-li, .ui-li.ui-field-contain { display: block; margin:0; position: relative; overflow: visible; text-align: left; border-width: 0; border-top-width: 1px; } -.ui-li .ui-btn-text a.ui-link-inherit { text-overflow: ellipsis; overflow: hidden; white-space: nowrap; } -.ui-li-divider, .ui-li-static { padding: .5em 15px; font-size: 14px; font-weight: bold; } -.ui-li-divider { counter-reset: listnumbering; } -ol.ui-listview .ui-link-inherit:before, ol.ui-listview .ui-li-static:before, .ui-li-dec { font-size: .8em; display: inline-block; padding-right: .3em; font-weight: normal;counter-increment: listnumbering; content: counter(listnumbering) ". "; } -ol.ui-listview .ui-li-jsnumbering:before { content: "" !important; } /* to avoid chance of duplication */ -.ui-listview-inset .ui-li { border-right-width: 1px; border-left-width: 1px; } -.ui-li:last-child, .ui-li.ui-field-contain:last-child { border-bottom-width: 1px; } -.ui-li>.ui-btn-inner { display: block; position: relative; padding: 0; } -.ui-li .ui-btn-inner a.ui-link-inherit, .ui-li-static.ui-li { padding: .7em 75px .7em 15px; display: block; } -.ui-li-has-thumb .ui-btn-inner a.ui-link-inherit, .ui-li-static.ui-li-has-thumb { min-height: 60px; padding-left: 100px; } -.ui-li-has-icon .ui-btn-inner a.ui-link-inherit, .ui-li-static.ui-li-has-icon { min-height: 20px; padding-left: 40px; } -.ui-li-heading { font-size: 16px; font-weight: bold; display: block; margin: .6em 0; text-overflow: ellipsis; overflow: hidden; white-space: nowrap; } -.ui-li-desc { font-size: 12px; font-weight: normal; display: block; margin: -.5em 0 .6em; text-overflow: ellipsis; overflow: hidden; white-space: nowrap; } -.ui-li-thumb, .ui-li-icon { position: absolute; left: 1px; top: 0; max-height: 80px; max-width: 80px; } -.ui-li-icon { max-height: 40px; max-width: 40px; left: 10px; top: .9em; } -.ui-li-thumb, .ui-li-icon, .ui-li-content { float: left; margin-right: 10px; } - -.ui-li-aside { float: right; width: 50%; text-align: right; margin: .3em 0; } -@media all and (min-width: 480px){ - .ui-li-aside { width: 45%; } -} -.ui-li-divider { cursor: default; } -.ui-li-has-alt .ui-btn-inner a.ui-link-inherit, .ui-li-static.ui-li-has-alt { padding-right: 95px; } -.ui-li-count { position: absolute; font-size: 11px; font-weight: bold; padding: .2em .5em; top: 50%; margin-top: -.9em; right: 38px; } -.ui-li-divider .ui-li-count, .ui-li-static .ui-li-count { right: 10px; } -.ui-li-has-alt .ui-li-count { right: 55px; } -.ui-li-link-alt { position: absolute; width: 40px; height: 100%; border-width: 0; border-left-width: 1px; top: 0; right: 0; margin: 0; padding: 0; } -.ui-li-link-alt .ui-btn { overflow: hidden; position: absolute; right: 8px; top: 50%; margin: -11px 0 0 0; border-bottom-width: 1px; } -.ui-li-link-alt .ui-btn-inner { padding: 0; position: static; } -.ui-li-link-alt .ui-btn .ui-icon { right: 50%; margin-right: -9px; } - -.ui-listview-filter { border-width: 0; overflow: hidden; margin: -15px -15px 15px -15px } -.ui-listview-filter .ui-input-search { margin: 5px; width: auto; display: block; } - -.ui-listview-filter-inset { margin: -15px -5px -15px -5px; background: transparent; } -.ui-li.ui-screen-hidden{display:none;} -/* Odd iPad positioning issue. */ -@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) { - .ui-li .ui-btn-text { overflow: visible; } -} - -/* -* jQuery Mobile Framework -* Copyright (c) jQuery Project -* Dual licensed under the MIT (MIT-LICENSE.txt) or GPL (GPL-LICENSE.txt) licenses. -*/ -label.ui-slider { display: block; } -input.ui-slider-input { display: inline-block; width: 50px; } -select.ui-slider-switch { display: none; } -div.ui-slider { position: relative; display: inline-block; overflow: visible; height: 15px; padding: 0; margin: 0 2% 0 20px; top: 4px; width: 66%; } -a.ui-slider-handle { position: absolute; z-index: 10; top: 50%; width: 28px; height: 28px; margin-top: -15px; margin-left: -15px; } -a.ui-slider-handle .ui-btn-inner { padding-left: 0; padding-right: 0; } -@media all and (min-width: 480px){ - label.ui-slider { display: inline-block; width: 20%; margin: 0 2% 0 0; } - div.ui-slider { width: 45%; } -} - -div.ui-slider-switch { height: 32px; overflow: hidden; margin-left: 0; } -div.ui-slider-inneroffset { margin-left: 50%; position: absolute; top: 1px; height: 100%; width: 50%; } -div.ui-slider-handle-snapping { -webkit-transition: left 100ms linear; } -div.ui-slider-labelbg { position: absolute; top:0; margin: 0; border-width: 0; } -div.ui-slider-switch div.ui-slider-labelbg-a { width: 60%; height: 100%; left: 0; } -div.ui-slider-switch div.ui-slider-labelbg-b { width: 60%; height: 100%; right: 0; } -.ui-slider-switch-a div.ui-slider-labelbg-a, .ui-slider-switch-b div.ui-slider-labelbg-b { z-index: -1; } -.ui-slider-switch-a div.ui-slider-labelbg-b, .ui-slider-switch-b div.ui-slider-labelbg-a { z-index: 0; } - -div.ui-slider-switch a.ui-slider-handle { z-index: 20; width: 101%; height: 32px; margin-top: -18px; margin-left: -101%; } -span.ui-slider-label { width: 100%; position: absolute;height: 32px; font-size: 16px; text-align: center; line-height: 2; background: none; border-color: transparent; } -span.ui-slider-label-a { left: -100%; margin-right: -1px } -span.ui-slider-label-b { right: -100%; margin-left: -1px } diff --git a/addons/web_mobile/static/lib/jquery_mobile/css/jquery.mobile-1.0a4.1.min.css b/addons/web_mobile/static/lib/jquery_mobile/css/jquery.mobile-1.0a4.1.min.css deleted file mode 100644 index 8e55bf5423e..00000000000 --- a/addons/web_mobile/static/lib/jquery_mobile/css/jquery.mobile-1.0a4.1.min.css +++ /dev/null @@ -1,16 +0,0 @@ -/*! - * jQuery Mobile v1.0a4.1 - * http://jquerymobile.com/ - * - * Copyright 2010, jQuery Project - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - */ -/*! - * jQuery Mobile v1.0a4.1 - * http://jquerymobile.com/ - * - * Copyright 2010, jQuery Project - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - */.ui-bar-a{border:1px solid #2a2a2a;background:#111;color:#fff;font-weight:bold;text-shadow:0 -1px 1px #000;background-image:-moz-linear-gradient(top,#3c3c3c,#111);background-image:-webkit-gradient(linear,left top,left bottom,color-stop(0,#3c3c3c),color-stop(1,#111));-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorStr='#3c3c3c', EndColorStr='#111111')"}.ui-bar-a,.ui-bar-a input,.ui-bar-a select,.ui-bar-a textarea,.ui-bar-a button{font-family:Helvetica,Arial,sans-serif}.ui-bar-a .ui-link-inherit{color:#fff}.ui-bar-a .ui-link{color:#7cc4e7;font-weight:bold}.ui-body-a{border:1px solid #2a2a2a;background:#222;color:#fff;text-shadow:0 1px 0 #000;font-weight:normal;background-image:-moz-linear-gradient(top,#666,#222);background-image:-webkit-gradient(linear,left top,left bottom,color-stop(0,#666),color-stop(1,#222));-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorStr='#666666', EndColorStr='#222222)')"}.ui-body-a,.ui-body-a input,.ui-body-a select,.ui-body-a textarea,.ui-body-a button{font-family:Helvetica,Arial,sans-serif}.ui-body-a .ui-link-inherit{color:#fff}.ui-body-a .ui-link{color:#2489ce;font-weight:bold}.ui-br{border-bottom:#828282;border-bottom:rgba(130,130,130,.3);border-bottom-width:1px;border-bottom-style:solid}.ui-btn-up-a{border:1px solid #222;background:#333;font-weight:bold;color:#fff;text-shadow:0 -1px 1px #000;background-image:-moz-linear-gradient(top,#555,#333);background-image:-webkit-gradient(linear,left top,left bottom,color-stop(0,#555),color-stop(1,#333));-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorStr='#555555', EndColorStr='#333333')"}.ui-btn-up-a a.ui-link-inherit{color:#fff}.ui-btn-hover-a{border:1px solid #000;background:#444;font-weight:bold;color:#fff;text-shadow:0 -1px 1px #000;background-image:-moz-linear-gradient(top,#666,#444);background-image:-webkit-gradient(linear,left top,left bottom,color-stop(0,#666),color-stop(1,#444));-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorStr='#666666', EndColorStr='#444444')"}.ui-btn-hover-a a.ui-link-inherit{color:#fff}.ui-btn-down-a{border:1px solid #000;background:#3d3d3d;font-weight:bold;color:#fff;text-shadow:0 -1px 1px #000;background-image:-moz-linear-gradient(top,#333,#5a5a5a);background-image:-webkit-gradient(linear,left top,left bottom,color-stop(0,#333),color-stop(1,#5a5a5a));-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorStr='#333333', EndColorStr='#5a5a5a')"}.ui-btn-down-a a.ui-link-inherit{color:#fff}.ui-btn-up-a,.ui-btn-hover-a,.ui-btn-down-a{font-family:Helvetica,Arial,sans-serif;text-decoration:none}.ui-bar-b{border:1px solid #456f9a;background:#5e87b0;color:#fff;font-weight:bold;text-shadow:0 -1px 1px #254f7a;background-image:-moz-linear-gradient(top,#81a8ce,#5e87b0);background-image:-webkit-gradient(linear,left top,left bottom,color-stop(0,#81a8ce),color-stop(1,#5e87b0));-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorStr='#81a8ce', EndColorStr='#5e87b0')"}.ui-bar-b,.ui-bar-b input,.ui-bar-b select,.ui-bar-b textarea,.ui-bar-b button{font-family:Helvetica,Arial,sans-serif}.ui-bar-b .ui-link-inherit{color:#fff}.ui-bar-b .ui-link{color:#7cc4e7;font-weight:bold}.ui-body-b{border:1px solid #c6c6c6;background:#ccc;color:#333;text-shadow:0 1px 0 #fff;font-weight:normal;background-image:-moz-linear-gradient(top,#e6e6e6,#ccc);background-image:-webkit-gradient(linear,left top,left bottom,color-stop(0,#e6e6e6),color-stop(1,#ccc));-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorStr='#e6e6e6', EndColorStr='#cccccc')"}.ui-body-b,.ui-body-b input,.ui-body-b select,.ui-body-b textarea,.ui-body-b button{font-family:Helvetica,Arial,sans-serif}.ui-body-b .ui-link-inherit{color:#333}.ui-body-b .ui-link{color:#2489ce;font-weight:bold}.ui-btn-up-b{border:1px solid #145072;background:#2567ab;font-weight:bold;color:#fff;text-shadow:0 -1px 1px #145072;background-image:-moz-linear-gradient(top,#4e89c5,#2567ab);background-image:-webkit-gradient(linear,left top,left bottom,color-stop(0,#5f9cc5),color-stop(1,#396b9e));-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorStr='#4e89c5', EndColorStr='#2567ab')"}.ui-btn-up-b a.ui-link-inherit{color:#fff}.ui-btn-hover-b{border:1px solid #00516e;background:#4b88b6;font-weight:bold;color:#fff;text-shadow:0 -1px 1px #014d68;background-image:-moz-linear-gradient(top,#72b0d4,#4b88b6);background-image:-webkit-gradient(linear,left top,left bottom,color-stop(0,#72b0d4),color-stop(1,#4b88b6));-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorStr='#72b0d4', EndColorStr='#4b88b6')"}.ui-btn-hover-b a.ui-link-inherit{color:#fff}.ui-btn-down-b{border:1px solid #225377;background:#4e89c5;font-weight:bold;color:#fff;text-shadow:0 -1px 1px #225377;background-image:-moz-linear-gradient(top,#396b9e,#4e89c5);background-image:-webkit-gradient(linear,left top,left bottom,color-stop(0,#396b9e),color-stop(1,#4e89c5));-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorStr='#396b9e', EndColorStr='#4e89c5')"}.ui-btn-down-b a.ui-link-inherit{color:#fff}.ui-btn-up-b,.ui-btn-hover-b,.ui-btn-down-b{font-family:Helvetica,Arial,sans-serif;text-decoration:none}.ui-bar-c{border:1px solid #b3b3b3;background:#e9eaeb;color:#3e3e3e;font-weight:bold;text-shadow:0 1px 1px #fff;background-image:-moz-linear-gradient(top,#f0f0f0,#e9eaeb);background-image:-webkit-gradient(linear,left top,left bottom,color-stop(0,#f0f0f0),color-stop(1,#e9eaeb));-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorStr='#f0f0f0', EndColorStr='#e9eaeb')"}.ui-bar-c,.ui-bar-c input,.ui-bar-c select,.ui-bar-c textarea,.ui-bar-c button{font-family:Helvetica,Arial,sans-serif}.ui-body-c{border:1px solid #b3b3b3;color:#333;text-shadow:0 1px 0 #fff;background:#f0f0f0;background-image:-moz-linear-gradient(top,#eee,#ddd);background-image:-webkit-gradient(linear,left top,left bottom,color-stop(0,#eee),color-stop(1,#ddd));-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorStr='#eeeeee', EndColorStr='#dddddd')"}.ui-body-c,.ui-body-c input,.ui-body-c select,.ui-body-c textarea,.ui-body-c button{font-family:Helvetica,Arial,sans-serif}.ui-body-c .ui-link-inherit{color:#333}.ui-body-c .ui-link{color:#2489ce;font-weight:bold}.ui-btn-up-c{border:1px solid #ccc;background:#eee;font-weight:bold;color:#444;text-shadow:0 1px 1px #f6f6f6;background-image:-moz-linear-gradient(top,#fefefe,#eee);background-image:-webkit-gradient(linear,left top,left bottom,color-stop(0,#fdfdfd),color-stop(1,#eee));-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorStr='#fdfdfd', EndColorStr='#eeeeee')"}.ui-btn-up-c a.ui-link-inherit{color:#2f3e46}.ui-btn-hover-c{border:1px solid #bbb;background:#dadada;font-weight:bold;color:#101010;text-shadow:0 1px 1px #fff;background-image:-moz-linear-gradient(top,#ededed,#dadada);background-image:-webkit-gradient(linear,left top,left bottom,color-stop(0,#ededed),color-stop(1,#dadada));-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorStr='#ededed', EndColorStr='#dadada')"}.ui-btn-hover-c a.ui-link-inherit{color:#2f3e46}.ui-btn-down-c{border:1px solid #808080;background:#fdfdfd;font-weight:bold;color:#111;text-shadow:0 1px 1px #fff;background-image:-moz-linear-gradient(top,#eee,#fdfdfd);background-image:-webkit-gradient(linear,left top,left bottom,color-stop(0,#eee),color-stop(1,#fdfdfd));-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorStr='#eeeeee', EndColorStr='#fdfdfd')"}.ui-btn-down-c a.ui-link-inherit{color:#2f3e46}.ui-btn-up-c,.ui-btn-hover-c,.ui-btn-down-c{font-family:Helvetica,Arial,sans-serif;text-decoration:none}.ui-bar-d{border:1px solid #ccc;background:#bbb;color:#333;text-shadow:0 1px 0 #eee;background-image:-moz-linear-gradient(top,#ddd,#bbb);background-image:-webkit-gradient(linear,left top,left bottom,color-stop(0,#ddd),color-stop(1,#bbb));-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorStr='#dddddd', EndColorStr='#bbbbbb')"}.ui-bar-d,.ui-bar-d input,.ui-bar-d select,.ui-bar-d textarea,.ui-bar-d button{font-family:Helvetica,Arial,sans-serif}.ui-bar-d .ui-link-inherit{color:#333}.ui-bar-d .ui-link{color:#2489ce;font-weight:bold}.ui-body-d{border:1px solid #ccc;color:#333;text-shadow:0 1px 0 #fff;background:#fff}.ui-body-d,.ui-body-d input,.ui-body-d select,.ui-body-d textarea,.ui-body-d button{font-family:Helvetica,Arial,sans-serif}.ui-body-d .ui-link-inherit{color:#333}.ui-body-d .ui-link{color:#2489ce;font-weight:bold}.ui-btn-up-d{border:1px solid #ccc;background:#fff;font-weight:bold;color:#444;text-shadow:0 1px 1px #fff}.ui-btn-up-d a.ui-link-inherit{color:#333}.ui-btn-hover-d{border:1px solid #aaa;background:#eee;font-weight:bold;color:#222;cursor:pointer;text-shadow:0 1px 1px #fff;background-image:-moz-linear-gradient(top,#fdfdfd,#eee);background-image:-webkit-gradient(linear,left top,left bottom,color-stop(0,#fdfdfd),color-stop(1,#eee));-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorStr='#fdfdfd', EndColorStr='#eeeeee')"}.ui-btn-hover-d a.ui-link-inherit{color:#222}.ui-btn-down-d{border:1px solid #aaa;background:#fff;font-weight:bold;color:#111;text-shadow:0 1px 1px #fff;background-image:-moz-linear-gradient(top,#eee,#fff);background-image:-webkit-gradient(linear,left top,left bottom,color-stop(0,#eee),color-stop(1,#fff));-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorStr='#eeeeee', EndColorStr='#ffffff')"}.ui-btn-down-d a.ui-link-inherit{border:1px solid #808080;background:#ced0d2;font-weight:bold;color:#111;text-shadow:none;background-image:-moz-linear-gradient(top,#ccc,#eee);background-image:-webkit-gradient(linear,left top,left bottom,color-stop(0,#ccc),color-stop(1,#eee));-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorStr='#cccccc', EndColorStr='#eeeeee')"}.ui-btn-up-d,.ui-btn-hover-d,.ui-btn-down-d{font-family:Helvetica,Arial,sans-serif;text-decoration:none}.ui-bar-e{border:1px solid #f7c942;background:#fadb4e;color:#333;text-shadow:0 1px 0 #fff;background-image:-moz-linear-gradient(top,#fceda7,#fadb4e);background-image:-webkit-gradient(linear,left top,left bottom,color-stop(0,#fceda7),color-stop(1,#fadb4e));-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorStr='#fceda7', EndColorStr='#fadb4e')"}.ui-bar-e,.ui-bar-e input,.ui-bar-e select,.ui-bar-e textarea,.ui-bar-d button{font-family:Helvetica,Arial,sans-serif}.ui-bar-e .ui-link-inherit{color:#333}.ui-bar-e .ui-link{color:#2489ce;font-weight:bold}.ui-body-e{border:1px solid #f7c942;color:#333;text-shadow:0 1px 0 #fff;background:#faeb9e;background-image:-moz-linear-gradient(top,#fff,#faeb9e);background-image:-webkit-gradient(linear,left top,left bottom,color-stop(0,#fff),color-stop(1,#faeb9e));-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorStr='#ffffff', EndColorStr='#faeb9e')"}.ui-body-e,.ui-body-e input,.ui-body-e select,.ui-body-e textarea,.ui-body-e button{font-family:Helvetica,Arial,sans-serif}.ui-body-e .ui-link-inherit{color:#333}.ui-body-e .ui-link{color:#2489ce;font-weight:bold}.ui-btn-up-e{border:1px solid #f7c942;background:#fadb4e;font-weight:bold;color:#333;text-shadow:0 1px 0 #fff;background-image:-moz-linear-gradient(top,#fceda7,#fadb4e);background-image:-webkit-gradient(linear,left top,left bottom,color-stop(0,#fceda7),color-stop(1,#fadb4e));-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorStr='#fceda7', EndColorStr='#fadb4e')"}.ui-btn-up-e a.ui-link-inherit{color:#333}.ui-btn-hover-e{border:1px solid #e79952;background:#fbe26f;font-weight:bold;color:#111;text-shadow:0 1px 1px #fff;background-image:-moz-linear-gradient(top,#fcf0b5,#fbe26f);background-image:-webkit-gradient(linear,left top,left bottom,color-stop(0,#fcf0b5),color-stop(1,#fbe26f));-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorStr='#fcf0b5', EndColorStr='#fbe26f')"}.ui-btn-hover-e a.ui-link-inherit{color:#333}.ui-btn-down-e{border:1px solid #f7c942;background:#fceda7;font-weight:bold;color:#111;text-shadow:0 1px 1px #fff;background-image:-moz-linear-gradient(top,#fadb4e,#fceda7);background-image:-webkit-gradient(linear,left top,left bottom,color-stop(0,#fadb4e),color-stop(1,#fceda7));-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorStr='#fadb4e', EndColorStr='#fceda7')"}.ui-btn-down-e a.ui-link-inherit{color:#333}.ui-btn-up-e,.ui-btn-hover-e,.ui-btn-down-e{font-family:Helvetica,Arial,sans-serif;text-decoration:none}a.ui-link-inherit{text-decoration:none!important}.ui-btn-active{border:1px solid #155678;background:#4596ce;font-weight:bold;color:#fff;cursor:pointer;text-shadow:0 -1px 1px #145072;text-decoration:none;background-image:-moz-linear-gradient(top,#85bae4,#5393c5);background-image:-webkit-gradient(linear,left top,left bottom,color-stop(0,#85bae4),color-stop(1,#5393c5));-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorStr='#85bae4', EndColorStr='#5393c5')";outline:0}.ui-btn-active a.ui-link-inherit{color:#fff}.ui-btn-inner{border-top:1px solid #fff;border-color:rgba(255,255,255,.3)}.ui-corner-tl{-moz-border-radius-topleft:.6em;-webkit-border-top-left-radius:.6em;border-top-left-radius:.6em}.ui-corner-tr{-moz-border-radius-topright:.6em;-webkit-border-top-right-radius:.6em;border-top-right-radius:.6em}.ui-corner-bl{-moz-border-radius-bottomleft:.6em;-webkit-border-bottom-left-radius:.6em;border-bottom-left-radius:.6em}.ui-corner-br{-moz-border-radius-bottomright:.6em;-webkit-border-bottom-right-radius:.6em;border-bottom-right-radius:.6em}.ui-corner-top{-moz-border-radius-topleft:.6em;-webkit-border-top-left-radius:.6em;border-top-left-radius:.6em;-moz-border-radius-topright:.6em;-webkit-border-top-right-radius:.6em;border-top-right-radius:.6em}.ui-corner-bottom{-moz-border-radius-bottomleft:.6em;-webkit-border-bottom-left-radius:.6em;border-bottom-left-radius:.6em;-moz-border-radius-bottomright:.6em;-webkit-border-bottom-right-radius:.6em;border-bottom-right-radius:.6em}.ui-corner-right{-moz-border-radius-topright:.6em;-webkit-border-top-right-radius:.6em;border-top-right-radius:.6em;-moz-border-radius-bottomright:.6em;-webkit-border-bottom-right-radius:.6em;border-bottom-right-radius:.6em}.ui-corner-left{-moz-border-radius-topleft:.6em;-webkit-border-top-left-radius:.6em;border-top-left-radius:.6em;-moz-border-radius-bottomleft:.6em;-webkit-border-bottom-left-radius:.6em;border-bottom-left-radius:.6em}.ui-corner-all{-moz-border-radius:.6em;-webkit-border-radius:.6em;border-radius:.6em}.ui-disabled{opacity:.3}.ui-disabled,.ui-disabled a{cursor:default!important}.ui-icon{background:#666;background:rgba(0,0,0,.4);background-image:url(images/icons-18-white.png);background-repeat:no-repeat;-moz-border-radius:9px;-webkit-border-radius:9px;border-radius:9px}.ui-icon-alt{background:#fff;background:rgba(255,255,255,.3);background-image:url(images/icons-18-black.png);background-repeat:no-repeat}@media only screen and (-webkit-min-device-pixel-ratio:1.5),only screen and (min--moz-device-pixel-ratio:1.5),only screen and (min-resolution:240dpi){.ui-icon-plus,.ui-icon-minus,.ui-icon-delete,.ui-icon-arrow-r,.ui-icon-arrow-l,.ui-icon-arrow-u,.ui-icon-arrow-d,.ui-icon-check,.ui-icon-gear,.ui-icon-refresh,.ui-icon-forward,.ui-icon-back,.ui-icon-grid,.ui-icon-star,.ui-icon-alert,.ui-icon-info,.ui-icon-home,.ui-icon-search,.ui-icon-checkbox-off,.ui-icon-checkbox-on,.ui-icon-radio-off,.ui-icon-radio-on{background-image:url(images/icons-36-white.png);-moz-background-size:776px 18px;-o-background-size:776px 18px;-webkit-background-size:776px 18px;background-size:776px 18px}.ui-icon-alt{background-image:url(images/icons-36-black.png)}}.ui-icon-plus{background-position:-0 50%}.ui-icon-minus{background-position:-36px 50%}.ui-icon-delete{background-position:-72px 50%}.ui-icon-arrow-r{background-position:-108px 50%}.ui-icon-arrow-l{background-position:-144px 50%}.ui-icon-arrow-u{background-position:-180px 50%}.ui-icon-arrow-d{background-position:-216px 50%}.ui-icon-check{background-position:-252px 50%}.ui-icon-gear{background-position:-288px 50%}.ui-icon-refresh{background-position:-324px 50%}.ui-icon-forward{background-position:-360px 50%}.ui-icon-back{background-position:-396px 50%}.ui-icon-grid{background-position:-432px 50%}.ui-icon-star{background-position:-468px 50%}.ui-icon-alert{background-position:-504px 50%}.ui-icon-info{background-position:-540px 50%}.ui-icon-home{background-position:-576px 50%}.ui-icon-search{background-position:-612px 50%}.ui-icon-checkbox-off{background-position:-684px 50%}.ui-icon-checkbox-on{background-position:-648px 50%}.ui-icon-radio-off{background-position:-756px 50%}.ui-icon-radio-on{background-position:-720px 50%}.ui-icon-checkbox-off,.ui-icon-checkbox-on,.ui-icon-radio-off,.ui-icon-radio-on{background-color:transparent;-moz-border-radius:0;-webkit-border-radius:0;border-radius:0}.ui-icon-searchfield{background-image:url(images/icon-search-black.png);background-size:16px 16px}.ui-icon-loading{background-image:url(images/ajax-loader.png);width:40px;height:40px;-moz-border-radius:20px;-webkit-border-radius:20px;border-radius:20px;background-size:35px 35px}.ui-btn-corner-tl{-moz-border-radius-topleft:1em;-webkit-border-top-left-radius:1em;border-top-left-radius:1em}.ui-btn-corner-tr{-moz-border-radius-topright:1em;-webkit-border-top-right-radius:1em;border-top-right-radius:1em}.ui-btn-corner-bl{-moz-border-radius-bottomleft:1em;-webkit-border-bottom-left-radius:1em;border-bottom-left-radius:1em}.ui-btn-corner-br{-moz-border-radius-bottomright:1em;-webkit-border-bottom-right-radius:1em;border-bottom-right-radius:1em}.ui-btn-corner-top{-moz-border-radius-topleft:1em;-webkit-border-top-left-radius:1em;border-top-left-radius:1em;-moz-border-radius-topright:1em;-webkit-border-top-right-radius:1em;border-top-right-radius:1em}.ui-btn-corner-bottom{-moz-border-radius-bottomleft:1em;-webkit-border-bottom-left-radius:1em;border-bottom-left-radius:1em;-moz-border-radius-bottomright:1em;-webkit-border-bottom-right-radius:1em;border-bottom-right-radius:1em}.ui-btn-corner-right{-moz-border-radius-topright:1em;-webkit-border-top-right-radius:1em;border-top-right-radius:1em;-moz-border-radius-bottomright:1em;-webkit-border-bottom-right-radius:1em;border-bottom-right-radius:1em}.ui-btn-corner-left{-moz-border-radius-topleft:1em;-webkit-border-top-left-radius:1em;border-top-left-radius:1em;-moz-border-radius-bottomleft:1em;-webkit-border-bottom-left-radius:1em;border-bottom-left-radius:1em}.ui-btn-corner-all{-moz-border-radius:1em;-webkit-border-radius:1em;border-radius:1em}.ui-corner-tl,.ui-corner-tr,.ui-corner-bl,.ui-corner-br,.ui-corner-top,.ui-corner-bottom,.ui-corner-right,.ui-corner-left,.ui-corner-all,.ui-btn-corner-tl,.ui-btn-corner-tr,.ui-btn-corner-bl,.ui-btn-corner-br,.ui-btn-corner-top,.ui-btn-corner-bottom,.ui-btn-corner-right,.ui-btn-corner-left,.ui-btn-corner-all{-webkit-background-clip:padding-box;-moz-background-clip:padding-box;background-clip:padding-box}.ui-overlay{background:#666;opacity:.5;filter:Alpha(Opacity=50);position:absolute;width:100%;height:100%}.ui-overlay-shadow{-moz-box-shadow:0 0 12px rgba(0,0,0,.6);-webkit-box-shadow:0 0 12px rgba(0,0,0,.6);box-shadow:0 0 12px rgba(0,0,0,.6)}.ui-shadow{-moz-box-shadow:0 1px 4px rgba(0,0,0,.3);-webkit-box-shadow:0 1px 4px rgba(0,0,0,.3);box-shadow:0 1px 4px rgba(0,0,0,.3)}.ui-bar-a .ui-shadow,.ui-bar-b .ui-shadow,.ui-bar-c .ui-shadow{-moz-box-shadow:0 1px 0 rgba(255,255,255,.3);-webkit-box-shadow:0 1px 0 rgba(255,255,255,.3);box-shadow:0 1px 0 rgba(255,255,255,.3)}.ui-shadow-inset{-moz-box-shadow:inset 0 1px 4px rgba(0,0,0,.2);-webkit-box-shadow:inset 0 1px 4px rgba(0,0,0,.2);box-shadow:inset 0 1px 4px rgba(0,0,0,.2)}.ui-icon-shadow{-moz-box-shadow:0 1px 0 rgba(255,255,255,.4);-webkit-box-shadow:0 1px 0 rgba(255,255,255,.4);box-shadow:0 1px 0 rgba(255,255,255,.4)}.ui-focus{-moz-box-shadow:0 0 12px #387bbe;-webkit-box-shadow:0 0 12px #387bbe;box-shadow:0 0 12px #387bbe}.ui-mobile-nosupport-boxshadow *{-moz-box-shadow:none!important;-webkit-box-shadow:none!important;box-shadow:none!important}.ui-mobile-nosupport-boxshadow .ui-focus{outline-width:2px}.ui-mobile,.ui-mobile body{height:100%}.ui-mobile fieldset,.ui-page{padding:0;margin:0}.ui-mobile a img,.ui-mobile fieldset{border:0}.ui-mobile-viewport{margin:0;overflow-x:hidden;-webkit-text-size-adjust:none;-ms-text-size-adjust:none;-webkit-tap-highlight-color:rgba(0,0,0,0)}.ui-mobile [data-role=page],.ui-mobile [data-role=dialog],.ui-page{top:0;left:0;width:100%;min-height:100%;position:absolute;display:none;border:0}.ui-mobile .ui-page-active{display:block;overflow:visible}.portrait,.portrait .ui-page{min-height:100%}.landscape,.landscape .ui-page{min-height:100%}.ui-loading .ui-mobile-viewport{overflow:hidden!important}.ui-loading .ui-loader{display:block}.ui-loading .ui-page{overflow:hidden}.ui-loader{display:none;position:absolute;opacity:.85;z-index:100;left:50%;width:200px;margin-left:-130px;margin-top:-35px;padding:10px 30px}.ui-loader h1{font-size:15px;text-align:center}.ui-loader .ui-icon{position:static;display:block;opacity:.9;margin:0 auto;width:35px;height:35px;background-color:transparent}.ui-mobile-rendering>*{visibility:hidden}.ui-bar,.ui-body{position:relative;padding:.4em 15px;overflow:hidden;display:block;clear:both}.ui-bar{font-size:16px;margin:0}.ui-bar h1,.ui-bar h2,.ui-bar h3,.ui-bar h4,.ui-bar h5,.ui-bar h6{margin:0;padding:0;font-size:16px;display:inline-block}.ui-header,.ui-footer{display:block}.ui-page .ui-header,.ui-page .ui-footer{position:relative}.ui-header .ui-btn-left{position:absolute;left:10px;top:.4em}.ui-header .ui-btn-right{position:absolute;right:10px;top:.4em}.ui-header .ui-title,.ui-footer .ui-title{text-align:center;font-size:16px;display:block;margin:.6em 90px .8em;padding:0;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;outline:0!important}.ui-content{border-width:0;overflow:visible;overflow-x:hidden;padding:15px}.ui-page-fullscreen .ui-content{padding:0}.ui-icon{width:18px;height:18px}.ui-fullscreen img{max-width:100%}.ui-nojs{position:absolute;left:-9999px}.spin{-webkit-transform:rotate(360deg);-webkit-animation-name:spin;-webkit-animation-duration:1s;-webkit-animation-iteration-count:infinite}@-webkit-keyframes spin{from{-webkit-transform:rotate(0deg)}to{-webkit-transform:rotate(360deg)}}.in,.out{-webkit-animation-timing-function:ease-in-out;-webkit-animation-duration:350ms}.slide.in{-webkit-transform:translateX(0);-webkit-animation-name:slideinfromright}.slide.out{-webkit-transform:translateX(-100%);-webkit-animation-name:slideouttoleft}.slide.in.reverse{-webkit-transform:translateX(0);-webkit-animation-name:slideinfromleft}.slide.out.reverse{-webkit-transform:translateX(100%);-webkit-animation-name:slideouttoright}.slideup.in{-webkit-transform:translateY(0);-webkit-animation-name:slideinfrombottom;z-index:10}.slideup.out{-webkit-animation-name:dontmove;z-index:0}.slideup.out.reverse{-webkit-transform:translateY(100%);z-index:10;-webkit-animation-name:slideouttobottom}.slideup.in.reverse{z-index:0;-webkit-animation-name:dontmove}.slidedown.in{-webkit-transform:translateY(0);-webkit-animation-name:slideinfromtop;z-index:10}.slidedown.out{-webkit-animation-name:dontmove;z-index:0}.slidedown.out.reverse{-webkit-transform:translateY(-100%);z-index:10;-webkit-animation-name:slideouttotop}.slidedown.in.reverse{z-index:0;-webkit-animation-name:dontmove}@-webkit-keyframes slideinfromright{from{-webkit-transform:translateX(100%)}to{-webkit-transform:translateX(0)}}@-webkit-keyframes slideinfromleft{from{-webkit-transform:translateX(-100%)}to{-webkit-transform:translateX(0)}}@-webkit-keyframes slideouttoleft{from{-webkit-transform:translateX(0)}to{-webkit-transform:translateX(-100%)}}@-webkit-keyframes slideouttoright{from{-webkit-transform:translateX(0)}to{-webkit-transform:translateX(100%)}}@-webkit-keyframes slideinfromtop{from{-webkit-transform:translateY(-100%)}to{-webkit-transform:translateY(0)}}@-webkit-keyframes slideinfrombottom{from{-webkit-transform:translateY(100%)}to{-webkit-transform:translateY(0)}}@-webkit-keyframes slideouttobottom{from{-webkit-transform:translateY(0)}to{-webkit-transform:translateY(100%)}}@-webkit-keyframes slideouttotop{from{-webkit-transform:translateY(0)}to{-webkit-transform:translateY(-100%)}}@-webkit-keyframes fadein{from{opacity:0}to{opacity:1}}@-webkit-keyframes fadeout{from{opacity:1}to{opacity:0}}.fade.in{opacity:1;z-index:10;-webkit-animation-name:fadein}.fade.out{z-index:0;-webkit-animation-name:fadeout}.ui-mobile-viewport-perspective{-webkit-perspective:1000;position:absolute}.ui-mobile-viewport-transitioning,.ui-mobile-viewport-transitioning .ui-page{width:100%;height:100%;overflow:hidden}.flip{-webkit-animation-duration:.65s;-webkit-backface-visibility:hidden;-webkit-transform:translateX(0)}.flip.in{-webkit-transform:rotateY(0) scale(1);-webkit-animation-name:flipinfromleft}.flip.out{-webkit-transform:rotateY(-180deg) scale(.8);-webkit-animation-name:flipouttoleft}.flip.in.reverse{-webkit-transform:rotateY(0) scale(1);-webkit-animation-name:flipinfromright}.flip.out.reverse{-webkit-transform:rotateY(180deg) scale(.8);-webkit-animation-name:flipouttoright}@-webkit-keyframes flipinfromright{from{-webkit-transform:rotateY(-180deg) scale(.8)}to{-webkit-transform:rotateY(0) scale(1)}}@-webkit-keyframes flipinfromleft{from{-webkit-transform:rotateY(180deg) scale(.8)}to{-webkit-transform:rotateY(0) scale(1)}}@-webkit-keyframes flipouttoleft{from{-webkit-transform:rotateY(0) scale(1)}to{-webkit-transform:rotateY(-180deg) scale(.8)}}@-webkit-keyframes flipouttoright{from{-webkit-transform:rotateY(0) scale(1)}to{-webkit-transform:rotateY(180deg) scale(.8)}}@-webkit-keyframes dontmove{from{opacity:1}to{opacity:1}}.pop{-webkit-transform-origin:50% 50%}.pop.in{-webkit-transform:scale(1);opacity:1;-webkit-animation-name:popin;z-index:10}.pop.out.reverse{-webkit-transform:scale(.2);opacity:0;-webkit-animation-name:popout;z-index:10}.pop.in.reverse{z-index:0;-webkit-animation-name:dontmove}@-webkit-keyframes popin{from{-webkit-transform:scale(.2);opacity:0}to{-webkit-transform:scale(1);opacity:1}}@-webkit-keyframes popout{from{-webkit-transform:scale(1);opacity:1}to{-webkit-transform:scale(.2);opacity:0}}.ui-grid-a,.ui-grid-b,.ui-grid-c,.ui-grid-d{overflow:hidden}.ui-block-a,.ui-block-b,.ui-block-c,.ui-block-d,.ui-block-e{margin:0;padding:0;border:0;float:left;min-height:1px}.ui-grid-solo .ui-block-a{width:100%;float:none}.ui-grid-a .ui-block-a,.ui-grid-a .ui-block-b{width:50%}.ui-grid-a .ui-block-a{clear:left}.ui-grid-b .ui-block-a,.ui-grid-b .ui-block-b,.ui-grid-b .ui-block-c{width:33.333%}.ui-grid-b .ui-block-a{clear:left}.ui-grid-c .ui-block-a,.ui-grid-c .ui-block-b,.ui-grid-c .ui-block-c,.ui-grid-c .ui-block-d{width:25%}.ui-grid-c .ui-block-a{clear:left}.ui-grid-d .ui-block-a,.ui-grid-d .ui-block-b,.ui-grid-d .ui-block-c,.ui-grid-d .ui-block-d,.ui-grid-d .ui-block-e{width:20%}.ui-grid-d .ui-block-a{clear:left}.ui-header,.ui-footer,.ui-page-fullscreen .ui-header,.ui-page-fullscreen .ui-footer{position:absolute;overflow:hidden;width:100%;border-left-width:0;border-right-width:0}.ui-header-fixed,.ui-footer-fixed{z-index:1000;-webkit-transform:translateZ(0)}.ui-footer-duplicate,.ui-page-fullscreen .ui-fixed-inline{display:none}.ui-page-fullscreen .ui-header,.ui-page-fullscreen .ui-footer{opacity:.9}.ui-navbar{overflow:hidden}.ui-navbar ul,.ui-navbar-expanded ul{list-style:none;padding:0;margin:0;position:relative;display:block;border:0}.ui-navbar-collapsed ul{float:left;width:75%;margin-right:-2px}.ui-navbar-collapsed .ui-navbar-toggle{float:left;width:25%}.ui-navbar li.ui-navbar-truncate{position:absolute;left:-9999px;top:-9999px}.ui-navbar li .ui-btn,.ui-navbar .ui-navbar-toggle .ui-btn{display:block;font-size:12px;text-align:center;margin:0;border-right-width:0}.ui-navbar li .ui-btn{margin-right:-1px}.ui-navbar li .ui-btn:last-child{margin-right:0}.ui-header .ui-navbar li .ui-btn,.ui-header .ui-navbar .ui-navbar-toggle .ui-btn,.ui-footer .ui-navbar li .ui-btn,.ui-footer .ui-navbar .ui-navbar-toggle .ui-btn{border-top-width:0;border-bottom-width:0}.ui-navbar .ui-btn-inner{padding-left:2px;padding-right:2px}.ui-navbar-noicons li .ui-btn .ui-btn-inner,.ui-navbar-noicons .ui-navbar-toggle .ui-btn-inner{padding-top:.8em;padding-bottom:.9em}.ui-navbar-expanded .ui-btn{margin:0;font-size:14px}.ui-navbar-expanded .ui-btn-inner{padding-left:5px;padding-right:5px}.ui-navbar-expanded .ui-btn-icon-top .ui-btn-inner{padding:45px 5px 15px;text-align:center}.ui-navbar-expanded .ui-btn-icon-top .ui-icon{top:15px}.ui-navbar-expanded .ui-btn-icon-bottom .ui-btn-inner{padding:15px 5px 45px;text-align:center}.ui-navbar-expanded .ui-btn-icon-bottom .ui-icon{bottom:15px}.ui-navbar-expanded li .ui-btn .ui-btn-inner{min-height:2.5em}.ui-navbar-expanded .ui-navbar-noicons .ui-btn .ui-btn-inner{padding-top:1.8em;padding-bottom:1.9em}.ui-btn{display:block;text-align:center;cursor:pointer;position:relative;margin:.5em 5px;padding:0}.ui-btn:focus,.ui-btn:active{outline:0}.ui-header .ui-btn,.ui-footer .ui-btn,.ui-bar .ui-btn{display:inline-block;font-size:13px;margin:0}.ui-btn-inline{display:inline-block}.ui-btn-inner{padding:.6em 25px;display:block;height:100%;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;position:relative}.ui-header .ui-btn-inner,.ui-footer .ui-btn-inner,.ui-bar .ui-btn-inner{padding:.4em 8px .5em}.ui-btn-icon-notext{display:inline-block;width:20px;height:20px;padding:2px 1px 2px 3px;text-indent:-9999px}.ui-btn-icon-notext .ui-btn-inner{padding:0}.ui-btn-icon-notext .ui-btn-text{position:absolute;left:-999px}.ui-btn-icon-left .ui-btn-inner{padding-left:33px}.ui-header .ui-btn-icon-left .ui-btn-inner,.ui-footer .ui-btn-icon-left .ui-btn-inner,.ui-bar .ui-btn-icon-left .ui-btn-inner{padding-left:27px}.ui-btn-icon-right .ui-btn-inner{padding-right:33px}.ui-header .ui-btn-icon-right .ui-btn-inner,.ui-footer .ui-btn-icon-right .ui-btn-inner,.ui-bar .ui-btn-icon-right .ui-btn-inner{padding-right:27px}.ui-btn-icon-top .ui-btn-inner{padding-top:33px}.ui-header .ui-btn-icon-top .ui-btn-inner,.ui-footer .ui-btn-icon-top .ui-btn-inner,.ui-bar .ui-btn-icon-top .ui-btn-inner{padding-top:27px}.ui-btn-icon-bottom .ui-btn-inner{padding-bottom:33px}.ui-header .ui-btn-icon-bottom .ui-btn-inner,.ui-footer .ui-btn-icon-bottom .ui-btn-inner,.ui-bar .ui-btn-icon-bottom .ui-btn-inner{padding-bottom:27px}.ui-btn-icon-notext .ui-icon{display:block}.ui-btn-icon-left .ui-icon,.ui-btn-icon-right .ui-icon{position:absolute;top:50%;margin-top:-9px}.ui-btn-icon-top .ui-icon,.ui-btn-icon-bottom .ui-icon{position:absolute;left:50%;margin-left:-9px}.ui-btn-icon-left .ui-icon{left:10px}.ui-btn-icon-right .ui-icon{right:10px}.ui-header .ui-btn-icon-left .ui-icon,.ui-footer .ui-btn-icon-left .ui-icon,.ui-bar .ui-btn-icon-left .ui-icon{left:4px}.ui-header .ui-btn-icon-right .ui-icon,.ui-footer .ui-btn-icon-right .ui-icon,.ui-bar .ui-btn-icon-right .ui-icon{right:4px}.ui-header .ui-btn-icon-top .ui-icon,.ui-footer .ui-btn-icon-top .ui-icon,.ui-bar .ui-btn-icon-top .ui-icon{top:4px}.ui-header .ui-btn-icon-bottom .ui-icon,.ui-footer .ui-btn-icon-bottom .ui-icon,.ui-bar .ui-btn-icon-bottom .ui-icon{bottom:4px}.ui-btn-icon-top .ui-icon{top:5px}.ui-btn-icon-bottom .ui-icon{bottom:5px}.ui-btn-hidden{position:absolute;top:0;left:0;width:100%;height:100%;-webkit-appearance:button;opacity:0;cursor:pointer;-ms-filter:"alpha(opacity=0)";filter:alpha(opacity=0)}.ui-collapsible-contain{margin:.5em 0}.ui-collapsible-heading{font-size:16px;display:block;margin:0 -8px;padding:0;border-width:0 0 1px 0;position:relative}.ui-collapsible-heading a{text-align:left;margin:0}.ui-collapsible-heading a .ui-btn-inner{padding-left:40px}.ui-collapsible-heading a span.ui-btn{position:absolute;left:6px;top:50%;margin:-12px 0 0 0;width:20px;height:20px;padding:1px 0 1px 2px;text-indent:-9999px}.ui-collapsible-heading a span.ui-btn .ui-btn-inner{padding:0}.ui-collapsible-heading a span.ui-btn .ui-icon{left:0;margin-top:-10px}.ui-collapsible-heading-status{position:absolute;left:-9999px}.ui-collapsible-content{display:block;padding:10px 0 10px 8px}.ui-collapsible-content-collapsed{display:none}.ui-collapsible-set{margin:.5em 0}.ui-collapsible-set .ui-collapsible-contain{margin:-1px 0 0}.ui-controlgroup,fieldset.ui-controlgroup{padding:0;margin:.5em 0 1em}.ui-bar .ui-controlgroup{margin:0 .3em}.ui-controlgroup-label{font-size:16px;line-height:1.4;font-weight:normal;margin:0 0 .3em}.ui-controlgroup-controls{display:block;width:95%}.ui-controlgroup li{list-style:none}.ui-controlgroup-vertical .ui-btn,.ui-controlgroup-vertical .ui-checkbox,.ui-controlgroup-vertical .ui-radio{margin:0;border-bottom-width:0}.ui-controlgroup-vertical .ui-controlgroup-last{border-bottom-width:1px}.ui-controlgroup-horizontal{padding:0}.ui-controlgroup-horizontal .ui-btn,.ui-controlgroup-horizontal .ui-checkbox,.ui-controlgroup-horizontal .ui-radio{display:inline-block;margin:0 -5px 0 0}.ui-controlgroup-horizontal .ui-checkbox,.ui-controlgroup-horizontal .ui-radio{display:inline}.ui-controlgroup-horizontal .ui-checkbox .ui-btn,.ui-controlgroup-horizontal .ui-radio .ui-btn,.ui-controlgroup-horizontal .ui-checkbox:last-child,.ui-controlgroup-horizontal .ui-radio:last-child{margin-right:0}.ui-controlgroup-horizontal .ui-controlgroup-last{margin-right:0}.ui-controlgroup .ui-checkbox label,.ui-controlgroup .ui-radio label{font-size:16px}.min-width-480px .ui-controlgroup-label{vertical-align:top;display:inline-block;width:20%;margin:0 2% 0 0}.min-width-480px .ui-controlgroup-controls{width:60%;display:inline-block}.ui-dialog{min-height:480px}.ui-dialog .ui-header,.ui-dialog .ui-content,.ui-dialog .ui-footer{margin:15px;position:relative}.ui-dialog .ui-header,.ui-dialog .ui-footer{z-index:10;width:auto}.ui-dialog .ui-content,.ui-dialog .ui-footer{margin-top:-15px}.ui-checkbox,.ui-radio{position:relative;margin:.2em 0 .5em;z-index:1}.ui-checkbox .ui-btn,.ui-radio .ui-btn{margin:0;text-align:left;z-index:2}.ui-checkbox .ui-btn-icon-left .ui-btn-inner,.ui-radio .ui-btn-icon-left .ui-btn-inner{padding-left:45px}.ui-checkbox .ui-btn-icon-right .ui-btn-inner,.ui-radio .ui-btn-icon-right .ui-btn-inner{padding-right:45px}.ui-checkbox .ui-btn-icon-left .ui-icon,.ui-radio .ui-btn-icon-left .ui-icon{left:15px}.ui-checkbox .ui-btn-icon-right .ui-icon,.ui-radio .ui-btn-icon-right .ui-icon{right:15px}.ui-checkbox input,.ui-radio input{position:absolute;left:20px;top:50%;width:10px;height:10px;margin:-5px 0 0 0;outline:0!important;z-index:1}.ui-field-contain{background:0;padding:1.5em 0;margin:0;border-bottom-width:1px;overflow:visible}.ui-field-contain:first-child{border-top-width:0}.min-width-480px .ui-field-contain{border-width:0;padding:0;margin:1em 0}.ui-select{display:block;position:relative}.ui-select select{position:absolute;left:-9999px;top:-9999px}.ui-select .ui-btn{overflow:hidden}.ui-select .ui-btn select{cursor:pointer;-webkit-appearance:button;left:0;top:0;width:100%;height:100%;opacity:0;-ms-filter:"alpha(opacity=0)";filter:alpha(opacity=0)}.ui-select .ui-btn select.ui-select-nativeonly{opacity:1}.ui-select .ui-btn-icon-right .ui-btn-inner{padding-right:45px}.ui-select .ui-btn-icon-right .ui-icon{right:15px}label.ui-select{font-size:16px;line-height:1.4;font-weight:normal;margin:0 0 .3em;display:block}.ui-select .ui-btn-text,.ui-selectmenu .ui-btn-text{display:inline-block;min-height:1em}.ui-select .ui-btn-text{text-overflow:ellipsis;overflow:hidden;display:block}.ui-selectmenu{position:absolute;padding:0;z-index:100!important;width:80%;max-width:350px;padding:6px}.ui-selectmenu .ui-listview{margin:0}.ui-selectmenu .ui-btn.ui-li-divider{cursor:default}.ui-selectmenu-hidden{top:-9999px;left:-9999px}.ui-selectmenu-screen{position:absolute;top:0;left:0;width:100%;height:100%;z-index:99}.ui-screen-hidden,.ui-selectmenu-list .ui-li .ui-icon{display:none}.ui-selectmenu-list .ui-li .ui-icon{display:block}.ui-li.ui-selectmenu-placeholder{display:none}.ui-selectmenu .ui-header .ui-title{margin:.6em 46px .8em}.min-width-480px label.ui-select{display:inline-block;width:20%;margin:0 2% 0 0}.min-width-480px .ui-select{width:60%;display:inline-block}.ui-selectmenu .ui-header h1:after{content:'.';visibility:hidden}label.ui-input-text{font-size:16px;line-height:1.4;display:block;font-weight:normal;margin:0 0 .3em}input.ui-input-text,textarea.ui-input-text{background-image:none;padding:.4em;line-height:1.4;font-size:16px;display:block;width:95%}input.ui-input-text{-webkit-appearance:none}textarea.ui-input-text{height:50px;-webkit-transition:height 200ms linear;-moz-transition:height 200ms linear;-o-transition:height 200ms linear;transition:height 200ms linear}.ui-input-search{padding:0 30px;width:77%;background-position:8px 50%;background-repeat:no-repeat;position:relative}.ui-input-search input.ui-input-text{border:0;width:98%;padding:.4em 0;margin:0;display:block;background:transparent none;outline:0!important}.ui-input-search .ui-input-clear{position:absolute;right:0;top:50%;margin-top:-14px}.ui-input-search .ui-input-clear-hidden{display:none}.min-width-480px label.ui-input-text{vertical-align:top}.min-width-480px label.ui-input-text{display:inline-block;width:20%;margin:0 2% 0 0}.min-width-480px input.ui-input-text,.min-width-480px textarea.ui-input-text,.min-width-480px .ui-input-search{width:60%;display:inline-block}.min-width-480px .ui-input-search{width:50%}.min-width-480px .ui-input-search input.ui-input-text{width:98%}.ui-listview{margin:0;counter-reset:listnumbering}.ui-content .ui-listview{margin:-15px}.ui-content .ui-listview-inset{margin:1em 0}.ui-listview,.ui-li{list-style:none;padding:0}.ui-li,.ui-li.ui-field-contain{display:block;margin:0;position:relative;overflow:visible;text-align:left;border-width:0;border-top-width:1px}.ui-li .ui-btn-text a.ui-link-inherit{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.ui-li-divider,.ui-li-static{padding:.5em 15px;font-size:14px;font-weight:bold}.ui-li-divider{counter-reset:listnumbering}ol.ui-listview .ui-link-inherit:before,ol.ui-listview .ui-li-static:before,.ui-li-dec{font-size:.8em;display:inline-block;padding-right:.3em;font-weight:normal;counter-increment:listnumbering;content:counter(listnumbering) ". "}ol.ui-listview .ui-li-jsnumbering:before{content:""!important}.ui-listview-inset .ui-li{border-right-width:1px;border-left-width:1px}.ui-li:last-child,.ui-li.ui-field-contain:last-child{border-bottom-width:1px}.ui-li>.ui-btn-inner{display:block;position:relative;padding:0}.ui-li .ui-btn-inner a.ui-link-inherit,.ui-li-static.ui-li{padding:.7em 75px .7em 15px;display:block}.ui-li-has-thumb .ui-btn-inner a.ui-link-inherit,.ui-li-static.ui-li-has-thumb{min-height:60px;padding-left:100px}.ui-li-has-icon .ui-btn-inner a.ui-link-inherit,.ui-li-static.ui-li-has-icon{min-height:20px;padding-left:40px}.ui-li-heading{font-size:16px;font-weight:bold;display:block;margin:.6em 0;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.ui-li-desc{font-size:12px;font-weight:normal;display:block;margin:-.5em 0 .6em;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.ui-li-thumb,.ui-li-icon{position:absolute;left:1px;top:0;max-height:80px;max-width:80px}.ui-li-icon{max-height:40px;max-width:40px;left:10px;top:.9em}.ui-li-thumb,.ui-li-icon,.ui-li-content{float:left;margin-right:10px}.ui-li-aside{float:right;width:50%;text-align:right;margin:.3em 0}.min-width-480px .ui-li-aside{width:45%}.ui-li-divider{cursor:default}.ui-li-has-alt .ui-btn-inner a.ui-link-inherit,.ui-li-static.ui-li-has-alt{padding-right:95px}.ui-li-count{position:absolute;font-size:11px;font-weight:bold;padding:.2em .5em;top:50%;margin-top:-.9em;right:38px}.ui-li-divider .ui-li-count,.ui-li-static .ui-li-count{right:10px}.ui-li-has-alt .ui-li-count{right:55px}.ui-li-link-alt{position:absolute;width:40px;height:100%;border-width:0;border-left-width:1px;top:0;right:0;margin:0;padding:0}.ui-li-link-alt .ui-btn{overflow:hidden;position:absolute;right:8px;top:50%;margin:-11px 0 0 0;border-bottom-width:1px}.ui-li-link-alt .ui-btn-inner{padding:0;position:static}.ui-li-link-alt .ui-btn .ui-icon{right:50%;margin-right:-9px}.ui-listview-filter{border-width:0;overflow:hidden;margin:-15px -15px 15px -15px}.ui-listview-filter .ui-input-search{margin:5px;width:auto;display:block}.ui-listview-filter-inset{margin:-15px -5px -15px -5px;background:transparent}@media only screen and (min-device-width:768px) and (max-device-width:1024px){.ui-li .ui-btn-text{overflow:visible}}label.ui-slider{display:block}input.ui-slider-input,.min-width-480px input.ui-slider-input{display:inline-block;width:50px}select.ui-slider-switch{display:none}div.ui-slider{position:relative;display:inline-block;overflow:visible;height:15px;padding:0;margin:0 2% 0 20px;top:4px;width:66%}a.ui-slider-handle{position:absolute;z-index:10;top:50%;width:28px;height:28px;margin-top:-15px;margin-left:-15px}a.ui-slider-handle .ui-btn-inner{padding-left:0;padding-right:0}.min-width-480px label.ui-slider{display:inline-block;width:20%;margin:0 2% 0 0}.min-width-480px div.ui-slider{width:45%}div.ui-slider-switch{height:32px;overflow:hidden;margin-left:0}div.ui-slider-inneroffset{margin-left:50%;position:absolute;top:1px;height:100%;width:50%}div.ui-slider-handle-snapping{-webkit-transition:left 100ms linear}div.ui-slider-labelbg{position:absolute;top:0;margin:0;border-width:0}div.ui-slider-switch div.ui-slider-labelbg-a{width:60%;height:100%;left:0}div.ui-slider-switch div.ui-slider-labelbg-b{width:60%;height:100%;right:0}.ui-slider-switch-a div.ui-slider-labelbg-a,.ui-slider-switch-b div.ui-slider-labelbg-b{z-index:-1}.ui-slider-switch-a div.ui-slider-labelbg-b,.ui-slider-switch-b div.ui-slider-labelbg-a{z-index:0}div.ui-slider-switch a.ui-slider-handle{z-index:20;width:101%;height:32px;margin-top:-18px;margin-left:-101%}span.ui-slider-label{width:100%;position:absolute;height:32px;font-size:16px;text-align:center;line-height:2;background:0;border-color:transparent}span.ui-slider-label-a{left:-100%;margin-right:-1px}span.ui-slider-label-b{right:-100%;margin-left:-1px}
\ No newline at end of file diff --git a/addons/web_mobile/static/lib/jquery_mobile/css/jquery.mobile-1.0b1.min.css b/addons/web_mobile/static/lib/jquery_mobile/css/jquery.mobile-1.0b1.min.css deleted file mode 100644 index caf4b838004..00000000000 --- a/addons/web_mobile/static/lib/jquery_mobile/css/jquery.mobile-1.0b1.min.css +++ /dev/null @@ -1,2006 +0,0 @@ -/*! - * jQuery Mobile v1.0b1 - * http://jquerymobile.com/ - * - * Copyright 2010, jQuery Project - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - */ - .ui-bar-a{ - border:1px solid #2a2a2a; - background:#111; - color:#fff; - font-weight:bold; - text-shadow:0 -1px 1px #000; - background-image:-moz-linear-gradient(top,#3c3c3c,#111); - background-image:-webkit-gradient(linear,left top,left bottom,color-stop(0,#3c3c3c),color-stop(1,#111)); - -ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorStr='#3c3c3c', EndColorStr='#111111')" -} -.ui-bar-a,.ui-bar-a input,.ui-bar-a select,.ui-bar-a textarea,.ui-bar-a button{ - font-family:Helvetica,Arial,sans-serif -} -.ui-bar-a .ui-link-inherit{ - color:#fff -} -.ui-bar-a .ui-link{ - color:#7cc4e7; - font-weight:bold -} -.ui-body-a{ - border:1px solid #2a2a2a; - background:#222; - color:#fff; - text-shadow:0 1px 0 #000; - font-weight:normal; - background-image:-moz-linear-gradient(top,#666,#222); - background-image:-webkit-gradient(linear,left top,left bottom,color-stop(0,#666),color-stop(1,#222)); - -ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorStr='#666666', EndColorStr='#222222)')" -} -.ui-body-a,.ui-body-a input,.ui-body-a select,.ui-body-a textarea,.ui-body-a button{ - font-family:Helvetica,Arial,sans-serif -} -.ui-body-a .ui-link-inherit{ - color:#fff -} -.ui-body-a .ui-link{ - color:#2489ce; - font-weight:bold -} -.ui-br{ - border-bottom:#828282; - border-bottom:rgba(130,130,130,.3); - border-bottom-width:1px; - border-bottom-style:solid -} -.ui-btn-up-a{ - border:1px solid #222; - background:#333; - font-weight:bold; - color:#fff; - text-shadow:0 -1px 1px #000; - background-image:-moz-linear-gradient(top,#555,#333); - background-image:-webkit-gradient(linear,left top,left bottom,color-stop(0,#555),color-stop(1,#333)); - -ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorStr='#555555', EndColorStr='#333333')" -} -.ui-btn-up-a a.ui-link-inherit{ - color:#fff -} -.ui-btn-hover-a{ - border:1px solid #000; - background:#444; - font-weight:bold; - color:#fff; - text-shadow:0 -1px 1px #000; - background-image:-moz-linear-gradient(top,#666,#444); - background-image:-webkit-gradient(linear,left top,left bottom,color-stop(0,#666),color-stop(1,#444)); - -ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorStr='#666666', EndColorStr='#444444')" -} -.ui-btn-hover-a a.ui-link-inherit{ - color:#fff -} -.ui-btn-down-a{ - border:1px solid #000; - background:#3d3d3d; - font-weight:bold; - color:#fff; - text-shadow:0 -1px 1px #000; - background-image:-moz-linear-gradient(top,#333,#5a5a5a); - background-image:-webkit-gradient(linear,left top,left bottom,color-stop(0,#333),color-stop(1,#5a5a5a)); - -ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorStr='#333333', EndColorStr='#5a5a5a')" -} -.ui-btn-down-a a.ui-link-inherit{ - color:#fff -} -.ui-btn-up-a,.ui-btn-hover-a,.ui-btn-down-a{ - font-family:Helvetica,Arial,sans-serif; - text-decoration:none -} -.ui-bar-b{ - border:1px solid #456f9a; - background:#5e87b0; - color:#fff; - font-weight:bold; - text-shadow:0 -1px 1px #254f7a; - background-image:-moz-linear-gradient(top,#81a8ce,#5e87b0); - background-image:-webkit-gradient(linear,left top,left bottom,color-stop(0,#81a8ce),color-stop(1,#5e87b0)); - -ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorStr='#81a8ce', EndColorStr='#5e87b0')" -} -.ui-bar-b,.ui-bar-b input,.ui-bar-b select,.ui-bar-b textarea,.ui-bar-b button{ - font-family:Helvetica,Arial,sans-serif -} -.ui-bar-b .ui-link-inherit{ - color:#fff -} -.ui-bar-b .ui-link{ - color:#7cc4e7; - font-weight:bold -} -.ui-body-b{ - border:1px solid #c6c6c6; - background:#ccc; - color:#333; - text-shadow:0 1px 0 #fff; - font-weight:normal; - background-image:-moz-linear-gradient(top,#e6e6e6,#ccc); - background-image:-webkit-gradient(linear,left top,left bottom,color-stop(0,#e6e6e6),color-stop(1,#ccc)); - -ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorStr='#e6e6e6', EndColorStr='#cccccc')" -} -.ui-body-b,.ui-body-b input,.ui-body-b select,.ui-body-b textarea,.ui-body-b button{ - font-family:Helvetica,Arial,sans-serif -} -.ui-body-b .ui-link-inherit{ - color:#333 -} -.ui-body-b .ui-link{ - color:#2489ce; - font-weight:bold -} -.ui-btn-up-b{ - border:1px solid #145072; - background:#2567ab; - font-weight:bold; - color:#fff; - text-shadow:0 -1px 1px #145072; - background-image:-moz-linear-gradient(top,#4e89c5,#2567ab); - background-image:-webkit-gradient(linear,left top,left bottom,color-stop(0,#5f9cc5),color-stop(1,#396b9e)); - -ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorStr='#4e89c5', EndColorStr='#2567ab')" -} -.ui-btn-up-b a.ui-link-inherit{ - color:#fff -} -.ui-btn-hover-b{ - border:1px solid #00516e; - background:#4b88b6; - font-weight:bold; - color:#fff; - text-shadow:0 -1px 1px #014d68; - background-image:-moz-linear-gradient(top,#72b0d4,#4b88b6); - background-image:-webkit-gradient(linear,left top,left bottom,color-stop(0,#72b0d4),color-stop(1,#4b88b6)); - -ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorStr='#72b0d4', EndColorStr='#4b88b6')" -} -.ui-btn-hover-b a.ui-link-inherit{ - color:#fff -} -.ui-btn-down-b{ - border:1px solid #225377; - background:#4e89c5; - font-weight:bold; - color:#fff; - text-shadow:0 -1px 1px #225377; - background-image:-moz-linear-gradient(top,#396b9e,#4e89c5); - background-image:-webkit-gradient(linear,left top,left bottom,color-stop(0,#396b9e),color-stop(1,#4e89c5)); - -ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorStr='#396b9e', EndColorStr='#4e89c5')" -} -.ui-btn-down-b a.ui-link-inherit{ - color:#fff -} -.ui-btn-up-b,.ui-btn-hover-b,.ui-btn-down-b{ - font-family:Helvetica,Arial,sans-serif; - text-decoration:none -} -.ui-bar-c{ - border:1px solid #b3b3b3; - background:#e9eaeb; - color:#3e3e3e; - font-weight:bold; - text-shadow:0 1px 1px #fff; - background-image:-moz-linear-gradient(top,#f0f0f0,#e9eaeb); - background-image:-webkit-gradient(linear,left top,left bottom,color-stop(0,#f0f0f0),color-stop(1,#e9eaeb)); - -ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorStr='#f0f0f0', EndColorStr='#e9eaeb')" -} -.ui-bar-c,.ui-bar-c input,.ui-bar-c select,.ui-bar-c textarea,.ui-bar-c button{ - font-family:Helvetica,Arial,sans-serif -} -.ui-body-c{ - border:1px solid #b3b3b3; - color:#333; - text-shadow:0 1px 0 #fff; - background:#f0f0f0; - background-image:-moz-linear-gradient(top,#eee,#ddd); - background-image:-webkit-gradient(linear,left top,left bottom,color-stop(0,#eee),color-stop(1,#ddd)); - -ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorStr='#eeeeee', EndColorStr='#dddddd')" -} -.ui-body-c,.ui-body-c input,.ui-body-c select,.ui-body-c textarea,.ui-body-c button{ - font-family:Helvetica,Arial,sans-serif -} -.ui-body-c .ui-link-inherit{ - color:#333 -} -.ui-body-c .ui-link{ - color:#2489ce; - font-weight:bold -} -.ui-btn-up-c{ - border:1px solid #ccc; - background:#eee; - font-weight:bold; - color:#444; - text-shadow:0 1px 1px #f6f6f6; - background-image:-moz-linear-gradient(top,#fefefe,#eee); - background-image:-webkit-gradient(linear,left top,left bottom,color-stop(0,#fdfdfd),color-stop(1,#eee)); - -ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorStr='#fdfdfd', EndColorStr='#eeeeee')" -} -.ui-btn-up-c a.ui-link-inherit{ - color:#2f3e46 -} -.ui-btn-hover-c{ - border:1px solid #bbb; - background:#dadada; - font-weight:bold; - color:#101010; - text-shadow:0 1px 1px #fff; - background-image:-moz-linear-gradient(top,#ededed,#dadada); - background-image:-webkit-gradient(linear,left top,left bottom,color-stop(0,#ededed),color-stop(1,#dadada)); - -ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorStr='#ededed', EndColorStr='#dadada')" -} -.ui-btn-hover-c a.ui-link-inherit{ - color:#2f3e46 -} -.ui-btn-down-c{ - border:1px solid #808080; - background:#fdfdfd; - font-weight:bold; - color:#111; - text-shadow:0 1px 1px #fff; - background-image:-moz-linear-gradient(top,#eee,#fdfdfd); - background-image:-webkit-gradient(linear,left top,left bottom,color-stop(0,#eee),color-stop(1,#fdfdfd)); - -ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorStr='#eeeeee', EndColorStr='#fdfdfd')" -} -.ui-btn-down-c a.ui-link-inherit{ - color:#2f3e46 -} -.ui-btn-up-c,.ui-btn-hover-c,.ui-btn-down-c{ - font-family:Helvetica,Arial,sans-serif; - text-decoration:none -} -.ui-bar-d{ - border:1px solid #ccc; - background:#bbb; - color:#333; - text-shadow:0 1px 0 #eee; - background-image:-moz-linear-gradient(top,#ddd,#bbb); - background-image:-webkit-gradient(linear,left top,left bottom,color-stop(0,#ddd),color-stop(1,#bbb)); - -ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorStr='#dddddd', EndColorStr='#bbbbbb')" -} -.ui-bar-d,.ui-bar-d input,.ui-bar-d select,.ui-bar-d textarea,.ui-bar-d button{ - font-family:Helvetica,Arial,sans-serif -} -.ui-bar-d .ui-link-inherit{ - color:#333 -} -.ui-bar-d .ui-link{ - color:#2489ce; - font-weight:bold -} -.ui-body-d{ - border:1px solid #ccc; - color:#333; - text-shadow:0 1px 0 #fff; - background:#fff -} -.ui-body-d,.ui-body-d input,.ui-body-d select,.ui-body-d textarea,.ui-body-d button{ - font-family:Helvetica,Arial,sans-serif -} -.ui-body-d .ui-link-inherit{ - color:#333 -} -.ui-body-d .ui-link{ - color:#2489ce; - font-weight:bold -} -.ui-btn-up-d{ - border:1px solid #ccc; - background:#fff; - font-weight:bold; - color:#444; - text-shadow:0 1px 1px #fff -} -.ui-btn-up-d a.ui-link-inherit{ - color:#333 -} -.ui-btn-hover-d{ - border:1px solid #aaa; - background:#eee; - font-weight:bold; - color:#222; - cursor:pointer; - text-shadow:0 1px 1px #fff; - background-image:-moz-linear-gradient(top,#fdfdfd,#eee); - background-image:-webkit-gradient(linear,left top,left bottom,color-stop(0,#fdfdfd),color-stop(1,#eee)); - -ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorStr='#fdfdfd', EndColorStr='#eeeeee')" -} -.ui-btn-hover-d a.ui-link-inherit{ - color:#222 -} -.ui-btn-down-d{ - border:1px solid #aaa; - background:#fff; - font-weight:bold; - color:#111; - text-shadow:0 1px 1px #fff; - background-image:-moz-linear-gradient(top,#eee,#fff); - background-image:-webkit-gradient(linear,left top,left bottom,color-stop(0,#eee),color-stop(1,#fff)); - -ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorStr='#eeeeee', EndColorStr='#ffffff')" -} -.ui-btn-down-d a.ui-link-inherit{ - color:#111 -} -.ui-btn-up-d,.ui-btn-hover-d,.ui-btn-down-d{ - font-family:Helvetica,Arial,sans-serif; - text-decoration:none -} -.ui-bar-e{ - border:1px solid #f7c942; - background:#fadb4e; - color:#333; - text-shadow:0 1px 0 #fff; - background-image:-moz-linear-gradient(top,#fceda7,#fadb4e); - background-image:-webkit-gradient(linear,left top,left bottom,color-stop(0,#fceda7),color-stop(1,#fadb4e)); - -ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorStr='#fceda7', EndColorStr='#fadb4e')" -} -.ui-bar-e,.ui-bar-e input,.ui-bar-e select,.ui-bar-e textarea,.ui-bar-d button{ - font-family:Helvetica,Arial,sans-serif -} -.ui-bar-e .ui-link-inherit{ - color:#333 -} -.ui-bar-e .ui-link{ - color:#2489ce; - font-weight:bold -} -.ui-body-e{ - border:1px solid #f7c942; - color:#333; - text-shadow:0 1px 0 #fff; - background:#faeb9e; - background-image:-moz-linear-gradient(top,#fff,#faeb9e); - background-image:-webkit-gradient(linear,left top,left bottom,color-stop(0,#fff),color-stop(1,#faeb9e)); - -ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorStr='#ffffff', EndColorStr='#faeb9e')" -} -.ui-body-e,.ui-body-e input,.ui-body-e select,.ui-body-e textarea,.ui-body-e button{ - font-family:Helvetica,Arial,sans-serif -} -.ui-body-e .ui-link-inherit{ - color:#333 -} -.ui-body-e .ui-link{ - color:#2489ce; - font-weight:bold -} -.ui-btn-up-e{ - border:1px solid #f7c942; - background:#fadb4e; - font-weight:bold; - color:#333; - text-shadow:0 1px 0 #fff; - background-image:-moz-linear-gradient(top,#fceda7,#fadb4e); - background-image:-webkit-gradient(linear,left top,left bottom,color-stop(0,#fceda7),color-stop(1,#fadb4e)); - -ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorStr='#fceda7', EndColorStr='#fadb4e')" -} -.ui-btn-up-e a.ui-link-inherit{ - color:#333 -} -.ui-btn-hover-e{ - border:1px solid #e79952; - background:#fbe26f; - font-weight:bold; - color:#111; - text-shadow:0 1px 1px #fff; - background-image:-moz-linear-gradient(top,#fcf0b5,#fbe26f); - background-image:-webkit-gradient(linear,left top,left bottom,color-stop(0,#fcf0b5),color-stop(1,#fbe26f)); - -ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorStr='#fcf0b5', EndColorStr='#fbe26f')" -} -.ui-btn-hover-e a.ui-link-inherit{ - color:#333 -} -.ui-btn-down-e{ - border:1px solid #f7c942; - background:#fceda7; - font-weight:bold; - color:#111; - text-shadow:0 1px 1px #fff; - background-image:-moz-linear-gradient(top,#fadb4e,#fceda7); - background-image:-webkit-gradient(linear,left top,left bottom,color-stop(0,#fadb4e),color-stop(1,#fceda7)); - -ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorStr='#fadb4e', EndColorStr='#fceda7')" -} -.ui-btn-down-e a.ui-link-inherit{ - color:#333 -} -.ui-btn-up-e,.ui-btn-hover-e,.ui-btn-down-e{ - font-family:Helvetica,Arial,sans-serif; - text-decoration:none -} -a.ui-link-inherit{ - text-decoration:none!important -} -.ui-btn-active{ - border:1px solid #155678; - background:#4596ce; - font-weight:bold; - color:#fff; - cursor:pointer; - text-shadow:0 -1px 1px #145072; - text-decoration:none; - background-image:-moz-linear-gradient(top,#85bae4,#5393c5); - background-image:-webkit-gradient(linear,left top,left bottom,color-stop(0,#85bae4),color-stop(1,#5393c5)); - -ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorStr='#85bae4', EndColorStr='#5393c5')"; - outline:0 -} -.ui-btn-active a.ui-link-inherit{ - color:#fff -} -.ui-btn-inner{ - border-top:1px solid #fff; - border-color:rgba(255,255,255,.3) -} -.ui-corner-tl{ - -moz-border-radius-topleft:.6em; - -webkit-border-top-left-radius:.6em; - border-top-left-radius:.6em -} -.ui-corner-tr{ - -moz-border-radius-topright:.6em; - -webkit-border-top-right-radius:.6em; - border-top-right-radius:.6em -} -.ui-corner-bl{ - -moz-border-radius-bottomleft:.6em; - -webkit-border-bottom-left-radius:.6em; - border-bottom-left-radius:.6em -} -.ui-corner-br{ - -moz-border-radius-bottomright:.6em; - -webkit-border-bottom-right-radius:.6em; - border-bottom-right-radius:.6em -} -.ui-corner-top{ - -moz-border-radius-topleft:.6em; - -webkit-border-top-left-radius:.6em; - border-top-left-radius:.6em; - -moz-border-radius-topright:.6em; - -webkit-border-top-right-radius:.6em; - border-top-right-radius:.6em -} -.ui-corner-bottom{ - -moz-border-radius-bottomleft:.6em; - -webkit-border-bottom-left-radius:.6em; - border-bottom-left-radius:.6em; - -moz-border-radius-bottomright:.6em; - -webkit-border-bottom-right-radius:.6em; - border-bottom-right-radius:.6em -} -.ui-corner-right{ - -moz-border-radius-topright:.6em; - -webkit-border-top-right-radius:.6em; - border-top-right-radius:.6em; - -moz-border-radius-bottomright:.6em; - -webkit-border-bottom-right-radius:.6em; - border-bottom-right-radius:.6em -} -.ui-corner-left{ - -moz-border-radius-topleft:.6em; - -webkit-border-top-left-radius:.6em; - border-top-left-radius:.6em; - -moz-border-radius-bottomleft:.6em; - -webkit-border-bottom-left-radius:.6em; - border-bottom-left-radius:.6em -} -.ui-corner-all{ - -moz-border-radius:.6em; - -webkit-border-radius:.6em; - border-radius:.6em -} -.ui-disabled{ - opacity:.3 -} -.ui-disabled,.ui-disabled a{ - cursor:default -} -.ui-icon{ - background:#666; - background:rgba(0,0,0,.4); - background-image:url(images/icons-18-white.png); - background-repeat:no-repeat; - -moz-border-radius:9px; - -webkit-border-radius:9px; - border-radius:9px -} -.ui-icon-alt{ - background:#fff; - background:rgba(255,255,255,.3); - background-image:url(images/icons-18-black.png); - background-repeat:no-repeat -} -@media only screen and (-webkit-min-device-pixel-ratio:1.5),only screen and (min--moz-device-pixel-ratio:1.5),only screen and (min-resolution:240dpi){ - .ui-icon-plus,.ui-icon-minus,.ui-icon-delete,.ui-icon-arrow-r,.ui-icon-arrow-l,.ui-icon-arrow-u,.ui-icon-arrow-d,.ui-icon-check,.ui-icon-gear,.ui-icon-refresh,.ui-icon-forward,.ui-icon-back,.ui-icon-grid,.ui-icon-star,.ui-icon-alert,.ui-icon-info,.ui-icon-home,.ui-icon-search,.ui-icon-checkbox-off,.ui-icon-checkbox-on,.ui-icon-radio-off,.ui-icon-radio-on{ - background-image:url(images/icons-36-white.png);-moz-background-size:776px 18px;-o-background-size:776px 18px;-webkit-background-size:776px 18px;background-size:776px 18px - } - .ui-icon-alt{ - background-image:url(images/icons-36-black.png) - } -} -.ui-icon-plus{ - background-position:-0 50% -} -.ui-icon-minus{ - background-position:-36px 50% -} -.ui-icon-delete{ - background-position:-72px 50% -} -.ui-icon-arrow-r{ - background-position:-108px 50% -} -.ui-icon-arrow-l{ - background-position:-144px 50% -} -.ui-icon-arrow-u{ - background-position:-180px 50% -} -.ui-icon-arrow-d{ - background-position:-216px 50% -} -.ui-icon-check{ - background-position:-252px 50% -} -.ui-icon-gear{ - background-position:-288px 50% -} -.ui-icon-refresh{ - background-position:-324px 50% -} -.ui-icon-forward{ - background-position:-360px 50% -} -.ui-icon-back{ - background-position:-396px 50% -} -.ui-icon-grid{ - background-position:-432px 50% -} -.ui-icon-star{ - background-position:-468px 50% -} -.ui-icon-alert{ - background-position:-504px 50% -} -.ui-icon-info{ - background-position:-540px 50% -} -.ui-icon-home{ - background-position:-576px 50% -} -.ui-icon-search{ - background-position:-612px 50% -} -.ui-icon-checkbox-off{ - background-position:-684px 50% -} -.ui-icon-checkbox-on{ - background-position:-648px 50% -} -.ui-icon-radio-off{ - background-position:-756px 50% -} -.ui-icon-radio-on{ - background-position:-720px 50% -} -.ui-icon-checkbox-off,.ui-icon-checkbox-on,.ui-icon-radio-off,.ui-icon-radio-on{ - background-color:transparent; - -moz-border-radius:0; - -webkit-border-radius:0; - border-radius:0 -} -.ui-icon-searchfield{ - background-image:url(images/icon-search-black.png);background-size:16px 16px -} -.ui-icon-loading{ - background-image:url(images/ajax-loader.png);width:40px;height:40px;-moz-border-radius:20px;-webkit-border-radius:20px;border-radius:20px;background-size:35px 35px -} -.ui-btn-corner-tl{ - -moz-border-radius-topleft:1em;-webkit-border-top-left-radius:1em;border-top-left-radius:1em -} -.ui-btn-corner-tr{ - -moz-border-radius-topright:1em; - -webkit-border-top-right-radius:1em; - border-top-right-radius:1em -} -.ui-btn-corner-bl{ - -moz-border-radius-bottomleft:1em; - -webkit-border-bottom-left-radius:1em; - border-bottom-left-radius:1em -} -.ui-btn-corner-br{ - -moz-border-radius-bottomright:1em; - -webkit-border-bottom-right-radius:1em; - border-bottom-right-radius:1em -} -.ui-btn-corner-top{ - -moz-border-radius-topleft:1em; - -webkit-border-top-left-radius:1em; - border-top-left-radius:1em; - -moz-border-radius-topright:1em; - -webkit-border-top-right-radius:1em; - border-top-right-radius:1em -} -.ui-btn-corner-bottom{ - -moz-border-radius-bottomleft:1em; - -webkit-border-bottom-left-radius:1em; - border-bottom-left-radius:1em; - -moz-border-radius-bottomright:1em; - -webkit-border-bottom-right-radius:1em; - border-bottom-right-radius:1em -} -.ui-btn-corner-right{ - -moz-border-radius-topright:1em; - -webkit-border-top-right-radius:1em; - border-top-right-radius:1em; - -moz-border-radius-bottomright:1em; - -webkit-border-bottom-right-radius:1em; - border-bottom-right-radius:1em -} -.ui-btn-corner-left{ - -moz-border-radius-topleft:1em; - -webkit-border-top-left-radius:1em; - border-top-left-radius:1em; - -moz-border-radius-bottomleft:1em; - -webkit-border-bottom-left-radius:1em; - border-bottom-left-radius:1em -} -.ui-btn-corner-all{ - -moz-border-radius:1em; - -webkit-border-radius:1em; - border-radius:1em -} -.ui-corner-tl,.ui-corner-tr,.ui-corner-bl,.ui-corner-br,.ui-corner-top,.ui-corner-bottom,.ui-corner-right,.ui-corner-left,.ui-corner-all,.ui-btn-corner-tl,.ui-btn-corner-tr,.ui-btn-corner-bl,.ui-btn-corner-br,.ui-btn-corner-top,.ui-btn-corner-bottom,.ui-btn-corner-right,.ui-btn-corner-left,.ui-btn-corner-all{ - -webkit-background-clip:padding-box; - -moz-background-clip:padding-box; - background-clip:padding-box -} -.ui-overlay{ - background:#666; - opacity:.5; - filter:Alpha(Opacity=50); - position:absolute; - width:100%; - height:100% -} -.ui-overlay-shadow{ - -moz-box-shadow:0 0 12px rgba(0,0,0,.6); - -webkit-box-shadow:0 0 12px rgba(0,0,0,.6); - box-shadow:0 0 12px rgba(0,0,0,.6) -} -.ui-shadow{ - -moz-box-shadow:0 1px 4px rgba(0,0,0,.3); - -webkit-box-shadow:0 1px 4px rgba(0,0,0,.3); - box-shadow:0 1px 4px rgba(0,0,0,.3) -} -.ui-bar-a .ui-shadow,.ui-bar-b .ui-shadow,.ui-bar-c .ui-shadow{ - -moz-box-shadow:0 1px 0 rgba(255,255,255,.3); - -webkit-box-shadow:0 1px 0 rgba(255,255,255,.3); - box-shadow:0 1px 0 rgba(255,255,255,.3) -} -.ui-shadow-inset{ - -moz-box-shadow:inset 0 1px 4px rgba(0,0,0,.2); - -webkit-box-shadow:inset 0 1px 4px rgba(0,0,0,.2); - box-shadow:inset 0 1px 4px rgba(0,0,0,.2) -} -.ui-icon-shadow{ - -moz-box-shadow:0 1px 0 rgba(255,255,255,.4); - -webkit-box-shadow:0 1px 0 rgba(255,255,255,.4); - box-shadow:0 1px 0 rgba(255,255,255,.4) -} -.ui-focus{ - -moz-box-shadow:0 0 12px #387bbe; - -webkit-box-shadow:0 0 12px #387bbe; - box-shadow:0 0 12px #387bbe -} -.ui-mobile-nosupport-boxshadow *{ - -moz-box-shadow:none!important; - -webkit-box-shadow:none!important; - box-shadow:none!important -} -.ui-mobile-nosupport-boxshadow .ui-focus{ - outline-width:2px -} -.ui-mobile,.ui-mobile body{ - height:100% -} -.ui-mobile fieldset,.ui-page{ - padding:0; - margin:0 -} -.ui-mobile a img,.ui-mobile fieldset{ - border:0 -} -.ui-mobile-viewport{ - margin:0; - overflow-x:hidden; - -webkit-text-size-adjust:none; - -ms-text-size-adjust:none; - -webkit-tap-highlight-color:rgba(0,0,0,0) -} -.ui-mobile [data-role=page],.ui-mobile [data-role=dialog],.ui-page{ - top:0; - left:0; - width:100%; - min-height:100%; - position:absolute; - display:none; - border:0 -} -.ui-mobile .ui-page-active{ - display:block; - overflow:visible -} -.portrait,.portrait .ui-page{ - min-height:420px -} -.landscape,.landscape .ui-page{ - min-height:300px -} -.ui-loading .ui-mobile-viewport{ - overflow:hidden!important -} -.ui-loading .ui-loader{ - display:block -} -.ui-loading .ui-page{ - overflow:hidden -} -.ui-loader{ - display:none; - position:absolute; - opacity:.85; - z-index:100; - left:50%; - width:200px; - margin-left:-130px; - margin-top:-35px; - padding:10px 30px -} -.ui-loader h1{ - font-size:15px; - text-align:center -} -.ui-loader .ui-icon{ - position:static; - display:block; - opacity:.9; - margin:0 auto; - width:35px; - height:35px; - background-color:transparent -} -.ui-mobile-rendering>*{ - visibility:hidden -} -.ui-bar,.ui-body{ - position:relative; - padding:.4em 15px; - overflow:hidden; - display:block; - clear:both -} -.ui-bar{ - font-size:16px; - margin:0 -} -.ui-bar h1,.ui-bar h2,.ui-bar h3,.ui-bar h4,.ui-bar h5,.ui-bar h6{ - margin:0; - padding:0; - font-size:16px; - display:inline-block -} -.ui-header,.ui-footer{ - display:block -} -.ui-page .ui-header,.ui-page .ui-footer{ - position:relative -} -.ui-header .ui-btn-left{ - position:absolute; - left:10px; - top:.4em -} -.ui-header .ui-btn-right{ - position:absolute; - right:10px; - top:.4em -} -.ui-header .ui-title,.ui-footer .ui-title{ - min-height:1.1em; - text-align:center; - font-size:16px; - display:block; - margin:.6em 90px .8em; - padding:0; - text-overflow:ellipsis; - overflow:hidden; - white-space:nowrap; - outline:0!important -} -.ui-content{ - border-width:0; - overflow:visible; - overflow-x:hidden; - padding:15px -} -.ui-page-fullscreen .ui-content{ - padding:0 -} -.ui-icon{ - width:18px; - height:18px -} -.ui-fullscreen img{ - max-width:100% -} -.ui-nojs{ - position:absolute; - left:-9999px -} -.spin{ - -webkit-transform:rotate(360deg); - -webkit-animation-name:spin; - -webkit-animation-duration:1s; - -webkit-animation-iteration-count:infinite -} -@-webkit-keyframes spin{from{-webkit-transform:rotate(0deg)}to{-webkit-transform:rotate(360deg)}} -.in,.out{ - -webkit-animation-timing-function:ease-in-out; - -webkit-animation-duration:350ms -} -.slide.in{ - -webkit-transform:translateX(0); - -webkit-animation-name:slideinfromright -} -.slide.out{-webkit-transform:translateX(-100%);-webkit-animation-name:slideouttoleft} -.slide.in.reverse{ - -webkit-transform:translateX(0); - -webkit-animation-name:slideinfromleft -} -.slide.out.reverse{ - -webkit-transform:translateX(100%); - -webkit-animation-name:slideouttoright -} -.slideup.in{ - -webkit-transform:translateY(0); - -webkit-animation-name:slideinfrombottom; - z-index:10 -} -.slideup.out{ - -webkit-animation-name:dontmove; - z-index:0 -} -.slideup.out.reverse{ - -webkit-transform:translateY(100%); - z-index:10; - -webkit-animation-name:slideouttobottom -} -.slideup.in.reverse{ - z-index:0; - -webkit-animation-name:dontmove -} -.slidedown.in{ - -webkit-transform:translateY(0); - -webkit-animation-name:slideinfromtop; - z-index:10 -} -.slidedown.out{ - -webkit-animation-name:dontmove; - z-index:0 -} -.slidedown.out.reverse{ - -webkit-transform:translateY(-100%); - z-index:10; - -webkit-animation-name:slideouttotop -} -.slidedown.in.reverse{ - z-index:0; - -webkit-animation-name:dontmove -} -@-webkit-keyframes slideinfromright{ - from{ - -webkit-transform:translateX(100%) - } - to - { - -webkit-transform:translateX(0) - } -} -@-webkit-keyframes slideinfromleft{ - from{ - -webkit-transform:translateX(-100%) - } - to - { - -webkit-transform:translateX(0) - } -} -@-webkit-keyframes slideouttoleft{ - from{ - -webkit-transform:translateX(0) - } - to - { - -webkit-transform:translateX(-100%) - } -} -@-webkit-keyframes slideouttoright{from{-webkit-transform:translateX(0)}to{-webkit-transform:translateX(100%)}} -@-webkit-keyframes slideinfromtop{ - from{ - -webkit-transform:translateY(-100%) - } - to - { - -webkit-transform:translateY(0) - } -} -@-webkit-keyframes slideinfrombottom{ - from{ - -webkit-transform:translateY(100%) - } - to - { - -webkit-transform:translateY(0) - } -} -@-webkit-keyframes slideouttobottom{ - from - { - -webkit-transform:translateY(0) - } - to - { - -webkit-transform:translateY(100%) - } -} -@-webkit-keyframes slideouttotop{ - from{ - -webkit-transform:translateY(0) - } - to - { - -webkit-transform:translateY(-100%) - } -} -@-webkit-keyframes fadein{ - from{ - opacity:0 - } - to - { - opacity:1 - } -} -@-webkit-keyframes fadeout{ - from{ - opacity:1 - } - to - { - opacity:0 - } -} -.fade.in{ - opacity:1; - z-index:10; - -webkit-animation-name:fadein -} -.fade.out{ - z-index:0; - -webkit-animation-name:fadeout -} -.viewport-flip{ - -webkit-perspective:1000; - position:absolute -} -.ui-mobile-viewport-transitioning,.ui-mobile-viewport-transitioning .ui-page{ - width:100%; - height:100%; - overflow:hidden -} -.flip{ - -webkit-animation-duration:.65s; - -webkit-backface-visibility:hidden; - -webkit-transform:translateX(0) -} -.flip.in{ - -webkit-transform:rotateY(0) scale(1); - -webkit-animation-name:flipinfromleft -} -.flip.out{ - -webkit-transform:rotateY(-180deg) scale(.8); - -webkit-animation-name:flipouttoleft -} -.flip.in.reverse{ - -webkit-transform:rotateY(0) scale(1); - -webkit-animation-name:flipinfromright -} -.flip.out.reverse{ - -webkit-transform:rotateY(180deg) scale(.8); - -webkit-animation-name:flipouttoright -} -@-webkit-keyframes flipinfromright{ - from{ - -webkit-transform:rotateY(-180deg) scale(.8) - } - to - { - -webkit-transform:rotateY(0) scale(1) - } -} -@-webkit-keyframes flipinfromleft{ - from{ - -webkit-transform:rotateY(180deg) scale(.8) - } - to - { - -webkit-transform:rotateY(0) scale(1) - } -} -@-webkit-keyframes flipouttoleft{ - from{ - -webkit-transform:rotateY(0) scale(1) - } - to - { - -webkit-transform:rotateY(-180deg) scale(.8) - } -} -@-webkit-keyframes flipouttoright{ - from{ - -webkit-transform:rotateY(0) scale(1) - } - to - { - -webkit-transform:rotateY(180deg) scale(.8) - } -} -@-webkit-keyframes dontmove{ - from{ - opacity:1 - } - to{ - opacity:1 - } -} -.pop{ - -webkit-transform-origin:50% 50% -} -.pop.in{ - -webkit-transform:scale(1); - opacity:1; - -webkit-animation-name:popin; - z-index:10 -} -.pop.out.reverse{ - -webkit-transform:scale(.2); - opacity:0; - -webkit-animation-name:popout; - z-index:10 -} -.pop.in.reverse{ - z-index:0; - -webkit-animation-name:dontmove -} -@-webkit-keyframes popin{ - from{ - -webkit-transform:scale(.2); - opacity:0 - } - to{ - -webkit-transform:scale(1); - opacity:1 - } -} -@-webkit-keyframes popout{ - from{ - -webkit-transform:scale(1); - opacity:1 - } - to{ - -webkit-transform:scale(.2); - opacity:0 - } -} -.ui-grid-a,.ui-grid-b,.ui-grid-c,.ui-grid-d{ - overflow:hidden -} -.ui-block-a,.ui-block-b,.ui-block-c,.ui-block-d,.ui-block-e{ - margin:0; - padding:0; - border:0; - float:left; - min-height:1px -} -.ui-grid-solo .ui-block-a{ - width:100%; - float:none -} -.ui-grid-a .ui-block-a,.ui-grid-a .ui-block-b{ - width:50% -} -.ui-grid-a .ui-block-a{ - clear:left -} -.ui-grid-b .ui-block-a,.ui-grid-b .ui-block-b,.ui-grid-b .ui-block-c{ - width:33.333% -} -.ui-grid-b .ui-block-a{ - clear:left -} -.ui-grid-c .ui-block-a,.ui-grid-c .ui-block-b,.ui-grid-c .ui-block-c,.ui-grid-c .ui-block-d{ - width:25% -} -.ui-grid-c .ui-block-a{ - clear:left -} -.ui-grid-d .ui-block-a,.ui-grid-d .ui-block-b,.ui-grid-d .ui-block-c,.ui-grid-d .ui-block-d,.ui-grid-d .ui-block-e{ - width:20% -} -.ui-grid-d .ui-block-a{ - clear:left -} -.ui-header,.ui-footer,.ui-page-fullscreen .ui-header,.ui-page-fullscreen .ui-footer{ - position:absolute; - overflow:hidden; - width:100%; - border-left-width:0; - border-right-width:0 -} -.ui-header-fixed,.ui-footer-fixed{ - z-index:1000; - -webkit-transform:translateZ(0) -} -.ui-footer-duplicate,.ui-page-fullscreen .ui-fixed-inline{ - display:none -} -.ui-page-fullscreen .ui-header,.ui-page-fullscreen .ui-footer{ - opacity:.9 -} -.ui-navbar{ - overflow:hidden -} -.ui-navbar ul,.ui-navbar-expanded ul{ - list-style:none; - padding:0; - margin:0; - position:relative; - display:block; - border:0 -} -.ui-navbar-collapsed ul{ - float:left; - width:75%; - margin-right:-2px -} -.ui-navbar-collapsed .ui-navbar-toggle{ - float:left; - width:25% -} -.ui-navbar li.ui-navbar-truncate{ - position:absolute; - left:-9999px; - top:-9999px -} -.ui-navbar li .ui-btn,.ui-navbar .ui-navbar-toggle .ui-btn{ - display:block; - font-size:12px; - text-align:center; - margin:0; - border-right-width:0 -} -.ui-navbar li .ui-btn{ - margin-right:-1px -} -.ui-navbar li .ui-btn:last-child{ - margin-right:0 -} -.ui-header .ui-navbar li .ui-btn,.ui-header .ui-navbar .ui-navbar-toggle .ui-btn,.ui-footer .ui-navbar li .ui-btn,.ui-footer .ui-navbar .ui-navbar-toggle .ui-btn{ - border-top-width:0; - border-bottom-width:0 -} -.ui-navbar .ui-btn-inner{ - padding-left:2px; - padding-right:2px -} -.ui-navbar-noicons li .ui-btn .ui-btn-inner,.ui-navbar-noicons .ui-navbar-toggle .ui-btn-inner{ - padding-top:.8em; - padding-bottom:.9em -} -.ui-navbar-expanded .ui-btn{ - margin:0; - font-size:14px -} -.ui-navbar-expanded .ui-btn-inner{ - padding-left:5px; - padding-right:5px -} -.ui-navbar-expanded .ui-btn-icon-top .ui-btn-inner{ - padding:45px 5px 15px; - text-align:center -} -.ui-navbar-expanded .ui-btn-icon-top .ui-icon{ - top:15px -} -.ui-navbar-expanded .ui-btn-icon-bottom .ui-btn-inner{ - padding:15px 5px 45px; - text-align:center -} -.ui-navbar-expanded .ui-btn-icon-bottom .ui-icon{ - bottom:15px -} -.ui-navbar-expanded li .ui-btn .ui-btn-inner{ - min-height:2.5em -} -.ui-navbar-expanded .ui-navbar-noicons .ui-btn .ui-btn-inner{ - padding-top:1.8em; - padding-bottom:1.9em -} -.ui-btn{ - display:block; - text-align:center; - cursor:pointer; - position:relative; - margin:.5em 5px; - padding:0 -} -.ui-btn:focus,.ui-btn:active{ - outline:0 -} -.ui-header .ui-btn,.ui-footer .ui-btn,.ui-bar .ui-btn{ - display:inline-block; - font-size:13px; - margin:0 -} -.ui-btn-inline{ - display:inline-block -} -.ui-btn-inner{ - padding:.6em 25px; - display:block; - text-overflow:ellipsis; - overflow:hidden; - white-space:nowrap; - position:relative -} -.ui-header .ui-btn-inner,.ui-footer .ui-btn-inner,.ui-bar .ui-btn-inner{ - padding:.4em 8px .5em -} -.ui-btn-icon-notext{ - display:inline-block; - width:20px; - height:20px; - padding:2px 1px 2px 3px; - text-indent:-9999px -} -.ui-btn-icon-notext .ui-btn-inner{ - padding:0 -} -.ui-btn-icon-notext .ui-btn-text{ - position:absolute; - left:-999px -} -.ui-btn-icon-left .ui-btn-inner{ - padding-left:33px -} -.ui-header .ui-btn-icon-left .ui-btn-inner,.ui-footer .ui-btn-icon-left .ui-btn-inner,.ui-bar .ui-btn-icon-left .ui-btn-inner{ - padding-left:27px -} -.ui-btn-icon-right .ui-btn-inner{ - padding-right:33px -} -.ui-header .ui-btn-icon-right .ui-btn-inner,.ui-footer .ui-btn-icon-right .ui-btn-inner,.ui-bar .ui-btn-icon-right .ui-btn-inner{ - padding-right:27px -} -.ui-btn-icon-top .ui-btn-inner{ - padding-top:33px -} -.ui-header .ui-btn-icon-top .ui-btn-inner,.ui-footer .ui-btn-icon-top .ui-btn-inner,.ui-bar .ui-btn-icon-top .ui-btn-inner{ - padding-top:27px -} -.ui-btn-icon-bottom .ui-btn-inner{ - padding-bottom:33px -} -.ui-header .ui-btn-icon-bottom .ui-btn-inner,.ui-footer .ui-btn-icon-bottom .ui-btn-inner,.ui-bar .ui-btn-icon-bottom .ui-btn-inner{ - padding-bottom:27px -} -.ui-btn-icon-notext .ui-icon{ - display:block -} -.ui-btn-icon-left .ui-icon,.ui-btn-icon-right .ui-icon{ - position:absolute; - top:50%; - margin-top:-9px -} -.ui-btn-icon-top .ui-icon,.ui-btn-icon-bottom .ui-icon{ - position:absolute; - left:50%; - margin-left:-9px -} -.ui-btn-icon-left .ui-icon{ - left:10px -} -.ui-btn-icon-right .ui-icon{ - right:10px -} -.ui-header .ui-btn-icon-left .ui-icon,.ui-footer .ui-btn-icon-left .ui-icon,.ui-bar .ui-btn-icon-left .ui-icon{ - left:4px -} -.ui-header .ui-btn-icon-right .ui-icon,.ui-footer .ui-btn-icon-right .ui-icon,.ui-bar .ui-btn-icon-right .ui-icon{ - right:4px -} -.ui-header .ui-btn-icon-top .ui-icon,.ui-footer .ui-btn-icon-top .ui-icon,.ui-bar .ui-btn-icon-top .ui-icon{ - top:4px -} -.ui-header .ui-btn-icon-bottom .ui-icon,.ui-footer .ui-btn-icon-bottom .ui-icon,.ui-bar .ui-btn-icon-bottom .ui-icon{ - bottom:4px -} -.ui-btn-icon-top .ui-icon{ - top:5px -} -.ui-btn-icon-bottom .ui-icon{ - bottom:5px -} -.ui-btn-hidden{ - position:absolute; - top:0; - left:0; - width:100%; - height:100%; - -webkit-appearance:button; - opacity:0; - cursor:pointer; - -ms-filter:"alpha(opacity=0)"; - filter:alpha(opacity=0); - background:transparent -} -.ui-collapsible-contain{ - margin:.5em 0 -} -.ui-collapsible-heading{ - font-size:16px; - display:block; - margin:0 -8px; - padding:0; - border-width:0 0 1px 0; - position:relative -} -.ui-collapsible-heading a{ - text-align:left; - margin:0 -} -.ui-collapsible-heading a .ui-btn-inner{ - padding-left:40px -} -.ui-collapsible-heading a span.ui-btn{ - position:absolute; - left:6px; - top:50%; - margin:-12px 0 0 0; - width:20px; - height:20px; - padding:1px 0 1px 2px; - text-indent:-9999px -} -.ui-collapsible-heading a span.ui-btn .ui-btn-inner{ - padding:10px 0 -} -.ui-collapsible-heading a span.ui-btn .ui-icon{ - left:0; - margin-top:-10px -} -.ui-collapsible-heading-status{ - position:absolute; - left:-9999px -} -.ui-collapsible-content{ - display:block;padding:10px 0 10px 8px -} -.ui-collapsible-content-collapsed{ - display:none -} -.ui-collapsible-set{ - margin:.5em 0 -} -.ui-collapsible-set .ui-collapsible-contain{ - margin:-1px 0 0 -} -.ui-controlgroup,fieldset.ui-controlgroup{ - padding:0;margin:.5em 0 1em -} -.ui-bar .ui-controlgroup{ - margin:0 .3em -} -.ui-controlgroup-label{ - font-size:16px; - line-height:1.4; - font-weight:normal; - margin:0 0 .3em -} -.ui-controlgroup-controls{ - display:block; - width:95% -} -.ui-controlgroup li{ - list-style:none -} -.ui-controlgroup-vertical .ui-btn,.ui-controlgroup-vertical .ui-checkbox,.ui-controlgroup-vertical .ui-radio{ - margin:0; - border-bottom-width:0 -} -.ui-controlgroup-vertical .ui-controlgroup-last{ - border-bottom-width:1px -} -.ui-controlgroup-horizontal{ - padding:0 -} -.ui-controlgroup-horizontal .ui-btn,.ui-controlgroup-horizontal .ui-checkbox,.ui-controlgroup-horizontal .ui-radio{ - display:inline-block; - margin:0 -5px 0 0 -} -.ui-controlgroup-horizontal .ui-checkbox,.ui-controlgroup-horizontal .ui-radio{ - display:inline -} -.ui-controlgroup-horizontal .ui-checkbox .ui-btn,.ui-controlgroup-horizontal .ui-radio .ui-btn,.ui-controlgroup-horizontal .ui-checkbox:last-child,.ui-controlgroup-horizontal .ui-radio:last-child{ - margin-right:0 -} -.ui-controlgroup-horizontal .ui-controlgroup-last{ - margin-right:0 -} -.ui-controlgroup .ui-checkbox label,.ui-controlgroup .ui-radio label{ - font-size:16px -} -@media all and (min-width:450px){ - .ui-controlgroup-label{ - vertical-align:top; - display:inline-block; - width:20%; - margin:0 2% 0 0 - } - .ui-controlgroup-controls{ - width:60%; - display:inline-block - } -} -.ui-dialog{ - min-height:480px -} -.ui-dialog .ui-header,.ui-dialog .ui-content,.ui-dialog .ui-footer{ - margin:15px; - position:relative -} -.ui-dialog .ui-header,.ui-dialog .ui-footer{ - z-index:10; - width:auto -} -.ui-dialog .ui-content,.ui-dialog .ui-footer{ - margin-top:-15px -} -.ui-checkbox,.ui-radio{ - position:relative; - margin:.2em 0 .5em; - z-index:1 -} -.ui-checkbox .ui-btn,.ui-radio .ui-btn{ - margin:0; - text-align:left; - z-index:2 -} -.ui-checkbox .ui-btn-inner,.ui-radio .ui-btn-inner{ - white-space:normal -} -.ui-checkbox .ui-btn-icon-left .ui-btn-inner,.ui-radio .ui-btn-icon-left .ui-btn-inner{ - padding-left:45px -} -.ui-checkbox .ui-btn-icon-right .ui-btn-inner,.ui-radio .ui-btn-icon-right .ui-btn-inner{ - padding-right:45px -} -.ui-checkbox .ui-icon,.ui-radio .ui-icon{ - top:1.1em -} -.ui-checkbox .ui-btn-icon-left .ui-icon,.ui-radio .ui-btn-icon-left .ui-icon{ - left:15px -} -.ui-checkbox .ui-btn-icon-right .ui-icon,.ui-radio .ui-btn-icon-right .ui-icon{ - right:15px -} -.ui-checkbox input,.ui-radio input{ - position:absolute; - left:20px; - top:50%; - width:10px; - height:10px; - margin:-5px 0 0 0; - outline:0!important; - z-index:1 -} -.ui-field-contain{ - background:0; - padding:1.5em 0; - margin:0; - border-bottom-width:1px; - overflow:visible -} -.ui-field-contain:first-child{ - border-top-width:0 -} -@media all and (min-width:450px){ - .ui-field-contain{ - border-width:0; - padding:0; - margin:1em 0 - } -} -.ui-select{ - display:block; - position:relative -} -.ui-select select{ - position:absolute; - left:-9999px; - top:-9999px -} -.ui-select .ui-btn{ - overflow:hidden -} -.ui-select .ui-btn select{ - cursor:pointer; - -webkit-appearance:button; - left:0; - top:0; - width:100%; - height:100%; - opacity:0; - -ms-filter:"alpha(opacity=0)"; - filter:alpha(opacity=0) -} -@-moz-document url-prefix(){ - .ui-select .ui-btn select{ - opacity:.0001 - } -} -.ui-select .ui-btn select.ui-select-nativeonly{ - opacity:1; - text-indent:0 -} -.ui-select .ui-btn-icon-right .ui-btn-inner{ - padding-right:45px -} -.ui-select .ui-btn-icon-right .ui-icon{ - right:15px -} -label.ui-select{ - font-size:16px; - line-height:1.4; - font-weight:normal; - margin:0 0 .3em; - display:block -} -.ui-select .ui-btn-text,.ui-selectmenu .ui-btn-text{ - display:inline-block; - min-height:1em -} -.ui-select .ui-btn-text{ - text-overflow:ellipsis; - overflow:hidden; - display:block -} -.ui-selectmenu{ - position:absolute; - padding:0; - z-index:100!important; - width:80%; - max-width:350px; - padding:6px -} -.ui-selectmenu .ui-listview{ - margin:0 -} -.ui-selectmenu .ui-btn.ui-li-divider{ - cursor:default -} -.ui-selectmenu-hidden{ - top:-9999px; - left:-9999px -} -.ui-selectmenu-screen{ - position:absolute; - top:0; - left:0; - width:100%; - height:100%; - z-index:99 -} -.ui-screen-hidden,.ui-selectmenu-list .ui-li .ui-icon{ - display:none -} -.ui-selectmenu-list .ui-li .ui-icon{ - display:block -} -.ui-li.ui-selectmenu-placeholder{ - display:none -} -.ui-selectmenu .ui-header .ui-title{ - margin:.6em 46px .8em -} -@media all and (min-width:450px){ - label.ui-select{ - display:inline-block; - width:20%; - margin:0 2% 0 0 - } - .ui-select{ - width:60%; - display:inline-block - } -} -.ui-selectmenu .ui-header h1:after{ - content:'.'; - visibility:hidden -} -label.ui-input-text{ - font-size:16px; - line-height:1.4; - display:block; - font-weight:normal; - margin:0 0 .3em -} -input.ui-input-text,textarea.ui-input-text{ - background-image:none; - padding:.4em; - line-height:1.4; - font-size:16px; - display:block; - width:95% -} -input.ui-input-text{ - -webkit-appearance:none -} -textarea.ui-input-text{ - height:50px; - -webkit-transition:height 200ms linear; - -moz-transition:height 200ms linear; - -o-transition:height 200ms linear; - transition:height 200ms linear -} -.ui-input-search{ - padding:0 30px; - width:77%; - background-position:8px 50%; - background-repeat:no-repeat; - position:relative -} -.ui-input-search input.ui-input-text{ - border:0; - width:98%; - padding:.4em 0; - margin:0; - display:block; - background:transparent none; - outline:0!important -} -.ui-input-search .ui-input-clear{ - position:absolute; - right:0; - top:50%; - margin-top:-14px -} -.ui-input-search .ui-input-clear-hidden{ - display:none -} -@media all and (min-width:450px){ - label.ui-input-text{ - vertical-align:top; - display:inline-block; - width:20%; - margin:0 2% 0 0 - } - input.ui-input-text,textarea.ui-input-text,.ui-input-search{ - width:60%; - display:inline-block - } - .ui-input-search{ - width:50% - } - .ui-input-search input.ui-input-text{ - width:98% - } -} -.ui-listview{ - margin:0; - counter-reset:listnumbering -} -.ui-content .ui-listview{ - margin:-15px -} -.ui-content .ui-listview-inset{ - margin:1em 0 -} -.ui-listview,.ui-li{ - list-style:none; - padding:0 -} -.ui-li,.ui-li.ui-field-contain{ - display:block; - margin:0; - position:relative; - overflow:visible; - text-align:left; - border-width:0; - border-top-width:1px -} -.ui-li .ui-btn-text a.ui-link-inherit{ - text-overflow:ellipsis; - overflow:hidden; - white-space:nowrap -} -.ui-li-divider,.ui-li-static{ - padding:.5em 15px; - font-size:14px; - font-weight:bold -} -.ui-li-divider{ - counter-reset:listnumbering -} -ol.ui-listview .ui-link-inherit:before,ol.ui-listview .ui-li-static:before,.ui-li-dec{ - font-size:.8em; - display:inline-block; - padding-right:.3em; - font-weight:normal; - counter-increment:listnumbering; - content:counter(listnumbering) ". " -} -ol.ui-listview .ui-li-jsnumbering:before{ - content:""!important -} -.ui-listview-inset .ui-li{ - border-right-width:1px; - border-left-width:1px -} -.ui-li:last-child,.ui-li.ui-field-contain:last-child{ - border-bottom-width:1px -} -.ui-li>.ui-btn-inner{ - display:block; - position:relative; - padding:0 -} -.ui-li .ui-btn-inner a.ui-link-inherit,.ui-li-static.ui-li{ - padding:.7em 75px .7em 15px; - display:block -} -.ui-li-has-thumb .ui-btn-inner a.ui-link-inherit,.ui-li-static.ui-li-has-thumb{ - min-height:60px; - padding-left:100px -} -.ui-li-has-icon .ui-btn-inner a.ui-link-inherit,.ui-li-static.ui-li-has-icon{ - min-height:20px; - padding-left:40px -} -.ui-li-heading{ - font-size:16px; - font-weight:bold; - display:block; - margin:.6em 0; - text-overflow:ellipsis; - overflow:hidden; - white-space:nowrap -} -.ui-li-desc{ - font-size:12px; - font-weight:normal; - display:block; - margin:-.5em 0 .6em; - text-overflow:ellipsis; - overflow:hidden; - white-space:nowrap -} -.ui-li-thumb,.ui-li-icon{ - position:absolute; - left:1px; - top:0; - max-height:80px; - max-width:80px -} -.ui-li-icon{ - max-height:40px; - max-width:40px; - left:10px; - top:.9em -} -.ui-li-thumb,.ui-li-icon,.ui-li-content{ - float:left; - margin-right:10px -} -.ui-li-aside{ - float:right; - width:50%; - text-align:right; - margin:.3em 0 -} -@media all and (min-width:480px){ - .ui-li-aside{ - width:45% - } -} -.ui-li-divider{ - cursor:default -} -.ui-li-has-alt .ui-btn-inner a.ui-link-inherit,.ui-li-static.ui-li-has-alt{ - padding-right:95px -} -.ui-li-count{ - position:absolute; - font-size:11px; - font-weight:bold; - padding:.2em .5em; - top:50%; - margin-top:-.9em; - right:38px -} -.ui-li-divider .ui-li-count,.ui-li-static .ui-li-count{ - right:10px -} -.ui-li-has-alt .ui-li-count{ - right:55px -} -.ui-li-link-alt{ - position:absolute; - width:40px; - height:100%; - border-width:0; - border-left-width:1px; - top:0; - right:0; - margin:0; - padding:0 -} -.ui-li-link-alt .ui-btn{ - overflow:hidden; - position:absolute; - right:8px; - top:50%; - margin:-11px 0 0 0; - border-bottom-width:1px -} -.ui-li-link-alt .ui-btn-inner{ - padding:0; - position:static -} -.ui-li-link-alt .ui-btn .ui-icon{ - right:50%; - margin-right:-9px -} -.ui-listview-filter{ - border-width:0; - overflow:hidden; - margin:-15px -15px 15px -15px -} -.ui-listview-filter .ui-input-search{ - margin:5px; - width:auto; - display:block -} -.ui-listview-filter-inset{ - margin:-15px -5px -15px -5px; - background:transparent -} -.ui-li.ui-screen-hidden{ - display:none -} -@media only screen and (min-device-width:768px) and (max-device-width:1024px){ - .ui-li .ui-btn-text{ - overflow:visible - } -} -label.ui-slider{ - display:block -} -input.ui-slider-input{ - display:inline-block; - width:50px -} -select.ui-slider-switch{ - display:none -} -div.ui-slider{ - position:relative; - display:inline-block; - overflow:visible; - height:15px; - padding:0; - margin:0 2% 0 20px; - top:4px; - width:66% -} -a.ui-slider-handle{ - position:absolute; - z-index:10; - top:50%; - width:28px; - height:28px; - margin-top:-15px; - margin-left:-15px -} -a.ui-slider-handle .ui-btn-inner{ - padding-left:0; - padding-right:0 -} -@media all and (min-width:480px){ - label.ui-slider{ - display:inline-block; - width:20%; - margin:0 2% 0 0 - } - div.ui-slider{ - width:45% - } -} -div.ui-slider-switch{ - height:32px; - overflow:hidden; - margin-left:0 -} -div.ui-slider-inneroffset{ - margin-left:50%; - position:absolute; - top:1px; - height:100%; - width:50% -} -div.ui-slider-handle-snapping{ - -webkit-transition:left 100ms linear -} -div.ui-slider-labelbg{ - position:absolute; - top:0; - margin:0; - border-width:0 -} -div.ui-slider-switch div.ui-slider-labelbg-a{ - width:60%; - height:100%; - left:0 -} -div.ui-slider-switch div.ui-slider-labelbg-b{ - width:60%; - height:100%; - right:0 -} -.ui-slider-switch-a div.ui-slider-labelbg-a,.ui-slider-switch-b div.ui-slider-labelbg-b{ - z-index:-1 -} -.ui-slider-switch-a div.ui-slider-labelbg-b,.ui-slider-switch-b div.ui-slider-labelbg-a{ - z-index:0 -} -div.ui-slider-switch a.ui-slider-handle{ - z-index:20; - width:101%; - height:32px; - margin-top:-18px; - margin-left:-101% -} -span.ui-slider-label{ - width:100%; - position:absolute; - height:32px; - font-size:16px; - text-align:center; - line-height:2; - background:0; - border-color:transparent -} -span.ui-slider-label-a{ - left:-100%; - margin-right:-1px -} -span.ui-slider-label-b{ - right:-100%; - margin-left:-1px -} - - - diff --git a/addons/web_mobile/static/lib/jquery_mobile/img/ajax-loader.png b/addons/web_mobile/static/lib/jquery_mobile/img/ajax-loader.png Binary files differdeleted file mode 100644 index 811a2cdd1b4..00000000000 --- a/addons/web_mobile/static/lib/jquery_mobile/img/ajax-loader.png +++ /dev/null diff --git a/addons/web_mobile/static/lib/jquery_mobile/img/icon-search-black.png b/addons/web_mobile/static/lib/jquery_mobile/img/icon-search-black.png Binary files differdeleted file mode 100644 index 5721120f8df..00000000000 --- a/addons/web_mobile/static/lib/jquery_mobile/img/icon-search-black.png +++ /dev/null diff --git a/addons/web_mobile/static/lib/jquery_mobile/img/icons-18-black.png b/addons/web_mobile/static/lib/jquery_mobile/img/icons-18-black.png Binary files differdeleted file mode 100644 index 71268bdf70f..00000000000 --- a/addons/web_mobile/static/lib/jquery_mobile/img/icons-18-black.png +++ /dev/null diff --git a/addons/web_mobile/static/lib/jquery_mobile/img/icons-18-white.png b/addons/web_mobile/static/lib/jquery_mobile/img/icons-18-white.png Binary files differdeleted file mode 100644 index dadc6af5870..00000000000 --- a/addons/web_mobile/static/lib/jquery_mobile/img/icons-18-white.png +++ /dev/null diff --git a/addons/web_mobile/static/lib/jquery_mobile/img/icons-36-black.png b/addons/web_mobile/static/lib/jquery_mobile/img/icons-36-black.png Binary files differdeleted file mode 100644 index 8c35ae3fb03..00000000000 --- a/addons/web_mobile/static/lib/jquery_mobile/img/icons-36-black.png +++ /dev/null diff --git a/addons/web_mobile/static/lib/jquery_mobile/img/icons-36-white.png b/addons/web_mobile/static/lib/jquery_mobile/img/icons-36-white.png Binary files differdeleted file mode 100644 index 7e559b8163f..00000000000 --- a/addons/web_mobile/static/lib/jquery_mobile/img/icons-36-white.png +++ /dev/null diff --git a/addons/web_mobile/static/lib/jquery_mobile/img/progress-bar.gif b/addons/web_mobile/static/lib/jquery_mobile/img/progress-bar.gif Binary files differdeleted file mode 100644 index d8446a9ab7f..00000000000 --- a/addons/web_mobile/static/lib/jquery_mobile/img/progress-bar.gif +++ /dev/null diff --git a/addons/web_mobile/static/lib/jquery_mobile/js/jqm-docs.js b/addons/web_mobile/static/lib/jquery_mobile/js/jqm-docs.js deleted file mode 100644 index 4f6ace6f376..00000000000 --- a/addons/web_mobile/static/lib/jquery_mobile/js/jqm-docs.js +++ /dev/null @@ -1,59 +0,0 @@ -//set up the theme switcher on the homepage -$('div').live('pagecreate',function(event){ - if( !$(this).is('.ui-dialog')){ - var appendEl = $(this).find('.ui-footer:last'); - - if( !appendEl.length ){ - appendEl = $(this).find('.ui-content'); - } - - if( appendEl.is("[data-position]") ){ - return; - } - - $('<a href="#themeswitcher" data-'+ $.mobile.ns +'rel="dialog" data-'+ $.mobile.ns +'transition="pop">Switch theme</a>') - .buttonMarkup({ - 'icon':'gear', - 'inline': true, - 'shadow': false, - 'theme': 'd' - }) - .appendTo( appendEl ) - .wrap('<div class="jqm-themeswitcher">') - .bind( "vclick", function(){ - $.themeswitcher(); - }); - } - -}); - -//collapse page navs after use -$(function(){ - $('body').delegate('.content-secondary .ui-collapsible-content', 'vclick', function(){ - $(this).trigger("collapse") - }); -}); - -function setDefaultTransition(){ - var winwidth = $( window ).width(), - trans ="slide"; - - if( winwidth >= 1000 ){ - trans = "none"; - } - else if( winwidth >= 650 ){ - trans = "fade"; - } - - $.mobile.defaultPageTransition = trans; -} - - -//set default documentation -$( document ).bind( "mobileinit", setDefaultTransition ); -$(function(){ - $( window ).bind( "throttledresize", setDefaultTransition ); -}); -$(document).bind('mobileinit',function(){ - $.mobile.selectmenu.prototype.options.nativeMenu = false; -});
\ No newline at end of file diff --git a/addons/web_mobile/static/lib/jquery_mobile/js/jquery-1.6.1.min.js b/addons/web_mobile/static/lib/jquery_mobile/js/jquery-1.6.1.min.js deleted file mode 100644 index eb6a59693d0..00000000000 --- a/addons/web_mobile/static/lib/jquery_mobile/js/jquery-1.6.1.min.js +++ /dev/null @@ -1,18 +0,0 @@ -/*! - * jQuery JavaScript Library v1.6.1 - * http://jquery.com/ - * - * Copyright 2011, John Resig - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * Includes Sizzle.js - * http://sizzlejs.com/ - * Copyright 2011, The Dojo Foundation - * Released under the MIT, BSD, and GPL Licenses. - * - * Date: Thu May 12 15:04:36 2011 -0400 - */ -(function(a,b){function cy(a){return f.isWindow(a)?a:a.nodeType===9?a.defaultView||a.parentWindow:!1}function cv(a){if(!cj[a]){var b=f("<"+a+">").appendTo("body"),d=b.css("display");b.remove();if(d==="none"||d===""){ck||(ck=c.createElement("iframe"),ck.frameBorder=ck.width=ck.height=0),c.body.appendChild(ck);if(!cl||!ck.createElement)cl=(ck.contentWindow||ck.contentDocument).document,cl.write("<!doctype><html><body></body></html>");b=cl.createElement(a),cl.body.appendChild(b),d=f.css(b,"display"),c.body.removeChild(ck)}cj[a]=d}return cj[a]}function cu(a,b){var c={};f.each(cp.concat.apply([],cp.slice(0,b)),function(){c[this]=a});return c}function ct(){cq=b}function cs(){setTimeout(ct,0);return cq=f.now()}function ci(){try{return new a.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}}function ch(){try{return new a.XMLHttpRequest}catch(b){}}function cb(a,c){a.dataFilter&&(c=a.dataFilter(c,a.dataType));var d=a.dataTypes,e={},g,h,i=d.length,j,k=d[0],l,m,n,o,p;for(g=1;g<i;g++){if(g===1)for(h in a.converters)typeof h=="string"&&(e[h.toLowerCase()]=a.converters[h]);l=k,k=d[g];if(k==="*")k=l;else if(l!=="*"&&l!==k){m=l+" "+k,n=e[m]||e["* "+k];if(!n){p=b;for(o in e){j=o.split(" ");if(j[0]===l||j[0]==="*"){p=e[j[1]+" "+k];if(p){o=e[o],o===!0?n=p:p===!0&&(n=o);break}}}}!n&&!p&&f.error("No conversion from "+m.replace(" "," to ")),n!==!0&&(c=n?n(c):p(o(c)))}}return c}function ca(a,c,d){var e=a.contents,f=a.dataTypes,g=a.responseFields,h,i,j,k;for(i in g)i in d&&(c[g[i]]=d[i]);while(f[0]==="*")f.shift(),h===b&&(h=a.mimeType||c.getResponseHeader("content-type"));if(h)for(i in e)if(e[i]&&e[i].test(h)){f.unshift(i);break}if(f[0]in d)j=f[0];else{for(i in d){if(!f[0]||a.converters[i+" "+f[0]]){j=i;break}k||(k=i)}j=j||k}if(j){j!==f[0]&&f.unshift(j);return d[j]}}function b_(a,b,c,d){if(f.isArray(b))f.each(b,function(b,e){c||bF.test(a)?d(a,e):b_(a+"["+(typeof e=="object"||f.isArray(e)?b:"")+"]",e,c,d)});else if(!c&&b!=null&&typeof b=="object")for(var e in b)b_(a+"["+e+"]",b[e],c,d);else d(a,b)}function b$(a,c,d,e,f,g){f=f||c.dataTypes[0],g=g||{},g[f]=!0;var h=a[f],i=0,j=h?h.length:0,k=a===bU,l;for(;i<j&&(k||!l);i++)l=h[i](c,d,e),typeof l=="string"&&(!k||g[l]?l=b:(c.dataTypes.unshift(l),l=b$(a,c,d,e,l,g)));(k||!l)&&!g["*"]&&(l=b$(a,c,d,e,"*",g));return l}function bZ(a){return function(b,c){typeof b!="string"&&(c=b,b="*");if(f.isFunction(c)){var d=b.toLowerCase().split(bQ),e=0,g=d.length,h,i,j;for(;e<g;e++)h=d[e],j=/^\+/.test(h),j&&(h=h.substr(1)||"*"),i=a[h]=a[h]||[],i[j?"unshift":"push"](c)}}}function bD(a,b,c){var d=b==="width"?bx:by,e=b==="width"?a.offsetWidth:a.offsetHeight;if(c==="border")return e;f.each(d,function(){c||(e-=parseFloat(f.css(a,"padding"+this))||0),c==="margin"?e+=parseFloat(f.css(a,"margin"+this))||0:e-=parseFloat(f.css(a,"border"+this+"Width"))||0});return e}function bn(a,b){b.src?f.ajax({url:b.src,async:!1,dataType:"script"}):f.globalEval((b.text||b.textContent||b.innerHTML||"").replace(bf,"/*$0*/")),b.parentNode&&b.parentNode.removeChild(b)}function bm(a){f.nodeName(a,"input")?bl(a):a.getElementsByTagName&&f.grep(a.getElementsByTagName("input"),bl)}function bl(a){if(a.type==="checkbox"||a.type==="radio")a.defaultChecked=a.checked}function bk(a){return"getElementsByTagName"in a?a.getElementsByTagName("*"):"querySelectorAll"in a?a.querySelectorAll("*"):[]}function bj(a,b){var c;if(b.nodeType===1){b.clearAttributes&&b.clearAttributes(),b.mergeAttributes&&b.mergeAttributes(a),c=b.nodeName.toLowerCase();if(c==="object")b.outerHTML=a.outerHTML;else if(c!=="input"||a.type!=="checkbox"&&a.type!=="radio"){if(c==="option")b.selected=a.defaultSelected;else if(c==="input"||c==="textarea")b.defaultValue=a.defaultValue}else a.checked&&(b.defaultChecked=b.checked=a.checked),b.value!==a.value&&(b.value=a.value);b.removeAttribute(f.expando)}}function bi(a,b){if(b.nodeType===1&&!!f.hasData(a)){var c=f.expando,d=f.data(a),e=f.data(b,d);if(d=d[c]){var g=d.events;e=e[c]=f.extend({},d);if(g){delete e.handle,e.events={};for(var h in g)for(var i=0,j=g[h].length;i<j;i++)f.event.add(b,h+(g[h][i].namespace?".":"")+g[h][i].namespace,g[h][i],g[h][i].data)}}}}function bh(a,b){return f.nodeName(a,"table")?a.getElementsByTagName("tbody")[0]||a.appendChild(a.ownerDocument.createElement("tbody")):a}function X(a,b,c){b=b||0;if(f.isFunction(b))return f.grep(a,function(a,d){var e=!!b.call(a,d,a);return e===c});if(b.nodeType)return f.grep(a,function(a,d){return a===b===c});if(typeof b=="string"){var d=f.grep(a,function(a){return a.nodeType===1});if(S.test(b))return f.filter(b,d,!c);b=f.filter(b,d)}return f.grep(a,function(a,d){return f.inArray(a,b)>=0===c})}function W(a){return!a||!a.parentNode||a.parentNode.nodeType===11}function O(a,b){return(a&&a!=="*"?a+".":"")+b.replace(A,"`").replace(B,"&")}function N(a){var b,c,d,e,g,h,i,j,k,l,m,n,o,p=[],q=[],r=f._data(this,"events");if(!(a.liveFired===this||!r||!r.live||a.target.disabled||a.button&&a.type==="click")){a.namespace&&(n=new RegExp("(^|\\.)"+a.namespace.split(".").join("\\.(?:.*\\.)?")+"(\\.|$)")),a.liveFired=this;var s=r.live.slice(0);for(i=0;i<s.length;i++)g=s[i],g.origType.replace(y,"")===a.type?q.push(g.selector):s.splice(i--,1);e=f(a.target).closest(q,a.currentTarget);for(j=0,k=e.length;j<k;j++){m=e[j];for(i=0;i<s.length;i++){g=s[i];if(m.selector===g.selector&&(!n||n.test(g.namespace))&&!m.elem.disabled){h=m.elem,d=null;if(g.preType==="mouseenter"||g.preType==="mouseleave")a.type=g.preType,d=f(a.relatedTarget).closest(g.selector)[0],d&&f.contains(h,d)&&(d=h);(!d||d!==h)&&p.push({elem:h,handleObj:g,level:m.level})}}}for(j=0,k=p.length;j<k;j++){e=p[j];if(c&&e.level>c)break;a.currentTarget=e.elem,a.data=e.handleObj.data,a.handleObj=e.handleObj,o=e.handleObj.origHandler.apply(e.elem,arguments);if(o===!1||a.isPropagationStopped()){c=e.level,o===!1&&(b=!1);if(a.isImmediatePropagationStopped())break}}return b}}function L(a,c,d){var e=f.extend({},d[0]);e.type=a,e.originalEvent={},e.liveFired=b,f.event.handle.call(c,e),e.isDefaultPrevented()&&d[0].preventDefault()}function F(){return!0}function E(){return!1}function m(a,c,d){var e=c+"defer",g=c+"queue",h=c+"mark",i=f.data(a,e,b,!0);i&&(d==="queue"||!f.data(a,g,b,!0))&&(d==="mark"||!f.data(a,h,b,!0))&&setTimeout(function(){!f.data(a,g,b,!0)&&!f.data(a,h,b,!0)&&(f.removeData(a,e,!0),i.resolve())},0)}function l(a){for(var b in a)if(b!=="toJSON")return!1;return!0}function k(a,c,d){if(d===b&&a.nodeType===1){var e="data-"+c.replace(j,"$1-$2").toLowerCase();d=a.getAttribute(e);if(typeof d=="string"){try{d=d==="true"?!0:d==="false"?!1:d==="null"?null:f.isNaN(d)?i.test(d)?f.parseJSON(d):d:parseFloat(d)}catch(g){}f.data(a,c,d)}else d=b}return d}var c=a.document,d=a.navigator,e=a.location,f=function(){function H(){if(!e.isReady){try{c.documentElement.doScroll("left")}catch(a){setTimeout(H,1);return}e.ready()}}var e=function(a,b){return new e.fn.init(a,b,h)},f=a.jQuery,g=a.$,h,i=/^(?:[^<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,j=/\S/,k=/^\s+/,l=/\s+$/,m=/\d/,n=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,o=/^[\],:{}\s]*$/,p=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,q=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,r=/(?:^|:|,)(?:\s*\[)+/g,s=/(webkit)[ \/]([\w.]+)/,t=/(opera)(?:.*version)?[ \/]([\w.]+)/,u=/(msie) ([\w.]+)/,v=/(mozilla)(?:.*? rv:([\w.]+))?/,w=d.userAgent,x,y,z,A=Object.prototype.toString,B=Object.prototype.hasOwnProperty,C=Array.prototype.push,D=Array.prototype.slice,E=String.prototype.trim,F=Array.prototype.indexOf,G={};e.fn=e.prototype={constructor:e,init:function(a,d,f){var g,h,j,k;if(!a)return this;if(a.nodeType){this.context=this[0]=a,this.length=1;return this}if(a==="body"&&!d&&c.body){this.context=c,this[0]=c.body,this.selector=a,this.length=1;return this}if(typeof a=="string"){a.charAt(0)!=="<"||a.charAt(a.length-1)!==">"||a.length<3?g=i.exec(a):g=[null,a,null];if(g&&(g[1]||!d)){if(g[1]){d=d instanceof e?d[0]:d,k=d?d.ownerDocument||d:c,j=n.exec(a),j?e.isPlainObject(d)?(a=[c.createElement(j[1])],e.fn.attr.call(a,d,!0)):a=[k.createElement(j[1])]:(j=e.buildFragment([g[1]],[k]),a=(j.cacheable?e.clone(j.fragment):j.fragment).childNodes);return e.merge(this,a)}h=c.getElementById(g[2]);if(h&&h.parentNode){if(h.id!==g[2])return f.find(a);this.length=1,this[0]=h}this.context=c,this.selector=a;return this}return!d||d.jquery?(d||f).find(a):this.constructor(d).find(a)}if(e.isFunction(a))return f.ready(a);a.selector!==b&&(this.selector=a.selector,this.context=a.context);return e.makeArray(a,this)},selector:"",jquery:"1.6.1",length:0,size:function(){return this.length},toArray:function(){return D.call(this,0)},get:function(a){return a==null?this.toArray():a<0?this[this.length+a]:this[a]},pushStack:function(a,b,c){var d=this.constructor();e.isArray(a)?C.apply(d,a):e.merge(d,a),d.prevObject=this,d.context=this.context,b==="find"?d.selector=this.selector+(this.selector?" ":"")+c:b&&(d.selector=this.selector+"."+b+"("+c+")");return d},each:function(a,b){return e.each(this,a,b)},ready:function(a){e.bindReady(),y.done(a);return this},eq:function(a){return a===-1?this.slice(a):this.slice(a,+a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(D.apply(this,arguments),"slice",D.call(arguments).join(","))},map:function(a){return this.pushStack(e.map(this,function(b,c){return a.call(b,c,b)}))},end:function(){return this.prevObject||this.constructor(null)},push:C,sort:[].sort,splice:[].splice},e.fn.init.prototype=e.fn,e.extend=e.fn.extend=function(){var a,c,d,f,g,h,i=arguments[0]||{},j=1,k=arguments.length,l=!1;typeof i=="boolean"&&(l=i,i=arguments[1]||{},j=2),typeof i!="object"&&!e.isFunction(i)&&(i={}),k===j&&(i=this,--j);for(;j<k;j++)if((a=arguments[j])!=null)for(c in a){d=i[c],f=a[c];if(i===f)continue;l&&f&&(e.isPlainObject(f)||(g=e.isArray(f)))?(g?(g=!1,h=d&&e.isArray(d)?d:[]):h=d&&e.isPlainObject(d)?d:{},i[c]=e.extend(l,h,f)):f!==b&&(i[c]=f)}return i},e.extend({noConflict:function(b){a.$===e&&(a.$=g),b&&a.jQuery===e&&(a.jQuery=f);return e},isReady:!1,readyWait:1,holdReady:function(a){a?e.readyWait++:e.ready(!0)},ready:function(a){if(a===!0&&!--e.readyWait||a!==!0&&!e.isReady){if(!c.body)return setTimeout(e.ready,1);e.isReady=!0;if(a!==!0&&--e.readyWait>0)return;y.resolveWith(c,[e]),e.fn.trigger&&e(c).trigger("ready").unbind("ready")}},bindReady:function(){if(!y){y=e._Deferred();if(c.readyState==="complete")return setTimeout(e.ready,1);if(c.addEventListener)c.addEventListener("DOMContentLoaded",z,!1),a.addEventListener("load",e.ready,!1);else if(c.attachEvent){c.attachEvent("onreadystatechange",z),a.attachEvent("onload",e.ready);var b=!1;try{b=a.frameElement==null}catch(d){}c.documentElement.doScroll&&b&&H()}}},isFunction:function(a){return e.type(a)==="function"},isArray:Array.isArray||function(a){return e.type(a)==="array"},isWindow:function(a){return a&&typeof a=="object"&&"setInterval"in a},isNaN:function(a){return a==null||!m.test(a)||isNaN(a)},type:function(a){return a==null?String(a):G[A.call(a)]||"object"},isPlainObject:function(a){if(!a||e.type(a)!=="object"||a.nodeType||e.isWindow(a))return!1;if(a.constructor&&!B.call(a,"constructor")&&!B.call(a.constructor.prototype,"isPrototypeOf"))return!1;var c;for(c in a);return c===b||B.call(a,c)},isEmptyObject:function(a){for(var b in a)return!1;return!0},error:function(a){throw a},parseJSON:function(b){if(typeof b!="string"||!b)return null;b=e.trim(b);if(a.JSON&&a.JSON.parse)return a.JSON.parse(b);if(o.test(b.replace(p,"@").replace(q,"]").replace(r,"")))return(new Function("return "+b))();e.error("Invalid JSON: "+b)},parseXML:function(b,c,d){a.DOMParser?(d=new DOMParser,c=d.parseFromString(b,"text/xml")):(c=new ActiveXObject("Microsoft.XMLDOM"),c.async="false",c.loadXML(b)),d=c.documentElement,(!d||!d.nodeName||d.nodeName==="parsererror")&&e.error("Invalid XML: "+b);return c},noop:function(){},globalEval:function(b){b&&j.test(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toUpperCase()===b.toUpperCase()},each:function(a,c,d){var f,g=0,h=a.length,i=h===b||e.isFunction(a);if(d){if(i){for(f in a)if(c.apply(a[f],d)===!1)break}else for(;g<h;)if(c.apply(a[g++],d)===!1)break}else if(i){for(f in a)if(c.call(a[f],f,a[f])===!1)break}else for(;g<h;)if(c.call(a[g],g,a[g++])===!1)break;return a},trim:E?function(a){return a==null?"":E.call(a)}:function(a){return a==null?"":(a+"").replace(k,"").replace(l,"")},makeArray:function(a,b){var c=b||[];if(a!=null){var d=e.type(a);a.length==null||d==="string"||d==="function"||d==="regexp"||e.isWindow(a)?C.call(c,a):e.merge(c,a)}return c},inArray:function(a,b){if(F)return F.call(b,a);for(var c=0,d=b.length;c<d;c++)if(b[c]===a)return c;return-1},merge:function(a,c){var d=a.length,e=0;if(typeof c.length=="number")for(var f=c.length;e<f;e++)a[d++]=c[e];else while(c[e]!==b)a[d++]=c[e++];a.length=d;return a},grep:function(a,b,c){var d=[],e;c=!!c;for(var f=0,g=a.length;f<g;f++)e=!!b(a[f],f),c!==e&&d.push(a[f]);return d},map:function(a,c,d){var f,g,h=[],i=0,j=a.length,k=a instanceof e||j!==b&&typeof j=="number"&&(j>0&&a[0]&&a[j-1]||j===0||e.isArray(a));if(k)for(;i<j;i++)f=c(a[i],i,d),f!=null&&(h[h.length]=f);else for(g in a)f=c(a[g],g,d),f!=null&&(h[h.length]=f);return h.concat.apply([],h)},guid:1,proxy:function(a,c){if(typeof c=="string"){var d=a[c];c=a,a=d}if(!e.isFunction(a))return b;var f=D.call(arguments,2),g=function(){return a.apply(c,f.concat(D.call(arguments)))};g.guid=a.guid=a.guid||g.guid||e.guid++;return g},access:function(a,c,d,f,g,h){var i=a.length;if(typeof c=="object"){for(var j in c)e.access(a,j,c[j],f,g,d);return a}if(d!==b){f=!h&&f&&e.isFunction(d);for(var k=0;k<i;k++)g(a[k],c,f?d.call(a[k],k,g(a[k],c)):d,h);return a}return i?g(a[0],c):b},now:function(){return(new Date).getTime()},uaMatch:function(a){a=a.toLowerCase();var b=s.exec(a)||t.exec(a)||u.exec(a)||a.indexOf("compatible")<0&&v.exec(a)||[];return{browser:b[1]||"",version:b[2]||"0"}},sub:function(){function a(b,c){return new a.fn.init(b,c)}e.extend(!0,a,this),a.superclass=this,a.fn=a.prototype=this(),a.fn.constructor=a,a.sub=this.sub,a.fn.init=function(d,f){f&&f instanceof e&&!(f instanceof a)&&(f=a(f));return e.fn.init.call(this,d,f,b)},a.fn.init.prototype=a.fn;var b=a(c);return a},browser:{}}),e.each("Boolean Number String Function Array Date RegExp Object".split(" "),function(a,b){G["[object "+b+"]"]=b.toLowerCase()}),x=e.uaMatch(w),x.browser&&(e.browser[x.browser]=!0,e.browser.version=x.version),e.browser.webkit&&(e.browser.safari=!0),j.test(" ")&&(k=/^[\s\xA0]+/,l=/[\s\xA0]+$/),h=e(c),c.addEventListener?z=function(){c.removeEventListener("DOMContentLoaded",z,!1),e.ready()}:c.attachEvent&&(z=function(){c.readyState==="complete"&&(c.detachEvent("onreadystatechange",z),e.ready())});return e}(),g="done fail isResolved isRejected promise then always pipe".split(" "),h=[].slice;f.extend({_Deferred:function(){var a=[],b,c,d,e={done:function(){if(!d){var c=arguments,g,h,i,j,k;b&&(k=b,b=0);for(g=0,h=c.length;g<h;g++)i=c[g],j=f.type(i),j==="array"?e.done.apply(e,i):j==="function"&&a.push(i);k&&e.resolveWith(k[0],k[1])}return this},resolveWith:function(e,f){if(!d&&!b&&!c){f=f||[],c=1;try{while(a[0])a.shift().apply(e,f)}finally{b=[e,f],c=0}}return this},resolve:function(){e.resolveWith(this,arguments);return this},isResolved:function(){return!!c||!!b},cancel:function(){d=1,a=[];return this}};return e},Deferred:function(a){var b=f._Deferred(),c=f._Deferred(),d;f.extend(b,{then:function(a,c){b.done(a).fail(c);return this},always:function(){return b.done.apply(b,arguments).fail.apply(this,arguments)},fail:c.done,rejectWith:c.resolveWith,reject:c.resolve,isRejected:c.isResolved,pipe:function(a,c){return f.Deferred(function(d){f.each({done:[a,"resolve"],fail:[c,"reject"]},function(a,c){var e=c[0],g=c[1],h;f.isFunction(e)?b[a](function(){h=e.apply(this,arguments),h&&f.isFunction(h.promise)?h.promise().then(d.resolve,d.reject):d[g](h)}):b[a](d[g])})}).promise()},promise:function(a){if(a==null){if(d)return d;d=a={}}var c=g.length;while(c--)a[g[c]]=b[g[c]];return a}}),b.done(c.cancel).fail(b.cancel),delete b.cancel,a&&a.call(b,b);return b},when:function(a){function i(a){return function(c){b[a]=arguments.length>1?h.call(arguments,0):c,--e||g.resolveWith(g,h.call(b,0))}}var b=arguments,c=0,d=b.length,e=d,g=d<=1&&a&&f.isFunction(a.promise)?a:f.Deferred();if(d>1){for(;c<d;c++)b[c]&&f.isFunction(b[c].promise)?b[c].promise().then(i(c),g.reject):--e;e||g.resolveWith(g,b)}else g!==a&&g.resolveWith(g,d?[a]:[]);return g.promise()}}),f.support=function(){var a=c.createElement("div"),b=c.documentElement,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r;a.setAttribute("className","t"),a.innerHTML=" <link/><table></table><a href='/a' style='top:1px;float:left;opacity:.55;'>a</a><input type='checkbox'/>",d=a.getElementsByTagName("*"),e=a.getElementsByTagName("a")[0];if(!d||!d.length||!e)return{};f=c.createElement("select"),g=f.appendChild(c.createElement("option")),h=a.getElementsByTagName("input")[0],j={leadingWhitespace:a.firstChild.nodeType===3,tbody:!a.getElementsByTagName("tbody").length,htmlSerialize:!!a.getElementsByTagName("link").length,style:/top/.test(e.getAttribute("style")),hrefNormalized:e.getAttribute("href")==="/a",opacity:/^0.55$/.test(e.style.opacity),cssFloat:!!e.style.cssFloat,checkOn:h.value==="on",optSelected:g.selected,getSetAttribute:a.className!=="t",submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0},h.checked=!0,j.noCloneChecked=h.cloneNode(!0).checked,f.disabled=!0,j.optDisabled=!g.disabled;try{delete a.test}catch(s){j.deleteExpando=!1}!a.addEventListener&&a.attachEvent&&a.fireEvent&&(a.attachEvent("onclick",function b(){j.noCloneEvent=!1,a.detachEvent("onclick",b)}),a.cloneNode(!0).fireEvent("onclick")),h=c.createElement("input"),h.value="t",h.setAttribute("type","radio"),j.radioValue=h.value==="t",h.setAttribute("checked","checked"),a.appendChild(h),k=c.createDocumentFragment(),k.appendChild(a.firstChild),j.checkClone=k.cloneNode(!0).cloneNode(!0).lastChild.checked,a.innerHTML="",a.style.width=a.style.paddingLeft="1px",l=c.createElement("body"),m={visibility:"hidden",width:0,height:0,border:0,margin:0,background:"none"};for(q in m)l.style[q]=m[q];l.appendChild(a),b.insertBefore(l,b.firstChild),j.appendChecked=h.checked,j.boxModel=a.offsetWidth===2,"zoom"in a.style&&(a.style.display="inline",a.style.zoom=1,j.inlineBlockNeedsLayout=a.offsetWidth===2,a.style.display="",a.innerHTML="<div style='width:4px;'></div>",j.shrinkWrapBlocks=a.offsetWidth!==2),a.innerHTML="<table><tr><td style='padding:0;border:0;display:none'></td><td>t</td></tr></table>",n=a.getElementsByTagName("td"),r=n[0].offsetHeight===0,n[0].style.display="",n[1].style.display="none",j.reliableHiddenOffsets=r&&n[0].offsetHeight===0,a.innerHTML="",c.defaultView&&c.defaultView.getComputedStyle&&(i=c.createElement("div"),i.style.width="0",i.style.marginRight="0",a.appendChild(i),j.reliableMarginRight=(parseInt((c.defaultView.getComputedStyle(i,null)||{marginRight:0}).marginRight,10)||0)===0),l.innerHTML="",b.removeChild(l);if(a.attachEvent)for(q in{submit:1,change:1,focusin:1})p="on"+q,r=p in a,r||(a.setAttribute(p,"return;"),r=typeof a[p]=="function"),j[q+"Bubbles"]=r;return j}(),f.boxModel=f.support.boxModel;var i=/^(?:\{.*\}|\[.*\])$/,j=/([a-z])([A-Z])/g;f.extend({cache:{},uuid:0,expando:"jQuery"+(f.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(a){a=a.nodeType?f.cache[a[f.expando]]:a[f.expando];return!!a&&!l(a)},data:function(a,c,d,e){if(!!f.acceptData(a)){var g=f.expando,h=typeof c=="string",i,j=a.nodeType,k=j?f.cache:a,l=j?a[f.expando]:a[f.expando]&&f.expando;if((!l||e&&l&&!k[l][g])&&h&&d===b)return;l||(j?a[f.expando]=l=++f.uuid:l=f.expando),k[l]||(k[l]={},j||(k[l].toJSON=f.noop));if(typeof c=="object"||typeof c=="function")e?k[l][g]=f.extend(k[l][g],c):k[l]=f.extend(k[l],c);i=k[l],e&&(i[g]||(i[g]={}),i=i[g]),d!==b&&(i[f.camelCase(c)]=d);if(c==="events"&&!i[c])return i[g]&&i[g].events;return h?i[f.camelCase(c)]:i}},removeData:function(b,c,d){if(!!f.acceptData(b)){var e=f.expando,g=b.nodeType,h=g?f.cache:b,i=g?b[f.expando]:f.expando;if(!h[i])return;if(c){var j=d?h[i][e]:h[i];if(j){delete j[c];if(!l(j))return}}if(d){delete h[i][e];if(!l(h[i]))return}var k=h[i][e];f.support.deleteExpando||h!=a?delete h[i]:h[i]=null,k?(h[i]={},g||(h[i].toJSON=f.noop),h[i][e]=k):g&&(f.support.deleteExpando?delete b[f.expando]:b.removeAttribute?b.removeAttribute(f.expando):b[f.expando]=null)}},_data:function(a,b,c){return f.data(a,b,c,!0)},acceptData:function(a){if(a.nodeName){var b=f.noData[a.nodeName.toLowerCase()];if(b)return b!==!0&&a.getAttribute("classid")===b}return!0}}),f.fn.extend({data:function(a,c){var d=null;if(typeof a=="undefined"){if(this.length){d=f.data(this[0]);if(this[0].nodeType===1){var e=this[0].attributes,g;for(var h=0,i=e.length;h<i;h++)g=e[h].name,g.indexOf("data-")===0&&(g=f.camelCase(g.substring(5)),k(this[0],g,d[g]))}}return d}if(typeof a=="object")return this.each(function(){f.data(this,a)});var j=a.split(".");j[1]=j[1]?"."+j[1]:"";if(c===b){d=this.triggerHandler("getData"+j[1]+"!",[j[0]]),d===b&&this.length&&(d=f.data(this[0],a),d=k(this[0],a,d));return d===b&&j[1]?this.data(j[0]):d}return this.each(function(){var b=f(this),d=[j[0],c];b.triggerHandler("setData"+j[1]+"!",d),f.data(this,a,c),b.triggerHandler("changeData"+j[1]+"!",d)})},removeData:function(a){return this.each(function(){f.removeData(this,a)})}}),f.extend({_mark:function(a,c){a&&(c=(c||"fx")+"mark",f.data(a,c,(f.data(a,c,b,!0)||0)+1,!0))},_unmark:function(a,c,d){a!==!0&&(d=c,c=a,a=!1);if(c){d=d||"fx";var e=d+"mark",g=a?0:(f.data(c,e,b,!0)||1)-1;g?f.data(c,e,g,!0):(f.removeData(c,e,!0),m(c,d,"mark"))}},queue:function(a,c,d){if(a){c=(c||"fx")+"queue";var e=f.data(a,c,b,!0);d&&(!e||f.isArray(d)?e=f.data(a,c,f.makeArray(d),!0):e.push(d));return e||[]}},dequeue:function(a,b){b=b||"fx";var c=f.queue(a,b),d=c.shift(),e;d==="inprogress"&&(d=c.shift()),d&&(b==="fx"&&c.unshift("inprogress"),d.call(a,function(){f.dequeue(a,b)})),c.length||(f.removeData(a,b+"queue",!0),m(a,b,"queue"))}}),f.fn.extend({queue:function(a,c){typeof a!="string"&&(c=a,a="fx");if(c===b)return f.queue(this[0],a);return this.each(function(){var b=f.queue(this,a,c);a==="fx"&&b[0]!=="inprogress"&&f.dequeue(this,a)})},dequeue:function(a){return this.each(function(){f.dequeue(this,a)})},delay:function(a,b){a=f.fx?f.fx.speeds[a]||a:a,b=b||"fx";return this.queue(b,function(){var c=this;setTimeout(function(){f.dequeue(c,b)},a)})},clearQueue:function(a){return this.queue(a||"fx",[])},promise:function(a,c){function m(){--h||d.resolveWith(e,[e])}typeof a!="string"&&(c=a,a=b),a=a||"fx";var d=f.Deferred(),e=this,g=e.length,h=1,i=a+"defer",j=a+"queue",k=a+"mark",l;while(g--)if(l=f.data(e[g],i,b,!0)||(f.data(e[g],j,b,!0)||f.data(e[g],k,b,!0))&&f.data(e[g],i,f._Deferred(),!0))h++,l.done(m);m();return d.promise()}});var n=/[\n\t\r]/g,o=/\s+/,p=/\r/g,q=/^(?:button|input)$/i,r=/^(?:button|input|object|select|textarea)$/i,s=/^a(?:rea)?$/i,t=/^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i,u=/\:/,v,w;f.fn.extend({attr:function(a,b){return f.access(this,a,b,!0,f.attr)},removeAttr:function(a){return this.each(function(){f.removeAttr(this,a)})},prop:function(a,b){return f.access(this,a,b,!0,f.prop)},removeProp:function(a){a=f.propFix[a]||a;return this.each(function(){try{this[a]=b,delete this[a]}catch(c){}})},addClass:function(a){if(f.isFunction(a))return this.each(function(b){var c=f(this);c.addClass(a.call(this,b,c.attr("class")||""))});if(a&&typeof a=="string"){var b=(a||"").split(o);for(var c=0,d=this.length;c<d;c++){var e=this[c];if(e.nodeType===1)if(!e.className)e.className=a;else{var g=" "+e.className+" ",h=e.className;for(var i=0,j=b.length;i<j;i++)g.indexOf(" "+b[i]+" ")<0&&(h+=" "+b[i]);e.className=f.trim(h)}}}return this},removeClass:function(a){if(f.isFunction(a))return this.each(function(b){var c=f(this);c.removeClass(a.call(this,b,c.attr("class")))});if(a&&typeof a=="string"||a===b){var c=(a||"").split(o);for(var d=0,e=this.length;d<e;d++){var g=this[d];if(g.nodeType===1&&g.className)if(a){var h=(" "+g.className+" ").replace(n," ");for(var i=0,j=c.length;i<j;i++)h=h.replace(" "+c[i]+" "," ");g.className=f.trim(h)}else g.className=""}}return this},toggleClass:function(a,b){var c=typeof a,d=typeof b=="boolean";if(f.isFunction(a))return this.each(function(c){var d=f(this);d.toggleClass(a.call(this,c,d.attr("class"),b),b)});return this.each(function(){if(c==="string"){var e,g=0,h=f(this),i=b,j=a.split(o);while(e=j[g++])i=d?i:!h.hasClass(e),h[i?"addClass":"removeClass"](e)}else if(c==="undefined"||c==="boolean")this.className&&f._data(this,"__className__",this.className),this.className=this.className||a===!1?"":f._data(this,"__className__")||""})},hasClass:function(a){var b=" "+a+" ";for(var c=0,d=this.length;c<d;c++)if((" "+this[c].className+" ").replace(n," ").indexOf(b)>-1)return!0;return!1},val:function(a){var c,d,e=this[0];if(!arguments.length){if(e){c=f.valHooks[e.nodeName.toLowerCase()]||f.valHooks[e.type];if(c&&"get"in c&&(d=c.get(e,"value"))!==b)return d;return(e.value||"").replace(p,"")}return b}var g=f.isFunction(a);return this.each(function(d){var e=f(this),h;if(this.nodeType===1){g?h=a.call(this,d,e.val()):h=a,h==null?h="":typeof h=="number"?h+="":f.isArray(h)&&(h=f.map(h,function(a){return a==null?"":a+""})),c=f.valHooks[this.nodeName.toLowerCase()]||f.valHooks[this.type];if(!c||!("set"in c)||c.set(this,h,"value")===b)this.value=h}})}}),f.extend({valHooks:{option:{get:function(a){var b=a.attributes.value;return!b||b.specified?a.value:a.text}},select:{get:function(a){var b,c=a.selectedIndex,d=[],e=a.options,g=a.type==="select-one";if(c<0)return null;for(var h=g?c:0,i=g?c+1:e.length;h<i;h++){var j=e[h];if(j.selected&&(f.support.optDisabled?!j.disabled:j.getAttribute("disabled")===null)&&(!j.parentNode.disabled||!f.nodeName(j.parentNode,"optgroup"))){b=f(j).val();if(g)return b;d.push(b)}}if(g&&!d.length&&e.length)return f(e[c]).val();return d},set:function(a,b){var c=f.makeArray(b);f(a).find("option").each(function(){this.selected=f.inArray(f(this).val(),c)>=0}),c.length||(a.selectedIndex=-1);return c}}},attrFn:{val:!0,css:!0,html:!0,text:!0,data:!0,width:!0,height:!0,offset:!0},attrFix:{tabindex:"tabIndex"},attr:function(a,c,d,e){var g=a.nodeType;if(!a||g===3||g===8||g===2)return b;if(e&&c in f.attrFn)return f(a)[c](d);if(!("getAttribute"in a))return f.prop(a,c,d);var h,i,j=g!==1||!f.isXMLDoc(a);c=j&&f.attrFix[c]||c,i=f.attrHooks[c],i||(!t.test(c)||typeof d!="boolean"&&d!==b&&d.toLowerCase()!==c.toLowerCase()?v&&(f.nodeName(a,"form")||u.test(c))&&(i=v):i=w);if(d!==b){if(d===null){f.removeAttr(a,c);return b}if(i&&"set"in i&&j&&(h=i.set(a,d,c))!==b)return h;a.setAttribute(c,""+d);return d}if(i&&"get"in i&&j)return i.get(a,c);h=a.getAttribute(c);return h===null?b:h},removeAttr:function(a,b){var c;a.nodeType===1&&(b=f.attrFix[b]||b,f.support.getSetAttribute?a.removeAttribute(b):(f.attr(a,b,""),a.removeAttributeNode(a.getAttributeNode(b))),t.test(b)&&(c=f.propFix[b]||b)in a&&(a[c]=!1))},attrHooks:{type:{set:function(a,b){if(q.test(a.nodeName)&&a.parentNode)f.error("type property can't be changed");else if(!f.support.radioValue&&b==="radio"&&f.nodeName(a,"input")){var c=a.value;a.setAttribute("type",b),c&&(a.value=c);return b}}},tabIndex:{get:function(a){var c=a.getAttributeNode("tabIndex");return c&&c.specified?parseInt(c.value,10):r.test(a.nodeName)||s.test(a.nodeName)&&a.href?0:b}}},propFix:{tabindex:"tabIndex",readonly:"readOnly","for":"htmlFor","class":"className",maxlength:"maxLength",cellspacing:"cellSpacing",cellpadding:"cellPadding",rowspan:"rowSpan",colspan:"colSpan",usemap:"useMap",frameborder:"frameBorder",contenteditable:"contentEditable"},prop:function(a,c,d){var e=a.nodeType;if(!a||e===3||e===8||e===2)return b;var g,h,i=e!==1||!f.isXMLDoc(a);c=i&&f.propFix[c]||c,h=f.propHooks[c];return d!==b?h&&"set"in h&&(g=h.set(a,d,c))!==b?g:a[c]=d:h&&"get"in h&&(g=h.get(a,c))!==b?g:a[c]},propHooks:{}}),w={get:function(a,c){return a[f.propFix[c]||c]?c.toLowerCase():b},set:function(a,b,c){var d;b===!1?f.removeAttr(a,c):(d=f.propFix[c]||c,d in a&&(a[d]=b),a.setAttribute(c,c.toLowerCase()));return c}},f.attrHooks.value={get:function(a,b){if(v&&f.nodeName(a,"button"))return v.get(a,b);return a.value},set:function(a,b,c){if(v&&f.nodeName(a,"button"))return v.set(a,b,c);a.value=b}},f.support.getSetAttribute||(f.attrFix=f.propFix,v=f.attrHooks.name=f.valHooks.button={get:function(a,c){var d;d=a.getAttributeNode(c);return d&&d.nodeValue!==""?d.nodeValue:b},set:function(a,b,c){var d=a.getAttributeNode(c);if(d){d.nodeValue=b;return b}}},f.each(["width","height"],function(a,b){f.attrHooks[b]=f.extend(f.attrHooks[b],{set:function(a,c){if(c===""){a.setAttribute(b,"auto");return c}}})})),f.support.hrefNormalized||f.each(["href","src","width","height"],function(a,c){f.attrHooks[c]=f.extend(f.attrHooks[c],{get:function(a){var d=a.getAttribute(c,2);return d===null?b:d}})}),f.support.style||(f.attrHooks.style={get:function(a){return a.style.cssText.toLowerCase()||b},set:function(a,b){return a.style.cssText=""+b}}),f.support.optSelected||(f.propHooks.selected=f.extend(f.propHooks.selected,{get:function(a){var b=a.parentNode;b&&(b.selectedIndex,b.parentNode&&b.parentNode.selectedIndex)}})),f.support.checkOn||f.each(["radio","checkbox"],function(){f.valHooks[this]={get:function(a){return a.getAttribute("value")===null?"on":a.value}}}),f.each(["radio","checkbox"],function(){f.valHooks[this]=f.extend(f.valHooks[this],{set:function(a,b){if(f.isArray(b))return a.checked=f.inArray(f(a).val(),b)>=0}})});var x=Object.prototype.hasOwnProperty,y=/\.(.*)$/,z=/^(?:textarea|input|select)$/i,A=/\./g,B=/ /g,C=/[^\w\s.|`]/g,D=function(a){return a.replace(C,"\\$&")};f.event={add:function(a,c,d,e){if(a.nodeType!==3&&a.nodeType!==8){if(d===!1)d=E;else if(!d)return;var g,h;d.handler&&(g=d,d=g.handler),d.guid||(d.guid=f.guid++);var i=f._data(a);if(!i)return;var j=i.events,k=i.handle;j||(i.events=j={}),k||(i.handle=k=function(a){return typeof f!="undefined"&&(!a||f.event.triggered!==a.type)?f.event.handle.apply(k.elem,arguments):b}),k.elem=a,c=c.split(" ");var l,m=0,n;while(l=c[m++]){h=g?f.extend({},g):{handler:d,data:e},l.indexOf(".")>-1?(n=l.split("."),l=n.shift(),h.namespace=n.slice(0).sort().join(".")):(n=[],h.namespace=""),h.type=l,h.guid||(h.guid=d.guid);var o=j[l],p=f.event.special[l]||{};if(!o){o=j[l]=[];if(!p.setup||p.setup.call(a,e,n,k)===!1)a.addEventListener?a.addEventListener(l,k,!1):a.attachEvent&&a.attachEvent("on"+l,k)}p.add&&(p.add.call(a,h),h.handler.guid||(h.handler.guid=d.guid)),o.push(h),f.event.global[l]=!0}a=null}},global:{},remove:function(a,c,d,e){if(a.nodeType!==3&&a.nodeType!==8){d===!1&&(d=E);var g,h,i,j,k=0,l,m,n,o,p,q,r,s=f.hasData(a)&&f._data(a),t=s&&s.events;if(!s||!t)return;c&&c.type&&(d=c.handler,c=c.type);if(!c||typeof c=="string"&&c.charAt(0)==="."){c=c||"";for(h in t)f.event.remove(a,h+c);return}c=c.split(" ");while(h=c[k++]){r=h,q=null,l=h.indexOf(".")<0,m=[],l||(m=h.split("."),h=m.shift(),n=new RegExp("(^|\\.)"+f.map(m.slice(0).sort(),D).join("\\.(?:.*\\.)?")+"(\\.|$)")),p=t[h];if(!p)continue;if(!d){for(j=0;j<p.length;j++){q=p[j];if(l||n.test(q.namespace))f.event.remove(a,r,q.handler,j),p.splice(j--,1)}continue}o=f.event.special[h]||{};for(j=e||0;j<p.length;j++){q=p[j];if(d.guid===q.guid){if(l||n.test(q.namespace))e==null&&p.splice(j--,1),o.remove&&o.remove.call(a,q);if(e!=null)break}}if(p.length===0||e!=null&&p.length===1)(!o.teardown||o.teardown.call(a,m)===!1)&&f.removeEvent(a,h,s.handle),g=null,delete t[h]}if(f.isEmptyObject(t)){var u=s.handle;u&&(u.elem=null),delete s.events,delete s.handle,f.isEmptyObject(s)&&f.removeData(a,b,!0)}}},customEvent:{getData:!0,setData:!0,changeData:!0},trigger:function(c,d,e,g){var h=c.type||c,i=[],j;h.indexOf("!")>=0&&(h=h.slice(0,-1),j=!0),h.indexOf(".")>=0&&(i=h.split("."),h=i.shift(),i.sort());if(!!e&&!f.event.customEvent[h]||!!f.event.global[h]){c=typeof c=="object"?c[f.expando]?c:new f.Event(h,c):new f.Event(h),c.type=h,c.exclusive=j,c.namespace=i.join("."),c.namespace_re=new RegExp("(^|\\.)"+i.join("\\.(?:.*\\.)?")+"(\\.|$)");if(g||!e)c.preventDefault(),c.stopPropagation();if(!e){f.each(f.cache,function(){var a=f.expando,b=this[a];b&&b.events&&b.events[h]&&f.event.trigger(c,d,b.handle.elem -)});return}if(e.nodeType===3||e.nodeType===8)return;c.result=b,c.target=e,d=d?f.makeArray(d):[],d.unshift(c);var k=e,l=h.indexOf(":")<0?"on"+h:"";do{var m=f._data(k,"handle");c.currentTarget=k,m&&m.apply(k,d),l&&f.acceptData(k)&&k[l]&&k[l].apply(k,d)===!1&&(c.result=!1,c.preventDefault()),k=k.parentNode||k.ownerDocument||k===c.target.ownerDocument&&a}while(k&&!c.isPropagationStopped());if(!c.isDefaultPrevented()){var n,o=f.event.special[h]||{};if((!o._default||o._default.call(e.ownerDocument,c)===!1)&&(h!=="click"||!f.nodeName(e,"a"))&&f.acceptData(e)){try{l&&e[h]&&(n=e[l],n&&(e[l]=null),f.event.triggered=h,e[h]())}catch(p){}n&&(e[l]=n),f.event.triggered=b}}return c.result}},handle:function(c){c=f.event.fix(c||a.event);var d=((f._data(this,"events")||{})[c.type]||[]).slice(0),e=!c.exclusive&&!c.namespace,g=Array.prototype.slice.call(arguments,0);g[0]=c,c.currentTarget=this;for(var h=0,i=d.length;h<i;h++){var j=d[h];if(e||c.namespace_re.test(j.namespace)){c.handler=j.handler,c.data=j.data,c.handleObj=j;var k=j.handler.apply(this,g);k!==b&&(c.result=k,k===!1&&(c.preventDefault(),c.stopPropagation()));if(c.isImmediatePropagationStopped())break}}return c.result},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode layerX layerY metaKey newValue offsetX offsetY pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),fix:function(a){if(a[f.expando])return a;var d=a;a=f.Event(d);for(var e=this.props.length,g;e;)g=this.props[--e],a[g]=d[g];a.target||(a.target=a.srcElement||c),a.target.nodeType===3&&(a.target=a.target.parentNode),!a.relatedTarget&&a.fromElement&&(a.relatedTarget=a.fromElement===a.target?a.toElement:a.fromElement);if(a.pageX==null&&a.clientX!=null){var h=a.target.ownerDocument||c,i=h.documentElement,j=h.body;a.pageX=a.clientX+(i&&i.scrollLeft||j&&j.scrollLeft||0)-(i&&i.clientLeft||j&&j.clientLeft||0),a.pageY=a.clientY+(i&&i.scrollTop||j&&j.scrollTop||0)-(i&&i.clientTop||j&&j.clientTop||0)}a.which==null&&(a.charCode!=null||a.keyCode!=null)&&(a.which=a.charCode!=null?a.charCode:a.keyCode),!a.metaKey&&a.ctrlKey&&(a.metaKey=a.ctrlKey),!a.which&&a.button!==b&&(a.which=a.button&1?1:a.button&2?3:a.button&4?2:0);return a},guid:1e8,proxy:f.proxy,special:{ready:{setup:f.bindReady,teardown:f.noop},live:{add:function(a){f.event.add(this,O(a.origType,a.selector),f.extend({},a,{handler:N,guid:a.handler.guid}))},remove:function(a){f.event.remove(this,O(a.origType,a.selector),a)}},beforeunload:{setup:function(a,b,c){f.isWindow(this)&&(this.onbeforeunload=c)},teardown:function(a,b){this.onbeforeunload===b&&(this.onbeforeunload=null)}}}},f.removeEvent=c.removeEventListener?function(a,b,c){a.removeEventListener&&a.removeEventListener(b,c,!1)}:function(a,b,c){a.detachEvent&&a.detachEvent("on"+b,c)},f.Event=function(a,b){if(!this.preventDefault)return new f.Event(a,b);a&&a.type?(this.originalEvent=a,this.type=a.type,this.isDefaultPrevented=a.defaultPrevented||a.returnValue===!1||a.getPreventDefault&&a.getPreventDefault()?F:E):this.type=a,b&&f.extend(this,b),this.timeStamp=f.now(),this[f.expando]=!0},f.Event.prototype={preventDefault:function(){this.isDefaultPrevented=F;var a=this.originalEvent;!a||(a.preventDefault?a.preventDefault():a.returnValue=!1)},stopPropagation:function(){this.isPropagationStopped=F;var a=this.originalEvent;!a||(a.stopPropagation&&a.stopPropagation(),a.cancelBubble=!0)},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=F,this.stopPropagation()},isDefaultPrevented:E,isPropagationStopped:E,isImmediatePropagationStopped:E};var G=function(a){var b=a.relatedTarget;a.type=a.data;try{if(b&&b!==c&&!b.parentNode)return;while(b&&b!==this)b=b.parentNode;b!==this&&f.event.handle.apply(this,arguments)}catch(d){}},H=function(a){a.type=a.data,f.event.handle.apply(this,arguments)};f.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(a,b){f.event.special[a]={setup:function(c){f.event.add(this,b,c&&c.selector?H:G,a)},teardown:function(a){f.event.remove(this,b,a&&a.selector?H:G)}}}),f.support.submitBubbles||(f.event.special.submit={setup:function(a,b){if(!f.nodeName(this,"form"))f.event.add(this,"click.specialSubmit",function(a){var b=a.target,c=b.type;(c==="submit"||c==="image")&&f(b).closest("form").length&&L("submit",this,arguments)}),f.event.add(this,"keypress.specialSubmit",function(a){var b=a.target,c=b.type;(c==="text"||c==="password")&&f(b).closest("form").length&&a.keyCode===13&&L("submit",this,arguments)});else return!1},teardown:function(a){f.event.remove(this,".specialSubmit")}});if(!f.support.changeBubbles){var I,J=function(a){var b=a.type,c=a.value;b==="radio"||b==="checkbox"?c=a.checked:b==="select-multiple"?c=a.selectedIndex>-1?f.map(a.options,function(a){return a.selected}).join("-"):"":f.nodeName(a,"select")&&(c=a.selectedIndex);return c},K=function(c){var d=c.target,e,g;if(!!z.test(d.nodeName)&&!d.readOnly){e=f._data(d,"_change_data"),g=J(d),(c.type!=="focusout"||d.type!=="radio")&&f._data(d,"_change_data",g);if(e===b||g===e)return;if(e!=null||g)c.type="change",c.liveFired=b,f.event.trigger(c,arguments[1],d)}};f.event.special.change={filters:{focusout:K,beforedeactivate:K,click:function(a){var b=a.target,c=f.nodeName(b,"input")?b.type:"";(c==="radio"||c==="checkbox"||f.nodeName(b,"select"))&&K.call(this,a)},keydown:function(a){var b=a.target,c=f.nodeName(b,"input")?b.type:"";(a.keyCode===13&&!f.nodeName(b,"textarea")||a.keyCode===32&&(c==="checkbox"||c==="radio")||c==="select-multiple")&&K.call(this,a)},beforeactivate:function(a){var b=a.target;f._data(b,"_change_data",J(b))}},setup:function(a,b){if(this.type==="file")return!1;for(var c in I)f.event.add(this,c+".specialChange",I[c]);return z.test(this.nodeName)},teardown:function(a){f.event.remove(this,".specialChange");return z.test(this.nodeName)}},I=f.event.special.change.filters,I.focus=I.beforeactivate}f.support.focusinBubbles||f.each({focus:"focusin",blur:"focusout"},function(a,b){function e(a){var c=f.event.fix(a);c.type=b,c.originalEvent={},f.event.trigger(c,null,c.target),c.isDefaultPrevented()&&a.preventDefault()}var d=0;f.event.special[b]={setup:function(){d++===0&&c.addEventListener(a,e,!0)},teardown:function(){--d===0&&c.removeEventListener(a,e,!0)}}}),f.each(["bind","one"],function(a,c){f.fn[c]=function(a,d,e){var g;if(typeof a=="object"){for(var h in a)this[c](h,d,a[h],e);return this}if(arguments.length===2||d===!1)e=d,d=b;c==="one"?(g=function(a){f(this).unbind(a,g);return e.apply(this,arguments)},g.guid=e.guid||f.guid++):g=e;if(a==="unload"&&c!=="one")this.one(a,d,e);else for(var i=0,j=this.length;i<j;i++)f.event.add(this[i],a,g,d);return this}}),f.fn.extend({unbind:function(a,b){if(typeof a=="object"&&!a.preventDefault)for(var c in a)this.unbind(c,a[c]);else for(var d=0,e=this.length;d<e;d++)f.event.remove(this[d],a,b);return this},delegate:function(a,b,c,d){return this.live(b,c,d,a)},undelegate:function(a,b,c){return arguments.length===0?this.unbind("live"):this.die(b,null,c,a)},trigger:function(a,b){return this.each(function(){f.event.trigger(a,b,this)})},triggerHandler:function(a,b){if(this[0])return f.event.trigger(a,b,this[0],!0)},toggle:function(a){var b=arguments,c=a.guid||f.guid++,d=0,e=function(c){var e=(f.data(this,"lastToggle"+a.guid)||0)%d;f.data(this,"lastToggle"+a.guid,e+1),c.preventDefault();return b[e].apply(this,arguments)||!1};e.guid=c;while(d<b.length)b[d++].guid=c;return this.click(e)},hover:function(a,b){return this.mouseenter(a).mouseleave(b||a)}});var M={focus:"focusin",blur:"focusout",mouseenter:"mouseover",mouseleave:"mouseout"};f.each(["live","die"],function(a,c){f.fn[c]=function(a,d,e,g){var h,i=0,j,k,l,m=g||this.selector,n=g?this:f(this.context);if(typeof a=="object"&&!a.preventDefault){for(var o in a)n[c](o,d,a[o],m);return this}if(c==="die"&&!a&&g&&g.charAt(0)==="."){n.unbind(g);return this}if(d===!1||f.isFunction(d))e=d||E,d=b;a=(a||"").split(" ");while((h=a[i++])!=null){j=y.exec(h),k="",j&&(k=j[0],h=h.replace(y,""));if(h==="hover"){a.push("mouseenter"+k,"mouseleave"+k);continue}l=h,M[h]?(a.push(M[h]+k),h=h+k):h=(M[h]||h)+k;if(c==="live")for(var p=0,q=n.length;p<q;p++)f.event.add(n[p],"live."+O(h,m),{data:d,selector:m,handler:e,origType:h,origHandler:e,preType:l});else n.unbind("live."+O(h,m),e)}return this}}),f.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error".split(" "),function(a,b){f.fn[b]=function(a,c){c==null&&(c=a,a=null);return arguments.length>0?this.bind(b,a,c):this.trigger(b)},f.attrFn&&(f.attrFn[b]=!0)}),function(){function u(a,b,c,d,e,f){for(var g=0,h=d.length;g<h;g++){var i=d[g];if(i){var j=!1;i=i[a];while(i){if(i.sizcache===c){j=d[i.sizset];break}if(i.nodeType===1){f||(i.sizcache=c,i.sizset=g);if(typeof b!="string"){if(i===b){j=!0;break}}else if(k.filter(b,[i]).length>0){j=i;break}}i=i[a]}d[g]=j}}}function t(a,b,c,d,e,f){for(var g=0,h=d.length;g<h;g++){var i=d[g];if(i){var j=!1;i=i[a];while(i){if(i.sizcache===c){j=d[i.sizset];break}i.nodeType===1&&!f&&(i.sizcache=c,i.sizset=g);if(i.nodeName.toLowerCase()===b){j=i;break}i=i[a]}d[g]=j}}}var a=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,d=0,e=Object.prototype.toString,g=!1,h=!0,i=/\\/g,j=/\W/;[0,0].sort(function(){h=!1;return 0});var k=function(b,d,f,g){f=f||[],d=d||c;var h=d;if(d.nodeType!==1&&d.nodeType!==9)return[];if(!b||typeof b!="string")return f;var i,j,n,o,q,r,s,t,u=!0,w=k.isXML(d),x=[],y=b;do{a.exec(""),i=a.exec(y);if(i){y=i[3],x.push(i[1]);if(i[2]){o=i[3];break}}}while(i);if(x.length>1&&m.exec(b))if(x.length===2&&l.relative[x[0]])j=v(x[0]+x[1],d);else{j=l.relative[x[0]]?[d]:k(x.shift(),d);while(x.length)b=x.shift(),l.relative[b]&&(b+=x.shift()),j=v(b,j)}else{!g&&x.length>1&&d.nodeType===9&&!w&&l.match.ID.test(x[0])&&!l.match.ID.test(x[x.length-1])&&(q=k.find(x.shift(),d,w),d=q.expr?k.filter(q.expr,q.set)[0]:q.set[0]);if(d){q=g?{expr:x.pop(),set:p(g)}:k.find(x.pop(),x.length===1&&(x[0]==="~"||x[0]==="+")&&d.parentNode?d.parentNode:d,w),j=q.expr?k.filter(q.expr,q.set):q.set,x.length>0?n=p(j):u=!1;while(x.length)r=x.pop(),s=r,l.relative[r]?s=x.pop():r="",s==null&&(s=d),l.relative[r](n,s,w)}else n=x=[]}n||(n=j),n||k.error(r||b);if(e.call(n)==="[object Array]")if(!u)f.push.apply(f,n);else if(d&&d.nodeType===1)for(t=0;n[t]!=null;t++)n[t]&&(n[t]===!0||n[t].nodeType===1&&k.contains(d,n[t]))&&f.push(j[t]);else for(t=0;n[t]!=null;t++)n[t]&&n[t].nodeType===1&&f.push(j[t]);else p(n,f);o&&(k(o,h,f,g),k.uniqueSort(f));return f};k.uniqueSort=function(a){if(r){g=h,a.sort(r);if(g)for(var b=1;b<a.length;b++)a[b]===a[b-1]&&a.splice(b--,1)}return a},k.matches=function(a,b){return k(a,null,null,b)},k.matchesSelector=function(a,b){return k(b,null,null,[a]).length>0},k.find=function(a,b,c){var d;if(!a)return[];for(var e=0,f=l.order.length;e<f;e++){var g,h=l.order[e];if(g=l.leftMatch[h].exec(a)){var j=g[1];g.splice(1,1);if(j.substr(j.length-1)!=="\\"){g[1]=(g[1]||"").replace(i,""),d=l.find[h](g,b,c);if(d!=null){a=a.replace(l.match[h],"");break}}}}d||(d=typeof b.getElementsByTagName!="undefined"?b.getElementsByTagName("*"):[]);return{set:d,expr:a}},k.filter=function(a,c,d,e){var f,g,h=a,i=[],j=c,m=c&&c[0]&&k.isXML(c[0]);while(a&&c.length){for(var n in l.filter)if((f=l.leftMatch[n].exec(a))!=null&&f[2]){var o,p,q=l.filter[n],r=f[1];g=!1,f.splice(1,1);if(r.substr(r.length-1)==="\\")continue;j===i&&(i=[]);if(l.preFilter[n]){f=l.preFilter[n](f,j,d,i,e,m);if(!f)g=o=!0;else if(f===!0)continue}if(f)for(var s=0;(p=j[s])!=null;s++)if(p){o=q(p,f,s,j);var t=e^!!o;d&&o!=null?t?g=!0:j[s]=!1:t&&(i.push(p),g=!0)}if(o!==b){d||(j=i),a=a.replace(l.match[n],"");if(!g)return[];break}}if(a===h)if(g==null)k.error(a);else break;h=a}return j},k.error=function(a){throw"Syntax error, unrecognized expression: "+a};var l=k.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,CLASS:/\.((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF\-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF\-]|\\.)+)\s*(?:(\S?=)\s*(?:(['"])(.*?)\3|(#?(?:[\w\u00c0-\uFFFF\-]|\\.)*)|)|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*\-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\(\s*(even|odd|(?:[+\-]?\d+|(?:[+\-]?\d*)?n\s*(?:[+\-]\s*\d+)?))\s*\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^\-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF\-]|\\.)+)(?:\((['"]?)((?:\([^\)]+\)|[^\(\)]*)+)\2\))?/},leftMatch:{},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(a){return a.getAttribute("href")},type:function(a){return a.getAttribute("type")}},relative:{"+":function(a,b){var c=typeof b=="string",d=c&&!j.test(b),e=c&&!d;d&&(b=b.toLowerCase());for(var f=0,g=a.length,h;f<g;f++)if(h=a[f]){while((h=h.previousSibling)&&h.nodeType!==1);a[f]=e||h&&h.nodeName.toLowerCase()===b?h||!1:h===b}e&&k.filter(b,a,!0)},">":function(a,b){var c,d=typeof b=="string",e=0,f=a.length;if(d&&!j.test(b)){b=b.toLowerCase();for(;e<f;e++){c=a[e];if(c){var g=c.parentNode;a[e]=g.nodeName.toLowerCase()===b?g:!1}}}else{for(;e<f;e++)c=a[e],c&&(a[e]=d?c.parentNode:c.parentNode===b);d&&k.filter(b,a,!0)}},"":function(a,b,c){var e,f=d++,g=u;typeof b=="string"&&!j.test(b)&&(b=b.toLowerCase(),e=b,g=t),g("parentNode",b,f,a,e,c)},"~":function(a,b,c){var e,f=d++,g=u;typeof b=="string"&&!j.test(b)&&(b=b.toLowerCase(),e=b,g=t),g("previousSibling",b,f,a,e,c)}},find:{ID:function(a,b,c){if(typeof b.getElementById!="undefined"&&!c){var d=b.getElementById(a[1]);return d&&d.parentNode?[d]:[]}},NAME:function(a,b){if(typeof b.getElementsByName!="undefined"){var c=[],d=b.getElementsByName(a[1]);for(var e=0,f=d.length;e<f;e++)d[e].getAttribute("name")===a[1]&&c.push(d[e]);return c.length===0?null:c}},TAG:function(a,b){if(typeof b.getElementsByTagName!="undefined")return b.getElementsByTagName(a[1])}},preFilter:{CLASS:function(a,b,c,d,e,f){a=" "+a[1].replace(i,"")+" ";if(f)return a;for(var g=0,h;(h=b[g])!=null;g++)h&&(e^(h.className&&(" "+h.className+" ").replace(/[\t\n\r]/g," ").indexOf(a)>=0)?c||d.push(h):c&&(b[g]=!1));return!1},ID:function(a){return a[1].replace(i,"")},TAG:function(a,b){return a[1].replace(i,"").toLowerCase()},CHILD:function(a){if(a[1]==="nth"){a[2]||k.error(a[0]),a[2]=a[2].replace(/^\+|\s*/g,"");var b=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(a[2]==="even"&&"2n"||a[2]==="odd"&&"2n+1"||!/\D/.test(a[2])&&"0n+"+a[2]||a[2]);a[2]=b[1]+(b[2]||1)-0,a[3]=b[3]-0}else a[2]&&k.error(a[0]);a[0]=d++;return a},ATTR:function(a,b,c,d,e,f){var g=a[1]=a[1].replace(i,"");!f&&l.attrMap[g]&&(a[1]=l.attrMap[g]),a[4]=(a[4]||a[5]||"").replace(i,""),a[2]==="~="&&(a[4]=" "+a[4]+" ");return a},PSEUDO:function(b,c,d,e,f){if(b[1]==="not")if((a.exec(b[3])||"").length>1||/^\w/.test(b[3]))b[3]=k(b[3],null,null,c);else{var g=k.filter(b[3],c,d,!0^f);d||e.push.apply(e,g);return!1}else if(l.match.POS.test(b[0])||l.match.CHILD.test(b[0]))return!0;return b},POS:function(a){a.unshift(!0);return a}},filters:{enabled:function(a){return a.disabled===!1&&a.type!=="hidden"},disabled:function(a){return a.disabled===!0},checked:function(a){return a.checked===!0},selected:function(a){a.parentNode&&a.parentNode.selectedIndex;return a.selected===!0},parent:function(a){return!!a.firstChild},empty:function(a){return!a.firstChild},has:function(a,b,c){return!!k(c[3],a).length},header:function(a){return/h\d/i.test(a.nodeName)},text:function(a){var b=a.getAttribute("type"),c=a.type;return a.nodeName.toLowerCase()==="input"&&"text"===c&&(b===c||b===null)},radio:function(a){return a.nodeName.toLowerCase()==="input"&&"radio"===a.type},checkbox:function(a){return a.nodeName.toLowerCase()==="input"&&"checkbox"===a.type},file:function(a){return a.nodeName.toLowerCase()==="input"&&"file"===a.type},password:function(a){return a.nodeName.toLowerCase()==="input"&&"password"===a.type},submit:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"submit"===a.type},image:function(a){return a.nodeName.toLowerCase()==="input"&&"image"===a.type},reset:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"reset"===a.type},button:function(a){var b=a.nodeName.toLowerCase();return b==="input"&&"button"===a.type||b==="button"},input:function(a){return/input|select|textarea|button/i.test(a.nodeName)},focus:function(a){return a===a.ownerDocument.activeElement}},setFilters:{first:function(a,b){return b===0},last:function(a,b,c,d){return b===d.length-1},even:function(a,b){return b%2===0},odd:function(a,b){return b%2===1},lt:function(a,b,c){return b<c[3]-0},gt:function(a,b,c){return b>c[3]-0},nth:function(a,b,c){return c[3]-0===b},eq:function(a,b,c){return c[3]-0===b}},filter:{PSEUDO:function(a,b,c,d){var e=b[1],f=l.filters[e];if(f)return f(a,c,b,d);if(e==="contains")return(a.textContent||a.innerText||k.getText([a])||"").indexOf(b[3])>=0;if(e==="not"){var g=b[3];for(var h=0,i=g.length;h<i;h++)if(g[h]===a)return!1;return!0}k.error(e)},CHILD:function(a,b){var c=b[1],d=a;switch(c){case"only":case"first":while(d=d.previousSibling)if(d.nodeType===1)return!1;if(c==="first")return!0;d=a;case"last":while(d=d.nextSibling)if(d.nodeType===1)return!1;return!0;case"nth":var e=b[2],f=b[3];if(e===1&&f===0)return!0;var g=b[0],h=a.parentNode;if(h&&(h.sizcache!==g||!a.nodeIndex)){var i=0;for(d=h.firstChild;d;d=d.nextSibling)d.nodeType===1&&(d.nodeIndex=++i);h.sizcache=g}var j=a.nodeIndex-f;return e===0?j===0:j%e===0&&j/e>=0}},ID:function(a,b){return a.nodeType===1&&a.getAttribute("id")===b},TAG:function(a,b){return b==="*"&&a.nodeType===1||a.nodeName.toLowerCase()===b},CLASS:function(a,b){return(" "+(a.className||a.getAttribute("class"))+" ").indexOf(b)>-1},ATTR:function(a,b){var c=b[1],d=l.attrHandle[c]?l.attrHandle[c](a):a[c]!=null?a[c]:a.getAttribute(c),e=d+"",f=b[2],g=b[4];return d==null?f==="!=":f==="="?e===g:f==="*="?e.indexOf(g)>=0:f==="~="?(" "+e+" ").indexOf(g)>=0:g?f==="!="?e!==g:f==="^="?e.indexOf(g)===0:f==="$="?e.substr(e.length-g.length)===g:f==="|="?e===g||e.substr(0,g.length+1)===g+"-":!1:e&&d!==!1},POS:function(a,b,c,d){var e=b[2],f=l.setFilters[e];if(f)return f(a,c,b,d)}}},m=l.match.POS,n=function(a,b){return"\\"+(b-0+1)};for(var o in l.match)l.match[o]=new RegExp(l.match[o].source+/(?![^\[]*\])(?![^\(]*\))/.source),l.leftMatch[o]=new RegExp(/(^(?:.|\r|\n)*?)/.source+l.match[o].source.replace(/\\(\d+)/g,n));var p=function(a,b){a=Array.prototype.slice.call(a,0);if(b){b.push.apply(b,a);return b}return a};try{Array.prototype.slice.call(c.documentElement.childNodes,0)[0].nodeType}catch(q){p=function(a,b){var c=0,d=b||[];if(e.call(a)==="[object Array]")Array.prototype.push.apply(d,a);else if(typeof a.length=="number")for(var f=a.length;c<f;c++)d.push(a[c]);else for(;a[c];c++)d.push(a[c]);return d}}var r,s;c.documentElement.compareDocumentPosition?r=function(a,b){if(a===b){g=!0;return 0}if(!a.compareDocumentPosition||!b.compareDocumentPosition)return a.compareDocumentPosition?-1:1;return a.compareDocumentPosition(b)&4?-1:1}:(r=function(a,b){if(a===b){g=!0;return 0}if(a.sourceIndex&&b.sourceIndex)return a.sourceIndex-b.sourceIndex;var c,d,e=[],f=[],h=a.parentNode,i=b.parentNode,j=h;if(h===i)return s(a,b);if(!h)return-1;if(!i)return 1;while(j)e.unshift(j),j=j.parentNode;j=i;while(j)f.unshift(j),j=j.parentNode;c=e.length,d=f.length;for(var k=0;k<c&&k<d;k++)if(e[k]!==f[k])return s(e[k],f[k]);return k===c?s(a,f[k],-1):s(e[k],b,1)},s=function(a,b,c){if(a===b)return c;var d=a.nextSibling;while(d){if(d===b)return-1;d=d.nextSibling}return 1}),k.getText=function(a){var b="",c;for(var d=0;a[d];d++)c=a[d],c.nodeType===3||c.nodeType===4?b+=c.nodeValue:c.nodeType!==8&&(b+=k.getText(c.childNodes));return b},function(){var a=c.createElement("div"),d="script"+(new Date).getTime(),e=c.documentElement;a.innerHTML="<a name='"+d+"'/>",e.insertBefore(a,e.firstChild),c.getElementById(d)&&(l.find.ID=function(a,c,d){if(typeof c.getElementById!="undefined"&&!d){var e=c.getElementById(a[1]);return e?e.id===a[1]||typeof e.getAttributeNode!="undefined"&&e.getAttributeNode("id").nodeValue===a[1]?[e]:b:[]}},l.filter.ID=function(a,b){var c=typeof a.getAttributeNode!="undefined"&&a.getAttributeNode("id");return a.nodeType===1&&c&&c.nodeValue===b}),e.removeChild(a),e=a=null}(),function(){var a=c.createElement("div");a.appendChild(c.createComment("")),a.getElementsByTagName("*").length>0&&(l.find.TAG=function(a,b){var c=b.getElementsByTagName(a[1]);if(a[1]==="*"){var d=[];for(var e=0;c[e];e++)c[e].nodeType===1&&d.push(c[e]);c=d}return c}),a.innerHTML="<a href='#'></a>",a.firstChild&&typeof a.firstChild.getAttribute!="undefined"&&a.firstChild.getAttribute("href")!=="#"&&(l.attrHandle.href=function(a){return a.getAttribute("href",2)}),a=null}(),c.querySelectorAll&&function(){var a=k,b=c.createElement("div"),d="__sizzle__";b.innerHTML="<p class='TEST'></p>";if(!b.querySelectorAll||b.querySelectorAll(".TEST").length!==0){k=function(b,e,f,g){e=e||c;if(!g&&!k.isXML(e)){var h=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b);if(h&&(e.nodeType===1||e.nodeType===9)){if(h[1])return p(e.getElementsByTagName(b),f);if(h[2]&&l.find.CLASS&&e.getElementsByClassName)return p(e.getElementsByClassName(h[2]),f)}if(e.nodeType===9){if(b==="body"&&e.body)return p([e.body],f);if(h&&h[3]){var i=e.getElementById(h[3]);if(!i||!i.parentNode)return p([],f);if(i.id===h[3])return p([i],f)}try{return p(e.querySelectorAll(b),f)}catch(j){}}else if(e.nodeType===1&&e.nodeName.toLowerCase()!=="object"){var m=e,n=e.getAttribute("id"),o=n||d,q=e.parentNode,r=/^\s*[+~]/.test(b);n?o=o.replace(/'/g,"\\$&"):e.setAttribute("id",o),r&&q&&(e=e.parentNode);try{if(!r||q)return p(e.querySelectorAll("[id='"+o+"'] "+b),f)}catch(s){}finally{n||m.removeAttribute("id")}}}return a(b,e,f,g)};for(var e in a)k[e]=a[e];b=null}}(),function(){var a=c.documentElement,b=a.matchesSelector||a.mozMatchesSelector||a.webkitMatchesSelector||a.msMatchesSelector;if(b){var d=!b.call(c.createElement("div"),"div"),e=!1;try{b.call(c.documentElement,"[test!='']:sizzle")}catch(f){e=!0}k.matchesSelector=function(a,c){c=c.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!k.isXML(a))try{if(e||!l.match.PSEUDO.test(c)&&!/!=/.test(c)){var f=b.call(a,c);if(f||!d||a.document&&a.document.nodeType!==11)return f}}catch(g){}return k(c,null,null,[a]).length>0}}}(),function(){var a=c.createElement("div");a.innerHTML="<div class='test e'></div><div class='test'></div>";if(!!a.getElementsByClassName&&a.getElementsByClassName("e").length!==0){a.lastChild.className="e";if(a.getElementsByClassName("e").length===1)return;l.order.splice(1,0,"CLASS"),l.find.CLASS=function(a,b,c){if(typeof b.getElementsByClassName!="undefined"&&!c)return b.getElementsByClassName(a[1])},a=null}}(),c.documentElement.contains?k.contains=function(a,b){return a!==b&&(a.contains?a.contains(b):!0)}:c.documentElement.compareDocumentPosition?k.contains=function(a,b){return!!(a.compareDocumentPosition(b)&16)}:k.contains=function(){return!1},k.isXML=function(a){var b=(a?a.ownerDocument||a:0).documentElement;return b?b.nodeName!=="HTML":!1};var v=function(a,b){var c,d=[],e="",f=b.nodeType?[b]:b;while(c=l.match.PSEUDO.exec(a))e+=c[0],a=a.replace(l.match.PSEUDO,"");a=l.relative[a]?a+"*":a;for(var g=0,h=f.length;g<h;g++)k(a,f[g],d);return k.filter(e,d)};f.find=k,f.expr=k.selectors,f.expr[":"]=f.expr.filters,f.unique=k.uniqueSort,f.text=k.getText,f.isXMLDoc=k.isXML,f.contains=k.contains}();var P=/Until$/,Q=/^(?:parents|prevUntil|prevAll)/,R=/,/,S=/^.[^:#\[\.,]*$/,T=Array.prototype.slice,U=f.expr.match.POS,V={children:!0,contents:!0,next:!0,prev:!0};f.fn.extend({find:function(a){var b=this,c,d;if(typeof a!="string")return f(a).filter(function(){for(c=0,d=b.length;c<d;c++)if(f.contains(b[c],this))return!0});var e=this.pushStack("","find",a),g,h,i;for(c=0,d=this.length;c<d;c++){g=e.length,f.find(a,this[c],e);if(c>0)for(h=g;h<e.length;h++)for(i=0;i<g;i++)if(e[i]===e[h]){e.splice(h--,1);break}}return e},has:function(a){var b=f(a);return this.filter(function(){for(var a=0,c=b.length;a<c;a++)if(f.contains(this,b[a]))return!0})},not:function(a){return this.pushStack(X(this,a,!1),"not",a)},filter:function(a){return this.pushStack(X(this,a,!0),"filter",a)},is:function(a){return!!a&&(typeof a=="string"?f.filter(a,this).length>0:this.filter(a).length>0)},closest:function(a,b){var c=[],d,e,g=this[0];if(f.isArray(a)){var h,i,j={},k=1;if(g&&a.length){for(d=0,e=a.length;d<e;d++)i=a[d],j[i]||(j[i]=U.test(i)?f(i,b||this.context):i);while(g&&g.ownerDocument&&g!==b){for(i in j)h=j[i],(h.jquery?h.index(g)>-1:f(g).is(h))&&c.push({selector:i,elem:g,level:k});g=g.parentNode,k++}}return c}var l=U.test(a)||typeof a!="string"?f(a,b||this.context):0;for(d=0,e=this.length;d<e;d++){g=this[d];while(g){if(l?l.index(g)>-1:f.find.matchesSelector(g,a)){c.push(g);break}g=g.parentNode;if(!g||!g.ownerDocument||g===b||g.nodeType===11)break}}c=c.length>1?f.unique(c):c;return this.pushStack(c,"closest",a)},index:function(a){if(!a||typeof a=="string")return f.inArray(this[0],a?f(a):this.parent().children());return f.inArray(a.jquery?a[0]:a,this)},add:function(a,b){var c=typeof a=="string"?f(a,b):f.makeArray(a&&a.nodeType?[a]:a),d=f.merge(this.get(),c);return this.pushStack(W(c[0])||W(d[0])?d:f.unique(d))},andSelf:function(){return this.add(this.prevObject)}}),f.each({parent:function(a){var b=a.parentNode;return b&&b.nodeType!==11?b:null},parents:function(a){return f.dir(a,"parentNode")},parentsUntil:function(a,b,c){return f.dir(a,"parentNode",c)},next:function(a){return f.nth(a,2,"nextSibling")},prev:function(a){return f.nth(a,2,"previousSibling")},nextAll:function(a){return f.dir(a,"nextSibling")},prevAll:function(a){return f.dir(a,"previousSibling")},nextUntil:function(a,b,c){return f.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return f.dir(a,"previousSibling",c)},siblings:function(a){return f.sibling(a.parentNode.firstChild,a)},children:function(a){return f.sibling(a.firstChild)},contents:function(a){return f.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:f.makeArray(a.childNodes)}},function(a,b){f.fn[a]=function(c,d){var e=f.map(this,b,c),g=T.call(arguments);P.test(a)||(d=c),d&&typeof d=="string"&&(e=f.filter(d,e)),e=this.length>1&&!V[a]?f.unique(e):e,(this.length>1||R.test(d))&&Q.test(a)&&(e=e.reverse());return this.pushStack(e,a,g.join(","))}}),f.extend({filter:function(a,b,c){c&&(a=":not("+a+")");return b.length===1?f.find.matchesSelector(b[0],a)?[b[0]]:[]:f.find.matches(a,b)},dir:function(a,c,d){var e=[],g=a[c];while(g&&g.nodeType!==9&&(d===b||g.nodeType!==1||!f(g).is(d)))g.nodeType===1&&e.push(g),g=g[c];return e},nth:function(a,b,c,d){b=b||1;var e=0;for(;a;a=a[c])if(a.nodeType===1&&++e===b)break;return a},sibling:function(a,b){var c=[];for(;a;a=a.nextSibling)a.nodeType===1&&a!==b&&c.push(a);return c}});var Y=/ jQuery\d+="(?:\d+|null)"/g,Z=/^\s+/,$=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,_=/<([\w:]+)/,ba=/<tbody/i,bb=/<|&#?\w+;/,bc=/<(?:script|object|embed|option|style)/i,bd=/checked\s*(?:[^=]|=\s*.checked.)/i,be=/\/(java|ecma)script/i,bf=/^\s*<!(?:\[CDATA\[|\-\-)/,bg={option:[1,"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],area:[1,"<map>","</map>"],_default:[0,"",""]};bg.optgroup=bg.option,bg.tbody=bg.tfoot=bg.colgroup=bg.caption=bg.thead,bg.th=bg.td,f.support.htmlSerialize||(bg._default=[1,"div<div>","</div>"]),f.fn.extend({text:function(a){if(f.isFunction(a))return this.each(function(b){var c=f(this);c.text(a.call(this,b,c.text()))});if(typeof a!="object"&&a!==b)return this.empty().append((this[0]&&this[0].ownerDocument||c).createTextNode(a));return f.text(this)},wrapAll:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapAll(a.call(this,b))});if(this[0]){var b=f(a,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstChild&&a.firstChild.nodeType===1)a=a.firstChild;return a}).append(this)}return this},wrapInner:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapInner(a.call(this,b))});return this.each(function(){var b=f(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){return this.each(function(){f(this).wrapAll(a)})},unwrap:function(){return this.parent().each(function(){f.nodeName(this,"body")||f(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.appendChild(a)})},prepend:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this)});if(arguments.length){var a=f(arguments[0]);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this.nextSibling)});if(arguments.length){var a=this.pushStack(this,"after",arguments);a.push.apply(a,f(arguments[0]).toArray());return a}},remove:function(a,b){for(var c=0,d;(d=this[c])!=null;c++)if(!a||f.filter(a,[d]).length)!b&&d.nodeType===1&&(f.cleanData(d.getElementsByTagName("*")),f.cleanData([d])),d.parentNode&&d.parentNode.removeChild(d);return this},empty:function(){for(var a=0,b;(b=this[a])!=null;a++){b.nodeType===1&&f.cleanData(b.getElementsByTagName("*"));while(b.firstChild)b.removeChild(b.firstChild)}return this},clone:function(a,b){a=a==null?!1:a,b=b==null?a:b;return this.map(function(){return f.clone(this,a,b)})},html:function(a){if(a===b)return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(Y,""):null;if(typeof a=="string"&&!bc.test(a)&&(f.support.leadingWhitespace||!Z.test(a))&&!bg[(_.exec(a)||["",""])[1].toLowerCase()]){a=a.replace($,"<$1></$2>");try{for(var c=0,d=this.length;c<d;c++)this[c].nodeType===1&&(f.cleanData(this[c].getElementsByTagName("*")),this[c].innerHTML=a)}catch(e){this.empty().append(a)}}else f.isFunction(a)?this.each(function(b){var c=f(this);c.html(a.call(this,b,c.html()))}):this.empty().append(a);return this},replaceWith:function(a){if(this[0]&&this[0].parentNode){if(f.isFunction(a))return this.each(function(b){var c=f(this),d=c.html();c.replaceWith(a.call(this,b,d))});typeof a!="string"&&(a=f(a).detach());return this.each(function(){var b=this.nextSibling,c=this.parentNode;f(this).remove(),b?f(b).before(a):f(c).append(a)})}return this.length?this.pushStack(f(f.isFunction(a)?a():a),"replaceWith",a):this},detach:function(a){return this.remove(a,!0)},domManip:function(a,c,d){var e,g,h,i,j=a[0],k=[];if(!f.support.checkClone&&arguments.length===3&&typeof j=="string"&&bd.test(j))return this.each(function(){f(this).domManip(a,c,d,!0)});if(f.isFunction(j))return this.each(function(e){var g=f(this);a[0]=j.call(this,e,c?g.html():b),g.domManip(a,c,d)});if(this[0]){i=j&&j.parentNode,f.support.parentNode&&i&&i.nodeType===11&&i.childNodes.length===this.length?e={fragment:i}:e=f.buildFragment(a,this,k),h=e.fragment,h.childNodes.length===1?g=h=h.firstChild:g=h.firstChild;if(g){c=c&&f.nodeName(g,"tr");for(var l=0,m=this.length,n=m-1;l<m;l++)d.call(c?bh(this[l],g):this[l],e.cacheable||m>1&&l<n?f.clone(h,!0,!0):h)}k.length&&f.each(k,bn)}return this}}),f.buildFragment=function(a,b,d){var e,g,h,i=b&&b[0]?b[0].ownerDocument||b[0]:c;a.length===1&&typeof a[0]=="string"&&a[0].length<512&&i===c&&a[0].charAt(0)==="<"&&!bc.test(a[0])&&(f.support.checkClone||!bd.test(a[0]))&&(g=!0,h=f.fragments[a[0]],h&&h!==1&&(e=h)),e||(e=i.createDocumentFragment(),f.clean(a,i,e,d)),g&&(f.fragments[a[0]]=h?e:1);return{fragment:e,cacheable:g}},f.fragments={},f.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){f.fn[a]=function(c){var d=[],e=f(c),g=this.length===1&&this[0].parentNode;if(g&&g.nodeType===11&&g.childNodes.length===1&&e.length===1){e[b](this[0]);return this}for(var h=0,i=e.length;h<i;h++){var j=(h>0?this.clone(!0):this).get();f(e[h])[b](j),d=d.concat(j)}return this.pushStack(d,a,e.selector)}}),f.extend({clone:function(a,b,c){var d=a.cloneNode(!0),e,g,h;if((!f.support.noCloneEvent||!f.support.noCloneChecked)&&(a.nodeType===1||a.nodeType===11)&&!f.isXMLDoc(a)){bj(a,d),e=bk(a),g=bk(d);for(h=0;e[h];++h)bj(e[h],g[h])}if(b){bi(a,d);if(c){e=bk(a),g=bk(d);for(h=0;e[h];++h)bi(e[h],g[h])}}return d},clean:function(a,b,d,e){var g;b=b||c,typeof b.createElement=="undefined"&&(b=b.ownerDocument|| -b[0]&&b[0].ownerDocument||c);var h=[],i;for(var j=0,k;(k=a[j])!=null;j++){typeof k=="number"&&(k+="");if(!k)continue;if(typeof k=="string")if(!bb.test(k))k=b.createTextNode(k);else{k=k.replace($,"<$1></$2>");var l=(_.exec(k)||["",""])[1].toLowerCase(),m=bg[l]||bg._default,n=m[0],o=b.createElement("div");o.innerHTML=m[1]+k+m[2];while(n--)o=o.lastChild;if(!f.support.tbody){var p=ba.test(k),q=l==="table"&&!p?o.firstChild&&o.firstChild.childNodes:m[1]==="<table>"&&!p?o.childNodes:[];for(i=q.length-1;i>=0;--i)f.nodeName(q[i],"tbody")&&!q[i].childNodes.length&&q[i].parentNode.removeChild(q[i])}!f.support.leadingWhitespace&&Z.test(k)&&o.insertBefore(b.createTextNode(Z.exec(k)[0]),o.firstChild),k=o.childNodes}var r;if(!f.support.appendChecked)if(k[0]&&typeof (r=k.length)=="number")for(i=0;i<r;i++)bm(k[i]);else bm(k);k.nodeType?h.push(k):h=f.merge(h,k)}if(d){g=function(a){return!a.type||be.test(a.type)};for(j=0;h[j];j++)if(e&&f.nodeName(h[j],"script")&&(!h[j].type||h[j].type.toLowerCase()==="text/javascript"))e.push(h[j].parentNode?h[j].parentNode.removeChild(h[j]):h[j]);else{if(h[j].nodeType===1){var s=f.grep(h[j].getElementsByTagName("script"),g);h.splice.apply(h,[j+1,0].concat(s))}d.appendChild(h[j])}}return h},cleanData:function(a){var b,c,d=f.cache,e=f.expando,g=f.event.special,h=f.support.deleteExpando;for(var i=0,j;(j=a[i])!=null;i++){if(j.nodeName&&f.noData[j.nodeName.toLowerCase()])continue;c=j[f.expando];if(c){b=d[c]&&d[c][e];if(b&&b.events){for(var k in b.events)g[k]?f.event.remove(j,k):f.removeEvent(j,k,b.handle);b.handle&&(b.handle.elem=null)}h?delete j[f.expando]:j.removeAttribute&&j.removeAttribute(f.expando),delete d[c]}}}});var bo=/alpha\([^)]*\)/i,bp=/opacity=([^)]*)/,bq=/-([a-z])/ig,br=/([A-Z]|^ms)/g,bs=/^-?\d+(?:px)?$/i,bt=/^-?\d/,bu=/^[+\-]=/,bv=/[^+\-\.\de]+/g,bw={position:"absolute",visibility:"hidden",display:"block"},bx=["Left","Right"],by=["Top","Bottom"],bz,bA,bB,bC=function(a,b){return b.toUpperCase()};f.fn.css=function(a,c){if(arguments.length===2&&c===b)return this;return f.access(this,a,c,!0,function(a,c,d){return d!==b?f.style(a,c,d):f.css(a,c)})},f.extend({cssHooks:{opacity:{get:function(a,b){if(b){var c=bz(a,"opacity","opacity");return c===""?"1":c}return a.style.opacity}}},cssNumber:{zIndex:!0,fontWeight:!0,opacity:!0,zoom:!0,lineHeight:!0,widows:!0,orphans:!0},cssProps:{"float":f.support.cssFloat?"cssFloat":"styleFloat"},style:function(a,c,d,e){if(!!a&&a.nodeType!==3&&a.nodeType!==8&&!!a.style){var g,h,i=f.camelCase(c),j=a.style,k=f.cssHooks[i];c=f.cssProps[i]||i;if(d===b){if(k&&"get"in k&&(g=k.get(a,!1,e))!==b)return g;return j[c]}h=typeof d;if(h==="number"&&isNaN(d)||d==null)return;h==="string"&&bu.test(d)&&(d=+d.replace(bv,"")+parseFloat(f.css(a,c))),h==="number"&&!f.cssNumber[i]&&(d+="px");if(!k||!("set"in k)||(d=k.set(a,d))!==b)try{j[c]=d}catch(l){}}},css:function(a,c,d){var e,g;c=f.camelCase(c),g=f.cssHooks[c],c=f.cssProps[c]||c,c==="cssFloat"&&(c="float");if(g&&"get"in g&&(e=g.get(a,!0,d))!==b)return e;if(bz)return bz(a,c)},swap:function(a,b,c){var d={};for(var e in b)d[e]=a.style[e],a.style[e]=b[e];c.call(a);for(e in b)a.style[e]=d[e]},camelCase:function(a){return a.replace(bq,bC)}}),f.curCSS=f.css,f.each(["height","width"],function(a,b){f.cssHooks[b]={get:function(a,c,d){var e;if(c){a.offsetWidth!==0?e=bD(a,b,d):f.swap(a,bw,function(){e=bD(a,b,d)});if(e<=0){e=bz(a,b,b),e==="0px"&&bB&&(e=bB(a,b,b));if(e!=null)return e===""||e==="auto"?"0px":e}if(e<0||e==null){e=a.style[b];return e===""||e==="auto"?"0px":e}return typeof e=="string"?e:e+"px"}},set:function(a,b){if(!bs.test(b))return b;b=parseFloat(b);if(b>=0)return b+"px"}}}),f.support.opacity||(f.cssHooks.opacity={get:function(a,b){return bp.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?parseFloat(RegExp.$1)/100+"":b?"1":""},set:function(a,b){var c=a.style,d=a.currentStyle;c.zoom=1;var e=f.isNaN(b)?"":"alpha(opacity="+b*100+")",g=d&&d.filter||c.filter||"";c.filter=bo.test(g)?g.replace(bo,e):g+" "+e}}),f(function(){f.support.reliableMarginRight||(f.cssHooks.marginRight={get:function(a,b){var c;f.swap(a,{display:"inline-block"},function(){b?c=bz(a,"margin-right","marginRight"):c=a.style.marginRight});return c}})}),c.defaultView&&c.defaultView.getComputedStyle&&(bA=function(a,c){var d,e,g;c=c.replace(br,"-$1").toLowerCase();if(!(e=a.ownerDocument.defaultView))return b;if(g=e.getComputedStyle(a,null))d=g.getPropertyValue(c),d===""&&!f.contains(a.ownerDocument.documentElement,a)&&(d=f.style(a,c));return d}),c.documentElement.currentStyle&&(bB=function(a,b){var c,d=a.currentStyle&&a.currentStyle[b],e=a.runtimeStyle&&a.runtimeStyle[b],f=a.style;!bs.test(d)&&bt.test(d)&&(c=f.left,e&&(a.runtimeStyle.left=a.currentStyle.left),f.left=b==="fontSize"?"1em":d||0,d=f.pixelLeft+"px",f.left=c,e&&(a.runtimeStyle.left=e));return d===""?"auto":d}),bz=bA||bB,f.expr&&f.expr.filters&&(f.expr.filters.hidden=function(a){var b=a.offsetWidth,c=a.offsetHeight;return b===0&&c===0||!f.support.reliableHiddenOffsets&&(a.style.display||f.css(a,"display"))==="none"},f.expr.filters.visible=function(a){return!f.expr.filters.hidden(a)});var bE=/%20/g,bF=/\[\]$/,bG=/\r?\n/g,bH=/#.*$/,bI=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,bJ=/^(?:color|date|datetime|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,bK=/^(?:about|app|app\-storage|.+\-extension|file|widget):$/,bL=/^(?:GET|HEAD)$/,bM=/^\/\//,bN=/\?/,bO=/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi,bP=/^(?:select|textarea)/i,bQ=/\s+/,bR=/([?&])_=[^&]*/,bS=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,bT=f.fn.load,bU={},bV={},bW,bX;try{bW=e.href}catch(bY){bW=c.createElement("a"),bW.href="",bW=bW.href}bX=bS.exec(bW.toLowerCase())||[],f.fn.extend({load:function(a,c,d){if(typeof a!="string"&&bT)return bT.apply(this,arguments);if(!this.length)return this;var e=a.indexOf(" ");if(e>=0){var g=a.slice(e,a.length);a=a.slice(0,e)}var h="GET";c&&(f.isFunction(c)?(d=c,c=b):typeof c=="object"&&(c=f.param(c,f.ajaxSettings.traditional),h="POST"));var i=this;f.ajax({url:a,type:h,dataType:"html",data:c,complete:function(a,b,c){c=a.responseText,a.isResolved()&&(a.done(function(a){c=a}),i.html(g?f("<div>").append(c.replace(bO,"")).find(g):c)),d&&i.each(d,[c,b,a])}});return this},serialize:function(){return f.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?f.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||bP.test(this.nodeName)||bJ.test(this.type))}).map(function(a,b){var c=f(this).val();return c==null?null:f.isArray(c)?f.map(c,function(a,c){return{name:b.name,value:a.replace(bG,"\r\n")}}):{name:b.name,value:c.replace(bG,"\r\n")}}).get()}}),f.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){f.fn[b]=function(a){return this.bind(b,a)}}),f.each(["get","post"],function(a,c){f[c]=function(a,d,e,g){f.isFunction(d)&&(g=g||e,e=d,d=b);return f.ajax({type:c,url:a,data:d,success:e,dataType:g})}}),f.extend({getScript:function(a,c){return f.get(a,b,c,"script")},getJSON:function(a,b,c){return f.get(a,b,c,"json")},ajaxSetup:function(a,b){b?f.extend(!0,a,f.ajaxSettings,b):(b=a,a=f.extend(!0,f.ajaxSettings,b));for(var c in{context:1,url:1})c in b?a[c]=b[c]:c in f.ajaxSettings&&(a[c]=f.ajaxSettings[c]);return a},ajaxSettings:{url:bW,isLocal:bK.test(bX[1]),global:!0,type:"GET",contentType:"application/x-www-form-urlencoded",processData:!0,async:!0,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":"*/*"},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":a.String,"text html":!0,"text json":f.parseJSON,"text xml":f.parseXML}},ajaxPrefilter:bZ(bU),ajaxTransport:bZ(bV),ajax:function(a,c){function w(a,c,l,m){if(s!==2){s=2,q&&clearTimeout(q),p=b,n=m||"",v.readyState=a?4:0;var o,r,u,w=l?ca(d,v,l):b,x,y;if(a>=200&&a<300||a===304){if(d.ifModified){if(x=v.getResponseHeader("Last-Modified"))f.lastModified[k]=x;if(y=v.getResponseHeader("Etag"))f.etag[k]=y}if(a===304)c="notmodified",o=!0;else try{r=cb(d,w),c="success",o=!0}catch(z){c="parsererror",u=z}}else{u=c;if(!c||a)c="error",a<0&&(a=0)}v.status=a,v.statusText=c,o?h.resolveWith(e,[r,c,v]):h.rejectWith(e,[v,c,u]),v.statusCode(j),j=b,t&&g.trigger("ajax"+(o?"Success":"Error"),[v,d,o?r:u]),i.resolveWith(e,[v,c]),t&&(g.trigger("ajaxComplete",[v,d]),--f.active||f.event.trigger("ajaxStop"))}}typeof a=="object"&&(c=a,a=b),c=c||{};var d=f.ajaxSetup({},c),e=d.context||d,g=e!==d&&(e.nodeType||e instanceof f)?f(e):f.event,h=f.Deferred(),i=f._Deferred(),j=d.statusCode||{},k,l={},m={},n,o,p,q,r,s=0,t,u,v={readyState:0,setRequestHeader:function(a,b){if(!s){var c=a.toLowerCase();a=m[c]=m[c]||a,l[a]=b}return this},getAllResponseHeaders:function(){return s===2?n:null},getResponseHeader:function(a){var c;if(s===2){if(!o){o={};while(c=bI.exec(n))o[c[1].toLowerCase()]=c[2]}c=o[a.toLowerCase()]}return c===b?null:c},overrideMimeType:function(a){s||(d.mimeType=a);return this},abort:function(a){a=a||"abort",p&&p.abort(a),w(0,a);return this}};h.promise(v),v.success=v.done,v.error=v.fail,v.complete=i.done,v.statusCode=function(a){if(a){var b;if(s<2)for(b in a)j[b]=[j[b],a[b]];else b=a[v.status],v.then(b,b)}return this},d.url=((a||d.url)+"").replace(bH,"").replace(bM,bX[1]+"//"),d.dataTypes=f.trim(d.dataType||"*").toLowerCase().split(bQ),d.crossDomain==null&&(r=bS.exec(d.url.toLowerCase()),d.crossDomain=!(!r||r[1]==bX[1]&&r[2]==bX[2]&&(r[3]||(r[1]==="http:"?80:443))==(bX[3]||(bX[1]==="http:"?80:443)))),d.data&&d.processData&&typeof d.data!="string"&&(d.data=f.param(d.data,d.traditional)),b$(bU,d,c,v);if(s===2)return!1;t=d.global,d.type=d.type.toUpperCase(),d.hasContent=!bL.test(d.type),t&&f.active++===0&&f.event.trigger("ajaxStart");if(!d.hasContent){d.data&&(d.url+=(bN.test(d.url)?"&":"?")+d.data),k=d.url;if(d.cache===!1){var x=f.now(),y=d.url.replace(bR,"$1_="+x);d.url=y+(y===d.url?(bN.test(d.url)?"&":"?")+"_="+x:"")}}(d.data&&d.hasContent&&d.contentType!==!1||c.contentType)&&v.setRequestHeader("Content-Type",d.contentType),d.ifModified&&(k=k||d.url,f.lastModified[k]&&v.setRequestHeader("If-Modified-Since",f.lastModified[k]),f.etag[k]&&v.setRequestHeader("If-None-Match",f.etag[k])),v.setRequestHeader("Accept",d.dataTypes[0]&&d.accepts[d.dataTypes[0]]?d.accepts[d.dataTypes[0]]+(d.dataTypes[0]!=="*"?", */*; q=0.01":""):d.accepts["*"]);for(u in d.headers)v.setRequestHeader(u,d.headers[u]);if(d.beforeSend&&(d.beforeSend.call(e,v,d)===!1||s===2)){v.abort();return!1}for(u in{success:1,error:1,complete:1})v[u](d[u]);p=b$(bV,d,c,v);if(!p)w(-1,"No Transport");else{v.readyState=1,t&&g.trigger("ajaxSend",[v,d]),d.async&&d.timeout>0&&(q=setTimeout(function(){v.abort("timeout")},d.timeout));try{s=1,p.send(l,w)}catch(z){status<2?w(-1,z):f.error(z)}}return v},param:function(a,c){var d=[],e=function(a,b){b=f.isFunction(b)?b():b,d[d.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};c===b&&(c=f.ajaxSettings.traditional);if(f.isArray(a)||a.jquery&&!f.isPlainObject(a))f.each(a,function(){e(this.name,this.value)});else for(var g in a)b_(g,a[g],c,e);return d.join("&").replace(bE,"+")}}),f.extend({active:0,lastModified:{},etag:{}});var cc=f.now(),cd=/(\=)\?(&|$)|\?\?/i;f.ajaxSetup({jsonp:"callback",jsonpCallback:function(){return f.expando+"_"+cc++}}),f.ajaxPrefilter("json jsonp",function(b,c,d){var e=b.contentType==="application/x-www-form-urlencoded"&&typeof b.data=="string";if(b.dataTypes[0]==="jsonp"||b.jsonp!==!1&&(cd.test(b.url)||e&&cd.test(b.data))){var g,h=b.jsonpCallback=f.isFunction(b.jsonpCallback)?b.jsonpCallback():b.jsonpCallback,i=a[h],j=b.url,k=b.data,l="$1"+h+"$2";b.jsonp!==!1&&(j=j.replace(cd,l),b.url===j&&(e&&(k=k.replace(cd,l)),b.data===k&&(j+=(/\?/.test(j)?"&":"?")+b.jsonp+"="+h))),b.url=j,b.data=k,a[h]=function(a){g=[a]},d.always(function(){a[h]=i,g&&f.isFunction(i)&&a[h](g[0])}),b.converters["script json"]=function(){g||f.error(h+" was not called");return g[0]},b.dataTypes[0]="json";return"script"}}),f.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(a){f.globalEval(a);return a}}}),f.ajaxPrefilter("script",function(a){a.cache===b&&(a.cache=!1),a.crossDomain&&(a.type="GET",a.global=!1)}),f.ajaxTransport("script",function(a){if(a.crossDomain){var d,e=c.head||c.getElementsByTagName("head")[0]||c.documentElement;return{send:function(f,g){d=c.createElement("script"),d.async="async",a.scriptCharset&&(d.charset=a.scriptCharset),d.src=a.url,d.onload=d.onreadystatechange=function(a,c){if(c||!d.readyState||/loaded|complete/.test(d.readyState))d.onload=d.onreadystatechange=null,e&&d.parentNode&&e.removeChild(d),d=b,c||g(200,"success")},e.insertBefore(d,e.firstChild)},abort:function(){d&&d.onload(0,1)}}}});var ce=a.ActiveXObject?function(){for(var a in cg)cg[a](0,1)}:!1,cf=0,cg;f.ajaxSettings.xhr=a.ActiveXObject?function(){return!this.isLocal&&ch()||ci()}:ch,function(a){f.extend(f.support,{ajax:!!a,cors:!!a&&"withCredentials"in a})}(f.ajaxSettings.xhr()),f.support.ajax&&f.ajaxTransport(function(c){if(!c.crossDomain||f.support.cors){var d;return{send:function(e,g){var h=c.xhr(),i,j;c.username?h.open(c.type,c.url,c.async,c.username,c.password):h.open(c.type,c.url,c.async);if(c.xhrFields)for(j in c.xhrFields)h[j]=c.xhrFields[j];c.mimeType&&h.overrideMimeType&&h.overrideMimeType(c.mimeType),!c.crossDomain&&!e["X-Requested-With"]&&(e["X-Requested-With"]="XMLHttpRequest");try{for(j in e)h.setRequestHeader(j,e[j])}catch(k){}h.send(c.hasContent&&c.data||null),d=function(a,e){var j,k,l,m,n;try{if(d&&(e||h.readyState===4)){d=b,i&&(h.onreadystatechange=f.noop,ce&&delete cg[i]);if(e)h.readyState!==4&&h.abort();else{j=h.status,l=h.getAllResponseHeaders(),m={},n=h.responseXML,n&&n.documentElement&&(m.xml=n),m.text=h.responseText;try{k=h.statusText}catch(o){k=""}!j&&c.isLocal&&!c.crossDomain?j=m.text?200:404:j===1223&&(j=204)}}}catch(p){e||g(-1,p)}m&&g(j,k,m,l)},!c.async||h.readyState===4?d():(i=++cf,ce&&(cg||(cg={},f(a).unload(ce)),cg[i]=d),h.onreadystatechange=d)},abort:function(){d&&d(0,1)}}}});var cj={},ck,cl,cm=/^(?:toggle|show|hide)$/,cn=/^([+\-]=)?([\d+.\-]+)([a-z%]*)$/i,co,cp=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]],cq,cr=a.webkitRequestAnimationFrame||a.mozRequestAnimationFrame||a.oRequestAnimationFrame;f.fn.extend({show:function(a,b,c){var d,e;if(a||a===0)return this.animate(cu("show",3),a,b,c);for(var g=0,h=this.length;g<h;g++)d=this[g],d.style&&(e=d.style.display,!f._data(d,"olddisplay")&&e==="none"&&(e=d.style.display=""),e===""&&f.css(d,"display")==="none"&&f._data(d,"olddisplay",cv(d.nodeName)));for(g=0;g<h;g++){d=this[g];if(d.style){e=d.style.display;if(e===""||e==="none")d.style.display=f._data(d,"olddisplay")||""}}return this},hide:function(a,b,c){if(a||a===0)return this.animate(cu("hide",3),a,b,c);for(var d=0,e=this.length;d<e;d++)if(this[d].style){var g=f.css(this[d],"display");g!=="none"&&!f._data(this[d],"olddisplay")&&f._data(this[d],"olddisplay",g)}for(d=0;d<e;d++)this[d].style&&(this[d].style.display="none");return this},_toggle:f.fn.toggle,toggle:function(a,b,c){var d=typeof a=="boolean";f.isFunction(a)&&f.isFunction(b)?this._toggle.apply(this,arguments):a==null||d?this.each(function(){var b=d?a:f(this).is(":hidden");f(this)[b?"show":"hide"]()}):this.animate(cu("toggle",3),a,b,c);return this},fadeTo:function(a,b,c,d){return this.filter(":hidden").css("opacity",0).show().end().animate({opacity:b},a,c,d)},animate:function(a,b,c,d){var e=f.speed(b,c,d);if(f.isEmptyObject(a))return this.each(e.complete,[!1]);a=f.extend({},a);return this[e.queue===!1?"each":"queue"](function(){e.queue===!1&&f._mark(this);var b=f.extend({},e),c=this.nodeType===1,d=c&&f(this).is(":hidden"),g,h,i,j,k,l,m,n,o;b.animatedProperties={};for(i in a){g=f.camelCase(i),i!==g&&(a[g]=a[i],delete a[i]),h=a[g],f.isArray(h)?(b.animatedProperties[g]=h[1],h=a[g]=h[0]):b.animatedProperties[g]=b.specialEasing&&b.specialEasing[g]||b.easing||"swing";if(h==="hide"&&d||h==="show"&&!d)return b.complete.call(this);c&&(g==="height"||g==="width")&&(b.overflow=[this.style.overflow,this.style.overflowX,this.style.overflowY],f.css(this,"display")==="inline"&&f.css(this,"float")==="none"&&(f.support.inlineBlockNeedsLayout?(j=cv(this.nodeName),j==="inline"?this.style.display="inline-block":(this.style.display="inline",this.style.zoom=1)):this.style.display="inline-block"))}b.overflow!=null&&(this.style.overflow="hidden");for(i in a)k=new f.fx(this,b,i),h=a[i],cm.test(h)?k[h==="toggle"?d?"show":"hide":h]():(l=cn.exec(h),m=k.cur(),l?(n=parseFloat(l[2]),o=l[3]||(f.cssNumber[i]?"":"px"),o!=="px"&&(f.style(this,i,(n||1)+o),m=(n||1)/k.cur()*m,f.style(this,i,m+o)),l[1]&&(n=(l[1]==="-="?-1:1)*n+m),k.custom(m,n,o)):k.custom(m,h,""));return!0})},stop:function(a,b){a&&this.queue([]),this.each(function(){var a=f.timers,c=a.length;b||f._unmark(!0,this);while(c--)a[c].elem===this&&(b&&a[c](!0),a.splice(c,1))}),b||this.dequeue();return this}}),f.each({slideDown:cu("show",1),slideUp:cu("hide",1),slideToggle:cu("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(a,b){f.fn[a]=function(a,c,d){return this.animate(b,a,c,d)}}),f.extend({speed:function(a,b,c){var d=a&&typeof a=="object"?f.extend({},a):{complete:c||!c&&b||f.isFunction(a)&&a,duration:a,easing:c&&b||b&&!f.isFunction(b)&&b};d.duration=f.fx.off?0:typeof d.duration=="number"?d.duration:d.duration in f.fx.speeds?f.fx.speeds[d.duration]:f.fx.speeds._default,d.old=d.complete,d.complete=function(a){d.queue!==!1?f.dequeue(this):a!==!1&&f._unmark(this),f.isFunction(d.old)&&d.old.call(this)};return d},easing:{linear:function(a,b,c,d){return c+d*a},swing:function(a,b,c,d){return(-Math.cos(a*Math.PI)/2+.5)*d+c}},timers:[],fx:function(a,b,c){this.options=b,this.elem=a,this.prop=c,b.orig=b.orig||{}}}),f.fx.prototype={update:function(){this.options.step&&this.options.step.call(this.elem,this.now,this),(f.fx.step[this.prop]||f.fx.step._default)(this)},cur:function(){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null))return this.elem[this.prop];var a,b=f.css(this.elem,this.prop);return isNaN(a=parseFloat(b))?!b||b==="auto"?0:b:a},custom:function(a,b,c){function h(a){return d.step(a)}var d=this,e=f.fx,g;this.startTime=cq||cs(),this.start=a,this.end=b,this.unit=c||this.unit||(f.cssNumber[this.prop]?"":"px"),this.now=this.start,this.pos=this.state=0,h.elem=this.elem,h()&&f.timers.push(h)&&!co&&(cr?(co=1,g=function(){co&&(cr(g),e.tick())},cr(g)):co=setInterval(e.tick,e.interval))},show:function(){this.options.orig[this.prop]=f.style(this.elem,this.prop),this.options.show=!0,this.custom(this.prop==="width"||this.prop==="height"?1:0,this.cur()),f(this.elem).show()},hide:function(){this.options.orig[this.prop]=f.style(this.elem,this.prop),this.options.hide=!0,this.custom(this.cur(),0)},step:function(a){var b=cq||cs(),c=!0,d=this.elem,e=this.options,g,h;if(a||b>=e.duration+this.startTime){this.now=this.end,this.pos=this.state=1,this.update(),e.animatedProperties[this.prop]=!0;for(g in e.animatedProperties)e.animatedProperties[g]!==!0&&(c=!1);if(c){e.overflow!=null&&!f.support.shrinkWrapBlocks&&f.each(["","X","Y"],function(a,b){d.style["overflow"+b]=e.overflow[a]}),e.hide&&f(d).hide();if(e.hide||e.show)for(var i in e.animatedProperties)f.style(d,i,e.orig[i]);e.complete.call(d)}return!1}e.duration==Infinity?this.now=b:(h=b-this.startTime,this.state=h/e.duration,this.pos=f.easing[e.animatedProperties[this.prop]](this.state,h,0,1,e.duration),this.now=this.start+(this.end-this.start)*this.pos),this.update();return!0}},f.extend(f.fx,{tick:function(){for(var a=f.timers,b=0;b<a.length;++b)a[b]()||a.splice(b--,1);a.length||f.fx.stop()},interval:13,stop:function(){clearInterval(co),co=null},speeds:{slow:600,fast:200,_default:400},step:{opacity:function(a){f.style(a.elem,"opacity",a.now)},_default:function(a){a.elem.style&&a.elem.style[a.prop]!=null?a.elem.style[a.prop]=(a.prop==="width"||a.prop==="height"?Math.max(0,a.now):a.now)+a.unit:a.elem[a.prop]=a.now}}}),f.expr&&f.expr.filters&&(f.expr.filters.animated=function(a){return f.grep(f.timers,function(b){return a===b.elem}).length});var cw=/^t(?:able|d|h)$/i,cx=/^(?:body|html)$/i;"getBoundingClientRect"in c.documentElement?f.fn.offset=function(a){var b=this[0],c;if(a)return this.each(function(b){f.offset.setOffset(this,a,b)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return f.offset.bodyOffset(b);try{c=b.getBoundingClientRect()}catch(d){}var e=b.ownerDocument,g=e.documentElement;if(!c||!f.contains(g,b))return c?{top:c.top,left:c.left}:{top:0,left:0};var h=e.body,i=cy(e),j=g.clientTop||h.clientTop||0,k=g.clientLeft||h.clientLeft||0,l=i.pageYOffset||f.support.boxModel&&g.scrollTop||h.scrollTop,m=i.pageXOffset||f.support.boxModel&&g.scrollLeft||h.scrollLeft,n=c.top+l-j,o=c.left+m-k;return{top:n,left:o}}:f.fn.offset=function(a){var b=this[0];if(a)return this.each(function(b){f.offset.setOffset(this,a,b)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return f.offset.bodyOffset(b);f.offset.initialize();var c,d=b.offsetParent,e=b,g=b.ownerDocument,h=g.documentElement,i=g.body,j=g.defaultView,k=j?j.getComputedStyle(b,null):b.currentStyle,l=b.offsetTop,m=b.offsetLeft;while((b=b.parentNode)&&b!==i&&b!==h){if(f.offset.supportsFixedPosition&&k.position==="fixed")break;c=j?j.getComputedStyle(b,null):b.currentStyle,l-=b.scrollTop,m-=b.scrollLeft,b===d&&(l+=b.offsetTop,m+=b.offsetLeft,f.offset.doesNotAddBorder&&(!f.offset.doesAddBorderForTableAndCells||!cw.test(b.nodeName))&&(l+=parseFloat(c.borderTopWidth)||0,m+=parseFloat(c.borderLeftWidth)||0),e=d,d=b.offsetParent),f.offset.subtractsBorderForOverflowNotVisible&&c.overflow!=="visible"&&(l+=parseFloat(c.borderTopWidth)||0,m+=parseFloat(c.borderLeftWidth)||0),k=c}if(k.position==="relative"||k.position==="static")l+=i.offsetTop,m+=i.offsetLeft;f.offset.supportsFixedPosition&&k.position==="fixed"&&(l+=Math.max(h.scrollTop,i.scrollTop),m+=Math.max(h.scrollLeft,i.scrollLeft));return{top:l,left:m}},f.offset={initialize:function(){var a=c.body,b=c.createElement("div"),d,e,g,h,i=parseFloat(f.css(a,"marginTop"))||0,j="<div style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;'><div></div></div><table style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;' cellpadding='0' cellspacing='0'><tr><td></td></tr></table>";f.extend(b.style,{position:"absolute",top:0,left:0,margin:0,border:0,width:"1px",height:"1px",visibility:"hidden"}),b.innerHTML=j,a.insertBefore(b,a.firstChild),d=b.firstChild,e=d.firstChild,h=d.nextSibling.firstChild.firstChild,this.doesNotAddBorder=e.offsetTop!==5,this.doesAddBorderForTableAndCells=h.offsetTop===5,e.style.position="fixed",e.style.top="20px",this.supportsFixedPosition=e.offsetTop===20||e.offsetTop===15,e.style.position=e.style.top="",d.style.overflow="hidden",d.style.position="relative",this.subtractsBorderForOverflowNotVisible=e.offsetTop===-5,this.doesNotIncludeMarginInBodyOffset=a.offsetTop!==i,a.removeChild(b),f.offset.initialize=f.noop},bodyOffset:function(a){var b=a.offsetTop,c=a.offsetLeft;f.offset.initialize(),f.offset.doesNotIncludeMarginInBodyOffset&&(b+=parseFloat(f.css(a,"marginTop"))||0,c+=parseFloat(f.css(a,"marginLeft"))||0);return{top:b,left:c}},setOffset:function(a,b,c){var d=f.css(a,"position");d==="static"&&(a.style.position="relative");var e=f(a),g=e.offset(),h=f.css(a,"top"),i=f.css(a,"left"),j=(d==="absolute"||d==="fixed")&&f.inArray("auto",[h,i])>-1,k={},l={},m,n;j?(l=e.position(),m=l.top,n=l.left):(m=parseFloat(h)||0,n=parseFloat(i)||0),f.isFunction(b)&&(b=b.call(a,c,g)),b.top!=null&&(k.top=b.top-g.top+m),b.left!=null&&(k.left=b.left-g.left+n),"using"in b?b.using.call(a,k):e.css(k)}},f.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),c=this.offset(),d=cx.test(b[0].nodeName)?{top:0,left:0}:b.offset();c.top-=parseFloat(f.css(a,"marginTop"))||0,c.left-=parseFloat(f.css(a,"marginLeft"))||0,d.top+=parseFloat(f.css(b[0],"borderTopWidth"))||0,d.left+=parseFloat(f.css(b[0],"borderLeftWidth"))||0;return{top:c.top-d.top,left:c.left-d.left}},offsetParent:function(){return this.map(function(){var a=this.offsetParent||c.body;while(a&&!cx.test(a.nodeName)&&f.css(a,"position")==="static")a=a.offsetParent;return a})}}),f.each(["Left","Top"],function(a,c){var d="scroll"+c;f.fn[d]=function(c){var e,g;if(c===b){e=this[0];if(!e)return null;g=cy(e);return g?"pageXOffset"in g?g[a?"pageYOffset":"pageXOffset"]:f.support.boxModel&&g.document.documentElement[d]||g.document.body[d]:e[d]}return this.each(function(){g=cy(this),g?g.scrollTo(a?f(g).scrollLeft():c,a?c:f(g).scrollTop()):this[d]=c})}}),f.each(["Height","Width"],function(a,c){var d=c.toLowerCase();f.fn["inner"+c]=function(){return this[0]?parseFloat(f.css(this[0],d,"padding")):null},f.fn["outer"+c]=function(a){return this[0]?parseFloat(f.css(this[0],d,a?"margin":"border")):null},f.fn[d]=function(a){var e=this[0];if(!e)return a==null?null:this;if(f.isFunction(a))return this.each(function(b){var c=f(this);c[d](a.call(this,b,c[d]()))});if(f.isWindow(e)){var g=e.document.documentElement["client"+c];return e.document.compatMode==="CSS1Compat"&&g||e.document.body["client"+c]||g}if(e.nodeType===9)return Math.max(e.documentElement["client"+c],e.body["scroll"+c],e.documentElement["scroll"+c],e.body["offset"+c],e.documentElement["offset"+c]);if(a===b){var h=f.css(e,d),i=parseFloat(h);return f.isNaN(i)?h:i}return this.css(d,typeof a=="string"?a:a+"px")}}),a.jQuery=a.$=f})(window);
\ No newline at end of file diff --git a/addons/web_mobile/static/lib/jquery_mobile/js/jquery.mobile-1.0a4.1.js b/addons/web_mobile/static/lib/jquery_mobile/js/jquery.mobile-1.0a4.1.js deleted file mode 100644 index 85aa395e4f7..00000000000 --- a/addons/web_mobile/static/lib/jquery_mobile/js/jquery.mobile-1.0a4.1.js +++ /dev/null @@ -1,5111 +0,0 @@ -/*! - * jQuery Mobile v1.0a4.1 - * http://jquerymobile.com/ - * - * Copyright 2010, jQuery Project - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - */ -/*! - * jQuery UI Widget @VERSION - * - * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Widget - */ -(function( $, undefined ) { - -// jQuery 1.4+ -if ( $.cleanData ) { - var _cleanData = $.cleanData; - $.cleanData = function( elems ) { - for ( var i = 0, elem; (elem = elems[i]) != null; i++ ) { - $( elem ).triggerHandler( "remove" ); - } - _cleanData( elems ); - }; -} else { - var _remove = $.fn.remove; - $.fn.remove = function( selector, keepData ) { - return this.each(function() { - if ( !keepData ) { - if ( !selector || $.filter( selector, [ this ] ).length ) { - $( "*", this ).add( [ this ] ).each(function() { - $( this ).triggerHandler( "remove" ); - }); - } - } - return _remove.call( $(this), selector, keepData ); - }); - }; -} - -$.widget = function( name, base, prototype ) { - var namespace = name.split( "." )[ 0 ], - fullName; - name = name.split( "." )[ 1 ]; - fullName = namespace + "-" + name; - if ( !prototype ) { - prototype = base; - base = $.Widget; - } - - // create selector for plugin - $.expr[ ":" ][ fullName ] = function( elem ) { - return !!$.data( elem, name ); - }; - - $[ namespace ] = $[ namespace ] || {}; - $[ namespace ][ name ] = function( options, element ) { - // allow instantiation without initializing for simple inheritance - if ( arguments.length ) { - this._createWidget( options, element ); - } - }; - - var basePrototype = new base(); - // we need to make the options hash a property directly on the new instance - // otherwise we'll modify the options hash on the prototype that we're - // inheriting from -// $.each( basePrototype, function( key, val ) { -// if ( $.isPlainObject(val) ) { -// basePrototype[ key ] = $.extend( {}, val ); -// } -// }); - basePrototype.options = $.extend( true, {}, basePrototype.options ); - $[ namespace ][ name ].prototype = $.extend( true, basePrototype, { - namespace: namespace, - widgetName: name, - widgetEventPrefix: $[ namespace ][ name ].prototype.widgetEventPrefix || name, - widgetBaseClass: fullName - }, prototype ); - - $.widget.bridge( name, $[ namespace ][ name ] ); -}; - -$.widget.bridge = function( name, object ) { - $.fn[ name ] = function( options ) { - var isMethodCall = typeof options === "string", - args = Array.prototype.slice.call( arguments, 1 ), - returnValue = this; - - // allow multiple hashes to be passed on init - options = !isMethodCall && args.length ? - $.extend.apply( null, [ true, options ].concat(args) ) : - options; - - // prevent calls to internal methods - if ( isMethodCall && options.charAt( 0 ) === "_" ) { - return returnValue; - } - - if ( isMethodCall ) { - this.each(function() { - var instance = $.data( this, name ); - if ( !instance ) { - throw "cannot call methods on " + name + " prior to initialization; " + - "attempted to call method '" + options + "'"; - } - if ( !$.isFunction( instance[options] ) ) { - throw "no such method '" + options + "' for " + name + " widget instance"; - } - var methodValue = instance[ options ].apply( instance, args ); - if ( methodValue !== instance && methodValue !== undefined ) { - returnValue = methodValue; - return false; - } - }); - } else { - this.each(function() { - var instance = $.data( this, name ); - if ( instance ) { - instance.option( options || {} )._init(); - } else { - $.data( this, name, new object( options, this ) ); - } - }); - } - - return returnValue; - }; -}; - -$.Widget = function( options, element ) { - // allow instantiation without initializing for simple inheritance - if ( arguments.length ) { - this._createWidget( options, element ); - } -}; - -$.Widget.prototype = { - widgetName: "widget", - widgetEventPrefix: "", - options: { - disabled: false - }, - _createWidget: function( options, element ) { - // $.widget.bridge stores the plugin instance, but we do it anyway - // so that it's stored even before the _create function runs - $.data( element, this.widgetName, this ); - this.element = $( element ); - this.options = $.extend( true, {}, - this.options, - this._getCreateOptions(), - options ); - - var self = this; - this.element.bind( "remove." + this.widgetName, function() { - self.destroy(); - }); - - this._create(); - this._trigger( "create" ); - this._init(); - }, - _getCreateOptions: function() { - var options = {}; - if ( $.metadata ) { - options = $.metadata.get( element )[ this.widgetName ]; - } - return options; - }, - _create: function() {}, - _init: function() {}, - - destroy: function() { - this.element - .unbind( "." + this.widgetName ) - .removeData( this.widgetName ); - this.widget() - .unbind( "." + this.widgetName ) - .removeAttr( "aria-disabled" ) - .removeClass( - this.widgetBaseClass + "-disabled " + - "ui-state-disabled" ); - }, - - widget: function() { - return this.element; - }, - - option: function( key, value ) { - var options = key; - - if ( arguments.length === 0 ) { - // don't return a reference to the internal hash - return $.extend( {}, this.options ); - } - - if (typeof key === "string" ) { - if ( value === undefined ) { - return this.options[ key ]; - } - options = {}; - options[ key ] = value; - } - - this._setOptions( options ); - - return this; - }, - _setOptions: function( options ) { - var self = this; - $.each( options, function( key, value ) { - self._setOption( key, value ); - }); - - return this; - }, - _setOption: function( key, value ) { - this.options[ key ] = value; - - if ( key === "disabled" ) { - this.widget() - [ value ? "addClass" : "removeClass"]( - this.widgetBaseClass + "-disabled" + " " + - "ui-state-disabled" ) - .attr( "aria-disabled", value ); - } - - return this; - }, - - enable: function() { - return this._setOption( "disabled", false ); - }, - disable: function() { - return this._setOption( "disabled", true ); - }, - - _trigger: function( type, event, data ) { - var callback = this.options[ type ]; - - event = $.Event( event ); - event.type = ( type === this.widgetEventPrefix ? - type : - this.widgetEventPrefix + type ).toLowerCase(); - data = data || {}; - - // copy original event properties over to the new event - // this would happen if we could call $.event.fix instead of $.Event - // but we don't have a way to force an event to be fixed multiple times - if ( event.originalEvent ) { - for ( var i = $.event.props.length, prop; i; ) { - prop = $.event.props[ --i ]; - event[ prop ] = event.originalEvent[ prop ]; - } - } - - this.element.trigger( event, data ); - - return !( $.isFunction(callback) && - callback.call( this.element[0], event, data ) === false || - event.isDefaultPrevented() ); - } -}; - -})( jQuery ); -/* -* jQuery Mobile Framework : widget factory extentions for mobile -* Copyright (c) jQuery Project -* Dual licensed under the MIT or GPL Version 2 licenses. -* http://jquery.org/license -*/ -(function($, undefined ) { - -$.widget( "mobile.widget", { - _getCreateOptions: function() { - var elem = this.element, - options = {}; - $.each( this.options, function( option ) { - var value = elem.jqmData( option.replace( /[A-Z]/g, function( c ) { - return "-" + c.toLowerCase(); - } ) ); - if ( value !== undefined ) { - options[ option ] = value; - } - }); - return options; - } -}); - -})( jQuery ); -/* -* jQuery Mobile Framework : resolution and CSS media query related helpers and behavior -* Copyright (c) jQuery Project -* Dual licensed under the MIT or GPL Version 2 licenses. -* http://jquery.org/license -*/ -(function($, undefined ) { - -var $window = $(window), - $html = $( "html" ), - - //media-query-like width breakpoints, which are translated to classes on the html element - resolutionBreakpoints = [320,480,768,1024]; - - -/* $.mobile.media method: pass a CSS media type or query and get a bool return - note: this feature relies on actual media query support for media queries, though types will work most anywhere - examples: - $.mobile.media('screen') //>> tests for screen media type - $.mobile.media('screen and (min-width: 480px)') //>> tests for screen media type with window width > 480px - $.mobile.media('@media screen and (-webkit-min-device-pixel-ratio: 2)') //>> tests for webkit 2x pixel ratio (iPhone 4) -*/ -$.mobile.media = (function() { - // TODO: use window.matchMedia once at least one UA implements it - var cache = {}, - testDiv = $( "<div id='jquery-mediatest'>" ), - fakeBody = $( "<body>" ).append( testDiv ); - - return function( query ) { - if ( !( query in cache ) ) { - var styleBlock = document.createElement('style'), - cssrule = "@media " + query + " { #jquery-mediatest { position:absolute; } }"; - //must set type for IE! - styleBlock.type = "text/css"; - if (styleBlock.styleSheet){ - styleBlock.styleSheet.cssText = cssrule; - } - else { - styleBlock.appendChild(document.createTextNode(cssrule)); - } - - $html.prepend( fakeBody ).prepend( styleBlock ); - cache[ query ] = testDiv.css( "position" ) === "absolute"; - fakeBody.add( styleBlock ).remove(); - } - return cache[ query ]; - }; -})(); - -/* - private function for adding/removing breakpoint classes to HTML element for faux media-query support - It does not require media query support, instead using JS to detect screen width > cross-browser support - This function is called on orientationchange, resize, and mobileinit, and is bound via the 'htmlclass' event namespace -*/ -function detectResolutionBreakpoints(){ - var currWidth = $window.width(), - minPrefix = "min-width-", - maxPrefix = "max-width-", - minBreakpoints = [], - maxBreakpoints = [], - unit = "px", - breakpointClasses; - - $html.removeClass( minPrefix + resolutionBreakpoints.join(unit + " " + minPrefix) + unit + " " + - maxPrefix + resolutionBreakpoints.join( unit + " " + maxPrefix) + unit ); - - $.each(resolutionBreakpoints,function( i, breakPoint ){ - if( currWidth >= breakPoint ){ - minBreakpoints.push( minPrefix + breakPoint + unit ); - } - if( currWidth <= breakPoint ){ - maxBreakpoints.push( maxPrefix + breakPoint + unit ); - } - }); - - if( minBreakpoints.length ){ breakpointClasses = minBreakpoints.join(" "); } - if( maxBreakpoints.length ){ breakpointClasses += " " + maxBreakpoints.join(" "); } - - $html.addClass( breakpointClasses ); -}; - -/* $.mobile.addResolutionBreakpoints method: - pass either a number or an array of numbers and they'll be added to the min/max breakpoint classes - Examples: - $.mobile.addResolutionBreakpoints( 500 ); - $.mobile.addResolutionBreakpoints( [500, 1200] ); -*/ -$.mobile.addResolutionBreakpoints = function( newbps ){ - if( $.type( newbps ) === "array" ){ - resolutionBreakpoints = resolutionBreakpoints.concat( newbps ); - } - else { - resolutionBreakpoints.push( newbps ); - } - resolutionBreakpoints.sort(function(a,b){ return a-b; }); - detectResolutionBreakpoints(); -}; - -/* on mobileinit, add classes to HTML element - and set handlers to update those on orientationchange and resize*/ -$(document).bind("mobileinit.htmlclass", function(){ - /* bind to orientationchange and resize - to add classes to HTML element for min/max breakpoints and orientation */ - $window.bind("orientationchange.htmlclass resize.htmlclass", function(event){ - //add orientation class to HTML element on flip/resize. - if(event.orientation){ - $html.removeClass( "portrait landscape" ).addClass( event.orientation ); - } - //add classes to HTML element for min/max breakpoints - detectResolutionBreakpoints(); - }); -}); - -/* Manually trigger an orientationchange event when the dom ready event fires. - This will ensure that any viewport meta tag that may have been injected - has taken effect already, allowing us to properly calculate the width of the - document. -*/ -$(function(){ - //trigger event manually - $window.trigger( "orientationchange.htmlclass" ); -}); - -})(jQuery);/* -* jQuery Mobile Framework : support tests -* Copyright (c) jQuery Project -* Dual licensed under the MIT (MIT-LICENSE.txt) and GPL (GPL-LICENSE.txt) licenses. -* Note: Code is in draft form and is subject to change -*/ -(function($, undefined ) { - - - -var fakeBody = $( "<body>" ).prependTo( "html" ), - fbCSS = fakeBody[0].style, - vendors = ['webkit','moz','o'], - webos = window.palmGetResource || window.PalmServiceBridge, //only used to rule out scrollTop - bb = window.blackberry; //only used to rule out box shadow, as it's filled opaque on BB - -//thx Modernizr -function propExists( prop ){ - var uc_prop = prop.charAt(0).toUpperCase() + prop.substr(1), - props = (prop + ' ' + vendors.join(uc_prop + ' ') + uc_prop).split(' '); - for(var v in props){ - if( fbCSS[ v ] !== undefined ){ - return true; - } - } -}; - -//test for dynamic-updating base tag support (allows us to avoid href,src attr rewriting) -function baseTagTest(){ - var fauxBase = location.protocol + '//' + location.host + location.pathname + "ui-dir/", - base = $("head base"), - fauxEle = null, - href = ''; - if (!base.length) { - base = fauxEle = $("<base>", {"href": fauxBase}).appendTo("head"); - } - else { - href = base.attr("href"); - } - var link = $( "<a href='testurl'></a>" ).prependTo( fakeBody ), - rebase = link[0].href; - base[0].href = href ? href : location.pathname; - if (fauxEle) { - fauxEle.remove(); - } - return rebase.indexOf(fauxBase) === 0; -}; - - -//non-UA-based IE version check by James Padolsey, modified by jdalton - from http://gist.github.com/527683 -//allows for inclusion of IE 6+, including Windows Mobile 7 -$.mobile.browser = {}; -$.mobile.browser.ie = (function() { - var v = 3, div = document.createElement('div'), a = div.all || []; - while (div.innerHTML = '<!--[if gt IE '+(++v)+']><br><![endif]-->', a[0]); - return v > 4 ? v : !v; -}()); - -$.extend( $.support, { - orientation: "orientation" in window, - touch: "ontouchend" in document, - cssTransitions: "WebKitTransitionEvent" in window, - pushState: !!history.pushState, - mediaquery: $.mobile.media('only all'), - cssPseudoElement: !!propExists('content'), - boxShadow: !!propExists('boxShadow') && !bb, - scrollTop: ("pageXOffset" in window || "scrollTop" in document.documentElement || "scrollTop" in fakeBody[0]) && !webos, - dynamicBaseTag: baseTagTest(), - eventCapture: ("addEventListener" in document) // This is a weak test. We may want to beef this up later. -}); - -fakeBody.remove(); - -//for ruling out shadows via css -if( !$.support.boxShadow ){ $('html').addClass('ui-mobile-nosupport-boxshadow'); } - -})( jQuery );/* -* jQuery Mobile Framework : "mouse" plugin -* Copyright (c) jQuery Project -* Dual licensed under the MIT or GPL Version 2 licenses. -* http://jquery.org/license -*/ - -// This plugin is an experiment for abstracting away the touch and mouse -// events so that developers don't have to worry about which method of input -// the device their document is loaded on supports. -// -// The idea here is to allow the developer to register listeners for the -// basic mouse events, such as mousedown, mousemove, mouseup, and click, -// and the plugin will take care of registering the correct listeners -// behind the scenes to invoke the listener at the fastest possible time -// for that device, while still retaining the order of event firing in -// the traditional mouse environment, should multiple handlers be registered -// on the same element for different events. -// -// The current version exposes the following virtual events to jQuery bind methods: -// "vmouseover vmousedown vmousemove vmouseup vclick vmouseout vmousecancel" - -(function($, window, document, undefined) { - -var dataPropertyName = "virtualMouseBindings", - touchTargetPropertyName = "virtualTouchID", - virtualEventNames = "vmouseover vmousedown vmousemove vmouseup vclick vmouseout vmousecancel".split(" "), - touchEventProps = "clientX clientY pageX pageY screenX screenY".split(" "), - activeDocHandlers = {}, - resetTimerID = 0, - startX = 0, - startY = 0, - startScrollX = 0, - startScrollY = 0, - didScroll = false, - clickBlockList = [], - blockMouseTriggers = false, - scrollTopSupported = $.support.scrollTop, - eventCaptureSupported = $.support.eventCapture, - $document = $(document), - nextTouchID = 1, - lastTouchID = 0; - -$.vmouse = { - moveDistanceThreshold: 10, - clickDistanceThreshold: 10, - resetTimerDuration: 1500 -}; - -function getNativeEvent(event) -{ - while (event && typeof event.originalEvent !== "undefined") { - event = event.originalEvent; - } - return event; -} - -function createVirtualEvent(event, eventType) -{ - var t = event.type; - event = $.Event(event); - event.type = eventType; - - var oe = event.originalEvent; - var props = $.event.props; - - // copy original event properties over to the new event - // this would happen if we could call $.event.fix instead of $.Event - // but we don't have a way to force an event to be fixed multiple times - if (oe) { - for ( var i = props.length, prop; i; ) { - prop = props[ --i ]; - event[prop] = oe[prop]; - } - } - - if (t.search(/^touch/) !== -1){ - var ne = getNativeEvent(oe), - t = ne.touches, - ct = ne.changedTouches, - touch = (t && t.length) ? t[0] : ((ct && ct.length) ? ct[0] : undefined); - if (touch){ - for (var i = 0, len = touchEventProps.length; i < len; i++){ - var prop = touchEventProps[i]; - event[prop] = touch[prop]; - } - } - } - - return event; -} - -function getVirtualBindingFlags(element) -{ - var flags = {}; - var $ele = $(element); - while ($ele && $ele.length){ - var b = $ele.data(dataPropertyName); - for (var k in b) { - if (b[k]){ - flags[k] = flags.hasVirtualBinding = true; - } - } - $ele = $ele.parent(); - } - return flags; -} - -function getClosestElementWithVirtualBinding(element, eventType) -{ - var $ele = $(element); - while ($ele && $ele.length){ - var b = $ele.data(dataPropertyName); - if (b && (!eventType || b[eventType])) { - return $ele; - } - $ele = $ele.parent(); - } - return null; -} - -function enableTouchBindings() -{ - if (!activeDocHandlers["touchbindings"]){ - $document.bind("touchend", handleTouchEnd) - - // On touch platforms, touching the screen and then dragging your finger - // causes the window content to scroll after some distance threshold is - // exceeded. On these platforms, a scroll prevents a click event from being - // dispatched, and on some platforms, even the touchend is suppressed. To - // mimic the suppression of the click event, we need to watch for a scroll - // event. Unfortunately, some platforms like iOS don't dispatch scroll - // events until *AFTER* the user lifts their finger (touchend). This means - // we need to watch both scroll and touchmove events to figure out whether - // or not a scroll happenens before the touchend event is fired. - - .bind("touchmove", handleTouchMove) - .bind("scroll", handleScroll); - - activeDocHandlers["touchbindings"] = 1; - } -} - -function disableTouchBindings() -{ - if (activeDocHandlers["touchbindings"]){ - $document.unbind("touchmove", handleTouchMove) - .unbind("touchend", handleTouchEnd) - .unbind("scroll", handleScroll); - activeDocHandlers["touchbindings"] = 0; - } -} - -function enableMouseBindings() -{ - lastTouchID = 0; - clickBlockList.length = 0; - blockMouseTriggers = false; - - // When mouse bindings are enabled, our - // touch bindings are disabled. - disableTouchBindings(); -} - -function disableMouseBindings() -{ - // When mouse bindings are disabled, our - // touch bindings are enabled. - enableTouchBindings(); -} - -function startResetTimer() -{ - clearResetTimer(); - resetTimerID = setTimeout(function(){ - resetTimerID = 0; - enableMouseBindings(); - }, $.vmouse.resetTimerDuration); -} - -function clearResetTimer() -{ - if (resetTimerID){ - clearTimeout(resetTimerID); - resetTimerID = 0; - } -} - -function triggerVirtualEvent(eventType, event, flags) -{ - var defaultPrevented = false; - - if ((flags && flags[eventType]) || (!flags && getClosestElementWithVirtualBinding(event.target, eventType))) { - var ve = createVirtualEvent(event, eventType); - $(event.target).trigger(ve); - defaultPrevented = ve.isDefaultPrevented(); - } - - return defaultPrevented; -} - -function mouseEventCallback(event) -{ - var touchID = $(event.target).data(touchTargetPropertyName); - if (!blockMouseTriggers && (!lastTouchID || lastTouchID !== touchID)){ - triggerVirtualEvent("v" + event.type, event); - } -} - -function handleTouchStart(event) -{ - var touches = getNativeEvent(event).touches; - if (touches && touches.length === 1){ - var target = event.target, - flags = getVirtualBindingFlags(target); - - if (flags.hasVirtualBinding){ - lastTouchID = nextTouchID++; - $(target).data(touchTargetPropertyName, lastTouchID); - - clearResetTimer(); - - disableMouseBindings(); - didScroll = false; - - var t = getNativeEvent(event).touches[0]; - startX = t.pageX; - startY = t.pageY; - - if (scrollTopSupported){ - startScrollX = window.pageXOffset; - startScrollY = window.pageYOffset; - } - - triggerVirtualEvent("vmouseover", event, flags); - triggerVirtualEvent("vmousedown", event, flags); - } - } -} - -function handleScroll(event) -{ - if (!didScroll){ - triggerVirtualEvent("vmousecancel", event, getVirtualBindingFlags(event.target)); - } - - didScroll = true; - startResetTimer(); -} - -function handleTouchMove(event) -{ - var t = getNativeEvent(event).touches[0]; - - var didCancel = didScroll, - moveThreshold = $.vmouse.moveDistanceThreshold; - didScroll = didScroll - || (scrollTopSupported && (startScrollX !== window.pageXOffset || startScrollY !== window.pageYOffset)) - || (Math.abs(t.pageX - startX) > moveThreshold || Math.abs(t.pageY - startY) > moveThreshold); - - var flags = getVirtualBindingFlags(event.target); - if (didScroll && !didCancel){ - triggerVirtualEvent("vmousecancel", event, flags); - } - triggerVirtualEvent("vmousemove", event, flags); - startResetTimer(); -} - -function handleTouchEnd(event) -{ - disableTouchBindings(); - - var flags = getVirtualBindingFlags(event.target); - triggerVirtualEvent("vmouseup", event, flags); - if (!didScroll){ - if (triggerVirtualEvent("vclick", event, flags)){ - // The target of the mouse events that follow the touchend - // event don't necessarily match the target used during the - // touch. This means we need to rely on coordinates for blocking - // any click that is generated. - var t = getNativeEvent(event).changedTouches[0]; - clickBlockList.push({ touchID: lastTouchID, x: t.clientX, y: t.clientY }); - - // Prevent any mouse events that follow from triggering - // virtual event notifications. - blockMouseTriggers = true; - } - } - triggerVirtualEvent("vmouseout", event, flags); - didScroll = false; - - startResetTimer(); -} - -function hasVirtualBindings($ele) -{ - var bindings = $ele.data(dataPropertyName), k; - if (bindings){ - for (k in bindings){ - if (bindings[k]){ - return true; - } - } - } - return false; -} - -function dummyMouseHandler(){} - -function getSpecialEventObject(eventType) -{ - var realType = eventType.substr(1); - return { - setup: function(data, namespace) { - // If this is the first virtual mouse binding for this element, - // add a bindings object to its data. - - var $this = $(this); - - if (!hasVirtualBindings($this)){ - $this.data(dataPropertyName, {}); - } - - // If setup is called, we know it is the first binding for this - // eventType, so initialize the count for the eventType to zero. - - var bindings = $this.data(dataPropertyName); - bindings[eventType] = true; - - // If this is the first virtual mouse event for this type, - // register a global handler on the document. - - activeDocHandlers[eventType] = (activeDocHandlers[eventType] || 0) + 1; - if (activeDocHandlers[eventType] === 1){ - $document.bind(realType, mouseEventCallback); - } - - // Some browsers, like Opera Mini, won't dispatch mouse/click events - // for elements unless they actually have handlers registered on them. - // To get around this, we register dummy handlers on the elements. - - $this.bind(realType, dummyMouseHandler); - - // For now, if event capture is not supported, we rely on mouse handlers. - if (eventCaptureSupported){ - // If this is the first virtual mouse binding for the document, - // register our touchstart handler on the document. - - activeDocHandlers["touchstart"] = (activeDocHandlers["touchstart"] || 0) + 1; - if (activeDocHandlers["touchstart"] === 1) { - $document.bind("touchstart", handleTouchStart); - } - } - }, - - teardown: function(data, namespace) { - // If this is the last virtual binding for this eventType, - // remove its global handler from the document. - - --activeDocHandlers[eventType]; - if (!activeDocHandlers[eventType]){ - $document.unbind(realType, mouseEventCallback); - } - - if (eventCaptureSupported){ - // If this is the last virtual mouse binding in existence, - // remove our document touchstart listener. - - --activeDocHandlers["touchstart"]; - if (!activeDocHandlers["touchstart"]) { - $document.unbind("touchstart", handleTouchStart); - } - } - - var $this = $(this), - bindings = $this.data(dataPropertyName); - bindings[eventType] = false; - - // Unregister the dummy event handler. - - $this.unbind(realType, dummyMouseHandler); - - // If this is the last virtual mouse binding on the - // element, remove the binding data from the element. - - if (!hasVirtualBindings($this)){ - $this.removeData(dataPropertyName); - } - } - }; -} - -// Expose our custom events to the jQuery bind/unbind mechanism. - -for (var i = 0; i < virtualEventNames.length; i++){ - $.event.special[virtualEventNames[i]] = getSpecialEventObject(virtualEventNames[i]); -} - -// Add a capture click handler to block clicks. -// Note that we require event capture support for this so if the device -// doesn't support it, we punt for now and rely solely on mouse events. -if (eventCaptureSupported){ - document.addEventListener("click", function(e){ - var cnt = clickBlockList.length; - var target = e.target; - if (cnt) { - var x = e.clientX, - y = e.clientY, - threshold = $.vmouse.clickDistanceThreshold; - - // The idea here is to run through the clickBlockList to see if - // the current click event is in the proximity of one of our - // vclick events that had preventDefault() called on it. If we find - // one, then we block the click. - // - // Why do we have to rely on proximity? - // - // Because the target of the touch event that triggered the vclick - // can be different from the target of the click event synthesized - // by the browser. The target of a mouse/click event that is syntehsized - // from a touch event seems to be implementation specific. For example, - // some browsers will fire mouse/click events for a link that is near - // a touch event, even though the target of the touchstart/touchend event - // says the user touched outside the link. Also, it seems that with most - // browsers, the target of the mouse/click event is not calculated until the - // time it is dispatched, so if you replace an element that you touched - // with another element, the target of the mouse/click will be the new - // element underneath that point. - // - // Aside from proximity, we also check to see if the target and any - // of its ancestors were the ones that blocked a click. This is necessary - // because of the strange mouse/click target calculation done in the - // Android 2.1 browser, where if you click on an element, and there is a - // mouse/click handler on one of its ancestors, the target will be the - // innermost child of the touched element, even if that child is no where - // near the point of touch. - - var ele = target; - while (ele) { - for (var i = 0; i < cnt; i++) { - var o = clickBlockList[i], - touchID = 0; - if ((ele === target && Math.abs(o.x - x) < threshold && Math.abs(o.y - y) < threshold) || $(ele).data(touchTargetPropertyName) === o.touchID){ - // XXX: We may want to consider removing matches from the block list - // instead of waiting for the reset timer to fire. - e.preventDefault(); - e.stopPropagation(); - return; - } - } - ele = ele.parentNode; - } - } - }, true); -} -})(jQuery, window, document);/* -* jQuery Mobile Framework : events -* Copyright (c) jQuery Project -* Dual licensed under the MIT or GPL Version 2 licenses. -* http://jquery.org/license -*/ -(function($, undefined ) { - -// add new event shortcuts -$.each( "touchstart touchmove touchend orientationchange tap taphold swipe swipeleft swiperight scrollstart scrollstop".split( " " ), function( i, name ) { - $.fn[ name ] = function( fn ) { - return fn ? this.bind( name, fn ) : this.trigger( name ); - }; - $.attrFn[ name ] = true; -}); - -var supportTouch = $.support.touch, - scrollEvent = "touchmove scroll", - touchStartEvent = supportTouch ? "touchstart" : "mousedown", - touchStopEvent = supportTouch ? "touchend" : "mouseup", - touchMoveEvent = supportTouch ? "touchmove" : "mousemove"; - -function triggerCustomEvent(obj, eventType, event) -{ - var originalType = event.type; - event.type = eventType; - $.event.handle.call( obj, event ); - event.type = originalType; -} - -// also handles scrollstop -$.event.special.scrollstart = { - enabled: true, - - setup: function() { - var thisObject = this, - $this = $( thisObject ), - scrolling, - timer; - - function trigger( event, state ) { - scrolling = state; - triggerCustomEvent( thisObject, scrolling ? "scrollstart" : "scrollstop", event ); - } - - // iPhone triggers scroll after a small delay; use touchmove instead - $this.bind( scrollEvent, function( event ) { - if ( !$.event.special.scrollstart.enabled ) { - return; - } - - if ( !scrolling ) { - trigger( event, true ); - } - - clearTimeout( timer ); - timer = setTimeout(function() { - trigger( event, false ); - }, 50 ); - }); - } -}; - -// also handles taphold -$.event.special.tap = { - setup: function() { - var thisObject = this, - $this = $( thisObject ); - - $this - .bind("vmousedown", function( event ) { - if ( event.which && event.which !== 1 ) { - return false; - } - - var touching = true, - origTarget = event.target, - origEvent = event.originalEvent, - timer; - - function clearTapHandlers() { - touching = false; - clearTimeout(timer); - $this.unbind("vclick", clickHandler).unbind("vmousecancel", clearTapHandlers); - } - - function clickHandler(event) { - clearTapHandlers(); - - /* ONLY trigger a 'tap' event if the start target is - * the same as the stop target. - */ - if ( origTarget == event.target ) { - triggerCustomEvent( thisObject, "tap", event ); - } - } - - $this.bind("vmousecancel", clearTapHandlers).bind("vclick", clickHandler); - - timer = setTimeout(function() { - if ( touching ) { - triggerCustomEvent( thisObject, "taphold", event ); - } - }, 750 ); - }); - } -}; - -// also handles swipeleft, swiperight -$.event.special.swipe = { - setup: function() { - var thisObject = this, - $this = $( thisObject ); - - $this - .bind( touchStartEvent, function( event ) { - var data = event.originalEvent.touches ? - event.originalEvent.touches[ 0 ] : - event, - start = { - time: (new Date).getTime(), - coords: [ data.pageX, data.pageY ], - origin: $( event.target ) - }, - stop; - - function moveHandler( event ) { - if ( !start ) { - return; - } - - var data = event.originalEvent.touches ? - event.originalEvent.touches[ 0 ] : - event; - stop = { - time: (new Date).getTime(), - coords: [ data.pageX, data.pageY ] - }; - - // prevent scrolling - if ( Math.abs( start.coords[0] - stop.coords[0] ) > 10 ) { - event.preventDefault(); - } - } - - $this - .bind( touchMoveEvent, moveHandler ) - .one( touchStopEvent, function( event ) { - $this.unbind( touchMoveEvent, moveHandler ); - if ( start && stop ) { - if ( stop.time - start.time < 1000 && - Math.abs( start.coords[0] - stop.coords[0]) > 30 && - Math.abs( start.coords[1] - stop.coords[1]) < 75 ) { - start.origin - .trigger( "swipe" ) - - .trigger( start.coords[0] > stop.coords[0] ? "swipeleft" : "swiperight" ); - } - } - start = stop = undefined; - }); - }); - } -}; - -(function($){ - // "Cowboy" Ben Alman - - var win = $(window), - special_event, - get_orientation, - last_orientation; - - $.event.special.orientationchange = special_event = { - setup: function(){ - // If the event is supported natively, return false so that jQuery - // will bind to the event using DOM methods. - if ( $.support.orientation ) { return false; } - - // Get the current orientation to avoid initial double-triggering. - last_orientation = get_orientation(); - - // Because the orientationchange event doesn't exist, simulate the - // event by testing window dimensions on resize. - win.bind( "resize", handler ); - }, - teardown: function(){ - // If the event is not supported natively, return false so that - // jQuery will unbind the event using DOM methods. - if ( $.support.orientation ) { return false; } - - // Because the orientationchange event doesn't exist, unbind the - // resize event handler. - win.unbind( "resize", handler ); - }, - add: function( handleObj ) { - // Save a reference to the bound event handler. - var old_handler = handleObj.handler; - - handleObj.handler = function( event ) { - // Modify event object, adding the .orientation property. - event.orientation = get_orientation(); - - // Call the originally-bound event handler and return its result. - return old_handler.apply( this, arguments ); - }; - } - }; - - // If the event is not supported natively, this handler will be bound to - // the window resize event to simulate the orientationchange event. - function handler() { - // Get the current orientation. - var orientation = get_orientation(); - - if ( orientation !== last_orientation ) { - // The orientation has changed, so trigger the orientationchange event. - last_orientation = orientation; - win.trigger( "orientationchange" ); - } - }; - - // Get the current page orientation. This method is exposed publicly, should it - // be needed, as jQuery.event.special.orientationchange.orientation() - special_event.orientation = get_orientation = function() { - var elem = document.documentElement; - return elem && elem.clientWidth / elem.clientHeight < 1.1 ? "portrait" : "landscape"; - }; - -})(jQuery); - -$.each({ - scrollstop: "scrollstart", - taphold: "tap", - swipeleft: "swipe", - swiperight: "swipe" -}, function( event, sourceEvent ) { - $.event.special[ event ] = { - setup: function() { - $( this ).bind( sourceEvent, $.noop ); - } - }; -}); - -})( jQuery ); -/*! - * jQuery hashchange event - v1.3 - 7/21/2010 - * http://benalman.com/projects/jquery-hashchange-plugin/ - * - * Copyright (c) 2010 "Cowboy" Ben Alman - * Dual licensed under the MIT and GPL licenses. - * http://benalman.com/about/license/ - */ - -// Script: jQuery hashchange event -// -// *Version: 1.3, Last updated: 7/21/2010* -// -// Project Home - http://benalman.com/projects/jquery-hashchange-plugin/ -// GitHub - http://github.com/cowboy/jquery-hashchange/ -// Source - http://github.com/cowboy/jquery-hashchange/raw/master/jquery.ba-hashchange.js -// (Minified) - http://github.com/cowboy/jquery-hashchange/raw/master/jquery.ba-hashchange.min.js (0.8kb gzipped) -// -// About: License -// -// Copyright (c) 2010 "Cowboy" Ben Alman, -// Dual licensed under the MIT and GPL licenses. -// http://benalman.com/about/license/ -// -// About: Examples -// -// These working examples, complete with fully commented code, illustrate a few -// ways in which this plugin can be used. -// -// hashchange event - http://benalman.com/code/projects/jquery-hashchange/examples/hashchange/ -// document.domain - http://benalman.com/code/projects/jquery-hashchange/examples/document_domain/ -// -// About: Support and Testing -// -// Information about what version or versions of jQuery this plugin has been -// tested with, what browsers it has been tested in, and where the unit tests -// reside (so you can test it yourself). -// -// jQuery Versions - 1.2.6, 1.3.2, 1.4.1, 1.4.2 -// Browsers Tested - Internet Explorer 6-8, Firefox 2-4, Chrome 5-6, Safari 3.2-5, -// Opera 9.6-10.60, iPhone 3.1, Android 1.6-2.2, BlackBerry 4.6-5. -// Unit Tests - http://benalman.com/code/projects/jquery-hashchange/unit/ -// -// About: Known issues -// -// While this jQuery hashchange event implementation is quite stable and -// robust, there are a few unfortunate browser bugs surrounding expected -// hashchange event-based behaviors, independent of any JavaScript -// window.onhashchange abstraction. See the following examples for more -// information: -// -// Chrome: Back Button - http://benalman.com/code/projects/jquery-hashchange/examples/bug-chrome-back-button/ -// Firefox: Remote XMLHttpRequest - http://benalman.com/code/projects/jquery-hashchange/examples/bug-firefox-remote-xhr/ -// WebKit: Back Button in an Iframe - http://benalman.com/code/projects/jquery-hashchange/examples/bug-webkit-hash-iframe/ -// Safari: Back Button from a different domain - http://benalman.com/code/projects/jquery-hashchange/examples/bug-safari-back-from-diff-domain/ -// -// Also note that should a browser natively support the window.onhashchange -// event, but not report that it does, the fallback polling loop will be used. -// -// About: Release History -// -// 1.3 - (7/21/2010) Reorganized IE6/7 Iframe code to make it more -// "removable" for mobile-only development. Added IE6/7 document.title -// support. Attempted to make Iframe as hidden as possible by using -// techniques from http://www.paciellogroup.com/blog/?p=604. Added -// support for the "shortcut" format $(window).hashchange( fn ) and -// $(window).hashchange() like jQuery provides for built-in events. -// Renamed jQuery.hashchangeDelay to <jQuery.fn.hashchange.delay> and -// lowered its default value to 50. Added <jQuery.fn.hashchange.domain> -// and <jQuery.fn.hashchange.src> properties plus document-domain.html -// file to address access denied issues when setting document.domain in -// IE6/7. -// 1.2 - (2/11/2010) Fixed a bug where coming back to a page using this plugin -// from a page on another domain would cause an error in Safari 4. Also, -// IE6/7 Iframe is now inserted after the body (this actually works), -// which prevents the page from scrolling when the event is first bound. -// Event can also now be bound before DOM ready, but it won't be usable -// before then in IE6/7. -// 1.1 - (1/21/2010) Incorporated document.documentMode test to fix IE8 bug -// where browser version is incorrectly reported as 8.0, despite -// inclusion of the X-UA-Compatible IE=EmulateIE7 meta tag. -// 1.0 - (1/9/2010) Initial Release. Broke out the jQuery BBQ event.special -// window.onhashchange functionality into a separate plugin for users -// who want just the basic event & back button support, without all the -// extra awesomeness that BBQ provides. This plugin will be included as -// part of jQuery BBQ, but also be available separately. - -(function($,window,undefined){ - '$:nomunge'; // Used by YUI compressor. - - // Reused string. - var str_hashchange = 'hashchange', - - // Method / object references. - doc = document, - fake_onhashchange, - special = $.event.special, - - // Does the browser support window.onhashchange? Note that IE8 running in - // IE7 compatibility mode reports true for 'onhashchange' in window, even - // though the event isn't supported, so also test document.documentMode. - doc_mode = doc.documentMode, - supports_onhashchange = 'on' + str_hashchange in window && ( doc_mode === undefined || doc_mode > 7 ); - - // Get location.hash (or what you'd expect location.hash to be) sans any - // leading #. Thanks for making this necessary, Firefox! - function get_fragment( url ) { - url = url || location.href; - return '#' + url.replace( /^[^#]*#?(.*)$/, '$1' ); - }; - - // Method: jQuery.fn.hashchange - // - // Bind a handler to the window.onhashchange event or trigger all bound - // window.onhashchange event handlers. This behavior is consistent with - // jQuery's built-in event handlers. - // - // Usage: - // - // > jQuery(window).hashchange( [ handler ] ); - // - // Arguments: - // - // handler - (Function) Optional handler to be bound to the hashchange - // event. This is a "shortcut" for the more verbose form: - // jQuery(window).bind( 'hashchange', handler ). If handler is omitted, - // all bound window.onhashchange event handlers will be triggered. This - // is a shortcut for the more verbose - // jQuery(window).trigger( 'hashchange' ). These forms are described in - // the <hashchange event> section. - // - // Returns: - // - // (jQuery) The initial jQuery collection of elements. - - // Allow the "shortcut" format $(elem).hashchange( fn ) for binding and - // $(elem).hashchange() for triggering, like jQuery does for built-in events. - $.fn[ str_hashchange ] = function( fn ) { - return fn ? this.bind( str_hashchange, fn ) : this.trigger( str_hashchange ); - }; - - // Property: jQuery.fn.hashchange.delay - // - // The numeric interval (in milliseconds) at which the <hashchange event> - // polling loop executes. Defaults to 50. - - // Property: jQuery.fn.hashchange.domain - // - // If you're setting document.domain in your JavaScript, and you want hash - // history to work in IE6/7, not only must this property be set, but you must - // also set document.domain BEFORE jQuery is loaded into the page. This - // property is only applicable if you are supporting IE6/7 (or IE8 operating - // in "IE7 compatibility" mode). - // - // In addition, the <jQuery.fn.hashchange.src> property must be set to the - // path of the included "document-domain.html" file, which can be renamed or - // modified if necessary (note that the document.domain specified must be the - // same in both your main JavaScript as well as in this file). - // - // Usage: - // - // jQuery.fn.hashchange.domain = document.domain; - - // Property: jQuery.fn.hashchange.src - // - // If, for some reason, you need to specify an Iframe src file (for example, - // when setting document.domain as in <jQuery.fn.hashchange.domain>), you can - // do so using this property. Note that when using this property, history - // won't be recorded in IE6/7 until the Iframe src file loads. This property - // is only applicable if you are supporting IE6/7 (or IE8 operating in "IE7 - // compatibility" mode). - // - // Usage: - // - // jQuery.fn.hashchange.src = 'path/to/file.html'; - - $.fn[ str_hashchange ].delay = 50; - /* - $.fn[ str_hashchange ].domain = null; - $.fn[ str_hashchange ].src = null; - */ - - // Event: hashchange event - // - // Fired when location.hash changes. In browsers that support it, the native - // HTML5 window.onhashchange event is used, otherwise a polling loop is - // initialized, running every <jQuery.fn.hashchange.delay> milliseconds to - // see if the hash has changed. In IE6/7 (and IE8 operating in "IE7 - // compatibility" mode), a hidden Iframe is created to allow the back button - // and hash-based history to work. - // - // Usage as described in <jQuery.fn.hashchange>: - // - // > // Bind an event handler. - // > jQuery(window).hashchange( function(e) { - // > var hash = location.hash; - // > ... - // > }); - // > - // > // Manually trigger the event handler. - // > jQuery(window).hashchange(); - // - // A more verbose usage that allows for event namespacing: - // - // > // Bind an event handler. - // > jQuery(window).bind( 'hashchange', function(e) { - // > var hash = location.hash; - // > ... - // > }); - // > - // > // Manually trigger the event handler. - // > jQuery(window).trigger( 'hashchange' ); - // - // Additional Notes: - // - // * The polling loop and Iframe are not created until at least one handler - // is actually bound to the 'hashchange' event. - // * If you need the bound handler(s) to execute immediately, in cases where - // a location.hash exists on page load, via bookmark or page refresh for - // example, use jQuery(window).hashchange() or the more verbose - // jQuery(window).trigger( 'hashchange' ). - // * The event can be bound before DOM ready, but since it won't be usable - // before then in IE6/7 (due to the necessary Iframe), recommended usage is - // to bind it inside a DOM ready handler. - - // Override existing $.event.special.hashchange methods (allowing this plugin - // to be defined after jQuery BBQ in BBQ's source code). - special[ str_hashchange ] = $.extend( special[ str_hashchange ], { - - // Called only when the first 'hashchange' event is bound to window. - setup: function() { - // If window.onhashchange is supported natively, there's nothing to do.. - if ( supports_onhashchange ) { return false; } - - // Otherwise, we need to create our own. And we don't want to call this - // until the user binds to the event, just in case they never do, since it - // will create a polling loop and possibly even a hidden Iframe. - $( fake_onhashchange.start ); - }, - - // Called only when the last 'hashchange' event is unbound from window. - teardown: function() { - // If window.onhashchange is supported natively, there's nothing to do.. - if ( supports_onhashchange ) { return false; } - - // Otherwise, we need to stop ours (if possible). - $( fake_onhashchange.stop ); - } - - }); - - // fake_onhashchange does all the work of triggering the window.onhashchange - // event for browsers that don't natively support it, including creating a - // polling loop to watch for hash changes and in IE 6/7 creating a hidden - // Iframe to enable back and forward. - fake_onhashchange = (function(){ - var self = {}, - timeout_id, - - // Remember the initial hash so it doesn't get triggered immediately. - last_hash = get_fragment(), - - fn_retval = function(val){ return val; }, - history_set = fn_retval, - history_get = fn_retval; - - // Start the polling loop. - self.start = function() { - timeout_id || poll(); - }; - - // Stop the polling loop. - self.stop = function() { - timeout_id && clearTimeout( timeout_id ); - timeout_id = undefined; - }; - - // This polling loop checks every $.fn.hashchange.delay milliseconds to see - // if location.hash has changed, and triggers the 'hashchange' event on - // window when necessary. - function poll() { - var hash = get_fragment(), - history_hash = history_get( last_hash ); - - if ( hash !== last_hash ) { - history_set( last_hash = hash, history_hash ); - - $(window).trigger( str_hashchange ); - - } else if ( history_hash !== last_hash ) { - location.href = location.href.replace( /#.*/, '' ) + history_hash; - } - - timeout_id = setTimeout( poll, $.fn[ str_hashchange ].delay ); - }; - - // vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv - // vvvvvvvvvvvvvvvvvvv REMOVE IF NOT SUPPORTING IE6/7/8 vvvvvvvvvvvvvvvvvvv - // vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv - $.browser.msie && !supports_onhashchange && (function(){ - // Not only do IE6/7 need the "magical" Iframe treatment, but so does IE8 - // when running in "IE7 compatibility" mode. - - var iframe, - iframe_src; - - // When the event is bound and polling starts in IE 6/7, create a hidden - // Iframe for history handling. - self.start = function(){ - if ( !iframe ) { - iframe_src = $.fn[ str_hashchange ].src; - iframe_src = iframe_src && iframe_src + get_fragment(); - - // Create hidden Iframe. Attempt to make Iframe as hidden as possible - // by using techniques from http://www.paciellogroup.com/blog/?p=604. - iframe = $('<iframe tabindex="-1" title="empty"/>').hide() - - // When Iframe has completely loaded, initialize the history and - // start polling. - .one( 'load', function(){ - iframe_src || history_set( get_fragment() ); - poll(); - }) - - // Load Iframe src if specified, otherwise nothing. - .attr( 'src', iframe_src || 'javascript:0' ) - - // Append Iframe after the end of the body to prevent unnecessary - // initial page scrolling (yes, this works). - .insertAfter( 'body' )[0].contentWindow; - - // Whenever `document.title` changes, update the Iframe's title to - // prettify the back/next history menu entries. Since IE sometimes - // errors with "Unspecified error" the very first time this is set - // (yes, very useful) wrap this with a try/catch block. - doc.onpropertychange = function(){ - try { - if ( event.propertyName === 'title' ) { - iframe.document.title = doc.title; - } - } catch(e) {} - }; - - } - }; - - // Override the "stop" method since an IE6/7 Iframe was created. Even - // if there are no longer any bound event handlers, the polling loop - // is still necessary for back/next to work at all! - self.stop = fn_retval; - - // Get history by looking at the hidden Iframe's location.hash. - history_get = function() { - return get_fragment( iframe.location.href ); - }; - - // Set a new history item by opening and then closing the Iframe - // document, *then* setting its location.hash. If document.domain has - // been set, update that as well. - history_set = function( hash, history_hash ) { - var iframe_doc = iframe.document, - domain = $.fn[ str_hashchange ].domain; - - if ( hash !== history_hash ) { - // Update Iframe with any initial `document.title` that might be set. - iframe_doc.title = doc.title; - - // Opening the Iframe's document after it has been closed is what - // actually adds a history entry. - iframe_doc.open(); - - // Set document.domain for the Iframe document as well, if necessary. - domain && iframe_doc.write( '<script>document.domain="' + domain + '"</script>' ); - - iframe_doc.close(); - - // Update the Iframe's hash, for great justice. - iframe.location.hash = hash; - } - }; - - })(); - // ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - // ^^^^^^^^^^^^^^^^^^^ REMOVE IF NOT SUPPORTING IE6/7/8 ^^^^^^^^^^^^^^^^^^^ - // ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - - return self; - })(); - -})(jQuery,this); -/* -* jQuery Mobile Framework : "page" plugin -* Copyright (c) jQuery Project -* Dual licensed under the MIT or GPL Version 2 licenses. -* http://jquery.org/license -*/ -(function($, undefined ) { - -$.widget( "mobile.page", $.mobile.widget, { - options: { - backBtnText: "Back", - addBackBtn: true, - backBtnTheme: null, - degradeInputs: { - color: false, - date: false, - datetime: false, - "datetime-local": false, - email: false, - month: false, - number: false, - range: "number", - search: true, - tel: false, - time: false, - url: false, - week: false - }, - keepNative: null - }, - - _create: function() { - var $elem = this.element, - o = this.options; - this.keepNative = ":jqmData(role='none'), :jqmData(role='nojs')" + (o.keepNative ? ", " + o.keepNative : ""); - - if ( this._trigger( "beforeCreate" ) === false ) { - return; - } - - //some of the form elements currently rely on the presence of ui-page and ui-content - // classes so we'll handle page and content roles outside of the main role processing - // loop below. - $elem.find( ":jqmData(role='page'), :jqmData(role='content')" ).andSelf().each(function() { - $(this).addClass( "ui-" + $(this).jqmData( "role" ) ); - }); - - $elem.find( ":jqmData(role='nojs')" ).addClass( "ui-nojs" ); - - // pre-find data els - var $dataEls = $elem.find( ":jqmData(role)" ).andSelf().each(function() { - var $this = $( this ), - role = $this.jqmData( "role" ), - theme = $this.jqmData( "theme" ); - - //apply theming and markup modifications to page,header,content,footer - if ( role === "header" || role === "footer" ) { - $this.addClass( "ui-bar-" + (theme || $this.parent( ":jqmData(role='page')" ).jqmData( "theme" ) || "a") ); - - // add ARIA role - $this.attr( "role", role === "header" ? "banner" : "contentinfo" ); - - //right,left buttons - var $headeranchors = $this.children( "a" ), - leftbtn = $headeranchors.hasClass( "ui-btn-left" ), - rightbtn = $headeranchors.hasClass( "ui-btn-right" ); - - if ( !leftbtn ) { - leftbtn = $headeranchors.eq( 0 ).not( ".ui-btn-right" ).addClass( "ui-btn-left" ).length; - } - - if ( !rightbtn ) { - rightbtn = $headeranchors.eq( 1 ).addClass( "ui-btn-right" ).length; - } - - // auto-add back btn on pages beyond first view - if ( o.addBackBtn && role === "header" && - $( ".ui-page" ).length > 1 && - $elem.jqmData( "url" ) !== $.mobile.path.stripHash( location.hash ) && - !leftbtn && $this.jqmData( "backbtn" ) !== false ) { - - var backBtn = $( "<a href='#' class='ui-btn-left' data-"+ $.mobile.ns +"rel='back' data-"+ $.mobile.ns +"icon='arrow-l'>"+ o.backBtnText +"</a>" ).prependTo( $this ); - - //if theme is provided, override default inheritance - if( o.backBtnTheme ){ - backBtn.attr( "data-"+ $.mobile.ns +"theme", o.backBtnTheme ); - } - } - - //page title - $this.children( "h1, h2, h3, h4, h5, h6" ) - .addClass( "ui-title" ) - //regardless of h element number in src, it becomes h1 for the enhanced page - .attr({ "tabindex": "0", "role": "heading", "aria-level": "1" }); - - } else if ( role === "content" ) { - if ( theme ) { - $this.addClass( "ui-body-" + theme ); - } - - // add ARIA role - $this.attr( "role", "main" ); - - } else if ( role === "page" ) { - $this.addClass( "ui-body-" + (theme || "c") ); - } - - switch(role) { - case "header": - case "footer": - case "page": - case "content": - $this.addClass( "ui-" + role ); - break; - case "collapsible": - case "fieldcontain": - case "navbar": - case "listview": - case "dialog": - $this[ role ](); - break; - } - }); - - //enhance form controls - this._enhanceControls(); - - //links in bars, or those with data-role become buttons - $elem.find( ":jqmData(role='button'), .ui-bar > a, .ui-header > a, .ui-footer > a" ) - .not( ".ui-btn" ) - .not(this.keepNative) - .buttonMarkup(); - - $elem - .find(":jqmData(role='controlgroup')") - .controlgroup(); - - //links within content areas - $elem.find( "a:not(.ui-btn):not(.ui-link-inherit)" ) - .not(this.keepNative) - .addClass( "ui-link" ); - - //fix toolbars - $elem.fixHeaderFooter(); - }, - - _typeAttributeRegex: /\s+type=["']?\w+['"]?/, - - _enhanceControls: function() { - var o = this.options, self = this; - - // degrade inputs to avoid poorly implemented native functionality - this.element.find( "input" ).not(this.keepNative).each(function() { - var type = this.getAttribute( "type" ), - optType = o.degradeInputs[ type ] || "text"; - - if ( o.degradeInputs[ type ] ) { - $( this ).replaceWith( - $( "<div>" ).html( $(this).clone() ).html() - .replace( self._typeAttributeRegex, " type=\""+ optType +"\" data-" + $.mobile.ns + "type=\""+type+"\" " ) ); - } - }); - - // We re-find form elements since the degredation code above - // may have injected new elements. We cache the non-native control - // query to reduce the number of times we search through the entire page. - - var allControls = this.element.find("input, textarea, select, button"), - nonNativeControls = allControls.not(this.keepNative); - - // XXX: Temporary workaround for issue 785. Turn off autocorrect and - // autocomplete since the popup they use can't be dismissed by - // the user. Note that we test for the presence of the feature - // by looking for the autocorrect property on the input element. - - var textInputs = allControls.filter( "input[type=text]" ); - - if (textInputs.length && typeof textInputs[0].autocorrect !== "undefined") { - textInputs.each(function(){ - // Set the attribute instead of the property just in case there - // is code that attempts to make modifications via HTML. - this.setAttribute("autocorrect", "off"); - this.setAttribute("autocomplete", "off"); - }); - } - - // enchance form controls - nonNativeControls - .filter( "[type='radio'], [type='checkbox']" ) - .checkboxradio(); - - nonNativeControls - .filter( "button, [type='button'], [type='submit'], [type='reset'], [type='image']" ) - .button(); - - nonNativeControls - .filter( "input, textarea" ) - .not( "[type='radio'], [type='checkbox'], [type='button'], [type='submit'], [type='reset'], [type='image'], [type='hidden']" ) - .textinput(); - - nonNativeControls - .filter( "input, select" ) - .filter( ":jqmData(role='slider'), :jqmData(type='range')" ) - .slider(); - - nonNativeControls - .filter( "select:not(:jqmData(role='slider'))" ) - .selectmenu(); - } -}); - -})( jQuery ); -/*! - * jQuery Mobile v@VERSION - * http://jquerymobile.com/ - * - * Copyright 2010, jQuery Project - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - */ - -(function( $, window, undefined ) { - - //jQuery.mobile configurable options - $.extend( $.mobile, { - - //namespace used framework-wide for data-attrs. Default is no namespace - ns: "", - - //define the url parameter used for referencing widget-generated sub-pages. - //Translates to to example.html&ui-page=subpageIdentifier - //hash segment before &ui-page= is used to make Ajax request - subPageUrlKey: "ui-page", - - //anchor links with a data-rel, or pages with a data-role, that match these selectors will be untrackable in history - //(no change in URL, not bookmarkable) - nonHistorySelectors: "dialog", - - //class assigned to page currently in view, and during transitions - activePageClass: "ui-page-active", - - //class used for "active" button state, from CSS framework - activeBtnClass: "ui-btn-active", - - //automatically handle clicks and form submissions through Ajax, when same-domain - ajaxEnabled: true, - - //automatically load and show pages based on location.hash - hashListeningEnabled: true, - - // TODO: deprecated - remove at 1.0 - //automatically handle link clicks through Ajax, when possible - ajaxLinksEnabled: true, - - // TODO: deprecated - remove at 1.0 - //automatically handle form submissions through Ajax, when possible - ajaxFormsEnabled: true, - - //set default transition - 'none' for no transitions - defaultTransition: "slide", - - //show loading message during Ajax requests - //if false, message will not appear, but loading classes will still be toggled on html el - loadingMessage: "loading", - - //error response message - appears when an Ajax page request fails - pageLoadErrorMessage: "Error Loading Page", - - //configure meta viewport tag's content attr: - //note: this feature is deprecated in A4 in favor of adding - //the meta viewport element directly in the markup - metaViewportContent: "width=device-width, minimum-scale=1, maximum-scale=1", - - //support conditions that must be met in order to proceed - //default enhanced qualifications are media query support OR IE 7+ - gradeA: function(){ - return $.support.mediaquery || $.mobile.browser.ie && $.mobile.browser.ie >= 7; - }, - - //TODO might be useful upstream in jquery itself ? - keyCode: { - ALT: 18, - BACKSPACE: 8, - CAPS_LOCK: 20, - COMMA: 188, - COMMAND: 91, - COMMAND_LEFT: 91, // COMMAND - COMMAND_RIGHT: 93, - CONTROL: 17, - DELETE: 46, - DOWN: 40, - END: 35, - ENTER: 13, - ESCAPE: 27, - HOME: 36, - INSERT: 45, - LEFT: 37, - MENU: 93, // COMMAND_RIGHT - NUMPAD_ADD: 107, - NUMPAD_DECIMAL: 110, - NUMPAD_DIVIDE: 111, - NUMPAD_ENTER: 108, - NUMPAD_MULTIPLY: 106, - NUMPAD_SUBTRACT: 109, - PAGE_DOWN: 34, - PAGE_UP: 33, - PERIOD: 190, - RIGHT: 39, - SHIFT: 16, - SPACE: 32, - TAB: 9, - UP: 38, - WINDOWS: 91 // COMMAND - }, - - //scroll page vertically: scroll to 0 to hide iOS address bar, or pass a Y value - silentScroll: function( ypos ) { - ypos = ypos || 0; - // prevent scrollstart and scrollstop events - $.event.special.scrollstart.enabled = false; - - setTimeout(function() { - window.scrollTo( 0, ypos ); - $(document).trigger( "silentscroll", { x: 0, y: ypos }); - },20); - - setTimeout(function() { - $.event.special.scrollstart.enabled = true; - }, 150 ); - } - }); - - //mobile version of data and removeData and hasData methods - //ensures all data is set and retrieved using jQuery Mobile's data namespace - $.fn.jqmData = function( prop, value ){ - return this.data( prop ? $.mobile.ns + prop : prop, value ); - }; - - $.jqmData = function( elem, prop, value ){ - return $.data( elem, prop && $.mobile.ns + prop, value ); - }; - - $.fn.jqmRemoveData = function( prop ){ - return this.removeData( $.mobile.ns + prop ); - }; - - $.jqmRemoveData = function( elem, prop ){ - return $.removeData( elem, prop && $.mobile.ns + prop ); - }; - - $.jqmHasData = function( elem, prop ){ - return $.hasData( elem, prop && $.mobile.ns + prop ); - }; - - - // Monkey-patching Sizzle to filter the :jqmData selector - var oldFind = $.find; - - $.find = function( selector, context, ret, extra ) { - selector = selector.replace(/:jqmData\(([^)]*)\)/g, "[data-" + ($.mobile.ns || "") + "$1]"); - - return oldFind.call( this, selector, context, ret, extra ); - }; - - $.extend( $.find, oldFind ); - - $.find.matches = function( expr, set ) { - return $.find( expr, null, null, set ); - }; - - $.find.matchesSelector = function( node, expr ) { - return $.find( expr, null, null, [node] ).length > 0; - }; -})( jQuery, this ); -/* -* jQuery Mobile Framework : core utilities for auto ajax navigation, base tag mgmt, -* Copyright (c) jQuery Project -* Dual licensed under the MIT or GPL Version 2 licenses. -* http://jquery.org/license -*/ -(function($, undefined ) { - - //define vars for interal use - var $window = $(window), - $html = $('html'), - $head = $('head'), - - //url path helpers for use in relative url management - path = { - - //get path from current hash, or from a file path - get: function( newPath ){ - if( newPath === undefined ){ - newPath = location.hash; - } - return path.stripHash( newPath ).replace(/[^\/]*\.[^\/*]+$/, ''); - }, - - //return the substring of a filepath before the sub-page key, for making a server request - getFilePath: function( path ){ - var splitkey = '&' + $.mobile.subPageUrlKey; - return path && path.split( splitkey )[0].split( dialogHashKey )[0]; - }, - - //set location hash to path - set: function( path ){ - location.hash = path; - }, - - //location pathname from intial directory request - origin: '', - - setOrigin: function(){ - path.origin = path.get( location.protocol + '//' + location.host + location.pathname ); - }, - - //prefix a relative url with the current path - // TODO rename to reflect conditional functionality - makeAbsolute: function( url ){ - // only create an absolute path when the hash can be used as one - return path.isPath(window.location.hash) ? path.get() + url : url; - }, - - // test if a given url (string) is a path - // NOTE might be exceptionally naive - isPath: function( url ){ - return /\//.test(url); - }, - - //return a url path with the window's location protocol/hostname/pathname removed - clean: function( url ){ - // Replace the protocol, host, and pathname only once at the beginning of the url to avoid - // problems when it's included as a part of a param - // Also, since all urls are absolute in IE, we need to remove the pathname as well. - var leadingUrlRootRegex = new RegExp("^" + location.protocol + "//" + location.host + location.pathname); - return url.replace(leadingUrlRootRegex, ""); - }, - - //just return the url without an initial # - stripHash: function( url ){ - return url.replace( /^#/, "" ); - }, - - //check whether a url is referencing the same domain, or an external domain or different protocol - //could be mailto, etc - isExternal: function( url ){ - return path.hasProtocol( path.clean( url ) ); - }, - - hasProtocol: function( url ){ - return (/^(:?\w+:)/).test( url ); - }, - - //check if the url is relative - isRelative: function( url ){ - return (/^[^\/|#]/).test( url ) && !path.hasProtocol( url ); - }, - - isEmbeddedPage: function( url ){ - return (/^#/).test( url ); - } - }, - - //will be defined when a link is clicked and given an active class - $activeClickedLink = null, - - //urlHistory is purely here to make guesses at whether the back or forward button was clicked - //and provide an appropriate transition - urlHistory = { - //array of pages that are visited during a single page load. each has a url and optional transition - stack: [], - - //maintain an index number for the active page in the stack - activeIndex: 0, - - //get active - getActive: function(){ - return urlHistory.stack[ urlHistory.activeIndex ]; - }, - - getPrev: function(){ - return urlHistory.stack[ urlHistory.activeIndex - 1 ]; - }, - - getNext: function(){ - return urlHistory.stack[ urlHistory.activeIndex + 1 ]; - }, - - // addNew is used whenever a new page is added - addNew: function( url, transition, title, storedTo ){ - //if there's forward history, wipe it - if( urlHistory.getNext() ){ - urlHistory.clearForward(); - } - - urlHistory.stack.push( {url : url, transition: transition, title: title, page: storedTo } ); - - urlHistory.activeIndex = urlHistory.stack.length - 1; - }, - - //wipe urls ahead of active index - clearForward: function(){ - urlHistory.stack = urlHistory.stack.slice( 0, urlHistory.activeIndex + 1 ); - }, - - directHashChange: function(opts){ - var back , forward, newActiveIndex; - - // check if url isp in history and if it's ahead or behind current page - $.each( urlHistory.stack, function( i, historyEntry ){ - - //if the url is in the stack, it's a forward or a back - if( opts.currentUrl === historyEntry.url ){ - //define back and forward by whether url is older or newer than current page - back = i < urlHistory.activeIndex; - forward = !back; - newActiveIndex = i; - } - }); - - // save new page index, null check to prevent falsey 0 result - this.activeIndex = newActiveIndex !== undefined ? newActiveIndex : this.activeIndex; - - if( back ){ - opts.isBack(); - } else if( forward ){ - opts.isForward(); - } - }, - - //disable hashchange event listener internally to ignore one change - //toggled internally when location.hash is updated to match the url of a successful page load - ignoreNextHashChange: true - }, - - //define first selector to receive focus when a page is shown - focusable = "[tabindex],a,button:visible,select:visible,input", - - //contains role for next page, if defined on clicked link via data-rel - nextPageRole = null, - - //queue to hold simultanious page transitions - pageTransitionQueue = [], - - // indicates whether or not page is in process of transitioning - isPageTransitioning = false, - - //nonsense hash change key for dialogs, so they create a history entry - dialogHashKey = "&ui-state=dialog", - - //existing base tag? - $base = $head.children("base"), - hostURL = location.protocol + '//' + location.host, - docLocation = path.get( hostURL + location.pathname ), - docBase = docLocation; - - if ($base.length){ - var href = $base.attr("href"); - if (href){ - if (href.search(/^[^:\/]+:\/\/[^\/]+\/?/) === -1){ - //the href is not absolute, we need to turn it into one - //so that we can turn paths stored in our location hash into - //relative paths. - if (href.charAt(0) === '/'){ - //site relative url - docBase = hostURL + href; - } - else { - //the href is a document relative url - docBase = docLocation + href; - //XXX: we need some code here to calculate the final path - // just in case the docBase contains up-level (../) references. - } - } - else { - //the href is an absolute url - docBase = href; - } - } - //make sure docBase ends with a slash - docBase = docBase + (docBase.charAt(docBase.length - 1) === '/' ? ' ' : '/'); - } - - //base element management, defined depending on dynamic base tag support - var base = $.support.dynamicBaseTag ? { - - //define base element, for use in routing asset urls that are referenced in Ajax-requested markup - element: ($base.length ? $base : $("<base>", { href: docBase }).prependTo( $head )), - - //set the generated BASE element's href attribute to a new page's base path - set: function( href ){ - base.element.attr('href', docBase + path.get( href )); - }, - - //set the generated BASE element's href attribute to a new page's base path - reset: function(){ - base.element.attr('href', docBase ); - } - - } : undefined; - - - - //set location pathname from intial directory request - path.setOrigin(); - -/* - internal utility functions ---------------------------------------*/ - - - //direct focus to the page title, or otherwise first focusable element - function reFocus( page ){ - var lastClicked = page.jqmData( "lastClicked" ); - - if( lastClicked && lastClicked.length ){ - lastClicked.focus(); - } - else { - var pageTitle = page.find( ".ui-title:eq(0)" ); - - if( pageTitle.length ){ - pageTitle.focus(); - } - else{ - page.find( focusable ).eq(0).focus(); - } - } - } - - //remove active classes after page transition or error - function removeActiveLinkClass( forceRemoval ){ - if( !!$activeClickedLink && (!$activeClickedLink.closest( '.ui-page-active' ).length || forceRemoval )){ - $activeClickedLink.removeClass( $.mobile.activeBtnClass ); - } - $activeClickedLink = null; - } - - //animation complete callback - $.fn.animationComplete = function( callback ){ - if($.support.cssTransitions){ - return $(this).one('webkitAnimationEnd', callback); - } - else{ - // defer execution for consistency between webkit/non webkit - setTimeout(callback, 0); - return $(this); - } - }; - - - -/* exposed $.mobile methods */ - - //update location.hash, with or without triggering hashchange event - //TODO - deprecate this one at 1.0 - $.mobile.updateHash = path.set; - - //expose path object on $.mobile - $.mobile.path = path; - - //expose base object on $.mobile - $.mobile.base = base; - - //url stack, useful when plugins need to be aware of previous pages viewed - //TODO: deprecate this one at 1.0 - $.mobile.urlstack = urlHistory.stack; - - //history stack - $.mobile.urlHistory = urlHistory; - - //enable cross-domain page support - $.mobile.allowCrossDomainPages = false; - - // changepage function - $.mobile.changePage = function( to, transition, reverse, changeHash, fromHashChange ){ - //from is always the currently viewed page - var toIsArray = $.type(to) === "array", - toIsObject = $.type(to) === "object", - from = toIsArray ? to[0] : $.mobile.activePage; - - to = toIsArray ? to[1] : to; - - var url = $.type(to) === "string" ? path.stripHash( to ) : "", - fileUrl = url, - data, - type = 'get', - isFormRequest = false, - duplicateCachedPage = null, - currPage = urlHistory.getActive(), - back = false, - forward = false, - pageTitle = document.title; - - - // If we are trying to transition to the same page that we are currently on ignore the request. - // an illegal same page request is defined by the current page being the same as the url, as long as there's history - // and to is not an array or object (those are allowed to be "same") - if( currPage && urlHistory.stack.length > 1 && currPage.url === url && !toIsArray && !toIsObject ) { - return; - } - else if(isPageTransitioning) { - pageTransitionQueue.unshift(arguments); - return; - } - - isPageTransitioning = true; - - // if the changePage was sent from a hashChange event guess if it came from the history menu - // and match the transition accordingly - if( fromHashChange ){ - urlHistory.directHashChange({ - currentUrl: url, - isBack: function(){ - forward = !(back = true); - reverse = true; - transition = transition || currPage.transition; - }, - isForward: function(){ - forward = !(back = false); - transition = transition || urlHistory.getActive().transition; - } - }); - - //TODO forward = !back was breaking for some reason - } - - if( toIsObject && to.url ){ - url = to.url; - data = to.data; - type = to.type; - isFormRequest = true; - //make get requests bookmarkable - if( data && type === 'get' ){ - if($.type( data ) === "object" ){ - data = $.param(data); - } - - url += "?" + data; - data = undefined; - } - } - - //reset base to pathname for new request - if(base){ base.reset(); } - - //kill the keyboard - if( window.document.activeElement ){ - $( window.document.activeElement || "" ).add( "input:focus, textarea:focus, select:focus" ).blur(); - } - - function defaultTransition(){ - if(transition === undefined){ - transition = ( nextPageRole && nextPageRole === 'dialog' ) ? 'pop' : $.mobile.defaultTransition; - } - } - - function releasePageTransitionLock(){ - isPageTransitioning = false; - if(pageTransitionQueue.length>0) { - $.mobile.changePage.apply($.mobile, pageTransitionQueue.pop()); - } - } - - //function for transitioning between two existing pages - function transitionPages() { - $.mobile.silentScroll(); - - //get current scroll distance - var currScroll = $window.scrollTop(), - perspectiveTransitions = [ "flip" ], - pageContainerClasses = []; - - //support deep-links to generated sub-pages - if( url.indexOf( "&" + $.mobile.subPageUrlKey ) > -1 ){ - to = $( ":jqmData(url='" + url + "')" ); - } - - if( from ){ - //set as data for returning to that spot - from - .jqmData( "lastScroll", currScroll) - .jqmData( "lastClicked", $activeClickedLink); - //trigger before show/hide events - from.data( "page" )._trigger( "beforehide", null, { nextPage: to } ); - } - to.data( "page" )._trigger( "beforeshow", null, { prevPage: from || $("") } ); - - function pageChangeComplete(){ - - if( changeHash !== false && url ){ - //disable hash listening temporarily - urlHistory.ignoreNextHashChange = false; - //update hash and history - path.set( url ); - } - - //if title element wasn't found, try the page div data attr too - var newPageTitle = to.jqmData("title") || to.find(".ui-header .ui-title" ).text(); - if( !!newPageTitle && pageTitle == document.title ){ - pageTitle = newPageTitle; - } - - //add page to history stack if it's not back or forward - if( !back && !forward ){ - urlHistory.addNew( url, transition, pageTitle, to ); - } - - //set page title - document.title = urlHistory.getActive().title; - - removeActiveLinkClass(); - - //jump to top or prev scroll, sometimes on iOS the page has not rendered yet. I could only get by this with a setTimeout, but would like to avoid that. - $.mobile.silentScroll( to.jqmData( "lastScroll" ) ); - - reFocus( to ); - - //trigger show/hide events - if( from ){ - from.data( "page" )._trigger( "hide", null, { nextPage: to } ); - } - //trigger pageshow, define prevPage as either from or empty jQuery obj - to.data( "page" )._trigger( "show", null, { prevPage: from || $("") } ); - - //set "to" as activePage - $.mobile.activePage = to; - - //if there's a duplicateCachedPage, remove it from the DOM now that it's hidden - if (duplicateCachedPage !== null) { - duplicateCachedPage.remove(); - } - - //remove initial build class (only present on first pageshow) - $html.removeClass( "ui-mobile-rendering" ); - - releasePageTransitionLock(); - } - - function addContainerClass(className){ - $.mobile.pageContainer.addClass(className); - pageContainerClasses.push(className); - } - - function removeContainerClasses(){ - $.mobile - .pageContainer - .removeClass(pageContainerClasses.join(" ")); - - pageContainerClasses = []; - } - - if(transition && (transition !== 'none')){ - $.mobile.pageLoading( true ); - if( $.inArray(transition, perspectiveTransitions) >= 0 ){ - addContainerClass('ui-mobile-viewport-perspective'); - } - - addContainerClass('ui-mobile-viewport-transitioning'); - - if( from ){ - from.addClass( transition + " out " + ( reverse ? "reverse" : "" ) ); - } - to.addClass( $.mobile.activePageClass + " " + transition + - " in " + ( reverse ? "reverse" : "" ) ); - - // callback - remove classes, etc - to.animationComplete(function() { - to.add(from).removeClass("out in reverse " + transition ); - if( from ){ - from.removeClass( $.mobile.activePageClass ); - } - pageChangeComplete(); - removeContainerClasses(); - }); - } - else{ - $.mobile.pageLoading( true ); - if( from ){ - from.removeClass( $.mobile.activePageClass ); - } - to.addClass( $.mobile.activePageClass ); - pageChangeComplete(); - } - } - - //shared page enhancements - function enhancePage(){ - - //set next page role, if defined - if ( nextPageRole || to.jqmData('role') === 'dialog' ) { - url = urlHistory.getActive().url + dialogHashKey; - if(nextPageRole){ - to.attr( "data-" + $.mobile.ns + "role", nextPageRole ); - nextPageRole = null; - } - } - - //run page plugin - to.page(); - } - - //if url is a string - if( url ){ - to = $( ":jqmData(url='" + url + "')" ); - fileUrl = path.getFilePath(url); - } - else{ //find base url of element, if avail - var toID = to.attr( "data-" + $.mobile.ns + "url" ), - toIDfileurl = path.getFilePath(toID); - - if(toID !== toIDfileurl){ - fileUrl = toIDfileurl; - } - } - - // ensure a transition has been set where pop is undefined - defaultTransition(); - - // find the "to" page, either locally existing in the dom or by creating it through ajax - if ( to.length && !isFormRequest ) { - if( fileUrl && base ){ - base.set( fileUrl ); - } - enhancePage(); - transitionPages(); - } else { - - //if to exists in DOM, save a reference to it in duplicateCachedPage for removal after page change - if( to.length ){ - duplicateCachedPage = to; - } - - $.mobile.pageLoading(); - - $.ajax({ - url: fileUrl, - type: type, - data: data, - dataType: "html", - success: function( html ) { - //pre-parse html to check for a data-url, - //use it as the new fileUrl, base path, etc - var all = $("<div></div>"), - redirectLoc, - - //page title regexp - newPageTitle = html.match( /<title[^>]*>([^<]*)/ ) && RegExp.$1, - - // TODO handle dialogs again - pageElemRegex = new RegExp(".*(<[^>]+\\bdata-" + $.mobile.ns + "role=[\"']?page[\"']?[^>]*>).*"), - dataUrlRegex = new RegExp("\\bdata-" + $.mobile.ns + "url=[\"']?([^\"'>]*)[\"']?"); - - - // data-url must be provided for the base tag so resource requests can be directed to the - // correct url. loading into a temprorary element makes these requests immediately - if(pageElemRegex.test(html) && RegExp.$1 && dataUrlRegex.test(RegExp.$1) && RegExp.$1) { - redirectLoc = RegExp.$1; - } - - if( redirectLoc ){ - if(base){ - base.set( redirectLoc ); - } - url = fileUrl = path.getFilePath( redirectLoc ); - } - else { - if(base){ - base.set(fileUrl); - } - } - - //workaround to allow scripts to execute when included in page divs - all.get(0).innerHTML = html; - to = all.find( ":jqmData(role='page'), :jqmData(role='dialog')" ).first(); - - //finally, if it's defined now, set the page title for storage in urlHistory - if( newPageTitle ){ - pageTitle = newPageTitle; - } - - //rewrite src and href attrs to use a base url - if( !$.support.dynamicBaseTag ){ - var newPath = path.get( fileUrl ); - to.find( "[src], link[href], a[rel='external'], :jqmData(ajax='false'), a[target]" ).each(function(){ - var thisAttr = $(this).is('[href]') ? 'href' : 'src', - thisUrl = $(this).attr(thisAttr); - - - //if full path exists and is same, chop it - helps IE out - thisUrl = thisUrl.replace( location.protocol + '//' + location.host + location.pathname, '' ); - - if( !/^(\w+:|#|\/)/.test(thisUrl) ){ - $(this).attr(thisAttr, newPath + thisUrl); - } - }); - } - - //append to page and enhance - to - .attr( "data-" + $.mobile.ns + "url", fileUrl ) - .appendTo( $.mobile.pageContainer ); - - enhancePage(); - setTimeout(function() { transitionPages(); }, 0); - }, - error: function() { - - //remove loading message - $.mobile.pageLoading( true ); - - //clear out the active button state - removeActiveLinkClass(true); - - //set base back to current path - if( base ){ - base.set( path.get() ); - } - - //release transition lock so navigation is free again - releasePageTransitionLock(); - - //show error message - $("<div class='ui-loader ui-overlay-shadow ui-body-e ui-corner-all'><h1>"+ $.mobile.pageLoadErrorMessage +"</h1></div>") - .css({ "display": "block", "opacity": 0.96, "top": $(window).scrollTop() + 100 }) - .appendTo( $.mobile.pageContainer ) - .delay( 800 ) - .fadeOut( 400, function(){ - $(this).remove(); - }); - } - }); - } - - }; - - -/* Event Bindings - hashchange, submit, and click */ - - //bind to form submit events, handle with Ajax - $( "form" ).live('submit', function(event){ - if( !$.mobile.ajaxEnabled || - //TODO: deprecated - remove at 1.0 - !$.mobile.ajaxFormsEnabled || - $(this).is( ":jqmData(ajax='false')" ) ){ return; } - - var type = $(this).attr("method"), - url = path.clean( $(this).attr( "action" ) ), - target = $(this).attr("target"); - - //external submits use regular HTTP - if( path.isExternal( url ) || target ){ - return; - } - - //if it's a relative href, prefix href with base url - if( path.isRelative( url ) ){ - url = path.makeAbsolute( url ); - } - - $.mobile.changePage({ - url: url.length && url || path.get(), - type: type.length && type.toLowerCase() || "get", - data: $(this).serialize() - }, - $(this).jqmData("transition"), - $(this).jqmData("direction"), - true - ); - event.preventDefault(); - }); - - //add active state on vclick - $( "a" ).live( "vclick", function(){ - $(this).closest( ".ui-btn" ).not( ".ui-disabled" ).addClass( $.mobile.activeBtnClass ); - }); - - - //click routing - direct to HTTP or Ajax, accordingly - $( "a" ).live( "click", function(event) { - - var $this = $(this), - - //get href, if defined, otherwise fall to null # - href = $this.attr( "href" ) || "#", - - //cache a check for whether the link had a protocol - //if this is true and the link was same domain, we won't want - //to prefix the url with a base (esp helpful in IE, where every - //url is absolute - hadProtocol = path.hasProtocol( href ), - - //get href, remove same-domain protocol and host - url = path.clean( href ), - - //rel set to external - isRelExternal = $this.is( "[rel='external']" ), - - //rel set to external - isEmbeddedPage = path.isEmbeddedPage( url ), - - // Some embedded browsers, like the web view in Phone Gap, allow cross-domain XHR - // requests if the document doing the request was loaded via the file:// protocol. - // This is usually to allow the application to "phone home" and fetch app specific - // data. We normally let the browser handle external/cross-domain urls, but if the - // allowCrossDomainPages option is true, we will allow cross-domain http/https - // requests to go through our page loading logic. - isCrossDomainPageLoad = ($.mobile.allowCrossDomainPages && location.protocol === "file:" && url.search(/^https?:/) != -1), - - //check for protocol or rel and its not an embedded page - //TODO overlap in logic from isExternal, rel=external check should be - // moved into more comprehensive isExternalLink - isExternal = (path.isExternal(url) && !isCrossDomainPageLoad) || (isRelExternal && !isEmbeddedPage), - - //if target attr is specified we mimic _blank... for now - hasTarget = $this.is( "[target]" ), - - //if data-ajax attr is set to false, use the default behavior of a link - hasAjaxDisabled = $this.is( ":jqmData(ajax='false')" ), - - //if the url matches the active page's url - isCurrentPage = path.stripHash(url) == $.mobile.activePage.jqmData("url"); - - //if there's a data-rel=back attr, go back in history - if( $this.is( ":jqmData(rel='back')" ) ){ - window.history.back(); - return false; - } - - //prevent # urls from bubbling - //path.get() is replaced to combat abs url prefixing in IE - //or if the link is to the current page - if( url.replace(path.get(), "") == "#" || isCurrentPage ){ - //for links created purely for interaction - ignore - event.preventDefault(); - return; - } - - $activeClickedLink = $this.closest( ".ui-btn" ); - - if( isExternal || hasAjaxDisabled || hasTarget || !$.mobile.ajaxEnabled || - // TODO: deprecated - remove at 1.0 - !$.mobile.ajaxLinksEnabled ){ - //remove active link class if external (then it won't be there if you come back) - window.setTimeout(function() {removeActiveLinkClass(true);}, 200); - - //use default click handling - return; - } - - //use ajax - var transition = $this.jqmData( "transition" ), - direction = $this.jqmData("direction"), - reverse = (direction && direction === "reverse") || - // deprecated - remove by 1.0 - $this.jqmData( "back" ); - - //this may need to be more specific as we use data-rel more - nextPageRole = $this.attr( "data-" + $.mobile.ns + "rel" ); - - //if it's a relative href, prefix href with base url - if( path.isRelative( url ) && !hadProtocol ){ - url = path.makeAbsolute( url ); - } - - url = path.stripHash( url ); - - $.mobile.changePage( url, transition, reverse); - event.preventDefault(); - }); - - //hashchange event handler - $window.bind( "hashchange", function( e, triggered ) { - //find first page via hash - var to = path.stripHash( location.hash ), - //transition is false if it's the first page, undefined otherwise (and may be overridden by default) - transition = $.mobile.urlHistory.stack.length === 0 ? false : undefined; - - //if listening is disabled (either globally or temporarily), or it's a dialog hash - if( !$.mobile.hashListeningEnabled || !urlHistory.ignoreNextHashChange ){ - if( !urlHistory.ignoreNextHashChange ){ - urlHistory.ignoreNextHashChange = true; - } - - return; - } - - // special case for dialogs - if( urlHistory.stack.length > 1 && - to.indexOf( dialogHashKey ) > -1 ){ - - // If current active page is not a dialog skip the dialog and continue - // in the same direction - if(!$.mobile.activePage.is( ".ui-dialog" )) { - //determine if we're heading forward or backward and continue accordingly past - //the current dialog - urlHistory.directHashChange({ - currentUrl: to, - isBack: function(){ window.history.back(); }, - isForward: function(){ window.history.forward(); } - }); - - // prevent changepage - return; - } else { - var setTo = function(){ to = $.mobile.urlHistory.getActive().page; }; - // if the current active page is a dialog and we're navigating - // to a dialog use the dialog objected saved in the stack - urlHistory.directHashChange({ currentUrl: to, isBack: setTo, isForward: setTo }); - } - } - - //if to is defined, load it - if ( to ){ - $.mobile.changePage( to, transition, undefined, false, true ); - } - //there's no hash, go to the first page in the dom - else { - $.mobile.changePage( $.mobile.firstPage, transition, true, false, true ); - } - }); - -})( jQuery ); -/* -* jQuery Mobile Framework : "fixHeaderFooter" plugin - on-demand positioning for headers,footers -* Copyright (c) jQuery Project -* Dual licensed under the MIT or GPL Version 2 licenses. -* http://jquery.org/license -*/ -(function($, undefined ) { -$.fn.fixHeaderFooter = function(options){ - if( !$.support.scrollTop ){ return this; } - - return this.each(function(){ - var $this = $(this); - - if( $this.jqmData('fullscreen') ){ $this.addClass('ui-page-fullscreen'); } - $this.find( ".ui-header:jqmData(position='fixed')" ).addClass('ui-header-fixed ui-fixed-inline fade'); //should be slidedown - $this.find( ".ui-footer:jqmData(position='fixed')" ).addClass('ui-footer-fixed ui-fixed-inline fade'); //should be slideup - }); -}; - -//single controller for all showing,hiding,toggling -$.fixedToolbars = (function(){ - if( !$.support.scrollTop ){ return; } - var currentstate = 'inline', - autoHideMode = false, - showDelay = 100, - delayTimer, - ignoreTargets = 'a,input,textarea,select,button,label,.ui-header-fixed,.ui-footer-fixed', - toolbarSelector = '.ui-header-fixed:first, .ui-footer-fixed:not(.ui-footer-duplicate):last', - stickyFooter, //for storing quick references to duplicate footers - supportTouch = $.support.touch, - touchStartEvent = supportTouch ? "touchstart" : "mousedown", - touchStopEvent = supportTouch ? "touchend" : "mouseup", - stateBefore = null, - scrollTriggered = false, - touchToggleEnabled = true; - - function showEventCallback(event) - { - // An event that affects the dimensions of the visual viewport has - // been triggered. If the header and/or footer for the current page are in overlay - // mode, we want to hide them, and then fire off a timer to show them at a later - // point. Events like a resize can be triggered continuously during a scroll, on - // some platforms, so the timer is used to delay the actual positioning until the - // flood of events have subsided. - // - // If we are in autoHideMode, we don't do anything because we know the scroll - // callbacks for the plugin will fire off a show when the scrolling has stopped. - if (!autoHideMode && currentstate == 'overlay') { - if (!delayTimer) - $.fixedToolbars.hide(true); - $.fixedToolbars.startShowTimer(); - } - } - - $(function() { - $(document) - .bind( "vmousedown",function(event){ - if( touchToggleEnabled ) { - stateBefore = currentstate; - } - }) - .bind( "vclick",function(event){ - if( touchToggleEnabled ) { - if( $(event.target).closest(ignoreTargets).length ){ return; } - if( !scrollTriggered ){ - $.fixedToolbars.toggle(stateBefore); - stateBefore = null; - } - } - }) - .bind('scrollstart',function(event){ - scrollTriggered = true; - if(stateBefore == null){ stateBefore = currentstate; } - - // We only enter autoHideMode if the headers/footers are in - // an overlay state or the show timer was started. If the - // show timer is set, clear it so the headers/footers don't - // show up until after we're done scrolling. - var isOverlayState = stateBefore == 'overlay'; - autoHideMode = isOverlayState || !!delayTimer; - if (autoHideMode){ - $.fixedToolbars.clearShowTimer(); - if (isOverlayState) { - $.fixedToolbars.hide(true); - } - } - }) - .bind('scrollstop',function(event){ - if( $(event.target).closest(ignoreTargets).length ){ return; } - scrollTriggered = false; - if (autoHideMode) { - autoHideMode = false; - $.fixedToolbars.startShowTimer(); - } - stateBefore = null; - }) - .bind('silentscroll', showEventCallback); - - $(window).bind('resize', showEventCallback); - }); - - //before page is shown, check for duplicate footer - $('.ui-page').live('pagebeforeshow', function(event, ui){ - var page = $(event.target), - footer = page.find( ":jqmData(role='footer')" ), - id = footer.data('id'), - prevPage = ui.prevPage; - - prevFooter = prevPage && prevPage.find( ":jqmData(role='footer')" ); - var prevFooterMatches = prevFooter.jqmData( "id" ) === id; - - if( id && prevFooterMatches ){ - stickyFooter = footer; - setTop( stickyFooter.removeClass( "fade in out" ).appendTo( $.mobile.pageContainer ) ); - } - }); - - //after page is shown, append footer to new page - $('.ui-page').live('pageshow', function(event, ui){ - var $this = $(this); - - if( stickyFooter && stickyFooter.length ){ - - setTimeout(function(){ - setTop( stickyFooter.appendTo( $this ).addClass("fade") ); - stickyFooter = null; - }, 500); - } - - $.fixedToolbars.show(true, this); - }); - - - // element.getBoundingClientRect() is broken in iOS 3.2.1 on the iPad. The - // coordinates inside of the rect it returns don't have the page scroll position - // factored out of it like the other platforms do. To get around this, - // we'll just calculate the top offset the old fashioned way until core has - // a chance to figure out how to handle this situation. - // - // TODO: We'll need to get rid of getOffsetTop() once a fix gets folded into core. - - function getOffsetTop(ele) - { - var top = 0; - if (ele) - { - var op = ele.offsetParent, body = document.body; - top = ele.offsetTop; - while (ele && ele != body) - { - top += ele.scrollTop || 0; - if (ele == op) - { - top += op.offsetTop; - op = ele.offsetParent; - } - ele = ele.parentNode; - } - } - return top; - } - - function setTop(el){ - var fromTop = $(window).scrollTop(), - thisTop = getOffsetTop(el[0]), // el.offset().top returns the wrong value on iPad iOS 3.2.1, call our workaround instead. - thisCSStop = el.css('top') == 'auto' ? 0 : parseFloat(el.css('top')), - screenHeight = window.innerHeight, - thisHeight = el.outerHeight(), - useRelative = el.parents('.ui-page:not(.ui-page-fullscreen)').length, - relval; - if( el.is('.ui-header-fixed') ){ - relval = fromTop - thisTop + thisCSStop; - if( relval < thisTop){ relval = 0; } - return el.css('top', ( useRelative ) ? relval : fromTop); - } - else{ - //relval = -1 * (thisTop - (fromTop + screenHeight) + thisCSStop + thisHeight); - //if( relval > thisTop ){ relval = 0; } - relval = fromTop + screenHeight - thisHeight - (thisTop - thisCSStop); - return el.css('top', ( useRelative ) ? relval : fromTop + screenHeight - thisHeight ); - } - } - - //exposed methods - return { - show: function(immediately, page){ - $.fixedToolbars.clearShowTimer(); - currentstate = 'overlay'; - var $ap = page ? $(page) : ($.mobile.activePage ? $.mobile.activePage : $(".ui-page-active")); - return $ap.children( toolbarSelector ).each(function(){ - var el = $(this), - fromTop = $(window).scrollTop(), - thisTop = getOffsetTop(el[0]), // el.offset().top returns the wrong value on iPad iOS 3.2.1, call our workaround instead. - screenHeight = window.innerHeight, - thisHeight = el.outerHeight(), - alreadyVisible = (el.is('.ui-header-fixed') && fromTop <= thisTop + thisHeight) || (el.is('.ui-footer-fixed') && thisTop <= fromTop + screenHeight); - - //add state class - el.addClass('ui-fixed-overlay').removeClass('ui-fixed-inline'); - - if( !alreadyVisible && !immediately ){ - el.animationComplete(function(){ - el.removeClass('in'); - }).addClass('in'); - } - setTop(el); - }); - }, - hide: function(immediately){ - currentstate = 'inline'; - var $ap = $.mobile.activePage ? $.mobile.activePage : $(".ui-page-active"); - return $ap.children( toolbarSelector ).each(function(){ - var el = $(this); - - var thisCSStop = el.css('top'); thisCSStop = thisCSStop == 'auto' ? 0 : parseFloat(thisCSStop); - - //add state class - el.addClass('ui-fixed-inline').removeClass('ui-fixed-overlay'); - - if (thisCSStop < 0 || (el.is('.ui-header-fixed') && thisCSStop != 0)) - { - if(immediately){ - el.css('top',0); - } - else{ - if( el.css('top') !== 'auto' && parseFloat(el.css('top')) !== 0 ){ - var classes = 'out reverse'; - el.animationComplete(function(){ - el.removeClass(classes); - el.css('top',0); - }).addClass(classes); - } - } - } - }); - }, - startShowTimer: function(){ - $.fixedToolbars.clearShowTimer(); - var args = $.makeArray(arguments); - delayTimer = setTimeout(function(){ - delayTimer = undefined; - $.fixedToolbars.show.apply(null, args); - }, showDelay); - }, - clearShowTimer: function() { - if (delayTimer) { - clearTimeout(delayTimer); - } - delayTimer = undefined; - }, - toggle: function(from){ - if(from){ currentstate = from; } - return (currentstate == 'overlay') ? $.fixedToolbars.hide() : $.fixedToolbars.show(); - }, - setTouchToggleEnabled: function(enabled) { - touchToggleEnabled = enabled; - } - }; -})(); - -})(jQuery); -/* -* jQuery Mobile Framework : "checkboxradio" plugin -* Copyright (c) jQuery Project -* Dual licensed under the MIT or GPL Version 2 licenses. -* http://jquery.org/license -*/ -(function($, undefined ) { -$.widget( "mobile.checkboxradio", $.mobile.widget, { - options: { - theme: null - }, - _create: function(){ - var self = this, - input = this.element, - //NOTE: Windows Phone could not find the label through a selector - //filter works though. - label = input.closest("form,fieldset,:jqmData(role='page')").find("label").filter("[for=" + input[0].id + "]"), - inputtype = input.attr( "type" ), - checkedicon = "ui-icon-" + inputtype + "-on", - uncheckedicon = "ui-icon-" + inputtype + "-off"; - - if ( inputtype != "checkbox" && inputtype != "radio" ) { return; } - - //expose for other methods - $.extend( this,{ - label : label, - inputtype : inputtype, - checkedicon : checkedicon, - uncheckedicon : uncheckedicon - }); - - // If there's no selected theme... - if( !this.options.theme ) { - this.options.theme = this.element.jqmData( "theme" ); - } - - label - .buttonMarkup({ - theme: this.options.theme, - icon: this.element.parents( ":jqmData(type='horizontal')" ).length ? undefined : uncheckedicon, - shadow: false - }); - - // wrap the input + label in a div - input - .add( label ) - .wrapAll( "<div class='ui-" + inputtype +"'></div>" ); - - label.bind({ - vmouseover: function() { - if( $(this).parent().is('.ui-disabled') ){ return false; } - }, - - vclick: function( event ){ - if ( input.is( ":disabled" ) ){ - event.preventDefault(); - return; - } - - self._cacheVals(); - input.attr( "checked", inputtype === "radio" && true || !input.is( ":checked" ) ); - self._updateAll(); - return false; - } - - }); - - input - .bind({ - vmousedown: function(){ - this._cacheVals(); - }, - - vclick: function(){ - self._updateAll(); - }, - - focus: function() { - label.addClass( "ui-focus" ); - }, - - blur: function() { - label.removeClass( "ui-focus" ); - } - }); - - this.refresh(); - - }, - - _cacheVals: function(){ - this._getInputSet().each(function(){ - $(this).jqmData("cacheVal", $(this).is(":checked") ); - }); - }, - - //returns either a set of radios with the same name attribute, or a single checkbox - _getInputSet: function(){ - return this.element.closest( "form,fieldset,:jqmData(role='page')" ) - .find( "input[name='"+ this.element.attr( "name" ) +"'][type='"+ this.inputtype +"']" ); - }, - - _updateAll: function(){ - var self = this; - - this._getInputSet().each(function(){ - if( $(this).is(":checked") || self.inputtype === "checkbox" ){ - $(this).trigger("change"); - } - }) - .checkboxradio( "refresh" ); - }, - - refresh: function( ){ - var input = this.element, - label = this.label, - icon = label.find( ".ui-icon" ); - - if ( input[0].checked ) { - label.addClass( $.mobile.activeBtnClass ); - icon.addClass( this.checkedicon ).removeClass( this.uncheckedicon ); - - } else { - label.removeClass( $.mobile.activeBtnClass ); - icon.removeClass( this.checkedicon ).addClass( this.uncheckedicon ); - } - - if( input.is( ":disabled" ) ){ - this.disable(); - } - else { - this.enable(); - } - }, - - disable: function(){ - this.element.attr("disabled",true).parent().addClass("ui-disabled"); - }, - - enable: function(){ - this.element.attr("disabled",false).parent().removeClass("ui-disabled"); - } -}); -})( jQuery ); -/* -* jQuery Mobile Framework : "textinput" plugin for text inputs, textareas -* Copyright (c) jQuery Project -* Dual licensed under the MIT or GPL Version 2 licenses. -* http://jquery.org/license -*/ -(function($, undefined ) { -$.widget( "mobile.textinput", $.mobile.widget, { - options: { - theme: null - }, - _create: function(){ - var input = this.element, - o = this.options, - theme = o.theme, - themeclass; - - if ( !theme ) { - var themedParent = this.element.closest("[class*='ui-bar-'],[class*='ui-body-']"); - theme = themedParent.length ? - /ui-(bar|body)-([a-z])/.exec( themedParent.attr("class") )[2] : - "c"; - } - - themeclass = " ui-body-" + theme; - - $('label[for='+input.attr('id')+']').addClass('ui-input-text'); - - input.addClass('ui-input-text ui-body-'+ o.theme); - - var focusedEl = input; - - //"search" input widget - if( input.is( "[type='search'],:jqmData(type='search')" ) ){ - focusedEl = input.wrap('<div class="ui-input-search ui-shadow-inset ui-btn-corner-all ui-btn-shadow ui-icon-searchfield'+ themeclass +'"></div>').parent(); - var clearbtn = $('<a href="#" class="ui-input-clear" title="clear text">clear text</a>') - .tap(function( e ){ - input.val('').focus(); - input.trigger('change'); - clearbtn.addClass('ui-input-clear-hidden'); - e.preventDefault(); - }) - .appendTo(focusedEl) - .buttonMarkup({icon: 'delete', iconpos: 'notext', corners:true, shadow:true}); - - function toggleClear(){ - if(input.val() == ''){ - clearbtn.addClass('ui-input-clear-hidden'); - } - else{ - clearbtn.removeClass('ui-input-clear-hidden'); - } - } - - toggleClear(); - input.keyup(toggleClear); - } - else{ - input.addClass('ui-corner-all ui-shadow-inset' + themeclass); - } - - input - .focus(function(){ - focusedEl.addClass('ui-focus'); - }) - .blur(function(){ - focusedEl.removeClass('ui-focus'); - }); - - //autogrow - if ( input.is('textarea') ) { - var extraLineHeight = 15, - keyupTimeoutBuffer = 100, - keyup = function() { - var scrollHeight = input[0].scrollHeight, - clientHeight = input[0].clientHeight; - if ( clientHeight < scrollHeight ) { - input.css({ height: (scrollHeight + extraLineHeight) }); - } - }, - keyupTimeout; - input.keyup(function() { - clearTimeout( keyupTimeout ); - keyupTimeout = setTimeout( keyup, keyupTimeoutBuffer ); - }); - } - }, - - disable: function(){ - ( this.element.attr("disabled",true).is( "[type='search'],:jqmData(type='search')" ) ? this.element.parent() : this.element ).addClass("ui-disabled"); - }, - - enable: function(){ - ( this.element.attr("disabled", false).is( "[type='search'],:jqmData(type='search')" ) ? this.element.parent() : this.element ).removeClass("ui-disabled"); - } -}); -})( jQuery ); -/* -* jQuery Mobile Framework : "selectmenu" plugin -* Copyright (c) jQuery Project -* Dual licensed under the MIT or GPL Version 2 licenses. -* http://jquery.org/license -*/ -(function($, undefined ) { -$.widget( "mobile.selectmenu", $.mobile.widget, { - options: { - theme: null, - disabled: false, - icon: 'arrow-d', - iconpos: 'right', - inline: null, - corners: true, - shadow: true, - iconshadow: true, - menuPageTheme: 'b', - overlayTheme: 'a', - hidePlaceholderMenuItems: true, - closeText: 'Close', - nativeMenu: true - }, - _create: function(){ - var self = this, - - o = this.options, - - select = this.element - .wrap( "<div class='ui-select'>" ), - - selectID = select.attr( "id" ), - - label = $( "label[for="+ selectID +"]" ).addClass( "ui-select" ), - - //IE throws an exception at options.item() function when - //there is no selected item - //select first in this case - selectedIndex = select[0].selectedIndex == -1 ? 0 : select[0].selectedIndex, - - button = ( self.options.nativeMenu ? $( "<div/>" ) : $( "<a>", { - "href": "#", - "role": "button", - "id": buttonId, - "aria-haspopup": "true", - "aria-owns": menuId - }) ) - .text( $( select[0].options.item( selectedIndex ) ).text() ) - .insertBefore( select ) - .buttonMarkup({ - theme: o.theme, - icon: o.icon, - iconpos: o.iconpos, - inline: o.inline, - corners: o.corners, - shadow: o.shadow, - iconshadow: o.iconshadow - }), - - //multi select or not - isMultiple = self.isMultiple = select[0].multiple; - - //Opera does not properly support opacity on select elements - //In Mini, it hides the element, but not its text - //On the desktop,it seems to do the opposite - //for these reasons, using the nativeMenu option results in a full native select in Opera - if( o.nativeMenu && window.opera && window.opera.version ){ - select.addClass( "ui-select-nativeonly" ); - } - - //vars for non-native menus - if( !o.nativeMenu ){ - var options = select.find("option"), - - buttonId = selectID + "-button", - - menuId = selectID + "-menu", - - thisPage = select.closest( ".ui-page" ), - - //button theme - theme = /ui-btn-up-([a-z])/.exec( button.attr("class") )[1], - - menuPage = $( "<div data-" + $.mobile.ns + "role='dialog' data-" +$.mobile.ns + "theme='"+ o.menuPageTheme +"'>" + - "<div data-" + $.mobile.ns + "role='header'>" + - "<div class='ui-title'>" + label.text() + "</div>"+ - "</div>"+ - "<div data-" + $.mobile.ns + "role='content'></div>"+ - "</div>" ) - .appendTo( $.mobile.pageContainer ) - .page(), - - menuPageContent = menuPage.find( ".ui-content" ), - - menuPageClose = menuPage.find( ".ui-header a" ), - - screen = $( "<div>", {"class": "ui-selectmenu-screen ui-screen-hidden"}) - .appendTo( thisPage ), - - listbox = $( "<div>", { "class": "ui-selectmenu ui-selectmenu-hidden ui-overlay-shadow ui-corner-all pop ui-body-" + o.overlayTheme } ) - .insertAfter(screen), - - list = $( "<ul>", { - "class": "ui-selectmenu-list", - "id": menuId, - "role": "listbox", - "aria-labelledby": buttonId - }) - .attr( "data-" + $.mobile.ns + "theme", theme ) - .appendTo( listbox ), - - header = $( "<div>", { - "class": "ui-header ui-bar-" + theme - }) - .prependTo( listbox ), - - headerTitle = $( "<h1>", { - "class": "ui-title" - }) - .appendTo( header ), - - headerClose = $( "<a>", { - "text": o.closeText, - "href": "#", - "class": "ui-btn-left" - }) - .attr( "data-" + $.mobile.ns + "iconpos", "notext" ) - .attr( "data-" + $.mobile.ns + "icon", "delete" ) - .appendTo( header ) - .buttonMarkup(), - - menuType; - } //end non native vars - - // add counter for multi selects - if( isMultiple ){ - self.buttonCount = $('<span>') - .addClass( 'ui-li-count ui-btn-up-c ui-btn-corner-all' ) - .hide() - .appendTo( button ); - } - - //disable if specified - if( o.disabled ){ this.disable(); } - - //events on native select - select - .change(function(){ - self.refresh(); - }); - - //expose to other methods - $.extend(self, { - select: select, - optionElems: options, - selectID: selectID, - label: label, - buttonId:buttonId, - menuId:menuId, - thisPage:thisPage, - button:button, - menuPage:menuPage, - menuPageContent:menuPageContent, - screen:screen, - listbox:listbox, - list:list, - menuType:menuType, - header:header, - headerClose:headerClose, - headerTitle:headerTitle, - placeholder: '' - }); - - //support for using the native select menu with a custom button - if( o.nativeMenu ){ - select - .appendTo(button) - .bind( "vmousedown", function( e ){ - //add active class to button - button.addClass( $.mobile.activeBtnClass ); - }) - .bind( "focus vmouseover", function(){ - button.trigger( "vmouseover" ); - }) - .bind( "vmousemove", function(){ - //remove active class on scroll/touchmove - button.removeClass( $.mobile.activeBtnClass ); - }) - .bind( "change blur vmouseout", function(){ - button - .trigger( "vmouseout" ) - .removeClass( $.mobile.activeBtnClass ); - }); - - - } else { - //create list from select, update state - self.refresh(); - - select - .attr( "tabindex", "-1" ) - .focus(function(){ - $(this).blur(); - button.focus(); - }); - - //button events - button - .bind( "vclick keydown" , function( event ){ - if( event.type == "vclick" || - event.keyCode && ( event.keyCode === $.mobile.keyCode.ENTER || event.keyCode === $.mobile.keyCode.SPACE ) ){ - self.open(); - event.preventDefault(); - } - }); - - //events for list items - list - .attr( "role", "listbox" ) - .delegate( ".ui-li>a", "focusin", function() { - $( this ).attr( "tabindex", "0" ); - }) - .delegate( ".ui-li>a", "focusout", function() { - $( this ).attr( "tabindex", "-1" ); - }) - .delegate("li:not(.ui-disabled, .ui-li-divider)", "vclick", function(event){ - - // index of option tag to be selected - var oldIndex = select[0].selectedIndex, - newIndex = list.find( "li:not(.ui-li-divider)" ).index( this ), - option = self.optionElems.eq( newIndex )[0]; - - // toggle selected status on the tag for multi selects - option.selected = isMultiple ? !option.selected : true; - - // toggle checkbox class for multiple selects - if( isMultiple ){ - $(this) - .find('.ui-icon') - .toggleClass('ui-icon-checkbox-on', option.selected) - .toggleClass('ui-icon-checkbox-off', !option.selected); - } - - // trigger change if value changed - if( oldIndex !== newIndex ){ - select.trigger( "change" ); - } - - //hide custom select for single selects only - if( !isMultiple ){ - self.close(); - } - - event.preventDefault(); - }) - //keyboard events for menu items - .keydown(function( e ) { - var target = $( e.target ), - li = target.closest( "li" ); - - // switch logic based on which key was pressed - switch ( e.keyCode ) { - // up or left arrow keys - case 38: - var prev = li.prev(); - - // if there's a previous option, focus it - if ( prev.length ) { - target - .blur() - .attr( "tabindex", "-1" ); - - prev.find( "a" ).first().focus(); - } - - return false; - break; - - // down or right arrow keys - case 40: - var next = li.next(); - - // if there's a next option, focus it - if ( next.length ) { - target - .blur() - .attr( "tabindex", "-1" ); - - next.find( "a" ).first().focus(); - } - - return false; - break; - - // if enter or space is pressed, trigger click - case 13: - case 32: - target.trigger( "vclick" ); - - return false; - break; - } - }); - - //events on "screen" overlay - screen.bind("vclick", function( event ){ - self.close(); - }); - - //close button on small overlays - self.headerClose.click(function(){ - if( self.menuType == "overlay" ){ - self.close(); - return false; - } - }) - } - }, - - _buildList: function(){ - var self = this, - o = this.options, - placeholder = this.placeholder, - optgroups = [], - lis = [], - dataIcon = self.isMultiple ? "checkbox-off" : "false"; - - self.list.empty().filter('.ui-listview').listview('destroy'); - - //populate menu with options from select element - self.select.find( "option" ).each(function( i ){ - var $this = $(this), - $parent = $this.parent(), - text = $this.text(), - anchor = "<a href='#'>"+ text +"</a>", - classes = [], - extraAttrs = []; - - // are we inside an optgroup? - if( $parent.is("optgroup") ){ - var optLabel = $parent.attr("label"); - - // has this optgroup already been built yet? - if( $.inArray(optLabel, optgroups) === -1 ){ - lis.push( "<li data-" + $.mobile.ns + "role='list-divider'>"+ optLabel +"</li>" ); - optgroups.push( optLabel ); - } - } - - //find placeholder text - if( !this.getAttribute('value') || text.length == 0 || $this.jqmData('placeholder') ){ - if( o.hidePlaceholderMenuItems ){ - classes.push( "ui-selectmenu-placeholder" ); - } - placeholder = self.placeholder = text; - } - - // support disabled option tags - if( this.disabled ){ - classes.push( "ui-disabled" ); - extraAttrs.push( "aria-disabled='true'" ); - } - - lis.push( "<li data-" + $.mobile.ns + "icon='"+ dataIcon +"' class='"+ classes.join(" ") + "' " + extraAttrs.join(" ") +">"+ anchor +"</li>" ) - }); - - self.list.html( lis.join(" ") ); - - self.list.find( "li" ) - .attr({ "role": "option", "tabindex": "-1" }) - .first().attr( "tabindex", "0" ); - - // hide header close link for single selects - if( !this.isMultiple ){ - this.headerClose.hide(); - } - - // hide header if it's not a multiselect and there's no placeholder - if( !this.isMultiple && !placeholder.length ){ - this.header.hide(); - } else { - this.headerTitle.text( this.placeholder ); - } - - //now populated, create listview - self.list.listview(); - }, - - refresh: function( forceRebuild ){ - var self = this, - select = this.element, - isMultiple = this.isMultiple, - options = this.optionElems = select.find("option"), - selected = options.filter(":selected"), - - // return an array of all selected index's - indicies = selected.map(function(){ - return options.index( this ); - }).get(); - - if( !self.options.nativeMenu && ( forceRebuild || select[0].options.length != self.list.find('li').length )){ - self._buildList(); - } - - self.button - .find( ".ui-btn-text" ) - .text(function(){ - if( !isMultiple ){ - return selected.text(); - } - - return selected.length ? - selected.map(function(){ return $(this).text(); }).get().join(', ') : - self.placeholder; - }); - - // multiple count inside button - if( isMultiple ){ - self.buttonCount[ selected.length > 1 ? 'show' : 'hide' ]().text( selected.length ); - } - - if( !self.options.nativeMenu ){ - self.list - .find( 'li:not(.ui-li-divider)' ) - .removeClass( $.mobile.activeBtnClass ) - .attr( 'aria-selected', false ) - .each(function( i ){ - if( $.inArray(i, indicies) > -1 ){ - var item = $(this).addClass( $.mobile.activeBtnClass ); - - // aria selected attr - item.find( 'a' ).attr( 'aria-selected', true ); - - // multiple selects: add the "on" checkbox state to the icon - if( isMultiple ){ - item.find('.ui-icon').removeClass('ui-icon-checkbox-off').addClass('ui-icon-checkbox-on'); - } - } - }); - } - }, - - open: function(){ - if( this.options.disabled || this.options.nativeMenu ){ return; } - - var self = this, - menuHeight = self.list.parent().outerHeight(), - menuWidth = self.list.parent().outerWidth(), - scrollTop = $(window).scrollTop(), - btnOffset = self.button.offset().top, - screenHeight = window.innerHeight, - screenWidth = window.innerWidth; - - //add active class to button - self.button.addClass( $.mobile.activeBtnClass ); - - //remove after delay - setTimeout(function(){ - self.button.removeClass( $.mobile.activeBtnClass ); - }, 300); - - function focusMenuItem(){ - self.list.find( ".ui-btn-active" ).focus(); - } - - if( menuHeight > screenHeight - 80 || !$.support.scrollTop ){ - - //for webos (set lastscroll using button offset) - if( scrollTop == 0 && btnOffset > screenHeight ){ - self.thisPage.one('pagehide',function(){ - $(this).jqmData('lastScroll', btnOffset); - }); - } - - self.menuPage.one('pageshow', function() { - // silentScroll() is called whenever a page is shown to restore - // any previous scroll position the page may have had. We need to - // wait for the "silentscroll" event before setting focus to avoid - // the browser's "feature" which offsets rendering to make sure - // whatever has focus is in view. - $(window).one("silentscroll", function(){ focusMenuItem(); }); - }); - - self.menuType = "page"; - self.menuPageContent.append( self.list ); - $.mobile.changePage(self.menuPage, 'pop', false, true); - } - else { - self.menuType = "overlay"; - - self.screen - .height( $(document).height() ) - .removeClass('ui-screen-hidden'); - - //try and center the overlay over the button - var roomtop = btnOffset - scrollTop, - roombot = scrollTop + screenHeight - btnOffset, - halfheight = menuHeight / 2, - maxwidth = parseFloat(self.list.parent().css('max-width')), - newtop, newleft; - - if( roomtop > menuHeight / 2 && roombot > menuHeight / 2 ){ - newtop = btnOffset + ( self.button.outerHeight() / 2 ) - halfheight; - } - else{ - //30px tolerance off the edges - newtop = roomtop > roombot ? scrollTop + screenHeight - menuHeight - 30 : scrollTop + 30; - } - - // if the menuwidth is smaller than the screen center is - if (menuWidth < maxwidth) { - newleft = (screenWidth - menuWidth) / 2; - } else { //otherwise insure a >= 30px offset from the left - newleft = self.button.offset().left + self.button.outerWidth() / 2 - menuWidth / 2; - // 30px tolerance off the edges - if (newleft < 30) { - newleft = 30; - } else if ((newleft + menuWidth) > screenWidth) { - newleft = screenWidth - menuWidth - 30; - } - } - - self.listbox - .append( self.list ) - .removeClass( "ui-selectmenu-hidden" ) - .css({ - top: newtop, - left: newleft - }) - .addClass("in"); - - focusMenuItem(); - } - - // wait before the dialog can be closed - setTimeout(function(){ - self.isOpen = true; - }, 400); - }, - - close: function(){ - if( this.options.disabled || !this.isOpen || this.options.nativeMenu ){ return; } - var self = this; - - function focusButton(){ - setTimeout(function(){ - self.button.focus(); - }, 40); - - self.listbox.removeAttr('style').append( self.list ); - } - - if(self.menuType == "page"){ - $.mobile.changePage([self.menuPage,self.thisPage], 'pop', true, false); - self.menuPage.one("pagehide", focusButton); - } - else{ - self.screen.addClass( "ui-screen-hidden" ); - self.listbox.addClass( "ui-selectmenu-hidden" ).removeAttr( "style" ).removeClass("in"); - focusButton(); - } - - // allow the dialog to be closed again - this.isOpen = false; - }, - - disable: function(){ - this.element.attr("disabled",true); - this.button.addClass('ui-disabled').attr("aria-disabled", true); - return this._setOption( "disabled", true ); - }, - - enable: function(){ - this.element.attr("disabled",false); - this.button.removeClass('ui-disabled').attr("aria-disabled", false); - return this._setOption( "disabled", false ); - } -}); -})( jQuery ); - -/* -* jQuery Mobile Framework : plugin for making button-like links -* Copyright (c) jQuery Project -* Dual licensed under the MIT or GPL Version 2 licenses. -* http://jquery.org/license -*/ -(function($, undefined ) { - -$.fn.buttonMarkup = function( options ){ - return this.each( function() { - var el = $( this ), - o = $.extend( {}, $.fn.buttonMarkup.defaults, el.jqmData(), options), - - // Classes Defined - buttonClass, - innerClass = "ui-btn-inner", - iconClass; - - if ( attachEvents ) { - attachEvents(); - } - - // if not, try to find closest theme container - if ( !o.theme ) { - var themedParent = el.closest("[class*='ui-bar-'],[class*='ui-body-']"); - o.theme = themedParent.length ? - /ui-(bar|body)-([a-z])/.exec( themedParent.attr("class") )[2] : - "c"; - } - - buttonClass = "ui-btn ui-btn-up-" + o.theme; - - if ( o.inline ) { - buttonClass += " ui-btn-inline"; - } - - if ( o.icon ) { - o.icon = "ui-icon-" + o.icon; - o.iconpos = o.iconpos || "left"; - - iconClass = "ui-icon " + o.icon; - - if ( o.shadow ) { - iconClass += " ui-icon-shadow"; - } - } - - if ( o.iconpos ) { - buttonClass += " ui-btn-icon-" + o.iconpos; - - if ( o.iconpos == "notext" && !el.attr("title") ) { - el.attr( "title", el.text() ); - } - } - - if ( o.corners ) { - buttonClass += " ui-btn-corner-all"; - innerClass += " ui-btn-corner-all"; - } - - if ( o.shadow ) { - buttonClass += " ui-shadow"; - } - - el - .attr( "data-" + $.mobile.ns + "theme", o.theme ) - .addClass( buttonClass ); - - var wrap = ("<D class='" + innerClass + "'><D class='ui-btn-text'></D>" + - ( o.icon ? "<span class='" + iconClass + "'></span>" : "" ) + - "</D>").replace(/D/g, o.wrapperEls); - - el.wrapInner( wrap ); - }); -}; - -$.fn.buttonMarkup.defaults = { - corners: true, - shadow: true, - iconshadow: true, - wrapperEls: "span" -}; - -var attachEvents = function() { - $(".ui-btn:not(.ui-disabled)").live({ - "vmousedown": function() { - var theme = $(this).attr( "data-" + $.mobile.ns + "theme" ); - $(this).removeClass( "ui-btn-up-" + theme ).addClass( "ui-btn-down-" + theme ); - }, - "vmousecancel vmouseup": function() { - var theme = $(this).attr( "data-" + $.mobile.ns + "theme" ); - $(this).removeClass( "ui-btn-down-" + theme ).addClass( "ui-btn-up-" + theme ); - }, - "vmouseover focus": function() { - var theme = $(this).attr( "data-" + $.mobile.ns + "theme" ); - $(this).removeClass( "ui-btn-up-" + theme ).addClass( "ui-btn-hover-" + theme ); - }, - "vmouseout blur": function() { - var theme = $(this).attr( "data-" + $.mobile.ns + "theme" ); - $(this).removeClass( "ui-btn-hover-" + theme ).addClass( "ui-btn-up-" + theme ); - } - }); - - attachEvents = null; -}; - -})(jQuery); -/* -* jQuery Mobile Framework : "button" plugin - links that proxy to native input/buttons -* Copyright (c) jQuery Project -* Dual licensed under the MIT or GPL Version 2 licenses. -* http://jquery.org/license -*/ -(function($, undefined ) { -$.widget( "mobile.button", $.mobile.widget, { - options: { - theme: null, - icon: null, - iconpos: null, - inline: null, - corners: true, - shadow: true, - iconshadow: true - }, - _create: function(){ - var $el = this.element, - o = this.options; - - //add ARIA role - this.button = $( "<div></div>" ) - .text( $el.text() || $el.val() ) - .buttonMarkup({ - theme: o.theme, - icon: o.icon, - iconpos: o.iconpos, - inline: o.inline, - corners: o.corners, - shadow: o.shadow, - iconshadow: o.iconshadow - }) - .insertBefore( $el ) - .append( $el.addClass('ui-btn-hidden') ); - - //add hidden input during submit - var type = $el.attr('type'); - if( type !== 'button' && type !== 'reset' ){ - $el.bind("vclick", function(){ - var $buttonPlaceholder = $("<input>", - {type: "hidden", name: $el.attr("name"), value: $el.attr("value")}) - .insertBefore($el); - - //bind to doc to remove after submit handling - $(document).submit(function(){ - $buttonPlaceholder.remove(); - }); - }); - } - this.refresh(); - - }, - - enable: function(){ - this.element.attr("disabled", false); - this.button.removeClass("ui-disabled").attr("aria-disabled", false); - return this._setOption("disabled", false); - }, - - disable: function(){ - this.element.attr("disabled", true); - this.button.addClass("ui-disabled").attr("aria-disabled", true); - return this._setOption("disabled", true); - }, - - refresh: function(){ - if( this.element.attr('disabled') ){ - this.disable(); - } - else{ - this.enable(); - } - } -}); -})( jQuery );/* -* jQuery Mobile Framework : "slider" plugin -* Copyright (c) jQuery Project -* Dual licensed under the MIT or GPL Version 2 licenses. -* http://jquery.org/license -*/ -(function($, undefined ) { -$.widget( "mobile.slider", $.mobile.widget, { - options: { - theme: null, - trackTheme: null, - disabled: false - }, - _create: function(){ - var self = this, - - control = this.element, - - parentTheme = control.parents('[class*=ui-bar-],[class*=ui-body-]').eq(0), - - parentTheme = parentTheme.length ? parentTheme.attr('class').match(/ui-(bar|body)-([a-z])/)[2] : 'c', - - theme = this.options.theme ? this.options.theme : parentTheme, - - trackTheme = this.options.trackTheme ? this.options.trackTheme : parentTheme, - - cType = control[0].nodeName.toLowerCase(), - selectClass = (cType == 'select') ? 'ui-slider-switch' : '', - controlID = control.attr('id'), - labelID = controlID + '-label', - label = $('[for='+ controlID +']').attr('id',labelID), - val = function(){ - return (cType == 'input') ? parseFloat(control.val()) : control[0].selectedIndex; - }, - min = (cType == 'input') ? parseFloat(control.attr('min')) : 0, - max = (cType == 'input') ? parseFloat(control.attr('max')) : control.find('option').length-1, - step = window.parseFloat(control.attr('step') || 1), - slider = $('<div class="ui-slider '+ selectClass +' ui-btn-down-'+ trackTheme+' ui-btn-corner-all" role="application"></div>'), - handle = $('<a href="#" class="ui-slider-handle"></a>') - .appendTo(slider) - .buttonMarkup({corners: true, theme: theme, shadow: true}) - .attr({ - 'role': 'slider', - 'aria-valuemin': min, - 'aria-valuemax': max, - 'aria-valuenow': val(), - 'aria-valuetext': val(), - 'title': val(), - 'aria-labelledby': labelID - }); - - $.extend(this, { - slider: slider, - handle: handle, - dragging: false, - beforeStart: null - }); - - if(cType == 'select'){ - slider.wrapInner('<div class="ui-slider-inneroffset"></div>'); - var options = control.find('option'); - - control.find('option').each(function(i){ - var side = (i==0) ?'b':'a', - corners = (i==0) ? 'right' :'left', - theme = (i==0) ? ' ui-btn-down-' + trackTheme :' ui-btn-active'; - $('<div class="ui-slider-labelbg ui-slider-labelbg-'+ side + theme +' ui-btn-corner-'+ corners+'"></div>').prependTo(slider); - $('<span class="ui-slider-label ui-slider-label-'+ side + theme +' ui-btn-corner-'+ corners+'" role="img">'+$(this).text()+'</span>').prependTo(handle); - }); - - } - - label.addClass('ui-slider'); - - // monitor the input for updated values - control - .addClass((cType == 'input') ? 'ui-slider-input' : 'ui-slider-switch') - .change(function(){ - self.refresh( val(), true ); - }) - .keyup(function(){ // necessary? - self.refresh( val(), true, true ); - }) - .blur(function(){ - self.refresh( val(), true ); - }); - - // prevent screen drag when slider activated - $(document).bind( "vmousemove", function(event){ - if ( self.dragging ) { - self.refresh( event ); - return false; - } - }); - - slider - .bind( "vmousedown", function(event){ - self.dragging = true; - if ( cType === "select" ) { - self.beforeStart = control[0].selectedIndex; - } - self.refresh( event ); - return false; - }); - - slider - .add(document) - .bind( "vmouseup", function(){ - if ( self.dragging ) { - self.dragging = false; - if ( cType === "select" ) { - if ( self.beforeStart === control[0].selectedIndex ) { - //tap occurred, but value didn't change. flip it! - self.refresh( self.beforeStart === 0 ? 1 : 0 ); - } - var curval = val(); - var snapped = Math.round( curval / (max - min) * 100 ); - handle - .addClass("ui-slider-handle-snapping") - .css("left", snapped + "%") - .animationComplete(function(){ - handle.removeClass("ui-slider-handle-snapping"); - }); - } - return false; - } - }); - - slider.insertAfter(control); - - // NOTE force focus on handle - this.handle - .bind( "vmousedown", function(){ - $(this).focus(); - }) - .bind( "vclick", false ); - - this.handle - .bind( "keydown", function( event ) { - var index = val(); - - if ( self.options.disabled ) { - return; - } - - // In all cases prevent the default and mark the handle as active - switch ( event.keyCode ) { - case $.mobile.keyCode.HOME: - case $.mobile.keyCode.END: - case $.mobile.keyCode.PAGE_UP: - case $.mobile.keyCode.PAGE_DOWN: - case $.mobile.keyCode.UP: - case $.mobile.keyCode.RIGHT: - case $.mobile.keyCode.DOWN: - case $.mobile.keyCode.LEFT: - event.preventDefault(); - - if ( !self._keySliding ) { - self._keySliding = true; - $( this ).addClass( "ui-state-active" ); - } - break; - } - - // move the slider according to the keypress - switch ( event.keyCode ) { - case $.mobile.keyCode.HOME: - self.refresh(min); - break; - case $.mobile.keyCode.END: - self.refresh(max); - break; - case $.mobile.keyCode.PAGE_UP: - case $.mobile.keyCode.UP: - case $.mobile.keyCode.RIGHT: - self.refresh(index + step); - break; - case $.mobile.keyCode.PAGE_DOWN: - case $.mobile.keyCode.DOWN: - case $.mobile.keyCode.LEFT: - self.refresh(index - step); - break; - } - }) // remove active mark - .keyup(function( event ) { - if ( self._keySliding ) { - self._keySliding = false; - $( this ).removeClass( "ui-state-active" ); - } - }); - - this.refresh(); - }, - - refresh: function(val, isfromControl, preventInputUpdate){ - if ( this.options.disabled ) { return; } - - var control = this.element, percent, - cType = control[0].nodeName.toLowerCase(), - min = (cType === "input") ? parseFloat(control.attr("min")) : 0, - max = (cType === "input") ? parseFloat(control.attr("max")) : control.find("option").length - 1; - - if ( typeof val === "object" ) { - var data = val, - // a slight tolerance helped get to the ends of the slider - tol = 8; - if ( !this.dragging - || data.pageX < this.slider.offset().left - tol - || data.pageX > this.slider.offset().left + this.slider.width() + tol ) { - return; - } - percent = Math.round( ((data.pageX - this.slider.offset().left) / this.slider.width() ) * 100 ); - } else { - if ( val == null ) { - val = (cType === "input") ? parseFloat(control.val()) : control[0].selectedIndex; - } - percent = (parseFloat(val) - min) / (max - min) * 100; - } - - if ( isNaN(percent) ) { return; } - if ( percent < 0 ) { percent = 0; } - if ( percent > 100 ) { percent = 100; } - - var newval = Math.round( (percent / 100) * (max - min) ) + min; - if ( newval < min ) { newval = min; } - if ( newval > max ) { newval = max; } - - //flip the stack of the bg colors - if ( percent > 60 && cType === "select" ) { - - } - this.handle.css("left", percent + "%"); - this.handle.attr({ - "aria-valuenow": (cType === "input") ? newval : control.find("option").eq(newval).attr("value"), - "aria-valuetext": (cType === "input") ? newval : control.find("option").eq(newval).text(), - title: newval - }); - - // add/remove classes for flip toggle switch - if ( cType === "select" ) { - if ( newval === 0 ) { - this.slider.addClass("ui-slider-switch-a") - .removeClass("ui-slider-switch-b"); - } else { - this.slider.addClass("ui-slider-switch-b") - .removeClass("ui-slider-switch-a"); - } - } - - if(!preventInputUpdate){ - // update control's value - if ( cType === "input" ) { - control.val(newval); - } else { - control[ 0 ].selectedIndex = newval; - } - if (!isfromControl) { control.trigger("change"); } - } - }, - - enable: function(){ - this.element.attr("disabled", false); - this.slider.removeClass("ui-disabled").attr("aria-disabled", false); - return this._setOption("disabled", false); - }, - - disable: function(){ - this.element.attr("disabled", true); - this.slider.addClass("ui-disabled").attr("aria-disabled", true); - return this._setOption("disabled", true); - } - -}); -})( jQuery ); - -/* -* jQuery Mobile Framework : "collapsible" plugin -* Copyright (c) jQuery Project -* Dual licensed under the MIT or GPL Version 2 licenses. -* http://jquery.org/license -*/ -(function($, undefined ) { -$.widget( "mobile.collapsible", $.mobile.widget, { - options: { - expandCueText: ' click to expand contents', - collapseCueText: ' click to collapse contents', - collapsed: false, - heading: '>:header,>legend', - theme: null, - iconTheme: 'd' - }, - _create: function(){ - var $el = this.element, - o = this.options, - collapsibleContain = $el.addClass('ui-collapsible-contain'), - collapsibleHeading = $el.find(o.heading).eq(0), - collapsibleContent = collapsibleContain.wrapInner('<div class="ui-collapsible-content"></div>').find('.ui-collapsible-content'), - collapsibleParent = $el.closest( ":jqmData(role='collapsible-set')" ).addClass('ui-collapsible-set'); - - //replace collapsibleHeading if it's a legend - if(collapsibleHeading.is('legend')){ - collapsibleHeading = $('<div role="heading">'+ collapsibleHeading.html() +'</div>').insertBefore(collapsibleHeading); - collapsibleHeading.next().remove(); - } - - //drop heading in before content - collapsibleHeading.insertBefore(collapsibleContent); - - //modify markup & attributes - collapsibleHeading.addClass('ui-collapsible-heading') - .append('<span class="ui-collapsible-heading-status"></span>') - .wrapInner('<a href="#" class="ui-collapsible-heading-toggle"></a>') - .find('a:eq(0)') - .buttonMarkup({ - shadow: !!!collapsibleParent.length, - corners:false, - iconPos: 'left', - icon: 'plus', - theme: o.theme - }) - .find('.ui-icon') - .removeAttr('class') - .buttonMarkup({ - shadow: true, - corners:true, - iconPos: 'notext', - icon: 'plus', - theme: o.iconTheme - }); - - if( !collapsibleParent.length ){ - collapsibleHeading - .find('a:eq(0)') - .addClass('ui-corner-all') - .find('.ui-btn-inner') - .addClass('ui-corner-all'); - } - else { - if( collapsibleContain.jqmData('collapsible-last') ){ - collapsibleHeading - .find('a:eq(0), .ui-btn-inner') - .addClass('ui-corner-bottom'); - } - } - - - //events - collapsibleContain - .bind('collapse', function(event){ - if( !event.isDefaultPrevented() ){ - event.preventDefault(); - collapsibleHeading - .addClass('ui-collapsible-heading-collapsed') - .find('.ui-collapsible-heading-status').text(o.expandCueText); - - collapsibleHeading.find('.ui-icon').removeClass('ui-icon-minus').addClass('ui-icon-plus'); - collapsibleContent.addClass('ui-collapsible-content-collapsed').attr('aria-hidden',true); - - if( collapsibleContain.jqmData('collapsible-last') ){ - collapsibleHeading - .find('a:eq(0), .ui-btn-inner') - .addClass('ui-corner-bottom'); - } - } - - }) - .bind('expand', function(event){ - if( !event.isDefaultPrevented() ){ - event.preventDefault(); - collapsibleHeading - .removeClass('ui-collapsible-heading-collapsed') - .find('.ui-collapsible-heading-status').text(o.collapseCueText); - - collapsibleHeading.find('.ui-icon').removeClass('ui-icon-plus').addClass('ui-icon-minus'); - collapsibleContent.removeClass('ui-collapsible-content-collapsed').attr('aria-hidden',false); - - if( collapsibleContain.jqmData('collapsible-last') ){ - collapsibleHeading - .find('a:eq(0), .ui-btn-inner') - .removeClass('ui-corner-bottom'); - } - - } - }) - .trigger(o.collapsed ? 'collapse' : 'expand'); - - - //close others in a set - if( collapsibleParent.length && !collapsibleParent.jqmData("collapsiblebound") ){ - collapsibleParent - .jqmData("collapsiblebound", true) - .bind("expand", function( event ){ - $(this).find( ".ui-collapsible-contain" ) - .not( $(event.target).closest( ".ui-collapsible-contain" ) ) - .not( "> .ui-collapsible-contain .ui-collapsible-contain" ) - .trigger( "collapse" ); - }); - var set = collapsibleParent.find( ":jqmData(role=collapsible)" ) - - set.first() - .find('a:eq(0)') - .addClass('ui-corner-top') - .find('.ui-btn-inner') - .addClass('ui-corner-top'); - - set.last().jqmData('collapsible-last', true) - } - - collapsibleHeading - .bind("vmouseup", function(e){ - if( collapsibleHeading.is('.ui-collapsible-heading-collapsed') ){ - collapsibleContain.trigger('expand'); - } - else { - collapsibleContain.trigger('collapse'); - } - e.preventDefault(); - }) - .bind("vclick",false ); - } -}); -})( jQuery );/* -* jQuery Mobile Framework: "controlgroup" plugin - corner-rounding for groups of buttons, checks, radios, etc -* Copyright (c) jQuery Project -* Dual licensed under the MIT or GPL Version 2 licenses. -* http://jquery.org/license -*/ -(function($, undefined ) { -$.fn.controlgroup = function(options){ - - return this.each(function(){ - var o = $.extend({ - direction: $( this ).jqmData( "type" ) || "vertical", - shadow: false - },options); - var groupheading = $(this).find('>legend'), - flCorners = o.direction == 'horizontal' ? ['ui-corner-left', 'ui-corner-right'] : ['ui-corner-top', 'ui-corner-bottom'], - type = $(this).find('input:eq(0)').attr('type'); - - //replace legend with more stylable replacement div - if( groupheading.length ){ - $(this).wrapInner('<div class="ui-controlgroup-controls"></div>'); - $('<div role="heading" class="ui-controlgroup-label">'+ groupheading.html() +'</div>').insertBefore( $(this).children(0) ); - groupheading.remove(); - } - - $(this).addClass('ui-corner-all ui-controlgroup ui-controlgroup-'+o.direction); - - function flipClasses(els){ - els - .removeClass('ui-btn-corner-all ui-shadow') - .eq(0).addClass(flCorners[0]) - .end() - .filter(':last').addClass(flCorners[1]).addClass('ui-controlgroup-last'); - } - flipClasses($(this).find('.ui-btn')); - flipClasses($(this).find('.ui-btn-inner')); - if(o.shadow){ - $(this).addClass('ui-shadow'); - } - }); -}; -})(jQuery);/* -* jQuery Mobile Framework : "fieldcontain" plugin - simple class additions to make form row separators -* Copyright (c) jQuery Project -* Dual licensed under the MIT or GPL Version 2 licenses. -* http://jquery.org/license -*/ -(function($, undefined ) { -$.fn.fieldcontain = function(options){ - return this.addClass('ui-field-contain ui-body ui-br'); -}; -})(jQuery);/* -* jQuery Mobile Framework : "listview" plugin -* Copyright (c) jQuery Project -* Dual licensed under the MIT or GPL Version 2 licenses. -* http://jquery.org/license -*/ -(function($, undefined ) { - -$.widget( "mobile.listview", $.mobile.widget, { - options: { - theme: "c", - countTheme: "c", - headerTheme: "b", - dividerTheme: "b", - splitIcon: "arrow-r", - splitTheme: "b", - inset: false - }, - - _create: function() { - var $list = this.element, - o = this.options; - - // create listview markup - $list - .addClass( "ui-listview" ); - - if ( o.inset ) { - $list.addClass( "ui-listview-inset ui-corner-all ui-shadow" ); - } - - this._itemApply( $list, $list ); - - this.refresh( true ); - - }, - - _itemApply: function( $list, item ) { - // TODO class has to be defined in markup - item.find( ".ui-li-count" ) - .addClass( "ui-btn-up-" + ($list.jqmData( "counttheme" ) || this.options.countTheme) + " ui-btn-corner-all" ); - - item.find( "h1, h2, h3, h4, h5, h6" ).addClass( "ui-li-heading" ); - - item.find( "p, dl" ).addClass( "ui-li-desc" ); - - $list.find( "li" ).find( ">img:eq(0), >:first>img:eq(0)" ).addClass( "ui-li-thumb" ).each(function() { - $( this ).closest( "li" ).addClass( $(this).is( ".ui-li-icon" ) ? "ui-li-has-icon" : "ui-li-has-thumb" ); - }); - - var aside = item.find( ".ui-li-aside" ); - - if ( aside.length ) { - aside.each(function(i, el) { - $(el).prependTo( $(el).parent() ); //shift aside to front for css float - }); - } - - if ( $.support.cssPseudoElement || !$.nodeName( item[0], "ol" ) ) { - return; - } - }, - - _removeCorners: function(li){ - li - .add( li.find(".ui-btn-inner, .ui-li-link-alt, .ui-li-thumb") ) - .removeClass( "ui-corner-top ui-corner-bottom ui-corner-br ui-corner-bl ui-corner-tr ui-corner-tl" ); - }, - - refresh: function( create ) { - this._createSubPages(); - - var o = this.options, - $list = this.element, - self = this, - dividertheme = $list.jqmData( "dividertheme" ) || o.dividerTheme, - li = $list.children( "li" ), - counter = $.support.cssPseudoElement || !$.nodeName( $list[0], "ol" ) ? 0 : 1; - - if ( counter ) { - $list.find( ".ui-li-dec" ).remove(); - } - - li.each(function( pos ) { - var item = $( this ), - itemClass = "ui-li"; - - // If we're creating the element, we update it regardless - if ( !create && item.hasClass( "ui-li" ) ) { - return; - } - - var itemTheme = item.jqmData("theme") || o.theme; - - var a = item.find( ">a" ); - - if ( a.length ) { - var icon = item.jqmData("icon"); - - item - .buttonMarkup({ - wrapperEls: "div", - shadow: false, - corners: false, - iconpos: "right", - icon: a.length > 1 || icon === false ? false : icon || "arrow-r", - theme: itemTheme - }); - - a.first().addClass( "ui-link-inherit" ); - - if ( a.length > 1 ) { - itemClass += " ui-li-has-alt"; - - var last = a.last(), - splittheme = $list.jqmData( "splittheme" ) || last.jqmData( "theme" ) || o.splitTheme; - - last - .appendTo(item) - .attr( "title", last.text() ) - .addClass( "ui-li-link-alt" ) - .empty() - .buttonMarkup({ - shadow: false, - corners: false, - theme: itemTheme, - icon: false, - iconpos: false - }) - .find( ".ui-btn-inner" ) - .append( $( "<span>" ).buttonMarkup({ - shadow: true, - corners: true, - theme: splittheme, - iconpos: "notext", - icon: $list.jqmData( "spliticon" ) || last.jqmData( "icon" ) || o.splitIcon - } ) ); - } - - } else if ( item.jqmData( "role" ) === "list-divider" ) { - itemClass += " ui-li-divider ui-btn ui-bar-" + dividertheme; - item.attr( "role", "heading" ); - - //reset counter when a divider heading is encountered - if ( counter ) { - counter = 1; - } - - } else { - itemClass += " ui-li-static ui-body-" + itemTheme; - } - - - if( o.inset ){ - if ( pos === 0 ) { - itemClass += " ui-corner-top"; - - item - .add( item.find( ".ui-btn-inner" ) ) - .find( ".ui-li-link-alt" ) - .addClass( "ui-corner-tr" ) - .end() - .find( ".ui-li-thumb" ) - .addClass( "ui-corner-tl" ); - if(item.next().next().length){ - self._removeCorners( item.next() ); - } - - } - if ( pos === li.length - 1 ) { - itemClass += " ui-corner-bottom"; - - item - .add( item.find( ".ui-btn-inner" ) ) - .find( ".ui-li-link-alt" ) - .addClass( "ui-corner-br" ) - .end() - .find( ".ui-li-thumb" ) - .addClass( "ui-corner-bl" ); - - if(item.prev().prev().length){ - self._removeCorners( item.prev() ); - } - } - } - - - if ( counter && itemClass.indexOf( "ui-li-divider" ) < 0 ) { - - var countParent = item.is(".ui-li-static:first") ? item : item.find( ".ui-link-inherit" ); - - countParent - .addClass( "ui-li-jsnumbering" ) - .prepend( "<span class='ui-li-dec'>" + (counter++) + ". </span>" ); - } - - item.add( item.find( ".ui-btn-inner" ) ).addClass( itemClass ); - - if ( !create ) { - self._itemApply( $list, item ); - } - }); - }, - - //create a string for ID/subpage url creation - _idStringEscape: function( str ){ - return str.replace(/[^a-zA-Z0-9]/g, '-'); - }, - - _createSubPages: function() { - var parentList = this.element, - parentPage = parentList.closest( ".ui-page" ), - parentId = parentPage.jqmData( "url" ), - o = this.options, - self = this, - persistentFooterID = parentPage.find( ":jqmData(role='footer')" ).jqmData( "id" ); - - $( parentList.find( "li>ul, li>ol" ).toArray().reverse() ).each(function( i ) { - var list = $( this ), - parent = list.parent(), - nodeEls = $( list.prevAll().toArray().reverse() ), - nodeEls = nodeEls.length ? nodeEls : $( "<span>" + $.trim(parent.contents()[ 0 ].nodeValue) + "</span>" ), - title = nodeEls.first().text(),//url limits to first 30 chars of text - id = parentId + "&" + $.mobile.subPageUrlKey + "=" + self._idStringEscape(title + " " + i), - theme = list.jqmData( "theme" ) || o.theme, - countTheme = list.jqmData( "counttheme" ) || parentList.jqmData( "counttheme" ) || o.countTheme, - newPage = list.wrap( "<div data-" + $.mobile.ns + "role='page'><div data-" + $.mobile.ns + "role='content'></div></div>" ) - .parent() - .before( "<div data-" + $.mobile.ns + "role='header' data-" + $.mobile.ns + "theme='" + o.headerTheme + "'><div class='ui-title'>" + title + "</div></div>" ) - .after( persistentFooterID ? $( "<div data-" + $.mobile.ns + "role='footer' data-" + $.mobile.ns + "id='"+ persistentFooterID +"'>") : "" ) - .parent() - .attr( "data-" + $.mobile.ns + "url", id ) - .attr( "data-" + $.mobile.ns + "theme", theme ) - .attr( "data-" + $.mobile.ns + "count-theme", countTheme ) - .appendTo( $.mobile.pageContainer ); - - newPage.page(); - var anchor = parent.find('a:first'); - if (!anchor.length) { - anchor = $("<a></a>").html( nodeEls || title ).prependTo(parent.empty()); - } - anchor.attr('href','#' + id); - }).listview(); - } -}); - -})( jQuery ); -/* -* jQuery Mobile Framework : "listview" filter extension -* Copyright (c) jQuery Project -* Dual licensed under the MIT or GPL Version 2 licenses. -* http://jquery.org/license -*/ -(function($, undefined ) { - -$.mobile.listview.prototype.options.filter = false; -$.mobile.listview.prototype.options.filterPlaceholder = "Filter items..."; - -$( ":jqmData(role='listview')" ).live( "listviewcreate", function() { - var list = $( this ), - listview = list.data( "listview" ); - - if ( !listview.options.filter ) { - return; - } - - var wrapper = $( "<form>", { "class": "ui-listview-filter ui-bar-c", "role": "search" } ), - - search = $( "<input>", { - placeholder: listview.options.filterPlaceholder - }) - .attr( "data-" + $.mobile.ns + "type", "search" ) - .bind( "keyup change", function() { - var val = this.value.toLowerCase(), - listItems = list.children(); - listItems.show(); - if ( val ) { - // This handles hiding regular rows without the text we search for - // and any list dividers without regular rows shown under it - var childItems = false, - item; - - for (var i = listItems.length; i >= 0; i--) { - item = $(listItems[i]); - if (item.is("li:jqmData(role=list-divider)")) { - if (!childItems) { - item.hide(); - } - // New bucket! - childItems = false; - } else if (item.text().toLowerCase().indexOf( val ) === -1) { - item.hide(); - } else { - // There's a shown item in the bucket - childItems = true; - } - } - } - }) - .appendTo( wrapper ) - .textinput(); - - if ($( this ).jqmData( "inset" ) ) { - wrapper.addClass( "ui-listview-filter-inset" ); - } - - wrapper.insertBefore( list ); -}); - -})( jQuery ); -/* -* jQuery Mobile Framework : "dialog" plugin. -* Copyright (c) jQuery Project -* Dual licensed under the MIT (MIT-LICENSE.txt) and GPL (GPL-LICENSE.txt) licenses. -* Note: Code is in draft form and is subject to change -*/ -(function($, undefined ) { -$.widget( "mobile.dialog", $.mobile.widget, { - options: { - closeBtnText: "Close" - }, - _create: function(){ - var self = this, - $el = self.element; - - /* class the markup for dialog styling */ - this.element - //add ARIA role - .attr("role","dialog") - .addClass('ui-page ui-dialog ui-body-a') - .find( ":jqmData(role=header)" ) - .addClass('ui-corner-top ui-overlay-shadow') - .prepend( "<a href='#' data-" + $.mobile.ns + "icon='delete' data-" + $.mobile.ns + "rel='back' data-" + $.mobile.ns + "iconpos='notext'>"+ this.options.closeBtnText +"</a>" ) - .end() - .find('.ui-content:not([class*="ui-body-"])') - .addClass('ui-body-c') - .end() - .find( ".ui-content,:jqmData(role='footer')" ) - .last() - .addClass('ui-corner-bottom ui-overlay-shadow'); - - /* bind events - - clicks and submits should use the closing transition that the dialog opened with - unless a data-transition is specified on the link/form - - if the click was on the close button, or the link has a data-rel="back" it'll go back in history naturally - */ - this.element - .bind( "vclick submit", function(e){ - var $targetel; - if( e.type == "vclick" ){ - $targetel = $(e.target).closest("a"); - } - else{ - $targetel = $(e.target).closest("form"); - } - - if( $targetel.length && !$targetel.jqmData("transition") ){ - $targetel - .attr("data-" + $.mobile.ns + "transition", $.mobile.urlHistory.getActive().transition ) - .attr("data-" + $.mobile.ns + "direction", "reverse"); - } - }); - - }, - - //close method goes back in history - close: function(){ - window.history.back(); - } -}); -})( jQuery );/* -* jQuery Mobile Framework : "navbar" plugin -* Copyright (c) jQuery Project -* Dual licensed under the MIT or GPL Version 2 licenses. -* http://jquery.org/license -*/ -(function($, undefined ) { -$.widget( "mobile.navbar", $.mobile.widget, { - options: { - iconpos: 'top', - grid: null - }, - _create: function(){ - var $navbar = this.element, - $navbtns = $navbar.find("a"), - iconpos = $navbtns.filter( ":jqmData(icon)").length ? this.options.iconpos : undefined; - - $navbar - .addClass('ui-navbar') - .attr("role","navigation") - .find("ul") - .grid({grid: this.options.grid }); - - if( !iconpos ){ - $navbar.addClass("ui-navbar-noicons"); - } - - $navbtns - .buttonMarkup({ - corners: false, - shadow: false, - iconpos: iconpos - }); - - $navbar.delegate("a", "vclick",function(event){ - $navbtns.not( ".ui-state-persist" ).removeClass( $.mobile.activeBtnClass ); - $( this ).addClass( $.mobile.activeBtnClass ); - }); - } -}); -})( jQuery ); -/* -* jQuery Mobile Framework : plugin for creating CSS grids -* Copyright (c) jQuery Project -* Dual licensed under the MIT or GPL Version 2 licenses. -* http://jquery.org/license -*/ -(function($, undefined ) { -$.fn.grid = function(options){ - return this.each(function(){ - var o = $.extend({ - grid: null - },options); - - - var $kids = $(this).children(), - gridCols = {solo:1, a:2, b:3, c:4, d:5}, - grid = o.grid, - iterator; - - if( !grid ){ - if( $kids.length <= 5 ){ - for(var letter in gridCols){ - if(gridCols[letter] == $kids.length){ grid = letter; } - } - } - else{ - grid = 'a'; - } - } - iterator = gridCols[grid]; - - $(this).addClass('ui-grid-' + grid); - - $kids.filter(':nth-child(' + iterator + 'n+1)').addClass('ui-block-a'); - if(iterator > 1){ - $kids.filter(':nth-child(' + iterator + 'n+2)').addClass('ui-block-b'); - } - if(iterator > 2){ - $kids.filter(':nth-child(3n+3)').addClass('ui-block-c'); - } - if(iterator > 3){ - $kids.filter(':nth-child(4n+4)').addClass('ui-block-d'); - } - if(iterator > 4){ - $kids.filter(':nth-child(5n+5)').addClass('ui-block-e'); - } - - }); -}; -})(jQuery);/*! - * jQuery Mobile v@VERSION - * http://jquerymobile.com/ - * - * Copyright 2010, jQuery Project - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - */ - -(function( $, window, undefined ) { - var $html = $( "html" ), - $head = $( "head" ), - $window = $( window ); - - //trigger mobileinit event - useful hook for configuring $.mobile settings before they're used - $( window.document ).trigger( "mobileinit" ); - - //support conditions - //if device support condition(s) aren't met, leave things as they are -> a basic, usable experience, - //otherwise, proceed with the enhancements - if ( !$.mobile.gradeA() ) { - return; - } - - //add mobile, initial load "rendering" classes to docEl - $html.addClass( "ui-mobile ui-mobile-rendering" ); - - //define & prepend meta viewport tag, if content is defined - //NOTE: this is now deprecated. We recommend placing the meta viewport element in - //the markup from the start. - $.mobile.metaViewportContent && !$head.find( "meta[name='viewport']" ).length ? $( "<meta>", { name: "viewport", content: $.mobile.metaViewportContent}).prependTo( $head ) : undefined; - - //loading div which appears during Ajax requests - //will not appear if $.mobile.loadingMessage is false - var $loader = $.mobile.loadingMessage ? $( "<div class='ui-loader ui-body-a ui-corner-all'>" + "<span class='ui-icon ui-icon-loading spin'></span>" + "<h1>" + $.mobile.loadingMessage + "</h1>" + "</div>" ) : undefined; - - if(typeof $loader === "undefined"){ - alert($.mobile.loadingMessage); - } - - $.extend($.mobile, { - // turn on/off page loading message. - pageLoading: function ( done ) { - if ( done ) { - $html.removeClass( "ui-loading" ); - } else { - if( $.mobile.loadingMessage ){ - var activeBtn = $( "." + $.mobile.activeBtnClass ).first(); - - - if(typeof $loader === "undefined"){ - alert($.mobile.loadingMessage); - } - - $loader - .appendTo( $.mobile.pageContainer ) - //position at y center (if scrollTop supported), above the activeBtn (if defined), or just 100px from top - .css( { - top: $.support.scrollTop && $(window).scrollTop() + $(window).height() / 2 || - activeBtn.length && activeBtn.offset().top || 100 - } ); - } - - $html.addClass( "ui-loading" ); - } - }, - - // find and enhance the pages in the dom and transition to the first page. - initializePage: function(){ - //find present pages - var $pages = $( ":jqmData(role='page')" ); - - //add dialogs, set data-url attrs - $pages.add( ":jqmData(role='dialog')" ).each(function(){ - var $this = $(this); - - // unless the data url is already set set it to the id - if( !$this.jqmData('url') ){ - $this.attr( "data-" + $.mobile.ns + "url", $this.attr( "id" ) ); - } - }); - - //define first page in dom case one backs out to the directory root (not always the first page visited, but defined as fallback) - $.mobile.firstPage = $pages.first(); - - //define page container - $.mobile.pageContainer = $pages.first().parent().addClass( "ui-mobile-viewport" ); - - //cue page loading message - $.mobile.pageLoading(); - - // if hashchange listening is disabled or there's no hash deeplink, change to the first page in the DOM - if( !$.mobile.hashListeningEnabled || !$.mobile.path.stripHash( location.hash ) ){ - $.mobile.changePage( $.mobile.firstPage, false, true, false, true ); - } - // otherwise, trigger a hashchange to load a deeplink - else { - $window.trigger( "hashchange", [ true ] ); - } - } - }); - - //dom-ready inits - $( $.mobile.initializePage ); - - //window load event - //hide iOS browser chrome on load - $window.load( $.mobile.silentScroll ); -})( jQuery, this ); diff --git a/addons/web_mobile/static/lib/jquery_mobile/js/jquery.mobile-1.0a4.1.min.js b/addons/web_mobile/static/lib/jquery_mobile/js/jquery.mobile-1.0a4.1.min.js deleted file mode 100644 index 218680e5fd1..00000000000 --- a/addons/web_mobile/static/lib/jquery_mobile/js/jquery.mobile-1.0a4.1.min.js +++ /dev/null @@ -1,134 +0,0 @@ -/*! - * jQuery Mobile v1.0a4.1 - * http://jquerymobile.com/ - * - * Copyright 2010, jQuery Project - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - */ -(function(a,c){if(a.cleanData){var d=a.cleanData;a.cleanData=function(b){for(var f=0,h;(h=b[f])!=null;f++)a(h).triggerHandler("remove");d(b)}}else{var e=a.fn.remove;a.fn.remove=function(b,f){return this.each(function(){if(!f)if(!b||a.filter(b,[this]).length)a("*",this).add([this]).each(function(){a(this).triggerHandler("remove")});return e.call(a(this),b,f)})}}a.widget=function(b,f,h){var i=b.split(".")[0],g;b=b.split(".")[1];g=i+"-"+b;if(!h){h=f;f=a.Widget}a.expr[":"][g]=function(j){return!!a.data(j, -b)};a[i]=a[i]||{};a[i][b]=function(j,m){arguments.length&&this._createWidget(j,m)};f=new f;f.options=a.extend(true,{},f.options);a[i][b].prototype=a.extend(true,f,{namespace:i,widgetName:b,widgetEventPrefix:a[i][b].prototype.widgetEventPrefix||b,widgetBaseClass:g},h);a.widget.bridge(b,a[i][b])};a.widget.bridge=function(b,f){a.fn[b]=function(h){var i=typeof h==="string",g=Array.prototype.slice.call(arguments,1),j=this;h=!i&&g.length?a.extend.apply(null,[true,h].concat(g)):h;if(i&&h.charAt(0)==="_")return j; -i?this.each(function(){var m=a.data(this,b);if(!m)throw"cannot call methods on "+b+" prior to initialization; attempted to call method '"+h+"'";if(!a.isFunction(m[h]))throw"no such method '"+h+"' for "+b+" widget instance";var p=m[h].apply(m,g);if(p!==m&&p!==c){j=p;return false}}):this.each(function(){var m=a.data(this,b);m?m.option(h||{})._init():a.data(this,b,new f(h,this))});return j}};a.Widget=function(b,f){arguments.length&&this._createWidget(b,f)};a.Widget.prototype={widgetName:"widget",widgetEventPrefix:"", -options:{disabled:false},_createWidget:function(b,f){a.data(f,this.widgetName,this);this.element=a(f);this.options=a.extend(true,{},this.options,this._getCreateOptions(),b);var h=this;this.element.bind("remove."+this.widgetName,function(){h.destroy()});this._create();this._trigger("create");this._init()},_getCreateOptions:function(){var b={};if(a.metadata)b=a.metadata.get(element)[this.widgetName];return b},_create:function(){},_init:function(){},destroy:function(){this.element.unbind("."+this.widgetName).removeData(this.widgetName); -this.widget().unbind("."+this.widgetName).removeAttr("aria-disabled").removeClass(this.widgetBaseClass+"-disabled ui-state-disabled")},widget:function(){return this.element},option:function(b,f){var h=b;if(arguments.length===0)return a.extend({},this.options);if(typeof b==="string"){if(f===c)return this.options[b];h={};h[b]=f}this._setOptions(h);return this},_setOptions:function(b){var f=this;a.each(b,function(h,i){f._setOption(h,i)});return this},_setOption:function(b,f){this.options[b]=f;if(b=== -"disabled")this.widget()[f?"addClass":"removeClass"](this.widgetBaseClass+"-disabled ui-state-disabled").attr("aria-disabled",f);return this},enable:function(){return this._setOption("disabled",false)},disable:function(){return this._setOption("disabled",true)},_trigger:function(b,f,h){var i=this.options[b];f=a.Event(f);f.type=(b===this.widgetEventPrefix?b:this.widgetEventPrefix+b).toLowerCase();h=h||{};if(f.originalEvent){b=a.event.props.length;for(var g;b;){g=a.event.props[--b];f[g]=f.originalEvent[g]}}this.element.trigger(f, -h);return!(a.isFunction(i)&&i.call(this.element[0],f,h)===false||f.isDefaultPrevented())}}})(jQuery);(function(a,c){a.widget("mobile.widget",{_getCreateOptions:function(){var d=this.element,e={};a.each(this.options,function(b){var f=d.jqmData(b.replace(/[A-Z]/g,function(h){return"-"+h.toLowerCase()}));if(f!==c)e[b]=f});return e}})})(jQuery); -(function(a){function c(){var f=d.width(),h=[],i=[],g;e.removeClass("min-width-"+b.join("px min-width-")+"px max-width-"+b.join("px max-width-")+"px");a.each(b,function(j,m){f>=m&&h.push("min-width-"+m+"px");f<=m&&i.push("max-width-"+m+"px")});if(h.length)g=h.join(" ");if(i.length)g+=" "+i.join(" ");e.addClass(g)}var d=a(window),e=a("html"),b=[320,480,768,1024];a.mobile.media=function(){var f={},h=a("<div id='jquery-mediatest'>"),i=a("<body>").append(h);return function(g){if(!(g in f)){var j=document.createElement("style"), -m="@media "+g+" { #jquery-mediatest { position:absolute; } }";j.type="text/css";if(j.styleSheet)j.styleSheet.cssText=m;else j.appendChild(document.createTextNode(m));e.prepend(i).prepend(j);f[g]=h.css("position")==="absolute";i.add(j).remove()}return f[g]}}();a.mobile.addResolutionBreakpoints=function(f){if(a.type(f)==="array")b=b.concat(f);else b.push(f);b.sort(function(h,i){return h-i});c()};a(document).bind("mobileinit.htmlclass",function(){d.bind("orientationchange.htmlclass resize.htmlclass", -function(f){f.orientation&&e.removeClass("portrait landscape").addClass(f.orientation);c()})});a(function(){d.trigger("orientationchange.htmlclass")})})(jQuery); -(function(a,c){function d(g){var j=g.charAt(0).toUpperCase()+g.substr(1);g=(g+" "+f.join(j+" ")+j).split(" ");for(var m in g)if(b[m]!==c)return true}var e=a("<body>").prependTo("html"),b=e[0].style,f=["webkit","moz","o"],h=window.palmGetResource||window.PalmServiceBridge,i=window.blackberry;a.mobile.browser={};a.mobile.browser.ie=function(){for(var g=3,j=document.createElement("div"),m=j.all||[];j.innerHTML="<!--[if gt IE "+ ++g+"]><br><![endif]--\>",m[0];);return g>4?g:!g}();a.extend(a.support,{orientation:"orientation"in -window,touch:"ontouchend"in document,cssTransitions:"WebKitTransitionEvent"in window,pushState:!!history.pushState,mediaquery:a.mobile.media("only all"),cssPseudoElement:!!d("content"),boxShadow:!!d("boxShadow")&&!i,scrollTop:("pageXOffset"in window||"scrollTop"in document.documentElement||"scrollTop"in e[0])&&!h,dynamicBaseTag:function(){var g=location.protocol+"//"+location.host+location.pathname+"ui-dir/",j=a("head base"),m=null,p="";if(j.length)p=j.attr("href");else j=m=a("<base>",{href:g}).appendTo("head"); -var k=a("<a href='testurl'></a>").prependTo(e)[0].href;j[0].href=p?p:location.pathname;m&&m.remove();return k.indexOf(g)===0}(),eventCapture:"addEventListener"in document});e.remove();a.support.boxShadow||a("html").addClass("ui-mobile-nosupport-boxshadow")})(jQuery); -(function(a,c,d,e){function b(n){for(;n&&typeof n.originalEvent!=="undefined";)n=n.originalEvent;return n}function f(n){var v={};for(n=a(n);n&&n.length;){var s=n.data(w),z;for(z in s)if(s[z])v[z]=v.hasVirtualBinding=true;n=n.parent()}return v}function h(){if(o.touchbindings){G.unbind("touchmove",k).unbind("touchend",q).unbind("scroll",p);o.touchbindings=0}}function i(){if(t){clearTimeout(t);t=0}t=setTimeout(function(){N=t=0;L.length=0;Q=false;h()},a.vmouse.resetTimerDuration)}function g(n,v,s){var z= -false,D;if(!(D=s&&s[n])){if(s=!s)a:{for(s=a(v.target);s&&s.length;){if((D=s.data(w))&&(!n||D[n])){s=s;break a}s=s.parent()}s=null}D=s}if(D){z=v;s=z.type;z=a.Event(z);z.type=n;var H=z.originalEvent,J=a.event.props;if(H)for(n=J.length;n;){D=J[--n];z[D]=H[D]}if(s.search(/^touch/)!==-1){n=b(H);s=n.touches;n=n.changedTouches;if(s=s&&s.length?s[0]:n&&n.length?n[0]:e){n=0;for(H=l.length;n<H;n++){D=l[n];z[D]=s[D]}}}z=z;a(v.target).trigger(z);z=z.isDefaultPrevented()}return z}function j(n){var v=a(n.target).data(x); -if(!Q&&(!N||N!==v))g("v"+n.type,n)}function m(n){var v=b(n).touches;if(v&&v.length===1){var s=n.target;v=f(s);if(v.hasVirtualBinding){N=O++;a(s).data(x,N);if(t){clearTimeout(t);t=0}if(!o.touchbindings){G.bind("touchend",q).bind("touchmove",k).bind("scroll",p);o.touchbindings=1}K=false;s=b(n).touches[0];B=s.pageX;E=s.pageY;if(F){I=c.pageXOffset;R=c.pageYOffset}g("vmouseover",n,v);g("vmousedown",n,v)}}}function p(n){K||g("vmousecancel",n,f(n.target));K=true;i()}function k(n){var v=b(n).touches[0],s= -K,z=a.vmouse.moveDistanceThreshold;K=K||F&&(I!==c.pageXOffset||R!==c.pageYOffset)||Math.abs(v.pageX-B)>z||Math.abs(v.pageY-E)>z;v=f(n.target);K&&!s&&g("vmousecancel",n,v);g("vmousemove",n,v);i()}function q(n){h();var v=f(n.target);g("vmouseup",n,v);if(!K)if(g("vclick",n,v)){var s=b(n).changedTouches[0];L.push({touchID:N,x:s.clientX,y:s.clientY});Q=true}g("vmouseout",n,v);K=false;i()}function u(n){n=n.data(w);var v;if(n)for(v in n)if(n[v])return true;return false}function r(){}function y(n){var v= -n.substr(1);return{setup:function(){var s=a(this);u(s)||s.data(w,{});s.data(w)[n]=true;o[n]=(o[n]||0)+1;o[n]===1&&G.bind(v,j);s.bind(v,r);if(C){o.touchstart=(o.touchstart||0)+1;o.touchstart===1&&G.bind("touchstart",m)}},teardown:function(){--o[n];o[n]||G.unbind(v,j);if(C){--o.touchstart;o.touchstart||G.unbind("touchstart",m)}var s=a(this);s.data(w)[n]=false;s.unbind(v,r);u(s)||s.removeData(w)}}}var w="virtualMouseBindings",x="virtualTouchID",A="vmouseover vmousedown vmousemove vmouseup vclick vmouseout vmousecancel".split(" "), -l="clientX clientY pageX pageY screenX screenY".split(" "),o={},t=0,B=0,E=0,I=0,R=0,K=false,L=[],Q=false,F=a.support.scrollTop,C=a.support.eventCapture,G=a(d),O=1,N=0;a.vmouse={moveDistanceThreshold:10,clickDistanceThreshold:10,resetTimerDuration:1500};for(var U=0;U<A.length;U++)a.event.special[A[U]]=y(A[U]);C&&d.addEventListener("click",function(n){var v=L.length,s=n.target;if(v)for(var z=n.clientX,D=n.clientY,H=a.vmouse.clickDistanceThreshold,J=s;J;){for(var P=0;P<v;P++){var T=L[P];if(J===s&&Math.abs(T.x- -z)<H&&Math.abs(T.y-D)<H||a(J).data(x)===T.touchID){n.preventDefault();n.stopPropagation();return}}J=J.parentNode}},true)})(jQuery,window,document); -(function(a,c){function d(i,g,j){var m=j.type;j.type=g;a.event.handle.call(i,j);j.type=m}a.each("touchstart touchmove touchend orientationchange tap taphold swipe swipeleft swiperight scrollstart scrollstop".split(" "),function(i,g){a.fn[g]=function(j){return j?this.bind(g,j):this.trigger(g)};a.attrFn[g]=true});var e=a.support.touch,b=e?"touchstart":"mousedown",f=e?"touchend":"mouseup",h=e?"touchmove":"mousemove";a.event.special.scrollstart={enabled:true,setup:function(){function i(p,k){j=k;d(g,j? -"scrollstart":"scrollstop",p)}var g=this,j,m;a(g).bind("touchmove scroll",function(p){if(a.event.special.scrollstart.enabled){j||i(p,true);clearTimeout(m);m=setTimeout(function(){i(p,false)},50)}})}};a.event.special.tap={setup:function(){var i=this,g=a(i);g.bind("vmousedown",function(j){function m(){k=false;clearTimeout(u);g.unbind("vclick",p).unbind("vmousecancel",m)}function p(r){m();q==r.target&&d(i,"tap",r)}if(j.which&&j.which!==1)return false;var k=true,q=j.target,u;g.bind("vmousecancel",m).bind("vclick", -p);u=setTimeout(function(){k&&d(i,"taphold",j)},750)})}};a.event.special.swipe={setup:function(){var i=a(this);i.bind(b,function(g){function j(q){if(p){var u=q.originalEvent.touches?q.originalEvent.touches[0]:q;k={time:(new Date).getTime(),coords:[u.pageX,u.pageY]};Math.abs(p.coords[0]-k.coords[0])>10&&q.preventDefault()}}var m=g.originalEvent.touches?g.originalEvent.touches[0]:g,p={time:(new Date).getTime(),coords:[m.pageX,m.pageY],origin:a(g.target)},k;i.bind(h,j).one(f,function(){i.unbind(h,j); -if(p&&k)if(k.time-p.time<1E3&&Math.abs(p.coords[0]-k.coords[0])>30&&Math.abs(p.coords[1]-k.coords[1])<75)p.origin.trigger("swipe").trigger(p.coords[0]>k.coords[0]?"swipeleft":"swiperight");p=k=c})})}};(function(i){function g(){var k=m();if(k!==p){p=k;j.trigger("orientationchange")}}var j=i(window),m,p;i.event.special.orientationchange={setup:function(){if(i.support.orientation)return false;p=m();j.bind("resize",g)},teardown:function(){if(i.support.orientation)return false;j.unbind("resize",g)},add:function(k){var q= -k.handler;k.handler=function(u){u.orientation=m();return q.apply(this,arguments)}}};m=function(){var k=document.documentElement;return k&&k.clientWidth/k.clientHeight<1.1?"portrait":"landscape"}})(jQuery);a.each({scrollstop:"scrollstart",taphold:"tap",swipeleft:"swipe",swiperight:"swipe"},function(i,g){a.event.special[i]={setup:function(){a(this).bind(g,a.noop)}}})})(jQuery); -(function(a,c,d){function e(m){m=m||location.href;return"#"+m.replace(/^[^#]*#?(.*)$/,"$1")}var b="hashchange",f=document,h,i=a.event.special,g=f.documentMode,j="on"+b in c&&(g===d||g>7);a.fn[b]=function(m){return m?this.bind(b,m):this.trigger(b)};a.fn[b].delay=50;i[b]=a.extend(i[b],{setup:function(){if(j)return false;a(h.start)},teardown:function(){if(j)return false;a(h.stop)}});h=function(){function m(){var w=e(),x=y(q);if(w!==q){r(q=w,x);a(c).trigger(b)}else if(x!==q)location.href=location.href.replace(/#.*/, -"")+x;k=setTimeout(m,a.fn[b].delay)}var p={},k,q=e(),u=function(w){return w},r=u,y=u;p.start=function(){k||m()};p.stop=function(){k&&clearTimeout(k);k=d};a.browser.msie&&!j&&function(){var w,x;p.start=function(){if(!w){x=(x=a.fn[b].src)&&x+e();w=a('<iframe tabindex="-1" title="empty"/>').hide().one("load",function(){x||r(e());m()}).attr("src",x||"javascript:0").insertAfter("body")[0].contentWindow;f.onpropertychange=function(){try{if(event.propertyName==="title")w.document.title=f.title}catch(A){}}}}; -p.stop=u;y=function(){return e(w.location.href)};r=function(A,l){var o=w.document,t=a.fn[b].domain;if(A!==l){o.title=f.title;o.open();t&&o.write('<script>document.domain="'+t+'"<\/script>');o.close();w.location.hash=A}}}();return p}()})(jQuery,this); -(function(a){a.widget("mobile.page",a.mobile.widget,{options:{backBtnText:"Back",addBackBtn:true,backBtnTheme:null,degradeInputs:{color:false,date:false,datetime:false,"datetime-local":false,email:false,month:false,number:false,range:"number",search:true,tel:false,time:false,url:false,week:false},keepNative:null},_create:function(){var c=this.element,d=this.options;this.keepNative=":jqmData(role='none'), :jqmData(role='nojs')"+(d.keepNative?", "+d.keepNative:"");if(this._trigger("beforeCreate")!== -false){c.find(":jqmData(role='page'), :jqmData(role='content')").andSelf().each(function(){a(this).addClass("ui-"+a(this).jqmData("role"))});c.find(":jqmData(role='nojs')").addClass("ui-nojs");c.find(":jqmData(role)").andSelf().each(function(){var e=a(this),b=e.jqmData("role"),f=e.jqmData("theme");if(b==="header"||b==="footer"){e.addClass("ui-bar-"+(f||e.parent(":jqmData(role='page')").jqmData("theme")||"a"));e.attr("role",b==="header"?"banner":"contentinfo");f=e.children("a");var h=f.hasClass("ui-btn-left"), -i=f.hasClass("ui-btn-right");if(!h)h=f.eq(0).not(".ui-btn-right").addClass("ui-btn-left").length;i||f.eq(1).addClass("ui-btn-right");if(d.addBackBtn&&b==="header"&&a(".ui-page").length>1&&c.jqmData("url")!==a.mobile.path.stripHash(location.hash)&&!h&&e.jqmData("backbtn")!==false){f=a("<a href='#' class='ui-btn-left' data-"+a.mobile.ns+"rel='back' data-"+a.mobile.ns+"icon='arrow-l'>"+d.backBtnText+"</a>").prependTo(e);d.backBtnTheme&&f.attr("data-"+a.mobile.ns+"theme",d.backBtnTheme)}e.children("h1, h2, h3, h4, h5, h6").addClass("ui-title").attr({tabindex:"0", -role:"heading","aria-level":"1"})}else if(b==="content"){f&&e.addClass("ui-body-"+f);e.attr("role","main")}else if(b==="page")e.addClass("ui-body-"+(f||"c"));switch(b){case "header":case "footer":case "page":case "content":e.addClass("ui-"+b);break;case "collapsible":case "fieldcontain":case "navbar":case "listview":case "dialog":e[b]()}});this._enhanceControls();c.find(":jqmData(role='button'), .ui-bar > a, .ui-header > a, .ui-footer > a").not(".ui-btn").not(this.keepNative).buttonMarkup();c.find(":jqmData(role='controlgroup')").controlgroup(); -c.find("a:not(.ui-btn):not(.ui-link-inherit)").not(this.keepNative).addClass("ui-link");c.fixHeaderFooter()}},_typeAttributeRegex:/\s+type=["']?\w+['"]?/,_enhanceControls:function(){var c=this.options,d=this;this.element.find("input").not(this.keepNative).each(function(){var f=this.getAttribute("type"),h=c.degradeInputs[f]||"text";c.degradeInputs[f]&&a(this).replaceWith(a("<div>").html(a(this).clone()).html().replace(d._typeAttributeRegex,' type="'+h+'" data-'+a.mobile.ns+'type="'+f+'" '))});var e= -this.element.find("input, textarea, select, button"),b=e.not(this.keepNative);e=e.filter("input[type=text]");e.length&&typeof e[0].autocorrect!=="undefined"&&e.each(function(){this.setAttribute("autocorrect","off");this.setAttribute("autocomplete","off")});b.filter("[type='radio'], [type='checkbox']").checkboxradio();b.filter("button, [type='button'], [type='submit'], [type='reset'], [type='image']").button();b.filter("input, textarea").not("[type='radio'], [type='checkbox'], [type='button'], [type='submit'], [type='reset'], [type='image'], [type='hidden']").textinput(); -b.filter("input, select").filter(":jqmData(role='slider'), :jqmData(type='range')").slider();b.filter("select:not(:jqmData(role='slider'))").selectmenu()}})})(jQuery); -(function(a,c){a.extend(a.mobile,{ns:"",subPageUrlKey:"ui-page",nonHistorySelectors:"dialog",activePageClass:"ui-page-active",activeBtnClass:"ui-btn-active",ajaxEnabled:true,hashListeningEnabled:true,ajaxLinksEnabled:true,ajaxFormsEnabled:true,defaultTransition:"slide",loadingMessage:"loading",pageLoadErrorMessage:"Error Loading Page",metaViewportContent:"width=device-width, minimum-scale=1, maximum-scale=1",gradeA:function(){return a.support.mediaquery||a.mobile.browser.ie&&a.mobile.browser.ie>= -7},keyCode:{ALT:18,BACKSPACE:8,CAPS_LOCK:20,COMMA:188,COMMAND:91,COMMAND_LEFT:91,COMMAND_RIGHT:93,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,MENU:93,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SHIFT:16,SPACE:32,TAB:9,UP:38,WINDOWS:91},silentScroll:function(e){e=e||0;a.event.special.scrollstart.enabled=false;setTimeout(function(){c.scrollTo(0,e);a(document).trigger("silentscroll", -{x:0,y:e})},20);setTimeout(function(){a.event.special.scrollstart.enabled=true},150)}});a.fn.jqmData=function(e,b){return this.data(e?a.mobile.ns+e:e,b)};a.jqmData=function(e,b,f){return a.data(e,b&&a.mobile.ns+b,f)};a.fn.jqmRemoveData=function(e){return this.removeData(a.mobile.ns+e)};a.jqmRemoveData=function(e,b){return a.removeData(e,b&&a.mobile.ns+b)};a.jqmHasData=function(e,b){return a.hasData(e,b&&a.mobile.ns+b)};var d=a.find;a.find=function(e,b,f,h){e=e.replace(/:jqmData\(([^)]*)\)/g,"[data-"+ -(a.mobile.ns||"")+"$1]");return d.call(this,e,b,f,h)};a.extend(a.find,d);a.find.matches=function(e,b){return a.find(e,null,null,b)};a.find.matchesSelector=function(e,b){return a.find(b,null,null,[e]).length>0}})(jQuery,this); -(function(a,c){function d(l){if(i&&(!i.closest(".ui-page-active").length||l))i.removeClass(a.mobile.activeBtnClass);i=null}var e=a(window),b=a("html"),f=a("head"),h={get:function(l){if(l===c)l=location.hash;return h.stripHash(l).replace(/[^\/]*\.[^\/*]+$/,"")},getFilePath:function(l){var o="&"+a.mobile.subPageUrlKey;return l&&l.split(o)[0].split(q)[0]},set:function(l){location.hash=l},origin:"",setOrigin:function(){h.origin=h.get(location.protocol+"//"+location.host+location.pathname)},makeAbsolute:function(l){return h.isPath(window.location.hash)? -h.get()+l:l},isPath:function(l){return/\//.test(l)},clean:function(l){return l.replace(RegExp("^"+location.protocol+"//"+location.host+location.pathname),"")},stripHash:function(l){return l.replace(/^#/,"")},isExternal:function(l){return h.hasProtocol(h.clean(l))},hasProtocol:function(l){return/^(:?\w+:)/.test(l)},isRelative:function(l){return/^[^\/|#]/.test(l)&&!h.hasProtocol(l)},isEmbeddedPage:function(l){return/^#/.test(l)}},i=null,g={stack:[],activeIndex:0,getActive:function(){return g.stack[g.activeIndex]}, -getPrev:function(){return g.stack[g.activeIndex-1]},getNext:function(){return g.stack[g.activeIndex+1]},addNew:function(l,o,t,B){g.getNext()&&g.clearForward();g.stack.push({url:l,transition:o,title:t,page:B});g.activeIndex=g.stack.length-1},clearForward:function(){g.stack=g.stack.slice(0,g.activeIndex+1)},directHashChange:function(l){var o,t,B;a.each(g.stack,function(E,I){if(l.currentUrl===I.url){o=E<g.activeIndex;t=!o;B=E}});this.activeIndex=B!==c?B:this.activeIndex;if(o)l.isBack();else t&&l.isForward()}, -ignoreNextHashChange:true},j="[tabindex],a,button:visible,select:visible,input",m=null,p=[],k=false,q="&ui-state=dialog",u=f.children("base"),r=location.protocol+"//"+location.host,y=h.get(r+location.pathname),w=y;if(u.length){var x=u.attr("href");if(x)w=x.search(/^[^:\/]+:\/\/[^\/]+\/?/)===-1?x.charAt(0)==="/"?r+x:y+x:x;w+=w.charAt(w.length-1)==="/"?" ":"/"}var A=a.support.dynamicBaseTag?{element:u.length?u:a("<base>",{href:w}).prependTo(f),set:function(l){A.element.attr("href",w+h.get(l))},reset:function(){A.element.attr("href", -w)}}:c;h.setOrigin();a.fn.animationComplete=function(l){if(a.support.cssTransitions)return a(this).one("webkitAnimationEnd",l);else{setTimeout(l,0);return a(this)}};a.mobile.updateHash=h.set;a.mobile.path=h;a.mobile.base=A;a.mobile.urlstack=g.stack;a.mobile.urlHistory=g;a.mobile.allowCrossDomainPages=false;a.mobile.changePage=function(l,o,t,B,E){function I(){k=false;p.length>0&&a.mobile.changePage.apply(a.mobile,p.pop())}function R(){function H(){if(B!==false&&C){g.ignoreNextHashChange=false;h.set(C)}var M= -l.jqmData("title")||l.find(".ui-header .ui-title").text();if(M&&D==document.title)D=M;!s&&!z&&g.addNew(C,o,D,l);document.title=g.getActive().title;d();a.mobile.silentScroll(l.jqmData("lastScroll"));M=l;var S=M.jqmData("lastClicked");if(S&&S.length)S.focus();else{S=M.find(".ui-title:eq(0)");S.length?S.focus():M.find(j).eq(0).focus()}F&&F.data("page")._trigger("hide",null,{nextPage:l});l.data("page")._trigger("show",null,{prevPage:F||a("")});a.mobile.activePage=l;n!==null&&n.remove();b.removeClass("ui-mobile-rendering"); -I()}function J(M){a.mobile.pageContainer.addClass(M);V.push(M)}a.mobile.silentScroll();var P=e.scrollTop(),T=["flip"],V=[];if(C.indexOf("&"+a.mobile.subPageUrlKey)>-1)l=a(":jqmData(url='"+C+"')");if(F){F.jqmData("lastScroll",P).jqmData("lastClicked",i);F.data("page")._trigger("beforehide",null,{nextPage:l})}l.data("page")._trigger("beforeshow",null,{prevPage:F||a("")});if(o&&o!=="none"){a.mobile.pageLoading(true);a.inArray(o,T)>=0&&J("ui-mobile-viewport-perspective");J("ui-mobile-viewport-transitioning"); -if(F)F.addClass(o+" out "+(t?"reverse":""));l.addClass(a.mobile.activePageClass+" "+o+" in "+(t?"reverse":""));l.animationComplete(function(){l.add(F).removeClass("out in reverse "+o);F&&F.removeClass(a.mobile.activePageClass);H();a.mobile.pageContainer.removeClass(V.join(" "));V=[]})}else{a.mobile.pageLoading(true);F&&F.removeClass(a.mobile.activePageClass);l.addClass(a.mobile.activePageClass);H()}}function K(){if(m||l.jqmData("role")==="dialog"){C=g.getActive().url+q;if(m){l.attr("data-"+a.mobile.ns+ -"role",m);m=null}}l.page()}var L=a.type(l)==="array",Q=a.type(l)==="object",F=L?l[0]:a.mobile.activePage;l=L?l[1]:l;var C=a.type(l)==="string"?h.stripHash(l):"",G=C,O,N="get",U=false,n=null,v=g.getActive(),s=false,z=false,D=document.title;if(!(v&&g.stack.length>1&&v.url===C&&!L&&!Q))if(k)p.unshift(arguments);else{k=true;E&&g.directHashChange({currentUrl:C,isBack:function(){z=!(s=true);t=true;o=o||v.transition},isForward:function(){z=!(s=false);o=o||g.getActive().transition}});if(Q&&l.url){C=l.url; -O=l.data;N=l.type;U=true;if(O&&N==="get"){if(a.type(O)==="object")O=a.param(O);C+="?"+O;O=c}}A&&A.reset();if(window.document.activeElement)a(window.document.activeElement||"").add("input:focus, textarea:focus, select:focus").blur();if(C){l=a(":jqmData(url='"+C+"')");G=h.getFilePath(C)}else{L=l.attr("data-"+a.mobile.ns+"url");Q=h.getFilePath(L);if(L!==Q)G=Q}if(o===c)o=m&&m==="dialog"?"pop":a.mobile.defaultTransition;if(l.length&&!U){G&&A&&A.set(G);K();R()}else{if(l.length)n=l;a.mobile.pageLoading(); -a.ajax({url:G,type:N,data:O,dataType:"html",success:function(H){var J=a("<div></div>"),P,T=H.match(/<title[^>]*>([^<]*)/)&&RegExp.$1,V=RegExp("\\bdata-"+a.mobile.ns+"url=[\"']?([^\"'>]*)[\"']?");if(RegExp(".*(<[^>]+\\bdata-"+a.mobile.ns+"role=[\"']?page[\"']?[^>]*>).*").test(H)&&RegExp.$1&&V.test(RegExp.$1)&&RegExp.$1)P=RegExp.$1;if(P){A&&A.set(P);C=G=h.getFilePath(P)}else A&&A.set(G);J.get(0).innerHTML=H;l=J.find(":jqmData(role='page'), :jqmData(role='dialog')").first();if(T)D=T;if(!a.support.dynamicBaseTag){var M= -h.get(G);l.find("[src], link[href], a[rel='external'], :jqmData(ajax='false'), a[target]").each(function(){var S=a(this).is("[href]")?"href":"src",W=a(this).attr(S);W=W.replace(location.protocol+"//"+location.host+location.pathname,"");/^(\w+:|#|\/)/.test(W)||a(this).attr(S,M+W)})}l.attr("data-"+a.mobile.ns+"url",G).appendTo(a.mobile.pageContainer);K();setTimeout(function(){R()},0)},error:function(){a.mobile.pageLoading(true);d(true);A&&A.set(h.get());I();a("<div class='ui-loader ui-overlay-shadow ui-body-e ui-corner-all'><h1>"+ -a.mobile.pageLoadErrorMessage+"</h1></div>").css({display:"block",opacity:0.96,top:a(window).scrollTop()+100}).appendTo(a.mobile.pageContainer).delay(800).fadeOut(400,function(){a(this).remove()})}})}}};a("form").live("submit",function(l){if(!(!a.mobile.ajaxEnabled||!a.mobile.ajaxFormsEnabled||a(this).is(":jqmData(ajax='false')"))){var o=a(this).attr("method"),t=h.clean(a(this).attr("action")),B=a(this).attr("target");if(!(h.isExternal(t)||B)){if(h.isRelative(t))t=h.makeAbsolute(t);a.mobile.changePage({url:t.length&& -t||h.get(),type:o.length&&o.toLowerCase()||"get",data:a(this).serialize()},a(this).jqmData("transition"),a(this).jqmData("direction"),true);l.preventDefault()}}});a("a").live("vclick",function(){a(this).closest(".ui-btn").not(".ui-disabled").addClass(a.mobile.activeBtnClass)});a("a").live("click",function(l){var o=a(this),t=o.attr("href")||"#",B=h.hasProtocol(t);t=h.clean(t);var E=o.is("[rel='external']"),I=h.isEmbeddedPage(t),R=a.mobile.allowCrossDomainPages&&location.protocol==="file:"&&t.search(/^https?:/)!= --1;E=h.isExternal(t)&&!R||E&&!I;I=o.is("[target]");R=o.is(":jqmData(ajax='false')");var K=h.stripHash(t)==a.mobile.activePage.jqmData("url");if(o.is(":jqmData(rel='back')")){window.history.back();return false}if(t.replace(h.get(),"")=="#"||K)l.preventDefault();else{i=o.closest(".ui-btn");if(E||R||I||!a.mobile.ajaxEnabled||!a.mobile.ajaxLinksEnabled)window.setTimeout(function(){d(true)},200);else{E=o.jqmData("transition");I=(I=o.jqmData("direction"))&&I==="reverse"||o.jqmData("back");m=o.attr("data-"+ -a.mobile.ns+"rel");if(h.isRelative(t)&&!B)t=h.makeAbsolute(t);t=h.stripHash(t);a.mobile.changePage(t,E,I);l.preventDefault()}}});e.bind("hashchange",function(){var l=h.stripHash(location.hash),o=a.mobile.urlHistory.stack.length===0?false:c;if(!a.mobile.hashListeningEnabled||!g.ignoreNextHashChange){if(!g.ignoreNextHashChange)g.ignoreNextHashChange=true}else{if(g.stack.length>1&&l.indexOf(q)>-1)if(a.mobile.activePage.is(".ui-dialog")){var t=function(){l=a.mobile.urlHistory.getActive().page};g.directHashChange({currentUrl:l, -isBack:t,isForward:t})}else{g.directHashChange({currentUrl:l,isBack:function(){window.history.back()},isForward:function(){window.history.forward()}});return}l?a.mobile.changePage(l,o,c,false,true):a.mobile.changePage(a.mobile.firstPage,o,true,false,true)}})})(jQuery); -(function(a,c){a.fn.fixHeaderFooter=function(){if(!a.support.scrollTop)return this;return this.each(function(){var d=a(this);d.jqmData("fullscreen")&&d.addClass("ui-page-fullscreen");d.find(".ui-header:jqmData(position='fixed')").addClass("ui-header-fixed ui-fixed-inline fade");d.find(".ui-footer:jqmData(position='fixed')").addClass("ui-footer-fixed ui-fixed-inline fade")})};a.fixedToolbars=function(){function d(){if(!h&&f=="overlay"){i||a.fixedToolbars.hide(true);a.fixedToolbars.startShowTimer()}} -function e(k){var q=0;if(k){var u=k.offsetParent,r=document.body;for(q=k.offsetTop;k&&k!=r;){q+=k.scrollTop||0;if(k==u){q+=u.offsetTop;u=k.offsetParent}k=k.parentNode}}return q}function b(k){var q=a(window).scrollTop(),u=e(k[0]),r=k.css("top")=="auto"?0:parseFloat(k.css("top")),y=window.innerHeight,w=k.outerHeight(),x=k.parents(".ui-page:not(.ui-page-fullscreen)").length;if(k.is(".ui-header-fixed")){r=q-u+r;if(r<u)r=0;return k.css("top",x?r:q)}else{r=q+y-w-(u-r);return k.css("top",x?r:q+y-w)}}if(a.support.scrollTop){var f= -"inline",h=false,i,g,j=null,m=false,p=true;a(function(){a(document).bind("vmousedown",function(){if(p)j=f}).bind("vclick",function(k){if(p)if(!a(k.target).closest("a,input,textarea,select,button,label,.ui-header-fixed,.ui-footer-fixed").length)if(!m){a.fixedToolbars.toggle(j);j=null}}).bind("scrollstart",function(){m=true;if(j==null)j=f;var k=j=="overlay";if(h=k||!!i){a.fixedToolbars.clearShowTimer();k&&a.fixedToolbars.hide(true)}}).bind("scrollstop",function(k){if(!a(k.target).closest("a,input,textarea,select,button,label,.ui-header-fixed,.ui-footer-fixed").length){m= -false;if(h){h=false;a.fixedToolbars.startShowTimer()}j=null}}).bind("silentscroll",d);a(window).bind("resize",d)});a(".ui-page").live("pagebeforeshow",function(k,q){var u=a(k.target).find(":jqmData(role='footer')"),r=u.data("id"),y=q.prevPage;prevFooter=y&&y.find(":jqmData(role='footer')");y=prevFooter.jqmData("id")===r;if(r&&y){g=u;b(g.removeClass("fade in out").appendTo(a.mobile.pageContainer))}});a(".ui-page").live("pageshow",function(){var k=a(this);g&&g.length&&setTimeout(function(){b(g.appendTo(k).addClass("fade")); -g=null},500);a.fixedToolbars.show(true,this)});return{show:function(k,q){a.fixedToolbars.clearShowTimer();f="overlay";return(q?a(q):a.mobile.activePage?a.mobile.activePage:a(".ui-page-active")).children(".ui-header-fixed:first, .ui-footer-fixed:not(.ui-footer-duplicate):last").each(function(){var u=a(this),r=a(window).scrollTop(),y=e(u[0]),w=window.innerHeight,x=u.outerHeight();r=u.is(".ui-header-fixed")&&r<=y+x||u.is(".ui-footer-fixed")&&y<=r+w;u.addClass("ui-fixed-overlay").removeClass("ui-fixed-inline"); -!r&&!k&&u.animationComplete(function(){u.removeClass("in")}).addClass("in");b(u)})},hide:function(k){f="inline";return(a.mobile.activePage?a.mobile.activePage:a(".ui-page-active")).children(".ui-header-fixed:first, .ui-footer-fixed:not(.ui-footer-duplicate):last").each(function(){var q=a(this),u=q.css("top");u=u=="auto"?0:parseFloat(u);q.addClass("ui-fixed-inline").removeClass("ui-fixed-overlay");if(u<0||q.is(".ui-header-fixed")&&u!=0)if(k)q.css("top",0);else q.css("top")!=="auto"&&parseFloat(q.css("top"))!== -0&&q.animationComplete(function(){q.removeClass("out reverse");q.css("top",0)}).addClass("out reverse")})},startShowTimer:function(){a.fixedToolbars.clearShowTimer();var k=a.makeArray(arguments);i=setTimeout(function(){i=c;a.fixedToolbars.show.apply(null,k)},100)},clearShowTimer:function(){i&&clearTimeout(i);i=c},toggle:function(k){if(k)f=k;return f=="overlay"?a.fixedToolbars.hide():a.fixedToolbars.show()},setTouchToggleEnabled:function(k){p=k}}}}()})(jQuery); -(function(a,c){a.widget("mobile.checkboxradio",a.mobile.widget,{options:{theme:null},_create:function(){var d=this,e=this.element,b=e.closest("form,fieldset,:jqmData(role='page')").find("label").filter("[for="+e[0].id+"]"),f=e.attr("type"),h="ui-icon-"+f+"-off";if(!(f!="checkbox"&&f!="radio")){a.extend(this,{label:b,inputtype:f,checkedicon:"ui-icon-"+f+"-on",uncheckedicon:h});if(!this.options.theme)this.options.theme=this.element.jqmData("theme");b.buttonMarkup({theme:this.options.theme,icon:this.element.parents(":jqmData(type='horizontal')").length? -c:h,shadow:false});e.add(b).wrapAll("<div class='ui-"+f+"'></div>");b.bind({vmouseover:function(){if(a(this).parent().is(".ui-disabled"))return false},vclick:function(i){if(e.is(":disabled"))i.preventDefault();else{d._cacheVals();e.attr("checked",f==="radio"&&true||!e.is(":checked"));d._updateAll();return false}}});e.bind({vmousedown:function(){this._cacheVals()},vclick:function(){d._updateAll()},focus:function(){b.addClass("ui-focus")},blur:function(){b.removeClass("ui-focus")}});this.refresh()}}, -_cacheVals:function(){this._getInputSet().each(function(){a(this).jqmData("cacheVal",a(this).is(":checked"))})},_getInputSet:function(){return this.element.closest("form,fieldset,:jqmData(role='page')").find("input[name='"+this.element.attr("name")+"'][type='"+this.inputtype+"']")},_updateAll:function(){var d=this;this._getInputSet().each(function(){if(a(this).is(":checked")||d.inputtype==="checkbox")a(this).trigger("change")}).checkboxradio("refresh")},refresh:function(){var d=this.element,e=this.label, -b=e.find(".ui-icon");if(d[0].checked){e.addClass(a.mobile.activeBtnClass);b.addClass(this.checkedicon).removeClass(this.uncheckedicon)}else{e.removeClass(a.mobile.activeBtnClass);b.removeClass(this.checkedicon).addClass(this.uncheckedicon)}d.is(":disabled")?this.disable():this.enable()},disable:function(){this.element.attr("disabled",true).parent().addClass("ui-disabled")},enable:function(){this.element.attr("disabled",false).parent().removeClass("ui-disabled")}})})(jQuery); -(function(a){a.widget("mobile.textinput",a.mobile.widget,{options:{theme:null},_create:function(){var c=this.element,d=this.options,e=d.theme;if(!e){e=this.element.closest("[class*='ui-bar-'],[class*='ui-body-']");e=e.length?/ui-(bar|body)-([a-z])/.exec(e.attr("class"))[2]:"c"}e=" ui-body-"+e;a("label[for="+c.attr("id")+"]").addClass("ui-input-text");c.addClass("ui-input-text ui-body-"+d.theme);var b=c;if(c.is("[type='search'],:jqmData(type='search')")){b=c.wrap('<div class="ui-input-search ui-shadow-inset ui-btn-corner-all ui-btn-shadow ui-icon-searchfield'+ -e+'"></div>').parent();var f=a('<a href="#" class="ui-input-clear" title="clear text">clear text</a>').tap(function(g){c.val("").focus();c.trigger("change");f.addClass("ui-input-clear-hidden");g.preventDefault()}).appendTo(b).buttonMarkup({icon:"delete",iconpos:"notext",corners:true,shadow:true});d=function(){c.val()==""?f.addClass("ui-input-clear-hidden"):f.removeClass("ui-input-clear-hidden")};d();c.keyup(d)}else c.addClass("ui-corner-all ui-shadow-inset"+e);c.focus(function(){b.addClass("ui-focus")}).blur(function(){b.removeClass("ui-focus")}); -if(c.is("textarea")){var h=function(){var g=c[0].scrollHeight;c[0].clientHeight<g&&c.css({height:g+15})},i;c.keyup(function(){clearTimeout(i);i=setTimeout(h,100)})}},disable:function(){(this.element.attr("disabled",true).is("[type='search'],:jqmData(type='search')")?this.element.parent():this.element).addClass("ui-disabled")},enable:function(){(this.element.attr("disabled",false).is("[type='search'],:jqmData(type='search')")?this.element.parent():this.element).removeClass("ui-disabled")}})})(jQuery); -(function(a){a.widget("mobile.selectmenu",a.mobile.widget,{options:{theme:null,disabled:false,icon:"arrow-d",iconpos:"right",inline:null,corners:true,shadow:true,iconshadow:true,menuPageTheme:"b",overlayTheme:"a",hidePlaceholderMenuItems:true,closeText:"Close",nativeMenu:true},_create:function(){var c=this,d=this.options,e=this.element.wrap("<div class='ui-select'>"),b=e.attr("id"),f=a("label[for="+b+"]").addClass("ui-select"),h=e[0].selectedIndex==-1?0:e[0].selectedIndex,i=(c.options.nativeMenu? -a("<div/>"):a("<a>",{href:"#",role:"button",id:m,"aria-haspopup":"true","aria-owns":p})).text(a(e[0].options.item(h)).text()).insertBefore(e).buttonMarkup({theme:d.theme,icon:d.icon,iconpos:d.iconpos,inline:d.inline,corners:d.corners,shadow:d.shadow,iconshadow:d.iconshadow}),g=c.isMultiple=e[0].multiple;d.nativeMenu&&window.opera&&window.opera.version&&e.addClass("ui-select-nativeonly");if(!d.nativeMenu){var j=e.find("option"),m=b+"-button",p=b+"-menu",k=e.closest(".ui-page");h=/ui-btn-up-([a-z])/.exec(i.attr("class"))[1]; -var q=a("<div data-"+a.mobile.ns+"role='dialog' data-"+a.mobile.ns+"theme='"+d.menuPageTheme+"'><div data-"+a.mobile.ns+"role='header'><div class='ui-title'>"+f.text()+"</div></div><div data-"+a.mobile.ns+"role='content'></div></div>").appendTo(a.mobile.pageContainer).page(),u=q.find(".ui-content");q.find(".ui-header a");var r=a("<div>",{"class":"ui-selectmenu-screen ui-screen-hidden"}).appendTo(k),y=a("<div>",{"class":"ui-selectmenu ui-selectmenu-hidden ui-overlay-shadow ui-corner-all pop ui-body-"+ -d.overlayTheme}).insertAfter(r),w=a("<ul>",{"class":"ui-selectmenu-list",id:p,role:"listbox","aria-labelledby":m}).attr("data-"+a.mobile.ns+"theme",h).appendTo(y),x=a("<div>",{"class":"ui-header ui-bar-"+h}).prependTo(y),A=a("<h1>",{"class":"ui-title"}).appendTo(x),l=a("<a>",{text:d.closeText,href:"#","class":"ui-btn-left"}).attr("data-"+a.mobile.ns+"iconpos","notext").attr("data-"+a.mobile.ns+"icon","delete").appendTo(x).buttonMarkup()}if(g)c.buttonCount=a("<span>").addClass("ui-li-count ui-btn-up-c ui-btn-corner-all").hide().appendTo(i); -d.disabled&&this.disable();e.change(function(){c.refresh()});a.extend(c,{select:e,optionElems:j,selectID:b,label:f,buttonId:m,menuId:p,thisPage:k,button:i,menuPage:q,menuPageContent:u,screen:r,listbox:y,list:w,menuType:void 0,header:x,headerClose:l,headerTitle:A,placeholder:""});if(d.nativeMenu)e.appendTo(i).bind("vmousedown",function(){i.addClass(a.mobile.activeBtnClass)}).bind("focus vmouseover",function(){i.trigger("vmouseover")}).bind("vmousemove",function(){i.removeClass(a.mobile.activeBtnClass)}).bind("change blur vmouseout", -function(){i.trigger("vmouseout").removeClass(a.mobile.activeBtnClass)});else{c.refresh();e.attr("tabindex","-1").focus(function(){a(this).blur();i.focus()});i.bind("vclick keydown",function(o){if(o.type=="vclick"||o.keyCode&&(o.keyCode===a.mobile.keyCode.ENTER||o.keyCode===a.mobile.keyCode.SPACE)){c.open();o.preventDefault()}});w.attr("role","listbox").delegate(".ui-li>a","focusin",function(){a(this).attr("tabindex","0")}).delegate(".ui-li>a","focusout",function(){a(this).attr("tabindex","-1")}).delegate("li:not(.ui-disabled, .ui-li-divider)", -"vclick",function(o){var t=e[0].selectedIndex,B=w.find("li:not(.ui-li-divider)").index(this),E=c.optionElems.eq(B)[0];E.selected=g?!E.selected:true;g&&a(this).find(".ui-icon").toggleClass("ui-icon-checkbox-on",E.selected).toggleClass("ui-icon-checkbox-off",!E.selected);t!==B&&e.trigger("change");g||c.close();o.preventDefault()}).keydown(function(o){var t=a(o.target),B=t.closest("li");switch(o.keyCode){case 38:o=B.prev();if(o.length){t.blur().attr("tabindex","-1");o.find("a").first().focus()}return false; -case 40:o=B.next();if(o.length){t.blur().attr("tabindex","-1");o.find("a").first().focus()}return false;case 13:case 32:t.trigger("vclick");return false}});r.bind("vclick",function(){c.close()});c.headerClose.click(function(){if(c.menuType=="overlay"){c.close();return false}})}},_buildList:function(){var c=this,d=this.options,e=this.placeholder,b=[],f=[],h=c.isMultiple?"checkbox-off":"false";c.list.empty().filter(".ui-listview").listview("destroy");c.select.find("option").each(function(){var i=a(this), -g=i.parent(),j=i.text(),m="<a href='#'>"+j+"</a>",p=[],k=[];if(g.is("optgroup")){g=g.attr("label");if(a.inArray(g,b)===-1){f.push("<li data-"+a.mobile.ns+"role='list-divider'>"+g+"</li>");b.push(g)}}if(!this.getAttribute("value")||j.length==0||i.jqmData("placeholder")){d.hidePlaceholderMenuItems&&p.push("ui-selectmenu-placeholder");e=c.placeholder=j}if(this.disabled){p.push("ui-disabled");k.push("aria-disabled='true'")}f.push("<li data-"+a.mobile.ns+"icon='"+h+"' class='"+p.join(" ")+"' "+k.join(" ")+ -">"+m+"</li>")});c.list.html(f.join(" "));c.list.find("li").attr({role:"option",tabindex:"-1"}).first().attr("tabindex","0");this.isMultiple||this.headerClose.hide();!this.isMultiple&&!e.length?this.header.hide():this.headerTitle.text(this.placeholder);c.list.listview()},refresh:function(c){var d=this,e=this.element,b=this.isMultiple,f=this.optionElems=e.find("option"),h=f.filter(":selected"),i=h.map(function(){return f.index(this)}).get();if(!d.options.nativeMenu&&(c||e[0].options.length!=d.list.find("li").length))d._buildList(); -d.button.find(".ui-btn-text").text(function(){if(!b)return h.text();return h.length?h.map(function(){return a(this).text()}).get().join(", "):d.placeholder});if(b)d.buttonCount[h.length>1?"show":"hide"]().text(h.length);d.options.nativeMenu||d.list.find("li:not(.ui-li-divider)").removeClass(a.mobile.activeBtnClass).attr("aria-selected",false).each(function(g){if(a.inArray(g,i)>-1){g=a(this).addClass(a.mobile.activeBtnClass);g.find("a").attr("aria-selected",true);b&&g.find(".ui-icon").removeClass("ui-icon-checkbox-off").addClass("ui-icon-checkbox-on")}})}, -open:function(){function c(){d.list.find(".ui-btn-active").focus()}if(!(this.options.disabled||this.options.nativeMenu)){var d=this,e=d.list.parent().outerHeight(),b=d.list.parent().outerWidth(),f=a(window).scrollTop(),h=d.button.offset().top,i=window.innerHeight,g=window.innerWidth;d.button.addClass(a.mobile.activeBtnClass);setTimeout(function(){d.button.removeClass(a.mobile.activeBtnClass)},300);if(e>i-80||!a.support.scrollTop){f==0&&h>i&&d.thisPage.one("pagehide",function(){a(this).jqmData("lastScroll", -h)});d.menuPage.one("pageshow",function(){a(window).one("silentscroll",function(){c()})});d.menuType="page";d.menuPageContent.append(d.list);a.mobile.changePage(d.menuPage,"pop",false,true)}else{d.menuType="overlay";d.screen.height(a(document).height()).removeClass("ui-screen-hidden");var j=h-f,m=f+i-h,p=e/2,k=parseFloat(d.list.parent().css("max-width"));e=j>e/2&&m>e/2?h+d.button.outerHeight()/2-p:j>m?f+i-e-30:f+30;if(b<k)k=(g-b)/2;else{k=d.button.offset().left+d.button.outerWidth()/2-b/2;if(k<30)k= -30;else if(k+b>g)k=g-b-30}d.listbox.append(d.list).removeClass("ui-selectmenu-hidden").css({top:e,left:k}).addClass("in");c()}setTimeout(function(){d.isOpen=true},400)}},close:function(){function c(){setTimeout(function(){d.button.focus()},40);d.listbox.removeAttr("style").append(d.list)}if(!(this.options.disabled||!this.isOpen||this.options.nativeMenu)){var d=this;if(d.menuType=="page"){a.mobile.changePage([d.menuPage,d.thisPage],"pop",true,false);d.menuPage.one("pagehide",c)}else{d.screen.addClass("ui-screen-hidden"); -d.listbox.addClass("ui-selectmenu-hidden").removeAttr("style").removeClass("in");c()}this.isOpen=false}},disable:function(){this.element.attr("disabled",true);this.button.addClass("ui-disabled").attr("aria-disabled",true);return this._setOption("disabled",true)},enable:function(){this.element.attr("disabled",false);this.button.removeClass("ui-disabled").attr("aria-disabled",false);return this._setOption("disabled",false)}})})(jQuery); -(function(a){a.fn.buttonMarkup=function(d){return this.each(function(){var e=a(this),b=a.extend({},a.fn.buttonMarkup.defaults,e.jqmData(),d),f,h="ui-btn-inner",i;c&&c();if(!b.theme){f=e.closest("[class*='ui-bar-'],[class*='ui-body-']");b.theme=f.length?/ui-(bar|body)-([a-z])/.exec(f.attr("class"))[2]:"c"}f="ui-btn ui-btn-up-"+b.theme;if(b.inline)f+=" ui-btn-inline";if(b.icon){b.icon="ui-icon-"+b.icon;b.iconpos=b.iconpos||"left";i="ui-icon "+b.icon;if(b.shadow)i+=" ui-icon-shadow"}if(b.iconpos){f+= -" ui-btn-icon-"+b.iconpos;b.iconpos=="notext"&&!e.attr("title")&&e.attr("title",e.text())}if(b.corners){f+=" ui-btn-corner-all";h+=" ui-btn-corner-all"}if(b.shadow)f+=" ui-shadow";e.attr("data-"+a.mobile.ns+"theme",b.theme).addClass(f);b=("<D class='"+h+"'><D class='ui-btn-text'></D>"+(b.icon?"<span class='"+i+"'></span>":"")+"</D>").replace(/D/g,b.wrapperEls);e.wrapInner(b)})};a.fn.buttonMarkup.defaults={corners:true,shadow:true,iconshadow:true,wrapperEls:"span"};var c=function(){a(".ui-btn:not(.ui-disabled)").live({vmousedown:function(){var d= -a(this).attr("data-"+a.mobile.ns+"theme");a(this).removeClass("ui-btn-up-"+d).addClass("ui-btn-down-"+d)},"vmousecancel vmouseup":function(){var d=a(this).attr("data-"+a.mobile.ns+"theme");a(this).removeClass("ui-btn-down-"+d).addClass("ui-btn-up-"+d)},"vmouseover focus":function(){var d=a(this).attr("data-"+a.mobile.ns+"theme");a(this).removeClass("ui-btn-up-"+d).addClass("ui-btn-hover-"+d)},"vmouseout blur":function(){var d=a(this).attr("data-"+a.mobile.ns+"theme");a(this).removeClass("ui-btn-hover-"+ -d).addClass("ui-btn-up-"+d)}});c=null}})(jQuery); -(function(a){a.widget("mobile.button",a.mobile.widget,{options:{theme:null,icon:null,iconpos:null,inline:null,corners:true,shadow:true,iconshadow:true},_create:function(){var c=this.element,d=this.options;this.button=a("<div></div>").text(c.text()||c.val()).buttonMarkup({theme:d.theme,icon:d.icon,iconpos:d.iconpos,inline:d.inline,corners:d.corners,shadow:d.shadow,iconshadow:d.iconshadow}).insertBefore(c).append(c.addClass("ui-btn-hidden"));d=c.attr("type");d!=="button"&&d!=="reset"&&c.bind("vclick", -function(){var e=a("<input>",{type:"hidden",name:c.attr("name"),value:c.attr("value")}).insertBefore(c);a(document).submit(function(){e.remove()})});this.refresh()},enable:function(){this.element.attr("disabled",false);this.button.removeClass("ui-disabled").attr("aria-disabled",false);return this._setOption("disabled",false)},disable:function(){this.element.attr("disabled",true);this.button.addClass("ui-disabled").attr("aria-disabled",true);return this._setOption("disabled",true)},refresh:function(){this.element.attr("disabled")? -this.disable():this.enable()}})})(jQuery); -(function(a){a.widget("mobile.slider",a.mobile.widget,{options:{theme:null,trackTheme:null,disabled:false},_create:function(){var c=this,d=this.element,e=d.parents("[class*=ui-bar-],[class*=ui-body-]").eq(0);e=e.length?e.attr("class").match(/ui-(bar|body)-([a-z])/)[2]:"c";var b=this.options.theme?this.options.theme:e,f=this.options.trackTheme?this.options.trackTheme:e,h=d[0].nodeName.toLowerCase();e=h=="select"?"ui-slider-switch":"";var i=d.attr("id"),g=i+"-label";i=a("[for="+i+"]").attr("id",g); -var j=function(){return h=="input"?parseFloat(d.val()):d[0].selectedIndex},m=h=="input"?parseFloat(d.attr("min")):0,p=h=="input"?parseFloat(d.attr("max")):d.find("option").length-1,k=window.parseFloat(d.attr("step")||1),q=a('<div class="ui-slider '+e+" ui-btn-down-"+f+' ui-btn-corner-all" role="application"></div>'),u=a('<a href="#" class="ui-slider-handle"></a>').appendTo(q).buttonMarkup({corners:true,theme:b,shadow:true}).attr({role:"slider","aria-valuemin":m,"aria-valuemax":p,"aria-valuenow":j(), -"aria-valuetext":j(),title:j(),"aria-labelledby":g});a.extend(this,{slider:q,handle:u,dragging:false,beforeStart:null});if(h=="select"){q.wrapInner('<div class="ui-slider-inneroffset"></div>');d.find("option");d.find("option").each(function(r){var y=r==0?"b":"a",w=r==0?"right":"left";r=r==0?" ui-btn-down-"+f:" ui-btn-active";a('<div class="ui-slider-labelbg ui-slider-labelbg-'+y+r+" ui-btn-corner-"+w+'"></div>').prependTo(q);a('<span class="ui-slider-label ui-slider-label-'+y+r+" ui-btn-corner-"+ -w+'" role="img">'+a(this).text()+"</span>").prependTo(u)})}i.addClass("ui-slider");d.addClass(h=="input"?"ui-slider-input":"ui-slider-switch").change(function(){c.refresh(j(),true)}).keyup(function(){c.refresh(j(),true,true)}).blur(function(){c.refresh(j(),true)});a(document).bind("vmousemove",function(r){if(c.dragging){c.refresh(r);return false}});q.bind("vmousedown",function(r){c.dragging=true;if(h==="select")c.beforeStart=d[0].selectedIndex;c.refresh(r);return false});q.add(document).bind("vmouseup", -function(){if(c.dragging){c.dragging=false;if(h==="select"){if(c.beforeStart===d[0].selectedIndex)c.refresh(c.beforeStart===0?1:0);var r=j();r=Math.round(r/(p-m)*100);u.addClass("ui-slider-handle-snapping").css("left",r+"%").animationComplete(function(){u.removeClass("ui-slider-handle-snapping")})}return false}});q.insertAfter(d);this.handle.bind("vmousedown",function(){a(this).focus()}).bind("vclick",false);this.handle.bind("keydown",function(r){var y=j();if(!c.options.disabled){switch(r.keyCode){case a.mobile.keyCode.HOME:case a.mobile.keyCode.END:case a.mobile.keyCode.PAGE_UP:case a.mobile.keyCode.PAGE_DOWN:case a.mobile.keyCode.UP:case a.mobile.keyCode.RIGHT:case a.mobile.keyCode.DOWN:case a.mobile.keyCode.LEFT:r.preventDefault(); -if(!c._keySliding){c._keySliding=true;a(this).addClass("ui-state-active")}}switch(r.keyCode){case a.mobile.keyCode.HOME:c.refresh(m);break;case a.mobile.keyCode.END:c.refresh(p);break;case a.mobile.keyCode.PAGE_UP:case a.mobile.keyCode.UP:case a.mobile.keyCode.RIGHT:c.refresh(y+k);break;case a.mobile.keyCode.PAGE_DOWN:case a.mobile.keyCode.DOWN:case a.mobile.keyCode.LEFT:c.refresh(y-k)}}}).keyup(function(){if(c._keySliding){c._keySliding=false;a(this).removeClass("ui-state-active")}});this.refresh()}, -refresh:function(c,d,e){if(!this.options.disabled){var b=this.element,f=b[0].nodeName.toLowerCase(),h=f==="input"?parseFloat(b.attr("min")):0,i=f==="input"?parseFloat(b.attr("max")):b.find("option").length-1;if(typeof c==="object"){c=c;if(!this.dragging||c.pageX<this.slider.offset().left-8||c.pageX>this.slider.offset().left+this.slider.width()+8)return;c=Math.round((c.pageX-this.slider.offset().left)/this.slider.width()*100)}else{if(c==null)c=f==="input"?parseFloat(b.val()):b[0].selectedIndex;c=(parseFloat(c)- -h)/(i-h)*100}if(!isNaN(c)){if(c<0)c=0;if(c>100)c=100;var g=Math.round(c/100*(i-h))+h;if(g<h)g=h;if(g>i)g=i;this.handle.css("left",c+"%");this.handle.attr({"aria-valuenow":f==="input"?g:b.find("option").eq(g).attr("value"),"aria-valuetext":f==="input"?g:b.find("option").eq(g).text(),title:g});if(f==="select")g===0?this.slider.addClass("ui-slider-switch-a").removeClass("ui-slider-switch-b"):this.slider.addClass("ui-slider-switch-b").removeClass("ui-slider-switch-a");if(!e){if(f==="input")b.val(g);else b[0].selectedIndex= -g;d||b.trigger("change")}}}},enable:function(){this.element.attr("disabled",false);this.slider.removeClass("ui-disabled").attr("aria-disabled",false);return this._setOption("disabled",false)},disable:function(){this.element.attr("disabled",true);this.slider.addClass("ui-disabled").attr("aria-disabled",true);return this._setOption("disabled",true)}})})(jQuery); -(function(a){a.widget("mobile.collapsible",a.mobile.widget,{options:{expandCueText:" click to expand contents",collapseCueText:" click to collapse contents",collapsed:false,heading:">:header,>legend",theme:null,iconTheme:"d"},_create:function(){var c=this.element,d=this.options,e=c.addClass("ui-collapsible-contain"),b=c.find(d.heading).eq(0),f=e.wrapInner('<div class="ui-collapsible-content"></div>').find(".ui-collapsible-content");c=c.closest(":jqmData(role='collapsible-set')").addClass("ui-collapsible-set"); -if(b.is("legend")){b=a('<div role="heading">'+b.html()+"</div>").insertBefore(b);b.next().remove()}b.insertBefore(f);b.addClass("ui-collapsible-heading").append('<span class="ui-collapsible-heading-status"></span>').wrapInner('<a href="#" class="ui-collapsible-heading-toggle"></a>').find("a:eq(0)").buttonMarkup({shadow:!!!c.length,corners:false,iconPos:"left",icon:"plus",theme:d.theme}).find(".ui-icon").removeAttr("class").buttonMarkup({shadow:true,corners:true,iconPos:"notext",icon:"plus",theme:d.iconTheme}); -if(c.length)e.jqmData("collapsible-last")&&b.find("a:eq(0), .ui-btn-inner").addClass("ui-corner-bottom");else b.find("a:eq(0)").addClass("ui-corner-all").find(".ui-btn-inner").addClass("ui-corner-all");e.bind("collapse",function(h){if(!h.isDefaultPrevented()){h.preventDefault();b.addClass("ui-collapsible-heading-collapsed").find(".ui-collapsible-heading-status").text(d.expandCueText);b.find(".ui-icon").removeClass("ui-icon-minus").addClass("ui-icon-plus");f.addClass("ui-collapsible-content-collapsed").attr("aria-hidden", -true);e.jqmData("collapsible-last")&&b.find("a:eq(0), .ui-btn-inner").addClass("ui-corner-bottom")}}).bind("expand",function(h){if(!h.isDefaultPrevented()){h.preventDefault();b.removeClass("ui-collapsible-heading-collapsed").find(".ui-collapsible-heading-status").text(d.collapseCueText);b.find(".ui-icon").removeClass("ui-icon-plus").addClass("ui-icon-minus");f.removeClass("ui-collapsible-content-collapsed").attr("aria-hidden",false);e.jqmData("collapsible-last")&&b.find("a:eq(0), .ui-btn-inner").removeClass("ui-corner-bottom")}}).trigger(d.collapsed? -"collapse":"expand");if(c.length&&!c.jqmData("collapsiblebound")){c.jqmData("collapsiblebound",true).bind("expand",function(h){a(this).find(".ui-collapsible-contain").not(a(h.target).closest(".ui-collapsible-contain")).not("> .ui-collapsible-contain .ui-collapsible-contain").trigger("collapse")});c=c.find(":jqmData(role=collapsible)");c.first().find("a:eq(0)").addClass("ui-corner-top").find(".ui-btn-inner").addClass("ui-corner-top");c.last().jqmData("collapsible-last",true)}b.bind("vmouseup",function(h){b.is(".ui-collapsible-heading-collapsed")? -e.trigger("expand"):e.trigger("collapse");h.preventDefault()}).bind("vclick",false)}})})(jQuery); -(function(a){a.fn.controlgroup=function(c){return this.each(function(){function d(h){h.removeClass("ui-btn-corner-all ui-shadow").eq(0).addClass(f[0]).end().filter(":last").addClass(f[1]).addClass("ui-controlgroup-last")}var e=a.extend({direction:a(this).jqmData("type")||"vertical",shadow:false},c),b=a(this).find(">legend"),f=e.direction=="horizontal"?["ui-corner-left","ui-corner-right"]:["ui-corner-top","ui-corner-bottom"];a(this).find("input:eq(0)").attr("type");if(b.length){a(this).wrapInner('<div class="ui-controlgroup-controls"></div>'); -a('<div role="heading" class="ui-controlgroup-label">'+b.html()+"</div>").insertBefore(a(this).children(0));b.remove()}a(this).addClass("ui-corner-all ui-controlgroup ui-controlgroup-"+e.direction);d(a(this).find(".ui-btn"));d(a(this).find(".ui-btn-inner"));e.shadow&&a(this).addClass("ui-shadow")})}})(jQuery);(function(a){a.fn.fieldcontain=function(){return this.addClass("ui-field-contain ui-body ui-br")}})(jQuery); -(function(a){a.widget("mobile.listview",a.mobile.widget,{options:{theme:"c",countTheme:"c",headerTheme:"b",dividerTheme:"b",splitIcon:"arrow-r",splitTheme:"b",inset:false},_create:function(){var c=this.element,d=this.options;c.addClass("ui-listview");d.inset&&c.addClass("ui-listview-inset ui-corner-all ui-shadow");this._itemApply(c,c);this.refresh(true)},_itemApply:function(c,d){d.find(".ui-li-count").addClass("ui-btn-up-"+(c.jqmData("counttheme")||this.options.countTheme)+" ui-btn-corner-all");d.find("h1, h2, h3, h4, h5, h6").addClass("ui-li-heading"); -d.find("p, dl").addClass("ui-li-desc");c.find("li").find(">img:eq(0), >:first>img:eq(0)").addClass("ui-li-thumb").each(function(){a(this).closest("li").addClass(a(this).is(".ui-li-icon")?"ui-li-has-icon":"ui-li-has-thumb")});var e=d.find(".ui-li-aside");e.length&&e.each(function(b,f){a(f).prependTo(a(f).parent())});a.support.cssPseudoElement||a.nodeName(d[0],"ol")},_removeCorners:function(c){c.add(c.find(".ui-btn-inner, .ui-li-link-alt, .ui-li-thumb")).removeClass("ui-corner-top ui-corner-bottom ui-corner-br ui-corner-bl ui-corner-tr ui-corner-tl")}, -refresh:function(c){this._createSubPages();var d=this.options,e=this.element,b=this,f=e.jqmData("dividertheme")||d.dividerTheme,h=e.children("li"),i=a.support.cssPseudoElement||!a.nodeName(e[0],"ol")?0:1;i&&e.find(".ui-li-dec").remove();h.each(function(g){var j=a(this),m="ui-li";if(!(!c&&j.hasClass("ui-li"))){var p=j.jqmData("theme")||d.theme,k=j.find(">a");if(k.length){var q=j.jqmData("icon");j.buttonMarkup({wrapperEls:"div",shadow:false,corners:false,iconpos:"right",icon:k.length>1||q===false?false: -q||"arrow-r",theme:p});k.first().addClass("ui-link-inherit");if(k.length>1){m+=" ui-li-has-alt";k=k.last();q=e.jqmData("splittheme")||k.jqmData("theme")||d.splitTheme;k.appendTo(j).attr("title",k.text()).addClass("ui-li-link-alt").empty().buttonMarkup({shadow:false,corners:false,theme:p,icon:false,iconpos:false}).find(".ui-btn-inner").append(a("<span>").buttonMarkup({shadow:true,corners:true,theme:q,iconpos:"notext",icon:e.jqmData("spliticon")||k.jqmData("icon")||d.splitIcon}))}}else if(j.jqmData("role")=== -"list-divider"){m+=" ui-li-divider ui-btn ui-bar-"+f;j.attr("role","heading");if(i)i=1}else m+=" ui-li-static ui-body-"+p;if(d.inset){if(g===0){m+=" ui-corner-top";j.add(j.find(".ui-btn-inner")).find(".ui-li-link-alt").addClass("ui-corner-tr").end().find(".ui-li-thumb").addClass("ui-corner-tl");j.next().next().length&&b._removeCorners(j.next())}if(g===h.length-1){m+=" ui-corner-bottom";j.add(j.find(".ui-btn-inner")).find(".ui-li-link-alt").addClass("ui-corner-br").end().find(".ui-li-thumb").addClass("ui-corner-bl"); -j.prev().prev().length&&b._removeCorners(j.prev())}}if(i&&m.indexOf("ui-li-divider")<0)(j.is(".ui-li-static:first")?j:j.find(".ui-link-inherit")).addClass("ui-li-jsnumbering").prepend("<span class='ui-li-dec'>"+i++ +". </span>");j.add(j.find(".ui-btn-inner")).addClass(m);c||b._itemApply(e,j)}})},_idStringEscape:function(c){return c.replace(/[^a-zA-Z0-9]/g,"-")},_createSubPages:function(){var c=this.element,d=c.closest(".ui-page"),e=d.jqmData("url"),b=this.options,f=this,h=d.find(":jqmData(role='footer')").jqmData("id"); -a(c.find("li>ul, li>ol").toArray().reverse()).each(function(i){var g=a(this),j=g.parent(),m=a(g.prevAll().toArray().reverse());m=m.length?m:a("<span>"+a.trim(j.contents()[0].nodeValue)+"</span>");var p=m.first().text();i=e+"&"+a.mobile.subPageUrlKey+"="+f._idStringEscape(p+" "+i);var k=g.jqmData("theme")||b.theme,q=g.jqmData("counttheme")||c.jqmData("counttheme")||b.countTheme;g.wrap("<div data-"+a.mobile.ns+"role='page'><div data-"+a.mobile.ns+"role='content'></div></div>").parent().before("<div data-"+ -a.mobile.ns+"role='header' data-"+a.mobile.ns+"theme='"+b.headerTheme+"'><div class='ui-title'>"+p+"</div></div>").after(h?a("<div data-"+a.mobile.ns+"role='footer' data-"+a.mobile.ns+"id='"+h+"'>"):"").parent().attr("data-"+a.mobile.ns+"url",i).attr("data-"+a.mobile.ns+"theme",k).attr("data-"+a.mobile.ns+"count-theme",q).appendTo(a.mobile.pageContainer).page();g=j.find("a:first");g.length||(g=a("<a></a>").html(m||p).prependTo(j.empty()));g.attr("href","#"+i)}).listview()}})})(jQuery); -(function(a){a.mobile.listview.prototype.options.filter=false;a.mobile.listview.prototype.options.filterPlaceholder="Filter items...";a(":jqmData(role='listview')").live("listviewcreate",function(){var c=a(this),d=c.data("listview");if(d.options.filter){var e=a("<form>",{"class":"ui-listview-filter ui-bar-c",role:"search"});a("<input>",{placeholder:d.options.filterPlaceholder}).attr("data-"+a.mobile.ns+"type","search").bind("keyup change",function(){var b=this.value.toLowerCase(),f=c.children();f.show(); -if(b)for(var h=false,i,g=f.length;g>=0;g--){i=a(f[g]);if(i.is("li:jqmData(role=list-divider)")){h||i.hide();h=false}else if(i.text().toLowerCase().indexOf(b)===-1)i.hide();else h=true}}).appendTo(e).textinput();a(this).jqmData("inset")&&e.addClass("ui-listview-filter-inset");e.insertBefore(c)}})})(jQuery); -(function(a){a.widget("mobile.dialog",a.mobile.widget,{options:{closeBtnText:"Close"},_create:function(){this.element.attr("role","dialog").addClass("ui-page ui-dialog ui-body-a").find(":jqmData(role=header)").addClass("ui-corner-top ui-overlay-shadow").prepend("<a href='#' data-"+a.mobile.ns+"icon='delete' data-"+a.mobile.ns+"rel='back' data-"+a.mobile.ns+"iconpos='notext'>"+this.options.closeBtnText+"</a>").end().find('.ui-content:not([class*="ui-body-"])').addClass("ui-body-c").end().find(".ui-content,:jqmData(role='footer')").last().addClass("ui-corner-bottom ui-overlay-shadow"); -this.element.bind("vclick submit",function(c){c=c.type=="vclick"?a(c.target).closest("a"):a(c.target).closest("form");c.length&&!c.jqmData("transition")&&c.attr("data-"+a.mobile.ns+"transition",a.mobile.urlHistory.getActive().transition).attr("data-"+a.mobile.ns+"direction","reverse")})},close:function(){window.history.back()}})})(jQuery); -(function(a,c){a.widget("mobile.navbar",a.mobile.widget,{options:{iconpos:"top",grid:null},_create:function(){var d=this.element,e=d.find("a"),b=e.filter(":jqmData(icon)").length?this.options.iconpos:c;d.addClass("ui-navbar").attr("role","navigation").find("ul").grid({grid:this.options.grid});b||d.addClass("ui-navbar-noicons");e.buttonMarkup({corners:false,shadow:false,iconpos:b});d.delegate("a","vclick",function(){e.not(".ui-state-persist").removeClass(a.mobile.activeBtnClass);a(this).addClass(a.mobile.activeBtnClass)})}})})(jQuery); -(function(a){a.fn.grid=function(c){return this.each(function(){var d=a.extend({grid:null},c),e=a(this).children(),b={solo:1,a:2,b:3,c:4,d:5};d=d.grid;if(!d)if(e.length<=5)for(var f in b){if(b[f]==e.length)d=f}else d="a";b=b[d];a(this).addClass("ui-grid-"+d);e.filter(":nth-child("+b+"n+1)").addClass("ui-block-a");b>1&&e.filter(":nth-child("+b+"n+2)").addClass("ui-block-b");b>2&&e.filter(":nth-child(3n+3)").addClass("ui-block-c");b>3&&e.filter(":nth-child(4n+4)").addClass("ui-block-d");b>4&&e.filter(":nth-child(5n+5)").addClass("ui-block-e")})}})(jQuery); -(function(a,c,d){var e=a("html"),b=a("head"),f=a(c);a(c.document).trigger("mobileinit");if(a.mobile.gradeA()){e.addClass("ui-mobile ui-mobile-rendering");a.mobile.metaViewportContent&&!b.find("meta[name='viewport']").length&&a("<meta>",{name:"viewport",content:a.mobile.metaViewportContent}).prependTo(b);var h=a.mobile.loadingMessage?a("<div class='ui-loader ui-body-a ui-corner-all'><span class='ui-icon ui-icon-loading spin'></span><h1>"+a.mobile.loadingMessage+"</h1></div>"):d;typeof h==="undefined"&& -alert(a.mobile.loadingMessage);a.extend(a.mobile,{pageLoading:function(i){if(i)e.removeClass("ui-loading");else{if(a.mobile.loadingMessage){i=a("."+a.mobile.activeBtnClass).first();typeof h==="undefined"&&alert(a.mobile.loadingMessage);h.appendTo(a.mobile.pageContainer).css({top:a.support.scrollTop&&a(c).scrollTop()+a(c).height()/2||i.length&&i.offset().top||100})}e.addClass("ui-loading")}},initializePage:function(){var i=a(":jqmData(role='page')");i.add(":jqmData(role='dialog')").each(function(){var g= -a(this);g.jqmData("url")||g.attr("data-"+a.mobile.ns+"url",g.attr("id"))});a.mobile.firstPage=i.first();a.mobile.pageContainer=i.first().parent().addClass("ui-mobile-viewport");a.mobile.pageLoading();!a.mobile.hashListeningEnabled||!a.mobile.path.stripHash(location.hash)?a.mobile.changePage(a.mobile.firstPage,false,true,false,true):f.trigger("hashchange",[true])}});a(a.mobile.initializePage);f.load(a.mobile.silentScroll)}})(jQuery,this); diff --git a/addons/web_mobile/static/lib/jquery_mobile/js/jquery.mobile-1.0b1.min.js b/addons/web_mobile/static/lib/jquery_mobile/js/jquery.mobile-1.0b1.min.js deleted file mode 100644 index 2ff6d6b9629..00000000000 --- a/addons/web_mobile/static/lib/jquery_mobile/js/jquery.mobile-1.0b1.min.js +++ /dev/null @@ -1,340 +0,0 @@ -/*! - * jQuery Mobile v1.0b1 - * http://jquerymobile.com/ - * - * Copyright 2010, jQuery Project - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - */ -(function(a,d){if(a.cleanData){var c=a.cleanData;a.cleanData=function(e){for(var b=0,d;(d=e[b])!=null;b++)a(d).triggerHandler("remove");c(e)}}else{var b=a.fn.remove;a.fn.remove=function(e,c){return this.each(function(){c||(!e||a.filter(e,[this]).length)&&a("*",this).add([this]).each(function(){a(this).triggerHandler("remove")});return b.call(a(this),e,c)})}}a.widget=function(e,b,c){var d=e.split(".")[0],h,e=e.split(".")[1];h=d+"-"+e;if(!c)c=b,b=a.Widget;a.expr[":"][h]=function(b){return!!a.data(b, -e)};a[d]=a[d]||{};a[d][e]=function(a,e){arguments.length&&this._createWidget(a,e)};b=new b;b.options=a.extend(!0,{},b.options);a[d][e].prototype=a.extend(!0,b,{namespace:d,widgetName:e,widgetEventPrefix:a[d][e].prototype.widgetEventPrefix||e,widgetBaseClass:h},c);a.widget.bridge(e,a[d][e])};a.widget.bridge=function(e,b){a.fn[e]=function(c){var i=typeof c==="string",h=Array.prototype.slice.call(arguments,1),l=this,c=!i&&h.length?a.extend.apply(null,[!0,c].concat(h)):c;if(i&&c.charAt(0)==="_")return l; -i?this.each(function(){var b=a.data(this,e);if(!b)throw"cannot call methods on "+e+" prior to initialization; attempted to call method '"+c+"'";if(!a.isFunction(b[c]))throw"no such method '"+c+"' for "+e+" widget instance";var f=b[c].apply(b,h);if(f!==b&&f!==d)return l=f,!1}):this.each(function(){var d=a.data(this,e);d?d.option(c||{})._init():a.data(this,e,new b(c,this))});return l}};a.Widget=function(a,b){arguments.length&&this._createWidget(a,b)};a.Widget.prototype={widgetName:"widget",widgetEventPrefix:"", -options:{disabled:!1},_createWidget:function(b,c){a.data(c,this.widgetName,this);this.element=a(c);this.options=a.extend(!0,{},this.options,this._getCreateOptions(),b);var d=this;this.element.bind("remove."+this.widgetName,function(){d.destroy()});this._create();this._trigger("create");this._init()},_getCreateOptions:function(){var b={};a.metadata&&(b=a.metadata.get(element)[this.widgetName]);return b},_create:function(){},_init:function(){},destroy:function(){this.element.unbind("."+this.widgetName).removeData(this.widgetName); -this.widget().unbind("."+this.widgetName).removeAttr("aria-disabled").removeClass(this.widgetBaseClass+"-disabled ui-state-disabled")},widget:function(){return this.element},option:function(b,c){var g=b;if(arguments.length===0)return a.extend({},this.options);if(typeof b==="string"){if(c===d)return this.options[b];g={};g[b]=c}this._setOptions(g);return this},_setOptions:function(b){var c=this;a.each(b,function(a,b){c._setOption(a,b)});return this},_setOption:function(a,b){this.options[a]=b;a==="disabled"&& -this.widget()[b?"addClass":"removeClass"](this.widgetBaseClass+"-disabled ui-state-disabled").attr("aria-disabled",b);return this},enable:function(){return this._setOption("disabled",!1)},disable:function(){return this._setOption("disabled",!0)},_trigger:function(b,c,d){var i=this.options[b],c=a.Event(c);c.type=(b===this.widgetEventPrefix?b:this.widgetEventPrefix+b).toLowerCase();d=d||{};if(c.originalEvent)for(var b=a.event.props.length,h;b;)h=a.event.props[--b],c[h]=c.originalEvent[h];this.element.trigger(c, -d);return!(a.isFunction(i)&&i.call(this.element[0],c,d)===!1||c.isDefaultPrevented())}}})(jQuery);(function(a,d){a.widget("mobile.widget",{_getCreateOptions:function(){var c=this.element,b={};a.each(this.options,function(a){var f=c.jqmData(a.replace(/[A-Z]/g,function(a){return"-"+a.toLowerCase()}));f!==d&&(b[a]=f)});return b}})})(jQuery); -(function(a){function d(){var d=c.width(),g=[],i=[],h;b.removeClass("min-width-"+e.join("px min-width-")+"px max-width-"+e.join("px max-width-")+"px");a.each(e,function(a,b){d>=b&&g.push("min-width-"+b+"px");d<=b&&i.push("max-width-"+b+"px")});g.length&&(h=g.join(" "));i.length&&(h+=" "+i.join(" "));b.addClass(h)}var c=a(window),b=a("html"),e=[320,480,768,1024];a.mobile.media=function(){var c={},e=a("<div id='jquery-mediatest'>"),d=a("<body>").append(e);return function(a){if(!(a in c)){var l=document.createElement("style"), -m="@media "+a+" { #jquery-mediatest { position:absolute; } }";l.type="text/css";l.styleSheet?l.styleSheet.cssText=m:l.appendChild(document.createTextNode(m));b.prepend(d).prepend(l);c[a]=e.css("position")==="absolute";d.add(l).remove()}return c[a]}}();a.mobile.addResolutionBreakpoints=function(b){a.type(b)==="array"?e=e.concat(b):e.push(b);e.sort(function(a,b){return a-b});d()};a(document).bind("mobileinit.htmlclass",function(){c.bind("orientationchange.htmlclass throttledResize.htmlclass",function(a){a.orientation&& -b.removeClass("portrait landscape").addClass(a.orientation);d()})});a(function(){c.trigger("orientationchange.htmlclass")})})(jQuery); -(function(a,d){function c(a){var b=a.charAt(0).toUpperCase()+a.substr(1),a=(a+" "+f.join(b+" ")+b).split(" "),c;for(c in a)if(e[c]!==d)return!0}var b=a("<body>").prependTo("html"),e=b[0].style,f=["webkit","moz","o"],g="palmGetResource"in window,i=window.blackberry;a.mobile.browser={};a.mobile.browser.ie=function(){for(var a=3,b=document.createElement("div"),c=b.all||[];b.innerHTML="<\!--[if gt IE "+ ++a+"]><br><![endif]--\>",c[0];);return a>4?a:!a}();a.extend(a.support,{orientation:"orientation"in -window,touch:"ontouchend"in document,cssTransitions:"WebKitTransitionEvent"in window,pushState:!!history.pushState,mediaquery:a.mobile.media("only all"),cssPseudoElement:!!c("content"),boxShadow:!!c("boxShadow")&&!i,scrollTop:("pageXOffset"in window||"scrollTop"in document.documentElement||"scrollTop"in b[0])&&!g,dynamicBaseTag:function(){var c=location.protocol+"//"+location.host+location.pathname+"ui-dir/",e=a("head base"),d=null,f="";e.length?f=e.attr("href"):e=d=a("<base>",{href:c}).appendTo("head"); -var g=a("<a href='testurl'></a>").prependTo(b)[0].href;e[0].href=f?f:location.pathname;d&&d.remove();return g.indexOf(c)===0}(),eventCapture:"addEventListener"in document});b.remove();a.support.boxShadow||a("html").addClass("ui-mobile-nosupport-boxshadow")})(jQuery); -(function(a,d,c,b){function e(a){for(;a&&typeof a.originalEvent!=="undefined";)a=a.originalEvent;return a}function f(b){for(var c={};b;){var e=a.data(b,n),d;for(d in e)if(e[d])c[d]=c.hasVirtualBinding=!0;b=b.parentNode}return c}function g(){v&&(clearTimeout(v),v=0);v=setTimeout(function(){A=v=0;B.length=0;w=!1;r=!0},a.vmouse.resetTimerDuration)}function i(c,d,r){var f=!1,g;if(!(g=r&&r[c])){if(r=!r)a:{for(r=d.target;r;){if((g=a.data(r,n))&&(!c||g[c]))break a;r=r.parentNode}r=null}g=r}if(g){f=d;r=f.type; -f=a.Event(f);f.type=c;var h=f.originalEvent,j=a.event.props;if(h)for(c=j.length;c;)g=j[--c],f[g]=h[g];if(r.search(/^touch/)!==-1&&(c=e(h),r=c.touches,c=c.changedTouches,r=r&&r.length?r[0]:c&&c.length?c[0]:b)){c=0;for(h=y.length;c<h;c++)g=y[c],f[g]=r[g]}a(d.target).trigger(f);f=f.isDefaultPrevented()}return f}function h(b){var c=a.data(b.target,z);!w&&(!A||A!==c)&&i("v"+b.type,b)}function l(b){var c=e(b).touches;if(c&&c.length===1){var d=b.target,c=f(d);if(c.hasVirtualBinding)A=F++,a.data(d,z,A),v&& -(clearTimeout(v),v=0),s=r=!1,d=e(b).touches[0],x=d.pageX,u=d.pageY,i("vmouseover",b,c),i("vmousedown",b,c)}}function m(a){r||(s||i("vmousecancel",a,f(a.target)),s=!0,g())}function o(b){if(!r){var c=e(b).touches[0],d=s,h=a.vmouse.moveDistanceThreshold;s=s||Math.abs(c.pageX-x)>h||Math.abs(c.pageY-u)>h;c=f(b.target);s&&!d&&i("vmousecancel",b,c);i("vmousemove",b,c);g()}}function j(a){if(!r){r=!0;var b=f(a.target);i("vmouseup",a,b);if(!s&&i("vclick",a,b)){var c=e(a).changedTouches[0];B.push({touchID:A, -x:c.clientX,y:c.clientY});w=!0}i("vmouseout",a,b);s=!1;g()}}function p(b){var b=a.data(b,n),c;if(b)for(c in b)if(b[c])return!0;return!1}function k(){}function q(b){var c=b.substr(1);return{setup:function(){p(this)||a.data(this,n,{});a.data(this,n)[b]=!0;t[b]=(t[b]||0)+1;t[b]===1&&C.bind(c,h);a(this).bind(c,k);if(E)t.touchstart=(t.touchstart||0)+1,t.touchstart===1&&C.bind("touchstart",l).bind("touchend",j).bind("touchmove",o).bind("scroll",m)},teardown:function(){--t[b];t[b]||C.unbind(c,h);E&&(--t.touchstart, -t.touchstart||C.unbind("touchstart",l).unbind("touchmove",o).unbind("touchend",j).unbind("scroll",m));var d=a(this),e=a.data(this,n);e&&(e[b]=!1);d.unbind(c,k);p(this)||d.removeData(n)}}}var n="virtualMouseBindings",z="virtualTouchID",d="vmouseover vmousedown vmousemove vmouseup vclick vmouseout vmousecancel".split(" "),y="clientX clientY pageX pageY screenX screenY".split(" "),t={},v=0,x=0,u=0,s=!1,B=[],w=!1,r=!1,E=a.support.eventCapture,C=a(c),F=1,A=0;a.vmouse={moveDistanceThreshold:10,clickDistanceThreshold:10, -resetTimerDuration:1500};for(var D=0;D<d.length;D++)a.event.special[d[D]]=q(d[D]);E&&c.addEventListener("click",function(b){var c=B.length,d=b.target;if(c)for(var e=b.clientX,r=b.clientY,f=a.vmouse.clickDistanceThreshold,g=d;g;){for(var h=0;h<c;h++){var j=B[h];if(g===d&&Math.abs(j.x-e)<f&&Math.abs(j.y-r)<f||a.data(g,z)===j.touchID){b.preventDefault();b.stopPropagation();return}}g=g.parentNode}},!0)})(jQuery,window,document); -(function(a,d){function c(b,c,d){var e=d.type;d.type=c;a.event.handle.call(b,d);d.type=e}a.each("touchstart touchmove touchend orientationchange throttledresize tap taphold swipe swipeleft swiperight scrollstart scrollstop".split(" "),function(b,c){a.fn[c]=function(a){return a?this.bind(c,a):this.trigger(c)};a.attrFn[c]=!0});var b=a.support.touch,e=b?"touchstart":"mousedown",f=b?"touchend":"mouseup",g=b?"touchmove":"mousemove";a.event.special.scrollstart={enabled:!0,setup:function(){function b(a, -f){e=f;c(d,e?"scrollstart":"scrollstop",a)}var d=this,e,f;a(d).bind("touchmove scroll",function(c){a.event.special.scrollstart.enabled&&(e||b(c,!0),clearTimeout(f),f=setTimeout(function(){b(c,!1)},50))})}};a.event.special.tap={setup:function(){var b=this,d=a(b);d.bind("vmousedown",function(a){function e(){g=!1;clearTimeout(k);d.unbind("vclick",f).unbind("vmousecancel",e)}function f(a){e();p==a.target&&c(b,"tap",a)}if(a.which&&a.which!==1)return!1;var g=!0,p=a.target,k;d.bind("vmousecancel",e).bind("vclick", -f);k=setTimeout(function(){g&&c(b,"taphold",a)},750)})}};a.event.special.swipe={setup:function(){var b=a(this);b.bind(e,function(c){function e(a){if(o){var b=a.originalEvent.touches?a.originalEvent.touches[0]:a;j={time:(new Date).getTime(),coords:[b.pageX,b.pageY]};Math.abs(o.coords[0]-j.coords[0])>10&&a.preventDefault()}}var m=c.originalEvent.touches?c.originalEvent.touches[0]:c,o={time:(new Date).getTime(),coords:[m.pageX,m.pageY],origin:a(c.target)},j;b.bind(g,e).one(f,function(){b.unbind(g,e); -o&&j&&j.time-o.time<1E3&&Math.abs(o.coords[0]-j.coords[0])>30&&Math.abs(o.coords[1]-j.coords[1])<75&&o.origin.trigger("swipe").trigger(o.coords[0]>j.coords[0]?"swipeleft":"swiperight");o=j=d})})}};(function(a){function b(){var a=d();a!==e&&(e=a,c.trigger("orientationchange"))}var c=a(window),d,e;a.event.special.orientationchange={setup:function(){if(a.support.orientation)return!1;e=d();c.bind("throttledresize",b)},teardown:function(){if(a.support.orientation)return!1;c.unbind("throttledresize",b)}, -add:function(a){var b=a.handler;a.handler=function(a){a.orientation=d();return b.apply(this,arguments)}}};a.event.special.orientationchange.orientation=d=function(){var a=document.documentElement;return a&&a.clientWidth/a.clientHeight<1.1?"portrait":"landscape"}})(jQuery);(function(){a.event.special.throttledresize={setup:function(){a(this).bind("resize",b)},teardown:function(){a(this).unbind("resize",b)}};var b=function(){e=(new Date).getTime();f=e-c;f>=250?(c=e,a(this).trigger("throttledresize")): -(d&&clearTimeout(d),d=setTimeout(b,250-f))},c=0,d,e,f})();a.each({scrollstop:"scrollstart",taphold:"tap",swipeleft:"swipe",swiperight:"swipe"},function(b,c){a.event.special[b]={setup:function(){a(this).bind(c,a.noop)}}})})(jQuery); -(function(a,d,c){function b(a){a=a||location.href;return"#"+a.replace(/^[^#]*#?(.*)$/,"$1")}var e="hashchange",f=document,g,i=a.event.special,h=f.documentMode,l="on"+e in d&&(h===c||h>7);a.fn[e]=function(a){return a?this.bind(e,a):this.trigger(e)};a.fn[e].delay=50;i[e]=a.extend(i[e],{setup:function(){if(l)return!1;a(g.start)},teardown:function(){if(l)return!1;a(g.stop)}});g=function(){function g(){var c=b(),f=n(i);if(c!==i)q(i=c,f),a(d).trigger(e);else if(f!==i)location.href=location.href.replace(/#.*/, -"")+f;j=setTimeout(g,a.fn[e].delay)}var h={},j,i=b(),k=function(a){return a},q=k,n=k;h.start=function(){j||g()};h.stop=function(){j&&clearTimeout(j);j=c};a.browser.msie&&!l&&function(){var c,d;h.start=function(){if(!c)d=(d=a.fn[e].src)&&d+b(),c=a('<iframe tabindex="-1" title="empty"/>').hide().one("load",function(){d||q(b());g()}).attr("src",d||"javascript:0").insertAfter("body")[0].contentWindow,f.onpropertychange=function(){try{if(event.propertyName==="title")c.document.title=f.title}catch(a){}}}; -h.stop=k;n=function(){return b(c.location.href)};q=function(b,d){var g=c.document,h=a.fn[e].domain;if(b!==d)g.title=f.title,g.open(),h&&g.write('<script>document.domain="'+h+'"<\/script>'),g.close(),c.location.hash=b}}();return h}()})(jQuery,this); -(function(a){a.widget("mobile.page",a.mobile.widget,{options:{backBtnText:"Back",addBackBtn:!1,backBtnTheme:null,degradeInputs:{color:!1,date:!1,datetime:!1,"datetime-local":!1,email:!1,month:!1,number:!1,range:"number",search:!0,tel:!1,time:!1,url:!1,week:!1},keepNative:null},_create:function(){var d=this.element,c=this.options;this.keepNative=":jqmData(role='none'), :jqmData(role='nojs')"+(c.keepNative?", "+c.keepNative:"");this._trigger("beforeCreate")!==!1&&(d.find(":jqmData(role='page'), :jqmData(role='content')").andSelf().each(function(){a(this).addClass("ui-"+ -a(this).jqmData("role"))}),d.find(":jqmData(role='nojs')").addClass("ui-nojs"),d.find(":jqmData(role)").andSelf().each(function(){var b=a(this),e=b.jqmData("role"),f=b.jqmData("theme");if(e==="header"||e==="footer"){b.addClass("ui-bar-"+(f||b.parent(":jqmData(role='page')").jqmData("theme")||"a"));b.attr("role",e==="header"?"banner":"contentinfo");var f=b.children("a"),g=f.hasClass("ui-btn-left"),i=f.hasClass("ui-btn-right");if(!g)g=f.eq(0).not(".ui-btn-right").addClass("ui-btn-left").length;i||f.eq(1).addClass("ui-btn-right"); -c.addBackBtn&&e==="header"&&a(".ui-page").length>1&&d.jqmData("url")!==a.mobile.path.stripHash(location.hash)&&!g&&b.jqmData("backbtn")!==!1&&(f=a("<a href='#' class='ui-btn-left' data-"+a.mobile.ns+"rel='back' data-"+a.mobile.ns+"icon='arrow-l'>"+c.backBtnText+"</a>").prependTo(b),c.backBtnTheme&&f.attr("data-"+a.mobile.ns+"theme",c.backBtnTheme));b.children("h1, h2, h3, h4, h5, h6").addClass("ui-title").attr({tabindex:"0",role:"heading","aria-level":"1"})}else e==="content"?(f&&b.addClass("ui-body-"+ -f),b.attr("role","main")):e==="page"&&b.addClass("ui-body-"+(f||"c"));switch(e){case "header":case "footer":case "page":case "content":b.addClass("ui-"+e);break;case "collapsible":case "fieldcontain":case "navbar":case "listview":case "dialog":b[e]()}}),this._enhanceControls(),d.find(":jqmData(role='button'), .ui-bar > a, .ui-header > a, .ui-footer > a").not(".ui-btn").not(this.keepNative).buttonMarkup(),d.find(":jqmData(role='controlgroup')").controlgroup(),d.find("a:not(.ui-btn):not(.ui-link-inherit)").not(this.keepNative).addClass("ui-link"), -d.fixHeaderFooter())},_typeAttributeRegex:/\s+type=["']?\w+['"]?/,_enhanceControls:function(){var d=this.options,c=this;this.element.find("input").not(this.keepNative).each(function(){var b=this.getAttribute("type"),e=d.degradeInputs[b]||"text";d.degradeInputs[b]&&a(this).replaceWith(a("<div>").html(a(this).clone()).html().replace(c._typeAttributeRegex,' type="'+e+'" data-'+a.mobile.ns+'type="'+b+'" '))});var b=this.element.find("input, textarea, select, button"),e=b.not(this.keepNative),b=b.filter("input[type=text]"); -b.length&&typeof b[0].autocorrect!=="undefined"&&b.each(function(){this.setAttribute("autocorrect","off");this.setAttribute("autocomplete","off")});e.filter("[type='radio'], [type='checkbox']").checkboxradio();e.filter("button, [type='button'], [type='submit'], [type='reset'], [type='image']").button();e.filter("input, textarea").not("[type='radio'], [type='checkbox'], [type='button'], [type='submit'], [type='reset'], [type='image'], [type='hidden']").textinput();e.filter("input, select").filter(":jqmData(role='slider'), :jqmData(type='range')").slider(); -e.filter("select:not(:jqmData(role='slider'))").selectmenu()}})})(jQuery); -(function(a,d){a.extend(a.mobile,{ns:"",subPageUrlKey:"ui-page",nonHistorySelectors:"dialog",activePageClass:"ui-page-active",activeBtnClass:"ui-btn-active",ajaxEnabled:!0,useFastClick:!0,hashListeningEnabled:!0,defaultPageTransition:"slide",minScrollBack:screen.height/2,defaultDialogTransition:"pop",loadingMessage:"loading",pageLoadErrorMessage:"Error Loading Page",gradeA:function(){return a.support.mediaquery||a.mobile.browser.ie&&a.mobile.browser.ie>=7},keyCode:{ALT:18,BACKSPACE:8,CAPS_LOCK:20, -COMMA:188,COMMAND:91,COMMAND_LEFT:91,COMMAND_RIGHT:93,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,MENU:93,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SHIFT:16,SPACE:32,TAB:9,UP:38,WINDOWS:91},silentScroll:function(b){if(a.type(b)!=="number")b=a.mobile.defaultHomeScroll;a.event.special.scrollstart.enabled=!1;setTimeout(function(){d.scrollTo(0,b);a(document).trigger("silentscroll", -{x:0,y:b})},20);setTimeout(function(){a.event.special.scrollstart.enabled=!0},150)},normalizeRegex:/-([a-z])/g,nsNormalize:function(b){if(b)return a.camelCase(a.mobile.ns+b)}});a.fn.jqmData=function(b,c){return this.data(b?a.mobile.nsNormalize(b):b,c)};a.jqmData=function(b,c,d){return a.data(b,a.mobile.nsNormalize(c),d)};a.fn.jqmRemoveData=function(b){return this.removeData(a.mobile.nsNormalize(b))};a.jqmRemoveData=function(b,c){return a.removeData(b,a.mobile.nsNormalize(c))};a.jqmHasData=function(b, -c){return a.hasData(b,a.mobile.nsNormalize(c))};var c=a.find;a.find=function(b,d,f,g){b=b.replace(/:jqmData\(([^)]*)\)/g,"[data-"+(a.mobile.ns||"")+"$1]");return c.call(this,b,d,f,g)};a.extend(a.find,c);a.find.matches=function(b,c){return a.find(b,null,null,c)};a.find.matchesSelector=function(b,c){return a.find(c,null,null,[b]).length>0}})(jQuery,this); -(function(a,d){function c(a){var b=a.jqmData("lastClicked");b&&b.length?b.focus():(b=a.find(".ui-title:eq(0)"),b.length?b.focus():a.find(z).eq(0).focus())}function b(b){q&&(!q.closest(".ui-page-active").length||b)&&q.removeClass(a.mobile.activeBtnClass);q=null}function e(){t=!1;y.length>0&&a.mobile.changePage.apply(null,y.pop())}function f(b,d,e,f){var h=a.support.scrollTop?o.scrollTop():!0,j=b.data("lastScroll")||a.mobile.defaultHomeScroll,i=g();h&&window.scrollTo(0,a.mobile.defaultHomeScroll);j< -a.mobile.minScrollBack&&(j=0);d&&(d.height(i+h).jqmData("lastScroll",h).jqmData("lastClicked",q),d.data("page")._trigger("beforehide",null,{nextPage:b}));b.height(i+j).data("page")._trigger("beforeshow",null,{prevPage:d||a("")});a.mobile.hidePageLoadingMsg();e=(a.mobile.transitionHandlers[e||"none"]||a.mobile.defaultTransitionHandler)(e,f,b,d);e.done(function(){b.height("");j?(a.mobile.silentScroll(j),a(document).one("silentscroll",function(){c(b)})):c(b);d&&d.height("").data("page")._trigger("hide", -null,{nextPage:b});b.data("page")._trigger("show",null,{prevPage:d||a("")})});return e}function g(){var b=jQuery.event.special.orientationchange.orientation()==="portrait",c=b?screen.availHeight:screen.availWidth,b=Math.max(b?480:320,a(window).height());return Math.min(c,b)}function i(){a("."+a.mobile.activePageClass).css("min-height",g())}function h(b,c){c&&b.attr("data-"+a.mobile.ns+"role",c);b.page()}function l(a){for(;a;){if(a.nodeName.toLowerCase()=="a")break;a=a.parentNode}return a}function m(b){var b= -a(b).closest(".ui-page").jqmData("url"),c=s.hrefNoHash;if(!b||!k.isPath(b))b=c;return k.makeUrlAbsolute(b,c)}var o=a(window),j=a("html"),p=a("head"),k={urlParseRE:/^(((([^:\/#\?]+:)?(?:\/\/((?:(([^:@\/#\?]+)(?:\:([^:@\/#\?]+))?)@)?(([^:\/#\?]+)(?:\:([0-9]+))?))?)?)?((\/?(?:[^\/\?#]+\/+)*)([^\?#]*)))?(\?[^#]+)?)(#.*)?/,parseUrl:function(a){if(typeof a==="object")return a;var a=k.urlParseRE.exec(a),b;a&&(b={href:a[0]||"",hrefNoHash:a[1]||"",hrefNoSearch:a[2]||"",domain:a[3]||"",protocol:a[4]||"",authority:a[5]|| -"",username:a[7]||"",password:a[8]||"",host:a[9]||"",hostname:a[10]||"",port:a[11]||"",pathname:a[12]||"",directory:a[13]||"",filename:a[14]||"",search:a[15]||"",hash:a[16]||""});return b||{}},makePathAbsolute:function(a,b){if(a&&a.charAt(0)==="/")return a;for(var a=a||"",c=(b=b?b.replace(/^\/|\/?[^\/]*$/g,""):"")?b.split("/"):[],d=a.split("/"),e=0;e<d.length;e++){var f=d[e];switch(f){case ".":break;case "..":c.length&&c.pop();break;default:c.push(f)}}return"/"+c.join("/")},isSameDomain:function(a, -b){return k.parseUrl(a).domain===k.parseUrl(b).domain},isRelativeUrl:function(a){return k.parseUrl(a).protocol===""},isAbsoluteUrl:function(a){return k.parseUrl(a).protocol!==""},makeUrlAbsolute:function(a,b){if(!k.isRelativeUrl(a))return a;var c=k.parseUrl(a),d=k.parseUrl(b),e=c.protocol||d.protocol,f=c.authority||d.authority,g=c.pathname!=="",h=k.makePathAbsolute(c.pathname||d.filename,d.pathname);return e+"//"+f+h+(c.search||!g&&d.search||"")+c.hash},addSearchParams:function(b,c){var d=k.parseUrl(b), -e=typeof c==="object"?a.param(c):c,f=d.search||"?";return d.hrefNoSearch+f+(f.charAt(f.length-1)!=="?"?"&":"")+e+(d.hash||"")},convertUrlToDataUrl:function(a){var b=k.parseUrl(a);if(k.isEmbeddedPage(b))return b.hash.replace(/^#/,"");else if(k.isSameDomain(b,s))return b.hrefNoHash.replace(s.domain,"");return a},get:function(a){if(a===d)a=location.hash;return k.stripHash(a).replace(/[^\/]*\.[^\/*]+$/,"")},getFilePath:function(b){var c="&"+a.mobile.subPageUrlKey;return b&&b.split(c)[0].split(v)[0]}, -set:function(a){location.hash=a},isPath:function(a){return/\//.test(a)},clean:function(a){return a.replace(s.domain,"")},stripHash:function(a){return a.replace(/^#/,"")},cleanHash:function(a){return k.stripHash(a.replace(/\?.*$/,"").replace(v,""))},isExternal:function(a){a=k.parseUrl(a);return a.protocol&&a.domain!==u.domain?!0:!1},hasProtocol:function(a){return/^(:?\w+:)/.test(a)},isEmbeddedPage:function(a){a=k.parseUrl(a);if(a.protocol!=="")return a.hash&&(a.hrefNoHash===u.hrefNoHash||B&&a.hrefNoHash=== -s.hrefNoHash);return/^#/.test(a.href)}},q=null,n={stack:[],activeIndex:0,getActive:function(){return n.stack[n.activeIndex]},getPrev:function(){return n.stack[n.activeIndex-1]},getNext:function(){return n.stack[n.activeIndex+1]},addNew:function(a,b,c,d){n.getNext()&&n.clearForward();n.stack.push({url:a,transition:b,title:c,page:d});n.activeIndex=n.stack.length-1},clearForward:function(){n.stack=n.stack.slice(0,n.activeIndex+1)},directHashChange:function(b){var c,e,f;a.each(n.stack,function(a,d){b.currentUrl=== -d.url&&(c=a<n.activeIndex,e=!c,f=a)});this.activeIndex=f!==d?f:this.activeIndex;c?b.isBack():e&&b.isForward()},ignoreNextHashChange:!1},z="[tabindex],a,button:visible,select:visible,input",y=[],t=!1,v="&ui-state=dialog",x=p.children("base"),u=k.parseUrl(location.href),s=x.length?k.parseUrl(k.makeUrlAbsolute(x.attr("href"),u.href)):u,B=u.hrefNoHash!==s.hrefNoHash,w=a.support.dynamicBaseTag?{element:x.length?x:a("<base>",{href:s.hrefNoHash}).prependTo(p),set:function(a){w.element.attr("href",k.makeUrlAbsolute(a, -s))},reset:function(){w.element.attr("href",s.hrefNoHash)}}:d;a.fn.animationComplete=function(b){return a.support.cssTransitions?a(this).one("webkitAnimationEnd",b):(setTimeout(b,0),a(this))};a.mobile.updateHash=k.set;a.mobile.path=k;a.mobile.base=w;a.mobile.urlstack=n.stack;a.mobile.urlHistory=n;a.mobile.noneTransitionHandler=function(b,c,d,e){e&&e.removeClass(a.mobile.activePageClass);d.addClass(a.mobile.activePageClass);return a.Deferred().resolve(b,c,d,e).promise()};a.mobile.defaultTransitionHandler= -a.mobile.noneTransitionHandler;a.mobile.transitionHandlers={none:a.mobile.defaultTransitionHandler};a.mobile.allowCrossDomainPages=!1;a.mobile.getDocumentUrl=function(b){return b?a.extend({},u):u.href};a.mobile.getDocumentBase=function(b){return b?a.extend({},s):s.href};a.mobile.loadPage=function(b,c){var e=a.Deferred(),f=a.extend({},a.mobile.loadPage.defaults,c),g=null,j=null,i=k.makeUrlAbsolute(b,s.hrefNoHash);if(f.data&&f.type==="get")i=k.addSearchParams(i,f.data),f.data=d;var n=k.getFilePath(i), -q=k.convertUrlToDataUrl(i);f.pageContainer=f.pageContainer||a.mobile.pageContainer;g=f.pageContainer.children(":jqmData(url='"+q+"')");w&&w.reset();if(g.length){if(!f.reloadPage)return h(g,f.role),e.resolve(i,c,g),e.promise();j=g}f.showLoadMsg&&a.mobile.showPageLoadingMsg();a.ajax({url:n,type:f.type,data:f.data,dataType:"html",success:function(d){var l=a("<div></div>"),p=d.match(/<title[^>]*>([^<]*)/)&&RegExp.$1,o=RegExp("\\bdata-"+a.mobile.ns+"url=[\"']?([^\"'>]*)[\"']?");RegExp(".*(<[^>]+\\bdata-"+ -a.mobile.ns+"role=[\"']?page[\"']?[^>]*>).*").test(d)&&RegExp.$1&&o.test(RegExp.$1)&&RegExp.$1&&(b=n=k.getFilePath(RegExp.$1));w&&w.set(n);l.get(0).innerHTML=d;g=l.find(":jqmData(role='page'), :jqmData(role='dialog')").first();p&&!g.jqmData("title")&&g.jqmData("title",p);if(!a.support.dynamicBaseTag){var m=k.get(n);g.find("[src], link[href], a[rel='external'], :jqmData(ajax='false'), a[target]").each(function(){var b=a(this).is("[href]")?"href":a(this).is("[src]")?"src":"action",c=a(this).attr(b), -c=c.replace(location.protocol+"//"+location.host+location.pathname,"");/^(\w+:|#|\/)/.test(c)||a(this).attr(b,m+c)})}g.attr("data-"+a.mobile.ns+"url",k.convertUrlToDataUrl(n)).appendTo(f.pageContainer);h(g,f.role);i.indexOf("&"+a.mobile.subPageUrlKey)>-1&&(g=f.pageContainer.children(":jqmData(url='"+q+"')"));f.showLoadMsg&&a.mobile.hidePageLoadingMsg();e.resolve(i,c,g,j)},error:function(){w&&w.set(k.get());f.showLoadMsg&&(a.mobile.hidePageLoadingMsg(),a("<div class='ui-loader ui-overlay-shadow ui-body-e ui-corner-all'><h1>"+ -a.mobile.pageLoadErrorMessage+"</h1></div>").css({display:"block",opacity:0.96,top:o.scrollTop()+100}).appendTo(f.pageContainer).delay(800).fadeOut(400,function(){a(this).remove()}));e.reject(i,c)}});return e.promise()};a.mobile.loadPage.defaults={type:"get",data:d,reloadPage:!1,role:d,showLoadMsg:!0,pageContainer:d};a.mobile.changePage=function(c,g){if(typeof g!=="object"){var i=null;if(typeof c==="object"&&c.url&&c.type)i={type:c.type,data:c.data,forcePageLoad:!0},c=c.url;var q=arguments.length; -if(q>1){var l=["transition","reverse","changeHash","fromHashChange"],p;for(p=1;p<q;p++){var o=arguments[p];typeof o!=="undefined"&&(i=i||{},i[l[p-1]]=o)}}if(i)return a.mobile.changePage(c,i)}if(t)y.unshift(arguments);else{t=!0;var m=a.extend({},a.mobile.changePage.defaults,g);m.pageContainer=m.pageContainer||a.mobile.pageContainer;if(typeof c=="string")a.mobile.loadPage(c,m).done(function(b,c,d,e){t=!1;c.duplicateCachedPage=e;a.mobile.changePage(d,c)}).fail(function(){t=!1;b(!0);e();m.pageContainer.trigger("changepagefailed")}); -else{var s=m.pageContainer,i=a.mobile.activePage,q=c.jqmData("url");k.getFilePath(q);l=n.getActive();p=n.activeIndex===0;var x=0,o=document.title,u=m.role==="dialog"||c.jqmData("role")==="dialog";s.trigger("beforechangepage");if(i&&i[0]===c[0])t=!1,s.trigger("changepage");else{h(c,m.role);m.fromHashChange&&n.directHashChange({currentUrl:q,isBack:function(){x=-1},isForward:function(){x=1}});a(document.activeElement||"").add("input:focus, textarea:focus, select:focus").blur();u&&l&&(q=l.url+v);if(m.changeHash!== -!1&&q)n.ignoreNextHashChange=!0,k.set(q);(u=c.jqmData("title")||c.children(":jqmData(role='header')").find(".ui-title").text())&&o==document.title&&(o=u);x||n.addNew(q,m.transition,o,c);document.title=n.getActive().title;a.mobile.activePage=c;m.transition=m.transition||(x&&!p?l.transition:d)||(m.role==="dialog"?a.mobile.defaultDialogTransition:a.mobile.defaultPageTransition);m.reverse=m.reverse||x<0;f(c,i,m.transition,m.reverse).done(function(){b();m.duplicateCachedPage&&m.duplicateCachedPage.remove(); -j.removeClass("ui-mobile-rendering");e();s.trigger("changepage")})}}}};a.mobile.changePage.defaults={transition:d,reverse:!1,changeHash:!0,fromHashChange:!1,role:d,duplicateCachedPage:d,pageContainer:d};a("form").live("submit",function(b){var c=a(this);if(a.mobile.ajaxEnabled&&!c.is(":jqmData(ajax='false')")){var d=c.attr("method"),e=k.makeUrlAbsolute(c.attr("action"),m(c)),f=c.attr("target");!k.isExternal(e)&&!f&&(a.mobile.changePage(e,{type:d.length&&d.toLowerCase()||"get",data:c.serialize(),transition:c.jqmData("transition"), -direction:c.jqmData("direction"),reloadPage:!0}),b.preventDefault())}});a(document).bind("vclick",function(b){if((b=l(b.target))&&k.parseUrl(b.getAttribute("href")||"#").hash!=="#")a(b).closest(".ui-btn").not(".ui-disabled").addClass(a.mobile.activeBtnClass),a("."+a.mobile.activePageClass+" .ui-btn").not(b).blur()});a(document).bind(a.mobile.useFastClick?"vclick click":"click",function(c){var e=l(c.target);if(e){var f=a(e),g=function(){window.setTimeout(function(){b(!0)},200)};if(f.is(":jqmData(rel='back')"))return window.history.back(), -!1;if(a.mobile.ajaxEnabled){var h=m(f),e=k.makeUrlAbsolute(f.attr("href")||"#",h);if(e.search("#")!=-1)if(e=e.replace(/[^#]*#/,""))e=k.isPath(e)?k.makeUrlAbsolute(e,h):k.makeUrlAbsolute("#"+e,u.hrefNoHash);else{c.preventDefault();return}var h=f.is("[rel='external']")||f.is(":jqmData(ajax='false')")||f.is("[target]"),i=a.mobile.allowCrossDomainPages&&u.protocol==="file:"&&e.search(/^https?:/)!=-1,h=h||k.isExternal(e)&&!i;q=f.closest(".ui-btn");h?g():(g=f.jqmData("transition"),h=(h=f.jqmData("direction"))&& -h==="reverse"||f.jqmData("back"),f=f.attr("data-"+a.mobile.ns+"rel")||d,a.mobile.changePage(e,{transition:g,reverse:h,role:f}),c.preventDefault())}else g()}});o.bind("hashchange",function(){var b=k.stripHash(location.hash),c=a.mobile.urlHistory.stack.length===0?"none":d;if(!a.mobile.hashListeningEnabled||n.ignoreNextHashChange)n.ignoreNextHashChange=!1;else{if(n.stack.length>1&&b.indexOf(v)>-1)if(a.mobile.activePage.is(".ui-dialog")){var e=function(){b=a.mobile.urlHistory.getActive().page};n.directHashChange({currentUrl:b, -isBack:e,isForward:e})}else{n.directHashChange({currentUrl:b,isBack:function(){window.history.back()},isForward:function(){window.history.forward()}});return}b?(b=typeof b==="string"&&!k.isPath(b)?"#"+b:b,a.mobile.changePage(b,{transition:c,changeHash:!1,fromHashChange:!0})):a.mobile.changePage(a.mobile.firstPage,{transition:c,changeHash:!1,fromHashChange:!0})}});a(document).bind("pageshow",i);a(window).bind("throttledresize",i)})(jQuery); -(function(a){function d(c,b,d,f){var g=new a.Deferred,i=b?" reverse":"",h="ui-mobile-viewport-transitioning viewport-"+c;d.animationComplete(function(){d.add(f).removeClass("out in reverse "+c);f&&f.removeClass(a.mobile.activePageClass);d.parent().removeClass(h);g.resolve(c,b,d,f)});d.parent().addClass(h);f&&f.addClass(c+" out"+i);d.addClass(a.mobile.activePageClass+" "+c+" in"+i);return g.promise()}a.mobile.css3TransitionHandler=d;if(a.mobile.defaultTransitionHandler===a.mobile.noneTransitionHandler)a.mobile.defaultTransitionHandler= -d})(jQuery,this); -(function(a,d){a.fn.fixHeaderFooter=function(){if(!a.support.scrollTop)return this;return this.each(function(){var c=a(this);c.jqmData("fullscreen")&&c.addClass("ui-page-fullscreen");c.find(".ui-header:jqmData(position='fixed')").addClass("ui-header-fixed ui-fixed-inline fade");c.find(".ui-footer:jqmData(position='fixed')").addClass("ui-footer-fixed ui-fixed-inline fade")})};a.fixedToolbars=function(){function c(){!g&&f=="overlay"&&(i||a.fixedToolbars.hide(!0),a.fixedToolbars.startShowTimer())}function b(a){var b= -0;if(a)for(var c=a.offsetParent,d=document.body,b=a.offsetTop;a&&a!=d;){b+=a.scrollTop||0;if(a==c)b+=c.offsetTop,c=a.offsetParent;a=a.parentNode}return b}function e(c){var d=a(window).scrollTop(),e=b(c[0]),f=c.css("top")=="auto"?0:parseFloat(c.css("top")),g=window.innerHeight,h=c.outerHeight(),i=c.parents(".ui-page:not(.ui-page-fullscreen)").length;return c.is(".ui-header-fixed")?(f=d-e+f,f<e&&(f=0),c.css("top",i?f:d)):c.css("top",i?d+g-h-(e-f):d+g-h)}if(a.support.scrollTop){var f="inline",g=!1,i, -h,l=null,m=!1,o=!0;a(function(){a(document).bind("vmousedown",function(){o&&(l=f)}).bind("vclick",function(b){o&&!a(b.target).closest("a,input,textarea,select,button,label,.ui-header-fixed,.ui-footer-fixed").length&&!m&&(a.fixedToolbars.toggle(l),l=null)}).bind("silentscroll",c);(a(document).scrollTop()==0?a(window):a(document)).bind("scrollstart",function(){m=!0;l==null&&(l=f);var b=l=="overlay";if(g=b||!!i)a.fixedToolbars.clearShowTimer(),b&&a.fixedToolbars.hide(!0)}).bind("scrollstop",function(b){a(b.target).closest("a,input,textarea,select,button,label,.ui-header-fixed,.ui-footer-fixed").length|| -(m=!1,g&&(g=!1,a.fixedToolbars.startShowTimer()),l=null)});a(window).bind("resize",c)});a(".ui-page").live("pagebeforeshow",function(b,c){var d=a(b.target).find(":jqmData(role='footer')"),f=d.data("id"),g=c.prevPage,g=g&&g.find(":jqmData(role='footer')"),g=g.length&&g.jqmData("id")===f;f&&g&&(h=d,e(h.removeClass("fade in out").appendTo(a.mobile.pageContainer)))});a(".ui-page").live("pageshow",function(){var b=a(this);h&&h.length&&setTimeout(function(){e(h.appendTo(b).addClass("fade"));h=null},500); -a.fixedToolbars.show(!0,this)});a(".ui-collapsible-contain").live("collapse expand",c);return{show:function(c,d){a.fixedToolbars.clearShowTimer();f="overlay";return(d?a(d):a.mobile.activePage?a.mobile.activePage:a(".ui-page-active")).children(".ui-header-fixed:first, .ui-footer-fixed:not(.ui-footer-duplicate):last").each(function(){var d=a(this),f=a(window).scrollTop(),g=b(d[0]),h=window.innerHeight,i=d.outerHeight(),f=d.is(".ui-header-fixed")&&f<=g+i||d.is(".ui-footer-fixed")&&g<=f+h;d.addClass("ui-fixed-overlay").removeClass("ui-fixed-inline"); -!f&&!c&&d.animationComplete(function(){d.removeClass("in")}).addClass("in");e(d)})},hide:function(b){f="inline";return(a.mobile.activePage?a.mobile.activePage:a(".ui-page-active")).children(".ui-header-fixed:first, .ui-footer-fixed:not(.ui-footer-duplicate):last").each(function(){var c=a(this),d=c.css("top"),d=d=="auto"?0:parseFloat(d);c.addClass("ui-fixed-inline").removeClass("ui-fixed-overlay");if(d<0||c.is(".ui-header-fixed")&&d!=0)b?c.css("top",0):c.css("top")!=="auto"&&parseFloat(c.css("top"))!== -0&&c.animationComplete(function(){c.removeClass("out reverse");c.css("top",0)}).addClass("out reverse")})},startShowTimer:function(){a.fixedToolbars.clearShowTimer();var b=a.makeArray(arguments);i=setTimeout(function(){i=d;a.fixedToolbars.show.apply(null,b)},100)},clearShowTimer:function(){i&&clearTimeout(i);i=d},toggle:function(b){b&&(f=b);return f=="overlay"?a.fixedToolbars.hide():a.fixedToolbars.show()},setTouchToggleEnabled:function(a){o=a}}}}()})(jQuery); -(function(a,d){a.widget("mobile.checkboxradio",a.mobile.widget,{options:{theme:null},_create:function(){var c=this,b=this.element,e=b.closest("form,fieldset,:jqmData(role='page')").find("label").filter('[for="'+b[0].id+'"]'),f=b.attr("type"),g="ui-icon-"+f+"-off";if(!(f!="checkbox"&&f!="radio")){a.extend(this,{label:e,inputtype:f,checkedicon:"ui-icon-"+f+"-on",uncheckedicon:g});if(!this.options.theme)this.options.theme=this.element.jqmData("theme");e.buttonMarkup({theme:this.options.theme,icon:this.element.parents(":jqmData(type='horizontal')").length? -d:g,shadow:!1});b.add(e).wrapAll("<div class='ui-"+f+"'></div>");e.bind({vmouseover:function(){if(a(this).parent().is(".ui-disabled"))return!1},vclick:function(a){if(b.is(":disabled"))a.preventDefault();else return c._cacheVals(),b.prop("checked",f==="radio"&&!0||!b.prop("checked")),c._getInputSet().not(b).prop("checked",!1),c._updateAll(),!1}});b.bind({vmousedown:function(){this._cacheVals()},vclick:function(){a(this).is(":checked")?(a(this).prop("checked",!0),c._getInputSet().not(a(this)).prop("checked", -!1)):a(this).prop("checked",!1);c._updateAll()},focus:function(){e.addClass("ui-focus")},blur:function(){e.removeClass("ui-focus")}});this.refresh()}},_cacheVals:function(){this._getInputSet().each(function(){a(this).jqmData("cacheVal",a(this).is(":checked"))})},_getInputSet:function(){return this.element.closest("form,fieldset,:jqmData(role='page')").find("input[name='"+this.element.attr("name")+"'][type='"+this.inputtype+"']")},_updateAll:function(){var c=this;this._getInputSet().each(function(){(a(this).is(":checked")|| -c.inputtype==="checkbox")&&a(this).trigger("change")}).checkboxradio("refresh")},refresh:function(){var c=this.element,b=this.label,d=b.find(".ui-icon");a(c[0]).prop("checked")?(b.addClass(a.mobile.activeBtnClass),d.addClass(this.checkedicon).removeClass(this.uncheckedicon)):(b.removeClass(a.mobile.activeBtnClass),d.removeClass(this.checkedicon).addClass(this.uncheckedicon));c.is(":disabled")?this.disable():this.enable()},disable:function(){this.element.prop("disabled",!0).parent().addClass("ui-disabled")}, -enable:function(){this.element.prop("disabled",!1).parent().removeClass("ui-disabled")}})})(jQuery); -(function(a){a.widget("mobile.textinput",a.mobile.widget,{options:{theme:null},_create:function(){var h;var d=this.element,c=this.options,b=c.theme;b||(b=this.element.closest("[class*='ui-bar-'],[class*='ui-body-']"),h=(b=b.length&&/ui-(bar|body)-([a-z])/.exec(b.attr("class")))&&b[2]||"c",b=h);b=" ui-body-"+b;a('label[for="'+d.attr("id")+'"]').addClass("ui-input-text");d.addClass("ui-input-text ui-body-"+c.theme);var e=d;if(d.is("[type='search'],:jqmData(type='search')")){var e=d.wrap('<div class="ui-input-search ui-shadow-inset ui-btn-corner-all ui-btn-shadow ui-icon-searchfield'+ -b+'"></div>').parent(),f=a('<a href="#" class="ui-input-clear" title="clear text">clear text</a>').tap(function(a){d.val("").focus();d.trigger("change");f.addClass("ui-input-clear-hidden");a.preventDefault()}).appendTo(e).buttonMarkup({icon:"delete",iconpos:"notext",corners:!0,shadow:!0}),c=function(){d.val()==""?f.addClass("ui-input-clear-hidden"):f.removeClass("ui-input-clear-hidden")};c();d.keyup(c);d.focus(c)}else d.addClass("ui-corner-all ui-shadow-inset"+b);d.focus(function(){e.addClass("ui-focus")}).blur(function(){e.removeClass("ui-focus")}); -if(d.is("textarea")){var g=function(){var a=d[0].scrollHeight;d[0].clientHeight<a&&d.css({height:a+15})},i;d.keyup(function(){clearTimeout(i);i=setTimeout(g,100)})}},disable:function(){(this.element.attr("disabled",!0).is("[type='search'],:jqmData(type='search')")?this.element.parent():this.element).addClass("ui-disabled")},enable:function(){(this.element.attr("disabled",!1).is("[type='search'],:jqmData(type='search')")?this.element.parent():this.element).removeClass("ui-disabled")}})})(jQuery); - - -(function(a){a.widget("mobile.selectmenu",a.mobile.widget,{ - options:{ - theme:null, - disabled:!1, - icon:"arrow-d", - iconpos:"right", - inline:null, - corners:!0,shadow:!0, - iconshadow:!0, - menuPageTheme:"b", - overlayTheme:"a", - hidePlaceholderMenuItems:!0, - closeText:"Close", - nativeMenu:!0 - }, - _create:function(){ - var d=this, - c=this.options, - b=this.element.wrap("<div class='ui-select'>"), - e=b.attr("id"), - f=a('label[for="'+e+'"]').addClass("ui-select"), - g=b[0].selectedIndex==-1?0:b[0].selectedIndex, - i=(d.options.nativeMenu?a("<div/>"):a("<a>",{ - href:"#", - role:"button", - id:m, - "aria-haspopup":"true", - "aria-owns":o - })).text(a(b[0].options.item(g)).text()).insertBefore(b).buttonMarkup({ - theme:c.theme, - icon:c.icon, - iconpos:c.iconpos, - inline:c.inline, - corners:c.corners, - shadow:c.shadow, - iconshadow:c.iconshadow - }), - h=d.isMultiple=b[0].multiple; - c.nativeMenu&&window.opera&&window.opera.version&&b.addClass("ui-select-nativeonly"); - if(!c.nativeMenu){ - var l=b.find("option"), - m=e+"-button", - o=e+"-menu", - j=b.closest(".ui-page"), - g=/ui-btn-up-([a-z])/.exec(i.attr("class"))[1], - p=a("<div data-"+a.mobile.ns+"role='dialog' data-"+a.mobile.ns+"theme='"+c.menuPageTheme+"'><div data-"+a.mobile.ns+"role='header'><div class='ui-title'>"+f.text()+"</div></div><div data-"+a.mobile.ns+"role='content'></div></div>").appendTo(a.mobile.pageContainer).page(),k=p.find(".ui-content");p.find(".ui-header a");var q=a("<div>",{"class":"ui-selectmenu-screen ui-screen-hidden"}).appendTo(j),n=a("<div>",{"class":"ui-selectmenu ui-selectmenu-hidden ui-overlay-shadow ui-corner-all pop ui-body-"+c.overlayTheme}).insertAfter(q),z=a("<ul>",{"class":"ui-selectmenu-list",id:o,role:"listbox","aria-labelledby":m}).attr("data-"+a.mobile.ns+"theme",g).appendTo(n),y=a("<div>",{"class":"ui-header ui-bar-"+g}).prependTo(n),t=a("<h1>",{"class":"ui-title"}).appendTo(y),v=a("<a>",{text:c.closeText,href:"#","class":"ui-btn-left"}).attr("data-"+a.mobile.ns+"iconpos","notext").attr("data-"+a.mobile.ns+"icon","delete").appendTo(y).buttonMarkup()}if(h)d.buttonCount=a("<span>").addClass("ui-li-count ui-btn-up-c ui-btn-corner-all").hide().appendTo(i);c.disabled&&this.disable();b.change(function(){d.refresh()});a.extend(d,{select:b,optionElems:l,selectID:e,label:f,buttonId:m,menuId:o,thisPage:j,button:i,menuPage:p,menuPageContent:k,screen:q,listbox:n,list:z,menuType:void 0,header:y,headerClose:v,headerTitle:t,placeholder:""}); - c.nativeMenu?b.appendTo(i).bind("vmousedown",function(){ - i.addClass(a.mobile.activeBtnClass) - }).bind("focus vmouseover",function(){ - i.trigger("vmouseover") - }).bind("vmousemove",function(){ - i.removeClass(a.mobile.activeBtnClass) - }).bind("change blur vmouseout",function(){ - i.trigger("vmouseout").removeClass(a.mobile.activeBtnClass) - }):(d.refresh(),b.attr("tabindex","-1").focus(function(){ - a(this).blur();i.focus() - }), - i.bind("vclick keydown",function(b){ - if(b.type=="vclick"||b.keyCode&&(b.keyCode===a.mobile.keyCode.ENTER||b.keyCode===a.mobile.keyCode.SPACE)) - d.open(),b.preventDefault() - }), - z.attr("role","listbox").delegate(".ui-li>a","focusin",function(){ - a(this).attr("tabindex","0") - }).delegate(".ui-li>a","focusout",function(){ - a(this).attr("tabindex","-1") - }).delegate("li:not(.ui-disabled, .ui-li-divider)","vclick",function(c){ - var e=b[0].selectedIndex, - f=z.find("li:not(.ui-li-divider)").index(this), - g=d.optionElems.eq(f)[0]; - g.selected=h?!g.selected:!0; - h&&a(this).find(".ui-icon").toggleClass("ui-icon-checkbox-on",g.selected).toggleClass("ui-icon-checkbox-off",!g.selected); - (h||e!==f)&&b.trigger("change"); - h||d.close(); - c.preventDefault() - }).keydown(function(b){ - var c=a(b.target), - d=c.closest("li"); - switch(b.keyCode){ - case 38: - return b=d.prev(),b.length&&(c.blur().attr("tabindex","-1"),b.find("a").first().focus()),!1; - case 40: - return b=d.next(),b.length&&(c.blur().attr("tabindex","-1"),b.find("a").first().focus()),!1; - case 13:case 32: - return c.trigger("vclick"),!1 - } - }), - q.bind("vclick",function(){ - d.close() - }), - d.headerClose.click(function(){ - if(d.menuType=="overlay") - return d.close(),!1 - }) - )}, - _buildList:function(){ - var d=this, - c=this.options, - b=this.placeholder, - e=[], - f=[], - g=d.isMultiple?"checkbox-off":"false"; - d.list.empty().filter(".ui-listview").listview("destroy"); - d.select.find("option").each(function(){ - var i=a(this), - h=i.parent(), - l=i.text(), - m="<a href='#'>"+l+"</a>", - o=[], - j=[]; - h.is("optgroup")&&(h=h.attr("label"),a.inArray(h,e)===-1&&(f.push("<li data-"+a.mobile.ns+"role='list-divider'>"+h+"</li>"),e.push(h))); - if(!this.getAttribute("value")||l.length==0||i.jqmData("placeholder")) - c.hidePlaceholderMenuItems&&o.push("ui-selectmenu-placeholder"),b=d.placeholder=l; - this.disabled&&(o.push("ui-disabled"),j.push("aria-disabled='true'")); - f.push("<li data-"+a.mobile.ns+"icon='"+g+"' class='"+o.join(" ")+"' "+j.join(" ")+">"+m+"</li>") - }); - d.list.html(f.join(" ")); - d.list.find("li").attr({role:"option",tabindex:"-1"}).first().attr("tabindex","0"); - this.isMultiple||this.headerClose.hide(); - !this.isMultiple&&!b.length?this.header.hide():this.headerTitle.text(this.placeholder); - d.list.listview() - }, - refresh:function(d){ - var c=this, - b=this.element, - e=this.isMultiple, - f=this.optionElems=b.find("option"), - g=f.filter(":selected"), - i=g.map(function(){ - return f.index(this) - }).get(); - !c.options.nativeMenu&&(d||b[0].options.length!=c.list.find("li").length)&&c._buildList(); - c.button.find(".ui-btn-text").text(function(){ - if(!e)return g.text(); - return g.length?g.map(function(){ - return a(this).text() - }).get().join(", "):c.placeholder - }); - e&&c.buttonCount[g.length>1?"show":"hide"]().text(g.length); - c.options.nativeMenu||c.list.find("li:not(.ui-li-divider)").removeClass(a.mobile.activeBtnClass).attr("aria-selected",!1).each(function(b){ - a.inArray(b,i)>-1&&(b=a(this).addClass(a.mobile.activeBtnClass), - b.find("a").attr("aria-selected",!0), - e&&b.find(".ui-icon").removeClass("ui-icon-checkbox-off").addClass("ui-icon-checkbox-on") - ) - }) - }, - open:function(){ - function d(){ - c.list.find(".ui-btn-active").focus() - } - if(!this.options.disabled&&!this.options.nativeMenu){ - var c=this, - b=c.list.parent().outerHeight(), - e=c.list.parent().outerWidth(), - f=a(window).scrollTop(), - g=c.button.offset().top, - i=window.innerHeight, - h=window.innerWidth; - c.button.addClass(a.mobile.activeBtnClass); - setTimeout(function(){ - c.button.removeClass(a.mobile.activeBtnClass) - },300); - if(b>i-80||!a.support.scrollTop){ - if(f==0&&g>i) - c.thisPage.one("pagehide",function(){ - a(this).jqmData("lastScroll",g) - }); - c.menuPage.one("pageshow",function(){ - a(window).one("silentscroll",function(){d()}) - }); - c.menuType="page"; - c.menuPageContent.append(c.list); - a.mobile.changePage(c.menuPage,{transition:"pop"}) - }else{ - c.menuType="overlay"; - c.screen.height(a(document).height()).removeClass("ui-screen-hidden"); - var l=g-f,m=f+i-g,o=b/2,j=parseFloat(c.list.parent().css("max-width")),b=l>b/2&&m>b/2?g+c.button.outerHeight()/2-o:l>m?f+i-b-30:f+30;e<j?j=(h-e)/2:(j=c.button.offset().left+c.button.outerWidth()/2-e/2,j<30?j=30:j+e>h&&(j=h-e-30)); - c.listbox.append(c.list).removeClass("ui-selectmenu-hidden").css({top:b,left:j}).addClass("in");d() - } - setTimeout(function(){ - c.isOpen=!0 - },400) - } - }, - close:function(){ - function a(){ - setTimeout(function(){ - c.button.focus() - },40); - c.listbox.removeAttr("style").append(c.list) - } - if(!this.options.disabled&&this.isOpen&&!this.options.nativeMenu){ - var c=this; - c.menuType=="page"?(c.menuPage.one("pagehide",a),window.history.back()):(c.screen.addClass("ui-screen-hidden"),c.listbox.addClass("ui-selectmenu-hidden").removeAttr("style").removeClass("in"),a());this.isOpen=!1 - } - }, - disable:function(){ - this.element.attr("disabled",!0); - this.button.addClass("ui-disabled").attr("aria-disabled",!0);return this._setOption("disabled",!0) - }, - enable:function(){ - this.element.attr("disabled",!1); - this.button.removeClass("ui-disabled").attr("aria-disabled",!1); - return this._setOption("disabled",!1) - } -})})(jQuery); -(function(a){function d(b){for(;b;){var c=a(b);if(c.hasClass("ui-btn")&&!c.hasClass("ui-disabled"))break;b=b.parentNode}return b}a.fn.buttonMarkup=function(b){return this.each(function(){var d=a(this),f=a.extend({},a.fn.buttonMarkup.defaults,d.jqmData(),b),g,i="ui-btn-inner",h;c&&c();if(!f.theme)g=d.closest("[class*='ui-bar-'],[class*='ui-body-']"),f.theme=g.length?/ui-(bar|body)-([a-z])/.exec(g.attr("class"))[2]:"c";g="ui-btn ui-btn-up-"+f.theme;f.inline&&(g+=" ui-btn-inline");if(f.icon)f.icon="ui-icon-"+ -f.icon,f.iconpos=f.iconpos||"left",h="ui-icon "+f.icon,f.shadow&&(h+=" ui-icon-shadow");f.iconpos&&(g+=" ui-btn-icon-"+f.iconpos,f.iconpos=="notext"&&!d.attr("title")&&d.attr("title",d.text()));f.corners&&(g+=" ui-btn-corner-all",i+=" ui-btn-corner-all");f.shadow&&(g+=" ui-shadow");d.attr("data-"+a.mobile.ns+"theme",f.theme).addClass(g);f=("<D class='"+i+"'><D class='ui-btn-text'></D>"+(f.icon?"<span class='"+h+"'></span>":"")+"</D>").replace(/D/g,f.wrapperEls);d.wrapInner(f)})};a.fn.buttonMarkup.defaults= -{corners:!0,shadow:!0,iconshadow:!0,wrapperEls:"span"};var c=function(){a(document).bind({vmousedown:function(b){if(b=d(b.target)){var b=a(b),c=b.attr("data-"+a.mobile.ns+"theme");b.removeClass("ui-btn-up-"+c).addClass("ui-btn-down-"+c)}},"vmousecancel vmouseup":function(b){if(b=d(b.target)){var b=a(b),c=b.attr("data-"+a.mobile.ns+"theme");b.removeClass("ui-btn-down-"+c).addClass("ui-btn-up-"+c)}},"vmouseover focus":function(b){if(b=d(b.target)){var b=a(b),c=b.attr("data-"+a.mobile.ns+"theme");b.removeClass("ui-btn-up-"+ -c).addClass("ui-btn-hover-"+c)}},"vmouseout blur":function(b){if(b=d(b.target)){var b=a(b),c=b.attr("data-"+a.mobile.ns+"theme");b.removeClass("ui-btn-hover-"+c).addClass("ui-btn-up-"+c)}}});c=null}})(jQuery); -(function(a){a.widget("mobile.button",a.mobile.widget,{options:{theme:null,icon:null,iconpos:null,inline:null,corners:!0,shadow:!0,iconshadow:!0},_create:function(){var d=this.element,c=this.options;this.button=a("<div></div>").text(d.text()||d.val()).buttonMarkup({theme:c.theme,icon:c.icon,iconpos:c.iconpos,inline:c.inline,corners:c.corners,shadow:c.shadow,iconshadow:c.iconshadow}).insertBefore(d).append(d.addClass("ui-btn-hidden"));c=d.attr("type");c!=="button"&&c!=="reset"&&d.bind("vclick",function(){var b= -a("<input>",{type:"hidden",name:d.attr("name"),value:d.attr("value")}).insertBefore(d);a(document).submit(function(){b.remove()})});this.refresh()},enable:function(){this.element.attr("disabled",!1);this.button.removeClass("ui-disabled").attr("aria-disabled",!1);return this._setOption("disabled",!1)},disable:function(){this.element.attr("disabled",!0);this.button.addClass("ui-disabled").attr("aria-disabled",!0);return this._setOption("disabled",!0)},refresh:function(){this.element.attr("disabled")? -this.disable():this.enable()}})})(jQuery); - - -(function(a){a.widget("mobile.slider",a.mobile.widget,{options:{theme:null,trackTheme:null,disabled:!1},_create:function(){var d=this,c=this.element,b=c.parents("[class*=ui-bar-],[class*=ui-body-]").eq(0),b=b.length?b.attr("class").match(/ui-(bar|body)-([a-z])/)[2]:"c",e=this.options.theme?this.options.theme:b,f=this.options.trackTheme?this.options.trackTheme:b,g=c[0].nodeName.toLowerCase(),b=g=="select"?"ui-slider-switch":"",i=c.attr("id"),h=i+"-label",i=a('[for="'+i+'"]').attr("id",h),l=function(){return g== -"input"?parseFloat(c.val()):c[0].selectedIndex},m=g=="input"?parseFloat(c.attr("min")):0,o=g=="input"?parseFloat(c.attr("max")):c.find("option").length-1,j=window.parseFloat(c.attr("step")||1),p=a('<div class="ui-slider '+b+" ui-btn-down-"+f+' ui-btn-corner-all" role="application"></div>'),k=a('<a href="#" class="ui-slider-handle"></a>').appendTo(p).buttonMarkup({corners:!0,theme:e,shadow:!0}).attr({role:"slider","aria-valuemin":m,"aria-valuemax":o,"aria-valuenow":l(),"aria-valuetext":l(),title:l(), -"aria-labelledby":h});a.extend(this,{slider:p,handle:k,dragging:!1,beforeStart:null});g=="select"&&(p.wrapInner('<div class="ui-slider-inneroffset"></div>'),c.find("option"),c.find("option").each(function(b){var c=b==0?"b":"a",d=b==0?"right":"left",b=b==0?" ui-btn-down-"+f:" ui-btn-active";a('<div class="ui-slider-labelbg ui-slider-labelbg-'+c+b+" ui-btn-corner-"+d+'"></div>').prependTo(p);a('<span class="ui-slider-label ui-slider-label-'+c+b+" ui-btn-corner-"+d+'" role="img">'+a(this).text()+"</span>").prependTo(k)})); -i.addClass("ui-slider");c.addClass(g=="input"?"ui-slider-input":"ui-slider-switch").change(function(){d.refresh(l(),!0)}).keyup(function(){d.refresh(l(),!0,!0)}).blur(function(){d.refresh(l(),!0)});a(document).bind("vmousemove",function(a){if(d.dragging)return d.refresh(a),!1});p.bind("vmousedown",function(a){d.dragging=!0;if(g==="select")d.beforeStart=c[0].selectedIndex;d.refresh(a);return!1});p.add(document).bind("vmouseup",function(){if(d.dragging){d.dragging=!1;if(g==="select"){d.beforeStart=== -c[0].selectedIndex&&d.refresh(d.beforeStart===0?1:0);var a=l(),a=Math.round(a/(o-m)*100);k.addClass("ui-slider-handle-snapping").css("left",a+"%").animationComplete(function(){k.removeClass("ui-slider-handle-snapping")})}return!1}});p.insertAfter(c);this.handle.bind("vmousedown",function(){a(this).focus()}).bind("vclick",!1);this.handle.bind("keydown",function(b){var c=l();if(!d.options.disabled){switch(b.keyCode){case a.mobile.keyCode.HOME:case a.mobile.keyCode.END:case a.mobile.keyCode.PAGE_UP:case a.mobile.keyCode.PAGE_DOWN:case a.mobile.keyCode.UP:case a.mobile.keyCode.RIGHT:case a.mobile.keyCode.DOWN:case a.mobile.keyCode.LEFT:if(b.preventDefault(), -!d._keySliding)d._keySliding=!0,a(this).addClass("ui-state-active")}switch(b.keyCode){case a.mobile.keyCode.HOME:d.refresh(m);break;case a.mobile.keyCode.END:d.refresh(o);break;case a.mobile.keyCode.PAGE_UP:case a.mobile.keyCode.UP:case a.mobile.keyCode.RIGHT:d.refresh(c+j);break;case a.mobile.keyCode.PAGE_DOWN:case a.mobile.keyCode.DOWN:case a.mobile.keyCode.LEFT:d.refresh(c-j)}}}).keyup(function(){if(d._keySliding)d._keySliding=!1,a(this).removeClass("ui-state-active")});this.refresh()},refresh:function(a, -c,b){if(!this.options.disabled){var e=this.element,f=e[0].nodeName.toLowerCase(),g=f==="input"?parseFloat(e.attr("min")):0,i=f==="input"?parseFloat(e.attr("max")):e.find("option").length-1;if(typeof a==="object"){if(!this.dragging||a.pageX<this.slider.offset().left-8||a.pageX>this.slider.offset().left+this.slider.width()+8)return;a=Math.round((a.pageX-this.slider.offset().left)/this.slider.width()*100)}else a==null&&(a=f==="input"?parseFloat(e.val()):e[0].selectedIndex),a=(parseFloat(a)-g)/(i-g)* -100;if(!isNaN(a)){a<0&&(a=0);a>100&&(a=100);var h=Math.round(a/100*(i-g))+g;h<g&&(h=g);h>i&&(h=i);this.handle.css("left",a+"%");this.handle.attr({"aria-valuenow":f==="input"?h:e.find("option").eq(h).attr("value"),"aria-valuetext":f==="input"?h:e.find("option").eq(h).text(),title:h});f==="select"&&(h===0?this.slider.addClass("ui-slider-switch-a").removeClass("ui-slider-switch-b"):this.slider.addClass("ui-slider-switch-b").removeClass("ui-slider-switch-a"));if(!b)f==="input"?e.val(h):e[0].selectedIndex= -h,c||e.trigger("change")}}},enable:function(){this.element.attr("disabled",!1);this.slider.removeClass("ui-disabled").attr("aria-disabled",!1);return this._setOption("disabled",!1)},disable:function(){this.element.attr("disabled",!0);this.slider.addClass("ui-disabled").attr("aria-disabled",!0);return this._setOption("disabled",!0)}})})(jQuery); -(function(a){a.widget("mobile.collapsible",a.mobile.widget,{options:{expandCueText:" click to expand contents",collapseCueText:" click to collapse contents",collapsed:!1,heading:">:header,>legend",theme:null,iconTheme:"d"},_create:function(){var d=this.element,c=this.options,b=d.addClass("ui-collapsible-contain"),e=d.find(c.heading).eq(0),f=b.wrapInner('<div class="ui-collapsible-content"></div>').find(".ui-collapsible-content"),d=d.closest(":jqmData(role='collapsible-set')").addClass("ui-collapsible-set"); -e.is("legend")&&(e=a('<div role="heading">'+e.html()+"</div>").insertBefore(e),e.next().remove());e.insertBefore(f).addClass("ui-collapsible-heading").append('<span class="ui-collapsible-heading-status"></span>').wrapInner('<a href="#" class="ui-collapsible-heading-toggle"></a>').find("a:eq(0)").buttonMarkup({shadow:!d.length,corners:!1,iconPos:"left",icon:"plus",theme:c.theme}).find(".ui-icon").removeAttr("class").buttonMarkup({shadow:!0,corners:!0,iconPos:"notext",icon:"plus",theme:c.iconTheme}); -d.length?b.jqmData("collapsible-last")&&e.find("a:eq(0), .ui-btn-inner").addClass("ui-corner-bottom"):e.find("a:eq(0)").addClass("ui-corner-all").find(".ui-btn-inner").addClass("ui-corner-all");b.bind("collapse",function(d){!d.isDefaultPrevented()&&a(d.target).closest(".ui-collapsible-contain").is(b)&&(d.preventDefault(),e.addClass("ui-collapsible-heading-collapsed").find(".ui-collapsible-heading-status").text(c.expandCueText).end().find(".ui-icon").removeClass("ui-icon-minus").addClass("ui-icon-plus"), -f.addClass("ui-collapsible-content-collapsed").attr("aria-hidden",!0),b.jqmData("collapsible-last")&&e.find("a:eq(0), .ui-btn-inner").addClass("ui-corner-bottom"))}).bind("expand",function(a){a.isDefaultPrevented()||(a.preventDefault(),e.removeClass("ui-collapsible-heading-collapsed").find(".ui-collapsible-heading-status").text(c.collapseCueText),e.find(".ui-icon").removeClass("ui-icon-plus").addClass("ui-icon-minus"),f.removeClass("ui-collapsible-content-collapsed").attr("aria-hidden",!1),b.jqmData("collapsible-last")&& -e.find("a:eq(0), .ui-btn-inner").removeClass("ui-corner-bottom"))}).trigger(c.collapsed?"collapse":"expand");d.length&&!d.jqmData("collapsiblebound")&&(d.jqmData("collapsiblebound",!0).bind("expand",function(b){a(b.target).closest(".ui-collapsible-contain").siblings(".ui-collapsible-contain").trigger("collapse")}),d=d.find(":jqmData(role='collapsible'):first"),d.first().find("a:eq(0)").addClass("ui-corner-top").find(".ui-btn-inner").addClass("ui-corner-top"),d.last().jqmData("collapsible-last",!0)); -e.bind("vclick",function(a){e.is(".ui-collapsible-heading-collapsed")?b.trigger("expand"):b.trigger("collapse");a.preventDefault()})}})})(jQuery); -(function(a){a.fn.controlgroup=function(d){return this.each(function(){function c(a){a.removeClass("ui-btn-corner-all ui-shadow").eq(0).addClass(f[0]).end().filter(":last").addClass(f[1]).addClass("ui-controlgroup-last")}var b=a.extend({direction:a(this).jqmData("type")||"vertical",shadow:!1},d),e=a(this).find(">legend"),f=b.direction=="horizontal"?["ui-corner-left","ui-corner-right"]:["ui-corner-top","ui-corner-bottom"];a(this).find("input:eq(0)").attr("type");e.length&&(a(this).wrapInner('<div class="ui-controlgroup-controls"></div>'), -a('<div role="heading" class="ui-controlgroup-label">'+e.html()+"</div>").insertBefore(a(this).children(0)),e.remove());a(this).addClass("ui-corner-all ui-controlgroup ui-controlgroup-"+b.direction);c(a(this).find(".ui-btn"));c(a(this).find(".ui-btn-inner"));b.shadow&&a(this).addClass("ui-shadow")})}})(jQuery);(function(a){a.fn.fieldcontain=function(){return this.addClass("ui-field-contain ui-body ui-br")}})(jQuery); -(function(a){var d={};a.widget("mobile.listview",a.mobile.widget,{options:{theme:"c",countTheme:"c",headerTheme:"b",dividerTheme:"b",splitIcon:"arrow-r",splitTheme:"b",inset:!1},_create:function(){var a=this;a.element.addClass(function(b,d){return d+" ui-listview "+(a.options.inset?" ui-listview-inset ui-corner-all ui-shadow ":"")});a.refresh()},_itemApply:function(c,b){b.find(".ui-li-count").addClass("ui-btn-up-"+(c.jqmData("counttheme")||this.options.countTheme)+" ui-btn-corner-all").end().find("h1, h2, h3, h4, h5, h6").addClass("ui-li-heading").end().find("p, dl").addClass("ui-li-desc").end().find(">img:eq(0), .ui-link-inherit>img:eq(0)").addClass("ui-li-thumb").each(function(){b.addClass(a(this).is(".ui-li-icon")? -"ui-li-has-icon":"ui-li-has-thumb")}).end().find(".ui-li-aside").each(function(){var b=a(this);b.prependTo(b.parent())})},_removeCorners:function(a){a.add(a.find(".ui-btn-inner, .ui-li-link-alt, .ui-li-thumb")).removeClass("ui-corner-top ui-corner-bottom ui-corner-br ui-corner-bl ui-corner-tr ui-corner-tl")},refresh:function(c){this._createSubPages();var b=this.options,d=this.element,f=d.jqmData("dividertheme")||b.dividerTheme,g=d.jqmData("splittheme"),i=d.jqmData("spliticon"),h=d.children("li"), -l=a.support.cssPseudoElement||!a.nodeName(d[0],"ol")?0:1;l&&d.find(".ui-li-dec").remove();for(var m=0,o=h.length;m<o;m++){var j=h.eq(m),p="ui-li";if(c||!j.hasClass("ui-li")){var k=j.jqmData("theme")||b.theme,q=j.children("a");if(q.length){var n=j.jqmData("icon");j.buttonMarkup({wrapperEls:"div",shadow:!1,corners:!1,iconpos:"right",icon:q.length>1||n===!1?!1:n||"arrow-r",theme:k});q.first().addClass("ui-link-inherit");q.length>1&&(p+=" ui-li-has-alt",q=q.last(),n=g||q.jqmData("theme")||b.splitTheme, -q.appendTo(j).attr("title",q.text()).addClass("ui-li-link-alt").empty().buttonMarkup({shadow:!1,corners:!1,theme:k,icon:!1,iconpos:!1}).find(".ui-btn-inner").append(a("<span />").buttonMarkup({shadow:!0,corners:!0,theme:n,iconpos:"notext",icon:i||q.jqmData("icon")||b.splitIcon})))}else j.jqmData("role")==="list-divider"?(p+=" ui-li-divider ui-btn ui-bar-"+f,j.attr("role","heading"),l&&(l=1)):p+=" ui-li-static ui-body-"+k}b.inset&&(m===0&&(p+=" ui-corner-top",j.add(j.find(".ui-btn-inner")).find(".ui-li-link-alt").addClass("ui-corner-tr").end().find(".ui-li-thumb").addClass("ui-corner-tl"), -j.next().next().length&&this._removeCorners(j.next())),m===h.length-1&&(p+=" ui-corner-bottom",j.add(j.find(".ui-btn-inner")).find(".ui-li-link-alt").addClass("ui-corner-br").end().find(".ui-li-thumb").addClass("ui-corner-bl"),j.prev().prev().length&&this._removeCorners(j.prev())));l&&p.indexOf("ui-li-divider")<0&&(j.is(".ui-li-static:first")?j:j.find(".ui-link-inherit")).addClass("ui-li-jsnumbering").prepend("<span class='ui-li-dec'>"+l++ +". </span>");j.add(j.children(".ui-btn-inner")).addClass(p); -c||this._itemApply(d,j)}},_idStringEscape:function(a){return a.replace(/[^a-zA-Z0-9]/g,"-")},_createSubPages:function(){var c=this.element,b=c.closest(".ui-page"),e=b.jqmData("url"),f=e||b[0][a.expando],g=c.attr("id"),i=this.options,h="data-"+a.mobile.ns,l=b.find(":jqmData(role='footer')").jqmData("id");typeof d[f]==="undefined"&&(d[f]=-1);g=g||++d[f];a(c.find("li>ul, li>ol").toArray().reverse()).each(function(b){var d=a(this),f=d.attr("id")||g+"-"+b,b=d.parent(),p=a(d.prevAll().toArray().reverse()), -p=p.length?p:a("<span>"+a.trim(b.contents()[0].nodeValue)+"</span>"),k=p.first().text(),f=(e||"")+"&"+a.mobile.subPageUrlKey+"="+f;theme=d.jqmData("theme")||i.theme;countTheme=d.jqmData("counttheme")||c.jqmData("counttheme")||i.countTheme;newPage=d.detach().wrap("<div "+h+"role='page' "+h+"url='"+f+"' "+h+"theme='"+theme+"' "+h+"count-theme='"+countTheme+"'><div "+h+"role='content'></div></div>").parent().before("<div "+h+"role='header' "+h+"theme='"+i.headerTheme+"'><div class='ui-title'>"+k+"</div></div>").after(l? -a("<div "+h+"role='footer' "+h+"id='"+l+"'>"):"").parent().appendTo(a.mobile.pageContainer);newPage.page();d=b.find("a:first");d.length||(d=a("<a />").html(p||k).prependTo(b.empty()));d.attr("href","#"+f)}).listview()}})})(jQuery); -(function(a){a.mobile.listview.prototype.options.filter=!1;a.mobile.listview.prototype.options.filterPlaceholder="Filter items...";a.mobile.listview.prototype.options.filterTheme="c";a(":jqmData(role='listview')").live("listviewcreate",function(){var d=a(this),c=d.data("listview");if(c.options.filter){var b=a("<form>",{"class":"ui-listview-filter ui-bar-"+c.options.filterTheme,role:"search"});a("<input>",{placeholder:c.options.filterPlaceholder}).attr("data-"+a.mobile.ns+"type","search").jqmData("lastval", -"").bind("keyup change",function(){var b=this.value.toLowerCase(),c=null,c=a(this).jqmData("lastval")+"";a(this).jqmData("lastval",b);change=b.replace(RegExp("^"+c),"");c=b.length<c.length||change.length!=b.length-c.length?d.children():d.children(":not(.ui-screen-hidden)");if(b){for(var g,i=!1,h="",l=c.length-1;l>=0;l--)g=a(c[l]),h=g.jqmData("filtertext")||g.text(),g.is("li:jqmData(role=list-divider)")?(g.toggleClass("ui-filter-hidequeue",!i),i=!1):h.toLowerCase().indexOf(b)===-1?g.toggleClass("ui-filter-hidequeue", -!0):i=!0;c.filter(":not(.ui-filter-hidequeue)").toggleClass("ui-screen-hidden",!1);c.filter(".ui-filter-hidequeue").toggleClass("ui-screen-hidden",!0).toggleClass("ui-filter-hidequeue",!1)}else c.toggleClass("ui-screen-hidden",!1)}).appendTo(b).textinput();a(this).jqmData("inset")&&b.addClass("ui-listview-filter-inset");b.insertBefore(d)}})})(jQuery); -(function(a){a.widget("mobile.dialog",a.mobile.widget,{options:{closeBtnText:"Close"},_create:function(){var d=this.element;d.attr("role","dialog").addClass("ui-page ui-dialog ui-body-a").find(":jqmData(role=header)").addClass("ui-corner-top ui-overlay-shadow").prepend("<a href='#' data-"+a.mobile.ns+"icon='delete' data-"+a.mobile.ns+"rel='back' data-"+a.mobile.ns+"iconpos='notext'>"+this.options.closeBtnText+"</a>").end().find('.ui-content:not([class*="ui-body-"])').addClass("ui-body-c").end().find(".ui-content,:jqmData(role='footer')").last().addClass("ui-corner-bottom ui-overlay-shadow"); -d.bind("vclick submit",function(c){c=a(c.target).closest(c.type==="vclick"?"a":"form");if(c.length&&!c.jqmData("transition")){var b=a.mobile.urlHistory.getActive()||{};c.attr("data-"+a.mobile.ns+"transition",b.transition||a.mobile.defaultDialogTransition).attr("data-"+a.mobile.ns+"direction","reverse")}}).bind("pagehide",function(){a(this).find("."+a.mobile.activeBtnClass).removeClass(a.mobile.activeBtnClass)})},close:function(){window.history.back()}})})(jQuery); -(function(a,d){a.widget("mobile.navbar",a.mobile.widget,{options:{iconpos:"top",grid:null},_create:function(){var c=this.element,b=c.find("a"),e=b.filter(":jqmData(icon)").length?this.options.iconpos:d;c.addClass("ui-navbar").attr("role","navigation").find("ul").grid({grid:this.options.grid});e||c.addClass("ui-navbar-noicons");b.buttonMarkup({corners:!1,shadow:!1,iconpos:e});c.delegate("a","vclick",function(){b.not(".ui-state-persist").removeClass(a.mobile.activeBtnClass);a(this).addClass(a.mobile.activeBtnClass)})}})})(jQuery); -(function(a){a.fn.grid=function(d){return this.each(function(){var c=a.extend({grid:null},d),b=a(this).children(),e={solo:1,a:2,b:3,c:4,d:5},c=c.grid;if(!c)if(b.length<=5)for(var f in e)e[f]==b.length&&(c=f);else c="a";e=e[c];a(this).addClass("ui-grid-"+c);b.filter(":nth-child("+e+"n+1)").addClass("ui-block-a");e>1&&b.filter(":nth-child("+e+"n+2)").addClass("ui-block-b");e>2&&b.filter(":nth-child(3n+3)").addClass("ui-block-c");e>3&&b.filter(":nth-child(4n+4)").addClass("ui-block-d");e>4&&b.filter(":nth-child(5n+5)").addClass("ui-block-e")})}})(jQuery); -(function(a,d,c){var b=a("html");a("head");var e=a(d);a(d.document).trigger("mobileinit");if(a.mobile.gradeA()){if(d.blackberry&&!d.WebKitPoint||d.operamini&&Object.prototype.toString.call(d.operamini)==="[object OperaMini]")a.mobile.ajaxEnabled=!1;b.addClass("ui-mobile ui-mobile-rendering");var f=a.mobile.loadingMessage?a("<div class='ui-loader ui-body-a ui-corner-all'><span class='ui-icon ui-icon-loading spin'></span><h1>"+a.mobile.loadingMessage+"</h1></div>"):c;a.extend(a.mobile,{showPageLoadingMsg:function(){if(a.mobile.loadingMessage){var c= -a("."+a.mobile.activeBtnClass).first();f.appendTo(a.mobile.pageContainer).css({top:a.support.scrollTop&&a(d).scrollTop()+a(d).height()/2||c.length&&c.offset().top||100})}b.addClass("ui-loading")},hidePageLoadingMsg:function(){b.removeClass("ui-loading")},pageLoading:function(b){b?a.mobile.hidePageLoadingMsg():a.mobile.showPageLoadingMsg()},initializePage:function(){var b=a(":jqmData(role='page')");b.add(":jqmData(role='dialog')").each(function(){var b=a(this);b.jqmData("url")||b.attr("data-"+a.mobile.ns+ -"url",b.attr("id"))});a.mobile.firstPage=b.first();a.mobile.pageContainer=b.first().parent().addClass("ui-mobile-viewport");a.mobile.showPageLoadingMsg();!a.mobile.hashListeningEnabled||!a.mobile.path.stripHash(location.hash)?a.mobile.changePage(a.mobile.firstPage,{transition:"none",reverse:!0,changeHash:!1,fromHashChange:!0}):e.trigger("hashchange",[!0])}});a(function(){d.scrollTo(0,1);a.mobile.defaultHomeScroll=!a.support.scrollTop||a(d).scrollTop()===1?0:1;a(a.mobile.initializePage);e.load(a.mobile.silentScroll)})}})(jQuery, -this);
\ No newline at end of file diff --git a/addons/web_mobile/static/lib/jquery_mobile/js/jquery.mobile.themeswitcher.js b/addons/web_mobile/static/lib/jquery_mobile/js/jquery.mobile.themeswitcher.js deleted file mode 100644 index 91a7057ba04..00000000000 --- a/addons/web_mobile/static/lib/jquery_mobile/js/jquery.mobile.themeswitcher.js +++ /dev/null @@ -1,37 +0,0 @@ -//quick & dirty theme switcher, written to potentially work as a bookmarklet -(function($){ - $.themeswitcher = function(){ - if( $('[data-'+ $.mobile.ns +'-url=themeswitcher]').length ){ return; } - var themesDir = 'http://jquerymobile.com/test/themes/', - themes = ['default','valencia'], - currentPage = $.mobile.activePage, - menuPage = $( '<div data-'+ $.mobile.ns +'url="themeswitcher" data-'+ $.mobile.ns +'role=\'dialog\' data-'+ $.mobile.ns +'theme=\'a\'>' + - '<div data-'+ $.mobile.ns +'role=\'header\' data-'+ $.mobile.ns +'theme=\'b\'>' + - '<div class=\'ui-title\'>Switch Theme:</div>'+ - '</div>'+ - '<div data-'+ $.mobile.ns +'role=\'content\' data-'+ $.mobile.ns +'theme=\'c\'><ul data-'+ $.mobile.ns +'role=\'listview\' data-'+ $.mobile.ns +'inset=\'true\'></ul></div>'+ - '</div>' ) - .appendTo( $.mobile.pageContainer ), - menu = menuPage.find('ul'); - - //menu items - $.each(themes, function( i ){ - $('<li><a href="#" data-'+ $.mobile.ns +'rel="back">' + themes[ i ].charAt(0).toUpperCase() + themes[ i ].substr(1) + '</a></li>') - .bind("vclick", function(){ - addTheme( themes[i] ); - menuPage.dialog( "close" ); - return false; - }) - .appendTo(menu); - }); - - //remover, adder - function addTheme(theme){ - $('head').append( '<link rel=\'stylesheet\' href=\''+ themesDir + theme +'/\' />' ); - } - - //create page, listview - menuPage.page(); - - }; -})(jQuery);
\ No newline at end of file diff --git a/addons/web_mobile/static/src/css/web_mobile.css b/addons/web_mobile/static/src/css/web_mobile.css deleted file mode 100644 index 2c7061c87a6..00000000000 --- a/addons/web_mobile/static/src/css/web_mobile.css +++ /dev/null @@ -1,29 +0,0 @@ - -.ui-collapsible-content-expanded { - display: block; -} - -.login_error_message { - display: none; - background-color: #9A0404; - border-radius: 12px; - -moz-border-radius: 12px; - -webkit-border-radius: 12px; - color: white; - font-family: Ubuntu, Helvetica, sans-serif; - font-size: 16px; - padding: 5px; - margin-top: 5px; - text-align: center; -} -.login_invalid .login_error_message { - display: block; -} -.login_valid .login_error_message { - display: none; -} -.desc{ - margin:0em 0 0em; - font-size:11px; - font-weight:normal; -} diff --git a/addons/web_mobile/static/src/js/chrome_mobile.js b/addons/web_mobile/static/src/js/chrome_mobile.js deleted file mode 100644 index 1fe731d0b4c..00000000000 --- a/addons/web_mobile/static/src/js/chrome_mobile.js +++ /dev/null @@ -1,352 +0,0 @@ -/*--------------------------------------------------------- - * OpenERP Web Mobile chrome - *---------------------------------------------------------*/ - -openerp.web_mobile.chrome_mobile = function(instance) { - -instance.web_mobile.mobilewebclient = function(element_id) { - // TODO Helper to start mobile webclient rename it instance.web.webclient - var client = new instance.web_mobile.MobileWebClient(element_id); - client.start(); - return client; -}; - -/** - * @deprecated use :class:`instance.web.Widget` - */ -instance.web_mobile.MobileWidget = instance.web.Widget.extend({ - init: function(parent, element_id) { - this._super(parent); - this.element_id = element_id; - this.element_id = this.element_id || _.uniqueId('widget-'); - - var tmp = document.getElementById(this.element_id); - this.setElement(tmp || this._make_descriptive()); - }, - renderElement: function() { - var rendered = this.render(); - if (rendered) { - this.replaceElement($(rendered)); - } - return this; - }, - render: function (additional) { - if (this.template) - return instance.web.qweb.render(this.template, _.extend({widget: this}, additional || {})); - return null; - } -}); - -instance.web_mobile.MobileWebClient = instance.web_mobile.MobileWidget.extend({ - - template: "WebClient", - - init: function(element_id) { - this._super(null, element_id); - this.crashmanager = new instance.web.CrashManager(this); - this.login = new instance.web_mobile.Login(this, "oe_login"); - }, - start: function() { - this._super.apply(this, arguments); - var self = this; - this.session.bind_session().then(function() { - instance.web.qweb.add_template("xml/web_mobile.xml"); - self.$el.html(self.render()); - self.login.start(); - }); - } -}); - -instance.web_mobile.Login = instance.web_mobile.MobileWidget.extend({ - - template: "Login", - - start: function() { - this.has_local_storage = typeof(localStorage) != 'undefined'; - this.remember_creditentials = true; - this.selected_login = null; - this.selected_password = null; - if (this.has_local_storage && this.remember_creditentials) { - this.selected_login = localStorage.getItem('last_login_login_success'); - this.selected_password = localStorage.getItem('last_password_login_success'); - } - var self = this; - jQuery("#oe_header").children().remove(); - this.rpc("/web/database/get_list", {}, function(result) { - self.db_list = result.db_list; - this.setElement($('#'+self.element_id).html(self.render(self))); - if(self.session.db!=""){ - self.$el.find("#database").val(self.session.db); - } - self.$el.find("#login_btn").click(self.on_login); - $.mobile.initializePage(); - }); - this.$el - .removeClass("login_invalid"); - }, - on_login: function(ev) { - ev.preventDefault(); - var self = this; - var $e = this.$el; - var db = $e.find("div select[name=database]").val(); - var login = $e.find("div input[name=login]").val(); - var password = $e.find("div input[name=password]").val(); - //$e.hide(); - // Should hide then call callback - this.session.session_authenticate(db, login, password).then(function() { - if(self.session.session_is_valid()) { - if (self.has_local_storage) { - if(self.remember_creditentials) { - localStorage.setItem('last_db_login_success', db); - localStorage.setItem('last_login_login_success', login); - localStorage.setItem('last_password_login_success', password); - } else { - localStorage.setItem('last_db_login_success', ''); - localStorage.setItem('last_login_login_success', ''); - localStorage.setItem('last_password_login_success', ''); - } - } - self.on_login_valid(); - } - }); - this.session.on_session_invalid.add({ - callback: function () { - self.on_login_invalid(); - }, - unique: true - }); - }, - on_login_invalid: function() { - this.$el - .removeClass("login_valid") - .addClass("login_invalid") - .show(); - }, - on_login_valid: function() { - this.$el - .removeClass("login_invalid") - .addClass("login_valid"); - //.hide(); - if(!$('#oe_menu').html().length){ - this.menu = new instance.web_mobile.Menu(this, "oe_menu", "oe_secondary_menu"); - this.menu.start(); - }else{ - $.mobile.changePage("#oe_menu", "slide", false, true); - } - }, - do_ask_login: function(continuation) { - this.on_login_invalid(); - this.on_login_valid.add({ - position: "last", - unique: true, - callback: continuation - }); - } -}); - -instance.web_mobile.Header = instance.web_mobile.MobileWidget.extend({ - - template: "Header", - - init: function(session, element_id) { - this._super(session, element_id); - }, - start: function() { - this.$el.html(this.render(this)); - } -}); - -instance.web_mobile.Footer = instance.web_mobile.MobileWidget.extend({ - - template: "Footer", - - init: function(session, element_id) { - this._super(session, element_id); - }, - start: function() { - this.$el.html(this.render(this)); - } -}); - -instance.web_mobile.Shortcuts = instance.web_mobile.MobileWidget.extend({ - - template: "Shortcuts", - - init: function(session, element_id) { - this._super(session, element_id); - }, - start: function() { - var self = this; - this.rpc('/web/session/sc_list',{} ,function(res){ - self.$el.html(self.render({'sc': res})); - self.$el.find("[data-role=header]").find('h1').html('Favourite'); - self.$el.find("[data-role=header]").find('#home').click(function(){ - $.mobile.changePage("#oe_menu", "slide", false, true); - }); - self.$el.find('#content').find("a").click(self.on_clicked); - $.mobile.changePage("#oe_shortcuts", "slide", false, true); - }); - }, - on_clicked: function(ev) { - var self = this; - ev.preventDefault(); - ev.stopPropagation(); - $shortcut = $(ev.currentTarget); - id = $shortcut.data('menu'); - res_id = $shortcut.data('res'); - if(!$('[id^="oe_list_'+res_id+'"]').html()){ - $('<div id="oe_list_'+res_id+'" data-role="page" data-url="oe_list_'+res_id+'"> </div>').appendTo('#moe'); - this.listview = new instance.web_mobile.ListView(self, "oe_list_"+res_id, res_id); - this.listview.start(); - }else{ - $.mobile.changePage('#oe_list_'+res_id, "slide", false, true); - } - ev.preventDefault(); - ev.stopPropagation(); - jQuery("#oe_header").find("h1").html($shortcut.data('name')); - } -}); - -instance.web_mobile.Menu = instance.web_mobile.MobileWidget.extend({ - - template: "Menu", - - init: function(session, element_id, secondary_menu_id) { - this._super(session, element_id); - this.secondary_menu_id = secondary_menu_id; - this.$secondary_menu = $("#" + secondary_menu_id); - this.menu = false; - }, - start: function() { - this._super.apply(this, arguments); - this.rpc("/web/menu/load", {}, this.on_loaded); - }, - on_loaded: function(data) { - var self = this; - this.data = data; - this.header = new instance.web_mobile.Header(this, "oe_header"); - this.header.start(); - this.footer = new instance.web_mobile.Footer(this, "oe_footer"); - this.footer.start(); - this.$el.html(this.render(this.data)); - this.$el.find("[data-role=header]").find('h1').html('Applications'); - this.$el.find("[data-role=header]").find('#home').hide(); - this.$el.find("[data-role=footer]").find('#shrotcuts').click(function(){ - if(!$('#oe_shortcuts').html().length){ - this.shortcuts = new instance.web_mobile.Shortcuts(self, "oe_shortcuts"); - this.shortcuts.start(); - }else{ - $.mobile.changePage($("#oe_shortcuts"), "slide", false, true); - } - }); - this.$el.find("[data-role=footer]").find('#preference').click(function(){ - if(!$('#oe_options').html().length){ - this.options = new instance.web_mobile.Options(self, "oe_options"); - this.options.start(); - }else{ - $.mobile.changePage("#oe_options", "slide", false, true); - } - }); - this.$el.add(this.$secondary_menu).find("#content").find('a').click(this.on_menu_click); - $.mobile.changePage("#oe_menu", "slide", false, true); - }, - on_menu_click: function(ev, id) { - var $menu = $(ev.currentTarget); - id = $menu.data('menu'); - ev.preventDefault(); - ev.stopPropagation(); - for (var i = 0; i < this.data.data.children.length; i++) { - if (this.data.data.children[i].id == id) { - this.children = this.data.data.children[i]; - } - } - this.$el - .removeClass("login_valid") - .addClass("secondary_menu"); - if(!$('[id^="oe_sec_menu_'+id+'"]').html()){ - $('<div id="oe_sec_menu_'+id+'" data-role="page" data-url="oe_sec_menu_'+id+'"> </div>').appendTo('#moe'); - this.secondary = new instance.web_mobile.Secondary(this, "oe_sec_menu_"+id, this.children); - this.secondary.start(); - }else{ - $.mobile.changePage('#oe_sec_menu_'+id, "slide", false, true); - } - } -}); - -instance.web_mobile.Secondary = instance.web_mobile.MobileWidget.extend({ - - template: "Menu.secondary", - - init: function(session, element_id, secondary_menu_id) { - this._super(session, element_id); - this.data = secondary_menu_id; - }, - start: function(ev, id) { - var self = this; - var v = { menu : this.data }; - this.$el.html(this.render(v)); - this.$el.find("[data-role=header]").find("h1").html(this.data.name); - this.$el.add(this.$secondary_menu).find('#content').find("a").click(this.on_menu_click); - this.$el.find("[data-role=header]").find('#home').click(function(){ - $.mobile.changePage("#oe_menu", "slide", false, true); - }); - $.mobile.changePage("#"+this.element_id, "slide", false, true); - }, - on_menu_click: function(ev, id) { - $menu = $(ev.currentTarget); - id = $menu.data('menu'); - name = $menu.data('name'); - ev.preventDefault(); - ev.stopPropagation(); - var child_len = 0; - for (var i = 0; i < this.data.children.length; i++) { - for (var j=0; j < this.data.children[i].children.length; j++) { - if (this.data.children[i].children[j].id == id) { - this.children = this.data.children[i].children[j]; - child_len = this.children.children.length; - } - } - } - if (child_len > 0) { - this.$el - .addClass("secondary_menu"); - if(!$('[id^="oe_sec_menu_'+id+'"]').html()){ - $('<div id="oe_sec_menu_'+id+'" data-role="page" data-url="oe_sec_menu_'+id+'"> </div>').appendTo('#moe'); - this.secondary = new instance.web_mobile.Secondary(this, "oe_sec_menu_"+id, this.children); - this.secondary.start(); - }else{ - $.mobile.changePage('#oe_sec_menu_'+id, "slide", false, true); - } - }else { - if(!$('[id^="oe_list_'+id+'"]').html()){ - $('<div id="oe_list_'+id+'" data-role="page" data-url="oe_list_'+id+'"> </div>').appendTo('#moe'); - this.listview = new instance.web_mobile.ListView(this, "oe_list_"+id, id); - this.listview.start(); - }else{ - $.mobile.changePage('#oe_list_'+id, "slide", false, true); - } - } - jQuery("#oe_header").find("h1").html($menu.data('name')); - } -}); - -instance.web_mobile.Options = instance.web_mobile.MobileWidget.extend({ - - template: "Options", - - start: function() { - var self = this; - this.$el.html(this.render(this)); - this.$el.find("[data-role=header]").find('h1').html('Preference'); - this.$el.find("[data-role=header]").find('#home').click(function(){ - $.mobile.changePage("#oe_menu", "slide", false, true); - }); - this.$el.find("[data-role=content]").find('a').click(function(){ - $('#oe_login').empty(); - window.location.replace('/mobile'); - }); - $.mobile.changePage("#oe_options", "slide", false, true); - } -}); - -}; diff --git a/addons/web_mobile/static/src/js/form_mobile.js b/addons/web_mobile/static/src/js/form_mobile.js deleted file mode 100644 index a5e02f418bb..00000000000 --- a/addons/web_mobile/static/src/js/form_mobile.js +++ /dev/null @@ -1,215 +0,0 @@ -/*--------------------------------------------------------- - * OpenERP Web Mobile Form View - *---------------------------------------------------------*/ - -openerp.web_mobile.form_mobile = function (instance) { - -instance.web_mobile.FormView = instance.web_mobile.MobileWidget.extend({ - - template: 'FormView', - - init: function(session, element_id, list_id, action, head_title, resmodel, viewid) { - this._super(session, element_id); - this.list_id = list_id; - this.action = action; - this.head_title = head_title; - this.resmodel = resmodel; - this.viewid = viewid; - }, - start: function() { - var self = this; - var id = this.list_id; - var model = this.action.res_model || this.resmodel; - if(this.action){ - var view_id = this.action.views[1][0]; - }else{ - var view_id = this.viewid; - } - this.dataset = new instance.web.DataSetSearch(this, model, null, null); - var context = new instance.web.CompoundContext(this.dataset.get_context()); - this.dataset.read_slice([]).then(function (result) { - for (var i = 0; i < result.length; i++) { - if (result[i].id == id) { - self.datarecord = result[i]; - } - } - self.rpc("/web/view/load", {"model": model, "view_id": view_id, "view_type": "form", context: context}, self.on_loaded) - }); - }, - on_loaded: function(result) { - var self = this; - var fields = result.fields; - var view_fields = result.arch.children; - var get_fields = this.get_fields(view_fields); - var values = self.datarecord; - for (var j = 0; j < view_fields.length; j++) { - if (view_fields[j].tag == 'notebook') { - var notebooks = view_fields[j]; - } - } - self.hidden_fields(get_fields,fields); - self.$el.html(self.render({'get_fields': get_fields, 'notebooks': notebooks || false, 'fields' : fields, 'values' : values ,'temp_flag':'1'})); - self.$el.find("[data-role=header]").find('h1').html(self.head_title); - self.$el.find("[data-role=header]").find('#home').click(function(){ - $.mobile.changePage("#oe_menu", "slide", false, true); - }); - self.$el.find('[data-role=collapsible-set]').find('[data-role=collapsible]').each(function(i){ - for (var k = 0; k < notebooks.children.length; k++) { - if (notebooks.children[k].attrs.string == $(this).attr('id')) { - get_fields_notebook = self.get_fields(notebooks.children[k].children); - self.hidden_fields(get_fields_notebook,fields); - $(this).find('div#page_content').html(self.render({'get_fields': get_fields_notebook,'fields' : fields, 'values' : values})); - } - } - }); - self.$el.find('#o2m_m2m').click(function(ev) { - ev.preventDefault(); - ev.stopPropagation(); - var relational = $(this).attr('for'); - var rel_field = fields[relational]; - var rel_ids = values[relational]; - var head = rel_field.string; - if (rel_ids) { - var list_ids = []; - var datasearch = new instance.web.DataSetSearch(self, rel_field.relation, rel_field.context); - datasearch.domain=[['id', 'in', rel_ids]]; - datasearch.read_slice(['name'], {context:rel_field.context, domain: datasearch.domain, limit:80}).then(function(listrec){ - _.each(listrec, function(i) { - list_ids.push(i.id); - }); - _.extend(rel_field.context,{"html_name_get" : true}); - var dataset = new instance.web.DataSet(self, rel_field.relation,rel_field.context); - dataset.name_get(list_ids,function(res){ - var additional = ""; - if(res['html_name_get']){ - additional = res['display']; - } - if(!$('[id^="oe_list_'+relational+'_'+self.element_id+'"]').html()){ - $('<div id="oe_list_'+relational+'_'+self.element_id+'" data-role="page" data-url="oe_list_'+relational+'_'+self.element_id+'"> </div>').appendTo('#moe'); - $('[id^="oe_list_'+relational+'_'+self.element_id+'"]').html(instance.web.qweb.render("ListView", {'records' : res,'data': additional})); - $('[id^="oe_list_'+relational+'_'+self.element_id+'"]').find("[data-role=header]").find('h1').html(head); - $('[id^="oe_list_'+relational+'_'+self.element_id+'"]').find("[data-role=header]").find('#home').click(function(){ - $.mobile.changePage("#oe_menu", "slide", false, true); - }); - $('[id^="oe_list_'+relational+'_'+self.element_id+'"]').find("a#list-id").click(function(ev){ - ev.preventDefault(); - ev.stopPropagation(); - var head_title = $(this).text(); - var listid = $(ev.currentTarget).data('id'); - if(!$('[id^="oe_form_'+listid+rel_field.relation+'"]').html()){ - $('<div id="oe_form_'+listid+rel_field.relation+'" data-role="page" data-url="oe_form_'+listid+rel_field.relation+'"> </div>').appendTo('#moe'); - this.formview = new instance.web_mobile.FormView(self, "oe_form_"+listid+rel_field.relation, listid, '', head, rel_field.relation, false); - this.formview.start(); - }else{ - $.mobile.changePage('#oe_form_'+listid+rel_field.relation, "slide", false, true); - } - }); - $.mobile.changePage("#oe_list_"+relational+"_"+self.element_id, "slide", false, true); - $('[id^="oe_list_'+relational+'_'+self.element_id+'"]').find("a#list-id").find('span').addClass('desc'); - }else{ - $.mobile.changePage("#oe_list_"+relational+"_"+self.element_id, "slide", false, true); - } - }); - }); - } - }); - self.$el.find('#m2o_btn').click(this.open_m2o_form); - $.mobile.changePage("#"+self.element_id, "slide", false, true); - self.formatdata('', '', '', '',self.element_id,'slider'); - }, - open_m2o_form : function(ev) { - ev.preventDefault(); - ev.stopPropagation(); - var head = $(this).find('a').attr('name'); - var selected_id = $(this).find('a').attr('value'); - var select_model = $(this).attr('for'); - if(selected_id){ - if(!$('[id^="oe_form_'+selected_id+select_model+'"]').html()){ - $('<div id="oe_form_'+selected_id+select_model+'" data-role="page" data-url="oe_form_'+selected_id+select_model+'"> </div>').appendTo('#moe'); - this.formview = new instance.web_mobile.FormView(self, "oe_form_"+selected_id+select_model, selected_id, '', head, select_model, false); - this.formview.start(); - }else{ - $.mobile.changePage('#oe_form_'+selected_id+select_model, "slide", false, true); - } - } - }, - get_fields: function(view_fields, fields) { - this.fields = fields || []; - for (var i=0; i < view_fields.length; i++){ - if (view_fields[i].tag == 'field') { - this.fields.push(view_fields[i]); - } - if (view_fields[i].tag == 'group') { - this.get_fields(view_fields[i].children, this.fields); - } - if (view_fields[i].tag == 'level') { - this.get_fields(view_fields[i].children, this.fields); - } - if (view_fields[i].tag == 'page') { - this.get_fields(view_fields[i].children, this.fields); - } - } - return this.fields; - }, - formatdata: function(getfields, fields, result, data, id, flag){ - if(flag == "element") { - for(var i = 0; i < getfields.length; i++) { - if (getfields[i].attrs.widget == "progressbar") { - $("#progress").progressbar({value: data[getfields[i].attrs.name]}) - } - $('[id^="'+id+'"]').find('input').each(function() { - // Set Date and Datetime field for main form - if($(this).attr('id') == getfields[i].attrs.name) { - if(fields[getfields[i].attrs.name].type == "date") { - $("#"+getfields[i].attrs.name).datepicker(); - }else if(fields[getfields[i].attrs.name].type == "datetime" || fields[getfields[i].attrs.name].type == "time") { - $("#"+getfields[i].attrs.name).datetimepicker(); - } - // Temp: Set as disabled - $("#"+getfields[i].attrs.name).attr('disabled', 'true'); - if(result.fields[getfields[i].attrs.name]){ - var dateresult = instance.web.format_value(data[getfields[i].attrs.name], {"widget": result.fields[getfields[i].attrs.name].type}); - $(this).val(dateresult); - } - } - $('[id^="'+id+'"]').find('#website').each(function(){ - $(this).css('display','inline-block'); - $(this).css('width','60%'); - }); - $('[id^="'+id+'"]').find('#email').each(function(){ - $(this).css('display','inline-block'); - $(this).css('width','60%'); - }); - $('[id^="'+id+'"]').find('#email_from').each(function(){ - $(this).css('display','inline-block'); - $(this).css('width','60%'); - }); - }); - // Temp: Selection set as disabled - $('[id^="'+id+'"]').find('select').each(function() { - $(this).find('option').attr('disabled', 'true') - }); - } - } - if(flag == "slider") { - $('[id^="'+id+'"]').find('#slider').each(function() { - $(this).slider({ disabled: "true" }); - }); - $('[id^="'+id+'"]').find('.ui-selectmenu').each(function(){ - $(this).click(function() { - $(this).css('top', '-9999px'); - $(this).css('left', '-9999px'); - }); - }); - } - }, - hidden_fields: function(get_fields, fields) { - for(var i=0;i<get_fields.length;i++){ - if(get_fields[i].attrs.invisible){ - fields[get_fields[i].attrs.name].type='hidden'; - } - } - } -}); - -}; diff --git a/addons/web_mobile/static/src/js/list_mobile.js b/addons/web_mobile/static/src/js/list_mobile.js deleted file mode 100644 index 7c39efb17f0..00000000000 --- a/addons/web_mobile/static/src/js/list_mobile.js +++ /dev/null @@ -1,74 +0,0 @@ -/*--------------------------------------------------------- - * OpenERP Web Mobile List View - *---------------------------------------------------------*/ - -openerp.web_mobile.list_mobile = function (instance) { - -instance.web_mobile.ListView = instance.web_mobile.MobileWidget.extend({ - - template: 'ListView', - - init: function(session, element_id, list_id) { - this._super(session, element_id); - this.list_id = list_id; - }, - start: function() { - this.rpc('/web/menu/action', {'menu_id': this.list_id}, this.on_menu_action_loaded); - }, - on_menu_action_loaded: function(data) { - var self = this; - if (data.action.length) { - this.action = data.action[0][2]; - return this.rpc('/web/listview/load', { - model: this.action.res_model, - view_id: this.action.views[0][0], - view_type: "tree", - context: this.action.context, - toolbar: false - }, this.on_search_data); - } - }, - on_search_data: function(ev){ - var self = this; - var list_ids = []; - var datasearch = new instance.web.DataSetSearch(self, self.action.res_model,self.action.context); - datasearch.domain = self.action.domain; - datasearch.read_slice(['name'], {context:datasearch.context, domain: datasearch.domain, limit:80}).then(function(listresult){ - _.each(listresult, function(i) { - list_ids.push(i.id); - }); - _.extend(self.action.context,{"html_name_get" : true}); - var dataset = new instance.web.DataSet(self, datasearch.model,datasearch.context); - dataset.name_get(list_ids,function(res){ - var additional = ""; - if(res['html_name_get']){ - additional = res['display']; - } - self.$el.html(self.render({'records': res, 'data': additional })); - self.$el.find("[data-role=header]").find('h1').html(self.action.name); - self.$el.find("[data-role=header]").find('#home').click(function(){ - $.mobile.changePage("#oe_menu", "slide", false, true); - }); - self.$el.find("a#list-id").click(self.on_list_click); - $.mobile.changePage("#"+self.element_id, "slide", false, true); - self.$el.find("a#list-id").find('span').addClass('desc'); - }); - }); - }, - on_list_click: function(ev) { - var $record = $(ev.currentTarget); - var self = this; - ev.preventDefault(); - ev.stopPropagation(); - id = $record.data('id'); - head_title = $.trim($record.text()); - if(!$('[id^="oe_form_'+id+this.action.res_model+'"]').html()){ - $('<div id="oe_form_'+id+this.action.res_model+'" data-role="page" data-url="oe_form_'+id+this.action.res_model+'"> </div>').appendTo('#moe'); - this.formview = new instance.web_mobile.FormView(this, "oe_form_"+id+this.action.res_model, id, this.action, head_title, '' ,''); - this.formview.start(); - }else{ - $.mobile.changePage('#oe_form_'+id+this.action.res_model, "slide", false, true); - } - } - }); -}; diff --git a/addons/web_mobile/static/src/js/web_mobile.js b/addons/web_mobile/static/src/js/web_mobile.js deleted file mode 100644 index 119ffe1916f..00000000000 --- a/addons/web_mobile/static/src/js/web_mobile.js +++ /dev/null @@ -1,9 +0,0 @@ -/*--------------------------------------------------------- - * OpenERP Web Mobile - *---------------------------------------------------------*/ - -openerp.web_mobile = function(instance) { - openerp.web_mobile.chrome_mobile(instance); - openerp.web_mobile.list_mobile(instance); - openerp.web_mobile.form_mobile(instance); -}; diff --git a/addons/web_mobile/static/src/web_mobile.html b/addons/web_mobile/static/src/web_mobile.html deleted file mode 100755 index 5e811f99b48..00000000000 --- a/addons/web_mobile/static/src/web_mobile.html +++ /dev/null @@ -1,66 +0,0 @@ -<!DOCTYPE html>
-<html style="height: 100%">
-<head>
- <meta charset="utf-8" />
- <title>OpenERP Web Mobile</title>
-
- <link rel="stylesheet" href="/web_mobile/static/lib/jquery_mobile/css/jquery-ui-1.8.9.custom.css"/>
- <link rel="stylesheet" href="/web_mobile/static/lib/jquery_mobile/css/jquery.mobile-1.0a4.1.css"/>
- <link rel="stylesheet" href="/web_mobile/static/src/css/web_mobile.css"/>
-
- <script type="text/javascript" src="/web/static/lib/jquery/jquery-1.6.4.js"></script>
- <script type="text/javascript" src="/web/static/lib/jquery.ui/js/jquery-ui-1.8.17.custom.min.js"></script>
- <script type="text/javascript" src="/web/static/lib/jquery.ba-bbq/jquery.ba-bbq.js"></script>
- <script type="text/javascript" src="/web/static/lib/underscore/underscore.js"></script>
- <script type="text/javascript" src="/web/static/lib/underscore/underscore.string.js"></script>
- <script type="text/javascript" src="/web/static/lib/py.js/lib/py.js"></script>
- <script type="text/javascript" src="/web_mobile/static/lib/jquery_mobile/js/jquery.mobile-1.0a4.1.js"></script>
-
- <script type="text/javascript" src="/web/static/lib/datejs/globalization/en-US.js"></script>
- <script type="text/javascript" src="/web/static/lib/datejs/core.js"></script>
- <script type="text/javascript" src="/web/static/lib/datejs/extras.js"></script>
- <script type="text/javascript" src="/web/static/lib/datejs/parser.js"></script>
- <script type="text/javascript" src="/web/static/lib/datejs/sugarpak.js"></script>
- <script type="text/javascript" src="/web/static/lib/datejs/time.js"></script>
- <script type="text/javascript" src="/web/static/lib/jquery.ui.timepicker/js/jquery-ui-timepicker-addon.js"></script>
-
- <script type="text/javascript" src="/web/static/lib/qweb/qweb2.js"></script>
- <script type="text/javascript" src="/web/static/lib/novajs/src/nova.js"></script>
- <script type="text/javascript" src="/web/static/src/js/boot.js"></script>
- <script type="text/javascript" src="/web/static/src/js/core.js"></script>
- <script type="text/javascript" src="/web/static/src/js/dates.js"></script>
- <script type="text/javascript" src="/web/static/src/js/formats.js"></script>
- <script type="text/javascript" src="/web/static/src/js/chrome.js"></script>
- <script type="text/javascript" src="/web/static/src/js/views.js"></script>
- <script type="text/javascript" src="/web/static/src/js/data.js"></script>
- <script type="text/javascript" src="/web/static/src/js/data_export.js"></script>
- <script type="text/javascript" src="/web/static/src/js/data_import.js"></script>
- <script type="text/javascript" src="/web/static/src/js/search.js"></script>
- <script type="text/javascript" src="/web/static/src/js/view_form.js"></script>
- <script type="text/javascript" src="/web/static/src/js/view_page.js"></script>
- <script type="text/javascript" src="/web/static/src/js/view_list.js"></script>
- <script type="text/javascript" src="/web/static/src/js/view_list_editable.js"></script>
- <script type="text/javascript" src="/web/static/src/js/view_tree.js"></script>
- <script type="text/javascript" src="/web/static/src/js/view_editor.js"></script>
-
- <script type="text/javascript" src="/web_mobile/static/src/js/web_mobile.js"></script>
- <script type="text/javascript" src="/web_mobile/static/src/js/chrome_mobile.js"></script>
- <script type="text/javascript" src="/web_mobile/static/src/js/list_mobile.js"></script>
- <script type="text/javascript" src="/web_mobile/static/src/js/form_mobile.js"></script>
-
- <script type="text/javascript">
- var QWeb;
- $(function() {
- if (window.location.pathname != "/web_mobile/static/src/web_mobile.html") {
- window.location.replace('/mobile');
- }
- var oe = openerp.init();
- openerp.web_mobile(oe);
- oe.web_mobile.mobilewebclient("moe");
- });
- </script>
-</head>
-<body>
- <div id="moe" class="openerp"></div>
-</body>
-</html>
diff --git a/addons/web_mobile/static/src/xml/web_mobile.xml b/addons/web_mobile/static/src/xml/web_mobile.xml deleted file mode 100644 index e26cc916ae6..00000000000 --- a/addons/web_mobile/static/src/xml/web_mobile.xml +++ /dev/null @@ -1,332 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- vim:fdl=1: ---> -<templates id="template" xml:space="preserve"> - -<t t-name="WebClient"> - <div data-role="page" id="oe_login"></div> - <div id="oe_header" /> - <div id="oe_footer" /> - <div data-role="page" id="oe_shortcuts"></div> - <div data-role="page" id="oe_menu"></div> - <div data-role="page" id="oe_options"></div> -</t> - -<t t-name="Login"> - <div data-role="header" data-theme="b" data-position="fixed"> - <h1>OpenERP</h1> - </div> - <div data-role="content"> - <fieldset> - <div data-role="fieldcontain"> - <label for="database" class="select">Database:</label> - <select id="database" name="database" data-native-menu="false"> - <t t-if="db_list"> - <t t-foreach="db_list" t-as="opt"> - <option t-att-value="opt"><t t-esc="opt"/></option> - </t> - </t> - </select> - <label for="login">Login:</label> - <input type="text" id="login" name="login" t-att-value="selected_login || ''" /> - <label for="password">Password:</label> - <input type="password" id="password" name="password" t-att-value="selected_password || ''" /> - <a id="login_btn" data-theme="c" href="#" data-role="button">Login</a> - <div class="login_error_message ui-btn-inner ui-btn-corner-all"> - <span class="ui-btn-text">Bad username or password</span> - </div> - </div> - </fieldset> - </div> - <div data-role="footer" data-theme="b" data-position="fixed"> - <h1>Powered by openerp.com</h1> - </div> -</t> - -<t t-name="Header"> - <div data-role="header" data-theme="b" data-position="fixed"> - <h1></h1> - <a id="home" class="ui-btn-right" data-iconpos="notext" data-icon="home" href="#" title="Home" data-theme="b"></a> - </div> -</t> - -<t t-name="Footer"> - <div data-role="footer" data-theme="b" data-position="fixed"> - <div data-role="navbar"> - <ul> - <li><a id="shrotcuts" href="#" title="Favourite" data-theme="b" data-icon="star" >Favourite</a></li> - <li><a id="preference" href="#" title="Preference" data-theme="b" data-icon="gear">Preference</a></li> - </ul> - </div> - </div> -</t> - -<t t-name="Shortcuts"> - <t t-call="Header" /> - <div id="content" data-role="content"> - <ul data-role="listview" data-inset="true"> - <li data-theme="c" t-foreach="sc" t-as="opt"> - <a href="#" t-att-data-menu="opt.id" t-att-data-name="opt.name" t-att-data-res="opt.res_id"> - <span><t t-esc="opt.name"/></span> - </a> - </li> - </ul> - </div> -</t> - -<t t-name="Menu"> - <t t-call="Header" /> - <div id="content" data-role="content"> - <ul data-role="listview" data-inset="true"> - <li data-theme="c" t-foreach="data.children" t-as="menu"> - <a href="#" t-att-data-menu="menu.id" t-att-data-name="menu.name"> - <span><t t-esc="menu.name"/></span> - </a> - </li> - </ul> - </div> - <t t-call="Footer" /> -</t> - -<t t-name="Menu.secondary"> - <t t-call="Header" /> - <div id="content" data-role="content"> - <t t-foreach="menu.children" t-as="menu1" > - <ul data-dividertheme="b" data-theme="c" data-inset="true" data-role="listview"> - <li data-role="list-divider"> - <t t-if="(menu1.children.length)"> - <t t-esc="menu1.name"/> - </t> - <t t-if="!(menu1.children.length)"> - <a href="#" t-attf-id="menu_#{menu1.id}" t-att-data-menu="menu1.id" t-att-data-name="menu1.name"> - <t t-esc="menu1.name"/> - </a> - </t> - </li> - <t t-if="menu1.children.length"> - <li data-theme="c" t-foreach="menu1.children" t-as="childmenu" > - <a href="#" t-attf-id="menu_#{childmenu.id}" t-att-data-menu="childmenu.id" t-att-data-name="childmenu.name"> - <t t-esc="childmenu.name" /> - </a> - </li> - </t> - </ul> - </t> - </div> -</t> - -<t t-name="Options"> - <t t-call="Header" /> - <div data-role="content"> - <ul data-dividertheme="b" data-theme="c" data-inset="true" data-role="listview"> - <li data-theme="c"> - <a id="logout">Logout</a> - </li> - </ul> - </div> -</t> - -<t t-name="ListView"> - <t t-call="Header" /> - <div id="content" data-role="content"> - <t t-if="!(records.length>0)"> - There are no records to show. - </t> - - <t t-if="records.length>0"> - <ul data-role="listview" data-inset="true" data-theme="d" data-filter="true"> - <li data-theme="c" t-foreach="records" t-as="record"> - <a id="list-id" t-att-data-id="record[0]" href="#"> - <t t-foreach="record[1].split(',')" t-as="data1"> - <t t-if="record[1].split(',')[0]==data1"> - <t t-esc="data1" /><br/> - </t> - <t t-if="record[1].split(',')[0]!=data1"> - <span> - <t t-esc="data1" /> - </span> - </t> - </t> - </a> - <t t-foreach="data" t-as="data1"> - <t t-esc="data1[0]" /> - </t> - </li> - </ul> - </t> - </div> -</t> - -<t t-name="FormView"> - <t t-if="temp_flag"> - <t t-call="Header" /> - </t> - <div data-role="content"> - <form> - <t t-foreach="get_fields" t-as="field"> - <div data-role="fieldcontain"> - <t t-if="fields[field.attrs.name].type == 'char'"> - <label t-att-for="field.attrs.name"> - <t t-if="!(field.attrs.string)" t-esc="fields[field.attrs.name].string"></t> - <t t-if="field.attrs.string" t-esc="field.attrs.string"></t>: - </label> - <t t-if="values[field.attrs.name]"> - <input type="text" t-att-id="field.attrs.name" readonly="true" t-att-value="values[field.attrs.name]"/> - </t> - <t t-if="!(values[field.attrs.name])"> - <input type="text" value="" readonly="true" t-att-id="field.attrs.name"/> - </t> - <t t-if="(field.attrs.name == 'email' or field.attrs.name == 'email_from') and values[field.attrs.name]"> - <a t-att-href="'mailto:'+values[field.attrs.name]"><img src="/web/static/src/img/icons/terp-mail-message-new.png" /></a> - </t> - <t t-if="field.attrs.name == 'website' and values[field.attrs.name]"> - <a t-att-href="values[field.attrs.name]"><img src="/web/static/src/img/icons/gtk-ok.png" title="Open this resource"/></a> - </t> - </t> - <t t-if="fields[field.attrs.name].type == 'text' or fields[field.attrs.name].type == 'text_wiki'"> - <label for=""> - <t t-if="!(field.attrs.string)" t-esc="fields[field.attrs.name].string"></t> - <t t-if="field.attrs.string" t-esc="field.attrs.string"></t>: - </label> - <textarea name="" id="" readonly="true"></textarea> - </t> - <t t-if="fields[field.attrs.name].type == 'integer'"> - <label t-att-for="field.attrs.name"> - <t t-if="!(field.attrs.string)" t-esc="fields[field.attrs.name].string"></t> - <t t-if="field.attrs.string" t-esc="field.attrs.string"></t>: - </label> - <t t-if="values[field.attrs.name]"> - <input t-att-id="field.attrs.name" type="text" t-att-value="values[field.attrs.name]" readonly="true"/> - </t> - <t t-if="!values[field.attrs.name]" readonly="true"> - <input t-att-id="field.attrs.name" type="text" value=""/> - </t> - </t> - <t t-if="fields[field.attrs.name].type == 'float_time'"> - <label t-att-for="field.attrs.name"> - <t t-if="!(field.attrs.string)" t-esc="fields[field.attrs.name].string"></t> - <t t-if="field.attrs.string" t-esc="field.attrs.string"></t>: - </label> - <t t-if="values[field.attrs.name]"> - <input t-att-id="field.attrs.name" type="text" t-att-value="values[field.attrs.name]" readonly="true"/> - </t> - <t t-if="!values[field.attrs.name]" readonly="true"> - <input t-att-id="field.attrs.name" type="text" value=""/> - </t> - </t> - <t t-if="fields[field.attrs.name].type == 'float'"> - <label t-att-for="field.attrs.name"> - <t t-if="!(field.attrs.string)" t-esc="fields[field.attrs.name].string"></t> - <t t-if="field.attrs.string" t-esc="field.attrs.string"></t>: - </label> - <t t-if="values[field.attrs.name] and field.attrs.name=='progress_rate'"> - <div id="progress" value="" title="Percent of tasks closed according to total of tasks to do..."></div> - </t> - <t t-if="!(values[field.attrs.name]) and field.attrs.name=='progress_rate'"> - <div id="progress" value="" title="Percent of tasks closed according to total of tasks to do..."></div> - </t> - <t t-if="values[field.attrs.name] and field.attrs.name!='progress_rate'"> - <input t-att-id="field.attrs.name" type="text" t-att-value="values[field.attrs.name]" readonly="true"/> - </t> - <t t-if="!values[field.attrs.name] and field.attrs.name!='progress_rate'" readonly="true"> - <input t-att-id="field.attrs.name" type="text" value=""/> - </t> - </t> - <t t-if="fields[field.attrs.name].type == 'date'"> - <label t-att-for="field.attrs.name"> - <t t-if="!(field.attrs.string)" t-esc="fields[field.attrs.name].string"></t> - <t t-if="field.attrs.string" t-esc="field.attrs.string"></t>: - </label> - <t t-if="values[field.attrs.name]"> - <input t-att-id="field.attrs.name" readonly="true" type="text" data-role="datebox" t-att-value="values[field.attrs.name]"/> - </t> - <t t-if="!(values[field.attrs.name])"> - <input t-att-id="field.attrs.name" readonly="true" type="text" value=""/> - </t> - </t> - <t t-if="fields[field.attrs.name].type == 'datetime' or fields[field.attrs.name].type == 'time'"> - <label t-att-for="field.attrs.name"> - <t t-if="!(field.attrs.string)" t-esc="fields[field.attrs.name].string"></t> - <t t-if="field.attrs.string" t-esc="field.attrs.string"></t>: - </label> - <t t-if="values[field.attrs.name]"> - <input t-att-id="field.attrs.name" readonly="true" type="text" t-att-value="values[field.attrs.name]"/> - </t> - <t t-if="!(values[field.attrs.name])"> - <input t-att-id="field.attrs.name" readonly="true" type="text" value=""/> - </t> - </t> - <t t-if="fields[field.attrs.name].type == 'boolean'"> - <div data-role="fieldcontain"> - <label for="slider"><t t-esc="fields[field.attrs.name].string" /> :</label> - <select name="slider" id="slider" data-role="slider"> - <t t-if="values[field.attrs.name]"> - <option value="on" selected="true">On</option> - <option value="off">Off</option> - </t> - <t t-if="!values[field.attrs.name]"> - <option value="on">On</option> - <option value="off" selected="true">Off</option> - </t> - </select> - </div> - </t> - <t t-if="fields[field.attrs.name].type == 'selection'"> - <label t-att-for="field.attrs.name" class="select"> - <t t-if="!(field.attrs.string)" t-esc="fields[field.attrs.name].string"></t> - <t t-if="field.attrs.string" t-esc="field.attrs.string"></t>: - </label> - <select t-att-id="field.attrs.name" data-native-menu="false"> - <t t-foreach="fields[field.attrs.name].selection" t-as="opt"> - <t t-if="opt[0] == values[field.attrs.name]"> - <option t-att-value="opt[0]"><t t-esc="opt[1]"/></option> - </t> - </t> - </select> - </t> - <t t-if="fields[field.attrs.name].type == 'many2one'"> - <label for="" class="select"> - <t t-if="!(field.attrs.string)" t-esc="fields[field.attrs.name].string"></t> - <t t-if="field.attrs.string" t-esc="field.attrs.string"></t>: - </label> - <ul data-role="listview" data-inset="true" data-theme="d"> - <li id="m2o_btn" data-theme="c" t-att-for="fields[field.attrs.name].relation"> - <a id="formbutton" href="#" title="Form View" t-att-value="values[field.attrs.name][0]" t-att-name="values[field.attrs.name][1]"> - <t t-esc="values[field.attrs.name][1]"/> - </a> - </li> - </ul> - </t> - <t t-if="fields[field.attrs.name].type == 'one2many' or fields[field.attrs.name].type == 'many2many' "> - <ul data-role="listview" data-inset="true" data-theme="d"> - <li id="o2m_m2m" data-theme="c" t-att-for="field.attrs.name"> - <a href="#"> - <t t-esc="fields[field.attrs.name].string"/> - </a> - </li> - </ul> - </t> - </div> - </t> - <t t-if="notebooks"> - <div data-role="collapsible-set"> - <t t-foreach="notebooks.children" t-as="page"> - <t t-if="page.attrs.invisible"> - <div style="display:none;" data-collapsed="true" data-role="collapsible" t-att-id="page.attrs.string"> - <h3><t t-esc="page.attrs.string"></t></h3> - <div id="page_content" /> - </div> - </t> - <t t-if="!page.attrs.invisible"> - <div data-collapsed="true" data-role="collapsible" t-att-id="page.attrs.string"> - <h3><t t-esc="page.attrs.string"></t></h3> - <div id="page_content" /> - </div> - </t> - </t> - </div> - </t> - </form> - </div> -</t> -</templates> |
