/labs/tiles/12 | |
/labs/tiles/13 | |
/labs/tiles/14 | |
/labs/tiles/15 | |
/labs/tiles/16 | |
/labs/tiles/17 | |
/labs/tiles/19 | |
/nbproject/private/ |
[submodule "js/flotr2"] | |
path = js/flotr2 | |
url = https://github.com/HumbleSoftware/Flotr2.git | |
[submodule "js/FlashCanvas"] | |
path = js/FlashCanvas | |
url = https://github.com/timcameronryan/FlashCanvas | |
[submodule "lib/amon-php"] | |
path = lib/amon-php | |
url = https://github.com/martinrusev/amon-php.git | |
[submodule "js/tesseract"] | |
path = js/tesseract | |
url = https://github.com/square/tesseract.git | |
[submodule "js/d3"] | |
path = js/d3 | |
url = https://github.com/mbostock/d3.git | |
web1: | |
php_extensions: | |
- pgsql | |
- pdo | |
- pdo_pgsql | |
- curl | |
<?php | <?php |
/* | |
* Copyright 2010,2011 Alexander Sadleir | |
Licensed under the Apache License, Version 2.0 (the "License"); | |
you may not use this file except in compliance with the License. | |
You may obtain a copy of the License at | |
http://www.apache.org/licenses/LICENSE-2.0 | |
Unless required by applicable law or agreed to in writing, software | |
distributed under the License is distributed on an "AS IS" BASIS, | |
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |
See the License for the specific language governing permissions and | |
limitations under the License. | |
*/ | |
include ('include/common.inc.php'); | include ('include/common.inc.php'); |
include_header("About", "about") | include_header("About", "about") |
?> | ?> |
<p> | <p> |
Busness Time - An ACT bus timetable webapp<br /> | Busness Time - An ACT bus timetable webapp<br /> |
Based on the maxious-canberra-transit-feed (<a | Based on the maxious-canberra-transit-feed (<a |
href="http://s3-ap-southeast-1.amazonaws.com/busresources/cbrfeed.zip">download</a>, | href="http://busresources.lambdacomplex.org/cbrfeed.zip">download</a>, |
last updated <?php | last updated <?php echo date("F d Y.", @filemtime('../busresources/cbrfeed.zip')); ?>)<br /> |
echo date("F d Y.", @filemtime('cbrfeed.zip')); ?>)<br /> | Source code for the <a |
Source code for the <a | href="https://github.com/maxious/ACTBus-data">transit |
href="https://github.com/maxious/ACTBus-data">transit | feed</a> and <a href="https://github.com/maxious/ACTBus-ui">this |
feed</a> and <a href="https://github.com/maxious/ACTBus-ui">this | site</a> available from github.<br /> |
site</a> available from github.<br /> | Uses jQuery Mobile, PHP, PostgreSQL, OpenTripPlanner, OpenLayers, OpenStreetMap, Cloudmade Geocoder and Tile Service<br /> |
Uses jQuery Mobile, PHP, PostgreSQL, OpenTripPlanner, OpenLayers, OpenStreetMap, Cloudmade Geocoder and Tile Service<br /> | Suburb geocoding based on <A href="http://www.abs.gov.au/AUSSTATS/abs@.nsf/Lookup/1270.0.55.003Main+Features1July%202011?OpenDocument">Australian Bureau of Statistics data.</a><br /> |
<br /> | Street geocoding based on work by OpenStreetMap contributors<br> |
Feedback encouraged; contact maxious@lambdacomplex.org<br /> | |
<br /> | <br /> |
Some icons by Joseph Wain / glyphish.com<br /> | Feedback encouraged; contact maxious@lambdacomplex.org<br /> |
<br /> | <br /> |
<small>Disclaimer: The content of this website is of a general and informative nature. Please check with printed timetables or those available on http://action.act.gov.au before your trip. | Some icons by Joseph Wain / glyphish.com<br /> |
Whilst every effort has been made to ensure the high quality and accuracy of the Site, the Author makes no warranty, | Native clients also available for iPhone (<a href="http://itunes.apple.com/au/app/cbrtimetable/id444287349?mt=8">cbrTimetable by Sandor Kolotenko</a> |
express or implied concerning the topicality, correctness, completeness or quality of the information, which is provided | , <a href="http://itunes.apple.com/au/app/act-buses/id376634797?mt=8">ACT Buses by David Sullivan</a>, <a href="http://itunes.apple.com/app/bus-trips-act/id489146525?mt=8">Bus Trips ACT by Molson Chengalath</a>) |
"as is". The Author expressly disclaims all warranties, including but not limited to warranties of fitness for a particular purpose and warranties of merchantability. | , Android (<a href="https://market.android.com/details?id=com.action">MyBus 2.0 by Imagine Team</a>, <A href="https://market.android.com/details?id=GetMe2CanberraFree.source">GetMe2 Canberra by |
All offers are not binding and without obligation. The Author expressly reserves the right, in his discretion, to suspend, | Colin Thompson </a>, <a href="https://market.android.com/details?id=au.com.transittimes.android">TransitTimes+ by Zervaas Enterprises</a>) |
change, modify, add or remove portions of the Site and to restrict or terminate the use and accessibility of the Site | and Windows Phone 7 (<a href="http://www.windowsphone.com/en-AU/apps/d840375e-429c-4aa4-a358-80eec6ea9e66">TransHub Canberra by Soul Solutions</a>). |
without prior notice. </small> | <br /> |
<? | <!--GTFS-realtime API:<br /> |
include_footer(); | Alerts and Trip Updates (but only Cancelled or Stop Skipped)<br /> |
?> | Default format binary Protocol Buffer but can get JSON by adding ?ascii=yes<br />--> |
<br /> | |
<br /> | |
<small>Disclaimer: The content of this website is of a general and informative nature. Please check with printed timetables or those available on http://www.action.act.gov.au before your trip. | |
Whilst every effort has been made to ensure the high quality and accuracy of the Site, the Author makes no warranty, | |
express or implied concerning the topicality, correctness, completeness or quality of the information, which is provided | |
"as is". The Author expressly disclaims all warranties, including but not limited to warranties of fitness for a particular purpose and warranties of merchantability. | |
All offers are not binding and without obligation. The Author expressly reserves the right, in his discretion, to suspend, | |
change, modify, add or remove portions of the Site and to restrict or terminate the use and accessibility of the Site | |
without prior notice. </small> | |
<?php | |
include_footer(); | |
?> | |
#!/bin/bash | |
#this script should be run from a fresh git checkout from github | |
#ami base must have yum install lighttpd-fastcgi, git, tomcat6 | |
#php-cli php-gd tomcat6-webapps tomcat6-admin-webapps svn maven2 | |
#postgres postgres-server php-pg | |
#http://www.how2forge.org/installing-lighttpd-with-php5-and-mysql-support-on-fedora-12 | |
cp /root/aws.php /tmp/ | |
mkdir /var/www/lib/staticmaplite/cache | |
chcon -h system_u:object_r:httpd_sys_content_t /var/www | |
chcon -R -h root:object_r:httpd_sys_content_t /var/www/* | |
chcon -R -t httpd_sys_content_rw_t /var/www/lib/staticmaplite/cache | |
chmod -R 777 /var/www/lib/staticmaplite/cache | |
wget http://s3-ap-southeast-1.amazonaws.com/busresources/cbrfeed.zip \ | |
-O /var/www/cbrfeed.zip | |
createdb transitdata | |
createlang -d transitdata plpgsql | |
psql -d transitdata -f /var/www/lib/postgis.sql | |
# curl https://github.com/maxious/ACTBus-ui/raw/master/transitdata.cbrfeed.sql.gz -o transitdata.cbrfeed.sql.gz | |
#made with pg_dump transitdata | gzip -c > transitdata.cbrfeed.sql.gz | |
gunzip /var/www/transitdata.cbrfeed.sql.gz | |
psql -d transitdata -f /var/www/transitdata.cbrfeed.sql | |
#createuser transitdata -SDRP | |
#password transitdata | |
#psql -d transitdata -c \"GRANT SELECT ON TABLE agency,calendar,calendar_dates,routes,stop_times,stops,trips TO transitdata;\" | |
php /var/www/updatedb.php | |
wget http://s3-ap-southeast-1.amazonaws.com/busresources/Graph.obj \ | |
-O /tmp/Graph.obj | |
rm -rfv /usr/share/tomcat6/webapps/opentripplanner* | |
wget http://s3-ap-southeast-1.amazonaws.com/busresources/opentripplanner-webapp.war \ | |
-O /usr/share/tomcat6/webapps/opentripplanner-webapp.war | |
wget http://s3-ap-southeast-1.amazonaws.com/busresources/opentripplanner-api-webapp.war \ | |
-O /usr/share/tomcat6/webapps/opentripplanner-api-webapp.war | |
/etc/init.d/tomcat6 restart | |
####################################################################### | |
## | |
## Output Compression | |
## -------------------- | |
## | |
## see http://www.lighttpd.net/documentation/compress.html | |
## | |
server.modules += ( "mod_compress" ) | |
## | |
## where should the compressed files be cached? | |
## see the base config for the declaration of the variable. | |
## | |
## This directory should be changed per vhost otherwise you can | |
## run into trouble with overlapping filenames | |
## | |
compress.cache-dir = cache_dir + "/compress" | |
## | |
## FileTypes to compress. | |
## | |
#compress.filetype = ("text/plain", "text/html") | |
compress.filetype = ("text/plain", "text/html", "text/javascript", "text/css", "text/xml") | |
## | |
## Maximum filesize that will be compressed. | |
## Default is 0, which means unlimited file size. | |
## | |
#compress.max-filesize = 0 | |
## | |
####################################################################### | |
####################################################################### | |
## | |
## Expire Module | |
## --------------- | |
## | |
## See http://www.lighttpd.net/documentation/expire.html | |
## | |
server.modules += ( "mod_expire" ) | |
## | |
## assignes a expiration to all files below the specified path. The | |
## specification of the time is made up of: | |
## | |
## <access|modification> <number> <years|months|days|hours|minutes|seconds> | |
## | |
#expire.url = ( | |
# "/buggy/" => "access 2 hours", | |
# "/images/" => "access plus 1 seconds 2 minutes" | |
#) | |
etag.use-mtime = "enable" | |
etag.use-inode = "disable" | |
static-file.etags = "enable" | |
$HTTP["url"] =~ "\.(css|js|png|jpg|ico|gif)$" { | |
expire.url = ( "" => "access 7 days" ) | |
} | |
## | |
####################################################################### | |
####################################################################### | |
## | |
## FastCGI Module | |
## --------------- | |
## | |
## http://www.lighttpd.net/documentation/fastcgi.html | |
## | |
server.modules += ( "mod_fastcgi" ) | |
fastcgi.server = ( ".php" => | |
( "localhost" => | |
( | |
"socket" => | |
"/var/run/lighttpd/php-fastcgi.socket", | |
"bin-path" => "/usr/bin/php-cgi" | |
) | |
) | |
) | |
## | |
## PHP Example | |
## For PHP don't forget to set cgi.fix_pathinfo = 1 in the php.ini. | |
## | |
## The number of php processes you will get can be easily calculated: | |
## | |
## num-procs = max-procs * ( 1 + PHP_FCGI_CHILDREN ) | |
## | |
## for the php-num-procs example it means you will get 17*5 = 85 php | |
## processes. you always should need this high number for your very | |
## busy sites. And if you have a lot of RAM. :) | |
## | |
#fastcgi.server = ( ".php" => | |
# ( "php-local" => | |
# ( | |
# "socket" => socket_dir + "/php-fastcgi-1.socket", | |
# "bin-path" => server_root + "/php-cgi", | |
# "max-procs" => 1, | |
# "broken-scriptfilename" => "enable", | |
# ) | |
# ), | |
# ( "php-tcp" => | |
# ( | |
# "host" => "127.0.0.1", | |
# "port" => 9999, | |
# "check-local" => "disable", | |
# "broken-scriptfilename" => "enable", | |
# ) | |
# ), | |
# | |
# ( "php-num-procs" => | |
# ( | |
# "socket" => socket_dir + "/php-fastcgi-2.socket", | |
# "bin-path" => server_root + "/php-cgi", | |
# "bin-environment" => ( | |
# "PHP_FCGI_CHILDREN" => "16", | |
# "PHP_FCGI_MAX_REQUESTS" => "10000", | |
# ), | |
# "max-procs" => 5, | |
# "broken-scriptfilename" => "enable", | |
# ) | |
# ), | |
# ) | |
## | |
## Ruby on Rails Example | |
## | |
## Normally you only run one Rails application on one vhost. | |
## | |
#$HTTP["host"] == "rails1.example.com" { | |
# server.document-root = server_root + "/rails/someapp/public" | |
# server.error-handler-404 = "/dispatch.fcgi" | |
# fastcgi.server = ( ".fcgi" => | |
# ("someapp" => | |
# ( "socket" => socket_dir + "/someapp-fcgi.socket", | |
# "bin-path" => server_root + "/rails/someapp/public/dispatch.fcgi", | |
# "bin-environment" => ( | |
# "RAILS_ENV" => "production", | |
# "TMP" => home_dir + "/rails/someapp", | |
# ), | |
# ) | |
# ) | |
# ) | |
#} | |
## | |
## Another example with multiple rails applications on one vhost. | |
## | |
## http://blog.lighttpd.net/articles/2005/11/23/lighttpd-1-4-8-and-multiple-rails-apps | |
## | |
#$HTTP["host"] == "rails2.example.com" { | |
# $HTTP["url"] =~ "^/someapp1" { | |
# server.document-root = server_root + "/rails/someapp1/public" | |
# server.error-handler-404 = "/dispatch.fcgi" | |
# fastcgi.server = ( ".fcgi" => | |
# ("someapp1" => | |
# ( "socket" => socket_dir + "/someapp1-fcgi.socket", | |
# "bin-path" => server_root + "/rails/someapp1/public/dispatch.fcgi", | |
# "bin-environment" => ( | |
# "RAILS_ENV" => "production", | |
# "TMP" => home_dir + "/rails/someapp1", | |
# ), | |
# "strip-request-uri" => "/someapp1/" | |
# ) | |
# ) | |
# ) | |
# } | |
# | |
# $HTTP["url"] =~ "^/someapp2" { | |
# server.document-root = server_root + "/rails/someapp2/public" | |
# server.error-handler-404 = "/dispatch.fcgi" | |
# fastcgi.server = ( ".fcgi" => | |
# ("someapp2" => | |
# ( "socket" => socket_dir + "/someapp2-fcgi.socket", | |
# "bin-path" => server_root + "/rails/someapp2/public/dispatch.fcgi", | |
# "bin-environment" => ( | |
# "RAILS_ENV" => "production", | |
# "TMP" => home_dir + "/rails/someapp2", | |
# ), | |
# "strip-request-uri" => "/someapp2/" | |
# ) | |
# ) | |
# ) | |
# } | |
#} | |
## chrooted webserver + external PHP | |
## | |
## $ spawn-fcgi -f /usr/bin/php-cgi -p 2000 -a 127.0.0.1 -C 8 | |
## | |
## webserver chrooted to /srv/www/ | |
## php running outside the chroot | |
# | |
#fastcgi.server = ( | |
# ".php" => (( | |
# "host" => "127.0.0.1", | |
# "port" => "2000", | |
# "docroot" => "/srv/www/servers/www.example.org/htdocs/" | |
# ))) | |
# | |
#server.chroot = "/srv/www" | |
#server.document-root = "/servers/wwww.example.org/htdocs/" | |
# | |
## | |
####################################################################### | |
####################################################################### | |
## | |
## Modules to load | |
## ----------------- | |
## | |
## at least mod_access and mod_accesslog should be loaded | |
## all other module should only be loaded if really neccesary | |
## | |
## - saves some time | |
## - saves memory | |
## | |
## the default module set contains: | |
## | |
## "mod_indexfile", "mod_dirlisting", "mod_staticfile" | |
## | |
## you dont have to include those modules in your list | |
## | |
## Modules, which are pulled in via conf.d/*.conf | |
## | |
## NOTE: the order of modules is important. | |
## | |
## - mod_accesslog -> conf.d/access_log.conf | |
## - mod_compress -> conf.d/compress.conf | |
## - mod_status -> conf.d/status.conf | |
## - mod_webdav -> conf.d/webdav.conf | |
## - mod_cml -> conf.d/cml.conf | |
## - mod_evhost -> conf.d/evhost.conf | |
## - mod_simple_vhost -> conf.d/simple_vhost.conf | |
## - mod_mysql_vhost -> conf.d/mysql_vhost.conf | |
## - mod_trigger_b4_dl -> conf.d/trigger_b4_dl.conf | |
## - mod_userdir -> conf.d/userdir.conf | |
## - mod_rrdtool -> conf.d/rrdtool.conf | |
## - mod_ssi -> conf.d/ssi.conf | |
## - mod_cgi -> conf.d/cgi.conf | |
## - mod_scgi -> conf.d/scgi.conf | |
## - mod_fastcgi -> conf.d/fastcgi.conf | |
## - mod_proxy -> conf.d/proxy.conf | |
## - mod_secdownload -> conf.d/secdownload.conf | |
## - mod_expire -> conf.d/expire.conf | |
## | |
server.modules = ( | |
"mod_access", | |
# "mod_alias", | |
# "mod_auth", | |
# "mod_evasive", | |
# "mod_redirect", | |
# "mod_rewrite", | |
# "mod_setenv", | |
# "mod_usertrack", | |
) | |
## | |
####################################################################### | |
####################################################################### | |
## | |
## Config for various Modules | |
## | |
## | |
## mod_ssi | |
## | |
#include "conf.d/ssi.conf" | |
## | |
## mod_status | |
## | |
#include "conf.d/status.conf" | |
## | |
## mod_webdav | |
## | |
#include "conf.d/webdav.conf" | |
## | |
## mod_compress | |
## | |
include "conf.d/compress.conf" | |
## | |
## mod_userdir | |
## | |
#include "conf.d/userdir.conf" | |
## | |
## mod_magnet | |
## | |
#include "conf.d/magnet.conf" | |
## | |
## mod_cml | |
## | |
#include "conf.d/cml.conf" | |
## | |
## mod_rrdtool | |
## | |
#include "conf.d/rrdtool.conf" | |
## | |
## mod_proxy | |
## | |
#include "conf.d/proxy.conf" | |
## | |
## mod_expire | |
## | |
include "conf.d/expire.conf" | |
## | |
## mod_secdownload | |
## | |
#include "conf.d/secdownload.conf" | |
## | |
####################################################################### | |
####################################################################### | |
## | |
## CGI modules | |
## | |
## | |
## SCGI (mod_scgi) | |
## | |
#include "conf.d/scgi.conf" | |
## | |
## FastCGI (mod_fastcgi) | |
## | |
include "conf.d/fastcgi.conf" | |
## | |
## plain old CGI (mod_cgi) | |
## | |
#include "conf.d/cgi.conf" | |
## | |
####################################################################### | |
####################################################################### | |
## | |
## VHost Modules | |
## | |
## Only load ONE of them! | |
## ======================== | |
## | |
## | |
## You can use conditionals for vhosts aswell. | |
## | |
## see http://www.lighttpd.net/documentation/configuration.html | |
## | |
## | |
## mod_evhost | |
## | |
#include "conf.d/evhost.conf" | |
## | |
## mod_simple_vhost | |
## | |
#include "conf.d/simple_vhost.conf" | |
## | |
## mod_mysql_vhost | |
## | |
#include "conf.d/mysql_vhost.conf" | |
## | |
####################################################################### | |
# PostgreSQL Client Authentication Configuration File | |
# =================================================== | |
# | |
# Refer to the "Client Authentication" section in the | |
# PostgreSQL documentation for a complete description | |
# of this file. A short synopsis follows. | |
# | |
# This file controls: which hosts are allowed to connect, how clients | |
# are authenticated, which PostgreSQL user names they can use, which | |
# databases they can access. Records take one of these forms: | |
# | |
# local DATABASE USER METHOD [OPTIONS] | |
# host DATABASE USER CIDR-ADDRESS METHOD [OPTIONS] | |
# hostssl DATABASE USER CIDR-ADDRESS METHOD [OPTIONS] | |
# hostnossl DATABASE USER CIDR-ADDRESS METHOD [OPTIONS] | |
# | |
# (The uppercase items must be replaced by actual values.) | |
# | |
# The first field is the connection type: "local" is a Unix-domain socket, | |
# "host" is either a plain or SSL-encrypted TCP/IP socket, "hostssl" is an | |
# SSL-encrypted TCP/IP socket, and "hostnossl" is a plain TCP/IP socket. | |
# | |
# DATABASE can be "all", "sameuser", "samerole", a database name, or | |
# a comma-separated list thereof. | |
# | |
# USER can be "all", a user name, a group name prefixed with "+", or | |
# a comma-separated list thereof. In both the DATABASE and USER fields | |
# you can also write a file name prefixed with "@" to include names from | |
# a separate file. | |
# | |
# CIDR-ADDRESS specifies the set of hosts the record matches. | |
# It is made up of an IP address and a CIDR mask that is an integer | |
# (between 0 and 32 (IPv4) or 128 (IPv6) inclusive) that specifies | |
# the number of significant bits in the mask. Alternatively, you can write | |
# an IP address and netmask in separate columns to specify the set of hosts. | |
# | |
# METHOD can be "trust", "reject", "md5", "password", "gss", "sspi", "krb5", | |
# "ident", "pam", "ldap" or "cert". Note that "password" sends passwords | |
# in clear text; "md5" is preferred since it sends encrypted passwords. | |
# | |
# OPTIONS are a set of options for the authentication in the format | |
# NAME=VALUE. The available options depend on the different authentication | |
# methods - refer to the "Client Authentication" section in the documentation | |
# for a list of which options are available for which authentication methods. | |
# | |
# Database and user names containing spaces, commas, quotes and other special | |
# characters must be quoted. Quoting one of the keywords "all", "sameuser" or | |
# "samerole" makes the name lose its special character, and just match a | |
# database or username with that name. | |
# | |
# This file is read on server startup and when the postmaster receives | |
# a SIGHUP signal. If you edit the file on a running system, you have | |
# to SIGHUP the postmaster for the changes to take effect. You can use | |
# "pg_ctl reload" to do that. | |
# Put your actual configuration here | |
# ---------------------------------- | |
# | |
# If you want to allow non-local connections, you need to add more | |
# "host" records. In that case you will also need to make PostgreSQL listen | |
# on a non-local interface via the listen_addresses configuration parameter, | |
# or via the -i or -h command line switches. | |
# | |
# TYPE DATABASE USER CIDR-ADDRESS METHOD | |
# "local" is for Unix domain socket connections only | |
local all all trust | |
# IPv4 local connections: | |
host all all 127.0.0.1/32 trust | |
# IPv6 local connections: | |
host all all ::1/128 trust | |
[PHP] | |
date.timezone = "Australia/Sydney" | |
;;;;;;;;;;;;;;;;;;; | |
; About php.ini ; | |
;;;;;;;;;;;;;;;;;;; | |
; PHP's initialization file, generally called php.ini, is responsible for | |
; configuring many of the aspects of PHP's behavior. | |
; PHP attempts to find and load this configuration from a number of locations. | |
; The following is a summary of its search order: | |
; 1. SAPI module specific location. | |
; 2. The PHPRC environment variable. (As of PHP 5.2.0) | |
; 3. A number of predefined registry keys on Windows (As of PHP 5.2.0) | |
; 4. Current working directory (except CLI) | |
; 5. The web server's directory (for SAPI modules), or directory of PHP | |
; (otherwise in Windows) | |
; 6. The directory from the --with-config-file-path compile time option, or the | |
; Windows directory (C:\windows or C:\winnt) | |
; See the PHP docs for more specific information. | |
; http://www.php.net/manual/en/configuration.file.php | |
; The syntax of the file is extremely simple. Whitespace and Lines | |
; beginning with a semicolon are silently ignored (as you probably guessed). | |
; Section headers (e.g. [Foo]) are also silently ignored, even though | |
; they might mean something in the future. | |
; Directives following the section heading [PATH=/www/mysite] only | |
; apply to PHP files in the /www/mysite directory. Directives | |
; following the section heading [HOST=www.example.com] only apply to | |
; PHP files served from www.example.com. Directives set in these | |
; special sections cannot be overridden by user-defined INI files or | |
; at runtime. Currently, [PATH=] and [HOST=] sections only work under | |
; CGI/FastCGI. | |
; http://www.php.net/manual/en/ini.sections.php | |
; Directives are specified using the following syntax: | |
; directive = value | |
; Directive names are *case sensitive* - foo=bar is different from FOO=bar. | |
; Directives are variables used to configure PHP or PHP extensions. | |
; There is no name validation. If PHP can't find an expected | |
; directive because it is not set or is mistyped, a default value will be used. | |
; The value can be a string, a number, a PHP constant (e.g. E_ALL or M_PI), one | |
; of the INI constants (On, Off, True, False, Yes, No and None) or an expression | |
; (e.g. E_ALL & ~E_NOTICE), a quoted string ("bar"), or a reference to a | |
; previously set variable or directive (e.g. ${foo}) | |
; Expressions in the INI file are limited to bitwise operators and parentheses: | |
; | bitwise OR | |
; ^ bitwise XOR | |
; & bitwise AND | |
; ~ bitwise NOT | |
; ! boolean NOT | |
; Boolean flags can be turned on using the values 1, On, True or Yes. | |
; They can be turned off using the values 0, Off, False or No. | |
; An empty string can be denoted by simply not writing anything after the equal | |
; sign, or by using the None keyword: | |
; foo = ; sets foo to an empty string | |
; foo = None ; sets foo to an empty string | |
; foo = "None" ; sets foo to the string 'None' | |
; If you use constants in your value, and these constants belong to a | |
; dynamically loaded extension (either a PHP extension or a Zend extension), | |
; you may only use these constants *after* the line that loads the extension. | |
;;;;;;;;;;;;;;;;;;; | |
; About this file ; | |
;;;;;;;;;;;;;;;;;;; | |
; PHP comes packaged with two INI files. One that is recommended to be used | |
; in production environments and one that is recommended to be used in | |
; development environments. | |
; php.ini-production contains settings which hold security, performance and | |
; best practices at its core. But please be aware, these settings may break | |
; compatibility with older or less security conscience applications. We | |
; recommending using the production ini in production and testing environments. | |
; php.ini-development is very similar to its production variant, except it's | |
; much more verbose when it comes to errors. We recommending using the | |
; development version only in development environments as errors shown to | |
; application users can inadvertently leak otherwise secure information. | |
; This 2 files are provided, by RPM, in /usr/share/doc/php-common-*/ | |
; File used by RPM (the /etc/php.ini) is mainly the php.ini-production | |
;;;;;;;;;;;;;;;;;;; | |
; Quick Reference ; | |
;;;;;;;;;;;;;;;;;;; | |
; The following are all the settings which are different in either the production | |
; or development versions of the INIs with respect to PHP's default behavior. | |
; Please see the actual settings later in the document for more details as to why | |
; we recommend these changes in PHP's behavior. | |
; allow_call_time_pass_reference | |
; Default Value: On | |
; Development Value: Off | |
; Production Value: Off | |
; display_errors | |
; Default Value: On | |
; Development Value: On | |
; Production Value: Off | |
; display_startup_errors | |
; Default Value: Off | |
; Development Value: On | |
; Production Value: Off | |
; error_reporting | |
; Default Value: E_ALL & ~E_NOTICE | |
; Development Value: E_ALL | E_STRICT | |
; Production Value: E_ALL & ~E_DEPRECATED | |
; html_errors | |
; Default Value: On | |
; Development Value: On | |
; Production value: Off | |
; log_errors | |
; Default Value: Off | |
; Development Value: On | |
; Production Value: On | |
; magic_quotes_gpc | |
; Default Value: On | |
; Development Value: Off | |
; Production Value: Off | |
; max_input_time | |
; Default Value: -1 (Unlimited) | |
; Development Value: 60 (60 seconds) | |
; Production Value: 60 (60 seconds) | |
; output_buffering | |
; Default Value: Off | |
; Development Value: 4096 | |
; Production Value: 4096 | |
; register_argc_argv | |
; Default Value: On | |
; Development Value: Off | |
; Production Value: Off | |
; register_long_arrays | |
; Default Value: On | |
; Development Value: Off | |
; Production Value: Off | |
; request_order | |
; Default Value: None | |
; Development Value: "GP" | |
; Production Value: "GP" | |
; session.bug_compat_42 | |
; Default Value: On | |
; Development Value: On | |
; Production Value: Off | |
; session.bug_compat_warn | |
; Default Value: On | |
; Development Value: On | |
; Production Value: Off | |
; session.gc_divisor | |
; Default Value: 100 | |
; Development Value: 1000 | |
; Production Value: 1000 | |
; session.hash_bits_per_character | |
; Default Value: 4 | |
; Development Value: 5 | |
; Production Value: 5 | |
; short_open_tag | |
; Default Value: On | |
; Development Value: Off | |
; Production Value: Off | |
; track_errors | |
; Default Value: Off | |
; Development Value: On | |
; Production Value: Off | |
; url_rewriter.tags | |
; Default Value: "a=href,area=href,frame=src,form=,fieldset=" | |
; Development Value: "a=href,area=href,frame=src,input=src,form=fakeentry" | |
; Production Value: "a=href,area=href,frame=src,input=src,form=fakeentry" | |
; variables_order | |
; Default Value: "EGPCS" | |
; Development Value: "GPCS" | |
; Production Value: "GPCS" | |
;;;;;;;;;;;;;;;;;;;; | |
; php.ini Options ; | |
;;;;;;;;;;;;;;;;;;;; | |
; Name for user-defined php.ini (.htaccess) files. Default is ".user.ini" | |
;user_ini.filename = ".user.ini" | |
; To disable this feature set this option to empty value | |
;user_ini.filename = | |
; TTL for user-defined php.ini files (time-to-live) in seconds. Default is 300 seconds (5 minutes) | |
;user_ini.cache_ttl = 300 | |
;;;;;;;;;;;;;;;;;;;; | |
; Language Options ; | |
;;;;;;;;;;;;;;;;;;;; | |
; Enable the PHP scripting language engine under Apache. | |
; http://www.php.net/manual/en/apache.configuration.php#ini.engine | |
engine = On | |
; This directive determines whether or not PHP will recognize code between | |
; <? and ?> tags as PHP source which should be processed as such. It's been | |
; recommended for several years that you not use the short tag "short cut" and | |
; instead to use the full <?php and ?> tag combination. With the wide spread use | |
; of XML and use of these tags by other languages, the server can become easily | |
; confused and end up parsing the wrong code in the wrong context. But because | |
; this short cut has been a feature for such a long time, it's currently still | |
; supported for backwards compatibility, but we recommend you don't use them. | |
; Default Value: On | |
; Development Value: Off | |
; Production Value: Off | |
; http://www.php.net/manual/en/ini.core.php#ini.short-open-tag | |
short_open_tag = Off | |
; Allow ASP-style <% %> tags. | |
; http://www.php.net/manual/en/ini.core.php#ini.asp-tags | |
asp_tags = Off | |
; The number of significant digits displayed in floating point numbers. | |
; http://www.php.net/manual/en/ini.core.php#ini.precision | |
precision = 14 | |
; Enforce year 2000 compliance (will cause problems with non-compliant browsers) | |
; http://www.php.net/manual/en/ini.core.php#ini.y2k-compliance | |
y2k_compliance = On | |
; Output buffering is a mechanism for controlling how much output data | |
; (excluding headers and cookies) PHP should keep internally before pushing that | |
; data to the client. If your application's output exceeds this setting, PHP | |
; will send that data in chunks of roughly the size you specify. | |
; Turning on this setting and managing its maximum buffer size can yield some | |
; interesting side-effects depending on your application and web server. | |
; You may be able to send headers and cookies after you've already sent output | |
; through print or echo. You also may see performance benefits if your server is | |
; emitting less packets due to buffered output versus PHP streaming the output | |
; as it gets it. On production servers, 4096 bytes is a good setting for performance | |
; reasons. | |
; Note: Output buffering can also be controlled via Output Buffering Control | |
; functions. | |
; Possible Values: | |
; On = Enabled and buffer is unlimited. (Use with caution) | |
; Off = Disabled | |
; Integer = Enables the buffer and sets its maximum size in bytes. | |
; Default Value: Off | |
; Development Value: 4096 | |
; Production Value: 4096 | |
; http://www.php.net/manual/en/outcontrol.configuration.php#ini.output-buffering | |
output_buffering = 4096 | |
; You can redirect all of the output of your scripts to a function. For | |
; example, if you set output_handler to "mb_output_handler", character | |
; encoding will be transparently converted to the specified encoding. | |
; Setting any output handler automatically turns on output buffering. | |
; Note: People who wrote portable scripts should not depend on this ini | |
; directive. Instead, explicitly set the output handler using ob_start(). | |
; Using this ini directive may cause problems unless you know what script | |
; is doing. | |
; Note: You cannot use both "mb_output_handler" with "ob_iconv_handler" | |
; and you cannot use both "ob_gzhandler" and "zlib.output_compression". | |
; Note: output_handler must be empty if this is set 'On' !!!! | |
; Instead you must use zlib.output_handler. | |
; http://www.php.net/manual/en/outcontrol.configuration.php#ini.output-handler | |
;output_handler = | |
; Transparent output compression using the zlib library | |
; Valid values for this option are 'off', 'on', or a specific buffer size | |
; to be used for compression (default is 4KB) | |
; Note: Resulting chunk size may vary due to nature of compression. PHP | |
; outputs chunks that are few hundreds bytes each as a result of | |
; compression. If you prefer a larger chunk size for better | |
; performance, enable output_buffering in addition. | |
; Note: You need to use zlib.output_handler instead of the standard | |
; output_handler, or otherwise the output will be corrupted. | |
; http://www.php.net/manual/en/zlib.configuration.php#ini.zlib.output-compression | |
zlib.output_compression = on | |
; http://www.php.net/manual/en/zlib.configuration.php#ini.zlib.output-compression-level | |
;zlib.output_compression_level = -1 | |
; You cannot specify additional output handlers if zlib.output_compression | |
; is activated here. This setting does the same as output_handler but in | |
; a different order. | |
; http://www.php.net/manual/en/zlib.configuration.php#ini.zlib.output-handler | |
;zlib.output_handler = | |
; Implicit flush tells PHP to tell the output layer to flush itself | |
; automatically after every output block. This is equivalent to calling the | |
; PHP function flush() after each and every call to print() or echo() and each | |
; and every HTML block. Turning this option on has serious performance | |
; implications and is generally recommended for debugging purposes only. | |
; http://www.php.net/manual/en/outcontrol.configuration.php#ini.implicit-flush | |
implicit_flush = Off | |
; The unserialize callback function will be called (with the undefined class' | |
; name as parameter), if the unserializer finds an undefined class | |
; which should be instantiated. A warning appears if the specified function is | |
; not defined, or if the function doesn't include/implement the missing class. | |
; So only set this entry, if you really want to implement such a | |
; callback-function. | |
unserialize_callback_func = | |
; When floats & doubles are serialized store serialize_precision significant | |
; digits after the floating point. The default value ensures that when floats | |
; are decoded with unserialize, the data will remain the same. | |
serialize_precision = 100 | |
; This directive allows you to enable and disable warnings which PHP will issue | |
; if you pass a value by reference at function call time. Passing values by | |
; reference at function call time is a deprecated feature which will be removed | |
; from PHP at some point in the near future. The acceptable method for passing a | |
; value by reference to a function is by declaring the reference in the functions | |
; definition, not at call time. This directive does not disable this feature, it | |
; only determines whether PHP will warn you about it or not. These warnings | |
; should enabled in development environments only. | |
; Default Value: On (Suppress warnings) | |
; Development Value: Off (Issue warnings) | |
; Production Value: Off (Issue warnings) | |
; http://www.php.net/manual/en/ini.core.php#ini.allow-call-time-pass-reference | |
allow_call_time_pass_reference = Off | |
; Safe Mode | |
; http://www.php.net/manual/en/ini.sect.safe-mode.php#ini.safe-mode | |
safe_mode = Off | |
; By default, Safe Mode does a UID compare check when | |
; opening files. If you want to relax this to a GID compare, | |
; then turn on safe_mode_gid. | |
; http://www.php.net/manual/en/ini.sect.safe-mode.php#ini.safe-mode-gid | |
safe_mode_gid = Off | |
; When safe_mode is on, UID/GID checks are bypassed when | |
; including files from this directory and its subdirectories. | |
; (directory must also be in include_path or full path must | |
; be used when including) | |
; http://www.php.net/manual/en/ini.sect.safe-mode.php#ini.safe-mode-include-dir | |
safe_mode_include_dir = | |
; When safe_mode is on, only executables located in the safe_mode_exec_dir | |
; will be allowed to be executed via the exec family of functions. | |
; http://www.php.net/manual/en/ini.sect.safe-mode.php#ini.safe-mode-exec-dir | |
safe_mode_exec_dir = | |
; Setting certain environment variables may be a potential security breach. | |
; This directive contains a comma-delimited list of prefixes. In Safe Mode, | |
; the user may only alter environment variables whose names begin with the | |
; prefixes supplied here. By default, users will only be able to set | |
; environment variables that begin with PHP_ (e.g. PHP_FOO=BAR). | |
; Note: If this directive is empty, PHP will let the user modify ANY | |
; environment variable! | |
; http://www.php.net/manual/en/ini.sect.safe-mode.php#ini.safe-mode-allowed-env-vars | |
safe_mode_allowed_env_vars = PHP_ | |
; This directive contains a comma-delimited list of environment variables that | |
; the end user won't be able to change using putenv(). These variables will be | |
; protected even if safe_mode_allowed_env_vars is set to allow to change them. | |
; http://www.php.net/manual/en/ini.sect.safe-mode.php#ini.safe-mode-protected-env-vars | |
safe_mode_protected_env_vars = LD_LIBRARY_PATH | |
; open_basedir, if set, limits all file operations to the defined directory | |
; and below. This directive makes most sense if used in a per-directory | |
; or per-virtualhost web server configuration file. This directive is | |
; *NOT* affected by whether Safe Mode is turned On or Off. | |
; http://www.php.net/manual/en/ini.sect.safe-mode.php#ini.open-basedir | |
;open_basedir = | |
; This directive allows you to disable certain functions for security reasons. | |
; It receives a comma-delimited list of function names. This directive is | |
; *NOT* affected by whether Safe Mode is turned On or Off. | |
; http://www.php.net/manual/en/ini.sect.safe-mode.php#ini.disable-functions | |
disable_functions = | |
; This directive allows you to disable certain classes for security reasons. | |
; It receives a comma-delimited list of class names. This directive is | |
; *NOT* affected by whether Safe Mode is turned On or Off. | |
; http://www.php.net/manual/en/ini.sect.safe-mode.php#ini.disable-classes | |
disable_classes = | |
; Colors for Syntax Highlighting mode. Anything that's acceptable in | |
; <span style="color: ???????"> would work. | |
; http://www.php.net/manual/en/misc.configuration.php#ini.syntax-highlighting | |
;highlight.string = #DD0000 | |
;highlight.comment = #FF9900 | |
;highlight.keyword = #007700 | |
;highlight.bg = #FFFFFF | |
;highlight.default = #0000BB | |
;highlight.html = #000000 | |
; If enabled, the request will be allowed to complete even if the user aborts | |
; the request. Consider enabling it if executing long requests, which may end up | |
; being interrupted by the user or a browser timing out. PHP's default behavior | |
; is to disable this feature. | |
; http://www.php.net/manual/en/misc.configuration.php#ini.ignore-user-abort | |
;ignore_user_abort = On | |
; Determines the size of the realpath cache to be used by PHP. This value should | |
; be increased on systems where PHP opens many files to reflect the quantity of | |
; the file operations performed. | |
; http://www.php.net/manual/en/ini.core.php#ini.realpath-cache-size | |
;realpath_cache_size = 16k | |
; Duration of time, in seconds for which to cache realpath information for a given | |
; file or directory. For systems with rarely changing files, consider increasing this | |
; value. | |
; http://www.php.net/manual/en/ini.core.php#ini.realpath-cache-ttl | |
;realpath_cache_ttl = 120 | |
;;;;;;;;;;;;;;;;; | |
; Miscellaneous ; | |
;;;;;;;;;;;;;;;;; | |
; Decides whether PHP may expose the fact that it is installed on the server | |
; (e.g. by adding its signature to the Web server header). It is no security | |
; threat in any way, but it makes it possible to determine whether you use PHP | |
; on your server or not. | |
; http://www.php.net/manual/en/ini.core.php#ini.expose-php | |
expose_php = On | |
;;;;;;;;;;;;;;;;;;; | |
; Resource Limits ; | |
;;;;;;;;;;;;;;;;;;; | |
; Maximum execution time of each script, in seconds | |
; http://www.php.net/manual/en/info.configuration.php#ini.max-execution-time | |
max_execution_time = 30 | |
; Maximum amount of time each script may spend parsing request data. It's a good | |
; idea to limit this time on productions servers in order to eliminate unexpectedly | |
; long running scripts. | |
; Default Value: -1 (Unlimited) | |
; Development Value: 60 (60 seconds) | |
; Production Value: 60 (60 seconds) | |
; http://www.php.net/manual/en/info.configuration.php#ini.max-input-time | |
max_input_time = 60 | |
; Maximum input variable nesting level | |
; http://www.php.net/manual/en/info.configuration.php#ini.max-input-nesting-level | |
;max_input_nesting_level = 64 | |
; Maximum amount of memory a script may consume (128MB) | |
; http://www.php.net/manual/en/ini.core.php#ini.memory-limit | |
memory_limit = 128M | |
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; | |
; Error handling and logging ; | |
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; | |
; This directive informs PHP of which errors, warnings and notices you would like | |
; it to take action for. The recommended way of setting values for this | |
; directive is through the use of the error level constants and bitwise | |
; operators. The error level constants are below here for convenience as well as | |
; some common settings and their meanings. | |
; By default, PHP is set to take action on all errors, notices and warnings EXCEPT | |
; those related to E_NOTICE and E_STRICT, which together cover best practices and | |
; recommended coding standards in PHP. For performance reasons, this is the | |
; recommend error reporting setting. Your production server shouldn't be wasting | |
; resources complaining about best practices and coding standards. That's what | |
; development servers and development settings are for. | |
; Note: The php.ini-development file has this setting as E_ALL | E_STRICT. This | |
; means it pretty much reports everything which is exactly what you want during | |
; development and early testing. | |
; | |
; Error Level Constants: | |
; E_ALL - All errors and warnings (includes E_STRICT as of PHP 6.0.0) | |
; E_ERROR - fatal run-time errors | |
; E_RECOVERABLE_ERROR - almost fatal run-time errors | |
; E_WARNING - run-time warnings (non-fatal errors) | |
; E_PARSE - compile-time parse errors | |
; E_NOTICE - run-time notices (these are warnings which often result | |
; from a bug in your code, but it's possible that it was | |
; intentional (e.g., using an uninitialized variable and | |
; relying on the fact it's automatically initialized to an | |
; empty string) | |
; E_STRICT - run-time notices, enable to have PHP suggest changes | |
; to your code which will ensure the best interoperability | |
; and forward compatibility of your code | |
; E_CORE_ERROR - fatal errors that occur during PHP's initial startup | |
; E_CORE_WARNING - warnings (non-fatal errors) that occur during PHP's | |
; initial startup | |
; E_COMPILE_ERROR - fatal compile-time errors | |
; E_COMPILE_WARNING - compile-time warnings (non-fatal errors) | |
; E_USER_ERROR - user-generated error message | |
; E_USER_WARNING - user-generated warning message | |
; E_USER_NOTICE - user-generated notice message | |
; E_DEPRECATED - warn about code that will not work in future versions | |
; of PHP | |
; E_USER_DEPRECATED - user-generated deprecation warnings | |
; | |
; Common Values: | |
; E_ALL & ~E_NOTICE (Show all errors, except for notices and coding standards warnings.) | |
; E_ALL & ~E_NOTICE | E_STRICT (Show all errors, except for notices) | |
; E_COMPILE_ERROR|E_RECOVERABLE_ERROR|E_ERROR|E_CORE_ERROR (Show only errors) | |
; E_ALL | E_STRICT (Show all errors, warnings and notices including coding standards.) | |
; Default Value: E_ALL & ~E_NOTICE | |
; Development Value: E_ALL | E_STRICT | |
; Production Value: E_ALL & ~E_DEPRECATED | |
; http://www.php.net/manual/en/errorfunc.configuration.php#ini.error-reporting | |
error_reporting = E_ALL & ~E_DEPRECATED | |
; This directive controls whether or not and where PHP will output errors, | |
; notices and warnings too. Error output is very useful during development, but | |
; it could be very dangerous in production environments. Depending on the code | |
; which is triggering the error, sensitive information could potentially leak | |
; out of your application such as database usernames and passwords or worse. | |
; It's recommended that errors be logged on production servers rather than | |
; having the errors sent to STDOUT. | |
; Possible Values: | |
; Off = Do not display any errors | |
; stderr = Display errors to STDERR (affects only CGI/CLI binaries!) | |
; On or stdout = Display errors to STDOUT | |
; Default Value: On | |
; Development Value: On | |
; Production Value: Off | |
; http://www.php.net/manual/en/errorfunc.configuration.php#ini.display-errors | |
display_errors = Off | |
; The display of errors which occur during PHP's startup sequence are handled | |
; separately from display_errors. PHP's default behavior is to suppress those | |
; errors from clients. Turning the display of startup errors on can be useful in | |
; debugging configuration problems. But, it's strongly recommended that you | |
; leave this setting off on production servers. | |
; Default Value: Off | |
; Development Value: On | |
; Production Value: Off | |
; http://www.php.net/manual/en/errorfunc.configuration.php#ini.display-startup-errors | |
display_startup_errors = Off | |
; Besides displaying errors, PHP can also log errors to locations such as a | |
; server-specific log, STDERR, or a location specified by the error_log | |
; directive found below. While errors should not be displayed on productions | |
; servers they should still be monitored and logging is a great way to do that. | |
; Default Value: Off | |
; Development Value: On | |
; Production Value: On | |
; http://www.php.net/manual/en/errorfunc.configuration.php#ini.log-errors | |
log_errors = On | |
; Set maximum length of log_errors. In error_log information about the source is | |
; added. The default is 1024 and 0 allows to not apply any maximum length at all. | |
; http://www.php.net/manual/en/errorfunc.configuration.php#ini.log-errors-max-len | |
log_errors_max_len = 1024 | |
; Do not log repeated messages. Repeated errors must occur in same file on same | |
; line unless ignore_repeated_source is set true. | |
; http://www.php.net/manual/en/errorfunc.configuration.php#ini.ignore-repeated-errors | |
ignore_repeated_errors = Off | |
; Ignore source of message when ignoring repeated messages. When this setting | |
; is On you will not log errors with repeated messages from different files or | |
; source lines. | |
; http://www.php.net/manual/en/errorfunc.configuration.php#ini.ignore-repeated-source | |
ignore_repeated_source = Off | |
; If this parameter is set to Off, then memory leaks will not be shown (on | |
; stdout or in the log). This has only effect in a debug compile, and if | |
; error reporting includes E_WARNING in the allowed list | |
; http://www.php.net/manual/en/errorfunc.configuration.php#ini.report-memleaks | |
report_memleaks = On | |
; This setting is on by default. | |
;report_zend_debug = 0 | |
; Store the last error/warning message in $php_errormsg (boolean). Setting this value | |
; to On can assist in debugging and is appropriate for development servers. It should | |
; however be disabled on production servers. | |
; Default Value: Off | |
; Development Value: On | |
; Production Value: Off | |
; http://www.php.net/manual/en/errorfunc.configuration.php#ini.track-errors | |
track_errors = Off | |
; Turn off normal error reporting and emit XML-RPC error XML | |
; http://www.php.net/manual/en/errorfunc.configuration.php#ini.xmlrpc-errors | |
;xmlrpc_errors = 0 | |
; An XML-RPC faultCode | |
;xmlrpc_error_number = 0 | |
; When PHP displays or logs an error, it has the capability of inserting html | |
; links to documentation related to that error. This directive controls whether | |
; those HTML links appear in error messages or not. For performance and security | |
; reasons, it's recommended you disable this on production servers. | |
; Default Value: On | |
; Development Value: On | |
; Production value: Off | |
; http://www.php.net/manual/en/errorfunc.configuration.php#ini.html-errors | |
html_errors = Off | |
; If html_errors is set On PHP produces clickable error messages that direct | |
; to a page describing the error or function causing the error in detail. | |
; You can download a copy of the PHP manual from http://www.php.net/docs.php | |
; and change docref_root to the base URL of your local copy including the | |
; leading '/'. You must also specify the file extension being used including | |
; the dot. PHP's default behavior is to leave these settings empty. | |
; Note: Never use this feature for production boxes. | |
; http://www.php.net/manual/en/errorfunc.configuration.php#ini.docref-root | |
; Examples | |
;docref_root = "/phpmanual/" | |
; http://www.php.net/manual/en/errorfunc.configuration.php#ini.docref-ext | |
;docref_ext = .html | |
; String to output before an error message. PHP's default behavior is to leave | |
; this setting blank. | |
; http://www.php.net/manual/en/errorfunc.configuration.php#ini.error-prepend-string | |
; Example: | |
;error_prepend_string = "<font color=#ff0000>" | |
; String to output after an error message. PHP's default behavior is to leave | |
; this setting blank. | |
; http://www.php.net/manual/en/errorfunc.configuration.php#ini.error-append-string | |
; Example: | |
;error_append_string = "</font>" | |
; Log errors to specified file. PHP's default behavior is to leave this value | |
; empty. | |
; http://www.php.net/manual/en/errorfunc.configuration.php#ini.error-log | |
; Example: | |
;error_log = php_errors.log | |
; Log errors to syslog (Event Log on NT, not valid in Windows 95). | |
;error_log = syslog | |
;;;;;;;;;;;;;;;;; | |
; Data Handling ; | |
;;;;;;;;;;;;;;;;; | |
; Note - track_vars is ALWAYS enabled as of PHP 4.0.3 | |
; The separator used in PHP generated URLs to separate arguments. | |
; PHP's default setting is "&". | |
; http://www.php.net/manual/en/ini.core.php#ini.arg-separator.output | |
; Example: | |
;arg_separator.output = "&" | |
; List of separator(s) used by PHP to parse input URLs into variables. | |
; PHP's default setting is "&". | |
; NOTE: Every character in this directive is considered as separator! | |
; http://www.php.net/manual/en/ini.core.php#ini.arg-separator.input | |
; Example: | |
;arg_separator.input = ";&" | |
; This directive determines which super global arrays are registered when PHP | |
; starts up. If the register_globals directive is enabled, it also determines | |
; what order variables are populated into the global space. G,P,C,E & S are | |
; abbreviations for the following respective super globals: GET, POST, COOKIE, | |
; ENV and SERVER. There is a performance penalty paid for the registration of | |
; these arrays and because ENV is not as commonly used as the others, ENV is | |
; is not recommended on productions servers. You can still get access to | |
; the environment variables through getenv() should you need to. | |
; Default Value: "EGPCS" | |
; Development Value: "GPCS" | |
; Production Value: "GPCS"; | |
; http://www.php.net/manual/en/ini.core.php#ini.variables-order | |
variables_order = "GPCS" | |
; This directive determines which super global data (G,P,C,E & S) should | |
; be registered into the super global array REQUEST. If so, it also determines | |
; the order in which that data is registered. The values for this directive are | |
; specified in the same manner as the variables_order directive, EXCEPT one. | |
; Leaving this value empty will cause PHP to use the value set in the | |
; variables_order directive. It does not mean it will leave the super globals | |
; array REQUEST empty. | |
; Default Value: None | |
; Development Value: "GP" | |
; Production Value: "GP" | |
; http://www.php.net/manual/en/ini.core.php#ini.request-order | |
request_order = "GP" | |
; Whether or not to register the EGPCS variables as global variables. You may | |
; want to turn this off if you don't want to clutter your scripts' global scope | |
; with user data. This makes most sense when coupled with track_vars - in which | |
; case you can access all of the GPC variables through the $HTTP_*_VARS[], | |
; variables. | |
; You should do your best to write your scripts so that they do not require | |
; register_globals to be on; Using form variables as globals can easily lead | |
; to possible security problems, if the code is not very well thought of. | |
; http://www.php.net/manual/en/ini.core.php#ini.register-globals | |
register_globals = Off | |
; Determines whether the deprecated long $HTTP_*_VARS type predefined variables | |
; are registered by PHP or not. As they are deprecated, we obviously don't | |
; recommend you use them. They are on by default for compatibility reasons but | |
; they are not recommended on production servers. | |
; Default Value: On | |
; Development Value: Off | |
; Production Value: Off | |
; http://www.php.net/manual/en/ini.core.php#ini.register-long-arrays | |
register_long_arrays = Off | |
; This directive determines whether PHP registers $argv & $argc each time it | |
; runs. $argv contains an array of all the arguments passed to PHP when a script | |
; is invoked. $argc contains an integer representing the number of arguments | |
; that were passed when the script was invoked. These arrays are extremely | |
; useful when running scripts from the command line. When this directive is | |
; enabled, registering these variables consumes CPU cycles and memory each time | |
; a script is executed. For performance reasons, this feature should be disabled | |
; on production servers. | |
; Default Value: On | |
; Development Value: Off | |
; Production Value: Off | |
; http://www.php.net/manual/en/ini.core.php#ini.register-argc-argv | |
register_argc_argv = Off | |
; When enabled, the SERVER and ENV variables are created when they're first | |
; used (Just In Time) instead of when the script starts. If these variables | |
; are not used within a script, having this directive on will result in a | |
; performance gain. The PHP directives register_globals, register_long_arrays, | |
; and register_argc_argv must be disabled for this directive to have any affect. | |
; http://www.php.net/manual/en/ini.core.php#ini.auto-globals-jit | |
auto_globals_jit = On | |
; Maximum size of POST data that PHP will accept. | |
; http://www.php.net/manual/en/ini.core.php#ini.post-max-size | |
post_max_size = 8M | |
; Magic quotes are a preprocessing feature of PHP where PHP will attempt to | |
; escape any character sequences in GET, POST, COOKIE and ENV data which might | |
; otherwise corrupt data being placed in resources such as databases before | |
; making that data available to you. Because of character encoding issues and | |
; non-standard SQL implementations across many databases, it's not currently | |
; possible for this feature to be 100% accurate. PHP's default behavior is to | |
; enable the feature. We strongly recommend you use the escaping mechanisms | |
; designed specifically for the database your using instead of relying on this | |
; feature. Also note, this feature has been deprecated as of PHP 5.3.0 and is | |
; scheduled for removal in PHP 6. | |
; Default Value: On | |
; Development Value: Off | |
; Production Value: Off | |
; http://www.php.net/manual/en/info.configuration.php#ini.magic-quotes-gpc | |
magic_quotes_gpc = Off | |
; Magic quotes for runtime-generated data, e.g. data from SQL, from exec(), etc. | |
; http://www.php.net/manual/en/info.configuration.php#ini.magic-quotes-runtime | |
magic_quotes_runtime = Off | |
; Use Sybase-style magic quotes (escape ' with '' instead of \'). | |
; http://www.php.net/manual/en/sybase.configuration.php#ini.magic-quotes-sybase | |
magic_quotes_sybase = Off | |
; Automatically add files before PHP document. | |
; http://www.php.net/manual/en/ini.core.php#ini.auto-prepend-file | |
auto_prepend_file = | |
; Automatically add files after PHP document. | |
; http://www.php.net/manual/en/ini.core.php#ini.auto-append-file | |
auto_append_file = | |
; As of 4.0b4, PHP always outputs a character encoding by default in | |
; the Content-type: header. To disable sending of the charset, simply | |
; set it to be empty. | |
; | |
; PHP's built-in default is text/html | |
; http://www.php.net/manual/en/ini.core.php#ini.default-mimetype | |
default_mimetype = "text/html" | |
; PHP's default character set is set to empty. | |
; http://www.php.net/manual/en/ini.core.php#ini.default-charset | |
;default_charset = "iso-8859-1" | |
; Always populate the $HTTP_RAW_POST_DATA variable. PHP's default behavior is | |
; to disable this feature. | |
; http://www.php.net/manual/en/ini.core.php#ini.always-populate-raw-post-data | |
;always_populate_raw_post_data = On | |
;;;;;;;;;;;;;;;;;;;;;;;;; | |
; Paths and Directories ; | |
;;;;;;;;;;;;;;;;;;;;;;;;; | |
; UNIX: "/path1:/path2" | |
;include_path = ".:/php/includes" | |
; | |
; Windows: "\path1;\path2" | |
;include_path = ".;c:\php\includes" | |
; | |
; PHP's default setting for include_path is ".;/path/to/php/pear" | |
; http://www.php.net/manual/en/ini.core.php#ini.include-path | |
; The root of the PHP pages, used only if nonempty. | |
; if PHP was not compiled with FORCE_REDIRECT, you SHOULD set doc_root | |
; if you are running php as a CGI under any web server (other than IIS) | |
; see documentation for security issues. The alternate is to use the | |
; cgi.force_redirect configuration below | |
; http://www.php.net/manual/en/ini.core.php#ini.doc-root | |
doc_root = | |
; The directory under which PHP opens the script using /~username used only | |
; if nonempty. | |
; http://www.php.net/manual/en/ini.core.php#ini.user-dir | |
user_dir = | |
; Directory in which the loadable extensions (modules) reside. | |
; http://www.php.net/manual/en/ini.core.php#ini.extension-dir | |
; extension_dir = "./" | |
; Whether or not to enable the dl() function. The dl() function does NOT work | |
; properly in multithreaded servers, such as IIS or Zeus, and is automatically | |
; disabled on them. | |
; http://www.php.net/manual/en/info.configuration.php#ini.enable-dl | |
enable_dl = Off | |
; cgi.force_redirect is necessary to provide security running PHP as a CGI under | |
; most web servers. Left undefined, PHP turns this on by default. You can | |
; turn it off here AT YOUR OWN RISK | |
; **You CAN safely turn this off for IIS, in fact, you MUST.** | |
; http://www.php.net/manual/en/ini.core.php#ini.cgi.force-redirect | |
;cgi.force_redirect = 1 | |
; if cgi.nph is enabled it will force cgi to always sent Status: 200 with | |
; every request. PHP's default behavior is to disable this feature. | |
;cgi.nph = 1 | |
; if cgi.force_redirect is turned on, and you are not running under Apache or Netscape | |
; (iPlanet) web servers, you MAY need to set an environment variable name that PHP | |
; will look for to know it is OK to continue execution. Setting this variable MAY | |
; cause security issues, KNOW WHAT YOU ARE DOING FIRST. | |
; http://www.php.net/manual/en/ini.core.php#ini.cgi.redirect-status-env | |
;cgi.redirect_status_env = ; | |
; cgi.fix_pathinfo provides *real* PATH_INFO/PATH_TRANSLATED support for CGI. PHP's | |
; previous behaviour was to set PATH_TRANSLATED to SCRIPT_FILENAME, and to not grok | |
; what PATH_INFO is. For more information on PATH_INFO, see the cgi specs. Setting | |
; this to 1 will cause PHP CGI to fix its paths to conform to the spec. A setting | |
; of zero causes PHP to behave as before. Default is 1. You should fix your scripts | |
; to use SCRIPT_FILENAME rather than PATH_TRANSLATED. | |
; http://www.php.net/manual/en/ini.core.php#ini.cgi.fix-pathinfo | |
cgi.fix_pathinfo=1 | |
; FastCGI under IIS (on WINNT based OS) supports the ability to impersonate | |
; security tokens of the calling client. This allows IIS to define the | |
; security context that the request runs under. mod_fastcgi under Apache | |
; does not currently support this feature (03/17/2002) | |
; Set to 1 if running under IIS. Default is zero. | |
; http://www.php.net/manual/en/ini.core.php#ini.fastcgi.impersonate | |
;fastcgi.impersonate = 1; | |
; Disable logging through FastCGI connection. PHP's default behavior is to enable | |
; this feature. | |
;fastcgi.logging = 0 | |
; cgi.rfc2616_headers configuration option tells PHP what type of headers to | |
; use when sending HTTP response code. If it's set 0 PHP sends Status: header that | |
; is supported by Apache. When this option is set to 1 PHP will send | |
; RFC2616 compliant header. | |
; Default is zero. | |
; http://www.php.net/manual/en/ini.core.php#ini.cgi.rfc2616-headers | |
;cgi.rfc2616_headers = 0 | |
;;;;;;;;;;;;;;;; | |
; File Uploads ; | |
;;;;;;;;;;;;;;;; | |
; Whether to allow HTTP file uploads. | |
; http://www.php.net/manual/en/ini.core.php#ini.file-uploads | |
file_uploads = On | |
; Temporary directory for HTTP uploaded files (will use system default if not | |
; specified). | |
; http://www.php.net/manual/en/ini.core.php#ini.upload-tmp-dir | |
;upload_tmp_dir = | |
; Maximum allowed size for uploaded files. | |
; http://www.php.net/manual/en/ini.core.php#ini.upload-max-filesize | |
upload_max_filesize = 2M | |
;;;;;;;;;;;;;;;;;; | |
; Fopen wrappers ; | |
;;;;;;;;;;;;;;;;;; | |
; Whether to allow the treatment of URLs (like http:// or ftp://) as files. | |
; http://www.php.net/manual/en/filesystem.configuration.php#ini.allow-url-fopen | |
allow_url_fopen = On | |
; Whether to allow include/require to open URLs (like http:// or ftp://) as files. | |
; http://www.php.net/manual/en/filesystem.configuration.php#ini.allow-url-include | |
allow_url_include = Off | |
; Define the anonymous ftp password (your email address). PHP's default setting | |
; for this is empty. | |
; http://www.php.net/manual/en/filesystem.configuration.php#ini.from | |
;from="john@doe.com" | |
; Define the User-Agent string. PHP's default setting for this is empty. | |
; http://www.php.net/manual/en/filesystem.configuration.php#ini.user-agent | |
;user_agent="PHP" | |
; Default timeout for socket based streams (seconds) | |
; http://www.php.net/manual/en/filesystem.configuration.php#ini.default-socket-timeout | |
default_socket_timeout = 60 | |
; If your scripts have to deal with files from Macintosh systems, | |
; or you are running on a Mac and need to deal with files from | |
; unix or win32 systems, setting this flag will cause PHP to | |
; automatically detect the EOL character in those files so that | |
; fgets() and file() will work regardless of the source of the file. | |
; http://www.php.net/manual/en/filesystem.configuration.php#ini.auto-detect-line-endings | |
;auto_detect_line_endings = Off | |
;;;;;;;;;;;;;;;;;;;;;; | |
; Dynamic Extensions ; | |
;;;;;;;;;;;;;;;;;;;;;; | |
; If you wish to have an extension loaded automatically, use the following | |
; syntax: | |
; | |
; extension=modulename.extension | |
; | |
; For example | |
; | |
; extension=msql.so | |
; | |
; ... or with a path: | |
; | |
; extension=/path/to/extension/msql.so | |
; | |
; If you only provide the name of the extension, PHP will look for it in its | |
; default extension directory. | |
;;;; | |
; Note: packaged extension modules are now loaded via the .ini files | |
; found in the directory /etc/php.d; these are loaded by default. | |
;;;; | |
;;;;;;;;;;;;;;;;;;; | |
; Module Settings ; | |
;;;;;;;;;;;;;;;;;;; | |
[Date] | |
; Defines the default timezone used by the date functions | |
; http://www.php.net/manual/en/datetime.configuration.php#ini.date.timezone | |
;date.timezone = | |
; http://www.php.net/manual/en/datetime.configuration.php#ini.date.default-latitude | |
;date.default_latitude = 31.7667 | |
; http://www.php.net/manual/en/datetime.configuration.php#ini.date.default-longitude | |
;date.default_longitude = 35.2333 | |
; http://www.php.net/manual/en/datetime.configuration.php#ini.date.sunrise-zenith | |
;date.sunrise_zenith = 90.583333 | |
; http://www.php.net/manual/en/datetime.configuration.php#ini.date.sunset-zenith | |
;date.sunset_zenith = 90.583333 | |
[filter] | |
; http://www.php.net/manual/en/filter.configuration.php#ini.filter.default | |
;filter.default = unsafe_raw | |
; http://www.php.net/manual/en/filter.configuration.php#ini.filter.default-flags | |
;filter.default_flags = | |
[iconv] | |
;iconv.input_encoding = ISO-8859-1 | |
;iconv.internal_encoding = ISO-8859-1 | |
;iconv.output_encoding = ISO-8859-1 | |
[intl] | |
;intl.default_locale = | |
[sqlite] | |
; http://www.php.net/manual/en/sqlite.configuration.php#ini.sqlite.assoc-case | |
;sqlite.assoc_case = 0 | |
[sqlite3] | |
;sqlite3.extension_dir = | |
[Pcre] | |
;PCRE library backtracking limit. | |
; http://www.php.net/manual/en/pcre.configuration.php#ini.pcre.backtrack-limit | |
;pcre.backtrack_limit=100000 | |
;PCRE library recursion limit. | |
;Please note that if you set this value to a high number you may consume all | |
;the available process stack and eventually crash PHP (due to reaching the | |
;stack size limit imposed by the Operating System). | |
; http://www.php.net/manual/en/pcre.configuration.php#ini.pcre.recursion-limit | |
;pcre.recursion_limit=100000 | |
[Pdo] | |
; Whether to pool ODBC connections. Can be one of "strict", "relaxed" or "off" | |
; http://www.php.net/manual/en/ref.pdo-odbc.php#ini.pdo-odbc.connection-pooling | |
;pdo_odbc.connection_pooling=strict | |
[Phar] | |
; http://www.php.net/manual/en/phar.configuration.php#ini.phar.readonly | |
;phar.readonly = On | |
; http://www.php.net/manual/en/phar.configuration.php#ini.phar.require-hash | |
;phar.require_hash = On | |
;phar.cache_list = | |
[Syslog] | |
; Whether or not to define the various syslog variables (e.g. $LOG_PID, | |
; $LOG_CRON, etc.). Turning it off is a good idea performance-wise. In | |
; runtime, you can define these variables by calling define_syslog_variables(). | |
; http://www.php.net/manual/en/network.configuration.php#ini.define-syslog-variables | |
define_syslog_variables = Off | |
[mail function] | |
; For Win32 only. | |
; http://www.php.net/manual/en/mail.configuration.php#ini.smtp | |
SMTP = localhost | |
; http://www.php.net/manual/en/mail.configuration.php#ini.smtp-port | |
smtp_port = 25 | |
; For Win32 only. | |
; http://www.php.net/manual/en/mail.configuration.php#ini.sendmail-from | |
;sendmail_from = me@example.com | |
; For Unix only. You may supply arguments as well (default: "sendmail -t -i"). | |
; http://www.php.net/manual/en/mail.configuration.php#ini.sendmail-path | |
sendmail_path = /usr/sbin/sendmail -t -i | |
; Force the addition of the specified parameters to be passed as extra parameters | |
; to the sendmail binary. These parameters will always replace the value of | |
; the 5th parameter to mail(), even in safe mode. | |
;mail.force_extra_parameters = | |
; Add X-PHP-Originaiting-Script: that will include uid of the script followed by the filename | |
mail.add_x_header = On | |
; Log all mail() calls including the full path of the script, line #, to address and headers | |
;mail.log = | |
[SQL] | |
; http://www.php.net/manual/en/ini.core.php#ini.sql.safe-mode | |
sql.safe_mode = Off | |
[ODBC] | |
; http://www.php.net/manual/en/odbc.configuration.php#ini.uodbc.default-db | |
;odbc.default_db = Not yet implemented | |
; http://www.php.net/manual/en/odbc.configuration.php#ini.uodbc.default-user | |
;odbc.default_user = Not yet implemented | |
; http://www.php.net/manual/en/odbc.configuration.php#ini.uodbc.default-pw | |
;odbc.default_pw = Not yet implemented | |
; Allow or prevent persistent links. | |
; http://www.php.net/manual/en/odbc.configuration.php#ini.uodbc.allow-persistent | |
odbc.allow_persistent = On | |
; Check that a connection is still valid before reuse. | |
; http://www.php.net/manual/en/odbc.configuration.php#ini.uodbc.check-persistent | |
odbc.check_persistent = On | |
; Maximum number of persistent links. -1 means no limit. | |
; http://www.php.net/manual/en/odbc.configuration.php#ini.uodbc.max-persistent | |
odbc.max_persistent = -1 | |
; Maximum number of links (persistent + non-persistent). -1 means no limit. | |
; http://www.php.net/manual/en/odbc.configuration.php#ini.uodbc.max-links | |
odbc.max_links = -1 | |
; Handling of LONG fields. Returns number of bytes to variables. 0 means | |
; passthru. | |
; http://www.php.net/manual/en/odbc.configuration.php#ini.uodbc.defaultlrl | |
odbc.defaultlrl = 4096 | |
; Handling of binary data. 0 means passthru, 1 return as is, 2 convert to char. | |
; See the documentation on odbc_binmode and odbc_longreadlen for an explanation | |
; of uodbc.defaultlrl and uodbc.defaultbinmode | |
; http://www.php.net/manual/en/odbc.configuration.php#ini.uodbc.defaultbinmode | |
odbc.defaultbinmode = 1 | |
;birdstep.max_links = -1 | |
[MySQL] | |
; Allow or prevent persistent links. | |
; http://www.php.net/manual/en/mysql.configuration.php#ini.mysql.allow-persistent | |
mysql.allow_persistent = On | |
; Maximum number of persistent links. -1 means no limit. | |
; http://www.php.net/manual/en/mysql.configuration.php#ini.mysql.max-persistent | |
mysql.max_persistent = -1 | |
; Maximum number of links (persistent + non-persistent). -1 means no limit. | |
; http://www.php.net/manual/en/mysql.configuration.php#ini.mysql.max-links | |
mysql.max_links = -1 | |
; Default port number for mysql_connect(). If unset, mysql_connect() will use | |
; the $MYSQL_TCP_PORT or the mysql-tcp entry in /etc/services or the | |
; compile-time value defined MYSQL_PORT (in that order). Win32 will only look | |
; at MYSQL_PORT. | |
; http://www.php.net/manual/en/mysql.configuration.php#ini.mysql.default-port | |
mysql.default_port = | |
; Default socket name for local MySQL connects. If empty, uses the built-in | |
; MySQL defaults. | |
; http://www.php.net/manual/en/mysql.configuration.php#ini.mysql.default-socket | |
mysql.default_socket = | |
; Default host for mysql_connect() (doesn't apply in safe mode). | |
; http://www.php.net/manual/en/mysql.configuration.php#ini.mysql.default-host | |
mysql.default_host = | |
; Default user for mysql_connect() (doesn't apply in safe mode). | |
; http://www.php.net/manual/en/mysql.configuration.php#ini.mysql.default-user | |
mysql.default_user = | |
; Default password for mysql_connect() (doesn't apply in safe mode). | |
; Note that this is generally a *bad* idea to store passwords in this file. | |
; *Any* user with PHP access can run 'echo get_cfg_var("mysql.default_password") | |
; and reveal this password! And of course, any users with read access to this | |
; file will be able to reveal the password as well. | |
; http://www.php.net/manual/en/mysql.configuration.php#ini.mysql.default-password | |
mysql.default_password = | |
; Maximum time (in seconds) for connect timeout. -1 means no limit | |
; http://www.php.net/manual/en/mysql.configuration.php#ini.mysql.connect-timeout | |
mysql.connect_timeout = 60 | |
; Trace mode. When trace_mode is active (=On), warnings for table/index scans and | |
; SQL-Errors will be displayed. | |
; http://www.php.net/manual/en/mysql.configuration.php#ini.mysql.trace-mode | |
mysql.trace_mode = Off | |
[MySQLi] | |
; Maximum number of links. -1 means no limit. | |
; http://www.php.net/manual/en/mysqli.configuration.php#ini.mysqli.max-links | |
mysqli.max_links = -1 | |
; Default port number for mysqli_connect(). If unset, mysqli_connect() will use | |
; the $MYSQL_TCP_PORT or the mysql-tcp entry in /etc/services or the | |
; compile-time value defined MYSQL_PORT (in that order). Win32 will only look | |
; at MYSQL_PORT. | |
; http://www.php.net/manual/en/mysqli.configuration.php#ini.mysqli.default-port | |
mysqli.default_port = 3306 | |
; Default socket name for local MySQL connects. If empty, uses the built-in | |
; MySQL defaults. | |
; http://www.php.net/manual/en/mysqli.configuration.php#ini.mysqli.default-socket | |
mysqli.default_socket = | |
; Default host for mysql_connect() (doesn't apply in safe mode). | |
; http://www.php.net/manual/en/mysqli.configuration.php#ini.mysqli.default-host | |
mysqli.default_host = | |
; Default user for mysql_connect() (doesn't apply in safe mode). | |
; http://www.php.net/manual/en/mysqli.configuration.php#ini.mysqli.default-user | |
mysqli.default_user = | |
; Default password for mysqli_connect() (doesn't apply in safe mode). | |
; Note that this is generally a *bad* idea to store passwords in this file. | |
; *Any* user with PHP access can run 'echo get_cfg_var("mysqli.default_pw") | |
; and reveal this password! And of course, any users with read access to this | |
; file will be able to reveal the password as well. | |
; http://www.php.net/manual/en/mysqli.configuration.php#ini.mysqli.default-pw | |
mysqli.default_pw = | |
; Allow or prevent reconnect | |
mysqli.reconnect = Off | |
[PostgresSQL] | |
; Allow or prevent persistent links. | |
; http://www.php.net/manual/en/pgsql.configuration.php#ini.pgsql.allow-persistent | |
pgsql.allow_persistent = On | |
; Detect broken persistent links always with pg_pconnect(). | |
; Auto reset feature requires a little overheads. | |
; http://www.php.net/manual/en/pgsql.configuration.php#ini.pgsql.auto-reset-persistent | |
pgsql.auto_reset_persistent = Off | |
; Maximum number of persistent links. -1 means no limit. | |
; http://www.php.net/manual/en/pgsql.configuration.php#ini.pgsql.max-persistent | |
pgsql.max_persistent = -1 | |
; Maximum number of links (persistent+non persistent). -1 means no limit. | |
; http://www.php.net/manual/en/pgsql.configuration.php#ini.pgsql.max-links | |
pgsql.max_links = -1 | |
; Ignore PostgreSQL backends Notice message or not. | |
; Notice message logging require a little overheads. | |
; http://www.php.net/manual/en/pgsql.configuration.php#ini.pgsql.ignore-notice | |
pgsql.ignore_notice = 0 | |
; Log PostgreSQL backends Noitce message or not. | |
; Unless pgsql.ignore_notice=0, module cannot log notice message. | |
; http://www.php.net/manual/en/pgsql.configuration.php#ini.pgsql.log-notice | |
pgsql.log_notice = 0 | |
[Sybase-CT] | |
; Allow or prevent persistent links. | |
; http://www.php.net/manual/en/sybase.configuration.php#ini.sybct.allow-persistent | |
sybct.allow_persistent = On | |
; Maximum number of persistent links. -1 means no limit. | |
; http://www.php.net/manual/en/sybase.configuration.php#ini.sybct.max-persistent | |
sybct.max_persistent = -1 | |
; Maximum number of links (persistent + non-persistent). -1 means no limit. | |
; http://www.php.net/manual/en/sybase.configuration.php#ini.sybct.max-links | |
sybct.max_links = -1 | |
; Minimum server message severity to display. | |
; http://www.php.net/manual/en/sybase.configuration.php#ini.sybct.min-server-severity | |
sybct.min_server_severity = 10 | |
; Minimum client message severity to display. | |
; http://www.php.net/manual/en/sybase.configuration.php#ini.sybct.min-client-severity | |
sybct.min_client_severity = 10 | |
; Set per-context timeout | |
; http://www.php.net/manual/en/sybase.configuration.php#ini.sybct.timeout | |
;sybct.timeout= | |
;sybct.packet_size | |
[bcmath] | |
; Number of decimal digits for all bcmath functions. | |
; http://www.php.net/manual/en/bc.configuration.php#ini.bcmath.scale | |
bcmath.scale = 0 | |
[browscap] | |
; http://www.php.net/manual/en/misc.configuration.php#ini.browscap | |
;browscap = extra/browscap.ini | |
[Session] | |
; Handler used to store/retrieve data. | |
; http://www.php.net/manual/en/session.configuration.php#ini.session.save-handler | |
session.save_handler = files | |
; Argument passed to save_handler. In the case of files, this is the path | |
; where data files are stored. Note: Windows users have to change this | |
; variable in order to use PHP's session functions. | |
; | |
; As of PHP 4.0.1, you can define the path as: | |
; | |
; session.save_path = "N;/path" | |
; | |
; where N is an integer. Instead of storing all the session files in | |
; /path, what this will do is use subdirectories N-levels deep, and | |
; store the session data in those directories. This is useful if you | |
; or your OS have problems with lots of files in one directory, and is | |
; a more efficient layout for servers that handle lots of sessions. | |
; | |
; NOTE 1: PHP will not create this directory structure automatically. | |
; You can use the script in the ext/session dir for that purpose. | |
; NOTE 2: See the section on garbage collection below if you choose to | |
; use subdirectories for session storage | |
; | |
; The file storage module creates files using mode 600 by default. | |
; You can change that by using | |
; | |
; session.save_path = "N;MODE;/path" | |
; | |
; where MODE is the octal representation of the mode. Note that this | |
; does not overwrite the process's umask. | |
; http://www.php.net/manual/en/session.configuration.php#ini.session.save-path | |
session.save_path = "/tmp" | |
; Whether to use cookies. | |
; http://www.php.net/manual/en/session.configuration.php#ini.session.use-cookies | |
session.use_cookies = 1 | |
; http://www.php.net/manual/en/session.configuration.php#ini.session.cookie-secure | |
;session.cookie_secure = | |
; This option forces PHP to fetch and use a cookie for storing and maintaining | |
; the session id. We encourage this operation as it's very helpful in combatting | |
; session hijacking when not specifying and managing your own session id. It is | |
; not the end all be all of session hijacking defense, but it's a good start. | |
; http://www.php.net/manual/en/session.configuration.php#ini.session.use-only-cookies | |
session.use_only_cookies = 1 | |
; Name of the session (used as cookie name). | |
; http://www.php.net/manual/en/session.configuration.php#ini.session.name | |
session.name = PHPSESSID | |
; Initialize session on request startup. | |
; http://www.php.net/manual/en/session.configuration.php#ini.session.auto-start | |
session.auto_start = 0 | |
; Lifetime in seconds of cookie or, if 0, until browser is restarted. | |
; http://www.php.net/manual/en/session.configuration.php#ini.session.cookie-lifetime | |
session.cookie_lifetime = 0 | |
; The path for which the cookie is valid. | |
; http://www.php.net/manual/en/session.configuration.php#ini.session.cookie-path | |
session.cookie_path = / | |
; The domain for which the cookie is valid. | |
; http://www.php.net/manual/en/session.configuration.php#ini.session.cookie-domain | |
session.cookie_domain = | |
; Whether or not to add the httpOnly flag to the cookie, which makes it inaccessible to browser scripting languages such as JavaScript. | |
; http://www.php.net/manual/en/session.configuration.php#ini.session.cookie-httponly | |
session.cookie_httponly = | |
; Handler used to serialize data. php is the standard serializer of PHP. | |
; http://www.php.net/manual/en/session.configuration.php#ini.session.serialize-handler | |
session.serialize_handler = php | |
; Defines the probability that the 'garbage collection' process is started | |
; on every session initialization. The probability is calculated by using | |
; gc_probability/gc_divisor. Where session.gc_probability is the numerator | |
; and gc_divisor is the denominator in the equation. Setting this value to 1 | |
; when the session.gc_divisor value is 100 will give you approximately a 1% chance | |
; the gc will run on any give request. | |
; Default Value: 1 | |
; Development Value: 1 | |
; Production Value: 1 | |
; http://www.php.net/manual/en/session.configuration.php#ini.session.gc-probability | |
session.gc_probability = 1 | |
; Defines the probability that the 'garbage collection' process is started on every | |
; session initialization. The probability is calculated by using the following equation: | |
; gc_probability/gc_divisor. Where session.gc_probability is the numerator and | |
; session.gc_divisor is the denominator in the equation. Setting this value to 1 | |
; when the session.gc_divisor value is 100 will give you approximately a 1% chance | |
; the gc will run on any give request. Increasing this value to 1000 will give you | |
; a 0.1% chance the gc will run on any give request. For high volume production servers, | |
; this is a more efficient approach. | |
; Default Value: 100 | |
; Development Value: 1000 | |
; Production Value: 1000 | |
; http://www.php.net/manual/en/session.configuration.php#ini.session.gc-divisor | |
session.gc_divisor = 1000 | |
; After this number of seconds, stored data will be seen as 'garbage' and | |
; cleaned up by the garbage collection process. | |
; http://www.php.net/manual/en/session.configuration.php#ini.session.gc-maxlifetime | |
session.gc_maxlifetime = 1440 | |
; NOTE: If you are using the subdirectory option for storing session files | |
; (see session.save_path above), then garbage collection does *not* | |
; happen automatically. You will need to do your own garbage | |
; collection through a shell script, cron entry, or some other method. | |
; For example, the following script would is the equivalent of | |
; setting session.gc_maxlifetime to 1440 (1440 seconds = 24 minutes): | |
; cd /path/to/sessions; find -cmin +24 | xargs rm | |
; PHP 4.2 and less have an undocumented feature/bug that allows you to | |
; to initialize a session variable in the global scope, even when register_globals | |
; is disabled. PHP 4.3 and later will warn you, if this feature is used. | |
; You can disable the feature and the warning separately. At this time, | |
; the warning is only displayed, if bug_compat_42 is enabled. This feature | |
; introduces some serious security problems if not handled correctly. It's | |
; recommended that you do not use this feature on production servers. But you | |
; should enable this on development servers and enable the warning as well. If you | |
; do not enable the feature on development servers, you won't be warned when it's | |
; used and debugging errors caused by this can be difficult to track down. | |
; Default Value: On | |
; Development Value: On | |
; Production Value: Off | |
; http://www.php.net/manual/en/session.configuration.php#ini.session.bug-compat-42 | |
session.bug_compat_42 = Off | |
; This setting controls whether or not you are warned by PHP when initializing a | |
; session value into the global space. session.bug_compat_42 must be enabled before | |
; these warnings can be issued by PHP. See the directive above for more information. | |
; Default Value: On | |
; Development Value: On | |
; Production Value: Off | |
; http://www.php.net/manual/en/session.configuration.php#ini.session.bug-compat-warn | |
session.bug_compat_warn = Off | |
; Check HTTP Referer to invalidate externally stored URLs containing ids. | |
; HTTP_REFERER has to contain this substring for the session to be | |
; considered as valid. | |
; http://www.php.net/manual/en/session.configuration.php#ini.session.referer-check | |
session.referer_check = | |
; How many bytes to read from the file. | |
; http://www.php.net/manual/en/session.configuration.php#ini.session.entropy-length | |
session.entropy_length = 0 | |
; Specified here to create the session id. | |
; http://www.php.net/manual/en/session.configuration.php#ini.session.entropy-file | |
;session.entropy_file = /dev/urandom | |
session.entropy_file = | |
; http://www.php.net/manual/en/session.configuration.php#ini.session.entropy-length | |
;session.entropy_length = 16 | |
; Set to {nocache,private,public,} to determine HTTP caching aspects | |
; or leave this empty to avoid sending anti-caching headers. | |
; http://www.php.net/manual/en/session.configuration.php#ini.session.cache-limiter | |
session.cache_limiter = nocache | |
; Document expires after n minutes. | |
; http://www.php.net/manual/en/session.configuration.php#ini.session.cache-expire | |
session.cache_expire = 180 | |
; trans sid support is disabled by default. | |
; Use of trans sid may risk your users security. | |
; Use this option with caution. | |
; - User may send URL contains active session ID | |
; to other person via. email/irc/etc. | |
; - URL that contains active session ID may be stored | |
; in publically accessible computer. | |
; - User may access your site with the same session ID | |
; always using URL stored in browser's history or bookmarks. | |
; http://www.php.net/manual/en/session.configuration.php#ini.session.use-trans-sid | |
session.use_trans_sid = 0 | |
; Select a hash function for use in generating session ids. | |
; Possible Values | |
; 0 (MD5 128 bits) | |
; 1 (SHA-1 160 bits) | |
; http://www.php.net/manual/en/session.configuration.php#ini.session.hash-function | |
session.hash_function = 0 | |
; Define how many bits are stored in each character when converting | |
; the binary hash data to something readable. | |
; Possible values: | |
; 4 (4 bits: 0-9, a-f) | |
; 5 (5 bits: 0-9, a-v) | |
; 6 (6 bits: 0-9, a-z, A-Z, "-", ",") | |
; Default Value: 4 | |
; Development Value: 5 | |
; Production Value: 5 | |
; http://www.php.net/manual/en/session.configuration.php#ini.session.hash-bits-per-character | |
session.hash_bits_per_character = 5 | |
; The URL rewriter will look for URLs in a defined set of HTML tags. | |
; form/fieldset are special; if you include them here, the rewriter will | |
; add a hidden <input> field with the info which is otherwise appended | |
; to URLs. If you want XHTML conformity, remove the form entry. | |
; Note that all valid entries require a "=", even if no value follows. | |
; Default Value: "a=href,area=href,frame=src,form=,fieldset=" | |
; Development Value: "a=href,area=href,frame=src,input=src,form=fakeentry" | |
; Production Value: "a=href,area=href,frame=src,input=src,form=fakeentry" | |
; http://www.php.net/manual/en/session.configuration.php#ini.url-rewriter.tags | |
url_rewriter.tags = "a=href,area=href,frame=src,input=src,form=fakeentry" | |
[MSSQL] | |
; Allow or prevent persistent links. | |
mssql.allow_persistent = On | |
; Maximum number of persistent links. -1 means no limit. | |
mssql.max_persistent = -1 | |
; Maximum number of links (persistent+non persistent). -1 means no limit. | |
mssql.max_links = -1 | |
; Minimum error severity to display. | |
mssql.min_error_severity = 10 | |
; Minimum message severity to display. | |
mssql.min_message_severity = 10 | |
; Compatibility mode with old versions of PHP 3.0. | |
mssql.compatability_mode = Off | |
; Connect timeout | |
;mssql.connect_timeout = 5 | |
; Query timeout | |
;mssql.timeout = 60 | |
; Valid range 0 - 2147483647. Default = 4096. | |
;mssql.textlimit = 4096 | |
; Valid range 0 - 2147483647. Default = 4096. | |
;mssql.textsize = 4096 | |
; Limits the number of records in each batch. 0 = all records in one batch. | |
;mssql.batchsize = 0 | |
; Specify how datetime and datetim4 columns are returned | |
; On => Returns data converted to SQL server settings | |
; Off => Returns values as YYYY-MM-DD hh:mm:ss | |
;mssql.datetimeconvert = On | |
; Use NT authentication when connecting to the server | |
mssql.secure_connection = Off | |
; Specify max number of processes. -1 = library default | |
; msdlib defaults to 25 | |
; FreeTDS defaults to 4096 | |
;mssql.max_procs = -1 | |
; Specify client character set. | |
; If empty or not set the client charset from freetds.comf is used | |
; This is only used when compiled with FreeTDS | |
;mssql.charset = "ISO-8859-1" | |
[Assertion] | |
; Assert(expr); active by default. | |
; http://www.php.net/manual/en/info.configuration.php#ini.assert.active | |
;assert.active = On | |
; Issue a PHP warning for each failed assertion. | |
; http://www.php.net/manual/en/info.configuration.php#ini.assert.warning | |
;assert.warning = On | |
; Don't bail out by default. | |
; http://www.php.net/manual/en/info.configuration.php#ini.assert.bail | |
;assert.bail = Off | |
; User-function to be called if an assertion fails. | |
; http://www.php.net/manual/en/info.configuration.php#ini.assert.callback | |
;assert.callback = 0 | |
; Eval the expression with current error_reporting(). Set to true if you want | |
; error_reporting(0) around the eval(). | |
; http://www.php.net/manual/en/info.configuration.php#ini.assert.quiet-eval | |
;assert.quiet_eval = 0 | |
[COM] | |
; path to a file containing GUIDs, IIDs or filenames of files with TypeLibs | |
; http://www.php.net/manual/en/com.configuration.php#ini.com.typelib-file | |
;com.typelib_file = | |
; allow Distributed-COM calls | |
; http://www.php.net/manual/en/com.configuration.php#ini.com.allow-dcom | |
;com.allow_dcom = true | |
; autoregister constants of a components typlib on com_load() | |
; http://www.php.net/manual/en/com.configuration.php#ini.com.autoregister-typelib | |
;com.autoregister_typelib = true | |
; register constants casesensitive | |
; http://www.php.net/manual/en/com.configuration.php#ini.com.autoregister-casesensitive | |
;com.autoregister_casesensitive = false | |
; show warnings on duplicate constant registrations | |
; http://www.php.net/manual/en/com.configuration.php#ini.com.autoregister-verbose | |
;com.autoregister_verbose = true | |
[mbstring] | |
; language for internal character representation. | |
; http://www.php.net/manual/en/mbstring.configuration.php#ini.mbstring.language | |
;mbstring.language = Japanese | |
; internal/script encoding. | |
; Some encoding cannot work as internal encoding. | |
; (e.g. SJIS, BIG5, ISO-2022-*) | |
; http://www.php.net/manual/en/mbstring.configuration.php#ini.mbstring.internal-encoding | |
;mbstring.internal_encoding = EUC-JP | |
; http input encoding. | |
; http://www.php.net/manual/en/mbstring.configuration.php#ini.mbstring.http-input | |
;mbstring.http_input = auto | |
; http output encoding. mb_output_handler must be | |
; registered as output buffer to function | |
; http://www.php.net/manual/en/mbstring.configuration.php#ini.mbstring.http-output | |
;mbstring.http_output = SJIS | |
; enable automatic encoding translation according to | |
; mbstring.internal_encoding setting. Input chars are | |
; converted to internal encoding by setting this to On. | |
; Note: Do _not_ use automatic encoding translation for | |
; portable libs/applications. | |
; http://www.php.net/manual/en/mbstring.configuration.php#ini.mbstring.encoding-translation | |
;mbstring.encoding_translation = Off | |
; automatic encoding detection order. | |
; auto means | |
; http://www.php.net/manual/en/mbstring.configuration.php#ini.mbstring.detect-order | |
;mbstring.detect_order = auto | |
; substitute_character used when character cannot be converted | |
; one from another | |
; http://www.php.net/manual/en/mbstring.configuration.php#ini.mbstring.substitute-character | |
;mbstring.substitute_character = none; | |
; overload(replace) single byte functions by mbstring functions. | |
; mail(), ereg(), etc are overloaded by mb_send_mail(), mb_ereg(), | |
; etc. Possible values are 0,1,2,4 or combination of them. | |
; For example, 7 for overload everything. | |
; 0: No overload | |
; 1: Overload mail() function | |
; 2: Overload str*() functions | |
; 4: Overload ereg*() functions | |
; http://www.php.net/manual/en/mbstring.configuration.php#ini.mbstring.func-overload | |
;mbstring.func_overload = 0 | |
; enable strict encoding detection. | |
;mbstring.strict_detection = Off | |
; This directive specifies the regex pattern of content types for which mb_output_handler() | |
; is activated. | |
; Default: mbstring.http_output_conv_mimetype=^(text/|application/xhtml\+xml) | |
;mbstring.http_output_conv_mimetype= | |
[gd] | |
; Tell the jpeg decode to ignore warnings and try to create | |
; a gd image. The warning will then be displayed as notices | |
; disabled by default | |
; http://www.php.net/manual/en/image.configuration.php#ini.image.jpeg-ignore-warning | |
;gd.jpeg_ignore_warning = 0 | |
[exif] | |
; Exif UNICODE user comments are handled as UCS-2BE/UCS-2LE and JIS as JIS. | |
; With mbstring support this will automatically be converted into the encoding | |
; given by corresponding encode setting. When empty mbstring.internal_encoding | |
; is used. For the decode settings you can distinguish between motorola and | |
; intel byte order. A decode setting cannot be empty. | |
; http://www.php.net/manual/en/exif.configuration.php#ini.exif.encode-unicode | |
;exif.encode_unicode = ISO-8859-15 | |
; http://www.php.net/manual/en/exif.configuration.php#ini.exif.decode-unicode-motorola | |
;exif.decode_unicode_motorola = UCS-2BE | |
; http://www.php.net/manual/en/exif.configuration.php#ini.exif.decode-unicode-intel | |
;exif.decode_unicode_intel = UCS-2LE | |
; http://www.php.net/manual/en/exif.configuration.php#ini.exif.encode-jis | |
;exif.encode_jis = | |
; http://www.php.net/manual/en/exif.configuration.php#ini.exif.decode-jis-motorola | |
;exif.decode_jis_motorola = JIS | |
; http://www.php.net/manual/en/exif.configuration.php#ini.exif.decode-jis-intel | |
;exif.decode_jis_intel = JIS | |
[Tidy] | |
; The path to a default tidy configuration file to use when using tidy | |
; http://www.php.net/manual/en/tidy.configuration.php#ini.tidy.default-config | |
;tidy.default_config = /usr/local/lib/php/default.tcfg | |
; Should tidy clean and repair output automatically? | |
; WARNING: Do not use this option if you are generating non-html content | |
; such as dynamic images | |
; http://www.php.net/manual/en/tidy.configuration.php#ini.tidy.clean-output | |
tidy.clean_output = Off | |
[soap] | |
; Enables or disables WSDL caching feature. | |
; http://www.php.net/manual/en/soap.configuration.php#ini.soap.wsdl-cache-enabled | |
soap.wsdl_cache_enabled=1 | |
; Sets the directory name where SOAP extension will put cache files. | |
; http://www.php.net/manual/en/soap.configuration.php#ini.soap.wsdl-cache-dir | |
soap.wsdl_cache_dir="/tmp" | |
; (time to live) Sets the number of second while cached file will be used | |
; instead of original one. | |
; http://www.php.net/manual/en/soap.configuration.php#ini.soap.wsdl-cache-ttl | |
soap.wsdl_cache_ttl=86400 | |
[sysvshm] | |
; A default size of the shared memory segment | |
;sysvshm.init_mem = 10000 | |
; Local Variables: | |
; tab-width: 4 | |
; End: | |
#!/bin/sh | |
# | |
# This script will be executed *after* all the other init scripts. | |
# You can put your own initialization stuff in here if you don't | |
# want to do the full Sys V style init stuff. | |
touch /var/lock/subsys/local | |
cd /tmp | |
rm -rfv busui | |
git clone http://maxious.lambdacomplex.org/busui/git | |
sh busui/aws/awsStartup.sh | |
Binary files /dev/null and b/css/images/ui-bg_diagonals-thick_18_b81900_40x40.png differ
Binary files /dev/null and b/css/images/ui-bg_diagonals-thick_20_666666_40x40.png differ
Binary files /dev/null and b/css/images/ui-bg_flat_10_000000_40x100.png differ
Binary files /dev/null and b/css/images/ui-bg_glass_100_f6f6f6_1x400.png differ
Binary files /dev/null and b/css/images/ui-bg_glass_100_fdf5ce_1x400.png differ
Binary files /dev/null and b/css/images/ui-bg_glass_65_ffffff_1x400.png differ
Binary files /dev/null and b/css/images/ui-bg_gloss-wave_35_f6a828_500x100.png differ
Binary files /dev/null and b/css/images/ui-bg_highlight-soft_100_eeeeee_1x100.png differ
Binary files /dev/null and b/css/images/ui-bg_highlight-soft_75_ffe45c_1x100.png differ
Binary files /dev/null and b/css/images/ui-icons_222222_256x240.png differ
Binary files /dev/null and b/css/images/ui-icons_228ef1_256x240.png differ
Binary files /dev/null and b/css/images/ui-icons_ef8c08_256x240.png differ
Binary files /dev/null and b/css/images/ui-icons_ffd27a_256x240.png differ
Binary files /dev/null and b/css/images/ui-icons_ffffff_256x240.png differ
Binary files /dev/null and b/css/images/warning.png differ
/* | |
* jQuery UI CSS Framework 1.8.12 | |
* | |
* 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.12 | |
* | |
* 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=Trebuchet%20MS,%20Tahoma,%20Verdana,%20Arial,%20sans-serif&fwDefault=bold&fsDefault=1.1em&cornerRadius=4px&bgColorHeader=f6a828&bgTextureHeader=12_gloss_wave.png&bgImgOpacityHeader=35&borderColorHeader=e78f08&fcHeader=ffffff&iconColorHeader=ffffff&bgColorContent=eeeeee&bgTextureContent=03_highlight_soft.png&bgImgOpacityContent=100&borderColorContent=dddddd&fcContent=333333&iconColorContent=222222&bgColorDefault=f6f6f6&bgTextureDefault=02_glass.png&bgImgOpacityDefault=100&borderColorDefault=cccccc&fcDefault=1c94c4&iconColorDefault=ef8c08&bgColorHover=fdf5ce&bgTextureHover=02_glass.png&bgImgOpacityHover=100&borderColorHover=fbcb09&fcHover=c77405&iconColorHover=ef8c08&bgColorActive=ffffff&bgTextureActive=02_glass.png&bgImgOpacityActive=65&borderColorActive=fbd850&fcActive=eb8f00&iconColorActive=ef8c08&bgColorHighlight=ffe45c&bgTextureHighlight=03_highlight_soft.png&bgImgOpacityHighlight=75&borderColorHighlight=fed22f&fcHighlight=363636&iconColorHighlight=228ef1&bgColorError=b81900&bgTextureError=08_diagonals_thick.png&bgImgOpacityError=18&borderColorError=cd0a0a&fcError=ffffff&iconColorError=ffd27a&bgColorOverlay=666666&bgTextureOverlay=08_diagonals_thick.png&bgImgOpacityOverlay=20&opacityOverlay=50&bgColorShadow=000000&bgTextureShadow=01_flat.png&bgImgOpacityShadow=10&opacityShadow=20&thicknessShadow=5px&offsetTopShadow=-5px&offsetLeftShadow=-5px&cornerRadiusShadow=5px | |
*/ | |
/* Component containers | |
----------------------------------*/ | |
.ui-widget { font-family: Trebuchet MS, Tahoma, 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: Trebuchet MS, Tahoma, Verdana, Arial, sans-serif; font-size: 1em; } | |
.ui-widget-content { border: 1px solid #dddddd; background: #eeeeee url(images/ui-bg_highlight-soft_100_eeeeee_1x100.png) 50% top repeat-x; color: #333333; } | |
.ui-widget-content a { color: #333333; } | |
.ui-widget-header { border: 1px solid #e78f08; background: #f6a828 url(images/ui-bg_gloss-wave_35_f6a828_500x100.png) 50% 50% repeat-x; color: #ffffff; font-weight: bold; } | |
.ui-widget-header a { color: #ffffff; } | |
/* Interaction states | |
----------------------------------*/ | |
.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default { border: 1px solid #cccccc; background: #f6f6f6 url(images/ui-bg_glass_100_f6f6f6_1x400.png) 50% 50% repeat-x; font-weight: bold; color: #1c94c4; } | |
.ui-state-default a, .ui-state-default a:link, .ui-state-default a:visited { color: #1c94c4; 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 #fbcb09; background: #fdf5ce url(images/ui-bg_glass_100_fdf5ce_1x400.png) 50% 50% repeat-x; font-weight: bold; color: #c77405; } | |
.ui-state-hover a, .ui-state-hover a:hover { color: #c77405; text-decoration: none; } | |
.ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active { border: 1px solid #fbd850; background: #ffffff url(images/ui-bg_glass_65_ffffff_1x400.png) 50% 50% repeat-x; font-weight: bold; color: #eb8f00; } | |
.ui-state-active a, .ui-state-active a:link, .ui-state-active a:visited { color: #eb8f00; 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 #fed22f; background: #ffe45c url(images/ui-bg_highlight-soft_75_ffe45c_1x100.png) 50% top 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: #b81900 url(images/ui-bg_diagonals-thick_18_b81900_40x40.png) 50% 50% repeat; color: #ffffff; } | |
.ui-state-error a, .ui-widget-content .ui-state-error a, .ui-widget-header .ui-state-error a { color: #ffffff; } | |
.ui-state-error-text, .ui-widget-content .ui-state-error-text, .ui-widget-header .ui-state-error-text { color: #ffffff; } | |
.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_ffffff_256x240.png); } | |
.ui-state-default .ui-icon { background-image: url(images/ui-icons_ef8c08_256x240.png); } | |
.ui-state-hover .ui-icon, .ui-state-focus .ui-icon {background-image: url(images/ui-icons_ef8c08_256x240.png); } | |
.ui-state-active .ui-icon {background-image: url(images/ui-icons_ef8c08_256x240.png); } | |
.ui-state-highlight .ui-icon {background-image: url(images/ui-icons_228ef1_256x240.png); } | |
.ui-state-error .ui-icon, .ui-state-error-text .ui-icon {background-image: url(images/ui-icons_ffd27a_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: #666666 url(images/ui-bg_diagonals-thick_20_666666_40x40.png) 50% 50% repeat; opacity: .50;filter:Alpha(Opacity=50); } | |
.ui-widget-shadow { margin: -5px 0 0 -5px; padding: 5px; background: #000000 url(images/ui-bg_flat_10_000000_40x100.png) 50% 50% repeat-x; opacity: .20;filter:Alpha(Opacity=20); -moz-border-radius: 5px; -webkit-border-radius: 5px; border-radius: 5px; }/* | |
* jQuery UI Autocomplete 1.8.12 | |
* | |
* 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.12 | |
* | |
* 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 Mobile v1.0a4 | |
* http://jquerymobile.com/ | |
* | |
* Copyright 2010, jQuery Project | |
* Dual licensed under the MIT or GPL Version 2 licenses. | |
* http://jquery.org/license | |
*/ | |
/* | |
* 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 { | |
border: 1px solid #808080; | |
background: #ced0d2; | |
font-weight: bold; | |
color: #111; | |
text-shadow: none; | |
background-image: -moz-linear-gradient(top, | |
#cccccc, | |
#eeeeee); | |
background-image: -webkit-gradient(linear,left top,left bottom, | |
color-stop(0, #cccccc), | |
color-stop(1, #eeeeee)); | |
-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; | |
} | |
/* 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 1px #fe3; | |
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(images/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(images/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(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); | |
} | |
} | |
/* 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(images/icon-search-black.png); | |
background-size: 16px 16px; | |
} | |
/* loading icon */ | |
.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; | |
} | |
/* 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 { min-height: 100%; } | |
.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: 10; 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 body 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. | |
*/ | |
.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); /* 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; 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; } | |
/*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: 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; } | |
*/ | |
.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; } /* | |
* 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-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; } | |
/* 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; } | |
.min-width-480px .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); } | |
.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; } | |
/* 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; } | |
.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; } | |
/* 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!*/ | |
.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%; /*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; } | |
.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; } | |
/* 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, .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: none; border-color: transparent; } | |
span.ui-slider-label-a { left: -100%; margin-right: -1px } | |
span.ui-slider-label-b { right: -100%; margin-left: -1px } | |
/*! jQuery Mobile v1.1.0 db342b1f315c282692791aa870455901fdb46a55 jquerymobile.com | jquery.org/license */ | |
.ui-bar-a{border:1px solid #333;background:#111;color:#fff;font-weight:bold;text-shadow:0 -1px 1px #000;background-image:-webkit-gradient(linear,left top,left bottom,from(#3c3c3c),to(#111));background-image:-webkit-linear-gradient(#3c3c3c,#111);background-image:-moz-linear-gradient(#3c3c3c,#111);background-image:-ms-linear-gradient(#3c3c3c,#111);background-image:-o-linear-gradient(#3c3c3c,#111);background-image:linear-gradient(#3c3c3c,#111)}.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-bar-a .ui-link:hover{color:#2489ce}.ui-bar-a .ui-link:active{color:#2489ce}.ui-bar-a .ui-link:visited{color:#2489ce}.ui-body-a,.ui-overlay-a{border:1px solid #444;background:#222;color:#fff;text-shadow:0 1px 1px #111;font-weight:normal;background-image:-webkit-gradient(linear,left top,left bottom,from(#444),to(#222));background-image:-webkit-linear-gradient(#444,#222);background-image:-moz-linear-gradient(#444,#222);background-image:-ms-linear-gradient(#444,#222);background-image:-o-linear-gradient(#444,#222);background-image:linear-gradient(#444,#222)}.ui-overlay-a{background-image:none;border-width:0}.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-body-a .ui-link:hover{color:#2489ce}.ui-body-a .ui-link:active{color:#2489ce}.ui-body-a .ui-link:visited{color:#2489ce}.ui-btn-up-a{border:1px solid #111;background:#333;font-weight:bold;color:#fff;text-shadow:0 1px 1px #111;background-image:-webkit-gradient(linear,left top,left bottom,from(#444),to(#2d2d2d));background-image:-webkit-linear-gradient(#444,#2d2d2d);background-image:-moz-linear-gradient(#444,#2d2d2d);background-image:-ms-linear-gradient(#444,#2d2d2d);background-image:-o-linear-gradient(#444,#2d2d2d);background-image:linear-gradient(#444,#2d2d2d)}.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 #111;background-image:-webkit-gradient(linear,left top,left bottom,from(#555),to(#383838));background-image:-webkit-linear-gradient(#555,#383838);background-image:-moz-linear-gradient(#555,#383838);background-image:-ms-linear-gradient(#555,#383838);background-image:-o-linear-gradient(#555,#383838);background-image:linear-gradient(#555,#383838)}.ui-btn-hover-a a.ui-link-inherit{color:#fff}.ui-btn-down-a{border:1px solid #000;background:#222;font-weight:bold;color:#fff;text-shadow:0 1px 1px #111;background-image:-webkit-gradient(linear,left top,left bottom,from(#202020),to(#2c2c2c));background-image:-webkit-linear-gradient(#202020,#2c2c2c);background-image:-moz-linear-gradient(#202020,#2c2c2c);background-image:-ms-linear-gradient(#202020,#2c2c2c);background-image:-o-linear-gradient(#202020,#2c2c2c);background-image:linear-gradient(#202020,#2c2c2c)}.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 #3e6790;background-image:-webkit-gradient(linear,left top,left bottom,from(#6facd5),to(#497bae));background-image:-webkit-linear-gradient(#6facd5,#497bae);background-image:-moz-linear-gradient(#6facd5,#497bae);background-image:-ms-linear-gradient(#6facd5,#497bae);background-image:-o-linear-gradient(#6facd5,#497bae);background-image:linear-gradient(#6facd5,#497bae)}.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:#ddf0f8;font-weight:bold}.ui-bar-b .ui-link:hover{color:#ddf0f8}.ui-bar-b .ui-link:active{color:#ddf0f8}.ui-bar-b .ui-link:visited{color:#ddf0f8}.ui-body-b,.ui-overlay-b{border:1px solid #999;background:#f3f3f3;color:#222;text-shadow:0 1px 0 #fff;font-weight:normal;background-image:-webkit-gradient(linear,left top,left bottom,from(#ddd),to(#ccc));background-image:-webkit-linear-gradient(#ddd,#ccc);background-image:-moz-linear-gradient(#ddd,#ccc);background-image:-ms-linear-gradient(#ddd,#ccc);background-image:-o-linear-gradient(#ddd,#ccc);background-image:linear-gradient(#ddd,#ccc)}.ui-overlay-b{background-image:none;border-width:0}.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-body-b .ui-link:hover{color:#2489ce}.ui-body-b .ui-link:active{color:#2489ce}.ui-body-b .ui-link:visited{color:#2489ce}.ui-btn-up-b{border:1px solid #044062;background:#396b9e;font-weight:bold;color:#fff;text-shadow:0 1px 1px #194b7e;background-image:-webkit-gradient(linear,left top,left bottom,from(#5f9cc5),to(#396b9e));background-image:-webkit-linear-gradient(#5f9cc5,#396b9e);background-image:-moz-linear-gradient(#5f9cc5,#396b9e);background-image:-ms-linear-gradient(#5f9cc5,#396b9e);background-image:-o-linear-gradient(#5f9cc5,#396b9e);background-image:linear-gradient(#5f9cc5,#396b9e)}.ui-btn-up-b a.ui-link-inherit{color:#fff}.ui-btn-hover-b{border:1px solid #00415e;background:#4b88b6;font-weight:bold;color:#fff;text-shadow:0 1px 1px #194b7e;background-image:-webkit-gradient(linear,left top,left bottom,from(#6facd5),to(#4272a4));background-image:-webkit-linear-gradient(#6facd5,#4272a4);background-image:-moz-linear-gradient(#6facd5,#4272a4);background-image:-ms-linear-gradient(#6facd5,#4272a4);background-image:-o-linear-gradient(#6facd5,#4272a4);background-image:linear-gradient(#6facd5,#4272a4)}.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 #194b7e;background-image:-webkit-gradient(linear,left top,left bottom,from(#295b8e),to(#3e79b5));background-image:-webkit-linear-gradient(#295b8e,#3e79b5);background-image:-moz-linear-gradient(#295b8e,#3e79b5);background-image:-ms-linear-gradient(#295b8e,#3e79b5);background-image:-o-linear-gradient(#295b8e,#3e79b5);background-image:linear-gradient(#295b8e,#3e79b5)}.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:#eee;color:#3e3e3e;font-weight:bold;text-shadow:0 1px 1px #fff;background-image:-webkit-gradient(linear,left top,left bottom,from(#f0f0f0),to(#ddd));background-image:-webkit-linear-gradient(#f0f0f0,#ddd);background-image:-moz-linear-gradient(#f0f0f0,#ddd);background-image:-ms-linear-gradient(#f0f0f0,#ddd);background-image:-o-linear-gradient(#f0f0f0,#ddd);background-image:linear-gradient(#f0f0f0,#ddd)}.ui-bar-c .ui-link-inherit{color:#3e3e3e}.ui-bar-c .ui-link{color:#7cc4e7;font-weight:bold}.ui-bar-c .ui-link:hover{color:#2489ce}.ui-bar-c .ui-link:active{color:#2489ce}.ui-bar-c .ui-link:visited{color:#2489ce}.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,.ui-overlay-c{border:1px solid #aaa;color:#333;text-shadow:0 1px 0 #fff;background:#f9f9f9;background-image:-webkit-gradient(linear,left top,left bottom,from(#f9f9f9),to(#eee));background-image:-webkit-linear-gradient(#f9f9f9,#eee);background-image:-moz-linear-gradient(#f9f9f9,#eee);background-image:-ms-linear-gradient(#f9f9f9,#eee);background-image:-o-linear-gradient(#f9f9f9,#eee);background-image:linear-gradient(#f9f9f9,#eee)}.ui-overlay-c{background-image:none;border-width:0}.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-body-c .ui-link:hover{color:#2489ce}.ui-body-c .ui-link:active{color:#2489ce}.ui-body-c .ui-link:visited{color:#2489ce}.ui-btn-up-c{border:1px solid #ccc;background:#eee;font-weight:bold;color:#222;text-shadow:0 1px 0 #fff;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#f1f1f1));background-image:-webkit-linear-gradient(#fff,#f1f1f1);background-image:-moz-linear-gradient(#fff,#f1f1f1);background-image:-ms-linear-gradient(#fff,#f1f1f1);background-image:-o-linear-gradient(#fff,#f1f1f1);background-image:linear-gradient(#fff,#f1f1f1)}.ui-btn-up-c a.ui-link-inherit{color:#2f3e46}.ui-btn-hover-c{border:1px solid #bbb;background:#dfdfdf;font-weight:bold;color:#222;text-shadow:0 1px 0 #fff;background-image:-webkit-gradient(linear,left top,left bottom,from(#f6f6f6),to(#e0e0e0));background-image:-webkit-linear-gradient(#f9f9f9,#e0e0e0);background-image:-moz-linear-gradient(#f6f6f6,#e0e0e0);background-image:-ms-linear-gradient(#f6f6f6,#e0e0e0);background-image:-o-linear-gradient(#f6f6f6,#e0e0e0);background-image:linear-gradient(#f6f6f6,#e0e0e0)}.ui-btn-hover-c a.ui-link-inherit{color:#2f3e46}.ui-btn-down-c{border:1px solid #bbb;background:#d6d6d6;font-weight:bold;color:#222;text-shadow:0 1px 0 #fff;background-image:-webkit-gradient(linear,left top,left bottom,from(#d0d0d0),to(#dfdfdf));background-image:-webkit-linear-gradient(#d0d0d0,#dfdfdf);background-image:-moz-linear-gradient(#d0d0d0,#dfdfdf);background-image:-ms-linear-gradient(#d0d0d0,#dfdfdf);background-image:-o-linear-gradient(#d0d0d0,#dfdfdf);background-image:linear-gradient(#d0d0d0,#dfdfdf)}.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 #bbb;background:#bbb;color:#333;text-shadow:0 1px 0 #eee;background-image:-webkit-gradient(linear,left top,left bottom,from(#ddd),to(#bbb));background-image:-webkit-linear-gradient(#ddd,#bbb);background-image:-moz-linear-gradient(#ddd,#bbb);background-image:-ms-linear-gradient(#ddd,#bbb);background-image:-o-linear-gradient(#ddd,#bbb);background-image:linear-gradient(#ddd,#bbb)}.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-bar-d .ui-link:hover{color:#2489ce}.ui-bar-d .ui-link:active{color:#2489ce}.ui-bar-d .ui-link:visited{color:#2489ce}.ui-body-d,.ui-overlay-d{border:1px solid #bbb;color:#333;text-shadow:0 1px 0 #fff;background:#fff;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#fff));background-image:-webkit-linear-gradient(#fff,#fff);background-image:-moz-linear-gradient(#fff,#fff);background-image:-ms-linear-gradient(#fff,#fff);background-image:-o-linear-gradient(#fff,#fff);background-image:linear-gradient(#fff,#fff)}.ui-overlay-d{background-image:none;border-width:0}.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-body-d .ui-link:hover{color:#2489ce}.ui-body-d .ui-link:active{color:#2489ce}.ui-body-d .ui-link:visited{color:#2489ce}.ui-btn-up-d{border:1px solid #bbb;background:#fff;font-weight:bold;color:#333;text-shadow:0 1px 0 #fff;background-image:-webkit-gradient(linear,left top,left bottom,from(#fafafa),to(#f6f6f6));background-image:-webkit-linear-gradient(#fafafa,#f6f6f6);background-image:-moz-linear-gradient(#fafafa,#f6f6f6);background-image:-ms-linear-gradient(#fafafa,#f6f6f6);background-image:-o-linear-gradient(#fafafa,#f6f6f6);background-image:linear-gradient(#fafafa,#f6f6f6)}.ui-btn-up-d a.ui-link-inherit{color:#333}.ui-btn-hover-d{border:1px solid #aaa;background:#eee;font-weight:bold;color:#333;cursor:pointer;text-shadow:0 1px 0 #fff;background-image:-webkit-gradient(linear,left top,left bottom,from(#eee),to(#fff));background-image:-webkit-linear-gradient(#eee,#fff);background-image:-moz-linear-gradient(#eee,#fff);background-image:-ms-linear-gradient(#eee,#fff);background-image:-o-linear-gradient(#eee,#fff);background-image:linear-gradient(#eee,#fff)}.ui-btn-hover-d a.ui-link-inherit{color:#333}.ui-btn-down-d{border:1px solid #aaa;background:#eee;font-weight:bold;color:#333;text-shadow:0 1px 0 #fff;background-image:-webkit-gradient(linear,left top,left bottom,from(#e5e5e5),to(#f2f2f2));background-image:-webkit-linear-gradient(#e5e5e5,#f2f2f2);background-image:-moz-linear-gradient(#e5e5e5,#f2f2f2);background-image:-ms-linear-gradient(#e5e5e5,#f2f2f2);background-image:-o-linear-gradient(#e5e5e5,#f2f2f2);background-image:linear-gradient(#e5e5e5,#f2f2f2)}.ui-btn-down-d a.ui-link-inherit{color:#333}.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:-webkit-gradient(linear,left top,left bottom,from(#fceda7),to(#fbef7e));background-image:-webkit-linear-gradient(#fceda7,#fbef7e);background-image:-moz-linear-gradient(#fceda7,#fbef7e);background-image:-ms-linear-gradient(#fceda7,#fbef7e);background-image:-o-linear-gradient(#fceda7,#fbef7e);background-image:linear-gradient(#fceda7,#fbef7e)}.ui-bar-e,.ui-bar-e input,.ui-bar-e select,.ui-bar-e textarea,.ui-bar-e 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-bar-e .ui-link:hover{color:#2489ce}.ui-bar-e .ui-link:active{color:#2489ce}.ui-bar-e .ui-link:visited{color:#2489ce}.ui-body-e,.ui-overlay-e{border:1px solid #f7c942;color:#222;text-shadow:0 1px 0 #fff;background:#fff9df;background-image:-webkit-gradient(linear,left top,left bottom,from(#fffadf),to(#fff3a5));background-image:-webkit-linear-gradient(#fffadf,#fff3a5);background-image:-moz-linear-gradient(#fffadf,#fff3a5);background-image:-ms-linear-gradient(#fffadf,#fff3a5);background-image:-o-linear-gradient(#fffadf,#fff3a5);background-image:linear-gradient(#fffadf,#fff3a5)}.ui-overlay-e{background-image:none;border-width:0}.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-body-e .ui-link:hover{color:#2489ce}.ui-body-e .ui-link:active{color:#2489ce}.ui-body-e .ui-link:visited{color:#2489ce}.ui-btn-up-e{border:1px solid #f4c63f;background:#fadb4e;font-weight:bold;color:#222;text-shadow:0 1px 0 #fff;background-image:-webkit-gradient(linear,left top,left bottom,from(#ffefaa),to(#ffe155));background-image:-webkit-linear-gradient(#ffefaa,#ffe155);background-image:-moz-linear-gradient(#ffefaa,#ffe155);background-image:-ms-linear-gradient(#ffefaa,#ffe155);background-image:-o-linear-gradient(#ffefaa,#ffe155);background-image:linear-gradient(#ffefaa,#ffe155)}.ui-btn-up-e a.ui-link-inherit{color:#222}.ui-btn-hover-e{border:1px solid #f2c43d;background:#fbe26f;font-weight:bold;color:#111;text-shadow:0 1px 0 #fff;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff5ba),to(#fbdd52));background-image:-webkit-linear-gradient(#fff5ba,#fbdd52);background-image:-moz-linear-gradient(#fff5ba,#fbdd52);background-image:-ms-linear-gradient(#fff5ba,#fbdd52);background-image:-o-linear-gradient(#fff5ba,#fbdd52);background-image:linear-gradient(#fff5ba,#fbdd52)}.ui-btn-hover-e a.ui-link-inherit{color:#333}.ui-btn-down-e{border:1px solid #f2c43d;background:#fceda7;font-weight:bold;color:#111;text-shadow:0 1px 0 #fff;background-image:-webkit-gradient(linear,left top,left bottom,from(#f8d94c),to(#fadb4e));background-image:-webkit-linear-gradient(#f8d94c,#fadb4e);background-image:-moz-linear-gradient(#f8d94c,#fadb4e);background-image:-ms-linear-gradient(#f8d94c,#fadb4e);background-image:-o-linear-gradient(#f8d94c,#fadb4e);background-image:linear-gradient(#f8d94c,#fadb4e)}.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 #2373a5;background:#5393c5;font-weight:bold;color:#fff;cursor:pointer;text-shadow:0 1px 1px #3373a5;text-decoration:none;background-image:-webkit-gradient(linear,left top,left bottom,from(#5393c5),to(#6facd5));background-image:-webkit-linear-gradient(#5393c5,#6facd5);background-image:-moz-linear-gradient(#5393c5,#6facd5);background-image:-ms-linear-gradient(#5393c5,#6facd5);background-image:-o-linear-gradient(#5393c5,#6facd5);background-image:linear-gradient(#5393c5,#6facd5);font-family:Helvetica,Arial,sans-serif}.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-corner-none{-moz-border-radius:0;-webkit-border-radius:0;border-radius:0}.ui-br{border-bottom:#828282;border-bottom:rgba(130,130,130,.3);border-bottom-width:1px;border-bottom-style:solid}.ui-disabled{opacity:.3}.ui-disabled,.ui-disabled a{cursor:default!important;pointer-events:none}.ui-disabled .ui-btn-text{-ms-filter:"alpha(opacity=30)";filter:alpha(opacity=30);zoom:1}.ui-icon,.ui-icon-searchfield:after{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-searchfield:after,.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,.ui-icon-searchfield:after{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-checkbox .ui-icon{-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}.ui-icon-checkbox-off,.ui-icon-radio-off{background-color:transparent}.ui-checkbox-on .ui-icon,.ui-radio-on .ui-icon{background-color:#4596ce}.ui-icon-loading{background:url(images/ajax-loader.gif);background-size:46px 46px}.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;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-btn:focus{outline:0}.ui-focus,.ui-btn: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,.ui-mobile-nosupport-boxshadow .ui-btn:focus{outline-width:1px;outline-style:dotted}.ui-mobile,.ui-mobile body{height:99.9%}.ui-mobile fieldset,.ui-page{padding:0;margin:0}.ui-mobile a img,.ui-mobile fieldset{border-width:0}.ui-mobile-viewport{margin:0;overflow-x:visible;-webkit-text-size-adjust:none;-ms-text-size-adjust:none;-webkit-tap-highlight-color:rgba(0,0,0,0)}body.ui-mobile-viewport,div.ui-mobile-viewport{overflow-x:hidden}.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}.ui-page{outline:0}@media screen and (orientation:portrait){.ui-mobile,.ui-mobile .ui-page{min-height:420px}}@media screen and (orientation:landscape){.ui-mobile,.ui-mobile .ui-page{min-height:300px}}.ui-loading .ui-loader{display:block}.ui-loader{display:none;z-index:9999999;position:fixed;top:50%;box-shadow:0 1px 1px -1px #fff;left:50%;border:0}.ui-loader-default{background:0;opacity:.18;width:46px;height:46px;margin-left:-23px;margin-top:-23px}.ui-loader-verbose{width:200px;opacity:.88;height:auto;margin-left:-110px;margin-top:-43px;padding:10px}.ui-loader-default h1{font-size:0;width:0;height:0;overflow:hidden}.ui-loader-verbose h1{font-size:16px;margin:0;text-align:center}.ui-loader .ui-icon{background-color:#000;display:block;margin:0;width:44px;height:44px;padding:1px;-webkit-border-radius:36px;-moz-border-radius:36px;border-radius:36px}.ui-loader-verbose .ui-icon{margin:0 auto 10px;opacity:.75}.ui-loader-textonly{padding:15px;margin-left:-115px}.ui-loader-textonly .ui-icon{display:none}.ui-loader-fakefix{position:absolute}.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{position:relative;border-left-width:0;border-right-width:0}.ui-header .ui-btn-left,.ui-header .ui-btn-right,.ui-footer .ui-btn-left,.ui-footer .ui-btn-right{position:absolute;top:3px}.ui-header .ui-btn-left,.ui-footer .ui-btn-left{left:5px}.ui-header .ui-btn-right,.ui-footer .ui-btn-right{right:5px}.ui-footer .ui-btn-icon-notext,.ui-header .ui-btn-icon-notext{top:6px}.ui-header .ui-title,.ui-footer .ui-title{min-height:1.1em;text-align:center;font-size:16px;display:block;margin:.6em 30% .8em;padding:0;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;outline:0!important}.ui-footer .ui-title{margin:.6em 15px .8em}.ui-content{border-width:0;overflow:visible;overflow-x:hidden;padding:15px}.ui-icon{width:18px;height:18px}.ui-nojs{position:absolute;left:-9999px}.ui-hide-label label,.ui-hidden-accessible{position:absolute!important;left:-9999px;clip:rect(1px 1px 1px 1px);clip:rect(1px,1px,1px,1px)}.ui-mobile-viewport-transitioning,.ui-mobile-viewport-transitioning .ui-page{width:100%;height:100%;overflow:hidden}.in{-webkit-animation-timing-function:ease-out;-webkit-animation-duration:350ms;-moz-animation-timing-function:ease-out;-moz-animation-duration:350ms}.out{-webkit-animation-timing-function:ease-in;-webkit-animation-duration:225ms;-moz-animation-timing-function:ease-in;-moz-animation-duration:225}@-webkit-keyframes fadein{from{opacity:0}to{opacity:1}}@-moz-keyframes fadein{from{opacity:0}to{opacity:1}}@-webkit-keyframes fadeout{from{opacity:1}to{opacity:0}}@-moz-keyframes fadeout{from{opacity:1}to{opacity:0}}.fade.out{opacity:0;-webkit-animation-duration:125ms;-webkit-animation-name:fadeout;-moz-animation-duration:125ms;-moz-animation-name:fadeout}.fade.in{opacity:1;-webkit-animation-duration:225ms;-webkit-animation-name:fadein;-moz-animation-duration:225ms;-moz-animation-name:fadein}.pop{-webkit-transform-origin:50% 50%;-moz-transform-origin:50% 50%}.pop.in{-webkit-transform:scale(1);-moz-transform:scale(1);opacity:1;-webkit-animation-name:popin;-moz-animation-name:popin;-webkit-animation-duration:350ms;-moz-animation-duration:350ms}.pop.out{-webkit-animation-name:fadeout;-moz-animation-name:fadeout;opacity:0;-webkit-animation-duration:100ms;-moz-animation-duration:100ms}.pop.in.reverse{-webkit-animation-name:fadein;-moz-animation-name:fadein}.pop.out.reverse{-webkit-transform:scale(.8);-moz-transform:scale(.8);-webkit-animation-name:popout;-moz-animation-name:popout}@-webkit-keyframes popin{from{-webkit-transform:scale(.8);opacity:0}to{-webkit-transform:scale(1);opacity:1}}@-moz-keyframes popin{from{-moz-transform:scale(.8);opacity:0}to{-moz-transform:scale(1);opacity:1}}@-webkit-keyframes popout{from{-webkit-transform:scale(1);opacity:1}to{-webkit-transform:scale(.8);opacity:0}}@-moz-keyframes popout{from{-moz-transform:scale(1);opacity:1}to{-moz-transform:scale(.8);opacity:0}}@-webkit-keyframes slideinfromright{from{-webkit-transform:translateX(100%)}to{-webkit-transform:translateX(0)}}@-moz-keyframes slideinfromright{from{-moz-transform:translateX(100%)}to{-moz-transform:translateX(0)}}@-webkit-keyframes slideinfromleft{from{-webkit-transform:translateX(-100%)}to{-webkit-transform:translateX(0)}}@-moz-keyframes slideinfromleft{from{-moz-transform:translateX(-100%)}to{-moz-transform:translateX(0)}}@-webkit-keyframes slideouttoleft{from{-webkit-transform:translateX(0)}to{-webkit-transform:translateX(-100%)}}@-moz-keyframes slideouttoleft{from{-moz-transform:translateX(0)}to{-moz-transform:translateX(-100%)}}@-webkit-keyframes slideouttoright{from{-webkit-transform:translateX(0)}to{-webkit-transform:translateX(100%)}}@-moz-keyframes slideouttoright{from{-moz-transform:translateX(0)}to{-moz-transform:translateX(100%)}}.slide.out,.slide.in{-webkit-animation-timing-function:ease-out;-webkit-animation-duration:350ms;-moz-animation-timing-function:ease-out;-moz-animation-duration:350ms}.slide.out{-webkit-transform:translateX(-100%);-webkit-animation-name:slideouttoleft;-moz-transform:translateX(-100%);-moz-animation-name:slideouttoleft}.slide.in{-webkit-transform:translateX(0);-webkit-animation-name:slideinfromright;-moz-transform:translateX(0);-moz-animation-name:slideinfromright}.slide.out.reverse{-webkit-transform:translateX(100%);-webkit-animation-name:slideouttoright;-moz-transform:translateX(100%);-moz-animation-name:slideouttoright}.slide.in.reverse{-webkit-transform:translateX(0);-webkit-animation-name:slideinfromleft;-moz-transform:translateX(0);-moz-animation-name:slideinfromleft}.slidefade.out{-webkit-transform:translateX(-100%);-webkit-animation-name:slideouttoleft;-moz-transform:translateX(-100%);-moz-animation-name:slideouttoleft;-webkit-animation-duration:225ms;-moz-animation-duration:225ms}.slidefade.in{-webkit-transform:translateX(0);-webkit-animation-name:fadein;-moz-transform:translateX(0);-moz-animation-name:fadein;-webkit-animation-duration:200ms;-moz-animation-duration:200ms}.slidefade.out.reverse{-webkit-transform:translateX(100%);-webkit-animation-name:slideouttoright;-moz-transform:translateX(100%);-moz-animation-name:slideouttoright;-webkit-animation-duration:200ms;-moz-animation-duration:200ms}.slidefade.in.reverse{-webkit-transform:translateX(0);-webkit-animation-name:fadein;-moz-transform:translateX(0);-moz-animation-name:fadein;-webkit-animation-duration:200ms;-moz-animation-duration:200ms}.slidedown.out{-webkit-animation-name:fadeout;-moz-animation-name:fadeout;-webkit-animation-duration:100ms;-moz-animation-duration:100ms}.slidedown.in{-webkit-transform:translateY(0);-webkit-animation-name:slideinfromtop;-moz-transform:translateY(0);-moz-animation-name:slideinfromtop;-webkit-animation-duration:250ms;-moz-animation-duration:250ms}.slidedown.in.reverse{-webkit-animation-name:fadein;-moz-animation-name:fadein;-webkit-animation-duration:150ms;-moz-animation-duration:150ms}.slidedown.out.reverse{-webkit-transform:translateY(-100%);-moz-transform:translateY(-100%);-webkit-animation-name:slideouttotop;-moz-animation-name:slideouttotop;-webkit-animation-duration:200ms;-moz-animation-duration:200ms}@-webkit-keyframes slideinfromtop{from{-webkit-transform:translateY(-100%)}to{-webkit-transform:translateY(0)}}@-moz-keyframes slideinfromtop{from{-moz-transform:translateY(-100%)}to{-moz-transform:translateY(0)}}@-webkit-keyframes slideouttotop{from{-webkit-transform:translateY(0)}to{-webkit-transform:translateY(-100%)}}@-moz-keyframes slideouttotop{from{-moz-transform:translateY(0)}to{-moz-transform:translateY(-100%)}}.slideup.out{-webkit-animation-name:fadeout;-moz-animation-name:fadeout;-webkit-animation-duration:100ms;-moz-animation-duration:100ms}.slideup.in{-webkit-transform:translateY(0);-webkit-animation-name:slideinfrombottom;-moz-transform:translateY(0);-moz-animation-name:slideinfrombottom;-webkit-animation-duration:250ms;-moz-animation-duration:250ms}.slideup.in.reverse{-webkit-animation-name:fadein;-moz-animation-name:fadein;-webkit-animation-duration:150ms;-moz-animation-duration:150ms}.slideup.out.reverse{-webkit-transform:translateY(100%);-moz-transform:translateY(100%);-webkit-animation-name:slideouttobottom;-moz-animation-name:slideouttobottom;-webkit-animation-duration:200ms;-moz-animation-duration:200ms}@-webkit-keyframes slideinfrombottom{from{-webkit-transform:translateY(100%)}to{-webkit-transform:translateY(0)}}@-moz-keyframes slideinfrombottom{from{-moz-transform:translateY(100%)}to{-moz-transform:translateY(0)}}@-webkit-keyframes slideouttobottom{from{-webkit-transform:translateY(0)}to{-webkit-transform:translateY(100%)}}@-moz-keyframes slideouttobottom{from{-moz-transform:translateY(0)}to{-moz-transform:translateY(100%)}}.viewport-flip{-webkit-perspective:1000;-moz-perspective:1000;position:absolute}.flip{-webkit-backface-visibility:hidden;-webkit-transform:translateX(0);-moz-backface-visibility:hidden;-moz-transform:translateX(0)}.flip.out{-webkit-transform:rotateY(-90deg) scale(.9);-webkit-animation-name:flipouttoleft;-webkit-animation-duration:175ms;-moz-transform:rotateY(-90deg) scale(.9);-moz-animation-name:flipouttoleft;-moz-animation-duration:175ms}.flip.in{-webkit-animation-name:flipintoright;-webkit-animation-duration:225ms;-moz-animation-name:flipintoright;-moz-animation-duration:225ms}.flip.out.reverse{-webkit-transform:rotateY(90deg) scale(.9);-webkit-animation-name:flipouttoright;-moz-transform:rotateY(90deg) scale(.9);-moz-animation-name:flipouttoright}.flip.in.reverse{-webkit-animation-name:flipintoleft;-moz-animation-name:flipintoleft}@-webkit-keyframes flipouttoleft{from{-webkit-transform:rotateY(0)}to{-webkit-transform:rotateY(-90deg) scale(.9)}}@-moz-keyframes flipouttoleft{from{-moz-transform:rotateY(0)}to{-moz-transform:rotateY(-90deg) scale(.9)}}@-webkit-keyframes flipouttoright{from{-webkit-transform:rotateY(0)}to{-webkit-transform:rotateY(90deg) scale(.9)}}@-moz-keyframes flipouttoright{from{-moz-transform:rotateY(0)}to{-moz-transform:rotateY(90deg) scale(.9)}}@-webkit-keyframes flipintoleft{from{-webkit-transform:rotateY(-90deg) scale(.9)}to{-webkit-transform:rotateY(0)}}@-moz-keyframes flipintoleft{from{-moz-transform:rotateY(-90deg) scale(.9)}to{-moz-transform:rotateY(0)}}@-webkit-keyframes flipintoright{from{-webkit-transform:rotateY(90deg) scale(.9)}to{-webkit-transform:rotateY(0)}}@-moz-keyframes flipintoright{from{-moz-transform:rotateY(90deg) scale(.9)}to{-moz-transform:rotateY(0)}}.viewport-turn{-webkit-perspective:1000;-moz-perspective:1000;position:absolute}.turn{-webkit-backface-visibility:hidden;-webkit-transform:translateX(0);-webkit-transform-origin:0 0;-moz-backface-visibility:hidden;-moz-transform:translateX(0);-moz-transform-origin:0 0}.turn.out{-webkit-transform:rotateY(-90deg) scale(.9);-webkit-animation-name:flipouttoleft;-moz-transform:rotateY(-90deg) scale(.9);-moz-animation-name:flipouttoleft;-webkit-animation-duration:125ms;-moz-animation-duration:125ms}.turn.in{-webkit-animation-name:flipintoright;-moz-animation-name:flipintoright;-webkit-animation-duration:250ms;-moz-animation-duration:250ms}.turn.out.reverse{-webkit-transform:rotateY(90deg) scale(.9);-webkit-animation-name:flipouttoright;-moz-transform:rotateY(90deg) scale(.9);-moz-animation-name:flipouttoright}.turn.in.reverse{-webkit-animation-name:flipintoleft;-moz-animation-name:flipintoleft}@-webkit-keyframes flipouttoleft{from{-webkit-transform:rotateY(0)}to{-webkit-transform:rotateY(-90deg) scale(.9)}}@-moz-keyframes flipouttoleft{from{-moz-transform:rotateY(0)}to{-moz-transform:rotateY(-90deg) scale(.9)}}@-webkit-keyframes flipouttoright{from{-webkit-transform:rotateY(0)}to{-webkit-transform:rotateY(90deg) scale(.9)}}@-moz-keyframes flipouttoright{from{-moz-transform:rotateY(0)}to{-moz-transform:rotateY(90deg) scale(.9)}}@-webkit-keyframes flipintoleft{from{-webkit-transform:rotateY(-90deg) scale(.9)}to{-webkit-transform:rotateY(0)}}@-moz-keyframes flipintoleft{from{-moz-transform:rotateY(-90deg) scale(.9)}to{-moz-transform:rotateY(0)}}@-webkit-keyframes flipintoright{from{-webkit-transform:rotateY(90deg) scale(.9)}to{-webkit-transform:rotateY(0)}}@-moz-keyframes flipintoright{from{-moz-transform:rotateY(90deg) scale(.9)}to{-moz-transform:rotateY(0)}}.flow{-webkit-transform-origin:50% 30%;-moz-transform-origin:50% 30%;-webkit-box-shadow:0 0 20px rgba(0,0,0,.4);-moz-box-shadow:0 0 20px rgba(0,0,0,.4)}.ui-dialog.flow{-webkit-transform-origin:none;-moz-transform-origin:none;-webkit-box-shadow:none;-moz-box-shadow:none}.flow.out{-webkit-transform:translateX(-100%) scale(.7);-webkit-animation-name:flowouttoleft;-webkit-animation-timing-function:ease;-webkit-animation-duration:350ms;-moz-transform:translateX(-100%) scale(.7);-moz-animation-name:flowouttoleft;-moz-animation-timing-function:ease;-moz-animation-duration:350ms}.flow.in{-webkit-transform:translateX(0) scale(1);-webkit-animation-name:flowinfromright;-webkit-animation-timing-function:ease;-webkit-animation-duration:350ms;-moz-transform:translateX(0) scale(1);-moz-animation-name:flowinfromright;-moz-animation-timing-function:ease;-moz-animation-duration:350ms}.flow.out.reverse{-webkit-transform:translateX(100%);-webkit-animation-name:flowouttoright;-moz-transform:translateX(100%);-moz-animation-name:flowouttoright}.flow.in.reverse{-webkit-animation-name:flowinfromleft;-moz-animation-name:flowinfromleft}@-webkit-keyframes flowouttoleft{0%{-webkit-transform:translateX(0) scale(1)}60%,70%{-webkit-transform:translateX(0) scale(.7)}100%{-webkit-transform:translateX(-100%) scale(.7)}}@-moz-keyframes flowouttoleft{0%{-moz-transform:translateX(0) scale(1)}60%,70%{-moz-transform:translateX(0) scale(.7)}100%{-moz-transform:translateX(-100%) scale(.7)}}@-webkit-keyframes flowouttoright{0%{-webkit-transform:translateX(0) scale(1)}60%,70%{-webkit-transform:translateX(0) scale(.7)}100%{-webkit-transform:translateX(100%) scale(.7)}}@-moz-keyframes flowouttoright{0%{-moz-transform:translateX(0) scale(1)}60%,70%{-moz-transform:translateX(0) scale(.7)}100%{-moz-transform:translateX(100%) scale(.7)}}@-webkit-keyframes flowinfromleft{0%{-webkit-transform:translateX(-100%) scale(.7)}30%,40%{-webkit-transform:translateX(0) scale(.7)}100%{-webkit-transform:translateX(0) scale(1)}}@-moz-keyframes flowinfromleft{0%{-moz-transform:translateX(-100%) scale(.7)}30%,40%{-moz-transform:translateX(0) scale(.7)}100%{-moz-transform:translateX(0) scale(1)}}@-webkit-keyframes flowinfromright{0%{-webkit-transform:translateX(100%) scale(.7)}30%,40%{-webkit-transform:translateX(0) scale(.7)}100%{-webkit-transform:translateX(0) scale(1)}}@-moz-keyframes flowinfromright{0%{-moz-transform:translateX(100%) scale(.7)}30%,40%{-moz-transform:translateX(0) scale(.7)}100%{-moz-transform:translateX(0) scale(1)}}.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-fixed,.ui-footer-fixed{left:0;right:0;width:100%;position:fixed;z-index:1000}.ui-header-fixed{top:0}.ui-footer-fixed{bottom:0}.ui-header-fullscreen,.ui-footer-fullscreen{opacity:.9}.ui-page-header-fixed{padding-top:2.5em}.ui-page-footer-fixed{padding-bottom:3em}.ui-page-header-fullscreen .ui-content,.ui-page-footer-fullscreen .ui-content{padding:0}.ui-fixed-hidden{position:absolute}.ui-page-header-fullscreen .ui-fixed-hidden,.ui-page-footer-fullscreen .ui-fixed-hidden{left:-99999em}.ui-header-fixed .ui-btn,.ui-footer-fixed .ui-btn{z-index:10}.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;max-width:100%}.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-mini{margin:.25em 5px}.ui-btn-inner{padding:.6em 20px;min-width:.75em;display:block;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;position:relative;zoom:1}.ui-btn input,.ui-btn button{z-index:2}.ui-btn-left,.ui-btn-right,.ui-btn-inline{display:inline-block}.ui-btn-block{display:block}.ui-header .ui-btn,.ui-footer .ui-btn{display:inline-block;margin:0}.ui-header .ui-btn-inner,.ui-footer .ui-btn-inner,.ui-mini .ui-btn-inner{font-size:12.5px;padding:.55em 11px .5em}.ui-header .ui-fullsize .ui-btn-inner,.ui-footer .ui-fullsize .ui-btn-inner{font-size:16px;padding:.6em 25px}.ui-btn-icon-notext{width:24px;height:24px}.ui-btn-icon-notext .ui-btn-inner{padding:0;height:100%}.ui-btn-icon-notext .ui-btn-inner .ui-icon{margin:2px 1px 2px 3px}.ui-btn-text{position:relative;z-index:1;width:100%}.ui-btn-icon-notext .ui-btn-text{position:absolute;left:-9999px}.ui-btn-icon-left .ui-btn-inner{padding-left:40px}.ui-btn-icon-right .ui-btn-inner{padding-right:40px}.ui-btn-icon-top .ui-btn-inner{padding-top:40px}.ui-btn-icon-bottom .ui-btn-inner{padding-bottom:40px}.ui-header .ui-btn-icon-left .ui-btn-inner,.ui-footer .ui-btn-icon-left .ui-btn-inner,.ui-mini .ui-btn-icon-left .ui-btn-inner{padding-left:30px}.ui-header .ui-btn-icon-right .ui-btn-inner,.ui-footer .ui-btn-icon-right .ui-btn-inner,.ui-mini .ui-btn-icon-right .ui-btn-inner{padding-right:30px}.ui-header .ui-btn-icon-top .ui-btn-inner,.ui-footer .ui-btn-icon-top .ui-btn-inner,.ui-mini .ui-btn-icon-top .ui-btn-inner{padding:30px 3px .5em 3px}.ui-header .ui-btn-icon-bottom .ui-btn-inner,.ui-footer .ui-btn-icon-bottom .ui-btn-inner,.ui-mini .ui-btn-icon-bottom .ui-btn-inner{padding:.55em 3px 30px 3px}.ui-btn-icon-notext .ui-icon{display:block;z-index:0}.ui-btn-icon-left .ui-btn-inner .ui-icon,.ui-btn-icon-right .ui-btn-inner .ui-icon{position:absolute;top:50%;margin-top:-9px}.ui-btn-icon-top .ui-btn-inner .ui-icon,.ui-btn-icon-bottom .ui-btn-inner .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-btn-icon-top .ui-icon{top:10px}.ui-btn-icon-bottom .ui-icon{top:auto;bottom:10px}.ui-header .ui-btn-icon-left .ui-icon,.ui-footer .ui-btn-icon-left .ui-icon,.ui-mini.ui-btn-icon-left .ui-icon,.ui-mini .ui-btn-icon-left .ui-icon{left:5px}.ui-header .ui-btn-icon-right .ui-icon,.ui-footer .ui-btn-icon-right .ui-icon,.ui-mini.ui-btn-icon-right .ui-icon,.ui-mini .ui-btn-icon-right .ui-icon{right:5px}.ui-header .ui-btn-icon-top .ui-icon,.ui-footer .ui-btn-icon-top .ui-icon,.ui-mini.ui-btn-icon-top .ui-icon,.ui-mini .ui-btn-icon-top .ui-icon{top:5px}.ui-header .ui-btn-icon-bottom .ui-icon,.ui-footer .ui-btn-icon-bottom .ui-icon,.ui-mini.ui-btn-icon-bottom .ui-icon,.ui-mini .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:.1;cursor:pointer;background:#fff;background:rgba(255,255,255,0);filter:Alpha(Opacity=.0001);font-size:1px;border:0;text-indent:-9999px}.ui-collapsible{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 .ui-btn-inner,.ui-collapsible-heading .ui-btn-icon-left .ui-btn-inner{padding-left:40px}.ui-collapsible-heading .ui-btn-icon-right .ui-btn-inner{padding-left:12px;padding-right:40px}.ui-collapsible-heading .ui-btn-icon-top .ui-btn-inner,.ui-collapsible-heading .ui-btn-icon-bottom .ui-btn-inner{padding-right:40px;text-align:center}.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;top:-9999px;left:0}.ui-collapsible-content{display:block;margin:0 -8px;padding:10px 16px;border-top:0;background-image:none;font-weight:normal}.ui-collapsible-content-collapsed{display:none}.ui-collapsible-set{margin:.5em 0}.ui-collapsible-set .ui-collapsible{margin:-1px 0 0}.ui-controlgroup,fieldset.ui-controlgroup{padding:0;margin:0 0 .5em;zoom:1}.ui-bar .ui-controlgroup{margin:0 .3em}.ui-controlgroup-label{font-size:16px;line-height:1.4;font-weight:normal;margin:0 0 .4em}.ui-controlgroup-controls{display:block;width:100%}.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-controls label.ui-select{position:absolute;left:-9999px}.ui-controlgroup-vertical .ui-controlgroup-last{border-bottom-width:1px}.ui-controlgroup-horizontal{padding:0}.ui-controlgroup-horizontal .ui-btn-inner{text-align:center}.ui-controlgroup-horizontal .ui-btn,.ui-controlgroup-horizontal .ui-select{display:inline-block;margin:0 -6px 0 0}.ui-controlgroup-horizontal .ui-checkbox,.ui-controlgroup-horizontal .ui-radio{float:left;clear:none;margin:0 -1px 0 0}.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-field-contain .ui-controlgroup-label{vertical-align:top;display:inline-block;width:20%;margin:0 2% 0 0}.ui-field-contain .ui-controlgroup-controls{width:60%;display:inline-block}.ui-field-contain .ui-controlgroup .ui-select{width:100%}.ui-field-contain .ui-controlgroup-horizontal .ui-select{width:auto}}.ui-dialog{background:none!important}.ui-dialog-contain{width:92.5%;max-width:500px;margin:10% auto 15px auto;padding:0}.ui-dialog .ui-header{margin-top:15%;border:0;overflow:hidden}.ui-dialog .ui-header,.ui-dialog .ui-content,.ui-dialog .ui-footer{display:block;position:relative;width:auto}.ui-dialog .ui-header,.ui-dialog .ui-footer{z-index:10;padding:0}.ui-dialog .ui-footer{padding:0 15px}.ui-dialog .ui-content{padding:15px}.ui-dialog{margin-top:-15px}.ui-checkbox,.ui-radio{position:relative;clear:both;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-mini.ui-btn-icon-left .ui-btn-inner,.ui-radio .ui-mini.ui-btn-icon-left .ui-btn-inner{padding-left:36px}.ui-checkbox .ui-btn-icon-right .ui-btn-inner,.ui-radio .ui-btn-icon-right .ui-btn-inner{padding-right:45px}.ui-checkbox .ui-mini.ui-btn-icon-right .ui-btn-inner,.ui-radio .ui-mini.ui-btn-icon-right .ui-btn-inner{padding-right:36px}.ui-checkbox .ui-btn-icon-top .ui-btn-inner,.ui-radio .ui-btn-icon-top .ui-btn-inner{padding-right:0;padding-left:0;text-align:center}.ui-checkbox .ui-btn-icon-bottom .ui-btn-inner,.ui-radio .ui-btn-icon-bottom .ui-btn-inner{padding-right:0;padding-left:0;text-align:center}.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-mini.ui-btn-icon-left .ui-icon,.ui-radio .ui-mini.ui-btn-icon-left .ui-icon{left:9px}.ui-checkbox .ui-btn-icon-right .ui-icon,.ui-radio .ui-btn-icon-right .ui-icon{right:15px}.ui-checkbox .ui-mini.ui-btn-icon-right .ui-icon,.ui-radio .ui-mini.ui-btn-icon-right .ui-icon{right:9px}.ui-checkbox .ui-btn-icon-top .ui-icon,.ui-radio .ui-btn-icon-top .ui-icon{top:10px}.ui-checkbox .ui-btn-icon-bottom .ui-icon,.ui-radio .ui-btn-icon-bottom .ui-icon{top:auto;bottom:10px}.ui-checkbox .ui-btn-icon-right .ui-icon,.ui-radio .ui-btn-icon-right .ui-icon{right:15px}.ui-checkbox .ui-mini.ui-btn-icon-right .ui-icon,.ui-radio .ui-mini.ui-btn-icon-right .ui-icon{right:9px}.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,fieldset.ui-field-contain{padding:.8em 0;margin:0;border-width:0 0 1px 0;overflow:visible}.ui-field-contain:first-child{border-top-width:0}.ui-header .ui-field-contain-left,.ui-header .ui-field-contain-right{position:absolute;top:0;width:25%}.ui-header .ui-field-contain-left{left:1em}.ui-header .ui-field-contain-right{right:1em}@media all and (min-width:450px){.ui-field-contain,.ui-mobile fieldset.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;opacity:1;margin:0}.ui-select .ui-btn select{cursor:pointer;-webkit-appearance:button;left:0;top:0;width:100%;min-height:1.5em;min-height:100%;height:3em;max-height:100%;opacity:0;-ms-filter:"alpha(opacity=0)";filter:alpha(opacity=0);z-index:2}.ui-select .ui-disabled{opacity:.3}@-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}.ui-select .ui-mini.ui-btn-icon-right .ui-icon{right:7px}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:block;min-height:1em;overflow:hidden!important}.ui-select .ui-btn-text{text-overflow:ellipsis}.ui-selectmenu{position:absolute;padding:0;z-index:1100!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){.ui-field-contain label.ui-select{vertical-align:top;display:inline-block;width:20%;margin:0 2% 0 0}.ui-field-contain .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:97%;outline:0}.ui-header input.ui-input-text,.ui-footer input.ui-input-text{margin-left:1.25%;padding:.4em 1%;width:95.5%}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;background-image:none;position:relative}.ui-icon-searchfield:after{position:absolute;left:7px;top:50%;margin-top:-9px;content:"";width:18px;height:18px;opacity:.5}.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:-13px}.ui-mini .ui-input-clear{right:-3px}.ui-input-search .ui-input-clear-hidden{display:none}input.ui-mini,.ui-mini input,textarea.ui-mini{font-size:14px}textarea.ui-mini{height:45px}@media all and (min-width:450px){.ui-field-contain label.ui-input-text{vertical-align:top;display:inline-block;width:20%;margin:0 2% 0 0}.ui-field-contain input.ui-input-text,.ui-field-contain textarea.ui-input-text,.ui-field-contain .ui-input-search{width:60%;display:inline-block}.ui-field-contain .ui-input-search{width:50%}.ui-hide-label input.ui-input-text,.ui-hide-label textarea.ui-input-text,.ui-hide-label .ui-input-search{padding:.4em;width:97%}.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 15px .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-has-count .ui-btn-inner a.ui-link-inherit,.ui-li-static.ui-li-has-count{padding-right:45px}.ui-li-has-arrow .ui-btn-inner a.ui-link-inherit,.ui-li-static.ui-li-has-arrow{padding-right:30px}.ui-li-has-arrow.ui-li-has-count .ui-btn-inner a.ui-link-inherit,.ui-li-static.ui-li-has-arrow.ui-li-has-count{padding-right:75px}.ui-li-has-count .ui-btn-text{padding-right:15px}.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-listview .ui-li-icon{position:absolute;left:1px;top:0;max-height:80px;max-width:80px}.ui-listview .ui-li-icon{max-height:40px;max-width:40px;left:10px;top:.9em}.ui-li-thumb,.ui-listview .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-has-count .ui-li-count{position:absolute;font-size:11px;font-weight:bold;padding:.2em .5em;top:50%;margin-top:-.9em;right:48px}.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;z-index:2}.ui-li-link-alt .ui-btn{overflow:hidden;position:absolute;right:8px;top:50%;margin:-11px 0 0 0;border-bottom-width:1px;z-index:-1}.ui-li-link-alt .ui-btn-inner{padding:0;height:100%;position:absolute;width:100%;top:0;left:0}.ui-li-link-alt .ui-btn .ui-icon{right:50%;margin-right:-9px}.ui-listview * .ui-btn-inner>.ui-btn>.ui-btn-inner{border-top:0}.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{font-size:16px;line-height:1.4;font-weight:normal;margin:0 0 .3em;display:block}input.ui-slider-input,.ui-field-contain 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:65%}div.ui-slider-mini{height:12px;margin-left:10px}div.ui-slider-bg{border:0;height:100%;padding-right:8px}.ui-controlgroup a.ui-slider-handle,a.ui-slider-handle{position:absolute;z-index:1;top:50%;width:28px;height:28px;margin-top:-15px;margin-left:-15px;outline:0}a.ui-slider-handle .ui-btn-inner{padding:0;height:100%}div.ui-slider-mini a.ui-slider-handle{height:14px;width:14px;margin:-8px 0 0 -7px}div.ui-slider-mini a.ui-slider-handle .ui-btn-inner{height:30px;width:30px;padding:0;margin:-9px 0 0 -9px}@media all and (min-width:450px){.ui-field-contain label.ui-slider{vertical-align:top;display:inline-block;width:20%;margin:0 2% 0 0}.ui-field-contain div.ui-slider{width:43%}.ui-field-contain div.ui-slider-switch{width:5.5em}}div.ui-slider-switch{height:32px;margin-left:0;width:5.8em}a.ui-slider-handle-snapping{-webkit-transition:left 70ms linear;-moz-transition:left 70ms linear}div.ui-slider-switch .ui-slider-handle{margin-top:1px}.ui-slider-inneroffset{margin:0 16px;position:relative;z-index:1}div.ui-slider-switch.ui-slider-mini{width:5em;height:29px}div.ui-slider-switch.ui-slider-mini .ui-slider-inneroffset{margin:0 15px 0 14px}div.ui-slider-switch.ui-slider-mini .ui-slider-handle{width:25px;height:25px;margin:1px 0 0 -13px}div.ui-slider-switch.ui-slider-mini a.ui-slider-handle .ui-btn-inner{height:30px;width:30px;padding:0;margin:0}span.ui-slider-label{position:absolute;text-align:center;width:100%;overflow:hidden;font-size:16px;top:0;line-height:2;min-height:100%;border-width:0;white-space:nowrap}.ui-slider-mini span.ui-slider-label{font-size:14px}span.ui-slider-label-a{z-index:1;left:0;text-indent:-1.5em}span.ui-slider-label-b{z-index:0;right:0;text-indent:1.5em}.ui-slider-inline{width:120px;display:inline-block} |
div.hasDatepicker{display:block;padding:0;overflow:visible;margin:8px 0;} | |
.ui-datepicker{overflow:visible;margin:0;max-width:500px;} | |
.ui-datepicker .ui-datepicker-header{position:relative;padding:.4em 0;border-bottom:0;font-weight:bold;} | |
.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next{padding:1px 0 1px 2px;position:absolute;top:.5em;margin-top:0;text-indent:-9999px;} | |
.ui-datepicker .ui-datepicker-prev{left:6px;} | |
.ui-datepicker .ui-datepicker-next{right:6px;} | |
.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%;border-collapse:collapse;margin:0;} | |
.ui-datepicker td{border-width:1px;padding:0;text-align:center;} | |
.ui-datepicker td span, .ui-datepicker td a{display:block;padding:.2em 0;font-weight:bold;margin:0;border-width:0;text-align:center;text-decoration:none;} | |
.ui-datepicker-calendar th{padding-top:.3em;padding-bottom:.3em;} | |
.ui-datepicker-calendar th span, .ui-datepicker-calendar span.ui-state-default{opacity:.3;} | |
.ui-datepicker-calendar td a{padding-top:.5em;padding-bottom:.5em;} | |
.min-width-480px div.hasDatepicker{width:63%;display:inline-block;margin:0;} | |
<?php | |
header('Content-type: text/css'); | |
ob_start("compress"); | |
function compress($buffer) { | |
/* remove comments */ | |
$buffer = preg_replace('!/\*[^*]*\*+([^/][^*]*\*+)*/!', '', $buffer); | |
/* remove tabs, spaces, newlines, etc. */ | |
$buffer = str_replace(array("\r\n", "\r", "\n", "\t", ' ', ' ', ' '), '', $buffer); | |
return $buffer; | |
} | |
echo ' | |
.ui-li-thumb, .ui-li-icon { position: relative; } | |
.ui-navbar { | |
width: 100%; | |
} | |
.ui-btn-inner { | |
white-space: normal !important; | |
} | |
.ui-li-heading { | |
white-space: normal !important; | |
} | |
.ui-listview-filter { | |
margin: 0 !important; | |
} | |
.ui-icon-navigation { | |
background-image: url(images/113-navigation.png); | |
background-position: 1px 0; | |
} | |
.ui-icon-beaker { | |
background-image: url(images/91-beaker-2.png); | |
background-position: 1px 0; | |
} | |
#footer { | |
text-size: 0.75em; | |
text-align: center; | |
} | |
body { | |
background-color: #F0F0F0; | |
} | |
#jqm-homeheader { | |
text-align: center; | |
} | |
.viaPoints { | |
display: none; | |
text-size: 0.2em; | |
} | |
.min-width-480px .viaPoints { | |
display: inline; | |
} | |
#extrainfo { | |
visibility: hidden; | |
display: none; | |
} | |
.servicewarning { | |
padding: 1em; | |
margin-bottom: 0.5em; | |
text-size: 0.2em; | |
background-color: #FF9; | |
-moz-border-radius: 15px; | |
border-radius: 15px; | |
} | |
#footer { | |
clear:both; | |
text-align:center; | |
} | |
// source http://webaim.org/techniques/skipnav/ | |
#skip a, #skip a:hover, #skip a:visited | |
{ | |
position:absolute; | |
left:0px; | |
top:-500px; | |
width:1px; | |
height:1px; | |
overflow:hidden; | |
} | |
#skip a:active, #skip a:focus | |
{ | |
position:static; | |
width:auto; | |
height:auto; | |
}'; | |
//if (false) | |
echo ' | |
// adaptive layout from jQuery Mobile docs site | |
.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; | |
} | |
/* hires ahoy */ | |
@media all and (min-width: 650px){ | |
.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; | |
} | |
.content-primary { | |
width: 45%; | |
float: right; | |
margin-top: 30px; | |
margin-right: 1%; | |
padding-right: 1%; | |
} | |
.content-primary ul:first-child { | |
margin-top: 0; | |
} | |
.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%; | |
} | |
} | |
'; | |
ob_end_flush(); | |
?> | |
#!/bin/bash | |
#dotcloud postinstall | |
curl http://s3-ap-southeast-1.amazonaws.com/busresources/cbrfeed.zip \ | |
-o /home/dotcloud/current/cbrfeed.zip | |
curl http://s3-ap-southeast-1.amazonaws.com/busresources/Graph.obj \ | |
-o /tmp/Graph.obj | |
#db setup | |
#curl https://github.com/maxious/ACTBus-ui/raw/master/transitdata.cbrfeed.sql.gz -o transitdata.cbrfeed.sql.gz | |
#curl https://github.com/maxious/ACTBus-ui/raw/master/lib/postgis.sql -o postgis.sql | |
#createlang -d transitdata plpgsql | |
#psql -d transitdata -f postgis.sql | |
#gunzip /var/www/transitdata.cbrfeed.sql.gz | |
#psql -d transitdata -f transitdata.cbrfeed.sql | |
#createuser transitdata -SDRP | |
#password transitdata | |
#psql -c \"GRANT SELECT ON TABLE agency,calendar,calendar_dates,routes,stop_times,stops,trips TO transitdata;\" | |
#wget http://s3-ap-southeast-1.amazonaws.com/busresources/opentripplanner-webapp.war | |
cp ~/workspace/opentripplanner/maven.1277125291275/opentripplanner-webapp/target/opentripplanner-webapp.war ./ | |
#wget http://s3-ap-southeast-1.amazonaws.com/busresources/opentripplanner-api-webapp.war | |
cp ~/workspace/opentripplanner/maven.1277125291275/opentripplanner-api-webapp/target/opentripplanner-api-webapp.war ./ | |
dotcloud push actbus.otp ./ | |
<?php | <?php |
include ("include/common.inc.php"); | include ("include/common.inc.php"); |
$GTFSREnabled = false; | |
include_header("Feedback", "feedback"); | include_header("Feedback", "feedback"); |
function sendEmail($topic, $message) | function sendEmail($topic, $message) |
{ | { |
$address = "maxious@lambdacomplex.org"; | $address = "maxious@lambdacomplex.org"; |
if (file_exists("/tmp/aws.php")) { | |
include_once ("lib/ses.php"); | |
include_once ("/tmp/aws.php"); | |
$con = new SimpleEmailService($accessKey, $secretKey); | |
//$con->verifyEmailAddress($address); | |
//$con->listVerifiedEmailAddresses(); | |
$m = new SimpleEmailServiceMessage(); | |
$m->addTo($address); | |
$m->setFrom($address); | |
$m->setSubject($topic); | |
$m->setMessageFromString($message); | |
$con->sendEmail($m); | |
} | |
else { | |
// In case any of our lines are larger than 70 characters, we should use wordwrap() | // In case any of our lines are larger than 70 characters, we should use wordwrap() |
$message = wordwrap($message, 70); | $message = wordwrap($message, 70); |
// Send | // Send |
mail($address, $topic, $message); | mail($address, $topic, $message); |
} | |
} | } |
if (isset($_REQUEST['feedback']) || isset($_REQUEST['newlocation'])){ | if (isset($_REQUEST['feedback']) || isset($_REQUEST['newlocation'])){ |
sendEmail("bus.lambda feedback",print_r($_REQUEST,true)); | sendEmail("bus.lambda feedback",print_r($_REQUEST,true)); |
echo "<center><h2>Thank you for your feedback!</h2></center>"; | echo "<h2 style='text-align: center;'>Thank you for your feedback!</h2>"; |
} else { | } else { |
$stopid = ""; | $stopid = ""; |
$stopcode = ""; | $stopcode = ""; |
$urlparts = explode("?",$_SERVER["HTTP_REFERER"]); | if (isset($_SERVER["HTTP_REFERER"])) $urlparts = explode("?",$_SERVER["HTTP_REFERER"]); |
if (isset($urlparts[1])) { | if (isset($urlparts[1])) { |
$getparams = explode("&",$urlparts[1]); | $getparams = explode("&",$urlparts[1]); |
foreach ($getparams as $param) { | foreach ($getparams as $param) { |
$paramparts=explode("=",$param); | $paramparts=explode("=",$param); |
if ($paramparts[0] == "stopid") $stopid = $paramparts[1]; | if ($paramparts[0] == "stopid") $stopid = $paramparts[1]; |
if ($paramparts[0] == "stopcode") $stopcode = $paramparts[1]; | if ($paramparts[0] == "stopcode") $stopcode = $paramparts[1]; |
} | } |
} | } |
?> | ?> |
<h3>Add/Move/Delete a Bus Stop Location</h3> | <h3>Add/Move/Delete a Bus Stop Location</h3> |
<form action="feedback.php" method="post"> | <form action="feedback.php" method="post"> |
StopID: <input type="text" name="stopid" value="<?php echo $stopid ?>"/><br> | StopID: <input type="text" name="stopid" value="<?php echo $stopid ?>"/><br> |
or StopCode: <input type="text" name="stopcode" value="<?php echo $stopcode ?>"/><br> | or StopCode: <input type="text" name="stopcode" value="<?php echo $stopcode ?>"/><br> |
<small> if you click on feedback from a stop page, these will get filled in automatically. else describe the location/street of the stop in one of these boxes </small><br> | <small> if you click on feedback from a stop page, these will get filled in automatically. else describe the location/street of the stop in one of these boxes </small><br> |
Suggested Stop Location (lat/long or words): <input type="text" name="newlocation"/><br> | Suggested Stop Location (lat/long or words): <input type="text" name="newlocation"/><br> |
<small> if your device supports javascript, you can pick a location from the map above</small><br> | <!--<small> if your device supports javascript, you can pick a location from the map above</small><br>--> |
<input type="submit" value="Submit!"/> | <input type="submit" value="Submit!"/> |
</form> | </form> |
<h3>Bug Report/Feedback</h3> | <h3>Bug Report/Feedback</h3> |
Please leave feedback about bugs/errors or general suggestions about improvements that could be made to the way the data is presented! | Please leave feedback about bugs/errors or general suggestions about improvements that could be made to the way the data is presented! |
<form action="feedback.php" method="post"> | <form action="feedback.php" method="post"> |
<textarea name="feedback"> | <textarea name="feedback"> |
</textarea> | </textarea> |
<textarea name="extrainfo" id="extrainfo"> | <textarea name="extrainfo" id="extrainfo"> |
<?php | <?php |
echo "Referrer URL: ".$_SERVER["HTTP_REFERER"]; | echo "Referrer URL: ".($_SERVER["HTTP_REFERER"] ? $_SERVER["HTTP_REFERER"] : ""); |
echo "\nCurrent page URL: ".curPageURL(); | echo "\nCurrent page URL: ".curPageURL(); |
echo "\nUser Agent: ".$_SERVER["HTTP_USER_AGENT"]; | echo "\nUser Agent: ".$_SERVER["HTTP_USER_AGENT"]; |
echo "\nUser host/IP: ".$_SERVER["HTTP_X_FORWARDED_FOR"]." ".$_SERVER["REMOTE_ADDR"]; | echo "\nUser host/IP: ".$_SERVER["HTTP_X_FORWARDED_FOR"]." ".$_SERVER["REMOTE_ADDR"]; |
echo "\nServer host/IP: ".php_uname("n"); | echo "\nServer host/IP: ".php_uname("n"); |
echo "\nCurrent date/time: ". date("c"); | echo "\nCurrent date/time: ". date("c"); |
echo "\nCurrent code revision: ".exec("git rev-parse --short HEAD"); | echo "\nCurrent code revision: ".exec("git rev-parse --short HEAD"); |
echo "\nCurrent timetables version: ".date("c",@filemtime('cbrfeed.zip')); | echo "\nCurrent timetables version: ".date("c",@filemtime('../busresources/cbrfeed.zip')); |
echo "\nDump of session: ".print_r($_SESSION,true); | echo "\nDump of session: ".print_r($_SESSION,true); |
?> | ?> |
</textarea> | </textarea> |
<input type="submit" value="Submit!"/> | <input type="submit" value="Submit!"/> |
</form> | </form> |
<?php | <?php |
} | } |
include_footer(); | include_footer(); |
?> | ?> |
<?php | |
header('Content-Type: application/vnd.google-earth.kml+xml'); | |
include ('../include/common.inc.php'); | |
header('Content-Disposition: attachment; filename="route.' . urlencode($routeid) . '.kml"'); | |
$debugOkay = Array(); // disable debugging output even on dev server | |
echo '<?xml version="1.0" encoding="UTF-8"?> | |
<kml xmlns="http://www.opengis.net/kml/2.2" xmlns:atom="http://www.w3.org/2005/Atom"><Document>'; | |
echo ' | |
<Style id="ylw-pushpin"> | |
<IconStyle> | |
<Icon> | |
<href>http://maps.google.com/mapfiles/kml/pushpin/ylw-pushpin.png</href> | |
</Icon> | |
</IconStyle> | |
</Style> | |
<Style id="blue-pushpin"> | |
<IconStyle> | |
<Icon> | |
<href>http://maps.google.com/mapfiles/kml/pushpin/blue-pushpin.png</href> | |
</Icon> | |
</IconStyle> | |
</Style> | |
<Style id="grn-pushpin"> | |
<IconStyle> | |
<Icon> | |
<href>http://maps.google.com/mapfiles/kml/pushpin/grn-pushpin.png</href> | |
</Icon> | |
</IconStyle> | |
</Style> | |
<Style id="yellowLineYellowPoly"> | |
<LineStyle> | |
<color>7f00ebff</color> | |
<width>4</width> | |
</LineStyle> | |
<PolyStyle> | |
<color>7f00ebff</color> | |
</PolyStyle> | |
</Style> | |
<Style id="blueLineBluePoly"> | |
<LineStyle> | |
<color>7fff0000</color> | |
<width>4</width> | |
</LineStyle> | |
<PolyStyle> | |
<color>7fff0000</color> | |
</PolyStyle> | |
</Style> | |
'; | |
$route = getRoute($routeid); | |
echo "\n<Placemark>\n"; | |
$_REQUEST['time'] = "12:00"; | |
$trip = getRouteNextTrip($routeid, 0); | |
$link = curPageURL() . "/../trip.php?routeid=" . htmlspecialchars($route["route_id"]. "&directionid=0&tripid=".$trip['trip_id']) ; | |
echo "<name>" . $route['route_short_name'] . " Direction 0 </name>"; | |
echo '<atom:link rel="related" href="' . $link . '"/>'; | |
echo '<description><![CDATA[ <a href="' . $link . '">' . $route['route_short_name'] . " Direction 0</a>]]> </description>"; | |
echo "<styleUrl>#yellowLineYellowPoly</styleUrl>"; | |
echo getTripShape($trip['trip_id']); | |
echo "</Placemark>\n"; | |
$stops = Array(); | |
foreach (getTripStops($trip['trip_id']) as $stop) { | |
$stop['style'] = "#ylw-pushpin"; | |
$stops[$stop['stop_id']] = $stop; | |
} | |
echo "\n<Placemark>\n"; | |
$trip = getRouteNextTrip($routeid, 1); | |
$link = curPageURL() . "/../trip.php?routeid=" . htmlspecialchars($route["route_id"]. "&directionid=1&tripid=".$trip['trip_id']) ; | |
echo "<name>" . $route['route_short_name'] . " Direction 1 </name>"; | |
echo '<atom:link rel="related" href="' . $link . '"/>'; | |
echo '<description><![CDATA[ <a href="' . $link . '">' . $route['route_short_name'] . " Direction 1</a>]]> </description>"; | |
echo "<styleUrl>#blueLineBluePoly</styleUrl>"; | |
echo getTripShape($trip['trip_id']); | |
echo "</Placemark>\n"; | |
foreach (getTripStops($trip['trip_id']) as $stop) { | |
if (isset($stops[$stop['stop_id']])) { | |
$stop['style'] = "#grn-pushpin"; | |
} else { | |
$stop['style'] = "#blue-pushpin"; | |
} | |
$stops[$stop['stop_id']] = $stop; | |
} | |
foreach ($stops as $stop) { | |
echo "\n<Placemark>\n"; | |
$link = curPageURL() . '/../stop.php?stopid=' . htmlspecialchars($stop['stop_id']); | |
echo "<name>" . htmlspecialchars($stop['stop_name']) . "</name>"; | |
echo '<atom:link rel="related" href="' . $link . '"/>'; | |
echo '<description><![CDATA[ <a href="' . $link . '">' . htmlspecialchars($stop['stop_name']) . "</a>]]> </description>"; | |
echo "<styleUrl>" . $stop['style'] . "</styleUrl>"; | |
echo $stop['positionkml']; | |
echo "</Placemark>\n"; | |
} | |
echo "</Document></kml>\n"; | |
?> | |
<?php | |
header('Content-type: application/vnd.google-earth.kml+xml'); | |
include ('../include/common.inc.php'); | |
header('Content-Disposition: attachment; filename="stops.kml"'); | |
$debugOkay = Array(); // disable debugging output even on dev server | |
//http://wiki.openstreetmap.org/wiki/OpenLayers_Dynamic_KML | |
// Creates the KML/XML Document. | |
$dom = new DOMDocument('1.0', 'UTF-8'); | |
// Creates the root KML element and appends it to the root document. | |
$node = $dom->createElementNS('http://www.opengis.net/kml/2.2', 'kml'); | |
$parNode = $dom->appendChild($node); | |
// Creates a KML Document element and append it to the KML element. | |
$dnode = $dom->createElement('Document'); | |
$docNode = $parNode->appendChild($dnode); | |
if ($suburb != "") $result_stops = getStopsBySuburb($suburb); | |
else $result_stops = getStops(); | |
foreach ($result_stops as $stop) { | |
$description = '<a href="'.curPageURL() . '/../stop.php?stopid=' . $stop['stop_id'] . '">View stop page</a><br>'; | |
// Creates a Placemark and append it to the Document. | |
$node = $dom->createElement('Placemark'); | |
$placeNode = $docNode->appendChild($node); | |
// Creates an id attribute and assign it the value of id column. | |
$placeNode->setAttribute('id', 'placemark' . $stop['stop_id']); | |
// Create name, and description elements and assigns them the values of the name and address columns from the results. | |
$nameNode = $dom->createElement('name', htmlentities($stop['stop_name'])); | |
$descriptionNode = $dom->createElement('description', $description); | |
$placeNode->appendChild($nameNode); | |
$placeNode->appendChild($descriptionNode); | |
// Creates a Point element. | |
$pointNode = $dom->createElement('Point'); | |
$placeNode->appendChild($pointNode); | |
// Creates a coordinates element and gives it the value of the lng and lat columns from the results. | |
$coorStr = $stop['stop_lon'] . ',' . $stop['stop_lat']; | |
$coorNode = $dom->createElement('coordinates', $coorStr); | |
$pointNode->appendChild($coorNode); | |
} | |
$kmlOutput = $dom->saveXML(); | |
echo $kmlOutput; | |
?> | |
<?php | |
header('Content-Type: application/vnd.google-earth.kml+xml'); | |
include ('../include/common.inc.php'); | |
header('Content-Disposition: attachment; filename="trip.' . urlencode($tripid) . '.kml"'); | |
$debugOkay = Array(); // disable debugging output even on dev server | |
echo '<?xml version="1.0" encoding="UTF-8"?> | |
<kml xmlns="http://www.opengis.net/kml/2.2" xmlns:atom="http://www.w3.org/2005/Atom"><Document>'; | |
echo ' | |
<Style id="ylw-pushpin"> | |
<IconStyle> | |
<Icon> | |
<href>http://maps.google.com/mapfiles/kml/pushpin/ylw-pushpin.png</href> | |
</Icon> | |
</IconStyle> | |
</Style> | |
<Style id="blue-pushpin"> | |
<IconStyle> | |
<Icon> | |
<href>http://maps.google.com/mapfiles/kml/pushpin/blue-pushpin.png</href> | |
</Icon> | |
</IconStyle> | |
</Style> | |
<Style id="grn-pushpin"> | |
<IconStyle> | |
<Icon> | |
<href>http://maps.google.com/mapfiles/kml/pushpin/grn-pushpin.png</href> | |
</Icon> | |
</IconStyle> | |
</Style> | |
<Style id="yellowLineGreenPoly"> | |
<LineStyle> | |
<color>7f00ff00</color> | |
<width>4</width> | |
</LineStyle> | |
<PolyStyle> | |
<color>7f00ffff</color> | |
</PolyStyle> | |
</Style>'; | |
$trip = getTrip($tripid); | |
echo "\n<Placemark>\n"; | |
$link = curPageURL() . "/../trip.php?tripid=" . htmlspecialchars($$tripid); | |
echo "<name>" . $tripid . "</name>"; | |
echo '<atom:link rel="related" href="' . $link . '"/>'; | |
echo '<description><![CDATA[ <a href="' . $link . '">' . $tripid . "</a>]]> </description>"; | |
echo "<styleUrl>#yellowLineGreenPoly</styleUrl>"; | |
echo getTripShape($tripid); | |
echo "</Placemark>\n"; | |
foreach (getTripStopTimes($tripid) as $stop) { | |
echo "\n<Placemark>\n"; | |
$link = curPageURL() . '/../trip.php?tripid=' . htmlspecialchars($tripid); | |
echo "<name>" . $stop['arrival_time'] . " @ " . htmlspecialchars($stop['stop_name']) . "</name>"; | |
echo '<atom:link rel="related" href="' . $link . '"/>'; | |
echo '<description><![CDATA[ <a href="' . $link . '">' . htmlspecialchars($stop['stop_name']) . "</a>]]> </description>"; | |
echo "<styleUrl>#blue-pushpin</styleUrl>"; | |
echo "<Point><coordinates>" . $stop['stop_lon'] . "," . $stop['stop_lat'] . "</coordinates></Point>"; | |
echo "</Placemark>\n"; | |
} | |
echo "</Document></kml>\n"; | |
?> | |
<?php | |
header('Content-Type: application/vnd.google-earth.kml+xml'); | |
include ('../include/common.inc.php'); | |
header('Content-Disposition: attachment; filename="trips.' . date('c') . '.kml"'); | |
$debugOkay = Array(); // disable debugging output even on dev server | |
echo '<?xml version="1.0" encoding="UTF-8"?> | |
<kml xmlns="http://www.opengis.net/kml/2.2" xmlns:atom="http://www.w3.org/2005/Atom"><Document>'; | |
echo ' | |
<Style id="ylw-pushpin"> | |
<IconStyle> | |
<Icon> | |
<href>http://maps.google.com/mapfiles/kml/pushpin/ylw-pushpin.png</href> | |
</Icon> | |
</IconStyle> | |
</Style> | |
<Style id="bus-pushpin"> | |
<IconStyle> | |
<Icon> | |
<href>http://google-maps-icons.googlecode.com/files/bus.png</href> | |
</Icon> | |
</IconStyle> | |
</Style> | |
<Style id="grn-pushpin"> | |
<IconStyle> | |
<Icon> | |
<href>http://maps.google.com/mapfiles/kml/pushpin/grn-pushpin.png</href> | |
</Icon> | |
</IconStyle> | |
</Style>'; | |
foreach (getActiveTrips() as $trip) { | |
echo "\n<Placemark>\n"; | |
$link = curPageURL() . '/../trip.php?tripid=' . htmlspecialchars($trip['trip_id']); | |
$lastStop = getTripLastStop($trip['trip_id']); | |
echo "<name>" . $lastStop[0]['arrival_time'] . " @ " . htmlspecialchars($lastStop[0]['stop_name']) . "</name>"; | |
echo '<atom:link rel="related" href="' . $link . '"/>'; | |
echo '<description><![CDATA[ <a href="' . $link . '">' . htmlspecialchars($lastStop[0]['stop_name']) . "</a>]]> </description>"; | |
echo "<styleUrl>#bus-pushpin</styleUrl>"; | |
echo "<Point><coordinates>" . $lastStop[0]['stop_lon'] . "," . $lastStop[0]['stop_lat'] . "</coordinates></Point>"; | |
echo "</Placemark>\n"; | |
} | |
echo "</Document></kml>\n"; | |
?> | |
<?php | |
require ROOT . '/../lib/openid.php'; | |
$openid = new LightOpenID($_SERVER['HTTP_HOST']); | |
function login() { | |
global $openid; | |
if (!$openid->mode) { | |
$openid->required = array('contact/email'); | |
$openid->identity = 'https://www.google.com/accounts/o8/id'; | |
header('Location: ' . $openid->authUrl()); | |
} | |
} | |
function auth() { | |
if ($_SESSION['authed'] == true) | |
return true; | |
global $openid; | |
if ($openid->mode) { | |
$attr = $openid->getAttributes(); | |
if ($attr['contact/email'] != 'maxious@gmail.com') { | |
die('Access Denied'); | |
} else { | |
$_SESSION['authed'] = true; | |
} | |
} else { | |
login(); | |
} | |
} | |
<?php | <?php |
if (php_uname('n') == "actbus-www") { | |
$conn = pg_connect("dbname=transitdata user=transitdata password=transitdata host=db.actbus.dotcloud.com port=2242"); | |
} else if (isDebugServer()) { | |
$conn = pg_connect("dbname=transitdata user=postgres password=snmc"); | |
} else { | |
$conn = pg_connect("dbname=transitdata user=transitdata password=transitdata "); | |
} | |
if (!$conn) { | |
die("A database error occurred.\n"); | |
} | |
function databaseError($errMsg) { | |
die($errMsg); | |
} | |
include('db/route-dao.inc.php'); | |
include('db/trip-dao.inc.php'); | |
include('db/stop-dao.inc.php'); | |
?> | |
/* | |
* Copyright 2010,2011 Alexander Sadleir | |
Licensed under the Apache License, Version 2.0 (the 'License'); | |
you may not use this file except in compliance with the License. | |
You may obtain a copy of the License at | |
http://www.apache.org/licenses/LICENSE-2.0 | |
Unless required by applicable law or agreed to in writing, software | |
distributed under the License is distributed on an 'AS IS' BASIS, | |
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |
See the License for the specific language governing permissions and | |
limitations under the License. | |
*/ | |
if (strstr(php_uname('n'),'actbus')) { | |
$conn = new PDO('pgsql:dbname=transitdata;user=transitdata;password=transitdata;host=bus-main.lambdacomplex.org'); | |
} else if (isDebugServer()) { | |
$conn = new PDO('pgsql:dbname=transitdata;user=postgres;password=snmc;host=localhost'); | |
} else { | |
$conn = new PDO('pgsql:dbname=transitdata;user=transitdata;password=transitdata;host=localhost'); | |
} | |
if (!$conn) { | |
die('A database error occurred.'.PHP_EOL); | |
} | |
function databaseError($errMsg) { | |
if ($errMsg[1] != '') { | |
die(print_r($errMsg,true)); | |
} | |
} | |
include ('db/route-dao.inc.php'); | |
include ('db/trip-dao.inc.php'); | |
include ('db/stop-dao.inc.php'); | |
include ('db/servicealert-dao.inc.php'); | |
<?php | <?php |
/* | |
* Copyright 2010,2011 Alexander Sadleir | |
Licensed under the Apache License, Version 2.0 (the 'License'); | |
you may not use this file except in compliance with the License. | |
You may obtain a copy of the License at | |
http://www.apache.org/licenses/LICENSE-2.0 | |
Unless required by applicable law or agreed to in writing, software | |
distributed under the License is distributed on an 'AS IS' BASIS, | |
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |
See the License for the specific language governing permissions and | |
limitations under the License. | |
*/ | |
// SELECT array_to_string(array(SELECT REPLACE(name_2006, ',', '\,') as name FROM suburbs order by name), ',') | // SELECT array_to_string(array(SELECT REPLACE(name_2006, ',', '\,') as name FROM suburbs order by name), ',') |
$suburbs = explode(",", "Acton,Ainslie,Amaroo,Aranda,Banks,Barton,Belconnen,Bonner,Bonython,Braddon,Bruce,Calwell,Campbell,Chapman,Charnwood,Chifley,Chisholm,City,Conder,Cook,Curtin,Deakin,Dickson,Downer,Duffy,Dunlop,Evatt,Fadden,Farrer,Fisher,Florey,Flynn,Forrest,Franklin,Fraser,Fyshwick,Garran,Gilmore,Giralang,Gordon,Gowrie,Greenway,Griffith,Gungahlin,Hackett,Hall,Harrison,Hawker,Higgins,Holder,Holt,Hughes,Hume,Isaacs,Isabella Plains,Kaleen,Kambah,Kingston,Latham,Lawson,Lyneham,Lyons,Macarthur,Macgregor,Macquarie,Mawson,McKellar,Melba,Mitchell,Monash,Narrabundah,Ngunnawal,Nicholls,Oaks Estate,O'Connor,O'Malley,Oxley,Page,Palmerston,Parkes,Pearce,Phillip,Pialligo,Red Hill,Reid,Richardson,Rivett,Russell,Scullin,Spence,Stirling,Symonston,Tharwa,Theodore,Torrens,Turner,Wanniassa,Waramanga,Watson,Weetangera,Weston,Yarralumla"); | $suburbs = explode(',', 'Acton,Ainslie,Amaroo,Aranda,Banks,Barton,Belconnen,Bonner,Bonython,Braddon,Bruce,Calwell,Campbell,Chapman,Charnwood,Chifley,Chisholm,City,Conder,Cook,Curtin,Deakin,Dickson,Downer,Duffy,Dunlop,Evatt,Fadden,Farrer,Fisher,Florey,Flynn,Forrest,Franklin,Fraser,Fyshwick,Garran,Gilmore,Giralang,Gordon,Gowrie,Greenway,Griffith,Gungahlin,Hackett,Hall,Harrison,Hawker,Higgins,Holder,Holt,Hughes,Hume,Isaacs,Isabella Plains,Kaleen,Kambah,Kingston,Latham,Lawson,Lyneham,Lyons,Macarthur,Macgregor,Macquarie,Mawson,McKellar,Melba,Mitchell,Monash,Narrabundah,Ngunnawal,Nicholls,Oaks Estate,O\'Connor,O\'Malley,Oxley,Page,Palmerston,Parkes,Pearce,Phillip,Pialligo,Red Hill,Reid,Richardson,Rivett,Russell,Scullin,Spence,Stirling,Symonston,Tharwa,Theodore,Torrens,Turner,Wanniassa,Waramanga,Watson,Weetangera,Weston,Yarralumla'); |
function staticmap($mapPoints, $zoom = 0, $markerImage = "iconb", $collapsible = true) | |
{ | function staticmap($mapPoints, $collapsible = true, $twotone = false, $path = false, $numbered = false) { |
$width = 300; | |
$height = 300; | $markers = ''; |
$metersperpixel[9] = 305.492 * $width; | $height = 300; |
$metersperpixel[10] = 152.746 * $width; | $width = $height; |
$metersperpixel[11] = 76.373 * $width; | $index = 0; |
$metersperpixel[12] = 38.187 * $width; | if (sizeof($mapPoints) < 1) |
$metersperpixel[13] = 19.093 * $width; | return 'map error'; |
$metersperpixel[14] = 9.547 * $width; | if (sizeof($mapPoints) === 1) { |
$metersperpixel[15] = 4.773 * $width; | $markers = 'markers='.$mapPoints[0][0].','.$mapPoints[0][1]; |
$metersperpixel[16] = 2.387 * $width; | } else { |
// $metersperpixel[17]=1.193*$width; | if (!$numbered) { |
$center = ""; | $markers = 'markers='; |
$markers = ""; | } |
$minlat = 999; | if ($path) { |
$minlon = 999; | $markers.= 'markers='.$mapPoints[0][0].','.$mapPoints[0][1].'&path='; |
$maxlat = 0; | } |
$maxlon = 0; | foreach ($mapPoints as $index => $mapPoint) { |
if (sizeof($mapPoints) < 1) return "map error"; | if ($twotone && $index == 0) { |
if (sizeof($mapPoints) === 1) { | $markers = 'markerd=color:red|' . $mapPoint[0] . ',' . $mapPoint[1] . '&markers='; |
if ($zoom == 0) $zoom = 14; | } else { |
$markers.= "{$mapPoints[0][0]},{$mapPoints[0][1]},$markerimage"; | if ($numbered) { |
$center = "{$mapPoints[0][0]},{$mapPoints[0][1]}"; | $label = ($index > 9 ? 9 : $index); |
} | $markers.= 'markers=label:' . $label . '|' . $mapPoint[0] . ',' . $mapPoint[1]; |
else { | if ($index + 1 != sizeof($mapPoints)) { |
foreach ($mapPoints as $index => $mapPoint) { | $markers.= '&'; |
$markers.= $mapPoint[0] . "," . $mapPoint[1] . "," . $markerImage . ($index + 1); | } |
if ($index + 1 != sizeof($mapPoints)) $markers.= "|"; | } else { |
if ($mapPoint[0] < $minlat) $minlat = $mapPoint[0]; | $markers.= $mapPoint[0] . ',' . $mapPoint[1]; |
if ($mapPoint[0] > $maxlat) $maxlat = $mapPoint[0]; | if ($index + 1 != sizeof($mapPoints)) { |
if ($mapPoint[1] < $minlon) $minlon = $mapPoint[1]; | $markers.= '|'; |
if ($mapPoint[1] > $maxlon) $maxlon = $mapPoint[1]; | } |
$totalLat+= $mapPoint[0]; | } |
$totalLon+= $mapPoint[1]; | $index++; |
} | } |
if ($zoom == 0) { | } |
$mapwidthinmeters = distance($minlat, $minlon, $minlat, $maxlon); | } |
foreach (array_reverse($metersperpixel, true) as $zoomLevel => $maxdistance) { | $output = ''; |
if ($zoom == 0 && $mapwidthinmeters < ($maxdistance + 50)) $zoom = $zoomLevel; | if ($collapsible) |
} | $output.= '<div class="map" data-role="collapsible" data-collapsed="true"><h3>Open Map...</h3>'; |
} | if (isIOSDevice()) |
$center = $totalLat / sizeof($mapPoints) . "," . $totalLon / sizeof($mapPoints); | $output.= '<img class="hiresmap" src="http://maps.googleapis.com/maps/api/staticmap?size=' . $width . 'x' . $height . '&' . $markers . '&scale=2&sensor=true" width=' . $width . ' height=' . $height . '" alt="map of stop location">'; |
} | else |
$output = ""; | $output.= '<img class="lowresmap" src="http://maps.googleapis.com/maps/api/staticmap?size=' . $width . 'x' . $height . '&' . $markers . '&scale=1&format=jpg&sensor=true" width=' . $width . ' height=' . $height . '" alt="map of stop location">'; |
if ($collapsible) $output.= '<div data-role="collapsible" data-collapsed="true"><h3>Open Map...</h3>'; | |
$output.= '<center><img src="' . curPageURL() . '/lib/staticmaplite/staticmap.php?center=' . $center . '&zoom=' . $zoom . '&size=' . $width . 'x' . $height . '&markers=' . | if ($collapsible) |
$markers . '" width=' . $width . ' height=' . $height . '></center>'; | $output.= '</div>'; |
if ($collapsible) $output.= '</div>'; | return $output; |
return $output; | |
} | |
function distance($lat1, $lng1, $lat2, $lng2, $roundLargeValues = false) | |
{ | |
$pi80 = M_PI / 180; | |
$lat1*= $pi80; | |
$lng1*= $pi80; | |
$lat2*= $pi80; | |
$lng2*= $pi80; | |
$r = 6372.797; // mean radius of Earth in km | |
$dlat = $lat2 - $lat1; | |
$dlng = $lng2 - $lng1; | |
$a = sin($dlat / 2) * sin($dlat / 2) + cos($lat1) * cos($lat2) * sin($dlng / 2) * sin($dlng / 2); | |
$c = 2 * atan2(sqrt($a) , sqrt(1 - $a)); | |
$km = $r * $c; | |
if ($roundLargeValues) { | |
if ($km < 1) return floor($km * 1000); | |
else return round($km,2)."k"; | |
} else return floor($km * 1000); | |
} | } |
function decodePolylineToArray($encoded) | function distance($lat1, $lng1, $lat2, $lng2, $roundLargeValues = false) { |
{ | $pi80 = M_PI / 180; |
// source: http://latlongeeks.com/forum/viewtopic.php?f=4&t=5 | $lat1*= $pi80; |
$length = strlen($encoded); | $lng1*= $pi80; |
$index = 0; | $lat2*= $pi80; |
$points = array(); | $lng2*= $pi80; |
$lat = 0; | $r = 6372.797; // mean radius of Earth in km |
$lng = 0; | $dlat = $lat2 - $lat1; |
while ($index < $length) { | $dlng = $lng2 - $lng1; |
// Temporary variable to hold each ASCII byte. | $a = sin($dlat / 2) * sin($dlat / 2) + cos($lat1) * cos($lat2) * sin($dlng / 2) * sin($dlng / 2); |
$b = 0; | $c = 2 * atan2(sqrt($a), sqrt(1 - $a)); |
// The encoded polyline consists of a latitude value followed by a | $km = $r * $c; |
// longitude value. They should always come in pairs. Read the | if ($roundLargeValues) { |
// latitude value first. | if ($km < 1) |
$shift = 0; | return floor($km * 1000); |
$result = 0; | else |
do { | return round($km, 2) . 'k'; |
// The `ord(substr($encoded, $index++))` statement returns the ASCII | } |
// code for the character at $index. Subtract 63 to get the original | else |
// value. (63 was added to ensure proper ASCII characters are displayed | return floor($km * 1000); |
// in the encoded polyline string, which is `human` readable) | |
$b = ord(substr($encoded, $index++)) - 63; | |
// AND the bits of the byte with 0x1f to get the original 5-bit `chunk. | |
// Then left shift the bits by the required amount, which increases | |
// by 5 bits each time. | |
// OR the value into $results, which sums up the individual 5-bit chunks | |
// into the original value. Since the 5-bit chunks were reversed in | |
// order during encoding, reading them in this way ensures proper | |
// summation. | |
$result|= ($b & 0x1f) << $shift; | |
$shift+= 5; | |
} | |
// Continue while the read byte is >= 0x20 since the last `chunk` | |
// was not OR'd with 0x20 during the conversion process. (Signals the end) | |
while ($b >= 0x20); | |
// Check if negative, and convert. (All negative values have the last bit | |
// set) | |
$dlat = (($result & 1) ? ~($result >> 1) : ($result >> 1)); | |
// Compute actual latitude since value is offset from previous value. | |
$lat+= $dlat; | |
// The next values will correspond to the longitude for this point. | |
$shift = 0; | |
$result = 0; | |
do { | |
$b = ord(substr($encoded, $index++)) - 63; | |
$result|= ($b & 0x1f) << $shift; | |
$shift+= 5; | |
} while ($b >= 0x20); | |
$dlng = (($result & 1) ? ~($result >> 1) : ($result >> 1)); | |
$lng+= $dlng; | |
// The actual latitude and longitude values were multiplied by | |
// 1e5 before encoding so that they could be converted to a 32-bit | |
// integer representation. (With a decimal accuracy of 5 places) | |
// Convert back to original values. | |
$points[] = array( | |
$lat * 1e-5, | |
$lng * 1e-5 | |
); | |
} | |
return $points; | |
} | } |
function geocode($query, $giveOptions) | |
{ | function decodePolylineToArray($encoded) { |
global $cloudmadeAPIkey; | // source: http://latlongeeks.com/forum/viewtopic.php?f=4&t=5 |
$url = "http://geocoding.cloudmade.com/$cloudmadeAPIkey/geocoding/v2/find.js?query=" . urlencode($query) . "&bbox=-35.5,149.00,-35.15,149.1930&return_location=true&bbox_only=true"; | $length = strlen($encoded); |
$contents = json_decode(getPage($url)); | $index = 0; |
if ($giveOptions) return $contents->features; | $points = array(); |
elseif (isset($contents->features[0]->centroid)) return $contents->features[0]->centroid->coordinates[0] . "," . $contents->features[0]->centroid->coordinates[1]; | $lat = 0; |
else return ""; | $lng = 0; |
while ($index < $length) { | |
// Temporary variable to hold each ASCII byte. | |
$b = 0; | |
// The encoded polyline consists of a latitude value followed by a | |
// longitude value. They should always come in pairs. Read the | |
// latitude value first. | |
$shift = 0; | |
$result = 0; | |
do { | |
// The `ord(substr($encoded, $index++))` statement returns the ASCII | |
// code for the character at $index. Subtract 63 to get the original | |
// value. (63 was added to ensure proper ASCII characters are displayed | |
// in the encoded polyline string, which is `human` readable) | |
$b = ord(substr($encoded, $index++)) - 63; | |
// AND the bits of the byte with 0x1f to get the original 5-bit `chunk. | |
// Then left shift the bits by the required amount, which increases | |
// by 5 bits each time. | |
// OR the value into $results, which sums up the individual 5-bit chunks | |
// into the original value. Since the 5-bit chunks were reversed in | |
// order during encoding, reading them in this way ensures proper | |
// summation. | |
$result|= ($b & 0x1f) << $shift; | |
$shift+= 5; | |
} | |
// Continue while the read byte is >= 0x20 since the last `chunk` | |
// was not OR'd with 0x20 during the conversion process. (Signals the end) | |
while ($b >= 0x20); | |
// Check if negative, and convert. (All negative values have the last bit | |
// set) | |
$dlat = (($result & 1) ? ~($result >> 1) : ($result >> 1)); | |
// Compute actual latitude since value is offset from previous value. | |
$lat+= $dlat; | |
// The next values will correspond to the longitude for this point. | |
$shift = 0; | |
$result = 0; | |
do { | |
$b = ord(substr($encoded, $index++)) - 63; | |
$result|= ($b & 0x1f) << $shift; | |
$shift+= 5; | |
} while ($b >= 0x20); | |
$dlng = (($result & 1) ? ~($result >> 1) : ($result >> 1)); | |
$lng+= $dlng; | |
// The actual latitude and longitude values were multiplied by | |
// 1e5 before encoding so that they could be converted to a 32-bit | |
// integer representation. (With a decimal accuracy of 5 places) | |
// Convert back to original values. | |
$points[] = array( | |
$lat * 1e-5, | |
$lng * 1e-5 | |
); | |
} | |
return $points; | |
} | } |
function reverseGeocode($lat, $lng) | |
{ | function geocode($query, $giveOptions) { |
global $cloudmadeAPIkey; | global $cloudmadeAPIkey; |
$url = "http://geocoding.cloudmade.com/$cloudmadeAPIkey/geocoding/v2/find.js?around=" . $lat . "," . $lng . "&distance=closest&object_type=road"; | $url = 'http://geocoding.cloudmade.com/$cloudmadeAPIkey/geocoding/v2/find.js?query=' . urlencode($query) . '&bbox=-35.5,149.00,-35.15,149.1930&return_location=true&bbox_only=true'; |
$contents = json_decode(getPage($url)); | $contents = json_decode(getPage($url)); |
return $contents->features[0]->properties->name; | if ($giveOptions) |
return $contents->features; | |
elseif (isset($contents->features[0]->centroid)) | |
return $contents->features[0]->centroid->coordinates[0] . ',' . $contents->features[0]->centroid->coordinates[1]; | |
else | |
return ''; | |
} | } |
?> | |
function reverseGeocode($lat, $lng) { | |
global $cloudmadeAPIkey; | |
$url = 'http://geocoding.cloudmade.com/$cloudmadeAPIkey/geocoding/v2/find.js?around=' . $lat . ',' . $lng . '&distance=closest&object_type=road'; | |
$contents = json_decode(getPage($url)); | |
return $contents->features[0]->properties->name; | |
} | |
<?php | <?php |
function getPage($url) | |
{ | /* |
debug($url, "json"); | * Copyright 2010,2011 Alexander Sadleir |
$ch = curl_init($url); | |
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); | Licensed under the Apache License, Version 2.0 (the 'License'); |
curl_setopt($ch, CURLOPT_HEADER, 0); | you may not use this file except in compliance with the License. |
curl_setopt($ch, CURLOPT_TIMEOUT, 30); | You may obtain a copy of the License at |
$page = curl_exec($ch); | |
if (curl_errno($ch)) { | http://www.apache.org/licenses/LICENSE-2.0 |
echo "<font color=red> Database temporarily unavailable: "; | |
echo curl_errno($ch) . " " . curl_error($ch); | Unless required by applicable law or agreed to in writing, software |
if (isDebug()) { | distributed under the License is distributed on an 'AS IS' BASIS, |
echo $url; | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
} | See the License for the specific language governing permissions and |
echo "</font><br>"; | limitations under the License. |
} | */ |
curl_close($ch); | |
debug(print_r($page,true),"json"); | function getPage($url) { |
return $page; | debug($url, 'json'); |
$ch = curl_init($url); | |
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); | |
curl_setopt($ch, CURLOPT_HEADER, 0); | |
curl_setopt($ch, CURLOPT_TIMEOUT, 45); | |
$page = curl_exec($ch); | |
if (curl_errno($ch)) { | |
echo '<font color=red> Database temporarily unavailable: '; | |
echo curl_errno($ch) . ' ' . curl_error($ch); | |
if (isDebug()) { | |
echo $url; | |
} | |
echo '</font><br>'; | |
} | |
curl_close($ch); | |
debug(print_r($page, true), 'json'); | |
return $page; | |
} | } |
function curPageURL() | |
{ | function curPageURL() { |
$isHTTPS = (isset($_SERVER["HTTPS"]) && $_SERVER["HTTPS"] == "on"); | $isHTTPS = (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on'); |
$port = (isset($_SERVER["SERVER_PORT"]) && ((!$isHTTPS && $_SERVER["SERVER_PORT"] != "80") || ($isHTTPS && $_SERVER["SERVER_PORT"] != "443"))); | $port = (isset($_SERVER['SERVER_PORT']) && ((!$isHTTPS && $_SERVER['SERVER_PORT'] != '80') || ($isHTTPS && $_SERVER['SERVER_PORT'] != '443'))); |
$port = ($port) ? ':' . $_SERVER["SERVER_PORT"] : ''; | $port = ($port) ? ':' . $_SERVER['SERVER_PORT'] : ''; |
$url = ($isHTTPS ? 'https://' : 'http://') . $_SERVER["SERVER_NAME"] . $port . htmlentities(dirname($_SERVER['PHP_SELF']) , ENT_QUOTES); | $url = ($isHTTPS ? 'https://' : 'http://') . $_SERVER['SERVER_NAME'] . $port . htmlentities(dirname($_SERVER['PHP_SELF']), ENT_QUOTES); |
return $url; | return $url; |
} | } |
?> | |
<?php | |
/* | |
* Copyright 2010,2011 Alexander Sadleir | |
Licensed under the Apache License, Version 2.0 (the "License"); | |
you may not use this file except in compliance with the License. | |
You may obtain a copy of the License at | |
http://www.apache.org/licenses/LICENSE-2.0 | |
Unless required by applicable law or agreed to in writing, software | |
distributed under the License is distributed on an "AS IS" BASIS, | |
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |
See the License for the specific language governing permissions and | |
limitations under the License. | |
*/ | |
if (isset($_REQUEST['firstLetter'])) { | |
$firstLetter = filter_var($_REQUEST['firstLetter'], FILTER_SANITIZE_STRING); | |
} | |
if (isset($_REQUEST['bysuburbs'])) { | |
$bysuburbs = true; | |
} | |
if (isset($_REQUEST['bynumber'])) { | |
$bynumber = true; | |
} | |
if (isset($_REQUEST['allstops'])) { | |
$allstops = true; | |
} | |
if (isset($_REQUEST['nearby'])) { | |
$nearby = true; | |
} | |
if (isset($_REQUEST['labs'])) { | |
$labs = true; | |
} | |
if (isset($_REQUEST['suburb'])) { | |
$suburb = $_REQUEST['suburb']; | |
} | |
if (isset($_REQUEST['pageKey'])) { | |
$pageKey = filter_var($_REQUEST['pageKey'], FILTER_SANITIZE_NUMBER_INT); | |
} | |
if (isset($_REQUEST['lat'])) { | |
$lat = filter_var($_REQUEST['lat'], FILTER_SANITIZE_NUMBER_FLOAT, FILTER_FLAG_ALLOW_FRACTION); | |
} | |
if (isset($_REQUEST['lon'])) { | |
$lon = filter_var($_REQUEST['lon'], FILTER_SANITIZE_NUMBER_FLOAT, FILTER_FLAG_ALLOW_FRACTION); | |
} | |
if (isset($_REQUEST['radius'])) { | |
$max_distance = filter_var($_REQUEST['radius'], FILTER_SANITIZE_NUMBER_INT); | |
} | |
if (isset($_REQUEST['numberSeries'])) { | |
$numberSeries = filter_var($_REQUEST['numberSeries'], FILTER_SANITIZE_NUMBER_INT); | |
} | |
if (isset($_REQUEST['routeDestination'])) { | |
$routeDestination = urldecode(filter_var($_REQUEST['routeDestination'], FILTER_SANITIZE_ENCODED)); | |
} | |
if (isset($_REQUEST['routename'])) { | |
$routename = urldecode(filter_var($_REQUEST['routename'], FILTER_SANITIZE_ENCODED)); | |
} | |
if (isset($_REQUEST['stopcode'])) { | |
$stopcode = filter_var($_REQUEST['stopcode'], FILTER_SANITIZE_STRING); | |
} | |
if (isset($_REQUEST['stopids'])) { | |
$stopids = explode(",", filter_var($_REQUEST['stopids'], FILTER_SANITIZE_STRING)); | |
} | |
if (isset($_REQUEST['filterIncludeRoutes'])) { | |
$filterIncludeRoutes = explode(",", filter_var($_REQUEST['filterIncludeRoutes'], FILTER_SANITIZE_STRING)); | |
} | |
if (isset($_REQUEST['filterHasStop'])) { | |
$filterHasStop = filter_var($_REQUEST['filterHasStop'], FILTER_SANITIZE_STRING); | |
} | |
if (isset($_REQUEST['tripid'])) { | |
$tripid = filter_var($_REQUEST['tripid'], FILTER_SANITIZE_STRING); | |
} | |
if (isset($_REQUEST['routeid'])) { | |
$routeid = filter_var($_REQUEST['routeid'], FILTER_SANITIZE_STRING); | |
} | |
if (isset($_REQUEST['directionid'])) { | |
$directionid = filter_var($_REQUEST['directionid'], FILTER_SANITIZE_STRING); | |
} | |
if (isset($_REQUEST['stopid'])) { | |
$stopid = filter_var($_REQUEST['stopid'], FILTER_SANITIZE_NUMBER_INT); | |
} | |
if (isset($_REQUEST['geolocate'])) { | |
$geolocate = filter_var($_REQUEST['geolocate'], FILTER_SANITIZE_URL); | |
} | |
<?php | <?php |
/* | |
* Copyright 2010,2011 Alexander Sadleir | |
Licensed under the Apache License, Version 2.0 (the 'License'); | |
you may not use this file except in compliance with the License. | |
You may obtain a copy of the License at | |
http://www.apache.org/licenses/LICENSE-2.0 | |
Unless required by applicable law or agreed to in writing, software | |
distributed under the License is distributed on an 'AS IS' BASIS, | |
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |
See the License for the specific language governing permissions and | |
limitations under the License. | |
*/ | |
// you have to open the session to be able to modify or remove it | // you have to open the session to be able to modify or remove it |
session_start(); | session_start(); |
if (isset($_REQUEST['service_period'])) { | if (isset($_REQUEST['geolocate']) && $_REQUEST['geolocate'] != 'Enter co-ordinates or address here') { |
$_SESSION['service_period'] = filter_var($_REQUEST['service_period'], FILTER_SANITIZE_STRING); | $geocoded = false; |
sessionUpdated(); | if (isset($_REQUEST['lat']) && isset($_REQUEST['lon'])) { |
$_SESSION['lat'] = trim(filter_var($_REQUEST['lat'], FILTER_SANITIZE_NUMBER_FLOAT, FILTER_FLAG_ALLOW_FRACTION)); | |
$_SESSION['lon'] = trim(filter_var($_REQUEST['lon'], FILTER_SANITIZE_NUMBER_FLOAT, FILTER_FLAG_ALLOW_FRACTION)); | |
} else { | |
if (startsWith($geolocate, '-')) { | |
$locateparts = explode(',', $geolocate); | |
$_SESSION['lat'] = $locateparts[0]; | |
$_SESSION['lon'] = $locateparts[1]; | |
} else if (strpos($geolocate, '(') !== false) { | |
$geoParts = explode('(', $geolocate); | |
$locateparts = explode(',', str_replace(')', '', $geoParts[1])); | |
$_SESSION['lat'] = $locateparts[0]; | |
$_SESSION['lon'] = $locateparts[1]; | |
} else { | |
$contents = geocode($geolocate, true); | |
print_r($contents); | |
if (isset($contents[0]->centroid)) { | |
$geocoded = true; | |
$_SESSION['lat'] = $contents[0]->centroid->coordinates[0]; | |
$_SESSION['lon'] = $contents[0]->centroid->coordinates[1]; | |
} else { | |
$_SESSION['lat'] = ''; | |
$_SESSION['lon'] = ''; | |
} | |
} | |
} | |
sessionUpdated(); | |
} | } |
if (isset($_REQUEST['time'])) { | |
$_SESSION['time'] = filter_var($_REQUEST['time'], FILTER_SANITIZE_STRING); | function sessionUpdated() { |
sessionUpdated(); | $_SESSION['lastUpdated'] = time(); |
} | } |
if (isset($_REQUEST['geolocate']) && $_REQUEST['geolocate'] != "Enter co-ordinates or address here") { | |
$geocoded = false; | // timeoutSession |
if (isset($_REQUEST['lat']) && isset($_REQUEST['lon'])) { | $TIMEOUT_LIMIT = 60 * 5; // 5 minutes |
$_SESSION['lat'] = trim(filter_var($_REQUEST['lat'], FILTER_SANITIZE_NUMBER_FLOAT, FILTER_FLAG_ALLOW_FRACTION)); | if (isset($_SESSION['lastUpdated']) && $_SESSION['lastUpdated'] + $TIMEOUT_LIMIT < time()) { |
$_SESSION['lon'] = trim(filter_var($_REQUEST['lon'], FILTER_SANITIZE_NUMBER_FLOAT, FILTER_FLAG_ALLOW_FRACTION)); | debug('Session timeout ' . ($_SESSION['lastUpdated'] + $TIMEOUT_LIMIT) . '>' . time(), 'session'); |
} | session_destroy(); |
else { | session_start(); |
$geolocate = filter_var($_REQUEST['geolocate'], FILTER_SANITIZE_URL); | |
if (startsWith($geolocate, "-")) { | |
$locateparts = explode(",", $geolocate); | |
$_SESSION['lat'] = $locateparts[0]; | |
$_SESSION['lon'] = $locateparts[1]; | |
} | |
else { | |
$contents = geocode($geolocate, true); | |
print_r($contents); | |
if (isset($contents[0]->centroid)) { | |
$geocoded = true; | |
$_SESSION['lat'] = $contents[0]->centroid->coordinates[0]; | |
$_SESSION['lon'] = $contents[0]->centroid->coordinates[1]; | |
} | |
else { | |
$_SESSION['lat'] = ""; | |
$_SESSION['lon'] = ""; | |
} | |
} | |
} | |
if ($_SESSION['lat'] != "" && isAnalyticsOn()) { | |
trackEvent("Geolocation","Updated Location", "Geocoded - ".($geocoded ? "Yes" : "No")); | |
} | |
sessionUpdated(); | |
} | } |
function sessionUpdated() { | |
$_SESSION['lastUpdated'] = time(); | //debug(print_r($_SESSION, true) , 'session'); |
function current_time($time = '') { | |
if (isset($_REQUEST['time'])) | |
return $_REQUEST['time']; | |
else if ($time != '') | |
date('H:i:s', $time); | |
else | |
return date('H:i:s'); | |
} | } |
// timeoutSession | |
$TIMEOUT_LIMIT = 60*5; // 5 minutes | |
if (isset($_SESSION['lastUpdated']) && $_SESSION['lastUpdated']+$TIMEOUT_LIMIT < time()) { | |
debug ("Session timeout ".($_SESSION['lastUpdated']+$TIMEOUT_LIMIT).">".time(),"session"); | |
session_destroy(); | |
session_start(); | |
} | |
debug(print_r($_SESSION, true) , "session"); | |
function current_time() { | |
return ($_SESSION['time']? $_SESSION['time'] : date("H:i:s")); | |
} | |
?> |
<?php | <?php |
/* | |
* Copyright 2010,2011 Alexander Sadleir | |
Licensed under the Apache License, Version 2.0 (the "License"); | |
you may not use this file except in compliance with the License. | |
You may obtain a copy of the License at | |
http://www.apache.org/licenses/LICENSE-2.0 | |
Unless required by applicable law or agreed to in writing, software | |
distributed under the License is distributed on an "AS IS" BASIS, | |
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |
See the License for the specific language governing permissions and | |
limitations under the License. | |
*/ | |
// Copyright 2009 Google Inc. All Rights Reserved. | // Copyright 2009 Google Inc. All Rights Reserved. |
$GA_ACCOUNT = "MO-22173039-1"; | $GA_ACCOUNT = "MO-22173039-1"; |
$GA_PIXEL = "/lib/ga.php"; | $GA_PIXEL = "/lib/ga.php"; |
function googleAnalyticsGetImageUrl() | |
{ | function googleAnalyticsGetImageUrl() { |
global $GA_ACCOUNT, $GA_PIXEL; | global $GA_ACCOUNT, $GA_PIXEL; |
$url = ""; | //if (stristr($_SERVER['HTTP_USER_AGENT'], 'Googlebot') return ""; |
$url.= $GA_PIXEL . "?"; | $url = ""; |
$url.= "utmac=" . $GA_ACCOUNT; | $url.= $GA_PIXEL . "?"; |
$url.= "&utmn=" . rand(0, 0x7fffffff); | $url.= "utmac=" . $GA_ACCOUNT; |
$referer = $_SERVER["HTTP_REFERER"]; | $url.= "&utmn=" . rand(0, 0x7fffffff); |
$query = $_SERVER["QUERY_STRING"]; | $referer = (isset($_SERVER["HTTP_REFERER"]) ? $_SERVER["HTTP_REFERER"] : ""); |
$path = $_SERVER["REQUEST_URI"]; | $query = $_SERVER["QUERY_STRING"]; |
if (empty($referer)) { | $path = $_SERVER["REQUEST_URI"]; |
$referer = "-"; | if (empty($referer)) { |
} | $referer = "-"; |
$url.= "&utmr=" . urlencode($referer); | } |
if (!empty($path)) { | $url.= "&utmr=" . urlencode($referer); |
$url.= "&utmp=" . urlencode($path); | if (!empty($path)) { |
} | $url.= "&utmp=" . urlencode($path); |
$url.= "&guid=ON"; | } |
return str_replace("&", "&", $url); | $url.= "&guid=ON"; |
} | return str_replace("&", "&", $url); |
function include_header($pageTitle, $pageType, $opendiv = true, $geolocate = false, $datepicker = false) | } |
{ | |
echo ' | function include_header($pageTitle, $pageType, $opendiv = true, $geolocate = false, $datepicker = false) { |
global $basePath, $GTFSREnabled, $stopid, $routeid; | |
echo ' | |
<!DOCTYPE html> | <!DOCTYPE html> |
<html lang="en"> | <html lang="en"> |
<head> | <head> |
<meta charset="UTF-8"> | <meta charset="UTF-8"> |
<title>' . $pageTitle . '</title> | <meta name="viewport" content="width=device-width, initial-scale=1"> |
<meta name="google-site-verification" | <title>' . $pageTitle . ' - Canberra Bus Timetable</title> |
content="-53T5Qn4TB_de1NyfR_ZZkEVdUNcNFSaYKSFkWKx-sY" />'; | <meta name="google-site-verification" content="-53T5Qn4TB_de1NyfR_ZZkEVdUNcNFSaYKSFkWKx-sY" /> |
if ($datepicker) echo '<link rel="stylesheet" href="css/jquery.ui.datepicker.mobile.css" />'; | <link rel="dns-prefetch" href="//code.jquery.com"> |
if (isDebugServer()) { | <link rel="dns-prefetch" href="//ajax.googleapis.com"> |
echo '<link rel="stylesheet" href="css/jquery.mobile-1.0a4.css" /> | <link rel="stylesheet" href="' . $basePath . 'css/jquery-ui-1.8.12.custom.css" />'; |
$jqmVersion = "1.1.0"; | |
<script type="text/javascript" src="js/jquery-1.5.js"></script> | if (isDebugServer()) { |
<script>$(document).bind("mobileinit", function(){ | $jqmcss = $basePath . "css/jquery.mobile-$jqmVersion.min.css"; |
$jqjs = $basePath . "js/jquery-1.7.2.min.js"; | |
$jqmjs = $basePath . "js/jquery.mobile-$jqmVersion.min.js"; | |
} else { | |
$jqmcss = "//code.jquery.com/mobile/$jqmVersion/jquery.mobile-$jqmVersion.min.css"; | |
$jqjs = "//ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"; | |
$jqmjs = "//code.jquery.com/mobile/$jqmVersion/jquery.mobile-$jqmVersion.min.js"; | |
} | |
echo '<link rel="stylesheet" href="' . $jqmcss . '" /> | |
<script src="' . $jqjs . '"></script> | |
<script>$(document).bind("mobileinit", function(){ | |
$.mobile.ajaxEnabled = false; | $.mobile.ajaxEnabled = false; |
}); | }); |
</script> | </script> |
<script type="text/javascript" src="js/jquery.mobile-1.0a4.js"></script>'; | <script src="' . $jqmjs . '"></script> |
} | |
else { | <script src="' . $basePath . 'js/jquery.ui.core.min.js"></script> |
echo '<link rel="stylesheet" href="http://code.jquery.com/mobile/1.0a4.1/jquery.mobile-1.0a4.1.min.css" /> | <script src="' . $basePath . 'js/jquery.ui.position.min.js"></script> |
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.5.2/jquery.min.js"></script> | <script src="' . $basePath . 'js/jquery.ui.widget.min.js"></script> |
<script>$(document).bind("mobileinit", function(){ | <script src="' . $basePath . 'js/jquery.ui.autocomplete.min.js"></script> |
$.mobile.ajaxEnabled = false; | <script> |
}); | $(function() { |
</script> | $( "#geolocate" ).autocomplete({ |
<script type="text/javascript" src="http://code.jquery.com/mobile/1.0a4.1/jquery.mobile-1.0a4.1.min.js"></script>'; | source: "lib/autocomplete.php", |
} | minLength: 2 |
if ($datepicker) { | }); |
echo '<script> | $( "#from" ).autocomplete({ |
//reset type=date inputs to text | source: "lib/autocomplete.php", |
$( document ).bind( "mobileinit", function(){ | minLength: 2 |
$.mobile.page.prototype.options.degradeInputs.date = true; | }); |
}); | $( "#to" ).autocomplete({ |
</script> | source: "lib/autocomplete.php", |
<script src="js/jQuery.ui.datepicker.js"></script>'; | minLength: 2 |
} | }); |
echo '<style type="text/css"> | }); |
.ui-navbar { | </script>'; |
width: 100%; | echo '<style type="text/css">'; |
} | if (strstr($_SERVER['HTTP_USER_AGENT'], 'Android')) |
.ui-btn-inner { | echo '.ui-shadow,.ui-btn-up-a,.ui-btn-hover-a,.ui-btn-down-a,.ui-body-b,.ui-btn-up-b,.ui-btn-hover-b, |
white-space: normal !important; | .ui-btn-down-b,.ui-bar-c,.ui-body-c,.ui-btn-up-c,.ui-btn-hover-c,.ui-btn-down-c,.ui-bar-c,.ui-body-d, |
} | .ui-btn-up-d,.ui-btn-hover-d,.ui-btn-down-d,.ui-bar-d,.ui-body-e,.ui-btn-up-e,.ui-btn-hover-e, |
.ui-li-heading { | .ui-btn-down-e,.ui-bar-e,.ui-overlay-shadow,.ui-shadow,.ui-btn-active,.ui-body-a,.ui-bar-a { |
white-space: normal !important; | text-shadow: none; |
} | box-shadow: none; |
.ui-listview-filter { | -webkit-box-shadow: none; |
margin: 0 !important; | }'; |
} | echo '</style>'; |
.ui-icon-navigation { | echo '<link rel="stylesheet" href="' . $basePath . 'css/local.css.php" />'; |
background-image: url(css/images/113-navigation.png); | if (isIOSDevice()) { |
background-position: 1px 0; | echo '<meta name="apple-mobile-web-app-capable" content="yes" /> |
} | |
.ui-icon-beaker { | |
background-image: url(css/images/91-beaker-2.png); | |
background-position: 1px 0; | |
} | |
#footer { | |
text-size: 0.75em; | |
text-align: center; | |
} | |
body { | |
background-color: #F0F0F0; | |
} | |
#jqm-homeheader { | |
text-align: center; | |
} | |
.viaPoints { | |
display: none; | |
text-size: 0.2em; | |
} | |
.min-width-480px .viaPoints { | |
display: inline; | |
} | |
#extrainfo { | |
visibility: hidden; | |
display: none; | |
} | |
// source http://webaim.org/techniques/skipnav/ | |
#skip a, #skip a:hover, #skip a:visited | |
{ | |
position:absolute; | |
left:0px; | |
top:-500px; | |
width:1px; | |
height:1px; | |
overflow:hidden; | |
} | |
#skip a:active, #skip a:focus | |
{ | |
position:static; | |
width:auto; | |
height:auto; | |
} | |
</style>'; | |
if (strstr($_SERVER['HTTP_USER_AGENT'], 'iPhone') || strstr($_SERVER['HTTP_USER_AGENT'], 'iPod')) { | |
echo '<meta name="apple-mobile-web-app-capable" content="yes" /> | |
<meta name="apple-mobile-web-app-status-bar-style" content="black" /> | <meta name="apple-mobile-web-app-status-bar-style" content="black" /> |
<link rel="apple-touch-startup-image" href="startup.png" /> | <link rel="apple-touch-startup-image" href="startup.png" /> |
<link rel="apple-touch-icon" href="apple-touch-icon.png" />'; | <link rel="apple-touch-icon" href="apple-touch-icon.png" />'; |
} | } |
if ($geolocate) { | if ($geolocate) { |
echo "<script> | echo "<script> |
function success(position) { | function success(position) { |
$('#error').val('Location now detected. Please wait for data to load.'); | $('#error').val('Location now detected. Please wait for data to load.'); |
$('#geolocate').val(position.coords.latitude+','+position.coords.longitude); | $('#geolocate').val(position.coords.latitude+','+position.coords.longitude); |
$.ajax({ url: \"include/common.inc.php?geolocate=yes&lat=\"+position.coords.latitude+\"&lon=\"+position.coords.longitude }); | $.ajax({ async: false, |
location.reload(true); | success: function(){ |
location.reload(true); | |
}, | |
url: \"include/common.inc.php?geolocate=yes&lat=\"+position.coords.latitude+\"&lon=\"+position.coords.longitude }); | |
} | } |
function error(msg) { | function error(msg) { |
$('#error').val('Error: '+msg); | $('#error').val('Error: '+msg); |
} | } |
function geolocate() { | function geolocate() { |
if (navigator.geolocation) { | if (navigator.geolocation) { |
var options = { | var options = { |
enableHighAccuracy: true, | enableHighAccuracy: true, |
timeout: 60000, | timeout: 60000, |
maximumAge: 10000 | maximumAge: 10000 |
} | } |
navigator.geolocation.getCurrentPosition(success, error, options); | navigator.geolocation.getCurrentPosition(success, error, options); |
} | } |
} | } |
$(document).ready(function() { | $(document).ready(function() { |
$('#here').click(function(event) { $('#geolocate').val(geolocate()); return false;}); | $('#here').click(function(event) { $('#geolocate').val(geolocate()); return false;}); |
$('#here').show(); | $('#here').show(); |
}); | }); |
"; | "; |
if (!isset($_SESSION['lat']) || $_SESSION['lat'] == "") echo "geolocate();"; | if (!isset($_SESSION['lat']) || $_SESSION['lat'] == "") |
echo "</script> "; | echo "geolocate();"; |
} | echo "</script> "; |
if (isAnalyticsOn()) echo ' | } |
if (isAnalyticsOn()) | |
echo ' | |
<script type="text/javascript">' . " | <script type="text/javascript">' . " |
var _gaq = _gaq || []; | var _gaq = _gaq || []; |
_gaq.push(['_setAccount', 'UA-22173039-1']); | _gaq.push(['_setAccount', 'UA-22173039-1']); |
_gaq.push(['_trackPageview']); | _gaq.push(['_trackPageview']); |
_gaq.push(['_trackPageLoadTime']); | |
</script>"; | </script>"; |
echo '</head> | echo '</head> |
<body> | <body> |
<div id="skip"> | <div id="skip"> |
<a href="#maincontent">Skip to content</a> | <a href="#maincontent">Skip to content</a> |
</div> | </div> |
'; | '; |
if ($opendiv) { | if ($opendiv) { |
echo '<div data-role="page"> | echo '<div data-role="page"> |
<div data-role="header" data-position="inline"> | <div data-role="header" data-position="inline"> |
<a href="' . $_SERVER["HTTP_REFERER"] . '" data-icon="arrow-l" data-rel="back" class="ui-btn-left">Back</a> | <a href="' . (isset($_SERVER["HTTP_REFERER"]) ? $_SERVER["HTTP_REFERER"] : "javascript:history.go(-1)") . '" data-icon="arrow-l" data-rel="back" class="ui-btn-left">Back</a> |
<h1>' . $pageTitle . '</h1> | <h1>' . $pageTitle . '</h1> |
<a href="/index.php" data-icon="home" class="ui-btn-right">Home</a> | <a href="' . $basePath . '/index.php" data-icon="home" class="ui-btn-right">Home</a> |
</div><!-- /header --> | </div><!-- /header --> |
<a name="maincontent" id="maincontent"></a> | <a name="maincontent" id="maincontent"></a> |
<div data-role="content"> '; | <div data-role="content"> '; |
} | if ($GTFSREnabled) { |
} | $overrides = getServiceOverride(); |
function include_footer() | if (isset($overrides['service_id'])) { |
{ | if ($overrides['service_id'] == "noservice") { |
echo '<div id="footer"><a href="about.php">About/Contact Us</a> <a href="feedback.php">Feedback/Bug Report</a></a>'; | echo '<div class="servicewarning">Buses are <strong>not running today</strong> due to industrial action/public holiday. See <a |
echo '</div>'; | href="http://www.action.act.gov.au">http://www.action.act.gov.au</a> for details.</div>'; |
if (isAnalyticsOn()) { | } else { |
echo "<script> (function() { | echo '<div class="servicewarning">Buses are running on an altered timetable today due to industrial action/public holiday. See <a href="http://www.action.act.gov.au">http://www.action.act.gov.au</a> for details.</div>'; |
} | |
} | |
$serviceAlerts = Array(); | |
$globalAlerts = getServiceAlertsAsArray("agency", "0"); | |
if ($globalAlerts != null) { | |
// echo "getting alerts due to network wide"; | |
$serviceAlerts = array_merge($serviceAlerts, $globalAlerts); | |
} | |
if (isset($stopid)) { | |
$stopAlerts = getServiceAlertsAsArray("stop", $stopid); | |
if ($stopAlerts != null) { | |
// echo "getting alerts due to stop $stopid"; | |
$serviceAlerts = array_merge($serviceAlerts, $stopAlerts); | |
} | |
} | |
if (isset($routeid)) { | |
$routeAlerts = getServiceAlertsAsArray("route", $routeid); | |
if ($routeAlerts != null) { | |
// echo "getting alerts due to route $routeid"; | |
$serviceAlerts = array_merge($serviceAlerts, $routeAlerts); | |
} | |
} | |
if (isset($serviceAlerts['entity']) && sizeof($serviceAlerts['entity']) > 0) { | |
foreach ($serviceAlerts['entity'] as $entity) { | |
echo "<div class='servicewarning'><b>{$entity['alert']['header_text']['translation'][0]['text']}</b> <small>" | |
. date("F jS Y, g:i a", $entity['alert']['active_period'][0]['start']) . " to " | |
. date("F jS Y, g:i a", $entity['alert']['active_period'][0]['end']) . "</small> | |
<br>Warning: {$entity['alert']['description_text']['translation'][0]['text']} | |
<br><a href='{$entity['alert']['url']['translation'][0]['text']}'>Source</a> </div>"; | |
} | |
} | |
} | |
} | |
} | |
function include_footer() { | |
global $basePath; | |
echo '<div id="footer"><a href="' . $basePath . 'about.php">About/Contact Us</a> <a href="' . $basePath . 'feedback.php">Feedback/Bug Report</a> <a href="' . $basePath . 'privacy.php">Privacy Policy</a>'; | |
echo '</div>'; | |
if (isAnalyticsOn()) { | |
echo "<script> (function() { | |
var ga = document.createElement('script'); ga.type = | var ga = document.createElement('script'); ga.type = |
'text/javascript'; ga.async = true; | 'text/javascript'; ga.async = true; |
ga.src = ('https:' == document.location.protocol ? | ga.src = ('https:' == document.location.protocol ? |
'https://ssl' : 'http://www') + '.google-analytics.com/ga.js'; | 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js'; |
var s = document.getElementsByTagName('script')[0]; | var s = document.getElementsByTagName('script')[0]; |
s.parentNode.insertBefore(ga, s); | s.parentNode.insertBefore(ga, s); |
})();</script>"; | })();</script>"; |
$googleAnalyticsImageUrl = googleAnalyticsGetImageUrl(); | $googleAnalyticsImageUrl = googleAnalyticsGetImageUrl(); |
echo '<noscript><img src="' . $googleAnalyticsImageUrl . '" /></noscript>'; | echo '<noscript><img src="' . $googleAnalyticsImageUrl . '" alt=""/></noscript>'; |
} | } |
} | echo "\n</div></div></body></html>"; |
function timePlaceSettings($geolocate = false) | } |
{ | |
global $service_periods; | function timeSettings() { |
$geoerror = false; | global $service_periods; |
if ($geolocate == true) { | echo '<div id="settings" data-role="collapsible" data-collapsed="true"> |
$geoerror = !isset($_SESSION['lat']) || !isset($_SESSION['lat']) || $_SESSION['lat'] == "" || $_SESSION['lon'] == ""; | <h3>Change Time (' . (isset($_REQUEST['time']) ? $_REQUEST['time'] : "Current Time,") . ' ' . ucwords(service_period()) . ')...</h3> |
} | <form action="' . basename($_SERVER['PHP_SELF']) . '" method="GET"> |
if ($geoerror) { | <input type="hidden" name="suburb" id="suburb" value="' . (isset($_REQUEST['suburb']) ? $_REQUEST['suburb'] : "") . '"/> |
echo '<div id="error">Sorry, but your location could not currently be detected. | |
<input type="hidden" name="stopid" id="stopid" value="' . (isset($_REQUEST['stopid']) ? $_REQUEST['stopid'] : "") . '"/> | |
<input type="hidden" name="stopcode" id="stopcode" value="' . (isset($_REQUEST['stopcode']) ? $_REQUEST['stopcode'] : "") . '"/> | |
<div class="ui-body"> | |
<div data-role="fieldcontain"> | |
<label for="time"> Time: </label> | |
<input type="time" name="time" id="time" value="' . (isset($_REQUEST['time']) ? $_REQUEST['time'] : date("H:i")) . '"/> | |
<a href="#" name="currentTime" id="currentTime" onClick="var d = new Date();' . "$('#time').val(d.getHours() +':'+ (d.getMinutes().toString().length == 1 ? '0'+ d.getMinutes(): d.getMinutes()));" . '">Current Time?</a> | |
</div> | |
<div data-role="fieldcontain"> | |
<label for="service_period"> Service Period: </label> | |
<select name="service_period" id="service_period">'; | |
foreach ($service_periods as $service_period) { | |
echo "<option value=\"$service_period\"" . (service_period() === $service_period ? " SELECTED" : "") . '>' . ucwords($service_period) . '</option>'; | |
} | |
echo '</select> | |
<a href="#" style="display:none" name="currentPeriod" id="currentPeriod">Current Period?</a> | |
</div> | |
<input type="submit" value="Update"/> | |
</div></form> | |
</div>'; | |
} | |
function placeSettings() { | |
$geoerror = false; | |
$geoerror = !isset($_SESSION['lat']) || !isset($_SESSION['lat']) || $_SESSION['lat'] == "" || $_SESSION['lon'] == ""; | |
echo '<div id="error">'; | |
if ($geoerror) { | |
echo 'Sorry, but your location could not currently be detected. | |
Please allow location permission, wait for your location to be detected, | Please allow location permission, wait for your location to be detected, |
or enter an address/co-ordinates in the box below.</div>'; | or enter an address/co-ordinates in the box below.'; |
} | } |
echo '<div data-role="collapsible" data-collapsed="' . !$geoerror . '"> | echo '</div>'; |
<h3>Change Time/Place (' . (isset($_SESSION['time']) ? $_SESSION['time'] : "Current Time,") . ' ' . ucwords(service_period()) . ')...</h3> | echo '<div id="settings" data-role="collapsible" data-collapsed="' . !$geoerror . '"> |
<h3>Change Location...</h3> | |
<form action="' . basename($_SERVER['PHP_SELF']) . "?" . $_SERVER['QUERY_STRING'] . '" method="post"> | <form action="' . basename($_SERVER['PHP_SELF']) . "?" . $_SERVER['QUERY_STRING'] . '" method="post"> |
<div class="ui-body"> | <div class="ui-body"> |
<div data-role="fieldcontain"> | <div data-role="fieldcontain"> |
<label for="geolocate"> Current Location: </label> | <label for="geolocate"> Current Location: </label> |
<input type="text" id="geolocate" name="geolocate" value="' . (isset($_SESSION['lat']) && isset($_SESSION['lon']) ? $_SESSION['lat'] . "," . $_SESSION['lon'] : "Enter co-ordinates or address here") . '"/> <a href="#" style="display:none" name="here" id="here">Here?</a> | <input type="text" id="geolocate" name="geolocate" value="' . (isset($_SESSION['lat']) && isset($_SESSION['lon']) ? $_SESSION['lat'] . "," . $_SESSION['lon'] : "Enter co-ordinates or address here") . '"/> <a href="#" style="display:none" name="here" id="here">Here?</a> |
</div> | </div> |
<div data-role="fieldcontain"> | |
<label for="time"> Time: </label> | |
<input type="time" name="time" id="time" value="' . (isset($_SESSION['time']) ? $_SESSION['time'] : date("H:i")) . '"/> | |
<a href="#" name="currentTime" id="currentTime" onClick="var d = new Date();' . "$('#time').val(d.getHours() +':'+ (d.getMinutes().toString().length == 1 ? '0'+ d.getMinutes(): d.getMinutes()));" . '">Current Time?</a> | |
</div> | |
<div data-role="fieldcontain"> | |
<label for="service_period"> Service Period: </label> | |
<select name="service_period" id="service_period">'; | |
foreach ($service_periods as $service_period) { | |
echo "<option value=\"$service_period\"" . (service_period() === $service_period ? " SELECTED" : "") . '>' . ucwords($service_period) . '</option>'; | |
} | |
echo '</select> | |
<a href="#" style="display:none" name="currentPeriod" id="currentPeriod"/>Current Period?</a> | |
</div> | |
<input type="submit" value="Update"/> | <input type="submit" value="Update"/> |
</form> | </div></form> |
</div></div>'; | </div>'; |
} | } |
function trackEvent($category, $action, $label = "", $value = - 1) | |
{ | function trackEvent($category, $action, $label = "", $value = - 1) { |
if (isAnalyticsOn()) { | if (isAnalyticsOn()) { |
echo "\n<script> _gaq.push(['_trackEvent', '$category', '$action'" . ($label != "" ? ", '$label'" : "") . ($value != - 1 ? ", $value" : "") . "]);</script>"; | echo "\n<script> _gaq.push(['_trackEvent', '$category', '$action'" . ($label != "" ? ", '$label'" : "") . ($value != - 1 ? ", $value" : "") . "]);</script>"; |
} | } |
} | } |
?> | |
//stop list collapsing | |
function stopCompare($stopName) { | |
return substr(trim(preg_replace("/\(Platform.*/", "", $stopName)), 0, 9); | |
} | |
function stopGroupTitle($stopName, $stopdesc) { | |
if (preg_match("/Dr |Cct |Cir |Av |St |Cr |Parade |Way |Bank /", $stopName)) { | |
$descParts = explode("<br>", $stopdesc); | |
return trim(str_replace("Street: ", "", $descParts[0])); | |
} else { | |
return trim(preg_replace("/\(Platform.*/", "", $stopName)); | |
} | |
} | |
function viaPointNames($tripid, $stop_sequence = "") { | |
$viaPointNames = Array(); | |
foreach (viaPoints($tripid, $stop_sequence) as $point) { | |
if (strstr($point['stop_name'], "Station") | |
|| strstr($point['stop_name'], "Shops") | |
|| strstr($point['stop_name'], "CIT") | |
|| strstr($point['stop_name'], "School") | |
|| strstr($point['stop_name'], "University") | |
) { | |
$viaPointNames[] = $point['stop_name']; | |
} | |
} | |
if (sizeof($viaPointNames) > 0) { | |
return r_implode(", ", $viaPointNames); | |
} else { | |
return ""; | |
} | |
} | |
<?php | <?php |
/* | |
* Copyright 2010,2011 Alexander Sadleir | |
Licensed under the Apache License, Version 2.0 (the 'License'); | |
you may not use this file except in compliance with the License. | |
You may obtain a copy of the License at | |
http://www.apache.org/licenses/LICENSE-2.0 | |
Unless required by applicable law or agreed to in writing, software | |
distributed under the License is distributed on an 'AS IS' BASIS, | |
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |
See the License for the specific language governing permissions and | |
limitations under the License. | |
*/ | |
$service_periods = Array( | $service_periods = Array( |
'sunday', | 'sunday', |
'saturday', | 'saturday', |
'weekday' | 'weekday' |
); | ); |
function service_period() | |
{ | function service_period($date = '') { |
if (isset($_SESSION['service_period'])) return $_SESSION['service_period']; | |
switch (date('w')) { | if (isset($_REQUEST['service_period'])) { |
case 0: | return $_REQUEST['service_period']; |
return 'sunday'; | } |
case 6: | |
return 'saturday'; | $override = getServiceOverride($date); |
default: | if (isset($override['service_id'])) { |
return 'weekday'; | return strtolower($override['service_id']); |
} | } |
} | $date = ($date != '' ? $date : time()); |
$dow = date('w', $date); | |
?> | |
switch ($dow) { | |
case 0: | |
return 'sunday'; | |
case 6: | |
return 'saturday'; | |
default: | |
return 'weekday'; | |
} | |
} | |
function service_ids($service_period, $date = '') { | |
switch ($service_period) { | |
case 'sunday': | |
return Array('Sunday', 'Sunday'); | |
case 'saturday': | |
return Array('Saturday', 'Saturday'); | |
default: | |
$date = ($date != '' ? $date : time()); | |
// school holidays | |
$ymd = date('Ymd', $date); | |
$dow = date('w', $date); | |
if (intval($ymd) < '20120427' && $dow != 0 && $dow != 6) { | |
return Array('Weekday-SchoolVacation', 'Weekday-SchoolVacation'); | |