Version Description
Download this release
Release Info
Developer | smackcoders |
Plugin | Ultimate CSV Importer |
Version | 3.8.4 |
Comparing to | |
See all releases |
Code changes from version 3.8.3 to 3.8.4
- README.md +641 -0
- Readme.txt +208 -343
- config/schema.php +34 -34
- config/settings.php +10 -21
- css/bootstrap.css +8 -8
- css/bootstrap.min.css +6353 -1
- css/custom-style.css +76 -25
- css/font-awesome.css +885 -484
- css/jquery-ui.css +1684 -400
- css/jquery.fileupload.css +17 -16
- css/main.css +538 -468
- css/morris.css +2 -0
- css/style.css +491 -378
- images/Importicon_24.png +0 -0
- images/csv_importer_dashboard_v3.5.png +0 -0
- images/facebook.png +0 -0
- images/googleplus.png +0 -0
- images/icon.png +0 -0
- images/linkedin.png +0 -0
- images/twitter.png +0 -0
- includes/Importer.php +328 -240
- includes/WPImporter_includes_helper.php +879 -796
- index.php +7 -2
- js/bootstrap-collapse.js +92 -92
- js/bootstrap.min.js +602 -5
- js/buttons.js +79 -78
- js/dashchart-widget.js +69 -4
- js/dashchart.js +146 -3
- js/dropdown.js +103 -99
- js/exporting.js +236 -15
- js/highcharts-3d.js +559 -35
- js/highcharts.js +2817 -299
README.md
ADDED
@@ -0,0 +1,641 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
## Import CSV with Ultimate CSV Importer ##
|
2 |
+
**Contributors:** smackcoders
|
3 |
+
|
4 |
+
**Donate link:** http://www.smackcoders.com/donate.html
|
5 |
+
|
6 |
+
**Tags:** admin, administration, author, automatic, blog, categories, category, cms, contact, content, custom, custom post, dashboard, database, e-commerce, ecommerce, edit, event, events, feed, Formatting, free, gallery, image, images, import, integration, language, link, links, list, marketing, media, menu, meta, mobile, multisite, navigation, News, page, pages, performance, photo, photos, picture, pictures, plugin, plugins, Post, posts, profile, registration, rss, seo, Share, sharing, shop, shortcode, shortcodes, statistics, stats, store, tag, tags, Taxonomy, template, text, thumbnail, thumbnails, title, upload, url, user, users, video, woocommerce, wordpress, wpmu, xml, youtube.
|
7 |
+
|
8 |
+
**Requires at least:** 4.2
|
9 |
+
|
10 |
+
**Tested up to:** 4.3.1
|
11 |
+
|
12 |
+
**Stable tag:** 3.8.3
|
13 |
+
|
14 |
+
**Version:** 3.8.3
|
15 |
+
|
16 |
+
**Author:** smackcoders
|
17 |
+
|
18 |
+
**Author URI:** http://profiles.wordpress.org/smackcoders/
|
19 |
+
|
20 |
+
**License:** GPLv2 or later
|
21 |
+
|
22 |
+
Import CSV with CSV Importer made simple to import & export posts, pages, custom posts and custom fields in few simple clicks
|
23 |
+
|
24 |
+
#### Description ####
|
25 |
+
|
26 |
+
Import CSV data to WordPress is made very easy even for novice users as in few clicks and 3 simple steps with CSV Importer plugin.
|
27 |
+
|
28 |
+
Now csv importer supports multi language and almost every WordPress modules and plugin fields as follows. Import data feed periodically from csv file as
|
29 |
+
|
30 |
+
#### Supported Core Modules and Attributes ####
|
31 |
+
* Post
|
32 |
+
* Page
|
33 |
+
* Featured image support
|
34 |
+
* Post inline image handling
|
35 |
+
* Standard WP Custom Post types
|
36 |
+
* WordPress themes custom posts
|
37 |
+
* Custom post type UI plugin Post types
|
38 |
+
* Users with roles
|
39 |
+
* Comments
|
40 |
+
* Custom Fields
|
41 |
+
* Author
|
42 |
+
* Tags import and multi tag for each post import
|
43 |
+
* Categories import and multi category for each post
|
44 |
+
* Eshop
|
45 |
+
* All-in-one SEO
|
46 |
+
|
47 |
+
#### Highlights of 3.8 ####
|
48 |
+
* Multilanguage support (fr_FR,es_ES,nl_NL)
|
49 |
+
* Inline image handling shortcode with image attributes Example:[WPIMPINLINE:greensroad.jpg|width='150'|height='80'|alt='post_title_redtree']
|
50 |
+
* Fixed user reported Warnings and Bugs
|
51 |
+
* Any delimiter support for csv export
|
52 |
+
|
53 |
+
Note: Now you can import no. of images in in-line post content as image shortcodes using advanced media handling option as zip files.
|
54 |
+
|
55 |
+
#### CSV Importer ####
|
56 |
+
|
57 |
+
WP Ultimate CSV Importer Plugin proven much effective advanced CSV Importer With Ultimate User Friendly Features. It is much easy now even for newbies to import csv file exported from any tool, app or software. Import as any WordPress post type and associated fields by simple mapping feature. Now import any CSV file as thousands of post, page and custom post types. This is admin side free plugin helps you in bulk edit, create and import posts type for your blog or site.
|
58 |
+
|
59 |
+
It is more easy to import csv database maintained in Excel xls or spread sheets into valuable content for your web site without missing any. It is possible now to schedule a import csv periodically for content update, maintenance, prices, offers, coupons and inventory etc.
|
60 |
+
|
61 |
+
Much improved User interface with most flexible jquery plugin features and bootstrap UI design makes csv import more simple, easy, fast and even more flexible for better user experience. With improved Multi site, buddy press compatibility (except user import module) works well for most of the best WordPress themes available online. Now manage multi site & buddy press, Amazon data import, affiliates blog, product inventory, ecommerce store, multi author blog, automatic news import, photo blog etc periodically with simple click import.
|
62 |
+
|
63 |
+
#### Helpful Links ####
|
64 |
+
|
65 |
+
[Get More Details Here>>](https://www.smackcoders.com/wp-ultimate-csv-importer-pro.html?utm_source=WpOrg&utm_medium=Readme&utm_campaign=ListingTraffic)
|
66 |
+
|
67 |
+
[Test Drive Our Live Demo](http://demo.smackcoders.com/demowpthree/wp-admin/admin.php?page=wp-ultimate-csv-importer-pro/index.php&__module=dashboard?utm_source=WpOrg&utm_medium=Readme&utm_campaign=ListingTraffic)
|
68 |
+
|
69 |
+
[Get Started Sample CSV Files](https://www.smackcoders.com/blog/wordpress-ultimate-csv-importer-csv-sample-files-and-updates.html?utm_source=WpOrg&utm_medium=Readme&utm_campaign=ListingTraffic)
|
70 |
+
|
71 |
+
[Documentation and Tutorial for CSV Importer ](https://www.smackcoders.com/documentation/ultimate-csv-importer-pro?utm_source=WpOrg&utm_medium=Readme&utm_campaign=ListingTraffic)
|
72 |
+
|
73 |
+
|
74 |
+
#### Video Walkthrough ####
|
75 |
+
[![Demo CountPages alpha](https://i.ytimg.com/vi/Guv5zR7fgW0/sddefault.jpg)](https://www.youtube.com/watch?v=Guv5zR7fgW0&list=PL2k3Ck1bFtbQqFhOK7g08kxENI4qQkmC)
|
76 |
+
|
77 |
+
#### Highlights ####
|
78 |
+
* import csv from any source as WordPress posts
|
79 |
+
* New Terminate & Continue feature is added.
|
80 |
+
* Complete export feature with improved filters
|
81 |
+
* Import external/internal images in line to any posts
|
82 |
+
* Upload images related to each csv
|
83 |
+
* Auto delimiter
|
84 |
+
* Auto UTF-8 handling
|
85 |
+
* All-in-SEO import support.
|
86 |
+
* Drag drop import
|
87 |
+
* Define any type of post
|
88 |
+
* Control post status (Publish, Private, Pending, Draft, Sticky and Protected)
|
89 |
+
* Simple yet Powerful mapping feature
|
90 |
+
* Convert any csv import as perfect posts and fields
|
91 |
+
* Scheduled Publishing
|
92 |
+
* Duplicate Title and content handling
|
93 |
+
* Multi Lingual import (CSV format must be UTF-8 without BOM)
|
94 |
+
* Multi-site also supported now
|
95 |
+
* Compatible to WordPress themes
|
96 |
+
* Better alternative for xml
|
97 |
+
* Post Format option added
|
98 |
+
* Page template attribute feature
|
99 |
+
* EShop Products import (included from V3.6.3)
|
100 |
+
|
101 |
+
#### Power Import Features to Control your csv import ####
|
102 |
+
* Post title, content and even excerpt
|
103 |
+
* Text, WYSIWYG/HTML, in line CSS in post content
|
104 |
+
* Images, Youtube, Videos in post content
|
105 |
+
* Featured image by Url
|
106 |
+
* Multi authors
|
107 |
+
* Multiple tags and categories
|
108 |
+
* Non existing tags and categories are created automatically
|
109 |
+
* Any Short Codes in post content
|
110 |
+
* Assign sidebar widget, slider, slide show as short codes
|
111 |
+
* Manual slug feature for SEO friendly urls
|
112 |
+
* Different post status for each post in CSV file.
|
113 |
+
* Custom fields support for WP standard
|
114 |
+
* Map custom fields by adding new on the fly.
|
115 |
+
|
116 |
+
#### Imp. Notes ####
|
117 |
+
* All CSV files should be should be strictly UTF-8 CSV format. Now this can be handled by plugin.
|
118 |
+
* All WordPress supported languages can imported with csv format as UTF-8 without BOM (See FAQ for instructions).
|
119 |
+
* User import option is disabled for multi site mode.
|
120 |
+
* To Schedule posts for publishing provide future date and time in date column in CSV File.
|
121 |
+
|
122 |
+
#### Featured Image Support ####
|
123 |
+
Your WordPress theme should support featured image. If not, please add the following code to where you need to display. E.g)wp-contents/themes/header.php
|
124 |
+
|
125 |
+
`<?php add_theme_support( 'post-thumbnails' ); ?>`
|
126 |
+
|
127 |
+
#### Pro Features ####
|
128 |
+
* Advanced Features
|
129 |
+
* Multi language Support
|
130 |
+
* Woocommerce Support with woocommerce_products, woocommerce_variations, woocommerce_refunds, woocommerce_orders, woocommerce_coupons
|
131 |
+
* Market press
|
132 |
+
* ACF, TYPES, PODS, CCTM Custom Fields
|
133 |
+
* Advanced Export with Delimiter and Filters
|
134 |
+
* Advanced Media Handling
|
135 |
+
* Schedule Imports
|
136 |
+
* Dashboard, CSV Manager and Custom Mapping Templates
|
137 |
+
* DB Optimizer, System status etc.
|
138 |
+
|
139 |
+
Compare Free Vs Pro [Features](https://www.wpultimatecsvimporter.com/wp-ultimate-csv-importer-plugin?utm_source=WpOrg&utm_medium=Readme&utm_campaign=ListingTraffic)>>
|
140 |
+
Learn More from [User Manual](https://www.wpultimatecsvimporter.com/documentation?utm_source=WpOrg&utm_medium=Readme&utm_campaign=ListingTraffic)>>
|
141 |
+
|
142 |
+
|
143 |
+
#### Common Issues ####
|
144 |
+
|
145 |
+
How to solve auto_prepend_file and auto_append_file error?
|
146 |
+
|
147 |
+
Check your phpinfo.php. Ensure that auto_prepend_file and auto_append_file options are disabled. If not you can disable it in php.ini settings file your self. You can also do it by a .htaccess file
|
148 |
+
|
149 |
+
Create an .htaccess file in root and set the following values.
|
150 |
+
php_value auto_prepend_file none
|
151 |
+
php_value auto_append_file none
|
152 |
+
|
153 |
+
This will solve your issue or get support from hosting if you dint have sufficient permission.
|
154 |
+
|
155 |
+
Also you can follow the instructions as given here
|
156 |
+
|
157 |
+
* [http://codex.wordpress.org/Function_Reference/the_post_thumbnail](http://codex.wordpress.org/Function_Reference/the_post_thumbnail)
|
158 |
+
* [http://codex.wordpress.org/Post_Thumbnails](http://codex.wordpress.org/Post_Thumbnails)
|
159 |
+
* [http://wordpress.org/support/topic/featured-image-not-showing-7?replies=5](http://wordpress.org/support/topic/featured-image-not-showing-7?replies=5)
|
160 |
+
|
161 |
+
|
162 |
+
#### Extended Pro Power Features in WP Ultimate CSV Importer ####
|
163 |
+
* Types Plugin support
|
164 |
+
* Woocommerce CSV importer with product variation
|
165 |
+
* Marketpress Lite Importer
|
166 |
+
* WP Members Importer
|
167 |
+
* WP Customer Reviews Importer
|
168 |
+
* Auto Schedule all your Imports
|
169 |
+
* Save mapping as Templates for reuse
|
170 |
+
* Auto Mapping Feature
|
171 |
+
* Strict UTF-8 auto conversion
|
172 |
+
* All In One SEO Fields Import
|
173 |
+
* WordPress SEO by Yoast Fields Import
|
174 |
+
* Custom Post Type UI plugin import
|
175 |
+
* Advanced Custom Fields Import
|
176 |
+
* CCTM Posts and Fields Import
|
177 |
+
* Woocommerce CSV Importer,
|
178 |
+
* WP ecommerce Products CSV Importer with WP e-Commerce Custom Fields
|
179 |
+
* Categories & tags Import with Category icons plugin support
|
180 |
+
* Custom Taxonomy import
|
181 |
+
|
182 |
+
#### And we thank @respectyoda, @alantygel and @James Golovich for their wonderful support to us. ####
|
183 |
+
|
184 |
+
#### Installation ####
|
185 |
+
|
186 |
+
* [Step By Step Installation with Snaps](https://www.wpultimatecsvimporter.com/documentation/all-import/user-guide/simple-step-by-step-user-guide/?utm_source=WpOrg&utm_medium=Readme&utm_campaign=ListingTraffic)
|
187 |
+
|
188 |
+
|
189 |
+
#### Screenshots ####
|
190 |
+
|
191 |
+
1. New Interactive Dashboard with Chart and Graph
|
192 |
+
2. Advanced CSV Importer With Ultimate User Friendly Features with drag and drop etc.
|
193 |
+
3. User friendly easy mapping for any csv file data to WordPress field attributes with sampling.
|
194 |
+
4. Advanced duplicate post name and content check with server request control for high performance factor.
|
195 |
+
5. Detailed real time log to know pinpoint status.
|
196 |
+
6. Module based environment for easy and reduced interface to enable most required modules and when ever needed.
|
197 |
+
7. Inbuilt support form for easy feedback, support, feature request with all useful links for easy and better csv import.
|
198 |
+
8. New export module for posts, page, eshop, users, comments and all custom posts type plugins.
|
199 |
+
|
200 |
+
|
201 |
+
#### Frequently Asked Questions ####
|
202 |
+
|
203 |
+
How to solve auto_prepend_file and auto_append_file error?
|
204 |
+
|
205 |
+
Check your phpinfo.php. Ensure that auto_prepend_file and auto_append_file options are disabled. If not you can disable it in php.ini settings file your self. You can also do it by a .htaccess file
|
206 |
+
|
207 |
+
Create an .htaccess file in root and set the following values.
|
208 |
+
php_value auto_prepend_file none
|
209 |
+
php_value auto_append_file none
|
210 |
+
|
211 |
+
This will solve your issue or get support from hosting if you dint have sufficient permission.
|
212 |
+
|
213 |
+
[Click Here for More Details](https://www.wpultimatecsvimporter.com/documentation/all-import/user-guide/simple-step-by-step-user-guide/?utm_source=WpOrg&utm_medium=Readme&utm_campaign=ListingTraffic)
|
214 |
+
|
215 |
+
#### Changelog ####
|
216 |
+
|
217 |
+
**3.8.3**
|
218 |
+
* Fixed : Text domain is added for language translation system.
|
219 |
+
* Fixed : Bugs fixed for detecting duplicate post content and title option.
|
220 |
+
|
221 |
+
**3.8.2**
|
222 |
+
* Fixed : Wordpress 4.3.1 compatibility added.
|
223 |
+
* Fixed : Dashboard entry issue fix.
|
224 |
+
* Fixed : Featured image filename with empty space import issue fix.
|
225 |
+
* Fixed : Duplicate featured images on import fixed.
|
226 |
+
* Fixed : Core custom Field mapping group added
|
227 |
+
|
228 |
+
**3.8.1**
|
229 |
+
* Fixed : WordPress 4.2.3 and 4.2.4 compatibility checked.
|
230 |
+
* Fixed : Fixed the unwanted warnings in all files.
|
231 |
+
* Fixed : XSS vulnerability.
|
232 |
+
* Fixed : Removed the ../../../../../../wp-load.php and used the wordpress ajax call.
|
233 |
+
* Fixed : Removed the wp-content that are directly used in some files.
|
234 |
+
* Added : Checked the ABSPATH in each file.
|
235 |
+
* Added : Comments are exported by specific date and author option.
|
236 |
+
|
237 |
+
**3.8**
|
238 |
+
* Multilanguage support (fr_FR,es_ES,nl_NL)
|
239 |
+
* Inline image handling shortcode with image attributes
|
240 |
+
* Warnings and bugs Fixes
|
241 |
+
* Any delimiter support for csv export
|
242 |
+
|
243 |
+
**3.7.4**
|
244 |
+
* Fixed : Allow Editor/Author to import.(Multisite also).
|
245 |
+
* Added : WordPress 4.2.2 compatibility.
|
246 |
+
|
247 |
+
**3.7.3**
|
248 |
+
* Fixed: Vulnerablility security issue fix.
|
249 |
+
|
250 |
+
**3.7.2**
|
251 |
+
* Added: WordPress 4.2 and 4.2.1 compatibility.
|
252 |
+
* Fixed: Blank page conflict issue
|
253 |
+
|
254 |
+
**3.7.1**
|
255 |
+
* Added: Security fix for curl.
|
256 |
+
* Added: Security fix for session status.
|
257 |
+
|
258 |
+
**3.7**
|
259 |
+
* Fixed: Featured image hotlink issue.
|
260 |
+
|
261 |
+
**3.6.78**
|
262 |
+
* Added: Hot security fix in readfile.php. ( Thanks - @James Golovich )
|
263 |
+
|
264 |
+
**3.6.77**
|
265 |
+
* Added: WordPress 4.1.1 compatibility checked.
|
266 |
+
* Improved: Inline image import feature. Added recursive method to assign the image.
|
267 |
+
* Fixed: Featured image naming issue. [Solved](https://wordpress.org/support/topic/problem-in-import-with-the-image-name)
|
268 |
+
* Fixed: Removed unwanted warnings.
|
269 |
+
|
270 |
+
**3.6.76**
|
271 |
+
* Improved: Post Format.
|
272 |
+
* Fixed: Export eshop data issue.
|
273 |
+
* Fixed: Import with image name issue.
|
274 |
+
* Fixed: Groups plugin conflict.
|
275 |
+
|
276 |
+
**3.6.75**
|
277 |
+
* Added: Terminate & Continue option in import section.
|
278 |
+
* Improved: Log section. Issue fixed in Web View & Admin View.
|
279 |
+
* Fixed: Security fix for export module.
|
280 |
+
|
281 |
+
**3.6.74**
|
282 |
+
* Added: Security fix.
|
283 |
+
|
284 |
+
**3.6.73**
|
285 |
+
* Added: WordPress 4.0 compatibility checked.
|
286 |
+
* Added: https format support for all WP instances.
|
287 |
+
* Added: Warning to guide user to create uploads directory with writeable permissions.
|
288 |
+
* Fixed: Image handling issues in featured image.
|
289 |
+
* Fixed: Multisite compatible issue.
|
290 |
+
* Removed: Post Content field mandatory option.
|
291 |
+
* Removed: All console warnings.
|
292 |
+
* Improved: Details added in security and performance tab under settings module.
|
293 |
+
|
294 |
+
**3.6.72**
|
295 |
+
* Added: Debug mode enable/disable options.
|
296 |
+
* Modified: Menu order changes.
|
297 |
+
|
298 |
+
**3.6.71**
|
299 |
+
* Minor bug fixed
|
300 |
+
|
301 |
+
**3.6.7**
|
302 |
+
* Added: Export features for all missing modules.
|
303 |
+
* Fixed: All console warnings and reported logs.
|
304 |
+
|
305 |
+
**3.6.6**
|
306 |
+
* Dashboard chart issue fixed for multi site.
|
307 |
+
* UI improvements along with easy usability.
|
308 |
+
* Fixed Groups plugin conflicts
|
309 |
+
|
310 |
+
**3.6.5**
|
311 |
+
* Added in line image support with advance media handling
|
312 |
+
* PDO check added
|
313 |
+
|
314 |
+
**3.6.4**
|
315 |
+
* Added: Advanced export features with filter options.
|
316 |
+
* Improved: Advanced log section.
|
317 |
+
* Fixed reported jquery issues.
|
318 |
+
* WordPress 4.0 compatibility checked.
|
319 |
+
|
320 |
+
**3.6.3**
|
321 |
+
* Added: Eshop import support.
|
322 |
+
* Fixed reported conflicts with other plugins.
|
323 |
+
* WordPress 3.9.2 compatibility checked.
|
324 |
+
|
325 |
+
**3.6.2**
|
326 |
+
* Hot security fix added.
|
327 |
+
|
328 |
+
**3.6.1**
|
329 |
+
* Multi-site support issue fixed
|
330 |
+
* Duplicate import issue fixed
|
331 |
+
* Security issue fixed
|
332 |
+
|
333 |
+
**3.6**
|
334 |
+
* New interactive graphs and charts in plugin dashboard
|
335 |
+
* New Admin dashboard widgets
|
336 |
+
* Added Users and comments export feature
|
337 |
+
* Auto delimiter handling
|
338 |
+
* Auto mapping feature
|
339 |
+
* Now allow authors to access import features
|
340 |
+
|
341 |
+
**3.5.5**
|
342 |
+
* post_format attribute support added
|
343 |
+
* page_template attribute added
|
344 |
+
* update_post_meta added for duplicate meta issue (Thanks to @alantygel)
|
345 |
+
* Type error issue in jQuery fixed
|
346 |
+
|
347 |
+
**3.5.4**
|
348 |
+
* Added: All-in-SEO import support.
|
349 |
+
* WordPress 3.9.1 compatibility added.
|
350 |
+
|
351 |
+
**3.5.3**
|
352 |
+
* Added: Compatible up to WordPress 3.9.
|
353 |
+
* Added: Export feature added for posts, page, custom posts type plugins.
|
354 |
+
* Improved: Removed all warnings.
|
355 |
+
* Fixed reported bugs
|
356 |
+
|
357 |
+
**3.5.2**
|
358 |
+
* Import posts with author names as numerical apart from User ID
|
359 |
+
* Added menu_order attribute import
|
360 |
+
* Added Auto image rename option
|
361 |
+
* Option to cancel an partial import at middle
|
362 |
+
* Improved image handling even special characters in Url
|
363 |
+
* Import can handle image urls without any extensions
|
364 |
+
* User reported bugs fixed
|
365 |
+
|
366 |
+
**3.5.1**
|
367 |
+
* User reported issue fixes
|
368 |
+
* Activation and other plugin conflict issue solved like Jet pack
|
369 |
+
* Admin UI freezing issues - screen option, Help links issues fixed.
|
370 |
+
* WYSIWIG editor UI issue fixed.
|
371 |
+
|
372 |
+
**3.5.0**
|
373 |
+
* Combined major release version of 3.5 and 3.4
|
374 |
+
* Improved MVC structure.
|
375 |
+
* Improved User interface with drag and drop feature.
|
376 |
+
* Improved: WordPress 3.8.1 compatibility added.
|
377 |
+
* Module based system allows simplify UI
|
378 |
+
* Added: Detailed log feature added.
|
379 |
+
* Added: Support and Useful links added.
|
380 |
+
* Added: Support made easy now from plugin.
|
381 |
+
|
382 |
+
**3.3.1**
|
383 |
+
* Added: Multi site compatibility except User import.
|
384 |
+
* Added: Comments, Users modules mandatory fields validation added.
|
385 |
+
* Improved: Removed unwanted warnings.
|
386 |
+
|
387 |
+
**3.3.0**
|
388 |
+
* Added: WordPress 3.8 compatibility.
|
389 |
+
* Added: Bulk users with role import feature.
|
390 |
+
* Added: Comments import feature with relevant post ids.
|
391 |
+
|
392 |
+
**3.2.3**
|
393 |
+
* Added: WordPress 3.7.1 compatibility added.
|
394 |
+
* Added: Different media path support added.
|
395 |
+
* Added: Sub folder installations support added.
|
396 |
+
* Improved: Updated plugin directory path.
|
397 |
+
* Improved: Removed unwanted warnings.
|
398 |
+
* Improved: Performance check.
|
399 |
+
|
400 |
+
**3.2.2**
|
401 |
+
* Added: WordPress 3.6.1 compatibility added.
|
402 |
+
* Added: Mapping UI improved with on select dynamic update feature
|
403 |
+
* Added: Help content added
|
404 |
+
* Fixed: Post slug issue fixed and tested for 3.6 and 3.6.1
|
405 |
+
|
406 |
+
**3.2.1**
|
407 |
+
* Improved: Performance improvements on SQL and CSV parsing
|
408 |
+
* Fixed: Plugin deactivation issue fixed and updated the code.
|
409 |
+
* Fixed: Links in the cells makes problems with the "quote"
|
410 |
+
* Fixed: Loading content from more than one column
|
411 |
+
* Fixed: Custom Post type issues fixed
|
412 |
+
|
413 |
+
**3.2.0**
|
414 |
+
* Improved: User interface improvements
|
415 |
+
* Improved:WordPress 3.6 compatibility added, Much Improved UI.
|
416 |
+
* Fixed: Featured image issues fixed for WordPress-3.6.
|
417 |
+
|
418 |
+
**3.1.0**
|
419 |
+
* Improved: Much Improved Featured Image feature
|
420 |
+
* Fixed: Image url for featured image issues fixed
|
421 |
+
* Fixed: PHP 5.4 upgrade fix
|
422 |
+
|
423 |
+
**3.0.0**
|
424 |
+
* Added: Category in numericals are restricted and skipped to Uncategorized
|
425 |
+
* Added: Now password should be mentioned as {password}
|
426 |
+
* Added: Post authors can be User ID or name
|
427 |
+
* Improved: Much improved work flow
|
428 |
+
* Improved: Add custom field option improved.
|
429 |
+
* Improved: Date format handling improved
|
430 |
+
* Improved: Any Date format is supported now
|
431 |
+
* Improved: Future scheduling and status improved
|
432 |
+
* Improved: Can apply post status for individual post via csv itself
|
433 |
+
* Improved: Featured image handling improved and fixed. More improvement are scheduled.
|
434 |
+
* Improved: Duplicate check options improved for both title and content option.
|
435 |
+
* Improved: Post author issue fixed and improved
|
436 |
+
* Improved: Wrong user id or name are automatically assigned under admin
|
437 |
+
* Improved: Multi category and tags improved
|
438 |
+
* Fixed: Custom Field mapping and import fixed
|
439 |
+
* Fixed: Overall Status option improved and issue fixed
|
440 |
+
* Fixed: Password field fixed for Protected
|
441 |
+
* Fixed: Status as in CSV option improved and fixed
|
442 |
+
|
443 |
+
**2.7.0**
|
444 |
+
* Added: Added more post status options
|
445 |
+
* Added: Publish, Sticky, Private, Draft and Pending Status for whole import
|
446 |
+
* Added: Protected status with a common password option added
|
447 |
+
* Added: "Status as in CSV" to assign status for individual post through CSV as ID or Field Tag
|
448 |
+
* Added: User ID and User Name support for Post author feature added
|
449 |
+
* Added: In case of missing or false IDs post assigned to admin as draft
|
450 |
+
* Added: Add Custom Field Text box auto-filled with CSV header tag.
|
451 |
+
* Added: Duplicate detection for post content and post title added as options.
|
452 |
+
* Added: User can choose either one or both to avoid duplicate issues.
|
453 |
+
* Improved: 6 Standard date format added as drop down to choose.
|
454 |
+
* Improved: Renamed post_name as post_slug to avoid confusion
|
455 |
+
* Improved: Mapping Fields
|
456 |
+
* Improved: Field tags are formatted to support auto mapping option (next milestone)
|
457 |
+
* Improved: Listed custom fields with prefix as CF: Name for easy identification.
|
458 |
+
* Fixed: Date format conflict at import fixed.
|
459 |
+
|
460 |
+
**2.6.0**
|
461 |
+
* Fixed: Major Bug fixed
|
462 |
+
* Fixed: Added UTF-8 support.
|
463 |
+
* Fixed: Fixed Html tag conflicts.
|
464 |
+
|
465 |
+
**2.5.0**
|
466 |
+
* Major issues fixed and updated to WordPress-3.5.1 compatibility.
|
467 |
+
|
468 |
+
**2.0.1**
|
469 |
+
* Update to WordPress-3.5 compatibility.
|
470 |
+
|
471 |
+
**2.0.0**
|
472 |
+
* WPDEBUG errors fixed. CSV import folder changed to WP native uploads folder.
|
473 |
+
|
474 |
+
**1.1.1**
|
475 |
+
* Renamed the mapping field attachment as featured_image and category as post_category.
|
476 |
+
|
477 |
+
**1.1.0**
|
478 |
+
* Added featured image import feature along with post/page/custom post.
|
479 |
+
|
480 |
+
**1.0.2**
|
481 |
+
* Bug fixed to recognize the trimmed trailing space in the CSV file
|
482 |
+
* Added validation for the duplicate field mapping.
|
483 |
+
|
484 |
+
**1.0.1**
|
485 |
+
* Added features to import multiple tags and categories with different delimiters.
|
486 |
+
|
487 |
+
**1.0.0**
|
488 |
+
* Initial release version. Tested and found works well without any issues.
|
489 |
+
|
490 |
+
|
491 |
+
|
492 |
+
#### Upgrade Notice ####
|
493 |
+
|
494 |
+
**3.8.3**
|
495 |
+
* Upgrade now for improvements in multi language translation.
|
496 |
+
|
497 |
+
**3.8.2**
|
498 |
+
* Upgrade now for more improvements.
|
499 |
+
|
500 |
+
**3.8.1**
|
501 |
+
* Upgrade now for ABSPATH used in all files and also fixed all the warnings,bugs.
|
502 |
+
|
503 |
+
**3.8**
|
504 |
+
* Upgrade now for Multi language support and bug fixes
|
505 |
+
|
506 |
+
**3.7.4**
|
507 |
+
* Upgrade now for allow author/editor to import fix.
|
508 |
+
|
509 |
+
**3.7.3**
|
510 |
+
* Upgrade now for Vulnerability fix.
|
511 |
+
|
512 |
+
**3.7.2**
|
513 |
+
* Important Upgrade for wordpress 4.2 and above
|
514 |
+
|
515 |
+
**3.7.1**
|
516 |
+
* Upgrade now for security fix.
|
517 |
+
|
518 |
+
**3.7**
|
519 |
+
* Upgrade now for minor bug fixes.
|
520 |
+
|
521 |
+
**3.6.78**
|
522 |
+
* Upgrade now for security fix.
|
523 |
+
|
524 |
+
**3.6.77**
|
525 |
+
* Upgrade now for WordPress 4.1.1 compatibility and minor bug fixes.
|
526 |
+
|
527 |
+
**3.6.76**
|
528 |
+
* Upgrade now for more bug fixes.
|
529 |
+
|
530 |
+
**3.6.75**
|
531 |
+
* Upgrade now for improved experience.
|
532 |
+
|
533 |
+
**3.6.74**
|
534 |
+
* Upgrade now for security fix.
|
535 |
+
|
536 |
+
**3.6.73**
|
537 |
+
* Upgrade now for WordPress 4.0 compatibility and minor bug fixes.
|
538 |
+
|
539 |
+
**3.6.72**
|
540 |
+
* Upgrade to enable/disable debug mode in settings.
|
541 |
+
|
542 |
+
**3.6.71**
|
543 |
+
* Upgrade now for complete export features as in Pro with bug fix.
|
544 |
+
|
545 |
+
**3.6.7**
|
546 |
+
* Upgrade now for complete export features as in Pro.
|
547 |
+
|
548 |
+
**3.6.6**
|
549 |
+
* Upgrade now for improved experience.
|
550 |
+
|
551 |
+
**3.6.5**
|
552 |
+
* Upgrade Now for advanced media handling for post in line images
|
553 |
+
|
554 |
+
**3.6.4**
|
555 |
+
* Upgrade Now for filtered export and improved log features.
|
556 |
+
|
557 |
+
**3.6.3**
|
558 |
+
* Upgrade now for Eshop product import feature.
|
559 |
+
|
560 |
+
**3.6.2**
|
561 |
+
* Important Security Update
|
562 |
+
|
563 |
+
**3.6.1**
|
564 |
+
* Important issue fixes update
|
565 |
+
|
566 |
+
**3.6**
|
567 |
+
* Must upgrade with major values added features
|
568 |
+
|
569 |
+
**3.5.5**
|
570 |
+
* Upgrade for minor bug fix, conflicts and new attribute support.
|
571 |
+
|
572 |
+
**3.5.4**
|
573 |
+
* Upgrade now for All-in-SEO import support.
|
574 |
+
|
575 |
+
**3.5.3**
|
576 |
+
* Upgrade for added export feature and bug fixes
|
577 |
+
|
578 |
+
**3.5.2**
|
579 |
+
* Upgrade for bug free version and improved image handling
|
580 |
+
|
581 |
+
**3.5.1**
|
582 |
+
* Must upgrade now for 3.5 bug fixes
|
583 |
+
|
584 |
+
**3.5.0**
|
585 |
+
* Upgrade now for major release 3.5. Note - Old version files need to be deleted.
|
586 |
+
|
587 |
+
**3.3.1**
|
588 |
+
* Upgrade now for multi site compatibility.
|
589 |
+
|
590 |
+
**3.3.0**
|
591 |
+
* Upgrade now for WP 3.8 compatibility and added bulk user,comments feature.
|
592 |
+
|
593 |
+
**3.2.3**
|
594 |
+
* Upgrade for WordPress 3.7.1 compatibility and minor bug fixes
|
595 |
+
|
596 |
+
**3.2.2**
|
597 |
+
* WordPress 3.6.1 compatible, bug fix and UI improvements
|
598 |
+
|
599 |
+
**3.2.1**
|
600 |
+
* Performance improvements on SQL and CSV parsing
|
601 |
+
|
602 |
+
**3.2.0**
|
603 |
+
* Now compatible with 3.6 and improved featured image
|
604 |
+
|
605 |
+
**3.1.0**
|
606 |
+
* Now Much Improved Featured Image and url handling
|
607 |
+
|
608 |
+
**3.0.0**
|
609 |
+
* Must upgrade to have Major improvements, performance fixes and issue fixes
|
610 |
+
|
611 |
+
**2.7.0**
|
612 |
+
* Major improvements and feature changes.
|
613 |
+
|
614 |
+
**2.6.0**
|
615 |
+
* Bug fixed and should upgrade.
|
616 |
+
|
617 |
+
**2.5.0**
|
618 |
+
* Duplicate detection added.
|
619 |
+
* Added more information in success message.
|
620 |
+
* Import memory issues solved.
|
621 |
+
|
622 |
+
**2.0.1**
|
623 |
+
* Update to WordPress-3.5 compatibility.
|
624 |
+
|
625 |
+
**2.0.0**
|
626 |
+
* Major Bug fixed and should upgrade. WPDEBUG errors fixed. CSV import folder changed to WP native uploads folder.
|
627 |
+
|
628 |
+
**1.1.1**
|
629 |
+
* Minor correction and fix applied.
|
630 |
+
|
631 |
+
**1.1.0**
|
632 |
+
* A major new feature added in this version. Update needed.
|
633 |
+
|
634 |
+
**1.0.2**
|
635 |
+
* This version have important bug fixes and newly added features. Must be upgrade immediately.
|
636 |
+
|
637 |
+
**1.0.1**
|
638 |
+
* Added features to import multiple tags and categories with different delimiters.
|
639 |
+
|
640 |
+
**1.0.0**
|
641 |
+
* Initial release of plugin.
|
Readme.txt
CHANGED
@@ -1,80 +1,27 @@
|
|
1 |
-
===
|
2 |
Contributors: smackcoders
|
3 |
Donate link: http://www.smackcoders.com/donate.html
|
4 |
-
Tags:
|
5 |
-
Requires at least:
|
6 |
-
Tested up to: 4.3
|
7 |
-
Stable tag: 3.8.
|
8 |
-
Version: 3.8.
|
9 |
Author: smackcoders
|
10 |
Author URI: http://profiles.wordpress.org/smackcoders/
|
11 |
|
12 |
License: GPLv2 or later
|
13 |
|
14 |
-
|
15 |
|
16 |
== Description ==
|
17 |
|
18 |
-
|
19 |
-
|
20 |
-
Now csv importer supports multi language and almost every WordPress modules and plugin fields as follows. Import data feed periodically from csv file as
|
21 |
-
|
22 |
-
= Supported Core Modules and Attributes =
|
23 |
-
* Post
|
24 |
-
* Page
|
25 |
-
* Featured image support
|
26 |
-
* Post inline image handling
|
27 |
-
* Standard WP Custom Post types
|
28 |
-
* WordPress themes custom posts
|
29 |
-
* Custom post type UI plugin Post types
|
30 |
-
* Users with roles
|
31 |
-
* Comments
|
32 |
-
* Custom Fields
|
33 |
-
* Author
|
34 |
-
* Tags import and multi tag for each post import
|
35 |
-
* Categories import and multi category for each post
|
36 |
-
* Eshop
|
37 |
-
* All-in-one SEO
|
38 |
-
|
39 |
-
= Highlights of 3.8 =
|
40 |
-
* Multilanguage support (fr_FR,es_ES,nl_NL)
|
41 |
-
* Inline image handling shortcode with image attributes Example:[WPIMPINLINE:greensroad.jpg|width='150'|height='80'|alt='post_title_redtree']
|
42 |
-
* Fixed user reported Warnings and Bugs
|
43 |
-
* Any delimiter support for csv export
|
44 |
-
|
45 |
-
Note: Now you can import no. of images in in-line post content as image shortcodes using advanced media handling option as zip files.
|
46 |
-
|
47 |
-
= CSV Importer =
|
48 |
-
|
49 |
-
WP Ultimate CSV Importer Plugin proven much effective advanced CSV Importer With Ultimate User Friendly Features. It is much easy now even for newbies to import csv file exported from any tool, app or software. Import as any WordPress post type and associated fields by simple mapping feature. Now import any CSV file as thousands of post, page and custom post types. This is admin side free plugin helps you in bulk edit, create and import posts type for your blog or site.
|
50 |
-
|
51 |
-
It is more easy to import csv database maintained in Excel xls or spread sheets into valuable content for your web site without missing any. It is possible now to schedule a import csv periodically for content update, maintenance, prices, offers, coupons and inventory etc.
|
52 |
-
|
53 |
-
Much improved User interface with most flexible jquery plugin features and bootstrap UI design makes csv import more simple, easy, fast and even more flexible for better user experience. With improved Multi site, buddy press compatibility (except user import module) works well for most of the best WordPress themes available online. Now manage multi site & buddy press, Amazon data import, affiliates blog, product inventory, ecommerce store, multi author blog, automatic news import, photo blog etc periodically with simple click import.
|
54 |
-
|
55 |
-
= Helpful Links =
|
56 |
-
|
57 |
-
[Get More Details Here>>](https://www.smackcoders.com/wp-ultimate-csv-importer-pro.html?utm_source=WpOrg&utm_medium=Readme&utm_campaign=ListingTraffic)
|
58 |
-
|
59 |
-
[Test Drive Our Live Demo](http://demo.smackcoders.com/demowpthree/wp-admin/admin.php?page=wp-ultimate-csv-importer-pro/index.php&__module=dashboard?utm_source=WpOrg&utm_medium=Readme&utm_campaign=ListingTraffic)
|
60 |
-
|
61 |
-
[Get Started Sample CSV Files](https://www.smackcoders.com/blog/wordpress-ultimate-csv-importer-csv-sample-files-and-updates.html?utm_source=WpOrg&utm_medium=Readme&utm_campaign=ListingTraffic)
|
62 |
-
|
63 |
-
[Documentation and Tutorial for CSV Importer ](https://www.smackcoders.com/documentation/ultimate-csv-importer-pro?utm_source=WpOrg&utm_medium=Readme&utm_campaign=ListingTraffic)
|
64 |
-
|
65 |
|
66 |
= Video Walkthrough =
|
67 |
|
68 |
-
<p>
|
69 |
|
70 |
= Highlights =
|
71 |
-
* import csv from any source as WordPress posts
|
72 |
-
* New Terminate & Continue feature is added.
|
73 |
-
* Complete export feature with improved filters
|
74 |
-
* Import external/internal images in line to any posts
|
75 |
-
* Upload images related to each csv
|
76 |
-
* Auto delimiter
|
77 |
-
* Auto UTF-8 handling
|
78 |
* All-in-SEO import support.
|
79 |
* Drag drop import
|
80 |
* Define any type of post
|
@@ -84,12 +31,11 @@ Much improved User interface with most flexible jquery plugin features and boots
|
|
84 |
* Scheduled Publishing
|
85 |
* Duplicate Title and content handling
|
86 |
* Multi Lingual import (CSV format must be UTF-8 without BOM)
|
87 |
-
*
|
88 |
-
* Compatible to
|
89 |
* Better alternative for xml
|
90 |
-
* Post Format
|
91 |
-
|
92 |
-
* EShop Products import (included from V3.6.3)
|
93 |
= Power Import Features to Control your csv import =
|
94 |
* Post title, content and even excerpt
|
95 |
* Text, WYSIWYG/HTML, in line CSS in post content
|
@@ -105,237 +51,234 @@ Much improved User interface with most flexible jquery plugin features and boots
|
|
105 |
* Custom fields support for WP standard
|
106 |
* Map custom fields by adding new on the fly.
|
107 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
108 |
= Imp. Notes =
|
109 |
-
*
|
110 |
-
* All
|
111 |
-
*
|
|
|
112 |
* To Schedule posts for publishing provide future date and time in date column in CSV File.
|
113 |
|
114 |
Featured Image Support
|
115 |
-
Your
|
116 |
`<?php add_theme_support( 'post-thumbnails' ); ?>`
|
117 |
|
118 |
-
|
119 |
-
* Advanced Features
|
120 |
-
* Multi language Support
|
121 |
-
* Woocommerce Support with woocommerce_products, woocommerce_variations, woocommerce_refunds, woocommerce_orders, woocommerce_coupons
|
122 |
-
* Market press
|
123 |
-
* ACF, TYPES, PODS, CCTM Custom Fields
|
124 |
-
* Advanced Export with Delimiter and Filters
|
125 |
-
* Advanced Media Handling
|
126 |
-
* Schedule Imports
|
127 |
-
* Dashboard, CSV Manager and Custom Mapping Templates
|
128 |
-
* DB Optimizer, System status etc.
|
129 |
-
|
130 |
-
Compare Free Vs Pro[Features](https://www.wpultimatecsvimporter.com/wp-ultimate-csv-importer-plugin?utm_source=WpOrg&utm_medium=Readme&utm_campaign=ListingTraffic)>>
|
131 |
-
Learn More from [User Manual](https://www.wpultimatecsvimporter.com/documentation/all-import/user-guide/simple-step-by-step-user-guide?utm_source=WpOrg&utm_medium=Readme&utm_campaign=ListingTraffic)>>
|
132 |
|
|
|
|
|
|
|
133 |
|
134 |
-
|
135 |
|
136 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
137 |
|
138 |
-
|
139 |
|
140 |
-
|
141 |
-
php_value auto_prepend_file none
|
142 |
-
php_value auto_append_file none
|
143 |
|
144 |
-
|
|
|
145 |
|
146 |
-
|
147 |
|
148 |
-
*
|
149 |
-
*
|
150 |
-
*
|
|
|
|
|
|
|
|
|
|
|
151 |
|
|
|
152 |
|
153 |
-
|
154 |
-
*
|
155 |
-
*
|
156 |
-
*
|
157 |
-
*
|
158 |
-
*
|
159 |
-
*
|
160 |
-
* Save mapping as Templates for reuse
|
161 |
-
* Auto Mapping Feature
|
162 |
-
* Strict UTF-8 auto conversion
|
163 |
-
* All In One SEO Fields Import
|
164 |
-
* WordPress SEO by Yoast Fields Import
|
165 |
-
* Custom Post Type UI plugin import
|
166 |
-
* Advanced Custom Fields Import
|
167 |
-
* CCTM Posts and Fields Import
|
168 |
-
* Woocommerce CSV Importer,
|
169 |
-
* WP ecommerce Products CSV Importer with WP e-Commerce Custom Fields
|
170 |
-
* Categories & tags Import with Category icons plugin support
|
171 |
-
* Custom Taxonomy import
|
172 |
|
173 |
-
|
174 |
|
175 |
-
|
|
|
|
|
|
|
|
|
|
|
176 |
|
177 |
-
|
178 |
|
179 |
|
180 |
== Screenshots ==
|
181 |
|
182 |
-
1.
|
183 |
-
2.
|
184 |
-
3.
|
185 |
-
4.
|
186 |
-
5.
|
187 |
-
6.
|
188 |
-
7.
|
189 |
-
8. New export module for posts, page, eshop, users, comments and all custom posts type plugins.
|
190 |
-
|
191 |
|
192 |
== Frequently Asked Questions ==
|
193 |
|
194 |
-
=
|
|
|
195 |
|
196 |
-
|
197 |
|
198 |
-
|
199 |
|
200 |
-
|
201 |
-
php_value auto_prepend_file none
|
202 |
-
php_value auto_append_file none
|
203 |
|
204 |
-
|
|
|
|
|
205 |
|
206 |
-
|
207 |
|
208 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
209 |
|
210 |
-
|
211 |
-
*
|
212 |
-
*
|
213 |
-
|
214 |
-
|
215 |
-
*
|
216 |
-
*
|
217 |
-
*
|
218 |
-
*
|
219 |
-
*
|
220 |
-
|
221 |
-
|
222 |
-
*
|
223 |
-
*
|
224 |
-
*
|
225 |
-
*
|
226 |
-
*
|
227 |
-
*
|
228 |
-
*
|
229 |
-
|
230 |
-
|
231 |
-
|
232 |
-
*
|
233 |
-
*
|
234 |
-
*
|
235 |
-
|
236 |
-
|
237 |
-
|
238 |
-
|
239 |
-
|
240 |
-
|
241 |
-
*
|
242 |
-
|
243 |
-
|
244 |
-
|
245 |
-
|
246 |
-
|
247 |
-
= 3.7.1 =
|
248 |
-
* Added: Security fix for curl.
|
249 |
-
* Added: Security fix for session status.
|
250 |
-
|
251 |
-
= 3.7 =
|
252 |
-
* Fixed: Featured image hotlink issue.
|
253 |
-
|
254 |
-
= 3.6.78 =
|
255 |
-
* Added: Hot security fix in readfile.php. ( Thanks - @James Golovich )
|
256 |
-
|
257 |
-
= 3.6.77 =
|
258 |
-
* Added: WordPress 4.1.1 compatibility checked.
|
259 |
-
* Improved: Inline image import feature. Added recursive method to assign the image.
|
260 |
-
* Fixed: Featured image naming issue. [Solved](https://wordpress.org/support/topic/problem-in-import-with-the-image-name)
|
261 |
-
* Fixed: Removed unwanted warnings.
|
262 |
-
|
263 |
-
= 3.6.76 =
|
264 |
-
* Improved: Post Format.
|
265 |
-
* Fixed: Export eshop data issue.
|
266 |
-
* Fixed: Import with image name issue.
|
267 |
-
* Fixed: Groups plugin conflict.
|
268 |
-
|
269 |
-
= 3.6.75 =
|
270 |
-
* Added: Terminate & Continue option in import section.
|
271 |
-
* Improved: Log section. Issue fixed in Web View & Admin View.
|
272 |
-
* Fixed: Security fix for export module.
|
273 |
-
|
274 |
-
= 3.6.74 =
|
275 |
-
* Added: Security fix.
|
276 |
-
|
277 |
-
= 3.6.73 =
|
278 |
-
* Added: WordPress 4.0 compatibility checked.
|
279 |
-
* Added: https format support for all WP instances.
|
280 |
-
* Added: Warning to guide user to create uploads directory with writeable permissions.
|
281 |
-
* Fixed: Image handling issues in featured image.
|
282 |
-
* Fixed: Multisite compatible issue.
|
283 |
-
* Removed: Post Content field mandatory option.
|
284 |
-
* Removed: All console warnings.
|
285 |
-
* Improved: Details added in security and performance tab under settings module.
|
286 |
-
|
287 |
-
= 3.6.72 =
|
288 |
-
* Added: Debug mode enable/disable options.
|
289 |
-
* Modified: Menu order changes.
|
290 |
-
|
291 |
-
= 3.6.71 =
|
292 |
-
* Minor bug fixed
|
293 |
-
|
294 |
-
= 3.6.7 =
|
295 |
-
* Added: Export features for all missing modules.
|
296 |
-
* Fixed: All console warnings and reported logs.
|
297 |
-
|
298 |
-
= 3.6.6 =
|
299 |
-
* Dashboard chart issue fixed for multi site.
|
300 |
-
* UI improvements along with easy usability.
|
301 |
-
* Fixed Groups plugin conflicts
|
302 |
-
|
303 |
-
= 3.6.5 =
|
304 |
-
* Added in line image support with advance media handling
|
305 |
-
* PDO check added
|
306 |
-
|
307 |
-
= 3.6.4 =
|
308 |
-
* Added: Advanced export features with filter options.
|
309 |
-
* Improved: Advanced log section.
|
310 |
-
* Fixed reported jquery issues.
|
311 |
-
* WordPress 4.0 compatibility checked.
|
312 |
-
|
313 |
-
= 3.6.3 =
|
314 |
-
* Added: Eshop import support.
|
315 |
-
* Fixed reported conflicts with other plugins.
|
316 |
-
* WordPress 3.9.2 compatibility checked.
|
317 |
-
|
318 |
-
= 3.6.2 =
|
319 |
-
* Hot security fix added.
|
320 |
-
|
321 |
-
= 3.6.1 =
|
322 |
-
* Multi-site support issue fixed
|
323 |
-
* Duplicate import issue fixed
|
324 |
-
* Security issue fixed
|
325 |
-
|
326 |
-
= 3.6 =
|
327 |
-
* New interactive graphs and charts in plugin dashboard
|
328 |
-
* New Admin dashboard widgets
|
329 |
-
* Added Users and comments export feature
|
330 |
-
* Auto delimiter handling
|
331 |
-
* Auto mapping feature
|
332 |
-
* Now allow authors to access import features
|
333 |
-
|
334 |
-
= 3.5.5 =
|
335 |
-
* post_format attribute support added
|
336 |
-
* page_template attribute added
|
337 |
-
* update_post_meta added for duplicate meta issue (Thanks to @alantygel)
|
338 |
-
* Type error issue in jQuery fixed
|
339 |
|
340 |
= 3.5.4 =
|
341 |
* Added: All-in-SEO import support.
|
@@ -485,84 +428,6 @@ This will solve your issue or get support from hosting if you dint have sufficie
|
|
485 |
|
486 |
== Upgrade Notice ==
|
487 |
|
488 |
-
= 3.8.3 =
|
489 |
-
* Upgrade now for improvements in multi language translation.
|
490 |
-
|
491 |
-
= 3.8.2 =
|
492 |
-
* Upgrade now for more improvements.
|
493 |
-
|
494 |
-
= 3.8.1 =
|
495 |
-
* Upgrade now for ABSPATH used in all files and also fixed all the warnings,bugs.
|
496 |
-
|
497 |
-
= 3.8 =
|
498 |
-
* Upgrade now for Multi language support and bug fixes
|
499 |
-
|
500 |
-
= 3.7.4 =
|
501 |
-
* Upgrade now for allow author/editor to import fix.
|
502 |
-
|
503 |
-
= 3.7.3 =
|
504 |
-
* Upgrade now for Vulnerability fix.
|
505 |
-
|
506 |
-
= 3.7.2 =
|
507 |
-
* Important Upgrade for wordpress 4.2 and above
|
508 |
-
|
509 |
-
= 3.7.1 =
|
510 |
-
* Upgrade now for security fix.
|
511 |
-
|
512 |
-
= 3.7 =
|
513 |
-
* Upgrade now for minor bug fixes.
|
514 |
-
|
515 |
-
= 3.6.78 =
|
516 |
-
* Upgrade now for security fix.
|
517 |
-
|
518 |
-
= 3.6.77 =
|
519 |
-
* Upgrade now for WordPress 4.1.1 compatibility and minor bug fixes.
|
520 |
-
|
521 |
-
= 3.6.76 =
|
522 |
-
* Upgrade now for more bug fixes.
|
523 |
-
|
524 |
-
= 3.6.75 =
|
525 |
-
* Upgrade now for improved experience.
|
526 |
-
|
527 |
-
= 3.6.74 =
|
528 |
-
* Upgrade now for security fix.
|
529 |
-
|
530 |
-
= 3.6.73 =
|
531 |
-
* Upgrade now for WordPress 4.0 compatibility and minor bug fixes.
|
532 |
-
|
533 |
-
= 3.6.72 =
|
534 |
-
* Upgrade to enable/disable debug mode in settings.
|
535 |
-
|
536 |
-
= 3.6.71 =
|
537 |
-
* Upgrade now for complete export features as in Pro with bug fix.
|
538 |
-
|
539 |
-
= 3.6.7 =
|
540 |
-
* Upgrade now for complete export features as in Pro.
|
541 |
-
|
542 |
-
= 3.6.6 =
|
543 |
-
* Upgrade now for improved experience.
|
544 |
-
|
545 |
-
= 3.6.5 =
|
546 |
-
* Upgrade Now for advanced media handling for post in line images
|
547 |
-
|
548 |
-
= 3.6.4 =
|
549 |
-
* Upgrade Now for filtered export and improved log features.
|
550 |
-
|
551 |
-
= 3.6.3 =
|
552 |
-
* Upgrade now for Eshop product import feature.
|
553 |
-
|
554 |
-
= 3.6.2 =
|
555 |
-
* Important Security Update
|
556 |
-
|
557 |
-
= 3.6.1 =
|
558 |
-
* Important issue fixes update
|
559 |
-
|
560 |
-
= 3.6 =
|
561 |
-
* Must upgrade with major values added features
|
562 |
-
|
563 |
-
= 3.5.5 =
|
564 |
-
* Upgrade for minor bug fix, conflicts and new attribute support.
|
565 |
-
|
566 |
= 3.5.4 =
|
567 |
* Upgrade now for All-in-SEO import support.
|
568 |
|
1 |
+
=== Advanced CSV Importer With Ultimate User Friendly Features ===
|
2 |
Contributors: smackcoders
|
3 |
Donate link: http://www.smackcoders.com/donate.html
|
4 |
+
Tags: Advanced CSV Importer, Advanced CSV Import, csv, csv importer, csv import, csv file, csv format, admin, affiliate, amazon, author, automatic, blog, buddypress, categories, comments, content, custom post, e-commerce, free, images, import, language, manage, media, meta, multisite, News, page, photos, pictures, plugin, Post, seo, shop, shortcode, tags, Taxonomy, text, title, users, video, woocommerce, wordpress, xml, youtube, batch, bulk, bulk edit, bulk editor, excel, spreadsheet
|
5 |
+
Requires at least: 3.6.0
|
6 |
+
Tested up to: 4.3
|
7 |
+
Stable tag: 3.8.4
|
8 |
+
Version: 3.8.4
|
9 |
Author: smackcoders
|
10 |
Author URI: http://profiles.wordpress.org/smackcoders/
|
11 |
|
12 |
License: GPLv2 or later
|
13 |
|
14 |
+
Advanced CSV Importer plugin to import data as bulk post, page, custom post etc., simple clicks even for multisite and buddypress blog.
|
15 |
|
16 |
== Description ==
|
17 |
|
18 |
+
WP Ultimate CSV Importer Plugin proven much effective advanced CSV File Importer With Ultimate User Friendly Features. It is much easy now even for newbies to import any csv file as any wordpress post type and associated fields by simple mapping feature. Now import any CSV file as thousands of post, page and custom post types. This is admin side free plugin helps you in bulk edit, create and import posts type for your blog or site.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
19 |
|
20 |
= Video Walkthrough =
|
21 |
|
22 |
+
<p>http://www.youtube.com/watch?v=OwKdt_NlT2U&list=PL2k3Ck1bFtbQqFhOK7g08kxENI4qQkmC</p>
|
23 |
|
24 |
= Highlights =
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
25 |
* All-in-SEO import support.
|
26 |
* Drag drop import
|
27 |
* Define any type of post
|
31 |
* Scheduled Publishing
|
32 |
* Duplicate Title and content handling
|
33 |
* Multi Lingual import (CSV format must be UTF-8 without BOM)
|
34 |
+
* Mutisite and Buddypress also supported now
|
35 |
+
* Compatible to wordpress themes
|
36 |
* Better alternative for xml
|
37 |
+
* Post Format(Not available now)
|
38 |
+
|
|
|
39 |
= Power Import Features to Control your csv import =
|
40 |
* Post title, content and even excerpt
|
41 |
* Text, WYSIWYG/HTML, in line CSS in post content
|
51 |
* Custom fields support for WP standard
|
52 |
* Map custom fields by adding new on the fly.
|
53 |
|
54 |
+
The csv importer supports almost every wordpress modules and plugin fields as follows. Import data feed periodically from csv file as
|
55 |
+
|
56 |
+
= Supported Core Modules and Attributes =
|
57 |
+
* Post
|
58 |
+
* Page
|
59 |
+
* Standard WP Custom Post types
|
60 |
+
* Wordpress themes custom posts
|
61 |
+
* Custom post type UI plugin Post types
|
62 |
+
* Users with roles
|
63 |
+
* Comments
|
64 |
+
* Custom Fields
|
65 |
+
* Author
|
66 |
+
* Tags
|
67 |
+
* Categories
|
68 |
+
|
69 |
+
It is more easy to convert any off line database maintained in Excel xls or spread sheets into valuable content for your web site without missing any. It is possible now to schedule a periodical content update, maintenance, prices, offers, coupons and inventory etc.
|
70 |
+
|
71 |
+
= About Version 3.5.0 =
|
72 |
+
* Extended user experience
|
73 |
+
* Better performance
|
74 |
+
* No more time out issues
|
75 |
+
* Advanced Log for proper tracking
|
76 |
+
* Drag drop import
|
77 |
+
* Advanced CMS administration
|
78 |
+
|
79 |
+
Much improved User interface with most flexible jquery plugin features and bootstrap UI design makes csv import more simple, easy, fast and even more flexible for better user experience. With improved Multi site, buddy press compatibility (except user import module) works well for most of the best wordpress themes available online. Now manage multi site & buddy press, amazon data import, affiliates blog, product inventory, ecommerce store, multi author blog, automatic news import, photo blog etc periodically with simple click import.
|
80 |
+
|
81 |
+
= Extended Pro Power Features in Wp Ultimate CSV Importer =
|
82 |
+
* Auto Schedule all your Imports
|
83 |
+
* Save mapping as Templates for reuse
|
84 |
+
* Auto Mapping Feature
|
85 |
+
* Strict UTF-8 auto conversion
|
86 |
+
* All In One SEO Fields Import
|
87 |
+
* Wordpress SEO by Yoast Fields Import
|
88 |
+
* Custom Post Type UI plugin import
|
89 |
+
* Advanced Custom Fields Import
|
90 |
+
* CCTM Posts and Fields Import
|
91 |
+
* Woo commerce CSV Importer,
|
92 |
+
* eshop CSV Importer
|
93 |
+
* wp ecommerce Products CSV Importer with WP e-Commerce Custom Fields
|
94 |
+
* Categories & tags Import with Category icons plugin support
|
95 |
+
* Custom Taxonomy import
|
96 |
+
* [Get Complete List of supported 3rd party plugins here](http://www.smackcoders.com/wp-ultimate-csv-importer-pro.html)
|
97 |
+
* Types and more supports are in pipeline
|
98 |
+
|
99 |
+
[Read More about Pro>>](http://www.smackcoders.com/wp-ultimate-csv-importer-pro.html) or [Test Drive Our Live Demo](http://demo.smackcoders.com/demowpthree/wp-admin/admin.php?page=wp-ultimate-csv-importer-pro/index.php&__module=dashboard)
|
100 |
+
|
101 |
= Imp. Notes =
|
102 |
+
* It is advised to remove older version files completely and install/reinstall version 3.5.0.
|
103 |
+
* All CSV files should be should be strictly UTF-8 CSV format.
|
104 |
+
* All wordpress supported languages can imported with csv format as UTF-8 without BOM (See FAQ for instructions).
|
105 |
+
* User import option is switched off in multi site mode.
|
106 |
* To Schedule posts for publishing provide future date and time in date column in CSV File.
|
107 |
|
108 |
Featured Image Support
|
109 |
+
Your wordpress theme should support featured image. If not, please add the following code to where you need to display E.g. wp-contents/themes/header.php
|
110 |
`<?php add_theme_support( 'post-thumbnails' ); ?>`
|
111 |
|
112 |
+
Also you can follow the instructions as given here
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
113 |
|
114 |
+
* [http://codex.wordpress.org/Function_Reference/the_post_thumbnail](http://codex.wordpress.org/Function_Reference/the_post_thumbnail)
|
115 |
+
* [http://codex.wordpress.org/Post_Thumbnails](http://codex.wordpress.org/Post_Thumbnails)
|
116 |
+
* [http://wordpress.org/support/topic/featured-image-not-showing-7?replies=5](http://wordpress.org/support/topic/featured-image-not-showing-7?replies=5)
|
117 |
|
118 |
+
Need More Help, Cool. Browse Below Links
|
119 |
|
120 |
+
* [Get Pro Power Features, check here](http://www.smackcoders.com/wp-ultimate-csv-importer-pro.html)
|
121 |
+
* [Step By Step Installation Wiki with Snaps](http://wiki.smackcoders.com/WP_Ultimate_CSV_Importer#Installations)
|
122 |
+
* [Detailed FAQ](http://wiki.smackcoders.com/WP_Ultimate_CSV_Importer_FAQ)
|
123 |
+
* [Old Support Threads](http://wiki.smackcoders.com/WP_Ultimate_CSV_Importer_Support_Threads)
|
124 |
+
* [Wiki and Documentation](http://wiki.smackcoders.com/WP_Ultimate_CSV_Importer)
|
125 |
+
* [Tutorials, Guides, Blog News and Updates](http://blog.smackcoders.com/category/free-wordpress-plugins/wordpress-ultimate-csv-importer-plugin/)
|
126 |
+
* [Video Walkthrough](http://wiki.smackcoders.com/WP_Ultimate_CSV_Importer_Videos)
|
127 |
+
* [Get the Sample CSV Files Here](http://blog.smackcoders.com/wordpress-ultimate-csv-importer-csv-sample-files-and-updates.html)
|
128 |
+
* [Download CSV Format Cheat Sheets Here](http://blog.smackcoders.com/how-to-make-one-click-easy-csv-import-in-wordpress-free-cheat-sheet-downloads.html)
|
129 |
|
130 |
+
== Installation ==
|
131 |
|
132 |
+
Wp Ultimate CSV Importer is very easy to install like any other wordpress plugin. No need to edit or modify anything here. Users can install the plugin in 3 ways, choose one that suites you from below
|
|
|
|
|
133 |
|
134 |
+
= Imp. Notes =
|
135 |
+
* It is advised to remove older version files completely and install/reinstall version 3.5.0.
|
136 |
|
137 |
+
I. For simple general way to install
|
138 |
|
139 |
+
* Download the plugin (.zip file) on the right side above menu
|
140 |
+
* Click the Red Download Button ( Download Version X.X.X)
|
141 |
+
* Login to your Wordpress Admin (e.g. yourdomain.com/wp-admin/)
|
142 |
+
* Go to Plugins >> Add New
|
143 |
+
* Select the tab "Upload"
|
144 |
+
* Browse and Upload the downloaded zip file
|
145 |
+
* Activate the plugin after install
|
146 |
+
* You can see a new menu WP Ultimate CSV Importer in your Admin now
|
147 |
|
148 |
+
II. For familiar FTP users
|
149 |
|
150 |
+
* Download the plugin (.zip file) on the right side above menu
|
151 |
+
* Click the Red Download Button ( Download Version X.X.X)
|
152 |
+
* Extract the plugin zip
|
153 |
+
* Upload wp-ultimate-csv-importer folder to /wp-content/plugins/
|
154 |
+
* Go to Plugins >> Installed Plugins >> Inactive
|
155 |
+
* Click Activate to activate the plugin
|
156 |
+
* You can see a new menu WP Ultimate CSV Importer in your Admin now
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
157 |
|
158 |
+
III. Straight from Wordpress Admin
|
159 |
|
160 |
+
* Login to your Wordpress Admin (e.g. yourdomain.com/wp-admin/)
|
161 |
+
* Go to Plugins >> Add New
|
162 |
+
* Search for WP Ultimate CSV Importer
|
163 |
+
* Click Install Now to install
|
164 |
+
* Activate the plugin after install
|
165 |
+
* You can see a new menu WP Ultimate CSV Importer in your Admin now
|
166 |
|
167 |
+
Not clear. You can use [step by step installation wiki with snaps here](http://wiki.smackcoders.com/WP_Ultimate_CSV_Importer#Installations)
|
168 |
|
169 |
|
170 |
== Screenshots ==
|
171 |
|
172 |
+
1. Advanced CSV Importer With Ultimate User Friendly Features with drag and drop etc.
|
173 |
+
2. User friendly easy mapping for any csv file data to wordpress field attributes with sampling.
|
174 |
+
3. Advanced duplicate post name and content check with server request control for high performance factor.
|
175 |
+
4. Detailed real time log to know pinpoint status.
|
176 |
+
5. Module based environment for easy and reduced interface to enable most required modules and when ever needed.
|
177 |
+
6. Inbuilt support form for easy feedback, support, feature request with all useful links for easy and better csv import.
|
178 |
+
7. New export module for posts, page and all custom posts type plugins.
|
|
|
|
|
179 |
|
180 |
== Frequently Asked Questions ==
|
181 |
|
182 |
+
= Imp. Notes =
|
183 |
+
* It is advised to remove older version files completely and install/reinstall version 3.5.0.
|
184 |
|
185 |
+
[CSV File and Format Related](http://wiki.smackcoders.com/WP_Ultimate_CSV_Importer_FAQ#CSV_File_and_Format_Related)
|
186 |
|
187 |
+
= '''What is csv file?''' =
|
188 |
|
189 |
+
CSV stands for "Comma Separated Values". CSV file format is used to store data in a structured table of lists as columns and rows. CSV File otherwise Comma Separated Values file is a simple text file that stores attribute names as headers and their related values in comma separated format.
|
|
|
|
|
190 |
|
191 |
+
In general opening csv files in MS Excel or any spread sheet editor will show all values under each header as columns and rows. Each column have a attribute name called as CSV file header and their data/values in rows for each entry.
|
192 |
+
|
193 |
+
For ultimate csv importer each row is imported as a post for a selected post type and columns are imported as filed attribute values of the posts. This is done by simple interface of drop downs of header or attribute names are mapped to wordpress post field attributes like post title, content, status. So no of rows are equal to no of posts that to be imported. And columns or csv headers are equal to no of field attributes assigned under each post like author, category, tags, custom fields etc.
|
194 |
|
195 |
+
= '''What is csv format and types of it?''' =
|
196 |
|
197 |
+
The CSV file type 'Comma-Separated Variables' or comma delimited file is a records and data from a database or software exported, where each record/data in single line and each field attributes in records are indicated as comma separated. In some cases instead of comma other delimiters also can be used like ; separated.
|
198 |
+
|
199 |
+
|
200 |
+
CSV Format is chosen encoding while saving as a csv file. There are several formats available like ANSI, UCS-2 Big Endian, UCS-2 Little Endian, UTF-8, UTF-8 without BOM etc.
|
201 |
+
|
202 |
+
For ultimate csv importer to import csv as wordpress post type, UTF-8 is advised for successful import. In case of other language import or any special characters, diacritics, Cyrillic or Han characters are included in csv import, UTF-8 without BOM format is suggested.
|
203 |
+
|
204 |
+
How to choose separator or delimiter for ultimate CSV Importer?
|
205 |
+
|
206 |
+
In ultimate csv importer you can choose the delimiter as , or ; while importing the csv file.
|
207 |
+
|
208 |
+
= '''How to open csv files? read csv file?''' =
|
209 |
+
|
210 |
+
In general to read or open existing CSV files simple text editors can be used. For easy editing and best view, any spread sheet editor like MS Excel or OpenOffice Calc is useful.
|
211 |
+
|
212 |
+
= '''How to convert my existing data to csv format?''' =
|
213 |
+
|
214 |
+
In general to read or open existing CSV files simple text editors can be used. For easy editing and best view, any spread sheet editor like MS Excel or OpenOffice Calc is useful. To convert encoding format of a csv file open it in text editor and save as with needed file format.
|
215 |
+
|
216 |
+
For E.g. open your csv file in Notepad++ copy the text. Now open a new empty file choose UTF-8 without BOM or other from Menus >> Encoding and paste the copied text. Now save and replace the old CSV file. Now your CSV file with choosen format can be imported without any issues in Ultimate CSV importer.
|
217 |
+
|
218 |
+
[Plugin Related](http://wiki.smackcoders.com/WP_Ultimate_CSV_Importer_FAQ#Plugin_Related)
|
219 |
+
|
220 |
+
= '''How to install the plugin?''' =
|
221 |
+
|
222 |
+
For detailed installation instruction read here - http://wiki.smackcoders.com/index.php?title=WP_Ultimate_CSV_Importer#Installations
|
223 |
+
|
224 |
+
= '''How to use the plugin to import a csv file?''' =
|
225 |
+
|
226 |
+
Refer here as below
|
227 |
+
|
228 |
+
1.http://blog.smackcoders.com/how-to-import-content-to-wordpress-simple-steps-tutorial-wordpress-ultimate-csv-importer-plugin-part-i.html<br>
|
229 |
+
|
230 |
+
2.http://blog.smackcoders.com/how-to-import-content-to-wordpress-simple-steps-tutorial-wordpress-ultimate-csv-importer-plugin-part-ii.html
|
231 |
+
|
232 |
+
= '''What is a csv importer plugin?''' =
|
233 |
+
|
234 |
+
Csv importer plugin is a tool/plugin that can import your data and records from exported, stored, saved as csv files to your software as useful viewable content to analyse, manage etc. In such way Ultimate CSV importer is a worpdress plugin that imports your off line records or data stored/exported as a csv file into any wordpress post type web content by simple easy mapping feature.
|
235 |
+
|
236 |
+
= '''Why we need CSV import for wordpress?''' =
|
237 |
+
|
238 |
+
If you need to move data from our local system to live website as post content and their field attributes in bulk you should need a csv importer plugin for reduce manual work and time. In normal affiliates data like amazon, auto blogging, drop shipping ecommerce, inventory management, periodical changes to content in bulk, bulk editing cms content etc can be handled as simple as few easy clicks by an advanced csv importer plugin like Ultimate CSV importer plugin.
|
239 |
+
|
240 |
+
More to that features like auto mapping headers, mapping templates, smart scheduling etc in pro version makes periodical imports more easy and automatic even without mapping itself.
|
241 |
+
|
242 |
+
Read More FAQs from below wiki links.
|
243 |
+
|
244 |
+
[CSV Import Related](http://wiki.smackcoders.com/WP_Ultimate_CSV_Importer_FAQ#CSV_Import_Related)
|
245 |
|
246 |
+
* What csv format is supported?
|
247 |
+
* How to import other languages using ultimate csv importer?
|
248 |
+
* How to Format a CSV file for simple sleek import using WP Ultimate CSV Importer Plugin?
|
249 |
+
* How to create a well formatted csv for ultimate power import? - the other way to learn tweaking
|
250 |
+
* Where can i get sample files, cheat sheets and other references?
|
251 |
+
* What you mean by mapping?
|
252 |
+
* What are mandatory fields?
|
253 |
+
* What can be imported to wordpress using ultimate csv importer?
|
254 |
+
* What are the list of 3rd party plugins supported?
|
255 |
+
* Why my custom fields or custom posts are supported by plugin?
|
256 |
+
* Can i bulk edit/update existing posts created manually?
|
257 |
+
* How to schedule post for publishing?
|
258 |
+
* What is auto mapping feature?
|
259 |
+
* What is mapping template feature? How to use it?
|
260 |
+
* How saved mapping template can be reused?
|
261 |
+
* How to schedule csv files for import?
|
262 |
+
* Is schedule import possible from remote location?
|
263 |
+
* how to automate periodical scheduled import?
|
264 |
+
* Is auto split up schedule import possible?
|
265 |
+
|
266 |
+
[Data Export Related](http://wiki.smackcoders.com/WP_Ultimate_CSV_Importer_FAQ#Data_Export_Related)
|
267 |
+
|
268 |
+
* How to export data or export-csv from wordpress? data export export to csv
|
269 |
+
* Can i schedule export?
|
270 |
+
* How the export feature works?
|
271 |
+
* Is export feature available to all modules?
|
272 |
+
|
273 |
+
[Common Issues](http://wiki.smackcoders.com/WP_Ultimate_CSV_Importer_FAQ#Common_Issues)
|
274 |
+
|
275 |
+
* Why and What to do if my import broke in the middle?
|
276 |
+
* Cant get my featured image imported?
|
277 |
+
* Why image import is broken
|
278 |
+
* I am getting time out error? how to solve it?
|
279 |
+
* How to handle large data import?
|
280 |
+
|
281 |
+
== Changelog ==
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
282 |
|
283 |
= 3.5.4 =
|
284 |
* Added: All-in-SEO import support.
|
428 |
|
429 |
== Upgrade Notice ==
|
430 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
431 |
= 3.5.4 =
|
432 |
* Upgrade now for All-in-SEO import support.
|
433 |
|
config/schema.php
CHANGED
@@ -1,36 +1,36 @@
|
|
1 |
<?php
|
2 |
/*********************************************************************************
|
3 |
-
* WP Ultimate CSV Importer is a Tool for importing CSV for the Wordpress
|
4 |
-
* plugin developed by Smackcoder. Copyright (C) 2014 Smackcoders.
|
5 |
-
*
|
6 |
-
* WP Ultimate CSV Importer is free software; you can redistribute it and/or
|
7 |
-
* modify it under the terms of the GNU Affero General Public License version 3
|
8 |
-
* as published by the Free Software Foundation with the addition of the
|
9 |
-
* following permission added to Section 15 as permitted in Section 7(a): FOR
|
10 |
-
* ANY PART OF THE COVERED WORK IN WHICH THE COPYRIGHT IS OWNED BY WP Ultimate
|
11 |
-
* CSV Importer, WP Ultimate CSV Importer DISCLAIMS THE WARRANTY OF NON
|
12 |
-
* INFRINGEMENT OF THIRD PARTY RIGHTS.
|
13 |
-
*
|
14 |
-
* WP Ultimate CSV Importer is distributed in the hope that it will be useful,
|
15 |
-
* but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
|
16 |
-
* or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
|
17 |
-
* License for more details.
|
18 |
-
*
|
19 |
-
* You should have received a copy of the GNU Affero General Public License
|
20 |
-
* along with this program; if not, see http://www.gnu.org/licenses or write
|
21 |
-
* to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
22 |
-
* Boston, MA 02110-1301 USA.
|
23 |
-
*
|
24 |
-
* You can contact Smackcoders at email address info@smackcoders.com.
|
25 |
-
*
|
26 |
-
* The interactive user interfaces in original and modified versions
|
27 |
-
* of this program must display Appropriate Legal Notices, as required under
|
28 |
-
* Section 5 of the GNU Affero General Public License version 3.
|
29 |
-
*
|
30 |
-
* In accordance with Section 7(b) of the GNU Affero General Public License
|
31 |
-
* version 3, these Appropriate Legal Notices must retain the display of the
|
32 |
-
* WP Ultimate CSV Importer copyright notice. If the display of the logo is
|
33 |
-
* not reasonably feasible for technical reasons, the Appropriate Legal
|
34 |
-
* Notices must display the words
|
35 |
-
* "Copyright Smackcoders. 2014. All rights reserved".
|
36 |
-
********************************************************************************/
|
1 |
<?php
|
2 |
/*********************************************************************************
|
3 |
+
* WP Ultimate CSV Importer is a Tool for importing CSV for the Wordpress
|
4 |
+
* plugin developed by Smackcoder. Copyright (C) 2014 Smackcoders.
|
5 |
+
*
|
6 |
+
* WP Ultimate CSV Importer is free software; you can redistribute it and/or
|
7 |
+
* modify it under the terms of the GNU Affero General Public License version 3
|
8 |
+
* as published by the Free Software Foundation with the addition of the
|
9 |
+
* following permission added to Section 15 as permitted in Section 7(a): FOR
|
10 |
+
* ANY PART OF THE COVERED WORK IN WHICH THE COPYRIGHT IS OWNED BY WP Ultimate
|
11 |
+
* CSV Importer, WP Ultimate CSV Importer DISCLAIMS THE WARRANTY OF NON
|
12 |
+
* INFRINGEMENT OF THIRD PARTY RIGHTS.
|
13 |
+
*
|
14 |
+
* WP Ultimate CSV Importer is distributed in the hope that it will be useful,
|
15 |
+
* but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
|
16 |
+
* or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
|
17 |
+
* License for more details.
|
18 |
+
*
|
19 |
+
* You should have received a copy of the GNU Affero General Public License
|
20 |
+
* along with this program; if not, see http://www.gnu.org/licenses or write
|
21 |
+
* to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
22 |
+
* Boston, MA 02110-1301 USA.
|
23 |
+
*
|
24 |
+
* You can contact Smackcoders at email address info@smackcoders.com.
|
25 |
+
*
|
26 |
+
* The interactive user interfaces in original and modified versions
|
27 |
+
* of this program must display Appropriate Legal Notices, as required under
|
28 |
+
* Section 5 of the GNU Affero General Public License version 3.
|
29 |
+
*
|
30 |
+
* In accordance with Section 7(b) of the GNU Affero General Public License
|
31 |
+
* version 3, these Appropriate Legal Notices must retain the display of the
|
32 |
+
* WP Ultimate CSV Importer copyright notice. If the display of the logo is
|
33 |
+
* not reasonably feasible for technical reasons, the Appropriate Legal
|
34 |
+
* Notices must display the words
|
35 |
+
* "Copyright Smackcoders. 2014. All rights reserved".
|
36 |
+
********************************************************************************/
|
config/settings.php
CHANGED
@@ -34,27 +34,16 @@
|
|
34 |
* Notices must display the words
|
35 |
* "Copyright Smackcoders. 2014. All rights reserved".
|
36 |
********************************************************************************/
|
37 |
-
if (
|
38 |
-
|
|
|
39 |
|
40 |
-
|
41 |
-
|
42 |
-
DEFINE('WP_DBHOST_CSVIMPORTER', $wpdb->dbhost);
|
43 |
-
DEFINE('WP_DBUSER_CSVIMPORTER', $wpdb->dbuser);
|
44 |
-
DEFINE('WP_DBPASSWORD_CSVIMPORTER', $wpdb->dbpassword);
|
45 |
|
46 |
-
|
|
|
|
|
|
|
|
|
47 |
|
48 |
-
|
49 |
-
"project name" => WP_CONST_ULTIMATE_CSV_IMP_NAME,
|
50 |
-
"debug" => false,
|
51 |
-
"preload model" => true, //true = all model classes will be loaded with each request;
|
52 |
-
//false = model classes will be loaded only if explicitly required (use require_once)
|
53 |
-
|
54 |
-
"session persistency" => false, //tmp in your project dir must be writeable by the server!
|
55 |
-
"session timeout" => 1800, //in seconds!
|
56 |
-
|
57 |
-
"unauthenticated default module" => "default", //set this to where you want unauthenticated users redirected.
|
58 |
-
"unauthenticated default action" => "index",
|
59 |
-
);}
|
60 |
-
|
34 |
* Notices must display the words
|
35 |
* "Copyright Smackcoders. 2014. All rights reserved".
|
36 |
********************************************************************************/
|
37 |
+
if (!defined('ABSPATH')) {
|
38 |
+
exit;
|
39 |
+
} // Exit if accessed directly
|
40 |
|
41 |
+
class SkinnySettings {
|
42 |
+
public static $CONFIG = array(
|
|
|
|
|
|
|
43 |
|
44 |
+
"project name" => WP_CONST_ULTIMATE_CSV_IMP_NAME, "debug" => false, "preload model" => true, //true = all model classes will be loaded with each request;
|
45 |
+
//false = model classes will be loaded only if explicitly required (use require_once)
|
46 |
+
"unauthenticated default module" => "default", //set this to where you want unauthenticated users redirected.
|
47 |
+
"unauthenticated default action" => "index",);
|
48 |
+
}
|
49 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
css/bootstrap.css
CHANGED
@@ -3718,7 +3718,7 @@ input[type="button"].btn-block {
|
|
3718 |
margin: 2px 0 0;
|
3719 |
font-size: 14px;
|
3720 |
list-style: none;
|
3721 |
-
color
|
3722 |
background-color: #222222;
|
3723 |
border: 1px solid #cccccc;
|
3724 |
border: 1px solid rgba(0, 0, 0, 0.15);
|
@@ -4515,8 +4515,8 @@ textarea.input-group-sm > .input-group-btn > .btn {
|
|
4515 |
min-height: 50px;
|
4516 |
margin-bottom: 20px;
|
4517 |
border: 1px solid transparent;
|
4518 |
-
background-color
|
4519 |
-
width:98%;
|
4520 |
}
|
4521 |
|
4522 |
.navbar:before,
|
@@ -4541,8 +4541,8 @@ textarea.input-group-sm > .input-group-btn > .btn {
|
|
4541 |
|
4542 |
@media (min-width: 768px) {
|
4543 |
.navbar {
|
4544 |
-
margin-top:25px;
|
4545 |
-
margin-right:15px;
|
4546 |
}
|
4547 |
}
|
4548 |
|
@@ -6302,7 +6302,7 @@ button.close {
|
|
6302 |
display: block;
|
6303 |
font-size: 12px;
|
6304 |
line-height: 1.4;
|
6305 |
-
/ / opacity
|
6306 |
filter: alpha(opacity=0);
|
6307 |
visibility: visible;
|
6308 |
}
|
@@ -7452,8 +7452,8 @@ td.visible-print {
|
|
7452 |
.nav .open > a:hover,
|
7453 |
.nav .open > a:focus {
|
7454 |
background-color: #0074A2 !important;
|
7455 |
-
color
|
7456 |
-
|
7457 |
}
|
7458 |
|
7459 |
.nav .nav-divider {
|
3718 |
margin: 2px 0 0;
|
3719 |
font-size: 14px;
|
3720 |
list-style: none;
|
3721 |
+
color: #fff;
|
3722 |
background-color: #222222;
|
3723 |
border: 1px solid #cccccc;
|
3724 |
border: 1px solid rgba(0, 0, 0, 0.15);
|
4515 |
min-height: 50px;
|
4516 |
margin-bottom: 20px;
|
4517 |
border: 1px solid transparent;
|
4518 |
+
background-color: #222222 !important;
|
4519 |
+
width: 98%;
|
4520 |
}
|
4521 |
|
4522 |
.navbar:before,
|
4541 |
|
4542 |
@media (min-width: 768px) {
|
4543 |
.navbar {
|
4544 |
+
margin-top: 25px;
|
4545 |
+
margin-right: 15px;
|
4546 |
}
|
4547 |
}
|
4548 |
|
6302 |
display: block;
|
6303 |
font-size: 12px;
|
6304 |
line-height: 1.4;
|
6305 |
+
/ / opacity: 0;
|
6306 |
filter: alpha(opacity=0);
|
6307 |
visibility: visible;
|
6308 |
}
|
7452 |
.nav .open > a:hover,
|
7453 |
.nav .open > a:focus {
|
7454 |
background-color: #0074A2 !important;
|
7455 |
+
color: #fff;
|
7456 |
+
/* border-color: #428bca; */
|
7457 |
}
|
7458 |
|
7459 |
.nav .nav-divider {
|
css/bootstrap.min.css
CHANGED
@@ -6,4 +6,6356 @@
|
|
6 |
* http://www.apache.org/licenses/LICENSE-2.0
|
7 |
*
|
8 |
* Designed and built with all the love in the world by @mdo and @fat.
|
9 |
-
*//*! normalize.css v2.1.0 | MIT License | git.io/normalize */article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{display:block}audio,canvas,video{display:inline-block}audio:not([controls]){display:none;height:0}[hidden]{display:none}html{font-family:sans-serif;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}body{margin:0}a:focus{outline:thin dotted}a:active,a:hover{outline:0}h1{margin:.67em 0;font-size:2em}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:bold}dfn{font-style:italic}hr{height:0;-moz-box-sizing:content-box;box-sizing:content-box}mark{color:#000;background:#ff0}code,kbd,pre,samp{font-family:monospace,serif;font-size:1em}pre{white-space:pre-wrap}q{quotes:"\201C" "\201D" "\2018" "\2019"}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sup{top:-0.5em}sub{bottom:-0.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:0}fieldset{padding:.35em .625em .75em;margin:0 2px;border:1px solid #c0c0c0}legend{padding:0;border:0}button,input,select,textarea{margin:0;font-family:inherit;font-size:100%}button,input{line-height:normal}button,select{text-transform:none}button,html input[type="button"],input[type="reset"],input[type="submit"]{cursor:pointer;-webkit-appearance:button}button[disabled],html input[disabled]{cursor:default}input[type="checkbox"],input[type="radio"]{padding:0;box-sizing:border-box}input[type="search"]{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;-webkit-appearance:textfield}input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration{-webkit-appearance:none}button::-moz-focus-inner,input::-moz-focus-inner{padding:0;border:0}textarea{overflow:auto;vertical-align:top}table{border-collapse:collapse;border-spacing:0}@media print{*{color:#000!important;text-shadow:none!important;background:transparent!important;box-shadow:none!important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}.ir a:after,a[href^="javascript:"]:after,a[href^="#"]:after{content:""}pre,blockquote{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}tr,img{page-break-inside:avoid}img{max-width:100%!important}@page{margin:2cm .5cm}p,h2,h3{orphans:3;widows:3}h2,h3{page-break-after:avoid}.navbar{display:none}.table td,.table th{background-color:#fff!important}.btn>.caret,.dropup>.btn>.caret{border-top-color:#000!important}.label{border:1px solid #000}.table{border-collapse:collapse!important}.table-bordered th,.table-bordered td{border:1px solid #ddd!important}}*,*:before,*:after{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}html{font-size:62.5%;-webkit-tap-highlight-color:rgba(0,0,0,0)}body{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:1.428571429;color:#333;background-color:#fff}input,button,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit}button,input,select[multiple],textarea{background-image:none}a{color:#428bca;text-decoration:none}a:hover,a:focus{color:#2a6496;text-decoration:underline}a:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}img{vertical-align:middle}.img-responsive{display:block;height:auto;max-width:100%}.img-rounded{border-radius:6px}.img-thumbnail{display:inline-block;height:auto;max-width:100%;padding:4px;line-height:1.428571429;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.img-circle{border-radius:50%}hr{margin-top:20px;margin-bottom:20px;border:0;border-top:1px solid #eee}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);border:0}p{margin:0 0 10px}.lead{margin-bottom:20px;font-size:16.099999999999998px;font-weight:200;line-height:1.4}@media(min-width:768px){.lead{font-size:21px}}small{font-size:85%}cite{font-style:normal}.text-muted{color:#999}.text-primary{color:#428bca}.text-warning{color:#c09853}.text-danger{color:#b94a48}.text-success{color:#468847}.text-info{color:#3a87ad}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:500;line-height:1.1}h1 small,h2 small,h3 small,h4 small,h5 small,h6 small,.h1 small,.h2 small,.h3 small,.h4 small,.h5 small,.h6 small{font-weight:normal;line-height:1;color:#999}h1,h2,h3{margin-top:20px;margin-bottom:10px}h4,h5,h6{margin-top:10px;margin-bottom:10px}h1,.h1{font-size:36px}h2,.h2{font-size:30px}h3,.h3{font-size:24px}h4,.h4{font-size:18px}h5,.h5{font-size:14px}h6,.h6{font-size:12px}h1 small,.h1 small{font-size:24px}h2 small,.h2 small{font-size:18px}h3 small,.h3 small,h4 small,.h4 small{font-size:14px}.page-header{padding-bottom:9px;margin:40px 0 20px;border-bottom:1px solid #eee}ul,ol{margin-top:0;margin-bottom:10px}ul ul,ol ul,ul ol,ol ol{margin-bottom:0}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;list-style:none}.list-inline>li{display:inline-block;padding-right:5px;padding-left:5px}dl{margin-bottom:20px}dt,dd{line-height:1.428571429}dt{font-weight:bold}dd{margin-left:0}@media(min-width:768px){.dl-horizontal dt{float:left;width:160px;overflow:hidden;clear:left;text-align:right;text-overflow:ellipsis;white-space:nowrap}.dl-horizontal dd{margin-left:180px}.dl-horizontal dd:before,.dl-horizontal dd:after{display:table;content:" "}.dl-horizontal dd:after{clear:both}.dl-horizontal dd:before,.dl-horizontal dd:after{display:table;content:" "}.dl-horizontal dd:after{clear:both}}abbr[title],abbr[data-original-title]{cursor:help;border-bottom:1px dotted #999}abbr.initialism{font-size:90%;text-transform:uppercase}blockquote{padding:10px 20px;margin:0 0 20px;border-left:5px solid #eee}blockquote p{font-size:17.5px;font-weight:300;line-height:1.25}blockquote p:last-child{margin-bottom:0}blockquote small{display:block;line-height:1.428571429;color:#999}blockquote small:before{content:'\2014 \00A0'}blockquote.pull-right{padding-right:15px;padding-left:0;border-right:5px solid #eee;border-left:0}blockquote.pull-right p,blockquote.pull-right small{text-align:right}blockquote.pull-right small:before{content:''}blockquote.pull-right small:after{content:'\00A0 \2014'}q:before,q:after,blockquote:before,blockquote:after{content:""}address{display:block;margin-bottom:20px;font-style:normal;line-height:1.428571429}code,pre{font-family:Monaco,Menlo,Consolas,"Courier New",monospace}code{padding:2px 4px;font-size:90%;color:#c7254e;white-space:nowrap;background-color:#f9f2f4;border-radius:4px}pre{display:block;padding:9.5px;margin:0 0 10px;font-size:13px;line-height:1.428571429;color:#333;word-break:break-all;word-wrap:break-word;background-color:#f5f5f5;border:1px solid #ccc;border-radius:4px}pre.prettyprint{margin-bottom:20px}pre code{padding:0;font-size:inherit;color:inherit;white-space:pre-wrap;background-color:transparent;border:0}.pre-scrollable{max-height:340px;overflow-y:scroll}.container{padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}.container:before,.container:after{display:table;content:" "}.container:after{clear:both}.container:before,.container:after{display:table;content:" "}.container:after{clear:both}.row{margin-right:-15px;margin-left:-15px}.row:before,.row:after{display:table;content:" "}.row:after{clear:both}.row:before,.row:after{display:table;content:" "}.row:after{clear:both}.col-xs-1,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9,.col-xs-10,.col-xs-11,.col-xs-12,.col-sm-1,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-10,.col-sm-11,.col-sm-12,.col-md-1,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-10,.col-md-11,.col-md-12,.col-lg-1,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-10,.col-lg-11,.col-lg-12{position:relative;min-height:1px;padding-right:15px;padding-left:15px}.col-xs-1,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9,.col-xs-10,.col-xs-11{float:left}.col-xs-1{width:8.333333333333332%}.col-xs-2{width:16.666666666666664%}.col-xs-3{width:25%}.col-xs-4{width:33.33333333333333%}.col-xs-5{width:41.66666666666667%}.col-xs-6{width:50%}.col-xs-7{width:58.333333333333336%}.col-xs-8{width:66.66666666666666%}.col-xs-9{width:75%}.col-xs-10{width:83.33333333333334%}.col-xs-11{width:91.66666666666666%}.col-xs-12{width:100%}@media(min-width:768px){.container{max-width:750px}.col-sm-1,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-10,.col-sm-11{float:left}.col-sm-1{width:8.333333333333332%}.col-sm-2{width:16.666666666666664%}.col-sm-3{width:25%}.col-sm-4{width:33.33333333333333%}.col-sm-5{width:41.66666666666667%}.col-sm-6{width:50%}.col-sm-7{width:58.333333333333336%}.col-sm-8{width:66.66666666666666%}.col-sm-9{width:75%}.col-sm-10{width:83.33333333333334%}.col-sm-11{width:91.66666666666666%}.col-sm-12{width:100%}.col-sm-push-1{left:8.333333333333332%}.col-sm-push-2{left:16.666666666666664%}.col-sm-push-3{left:25%}.col-sm-push-4{left:33.33333333333333%}.col-sm-push-5{left:41.66666666666667%}.col-sm-push-6{left:50%}.col-sm-push-7{left:58.333333333333336%}.col-sm-push-8{left:66.66666666666666%}.col-sm-push-9{left:75%}.col-sm-push-10{left:83.33333333333334%}.col-sm-push-11{left:91.66666666666666%}.col-sm-pull-1{right:8.333333333333332%}.col-sm-pull-2{right:16.666666666666664%}.col-sm-pull-3{right:25%}.col-sm-pull-4{right:33.33333333333333%}.col-sm-pull-5{right:41.66666666666667%}.col-sm-pull-6{right:50%}.col-sm-pull-7{right:58.333333333333336%}.col-sm-pull-8{right:66.66666666666666%}.col-sm-pull-9{right:75%}.col-sm-pull-10{right:83.33333333333334%}.col-sm-pull-11{right:91.66666666666666%}.col-sm-offset-1{margin-left:8.333333333333332%}.col-sm-offset-2{margin-left:16.666666666666664%}.col-sm-offset-3{margin-left:25%}.col-sm-offset-4{margin-left:33.33333333333333%}.col-sm-offset-5{margin-left:41.66666666666667%}.col-sm-offset-6{margin-left:50%}.col-sm-offset-7{margin-left:58.333333333333336%}.col-sm-offset-8{margin-left:66.66666666666666%}.col-sm-offset-9{margin-left:75%}.col-sm-offset-10{margin-left:83.33333333333334%}.col-sm-offset-11{margin-left:91.66666666666666%}}@media(min-width:992px){.container{max-width:970px}.col-md-1,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-10,.col-md-11{float:left}.col-md-1{width:8.333333333333332%}.col-md-2{width:16.666666666666664%}.col-md-3{width:25%}.col-md-4{width:33.33333333333333%}.col-md-5{width:41.66666666666667%}.col-md-6{width:50%}.col-md-7{width:58.333333333333336%}.col-md-8{width:66.66666666666666%}.col-md-9{width:75%}.col-md-10{width:83.33333333333334%}.col-md-11{width:91.66666666666666%}.col-md-12{width:100%}.col-md-push-0{left:auto}.col-md-push-1{left:8.333333333333332%}.col-md-push-2{left:16.666666666666664%}.col-md-push-3{left:25%}.col-md-push-4{left:33.33333333333333%}.col-md-push-5{left:41.66666666666667%}.col-md-push-6{left:50%}.col-md-push-7{left:58.333333333333336%}.col-md-push-8{left:66.66666666666666%}.col-md-push-9{left:75%}.col-md-push-10{left:83.33333333333334%}.col-md-push-11{left:91.66666666666666%}.col-md-pull-0{right:auto}.col-md-pull-1{right:8.333333333333332%}.col-md-pull-2{right:16.666666666666664%}.col-md-pull-3{right:25%}.col-md-pull-4{right:33.33333333333333%}.col-md-pull-5{right:41.66666666666667%}.col-md-pull-6{right:50%}.col-md-pull-7{right:58.333333333333336%}.col-md-pull-8{right:66.66666666666666%}.col-md-pull-9{right:75%}.col-md-pull-10{right:83.33333333333334%}.col-md-pull-11{right:91.66666666666666%}.col-md-offset-0{margin-left:0}.col-md-offset-1{margin-left:8.333333333333332%}.col-md-offset-2{margin-left:16.666666666666664%}.col-md-offset-3{margin-left:25%}.col-md-offset-4{margin-left:33.33333333333333%}.col-md-offset-5{margin-left:41.66666666666667%}.col-md-offset-6{margin-left:50%}.col-md-offset-7{margin-left:58.333333333333336%}.col-md-offset-8{margin-left:66.66666666666666%}.col-md-offset-9{margin-left:75%}.col-md-offset-10{margin-left:83.33333333333334%}.col-md-offset-11{margin-left:91.66666666666666%}}@media(min-width:1200px){.container{max-width:1170px}.col-lg-1,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-10,.col-lg-11{float:left}.col-lg-1{width:8.333333333333332%}.col-lg-2{width:16.666666666666664%}.col-lg-3{width:25%}.col-lg-4{width:33.33333333333333%}.col-lg-5{width:41.66666666666667%}.col-lg-6{width:50%}.col-lg-7{width:58.333333333333336%}.col-lg-8{width:66.66666666666666%}.col-lg-9{width:75%}.col-lg-10{width:83.33333333333334%}.col-lg-11{width:91.66666666666666%}.col-lg-12{width:100%}.col-lg-push-0{left:auto}.col-lg-push-1{left:8.333333333333332%}.col-lg-push-2{left:16.666666666666664%}.col-lg-push-3{left:25%}.col-lg-push-4{left:33.33333333333333%}.col-lg-push-5{left:41.66666666666667%}.col-lg-push-6{left:50%}.col-lg-push-7{left:58.333333333333336%}.col-lg-push-8{left:66.66666666666666%}.col-lg-push-9{left:75%}.col-lg-push-10{left:83.33333333333334%}.col-lg-push-11{left:91.66666666666666%}.col-lg-pull-0{right:auto}.col-lg-pull-1{right:8.333333333333332%}.col-lg-pull-2{right:16.666666666666664%}.col-lg-pull-3{right:25%}.col-lg-pull-4{right:33.33333333333333%}.col-lg-pull-5{right:41.66666666666667%}.col-lg-pull-6{right:50%}.col-lg-pull-7{right:58.333333333333336%}.col-lg-pull-8{right:66.66666666666666%}.col-lg-pull-9{right:75%}.col-lg-pull-10{right:83.33333333333334%}.col-lg-pull-11{right:91.66666666666666%}.col-lg-offset-0{margin-left:0}.col-lg-offset-1{margin-left:8.333333333333332%}.col-lg-offset-2{margin-left:16.666666666666664%}.col-lg-offset-3{margin-left:25%}.col-lg-offset-4{margin-left:33.33333333333333%}.col-lg-offset-5{margin-left:41.66666666666667%}.col-lg-offset-6{margin-left:50%}.col-lg-offset-7{margin-left:58.333333333333336%}.col-lg-offset-8{margin-left:66.66666666666666%}.col-lg-offset-9{margin-left:75%}.col-lg-offset-10{margin-left:83.33333333333334%}.col-lg-offset-11{margin-left:91.66666666666666%}}table{max-width:100%;background-color:transparent}th{text-align:left}.table{width:100%;margin-bottom:20px}.table thead>tr>th,.table tbody>tr>th,.table tfoot>tr>th,.table thead>tr>td,.table tbody>tr>td,.table tfoot>tr>td{padding:8px;line-height:1.428571429;vertical-align:top;border-top:1px solid #ddd}.table thead>tr>th{vertical-align:bottom;border-bottom:2px solid #ddd}.table caption+thead tr:first-child th,.table colgroup+thead tr:first-child th,.table thead:first-child tr:first-child th,.table caption+thead tr:first-child td,.table colgroup+thead tr:first-child td,.table thead:first-child tr:first-child td{border-top:0}.table tbody+tbody{border-top:2px solid #ddd}.table .table{background-color:#fff}.table-condensed thead>tr>th,.table-condensed tbody>tr>th,.table-condensed tfoot>tr>th,.table-condensed thead>tr>td,.table-condensed tbody>tr>td,.table-condensed tfoot>tr>td{padding:5px}.table-bordered{border:1px solid #ddd}.table-bordered>thead>tr>th,.table-bordered>tbody>tr>th,.table-bordered>tfoot>tr>th,.table-bordered>thead>tr>td,.table-bordered>tbody>tr>td,.table-bordered>tfoot>tr>td{border:1px solid #ddd}.table-bordered>thead>tr>th,.table-bordered>thead>tr>td{border-bottom-width:2px}.table-striped>tbody>tr:nth-child(odd)>td,.table-striped>tbody>tr:nth-child(odd)>th{background-color:#f9f9f9}.table-hover>tbody>tr:hover>td,.table-hover>tbody>tr:hover>th{background-color:#f5f5f5}table col[class*="col-"]{display:table-column;float:none}table td[class*="col-"],table th[class*="col-"]{display:table-cell;float:none}.table>thead>tr>td.active,.table>tbody>tr>td.active,.table>tfoot>tr>td.active,.table>thead>tr>th.active,.table>tbody>tr>th.active,.table>tfoot>tr>th.active,.table>thead>tr.active>td,.table>tbody>tr.active>td,.table>tfoot>tr.active>td,.table>thead>tr.active>th,.table>tbody>tr.active>th,.table>tfoot>tr.active>th{background-color:#f5f5f5}.table>thead>tr>td.success,.table>tbody>tr>td.success,.table>tfoot>tr>td.success,.table>thead>tr>th.success,.table>tbody>tr>th.success,.table>tfoot>tr>th.success,.table>thead>tr.success>td,.table>tbody>tr.success>td,.table>tfoot>tr.success>td,.table>thead>tr.success>th,.table>tbody>tr.success>th,.table>tfoot>tr.success>th{background-color:#dff0d8;border-color:#d6e9c6}.table-hover>tbody>tr>td.success:hover,.table-hover>tbody>tr>th.success:hover,.table-hover>tbody>tr.success:hover>td{background-color:#d0e9c6;border-color:#c9e2b3}.table>thead>tr>td.danger,.table>tbody>tr>td.danger,.table>tfoot>tr>td.danger,.table>thead>tr>th.danger,.table>tbody>tr>th.danger,.table>tfoot>tr>th.danger,.table>thead>tr.danger>td,.table>tbody>tr.danger>td,.table>tfoot>tr.danger>td,.table>thead>tr.danger>th,.table>tbody>tr.danger>th,.table>tfoot>tr.danger>th{background-color:#f2dede;border-color:#eed3d7}.table-hover>tbody>tr>td.danger:hover,.table-hover>tbody>tr>th.danger:hover,.table-hover>tbody>tr.danger:hover>td{background-color:#ebcccc;border-color:#e6c1c7}.table>thead>tr>td.warning,.table>tbody>tr>td.warning,.table>tfoot>tr>td.warning,.table>thead>tr>th.warning,.table>tbody>tr>th.warning,.table>tfoot>tr>th.warning,.table>thead>tr.warning>td,.table>tbody>tr.warning>td,.table>tfoot>tr.warning>td,.table>thead>tr.warning>th,.table>tbody>tr.warning>th,.table>tfoot>tr.warning>th{background-color:#fcf8e3;border-color:#fbeed5}.table-hover>tbody>tr>td.warning:hover,.table-hover>tbody>tr>th.warning:hover,.table-hover>tbody>tr.warning:hover>td{background-color:#faf2cc;border-color:#f8e5be}@media(max-width:768px){.table-responsive{width:100%;margin-bottom:15px;overflow-x:scroll;overflow-y:hidden;border:1px solid #ddd}.table-responsive>.table{margin-bottom:0;background-color:#fff}.table-responsive>.table>thead>tr>th,.table-responsive>.table>tbody>tr>th,.table-responsive>.table>tfoot>tr>th,.table-responsive>.table>thead>tr>td,.table-responsive>.table>tbody>tr>td,.table-responsive>.table>tfoot>tr>td{white-space:nowrap}.table-responsive>.table-bordered{border:0}.table-responsive>.table-bordered>thead>tr>th:first-child,.table-responsive>.table-bordered>tbody>tr>th:first-child,.table-responsive>.table-bordered>tfoot>tr>th:first-child,.table-responsive>.table-bordered>thead>tr>td:first-child,.table-responsive>.table-bordered>tbody>tr>td:first-child,.table-responsive>.table-bordered>tfoot>tr>td:first-child{border-left:0}.table-responsive>.table-bordered>thead>tr>th:last-child,.table-responsive>.table-bordered>tbody>tr>th:last-child,.table-responsive>.table-bordered>tfoot>tr>th:last-child,.table-responsive>.table-bordered>thead>tr>td:last-child,.table-responsive>.table-bordered>tbody>tr>td:last-child,.table-responsive>.table-bordered>tfoot>tr>td:last-child{border-right:0}.table-responsive>.table-bordered>thead>tr:last-child>th,.table-responsive>.table-bordered>tbody>tr:last-child>th,.table-responsive>.table-bordered>tfoot>tr:last-child>th,.table-responsive>.table-bordered>thead>tr:last-child>td,.table-responsive>.table-bordered>tbody>tr:last-child>td,.table-responsive>.table-bordered>tfoot>tr:last-child>td{border-bottom:0}}fieldset{padding:0;margin:0;border:0}legend{display:block;width:100%;padding:0;margin-bottom:20px;font-size:21px;line-height:inherit;color:#333;border:0;border-bottom:1px solid #e5e5e5}label{display:inline-block;margin-bottom:5px;font-weight:bold}input[type="search"]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}input[type="radio"],input[type="checkbox"]{margin:4px 0 0;margin-top:1px \9;line-height:normal}input[type="file"]{display:block}select[multiple],select[size]{height:auto}select optgroup{font-family:inherit;font-size:inherit;font-style:inherit}input[type="file"]:focus,input[type="radio"]:focus,input[type="checkbox"]:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}input[type="number"]::-webkit-outer-spin-button,input[type="number"]::-webkit-inner-spin-button{height:auto}.form-control:-moz-placeholder{color:#999}.form-control::-moz-placeholder{color:#999}.form-control:-ms-input-placeholder{color:#999}.form-control::-webkit-input-placeholder{color:#999}.form-control{display:block;width:100%;height:34px;padding:6px 12px;font-size:14px;line-height:1.428571429;color:#555;vertical-align:middle;background-color:#fff;border:1px solid #ccc;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-webkit-transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s;transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s}.form-control:focus{border-color:#66afe9;outline:0;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(102,175,233,0.6);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(102,175,233,0.6)}.form-control[disabled],.form-control[readonly],fieldset[disabled] .form-control{cursor:not-allowed;background-color:#eee}textarea.form-control{height:auto}.form-group{margin-bottom:15px}.radio,.checkbox{display:block;min-height:20px;padding-left:20px;margin-top:10px;margin-bottom:10px;vertical-align:middle}.radio label,.checkbox label{display:inline;margin-bottom:0;font-weight:normal;cursor:pointer}.radio input[type="radio"],.radio-inline input[type="radio"],.checkbox input[type="checkbox"],.checkbox-inline input[type="checkbox"]{float:left;margin-left:-20px}.radio+.radio,.checkbox+.checkbox{margin-top:-5px}.radio-inline,.checkbox-inline{display:inline-block;padding-left:20px;margin-bottom:0;font-weight:normal;vertical-align:middle;cursor:pointer}.radio-inline+.radio-inline,.checkbox-inline+.checkbox-inline{margin-top:0;margin-left:10px}input[type="radio"][disabled],input[type="checkbox"][disabled],.radio[disabled],.radio-inline[disabled],.checkbox[disabled],.checkbox-inline[disabled],fieldset[disabled] input[type="radio"],fieldset[disabled] input[type="checkbox"],fieldset[disabled] .radio,fieldset[disabled] .radio-inline,fieldset[disabled] .checkbox,fieldset[disabled] .checkbox-inline{cursor:not-allowed}.input-sm{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}select.input-sm{height:30px;line-height:30px}textarea.input-sm{height:auto}.input-lg{height:45px;padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}select.input-lg{height:45px;line-height:45px}textarea.input-lg{height:auto}.has-warning .help-block,.has-warning .control-label{color:#c09853}.has-warning .form-control{border-color:#c09853;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.has-warning .form-control:focus{border-color:#a47e3c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e}.has-warning .input-group-addon{color:#c09853;background-color:#fcf8e3;border-color:#c09853}.has-error .help-block,.has-error .control-label{color:#b94a48}.has-error .form-control{border-color:#b94a48;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.has-error .form-control:focus{border-color:#953b39;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392}.has-error .input-group-addon{color:#b94a48;background-color:#f2dede;border-color:#b94a48}.has-success .help-block,.has-success .control-label{color:#468847}.has-success .form-control{border-color:#468847;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.has-success .form-control:focus{border-color:#356635;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b}.has-success .input-group-addon{color:#468847;background-color:#dff0d8;border-color:#468847}.form-control-static{padding-top:7px;margin-bottom:0}.help-block{display:block;margin-top:5px;margin-bottom:10px;color:#737373}@media(min-width:768px){.form-inline .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.form-inline .form-control{display:inline-block}.form-inline .radio,.form-inline .checkbox{display:inline-block;padding-left:0;margin-top:0;margin-bottom:0}.form-inline .radio input[type="radio"],.form-inline .checkbox input[type="checkbox"]{float:none;margin-left:0}}.form-horizontal .control-label,.form-horizontal .radio,.form-horizontal .checkbox,.form-horizontal .radio-inline,.form-horizontal .checkbox-inline{padding-top:7px;margin-top:0;margin-bottom:0}.form-horizontal .form-group{margin-right:-15px;margin-left:-15px}.form-horizontal .form-group:before,.form-horizontal .form-group:after{display:table;content:" "}.form-horizontal .form-group:after{clear:both}.form-horizontal .form-group:before,.form-horizontal .form-group:after{display:table;content:" "}.form-horizontal .form-group:after{clear:both}@media(min-width:768px){.form-horizontal .control-label{text-align:right}}.btn{display:inline-block;padding:6px 12px;margin-bottom:0;font-size:14px;font-weight:normal;line-height:1.428571429;text-align:center;white-space:nowrap;vertical-align:middle;cursor:pointer;border:1px solid transparent;border-radius:4px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none}.btn:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.btn:hover,.btn:focus{color:#333;text-decoration:none}.btn:active,.btn.active{background-image:none;outline:0;-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,0.125);box-shadow:inset 0 3px 5px rgba(0,0,0,0.125)}.btn.disabled,.btn[disabled],fieldset[disabled] .btn{pointer-events:none;cursor:not-allowed;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;box-shadow:none}.btn-default{color:#333;background-color:#fff;border-color:#ccc}.btn-default:hover,.btn-default:focus,.btn-default:active,.btn-default.active,.open .dropdown-toggle.btn-default{color:#333;background-color:#ebebeb;border-color:#adadad}.btn-default:active,.btn-default.active,.open .dropdown-toggle.btn-default{background-image:none}.btn-default.disabled,.btn-default[disabled],fieldset[disabled] .btn-default,.btn-default.disabled:hover,.btn-default[disabled]:hover,fieldset[disabled] .btn-default:hover,.btn-default.disabled:focus,.btn-default[disabled]:focus,fieldset[disabled] .btn-default:focus,.btn-default.disabled:active,.btn-default[disabled]:active,fieldset[disabled] .btn-default:active,.btn-default.disabled.active,.btn-default[disabled].active,fieldset[disabled] .btn-default.active{background-color:#fff;border-color:#ccc}.btn-primary{color:#fff;background-color:#428bca;border-color:#357ebd}.btn-primary:hover,.btn-primary:focus,.btn-primary:active,.btn-primary.active,.open .dropdown-toggle.btn-primary{color:#fff;background-color:#3276b1;border-color:#285e8e}.btn-primary:active,.btn-primary.active,.open .dropdown-toggle.btn-primary{background-image:none}.btn-primary.disabled,.btn-primary[disabled],fieldset[disabled] .btn-primary,.btn-primary.disabled:hover,.btn-primary[disabled]:hover,fieldset[disabled] .btn-primary:hover,.btn-primary.disabled:focus,.btn-primary[disabled]:focus,fieldset[disabled] .btn-primary:focus,.btn-primary.disabled:active,.btn-primary[disabled]:active,fieldset[disabled] .btn-primary:active,.btn-primary.disabled.active,.btn-primary[disabled].active,fieldset[disabled] .btn-primary.active{background-color:#428bca;border-color:#357ebd}.btn-warning{color:#fff;background-color:#f0ad4e;border-color:#eea236}.btn-warning:hover,.btn-warning:focus,.btn-warning:active,.btn-warning.active,.open .dropdown-toggle.btn-warning{color:#fff;background-color:#ed9c28;border-color:#d58512}.btn-warning:active,.btn-warning.active,.open .dropdown-toggle.btn-warning{background-image:none}.btn-warning.disabled,.btn-warning[disabled],fieldset[disabled] .btn-warning,.btn-warning.disabled:hover,.btn-warning[disabled]:hover,fieldset[disabled] .btn-warning:hover,.btn-warning.disabled:focus,.btn-warning[disabled]:focus,fieldset[disabled] .btn-warning:focus,.btn-warning.disabled:active,.btn-warning[disabled]:active,fieldset[disabled] .btn-warning:active,.btn-warning.disabled.active,.btn-warning[disabled].active,fieldset[disabled] .btn-warning.active{background-color:#f0ad4e;border-color:#eea236}.btn-danger{color:#fff;background-color:#d9534f;border-color:#d43f3a}.btn-danger:hover,.btn-danger:focus,.btn-danger:active,.btn-danger.active,.open .dropdown-toggle.btn-danger{color:#fff;background-color:#d2322d;border-color:#ac2925}.btn-danger:active,.btn-danger.active,.open .dropdown-toggle.btn-danger{background-image:none}.btn-danger.disabled,.btn-danger[disabled],fieldset[disabled] .btn-danger,.btn-danger.disabled:hover,.btn-danger[disabled]:hover,fieldset[disabled] .btn-danger:hover,.btn-danger.disabled:focus,.btn-danger[disabled]:focus,fieldset[disabled] .btn-danger:focus,.btn-danger.disabled:active,.btn-danger[disabled]:active,fieldset[disabled] .btn-danger:active,.btn-danger.disabled.active,.btn-danger[disabled].active,fieldset[disabled] .btn-danger.active{background-color:#d9534f;border-color:#d43f3a}.btn-success{color:#fff;background-color:#5cb85c;border-color:#4cae4c}.btn-success:hover,.btn-success:focus,.btn-success:active,.btn-success.active,.open .dropdown-toggle.btn-success{color:#fff;background-color:#47a447;border-color:#398439}.btn-success:active,.btn-success.active,.open .dropdown-toggle.btn-success{background-image:none}.btn-success.disabled,.btn-success[disabled],fieldset[disabled] .btn-success,.btn-success.disabled:hover,.btn-success[disabled]:hover,fieldset[disabled] .btn-success:hover,.btn-success.disabled:focus,.btn-success[disabled]:focus,fieldset[disabled] .btn-success:focus,.btn-success.disabled:active,.btn-success[disabled]:active,fieldset[disabled] .btn-success:active,.btn-success.disabled.active,.btn-success[disabled].active,fieldset[disabled] .btn-success.active{background-color:#5cb85c;border-color:#4cae4c}.btn-info{color:#fff;background-color:#5bc0de;border-color:#46b8da}.btn-info:hover,.btn-info:focus,.btn-info:active,.btn-info.active,.open .dropdown-toggle.btn-info{color:#fff;background-color:#39b3d7;border-color:#269abc}.btn-info:active,.btn-info.active,.open .dropdown-toggle.btn-info{background-image:none}.btn-info.disabled,.btn-info[disabled],fieldset[disabled] .btn-info,.btn-info.disabled:hover,.btn-info[disabled]:hover,fieldset[disabled] .btn-info:hover,.btn-info.disabled:focus,.btn-info[disabled]:focus,fieldset[disabled] .btn-info:focus,.btn-info.disabled:active,.btn-info[disabled]:active,fieldset[disabled] .btn-info:active,.btn-info.disabled.active,.btn-info[disabled].active,fieldset[disabled] .btn-info.active{background-color:#5bc0de;border-color:#46b8da}.btn-link{font-weight:normal;color:#428bca;cursor:pointer;border-radius:0}.btn-link,.btn-link:active,.btn-link[disabled],fieldset[disabled] .btn-link{background-color:transparent;-webkit-box-shadow:none;box-shadow:none}.btn-link,.btn-link:hover,.btn-link:focus,.btn-link:active{border-color:transparent}.btn-link:hover,.btn-link:focus{color:#2a6496;text-decoration:underline;background-color:transparent}.btn-link[disabled]:hover,fieldset[disabled] .btn-link:hover,.btn-link[disabled]:focus,fieldset[disabled] .btn-link:focus{color:#999;text-decoration:none}.btn-lg{padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.btn-sm,.btn-xs{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.btn-xs{padding:1px 5px}.btn-block{display:block;width:100%;padding-right:0;padding-left:0}.btn-block+.btn-block{margin-top:5px}input[type="submit"].btn-block,input[type="reset"].btn-block,input[type="button"].btn-block{width:100%}.fade{opacity:0;-webkit-transition:opacity .15s linear;transition:opacity .15s linear}.fade.in{opacity:1}.collapse{display:none}.collapse.in{display:block}.collapsing{position:relative;height:0;overflow:hidden;-webkit-transition:height .35s ease;transition:height .35s ease}@font-face{font-family:'Glyphicons Halflings';src:url('../fonts/glyphicons-halflings-regular.eot');src:url('../fonts/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'),url('../fonts/glyphicons-halflings-regular.woff') format('woff'),url('../fonts/glyphicons-halflings-regular.ttf') format('truetype'),url('../fonts/glyphicons-halflings-regular.svg#glyphicons-halflingsregular') format('svg')}.glyphicon{position:relative;top:1px;display:inline-block;font-family:'Glyphicons Halflings';-webkit-font-smoothing:antialiased;font-style:normal;font-weight:normal;line-height:1}.glyphicon-asterisk:before{content:"\2a"}.glyphicon-plus:before{content:"\2b"}.glyphicon-euro:before{content:"\20ac"}.glyphicon-minus:before{content:"\2212"}.glyphicon-cloud:before{content:"\2601"}.glyphicon-envelope:before{content:"\2709"}.glyphicon-pencil:before{content:"\270f"}.glyphicon-glass:before{content:"\e001"}.glyphicon-music:before{content:"\e002"}.glyphicon-search:before{content:"\e003"}.glyphicon-heart:before{content:"\e005"}.glyphicon-star:before{content:"\e006"}.glyphicon-star-empty:before{content:"\e007"}.glyphicon-user:before{content:"\e008"}.glyphicon-film:before{content:"\e009"}.glyphicon-th-large:before{content:"\e010"}.glyphicon-th:before{content:"\e011"}.glyphicon-th-list:before{content:"\e012"}.glyphicon-ok:before{content:"\e013"}.glyphicon-remove:before{content:"\e014"}.glyphicon-zoom-in:before{content:"\e015"}.glyphicon-zoom-out:before{content:"\e016"}.glyphicon-off:before{content:"\e017"}.glyphicon-signal:before{content:"\e018"}.glyphicon-cog:before{content:"\e019"}.glyphicon-trash:before{content:"\e020"}.glyphicon-home:before{content:"\e021"}.glyphicon-file:before{content:"\e022"}.glyphicon-time:before{content:"\e023"}.glyphicon-road:before{content:"\e024"}.glyphicon-download-alt:before{content:"\e025"}.glyphicon-download:before{content:"\e026"}.glyphicon-upload:before{content:"\e027"}.glyphicon-inbox:before{content:"\e028"}.glyphicon-play-circle:before{content:"\e029"}.glyphicon-repeat:before{content:"\e030"}.glyphicon-refresh:before{content:"\e031"}.glyphicon-list-alt:before{content:"\e032"}.glyphicon-flag:before{content:"\e034"}.glyphicon-headphones:before{content:"\e035"}.glyphicon-volume-off:before{content:"\e036"}.glyphicon-volume-down:before{content:"\e037"}.glyphicon-volume-up:before{content:"\e038"}.glyphicon-qrcode:before{content:"\e039"}.glyphicon-barcode:before{content:"\e040"}.glyphicon-tag:before{content:"\e041"}.glyphicon-tags:before{content:"\e042"}.glyphicon-book:before{content:"\e043"}.glyphicon-print:before{content:"\e045"}.glyphicon-font:before{content:"\e047"}.glyphicon-bold:before{content:"\e048"}.glyphicon-italic:before{content:"\e049"}.glyphicon-text-height:before{content:"\e050"}.glyphicon-text-width:before{content:"\e051"}.glyphicon-align-left:before{content:"\e052"}.glyphicon-align-center:before{content:"\e053"}.glyphicon-align-right:before{content:"\e054"}.glyphicon-align-justify:before{content:"\e055"}.glyphicon-list:before{content:"\e056"}.glyphicon-indent-left:before{content:"\e057"}.glyphicon-indent-right:before{content:"\e058"}.glyphicon-facetime-video:before{content:"\e059"}.glyphicon-picture:before{content:"\e060"}.glyphicon-map-marker:before{content:"\e062"}.glyphicon-adjust:before{content:"\e063"}.glyphicon-tint:before{content:"\e064"}.glyphicon-edit:before{content:"\e065"}.glyphicon-share:before{content:"\e066"}.glyphicon-check:before{content:"\e067"}.glyphicon-move:before{content:"\e068"}.glyphicon-step-backward:before{content:"\e069"}.glyphicon-fast-backward:before{content:"\e070"}.glyphicon-backward:before{content:"\e071"}.glyphicon-play:before{content:"\e072"}.glyphicon-pause:before{content:"\e073"}.glyphicon-stop:before{content:"\e074"}.glyphicon-forward:before{content:"\e075"}.glyphicon-fast-forward:before{content:"\e076"}.glyphicon-step-forward:before{content:"\e077"}.glyphicon-eject:before{content:"\e078"}.glyphicon-chevron-left:before{content:"\e079"}.glyphicon-chevron-right:before{content:"\e080"}.glyphicon-plus-sign:before{content:"\e081"}.glyphicon-minus-sign:before{content:"\e082"}.glyphicon-remove-sign:before{content:"\e083"}.glyphicon-ok-sign:before{content:"\e084"}.glyphicon-question-sign:before{content:"\e085"}.glyphicon-info-sign:before{content:"\e086"}.glyphicon-screenshot:before{content:"\e087"}.glyphicon-remove-circle:before{content:"\e088"}.glyphicon-ok-circle:before{content:"\e089"}.glyphicon-ban-circle:before{content:"\e090"}.glyphicon-arrow-left:before{content:"\e091"}.glyphicon-arrow-right:before{content:"\e092"}.glyphicon-arrow-up:before{content:"\e093"}.glyphicon-arrow-down:before{content:"\e094"}.glyphicon-share-alt:before{content:"\e095"}.glyphicon-resize-full:before{content:"\e096"}.glyphicon-resize-small:before{content:"\e097"}.glyphicon-exclamation-sign:before{content:"\e101"}.glyphicon-gift:before{content:"\e102"}.glyphicon-leaf:before{content:"\e103"}.glyphicon-eye-open:before{content:"\e105"}.glyphicon-eye-close:before{content:"\e106"}.glyphicon-warning-sign:before{content:"\e107"}.glyphicon-plane:before{content:"\e108"}.glyphicon-random:before{content:"\e110"}.glyphicon-comment:before{content:"\e111"}.glyphicon-magnet:before{content:"\e112"}.glyphicon-chevron-up:before{content:"\e113"}.glyphicon-chevron-down:before{content:"\e114"}.glyphicon-retweet:before{content:"\e115"}.glyphicon-shopping-cart:before{content:"\e116"}.glyphicon-folder-close:before{content:"\e117"}.glyphicon-folder-open:before{content:"\e118"}.glyphicon-resize-vertical:before{content:"\e119"}.glyphicon-resize-horizontal:before{content:"\e120"}.glyphicon-hdd:before{content:"\e121"}.glyphicon-bullhorn:before{content:"\e122"}.glyphicon-certificate:before{content:"\e124"}.glyphicon-thumbs-up:before{content:"\e125"}.glyphicon-thumbs-down:before{content:"\e126"}.glyphicon-hand-right:before{content:"\e127"}.glyphicon-hand-left:before{content:"\e128"}.glyphicon-hand-up:before{content:"\e129"}.glyphicon-hand-down:before{content:"\e130"}.glyphicon-circle-arrow-right:before{content:"\e131"}.glyphicon-circle-arrow-left:before{content:"\e132"}.glyphicon-circle-arrow-up:before{content:"\e133"}.glyphicon-circle-arrow-down:before{content:"\e134"}.glyphicon-globe:before{content:"\e135"}.glyphicon-tasks:before{content:"\e137"}.glyphicon-filter:before{content:"\e138"}.glyphicon-fullscreen:before{content:"\e140"}.glyphicon-dashboard:before{content:"\e141"}.glyphicon-heart-empty:before{content:"\e143"}.glyphicon-link:before{content:"\e144"}.glyphicon-phone:before{content:"\e145"}.glyphicon-usd:before{content:"\e148"}.glyphicon-gbp:before{content:"\e149"}.glyphicon-sort:before{content:"\e150"}.glyphicon-sort-by-alphabet:before{content:"\e151"}.glyphicon-sort-by-alphabet-alt:before{content:"\e152"}.glyphicon-sort-by-order:before{content:"\e153"}.glyphicon-sort-by-order-alt:before{content:"\e154"}.glyphicon-sort-by-attributes:before{content:"\e155"}.glyphicon-sort-by-attributes-alt:before{content:"\e156"}.glyphicon-unchecked:before{content:"\e157"}.glyphicon-expand:before{content:"\e158"}.glyphicon-collapse-down:before{content:"\e159"}.glyphicon-collapse-up:before{content:"\e160"}.glyphicon-log-in:before{content:"\e161"}.glyphicon-flash:before{content:"\e162"}.glyphicon-log-out:before{content:"\e163"}.glyphicon-new-window:before{content:"\e164"}.glyphicon-record:before{content:"\e165"}.glyphicon-save:before{content:"\e166"}.glyphicon-open:before{content:"\e167"}.glyphicon-saved:before{content:"\e168"}.glyphicon-import:before{content:"\e169"}.glyphicon-export:before{content:"\e170"}.glyphicon-send:before{content:"\e171"}.glyphicon-floppy-disk:before{content:"\e172"}.glyphicon-floppy-saved:before{content:"\e173"}.glyphicon-floppy-remove:before{content:"\e174"}.glyphicon-floppy-save:before{content:"\e175"}.glyphicon-floppy-open:before{content:"\e176"}.glyphicon-credit-card:before{content:"\e177"}.glyphicon-transfer:before{content:"\e178"}.glyphicon-cutlery:before{content:"\e179"}.glyphicon-header:before{content:"\e180"}.glyphicon-compressed:before{content:"\e181"}.glyphicon-earphone:before{content:"\e182"}.glyphicon-phone-alt:before{content:"\e183"}.glyphicon-tower:before{content:"\e184"}.glyphicon-stats:before{content:"\e185"}.glyphicon-sd-video:before{content:"\e186"}.glyphicon-hd-video:before{content:"\e187"}.glyphicon-subtitles:before{content:"\e188"}.glyphicon-sound-stereo:before{content:"\e189"}.glyphicon-sound-dolby:before{content:"\e190"}.glyphicon-sound-5-1:before{content:"\e191"}.glyphicon-sound-6-1:before{content:"\e192"}.glyphicon-sound-7-1:before{content:"\e193"}.glyphicon-copyright-mark:before{content:"\e194"}.glyphicon-registration-mark:before{content:"\e195"}.glyphicon-cloud-download:before{content:"\e197"}.glyphicon-cloud-upload:before{content:"\e198"}.glyphicon-tree-conifer:before{content:"\e199"}.glyphicon-tree-deciduous:before{content:"\e200"}.glyphicon-briefcase:before{content:"\1f4bc"}.glyphicon-calendar:before{content:"\1f4c5"}.glyphicon-pushpin:before{content:"\1f4cc"}.glyphicon-paperclip:before{content:"\1f4ce"}.glyphicon-camera:before{content:"\1f4f7"}.glyphicon-lock:before{content:"\1f512"}.glyphicon-bell:before{content:"\1f514"}.glyphicon-bookmark:before{content:"\1f516"}.glyphicon-fire:before{content:"\1f525"}.glyphicon-wrench:before{content:"\1f527"}.caret{display:inline-block;width:0;height:0;margin-left:2px;vertical-align:middle;border-top:4px solid #000;border-right:4px solid transparent;border-bottom:0 dotted;border-left:4px solid transparent;content:""}.dropdown{position:relative}.dropdown-toggle:focus{outline:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:160px;padding:5px 0;margin:2px 0 0;font-size:14px;list-style:none;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.15);border-radius:4px;-webkit-box-shadow:0 6px 12px rgba(0,0,0,0.175);box-shadow:0 6px 12px rgba(0,0,0,0.175);background-clip:padding-box}.dropdown-menu.pull-right{right:0;left:auto}.dropdown-menu .divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.dropdown-menu>li>a{display:block;padding:3px 20px;clear:both;font-weight:normal;line-height:1.428571429;color:#333;white-space:nowrap}.dropdown-menu>li>a:hover,.dropdown-menu>li>a:focus{color:#fff;text-decoration:none;background-color:#428bca}.dropdown-menu>.active>a,.dropdown-menu>.active>a:hover,.dropdown-menu>.active>a:focus{color:#fff;text-decoration:none;background-color:#428bca;outline:0}.dropdown-menu>.disabled>a,.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus{color:#999}.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus{text-decoration:none;cursor:not-allowed;background-color:transparent;background-image:none;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.open>.dropdown-menu{display:block}.open>a{outline:0}.dropdown-header{display:block;padding:3px 20px;font-size:12px;line-height:1.428571429;color:#999}.dropdown-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:990}.pull-right>.dropdown-menu{right:0;left:auto}.dropup .caret,.navbar-fixed-bottom .dropdown .caret{border-top:0 dotted;border-bottom:4px solid #000;content:""}.dropup .dropdown-menu,.navbar-fixed-bottom .dropdown .dropdown-menu{top:auto;bottom:100%;margin-bottom:1px}@media(min-width:768px){.navbar-right .dropdown-menu{right:0;left:auto}}.btn-default .caret{border-top-color:#333}.btn-primary .caret,.btn-success .caret,.btn-warning .caret,.btn-danger .caret,.btn-info .caret{border-top-color:#fff}.dropup .btn-default .caret{border-bottom-color:#333}.dropup .btn-primary .caret,.dropup .btn-success .caret,.dropup .btn-warning .caret,.dropup .btn-danger .caret,.dropup .btn-info .caret{border-bottom-color:#fff}.btn-group,.btn-group-vertical{position:relative;display:inline-block;vertical-align:middle}.btn-group>.btn,.btn-group-vertical>.btn{position:relative;float:left}.btn-group>.btn:hover,.btn-group-vertical>.btn:hover,.btn-group>.btn:focus,.btn-group-vertical>.btn:focus,.btn-group>.btn:active,.btn-group-vertical>.btn:active,.btn-group>.btn.active,.btn-group-vertical>.btn.active{z-index:2}.btn-group>.btn:focus,.btn-group-vertical>.btn:focus{outline:0}.btn-group .btn+.btn,.btn-group .btn+.btn-group,.btn-group .btn-group+.btn,.btn-group .btn-group+.btn-group{margin-left:-1px}.btn-toolbar:before,.btn-toolbar:after{display:table;content:" "}.btn-toolbar:after{clear:both}.btn-toolbar:before,.btn-toolbar:after{display:table;content:" "}.btn-toolbar:after{clear:both}.btn-toolbar .btn-group{float:left}.btn-toolbar>.btn+.btn,.btn-toolbar>.btn-group+.btn,.btn-toolbar>.btn+.btn-group,.btn-toolbar>.btn-group+.btn-group{margin-left:5px}.btn-group>.btn:not(:first-child):not(:last-child):not(.dropdown-toggle){border-radius:0}.btn-group>.btn:first-child{margin-left:0}.btn-group>.btn:first-child:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn:last-child:not(:first-child),.btn-group>.dropdown-toggle:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.btn-group>.btn-group{float:left}.btn-group>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group>.btn-group:first-child>.btn:last-child,.btn-group>.btn-group:first-child>.dropdown-toggle{border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn-group:last-child>.btn:first-child{border-bottom-left-radius:0;border-top-left-radius:0}.btn-group .dropdown-toggle:active,.btn-group.open .dropdown-toggle{outline:0}.btn-group-xs>.btn{padding:5px 10px;padding:1px 5px;font-size:12px;line-height:1.5;border-radius:3px}.btn-group-sm>.btn{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.btn-group-lg>.btn{padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.btn-group>.btn+.dropdown-toggle{padding-right:8px;padding-left:8px}.btn-group>.btn-lg+.dropdown-toggle{padding-right:12px;padding-left:12px}.btn-group.open .dropdown-toggle{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,0.125);box-shadow:inset 0 3px 5px rgba(0,0,0,0.125)}.btn .caret{margin-left:0}.btn-lg .caret{border-width:5px 5px 0;border-bottom-width:0}.dropup .btn-lg .caret{border-width:0 5px 5px}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group{display:block;float:none;width:100%;max-width:100%}.btn-group-vertical>.btn-group:before,.btn-group-vertical>.btn-group:after{display:table;content:" "}.btn-group-vertical>.btn-group:after{clear:both}.btn-group-vertical>.btn-group:before,.btn-group-vertical>.btn-group:after{display:table;content:" "}.btn-group-vertical>.btn-group:after{clear:both}.btn-group-vertical>.btn-group>.btn{float:none}.btn-group-vertical>.btn+.btn,.btn-group-vertical>.btn+.btn-group,.btn-group-vertical>.btn-group+.btn,.btn-group-vertical>.btn-group+.btn-group{margin-top:-1px;margin-left:0}.btn-group-vertical>.btn:not(:first-child):not(:last-child){border-radius:0}.btn-group-vertical>.btn:first-child:not(:last-child){border-top-right-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn:last-child:not(:first-child){border-top-right-radius:0;border-bottom-left-radius:4px;border-top-left-radius:0}.btn-group-vertical>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group-vertical>.btn-group:first-child>.btn:last-child,.btn-group-vertical>.btn-group:first-child>.dropdown-toggle{border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:last-child>.btn:first-child{border-top-right-radius:0;border-top-left-radius:0}.btn-group-justified{display:table;width:100%;border-collapse:separate;table-layout:fixed}.btn-group-justified .btn{display:table-cell;float:none;width:1%}[data-toggle="buttons"]>.btn>input[type="radio"],[data-toggle="buttons"]>.btn>input[type="checkbox"]{display:none}.input-group{position:relative;display:table;border-collapse:separate}.input-group.col{float:none;padding-right:0;padding-left:0}.input-group .form-control{width:100%;margin-bottom:0}.input-group-lg>.form-control,.input-group-lg>.input-group-addon,.input-group-lg>.input-group-btn>.btn{height:45px;padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}select.input-group-lg>.form-control,select.input-group-lg>.input-group-addon,select.input-group-lg>.input-group-btn>.btn{height:45px;line-height:45px}textarea.input-group-lg>.form-control,textarea.input-group-lg>.input-group-addon,textarea.input-group-lg>.input-group-btn>.btn{height:auto}.input-group-sm>.form-control,.input-group-sm>.input-group-addon,.input-group-sm>.input-group-btn>.btn{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}select.input-group-sm>.form-control,select.input-group-sm>.input-group-addon,select.input-group-sm>.input-group-btn>.btn{height:30px;line-height:30px}textarea.input-group-sm>.form-control,textarea.input-group-sm>.input-group-addon,textarea.input-group-sm>.input-group-btn>.btn{height:auto}.input-group-addon,.input-group-btn,.input-group .form-control{display:table-cell}.input-group-addon:not(:first-child):not(:last-child),.input-group-btn:not(:first-child):not(:last-child),.input-group .form-control:not(:first-child):not(:last-child){border-radius:0}.input-group-addon,.input-group-btn{width:1%;white-space:nowrap;vertical-align:middle}.input-group-addon{padding:6px 12px;font-size:14px;font-weight:normal;line-height:1;text-align:center;background-color:#eee;border:1px solid #ccc;border-radius:4px}.input-group-addon.input-sm{padding:5px 10px;font-size:12px;border-radius:3px}.input-group-addon.input-lg{padding:10px 16px;font-size:18px;border-radius:6px}.input-group-addon input[type="radio"],.input-group-addon input[type="checkbox"]{margin-top:0}.input-group .form-control:first-child,.input-group-addon:first-child,.input-group-btn:first-child>.btn,.input-group-btn:first-child>.dropdown-toggle,.input-group-btn:last-child>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.input-group-addon:first-child{border-right:0}.input-group .form-control:last-child,.input-group-addon:last-child,.input-group-btn:last-child>.btn,.input-group-btn:last-child>.dropdown-toggle,.input-group-btn:first-child>.btn:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.input-group-addon:last-child{border-left:0}.input-group-btn{position:relative;white-space:nowrap}.input-group-btn>.btn{position:relative}.input-group-btn>.btn+.btn{margin-left:-4px}.input-group-btn>.btn:hover,.input-group-btn>.btn:active{z-index:2}.nav{padding-left:0;margin-bottom:0;list-style:none}.nav:before,.nav:after{display:table;content:" "}.nav:after{clear:both}.nav:before,.nav:after{display:table;content:" "}.nav:after{clear:both}.nav>li{position:relative;display:block}.nav>li>a{position:relative;display:block;padding:10px 15px}.nav>li>a:hover,.nav>li>a:focus{text-decoration:none;background-color:#eee}.nav>li.disabled>a{color:#999}.nav>li.disabled>a:hover,.nav>li.disabled>a:focus{color:#999;text-decoration:none;cursor:not-allowed;background-color:transparent}.nav .open>a,.nav .open>a:hover,.nav .open>a:focus{background-color:#eee;border-color:#428bca}.nav .nav-divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.nav>li>a>img{max-width:none}.nav-tabs{border-bottom:1px solid #ddd}.nav-tabs>li{float:left;margin-bottom:-1px}.nav-tabs>li>a{margin-right:2px;line-height:1.428571429;border:1px solid transparent;border-radius:4px 4px 0 0}.nav-tabs>li>a:hover{border-color:#eee #eee #ddd}.nav-tabs>li.active>a,.nav-tabs>li.active>a:hover,.nav-tabs>li.active>a:focus{color:#555;cursor:default;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent}.nav-tabs.nav-justified{width:100%;border-bottom:0}.nav-tabs.nav-justified>li{float:none}.nav-tabs.nav-justified>li>a{text-align:center}@media(min-width:768px){.nav-tabs.nav-justified>li{display:table-cell;width:1%}}.nav-tabs.nav-justified>li>a{margin-right:0;border-bottom:1px solid #ddd}.nav-tabs.nav-justified>.active>a{border-bottom-color:#fff}.nav-pills>li{float:left}.nav-pills>li>a{border-radius:5px}.nav-pills>li+li{margin-left:2px}.nav-pills>li.active>a,.nav-pills>li.active>a:hover,.nav-pills>li.active>a:focus{color:#fff;background-color:#428bca}.nav-stacked>li{float:none}.nav-stacked>li+li{margin-top:2px;margin-left:0}.nav-justified{width:100%}.nav-justified>li{float:none}.nav-justified>li>a{text-align:center}@media(min-width:768px){.nav-justified>li{display:table-cell;width:1%}}.nav-tabs-justified{border-bottom:0}.nav-tabs-justified>li>a{margin-right:0;border-bottom:1px solid #ddd}.nav-tabs-justified>.active>a{border-bottom-color:#fff}.tabbable:before,.tabbable:after{display:table;content:" "}.tabbable:after{clear:both}.tabbable:before,.tabbable:after{display:table;content:" "}.tabbable:after{clear:both}.tab-content>.tab-pane,.pill-content>.pill-pane{display:none}.tab-content>.active,.pill-content>.active{display:block}.nav .caret{border-top-color:#428bca;border-bottom-color:#428bca}.nav a:hover .caret{border-top-color:#2a6496;border-bottom-color:#2a6496}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-right-radius:0;border-top-left-radius:0}.navbar{position:relative;z-index:1000;min-height:50px;margin-bottom:20px;border:1px solid transparent}.navbar:before,.navbar:after{display:table;content:" "}.navbar:after{clear:both}.navbar:before,.navbar:after{display:table;content:" "}.navbar:after{clear:both}@media(min-width:768px){.navbar{border-radius:4px}}.navbar-header:before,.navbar-header:after{display:table;content:" "}.navbar-header:after{clear:both}.navbar-header:before,.navbar-header:after{display:table;content:" "}.navbar-header:after{clear:both}@media(min-width:768px){.navbar-header{float:left}}.navbar-collapse{max-height:340px;padding-right:15px;padding-left:15px;overflow-x:visible;border-top:1px solid transparent;box-shadow:inset 0 1px 0 rgba(255,255,255,0.1);-webkit-overflow-scrolling:touch}.navbar-collapse:before,.navbar-collapse:after{display:table;content:" "}.navbar-collapse:after{clear:both}.navbar-collapse:before,.navbar-collapse:after{display:table;content:" "}.navbar-collapse:after{clear:both}.navbar-collapse.in{overflow-y:auto}@media(min-width:768px){.navbar-collapse{width:auto;border-top:0;box-shadow:none}.navbar-collapse.collapse{display:block!important;height:auto!important;padding-bottom:0;overflow:visible!important}.navbar-collapse.in{overflow-y:visible}.navbar-collapse .navbar-nav.navbar-left:first-child{margin-left:-15px}.navbar-collapse .navbar-nav.navbar-right:last-child{margin-right:-15px}.navbar-collapse .navbar-text:last-child{margin-right:0}}.container>.navbar-header,.container>.navbar-collapse{margin-right:-15px;margin-left:-15px}@media(min-width:768px){.container>.navbar-header,.container>.navbar-collapse{margin-right:0;margin-left:0}}.navbar-static-top{border-width:0 0 1px}@media(min-width:768px){.navbar-static-top{border-radius:0}}.navbar-fixed-top,.navbar-fixed-bottom{position:fixed;right:0;left:0;border-width:0 0 1px}@media(min-width:768px){.navbar-fixed-top,.navbar-fixed-bottom{border-radius:0}}.navbar-fixed-top{top:0;z-index:1030}.navbar-fixed-bottom{bottom:0;margin-bottom:0}.navbar-brand{float:left;padding:15px 15px;font-size:18px;line-height:20px}.navbar-brand:hover,.navbar-brand:focus{text-decoration:none}@media(min-width:768px){.navbar>.container .navbar-brand{margin-left:-15px}}.navbar-toggle{position:relative;float:right;padding:9px 10px;margin-top:8px;margin-right:15px;margin-bottom:8px;background-color:transparent;border:1px solid transparent;border-radius:4px}.navbar-toggle .icon-bar{display:block;width:22px;height:2px;border-radius:1px}.navbar-toggle .icon-bar+.icon-bar{margin-top:4px}@media(min-width:768px){.navbar-toggle{display:none}}.navbar-nav{margin:7.5px -15px}.navbar-nav>li>a{padding-top:10px;padding-bottom:10px;line-height:20px}@media(max-width:767px){.navbar-nav .open .dropdown-menu{position:static;float:none;width:auto;margin-top:0;background-color:transparent;border:0;box-shadow:none}.navbar-nav .open .dropdown-menu>li>a,.navbar-nav .open .dropdown-menu .dropdown-header{padding:5px 15px 5px 25px}.navbar-nav .open .dropdown-menu>li>a{line-height:20px}.navbar-nav .open .dropdown-menu>li>a:hover,.navbar-nav .open .dropdown-menu>li>a:focus{background-image:none}}@media(min-width:768px){.navbar-nav{float:left;margin:0}.navbar-nav>li{float:left}.navbar-nav>li>a{padding-top:15px;padding-bottom:15px}}@media(min-width:768px){.navbar-left{float:left!important}.navbar-right{float:right!important}}.navbar-form{padding:10px 15px;margin-top:8px;margin-right:-15px;margin-bottom:8px;margin-left:-15px;border-top:1px solid transparent;border-bottom:1px solid transparent;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.1);box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.1)}@media(min-width:768px){.navbar-form .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.navbar-form .form-control{display:inline-block}.navbar-form .radio,.navbar-form .checkbox{display:inline-block;padding-left:0;margin-top:0;margin-bottom:0}.navbar-form .radio input[type="radio"],.navbar-form .checkbox input[type="checkbox"]{float:none;margin-left:0}}@media(max-width:767px){.navbar-form .form-group{margin-bottom:5px}}@media(min-width:768px){.navbar-form{width:auto;padding-top:0;padding-bottom:0;margin-right:0;margin-left:0;border:0;-webkit-box-shadow:none;box-shadow:none}}.navbar-nav>li>.dropdown-menu{margin-top:0;border-top-right-radius:0;border-top-left-radius:0}.navbar-fixed-bottom .navbar-nav>li>.dropdown-menu{border-bottom-right-radius:0;border-bottom-left-radius:0}.navbar-nav.pull-right>li>.dropdown-menu,.navbar-nav>li>.dropdown-menu.pull-right{right:0;left:auto}.navbar-btn{margin-top:8px;margin-bottom:8px}.navbar-text{float:left;margin-top:15px;margin-bottom:15px}@media(min-width:768px){.navbar-text{margin-right:15px;margin-left:15px}}.navbar-default{background-color:#f8f8f8;border-color:#e7e7e7}.navbar-default .navbar-brand{color:#777}.navbar-default .navbar-brand:hover,.navbar-default .navbar-brand:focus{color:#5e5e5e;background-color:transparent}.navbar-default .navbar-text{color:#777}.navbar-default .navbar-nav>li>a{color:#777}.navbar-default .navbar-nav>li>a:hover,.navbar-default .navbar-nav>li>a:focus{color:#333;background-color:transparent}.navbar-default .navbar-nav>.active>a,.navbar-default .navbar-nav>.active>a:hover,.navbar-default .navbar-nav>.active>a:focus{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav>.disabled>a,.navbar-default .navbar-nav>.disabled>a:hover,.navbar-default .navbar-nav>.disabled>a:focus{color:#ccc;background-color:transparent}.navbar-default .navbar-toggle{border-color:#ddd}.navbar-default .navbar-toggle:hover,.navbar-default .navbar-toggle:focus{background-color:#ddd}.navbar-default .navbar-toggle .icon-bar{background-color:#ccc}.navbar-default .navbar-collapse,.navbar-default .navbar-form{border-color:#e6e6e6}.navbar-default .navbar-nav>.dropdown>a:hover .caret,.navbar-default .navbar-nav>.dropdown>a:focus .caret{border-top-color:#333;border-bottom-color:#333}.navbar-default .navbar-nav>.open>a,.navbar-default .navbar-nav>.open>a:hover,.navbar-default .navbar-nav>.open>a:focus{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav>.open>a .caret,.navbar-default .navbar-nav>.open>a:hover .caret,.navbar-default .navbar-nav>.open>a:focus .caret{border-top-color:#555;border-bottom-color:#555}.navbar-default .navbar-nav>.dropdown>a .caret{border-top-color:#777;border-bottom-color:#777}@media(max-width:767px){.navbar-default .navbar-nav .open .dropdown-menu>li>a{color:#777}.navbar-default .navbar-nav .open .dropdown-menu>li>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>li>a:focus{color:#333;background-color:transparent}.navbar-default .navbar-nav .open .dropdown-menu>.active>a,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:focus{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:focus{color:#ccc;background-color:transparent}}.navbar-default .navbar-link{color:#777}.navbar-default .navbar-link:hover{color:#333}.navbar-inverse{background-color:#222;border-color:#080808}.navbar-inverse .navbar-brand{color:#999}.navbar-inverse .navbar-brand:hover,.navbar-inverse .navbar-brand:focus{color:#fff;background-color:transparent}.navbar-inverse .navbar-text{color:#999}.navbar-inverse .navbar-nav>li>a{color:#999}.navbar-inverse .navbar-nav>li>a:hover,.navbar-inverse .navbar-nav>li>a:focus{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav>.active>a,.navbar-inverse .navbar-nav>.active>a:hover,.navbar-inverse .navbar-nav>.active>a:focus{color:#fff;background-color:#080808}.navbar-inverse .navbar-nav>.disabled>a,.navbar-inverse .navbar-nav>.disabled>a:hover,.navbar-inverse .navbar-nav>.disabled>a:focus{color:#444;background-color:transparent}.navbar-inverse .navbar-toggle{border-color:#333}.navbar-inverse .navbar-toggle:hover,.navbar-inverse .navbar-toggle:focus{background-color:#333}.navbar-inverse .navbar-toggle .icon-bar{background-color:#fff}.navbar-inverse .navbar-collapse,.navbar-inverse .navbar-form{border-color:#101010}.navbar-inverse .navbar-nav>.open>a,.navbar-inverse .navbar-nav>.open>a:hover,.navbar-inverse .navbar-nav>.open>a:focus{color:#fff;background-color:#080808}.navbar-inverse .navbar-nav>.dropdown>a:hover .caret{border-top-color:#fff;border-bottom-color:#fff}.navbar-inverse .navbar-nav>.dropdown>a .caret{border-top-color:#999;border-bottom-color:#999}.navbar-inverse .navbar-nav>.open>a .caret,.navbar-inverse .navbar-nav>.open>a:hover .caret,.navbar-inverse .navbar-nav>.open>a:focus .caret{border-top-color:#fff;border-bottom-color:#fff}@media(max-width:767px){.navbar-inverse .navbar-nav .open .dropdown-menu>.dropdown-header{border-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a{color:#999}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:focus{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:focus{color:#fff;background-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:focus{color:#444;background-color:transparent}}.navbar-inverse .navbar-link{color:#999}.navbar-inverse .navbar-link:hover{color:#fff}.breadcrumb{padding:8px 15px;margin-bottom:20px;list-style:none;background-color:#f5f5f5;border-radius:4px}.breadcrumb>li{display:inline-block}.breadcrumb>li+li:before{padding:0 5px;color:#ccc;content:"/\00a0"}.breadcrumb>.active{color:#999}.pagination{display:inline-block;padding-left:0;margin:20px 0;border-radius:4px}.pagination>li{display:inline}.pagination>li>a,.pagination>li>span{position:relative;float:left;padding:6px 12px;margin-left:-1px;line-height:1.428571429;text-decoration:none;background-color:#fff;border:1px solid #ddd}.pagination>li:first-child>a,.pagination>li:first-child>span{margin-left:0;border-bottom-left-radius:4px;border-top-left-radius:4px}.pagination>li:last-child>a,.pagination>li:last-child>span{border-top-right-radius:4px;border-bottom-right-radius:4px}.pagination>li>a:hover,.pagination>li>span:hover,.pagination>li>a:focus,.pagination>li>span:focus{background-color:#eee}.pagination>.active>a,.pagination>.active>span,.pagination>.active>a:hover,.pagination>.active>span:hover,.pagination>.active>a:focus,.pagination>.active>span:focus{z-index:2;color:#fff;cursor:default;background-color:#428bca;border-color:#428bca}.pagination>.disabled>span,.pagination>.disabled>a,.pagination>.disabled>a:hover,.pagination>.disabled>a:focus{color:#999;cursor:not-allowed;background-color:#fff;border-color:#ddd}.pagination-lg>li>a,.pagination-lg>li>span{padding:10px 16px;font-size:18px}.pagination-lg>li:first-child>a,.pagination-lg>li:first-child>span{border-bottom-left-radius:6px;border-top-left-radius:6px}.pagination-lg>li:last-child>a,.pagination-lg>li:last-child>span{border-top-right-radius:6px;border-bottom-right-radius:6px}.pagination-sm>li>a,.pagination-sm>li>span{padding:5px 10px;font-size:12px}.pagination-sm>li:first-child>a,.pagination-sm>li:first-child>span{border-bottom-left-radius:3px;border-top-left-radius:3px}.pagination-sm>li:last-child>a,.pagination-sm>li:last-child>span{border-top-right-radius:3px;border-bottom-right-radius:3px}.pager{padding-left:0;margin:20px 0;text-align:center;list-style:none}.pager:before,.pager:after{display:table;content:" "}.pager:after{clear:both}.pager:before,.pager:after{display:table;content:" "}.pager:after{clear:both}.pager li{display:inline}.pager li>a,.pager li>span{display:inline-block;padding:5px 14px;background-color:#fff;border:1px solid #ddd;border-radius:15px}.pager li>a:hover,.pager li>a:focus{text-decoration:none;background-color:#eee}.pager .next>a,.pager .next>span{float:right}.pager .previous>a,.pager .previous>span{float:left}.pager .disabled>a,.pager .disabled>a:hover,.pager .disabled>a:focus,.pager .disabled>span{color:#999;cursor:not-allowed;background-color:#fff}.label{display:inline;padding:.2em .6em .3em;font-size:75%;font-weight:bold;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25em}.label[href]:hover,.label[href]:focus{color:#fff;text-decoration:none;cursor:pointer}.label:empty{display:none}.label-default{background-color:#999}.label-default[href]:hover,.label-default[href]:focus{background-color:#808080}.label-primary{background-color:#428bca}.label-primary[href]:hover,.label-primary[href]:focus{background-color:#3071a9}.label-success{background-color:#5cb85c}.label-success[href]:hover,.label-success[href]:focus{background-color:#449d44}.label-info{background-color:#5bc0de}.label-info[href]:hover,.label-info[href]:focus{background-color:#31b0d5}.label-warning{background-color:#f0ad4e}.label-warning[href]:hover,.label-warning[href]:focus{background-color:#ec971f}.label-danger{background-color:#d9534f}.label-danger[href]:hover,.label-danger[href]:focus{background-color:#c9302c}.badge{display:inline-block;min-width:10px;padding:3px 7px;font-size:12px;font-weight:bold;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;background-color:#999;border-radius:10px}.badge:empty{display:none}a.badge:hover,a.badge:focus{color:#fff;text-decoration:none;cursor:pointer}.btn .badge{position:relative;top:-1px}a.list-group-item.active>.badge,.nav-pills>.active>a>.badge{color:#428bca;background-color:#fff}.nav-pills>li>a>.badge{margin-left:3px}.jumbotron{padding:30px;margin-bottom:30px;font-size:21px;font-weight:200;line-height:2.1428571435;color:inherit;background-color:#eee}.jumbotron h1{line-height:1;color:inherit}.jumbotron p{line-height:1.4}.container .jumbotron{border-radius:6px}@media screen and (min-width:768px){.jumbotron{padding-top:48px;padding-bottom:48px}.container .jumbotron{padding-right:60px;padding-left:60px}.jumbotron h1{font-size:63px}}.thumbnail{display:inline-block;display:block;height:auto;max-width:100%;padding:4px;line-height:1.428571429;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.thumbnail>img{display:block;height:auto;max-width:100%}a.thumbnail:hover,a.thumbnail:focus{border-color:#428bca}.thumbnail>img{margin-right:auto;margin-left:auto}.thumbnail .caption{padding:9px;color:#333}.alert{padding:15px;margin-bottom:20px;border:1px solid transparent;border-radius:4px}.alert h4{margin-top:0;color:inherit}.alert .alert-link{font-weight:bold}.alert>p,.alert>ul{margin-bottom:0}.alert>p+p{margin-top:5px}.alert-dismissable{padding-right:35px}.alert-dismissable .close{position:relative;top:-2px;right:-21px;color:inherit}.alert-success{color:#468847;background-color:#dff0d8;border-color:#d6e9c6}.alert-success hr{border-top-color:#c9e2b3}.alert-success .alert-link{color:#356635}.alert-info{color:#3a87ad;background-color:#d9edf7;border-color:#bce8f1}.alert-info hr{border-top-color:#a6e1ec}.alert-info .alert-link{color:#2d6987}.alert-warning{color:#c09853;background-color:#fcf8e3;border-color:#fbeed5}.alert-warning hr{border-top-color:#f8e5be}.alert-warning .alert-link{color:#a47e3c}.alert-danger{color:#b94a48;background-color:#f2dede;border-color:#eed3d7}.alert-danger hr{border-top-color:#e6c1c7}.alert-danger .alert-link{color:#953b39}@-webkit-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-moz-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-o-keyframes progress-bar-stripes{from{background-position:0 0}to{background-position:40px 0}}@keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}.progress{height:20px;margin-bottom:20px;overflow:hidden;background-color:#f5f5f5;border-radius:4px;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);box-shadow:inset 0 1px 2px rgba(0,0,0,0.1)}.progress-bar{float:left;width:0;height:100%;font-size:12px;color:#fff;text-align:center;background-color:#428bca;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);-webkit-transition:width .6s ease;transition:width .6s ease}.progress-striped .progress-bar{background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-size:40px 40px}.progress.active .progress-bar{-webkit-animation:progress-bar-stripes 2s linear infinite;-moz-animation:progress-bar-stripes 2s linear infinite;-ms-animation:progress-bar-stripes 2s linear infinite;-o-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.progress-bar-success{background-color:#5cb85c}.progress-striped .progress-bar-success{background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.progress-bar-info{background-color:#5bc0de}.progress-striped .progress-bar-info{background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.progress-bar-warning{background-color:#f0ad4e}.progress-striped .progress-bar-warning{background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.progress-bar-danger{background-color:#d9534f}.progress-striped .progress-bar-danger{background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.media,.media-body{overflow:hidden;zoom:1}.media,.media .media{margin-top:15px}.media:first-child{margin-top:0}.media-object{display:block}.media-heading{margin:0 0 5px}.media>.pull-left{margin-right:10px}.media>.pull-right{margin-left:10px}.media-list{padding-left:0;list-style:none}.list-group{padding-left:0;margin-bottom:20px}.list-group-item{position:relative;display:block;padding:10px 15px;margin-bottom:-1px;background-color:#fff;border:1px solid #ddd}.list-group-item:first-child{border-top-right-radius:4px;border-top-left-radius:4px}.list-group-item:last-child{margin-bottom:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.list-group-item>.badge{float:right}.list-group-item>.badge+.badge{margin-right:5px}a.list-group-item{color:#555}a.list-group-item .list-group-item-heading{color:#333}a.list-group-item:hover,a.list-group-item:focus{text-decoration:none;background-color:#f5f5f5}.list-group-item.active,.list-group-item.active:hover,.list-group-item.active:focus{z-index:2;color:#fff;background-color:#428bca;border-color:#428bca}.list-group-item.active .list-group-item-heading,.list-group-item.active:hover .list-group-item-heading,.list-group-item.active:focus .list-group-item-heading{color:inherit}.list-group-item.active .list-group-item-text,.list-group-item.active:hover .list-group-item-text,.list-group-item.active:focus .list-group-item-text{color:#e1edf7}.list-group-item-heading{margin-top:0;margin-bottom:5px}.list-group-item-text{margin-bottom:0;line-height:1.3}.panel{margin-bottom:20px;background-color:#fff;border:1px solid transparent;border-radius:4px;-webkit-box-shadow:0 1px 1px rgba(0,0,0,0.05);box-shadow:0 1px 1px rgba(0,0,0,0.05)}.panel-body{padding:15px}.panel-body:before,.panel-body:after{display:table;content:" "}.panel-body:after{clear:both}.panel-body:before,.panel-body:after{display:table;content:" "}.panel-body:after{clear:both}.panel>.list-group{margin-bottom:0}.panel>.list-group .list-group-item{border-width:1px 0}.panel>.list-group .list-group-item:first-child{border-top-right-radius:0;border-top-left-radius:0}.panel>.list-group .list-group-item:last-child{border-bottom:0}.panel-heading+.list-group .list-group-item:first-child{border-top-width:0}.panel>.table{margin-bottom:0}.panel>.panel-body+.table{border-top:1px solid #ddd}.panel-heading{padding:10px 15px;border-bottom:1px solid transparent;border-top-right-radius:3px;border-top-left-radius:3px}.panel-title{margin-top:0;margin-bottom:0;font-size:16px}.panel-title>a{color:inherit}.panel-footer{padding:10px 15px;background-color:#f5f5f5;border-top:1px solid #ddd;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel-group .panel{margin-bottom:0;overflow:hidden;border-radius:4px}.panel-group .panel+.panel{margin-top:5px}.panel-group .panel-heading{border-bottom:0}.panel-group .panel-heading+.panel-collapse .panel-body{border-top:1px solid #ddd}.panel-group .panel-footer{border-top:0}.panel-group .panel-footer+.panel-collapse .panel-body{border-bottom:1px solid #ddd}.panel-default{border-color:#ddd}.panel-default>.panel-heading{color:#333;background-color:#f5f5f5;border-color:#ddd}.panel-default>.panel-heading+.panel-collapse .panel-body{border-top-color:#ddd}.panel-default>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#ddd}.panel-primary{border-color:#428bca}.panel-primary>.panel-heading{color:#fff;background-color:#428bca;border-color:#428bca}.panel-primary>.panel-heading+.panel-collapse .panel-body{border-top-color:#428bca}.panel-primary>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#428bca}.panel-success{border-color:#d6e9c6}.panel-success>.panel-heading{color:#468847;background-color:#dff0d8;border-color:#d6e9c6}.panel-success>.panel-heading+.panel-collapse .panel-body{border-top-color:#d6e9c6}.panel-success>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#d6e9c6}.panel-warning{border-color:#fbeed5}.panel-warning>.panel-heading{color:#c09853;background-color:#fcf8e3;border-color:#fbeed5}.panel-warning>.panel-heading+.panel-collapse .panel-body{border-top-color:#fbeed5}.panel-warning>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#fbeed5}.panel-danger{border-color:#eed3d7}.panel-danger>.panel-heading{color:#b94a48;background-color:#f2dede;border-color:#eed3d7}.panel-danger>.panel-heading+.panel-collapse .panel-body{border-top-color:#eed3d7}.panel-danger>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#eed3d7}.panel-info{border-color:#bce8f1}.panel-info>.panel-heading{color:#3a87ad;background-color:#d9edf7;border-color:#bce8f1}.panel-info>.panel-heading+.panel-collapse .panel-body{border-top-color:#bce8f1}.panel-info>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#bce8f1}.well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05)}.well blockquote{border-color:#ddd;border-color:rgba(0,0,0,0.15)}.well-lg{padding:24px;border-radius:6px}.well-sm{padding:9px;border-radius:3px}.close{float:right;font-size:21px;font-weight:bold;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.2;filter:alpha(opacity=20)}.close:hover,.close:focus{color:#000;text-decoration:none;cursor:pointer;opacity:.5;filter:alpha(opacity=50)}button.close{padding:0;cursor:pointer;background:transparent;border:0;-webkit-appearance:none}.modal-open{overflow:hidden}body.modal-open,.modal-open .navbar-fixed-top,.modal-open .navbar-fixed-bottom{margin-right:15px}.modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;display:none;overflow:auto;overflow-y:scroll}.modal.fade .modal-dialog{-webkit-transform:translate(0,-25%);-ms-transform:translate(0,-25%);transform:translate(0,-25%);-webkit-transition:-webkit-transform .3s ease-out;-moz-transition:-moz-transform .3s ease-out;-o-transition:-o-transform .3s ease-out;transition:transform .3s ease-out}.modal.in .modal-dialog{-webkit-transform:translate(0,0);-ms-transform:translate(0,0);transform:translate(0,0)}.modal-dialog{z-index:1050;width:auto;padding:10px;margin-right:auto;margin-left:auto}.modal-content{position:relative;background-color:#fff;border:1px solid #999;border:1px solid rgba(0,0,0,0.2);border-radius:6px;outline:0;-webkit-box-shadow:0 3px 9px rgba(0,0,0,0.5);box-shadow:0 3px 9px rgba(0,0,0,0.5);background-clip:padding-box}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1030;background-color:#000}.modal-backdrop.fade{opacity:0;filter:alpha(opacity=0)}.modal-backdrop.in{opacity:.5;filter:alpha(opacity=50)}.modal-header{min-height:16.428571429px;padding:15px;border-bottom:1px solid #e5e5e5}.modal-header .close{margin-top:-2px}.modal-title{margin:0;line-height:1.428571429}.modal-body{position:relative;padding:20px}.modal-footer{padding:19px 20px 20px;margin-top:15px;text-align:right;border-top:1px solid #e5e5e5}.modal-footer:before,.modal-footer:after{display:table;content:" "}.modal-footer:after{clear:both}.modal-footer:before,.modal-footer:after{display:table;content:" "}.modal-footer:after{clear:both}.modal-footer .btn+.btn{margin-bottom:0;margin-left:5px}.modal-footer .btn-group .btn+.btn{margin-left:-1px}.modal-footer .btn-block+.btn-block{margin-left:0}@media screen and (min-width:768px){.modal-dialog{right:auto;left:50%;width:600px;padding-top:30px;padding-bottom:30px}.modal-content{-webkit-box-shadow:0 5px 15px rgba(0,0,0,0.5);box-shadow:0 5px 15px rgba(0,0,0,0.5)}}.tooltip{position:absolute;z-index:1030;display:block;font-size:12px;line-height:1.4;opacity:0;filter:alpha(opacity=0);visibility:visible}.tooltip.in{opacity:.9;filter:alpha(opacity=90)}.tooltip.top{padding:5px 0;margin-top:-3px}.tooltip.right{padding:0 5px;margin-left:3px}.tooltip.bottom{padding:5px 0;margin-top:3px}.tooltip.left{padding:0 5px;margin-left:-3px}.tooltip-inner{max-width:200px;padding:3px 8px;color:#fff;text-align:center;text-decoration:none;background-color:#000;border-radius:4px}.tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-top-color:#000;border-width:5px 5px 0}.tooltip.top-left .tooltip-arrow{bottom:0;left:5px;border-top-color:#000;border-width:5px 5px 0}.tooltip.top-right .tooltip-arrow{right:5px;bottom:0;border-top-color:#000;border-width:5px 5px 0}.tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-right-color:#000;border-width:5px 5px 5px 0}.tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-left-color:#000;border-width:5px 0 5px 5px}.tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-bottom-color:#000;border-width:0 5px 5px}.tooltip.bottom-left .tooltip-arrow{top:0;left:5px;border-bottom-color:#000;border-width:0 5px 5px}.tooltip.bottom-right .tooltip-arrow{top:0;right:5px;border-bottom-color:#000;border-width:0 5px 5px}.popover{position:absolute;top:0;left:0;z-index:1010;display:none;max-width:276px;padding:1px;text-align:left;white-space:normal;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.2);border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,0.2);box-shadow:0 5px 10px rgba(0,0,0,0.2);background-clip:padding-box}.popover.top{margin-top:-10px}.popover.right{margin-left:10px}.popover.bottom{margin-top:10px}.popover.left{margin-left:-10px}.popover-title{padding:8px 14px;margin:0;font-size:14px;font-weight:normal;line-height:18px;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-radius:5px 5px 0 0}.popover-content{padding:9px 14px}.popover .arrow,.popover .arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.popover .arrow{border-width:11px}.popover .arrow:after{border-width:10px;content:""}.popover.top .arrow{bottom:-11px;left:50%;margin-left:-11px;border-top-color:#999;border-top-color:rgba(0,0,0,0.25);border-bottom-width:0}.popover.top .arrow:after{bottom:1px;margin-left:-10px;border-top-color:#fff;border-bottom-width:0;content:" "}.popover.right .arrow{top:50%;left:-11px;margin-top:-11px;border-right-color:#999;border-right-color:rgba(0,0,0,0.25);border-left-width:0}.popover.right .arrow:after{bottom:-10px;left:1px;border-right-color:#fff;border-left-width:0;content:" "}.popover.bottom .arrow{top:-11px;left:50%;margin-left:-11px;border-bottom-color:#999;border-bottom-color:rgba(0,0,0,0.25);border-top-width:0}.popover.bottom .arrow:after{top:1px;margin-left:-10px;border-bottom-color:#fff;border-top-width:0;content:" "}.popover.left .arrow{top:50%;right:-11px;margin-top:-11px;border-left-color:#999;border-left-color:rgba(0,0,0,0.25);border-right-width:0}.popover.left .arrow:after{right:1px;bottom:-10px;border-left-color:#fff;border-right-width:0;content:" "}.carousel{position:relative}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner>.item{position:relative;display:none;-webkit-transition:.6s ease-in-out left;transition:.6s ease-in-out left}.carousel-inner>.item>img,.carousel-inner>.item>a>img{display:block;height:auto;max-width:100%;line-height:1}.carousel-inner>.active,.carousel-inner>.next,.carousel-inner>.prev{display:block}.carousel-inner>.active{left:0}.carousel-inner>.next,.carousel-inner>.prev{position:absolute;top:0;width:100%}.carousel-inner>.next{left:100%}.carousel-inner>.prev{left:-100%}.carousel-inner>.next.left,.carousel-inner>.prev.right{left:0}.carousel-inner>.active.left{left:-100%}.carousel-inner>.active.right{left:100%}.carousel-control{position:absolute;top:0;bottom:0;left:0;width:15%;font-size:20px;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,0.6);opacity:.5;filter:alpha(opacity=50)}.carousel-control.left{background-image:-webkit-gradient(linear,0 top,100% top,from(rgba(0,0,0,0.5)),to(rgba(0,0,0,0.0001)));background-image:-webkit-linear-gradient(left,color-stop(rgba(0,0,0,0.5) 0),color-stop(rgba(0,0,0,0.0001) 100%));background-image:-moz-linear-gradient(left,rgba(0,0,0,0.5) 0,rgba(0,0,0,0.0001) 100%);background-image:linear-gradient(to right,rgba(0,0,0,0.5) 0,rgba(0,0,0,0.0001) 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000',endColorstr='#00000000',GradientType=1)}.carousel-control.right{right:0;left:auto;background-image:-webkit-gradient(linear,0 top,100% top,from(rgba(0,0,0,0.0001)),to(rgba(0,0,0,0.5)));background-image:-webkit-linear-gradient(left,color-stop(rgba(0,0,0,0.0001) 0),color-stop(rgba(0,0,0,0.5) 100%));background-image:-moz-linear-gradient(left,rgba(0,0,0,0.0001) 0,rgba(0,0,0,0.5) 100%);background-image:linear-gradient(to right,rgba(0,0,0,0.0001) 0,rgba(0,0,0,0.5) 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000',endColorstr='#80000000',GradientType=1)}.carousel-control:hover,.carousel-control:focus{color:#fff;text-decoration:none;opacity:.9;filter:alpha(opacity=90)}.carousel-control .icon-prev,.carousel-control .icon-next,.carousel-control .glyphicon-chevron-left,.carousel-control .glyphicon-chevron-right{position:absolute;top:50%;left:50%;z-index:5;display:inline-block}.carousel-control .icon-prev,.carousel-control .icon-next{width:20px;height:20px;margin-top:-10px;margin-left:-10px;font-family:serif}.carousel-control .icon-prev:before{content:'\2039'}.carousel-control .icon-next:before{content:'\203a'}.carousel-indicators{position:absolute;bottom:10px;left:50%;z-index:15;width:60%;padding-left:0;margin-left:-30%;text-align:center;list-style:none}.carousel-indicators li{display:inline-block;width:10px;height:10px;margin:1px;text-indent:-999px;cursor:pointer;border:1px solid #fff;border-radius:10px}.carousel-indicators .active{width:12px;height:12px;margin:0;background-color:#fff}.carousel-caption{position:absolute;right:15%;bottom:20px;left:15%;z-index:10;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,0.6)}.carousel-caption .btn{text-shadow:none}@media screen and (min-width:768px){.carousel-control .icon-prev,.carousel-control .icon-next{width:30px;height:30px;margin-top:-15px;margin-left:-15px;font-size:30px}.carousel-caption{right:20%;left:20%;padding-bottom:30px}.carousel-indicators{bottom:20px}}.clearfix:before,.clearfix:after{display:table;content:" "}.clearfix:after{clear:both}.pull-right{float:right!important}.pull-left{float:left!important}.hide{display:none!important}.show{display:block!important}.invisible{visibility:hidden}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.affix{position:fixed}@-ms-viewport{width:device-width}@media screen and (max-width:400px){@-ms-viewport{width:320px}}.hidden{display:none!important;visibility:hidden!important}.visible-xs{display:none!important}tr.visible-xs{display:none!important}th.visible-xs,td.visible-xs{display:none!important}@media(max-width:767px){.visible-xs{display:block!important}tr.visible-xs{display:table-row!important}th.visible-xs,td.visible-xs{display:table-cell!important}}@media(min-width:768px) and (max-width:991px){.visible-xs.visible-sm{display:block!important}tr.visible-xs.visible-sm{display:table-row!important}th.visible-xs.visible-sm,td.visible-xs.visible-sm{display:table-cell!important}}@media(min-width:992px) and (max-width:1199px){.visible-xs.visible-md{display:block!important}tr.visible-xs.visible-md{display:table-row!important}th.visible-xs.visible-md,td.visible-xs.visible-md{display:table-cell!important}}@media(min-width:1200px){.visible-xs.visible-lg{display:block!important}tr.visible-xs.visible-lg{display:table-row!important}th.visible-xs.visible-lg,td.visible-xs.visible-lg{display:table-cell!important}}.visible-sm{display:none!important}tr.visible-sm{display:none!important}th.visible-sm,td.visible-sm{display:none!important}@media(max-width:767px){.visible-sm.visible-xs{display:block!important}tr.visible-sm.visible-xs{display:table-row!important}th.visible-sm.visible-xs,td.visible-sm.visible-xs{display:table-cell!important}}@media(min-width:768px) and (max-width:991px){.visible-sm{display:block!important}tr.visible-sm{display:table-row!important}th.visible-sm,td.visible-sm{display:table-cell!important}}@media(min-width:992px) and (max-width:1199px){.visible-sm.visible-md{display:block!important}tr.visible-sm.visible-md{display:table-row!important}th.visible-sm.visible-md,td.visible-sm.visible-md{display:table-cell!important}}@media(min-width:1200px){.visible-sm.visible-lg{display:block!important}tr.visible-sm.visible-lg{display:table-row!important}th.visible-sm.visible-lg,td.visible-sm.visible-lg{display:table-cell!important}}.visible-md{display:none!important}tr.visible-md{display:none!important}th.visible-md,td.visible-md{display:none!important}@media(max-width:767px){.visible-md.visible-xs{display:block!important}tr.visible-md.visible-xs{display:table-row!important}th.visible-md.visible-xs,td.visible-md.visible-xs{display:table-cell!important}}@media(min-width:768px) and (max-width:991px){.visible-md.visible-sm{display:block!important}tr.visible-md.visible-sm{display:table-row!important}th.visible-md.visible-sm,td.visible-md.visible-sm{display:table-cell!important}}@media(min-width:992px) and (max-width:1199px){.visible-md{display:block!important}tr.visible-md{display:table-row!important}th.visible-md,td.visible-md{display:table-cell!important}}@media(min-width:1200px){.visible-md.visible-lg{display:block!important}tr.visible-md.visible-lg{display:table-row!important}th.visible-md.visible-lg,td.visible-md.visible-lg{display:table-cell!important}}.visible-lg{display:none!important}tr.visible-lg{display:none!important}th.visible-lg,td.visible-lg{display:none!important}@media(max-width:767px){.visible-lg.visible-xs{display:block!important}tr.visible-lg.visible-xs{display:table-row!important}th.visible-lg.visible-xs,td.visible-lg.visible-xs{display:table-cell!important}}@media(min-width:768px) and (max-width:991px){.visible-lg.visible-sm{display:block!important}tr.visible-lg.visible-sm{display:table-row!important}th.visible-lg.visible-sm,td.visible-lg.visible-sm{display:table-cell!important}}@media(min-width:992px) and (max-width:1199px){.visible-lg.visible-md{display:block!important}tr.visible-lg.visible-md{display:table-row!important}th.visible-lg.visible-md,td.visible-lg.visible-md{display:table-cell!important}}@media(min-width:1200px){.visible-lg{display:block!important}tr.visible-lg{display:table-row!important}th.visible-lg,td.visible-lg{display:table-cell!important}}.hidden-xs{display:block!important}tr.hidden-xs{display:table-row!important}th.hidden-xs,td.hidden-xs{display:table-cell!important}@media(max-width:767px){.hidden-xs{display:none!important}tr.hidden-xs{display:none!important}th.hidden-xs,td.hidden-xs{display:none!important}}@media(min-width:768px) and (max-width:991px){.hidden-xs.hidden-sm{display:none!important}tr.hidden-xs.hidden-sm{display:none!important}th.hidden-xs.hidden-sm,td.hidden-xs.hidden-sm{display:none!important}}@media(min-width:992px) and (max-width:1199px){.hidden-xs.hidden-md{display:none!important}tr.hidden-xs.hidden-md{display:none!important}th.hidden-xs.hidden-md,td.hidden-xs.hidden-md{display:none!important}}@media(min-width:1200px){.hidden-xs.hidden-lg{display:none!important}tr.hidden-xs.hidden-lg{display:none!important}th.hidden-xs.hidden-lg,td.hidden-xs.hidden-lg{display:none!important}}.hidden-sm{display:block!important}tr.hidden-sm{display:table-row!important}th.hidden-sm,td.hidden-sm{display:table-cell!important}@media(max-width:767px){.hidden-sm.hidden-xs{display:none!important}tr.hidden-sm.hidden-xs{display:none!important}th.hidden-sm.hidden-xs,td.hidden-sm.hidden-xs{display:none!important}}@media(min-width:768px) and (max-width:991px){.hidden-sm{display:none!important}tr.hidden-sm{display:none!important}th.hidden-sm,td.hidden-sm{display:none!important}}@media(min-width:992px) and (max-width:1199px){.hidden-sm.hidden-md{display:none!important}tr.hidden-sm.hidden-md{display:none!important}th.hidden-sm.hidden-md,td.hidden-sm.hidden-md{display:none!important}}@media(min-width:1200px){.hidden-sm.hidden-lg{display:none!important}tr.hidden-sm.hidden-lg{display:none!important}th.hidden-sm.hidden-lg,td.hidden-sm.hidden-lg{display:none!important}}.hidden-md{display:block!important}tr.hidden-md{display:table-row!important}th.hidden-md,td.hidden-md{display:table-cell!important}@media(max-width:767px){.hidden-md.hidden-xs{display:none!important}tr.hidden-md.hidden-xs{display:none!important}th.hidden-md.hidden-xs,td.hidden-md.hidden-xs{display:none!important}}@media(min-width:768px) and (max-width:991px){.hidden-md.hidden-sm{display:none!important}tr.hidden-md.hidden-sm{display:none!important}th.hidden-md.hidden-sm,td.hidden-md.hidden-sm{display:none!important}}@media(min-width:992px) and (max-width:1199px){.hidden-md{display:none!important}tr.hidden-md{display:none!important}th.hidden-md,td.hidden-md{display:none!important}}@media(min-width:1200px){.hidden-md.hidden-lg{display:none!important}tr.hidden-md.hidden-lg{display:none!important}th.hidden-md.hidden-lg,td.hidden-md.hidden-lg{display:none!important}}.hidden-lg{display:block!important}tr.hidden-lg{display:table-row!important}th.hidden-lg,td.hidden-lg{display:table-cell!important}@media(max-width:767px){.hidden-lg.hidden-xs{display:none!important}tr.hidden-lg.hidden-xs{display:none!important}th.hidden-lg.hidden-xs,td.hidden-lg.hidden-xs{display:none!important}}@media(min-width:768px) and (max-width:991px){.hidden-lg.hidden-sm{display:none!important}tr.hidden-lg.hidden-sm{display:none!important}th.hidden-lg.hidden-sm,td.hidden-lg.hidden-sm{display:none!important}}@media(min-width:992px) and (max-width:1199px){.hidden-lg.hidden-md{display:none!important}tr.hidden-lg.hidden-md{display:none!important}th.hidden-lg.hidden-md,td.hidden-lg.hidden-md{display:none!important}}@media(min-width:1200px){.hidden-lg{display:none!important}tr.hidden-lg{display:none!important}th.hidden-lg,td.hidden-lg{display:none!important}}.visible-print{display:none!important}tr.visible-print{display:none!important}th.visible-print,td.visible-print{display:none!important}@media print{.visible-print{display:block!important}tr.visible-print{display:table-row!important}th.visible-print,td.visible-print{display:table-cell!important}.hidden-print{display:none!important}tr.hidden-print{display:none!important}th.hidden-print,td.hidden-print{display:none!important}}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
6 |
* http://www.apache.org/licenses/LICENSE-2.0
|
7 |
*
|
8 |
* Designed and built with all the love in the world by @mdo and @fat.
|
9 |
+
*//*! normalize.css v2.1.0 | MIT License | git.io/normalize */
|
10 |
+
article, aside, details, figcaption, figure, footer, header, hgroup, main, nav, section, summary {
|
11 |
+
display: block
|
12 |
+
}
|
13 |
+
|
14 |
+
audio, canvas, video {
|
15 |
+
display: inline-block
|
16 |
+
}
|
17 |
+
|
18 |
+
audio:not([controls]) {
|
19 |
+
display: none;
|
20 |
+
height: 0
|
21 |
+
}
|
22 |
+
|
23 |
+
[hidden] {
|
24 |
+
display: none
|
25 |
+
}
|
26 |
+
|
27 |
+
html {
|
28 |
+
font-family: sans-serif;
|
29 |
+
-webkit-text-size-adjust: 100%;
|
30 |
+
-ms-text-size-adjust: 100%
|
31 |
+
}
|
32 |
+
|
33 |
+
body {
|
34 |
+
margin: 0
|
35 |
+
}
|
36 |
+
|
37 |
+
a:focus {
|
38 |
+
outline: thin dotted
|
39 |
+
}
|
40 |
+
|
41 |
+
a:active, a:hover {
|
42 |
+
outline: 0
|
43 |
+
}
|
44 |
+
|
45 |
+
h1 {
|
46 |
+
margin: .67em 0;
|
47 |
+
font-size: 2em
|
48 |
+
}
|
49 |
+
|
50 |
+
abbr[title] {
|
51 |
+
border-bottom: 1px dotted
|
52 |
+
}
|
53 |
+
|
54 |
+
b, strong {
|
55 |
+
font-weight: bold
|
56 |
+
}
|
57 |
+
|
58 |
+
dfn {
|
59 |
+
font-style: italic
|
60 |
+
}
|
61 |
+
|
62 |
+
hr {
|
63 |
+
height: 0;
|
64 |
+
-moz-box-sizing: content-box;
|
65 |
+
box-sizing: content-box
|
66 |
+
}
|
67 |
+
|
68 |
+
mark {
|
69 |
+
color: #000;
|
70 |
+
background: #ff0
|
71 |
+
}
|
72 |
+
|
73 |
+
code, kbd, pre, samp {
|
74 |
+
font-family: monospace, serif;
|
75 |
+
font-size: 1em
|
76 |
+
}
|
77 |
+
|
78 |
+
pre {
|
79 |
+
white-space: pre-wrap
|
80 |
+
}
|
81 |
+
|
82 |
+
q {
|
83 |
+
quotes: "\201C" "\201D" "\2018" "\2019"
|
84 |
+
}
|
85 |
+
|
86 |
+
small {
|
87 |
+
font-size: 80%
|
88 |
+
}
|
89 |
+
|
90 |
+
sub, sup {
|
91 |
+
position: relative;
|
92 |
+
font-size: 75%;
|
93 |
+
line-height: 0;
|
94 |
+
vertical-align: baseline
|
95 |
+
}
|
96 |
+
|
97 |
+
sup {
|
98 |
+
top: -0.5em
|
99 |
+
}
|
100 |
+
|
101 |
+
sub {
|
102 |
+
bottom: -0.25em
|
103 |
+
}
|
104 |
+
|
105 |
+
img {
|
106 |
+
border: 0
|
107 |
+
}
|
108 |
+
|
109 |
+
svg:not(:root) {
|
110 |
+
overflow: hidden
|
111 |
+
}
|
112 |
+
|
113 |
+
figure {
|
114 |
+
margin: 0
|
115 |
+
}
|
116 |
+
|
117 |
+
fieldset {
|
118 |
+
padding: .35em .625em .75em;
|
119 |
+
margin: 0 2px;
|
120 |
+
border: 1px solid #c0c0c0
|
121 |
+
}
|
122 |
+
|
123 |
+
legend {
|
124 |
+
padding: 0;
|
125 |
+
border: 0
|
126 |
+
}
|
127 |
+
|
128 |
+
button, input, select, textarea {
|
129 |
+
margin: 0;
|
130 |
+
font-family: inherit;
|
131 |
+
font-size: 100%
|
132 |
+
}
|
133 |
+
|
134 |
+
button, input {
|
135 |
+
line-height: normal
|
136 |
+
}
|
137 |
+
|
138 |
+
button, select {
|
139 |
+
text-transform: none
|
140 |
+
}
|
141 |
+
|
142 |
+
button, html input[type="button"], input[type="reset"], input[type="submit"] {
|
143 |
+
cursor: pointer;
|
144 |
+
-webkit-appearance: button
|
145 |
+
}
|
146 |
+
|
147 |
+
button[disabled], html input[disabled] {
|
148 |
+
cursor: default
|
149 |
+
}
|
150 |
+
|
151 |
+
input[type="checkbox"], input[type="radio"] {
|
152 |
+
padding: 0;
|
153 |
+
box-sizing: border-box
|
154 |
+
}
|
155 |
+
|
156 |
+
input[type="search"] {
|
157 |
+
-webkit-box-sizing: content-box;
|
158 |
+
-moz-box-sizing: content-box;
|
159 |
+
box-sizing: content-box;
|
160 |
+
-webkit-appearance: textfield
|
161 |
+
}
|
162 |
+
|
163 |
+
input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration {
|
164 |
+
-webkit-appearance: none
|
165 |
+
}
|
166 |
+
|
167 |
+
button::-moz-focus-inner, input::-moz-focus-inner {
|
168 |
+
padding: 0;
|
169 |
+
border: 0
|
170 |
+
}
|
171 |
+
|
172 |
+
textarea {
|
173 |
+
overflow: auto;
|
174 |
+
vertical-align: top
|
175 |
+
}
|
176 |
+
|
177 |
+
table {
|
178 |
+
border-collapse: collapse;
|
179 |
+
border-spacing: 0
|
180 |
+
}
|
181 |
+
|
182 |
+
@media print {
|
183 |
+
* {
|
184 |
+
color: #000 !important;
|
185 |
+
text-shadow: none !important;
|
186 |
+
background: transparent !important;
|
187 |
+
box-shadow: none !important
|
188 |
+
}
|
189 |
+
|
190 |
+
a, a:visited {
|
191 |
+
text-decoration: underline
|
192 |
+
}
|
193 |
+
|
194 |
+
a[href]:after {
|
195 |
+
content: " (" attr(href) ")"
|
196 |
+
}
|
197 |
+
|
198 |
+
abbr[title]:after {
|
199 |
+
content: " (" attr(title) ")"
|
200 |
+
}
|
201 |
+
|
202 |
+
.ir a:after, a[href^="javascript:"]:after, a[href^="#"]:after {
|
203 |
+
content: ""
|
204 |
+
}
|
205 |
+
|
206 |
+
pre, blockquote {
|
207 |
+
border: 1px solid #999;
|
208 |
+
page-break-inside: avoid
|
209 |
+
}
|
210 |
+
|
211 |
+
thead {
|
212 |
+
display: table-header-group
|
213 |
+
}
|
214 |
+
|
215 |
+
tr, img {
|
216 |
+
page-break-inside: avoid
|
217 |
+
}
|
218 |
+
|
219 |
+
img {
|
220 |
+
max-width: 100% !important
|
221 |
+
}
|
222 |
+
|
223 |
+
@page {
|
224 |
+
margin: 2cm .5cm
|
225 |
+
}
|
226 |
+
|
227 |
+
p, h2, h3 {
|
228 |
+
orphans: 3;
|
229 |
+
widows: 3
|
230 |
+
}
|
231 |
+
|
232 |
+
h2, h3 {
|
233 |
+
page-break-after: avoid
|
234 |
+
}
|
235 |
+
|
236 |
+
.navbar {
|
237 |
+
display: none
|
238 |
+
}
|
239 |
+
|
240 |
+
.table td, .table th {
|
241 |
+
background-color: #fff !important
|
242 |
+
}
|
243 |
+
|
244 |
+
.btn > .caret, .dropup > .btn > .caret {
|
245 |
+
border-top-color: #000 !important
|
246 |
+
}
|
247 |
+
|
248 |
+
.label {
|
249 |
+
border: 1px solid #000
|
250 |
+
}
|
251 |
+
|
252 |
+
.table {
|
253 |
+
border-collapse: collapse !important
|
254 |
+
}
|
255 |
+
|
256 |
+
.table-bordered th, .table-bordered td {
|
257 |
+
border: 1px solid #ddd !important
|
258 |
+
}
|
259 |
+
}
|
260 |
+
|
261 |
+
*, *:before, *:after {
|
262 |
+
-webkit-box-sizing: border-box;
|
263 |
+
-moz-box-sizing: border-box;
|
264 |
+
box-sizing: border-box
|
265 |
+
}
|
266 |
+
|
267 |
+
html {
|
268 |
+
font-size: 62.5%;
|
269 |
+
-webkit-tap-highlight-color: rgba(0, 0, 0, 0)
|
270 |
+
}
|
271 |
+
|
272 |
+
body {
|
273 |
+
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
|
274 |
+
font-size: 14px;
|
275 |
+
line-height: 1.428571429;
|
276 |
+
color: #333;
|
277 |
+
background-color: #fff
|
278 |
+
}
|
279 |
+
|
280 |
+
input, button, select, textarea {
|
281 |
+
font-family: inherit;
|
282 |
+
font-size: inherit;
|
283 |
+
line-height: inherit
|
284 |
+
}
|
285 |
+
|
286 |
+
button, input, select[multiple], textarea {
|
287 |
+
background-image: none
|
288 |
+
}
|
289 |
+
|
290 |
+
a {
|
291 |
+
color: #428bca;
|
292 |
+
text-decoration: none
|
293 |
+
}
|
294 |
+
|
295 |
+
a:hover, a:focus {
|
296 |
+
color: #2a6496;
|
297 |
+
text-decoration: underline
|
298 |
+
}
|
299 |
+
|
300 |
+
a:focus {
|
301 |
+
outline: thin dotted #333;
|
302 |
+
outline: 5px auto -webkit-focus-ring-color;
|
303 |
+
outline-offset: -2px
|
304 |
+
}
|
305 |
+
|
306 |
+
img {
|
307 |
+
vertical-align: middle
|
308 |
+
}
|
309 |
+
|
310 |
+
.img-responsive {
|
311 |
+
display: block;
|
312 |
+
height: auto;
|
313 |
+
max-width: 100%
|
314 |
+
}
|
315 |
+
|
316 |
+
.img-rounded {
|
317 |
+
border-radius: 6px
|
318 |
+
}
|
319 |
+
|
320 |
+
.img-thumbnail {
|
321 |
+
display: inline-block;
|
322 |
+
height: auto;
|
323 |
+
max-width: 100%;
|
324 |
+
padding: 4px;
|
325 |
+
line-height: 1.428571429;
|
326 |
+
background-color: #fff;
|
327 |
+
border: 1px solid #ddd;
|
328 |
+
border-radius: 4px;
|
329 |
+
-webkit-transition: all .2s ease-in-out;
|
330 |
+
transition: all .2s ease-in-out
|
331 |
+
}
|
332 |
+
|
333 |
+
.img-circle {
|
334 |
+
border-radius: 50%
|
335 |
+
}
|
336 |
+
|
337 |
+
hr {
|
338 |
+
margin-top: 20px;
|
339 |
+
margin-bottom: 20px;
|
340 |
+
border: 0;
|
341 |
+
border-top: 1px solid #eee
|
342 |
+
}
|
343 |
+
|
344 |
+
.sr-only {
|
345 |
+
position: absolute;
|
346 |
+
width: 1px;
|
347 |
+
height: 1px;
|
348 |
+
padding: 0;
|
349 |
+
margin: -1px;
|
350 |
+
overflow: hidden;
|
351 |
+
clip: rect(0 0 0 0);
|
352 |
+
border: 0
|
353 |
+
}
|
354 |
+
|
355 |
+
p {
|
356 |
+
margin: 0 0 10px
|
357 |
+
}
|
358 |
+
|
359 |
+
.lead {
|
360 |
+
margin-bottom: 20px;
|
361 |
+
font-size: 16.099999999999998px;
|
362 |
+
font-weight: 200;
|
363 |
+
line-height: 1.4
|
364 |
+
}
|
365 |
+
|
366 |
+
@media (min-width: 768px) {
|
367 |
+
.lead {
|
368 |
+
font-size: 21px
|
369 |
+
}
|
370 |
+
}
|
371 |
+
|
372 |
+
small {
|
373 |
+
font-size: 85%
|
374 |
+
}
|
375 |
+
|
376 |
+
cite {
|
377 |
+
font-style: normal
|
378 |
+
}
|
379 |
+
|
380 |
+
.text-muted {
|
381 |
+
color: #999
|
382 |
+
}
|
383 |
+
|
384 |
+
.text-primary {
|
385 |
+
color: #428bca
|
386 |
+
}
|
387 |
+
|
388 |
+
.text-warning {
|
389 |
+
color: #c09853
|
390 |
+
}
|
391 |
+
|
392 |
+
.text-danger {
|
393 |
+
color: #b94a48
|
394 |
+
}
|
395 |
+
|
396 |
+
.text-success {
|
397 |
+
color: #468847
|
398 |
+
}
|
399 |
+
|
400 |
+
.text-info {
|
401 |
+
color: #3a87ad
|
402 |
+
}
|
403 |
+
|
404 |
+
.text-left {
|
405 |
+
text-align: left
|
406 |
+
}
|
407 |
+
|
408 |
+
.text-right {
|
409 |
+
text-align: right
|
410 |
+
}
|
411 |
+
|
412 |
+
.text-center {
|
413 |
+
text-align: center
|
414 |
+
}
|
415 |
+
|
416 |
+
h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
|
417 |
+
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
|
418 |
+
font-weight: 500;
|
419 |
+
line-height: 1.1
|
420 |
+
}
|
421 |
+
|
422 |
+
h1 small, h2 small, h3 small, h4 small, h5 small, h6 small, .h1 small, .h2 small, .h3 small, .h4 small, .h5 small, .h6 small {
|
423 |
+
font-weight: normal;
|
424 |
+
line-height: 1;
|
425 |
+
color: #999
|
426 |
+
}
|
427 |
+
|
428 |
+
h1, h2, h3 {
|
429 |
+
margin-top: 20px;
|
430 |
+
margin-bottom: 10px
|
431 |
+
}
|
432 |
+
|
433 |
+
h4, h5, h6 {
|
434 |
+
margin-top: 10px;
|
435 |
+
margin-bottom: 10px
|
436 |
+
}
|
437 |
+
|
438 |
+
h1, .h1 {
|
439 |
+
font-size: 36px
|
440 |
+
}
|
441 |
+
|
442 |
+
h2, .h2 {
|
443 |
+
font-size: 30px
|
444 |
+
}
|
445 |
+
|
446 |
+
h3, .h3 {
|
447 |
+
font-size: 24px
|
448 |
+
}
|
449 |
+
|
450 |
+
h4, .h4 {
|
451 |
+
font-size: 18px
|
452 |
+
}
|
453 |
+
|
454 |
+
h5, .h5 {
|
455 |
+
font-size: 14px
|
456 |
+
}
|
457 |
+
|
458 |
+
h6, .h6 {
|
459 |
+
font-size: 12px
|
460 |
+
}
|
461 |
+
|
462 |
+
h1 small, .h1 small {
|
463 |
+
font-size: 24px
|
464 |
+
}
|
465 |
+
|
466 |
+
h2 small, .h2 small {
|
467 |
+
font-size: 18px
|
468 |
+
}
|
469 |
+
|
470 |
+
h3 small, .h3 small, h4 small, .h4 small {
|
471 |
+
font-size: 14px
|
472 |
+
}
|
473 |
+
|
474 |
+
.page-header {
|
475 |
+
padding-bottom: 9px;
|
476 |
+
margin: 40px 0 20px;
|
477 |
+
border-bottom: 1px solid #eee
|
478 |
+
}
|
479 |
+
|
480 |
+
ul, ol {
|
481 |
+
margin-top: 0;
|
482 |
+
margin-bottom: 10px
|
483 |
+
}
|
484 |
+
|
485 |
+
ul ul, ol ul, ul ol, ol ol {
|
486 |
+
margin-bottom: 0
|
487 |
+
}
|
488 |
+
|
489 |
+
.list-unstyled {
|
490 |
+
padding-left: 0;
|
491 |
+
list-style: none
|
492 |
+
}
|
493 |
+
|
494 |
+
.list-inline {
|
495 |
+
padding-left: 0;
|
496 |
+
list-style: none
|
497 |
+
}
|
498 |
+
|
499 |
+
.list-inline > li {
|
500 |
+
display: inline-block;
|
501 |
+
padding-right: 5px;
|
502 |
+
padding-left: 5px
|
503 |
+
}
|
504 |
+
|
505 |
+
dl {
|
506 |
+
margin-bottom: 20px
|
507 |
+
}
|
508 |
+
|
509 |
+
dt, dd {
|
510 |
+
line-height: 1.428571429
|
511 |
+
}
|
512 |
+
|
513 |
+
dt {
|
514 |
+
font-weight: bold
|
515 |
+
}
|
516 |
+
|
517 |
+
dd {
|
518 |
+
margin-left: 0
|
519 |
+
}
|
520 |
+
|
521 |
+
@media (min-width: 768px) {
|
522 |
+
.dl-horizontal dt {
|
523 |
+
float: left;
|
524 |
+
width: 160px;
|
525 |
+
overflow: hidden;
|
526 |
+
clear: left;
|
527 |
+
text-align: right;
|
528 |
+
text-overflow: ellipsis;
|
529 |
+
white-space: nowrap
|
530 |
+
}
|
531 |
+
|
532 |
+
.dl-horizontal dd {
|
533 |
+
margin-left: 180px
|
534 |
+
}
|
535 |
+
|
536 |
+
.dl-horizontal dd:before, .dl-horizontal dd:after {
|
537 |
+
display: table;
|
538 |
+
content: " "
|
539 |
+
}
|
540 |
+
|
541 |
+
.dl-horizontal dd:after {
|
542 |
+
clear: both
|
543 |
+
}
|
544 |
+
|
545 |
+
.dl-horizontal dd:before, .dl-horizontal dd:after {
|
546 |
+
display: table;
|
547 |
+
content: " "
|
548 |
+
}
|
549 |
+
|
550 |
+
.dl-horizontal dd:after {
|
551 |
+
clear: both
|
552 |
+
}
|
553 |
+
}
|
554 |
+
|
555 |
+
abbr[title], abbr[data-original-title] {
|
556 |
+
cursor: help;
|
557 |
+
border-bottom: 1px dotted #999
|
558 |
+
}
|
559 |
+
|
560 |
+
abbr.initialism {
|
561 |
+
font-size: 90%;
|
562 |
+
text-transform: uppercase
|
563 |
+
}
|
564 |
+
|
565 |
+
blockquote {
|
566 |
+
padding: 10px 20px;
|
567 |
+
margin: 0 0 20px;
|
568 |
+
border-left: 5px solid #eee
|
569 |
+
}
|
570 |
+
|
571 |
+
blockquote p {
|
572 |
+
font-size: 17.5px;
|
573 |
+
font-weight: 300;
|
574 |
+
line-height: 1.25
|
575 |
+
}
|
576 |
+
|
577 |
+
blockquote p:last-child {
|
578 |
+
margin-bottom: 0
|
579 |
+
}
|
580 |
+
|
581 |
+
blockquote small {
|
582 |
+
display: block;
|
583 |
+
line-height: 1.428571429;
|
584 |
+
color: #999
|
585 |
+
}
|
586 |
+
|
587 |
+
blockquote small:before {
|
588 |
+
content: '\2014 \00A0'
|
589 |
+
}
|
590 |
+
|
591 |
+
blockquote.pull-right {
|
592 |
+
padding-right: 15px;
|
593 |
+
padding-left: 0;
|
594 |
+
border-right: 5px solid #eee;
|
595 |
+
border-left: 0
|
596 |
+
}
|
597 |
+
|
598 |
+
blockquote.pull-right p, blockquote.pull-right small {
|
599 |
+
text-align: right
|
600 |
+
}
|
601 |
+
|
602 |
+
blockquote.pull-right small:before {
|
603 |
+
content: ''
|
604 |
+
}
|
605 |
+
|
606 |
+
blockquote.pull-right small:after {
|
607 |
+
content: '\00A0 \2014'
|
608 |
+
}
|
609 |
+
|
610 |
+
q:before, q:after, blockquote:before, blockquote:after {
|
611 |
+
content: ""
|
612 |
+
}
|
613 |
+
|
614 |
+
address {
|
615 |
+
display: block;
|
616 |
+
margin-bottom: 20px;
|
617 |
+
font-style: normal;
|
618 |
+
line-height: 1.428571429
|
619 |
+
}
|
620 |
+
|
621 |
+
code, pre {
|
622 |
+
font-family: Monaco, Menlo, Consolas, "Courier New", monospace
|
623 |
+
}
|
624 |
+
|
625 |
+
code {
|
626 |
+
padding: 2px 4px;
|
627 |
+
font-size: 90%;
|
628 |
+
color: #c7254e;
|
629 |
+
white-space: nowrap;
|
630 |
+
background-color: #f9f2f4;
|
631 |
+
border-radius: 4px
|
632 |
+
}
|
633 |
+
|
634 |
+
pre {
|
635 |
+
display: block;
|
636 |
+
padding: 9.5px;
|
637 |
+
margin: 0 0 10px;
|
638 |
+
font-size: 13px;
|
639 |
+
line-height: 1.428571429;
|
640 |
+
color: #333;
|
641 |
+
word-break: break-all;
|
642 |
+
word-wrap: break-word;
|
643 |
+
background-color: #f5f5f5;
|
644 |
+
border: 1px solid #ccc;
|
645 |
+
border-radius: 4px
|
646 |
+
}
|
647 |
+
|
648 |
+
pre.prettyprint {
|
649 |
+
margin-bottom: 20px
|
650 |
+
}
|
651 |
+
|
652 |
+
pre code {
|
653 |
+
padding: 0;
|
654 |
+
font-size: inherit;
|
655 |
+
color: inherit;
|
656 |
+
white-space: pre-wrap;
|
657 |
+
background-color: transparent;
|
658 |
+
border: 0
|
659 |
+
}
|
660 |
+
|
661 |
+
.pre-scrollable {
|
662 |
+
max-height: 340px;
|
663 |
+
overflow-y: scroll
|
664 |
+
}
|
665 |
+
|
666 |
+
.container {
|
667 |
+
padding-right: 15px;
|
668 |
+
padding-left: 15px;
|
669 |
+
margin-right: auto;
|
670 |
+
margin-left: auto
|
671 |
+
}
|
672 |
+
|
673 |
+
.container:before, .container:after {
|
674 |
+
display: table;
|
675 |
+
content: " "
|
676 |
+
}
|
677 |
+
|
678 |
+
.container:after {
|
679 |
+
clear: both
|
680 |
+
}
|
681 |
+
|
682 |
+
.container:before, .container:after {
|
683 |
+
display: table;
|
684 |
+
content: " "
|
685 |
+
}
|
686 |
+
|
687 |
+
.container:after {
|
688 |
+
clear: both
|
689 |
+
}
|
690 |
+
|
691 |
+
.row {
|
692 |
+
margin-right: -15px;
|
693 |
+
margin-left: -15px
|
694 |
+
}
|
695 |
+
|
696 |
+
.row:before, .row:after {
|
697 |
+
display: table;
|
698 |
+
content: " "
|
699 |
+
}
|
700 |
+
|
701 |
+
.row:after {
|
702 |
+
clear: both
|
703 |
+
}
|
704 |
+
|
705 |
+
.row:before, .row:after {
|
706 |
+
display: table;
|
707 |
+
content: " "
|
708 |
+
}
|
709 |
+
|
710 |
+
.row:after {
|
711 |
+
clear: both
|
712 |
+
}
|
713 |
+
|
714 |
+
.col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12 {
|
715 |
+
position: relative;
|
716 |
+
min-height: 1px;
|
717 |
+
padding-right: 15px;
|
718 |
+
padding-left: 15px
|
719 |
+
}
|
720 |
+
|
721 |
+
.col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11 {
|
722 |
+
float: left
|
723 |
+
}
|
724 |
+
|
725 |
+
.col-xs-1 {
|
726 |
+
width: 8.333333333333332%
|
727 |
+
}
|
728 |
+
|
729 |
+
.col-xs-2 {
|
730 |
+
width: 16.666666666666664%
|
731 |
+
}
|
732 |
+
|
733 |
+
.col-xs-3 {
|
734 |
+
width: 25%
|
735 |
+
}
|
736 |
+
|
737 |
+
.col-xs-4 {
|
738 |
+
width: 33.33333333333333%
|
739 |
+
}
|
740 |
+
|
741 |
+
.col-xs-5 {
|
742 |
+
width: 41.66666666666667%
|
743 |
+
}
|
744 |
+
|
745 |
+
.col-xs-6 {
|
746 |
+
width: 50%
|
747 |
+
}
|
748 |
+
|
749 |
+
.col-xs-7 {
|
750 |
+
width: 58.333333333333336%
|
751 |
+
}
|
752 |
+
|
753 |
+
.col-xs-8 {
|
754 |
+
width: 66.66666666666666%
|
755 |
+
}
|
756 |
+
|
757 |
+
.col-xs-9 {
|
758 |
+
width: 75%
|
759 |
+
}
|
760 |
+
|
761 |
+
.col-xs-10 {
|
762 |
+
width: 83.33333333333334%
|
763 |
+
}
|
764 |
+
|
765 |
+
.col-xs-11 {
|
766 |
+
width: 91.66666666666666%
|
767 |
+
}
|
768 |
+
|
769 |
+
.col-xs-12 {
|
770 |
+
width: 100%
|
771 |
+
}
|
772 |
+
|
773 |
+
@media (min-width: 768px) {
|
774 |
+
.container {
|
775 |
+
max-width: 750px
|
776 |
+
}
|
777 |
+
|
778 |
+
.col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11 {
|
779 |
+
float: left
|
780 |
+
}
|
781 |
+
|
782 |
+
.col-sm-1 {
|
783 |
+
width: 8.333333333333332%
|
784 |
+
}
|
785 |
+
|
786 |
+
.col-sm-2 {
|
787 |
+
width: 16.666666666666664%
|
788 |
+
}
|
789 |
+
|
790 |
+
.col-sm-3 {
|
791 |
+
width: 25%
|
792 |
+
}
|
793 |
+
|
794 |
+
.col-sm-4 {
|
795 |
+
width: 33.33333333333333%
|
796 |
+
}
|
797 |
+
|
798 |
+
.col-sm-5 {
|
799 |
+
width: 41.66666666666667%
|
800 |
+
}
|
801 |
+
|
802 |
+
.col-sm-6 {
|
803 |
+
width: 50%
|
804 |
+
}
|
805 |
+
|
806 |
+
.col-sm-7 {
|
807 |
+
width: 58.333333333333336%
|
808 |
+
}
|
809 |
+
|
810 |
+
.col-sm-8 {
|
811 |
+
width: 66.66666666666666%
|
812 |
+
}
|
813 |
+
|
814 |
+
.col-sm-9 {
|
815 |
+
width: 75%
|
816 |
+
}
|
817 |
+
|
818 |
+
.col-sm-10 {
|
819 |
+
width: 83.33333333333334%
|
820 |
+
}
|
821 |
+
|
822 |
+
.col-sm-11 {
|
823 |
+
width: 91.66666666666666%
|
824 |
+
}
|
825 |
+
|
826 |
+
.col-sm-12 {
|
827 |
+
width: 100%
|
828 |
+
}
|
829 |
+
|
830 |
+
.col-sm-push-1 {
|
831 |
+
left: 8.333333333333332%
|
832 |
+
}
|
833 |
+
|
834 |
+
.col-sm-push-2 {
|
835 |
+
left: 16.666666666666664%
|
836 |
+
}
|
837 |
+
|
838 |
+
.col-sm-push-3 {
|
839 |
+
left: 25%
|
840 |
+
}
|
841 |
+
|
842 |
+
.col-sm-push-4 {
|
843 |
+
left: 33.33333333333333%
|
844 |
+
}
|
845 |
+
|
846 |
+
.col-sm-push-5 {
|
847 |
+
left: 41.66666666666667%
|
848 |
+
}
|
849 |
+
|
850 |
+
.col-sm-push-6 {
|
851 |
+
left: 50%
|
852 |
+
}
|
853 |
+
|
854 |
+
.col-sm-push-7 {
|
855 |
+
left: 58.333333333333336%
|
856 |
+
}
|
857 |
+
|
858 |
+
.col-sm-push-8 {
|
859 |
+
left: 66.66666666666666%
|
860 |
+
}
|
861 |
+
|
862 |
+
.col-sm-push-9 {
|
863 |
+
left: 75%
|
864 |
+
}
|
865 |
+
|
866 |
+
.col-sm-push-10 {
|
867 |
+
left: 83.33333333333334%
|
868 |
+
}
|
869 |
+
|
870 |
+
.col-sm-push-11 {
|
871 |
+
left: 91.66666666666666%
|
872 |
+
}
|
873 |
+
|
874 |
+
.col-sm-pull-1 {
|
875 |
+
right: 8.333333333333332%
|
876 |
+
}
|
877 |
+
|
878 |
+
.col-sm-pull-2 {
|
879 |
+
right: 16.666666666666664%
|
880 |
+
}
|
881 |
+
|
882 |
+
.col-sm-pull-3 {
|
883 |
+
right: 25%
|
884 |
+
}
|
885 |
+
|
886 |
+
.col-sm-pull-4 {
|
887 |
+
right: 33.33333333333333%
|
888 |
+
}
|
889 |
+
|
890 |
+
.col-sm-pull-5 {
|
891 |
+
right: 41.66666666666667%
|
892 |
+
}
|
893 |
+
|
894 |
+
.col-sm-pull-6 {
|
895 |
+
right: 50%
|
896 |
+
}
|
897 |
+
|
898 |
+
.col-sm-pull-7 {
|
899 |
+
right: 58.333333333333336%
|
900 |
+
}
|
901 |
+
|
902 |
+
.col-sm-pull-8 {
|
903 |
+
right: 66.66666666666666%
|
904 |
+
}
|
905 |
+
|
906 |
+
.col-sm-pull-9 {
|
907 |
+
right: 75%
|
908 |
+
}
|
909 |
+
|
910 |
+
.col-sm-pull-10 {
|
911 |
+
right: 83.33333333333334%
|
912 |
+
}
|
913 |
+
|
914 |
+
.col-sm-pull-11 {
|
915 |
+
right: 91.66666666666666%
|
916 |
+
}
|
917 |
+
|
918 |
+
.col-sm-offset-1 {
|
919 |
+
margin-left: 8.333333333333332%
|
920 |
+
}
|
921 |
+
|
922 |
+
.col-sm-offset-2 {
|
923 |
+
margin-left: 16.666666666666664%
|
924 |
+
}
|
925 |
+
|
926 |
+
.col-sm-offset-3 {
|
927 |
+
margin-left: 25%
|
928 |
+
}
|
929 |
+
|
930 |
+
.col-sm-offset-4 {
|
931 |
+
margin-left: 33.33333333333333%
|
932 |
+
}
|
933 |
+
|
934 |
+
.col-sm-offset-5 {
|
935 |
+
margin-left: 41.66666666666667%
|
936 |
+
}
|
937 |
+
|
938 |
+
.col-sm-offset-6 {
|
939 |
+
margin-left: 50%
|
940 |
+
}
|
941 |
+
|
942 |
+
.col-sm-offset-7 {
|
943 |
+
margin-left: 58.333333333333336%
|
944 |
+
}
|
945 |
+
|
946 |
+
.col-sm-offset-8 {
|
947 |
+
margin-left: 66.66666666666666%
|
948 |
+
}
|
949 |
+
|
950 |
+
.col-sm-offset-9 {
|
951 |
+
margin-left: 75%
|
952 |
+
}
|
953 |
+
|
954 |
+
.col-sm-offset-10 {
|
955 |
+
margin-left: 83.33333333333334%
|
956 |
+
}
|
957 |
+
|
958 |
+
.col-sm-offset-11 {
|
959 |
+
margin-left: 91.66666666666666%
|
960 |
+
}
|
961 |
+
}
|
962 |
+
|
963 |
+
@media (min-width: 992px) {
|
964 |
+
.container {
|
965 |
+
max-width: 970px
|
966 |
+
}
|
967 |
+
|
968 |
+
.col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11 {
|
969 |
+
float: left
|
970 |
+
}
|
971 |
+
|
972 |
+
.col-md-1 {
|
973 |
+
width: 8.333333333333332%
|
974 |
+
}
|
975 |
+
|
976 |
+
.col-md-2 {
|
977 |
+
width: 16.666666666666664%
|
978 |
+
}
|
979 |
+
|
980 |
+
.col-md-3 {
|
981 |
+
width: 25%
|
982 |
+
}
|
983 |
+
|
984 |
+
.col-md-4 {
|
985 |
+
width: 33.33333333333333%
|
986 |
+
}
|
987 |
+
|
988 |
+
.col-md-5 {
|
989 |
+
width: 41.66666666666667%
|
990 |
+
}
|
991 |
+
|
992 |
+
.col-md-6 {
|
993 |
+
width: 50%
|
994 |
+
}
|
995 |
+
|
996 |
+
.col-md-7 {
|
997 |
+
width: 58.333333333333336%
|
998 |
+
}
|
999 |
+
|
1000 |
+
.col-md-8 {
|
1001 |
+
width: 66.66666666666666%
|
1002 |
+
}
|
1003 |
+
|
1004 |
+
.col-md-9 {
|
1005 |
+
width: 75%
|
1006 |
+
}
|
1007 |
+
|
1008 |
+
.col-md-10 {
|
1009 |
+
width: 83.33333333333334%
|
1010 |
+
}
|
1011 |
+
|
1012 |
+
.col-md-11 {
|
1013 |
+
width: 91.66666666666666%
|
1014 |
+
}
|
1015 |
+
|
1016 |
+
.col-md-12 {
|
1017 |
+
width: 100%
|
1018 |
+
}
|
1019 |
+
|
1020 |
+
.col-md-push-0 {
|
1021 |
+
left: auto
|
1022 |
+
}
|
1023 |
+
|
1024 |
+
.col-md-push-1 {
|
1025 |
+
left: 8.333333333333332%
|
1026 |
+
}
|
1027 |
+
|
1028 |
+
.col-md-push-2 {
|
1029 |
+
left: 16.666666666666664%
|
1030 |
+
}
|
1031 |
+
|
1032 |
+
.col-md-push-3 {
|
1033 |
+
left: 25%
|
1034 |
+
}
|
1035 |
+
|
1036 |
+
.col-md-push-4 {
|
1037 |
+
left: 33.33333333333333%
|
1038 |
+
}
|
1039 |
+
|
1040 |
+
.col-md-push-5 {
|
1041 |
+
left: 41.66666666666667%
|
1042 |
+
}
|
1043 |
+
|
1044 |
+
.col-md-push-6 {
|
1045 |
+
left: 50%
|
1046 |
+
}
|
1047 |
+
|
1048 |
+
.col-md-push-7 {
|
1049 |
+
left: 58.333333333333336%
|
1050 |
+
}
|
1051 |
+
|
1052 |
+
.col-md-push-8 {
|
1053 |
+
left: 66.66666666666666%
|
1054 |
+
}
|
1055 |
+
|
1056 |
+
.col-md-push-9 {
|
1057 |
+
left: 75%
|
1058 |
+
}
|
1059 |
+
|
1060 |
+
.col-md-push-10 {
|
1061 |
+
left: 83.33333333333334%
|
1062 |
+
}
|
1063 |
+
|
1064 |
+
.col-md-push-11 {
|
1065 |
+
left: 91.66666666666666%
|
1066 |
+
}
|
1067 |
+
|
1068 |
+
.col-md-pull-0 {
|
1069 |
+
right: auto
|
1070 |
+
}
|
1071 |
+
|
1072 |
+
.col-md-pull-1 {
|
1073 |
+
right: 8.333333333333332%
|
1074 |
+
}
|
1075 |
+
|
1076 |
+
.col-md-pull-2 {
|
1077 |
+
right: 16.666666666666664%
|
1078 |
+
}
|
1079 |
+
|
1080 |
+
.col-md-pull-3 {
|
1081 |
+
right: 25%
|
1082 |
+
}
|
1083 |
+
|
1084 |
+
.col-md-pull-4 {
|
1085 |
+
right: 33.33333333333333%
|
1086 |
+
}
|
1087 |
+
|
1088 |
+
.col-md-pull-5 {
|
1089 |
+
right: 41.66666666666667%
|
1090 |
+
}
|
1091 |
+
|
1092 |
+
.col-md-pull-6 {
|
1093 |
+
right: 50%
|
1094 |
+
}
|
1095 |
+
|
1096 |
+
.col-md-pull-7 {
|
1097 |
+
right: 58.333333333333336%
|
1098 |
+
}
|
1099 |
+
|
1100 |
+
.col-md-pull-8 {
|
1101 |
+
right: 66.66666666666666%
|
1102 |
+
}
|
1103 |
+
|
1104 |
+
.col-md-pull-9 {
|
1105 |
+
right: 75%
|
1106 |
+
}
|
1107 |
+
|
1108 |
+
.col-md-pull-10 {
|
1109 |
+
right: 83.33333333333334%
|
1110 |
+
}
|
1111 |
+
|
1112 |
+
.col-md-pull-11 {
|
1113 |
+
right: 91.66666666666666%
|
1114 |
+
}
|
1115 |
+
|
1116 |
+
.col-md-offset-0 {
|
1117 |
+
margin-left: 0
|
1118 |
+
}
|
1119 |
+
|
1120 |
+
.col-md-offset-1 {
|
1121 |
+
margin-left: 8.333333333333332%
|
1122 |
+
}
|
1123 |
+
|
1124 |
+
.col-md-offset-2 {
|
1125 |
+
margin-left: 16.666666666666664%
|
1126 |
+
}
|
1127 |
+
|
1128 |
+
.col-md-offset-3 {
|
1129 |
+
margin-left: 25%
|
1130 |
+
}
|
1131 |
+
|
1132 |
+
.col-md-offset-4 {
|
1133 |
+
margin-left: 33.33333333333333%
|
1134 |
+
}
|
1135 |
+
|
1136 |
+
.col-md-offset-5 {
|
1137 |
+
margin-left: 41.66666666666667%
|
1138 |
+
}
|
1139 |
+
|
1140 |
+
.col-md-offset-6 {
|
1141 |
+
margin-left: 50%
|
1142 |
+
}
|
1143 |
+
|
1144 |
+
.col-md-offset-7 {
|
1145 |
+
margin-left: 58.333333333333336%
|
1146 |
+
}
|
1147 |
+
|
1148 |
+
.col-md-offset-8 {
|
1149 |
+
margin-left: 66.66666666666666%
|
1150 |
+
}
|
1151 |
+
|
1152 |
+
.col-md-offset-9 {
|
1153 |
+
margin-left: 75%
|
1154 |
+
}
|
1155 |
+
|
1156 |
+
.col-md-offset-10 {
|
1157 |
+
margin-left: 83.33333333333334%
|
1158 |
+
}
|
1159 |
+
|
1160 |
+
.col-md-offset-11 {
|
1161 |
+
margin-left: 91.66666666666666%
|
1162 |
+
}
|
1163 |
+
}
|
1164 |
+
|
1165 |
+
@media (min-width: 1200px) {
|
1166 |
+
.container {
|
1167 |
+
max-width: 1170px
|
1168 |
+
}
|
1169 |
+
|
1170 |
+
.col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11 {
|
1171 |
+
float: left
|
1172 |
+
}
|
1173 |
+
|
1174 |
+
.col-lg-1 {
|
1175 |
+
width: 8.333333333333332%
|
1176 |
+
}
|
1177 |
+
|
1178 |
+
.col-lg-2 {
|
1179 |
+
width: 16.666666666666664%
|
1180 |
+
}
|
1181 |
+
|
1182 |
+
.col-lg-3 {
|
1183 |
+
width: 25%
|
1184 |
+
}
|
1185 |
+
|
1186 |
+
.col-lg-4 {
|
1187 |
+
width: 33.33333333333333%
|
1188 |
+
}
|
1189 |
+
|
1190 |
+
.col-lg-5 {
|
1191 |
+
width: 41.66666666666667%
|
1192 |
+
}
|
1193 |
+
|
1194 |
+
.col-lg-6 {
|
1195 |
+
width: 50%
|
1196 |
+
}
|
1197 |
+
|
1198 |
+
.col-lg-7 {
|
1199 |
+
width: 58.333333333333336%
|
1200 |
+
}
|
1201 |
+
|
1202 |
+
.col-lg-8 {
|
1203 |
+
width: 66.66666666666666%
|
1204 |
+
}
|
1205 |
+
|
1206 |
+
.col-lg-9 {
|
1207 |
+
width: 75%
|
1208 |
+
}
|
1209 |
+
|
1210 |
+
.col-lg-10 {
|
1211 |
+
width: 83.33333333333334%
|
1212 |
+
}
|
1213 |
+
|
1214 |
+
.col-lg-11 {
|
1215 |
+
width: 91.66666666666666%
|
1216 |
+
}
|
1217 |
+
|
1218 |
+
.col-lg-12 {
|
1219 |
+
width: 100%
|
1220 |
+
}
|
1221 |
+
|
1222 |
+
.col-lg-push-0 {
|
1223 |
+
left: auto
|
1224 |
+
}
|
1225 |
+
|
1226 |
+
.col-lg-push-1 {
|
1227 |
+
left: 8.333333333333332%
|
1228 |
+
}
|
1229 |
+
|
1230 |
+
.col-lg-push-2 {
|
1231 |
+
left: 16.666666666666664%
|
1232 |
+
}
|
1233 |
+
|
1234 |
+
.col-lg-push-3 {
|
1235 |
+
left: 25%
|
1236 |
+
}
|
1237 |
+
|
1238 |
+
.col-lg-push-4 {
|
1239 |
+
left: 33.33333333333333%
|
1240 |
+
}
|
1241 |
+
|
1242 |
+
.col-lg-push-5 {
|
1243 |
+
left: 41.66666666666667%
|
1244 |
+
}
|
1245 |
+
|
1246 |
+
.col-lg-push-6 {
|
1247 |
+
left: 50%
|
1248 |
+
}
|
1249 |
+
|
1250 |
+
.col-lg-push-7 {
|
1251 |
+
left: 58.333333333333336%
|
1252 |
+
}
|
1253 |
+
|
1254 |
+
.col-lg-push-8 {
|
1255 |
+
left: 66.66666666666666%
|
1256 |
+
}
|
1257 |
+
|
1258 |
+
.col-lg-push-9 {
|
1259 |
+
left: 75%
|
1260 |
+
}
|
1261 |
+
|
1262 |
+
.col-lg-push-10 {
|
1263 |
+
left: 83.33333333333334%
|
1264 |
+
}
|
1265 |
+
|
1266 |
+
.col-lg-push-11 {
|
1267 |
+
left: 91.66666666666666%
|
1268 |
+
}
|
1269 |
+
|
1270 |
+
.col-lg-pull-0 {
|
1271 |
+
right: auto
|
1272 |
+
}
|
1273 |
+
|
1274 |
+
.col-lg-pull-1 {
|
1275 |
+
right: 8.333333333333332%
|
1276 |
+
}
|
1277 |
+
|
1278 |
+
.col-lg-pull-2 {
|
1279 |
+
right: 16.666666666666664%
|
1280 |
+
}
|
1281 |
+
|
1282 |
+
.col-lg-pull-3 {
|
1283 |
+
right: 25%
|
1284 |
+
}
|
1285 |
+
|
1286 |
+
.col-lg-pull-4 {
|
1287 |
+
right: 33.33333333333333%
|
1288 |
+
}
|
1289 |
+
|
1290 |
+
.col-lg-pull-5 {
|
1291 |
+
right: 41.66666666666667%
|
1292 |
+
}
|
1293 |
+
|
1294 |
+
.col-lg-pull-6 {
|
1295 |
+
right: 50%
|
1296 |
+
}
|
1297 |
+
|
1298 |
+
.col-lg-pull-7 {
|
1299 |
+
right: 58.333333333333336%
|
1300 |
+
}
|
1301 |
+
|
1302 |
+
.col-lg-pull-8 {
|
1303 |
+
right: 66.66666666666666%
|
1304 |
+
}
|
1305 |
+
|
1306 |
+
.col-lg-pull-9 {
|
1307 |
+
right: 75%
|
1308 |
+
}
|
1309 |
+
|
1310 |
+
.col-lg-pull-10 {
|
1311 |
+
right: 83.33333333333334%
|
1312 |
+
}
|
1313 |
+
|
1314 |
+
.col-lg-pull-11 {
|
1315 |
+
right: 91.66666666666666%
|
1316 |
+
}
|
1317 |
+
|
1318 |
+
.col-lg-offset-0 {
|
1319 |
+
margin-left: 0
|
1320 |
+
}
|
1321 |
+
|
1322 |
+
.col-lg-offset-1 {
|
1323 |
+
margin-left: 8.333333333333332%
|
1324 |
+
}
|
1325 |
+
|
1326 |
+
.col-lg-offset-2 {
|
1327 |
+
margin-left: 16.666666666666664%
|
1328 |
+
}
|
1329 |
+
|
1330 |
+
.col-lg-offset-3 {
|
1331 |
+
margin-left: 25%
|
1332 |
+
}
|
1333 |
+
|
1334 |
+
.col-lg-offset-4 {
|
1335 |
+
margin-left: 33.33333333333333%
|
1336 |
+
}
|
1337 |
+
|
1338 |
+
.col-lg-offset-5 {
|
1339 |
+
margin-left: 41.66666666666667%
|
1340 |
+
}
|
1341 |
+
|
1342 |
+
.col-lg-offset-6 {
|
1343 |
+
margin-left: 50%
|
1344 |
+
}
|
1345 |
+
|
1346 |
+
.col-lg-offset-7 {
|
1347 |
+
margin-left: 58.333333333333336%
|
1348 |
+
}
|
1349 |
+
|
1350 |
+
.col-lg-offset-8 {
|
1351 |
+
margin-left: 66.66666666666666%
|
1352 |
+
}
|
1353 |
+
|
1354 |
+
.col-lg-offset-9 {
|
1355 |
+
margin-left: 75%
|
1356 |
+
}
|
1357 |
+
|
1358 |
+
.col-lg-offset-10 {
|
1359 |
+
margin-left: 83.33333333333334%
|
1360 |
+
}
|
1361 |
+
|
1362 |
+
.col-lg-offset-11 {
|
1363 |
+
margin-left: 91.66666666666666%
|
1364 |
+
}
|
1365 |
+
}
|
1366 |
+
|
1367 |
+
table {
|
1368 |
+
max-width: 100%;
|
1369 |
+
background-color: transparent
|
1370 |
+
}
|
1371 |
+
|
1372 |
+
th {
|
1373 |
+
text-align: left
|
1374 |
+
}
|
1375 |
+
|
1376 |
+
.table {
|
1377 |
+
width: 100%;
|
1378 |
+
margin-bottom: 20px
|
1379 |
+
}
|
1380 |
+
|
1381 |
+
.table thead > tr > th, .table tbody > tr > th, .table tfoot > tr > th, .table thead > tr > td, .table tbody > tr > td, .table tfoot > tr > td {
|
1382 |
+
padding: 8px;
|
1383 |
+
line-height: 1.428571429;
|
1384 |
+
vertical-align: top;
|
1385 |
+
border-top: 1px solid #ddd
|
1386 |
+
}
|
1387 |
+
|
1388 |
+
.table thead > tr > th {
|
1389 |
+
vertical-align: bottom;
|
1390 |
+
border-bottom: 2px solid #ddd
|
1391 |
+
}
|
1392 |
+
|
1393 |
+
.table caption + thead tr:first-child th, .table colgroup + thead tr:first-child th, .table thead:first-child tr:first-child th, .table caption + thead tr:first-child td, .table colgroup + thead tr:first-child td, .table thead:first-child tr:first-child td {
|
1394 |
+
border-top: 0
|
1395 |
+
}
|
1396 |
+
|
1397 |
+
.table tbody + tbody {
|
1398 |
+
border-top: 2px solid #ddd
|
1399 |
+
}
|
1400 |
+
|
1401 |
+
.table .table {
|
1402 |
+
background-color: #fff
|
1403 |
+
}
|
1404 |
+
|
1405 |
+
.table-condensed thead > tr > th, .table-condensed tbody > tr > th, .table-condensed tfoot > tr > th, .table-condensed thead > tr > td, .table-condensed tbody > tr > td, .table-condensed tfoot > tr > td {
|
1406 |
+
padding: 5px
|
1407 |
+
}
|
1408 |
+
|
1409 |
+
.table-bordered {
|
1410 |
+
border: 1px solid #ddd
|
1411 |
+
}
|
1412 |
+
|
1413 |
+
.table-bordered > thead > tr > th, .table-bordered > tbody > tr > th, .table-bordered > tfoot > tr > th, .table-bordered > thead > tr > td, .table-bordered > tbody > tr > td, .table-bordered > tfoot > tr > td {
|
1414 |
+
border: 1px solid #ddd
|
1415 |
+
}
|
1416 |
+
|
1417 |
+
.table-bordered > thead > tr > th, .table-bordered > thead > tr > td {
|
1418 |
+
border-bottom-width: 2px
|
1419 |
+
}
|
1420 |
+
|
1421 |
+
.table-striped > tbody > tr:nth-child(odd) > td, .table-striped > tbody > tr:nth-child(odd) > th {
|
1422 |
+
background-color: #f9f9f9
|
1423 |
+
}
|
1424 |
+
|
1425 |
+
.table-hover > tbody > tr:hover > td, .table-hover > tbody > tr:hover > th {
|
1426 |
+
background-color: #f5f5f5
|
1427 |
+
}
|
1428 |
+
|
1429 |
+
table col[class*="col-"] {
|
1430 |
+
display: table-column;
|
1431 |
+
float: none
|
1432 |
+
}
|
1433 |
+
|
1434 |
+
table td[class*="col-"], table th[class*="col-"] {
|
1435 |
+
display: table-cell;
|
1436 |
+
float: none
|
1437 |
+
}
|
1438 |
+
|
1439 |
+
.table > thead > tr > td.active, .table > tbody > tr > td.active, .table > tfoot > tr > td.active, .table > thead > tr > th.active, .table > tbody > tr > th.active, .table > tfoot > tr > th.active, .table > thead > tr.active > td, .table > tbody > tr.active > td, .table > tfoot > tr.active > td, .table > thead > tr.active > th, .table > tbody > tr.active > th, .table > tfoot > tr.active > th {
|
1440 |
+
background-color: #f5f5f5
|
1441 |
+
}
|
1442 |
+
|
1443 |
+
.table > thead > tr > td.success, .table > tbody > tr > td.success, .table > tfoot > tr > td.success, .table > thead > tr > th.success, .table > tbody > tr > th.success, .table > tfoot > tr > th.success, .table > thead > tr.success > td, .table > tbody > tr.success > td, .table > tfoot > tr.success > td, .table > thead > tr.success > th, .table > tbody > tr.success > th, .table > tfoot > tr.success > th {
|
1444 |
+
background-color: #dff0d8;
|
1445 |
+
border-color: #d6e9c6
|
1446 |
+
}
|
1447 |
+
|
1448 |
+
.table-hover > tbody > tr > td.success:hover, .table-hover > tbody > tr > th.success:hover, .table-hover > tbody > tr.success:hover > td {
|
1449 |
+
background-color: #d0e9c6;
|
1450 |
+
border-color: #c9e2b3
|
1451 |
+
}
|
1452 |
+
|
1453 |
+
.table > thead > tr > td.danger, .table > tbody > tr > td.danger, .table > tfoot > tr > td.danger, .table > thead > tr > th.danger, .table > tbody > tr > th.danger, .table > tfoot > tr > th.danger, .table > thead > tr.danger > td, .table > tbody > tr.danger > td, .table > tfoot > tr.danger > td, .table > thead > tr.danger > th, .table > tbody > tr.danger > th, .table > tfoot > tr.danger > th {
|
1454 |
+
background-color: #f2dede;
|
1455 |
+
border-color: #eed3d7
|
1456 |
+
}
|
1457 |
+
|
1458 |
+
.table-hover > tbody > tr > td.danger:hover, .table-hover > tbody > tr > th.danger:hover, .table-hover > tbody > tr.danger:hover > td {
|
1459 |
+
background-color: #ebcccc;
|
1460 |
+
border-color: #e6c1c7
|
1461 |
+
}
|
1462 |
+
|
1463 |
+
.table > thead > tr > td.warning, .table > tbody > tr > td.warning, .table > tfoot > tr > td.warning, .table > thead > tr > th.warning, .table > tbody > tr > th.warning, .table > tfoot > tr > th.warning, .table > thead > tr.warning > td, .table > tbody > tr.warning > td, .table > tfoot > tr.warning > td, .table > thead > tr.warning > th, .table > tbody > tr.warning > th, .table > tfoot > tr.warning > th {
|
1464 |
+
background-color: #fcf8e3;
|
1465 |
+
border-color: #fbeed5
|
1466 |
+
}
|
1467 |
+
|
1468 |
+
.table-hover > tbody > tr > td.warning:hover, .table-hover > tbody > tr > th.warning:hover, .table-hover > tbody > tr.warning:hover > td {
|
1469 |
+
background-color: #faf2cc;
|
1470 |
+
border-color: #f8e5be
|
1471 |
+
}
|
1472 |
+
|
1473 |
+
@media (max-width: 768px) {
|
1474 |
+
.table-responsive {
|
1475 |
+
width: 100%;
|
1476 |
+
margin-bottom: 15px;
|
1477 |
+
overflow-x: scroll;
|
1478 |
+
overflow-y: hidden;
|
1479 |
+
border: 1px solid #ddd
|
1480 |
+
}
|
1481 |
+
|
1482 |
+
.table-responsive > .table {
|
1483 |
+
margin-bottom: 0;
|
1484 |
+
background-color: #fff
|
1485 |
+
}
|
1486 |
+
|
1487 |
+
.table-responsive > .table > thead > tr > th, .table-responsive > .table > tbody > tr > th, .table-responsive > .table > tfoot > tr > th, .table-responsive > .table > thead > tr > td, .table-responsive > .table > tbody > tr > td, .table-responsive > .table > tfoot > tr > td {
|
1488 |
+
white-space: nowrap
|
1489 |
+
}
|
1490 |
+
|
1491 |
+
.table-responsive > .table-bordered {
|
1492 |
+
border: 0
|
1493 |
+
}
|
1494 |
+
|
1495 |
+
.table-responsive > .table-bordered > thead > tr > th:first-child, .table-responsive > .table-bordered > tbody > tr > th:first-child, .table-responsive > .table-bordered > tfoot > tr > th:first-child, .table-responsive > .table-bordered > thead > tr > td:first-child, .table-responsive > .table-bordered > tbody > tr > td:first-child, .table-responsive > .table-bordered > tfoot > tr > td:first-child {
|
1496 |
+
border-left: 0
|
1497 |
+
}
|
1498 |
+
|
1499 |
+
.table-responsive > .table-bordered > thead > tr > th:last-child, .table-responsive > .table-bordered > tbody > tr > th:last-child, .table-responsive > .table-bordered > tfoot > tr > th:last-child, .table-responsive > .table-bordered > thead > tr > td:last-child, .table-responsive > .table-bordered > tbody > tr > td:last-child, .table-responsive > .table-bordered > tfoot > tr > td:last-child {
|
1500 |
+
border-right: 0
|
1501 |
+
}
|
1502 |
+
|
1503 |
+
.table-responsive > .table-bordered > thead > tr:last-child > th, .table-responsive > .table-bordered > tbody > tr:last-child > th, .table-responsive > .table-bordered > tfoot > tr:last-child > th, .table-responsive > .table-bordered > thead > tr:last-child > td, .table-responsive > .table-bordered > tbody > tr:last-child > td, .table-responsive > .table-bordered > tfoot > tr:last-child > td {
|
1504 |
+
border-bottom: 0
|
1505 |
+
}
|
1506 |
+
}
|
1507 |
+
|
1508 |
+
fieldset {
|
1509 |
+
padding: 0;
|
1510 |
+
margin: 0;
|
1511 |
+
border: 0
|
1512 |
+
}
|
1513 |
+
|
1514 |
+
legend {
|
1515 |
+
display: block;
|
1516 |
+
width: 100%;
|
1517 |
+
padding: 0;
|
1518 |
+
margin-bottom: 20px;
|
1519 |
+
font-size: 21px;
|
1520 |
+
line-height: inherit;
|
1521 |
+
color: #333;
|
1522 |
+
border: 0;
|
1523 |
+
border-bottom: 1px solid #e5e5e5
|
1524 |
+
}
|
1525 |
+
|
1526 |
+
label {
|
1527 |
+
display: inline-block;
|
1528 |
+
margin-bottom: 5px;
|
1529 |
+
font-weight: bold
|
1530 |
+
}
|
1531 |
+
|
1532 |
+
input[type="search"] {
|
1533 |
+
-webkit-box-sizing: border-box;
|
1534 |
+
-moz-box-sizing: border-box;
|
1535 |
+
box-sizing: border-box
|
1536 |
+
}
|
1537 |
+
|
1538 |
+
input[type="radio"], input[type="checkbox"] {
|
1539 |
+
margin: 4px 0 0;
|
1540 |
+
margin-top: 1px \9;
|
1541 |
+
line-height: normal
|
1542 |
+
}
|
1543 |
+
|
1544 |
+
input[type="file"] {
|
1545 |
+
display: block
|
1546 |
+
}
|
1547 |
+
|
1548 |
+
select[multiple], select[size] {
|
1549 |
+
height: auto
|
1550 |
+
}
|
1551 |
+
|
1552 |
+
select optgroup {
|
1553 |
+
font-family: inherit;
|
1554 |
+
font-size: inherit;
|
1555 |
+
font-style: inherit
|
1556 |
+
}
|
1557 |
+
|
1558 |
+
input[type="file"]:focus, input[type="radio"]:focus, input[type="checkbox"]:focus {
|
1559 |
+
outline: thin dotted #333;
|
1560 |
+
outline: 5px auto -webkit-focus-ring-color;
|
1561 |
+
outline-offset: -2px
|
1562 |
+
}
|
1563 |
+
|
1564 |
+
input[type="number"]::-webkit-outer-spin-button, input[type="number"]::-webkit-inner-spin-button {
|
1565 |
+
height: auto
|
1566 |
+
}
|
1567 |
+
|
1568 |
+
.form-control:-moz-placeholder {
|
1569 |
+
color: #999
|
1570 |
+
}
|
1571 |
+
|
1572 |
+
.form-control::-moz-placeholder {
|
1573 |
+
color: #999
|
1574 |
+
}
|
1575 |
+
|
1576 |
+
.form-control:-ms-input-placeholder {
|
1577 |
+
color: #999
|
1578 |
+
}
|
1579 |
+
|
1580 |
+
.form-control::-webkit-input-placeholder {
|
1581 |
+
color: #999
|
1582 |
+
}
|
1583 |
+
|
1584 |
+
.form-control {
|
1585 |
+
display: block;
|
1586 |
+
width: 100%;
|
1587 |
+
height: 34px;
|
1588 |
+
padding: 6px 12px;
|
1589 |
+
font-size: 14px;
|
1590 |
+
line-height: 1.428571429;
|
1591 |
+
color: #555;
|
1592 |
+
vertical-align: middle;
|
1593 |
+
background-color: #fff;
|
1594 |
+
border: 1px solid #ccc;
|
1595 |
+
border-radius: 4px;
|
1596 |
+
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
|
1597 |
+
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
|
1598 |
+
-webkit-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
|
1599 |
+
transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s
|
1600 |
+
}
|
1601 |
+
|
1602 |
+
.form-control:focus {
|
1603 |
+
border-color: #66afe9;
|
1604 |
+
outline: 0;
|
1605 |
+
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);
|
1606 |
+
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6)
|
1607 |
+
}
|
1608 |
+
|
1609 |
+
.form-control[disabled], .form-control[readonly], fieldset[disabled] .form-control {
|
1610 |
+
cursor: not-allowed;
|
1611 |
+
background-color: #eee
|
1612 |
+
}
|
1613 |
+
|
1614 |
+
textarea.form-control {
|
1615 |
+
height: auto
|
1616 |
+
}
|
1617 |
+
|
1618 |
+
.form-group {
|
1619 |
+
margin-bottom: 15px
|
1620 |
+
}
|
1621 |
+
|
1622 |
+
.radio, .checkbox {
|
1623 |
+
display: block;
|
1624 |
+
min-height: 20px;
|
1625 |
+
padding-left: 20px;
|
1626 |
+
margin-top: 10px;
|
1627 |
+
margin-bottom: 10px;
|
1628 |
+
vertical-align: middle
|
1629 |
+
}
|
1630 |
+
|
1631 |
+
.radio label, .checkbox label {
|
1632 |
+
display: inline;
|
1633 |
+
margin-bottom: 0;
|
1634 |
+
font-weight: normal;
|
1635 |
+
cursor: pointer
|
1636 |
+
}
|
1637 |
+
|
1638 |
+
.radio input[type="radio"], .radio-inline input[type="radio"], .checkbox input[type="checkbox"], .checkbox-inline input[type="checkbox"] {
|
1639 |
+
float: left;
|
1640 |
+
margin-left: -20px
|
1641 |
+
}
|
1642 |
+
|
1643 |
+
.radio + .radio, .checkbox + .checkbox {
|
1644 |
+
margin-top: -5px
|
1645 |
+
}
|
1646 |
+
|
1647 |
+
.radio-inline, .checkbox-inline {
|
1648 |
+
display: inline-block;
|
1649 |
+
padding-left: 20px;
|
1650 |
+
margin-bottom: 0;
|
1651 |
+
font-weight: normal;
|
1652 |
+
vertical-align: middle;
|
1653 |
+
cursor: pointer
|
1654 |
+
}
|
1655 |
+
|
1656 |
+
.radio-inline + .radio-inline, .checkbox-inline + .checkbox-inline {
|
1657 |
+
margin-top: 0;
|
1658 |
+
margin-left: 10px
|
1659 |
+
}
|
1660 |
+
|
1661 |
+
input[type="radio"][disabled], input[type="checkbox"][disabled], .radio[disabled], .radio-inline[disabled], .checkbox[disabled], .checkbox-inline[disabled], fieldset[disabled] input[type="radio"], fieldset[disabled] input[type="checkbox"], fieldset[disabled] .radio, fieldset[disabled] .radio-inline, fieldset[disabled] .checkbox, fieldset[disabled] .checkbox-inline {
|
1662 |
+
cursor: not-allowed
|
1663 |
+
}
|
1664 |
+
|
1665 |
+
.input-sm {
|
1666 |
+
height: 30px;
|
1667 |
+
padding: 5px 10px;
|
1668 |
+
font-size: 12px;
|
1669 |
+
line-height: 1.5;
|
1670 |
+
border-radius: 3px
|
1671 |
+
}
|
1672 |
+
|
1673 |
+
select.input-sm {
|
1674 |
+
height: 30px;
|
1675 |
+
line-height: 30px
|
1676 |
+
}
|
1677 |
+
|
1678 |
+
textarea.input-sm {
|
1679 |
+
height: auto
|
1680 |
+
}
|
1681 |
+
|
1682 |
+
.input-lg {
|
1683 |
+
height: 45px;
|
1684 |
+
padding: 10px 16px;
|
1685 |
+
font-size: 18px;
|
1686 |
+
line-height: 1.33;
|
1687 |
+
border-radius: 6px
|
1688 |
+
}
|
1689 |
+
|
1690 |
+
select.input-lg {
|
1691 |
+
height: 45px;
|
1692 |
+
line-height: 45px
|
1693 |
+
}
|
1694 |
+
|
1695 |
+
textarea.input-lg {
|
1696 |
+
height: auto
|
1697 |
+
}
|
1698 |
+
|
1699 |
+
.has-warning .help-block, .has-warning .control-label {
|
1700 |
+
color: #c09853
|
1701 |
+
}
|
1702 |
+
|
1703 |
+
.has-warning .form-control {
|
1704 |
+
border-color: #c09853;
|
1705 |
+
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
|
1706 |
+
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075)
|
1707 |
+
}
|
1708 |
+
|
1709 |
+
.has-warning .form-control:focus {
|
1710 |
+
border-color: #a47e3c;
|
1711 |
+
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #dbc59e;
|
1712 |
+
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #dbc59e
|
1713 |
+
}
|
1714 |
+
|
1715 |
+
.has-warning .input-group-addon {
|
1716 |
+
color: #c09853;
|
1717 |
+
background-color: #fcf8e3;
|
1718 |
+
border-color: #c09853
|
1719 |
+
}
|
1720 |
+
|
1721 |
+
.has-error .help-block, .has-error .control-label {
|
1722 |
+
color: #b94a48
|
1723 |
+
}
|
1724 |
+
|
1725 |
+
.has-error .form-control {
|
1726 |
+
border-color: #b94a48;
|
1727 |
+
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
|
1728 |
+
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075)
|
1729 |
+
}
|
1730 |
+
|
1731 |
+
.has-error .form-control:focus {
|
1732 |
+
border-color: #953b39;
|
1733 |
+
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #d59392;
|
1734 |
+
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #d59392
|
1735 |
+
}
|
1736 |
+
|
1737 |
+
.has-error .input-group-addon {
|
1738 |
+
color: #b94a48;
|
1739 |
+
background-color: #f2dede;
|
1740 |
+
border-color: #b94a48
|
1741 |
+
}
|
1742 |
+
|
1743 |
+
.has-success .help-block, .has-success .control-label {
|
1744 |
+
color: #468847
|
1745 |
+
}
|
1746 |
+
|
1747 |
+
.has-success .form-control {
|
1748 |
+
border-color: #468847;
|
1749 |
+
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
|
1750 |
+
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075)
|
1751 |
+
}
|
1752 |
+
|
1753 |
+
.has-success .form-control:focus {
|
1754 |
+
border-color: #356635;
|
1755 |
+
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #7aba7b;
|
1756 |
+
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #7aba7b
|
1757 |
+
}
|
1758 |
+
|
1759 |
+
.has-success .input-group-addon {
|
1760 |
+
color: #468847;
|
1761 |
+
background-color: #dff0d8;
|
1762 |
+
border-color: #468847
|
1763 |
+
}
|
1764 |
+
|
1765 |
+
.form-control-static {
|
1766 |
+
padding-top: 7px;
|
1767 |
+
margin-bottom: 0
|
1768 |
+
}
|
1769 |
+
|
1770 |
+
.help-block {
|
1771 |
+
display: block;
|
1772 |
+
margin-top: 5px;
|
1773 |
+
margin-bottom: 10px;
|
1774 |
+
color: #737373
|
1775 |
+
}
|
1776 |
+
|
1777 |
+
@media (min-width: 768px) {
|
1778 |
+
.form-inline .form-group {
|
1779 |
+
display: inline-block;
|
1780 |
+
margin-bottom: 0;
|
1781 |
+
vertical-align: middle
|
1782 |
+
}
|
1783 |
+
|
1784 |
+
.form-inline .form-control {
|
1785 |
+
display: inline-block
|
1786 |
+
}
|
1787 |
+
|
1788 |
+
.form-inline .radio, .form-inline .checkbox {
|
1789 |
+
display: inline-block;
|
1790 |
+
padding-left: 0;
|
1791 |
+
margin-top: 0;
|
1792 |
+
margin-bottom: 0
|
1793 |
+
}
|
1794 |
+
|
1795 |
+
.form-inline .radio input[type="radio"], .form-inline .checkbox input[type="checkbox"] {
|
1796 |
+
float: none;
|
1797 |
+
margin-left: 0
|
1798 |
+
}
|
1799 |
+
}
|
1800 |
+
|
1801 |
+
.form-horizontal .control-label, .form-horizontal .radio, .form-horizontal .checkbox, .form-horizontal .radio-inline, .form-horizontal .checkbox-inline {
|
1802 |
+
padding-top: 7px;
|
1803 |
+
margin-top: 0;
|
1804 |
+
margin-bottom: 0
|
1805 |
+
}
|
1806 |
+
|
1807 |
+
.form-horizontal .form-group {
|
1808 |
+
margin-right: -15px;
|
1809 |
+
margin-left: -15px
|
1810 |
+
}
|
1811 |
+
|
1812 |
+
.form-horizontal .form-group:before, .form-horizontal .form-group:after {
|
1813 |
+
display: table;
|
1814 |
+
content: " "
|
1815 |
+
}
|
1816 |
+
|
1817 |
+
.form-horizontal .form-group:after {
|
1818 |
+
clear: both
|
1819 |
+
}
|
1820 |
+
|
1821 |
+
.form-horizontal .form-group:before, .form-horizontal .form-group:after {
|
1822 |
+
display: table;
|
1823 |
+
content: " "
|
1824 |
+
}
|
1825 |
+
|
1826 |
+
.form-horizontal .form-group:after {
|
1827 |
+
clear: both
|
1828 |
+
}
|
1829 |
+
|
1830 |
+
@media (min-width: 768px) {
|
1831 |
+
.form-horizontal .control-label {
|
1832 |
+
text-align: right
|
1833 |
+
}
|
1834 |
+
}
|
1835 |
+
|
1836 |
+
.btn {
|
1837 |
+
display: inline-block;
|
1838 |
+
padding: 6px 12px;
|
1839 |
+
margin-bottom: 0;
|
1840 |
+
font-size: 14px;
|
1841 |
+
font-weight: normal;
|
1842 |
+
line-height: 1.428571429;
|
1843 |
+
text-align: center;
|
1844 |
+
white-space: nowrap;
|
1845 |
+
vertical-align: middle;
|
1846 |
+
cursor: pointer;
|
1847 |
+
border: 1px solid transparent;
|
1848 |
+
border-radius: 4px;
|
1849 |
+
-webkit-user-select: none;
|
1850 |
+
-moz-user-select: none;
|
1851 |
+
-ms-user-select: none;
|
1852 |
+
-o-user-select: none;
|
1853 |
+
user-select: none
|
1854 |
+
}
|
1855 |
+
|
1856 |
+
.btn:focus {
|
1857 |
+
outline: thin dotted #333;
|
1858 |
+
outline: 5px auto -webkit-focus-ring-color;
|
1859 |
+
outline-offset: -2px
|
1860 |
+
}
|
1861 |
+
|
1862 |
+
.btn:hover, .btn:focus {
|
1863 |
+
color: #333;
|
1864 |
+
text-decoration: none
|
1865 |
+
}
|
1866 |
+
|
1867 |
+
.btn:active, .btn.active {
|
1868 |
+
background-image: none;
|
1869 |
+
outline: 0;
|
1870 |
+
-webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
|
1871 |
+
box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125)
|
1872 |
+
}
|
1873 |
+
|
1874 |
+
.btn.disabled, .btn[disabled], fieldset[disabled] .btn {
|
1875 |
+
pointer-events: none;
|
1876 |
+
cursor: not-allowed;
|
1877 |
+
opacity: .65;
|
1878 |
+
filter: alpha(opacity=65);
|
1879 |
+
-webkit-box-shadow: none;
|
1880 |
+
box-shadow: none
|
1881 |
+
}
|
1882 |
+
|
1883 |
+
.btn-default {
|
1884 |
+
color: #333;
|
1885 |
+
background-color: #fff;
|
1886 |
+
border-color: #ccc
|
1887 |
+
}
|
1888 |
+
|
1889 |
+
.btn-default:hover, .btn-default:focus, .btn-default:active, .btn-default.active, .open .dropdown-toggle.btn-default {
|
1890 |
+
color: #333;
|
1891 |
+
background-color: #ebebeb;
|
1892 |
+
border-color: #adadad
|
1893 |
+
}
|
1894 |
+
|
1895 |
+
.btn-default:active, .btn-default.active, .open .dropdown-toggle.btn-default {
|
1896 |
+
background-image: none
|
1897 |
+
}
|
1898 |
+
|
1899 |
+
.btn-default.disabled, .btn-default[disabled], fieldset[disabled] .btn-default, .btn-default.disabled:hover, .btn-default[disabled]:hover, fieldset[disabled] .btn-default:hover, .btn-default.disabled:focus, .btn-default[disabled]:focus, fieldset[disabled] .btn-default:focus, .btn-default.disabled:active, .btn-default[disabled]:active, fieldset[disabled] .btn-default:active, .btn-default.disabled.active, .btn-default[disabled].active, fieldset[disabled] .btn-default.active {
|
1900 |
+
background-color: #fff;
|
1901 |
+
border-color: #ccc
|
1902 |
+
}
|
1903 |
+
|
1904 |
+
.btn-primary {
|
1905 |
+
color: #fff;
|
1906 |
+
background-color: #428bca;
|
1907 |
+
border-color: #357ebd
|
1908 |
+
}
|
1909 |
+
|
1910 |
+
.btn-primary:hover, .btn-primary:focus, .btn-primary:active, .btn-primary.active, .open .dropdown-toggle.btn-primary {
|
1911 |
+
color: #fff;
|
1912 |
+
background-color: #3276b1;
|
1913 |
+
border-color: #285e8e
|
1914 |
+
}
|
1915 |
+
|
1916 |
+
.btn-primary:active, .btn-primary.active, .open .dropdown-toggle.btn-primary {
|
1917 |
+
background-image: none
|
1918 |
+
}
|
1919 |
+
|
1920 |
+
.btn-primary.disabled, .btn-primary[disabled], fieldset[disabled] .btn-primary, .btn-primary.disabled:hover, .btn-primary[disabled]:hover, fieldset[disabled] .btn-primary:hover, .btn-primary.disabled:focus, .btn-primary[disabled]:focus, fieldset[disabled] .btn-primary:focus, .btn-primary.disabled:active, .btn-primary[disabled]:active, fieldset[disabled] .btn-primary:active, .btn-primary.disabled.active, .btn-primary[disabled].active, fieldset[disabled] .btn-primary.active {
|
1921 |
+
background-color: #428bca;
|
1922 |
+
border-color: #357ebd
|
1923 |
+
}
|
1924 |
+
|
1925 |
+
.btn-warning {
|
1926 |
+
color: #fff;
|
1927 |
+
background-color: #f0ad4e;
|
1928 |
+
border-color: #eea236
|
1929 |
+
}
|
1930 |
+
|
1931 |
+
.btn-warning:hover, .btn-warning:focus, .btn-warning:active, .btn-warning.active, .open .dropdown-toggle.btn-warning {
|
1932 |
+
color: #fff;
|
1933 |
+
background-color: #ed9c28;
|
1934 |
+
border-color: #d58512
|
1935 |
+
}
|
1936 |
+
|
1937 |
+
.btn-warning:active, .btn-warning.active, .open .dropdown-toggle.btn-warning {
|
1938 |
+
background-image: none
|
1939 |
+
}
|
1940 |
+
|
1941 |
+
.btn-warning.disabled, .btn-warning[disabled], fieldset[disabled] .btn-warning, .btn-warning.disabled:hover, .btn-warning[disabled]:hover, fieldset[disabled] .btn-warning:hover, .btn-warning.disabled:focus, .btn-warning[disabled]:focus, fieldset[disabled] .btn-warning:focus, .btn-warning.disabled:active, .btn-warning[disabled]:active, fieldset[disabled] .btn-warning:active, .btn-warning.disabled.active, .btn-warning[disabled].active, fieldset[disabled] .btn-warning.active {
|
1942 |
+
background-color: #f0ad4e;
|
1943 |
+
border-color: #eea236
|
1944 |
+
}
|
1945 |
+
|
1946 |
+
.btn-danger {
|
1947 |
+
color: #fff;
|
1948 |
+
background-color: #d9534f;
|
1949 |
+
border-color: #d43f3a
|
1950 |
+
}
|
1951 |
+
|
1952 |
+
.btn-danger:hover, .btn-danger:focus, .btn-danger:active, .btn-danger.active, .open .dropdown-toggle.btn-danger {
|
1953 |
+
color: #fff;
|
1954 |
+
background-color: #d2322d;
|
1955 |
+
border-color: #ac2925
|
1956 |
+
}
|
1957 |
+
|
1958 |
+
.btn-danger:active, .btn-danger.active, .open .dropdown-toggle.btn-danger {
|
1959 |
+
background-image: none
|
1960 |
+
}
|
1961 |
+
|
1962 |
+
.btn-danger.disabled, .btn-danger[disabled], fieldset[disabled] .btn-danger, .btn-danger.disabled:hover, .btn-danger[disabled]:hover, fieldset[disabled] .btn-danger:hover, .btn-danger.disabled:focus, .btn-danger[disabled]:focus, fieldset[disabled] .btn-danger:focus, .btn-danger.disabled:active, .btn-danger[disabled]:active, fieldset[disabled] .btn-danger:active, .btn-danger.disabled.active, .btn-danger[disabled].active, fieldset[disabled] .btn-danger.active {
|
1963 |
+
background-color: #d9534f;
|
1964 |
+
border-color: #d43f3a
|
1965 |
+
}
|
1966 |
+
|
1967 |
+
.btn-success {
|
1968 |
+
color: #fff;
|
1969 |
+
background-color: #5cb85c;
|
1970 |
+
border-color: #4cae4c
|
1971 |
+
}
|
1972 |
+
|
1973 |
+
.btn-success:hover, .btn-success:focus, .btn-success:active, .btn-success.active, .open .dropdown-toggle.btn-success {
|
1974 |
+
color: #fff;
|
1975 |
+
background-color: #47a447;
|
1976 |
+
border-color: #398439
|
1977 |
+
}
|
1978 |
+
|
1979 |
+
.btn-success:active, .btn-success.active, .open .dropdown-toggle.btn-success {
|
1980 |
+
background-image: none
|
1981 |
+
}
|
1982 |
+
|
1983 |
+
.btn-success.disabled, .btn-success[disabled], fieldset[disabled] .btn-success, .btn-success.disabled:hover, .btn-success[disabled]:hover, fieldset[disabled] .btn-success:hover, .btn-success.disabled:focus, .btn-success[disabled]:focus, fieldset[disabled] .btn-success:focus, .btn-success.disabled:active, .btn-success[disabled]:active, fieldset[disabled] .btn-success:active, .btn-success.disabled.active, .btn-success[disabled].active, fieldset[disabled] .btn-success.active {
|
1984 |
+
background-color: #5cb85c;
|
1985 |
+
border-color: #4cae4c
|
1986 |
+
}
|
1987 |
+
|
1988 |
+
.btn-info {
|
1989 |
+
color: #fff;
|
1990 |
+
background-color: #5bc0de;
|
1991 |
+
border-color: #46b8da
|
1992 |
+
}
|
1993 |
+
|
1994 |
+
.btn-info:hover, .btn-info:focus, .btn-info:active, .btn-info.active, .open .dropdown-toggle.btn-info {
|
1995 |
+
color: #fff;
|
1996 |
+
background-color: #39b3d7;
|
1997 |
+
border-color: #269abc
|
1998 |
+
}
|
1999 |
+
|
2000 |
+
.btn-info:active, .btn-info.active, .open .dropdown-toggle.btn-info {
|
2001 |
+
background-image: none
|
2002 |
+
}
|
2003 |
+
|
2004 |
+
.btn-info.disabled, .btn-info[disabled], fieldset[disabled] .btn-info, .btn-info.disabled:hover, .btn-info[disabled]:hover, fieldset[disabled] .btn-info:hover, .btn-info.disabled:focus, .btn-info[disabled]:focus, fieldset[disabled] .btn-info:focus, .btn-info.disabled:active, .btn-info[disabled]:active, fieldset[disabled] .btn-info:active, .btn-info.disabled.active, .btn-info[disabled].active, fieldset[disabled] .btn-info.active {
|
2005 |
+
background-color: #5bc0de;
|
2006 |
+
border-color: #46b8da
|
2007 |
+
}
|
2008 |
+
|
2009 |
+
.btn-link {
|
2010 |
+
font-weight: normal;
|
2011 |
+
color: #428bca;
|
2012 |
+
cursor: pointer;
|
2013 |
+
border-radius: 0
|
2014 |
+
}
|
2015 |
+
|
2016 |
+
.btn-link, .btn-link:active, .btn-link[disabled], fieldset[disabled] .btn-link {
|
2017 |
+
background-color: transparent;
|
2018 |
+
-webkit-box-shadow: none;
|
2019 |
+
box-shadow: none
|
2020 |
+
}
|
2021 |
+
|
2022 |
+
.btn-link, .btn-link:hover, .btn-link:focus, .btn-link:active {
|
2023 |
+
border-color: transparent
|
2024 |
+
}
|
2025 |
+
|
2026 |
+
.btn-link:hover, .btn-link:focus {
|
2027 |
+
color: #2a6496;
|
2028 |
+
text-decoration: underline;
|
2029 |
+
background-color: transparent
|
2030 |
+
}
|
2031 |
+
|
2032 |
+
.btn-link[disabled]:hover, fieldset[disabled] .btn-link:hover, .btn-link[disabled]:focus, fieldset[disabled] .btn-link:focus {
|
2033 |
+
color: #999;
|
2034 |
+
text-decoration: none
|
2035 |
+
}
|
2036 |
+
|
2037 |
+
.btn-lg {
|
2038 |
+
padding: 10px 16px;
|
2039 |
+
font-size: 18px;
|
2040 |
+
line-height: 1.33;
|
2041 |
+
border-radius: 6px
|
2042 |
+
}
|
2043 |
+
|
2044 |
+
.btn-sm, .btn-xs {
|
2045 |
+
padding: 5px 10px;
|
2046 |
+
font-size: 12px;
|
2047 |
+
line-height: 1.5;
|
2048 |
+
border-radius: 3px
|
2049 |
+
}
|
2050 |
+
|
2051 |
+
.btn-xs {
|
2052 |
+
padding: 1px 5px
|
2053 |
+
}
|
2054 |
+
|
2055 |
+
.btn-block {
|
2056 |
+
display: block;
|
2057 |
+
width: 100%;
|
2058 |
+
padding-right: 0;
|
2059 |
+
padding-left: 0
|
2060 |
+
}
|
2061 |
+
|
2062 |
+
.btn-block + .btn-block {
|
2063 |
+
margin-top: 5px
|
2064 |
+
}
|
2065 |
+
|
2066 |
+
input[type="submit"].btn-block, input[type="reset"].btn-block, input[type="button"].btn-block {
|
2067 |
+
width: 100%
|
2068 |
+
}
|
2069 |
+
|
2070 |
+
.fade {
|
2071 |
+
opacity: 0;
|
2072 |
+
-webkit-transition: opacity .15s linear;
|
2073 |
+
transition: opacity .15s linear
|
2074 |
+
}
|
2075 |
+
|
2076 |
+
.fade.in {
|
2077 |
+
opacity: 1
|
2078 |
+
}
|
2079 |
+
|
2080 |
+
.collapse {
|
2081 |
+
display: none
|
2082 |
+
}
|
2083 |
+
|
2084 |
+
.collapse.in {
|
2085 |
+
display: block
|
2086 |
+
}
|
2087 |
+
|
2088 |
+
.collapsing {
|
2089 |
+
position: relative;
|
2090 |
+
height: 0;
|
2091 |
+
overflow: hidden;
|
2092 |
+
-webkit-transition: height .35s ease;
|
2093 |
+
transition: height .35s ease
|
2094 |
+
}
|
2095 |
+
|
2096 |
+
@font-face {
|
2097 |
+
font-family: 'Glyphicons Halflings';
|
2098 |
+
src: url('../fonts/glyphicons-halflings-regular.eot');
|
2099 |
+
src: url('../fonts/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'), url('../fonts/glyphicons-halflings-regular.woff') format('woff'), url('../fonts/glyphicons-halflings-regular.ttf') format('truetype'), url('../fonts/glyphicons-halflings-regular.svg#glyphicons-halflingsregular') format('svg')
|
2100 |
+
}
|
2101 |
+
|
2102 |
+
.glyphicon {
|
2103 |
+
position: relative;
|
2104 |
+
top: 1px;
|
2105 |
+
display: inline-block;
|
2106 |
+
font-family: 'Glyphicons Halflings';
|
2107 |
+
-webkit-font-smoothing: antialiased;
|
2108 |
+
font-style: normal;
|
2109 |
+
font-weight: normal;
|
2110 |
+
line-height: 1
|
2111 |
+
}
|
2112 |
+
|
2113 |
+
.glyphicon-asterisk:before {
|
2114 |
+
content: "\2a"
|
2115 |
+
}
|
2116 |
+
|
2117 |
+
.glyphicon-plus:before {
|
2118 |
+
content: "\2b"
|
2119 |
+
}
|
2120 |
+
|
2121 |
+
.glyphicon-euro:before {
|
2122 |
+
content: "\20ac"
|
2123 |
+
}
|
2124 |
+
|
2125 |
+
.glyphicon-minus:before {
|
2126 |
+
content: "\2212"
|
2127 |
+
}
|
2128 |
+
|
2129 |
+
.glyphicon-cloud:before {
|
2130 |
+
content: "\2601"
|
2131 |
+
}
|
2132 |
+
|
2133 |
+
.glyphicon-envelope:before {
|
2134 |
+
content: "\2709"
|
2135 |
+
}
|
2136 |
+
|
2137 |
+
.glyphicon-pencil:before {
|
2138 |
+
content: "\270f"
|
2139 |
+
}
|
2140 |
+
|
2141 |
+
.glyphicon-glass:before {
|
2142 |
+
content: "\e001"
|
2143 |
+
}
|
2144 |
+
|
2145 |
+
.glyphicon-music:before {
|
2146 |
+
content: "\e002"
|
2147 |
+
}
|
2148 |
+
|
2149 |
+
.glyphicon-search:before {
|
2150 |
+
content: "\e003"
|
2151 |
+
}
|
2152 |
+
|
2153 |
+
.glyphicon-heart:before {
|
2154 |
+
content: "\e005"
|
2155 |
+
}
|
2156 |
+
|
2157 |
+
.glyphicon-star:before {
|
2158 |
+
content: "\e006"
|
2159 |
+
}
|
2160 |
+
|
2161 |
+
.glyphicon-star-empty:before {
|
2162 |
+
content: "\e007"
|
2163 |
+
}
|
2164 |
+
|
2165 |
+
.glyphicon-user:before {
|
2166 |
+
content: "\e008"
|
2167 |
+
}
|
2168 |
+
|
2169 |
+
.glyphicon-film:before {
|
2170 |
+
content: "\e009"
|
2171 |
+
}
|
2172 |
+
|
2173 |
+
.glyphicon-th-large:before {
|
2174 |
+
content: "\e010"
|
2175 |
+
}
|
2176 |
+
|
2177 |
+
.glyphicon-th:before {
|
2178 |
+
content: "\e011"
|
2179 |
+
}
|
2180 |
+
|
2181 |
+
.glyphicon-th-list:before {
|
2182 |
+
content: "\e012"
|
2183 |
+
}
|
2184 |
+
|
2185 |
+
.glyphicon-ok:before {
|
2186 |
+
content: "\e013"
|
2187 |
+
}
|
2188 |
+
|
2189 |
+
.glyphicon-remove:before {
|
2190 |
+
content: "\e014"
|
2191 |
+
}
|
2192 |
+
|
2193 |
+
.glyphicon-zoom-in:before {
|
2194 |
+
content: "\e015"
|
2195 |
+
}
|
2196 |
+
|
2197 |
+
.glyphicon-zoom-out:before {
|
2198 |
+
content: "\e016"
|
2199 |
+
}
|
2200 |
+
|
2201 |
+
.glyphicon-off:before {
|
2202 |
+
content: "\e017"
|
2203 |
+
}
|
2204 |
+
|
2205 |
+
.glyphicon-signal:before {
|
2206 |
+
content: "\e018"
|
2207 |
+
}
|
2208 |
+
|
2209 |
+
.glyphicon-cog:before {
|
2210 |
+
content: "\e019"
|
2211 |
+
}
|
2212 |
+
|
2213 |
+
.glyphicon-trash:before {
|
2214 |
+
content: "\e020"
|
2215 |
+
}
|
2216 |
+
|
2217 |
+
.glyphicon-home:before {
|
2218 |
+
content: "\e021"
|
2219 |
+
}
|
2220 |
+
|
2221 |
+
.glyphicon-file:before {
|
2222 |
+
content: "\e022"
|
2223 |
+
}
|
2224 |
+
|
2225 |
+
.glyphicon-time:before {
|
2226 |
+
content: "\e023"
|
2227 |
+
}
|
2228 |
+
|
2229 |
+
.glyphicon-road:before {
|
2230 |
+
content: "\e024"
|
2231 |
+
}
|
2232 |
+
|
2233 |
+
.glyphicon-download-alt:before {
|
2234 |
+
content: "\e025"
|
2235 |
+
}
|
2236 |
+
|
2237 |
+
.glyphicon-download:before {
|
2238 |
+
content: "\e026"
|
2239 |
+
}
|
2240 |
+
|
2241 |
+
.glyphicon-upload:before {
|
2242 |
+
content: "\e027"
|
2243 |
+
}
|
2244 |
+
|
2245 |
+
.glyphicon-inbox:before {
|
2246 |
+
content: "\e028"
|
2247 |
+
}
|
2248 |
+
|
2249 |
+
.glyphicon-play-circle:before {
|
2250 |
+
content: "\e029"
|
2251 |
+
}
|
2252 |
+
|
2253 |
+
.glyphicon-repeat:before {
|
2254 |
+
content: "\e030"
|
2255 |
+
}
|
2256 |
+
|
2257 |
+
.glyphicon-refresh:before {
|
2258 |
+
content: "\e031"
|
2259 |
+
}
|
2260 |
+
|
2261 |
+
.glyphicon-list-alt:before {
|
2262 |
+
content: "\e032"
|
2263 |
+
}
|
2264 |
+
|
2265 |
+
.glyphicon-flag:before {
|
2266 |
+
content: "\e034"
|
2267 |
+
}
|
2268 |
+
|
2269 |
+
.glyphicon-headphones:before {
|
2270 |
+
content: "\e035"
|
2271 |
+
}
|
2272 |
+
|
2273 |
+
.glyphicon-volume-off:before {
|
2274 |
+
content: "\e036"
|
2275 |
+
}
|
2276 |
+
|
2277 |
+
.glyphicon-volume-down:before {
|
2278 |
+
content: "\e037"
|
2279 |
+
}
|
2280 |
+
|
2281 |
+
.glyphicon-volume-up:before {
|
2282 |
+
content: "\e038"
|
2283 |
+
}
|
2284 |
+
|
2285 |
+
.glyphicon-qrcode:before {
|
2286 |
+
content: "\e039"
|
2287 |
+
}
|
2288 |
+
|
2289 |
+
.glyphicon-barcode:before {
|
2290 |
+
content: "\e040"
|
2291 |
+
}
|
2292 |
+
|
2293 |
+
.glyphicon-tag:before {
|
2294 |
+
content: "\e041"
|
2295 |
+
}
|
2296 |
+
|
2297 |
+
.glyphicon-tags:before {
|
2298 |
+
content: "\e042"
|
2299 |
+
}
|
2300 |
+
|
2301 |
+
.glyphicon-book:before {
|
2302 |
+
content: "\e043"
|
2303 |
+
}
|
2304 |
+
|
2305 |
+
.glyphicon-print:before {
|
2306 |
+
content: "\e045"
|
2307 |
+
}
|
2308 |
+
|
2309 |
+
.glyphicon-font:before {
|
2310 |
+
content: "\e047"
|
2311 |
+
}
|
2312 |
+
|
2313 |
+
.glyphicon-bold:before {
|
2314 |
+
content: "\e048"
|
2315 |
+
}
|
2316 |
+
|
2317 |
+
.glyphicon-italic:before {
|
2318 |
+
content: "\e049"
|
2319 |
+
}
|
2320 |
+
|
2321 |
+
.glyphicon-text-height:before {
|
2322 |
+
content: "\e050"
|
2323 |
+
}
|
2324 |
+
|
2325 |
+
.glyphicon-text-width:before {
|
2326 |
+
content: "\e051"
|
2327 |
+
}
|
2328 |
+
|
2329 |
+
.glyphicon-align-left:before {
|
2330 |
+
content: "\e052"
|
2331 |
+
}
|
2332 |
+
|
2333 |
+
.glyphicon-align-center:before {
|
2334 |
+
content: "\e053"
|
2335 |
+
}
|
2336 |
+
|
2337 |
+
.glyphicon-align-right:before {
|
2338 |
+
content: "\e054"
|
2339 |
+
}
|
2340 |
+
|
2341 |
+
.glyphicon-align-justify:before {
|
2342 |
+
content: "\e055"
|
2343 |
+
}
|
2344 |
+
|
2345 |
+
.glyphicon-list:before {
|
2346 |
+
content: "\e056"
|
2347 |
+
}
|
2348 |
+
|
2349 |
+
.glyphicon-indent-left:before {
|
2350 |
+
content: "\e057"
|
2351 |
+
}
|
2352 |
+
|
2353 |
+
.glyphicon-indent-right:before {
|
2354 |
+
content: "\e058"
|
2355 |
+
}
|
2356 |
+
|
2357 |
+
.glyphicon-facetime-video:before {
|
2358 |
+
content: "\e059"
|
2359 |
+
}
|
2360 |
+
|
2361 |
+
.glyphicon-picture:before {
|
2362 |
+
content: "\e060"
|
2363 |
+
}
|
2364 |
+
|
2365 |
+
.glyphicon-map-marker:before {
|
2366 |
+
content: "\e062"
|
2367 |
+
}
|
2368 |
+
|
2369 |
+
.glyphicon-adjust:before {
|
2370 |
+
content: "\e063"
|
2371 |
+
}
|
2372 |
+
|
2373 |
+
.glyphicon-tint:before {
|
2374 |
+
content: "\e064"
|
2375 |
+
}
|
2376 |
+
|
2377 |
+
.glyphicon-edit:before {
|
2378 |
+
content: "\e065"
|
2379 |
+
}
|
2380 |
+
|
2381 |
+
.glyphicon-share:before {
|
2382 |
+
content: "\e066"
|
2383 |
+
}
|
2384 |
+
|
2385 |
+
.glyphicon-check:before {
|
2386 |
+
content: "\e067"
|
2387 |
+
}
|
2388 |
+
|
2389 |
+
.glyphicon-move:before {
|
2390 |
+
content: "\e068"
|
2391 |
+
}
|
2392 |
+
|
2393 |
+
.glyphicon-step-backward:before {
|
2394 |
+
content: "\e069"
|
2395 |
+
}
|
2396 |
+
|
2397 |
+
.glyphicon-fast-backward:before {
|
2398 |
+
content: "\e070"
|
2399 |
+
}
|
2400 |
+
|
2401 |
+
.glyphicon-backward:before {
|
2402 |
+
content: "\e071"
|
2403 |
+
}
|
2404 |
+
|
2405 |
+
.glyphicon-play:before {
|
2406 |
+
content: "\e072"
|
2407 |
+
}
|
2408 |
+
|
2409 |
+
.glyphicon-pause:before {
|
2410 |
+
content: "\e073"
|
2411 |
+
}
|
2412 |
+
|
2413 |
+
.glyphicon-stop:before {
|
2414 |
+
content: "\e074"
|
2415 |
+
}
|
2416 |
+
|
2417 |
+
.glyphicon-forward:before {
|
2418 |
+
content: "\e075"
|
2419 |
+
}
|
2420 |
+
|
2421 |
+
.glyphicon-fast-forward:before {
|
2422 |
+
content: "\e076"
|
2423 |
+
}
|
2424 |
+
|
2425 |
+
.glyphicon-step-forward:before {
|
2426 |
+
content: "\e077"
|
2427 |
+
}
|
2428 |
+
|
2429 |
+
.glyphicon-eject:before {
|
2430 |
+
content: "\e078"
|
2431 |
+
}
|
2432 |
+
|
2433 |
+
.glyphicon-chevron-left:before {
|
2434 |
+
content: "\e079"
|
2435 |
+
}
|
2436 |
+
|
2437 |
+
.glyphicon-chevron-right:before {
|
2438 |
+
content: "\e080"
|
2439 |
+
}
|
2440 |
+
|
2441 |
+
.glyphicon-plus-sign:before {
|
2442 |
+
content: "\e081"
|
2443 |
+
}
|
2444 |
+
|
2445 |
+
.glyphicon-minus-sign:before {
|
2446 |
+
content: "\e082"
|
2447 |
+
}
|
2448 |
+
|
2449 |
+
.glyphicon-remove-sign:before {
|
2450 |
+
content: "\e083"
|
2451 |
+
}
|
2452 |
+
|
2453 |
+
.glyphicon-ok-sign:before {
|
2454 |
+
content: "\e084"
|
2455 |
+
}
|
2456 |
+
|
2457 |
+
.glyphicon-question-sign:before {
|
2458 |
+
content: "\e085"
|
2459 |
+
}
|
2460 |
+
|
2461 |
+
.glyphicon-info-sign:before {
|
2462 |
+
content: "\e086"
|
2463 |
+
}
|
2464 |
+
|
2465 |
+
.glyphicon-screenshot:before {
|
2466 |
+
content: "\e087"
|
2467 |
+
}
|
2468 |
+
|
2469 |
+
.glyphicon-remove-circle:before {
|
2470 |
+
content: "\e088"
|
2471 |
+
}
|
2472 |
+
|
2473 |
+
.glyphicon-ok-circle:before {
|
2474 |
+
content: "\e089"
|
2475 |
+
}
|
2476 |
+
|
2477 |
+
.glyphicon-ban-circle:before {
|
2478 |
+
content: "\e090"
|
2479 |
+
}
|
2480 |
+
|
2481 |
+
.glyphicon-arrow-left:before {
|
2482 |
+
content: "\e091"
|
2483 |
+
}
|
2484 |
+
|
2485 |
+
.glyphicon-arrow-right:before {
|
2486 |
+
content: "\e092"
|
2487 |
+
}
|
2488 |
+
|
2489 |
+
.glyphicon-arrow-up:before {
|
2490 |
+
content: "\e093"
|
2491 |
+
}
|
2492 |
+
|
2493 |
+
.glyphicon-arrow-down:before {
|
2494 |
+
content: "\e094"
|
2495 |
+
}
|
2496 |
+
|
2497 |
+
.glyphicon-share-alt:before {
|
2498 |
+
content: "\e095"
|
2499 |
+
}
|
2500 |
+
|
2501 |
+
.glyphicon-resize-full:before {
|
2502 |
+
content: "\e096"
|
2503 |
+
}
|
2504 |
+
|
2505 |
+
.glyphicon-resize-small:before {
|
2506 |
+
content: "\e097"
|
2507 |
+
}
|
2508 |
+
|
2509 |
+
.glyphicon-exclamation-sign:before {
|
2510 |
+
content: "\e101"
|
2511 |
+
}
|
2512 |
+
|
2513 |
+
.glyphicon-gift:before {
|
2514 |
+
content: "\e102"
|
2515 |
+
}
|
2516 |
+
|
2517 |
+
.glyphicon-leaf:before {
|
2518 |
+
content: "\e103"
|
2519 |
+
}
|
2520 |
+
|
2521 |
+
.glyphicon-eye-open:before {
|
2522 |
+
content: "\e105"
|
2523 |
+
}
|
2524 |
+
|
2525 |
+
.glyphicon-eye-close:before {
|
2526 |
+
content: "\e106"
|
2527 |
+
}
|
2528 |
+
|
2529 |
+
.glyphicon-warning-sign:before {
|
2530 |
+
content: "\e107"
|
2531 |
+
}
|
2532 |
+
|
2533 |
+
.glyphicon-plane:before {
|
2534 |
+
content: "\e108"
|
2535 |
+
}
|
2536 |
+
|
2537 |
+
.glyphicon-random:before {
|
2538 |
+
content: "\e110"
|
2539 |
+
}
|
2540 |
+
|
2541 |
+
.glyphicon-comment:before {
|
2542 |
+
content: "\e111"
|
2543 |
+
}
|
2544 |
+
|
2545 |
+
.glyphicon-magnet:before {
|
2546 |
+
content: "\e112"
|
2547 |
+
}
|
2548 |
+
|
2549 |
+
.glyphicon-chevron-up:before {
|
2550 |
+
content: "\e113"
|
2551 |
+
}
|
2552 |
+
|
2553 |
+
.glyphicon-chevron-down:before {
|
2554 |
+
content: "\e114"
|
2555 |
+
}
|
2556 |
+
|
2557 |
+
.glyphicon-retweet:before {
|
2558 |
+
content: "\e115"
|
2559 |
+
}
|
2560 |
+
|
2561 |
+
.glyphicon-shopping-cart:before {
|
2562 |
+
content: "\e116"
|
2563 |
+
}
|
2564 |
+
|
2565 |
+
.glyphicon-folder-close:before {
|
2566 |
+
content: "\e117"
|
2567 |
+
}
|
2568 |
+
|
2569 |
+
.glyphicon-folder-open:before {
|
2570 |
+
content: "\e118"
|
2571 |
+
}
|
2572 |
+
|
2573 |
+
.glyphicon-resize-vertical:before {
|
2574 |
+
content: "\e119"
|
2575 |
+
}
|
2576 |
+
|
2577 |
+
.glyphicon-resize-horizontal:before {
|
2578 |
+
content: "\e120"
|
2579 |
+
}
|
2580 |
+
|
2581 |
+
.glyphicon-hdd:before {
|
2582 |
+
content: "\e121"
|
2583 |
+
}
|
2584 |
+
|
2585 |
+
.glyphicon-bullhorn:before {
|
2586 |
+
content: "\e122"
|
2587 |
+
}
|
2588 |
+
|
2589 |
+
.glyphicon-certificate:before {
|
2590 |
+
content: "\e124"
|
2591 |
+
}
|
2592 |
+
|
2593 |
+
.glyphicon-thumbs-up:before {
|
2594 |
+
content: "\e125"
|
2595 |
+
}
|
2596 |
+
|
2597 |
+
.glyphicon-thumbs-down:before {
|
2598 |
+
content: "\e126"
|
2599 |
+
}
|
2600 |
+
|
2601 |
+
.glyphicon-hand-right:before {
|
2602 |
+
content: "\e127"
|
2603 |
+
}
|
2604 |
+
|
2605 |
+
.glyphicon-hand-left:before {
|
2606 |
+
content: "\e128"
|
2607 |
+
}
|
2608 |
+
|
2609 |
+
.glyphicon-hand-up:before {
|
2610 |
+
content: "\e129"
|
2611 |
+
}
|
2612 |
+
|
2613 |
+
.glyphicon-hand-down:before {
|
2614 |
+
content: "\e130"
|
2615 |
+
}
|
2616 |
+
|
2617 |
+
.glyphicon-circle-arrow-right:before {
|
2618 |
+
content: "\e131"
|
2619 |
+
}
|
2620 |
+
|
2621 |
+
.glyphicon-circle-arrow-left:before {
|
2622 |
+
content: "\e132"
|
2623 |
+
}
|
2624 |
+
|
2625 |
+
.glyphicon-circle-arrow-up:before {
|
2626 |
+
content: "\e133"
|
2627 |
+
}
|
2628 |
+
|
2629 |
+
.glyphicon-circle-arrow-down:before {
|
2630 |
+
content: "\e134"
|
2631 |
+
}
|
2632 |
+
|
2633 |
+
.glyphicon-globe:before {
|
2634 |
+
content: "\e135"
|
2635 |
+
}
|
2636 |
+
|
2637 |
+
.glyphicon-tasks:before {
|
2638 |
+
content: "\e137"
|
2639 |
+
}
|
2640 |
+
|
2641 |
+
.glyphicon-filter:before {
|
2642 |
+
content: "\e138"
|
2643 |
+
}
|
2644 |
+
|
2645 |
+
.glyphicon-fullscreen:before {
|
2646 |
+
content: "\e140"
|
2647 |
+
}
|
2648 |
+
|
2649 |
+
.glyphicon-dashboard:before {
|
2650 |
+
content: "\e141"
|
2651 |
+
}
|
2652 |
+
|
2653 |
+
.glyphicon-heart-empty:before {
|
2654 |
+
content: "\e143"
|
2655 |
+
}
|
2656 |
+
|
2657 |
+
.glyphicon-link:before {
|
2658 |
+
content: "\e144"
|
2659 |
+
}
|
2660 |
+
|
2661 |
+
.glyphicon-phone:before {
|
2662 |
+
content: "\e145"
|
2663 |
+
}
|
2664 |
+
|
2665 |
+
.glyphicon-usd:before {
|
2666 |
+
content: "\e148"
|
2667 |
+
}
|
2668 |
+
|
2669 |
+
.glyphicon-gbp:before {
|
2670 |
+
content: "\e149"
|
2671 |
+
}
|
2672 |
+
|
2673 |
+
.glyphicon-sort:before {
|
2674 |
+
content: "\e150"
|
2675 |
+
}
|
2676 |
+
|
2677 |
+
.glyphicon-sort-by-alphabet:before {
|
2678 |
+
content: "\e151"
|
2679 |
+
}
|
2680 |
+
|
2681 |
+
.glyphicon-sort-by-alphabet-alt:before {
|
2682 |
+
content: "\e152"
|
2683 |
+
}
|
2684 |
+
|
2685 |
+
.glyphicon-sort-by-order:before {
|
2686 |
+
content: "\e153"
|
2687 |
+
}
|
2688 |
+
|
2689 |
+
.glyphicon-sort-by-order-alt:before {
|
2690 |
+
content: "\e154"
|
2691 |
+
}
|
2692 |
+
|
2693 |
+
.glyphicon-sort-by-attributes:before {
|
2694 |
+
content: "\e155"
|
2695 |
+
}
|
2696 |
+
|
2697 |
+
.glyphicon-sort-by-attributes-alt:before {
|
2698 |
+
content: "\e156"
|
2699 |
+
}
|
2700 |
+
|
2701 |
+
.glyphicon-unchecked:before {
|
2702 |
+
content: "\e157"
|
2703 |
+
}
|
2704 |
+
|
2705 |
+
.glyphicon-expand:before {
|
2706 |
+
content: "\e158"
|
2707 |
+
}
|
2708 |
+
|
2709 |
+
.glyphicon-collapse-down:before {
|
2710 |
+
content: "\e159"
|
2711 |
+
}
|
2712 |
+
|
2713 |
+
.glyphicon-collapse-up:before {
|
2714 |
+
content: "\e160"
|
2715 |
+
}
|
2716 |
+
|
2717 |
+
.glyphicon-log-in:before {
|
2718 |
+
content: "\e161"
|
2719 |
+
}
|
2720 |
+
|
2721 |
+
.glyphicon-flash:before {
|
2722 |
+
content: "\e162"
|
2723 |
+
}
|
2724 |
+
|
2725 |
+
.glyphicon-log-out:before {
|
2726 |
+
content: "\e163"
|
2727 |
+
}
|
2728 |
+
|
2729 |
+
.glyphicon-new-window:before {
|
2730 |
+
content: "\e164"
|
2731 |
+
}
|
2732 |
+
|
2733 |
+
.glyphicon-record:before {
|
2734 |
+
content: "\e165"
|
2735 |
+
}
|
2736 |
+
|
2737 |
+
.glyphicon-save:before {
|
2738 |
+
content: "\e166"
|
2739 |
+
}
|
2740 |
+
|
2741 |
+
.glyphicon-open:before {
|
2742 |
+
content: "\e167"
|
2743 |
+
}
|
2744 |
+
|
2745 |
+
.glyphicon-saved:before {
|
2746 |
+
content: "\e168"
|
2747 |
+
}
|
2748 |
+
|
2749 |
+
.glyphicon-import:before {
|
2750 |
+
content: "\e169"
|
2751 |
+
}
|
2752 |
+
|
2753 |
+
.glyphicon-export:before {
|
2754 |
+
content: "\e170"
|
2755 |
+
}
|
2756 |
+
|
2757 |
+
.glyphicon-send:before {
|
2758 |
+
content: "\e171"
|
2759 |
+
}
|
2760 |
+
|
2761 |
+
.glyphicon-floppy-disk:before {
|
2762 |
+
content: "\e172"
|
2763 |
+
}
|
2764 |
+
|
2765 |
+
.glyphicon-floppy-saved:before {
|
2766 |
+
content: "\e173"
|
2767 |
+
}
|
2768 |
+
|
2769 |
+
.glyphicon-floppy-remove:before {
|
2770 |
+
content: "\e174"
|
2771 |
+
}
|
2772 |
+
|
2773 |
+
.glyphicon-floppy-save:before {
|
2774 |
+
content: "\e175"
|
2775 |
+
}
|
2776 |
+
|
2777 |
+
.glyphicon-floppy-open:before {
|
2778 |
+
content: "\e176"
|
2779 |
+
}
|
2780 |
+
|
2781 |
+
.glyphicon-credit-card:before {
|
2782 |
+
content: "\e177"
|
2783 |
+
}
|
2784 |
+
|
2785 |
+
.glyphicon-transfer:before {
|
2786 |
+
content: "\e178"
|
2787 |
+
}
|
2788 |
+
|
2789 |
+
.glyphicon-cutlery:before {
|
2790 |
+
content: "\e179"
|
2791 |
+
}
|
2792 |
+
|
2793 |
+
.glyphicon-header:before {
|
2794 |
+
content: "\e180"
|
2795 |
+
}
|
2796 |
+
|
2797 |
+
.glyphicon-compressed:before {
|
2798 |
+
content: "\e181"
|
2799 |
+
}
|
2800 |
+
|
2801 |
+
.glyphicon-earphone:before {
|
2802 |
+
content: "\e182"
|
2803 |
+
}
|
2804 |
+
|
2805 |
+
.glyphicon-phone-alt:before {
|
2806 |
+
content: "\e183"
|
2807 |
+
}
|
2808 |
+
|
2809 |
+
.glyphicon-tower:before {
|
2810 |
+
content: "\e184"
|
2811 |
+
}
|
2812 |
+
|
2813 |
+
.glyphicon-stats:before {
|
2814 |
+
content: "\e185"
|
2815 |
+
}
|
2816 |
+
|
2817 |
+
.glyphicon-sd-video:before {
|
2818 |
+
content: "\e186"
|
2819 |
+
}
|
2820 |
+
|
2821 |
+
.glyphicon-hd-video:before {
|
2822 |
+
content: "\e187"
|
2823 |
+
}
|
2824 |
+
|
2825 |
+
.glyphicon-subtitles:before {
|
2826 |
+
content: "\e188"
|
2827 |
+
}
|
2828 |
+
|
2829 |
+
.glyphicon-sound-stereo:before {
|
2830 |
+
content: "\e189"
|
2831 |
+
}
|
2832 |
+
|
2833 |
+
.glyphicon-sound-dolby:before {
|
2834 |
+
content: "\e190"
|
2835 |
+
}
|
2836 |
+
|
2837 |
+
.glyphicon-sound-5-1:before {
|
2838 |
+
content: "\e191"
|
2839 |
+
}
|
2840 |
+
|
2841 |
+
.glyphicon-sound-6-1:before {
|
2842 |
+
content: "\e192"
|
2843 |
+
}
|
2844 |
+
|
2845 |
+
.glyphicon-sound-7-1:before {
|
2846 |
+
content: "\e193"
|
2847 |
+
}
|
2848 |
+
|
2849 |
+
.glyphicon-copyright-mark:before {
|
2850 |
+
content: "\e194"
|
2851 |
+
}
|
2852 |
+
|
2853 |
+
.glyphicon-registration-mark:before {
|
2854 |
+
content: "\e195"
|
2855 |
+
}
|
2856 |
+
|
2857 |
+
.glyphicon-cloud-download:before {
|
2858 |
+
content: "\e197"
|
2859 |
+
}
|
2860 |
+
|
2861 |
+
.glyphicon-cloud-upload:before {
|
2862 |
+
content: "\e198"
|
2863 |
+
}
|
2864 |
+
|
2865 |
+
.glyphicon-tree-conifer:before {
|
2866 |
+
content: "\e199"
|
2867 |
+
}
|
2868 |
+
|
2869 |
+
.glyphicon-tree-deciduous:before {
|
2870 |
+
content: "\e200"
|
2871 |
+
}
|
2872 |
+
|
2873 |
+
.glyphicon-briefcase:before {
|
2874 |
+
content: "\1f4bc"
|
2875 |
+
}
|
2876 |
+
|
2877 |
+
.glyphicon-calendar:before {
|
2878 |
+
content: "\1f4c5"
|
2879 |
+
}
|
2880 |
+
|
2881 |
+
.glyphicon-pushpin:before {
|
2882 |
+
content: "\1f4cc"
|
2883 |
+
}
|
2884 |
+
|
2885 |
+
.glyphicon-paperclip:before {
|
2886 |
+
content: "\1f4ce"
|
2887 |
+
}
|
2888 |
+
|
2889 |
+
.glyphicon-camera:before {
|
2890 |
+
content: "\1f4f7"
|
2891 |
+
}
|
2892 |
+
|
2893 |
+
.glyphicon-lock:before {
|
2894 |
+
content: "\1f512"
|
2895 |
+
}
|
2896 |
+
|
2897 |
+
.glyphicon-bell:before {
|
2898 |
+
content: "\1f514"
|
2899 |
+
}
|
2900 |
+
|
2901 |
+
.glyphicon-bookmark:before {
|
2902 |
+
content: "\1f516"
|
2903 |
+
}
|
2904 |
+
|
2905 |
+
.glyphicon-fire:before {
|
2906 |
+
content: "\1f525"
|
2907 |
+
}
|
2908 |
+
|
2909 |
+
.glyphicon-wrench:before {
|
2910 |
+
content: "\1f527"
|
2911 |
+
}
|
2912 |
+
|
2913 |
+
.caret {
|
2914 |
+
display: inline-block;
|
2915 |
+
width: 0;
|
2916 |
+
height: 0;
|
2917 |
+
margin-left: 2px;
|
2918 |
+
vertical-align: middle;
|
2919 |
+
border-top: 4px solid #000;
|
2920 |
+
border-right: 4px solid transparent;
|
2921 |
+
border-bottom: 0 dotted;
|
2922 |
+
border-left: 4px solid transparent;
|
2923 |
+
content: ""
|
2924 |
+
}
|
2925 |
+
|
2926 |
+
.dropdown {
|
2927 |
+
position: relative
|
2928 |
+
}
|
2929 |
+
|
2930 |
+
.dropdown-toggle:focus {
|
2931 |
+
outline: 0
|
2932 |
+
}
|
2933 |
+
|
2934 |
+
.dropdown-menu {
|
2935 |
+
position: absolute;
|
2936 |
+
top: 100%;
|
2937 |
+
left: 0;
|
2938 |
+
z-index: 1000;
|
2939 |
+
display: none;
|
2940 |
+
float: left;
|
2941 |
+
min-width: 160px;
|
2942 |
+
padding: 5px 0;
|
2943 |
+
margin: 2px 0 0;
|
2944 |
+
font-size: 14px;
|
2945 |
+
list-style: none;
|
2946 |
+
background-color: #fff;
|
2947 |
+
border: 1px solid #ccc;
|
2948 |
+
border: 1px solid rgba(0, 0, 0, 0.15);
|
2949 |
+
border-radius: 4px;
|
2950 |
+
-webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
|
2951 |
+
box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
|
2952 |
+
background-clip: padding-box
|
2953 |
+
}
|
2954 |
+
|
2955 |
+
.dropdown-menu.pull-right {
|
2956 |
+
right: 0;
|
2957 |
+
left: auto
|
2958 |
+
}
|
2959 |
+
|
2960 |
+
.dropdown-menu .divider {
|
2961 |
+
height: 1px;
|
2962 |
+
margin: 9px 0;
|
2963 |
+
overflow: hidden;
|
2964 |
+
background-color: #e5e5e5
|
2965 |
+
}
|
2966 |
+
|
2967 |
+
.dropdown-menu > li > a {
|
2968 |
+
display: block;
|
2969 |
+
padding: 3px 20px;
|
2970 |
+
clear: both;
|
2971 |
+
font-weight: normal;
|
2972 |
+
line-height: 1.428571429;
|
2973 |
+
color: #333;
|
2974 |
+
white-space: nowrap
|
2975 |
+
}
|
2976 |
+
|
2977 |
+
.dropdown-menu > li > a:hover, .dropdown-menu > li > a:focus {
|
2978 |
+
color: #fff;
|
2979 |
+
text-decoration: none;
|
2980 |
+
background-color: #428bca
|
2981 |
+
}
|
2982 |
+
|
2983 |
+
.dropdown-menu > .active > a, .dropdown-menu > .active > a:hover, .dropdown-menu > .active > a:focus {
|
2984 |
+
color: #fff;
|
2985 |
+
text-decoration: none;
|
2986 |
+
background-color: #428bca;
|
2987 |
+
outline: 0
|
2988 |
+
}
|
2989 |
+
|
2990 |
+
.dropdown-menu > .disabled > a, .dropdown-menu > .disabled > a:hover, .dropdown-menu > .disabled > a:focus {
|
2991 |
+
color: #999
|
2992 |
+
}
|
2993 |
+
|
2994 |
+
.dropdown-menu > .disabled > a:hover, .dropdown-menu > .disabled > a:focus {
|
2995 |
+
text-decoration: none;
|
2996 |
+
cursor: not-allowed;
|
2997 |
+
background-color: transparent;
|
2998 |
+
background-image: none;
|
2999 |
+
filter: progid:DXImageTransform.Microsoft.gradient(enabled=false)
|
3000 |
+
}
|
3001 |
+
|
3002 |
+
.open > .dropdown-menu {
|
3003 |
+
display: block
|
3004 |
+
}
|
3005 |
+
|
3006 |
+
.open > a {
|
3007 |
+
outline: 0
|
3008 |
+
}
|
3009 |
+
|
3010 |
+
.dropdown-header {
|
3011 |
+
display: block;
|
3012 |
+
padding: 3px 20px;
|
3013 |
+
font-size: 12px;
|
3014 |
+
line-height: 1.428571429;
|
3015 |
+
color: #999
|
3016 |
+
}
|
3017 |
+
|
3018 |
+
.dropdown-backdrop {
|
3019 |
+
position: fixed;
|
3020 |
+
top: 0;
|
3021 |
+
right: 0;
|
3022 |
+
bottom: 0;
|
3023 |
+
left: 0;
|
3024 |
+
z-index: 990
|
3025 |
+
}
|
3026 |
+
|
3027 |
+
.pull-right > .dropdown-menu {
|
3028 |
+
right: 0;
|
3029 |
+
left: auto
|
3030 |
+
}
|
3031 |
+
|
3032 |
+
.dropup .caret, .navbar-fixed-bottom .dropdown .caret {
|
3033 |
+
border-top: 0 dotted;
|
3034 |
+
border-bottom: 4px solid #000;
|
3035 |
+
content: ""
|
3036 |
+
}
|
3037 |
+
|
3038 |
+
.dropup .dropdown-menu, .navbar-fixed-bottom .dropdown .dropdown-menu {
|
3039 |
+
top: auto;
|
3040 |
+
bottom: 100%;
|
3041 |
+
margin-bottom: 1px
|
3042 |
+
}
|
3043 |
+
|
3044 |
+
@media (min-width: 768px) {
|
3045 |
+
.navbar-right .dropdown-menu {
|
3046 |
+
right: 0;
|
3047 |
+
left: auto
|
3048 |
+
}
|
3049 |
+
}
|
3050 |
+
|
3051 |
+
.btn-default .caret {
|
3052 |
+
border-top-color: #333
|
3053 |
+
}
|
3054 |
+
|
3055 |
+
.btn-primary .caret, .btn-success .caret, .btn-warning .caret, .btn-danger .caret, .btn-info .caret {
|
3056 |
+
border-top-color: #fff
|
3057 |
+
}
|
3058 |
+
|
3059 |
+
.dropup .btn-default .caret {
|
3060 |
+
border-bottom-color: #333
|
3061 |
+
}
|
3062 |
+
|
3063 |
+
.dropup .btn-primary .caret, .dropup .btn-success .caret, .dropup .btn-warning .caret, .dropup .btn-danger .caret, .dropup .btn-info .caret {
|
3064 |
+
border-bottom-color: #fff
|
3065 |
+
}
|
3066 |
+
|
3067 |
+
.btn-group, .btn-group-vertical {
|
3068 |
+
position: relative;
|
3069 |
+
display: inline-block;
|
3070 |
+
vertical-align: middle
|
3071 |
+
}
|
3072 |
+
|
3073 |
+
.btn-group > .btn, .btn-group-vertical > .btn {
|
3074 |
+
position: relative;
|
3075 |
+
float: left
|
3076 |
+
}
|
3077 |
+
|
3078 |
+
.btn-group > .btn:hover, .btn-group-vertical > .btn:hover, .btn-group > .btn:focus, .btn-group-vertical > .btn:focus, .btn-group > .btn:active, .btn-group-vertical > .btn:active, .btn-group > .btn.active, .btn-group-vertical > .btn.active {
|
3079 |
+
z-index: 2
|
3080 |
+
}
|
3081 |
+
|
3082 |
+
.btn-group > .btn:focus, .btn-group-vertical > .btn:focus {
|
3083 |
+
outline: 0
|
3084 |
+
}
|
3085 |
+
|
3086 |
+
.btn-group .btn + .btn, .btn-group .btn + .btn-group, .btn-group .btn-group + .btn, .btn-group .btn-group + .btn-group {
|
3087 |
+
margin-left: -1px
|
3088 |
+
}
|
3089 |
+
|
3090 |
+
.btn-toolbar:before, .btn-toolbar:after {
|
3091 |
+
display: table;
|
3092 |
+
content: " "
|
3093 |
+
}
|
3094 |
+
|
3095 |
+
.btn-toolbar:after {
|
3096 |
+
clear: both
|
3097 |
+
}
|
3098 |
+
|
3099 |
+
.btn-toolbar:before, .btn-toolbar:after {
|
3100 |
+
display: table;
|
3101 |
+
content: " "
|
3102 |
+
}
|
3103 |
+
|
3104 |
+
.btn-toolbar:after {
|
3105 |
+
clear: both
|
3106 |
+
}
|
3107 |
+
|
3108 |
+
.btn-toolbar .btn-group {
|
3109 |
+
float: left
|
3110 |
+
}
|
3111 |
+
|
3112 |
+
.btn-toolbar > .btn + .btn, .btn-toolbar > .btn-group + .btn, .btn-toolbar > .btn + .btn-group, .btn-toolbar > .btn-group + .btn-group {
|
3113 |
+
margin-left: 5px
|
3114 |
+
}
|
3115 |
+
|
3116 |
+
.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) {
|
3117 |
+
border-radius: 0
|
3118 |
+
}
|
3119 |
+
|
3120 |
+
.btn-group > .btn:first-child {
|
3121 |
+
margin-left: 0
|
3122 |
+
}
|
3123 |
+
|
3124 |
+
.btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle) {
|
3125 |
+
border-top-right-radius: 0;
|
3126 |
+
border-bottom-right-radius: 0
|
3127 |
+
}
|
3128 |
+
|
3129 |
+
.btn-group > .btn:last-child:not(:first-child), .btn-group > .dropdown-toggle:not(:first-child) {
|
3130 |
+
border-bottom-left-radius: 0;
|
3131 |
+
border-top-left-radius: 0
|
3132 |
+
}
|
3133 |
+
|
3134 |
+
.btn-group > .btn-group {
|
3135 |
+
float: left
|
3136 |
+
}
|
3137 |
+
|
3138 |
+
.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn {
|
3139 |
+
border-radius: 0
|
3140 |
+
}
|
3141 |
+
|
3142 |
+
.btn-group > .btn-group:first-child > .btn:last-child, .btn-group > .btn-group:first-child > .dropdown-toggle {
|
3143 |
+
border-top-right-radius: 0;
|
3144 |
+
border-bottom-right-radius: 0
|
3145 |
+
}
|
3146 |
+
|
3147 |
+
.btn-group > .btn-group:last-child > .btn:first-child {
|
3148 |
+
border-bottom-left-radius: 0;
|
3149 |
+
border-top-left-radius: 0
|
3150 |
+
}
|
3151 |
+
|
3152 |
+
.btn-group .dropdown-toggle:active, .btn-group.open .dropdown-toggle {
|
3153 |
+
outline: 0
|
3154 |
+
}
|
3155 |
+
|
3156 |
+
.btn-group-xs > .btn {
|
3157 |
+
padding: 5px 10px;
|
3158 |
+
padding: 1px 5px;
|
3159 |
+
font-size: 12px;
|
3160 |
+
line-height: 1.5;
|
3161 |
+
border-radius: 3px
|
3162 |
+
}
|
3163 |
+
|
3164 |
+
.btn-group-sm > .btn {
|
3165 |
+
padding: 5px 10px;
|
3166 |
+
font-size: 12px;
|
3167 |
+
line-height: 1.5;
|
3168 |
+
border-radius: 3px
|
3169 |
+
}
|
3170 |
+
|
3171 |
+
.btn-group-lg > .btn {
|
3172 |
+
padding: 10px 16px;
|
3173 |
+
font-size: 18px;
|
3174 |
+
line-height: 1.33;
|
3175 |
+
border-radius: 6px
|
3176 |
+
}
|
3177 |
+
|
3178 |
+
.btn-group > .btn + .dropdown-toggle {
|
3179 |
+
padding-right: 8px;
|
3180 |
+
padding-left: 8px
|
3181 |
+
}
|
3182 |
+
|
3183 |
+
.btn-group > .btn-lg + .dropdown-toggle {
|
3184 |
+
padding-right: 12px;
|
3185 |
+
padding-left: 12px
|
3186 |
+
}
|
3187 |
+
|
3188 |
+
.btn-group.open .dropdown-toggle {
|
3189 |
+
-webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
|
3190 |
+
box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125)
|
3191 |
+
}
|
3192 |
+
|
3193 |
+
.btn .caret {
|
3194 |
+
margin-left: 0
|
3195 |
+
}
|
3196 |
+
|
3197 |
+
.btn-lg .caret {
|
3198 |
+
border-width: 5px 5px 0;
|
3199 |
+
border-bottom-width: 0
|
3200 |
+
}
|
3201 |
+
|
3202 |
+
.dropup .btn-lg .caret {
|
3203 |
+
border-width: 0 5px 5px
|
3204 |
+
}
|
3205 |
+
|
3206 |
+
.btn-group-vertical > .btn, .btn-group-vertical > .btn-group {
|
3207 |
+
display: block;
|
3208 |
+
float: none;
|
3209 |
+
width: 100%;
|
3210 |
+
max-width: 100%
|
3211 |
+
}
|
3212 |
+
|
3213 |
+
.btn-group-vertical > .btn-group:before, .btn-group-vertical > .btn-group:after {
|
3214 |
+
display: table;
|
3215 |
+
content: " "
|
3216 |
+
}
|
3217 |
+
|
3218 |
+
.btn-group-vertical > .btn-group:after {
|
3219 |
+
clear: both
|
3220 |
+
}
|
3221 |
+
|
3222 |
+
.btn-group-vertical > .btn-group:before, .btn-group-vertical > .btn-group:after {
|
3223 |
+
display: table;
|
3224 |
+
content: " "
|
3225 |
+
}
|
3226 |
+
|
3227 |
+
.btn-group-vertical > .btn-group:after {
|
3228 |
+
clear: both
|
3229 |
+
}
|
3230 |
+
|
3231 |
+
.btn-group-vertical > .btn-group > .btn {
|
3232 |
+
float: none
|
3233 |
+
}
|
3234 |
+
|
3235 |
+
.btn-group-vertical > .btn + .btn, .btn-group-vertical > .btn + .btn-group, .btn-group-vertical > .btn-group + .btn, .btn-group-vertical > .btn-group + .btn-group {
|
3236 |
+
margin-top: -1px;
|
3237 |
+
margin-left: 0
|
3238 |
+
}
|
3239 |
+
|
3240 |
+
.btn-group-vertical > .btn:not(:first-child):not(:last-child) {
|
3241 |
+
border-radius: 0
|
3242 |
+
}
|
3243 |
+
|
3244 |
+
.btn-group-vertical > .btn:first-child:not(:last-child) {
|
3245 |
+
border-top-right-radius: 4px;
|
3246 |
+
border-bottom-right-radius: 0;
|
3247 |
+
border-bottom-left-radius: 0
|
3248 |
+
}
|
3249 |
+
|
3250 |
+
.btn-group-vertical > .btn:last-child:not(:first-child) {
|
3251 |
+
border-top-right-radius: 0;
|
3252 |
+
border-bottom-left-radius: 4px;
|
3253 |
+
border-top-left-radius: 0
|
3254 |
+
}
|
3255 |
+
|
3256 |
+
.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn {
|
3257 |
+
border-radius: 0
|
3258 |
+
}
|
3259 |
+
|
3260 |
+
.btn-group-vertical > .btn-group:first-child > .btn:last-child, .btn-group-vertical > .btn-group:first-child > .dropdown-toggle {
|
3261 |
+
border-bottom-right-radius: 0;
|
3262 |
+
border-bottom-left-radius: 0
|
3263 |
+
}
|
3264 |
+
|
3265 |
+
.btn-group-vertical > .btn-group:last-child > .btn:first-child {
|
3266 |
+
border-top-right-radius: 0;
|
3267 |
+
border-top-left-radius: 0
|
3268 |
+
}
|
3269 |
+
|
3270 |
+
.btn-group-justified {
|
3271 |
+
display: table;
|
3272 |
+
width: 100%;
|
3273 |
+
border-collapse: separate;
|
3274 |
+
table-layout: fixed
|
3275 |
+
}
|
3276 |
+
|
3277 |
+
.btn-group-justified .btn {
|
3278 |
+
display: table-cell;
|
3279 |
+
float: none;
|
3280 |
+
width: 1%
|
3281 |
+
}
|
3282 |
+
|
3283 |
+
[data-toggle="buttons"] > .btn > input[type="radio"], [data-toggle="buttons"] > .btn > input[type="checkbox"] {
|
3284 |
+
display: none
|
3285 |
+
}
|
3286 |
+
|
3287 |
+
.input-group {
|
3288 |
+
position: relative;
|
3289 |
+
display: table;
|
3290 |
+
border-collapse: separate
|
3291 |
+
}
|
3292 |
+
|
3293 |
+
.input-group.col {
|
3294 |
+
float: none;
|
3295 |
+
padding-right: 0;
|
3296 |
+
padding-left: 0
|
3297 |
+
}
|
3298 |
+
|
3299 |
+
.input-group .form-control {
|
3300 |
+
width: 100%;
|
3301 |
+
margin-bottom: 0
|
3302 |
+
}
|
3303 |
+
|
3304 |
+
.input-group-lg > .form-control, .input-group-lg > .input-group-addon, .input-group-lg > .input-group-btn > .btn {
|
3305 |
+
height: 45px;
|
3306 |
+
padding: 10px 16px;
|
3307 |
+
font-size: 18px;
|
3308 |
+
line-height: 1.33;
|
3309 |
+
border-radius: 6px
|
3310 |
+
}
|
3311 |
+
|
3312 |
+
select.input-group-lg > .form-control, select.input-group-lg > .input-group-addon, select.input-group-lg > .input-group-btn > .btn {
|
3313 |
+
height: 45px;
|
3314 |
+
line-height: 45px
|
3315 |
+
}
|
3316 |
+
|
3317 |
+
textarea.input-group-lg > .form-control, textarea.input-group-lg > .input-group-addon, textarea.input-group-lg > .input-group-btn > .btn {
|
3318 |
+
height: auto
|
3319 |
+
}
|
3320 |
+
|
3321 |
+
.input-group-sm > .form-control, .input-group-sm > .input-group-addon, .input-group-sm > .input-group-btn > .btn {
|
3322 |
+
height: 30px;
|
3323 |
+
padding: 5px 10px;
|
3324 |
+
font-size: 12px;
|
3325 |
+
line-height: 1.5;
|
3326 |
+
border-radius: 3px
|
3327 |
+
}
|
3328 |
+
|
3329 |
+
select.input-group-sm > .form-control, select.input-group-sm > .input-group-addon, select.input-group-sm > .input-group-btn > .btn {
|
3330 |
+
height: 30px;
|
3331 |
+
line-height: 30px
|
3332 |
+
}
|
3333 |
+
|
3334 |
+
textarea.input-group-sm > .form-control, textarea.input-group-sm > .input-group-addon, textarea.input-group-sm > .input-group-btn > .btn {
|
3335 |
+
height: auto
|
3336 |
+
}
|
3337 |
+
|
3338 |
+
.input-group-addon, .input-group-btn, .input-group .form-control {
|
3339 |
+
display: table-cell
|
3340 |
+
}
|
3341 |
+
|
3342 |
+
.input-group-addon:not(:first-child):not(:last-child), .input-group-btn:not(:first-child):not(:last-child), .input-group .form-control:not(:first-child):not(:last-child) {
|
3343 |
+
border-radius: 0
|
3344 |
+
}
|
3345 |
+
|
3346 |
+
.input-group-addon, .input-group-btn {
|
3347 |
+
width: 1%;
|
3348 |
+
white-space: nowrap;
|
3349 |
+
vertical-align: middle
|
3350 |
+
}
|
3351 |
+
|
3352 |
+
.input-group-addon {
|
3353 |
+
padding: 6px 12px;
|
3354 |
+
font-size: 14px;
|
3355 |
+
font-weight: normal;
|
3356 |
+
line-height: 1;
|
3357 |
+
text-align: center;
|
3358 |
+
background-color: #eee;
|
3359 |
+
border: 1px solid #ccc;
|
3360 |
+
border-radius: 4px
|
3361 |
+
}
|
3362 |
+
|
3363 |
+
.input-group-addon.input-sm {
|
3364 |
+
padding: 5px 10px;
|
3365 |
+
font-size: 12px;
|
3366 |
+
border-radius: 3px
|
3367 |
+
}
|
3368 |
+
|
3369 |
+
.input-group-addon.input-lg {
|
3370 |
+
padding: 10px 16px;
|
3371 |
+
font-size: 18px;
|
3372 |
+
border-radius: 6px
|
3373 |
+
}
|
3374 |
+
|
3375 |
+
.input-group-addon input[type="radio"], .input-group-addon input[type="checkbox"] {
|
3376 |
+
margin-top: 0
|
3377 |
+
}
|
3378 |
+
|
3379 |
+
.input-group .form-control:first-child, .input-group-addon:first-child, .input-group-btn:first-child > .btn, .input-group-btn:first-child > .dropdown-toggle, .input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle) {
|
3380 |
+
border-top-right-radius: 0;
|
3381 |
+
border-bottom-right-radius: 0
|
3382 |
+
}
|
3383 |
+
|
3384 |
+
.input-group-addon:first-child {
|
3385 |
+
border-right: 0
|
3386 |
+
}
|
3387 |
+
|
3388 |
+
.input-group .form-control:last-child, .input-group-addon:last-child, .input-group-btn:last-child > .btn, .input-group-btn:last-child > .dropdown-toggle, .input-group-btn:first-child > .btn:not(:first-child) {
|
3389 |
+
border-bottom-left-radius: 0;
|
3390 |
+
border-top-left-radius: 0
|
3391 |
+
}
|
3392 |
+
|
3393 |
+
.input-group-addon:last-child {
|
3394 |
+
border-left: 0
|
3395 |
+
}
|
3396 |
+
|
3397 |
+
.input-group-btn {
|
3398 |
+
position: relative;
|
3399 |
+
white-space: nowrap
|
3400 |
+
}
|
3401 |
+
|
3402 |
+
.input-group-btn > .btn {
|
3403 |
+
position: relative
|
3404 |
+
}
|
3405 |
+
|
3406 |
+
.input-group-btn > .btn + .btn {
|
3407 |
+
margin-left: -4px
|
3408 |
+
}
|
3409 |
+
|
3410 |
+
.input-group-btn > .btn:hover, .input-group-btn > .btn:active {
|
3411 |
+
z-index: 2
|
3412 |
+
}
|
3413 |
+
|
3414 |
+
.nav {
|
3415 |
+
padding-left: 0;
|
3416 |
+
margin-bottom: 0;
|
3417 |
+
list-style: none
|
3418 |
+
}
|
3419 |
+
|
3420 |
+
.nav:before, .nav:after {
|
3421 |
+
display: table;
|
3422 |
+
content: " "
|
3423 |
+
}
|
3424 |
+
|
3425 |
+
.nav:after {
|
3426 |
+
clear: both
|
3427 |
+
}
|
3428 |
+
|
3429 |
+
.nav:before, .nav:after {
|
3430 |
+
display: table;
|
3431 |
+
content: " "
|
3432 |
+
}
|
3433 |
+
|
3434 |
+
.nav:after {
|
3435 |
+
clear: both
|
3436 |
+
}
|
3437 |
+
|
3438 |
+
.nav > li {
|
3439 |
+
position: relative;
|
3440 |
+
display: block
|
3441 |
+
}
|
3442 |
+
|
3443 |
+
.nav > li > a {
|
3444 |
+
position: relative;
|
3445 |
+
display: block;
|
3446 |
+
padding: 10px 15px
|
3447 |
+
}
|
3448 |
+
|
3449 |
+
.nav > li > a:hover, .nav > li > a:focus {
|
3450 |
+
text-decoration: none;
|
3451 |
+
background-color: #eee
|
3452 |
+
}
|
3453 |
+
|
3454 |
+
.nav > li.disabled > a {
|
3455 |
+
color: #999
|
3456 |
+
}
|
3457 |
+
|
3458 |
+
.nav > li.disabled > a:hover, .nav > li.disabled > a:focus {
|
3459 |
+
color: #999;
|
3460 |
+
text-decoration: none;
|
3461 |
+
cursor: not-allowed;
|
3462 |
+
background-color: transparent
|
3463 |
+
}
|
3464 |
+
|
3465 |
+
.nav .open > a, .nav .open > a:hover, .nav .open > a:focus {
|
3466 |
+
background-color: #eee;
|
3467 |
+
border-color: #428bca
|
3468 |
+
}
|
3469 |
+
|
3470 |
+
.nav .nav-divider {
|
3471 |
+
height: 1px;
|
3472 |
+
margin: 9px 0;
|
3473 |
+
overflow: hidden;
|
3474 |
+
background-color: #e5e5e5
|
3475 |
+
}
|
3476 |
+
|
3477 |
+
.nav > li > a > img {
|
3478 |
+
max-width: none
|
3479 |
+
}
|
3480 |
+
|
3481 |
+
.nav-tabs {
|
3482 |
+
border-bottom: 1px solid #ddd
|
3483 |
+
}
|
3484 |
+
|
3485 |
+
.nav-tabs > li {
|
3486 |
+
float: left;
|
3487 |
+
margin-bottom: -1px
|
3488 |
+
}
|
3489 |
+
|
3490 |
+
.nav-tabs > li > a {
|
3491 |
+
margin-right: 2px;
|
3492 |
+
line-height: 1.428571429;
|
3493 |
+
border: 1px solid transparent;
|
3494 |
+
border-radius: 4px 4px 0 0
|
3495 |
+
}
|
3496 |
+
|
3497 |
+
.nav-tabs > li > a:hover {
|
3498 |
+
border-color: #eee #eee #ddd
|
3499 |
+
}
|
3500 |
+
|
3501 |
+
.nav-tabs > li.active > a, .nav-tabs > li.active > a:hover, .nav-tabs > li.active > a:focus {
|
3502 |
+
color: #555;
|
3503 |
+
cursor: default;
|
3504 |
+
background-color: #fff;
|
3505 |
+
border: 1px solid #ddd;
|
3506 |
+
border-bottom-color: transparent
|
3507 |
+
}
|
3508 |
+
|
3509 |
+
.nav-tabs.nav-justified {
|
3510 |
+
width: 100%;
|
3511 |
+
border-bottom: 0
|
3512 |
+
}
|
3513 |
+
|
3514 |
+
.nav-tabs.nav-justified > li {
|
3515 |
+
float: none
|
3516 |
+
}
|
3517 |
+
|
3518 |
+
.nav-tabs.nav-justified > li > a {
|
3519 |
+
text-align: center
|
3520 |
+
}
|
3521 |
+
|
3522 |
+
@media (min-width: 768px) {
|
3523 |
+
.nav-tabs.nav-justified > li {
|
3524 |
+
display: table-cell;
|
3525 |
+
width: 1%
|
3526 |
+
}
|
3527 |
+
}
|
3528 |
+
|
3529 |
+
.nav-tabs.nav-justified > li > a {
|
3530 |
+
margin-right: 0;
|
3531 |
+
border-bottom: 1px solid #ddd
|
3532 |
+
}
|
3533 |
+
|
3534 |
+
.nav-tabs.nav-justified > .active > a {
|
3535 |
+
border-bottom-color: #fff
|
3536 |
+
}
|
3537 |
+
|
3538 |
+
.nav-pills > li {
|
3539 |
+
float: left
|
3540 |
+
}
|
3541 |
+
|
3542 |
+
.nav-pills > li > a {
|
3543 |
+
border-radius: 5px
|
3544 |
+
}
|
3545 |
+
|
3546 |
+
.nav-pills > li + li {
|
3547 |
+
margin-left: 2px
|
3548 |
+
}
|
3549 |
+
|
3550 |
+
.nav-pills > li.active > a, .nav-pills > li.active > a:hover, .nav-pills > li.active > a:focus {
|
3551 |
+
color: #fff;
|
3552 |
+
background-color: #428bca
|
3553 |
+
}
|
3554 |
+
|
3555 |
+
.nav-stacked > li {
|
3556 |
+
float: none
|
3557 |
+
}
|
3558 |
+
|
3559 |
+
.nav-stacked > li + li {
|
3560 |
+
margin-top: 2px;
|
3561 |
+
margin-left: 0
|
3562 |
+
}
|
3563 |
+
|
3564 |
+
.nav-justified {
|
3565 |
+
width: 100%
|
3566 |
+
}
|
3567 |
+
|
3568 |
+
.nav-justified > li {
|
3569 |
+
float: none
|
3570 |
+
}
|
3571 |
+
|
3572 |
+
.nav-justified > li > a {
|
3573 |
+
text-align: center
|
3574 |
+
}
|
3575 |
+
|
3576 |
+
@media (min-width: 768px) {
|
3577 |
+
.nav-justified > li {
|
3578 |
+
display: table-cell;
|
3579 |
+
width: 1%
|
3580 |
+
}
|
3581 |
+
}
|
3582 |
+
|
3583 |
+
.nav-tabs-justified {
|
3584 |
+
border-bottom: 0
|
3585 |
+
}
|
3586 |
+
|
3587 |
+
.nav-tabs-justified > li > a {
|
3588 |
+
margin-right: 0;
|
3589 |
+
border-bottom: 1px solid #ddd
|
3590 |
+
}
|
3591 |
+
|
3592 |
+
.nav-tabs-justified > .active > a {
|
3593 |
+
border-bottom-color: #fff
|
3594 |
+
}
|
3595 |
+
|
3596 |
+
.tabbable:before, .tabbable:after {
|
3597 |
+
display: table;
|
3598 |
+
content: " "
|
3599 |
+
}
|
3600 |
+
|
3601 |
+
.tabbable:after {
|
3602 |
+
clear: both
|
3603 |
+
}
|
3604 |
+
|
3605 |
+
.tabbable:before, .tabbable:after {
|
3606 |
+
display: table;
|
3607 |
+
content: " "
|
3608 |
+
}
|
3609 |
+
|
3610 |
+
.tabbable:after {
|
3611 |
+
clear: both
|
3612 |
+
}
|
3613 |
+
|
3614 |
+
.tab-content > .tab-pane, .pill-content > .pill-pane {
|
3615 |
+
display: none
|
3616 |
+
}
|
3617 |
+
|
3618 |
+
.tab-content > .active, .pill-content > .active {
|
3619 |
+
display: block
|
3620 |
+
}
|
3621 |
+
|
3622 |
+
.nav .caret {
|
3623 |
+
border-top-color: #428bca;
|
3624 |
+
border-bottom-color: #428bca
|
3625 |
+
}
|
3626 |
+
|
3627 |
+
.nav a:hover .caret {
|
3628 |
+
border-top-color: #2a6496;
|
3629 |
+
border-bottom-color: #2a6496
|
3630 |
+
}
|
3631 |
+
|
3632 |
+
.nav-tabs .dropdown-menu {
|
3633 |
+
margin-top: -1px;
|
3634 |
+
border-top-right-radius: 0;
|
3635 |
+
border-top-left-radius: 0
|
3636 |
+
}
|
3637 |
+
|
3638 |
+
.navbar {
|
3639 |
+
position: relative;
|
3640 |
+
z-index: 1000;
|
3641 |
+
min-height: 50px;
|
3642 |
+
margin-bottom: 20px;
|
3643 |
+
border: 1px solid transparent
|
3644 |
+
}
|
3645 |
+
|
3646 |
+
.navbar:before, .navbar:after {
|
3647 |
+
display: table;
|
3648 |
+
content: " "
|
3649 |
+
}
|
3650 |
+
|
3651 |
+
.navbar:after {
|
3652 |
+
clear: both
|
3653 |
+
}
|
3654 |
+
|
3655 |
+
.navbar:before, .navbar:after {
|
3656 |
+
display: table;
|
3657 |
+
content: " "
|
3658 |
+
}
|
3659 |
+
|
3660 |
+
.navbar:after {
|
3661 |
+
clear: both
|
3662 |
+
}
|
3663 |
+
|
3664 |
+
@media (min-width: 768px) {
|
3665 |
+
.navbar {
|
3666 |
+
border-radius: 4px
|
3667 |
+
}
|
3668 |
+
}
|
3669 |
+
|
3670 |
+
.navbar-header:before, .navbar-header:after {
|
3671 |
+
display: table;
|
3672 |
+
content: " "
|
3673 |
+
}
|
3674 |
+
|
3675 |
+
.navbar-header:after {
|
3676 |
+
clear: both
|
3677 |
+
}
|
3678 |
+
|
3679 |
+
.navbar-header:before, .navbar-header:after {
|
3680 |
+
display: table;
|
3681 |
+
content: " "
|
3682 |
+
}
|
3683 |
+
|
3684 |
+
.navbar-header:after {
|
3685 |
+
clear: both
|
3686 |
+
}
|
3687 |
+
|
3688 |
+
@media (min-width: 768px) {
|
3689 |
+
.navbar-header {
|
3690 |
+
float: left
|
3691 |
+
}
|
3692 |
+
}
|
3693 |
+
|
3694 |
+
.navbar-collapse {
|
3695 |
+
max-height: 340px;
|
3696 |
+
padding-right: 15px;
|
3697 |
+
padding-left: 15px;
|
3698 |
+
overflow-x: visible;
|
3699 |
+
border-top: 1px solid transparent;
|
3700 |
+
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1);
|
3701 |
+
-webkit-overflow-scrolling: touch
|
3702 |
+
}
|
3703 |
+
|
3704 |
+
.navbar-collapse:before, .navbar-collapse:after {
|
3705 |
+
display: table;
|
3706 |
+
content: " "
|
3707 |
+
}
|
3708 |
+
|
3709 |
+
.navbar-collapse:after {
|
3710 |
+
clear: both
|
3711 |
+
}
|
3712 |
+
|
3713 |
+
.navbar-collapse:before, .navbar-collapse:after {
|
3714 |
+
display: table;
|
3715 |
+
content: " "
|
3716 |
+
}
|
3717 |
+
|
3718 |
+
.navbar-collapse:after {
|
3719 |
+
clear: both
|
3720 |
+
}
|
3721 |
+
|
3722 |
+
.navbar-collapse.in {
|
3723 |
+
overflow-y: auto
|
3724 |
+
}
|
3725 |
+
|
3726 |
+
@media (min-width: 768px) {
|
3727 |
+
.navbar-collapse {
|
3728 |
+
width: auto;
|
3729 |
+
border-top: 0;
|
3730 |
+
box-shadow: none
|
3731 |
+
}
|
3732 |
+
|
3733 |
+
.navbar-collapse.collapse {
|
3734 |
+
display: block !important;
|
3735 |
+
height: auto !important;
|
3736 |
+
padding-bottom: 0;
|
3737 |
+
overflow: visible !important
|
3738 |
+
}
|
3739 |
+
|
3740 |
+
.navbar-collapse.in {
|
3741 |
+
overflow-y: visible
|
3742 |
+
}
|
3743 |
+
|
3744 |
+
.navbar-collapse .navbar-nav.navbar-left:first-child {
|
3745 |
+
margin-left: -15px
|
3746 |
+
}
|
3747 |
+
|
3748 |
+
.navbar-collapse .navbar-nav.navbar-right:last-child {
|
3749 |
+
margin-right: -15px
|
3750 |
+
}
|
3751 |
+
|
3752 |
+
.navbar-collapse .navbar-text:last-child {
|
3753 |
+
margin-right: 0
|
3754 |
+
}
|
3755 |
+
}
|
3756 |
+
|
3757 |
+
.container > .navbar-header, .container > .navbar-collapse {
|
3758 |
+
margin-right: -15px;
|
3759 |
+
margin-left: -15px
|
3760 |
+
}
|
3761 |
+
|
3762 |
+
@media (min-width: 768px) {
|
3763 |
+
.container > .navbar-header, .container > .navbar-collapse {
|
3764 |
+
margin-right: 0;
|
3765 |
+
margin-left: 0
|
3766 |
+
}
|
3767 |
+
}
|
3768 |
+
|
3769 |
+
.navbar-static-top {
|
3770 |
+
border-width: 0 0 1px
|
3771 |
+
}
|
3772 |
+
|
3773 |
+
@media (min-width: 768px) {
|
3774 |
+
.navbar-static-top {
|
3775 |
+
border-radius: 0
|
3776 |
+
}
|
3777 |
+
}
|
3778 |
+
|
3779 |
+
.navbar-fixed-top, .navbar-fixed-bottom {
|
3780 |
+
position: fixed;
|
3781 |
+
right: 0;
|
3782 |
+
left: 0;
|
3783 |
+
border-width: 0 0 1px
|
3784 |
+
}
|
3785 |
+
|
3786 |
+
@media (min-width: 768px) {
|
3787 |
+
.navbar-fixed-top, .navbar-fixed-bottom {
|
3788 |
+
border-radius: 0
|
3789 |
+
}
|
3790 |
+
}
|
3791 |
+
|
3792 |
+
.navbar-fixed-top {
|
3793 |
+
top: 0;
|
3794 |
+
z-index: 1030
|
3795 |
+
}
|
3796 |
+
|
3797 |
+
.navbar-fixed-bottom {
|
3798 |
+
bottom: 0;
|
3799 |
+
margin-bottom: 0
|
3800 |
+
}
|
3801 |
+
|
3802 |
+
.navbar-brand {
|
3803 |
+
float: left;
|
3804 |
+
padding: 15px 15px;
|
3805 |
+
font-size: 18px;
|
3806 |
+
line-height: 20px
|
3807 |
+
}
|
3808 |
+
|
3809 |
+
.navbar-brand:hover, .navbar-brand:focus {
|
3810 |
+
text-decoration: none
|
3811 |
+
}
|
3812 |
+
|
3813 |
+
@media (min-width: 768px) {
|
3814 |
+
.navbar > .container .navbar-brand {
|
3815 |
+
margin-left: -15px
|
3816 |
+
}
|
3817 |
+
}
|
3818 |
+
|
3819 |
+
.navbar-toggle {
|
3820 |
+
position: relative;
|
3821 |
+
float: right;
|
3822 |
+
padding: 9px 10px;
|
3823 |
+
margin-top: 8px;
|
3824 |
+
margin-right: 15px;
|
3825 |
+
margin-bottom: 8px;
|
3826 |
+
background-color: transparent;
|
3827 |
+
border: 1px solid transparent;
|
3828 |
+
border-radius: 4px
|
3829 |
+
}
|
3830 |
+
|
3831 |
+
.navbar-toggle .icon-bar {
|
3832 |
+
display: block;
|
3833 |
+
width: 22px;
|
3834 |
+
height: 2px;
|
3835 |
+
border-radius: 1px
|
3836 |
+
}
|
3837 |
+
|
3838 |
+
.navbar-toggle .icon-bar + .icon-bar {
|
3839 |
+
margin-top: 4px
|
3840 |
+
}
|
3841 |
+
|
3842 |
+
@media (min-width: 768px) {
|
3843 |
+
.navbar-toggle {
|
3844 |
+
display: none
|
3845 |
+
}
|
3846 |
+
}
|
3847 |
+
|
3848 |
+
.navbar-nav {
|
3849 |
+
margin: 7.5px -15px
|
3850 |
+
}
|
3851 |
+
|
3852 |
+
.navbar-nav > li > a {
|
3853 |
+
padding-top: 10px;
|
3854 |
+
padding-bottom: 10px;
|
3855 |
+
line-height: 20px
|
3856 |
+
}
|
3857 |
+
|
3858 |
+
@media (max-width: 767px) {
|
3859 |
+
.navbar-nav .open .dropdown-menu {
|
3860 |
+
position: static;
|
3861 |
+
float: none;
|
3862 |
+
width: auto;
|
3863 |
+
margin-top: 0;
|
3864 |
+
background-color: transparent;
|
3865 |
+
border: 0;
|
3866 |
+
box-shadow: none
|
3867 |
+
}
|
3868 |
+
|
3869 |
+
.navbar-nav .open .dropdown-menu > li > a, .navbar-nav .open .dropdown-menu .dropdown-header {
|
3870 |
+
padding: 5px 15px 5px 25px
|
3871 |
+
}
|
3872 |
+
|
3873 |
+
.navbar-nav .open .dropdown-menu > li > a {
|
3874 |
+
line-height: 20px
|
3875 |
+
}
|
3876 |
+
|
3877 |
+
.navbar-nav .open .dropdown-menu > li > a:hover, .navbar-nav .open .dropdown-menu > li > a:focus {
|
3878 |
+
background-image: none
|
3879 |
+
}
|
3880 |
+
}
|
3881 |
+
|
3882 |
+
@media (min-width: 768px) {
|
3883 |
+
.navbar-nav {
|
3884 |
+
float: left;
|
3885 |
+
margin: 0
|
3886 |
+
}
|
3887 |
+
|
3888 |
+
.navbar-nav > li {
|
3889 |
+
float: left
|
3890 |
+
}
|
3891 |
+
|
3892 |
+
.navbar-nav > li > a {
|
3893 |
+
padding-top: 15px;
|
3894 |
+
padding-bottom: 15px
|
3895 |
+
}
|
3896 |
+
}
|
3897 |
+
|
3898 |
+
@media (min-width: 768px) {
|
3899 |
+
.navbar-left {
|
3900 |
+
float: left !important
|
3901 |
+
}
|
3902 |
+
|
3903 |
+
.navbar-right {
|
3904 |
+
float: right !important
|
3905 |
+
}
|
3906 |
+
}
|
3907 |
+
|
3908 |
+
.navbar-form {
|
3909 |
+
padding: 10px 15px;
|
3910 |
+
margin-top: 8px;
|
3911 |
+
margin-right: -15px;
|
3912 |
+
margin-bottom: 8px;
|
3913 |
+
margin-left: -15px;
|
3914 |
+
border-top: 1px solid transparent;
|
3915 |
+
border-bottom: 1px solid transparent;
|
3916 |
+
-webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);
|
3917 |
+
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1)
|
3918 |
+
}
|
3919 |
+
|
3920 |
+
@media (min-width: 768px) {
|
3921 |
+
.navbar-form .form-group {
|
3922 |
+
display: inline-block;
|
3923 |
+
margin-bottom: 0;
|
3924 |
+
vertical-align: middle
|
3925 |
+
}
|
3926 |
+
|
3927 |
+
.navbar-form .form-control {
|
3928 |
+
display: inline-block
|
3929 |
+
}
|
3930 |
+
|
3931 |
+
.navbar-form .radio, .navbar-form .checkbox {
|
3932 |
+
display: inline-block;
|
3933 |
+
padding-left: 0;
|
3934 |
+
margin-top: 0;
|
3935 |
+
margin-bottom: 0
|
3936 |
+
}
|
3937 |
+
|
3938 |
+
.navbar-form .radio input[type="radio"], .navbar-form .checkbox input[type="checkbox"] {
|
3939 |
+
float: none;
|
3940 |
+
margin-left: 0
|
3941 |
+
}
|
3942 |
+
}
|
3943 |
+
|
3944 |
+
@media (max-width: 767px) {
|
3945 |
+
.navbar-form .form-group {
|
3946 |
+
margin-bottom: 5px
|
3947 |
+
}
|
3948 |
+
}
|
3949 |
+
|
3950 |
+
@media (min-width: 768px) {
|
3951 |
+
.navbar-form {
|
3952 |
+
width: auto;
|
3953 |
+
padding-top: 0;
|
3954 |
+
padding-bottom: 0;
|
3955 |
+
margin-right: 0;
|
3956 |
+
margin-left: 0;
|
3957 |
+
border: 0;
|
3958 |
+
-webkit-box-shadow: none;
|
3959 |
+
box-shadow: none
|
3960 |
+
}
|
3961 |
+
}
|
3962 |
+
|
3963 |
+
.navbar-nav > li > .dropdown-menu {
|
3964 |
+
margin-top: 0;
|
3965 |
+
border-top-right-radius: 0;
|
3966 |
+
border-top-left-radius: 0
|
3967 |
+
}
|
3968 |
+
|
3969 |
+
.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu {
|
3970 |
+
border-bottom-right-radius: 0;
|
3971 |
+
border-bottom-left-radius: 0
|
3972 |
+
}
|
3973 |
+
|
3974 |
+
.navbar-nav.pull-right > li > .dropdown-menu, .navbar-nav > li > .dropdown-menu.pull-right {
|
3975 |
+
right: 0;
|
3976 |
+
left: auto
|
3977 |
+
}
|
3978 |
+
|
3979 |
+
.navbar-btn {
|
3980 |
+
margin-top: 8px;
|
3981 |
+
margin-bottom: 8px
|
3982 |
+
}
|
3983 |
+
|
3984 |
+
.navbar-text {
|
3985 |
+
float: left;
|
3986 |
+
margin-top: 15px;
|
3987 |
+
margin-bottom: 15px
|
3988 |
+
}
|
3989 |
+
|
3990 |
+
@media (min-width: 768px) {
|
3991 |
+
.navbar-text {
|
3992 |
+
margin-right: 15px;
|
3993 |
+
margin-left: 15px
|
3994 |
+
}
|
3995 |
+
}
|
3996 |
+
|
3997 |
+
.navbar-default {
|
3998 |
+
background-color: #f8f8f8;
|
3999 |
+
border-color: #e7e7e7
|
4000 |
+
}
|
4001 |
+
|
4002 |
+
.navbar-default .navbar-brand {
|
4003 |
+
color: #777
|
4004 |
+
}
|
4005 |
+
|
4006 |
+
.navbar-default .navbar-brand:hover, .navbar-default .navbar-brand:focus {
|
4007 |
+
color: #5e5e5e;
|
4008 |
+
background-color: transparent
|
4009 |
+
}
|
4010 |
+
|
4011 |
+
.navbar-default .navbar-text {
|
4012 |
+
color: #777
|
4013 |
+
}
|
4014 |
+
|
4015 |
+
.navbar-default .navbar-nav > li > a {
|
4016 |
+
color: #777
|
4017 |
+
}
|
4018 |
+
|
4019 |
+
.navbar-default .navbar-nav > li > a:hover, .navbar-default .navbar-nav > li > a:focus {
|
4020 |
+
color: #333;
|
4021 |
+
background-color: transparent
|
4022 |
+
}
|
4023 |
+
|
4024 |
+
.navbar-default .navbar-nav > .active > a, .navbar-default .navbar-nav > .active > a:hover, .navbar-default .navbar-nav > .active > a:focus {
|
4025 |
+
color: #555;
|
4026 |
+
background-color: #e7e7e7
|
4027 |
+
}
|
4028 |
+
|
4029 |
+
.navbar-default .navbar-nav > .disabled > a, .navbar-default .navbar-nav > .disabled > a:hover, .navbar-default .navbar-nav > .disabled > a:focus {
|
4030 |
+
color: #ccc;
|
4031 |
+
background-color: transparent
|
4032 |
+
}
|
4033 |
+
|
4034 |
+
.navbar-default .navbar-toggle {
|
4035 |
+
border-color: #ddd
|
4036 |
+
}
|
4037 |
+
|
4038 |
+
.navbar-default .navbar-toggle:hover, .navbar-default .navbar-toggle:focus {
|
4039 |
+
background-color: #ddd
|
4040 |
+
}
|
4041 |
+
|
4042 |
+
.navbar-default .navbar-toggle .icon-bar {
|
4043 |
+
background-color: #ccc
|
4044 |
+
}
|
4045 |
+
|
4046 |
+
.navbar-default .navbar-collapse, .navbar-default .navbar-form {
|
4047 |
+
border-color: #e6e6e6
|
4048 |
+
}
|
4049 |
+
|
4050 |
+
.navbar-default .navbar-nav > .dropdown > a:hover .caret, .navbar-default .navbar-nav > .dropdown > a:focus .caret {
|
4051 |
+
border-top-color: #333;
|
4052 |
+
border-bottom-color: #333
|
4053 |
+
}
|
4054 |
+
|
4055 |
+
.navbar-default .navbar-nav > .open > a, .navbar-default .navbar-nav > .open > a:hover, .navbar-default .navbar-nav > .open > a:focus {
|
4056 |
+
color: #555;
|
4057 |
+
background-color: #e7e7e7
|
4058 |
+
}
|
4059 |
+
|
4060 |
+
.navbar-default .navbar-nav > .open > a .caret, .navbar-default .navbar-nav > .open > a:hover .caret, .navbar-default .navbar-nav > .open > a:focus .caret {
|
4061 |
+
border-top-color: #555;
|
4062 |
+
border-bottom-color: #555
|
4063 |
+
}
|
4064 |
+
|
4065 |
+
.navbar-default .navbar-nav > .dropdown > a .caret {
|
4066 |
+
border-top-color: #777;
|
4067 |
+
border-bottom-color: #777
|
4068 |
+
}
|
4069 |
+
|
4070 |
+
@media (max-width: 767px) {
|
4071 |
+
.navbar-default .navbar-nav .open .dropdown-menu > li > a {
|
4072 |
+
color: #777
|
4073 |
+
}
|
4074 |
+
|
4075 |
+
.navbar-default .navbar-nav .open .dropdown-menu > li > a:hover, .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus {
|
4076 |
+
color: #333;
|
4077 |
+
background-color: transparent
|
4078 |
+
}
|
4079 |
+
|
4080 |
+
.navbar-default .navbar-nav .open .dropdown-menu > .active > a, .navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover, .navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus {
|
4081 |
+
color: #555;
|
4082 |
+
background-color: #e7e7e7
|
4083 |
+
}
|
4084 |
+
|
4085 |
+
.navbar-default .navbar-nav .open .dropdown-menu > .disabled > a, .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:hover, .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:focus {
|
4086 |
+
color: #ccc;
|
4087 |
+
background-color: transparent
|
4088 |
+
}
|
4089 |
+
}
|
4090 |
+
|
4091 |
+
.navbar-default .navbar-link {
|
4092 |
+
color: #777
|
4093 |
+
}
|
4094 |
+
|
4095 |
+
.navbar-default .navbar-link:hover {
|
4096 |
+
color: #333
|
4097 |
+
}
|
4098 |
+
|
4099 |
+
.navbar-inverse {
|
4100 |
+
background-color: #222;
|
4101 |
+
border-color: #080808
|
4102 |
+
}
|
4103 |
+
|
4104 |
+
.navbar-inverse .navbar-brand {
|
4105 |
+
color: #999
|
4106 |
+
}
|
4107 |
+
|
4108 |
+
.navbar-inverse .navbar-brand:hover, .navbar-inverse .navbar-brand:focus {
|
4109 |
+
color: #fff;
|
4110 |
+
background-color: transparent
|
4111 |
+
}
|
4112 |
+
|
4113 |
+
.navbar-inverse .navbar-text {
|
4114 |
+
color: #999
|
4115 |
+
}
|
4116 |
+
|
4117 |
+
.navbar-inverse .navbar-nav > li > a {
|
4118 |
+
color: #999
|
4119 |
+
}
|
4120 |
+
|
4121 |
+
.navbar-inverse .navbar-nav > li > a:hover, .navbar-inverse .navbar-nav > li > a:focus {
|
4122 |
+
color: #fff;
|
4123 |
+
background-color: transparent
|
4124 |
+
}
|
4125 |
+
|
4126 |
+
.navbar-inverse .navbar-nav > .active > a, .navbar-inverse .navbar-nav > .active > a:hover, .navbar-inverse .navbar-nav > .active > a:focus {
|
4127 |
+
color: #fff;
|
4128 |
+
background-color: #080808
|
4129 |
+
}
|
4130 |
+
|
4131 |
+
.navbar-inverse .navbar-nav > .disabled > a, .navbar-inverse .navbar-nav > .disabled > a:hover, .navbar-inverse .navbar-nav > .disabled > a:focus {
|
4132 |
+
color: #444;
|
4133 |
+
background-color: transparent
|
4134 |
+
}
|
4135 |
+
|
4136 |
+
.navbar-inverse .navbar-toggle {
|
4137 |
+
border-color: #333
|
4138 |
+
}
|
4139 |
+
|
4140 |
+
.navbar-inverse .navbar-toggle:hover, .navbar-inverse .navbar-toggle:focus {
|
4141 |
+
background-color: #333
|
4142 |
+
}
|
4143 |
+
|
4144 |
+
.navbar-inverse .navbar-toggle .icon-bar {
|
4145 |
+
background-color: #fff
|
4146 |
+
}
|
4147 |
+
|
4148 |
+
.navbar-inverse .navbar-collapse, .navbar-inverse .navbar-form {
|
4149 |
+
border-color: #101010
|
4150 |
+
}
|
4151 |
+
|
4152 |
+
.navbar-inverse .navbar-nav > .open > a, .navbar-inverse .navbar-nav > .open > a:hover, .navbar-inverse .navbar-nav > .open > a:focus {
|
4153 |
+
color: #fff;
|
4154 |
+
background-color: #080808
|
4155 |
+
}
|
4156 |
+
|
4157 |
+
.navbar-inverse .navbar-nav > .dropdown > a:hover .caret {
|
4158 |
+
border-top-color: #fff;
|
4159 |
+
border-bottom-color: #fff
|
4160 |
+
}
|
4161 |
+
|
4162 |
+
.navbar-inverse .navbar-nav > .dropdown > a .caret {
|
4163 |
+
border-top-color: #999;
|
4164 |
+
border-bottom-color: #999
|
4165 |
+
}
|
4166 |
+
|
4167 |
+
.navbar-inverse .navbar-nav > .open > a .caret, .navbar-inverse .navbar-nav > .open > a:hover .caret, .navbar-inverse .navbar-nav > .open > a:focus .caret {
|
4168 |
+
border-top-color: #fff;
|
4169 |
+
border-bottom-color: #fff
|
4170 |
+
}
|
4171 |
+
|
4172 |
+
@media (max-width: 767px) {
|
4173 |
+
.navbar-inverse .navbar-nav .open .dropdown-menu > .dropdown-header {
|
4174 |
+
border-color: #080808
|
4175 |
+
}
|
4176 |
+
|
4177 |
+
.navbar-inverse .navbar-nav .open .dropdown-menu > li > a {
|
4178 |
+
color: #999
|
4179 |
+
}
|
4180 |
+
|
4181 |
+
.navbar-inverse .navbar-nav .open .dropdown-menu > li > a:hover, .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:focus {
|
4182 |
+
color: #fff;
|
4183 |
+
background-color: transparent
|
4184 |
+
}
|
4185 |
+
|
4186 |
+
.navbar-inverse .navbar-nav .open .dropdown-menu > .active > a, .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:hover, .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:focus {
|
4187 |
+
color: #fff;
|
4188 |
+
background-color: #080808
|
4189 |
+
}
|
4190 |
+
|
4191 |
+
.navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a, .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:hover, .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:focus {
|
4192 |
+
color: #444;
|
4193 |
+
background-color: transparent
|
4194 |
+
}
|
4195 |
+
}
|
4196 |
+
|
4197 |
+
.navbar-inverse .navbar-link {
|
4198 |
+
color: #999
|
4199 |
+
}
|
4200 |
+
|
4201 |
+
.navbar-inverse .navbar-link:hover {
|
4202 |
+
color: #fff
|
4203 |
+
}
|
4204 |
+
|
4205 |
+
.breadcrumb {
|
4206 |
+
padding: 8px 15px;
|
4207 |
+
margin-bottom: 20px;
|
4208 |
+
list-style: none;
|
4209 |
+
background-color: #f5f5f5;
|
4210 |
+
border-radius: 4px
|
4211 |
+
}
|
4212 |
+
|
4213 |
+
.breadcrumb > li {
|
4214 |
+
display: inline-block
|
4215 |
+
}
|
4216 |
+
|
4217 |
+
.breadcrumb > li + li:before {
|
4218 |
+
padding: 0 5px;
|
4219 |
+
color: #ccc;
|
4220 |
+
content: "/\00a0"
|
4221 |
+
}
|
4222 |
+
|
4223 |
+
.breadcrumb > .active {
|
4224 |
+
color: #999
|
4225 |
+
}
|
4226 |
+
|
4227 |
+
.pagination {
|
4228 |
+
display: inline-block;
|
4229 |
+
padding-left: 0;
|
4230 |
+
margin: 20px 0;
|
4231 |
+
border-radius: 4px
|
4232 |
+
}
|
4233 |
+
|
4234 |
+
.pagination > li {
|
4235 |
+
display: inline
|
4236 |
+
}
|
4237 |
+
|
4238 |
+
.pagination > li > a, .pagination > li > span {
|
4239 |
+
position: relative;
|
4240 |
+
float: left;
|
4241 |
+
padding: 6px 12px;
|
4242 |
+
margin-left: -1px;
|
4243 |
+
line-height: 1.428571429;
|
4244 |
+
text-decoration: none;
|
4245 |
+
background-color: #fff;
|
4246 |
+
border: 1px solid #ddd
|
4247 |
+
}
|
4248 |
+
|
4249 |
+
.pagination > li:first-child > a, .pagination > li:first-child > span {
|
4250 |
+
margin-left: 0;
|
4251 |
+
border-bottom-left-radius: 4px;
|
4252 |
+
border-top-left-radius: 4px
|
4253 |
+
}
|
4254 |
+
|
4255 |
+
.pagination > li:last-child > a, .pagination > li:last-child > span {
|
4256 |
+
border-top-right-radius: 4px;
|
4257 |
+
border-bottom-right-radius: 4px
|
4258 |
+
}
|
4259 |
+
|
4260 |
+
.pagination > li > a:hover, .pagination > li > span:hover, .pagination > li > a:focus, .pagination > li > span:focus {
|
4261 |
+
background-color: #eee
|
4262 |
+
}
|
4263 |
+
|
4264 |
+
.pagination > .active > a, .pagination > .active > span, .pagination > .active > a:hover, .pagination > .active > span:hover, .pagination > .active > a:focus, .pagination > .active > span:focus {
|
4265 |
+
z-index: 2;
|
4266 |
+
color: #fff;
|
4267 |
+
cursor: default;
|
4268 |
+
background-color: #428bca;
|
4269 |
+
border-color: #428bca
|
4270 |
+
}
|
4271 |
+
|
4272 |
+
.pagination > .disabled > span, .pagination > .disabled > a, .pagination > .disabled > a:hover, .pagination > .disabled > a:focus {
|
4273 |
+
color: #999;
|
4274 |
+
cursor: not-allowed;
|
4275 |
+
background-color: #fff;
|
4276 |
+
border-color: #ddd
|
4277 |
+
}
|
4278 |
+
|
4279 |
+
.pagination-lg > li > a, .pagination-lg > li > span {
|
4280 |
+
padding: 10px 16px;
|
4281 |
+
font-size: 18px
|
4282 |
+
}
|
4283 |
+
|
4284 |
+
.pagination-lg > li:first-child > a, .pagination-lg > li:first-child > span {
|
4285 |
+
border-bottom-left-radius: 6px;
|
4286 |
+
border-top-left-radius: 6px
|
4287 |
+
}
|
4288 |
+
|
4289 |
+
.pagination-lg > li:last-child > a, .pagination-lg > li:last-child > span {
|
4290 |
+
border-top-right-radius: 6px;
|
4291 |
+
border-bottom-right-radius: 6px
|
4292 |
+
}
|
4293 |
+
|
4294 |
+
.pagination-sm > li > a, .pagination-sm > li > span {
|
4295 |
+
padding: 5px 10px;
|
4296 |
+
font-size: 12px
|
4297 |
+
}
|
4298 |
+
|
4299 |
+
.pagination-sm > li:first-child > a, .pagination-sm > li:first-child > span {
|
4300 |
+
border-bottom-left-radius: 3px;
|
4301 |
+
border-top-left-radius: 3px
|
4302 |
+
}
|
4303 |
+
|
4304 |
+
.pagination-sm > li:last-child > a, .pagination-sm > li:last-child > span {
|
4305 |
+
border-top-right-radius: 3px;
|
4306 |
+
border-bottom-right-radius: 3px
|
4307 |
+
}
|
4308 |
+
|
4309 |
+
.pager {
|
4310 |
+
padding-left: 0;
|
4311 |
+
margin: 20px 0;
|
4312 |
+
text-align: center;
|
4313 |
+
list-style: none
|
4314 |
+
}
|
4315 |
+
|
4316 |
+
.pager:before, .pager:after {
|
4317 |
+
display: table;
|
4318 |
+
content: " "
|
4319 |
+
}
|
4320 |
+
|
4321 |
+
.pager:after {
|
4322 |
+
clear: both
|
4323 |
+
}
|
4324 |
+
|
4325 |
+
.pager:before, .pager:after {
|
4326 |
+
display: table;
|
4327 |
+
content: " "
|
4328 |
+
}
|
4329 |
+
|
4330 |
+
.pager:after {
|
4331 |
+
clear: both
|
4332 |
+
}
|
4333 |
+
|
4334 |
+
.pager li {
|
4335 |
+
display: inline
|
4336 |
+
}
|
4337 |
+
|
4338 |
+
.pager li > a, .pager li > span {
|
4339 |
+
display: inline-block;
|
4340 |
+
padding: 5px 14px;
|
4341 |
+
background-color: #fff;
|
4342 |
+
border: 1px solid #ddd;
|
4343 |
+
border-radius: 15px
|
4344 |
+
}
|
4345 |
+
|
4346 |
+
.pager li > a:hover, .pager li > a:focus {
|
4347 |
+
text-decoration: none;
|
4348 |
+
background-color: #eee
|
4349 |
+
}
|
4350 |
+
|
4351 |
+
.pager .next > a, .pager .next > span {
|
4352 |
+
float: right
|
4353 |
+
}
|
4354 |
+
|
4355 |
+
.pager .previous > a, .pager .previous > span {
|
4356 |
+
float: left
|
4357 |
+
}
|
4358 |
+
|
4359 |
+
.pager .disabled > a, .pager .disabled > a:hover, .pager .disabled > a:focus, .pager .disabled > span {
|
4360 |
+
color: #999;
|
4361 |
+
cursor: not-allowed;
|
4362 |
+
background-color: #fff
|
4363 |
+
}
|
4364 |
+
|
4365 |
+
.label {
|
4366 |
+
display: inline;
|
4367 |
+
padding: .2em .6em .3em;
|
4368 |
+
font-size: 75%;
|
4369 |
+
font-weight: bold;
|
4370 |
+
line-height: 1;
|
4371 |
+
color: #fff;
|
4372 |
+
text-align: center;
|
4373 |
+
white-space: nowrap;
|
4374 |
+
vertical-align: baseline;
|
4375 |
+
border-radius: .25em
|
4376 |
+
}
|
4377 |
+
|
4378 |
+
.label[href]:hover, .label[href]:focus {
|
4379 |
+
color: #fff;
|
4380 |
+
text-decoration: none;
|
4381 |
+
cursor: pointer
|
4382 |
+
}
|
4383 |
+
|
4384 |
+
.label:empty {
|
4385 |
+
display: none
|
4386 |
+
}
|
4387 |
+
|
4388 |
+
.label-default {
|
4389 |
+
background-color: #999
|
4390 |
+
}
|
4391 |
+
|
4392 |
+
.label-default[href]:hover, .label-default[href]:focus {
|
4393 |
+
background-color: #808080
|
4394 |
+
}
|
4395 |
+
|
4396 |
+
.label-primary {
|
4397 |
+
background-color: #428bca
|
4398 |
+
}
|
4399 |
+
|
4400 |
+
.label-primary[href]:hover, .label-primary[href]:focus {
|
4401 |
+
background-color: #3071a9
|
4402 |
+
}
|
4403 |
+
|
4404 |
+
.label-success {
|
4405 |
+
background-color: #5cb85c
|
4406 |
+
}
|
4407 |
+
|
4408 |
+
.label-success[href]:hover, .label-success[href]:focus {
|
4409 |
+
background-color: #449d44
|
4410 |
+
}
|
4411 |
+
|
4412 |
+
.label-info {
|
4413 |
+
background-color: #5bc0de
|
4414 |
+
}
|
4415 |
+
|
4416 |
+
.label-info[href]:hover, .label-info[href]:focus {
|
4417 |
+
background-color: #31b0d5
|
4418 |
+
}
|
4419 |
+
|
4420 |
+
.label-warning {
|
4421 |
+
background-color: #f0ad4e
|
4422 |
+
}
|
4423 |
+
|
4424 |
+
.label-warning[href]:hover, .label-warning[href]:focus {
|
4425 |
+
background-color: #ec971f
|
4426 |
+
}
|
4427 |
+
|
4428 |
+
.label-danger {
|
4429 |
+
background-color: #d9534f
|
4430 |
+
}
|
4431 |
+
|
4432 |
+
.label-danger[href]:hover, .label-danger[href]:focus {
|
4433 |
+
background-color: #c9302c
|
4434 |
+
}
|
4435 |
+
|
4436 |
+
.badge {
|
4437 |
+
display: inline-block;
|
4438 |
+
min-width: 10px;
|
4439 |
+
padding: 3px 7px;
|
4440 |
+
font-size: 12px;
|
4441 |
+
font-weight: bold;
|
4442 |
+
line-height: 1;
|
4443 |
+
color: #fff;
|
4444 |
+
text-align: center;
|
4445 |
+
white-space: nowrap;
|
4446 |
+
vertical-align: baseline;
|
4447 |
+
background-color: #999;
|
4448 |
+
border-radius: 10px
|
4449 |
+
}
|
4450 |
+
|
4451 |
+
.badge:empty {
|
4452 |
+
display: none
|
4453 |
+
}
|
4454 |
+
|
4455 |
+
a.badge:hover, a.badge:focus {
|
4456 |
+
color: #fff;
|
4457 |
+
text-decoration: none;
|
4458 |
+
cursor: pointer
|
4459 |
+
}
|
4460 |
+
|
4461 |
+
.btn .badge {
|
4462 |
+
position: relative;
|
4463 |
+
top: -1px
|
4464 |
+
}
|
4465 |
+
|
4466 |
+
a.list-group-item.active > .badge, .nav-pills > .active > a > .badge {
|
4467 |
+
color: #428bca;
|
4468 |
+
background-color: #fff
|
4469 |
+
}
|
4470 |
+
|
4471 |
+
.nav-pills > li > a > .badge {
|
4472 |
+
margin-left: 3px
|
4473 |
+
}
|
4474 |
+
|
4475 |
+
.jumbotron {
|
4476 |
+
padding: 30px;
|
4477 |
+
margin-bottom: 30px;
|
4478 |
+
font-size: 21px;
|
4479 |
+
font-weight: 200;
|
4480 |
+
line-height: 2.1428571435;
|
4481 |
+
color: inherit;
|
4482 |
+
background-color: #eee
|
4483 |
+
}
|
4484 |
+
|
4485 |
+
.jumbotron h1 {
|
4486 |
+
line-height: 1;
|
4487 |
+
color: inherit
|
4488 |
+
}
|
4489 |
+
|
4490 |
+
.jumbotron p {
|
4491 |
+
line-height: 1.4
|
4492 |
+
}
|
4493 |
+
|
4494 |
+
.container .jumbotron {
|
4495 |
+
border-radius: 6px
|
4496 |
+
}
|
4497 |
+
|
4498 |
+
@media screen and (min-width: 768px) {
|
4499 |
+
.jumbotron {
|
4500 |
+
padding-top: 48px;
|
4501 |
+
padding-bottom: 48px
|
4502 |
+
}
|
4503 |
+
|
4504 |
+
.container .jumbotron {
|
4505 |
+
padding-right: 60px;
|
4506 |
+
padding-left: 60px
|
4507 |
+
}
|
4508 |
+
|
4509 |
+
.jumbotron h1 {
|
4510 |
+
font-size: 63px
|
4511 |
+
}
|
4512 |
+
}
|
4513 |
+
|
4514 |
+
.thumbnail {
|
4515 |
+
display: inline-block;
|
4516 |
+
display: block;
|
4517 |
+
height: auto;
|
4518 |
+
max-width: 100%;
|
4519 |
+
padding: 4px;
|
4520 |
+
line-height: 1.428571429;
|
4521 |
+
background-color: #fff;
|
4522 |
+
border: 1px solid #ddd;
|
4523 |
+
border-radius: 4px;
|
4524 |
+
-webkit-transition: all .2s ease-in-out;
|
4525 |
+
transition: all .2s ease-in-out
|
4526 |
+
}
|
4527 |
+
|
4528 |
+
.thumbnail > img {
|
4529 |
+
display: block;
|
4530 |
+
height: auto;
|
4531 |
+
max-width: 100%
|
4532 |
+
}
|
4533 |
+
|
4534 |
+
a.thumbnail:hover, a.thumbnail:focus {
|
4535 |
+
border-color: #428bca
|
4536 |
+
}
|
4537 |
+
|
4538 |
+
.thumbnail > img {
|
4539 |
+
margin-right: auto;
|
4540 |
+
margin-left: auto
|
4541 |
+
}
|
4542 |
+
|
4543 |
+
.thumbnail .caption {
|
4544 |
+
padding: 9px;
|
4545 |
+
color: #333
|
4546 |
+
}
|
4547 |
+
|
4548 |
+
.alert {
|
4549 |
+
padding: 15px;
|
4550 |
+
margin-bottom: 20px;
|
4551 |
+
border: 1px solid transparent;
|
4552 |
+
border-radius: 4px
|
4553 |
+
}
|
4554 |
+
|
4555 |
+
.alert h4 {
|
4556 |
+
margin-top: 0;
|
4557 |
+
color: inherit
|
4558 |
+
}
|
4559 |
+
|
4560 |
+
.alert .alert-link {
|
4561 |
+
font-weight: bold
|
4562 |
+
}
|
4563 |
+
|
4564 |
+
.alert > p, .alert > ul {
|
4565 |
+
margin-bottom: 0
|
4566 |
+
}
|
4567 |
+
|
4568 |
+
.alert > p + p {
|
4569 |
+
margin-top: 5px
|
4570 |
+
}
|
4571 |
+
|
4572 |
+
.alert-dismissable {
|
4573 |
+
padding-right: 35px
|
4574 |
+
}
|
4575 |
+
|
4576 |
+
.alert-dismissable .close {
|
4577 |
+
position: relative;
|
4578 |
+
top: -2px;
|
4579 |
+
right: -21px;
|
4580 |
+
color: inherit
|
4581 |
+
}
|
4582 |
+
|
4583 |
+
.alert-success {
|
4584 |
+
color: #468847;
|
4585 |
+
background-color: #dff0d8;
|
4586 |
+
border-color: #d6e9c6
|
4587 |
+
}
|
4588 |
+
|
4589 |
+
.alert-success hr {
|
4590 |
+
border-top-color: #c9e2b3
|
4591 |
+
}
|
4592 |
+
|
4593 |
+
.alert-success .alert-link {
|
4594 |
+
color: #356635
|
4595 |
+
}
|
4596 |
+
|
4597 |
+
.alert-info {
|
4598 |
+
color: #3a87ad;
|
4599 |
+
background-color: #d9edf7;
|
4600 |
+
border-color: #bce8f1
|
4601 |
+
}
|
4602 |
+
|
4603 |
+
.alert-info hr {
|
4604 |
+
border-top-color: #a6e1ec
|
4605 |
+
}
|
4606 |
+
|
4607 |
+
.alert-info .alert-link {
|
4608 |
+
color: #2d6987
|
4609 |
+
}
|
4610 |
+
|
4611 |
+
.alert-warning {
|
4612 |
+
color: #c09853;
|
4613 |
+
background-color: #fcf8e3;
|
4614 |
+
border-color: #fbeed5
|
4615 |
+
}
|
4616 |
+
|
4617 |
+
.alert-warning hr {
|
4618 |
+
border-top-color: #f8e5be
|
4619 |
+
}
|
4620 |
+
|
4621 |
+
.alert-warning .alert-link {
|
4622 |
+
color: #a47e3c
|
4623 |
+
}
|
4624 |
+
|
4625 |
+
.alert-danger {
|
4626 |
+
color: #b94a48;
|
4627 |
+
background-color: #f2dede;
|
4628 |
+
border-color: #eed3d7
|
4629 |
+
}
|
4630 |
+
|
4631 |
+
.alert-danger hr {
|
4632 |
+
border-top-color: #e6c1c7
|
4633 |
+
}
|
4634 |
+
|
4635 |
+
.alert-danger .alert-link {
|
4636 |
+
color: #953b39
|
4637 |
+
}
|
4638 |
+
|
4639 |
+
@-webkit-keyframes progress-bar-stripes {
|
4640 |
+
from {
|
4641 |
+
background-position: 40px 0
|
4642 |
+
}
|
4643 |
+
to {
|
4644 |
+
background-position: 0 0
|
4645 |
+
}
|
4646 |
+
}
|
4647 |
+
|
4648 |
+
@-moz-keyframes progress-bar-stripes {
|
4649 |
+
from {
|
4650 |
+
background-position: 40px 0
|
4651 |
+
}
|
4652 |
+
to {
|
4653 |
+
background-position: 0 0
|
4654 |
+
}
|
4655 |
+
}
|
4656 |
+
|
4657 |
+
@-o-keyframes progress-bar-stripes {
|
4658 |
+
from {
|
4659 |
+
background-position: 0 0
|
4660 |
+
}
|
4661 |
+
to {
|
4662 |
+
background-position: 40px 0
|
4663 |
+
}
|
4664 |
+
}
|
4665 |
+
|
4666 |
+
@keyframes progress-bar-stripes {
|
4667 |
+
from {
|
4668 |
+
background-position: 40px 0
|
4669 |
+
}
|
4670 |
+
to {
|
4671 |
+
background-position: 0 0
|
4672 |
+
}
|
4673 |
+
}
|
4674 |
+
|
4675 |
+
.progress {
|
4676 |
+
height: 20px;
|
4677 |
+
margin-bottom: 20px;
|
4678 |
+
overflow: hidden;
|
4679 |
+
background-color: #f5f5f5;
|
4680 |
+
border-radius: 4px;
|
4681 |
+
-webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
|
4682 |
+
box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1)
|
4683 |
+
}
|
4684 |
+
|
4685 |
+
.progress-bar {
|
4686 |
+
float: left;
|
4687 |
+
width: 0;
|
4688 |
+
height: 100%;
|
4689 |
+
font-size: 12px;
|
4690 |
+
color: #fff;
|
4691 |
+
text-align: center;
|
4692 |
+
background-color: #428bca;
|
4693 |
+
-webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
|
4694 |
+
box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
|
4695 |
+
-webkit-transition: width .6s ease;
|
4696 |
+
transition: width .6s ease
|
4697 |
+
}
|
4698 |
+
|
4699 |
+
.progress-striped .progress-bar {
|
4700 |
+
background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent));
|
4701 |
+
background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
|
4702 |
+
background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
|
4703 |
+
background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
|
4704 |
+
background-size: 40px 40px
|
4705 |
+
}
|
4706 |
+
|
4707 |
+
.progress.active .progress-bar {
|
4708 |
+
-webkit-animation: progress-bar-stripes 2s linear infinite;
|
4709 |
+
-moz-animation: progress-bar-stripes 2s linear infinite;
|
4710 |
+
-ms-animation: progress-bar-stripes 2s linear infinite;
|
4711 |
+
-o-animation: progress-bar-stripes 2s linear infinite;
|
4712 |
+
animation: progress-bar-stripes 2s linear infinite
|
4713 |
+
}
|
4714 |
+
|
4715 |
+
.progress-bar-success {
|
4716 |
+
background-color: #5cb85c
|
4717 |
+
}
|
4718 |
+
|
4719 |
+
.progress-striped .progress-bar-success {
|
4720 |
+
background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent));
|
4721 |
+
background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
|
4722 |
+
background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
|
4723 |
+
background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent)
|
4724 |
+
}
|
4725 |
+
|
4726 |
+
.progress-bar-info {
|
4727 |
+
background-color: #5bc0de
|
4728 |
+
}
|
4729 |
+
|
4730 |
+
.progress-striped .progress-bar-info {
|
4731 |
+
background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent));
|
4732 |
+
background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
|
4733 |
+
background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
|
4734 |
+
background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent)
|
4735 |
+
}
|
4736 |
+
|
4737 |
+
.progress-bar-warning {
|
4738 |
+
background-color: #f0ad4e
|
4739 |
+
}
|
4740 |
+
|
4741 |
+
.progress-striped .progress-bar-warning {
|
4742 |
+
background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent));
|
4743 |
+
background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
|
4744 |
+
background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
|
4745 |
+
background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent)
|
4746 |
+
}
|
4747 |
+
|
4748 |
+
.progress-bar-danger {
|
4749 |
+
background-color: #d9534f
|
4750 |
+
}
|
4751 |
+
|
4752 |
+
.progress-striped .progress-bar-danger {
|
4753 |
+
background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent));
|
4754 |
+
background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
|
4755 |
+
background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
|
4756 |
+
background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent)
|
4757 |
+
}
|
4758 |
+
|
4759 |
+
.media, .media-body {
|
4760 |
+
overflow: hidden;
|
4761 |
+
zoom: 1
|
4762 |
+
}
|
4763 |
+
|
4764 |
+
.media, .media .media {
|
4765 |
+
margin-top: 15px
|
4766 |
+
}
|
4767 |
+
|
4768 |
+
.media:first-child {
|
4769 |
+
margin-top: 0
|
4770 |
+
}
|
4771 |
+
|
4772 |
+
.media-object {
|
4773 |
+
display: block
|
4774 |
+
}
|
4775 |
+
|
4776 |
+
.media-heading {
|
4777 |
+
margin: 0 0 5px
|
4778 |
+
}
|
4779 |
+
|
4780 |
+
.media > .pull-left {
|
4781 |
+
margin-right: 10px
|
4782 |
+
}
|
4783 |
+
|
4784 |
+
.media > .pull-right {
|
4785 |
+
margin-left: 10px
|
4786 |
+
}
|
4787 |
+
|
4788 |
+
.media-list {
|
4789 |
+
padding-left: 0;
|
4790 |
+
list-style: none
|
4791 |
+
}
|
4792 |
+
|
4793 |
+
.list-group {
|
4794 |
+
padding-left: 0;
|
4795 |
+
margin-bottom: 20px
|
4796 |
+
}
|
4797 |
+
|
4798 |
+
.list-group-item {
|
4799 |
+
position: relative;
|
4800 |
+
display: block;
|
4801 |
+
padding: 10px 15px;
|
4802 |
+
margin-bottom: -1px;
|
4803 |
+
background-color: #fff;
|
4804 |
+
border: 1px solid #ddd
|
4805 |
+
}
|
4806 |
+
|
4807 |
+
.list-group-item:first-child {
|
4808 |
+
border-top-right-radius: 4px;
|
4809 |
+
border-top-left-radius: 4px
|
4810 |
+
}
|
4811 |
+
|
4812 |
+
.list-group-item:last-child {
|
4813 |
+
margin-bottom: 0;
|
4814 |
+
border-bottom-right-radius: 4px;
|
4815 |
+
border-bottom-left-radius: 4px
|
4816 |
+
}
|
4817 |
+
|
4818 |
+
.list-group-item > .badge {
|
4819 |
+
float: right
|
4820 |
+
}
|
4821 |
+
|
4822 |
+
.list-group-item > .badge + .badge {
|
4823 |
+
margin-right: 5px
|
4824 |
+
}
|
4825 |
+
|
4826 |
+
a.list-group-item {
|
4827 |
+
color: #555
|
4828 |
+
}
|
4829 |
+
|
4830 |
+
a.list-group-item .list-group-item-heading {
|
4831 |
+
color: #333
|
4832 |
+
}
|
4833 |
+
|
4834 |
+
a.list-group-item:hover, a.list-group-item:focus {
|
4835 |
+
text-decoration: none;
|
4836 |
+
background-color: #f5f5f5
|
4837 |
+
}
|
4838 |
+
|
4839 |
+
.list-group-item.active, .list-group-item.active:hover, .list-group-item.active:focus {
|
4840 |
+
z-index: 2;
|
4841 |
+
color: #fff;
|
4842 |
+
background-color: #428bca;
|
4843 |
+
border-color: #428bca
|
4844 |
+
}
|
4845 |
+
|
4846 |
+
.list-group-item.active .list-group-item-heading, .list-group-item.active:hover .list-group-item-heading, .list-group-item.active:focus .list-group-item-heading {
|
4847 |
+
color: inherit
|
4848 |
+
}
|
4849 |
+
|
4850 |
+
.list-group-item.active .list-group-item-text, .list-group-item.active:hover .list-group-item-text, .list-group-item.active:focus .list-group-item-text {
|
4851 |
+
color: #e1edf7
|
4852 |
+
}
|
4853 |
+
|
4854 |
+
.list-group-item-heading {
|
4855 |
+
margin-top: 0;
|
4856 |
+
margin-bottom: 5px
|
4857 |
+
}
|
4858 |
+
|
4859 |
+
.list-group-item-text {
|
4860 |
+
margin-bottom: 0;
|
4861 |
+
line-height: 1.3
|
4862 |
+
}
|
4863 |
+
|
4864 |
+
.panel {
|
4865 |
+
margin-bottom: 20px;
|
4866 |
+
background-color: #fff;
|
4867 |
+
border: 1px solid transparent;
|
4868 |
+
border-radius: 4px;
|
4869 |
+
-webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
|
4870 |
+
box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05)
|
4871 |
+
}
|
4872 |
+
|
4873 |
+
.panel-body {
|
4874 |
+
padding: 15px
|
4875 |
+
}
|
4876 |
+
|
4877 |
+
.panel-body:before, .panel-body:after {
|
4878 |
+
display: table;
|
4879 |
+
content: " "
|
4880 |
+
}
|
4881 |
+
|
4882 |
+
.panel-body:after {
|
4883 |
+
clear: both
|
4884 |
+
}
|
4885 |
+
|
4886 |
+
.panel-body:before, .panel-body:after {
|
4887 |
+
display: table;
|
4888 |
+
content: " "
|
4889 |
+
}
|
4890 |
+
|
4891 |
+
.panel-body:after {
|
4892 |
+
clear: both
|
4893 |
+
}
|
4894 |
+
|
4895 |
+
.panel > .list-group {
|
4896 |
+
margin-bottom: 0
|
4897 |
+
}
|
4898 |
+
|
4899 |
+
.panel > .list-group .list-group-item {
|
4900 |
+
border-width: 1px 0
|
4901 |
+
}
|
4902 |
+
|
4903 |
+
.panel > .list-group .list-group-item:first-child {
|
4904 |
+
border-top-right-radius: 0;
|
4905 |
+
border-top-left-radius: 0
|
4906 |
+
}
|
4907 |
+
|
4908 |
+
.panel > .list-group .list-group-item:last-child {
|
4909 |
+
border-bottom: 0
|
4910 |
+
}
|
4911 |
+
|
4912 |
+
.panel-heading + .list-group .list-group-item:first-child {
|
4913 |
+
border-top-width: 0
|
4914 |
+
}
|
4915 |
+
|
4916 |
+
.panel > .table {
|
4917 |
+
margin-bottom: 0
|
4918 |
+
}
|
4919 |
+
|
4920 |
+
.panel > .panel-body + .table {
|
4921 |
+
border-top: 1px solid #ddd
|
4922 |
+
}
|
4923 |
+
|
4924 |
+
.panel-heading {
|
4925 |
+
padding: 10px 15px;
|
4926 |
+
border-bottom: 1px solid transparent;
|
4927 |
+
border-top-right-radius: 3px;
|
4928 |
+
border-top-left-radius: 3px
|
4929 |
+
}
|
4930 |
+
|
4931 |
+
.panel-title {
|
4932 |
+
margin-top: 0;
|
4933 |
+
margin-bottom: 0;
|
4934 |
+
font-size: 16px
|
4935 |
+
}
|
4936 |
+
|
4937 |
+
.panel-title > a {
|
4938 |
+
color: inherit
|
4939 |
+
}
|
4940 |
+
|
4941 |
+
.panel-footer {
|
4942 |
+
padding: 10px 15px;
|
4943 |
+
background-color: #f5f5f5;
|
4944 |
+
border-top: 1px solid #ddd;
|
4945 |
+
border-bottom-right-radius: 3px;
|
4946 |
+
border-bottom-left-radius: 3px
|
4947 |
+
}
|
4948 |
+
|
4949 |
+
.panel-group .panel {
|
4950 |
+
margin-bottom: 0;
|
4951 |
+
overflow: hidden;
|
4952 |
+
border-radius: 4px
|
4953 |
+
}
|
4954 |
+
|
4955 |
+
.panel-group .panel + .panel {
|
4956 |
+
margin-top: 5px
|
4957 |
+
}
|
4958 |
+
|
4959 |
+
.panel-group .panel-heading {
|
4960 |
+
border-bottom: 0
|
4961 |
+
}
|
4962 |
+
|
4963 |
+
.panel-group .panel-heading + .panel-collapse .panel-body {
|
4964 |
+
border-top: 1px solid #ddd
|
4965 |
+
}
|
4966 |
+
|
4967 |
+
.panel-group .panel-footer {
|
4968 |
+
border-top: 0
|
4969 |
+
}
|
4970 |
+
|
4971 |
+
.panel-group .panel-footer + .panel-collapse .panel-body {
|
4972 |
+
border-bottom: 1px solid #ddd
|
4973 |
+
}
|
4974 |
+
|
4975 |
+
.panel-default {
|
4976 |
+
border-color: #ddd
|
4977 |
+
}
|
4978 |
+
|
4979 |
+
.panel-default > .panel-heading {
|
4980 |
+
color: #333;
|
4981 |
+
background-color: #f5f5f5;
|
4982 |
+
border-color: #ddd
|
4983 |
+
}
|
4984 |
+
|
4985 |
+
.panel-default > .panel-heading + .panel-collapse .panel-body {
|
4986 |
+
border-top-color: #ddd
|
4987 |
+
}
|
4988 |
+
|
4989 |
+
.panel-default > .panel-footer + .panel-collapse .panel-body {
|
4990 |
+
border-bottom-color: #ddd
|
4991 |
+
}
|
4992 |
+
|
4993 |
+
.panel-primary {
|
4994 |
+
border-color: #428bca
|
4995 |
+
}
|
4996 |
+
|
4997 |
+
.panel-primary > .panel-heading {
|
4998 |
+
color: #fff;
|
4999 |
+
background-color: #428bca;
|
5000 |
+
border-color: #428bca
|
5001 |
+
}
|
5002 |
+
|
5003 |
+
.panel-primary > .panel-heading + .panel-collapse .panel-body {
|
5004 |
+
border-top-color: #428bca
|
5005 |
+
}
|
5006 |
+
|
5007 |
+
.panel-primary > .panel-footer + .panel-collapse .panel-body {
|
5008 |
+
border-bottom-color: #428bca
|
5009 |
+
}
|
5010 |
+
|
5011 |
+
.panel-success {
|
5012 |
+
border-color: #d6e9c6
|
5013 |
+
}
|
5014 |
+
|
5015 |
+
.panel-success > .panel-heading {
|
5016 |
+
color: #468847;
|
5017 |
+
background-color: #dff0d8;
|
5018 |
+
border-color: #d6e9c6
|
5019 |
+
}
|
5020 |
+
|
5021 |
+
.panel-success > .panel-heading + .panel-collapse .panel-body {
|
5022 |
+
border-top-color: #d6e9c6
|
5023 |
+
}
|
5024 |
+
|
5025 |
+
.panel-success > .panel-footer + .panel-collapse .panel-body {
|
5026 |
+
border-bottom-color: #d6e9c6
|
5027 |
+
}
|
5028 |
+
|
5029 |
+
.panel-warning {
|
5030 |
+
border-color: #fbeed5
|
5031 |
+
}
|
5032 |
+
|
5033 |
+
.panel-warning > .panel-heading {
|
5034 |
+
color: #c09853;
|
5035 |
+
background-color: #fcf8e3;
|
5036 |
+
border-color: #fbeed5
|
5037 |
+
}
|
5038 |
+
|
5039 |
+
.panel-warning > .panel-heading + .panel-collapse .panel-body {
|
5040 |
+
border-top-color: #fbeed5
|
5041 |
+
}
|
5042 |
+
|
5043 |
+
.panel-warning > .panel-footer + .panel-collapse .panel-body {
|
5044 |
+
border-bottom-color: #fbeed5
|
5045 |
+
}
|
5046 |
+
|
5047 |
+
.panel-danger {
|
5048 |
+
border-color: #eed3d7
|
5049 |
+
}
|
5050 |
+
|
5051 |
+
.panel-danger > .panel-heading {
|
5052 |
+
color: #b94a48;
|
5053 |
+
background-color: #f2dede;
|
5054 |
+
border-color: #eed3d7
|
5055 |
+
}
|
5056 |
+
|
5057 |
+
.panel-danger > .panel-heading + .panel-collapse .panel-body {
|
5058 |
+
border-top-color: #eed3d7
|
5059 |
+
}
|
5060 |
+
|
5061 |
+
.panel-danger > .panel-footer + .panel-collapse .panel-body {
|
5062 |
+
border-bottom-color: #eed3d7
|
5063 |
+
}
|
5064 |
+
|
5065 |
+
.panel-info {
|
5066 |
+
border-color: #bce8f1
|
5067 |
+
}
|
5068 |
+
|
5069 |
+
.panel-info > .panel-heading {
|
5070 |
+
color: #3a87ad;
|
5071 |
+
background-color: #d9edf7;
|
5072 |
+
border-color: #bce8f1
|
5073 |
+
}
|
5074 |
+
|
5075 |
+
.panel-info > .panel-heading + .panel-collapse .panel-body {
|
5076 |
+
border-top-color: #bce8f1
|
5077 |
+
}
|
5078 |
+
|
5079 |
+
.panel-info > .panel-footer + .panel-collapse .panel-body {
|
5080 |
+
border-bottom-color: #bce8f1
|
5081 |
+
}
|
5082 |
+
|
5083 |
+
.well {
|
5084 |
+
min-height: 20px;
|
5085 |
+
padding: 19px;
|
5086 |
+
margin-bottom: 20px;
|
5087 |
+
background-color: #f5f5f5;
|
5088 |
+
border: 1px solid #e3e3e3;
|
5089 |
+
border-radius: 4px;
|
5090 |
+
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
|
5091 |
+
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05)
|
5092 |
+
}
|
5093 |
+
|
5094 |
+
.well blockquote {
|
5095 |
+
border-color: #ddd;
|
5096 |
+
border-color: rgba(0, 0, 0, 0.15)
|
5097 |
+
}
|
5098 |
+
|
5099 |
+
.well-lg {
|
5100 |
+
padding: 24px;
|
5101 |
+
border-radius: 6px
|
5102 |
+
}
|
5103 |
+
|
5104 |
+
.well-sm {
|
5105 |
+
padding: 9px;
|
5106 |
+
border-radius: 3px
|
5107 |
+
}
|
5108 |
+
|
5109 |
+
.close {
|
5110 |
+
float: right;
|
5111 |
+
font-size: 21px;
|
5112 |
+
font-weight: bold;
|
5113 |
+
line-height: 1;
|
5114 |
+
color: #000;
|
5115 |
+
text-shadow: 0 1px 0 #fff;
|
5116 |
+
opacity: .2;
|
5117 |
+
filter: alpha(opacity=20)
|
5118 |
+
}
|
5119 |
+
|
5120 |
+
.close:hover, .close:focus {
|
5121 |
+
color: #000;
|
5122 |
+
text-decoration: none;
|
5123 |
+
cursor: pointer;
|
5124 |
+
opacity: .5;
|
5125 |
+
filter: alpha(opacity=50)
|
5126 |
+
}
|
5127 |
+
|
5128 |
+
button.close {
|
5129 |
+
padding: 0;
|
5130 |
+
cursor: pointer;
|
5131 |
+
background: transparent;
|
5132 |
+
border: 0;
|
5133 |
+
-webkit-appearance: none
|
5134 |
+
}
|
5135 |
+
|
5136 |
+
.modal-open {
|
5137 |
+
overflow: hidden
|
5138 |
+
}
|
5139 |
+
|
5140 |
+
body.modal-open, .modal-open .navbar-fixed-top, .modal-open .navbar-fixed-bottom {
|
5141 |
+
margin-right: 15px
|
5142 |
+
}
|
5143 |
+
|
5144 |
+
.modal {
|
5145 |
+
position: fixed;
|
5146 |
+
top: 0;
|
5147 |
+
right: 0;
|
5148 |
+
bottom: 0;
|
5149 |
+
left: 0;
|
5150 |
+
z-index: 1040;
|
5151 |
+
display: none;
|
5152 |
+
overflow: auto;
|
5153 |
+
overflow-y: scroll
|
5154 |
+
}
|
5155 |
+
|
5156 |
+
.modal.fade .modal-dialog {
|
5157 |
+
-webkit-transform: translate(0, -25%);
|
5158 |
+
-ms-transform: translate(0, -25%);
|
5159 |
+
transform: translate(0, -25%);
|
5160 |
+
-webkit-transition: -webkit-transform .3s ease-out;
|
5161 |
+
-moz-transition: -moz-transform .3s ease-out;
|
5162 |
+
-o-transition: -o-transform .3s ease-out;
|
5163 |
+
transition: transform .3s ease-out
|
5164 |
+
}
|
5165 |
+
|
5166 |
+
.modal.in .modal-dialog {
|
5167 |
+
-webkit-transform: translate(0, 0);
|
5168 |
+
-ms-transform: translate(0, 0);
|
5169 |
+
transform: translate(0, 0)
|
5170 |
+
}
|
5171 |
+
|
5172 |
+
.modal-dialog {
|
5173 |
+
z-index: 1050;
|
5174 |
+
width: auto;
|
5175 |
+
padding: 10px;
|
5176 |
+
margin-right: auto;
|
5177 |
+
margin-left: auto
|
5178 |
+
}
|
5179 |
+
|
5180 |
+
.modal-content {
|
5181 |
+
position: relative;
|
5182 |
+
background-color: #fff;
|
5183 |
+
border: 1px solid #999;
|
5184 |
+
border: 1px solid rgba(0, 0, 0, 0.2);
|
5185 |
+
border-radius: 6px;
|
5186 |
+
outline: 0;
|
5187 |
+
-webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
|
5188 |
+
box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
|
5189 |
+
background-clip: padding-box
|
5190 |
+
}
|
5191 |
+
|
5192 |
+
.modal-backdrop {
|
5193 |
+
position: fixed;
|
5194 |
+
top: 0;
|
5195 |
+
right: 0;
|
5196 |
+
bottom: 0;
|
5197 |
+
left: 0;
|
5198 |
+
z-index: 1030;
|
5199 |
+
background-color: #000
|
5200 |
+
}
|
5201 |
+
|
5202 |
+
.modal-backdrop.fade {
|
5203 |
+
opacity: 0;
|
5204 |
+
filter: alpha(opacity=0)
|
5205 |
+
}
|
5206 |
+
|
5207 |
+
.modal-backdrop.in {
|
5208 |
+
opacity: .5;
|
5209 |
+
filter: alpha(opacity=50)
|
5210 |
+
}
|
5211 |
+
|
5212 |
+
.modal-header {
|
5213 |
+
min-height: 16.428571429px;
|
5214 |
+
padding: 15px;
|
5215 |
+
border-bottom: 1px solid #e5e5e5
|
5216 |
+
}
|
5217 |
+
|
5218 |
+
.modal-header .close {
|
5219 |
+
margin-top: -2px
|
5220 |
+
}
|
5221 |
+
|
5222 |
+
.modal-title {
|
5223 |
+
margin: 0;
|
5224 |
+
line-height: 1.428571429
|
5225 |
+
}
|
5226 |
+
|
5227 |
+
.modal-body {
|
5228 |
+
position: relative;
|
5229 |
+
padding: 20px
|
5230 |
+
}
|
5231 |
+
|
5232 |
+
.modal-footer {
|
5233 |
+
padding: 19px 20px 20px;
|
5234 |
+
margin-top: 15px;
|
5235 |
+
text-align: right;
|
5236 |
+
border-top: 1px solid #e5e5e5
|
5237 |
+
}
|
5238 |
+
|
5239 |
+
.modal-footer:before, .modal-footer:after {
|
5240 |
+
display: table;
|
5241 |
+
content: " "
|
5242 |
+
}
|
5243 |
+
|
5244 |
+
.modal-footer:after {
|
5245 |
+
clear: both
|
5246 |
+
}
|
5247 |
+
|
5248 |
+
.modal-footer:before, .modal-footer:after {
|
5249 |
+
display: table;
|
5250 |
+
content: " "
|
5251 |
+
}
|
5252 |
+
|
5253 |
+
.modal-footer:after {
|
5254 |
+
clear: both
|
5255 |
+
}
|
5256 |
+
|
5257 |
+
.modal-footer .btn + .btn {
|
5258 |
+
margin-bottom: 0;
|
5259 |
+
margin-left: 5px
|
5260 |
+
}
|
5261 |
+
|
5262 |
+
.modal-footer .btn-group .btn + .btn {
|
5263 |
+
margin-left: -1px
|
5264 |
+
}
|
5265 |
+
|
5266 |
+
.modal-footer .btn-block + .btn-block {
|
5267 |
+
margin-left: 0
|
5268 |
+
}
|
5269 |
+
|
5270 |
+
@media screen and (min-width: 768px) {
|
5271 |
+
.modal-dialog {
|
5272 |
+
right: auto;
|
5273 |
+
left: 50%;
|
5274 |
+
width: 600px;
|
5275 |
+
padding-top: 30px;
|
5276 |
+
padding-bottom: 30px
|
5277 |
+
}
|
5278 |
+
|
5279 |
+
.modal-content {
|
5280 |
+
-webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
|
5281 |
+
box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5)
|
5282 |
+
}
|
5283 |
+
}
|
5284 |
+
|
5285 |
+
.tooltip {
|
5286 |
+
position: absolute;
|
5287 |
+
z-index: 1030;
|
5288 |
+
display: block;
|
5289 |
+
font-size: 12px;
|
5290 |
+
line-height: 1.4;
|
5291 |
+
opacity: 0;
|
5292 |
+
filter: alpha(opacity=0);
|
5293 |
+
visibility: visible
|
5294 |
+
}
|
5295 |
+
|
5296 |
+
.tooltip.in {
|
5297 |
+
opacity: .9;
|
5298 |
+
filter: alpha(opacity=90)
|
5299 |
+
}
|
5300 |
+
|
5301 |
+
.tooltip.top {
|
5302 |
+
padding: 5px 0;
|
5303 |
+
margin-top: -3px
|
5304 |
+
}
|
5305 |
+
|
5306 |
+
.tooltip.right {
|
5307 |
+
padding: 0 5px;
|
5308 |
+
margin-left: 3px
|
5309 |
+
}
|
5310 |
+
|
5311 |
+
.tooltip.bottom {
|
5312 |
+
padding: 5px 0;
|
5313 |
+
margin-top: 3px
|
5314 |
+
}
|
5315 |
+
|
5316 |
+
.tooltip.left {
|
5317 |
+
padding: 0 5px;
|
5318 |
+
margin-left: -3px
|
5319 |
+
}
|
5320 |
+
|
5321 |
+
.tooltip-inner {
|
5322 |
+
max-width: 200px;
|
5323 |
+
padding: 3px 8px;
|
5324 |
+
color: #fff;
|
5325 |
+
text-align: center;
|
5326 |
+
text-decoration: none;
|
5327 |
+
background-color: #000;
|
5328 |
+
border-radius: 4px
|
5329 |
+
}
|
5330 |
+
|
5331 |
+
.tooltip-arrow {
|
5332 |
+
position: absolute;
|
5333 |
+
width: 0;
|
5334 |
+
height: 0;
|
5335 |
+
border-color: transparent;
|
5336 |
+
border-style: solid
|
5337 |
+
}
|
5338 |
+
|
5339 |
+
.tooltip.top .tooltip-arrow {
|
5340 |
+
bottom: 0;
|
5341 |
+
left: 50%;
|
5342 |
+
margin-left: -5px;
|
5343 |
+
border-top-color: #000;
|
5344 |
+
border-width: 5px 5px 0
|
5345 |
+
}
|
5346 |
+
|
5347 |
+
.tooltip.top-left .tooltip-arrow {
|
5348 |
+
bottom: 0;
|
5349 |
+
left: 5px;
|
5350 |
+
border-top-color: #000;
|
5351 |
+
border-width: 5px 5px 0
|
5352 |
+
}
|
5353 |
+
|
5354 |
+
.tooltip.top-right .tooltip-arrow {
|
5355 |
+
right: 5px;
|
5356 |
+
bottom: 0;
|
5357 |
+
border-top-color: #000;
|
5358 |
+
border-width: 5px 5px 0
|
5359 |
+
}
|
5360 |
+
|
5361 |
+
.tooltip.right .tooltip-arrow {
|
5362 |
+
top: 50%;
|
5363 |
+
left: 0;
|
5364 |
+
margin-top: -5px;
|
5365 |
+
border-right-color: #000;
|
5366 |
+
border-width: 5px 5px 5px 0
|
5367 |
+
}
|
5368 |
+
|
5369 |
+
.tooltip.left .tooltip-arrow {
|
5370 |
+
top: 50%;
|
5371 |
+
right: 0;
|
5372 |
+
margin-top: -5px;
|
5373 |
+
border-left-color: #000;
|
5374 |
+
border-width: 5px 0 5px 5px
|
5375 |
+
}
|
5376 |
+
|
5377 |
+
.tooltip.bottom .tooltip-arrow {
|
5378 |
+
top: 0;
|
5379 |
+
left: 50%;
|
5380 |
+
margin-left: -5px;
|
5381 |
+
border-bottom-color: #000;
|
5382 |
+
border-width: 0 5px 5px
|
5383 |
+
}
|
5384 |
+
|
5385 |
+
.tooltip.bottom-left .tooltip-arrow {
|
5386 |
+
top: 0;
|
5387 |
+
left: 5px;
|
5388 |
+
border-bottom-color: #000;
|
5389 |
+
border-width: 0 5px 5px
|
5390 |
+
}
|
5391 |
+
|
5392 |
+
.tooltip.bottom-right .tooltip-arrow {
|
5393 |
+
top: 0;
|
5394 |
+
right: 5px;
|
5395 |
+
border-bottom-color: #000;
|
5396 |
+
border-width: 0 5px 5px
|
5397 |
+
}
|
5398 |
+
|
5399 |
+
.popover {
|
5400 |
+
position: absolute;
|
5401 |
+
top: 0;
|
5402 |
+
left: 0;
|
5403 |
+
z-index: 1010;
|
5404 |
+
display: none;
|
5405 |
+
max-width: 276px;
|
5406 |
+
padding: 1px;
|
5407 |
+
text-align: left;
|
5408 |
+
white-space: normal;
|
5409 |
+
background-color: #fff;
|
5410 |
+
border: 1px solid #ccc;
|
5411 |
+
border: 1px solid rgba(0, 0, 0, 0.2);
|
5412 |
+
border-radius: 6px;
|
5413 |
+
-webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
|
5414 |
+
box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
|
5415 |
+
background-clip: padding-box
|
5416 |
+
}
|
5417 |
+
|
5418 |
+
.popover.top {
|
5419 |
+
margin-top: -10px
|
5420 |
+
}
|
5421 |
+
|
5422 |
+
.popover.right {
|
5423 |
+
margin-left: 10px
|
5424 |
+
}
|
5425 |
+
|
5426 |
+
.popover.bottom {
|
5427 |
+
margin-top: 10px
|
5428 |
+
}
|
5429 |
+
|
5430 |
+
.popover.left {
|
5431 |
+
margin-left: -10px
|
5432 |
+
}
|
5433 |
+
|
5434 |
+
.popover-title {
|
5435 |
+
padding: 8px 14px;
|
5436 |
+
margin: 0;
|
5437 |
+
font-size: 14px;
|
5438 |
+
font-weight: normal;
|
5439 |
+
line-height: 18px;
|
5440 |
+
background-color: #f7f7f7;
|
5441 |
+
border-bottom: 1px solid #ebebeb;
|
5442 |
+
border-radius: 5px 5px 0 0
|
5443 |
+
}
|
5444 |
+
|
5445 |
+
.popover-content {
|
5446 |
+
padding: 9px 14px
|
5447 |
+
}
|
5448 |
+
|
5449 |
+
.popover .arrow, .popover .arrow:after {
|
5450 |
+
position: absolute;
|
5451 |
+
display: block;
|
5452 |
+
width: 0;
|
5453 |
+
height: 0;
|
5454 |
+
border-color: transparent;
|
5455 |
+
border-style: solid
|
5456 |
+
}
|
5457 |
+
|
5458 |
+
.popover .arrow {
|
5459 |
+
border-width: 11px
|
5460 |
+
}
|
5461 |
+
|
5462 |
+
.popover .arrow:after {
|
5463 |
+
border-width: 10px;
|
5464 |
+
content: ""
|
5465 |
+
}
|
5466 |
+
|
5467 |
+
.popover.top .arrow {
|
5468 |
+
bottom: -11px;
|
5469 |
+
left: 50%;
|
5470 |
+
margin-left: -11px;
|
5471 |
+
border-top-color: #999;
|
5472 |
+
border-top-color: rgba(0, 0, 0, 0.25);
|
5473 |
+
border-bottom-width: 0
|
5474 |
+
}
|
5475 |
+
|
5476 |
+
.popover.top .arrow:after {
|
5477 |
+
bottom: 1px;
|
5478 |
+
margin-left: -10px;
|
5479 |
+
border-top-color: #fff;
|
5480 |
+
border-bottom-width: 0;
|
5481 |
+
content: " "
|
5482 |
+
}
|
5483 |
+
|
5484 |
+
.popover.right .arrow {
|
5485 |
+
top: 50%;
|
5486 |
+
left: -11px;
|
5487 |
+
margin-top: -11px;
|
5488 |
+
border-right-color: #999;
|
5489 |
+
border-right-color: rgba(0, 0, 0, 0.25);
|
5490 |
+
border-left-width: 0
|
5491 |
+
}
|
5492 |
+
|
5493 |
+
.popover.right .arrow:after {
|
5494 |
+
bottom: -10px;
|
5495 |
+
left: 1px;
|
5496 |
+
border-right-color: #fff;
|
5497 |
+
border-left-width: 0;
|
5498 |
+
content: " "
|
5499 |
+
}
|
5500 |
+
|
5501 |
+
.popover.bottom .arrow {
|
5502 |
+
top: -11px;
|
5503 |
+
left: 50%;
|
5504 |
+
margin-left: -11px;
|
5505 |
+
border-bottom-color: #999;
|
5506 |
+
border-bottom-color: rgba(0, 0, 0, 0.25);
|
5507 |
+
border-top-width: 0
|
5508 |
+
}
|
5509 |
+
|
5510 |
+
.popover.bottom .arrow:after {
|
5511 |
+
top: 1px;
|
5512 |
+
margin-left: -10px;
|
5513 |
+
border-bottom-color: #fff;
|
5514 |
+
border-top-width: 0;
|
5515 |
+
content: " "
|
5516 |
+
}
|
5517 |
+
|
5518 |
+
.popover.left .arrow {
|
5519 |
+
top: 50%;
|
5520 |
+
right: -11px;
|
5521 |
+
margin-top: -11px;
|
5522 |
+
border-left-color: #999;
|
5523 |
+
border-left-color: rgba(0, 0, 0, 0.25);
|
5524 |
+
border-right-width: 0
|
5525 |
+
}
|
5526 |
+
|
5527 |
+
.popover.left .arrow:after {
|
5528 |
+
right: 1px;
|
5529 |
+
bottom: -10px;
|
5530 |
+
border-left-color: #fff;
|
5531 |
+
border-right-width: 0;
|
5532 |
+
content: " "
|
5533 |
+
}
|
5534 |
+
|
5535 |
+
.carousel {
|
5536 |
+
position: relative
|
5537 |
+
}
|
5538 |
+
|
5539 |
+
.carousel-inner {
|
5540 |
+
position: relative;
|
5541 |
+
width: 100%;
|
5542 |
+
overflow: hidden
|
5543 |
+
}
|
5544 |
+
|
5545 |
+
.carousel-inner > .item {
|
5546 |
+
position: relative;
|
5547 |
+
display: none;
|
5548 |
+
-webkit-transition: .6s ease-in-out left;
|
5549 |
+
transition: .6s ease-in-out left
|
5550 |
+
}
|
5551 |
+
|
5552 |
+
.carousel-inner > .item > img, .carousel-inner > .item > a > img {
|
5553 |
+
display: block;
|
5554 |
+
height: auto;
|
5555 |
+
max-width: 100%;
|
5556 |
+
line-height: 1
|
5557 |
+
}
|
5558 |
+
|
5559 |
+
.carousel-inner > .active, .carousel-inner > .next, .carousel-inner > .prev {
|
5560 |
+
display: block
|
5561 |
+
}
|
5562 |
+
|
5563 |
+
.carousel-inner > .active {
|
5564 |
+
left: 0
|
5565 |
+
}
|
5566 |
+
|
5567 |
+
.carousel-inner > .next, .carousel-inner > .prev {
|
5568 |
+
position: absolute;
|
5569 |
+
top: 0;
|
5570 |
+
width: 100%
|
5571 |
+
}
|
5572 |
+
|
5573 |
+
.carousel-inner > .next {
|
5574 |
+
left: 100%
|
5575 |
+
}
|
5576 |
+
|
5577 |
+
.carousel-inner > .prev {
|
5578 |
+
left: -100%
|
5579 |
+
}
|
5580 |
+
|
5581 |
+
.carousel-inner > .next.left, .carousel-inner > .prev.right {
|
5582 |
+
left: 0
|
5583 |
+
}
|
5584 |
+
|
5585 |
+
.carousel-inner > .active.left {
|
5586 |
+
left: -100%
|
5587 |
+
}
|
5588 |
+
|
5589 |
+
.carousel-inner > .active.right {
|
5590 |
+
left: 100%
|
5591 |
+
}
|
5592 |
+
|
5593 |
+
.carousel-control {
|
5594 |
+
position: absolute;
|
5595 |
+
top: 0;
|
5596 |
+
bottom: 0;
|
5597 |
+
left: 0;
|
5598 |
+
width: 15%;
|
5599 |
+
font-size: 20px;
|
5600 |
+
color: #fff;
|
5601 |
+
text-align: center;
|
5602 |
+
text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
|
5603 |
+
opacity: .5;
|
5604 |
+
filter: alpha(opacity=50)
|
5605 |
+
}
|
5606 |
+
|
5607 |
+
.carousel-control.left {
|
5608 |
+
background-image: -webkit-gradient(linear, 0 top, 100% top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0.0001)));
|
5609 |
+
background-image: -webkit-linear-gradient(left, color-stop(rgba(0, 0, 0, 0.5) 0), color-stop(rgba(0, 0, 0, 0.0001) 100%));
|
5610 |
+
background-image: -moz-linear-gradient(left, rgba(0, 0, 0, 0.5) 0, rgba(0, 0, 0, 0.0001) 100%);
|
5611 |
+
background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5) 0, rgba(0, 0, 0, 0.0001) 100%);
|
5612 |
+
background-repeat: repeat-x;
|
5613 |
+
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1)
|
5614 |
+
}
|
5615 |
+
|
5616 |
+
.carousel-control.right {
|
5617 |
+
right: 0;
|
5618 |
+
left: auto;
|
5619 |
+
background-image: -webkit-gradient(linear, 0 top, 100% top, from(rgba(0, 0, 0, 0.0001)), to(rgba(0, 0, 0, 0.5)));
|
5620 |
+
background-image: -webkit-linear-gradient(left, color-stop(rgba(0, 0, 0, 0.0001) 0), color-stop(rgba(0, 0, 0, 0.5) 100%));
|
5621 |
+
background-image: -moz-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0, rgba(0, 0, 0, 0.5) 100%);
|
5622 |
+
background-image: linear-gradient(to right, rgba(0, 0, 0, 0.0001) 0, rgba(0, 0, 0, 0.5) 100%);
|
5623 |
+
background-repeat: repeat-x;
|
5624 |
+
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1)
|
5625 |
+
}
|
5626 |
+
|
5627 |
+
.carousel-control:hover, .carousel-control:focus {
|
5628 |
+
color: #fff;
|
5629 |
+
text-decoration: none;
|
5630 |
+
opacity: .9;
|
5631 |
+
filter: alpha(opacity=90)
|
5632 |
+
}
|
5633 |
+
|
5634 |
+
.carousel-control .icon-prev, .carousel-control .icon-next, .carousel-control .glyphicon-chevron-left, .carousel-control .glyphicon-chevron-right {
|
5635 |
+
position: absolute;
|
5636 |
+
top: 50%;
|
5637 |
+
left: 50%;
|
5638 |
+
z-index: 5;
|
5639 |
+
display: inline-block
|
5640 |
+
}
|
5641 |
+
|
5642 |
+
.carousel-control .icon-prev, .carousel-control .icon-next {
|
5643 |
+
width: 20px;
|
5644 |
+
height: 20px;
|
5645 |
+
margin-top: -10px;
|
5646 |
+
margin-left: -10px;
|
5647 |
+
font-family: serif
|
5648 |
+
}
|
5649 |
+
|
5650 |
+
.carousel-control .icon-prev:before {
|
5651 |
+
content: '\2039'
|
5652 |
+
}
|
5653 |
+
|
5654 |
+
.carousel-control .icon-next:before {
|
5655 |
+
content: '\203a'
|
5656 |
+
}
|
5657 |
+
|
5658 |
+
.carousel-indicators {
|
5659 |
+
position: absolute;
|
5660 |
+
bottom: 10px;
|
5661 |
+
left: 50%;
|
5662 |
+
z-index: 15;
|
5663 |
+
width: 60%;
|
5664 |
+
padding-left: 0;
|
5665 |
+
margin-left: -30%;
|
5666 |
+
text-align: center;
|
5667 |
+
list-style: none
|
5668 |
+
}
|
5669 |
+
|
5670 |
+
.carousel-indicators li {
|
5671 |
+
display: inline-block;
|
5672 |
+
width: 10px;
|
5673 |
+
height: 10px;
|
5674 |
+
margin: 1px;
|
5675 |
+
text-indent: -999px;
|
5676 |
+
cursor: pointer;
|
5677 |
+
border: 1px solid #fff;
|
5678 |
+
border-radius: 10px
|
5679 |
+
}
|
5680 |
+
|
5681 |
+
.carousel-indicators .active {
|
5682 |
+
width: 12px;
|
5683 |
+
height: 12px;
|
5684 |
+
margin: 0;
|
5685 |
+
background-color: #fff
|
5686 |
+
}
|
5687 |
+
|
5688 |
+
.carousel-caption {
|
5689 |
+
position: absolute;
|
5690 |
+
right: 15%;
|
5691 |
+
bottom: 20px;
|
5692 |
+
left: 15%;
|
5693 |
+
z-index: 10;
|
5694 |
+
padding-top: 20px;
|
5695 |
+
padding-bottom: 20px;
|
5696 |
+
color: #fff;
|
5697 |
+
text-align: center;
|
5698 |
+
text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6)
|
5699 |
+
}
|
5700 |
+
|
5701 |
+
.carousel-caption .btn {
|
5702 |
+
text-shadow: none
|
5703 |
+
}
|
5704 |
+
|
5705 |
+
@media screen and (min-width: 768px) {
|
5706 |
+
.carousel-control .icon-prev, .carousel-control .icon-next {
|
5707 |
+
width: 30px;
|
5708 |
+
height: 30px;
|
5709 |
+
margin-top: -15px;
|
5710 |
+
margin-left: -15px;
|
5711 |
+
font-size: 30px
|
5712 |
+
}
|
5713 |
+
|
5714 |
+
.carousel-caption {
|
5715 |
+
right: 20%;
|
5716 |
+
left: 20%;
|
5717 |
+
padding-bottom: 30px
|
5718 |
+
}
|
5719 |
+
|
5720 |
+
.carousel-indicators {
|
5721 |
+
bottom: 20px
|
5722 |
+
}
|
5723 |
+
}
|
5724 |
+
|
5725 |
+
.clearfix:before, .clearfix:after {
|
5726 |
+
display: table;
|
5727 |
+
content: " "
|
5728 |
+
}
|
5729 |
+
|
5730 |
+
.clearfix:after {
|
5731 |
+
clear: both
|
5732 |
+
}
|
5733 |
+
|
5734 |
+
.pull-right {
|
5735 |
+
float: right !important
|
5736 |
+
}
|
5737 |
+
|
5738 |
+
.pull-left {
|
5739 |
+
float: left !important
|
5740 |
+
}
|
5741 |
+
|
5742 |
+
.hide {
|
5743 |
+
display: none !important
|
5744 |
+
}
|
5745 |
+
|
5746 |
+
.show {
|
5747 |
+
display: block !important
|
5748 |
+
}
|
5749 |
+
|
5750 |
+
.invisible {
|
5751 |
+
visibility: hidden
|
5752 |
+
}
|
5753 |
+
|
5754 |
+
.text-hide {
|
5755 |
+
font: 0/0 a;
|
5756 |
+
color: transparent;
|
5757 |
+
text-shadow: none;
|
5758 |
+
background-color: transparent;
|
5759 |
+
border: 0
|
5760 |
+
}
|
5761 |
+
|
5762 |
+
.affix {
|
5763 |
+
position: fixed
|
5764 |
+
}
|
5765 |
+
|
5766 |
+
@-ms-viewport {
|
5767 |
+
width: device-width
|
5768 |
+
}
|
5769 |
+
|
5770 |
+
@media screen and (max-width: 400px) {
|
5771 |
+
@-ms-viewport {
|
5772 |
+
width: 320px
|
5773 |
+
}
|
5774 |
+
}
|
5775 |
+
|
5776 |
+
.hidden {
|
5777 |
+
display: none !important;
|
5778 |
+
visibility: hidden !important
|
5779 |
+
}
|
5780 |
+
|
5781 |
+
.visible-xs {
|
5782 |
+
display: none !important
|
5783 |
+
}
|
5784 |
+
|
5785 |
+
tr.visible-xs {
|
5786 |
+
display: none !important
|
5787 |
+
}
|
5788 |
+
|
5789 |
+
th.visible-xs, td.visible-xs {
|
5790 |
+
display: none !important
|
5791 |
+
}
|
5792 |
+
|
5793 |
+
@media (max-width: 767px) {
|
5794 |
+
.visible-xs {
|
5795 |
+
display: block !important
|
5796 |
+
}
|
5797 |
+
|
5798 |
+
tr.visible-xs {
|
5799 |
+
display: table-row !important
|
5800 |
+
}
|
5801 |
+
|
5802 |
+
th.visible-xs, td.visible-xs {
|
5803 |
+
display: table-cell !important
|
5804 |
+
}
|
5805 |
+
}
|
5806 |
+
|
5807 |
+
@media (min-width: 768px) and (max-width: 991px) {
|
5808 |
+
.visible-xs.visible-sm {
|
5809 |
+
display: block !important
|
5810 |
+
}
|
5811 |
+
|
5812 |
+
tr.visible-xs.visible-sm {
|
5813 |
+
display: table-row !important
|
5814 |
+
}
|
5815 |
+
|
5816 |
+
th.visible-xs.visible-sm, td.visible-xs.visible-sm {
|
5817 |
+
display: table-cell !important
|
5818 |
+
}
|
5819 |
+
}
|
5820 |
+
|
5821 |
+
@media (min-width: 992px) and (max-width: 1199px) {
|
5822 |
+
.visible-xs.visible-md {
|
5823 |
+
display: block !important
|
5824 |
+
}
|
5825 |
+
|
5826 |
+
tr.visible-xs.visible-md {
|
5827 |
+
display: table-row !important
|
5828 |
+
}
|
5829 |
+
|
5830 |
+
th.visible-xs.visible-md, td.visible-xs.visible-md {
|
5831 |
+
display: table-cell !important
|
5832 |
+
}
|
5833 |
+
}
|
5834 |
+
|
5835 |
+
@media (min-width: 1200px) {
|
5836 |
+
.visible-xs.visible-lg {
|
5837 |
+
display: block !important
|
5838 |
+
}
|
5839 |
+
|
5840 |
+
tr.visible-xs.visible-lg {
|
5841 |
+
display: table-row !important
|
5842 |
+
}
|
5843 |
+
|
5844 |
+
th.visible-xs.visible-lg, td.visible-xs.visible-lg {
|
5845 |
+
display: table-cell !important
|
5846 |
+
}
|
5847 |
+
}
|
5848 |
+
|
5849 |
+
.visible-sm {
|
5850 |
+
display: none !important
|
5851 |
+
}
|
5852 |
+
|
5853 |
+
tr.visible-sm {
|
5854 |
+
display: none !important
|
5855 |
+
}
|
5856 |
+
|
5857 |
+
th.visible-sm, td.visible-sm {
|
5858 |
+
display: none !important
|
5859 |
+
}
|
5860 |
+
|
5861 |
+
@media (max-width: 767px) {
|
5862 |
+
.visible-sm.visible-xs {
|
5863 |
+
display: block !important
|
5864 |
+
}
|
5865 |
+
|
5866 |
+
tr.visible-sm.visible-xs {
|
5867 |
+
display: table-row !important
|
5868 |
+
}
|
5869 |
+
|
5870 |
+
th.visible-sm.visible-xs, td.visible-sm.visible-xs {
|
5871 |
+
display: table-cell !important
|
5872 |
+
}
|
5873 |
+
}
|
5874 |
+
|
5875 |
+
@media (min-width: 768px) and (max-width: 991px) {
|
5876 |
+
.visible-sm {
|
5877 |
+
display: block !important
|
5878 |
+
}
|
5879 |
+
|
5880 |
+
tr.visible-sm {
|
5881 |
+
display: table-row !important
|
5882 |
+
}
|
5883 |
+
|
5884 |
+
th.visible-sm, td.visible-sm {
|
5885 |
+
display: table-cell !important
|
5886 |
+
}
|
5887 |
+
}
|
5888 |
+
|
5889 |
+
@media (min-width: 992px) and (max-width: 1199px) {
|
5890 |
+
.visible-sm.visible-md {
|
5891 |
+
display: block !important
|
5892 |
+
}
|
5893 |
+
|
5894 |
+
tr.visible-sm.visible-md {
|
5895 |
+
display: table-row !important
|
5896 |
+
}
|
5897 |
+
|
5898 |
+
th.visible-sm.visible-md, td.visible-sm.visible-md {
|
5899 |
+
display: table-cell !important
|
5900 |
+
}
|
5901 |
+
}
|
5902 |
+
|
5903 |
+
@media (min-width: 1200px) {
|
5904 |
+
.visible-sm.visible-lg {
|
5905 |
+
display: block !important
|
5906 |
+
}
|
5907 |
+
|
5908 |
+
tr.visible-sm.visible-lg {
|
5909 |
+
display: table-row !important
|
5910 |
+
}
|
5911 |
+
|
5912 |
+
th.visible-sm.visible-lg, td.visible-sm.visible-lg {
|
5913 |
+
display: table-cell !important
|
5914 |
+
}
|
5915 |
+
}
|
5916 |
+
|
5917 |
+
.visible-md {
|
5918 |
+
display: none !important
|
5919 |
+
}
|
5920 |
+
|
5921 |
+
tr.visible-md {
|
5922 |
+
display: none !important
|
5923 |
+
}
|
5924 |
+
|
5925 |
+
th.visible-md, td.visible-md {
|
5926 |
+
display: none !important
|
5927 |
+
}
|
5928 |
+
|
5929 |
+
@media (max-width: 767px) {
|
5930 |
+
.visible-md.visible-xs {
|
5931 |
+
display: block !important
|
5932 |
+
}
|
5933 |
+
|
5934 |
+
tr.visible-md.visible-xs {
|
5935 |
+
display: table-row !important
|
5936 |
+
}
|
5937 |
+
|
5938 |
+
th.visible-md.visible-xs, td.visible-md.visible-xs {
|
5939 |
+
display: table-cell !important
|
5940 |
+
}
|
5941 |
+
}
|
5942 |
+
|
5943 |
+
@media (min-width: 768px) and (max-width: 991px) {
|
5944 |
+
.visible-md.visible-sm {
|
5945 |
+
display: block !important
|
5946 |
+
}
|
5947 |
+
|
5948 |
+
tr.visible-md.visible-sm {
|
5949 |
+
display: table-row !important
|
5950 |
+
}
|
5951 |
+
|
5952 |
+
th.visible-md.visible-sm, td.visible-md.visible-sm {
|
5953 |
+
display: table-cell !important
|
5954 |
+
}
|
5955 |
+
}
|
5956 |
+
|
5957 |
+
@media (min-width: 992px) and (max-width: 1199px) {
|
5958 |
+
.visible-md {
|
5959 |
+
display: block !important
|
5960 |
+
}
|
5961 |
+
|
5962 |
+
tr.visible-md {
|
5963 |
+
display: table-row !important
|
5964 |
+
}
|
5965 |
+
|
5966 |
+
th.visible-md, td.visible-md {
|
5967 |
+
display: table-cell !important
|
5968 |
+
}
|
5969 |
+
}
|
5970 |
+
|
5971 |
+
@media (min-width: 1200px) {
|
5972 |
+
.visible-md.visible-lg {
|
5973 |
+
display: block !important
|
5974 |
+
}
|
5975 |
+
|
5976 |
+
tr.visible-md.visible-lg {
|
5977 |
+
display: table-row !important
|
5978 |
+
}
|
5979 |
+
|
5980 |
+
th.visible-md.visible-lg, td.visible-md.visible-lg {
|
5981 |
+
display: table-cell !important
|
5982 |
+
}
|
5983 |
+
}
|
5984 |
+
|
5985 |
+
.visible-lg {
|
5986 |
+
display: none !important
|
5987 |
+
}
|
5988 |
+
|
5989 |
+
tr.visible-lg {
|
5990 |
+
display: none !important
|
5991 |
+
}
|
5992 |
+
|
5993 |
+
th.visible-lg, td.visible-lg {
|
5994 |
+
display: none !important
|
5995 |
+
}
|
5996 |
+
|
5997 |
+
@media (max-width: 767px) {
|
5998 |
+
.visible-lg.visible-xs {
|
5999 |
+
display: block !important
|
6000 |
+
}
|
6001 |
+
|
6002 |
+
tr.visible-lg.visible-xs {
|
6003 |
+
display: table-row !important
|
6004 |
+
}
|
6005 |
+
|
6006 |
+
th.visible-lg.visible-xs, td.visible-lg.visible-xs {
|
6007 |
+
display: table-cell !important
|
6008 |
+
}
|
6009 |
+
}
|
6010 |
+
|
6011 |
+
@media (min-width: 768px) and (max-width: 991px) {
|
6012 |
+
.visible-lg.visible-sm {
|
6013 |
+
display: block !important
|
6014 |
+
}
|
6015 |
+
|
6016 |
+
tr.visible-lg.visible-sm {
|
6017 |
+
display: table-row !important
|
6018 |
+
}
|
6019 |
+
|
6020 |
+
th.visible-lg.visible-sm, td.visible-lg.visible-sm {
|
6021 |
+
display: table-cell !important
|
6022 |
+
}
|
6023 |
+
}
|
6024 |
+
|
6025 |
+
@media (min-width: 992px) and (max-width: 1199px) {
|
6026 |
+
.visible-lg.visible-md {
|
6027 |
+
display: block !important
|
6028 |
+
}
|
6029 |
+
|
6030 |
+
tr.visible-lg.visible-md {
|
6031 |
+
display: table-row !important
|
6032 |
+
}
|
6033 |
+
|
6034 |
+
th.visible-lg.visible-md, td.visible-lg.visible-md {
|
6035 |
+
display: table-cell !important
|
6036 |
+
}
|
6037 |
+
}
|
6038 |
+
|
6039 |
+
@media (min-width: 1200px) {
|
6040 |
+
.visible-lg {
|
6041 |
+
display: block !important
|
6042 |
+
}
|
6043 |
+
|
6044 |
+
tr.visible-lg {
|
6045 |
+
display: table-row !important
|
6046 |
+
}
|
6047 |
+
|
6048 |
+
th.visible-lg, td.visible-lg {
|
6049 |
+
display: table-cell !important
|
6050 |
+
}
|
6051 |
+
}
|
6052 |
+
|
6053 |
+
.hidden-xs {
|
6054 |
+
display: block !important
|
6055 |
+
}
|
6056 |
+
|
6057 |
+
tr.hidden-xs {
|
6058 |
+
display: table-row !important
|
6059 |
+
}
|
6060 |
+
|
6061 |
+
th.hidden-xs, td.hidden-xs {
|
6062 |
+
display: table-cell !important
|
6063 |
+
}
|
6064 |
+
|
6065 |
+
@media (max-width: 767px) {
|
6066 |
+
.hidden-xs {
|
6067 |
+
display: none !important
|
6068 |
+
}
|
6069 |
+
|
6070 |
+
tr.hidden-xs {
|
6071 |
+
display: none !important
|
6072 |
+
}
|
6073 |
+
|
6074 |
+
th.hidden-xs, td.hidden-xs {
|
6075 |
+
display: none !important
|
6076 |
+
}
|
6077 |
+
}
|
6078 |
+
|
6079 |
+
@media (min-width: 768px) and (max-width: 991px) {
|
6080 |
+
.hidden-xs.hidden-sm {
|
6081 |
+
display: none !important
|
6082 |
+
}
|
6083 |
+
|
6084 |
+
tr.hidden-xs.hidden-sm {
|
6085 |
+
display: none !important
|
6086 |
+
}
|
6087 |
+
|
6088 |
+
th.hidden-xs.hidden-sm, td.hidden-xs.hidden-sm {
|
6089 |
+
display: none !important
|
6090 |
+
}
|
6091 |
+
}
|
6092 |
+
|
6093 |
+
@media (min-width: 992px) and (max-width: 1199px) {
|
6094 |
+
.hidden-xs.hidden-md {
|
6095 |
+
display: none !important
|
6096 |
+
}
|
6097 |
+
|
6098 |
+
tr.hidden-xs.hidden-md {
|
6099 |
+
display: none !important
|
6100 |
+
}
|
6101 |
+
|
6102 |
+
th.hidden-xs.hidden-md, td.hidden-xs.hidden-md {
|
6103 |
+
display: none !important
|
6104 |
+
}
|
6105 |
+
}
|
6106 |
+
|
6107 |
+
@media (min-width: 1200px) {
|
6108 |
+
.hidden-xs.hidden-lg {
|
6109 |
+
display: none !important
|
6110 |
+
}
|
6111 |
+
|
6112 |
+
tr.hidden-xs.hidden-lg {
|
6113 |
+
display: none !important
|
6114 |
+
}
|
6115 |
+
|
6116 |
+
th.hidden-xs.hidden-lg, td.hidden-xs.hidden-lg {
|
6117 |
+
display: none !important
|
6118 |
+
}
|
6119 |
+
}
|
6120 |
+
|
6121 |
+
.hidden-sm {
|
6122 |
+
display: block !important
|
6123 |
+
}
|
6124 |
+
|
6125 |
+
tr.hidden-sm {
|
6126 |
+
display: table-row !important
|
6127 |
+
}
|
6128 |
+
|
6129 |
+
th.hidden-sm, td.hidden-sm {
|
6130 |
+
display: table-cell !important
|
6131 |
+
}
|
6132 |
+
|
6133 |
+
@media (max-width: 767px) {
|
6134 |
+
.hidden-sm.hidden-xs {
|
6135 |
+
display: none !important
|
6136 |
+
}
|
6137 |
+
|
6138 |
+
tr.hidden-sm.hidden-xs {
|
6139 |
+
display: none !important
|
6140 |
+
}
|
6141 |
+
|
6142 |
+
th.hidden-sm.hidden-xs, td.hidden-sm.hidden-xs {
|
6143 |
+
display: none !important
|
6144 |
+
}
|
6145 |
+
}
|
6146 |
+
|
6147 |
+
@media (min-width: 768px) and (max-width: 991px) {
|
6148 |
+
.hidden-sm {
|
6149 |
+
display: none !important
|
6150 |
+
}
|
6151 |
+
|
6152 |
+
tr.hidden-sm {
|
6153 |
+
display: none !important
|
6154 |
+
}
|
6155 |
+
|
6156 |
+
th.hidden-sm, td.hidden-sm {
|
6157 |
+
display: none !important
|
6158 |
+
}
|
6159 |
+
}
|
6160 |
+
|
6161 |
+
@media (min-width: 992px) and (max-width: 1199px) {
|
6162 |
+
.hidden-sm.hidden-md {
|
6163 |
+
display: none !important
|
6164 |
+
}
|
6165 |
+
|
6166 |
+
tr.hidden-sm.hidden-md {
|
6167 |
+
display: none !important
|
6168 |
+
}
|
6169 |
+
|
6170 |
+
th.hidden-sm.hidden-md, td.hidden-sm.hidden-md {
|
6171 |
+
display: none !important
|
6172 |
+
}
|
6173 |
+
}
|
6174 |
+
|
6175 |
+
@media (min-width: 1200px) {
|
6176 |
+
.hidden-sm.hidden-lg {
|
6177 |
+
display: none !important
|
6178 |
+
}
|
6179 |
+
|
6180 |
+
tr.hidden-sm.hidden-lg {
|
6181 |
+
display: none !important
|
6182 |
+
}
|
6183 |
+
|
6184 |
+
th.hidden-sm.hidden-lg, td.hidden-sm.hidden-lg {
|
6185 |
+
display: none !important
|
6186 |
+
}
|
6187 |
+
}
|
6188 |
+
|
6189 |
+
.hidden-md {
|
6190 |
+
display: block !important
|
6191 |
+
}
|
6192 |
+
|
6193 |
+
tr.hidden-md {
|
6194 |
+
display: table-row !important
|
6195 |
+
}
|
6196 |
+
|
6197 |
+
th.hidden-md, td.hidden-md {
|
6198 |
+
display: table-cell !important
|
6199 |
+
}
|
6200 |
+
|
6201 |
+
@media (max-width: 767px) {
|
6202 |
+
.hidden-md.hidden-xs {
|
6203 |
+
display: none !important
|
6204 |
+
}
|
6205 |
+
|
6206 |
+
tr.hidden-md.hidden-xs {
|
6207 |
+
display: none !important
|
6208 |
+
}
|
6209 |
+
|
6210 |
+
th.hidden-md.hidden-xs, td.hidden-md.hidden-xs {
|
6211 |
+
display: none !important
|
6212 |
+
}
|
6213 |
+
}
|
6214 |
+
|
6215 |
+
@media (min-width: 768px) and (max-width: 991px) {
|
6216 |
+
.hidden-md.hidden-sm {
|
6217 |
+
display: none !important
|
6218 |
+
}
|
6219 |
+
|
6220 |
+
tr.hidden-md.hidden-sm {
|
6221 |
+
display: none !important
|
6222 |
+
}
|
6223 |
+
|
6224 |
+
th.hidden-md.hidden-sm, td.hidden-md.hidden-sm {
|
6225 |
+
display: none !important
|
6226 |
+
}
|
6227 |
+
}
|
6228 |
+
|
6229 |
+
@media (min-width: 992px) and (max-width: 1199px) {
|
6230 |
+
.hidden-md {
|
6231 |
+
display: none !important
|
6232 |
+
}
|
6233 |
+
|
6234 |
+
tr.hidden-md {
|
6235 |
+
display: none !important
|
6236 |
+
}
|
6237 |
+
|
6238 |
+
th.hidden-md, td.hidden-md {
|
6239 |
+
display: none !important
|
6240 |
+
}
|
6241 |
+
}
|
6242 |
+
|
6243 |
+
@media (min-width: 1200px) {
|
6244 |
+
.hidden-md.hidden-lg {
|
6245 |
+
display: none !important
|
6246 |
+
}
|
6247 |
+
|
6248 |
+
tr.hidden-md.hidden-lg {
|
6249 |
+
display: none !important
|
6250 |
+
}
|
6251 |
+
|
6252 |
+
th.hidden-md.hidden-lg, td.hidden-md.hidden-lg {
|
6253 |
+
display: none !important
|
6254 |
+
}
|
6255 |
+
}
|
6256 |
+
|
6257 |
+
.hidden-lg {
|
6258 |
+
display: block !important
|
6259 |
+
}
|
6260 |
+
|
6261 |
+
tr.hidden-lg {
|
6262 |
+
display: table-row !important
|
6263 |
+
}
|
6264 |
+
|
6265 |
+
th.hidden-lg, td.hidden-lg {
|
6266 |
+
display: table-cell !important
|
6267 |
+
}
|
6268 |
+
|
6269 |
+
@media (max-width: 767px) {
|
6270 |
+
.hidden-lg.hidden-xs {
|
6271 |
+
display: none !important
|
6272 |
+
}
|
6273 |
+
|
6274 |
+
tr.hidden-lg.hidden-xs {
|
6275 |
+
display: none !important
|
6276 |
+
}
|
6277 |
+
|
6278 |
+
th.hidden-lg.hidden-xs, td.hidden-lg.hidden-xs {
|
6279 |
+
display: none !important
|
6280 |
+
}
|
6281 |
+
}
|
6282 |
+
|
6283 |
+
@media (min-width: 768px) and (max-width: 991px) {
|
6284 |
+
.hidden-lg.hidden-sm {
|
6285 |
+
display: none !important
|
6286 |
+
}
|
6287 |
+
|
6288 |
+
tr.hidden-lg.hidden-sm {
|
6289 |
+
display: none !important
|
6290 |
+
}
|
6291 |
+
|
6292 |
+
th.hidden-lg.hidden-sm, td.hidden-lg.hidden-sm {
|
6293 |
+
display: none !important
|
6294 |
+
}
|
6295 |
+
}
|
6296 |
+
|
6297 |
+
@media (min-width: 992px) and (max-width: 1199px) {
|
6298 |
+
.hidden-lg.hidden-md {
|
6299 |
+
display: none !important
|
6300 |
+
}
|
6301 |
+
|
6302 |
+
tr.hidden-lg.hidden-md {
|
6303 |
+
display: none !important
|
6304 |
+
}
|
6305 |
+
|
6306 |
+
th.hidden-lg.hidden-md, td.hidden-lg.hidden-md {
|
6307 |
+
display: none !important
|
6308 |
+
}
|
6309 |
+
}
|
6310 |
+
|
6311 |
+
@media (min-width: 1200px) {
|
6312 |
+
.hidden-lg {
|
6313 |
+
display: none !important
|
6314 |
+
}
|
6315 |
+
|
6316 |
+
tr.hidden-lg {
|
6317 |
+
display: none !important
|
6318 |
+
}
|
6319 |
+
|
6320 |
+
th.hidden-lg, td.hidden-lg {
|
6321 |
+
display: none !important
|
6322 |
+
}
|
6323 |
+
}
|
6324 |
+
|
6325 |
+
.visible-print {
|
6326 |
+
display: none !important
|
6327 |
+
}
|
6328 |
+
|
6329 |
+
tr.visible-print {
|
6330 |
+
display: none !important
|
6331 |
+
}
|
6332 |
+
|
6333 |
+
th.visible-print, td.visible-print {
|
6334 |
+
display: none !important
|
6335 |
+
}
|
6336 |
+
|
6337 |
+
@media print {
|
6338 |
+
.visible-print {
|
6339 |
+
display: block !important
|
6340 |
+
}
|
6341 |
+
|
6342 |
+
tr.visible-print {
|
6343 |
+
display: table-row !important
|
6344 |
+
}
|
6345 |
+
|
6346 |
+
th.visible-print, td.visible-print {
|
6347 |
+
display: table-cell !important
|
6348 |
+
}
|
6349 |
+
|
6350 |
+
.hidden-print {
|
6351 |
+
display: none !important
|
6352 |
+
}
|
6353 |
+
|
6354 |
+
tr.hidden-print {
|
6355 |
+
display: none !important
|
6356 |
+
}
|
6357 |
+
|
6358 |
+
th.hidden-print, td.hidden-print {
|
6359 |
+
display: none !important
|
6360 |
+
}
|
6361 |
+
}
|
css/custom-style.css
CHANGED
@@ -213,7 +213,7 @@
|
|
213 |
border-bottom: 2px solid white;
|
214 |
}
|
215 |
|
216 |
-
@media screen and (-webkit-min-device-pixel-ratio:0) {
|
217 |
.csv-top-navigation-wrapper {
|
218 |
height: 26px;
|
219 |
}
|
@@ -473,33 +473,84 @@ div.helpatright h4 {
|
|
473 |
|
474 |
/* Tooltip */
|
475 |
|
476 |
-
a.tooltip {
|
477 |
-
|
478 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
479 |
a.tooltip span {
|
480 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
481 |
}
|
482 |
-
a.tooltip:hover span{
|
483 |
-
display:inline; position:absolute; color:#111;
|
484 |
-
border:1px solid #DCA; background:#fffAF0;}
|
485 |
-
.callout {z-index:20;position:absolute;top:8px;border:0;left:-12px;}
|
486 |
|
487 |
/*CSS3 extras*/
|
488 |
-
a.tooltip span
|
489 |
-
|
490 |
-
|
491 |
-
|
492 |
-
|
493 |
-
|
494 |
-
|
495 |
-
|
496 |
-
|
497 |
-
|
498 |
-
|
499 |
-
|
500 |
-
|
501 |
-
|
502 |
-
|
503 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
504 |
|
505 |
|
213 |
border-bottom: 2px solid white;
|
214 |
}
|
215 |
|
216 |
+
@media screen and (-webkit-min-device-pixel-ratio: 0) {
|
217 |
.csv-top-navigation-wrapper {
|
218 |
height: 26px;
|
219 |
}
|
473 |
|
474 |
/* Tooltip */
|
475 |
|
476 |
+
a.tooltip {
|
477 |
+
outline: none;
|
478 |
+
}
|
479 |
+
|
480 |
+
a.tooltip strong {
|
481 |
+
line-height: 20px;
|
482 |
+
}
|
483 |
+
|
484 |
+
a.tooltip:hover {
|
485 |
+
text-decoration: none;
|
486 |
+
}
|
487 |
+
|
488 |
a.tooltip span {
|
489 |
+
z-index: 10;
|
490 |
+
display: none;
|
491 |
+
padding: 3px 12px;
|
492 |
+
}
|
493 |
+
|
494 |
+
a.tooltip:hover span {
|
495 |
+
display: inline;
|
496 |
+
position: absolute;
|
497 |
+
color: #111;
|
498 |
+
border: 1px solid #DCA;
|
499 |
+
background: #fffAF0;
|
500 |
+
}
|
501 |
+
|
502 |
+
.callout {
|
503 |
+
z-index: 20;
|
504 |
+
position: absolute;
|
505 |
+
top: 8px;
|
506 |
+
border: 0;
|
507 |
+
left: -12px;
|
508 |
}
|
|
|
|
|
|
|
|
|
509 |
|
510 |
/*CSS3 extras*/
|
511 |
+
a.tooltip span {
|
512 |
+
border-radius: 4px;
|
513 |
+
-moz-border-radius: 4px;
|
514 |
+
-webkit-border-radius: 4px;
|
515 |
+
|
516 |
+
-moz-box-shadow: 5px 5px 8px #CCC;
|
517 |
+
-webkit-box-shadow: 5px 5px 8px #CCC;
|
518 |
+
box-shadow: 5px 5px 8px #CCC;
|
519 |
+
}
|
520 |
+
|
521 |
+
.tooltipOne {
|
522 |
+
margin-top: -12px;
|
523 |
+
margin-left: 10px;
|
524 |
+
width: 225px;
|
525 |
+
line-height: 30px;
|
526 |
+
}
|
527 |
+
|
528 |
+
.tooltipTwo {
|
529 |
+
margin-top: -37px;
|
530 |
+
margin-left: 160px;
|
531 |
+
width: 245px;
|
532 |
+
line-height: 20px;
|
533 |
+
}
|
534 |
+
|
535 |
+
.tooltipThree {
|
536 |
+
margin-top: -12px;
|
537 |
+
margin-left: 10px;
|
538 |
+
width: 160px;
|
539 |
+
line-height: 30px;
|
540 |
+
}
|
541 |
+
|
542 |
+
.tooltipFour {
|
543 |
+
margin-top: -35px;
|
544 |
+
margin-left: 360px;
|
545 |
+
width: 240px;
|
546 |
+
line-height: 30px;
|
547 |
+
}
|
548 |
+
|
549 |
+
.tooltipFive {
|
550 |
+
margin-top: -35px;
|
551 |
+
margin-left: 160px;
|
552 |
+
width: 245px;
|
553 |
+
line-height: 20px;
|
554 |
+
}
|
555 |
|
556 |
|
css/font-awesome.css
CHANGED
@@ -5,1336 +5,1737 @@
|
|
5 |
/* FONT PATH
|
6 |
* -------------------------- */
|
7 |
@font-face {
|
8 |
-
|
9 |
-
|
10 |
-
|
11 |
-
|
12 |
-
|
13 |
}
|
|
|
14 |
.fa {
|
15 |
-
|
16 |
-
|
17 |
-
|
18 |
-
|
19 |
-
|
20 |
-
|
21 |
-
|
22 |
}
|
|
|
23 |
/* makes the font 33% larger relative to the icon container */
|
24 |
.fa-lg {
|
25 |
-
|
26 |
-
|
27 |
-
|
28 |
}
|
|
|
29 |
.fa-2x {
|
30 |
-
|
31 |
}
|
|
|
32 |
.fa-3x {
|
33 |
-
|
34 |
}
|
|
|
35 |
.fa-4x {
|
36 |
-
|
37 |
}
|
|
|
38 |
.fa-5x {
|
39 |
-
|
40 |
}
|
|
|
41 |
.fa-fw {
|
42 |
-
|
43 |
-
|
44 |
}
|
|
|
45 |
.fa-ul {
|
46 |
-
|
47 |
-
|
48 |
-
|
49 |
}
|
|
|
50 |
.fa-ul > li {
|
51 |
-
|
52 |
}
|
|
|
53 |
.fa-li {
|
54 |
-
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
|
59 |
}
|
|
|
60 |
.fa-li.fa-lg {
|
61 |
-
|
62 |
}
|
|
|
63 |
.fa-border {
|
64 |
-
|
65 |
-
|
66 |
-
|
67 |
}
|
|
|
68 |
.pull-right {
|
69 |
-
|
70 |
}
|
|
|
71 |
.pull-left {
|
72 |
-
|
73 |
}
|
|
|
74 |
.fa.pull-left {
|
75 |
-
|
76 |
}
|
|
|
77 |
.fa.pull-right {
|
78 |
-
|
79 |
}
|
|
|
80 |
.fa-spin {
|
81 |
-
|
82 |
-
|
83 |
-
|
84 |
-
|
85 |
}
|
|
|
86 |
@-moz-keyframes spin {
|
87 |
-
|
88 |
-
|
89 |
-
|
90 |
-
|
91 |
-
|
92 |
-
|
93 |
}
|
|
|
94 |
@-webkit-keyframes spin {
|
95 |
-
|
96 |
-
|
97 |
-
|
98 |
-
|
99 |
-
|
100 |
-
|
101 |
}
|
|
|
102 |
@-o-keyframes spin {
|
103 |
-
|
104 |
-
|
105 |
-
|
106 |
-
|
107 |
-
|
108 |
-
|
109 |
}
|
|
|
110 |
@-ms-keyframes spin {
|
111 |
-
|
112 |
-
|
113 |
-
|
114 |
-
|
115 |
-
|
116 |
-
|
117 |
}
|
|
|
118 |
@keyframes spin {
|
119 |
-
|
120 |
-
|
121 |
-
|
122 |
-
|
123 |
-
|
124 |
-
|
125 |
}
|
|
|
126 |
.fa-rotate-90 {
|
127 |
-
|
128 |
-
|
129 |
-
|
130 |
-
|
131 |
-
|
132 |
-
|
133 |
}
|
|
|
134 |
.fa-rotate-180 {
|
135 |
-
|
136 |
-
|
137 |
-
|
138 |
-
|
139 |
-
|
140 |
-
|
141 |
}
|
|
|
142 |
.fa-rotate-270 {
|
143 |
-
|
144 |
-
|
145 |
-
|
146 |
-
|
147 |
-
|
148 |
-
|
149 |
}
|
|
|
150 |
.fa-flip-horizontal {
|
151 |
-
|
152 |
-
|
153 |
-
|
154 |
-
|
155 |
-
|
156 |
-
|
157 |
}
|
|
|
158 |
.fa-flip-vertical {
|
159 |
-
|
160 |
-
|
161 |
-
|
162 |
-
|
163 |
-
|
164 |
-
|
165 |
}
|
|
|
166 |
.fa-stack {
|
167 |
-
|
168 |
-
|
169 |
-
|
170 |
-
|
171 |
-
|
172 |
-
|
173 |
}
|
|
|
174 |
.fa-stack-1x,
|
175 |
.fa-stack-2x {
|
176 |
-
|
177 |
-
|
178 |
-
|
179 |
-
|
180 |
}
|
|
|
181 |
.fa-stack-1x {
|
182 |
-
|
183 |
}
|
|
|
184 |
.fa-stack-2x {
|
185 |
-
|
186 |
}
|
|
|
187 |
.fa-inverse {
|
188 |
-
|
189 |
}
|
|
|
190 |
/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
|
191 |
readers do not read off random characters that represent icons */
|
192 |
.fa-glass:before {
|
193 |
-
|
194 |
}
|
|
|
195 |
.fa-music:before {
|
196 |
-
|
197 |
}
|
|
|
198 |
.fa-search:before {
|
199 |
-
|
200 |
}
|
|
|
201 |
.fa-envelope-o:before {
|
202 |
-
|
203 |
}
|
|
|
204 |
.fa-heart:before {
|
205 |
-
|
206 |
}
|
|
|
207 |
.fa-star:before {
|
208 |
-
|
209 |
}
|
|
|
210 |
.fa-star-o:before {
|
211 |
-
|
212 |
}
|
|
|
213 |
.fa-user:before {
|
214 |
-
|
215 |
}
|
|
|
216 |
.fa-film:before {
|
217 |
-
|
218 |
}
|
|
|
219 |
.fa-th-large:before {
|
220 |
-
|
221 |
}
|
|
|
222 |
.fa-th:before {
|
223 |
-
|
224 |
}
|
|
|
225 |
.fa-th-list:before {
|
226 |
-
|
227 |
}
|
|
|
228 |
.fa-check:before {
|
229 |
-
|
230 |
}
|
|
|
231 |
.fa-times:before {
|
232 |
-
|
233 |
}
|
|
|
234 |
.fa-search-plus:before {
|
235 |
-
|
236 |
}
|
|
|
237 |
.fa-search-minus:before {
|
238 |
-
|
239 |
}
|
|
|
240 |
.fa-power-off:before {
|
241 |
-
|
242 |
}
|
|
|
243 |
.fa-signal:before {
|
244 |
-
|
245 |
}
|
|
|
246 |
.fa-gear:before,
|
247 |
.fa-cog:before {
|
248 |
-
|
249 |
}
|
|
|
250 |
.fa-trash-o:before {
|
251 |
-
|
252 |
}
|
|
|
253 |
.fa-home:before {
|
254 |
-
|
255 |
}
|
|
|
256 |
.fa-file-o:before {
|
257 |
-
|
258 |
}
|
|
|
259 |
.fa-clock-o:before {
|
260 |
-
|
261 |
}
|
|
|
262 |
.fa-road:before {
|
263 |
-
|
264 |
}
|
|
|
265 |
.fa-download:before {
|
266 |
-
|
267 |
}
|
|
|
268 |
.fa-arrow-circle-o-down:before {
|
269 |
-
|
270 |
}
|
|
|
271 |
.fa-arrow-circle-o-up:before {
|
272 |
-
|
273 |
}
|
|
|
274 |
.fa-inbox:before {
|
275 |
-
|
276 |
}
|
|
|
277 |
.fa-play-circle-o:before {
|
278 |
-
|
279 |
}
|
|
|
280 |
.fa-rotate-right:before,
|
281 |
.fa-repeat:before {
|
282 |
-
|
283 |
}
|
|
|
284 |
.fa-refresh:before {
|
285 |
-
|
286 |
}
|
|
|
287 |
.fa-list-alt:before {
|
288 |
-
|
289 |
}
|
|
|
290 |
.fa-lock:before {
|
291 |
-
|
292 |
}
|
|
|
293 |
.fa-flag:before {
|
294 |
-
|
295 |
}
|
|
|
296 |
.fa-headphones:before {
|
297 |
-
|
298 |
}
|
|
|
299 |
.fa-volume-off:before {
|
300 |
-
|
301 |
}
|
|
|
302 |
.fa-volume-down:before {
|
303 |
-
|
304 |
}
|
|
|
305 |
.fa-volume-up:before {
|
306 |
-
|
307 |
}
|
|
|
308 |
.fa-qrcode:before {
|
309 |
-
|
310 |
}
|
|
|
311 |
.fa-barcode:before {
|
312 |
-
|
313 |
}
|
|
|
314 |
.fa-tag:before {
|
315 |
-
|
316 |
}
|
|
|
317 |
.fa-tags:before {
|
318 |
-
|
319 |
}
|
|
|
320 |
.fa-book:before {
|
321 |
-
|
322 |
}
|
|
|
323 |
.fa-bookmark:before {
|
324 |
-
|
325 |
}
|
|
|
326 |
.fa-print:before {
|
327 |
-
|
328 |
}
|
|
|
329 |
.fa-camera:before {
|
330 |
-
|
331 |
}
|
|
|
332 |
.fa-font:before {
|
333 |
-
|
334 |
}
|
|
|
335 |
.fa-bold:before {
|
336 |
-
|
337 |
}
|
|
|
338 |
.fa-italic:before {
|
339 |
-
|
340 |
}
|
|
|
341 |
.fa-text-height:before {
|
342 |
-
|
343 |
}
|
|
|
344 |
.fa-text-width:before {
|
345 |
-
|
346 |
}
|
|
|
347 |
.fa-align-left:before {
|
348 |
-
|
349 |
}
|
|
|
350 |
.fa-align-center:before {
|
351 |
-
|
352 |
}
|
|
|
353 |
.fa-align-right:before {
|
354 |
-
|
355 |
}
|
|
|
356 |
.fa-align-justify:before {
|
357 |
-
|
358 |
}
|
|
|
359 |
.fa-list:before {
|
360 |
-
|
361 |
}
|
|
|
362 |
.fa-dedent:before,
|
363 |
.fa-outdent:before {
|
364 |
-
|
365 |
}
|
|
|
366 |
.fa-indent:before {
|
367 |
-
|
368 |
}
|
|
|
369 |
.fa-video-camera:before {
|
370 |
-
|
371 |
}
|
|
|
372 |
.fa-picture-o:before {
|
373 |
-
|
374 |
}
|
|
|
375 |
.fa-pencil:before {
|
376 |
-
|
377 |
}
|
|
|
378 |
.fa-map-marker:before {
|
379 |
-
|
380 |
}
|
|
|
381 |
.fa-adjust:before {
|
382 |
-
|
383 |
}
|
|
|
384 |
.fa-tint:before {
|
385 |
-
|
386 |
}
|
|
|
387 |
.fa-edit:before,
|
388 |
.fa-pencil-square-o:before {
|
389 |
-
|
390 |
}
|
|
|
391 |
.fa-share-square-o:before {
|
392 |
-
|
393 |
}
|
|
|
394 |
.fa-check-square-o:before {
|
395 |
-
|
396 |
}
|
|
|
397 |
.fa-arrows:before {
|
398 |
-
|
399 |
}
|
|
|
400 |
.fa-step-backward:before {
|
401 |
-
|
402 |
}
|
|
|
403 |
.fa-fast-backward:before {
|
404 |
-
|
405 |
}
|
|
|
406 |
.fa-backward:before {
|
407 |
-
|
408 |
}
|
|
|
409 |
.fa-play:before {
|
410 |
-
|
411 |
}
|
|
|
412 |
.fa-pause:before {
|
413 |
-
|
414 |
}
|
|
|
415 |
.fa-stop:before {
|
416 |
-
|
417 |
}
|
|
|
418 |
.fa-forward:before {
|
419 |
-
|
420 |
}
|
|
|
421 |
.fa-fast-forward:before {
|
422 |
-
|
423 |
}
|
|
|
424 |
.fa-step-forward:before {
|
425 |
-
|
426 |
}
|
|
|
427 |
.fa-eject:before {
|
428 |
-
|
429 |
}
|
|
|
430 |
.fa-chevron-left:before {
|
431 |
-
|
432 |
}
|
|
|
433 |
.fa-chevron-right:before {
|
434 |
-
|
435 |
}
|
|
|
436 |
.fa-plus-circle:before {
|
437 |
-
|
438 |
}
|
|
|
439 |
.fa-minus-circle:before {
|
440 |
-
|
441 |
}
|
|
|
442 |
.fa-times-circle:before {
|
443 |
-
|
444 |
}
|
|
|
445 |
.fa-check-circle:before {
|
446 |
-
|
447 |
}
|
|
|
448 |
.fa-question-circle:before {
|
449 |
-
|
450 |
}
|
|
|
451 |
.fa-info-circle:before {
|
452 |
-
|
453 |
}
|
|
|
454 |
.fa-crosshairs:before {
|
455 |
-
|
456 |
}
|
|
|
457 |
.fa-times-circle-o:before {
|
458 |
-
|
459 |
}
|
|
|
460 |
.fa-check-circle-o:before {
|
461 |
-
|
462 |
}
|
|
|
463 |
.fa-ban:before {
|
464 |
-
|
465 |
}
|
|
|
466 |
.fa-arrow-left:before {
|
467 |
-
|
468 |
}
|
|
|
469 |
.fa-arrow-right:before {
|
470 |
-
|
471 |
}
|
|
|
472 |
.fa-arrow-up:before {
|
473 |
-
|
474 |
}
|
|
|
475 |
.fa-arrow-down:before {
|
476 |
-
|
477 |
}
|
|
|
478 |
.fa-mail-forward:before,
|
479 |
.fa-share:before {
|
480 |
-
|
481 |
}
|
|
|
482 |
.fa-expand:before {
|
483 |
-
|
484 |
}
|
|
|
485 |
.fa-compress:before {
|
486 |
-
|
487 |
}
|
|
|
488 |
.fa-plus:before {
|
489 |
-
|
490 |
}
|
|
|
491 |
.fa-minus:before {
|
492 |
-
|
493 |
}
|
|
|
494 |
.fa-asterisk:before {
|
495 |
-
|
496 |
}
|
|
|
497 |
.fa-exclamation-circle:before {
|
498 |
-
|
499 |
}
|
|
|
500 |
.fa-gift:before {
|
501 |
-
|
502 |
}
|
|
|
503 |
.fa-leaf:before {
|
504 |
-
|
505 |
}
|
|
|
506 |
.fa-fire:before {
|
507 |
-
|
508 |
}
|
|
|
509 |
.fa-eye:before {
|
510 |
-
|
511 |
}
|
|
|
512 |
.fa-eye-slash:before {
|
513 |
-
|
514 |
}
|
|
|
515 |
.fa-warning:before,
|
516 |
.fa-exclamation-triangle:before {
|
517 |
-
|
518 |
}
|
|
|
519 |
.fa-plane:before {
|
520 |
-
|
521 |
}
|
|
|
522 |
.fa-calendar:before {
|
523 |
-
|
524 |
}
|
|
|
525 |
.fa-random:before {
|
526 |
-
|
527 |
}
|
|
|
528 |
.fa-comment:before {
|
529 |
-
|
530 |
}
|
|
|
531 |
.fa-magnet:before {
|
532 |
-
|
533 |
}
|
|
|
534 |
.fa-chevron-up:before {
|
535 |
-
|
536 |
}
|
|
|
537 |
.fa-chevron-down:before {
|
538 |
-
|
539 |
}
|
|
|
540 |
.fa-retweet:before {
|
541 |
-
|
542 |
}
|
|
|
543 |
.fa-shopping-cart:before {
|
544 |
-
|
545 |
}
|
|
|
546 |
.fa-folder:before {
|
547 |
-
|
548 |
}
|
|
|
549 |
.fa-folder-open:before {
|
550 |
-
|
551 |
}
|
|
|
552 |
.fa-arrows-v:before {
|
553 |
-
|
554 |
}
|
|
|
555 |
.fa-arrows-h:before {
|
556 |
-
|
557 |
}
|
|
|
558 |
.fa-bar-chart-o:before {
|
559 |
-
|
560 |
}
|
|
|
561 |
.fa-twitter-square:before {
|
562 |
-
|
563 |
}
|
|
|
564 |
.fa-facebook-square:before {
|
565 |
-
|
566 |
}
|
|
|
567 |
.fa-camera-retro:before {
|
568 |
-
|
569 |
}
|
|
|
570 |
.fa-key:before {
|
571 |
-
|
572 |
}
|
|
|
573 |
.fa-gears:before,
|
574 |
.fa-cogs:before {
|
575 |
-
|
576 |
}
|
|
|
577 |
.fa-comments:before {
|
578 |
-
|
579 |
}
|
|
|
580 |
.fa-thumbs-o-up:before {
|
581 |
-
|
582 |
}
|
|
|
583 |
.fa-thumbs-o-down:before {
|
584 |
-
|
585 |
}
|
|
|
586 |
.fa-star-half:before {
|
587 |
-
|
588 |
}
|
|
|
589 |
.fa-heart-o:before {
|
590 |
-
|
591 |
}
|
|
|
592 |
.fa-sign-out:before {
|
593 |
-
|
594 |
}
|
|
|
595 |
.fa-linkedin-square:before {
|
596 |
-
|
597 |
}
|
|
|
598 |
.fa-thumb-tack:before {
|
599 |
-
|
600 |
}
|
|
|
601 |
.fa-external-link:before {
|
602 |
-
|
603 |
}
|
|
|
604 |
.fa-sign-in:before {
|
605 |
-
|
606 |
}
|
|
|
607 |
.fa-trophy:before {
|
608 |
-
|
609 |
}
|
|
|
610 |
.fa-github-square:before {
|
611 |
-
|
612 |
}
|
|
|
613 |
.fa-upload:before {
|
614 |
-
|
615 |
}
|
|
|
616 |
.fa-lemon-o:before {
|
617 |
-
|
618 |
}
|
|
|
619 |
.fa-phone:before {
|
620 |
-
|
621 |
}
|
|
|
622 |
.fa-square-o:before {
|
623 |
-
|
624 |
}
|
|
|
625 |
.fa-bookmark-o:before {
|
626 |
-
|
627 |
}
|
|
|
628 |
.fa-phone-square:before {
|
629 |
-
|
630 |
}
|
|
|
631 |
.fa-twitter:before {
|
632 |
-
|
633 |
}
|
|
|
634 |
.fa-facebook:before {
|
635 |
-
|
636 |
}
|
|
|
637 |
.fa-github:before {
|
638 |
-
|
639 |
}
|
|
|
640 |
.fa-unlock:before {
|
641 |
-
|
642 |
}
|
|
|
643 |
.fa-credit-card:before {
|
644 |
-
|
645 |
}
|
|
|
646 |
.fa-rss:before {
|
647 |
-
|
648 |
}
|
|
|
649 |
.fa-hdd-o:before {
|
650 |
-
|
651 |
}
|
|
|
652 |
.fa-bullhorn:before {
|
653 |
-
|
654 |
}
|
|
|
655 |
.fa-bell:before {
|
656 |
-
|
657 |
}
|
|
|
658 |
.fa-certificate:before {
|
659 |
-
|
660 |
}
|
|
|
661 |
.fa-hand-o-right:before {
|
662 |
-
|
663 |
}
|
|
|
664 |
.fa-hand-o-left:before {
|
665 |
-
|
666 |
}
|
|
|
667 |
.fa-hand-o-up:before {
|
668 |
-
|
669 |
}
|
|
|
670 |
.fa-hand-o-down:before {
|
671 |
-
|
672 |
}
|
|
|
673 |
.fa-arrow-circle-left:before {
|
674 |
-
|
675 |
}
|
|
|
676 |
.fa-arrow-circle-right:before {
|
677 |
-
|
678 |
}
|
|
|
679 |
.fa-arrow-circle-up:before {
|
680 |
-
|
681 |
}
|
|
|
682 |
.fa-arrow-circle-down:before {
|
683 |
-
|
684 |
}
|
|
|
685 |
.fa-globe:before {
|
686 |
-
|
687 |
}
|
|
|
688 |
.fa-wrench:before {
|
689 |
-
|
690 |
}
|
|
|
691 |
.fa-tasks:before {
|
692 |
-
|
693 |
}
|
|
|
694 |
.fa-filter:before {
|
695 |
-
|
696 |
}
|
|
|
697 |
.fa-briefcase:before {
|
698 |
-
|
699 |
}
|
|
|
700 |
.fa-arrows-alt:before {
|
701 |
-
|
702 |
}
|
|
|
703 |
.fa-group:before,
|
704 |
.fa-users:before {
|
705 |
-
|
706 |
}
|
|
|
707 |
.fa-chain:before,
|
708 |
.fa-link:before {
|
709 |
-
|
710 |
}
|
|
|
711 |
.fa-cloud:before {
|
712 |
-
|
713 |
}
|
|
|
714 |
.fa-flask:before {
|
715 |
-
|
716 |
}
|
|
|
717 |
.fa-cut:before,
|
718 |
.fa-scissors:before {
|
719 |
-
|
720 |
}
|
|
|
721 |
.fa-copy:before,
|
722 |
.fa-files-o:before {
|
723 |
-
|
724 |
}
|
|
|
725 |
.fa-paperclip:before {
|
726 |
-
|
727 |
}
|
|
|
728 |
.fa-save:before,
|
729 |
.fa-floppy-o:before {
|
730 |
-
|
731 |
}
|
|
|
732 |
.fa-square:before {
|
733 |
-
|
734 |
}
|
|
|
735 |
.fa-bars:before {
|
736 |
-
|
737 |
}
|
|
|
738 |
.fa-list-ul:before {
|
739 |
-
|
740 |
}
|
|
|
741 |
.fa-list-ol:before {
|
742 |
-
|
743 |
}
|
|
|
744 |
.fa-strikethrough:before {
|
745 |
-
|
746 |
}
|
|
|
747 |
.fa-underline:before {
|
748 |
-
|
749 |
}
|
|
|
750 |
.fa-table:before {
|
751 |
-
|
752 |
}
|
|
|
753 |
.fa-magic:before {
|
754 |
-
|
755 |
}
|
|
|
756 |
.fa-truck:before {
|
757 |
-
|
758 |
}
|
|
|
759 |
.fa-pinterest:before {
|
760 |
-
|
761 |
}
|
|
|
762 |
.fa-pinterest-square:before {
|
763 |
-
|
764 |
}
|
|
|
765 |
.fa-google-plus-square:before {
|
766 |
-
|
767 |
}
|
|
|
768 |
.fa-google-plus:before {
|
769 |
-
|
770 |
}
|
|
|
771 |
.fa-money:before {
|
772 |
-
|
773 |
}
|
|
|
774 |
.fa-caret-down:before {
|
775 |
-
|
776 |
}
|
|
|
777 |
.fa-caret-up:before {
|
778 |
-
|
779 |
}
|
|
|
780 |
.fa-caret-left:before {
|
781 |
-
|
782 |
}
|
|
|
783 |
.fa-caret-right:before {
|
784 |
-
|
785 |
}
|
|
|
786 |
.fa-columns:before {
|
787 |
-
|
788 |
}
|
|
|
789 |
.fa-unsorted:before,
|
790 |
.fa-sort:before {
|
791 |
-
|
792 |
}
|
|
|
793 |
.fa-sort-down:before,
|
794 |
.fa-sort-asc:before {
|
795 |
-
|
796 |
}
|
|
|
797 |
.fa-sort-up:before,
|
798 |
.fa-sort-desc:before {
|
799 |
-
|
800 |
}
|
|
|
801 |
.fa-envelope:before {
|
802 |
-
|
803 |
}
|
|
|
804 |
.fa-linkedin:before {
|
805 |
-
|
806 |
}
|
|
|
807 |
.fa-rotate-left:before,
|
808 |
.fa-undo:before {
|
809 |
-
|
810 |
}
|
|
|
811 |
.fa-legal:before,
|
812 |
.fa-gavel:before {
|
813 |
-
|
814 |
}
|
|
|
815 |
.fa-dashboard:before,
|
816 |
.fa-tachometer:before {
|
817 |
-
|
818 |
}
|
|
|
819 |
.fa-comment-o:before {
|
820 |
-
|
821 |
}
|
|
|
822 |
.fa-comments-o:before {
|
823 |
-
|
824 |
}
|
|
|
825 |
.fa-flash:before,
|
826 |
.fa-bolt:before {
|
827 |
-
|
828 |
}
|
|
|
829 |
.fa-sitemap:before {
|
830 |
-
|
831 |
}
|
|
|
832 |
.fa-umbrella:before {
|
833 |
-
|
834 |
}
|
|
|
835 |
.fa-paste:before,
|
836 |
.fa-clipboard:before {
|
837 |
-
|
838 |
}
|
|
|
839 |
.fa-lightbulb-o:before {
|
840 |
-
|
841 |
}
|
|
|
842 |
.fa-exchange:before {
|
843 |
-
|
844 |
}
|
|
|
845 |
.fa-cloud-download:before {
|
846 |
-
|
847 |
}
|
|
|
848 |
.fa-cloud-upload:before {
|
849 |
-
|
850 |
}
|
|
|
851 |
.fa-user-md:before {
|
852 |
-
|
853 |
}
|
|
|
854 |
.fa-stethoscope:before {
|
855 |
-
|
856 |
}
|
|
|
857 |
.fa-suitcase:before {
|
858 |
-
|
859 |
}
|
|
|
860 |
.fa-bell-o:before {
|
861 |
-
|
862 |
}
|
|
|
863 |
.fa-coffee:before {
|
864 |
-
|
865 |
}
|
|
|
866 |
.fa-cutlery:before {
|
867 |
-
|
868 |
}
|
|
|
869 |
.fa-file-text-o:before {
|
870 |
-
|
871 |
}
|
|
|
872 |
.fa-building-o:before {
|
873 |
-
|
874 |
}
|
|
|
875 |
.fa-hospital-o:before {
|
876 |
-
|
877 |
}
|
|
|
878 |
.fa-ambulance:before {
|
879 |
-
|
880 |
}
|
|
|
881 |
.fa-medkit:before {
|
882 |
-
|
883 |
}
|
|
|
884 |
.fa-fighter-jet:before {
|
885 |
-
|
886 |
}
|
|
|
887 |
.fa-beer:before {
|
888 |
-
|
889 |
}
|
|
|
890 |
.fa-h-square:before {
|
891 |
-
|
892 |
}
|
|
|
893 |
.fa-plus-square:before {
|
894 |
-
|
895 |
}
|
|
|
896 |
.fa-angle-double-left:before {
|
897 |
-
|
898 |
}
|
|
|
899 |
.fa-angle-double-right:before {
|
900 |
-
|
901 |
}
|
|
|
902 |
.fa-angle-double-up:before {
|
903 |
-
|
904 |
}
|
|
|
905 |
.fa-angle-double-down:before {
|
906 |
-
|
907 |
}
|
|
|
908 |
.fa-angle-left:before {
|
909 |
-
|
910 |
}
|
|
|
911 |
.fa-angle-right:before {
|
912 |
-
|
913 |
}
|
|
|
914 |
.fa-angle-up:before {
|
915 |
-
|
916 |
}
|
|
|
917 |
.fa-angle-down:before {
|
918 |
-
|
919 |
}
|
|
|
920 |
.fa-desktop:before {
|
921 |
-
|
922 |
}
|
|
|
923 |
.fa-laptop:before {
|
924 |
-
|
925 |
}
|
|
|
926 |
.fa-tablet:before {
|
927 |
-
|
928 |
}
|
|
|
929 |
.fa-mobile-phone:before,
|
930 |
.fa-mobile:before {
|
931 |
-
|
932 |
}
|
|
|
933 |
.fa-circle-o:before {
|
934 |
-
|
935 |
}
|
|
|
936 |
.fa-quote-left:before {
|
937 |
-
|
938 |
}
|
|
|
939 |
.fa-quote-right:before {
|
940 |
-
|
941 |
}
|
|
|
942 |
.fa-spinner:before {
|
943 |
-
|
944 |
}
|
|
|
945 |
.fa-circle:before {
|
946 |
-
|
947 |
}
|
|
|
948 |
.fa-mail-reply:before,
|
949 |
.fa-reply:before {
|
950 |
-
|
951 |
}
|
|
|
952 |
.fa-github-alt:before {
|
953 |
-
|
954 |
}
|
|
|
955 |
.fa-folder-o:before {
|
956 |
-
|
957 |
}
|
|
|
958 |
.fa-folder-open-o:before {
|
959 |
-
|
960 |
}
|
|
|
961 |
.fa-smile-o:before {
|
962 |
-
|
963 |
}
|
|
|
964 |
.fa-frown-o:before {
|
965 |
-
|
966 |
}
|
|
|
967 |
.fa-meh-o:before {
|
968 |
-
|
969 |
}
|
|
|
970 |
.fa-gamepad:before {
|
971 |
-
|
972 |
}
|
|
|
973 |
.fa-keyboard-o:before {
|
974 |
-
|
975 |
}
|
|
|
976 |
.fa-flag-o:before {
|
977 |
-
|
978 |
}
|
|
|
979 |
.fa-flag-checkered:before {
|
980 |
-
|
981 |
}
|
|
|
982 |
.fa-terminal:before {
|
983 |
-
|
984 |
}
|
|
|
985 |
.fa-code:before {
|
986 |
-
|
987 |
}
|
|
|
988 |
.fa-reply-all:before {
|
989 |
-
|
990 |
}
|
|
|
991 |
.fa-mail-reply-all:before {
|
992 |
-
|
993 |
}
|
|
|
994 |
.fa-star-half-empty:before,
|
995 |
.fa-star-half-full:before,
|
996 |
.fa-star-half-o:before {
|
997 |
-
|
998 |
}
|
|
|
999 |
.fa-location-arrow:before {
|
1000 |
-
|
1001 |
}
|
|
|
1002 |
.fa-crop:before {
|
1003 |
-
|
1004 |
}
|
|
|
1005 |
.fa-code-fork:before {
|
1006 |
-
|
1007 |
}
|
|
|
1008 |
.fa-unlink:before,
|
1009 |
.fa-chain-broken:before {
|
1010 |
-
|
1011 |
}
|
|
|
1012 |
.fa-question:before {
|
1013 |
-
|
1014 |
}
|
|
|
1015 |
.fa-info:before {
|
1016 |
-
|
1017 |
}
|
|
|
1018 |
.fa-exclamation:before {
|
1019 |
-
|
1020 |
}
|
|
|
1021 |
.fa-superscript:before {
|
1022 |
-
|
1023 |
}
|
|
|
1024 |
.fa-subscript:before {
|
1025 |
-
|
1026 |
}
|
|
|
1027 |
.fa-eraser:before {
|
1028 |
-
|
1029 |
}
|
|
|
1030 |
.fa-puzzle-piece:before {
|
1031 |
-
|
1032 |
}
|
|
|
1033 |
.fa-microphone:before {
|
1034 |
-
|
1035 |
}
|
|
|
1036 |
.fa-microphone-slash:before {
|
1037 |
-
|
1038 |
}
|
|
|
1039 |
.fa-shield:before {
|
1040 |
-
|
1041 |
}
|
|
|
1042 |
.fa-calendar-o:before {
|
1043 |
-
|
1044 |
}
|
|
|
1045 |
.fa-fire-extinguisher:before {
|
1046 |
-
|
1047 |
}
|
|
|
1048 |
.fa-rocket:before {
|
1049 |
-
|
1050 |
}
|
|
|
1051 |
.fa-maxcdn:before {
|
1052 |
-
|
1053 |
}
|
|
|
1054 |
.fa-chevron-circle-left:before {
|
1055 |
-
|
1056 |
}
|
|
|
1057 |
.fa-chevron-circle-right:before {
|
1058 |
-
|
1059 |
}
|
|
|
1060 |
.fa-chevron-circle-up:before {
|
1061 |
-
|
1062 |
}
|
|
|
1063 |
.fa-chevron-circle-down:before {
|
1064 |
-
|
1065 |
}
|
|
|
1066 |
.fa-html5:before {
|
1067 |
-
|
1068 |
}
|
|
|
1069 |
.fa-css3:before {
|
1070 |
-
|
1071 |
}
|
|
|
1072 |
.fa-anchor:before {
|
1073 |
-
|
1074 |
}
|
|
|
1075 |
.fa-unlock-alt:before {
|
1076 |
-
|
1077 |
}
|
|
|
1078 |
.fa-bullseye:before {
|
1079 |
-
|
1080 |
}
|
|
|
1081 |
.fa-ellipsis-h:before {
|
1082 |
-
|
1083 |
}
|
|
|
1084 |
.fa-ellipsis-v:before {
|
1085 |
-
|
1086 |
}
|
|
|
1087 |
.fa-rss-square:before {
|
1088 |
-
|
1089 |
}
|
|
|
1090 |
.fa-play-circle:before {
|
1091 |
-
|
1092 |
}
|
|
|
1093 |
.fa-ticket:before {
|
1094 |
-
|
1095 |
}
|
|
|
1096 |
.fa-minus-square:before {
|
1097 |
-
|
1098 |
}
|
|
|
1099 |
.fa-minus-square-o:before {
|
1100 |
-
|
1101 |
}
|
|
|
1102 |
.fa-level-up:before {
|
1103 |
-
|
1104 |
}
|
|
|
1105 |
.fa-level-down:before {
|
1106 |
-
|
1107 |
}
|
|
|
1108 |
.fa-check-square:before {
|
1109 |
-
|
1110 |
}
|
|
|
1111 |
.fa-pencil-square:before {
|
1112 |
-
|
1113 |
}
|
|
|
1114 |
.fa-external-link-square:before {
|
1115 |
-
|
1116 |
}
|
|
|
1117 |
.fa-share-square:before {
|
1118 |
-
|
1119 |
}
|
|
|
1120 |
.fa-compass:before {
|
1121 |
-
|
1122 |
}
|
|
|
1123 |
.fa-toggle-down:before,
|
1124 |
.fa-caret-square-o-down:before {
|
1125 |
-
|
1126 |
}
|
|
|
1127 |
.fa-toggle-up:before,
|
1128 |
.fa-caret-square-o-up:before {
|
1129 |
-
|
1130 |
}
|
|
|
1131 |
.fa-toggle-right:before,
|
1132 |
.fa-caret-square-o-right:before {
|
1133 |
-
|
1134 |
}
|
|
|
1135 |
.fa-euro:before,
|
1136 |
.fa-eur:before {
|
1137 |
-
|
1138 |
}
|
|
|
1139 |
.fa-gbp:before {
|
1140 |
-
|
1141 |
}
|
|
|
1142 |
.fa-dollar:before,
|
1143 |
.fa-usd:before {
|
1144 |
-
|
1145 |
}
|
|
|
1146 |
.fa-rupee:before,
|
1147 |
.fa-inr:before {
|
1148 |
-
|
1149 |
}
|
|
|
1150 |
.fa-cny:before,
|
1151 |
.fa-rmb:before,
|
1152 |
.fa-yen:before,
|
1153 |
.fa-jpy:before {
|
1154 |
-
|
1155 |
}
|
|
|
1156 |
.fa-ruble:before,
|
1157 |
.fa-rouble:before,
|
1158 |
.fa-rub:before {
|
1159 |
-
|
1160 |
}
|
|
|
1161 |
.fa-won:before,
|
1162 |
.fa-krw:before {
|
1163 |
-
|
1164 |
}
|
|
|
1165 |
.fa-bitcoin:before,
|
1166 |
.fa-btc:before {
|
1167 |
-
|
1168 |
}
|
|
|
1169 |
.fa-file:before {
|
1170 |
-
|
1171 |
}
|
|
|
1172 |
.fa-file-text:before {
|
1173 |
-
|
1174 |
}
|
|
|
1175 |
.fa-sort-alpha-asc:before {
|
1176 |
-
|
1177 |
}
|
|
|
1178 |
.fa-sort-alpha-desc:before {
|
1179 |
-
|
1180 |
}
|
|
|
1181 |
.fa-sort-amount-asc:before {
|
1182 |
-
|
1183 |
}
|
|
|
1184 |
.fa-sort-amount-desc:before {
|
1185 |
-
|
1186 |
}
|
|
|
1187 |
.fa-sort-numeric-asc:before {
|
1188 |
-
|
1189 |
}
|
|
|
1190 |
.fa-sort-numeric-desc:before {
|
1191 |
-
|
1192 |
}
|
|
|
1193 |
.fa-thumbs-up:before {
|
1194 |
-
|
1195 |
}
|
|
|
1196 |
.fa-thumbs-down:before {
|
1197 |
-
|
1198 |
}
|
|
|
1199 |
.fa-youtube-square:before {
|
1200 |
-
|
1201 |
}
|
|
|
1202 |
.fa-youtube:before {
|
1203 |
-
|
1204 |
}
|
|
|
1205 |
.fa-xing:before {
|
1206 |
-
|
1207 |
}
|
|
|
1208 |
.fa-xing-square:before {
|
1209 |
-
|
1210 |
}
|
|
|
1211 |
.fa-youtube-play:before {
|
1212 |
-
|
1213 |
}
|
|
|
1214 |
.fa-dropbox:before {
|
1215 |
-
|
1216 |
}
|
|
|
1217 |
.fa-stack-overflow:before {
|
1218 |
-
|
1219 |
}
|
|
|
1220 |
.fa-instagram:before {
|
1221 |
-
|
1222 |
}
|
|
|
1223 |
.fa-flickr:before {
|
1224 |
-
|
1225 |
}
|
|
|
1226 |
.fa-adn:before {
|
1227 |
-
|
1228 |
}
|
|
|
1229 |
.fa-bitbucket:before {
|
1230 |
-
|
1231 |
}
|
|
|
1232 |
.fa-bitbucket-square:before {
|
1233 |
-
|
1234 |
}
|
|
|
1235 |
.fa-tumblr:before {
|
1236 |
-
|
1237 |
}
|
|
|
1238 |
.fa-tumblr-square:before {
|
1239 |
-
|
1240 |
}
|
|
|
1241 |
.fa-long-arrow-down:before {
|
1242 |
-
|
1243 |
}
|
|
|
1244 |
.fa-long-arrow-up:before {
|
1245 |
-
|
1246 |
}
|
|
|
1247 |
.fa-long-arrow-left:before {
|
1248 |
-
|
1249 |
}
|
|
|
1250 |
.fa-long-arrow-right:before {
|
1251 |
-
|
1252 |
}
|
|
|
1253 |
.fa-apple:before {
|
1254 |
-
|
1255 |
}
|
|
|
1256 |
.fa-windows:before {
|
1257 |
-
|
1258 |
}
|
|
|
1259 |
.fa-android:before {
|
1260 |
-
|
1261 |
}
|
|
|
1262 |
.fa-linux:before {
|
1263 |
-
|
1264 |
}
|
|
|
1265 |
.fa-dribbble:before {
|
1266 |
-
|
1267 |
}
|
|
|
1268 |
.fa-skype:before {
|
1269 |
-
|
1270 |
}
|
|
|
1271 |
.fa-foursquare:before {
|
1272 |
-
|
1273 |
}
|
|
|
1274 |
.fa-trello:before {
|
1275 |
-
|
1276 |
}
|
|
|
1277 |
.fa-female:before {
|
1278 |
-
|
1279 |
}
|
|
|
1280 |
.fa-male:before {
|
1281 |
-
|
1282 |
}
|
|
|
1283 |
.fa-gittip:before {
|
1284 |
-
|
1285 |
}
|
|
|
1286 |
.fa-sun-o:before {
|
1287 |
-
|
1288 |
}
|
|
|
1289 |
.fa-moon-o:before {
|
1290 |
-
|
1291 |
}
|
|
|
1292 |
.fa-archive:before {
|
1293 |
-
|
1294 |
}
|
|
|
1295 |
.fa-bug:before {
|
1296 |
-
|
1297 |
}
|
|
|
1298 |
.fa-vk:before {
|
1299 |
-
|
1300 |
}
|
|
|
1301 |
.fa-weibo:before {
|
1302 |
-
|
1303 |
}
|
|
|
1304 |
.fa-renren:before {
|
1305 |
-
|
1306 |
}
|
|
|
1307 |
.fa-pagelines:before {
|
1308 |
-
|
1309 |
}
|
|
|
1310 |
.fa-stack-exchange:before {
|
1311 |
-
|
1312 |
}
|
|
|
1313 |
.fa-arrow-circle-o-right:before {
|
1314 |
-
|
1315 |
}
|
|
|
1316 |
.fa-arrow-circle-o-left:before {
|
1317 |
-
|
1318 |
}
|
|
|
1319 |
.fa-toggle-left:before,
|
1320 |
.fa-caret-square-o-left:before {
|
1321 |
-
|
1322 |
}
|
|
|
1323 |
.fa-dot-circle-o:before {
|
1324 |
-
|
1325 |
}
|
|
|
1326 |
.fa-wheelchair:before {
|
1327 |
-
|
1328 |
}
|
|
|
1329 |
.fa-vimeo-square:before {
|
1330 |
-
|
1331 |
}
|
|
|
1332 |
.fa-turkish-lira:before,
|
1333 |
.fa-try:before {
|
1334 |
-
|
1335 |
}
|
|
|
1336 |
.fa-plus-square-o:before {
|
1337 |
-
|
1338 |
}
|
1339 |
|
1340 |
|
5 |
/* FONT PATH
|
6 |
* -------------------------- */
|
7 |
@font-face {
|
8 |
+
font-family: 'FontAwesome';
|
9 |
+
src: url('../fonts/fontawesome-webfont.eot?v=4.0.3');
|
10 |
+
src: url('../fonts/fontawesome-webfont.eot?#iefix&v=4.0.3') format('embedded-opentype'), url('../fonts/fontawesome-webfont.woff?v=4.0.3') format('woff'), url('../fonts/fontawesome-webfont.ttf?v=4.0.3') format('truetype'), url('../fonts/fontawesome-webfont.svg?v=4.0.3#fontawesomeregular') format('svg');
|
11 |
+
font-weight: normal;
|
12 |
+
font-style: normal;
|
13 |
}
|
14 |
+
|
15 |
.fa {
|
16 |
+
display: inline-block;
|
17 |
+
font-family: FontAwesome;
|
18 |
+
font-style: normal;
|
19 |
+
font-weight: normal;
|
20 |
+
line-height: 1;
|
21 |
+
-webkit-font-smoothing: antialiased;
|
22 |
+
-moz-osx-font-smoothing: grayscale;
|
23 |
}
|
24 |
+
|
25 |
/* makes the font 33% larger relative to the icon container */
|
26 |
.fa-lg {
|
27 |
+
font-size: 1.3333333333333333em;
|
28 |
+
line-height: 0.75em;
|
29 |
+
vertical-align: -15%;
|
30 |
}
|
31 |
+
|
32 |
.fa-2x {
|
33 |
+
font-size: 2em;
|
34 |
}
|
35 |
+
|
36 |
.fa-3x {
|
37 |
+
font-size: 3em;
|
38 |
}
|
39 |
+
|
40 |
.fa-4x {
|
41 |
+
font-size: 4em;
|
42 |
}
|
43 |
+
|
44 |
.fa-5x {
|
45 |
+
font-size: 5em;
|
46 |
}
|
47 |
+
|
48 |
.fa-fw {
|
49 |
+
width: 1.2857142857142858em;
|
50 |
+
text-align: center;
|
51 |
}
|
52 |
+
|
53 |
.fa-ul {
|
54 |
+
padding-left: 0;
|
55 |
+
margin-left: 2.142857142857143em;
|
56 |
+
list-style-type: none;
|
57 |
}
|
58 |
+
|
59 |
.fa-ul > li {
|
60 |
+
position: relative;
|
61 |
}
|
62 |
+
|
63 |
.fa-li {
|
64 |
+
position: absolute;
|
65 |
+
left: -2.142857142857143em;
|
66 |
+
width: 2.142857142857143em;
|
67 |
+
top: 0.14285714285714285em;
|
68 |
+
text-align: center;
|
69 |
}
|
70 |
+
|
71 |
.fa-li.fa-lg {
|
72 |
+
left: -1.8571428571428572em;
|
73 |
}
|
74 |
+
|
75 |
.fa-border {
|
76 |
+
padding: .2em .25em .15em;
|
77 |
+
border: solid 0.08em #eeeeee;
|
78 |
+
border-radius: .1em;
|
79 |
}
|
80 |
+
|
81 |
.pull-right {
|
82 |
+
float: right;
|
83 |
}
|
84 |
+
|
85 |
.pull-left {
|
86 |
+
float: left;
|
87 |
}
|
88 |
+
|
89 |
.fa.pull-left {
|
90 |
+
margin-right: .3em;
|
91 |
}
|
92 |
+
|
93 |
.fa.pull-right {
|
94 |
+
margin-left: .3em;
|
95 |
}
|
96 |
+
|
97 |
.fa-spin {
|
98 |
+
-webkit-animation: spin 2s infinite linear;
|
99 |
+
-moz-animation: spin 2s infinite linear;
|
100 |
+
-o-animation: spin 2s infinite linear;
|
101 |
+
animation: spin 2s infinite linear;
|
102 |
}
|
103 |
+
|
104 |
@-moz-keyframes spin {
|
105 |
+
0% {
|
106 |
+
-moz-transform: rotate(0deg);
|
107 |
+
}
|
108 |
+
100% {
|
109 |
+
-moz-transform: rotate(359deg);
|
110 |
+
}
|
111 |
}
|
112 |
+
|
113 |
@-webkit-keyframes spin {
|
114 |
+
0% {
|
115 |
+
-webkit-transform: rotate(0deg);
|
116 |
+
}
|
117 |
+
100% {
|
118 |
+
-webkit-transform: rotate(359deg);
|
119 |
+
}
|
120 |
}
|
121 |
+
|
122 |
@-o-keyframes spin {
|
123 |
+
0% {
|
124 |
+
-o-transform: rotate(0deg);
|
125 |
+
}
|
126 |
+
100% {
|
127 |
+
-o-transform: rotate(359deg);
|
128 |
+
}
|
129 |
}
|
130 |
+
|
131 |
@-ms-keyframes spin {
|
132 |
+
0% {
|
133 |
+
-ms-transform: rotate(0deg);
|
134 |
+
}
|
135 |
+
100% {
|
136 |
+
-ms-transform: rotate(359deg);
|
137 |
+
}
|
138 |
}
|
139 |
+
|
140 |
@keyframes spin {
|
141 |
+
0% {
|
142 |
+
transform: rotate(0deg);
|
143 |
+
}
|
144 |
+
100% {
|
145 |
+
transform: rotate(359deg);
|
146 |
+
}
|
147 |
}
|
148 |
+
|
149 |
.fa-rotate-90 {
|
150 |
+
filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=1);
|
151 |
+
-webkit-transform: rotate(90deg);
|
152 |
+
-moz-transform: rotate(90deg);
|
153 |
+
-ms-transform: rotate(90deg);
|
154 |
+
-o-transform: rotate(90deg);
|
155 |
+
transform: rotate(90deg);
|
156 |
}
|
157 |
+
|
158 |
.fa-rotate-180 {
|
159 |
+
filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2);
|
160 |
+
-webkit-transform: rotate(180deg);
|
161 |
+
-moz-transform: rotate(180deg);
|
162 |
+
-ms-transform: rotate(180deg);
|
163 |
+
-o-transform: rotate(180deg);
|
164 |
+
transform: rotate(180deg);
|
165 |
}
|
166 |
+
|
167 |
.fa-rotate-270 {
|
168 |
+
filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=3);
|
169 |
+
-webkit-transform: rotate(270deg);
|
170 |
+
-moz-transform: rotate(270deg);
|
171 |
+
-ms-transform: rotate(270deg);
|
172 |
+
-o-transform: rotate(270deg);
|
173 |
+
transform: rotate(270deg);
|
174 |
}
|
175 |
+
|
176 |
.fa-flip-horizontal {
|
177 |
+
filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1);
|
178 |
+
-webkit-transform: scale(-1, 1);
|
179 |
+
-moz-transform: scale(-1, 1);
|
180 |
+
-ms-transform: scale(-1, 1);
|
181 |
+
-o-transform: scale(-1, 1);
|
182 |
+
transform: scale(-1, 1);
|
183 |
}
|
184 |
+
|
185 |
.fa-flip-vertical {
|
186 |
+
filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1);
|
187 |
+
-webkit-transform: scale(1, -1);
|
188 |
+
-moz-transform: scale(1, -1);
|
189 |
+
-ms-transform: scale(1, -1);
|
190 |
+
-o-transform: scale(1, -1);
|
191 |
+
transform: scale(1, -1);
|
192 |
}
|
193 |
+
|
194 |
.fa-stack {
|
195 |
+
position: relative;
|
196 |
+
display: inline-block;
|
197 |
+
width: 2em;
|
198 |
+
height: 2em;
|
199 |
+
line-height: 2em;
|
200 |
+
vertical-align: middle;
|
201 |
}
|
202 |
+
|
203 |
.fa-stack-1x,
|
204 |
.fa-stack-2x {
|
205 |
+
position: absolute;
|
206 |
+
left: 0;
|
207 |
+
width: 100%;
|
208 |
+
text-align: center;
|
209 |
}
|
210 |
+
|
211 |
.fa-stack-1x {
|
212 |
+
line-height: inherit;
|
213 |
}
|
214 |
+
|
215 |
.fa-stack-2x {
|
216 |
+
font-size: 2em;
|
217 |
}
|
218 |
+
|
219 |
.fa-inverse {
|
220 |
+
color: #ffffff;
|
221 |
}
|
222 |
+
|
223 |
/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
|
224 |
readers do not read off random characters that represent icons */
|
225 |
.fa-glass:before {
|
226 |
+
content: "\f000";
|
227 |
}
|
228 |
+
|
229 |
.fa-music:before {
|
230 |
+
content: "\f001";
|
231 |
}
|
232 |
+
|
233 |
.fa-search:before {
|
234 |
+
content: "\f002";
|
235 |
}
|
236 |
+
|
237 |
.fa-envelope-o:before {
|
238 |
+
content: "\f003";
|
239 |
}
|
240 |
+
|
241 |
.fa-heart:before {
|
242 |
+
content: "\f004";
|
243 |
}
|
244 |
+
|
245 |
.fa-star:before {
|
246 |
+
content: "\f005";
|
247 |
}
|
248 |
+
|
249 |
.fa-star-o:before {
|
250 |
+
content: "\f006";
|
251 |
}
|
252 |
+
|
253 |
.fa-user:before {
|
254 |
+
content: "\f007";
|
255 |
}
|
256 |
+
|
257 |
.fa-film:before {
|
258 |
+
content: "\f008";
|
259 |
}
|
260 |
+
|
261 |
.fa-th-large:before {
|
262 |
+
content: "\f009";
|
263 |
}
|
264 |
+
|
265 |
.fa-th:before {
|
266 |
+
content: "\f00a";
|
267 |
}
|
268 |
+
|
269 |
.fa-th-list:before {
|
270 |
+
content: "\f00b";
|
271 |
}
|
272 |
+
|
273 |
.fa-check:before {
|
274 |
+
content: "\f00c";
|
275 |
}
|
276 |
+
|
277 |
.fa-times:before {
|
278 |
+
content: "\f00d";
|
279 |
}
|
280 |
+
|
281 |
.fa-search-plus:before {
|
282 |
+
content: "\f00e";
|
283 |
}
|
284 |
+
|
285 |
.fa-search-minus:before {
|
286 |
+
content: "\f010";
|
287 |
}
|
288 |
+
|
289 |
.fa-power-off:before {
|
290 |
+
content: "\f011";
|
291 |
}
|
292 |
+
|
293 |
.fa-signal:before {
|
294 |
+
content: "\f012";
|
295 |
}
|
296 |
+
|
297 |
.fa-gear:before,
|
298 |
.fa-cog:before {
|
299 |
+
content: "\f013";
|
300 |
}
|
301 |
+
|
302 |
.fa-trash-o:before {
|
303 |
+
content: "\f014";
|
304 |
}
|
305 |
+
|
306 |
.fa-home:before {
|
307 |
+
content: "\f015";
|
308 |
}
|
309 |
+
|
310 |
.fa-file-o:before {
|
311 |
+
content: "\f016";
|
312 |
}
|
313 |
+
|
314 |
.fa-clock-o:before {
|
315 |
+
content: "\f017";
|
316 |
}
|
317 |
+
|
318 |
.fa-road:before {
|
319 |
+
content: "\f018";
|
320 |
}
|
321 |
+
|
322 |
.fa-download:before {
|
323 |
+
content: "\f019";
|
324 |
}
|
325 |
+
|
326 |
.fa-arrow-circle-o-down:before {
|
327 |
+
content: "\f01a";
|
328 |
}
|
329 |
+
|
330 |
.fa-arrow-circle-o-up:before {
|
331 |
+
content: "\f01b";
|
332 |
}
|
333 |
+
|
334 |
.fa-inbox:before {
|
335 |
+
content: "\f01c";
|
336 |
}
|
337 |
+
|
338 |
.fa-play-circle-o:before {
|
339 |
+
content: "\f01d";
|
340 |
}
|
341 |
+
|
342 |
.fa-rotate-right:before,
|
343 |
.fa-repeat:before {
|
344 |
+
content: "\f01e";
|
345 |
}
|
346 |
+
|
347 |
.fa-refresh:before {
|
348 |
+
content: "\f021";
|
349 |
}
|
350 |
+
|
351 |
.fa-list-alt:before {
|
352 |
+
content: "\f022";
|
353 |
}
|
354 |
+
|
355 |
.fa-lock:before {
|
356 |
+
content: "\f023";
|
357 |
}
|
358 |
+
|
359 |
.fa-flag:before {
|
360 |
+
content: "\f024";
|
361 |
}
|
362 |
+
|
363 |
.fa-headphones:before {
|
364 |
+
content: "\f025";
|
365 |
}
|
366 |
+
|
367 |
.fa-volume-off:before {
|
368 |
+
content: "\f026";
|
369 |
}
|
370 |
+
|
371 |
.fa-volume-down:before {
|
372 |
+
content: "\f027";
|
373 |
}
|
374 |
+
|
375 |
.fa-volume-up:before {
|
376 |
+
content: "\f028";
|
377 |
}
|
378 |
+
|
379 |
.fa-qrcode:before {
|
380 |
+
content: "\f029";
|
381 |
}
|
382 |
+
|
383 |
.fa-barcode:before {
|
384 |
+
content: "\f02a";
|
385 |
}
|
386 |
+
|
387 |
.fa-tag:before {
|
388 |
+
content: "\f02b";
|
389 |
}
|
390 |
+
|
391 |
.fa-tags:before {
|
392 |
+
content: "\f02c";
|
393 |
}
|
394 |
+
|
395 |
.fa-book:before {
|
396 |
+
content: "\f02d";
|
397 |
}
|
398 |
+
|
399 |
.fa-bookmark:before {
|
400 |
+
content: "\f02e";
|
401 |
}
|
402 |
+
|
403 |
.fa-print:before {
|
404 |
+
content: "\f02f";
|
405 |
}
|
406 |
+
|
407 |
.fa-camera:before {
|
408 |
+
content: "\f030";
|
409 |
}
|
410 |
+
|
411 |
.fa-font:before {
|
412 |
+
content: "\f031";
|
413 |
}
|
414 |
+
|
415 |
.fa-bold:before {
|
416 |
+
content: "\f032";
|
417 |
}
|
418 |
+
|
419 |
.fa-italic:before {
|
420 |
+
content: "\f033";
|
421 |
}
|
422 |
+
|
423 |
.fa-text-height:before {
|
424 |
+
content: "\f034";
|
425 |
}
|
426 |
+
|
427 |
.fa-text-width:before {
|
428 |
+
content: "\f035";
|
429 |
}
|
430 |
+
|
431 |
.fa-align-left:before {
|
432 |
+
content: "\f036";
|
433 |
}
|
434 |
+
|
435 |
.fa-align-center:before {
|
436 |
+
content: "\f037";
|
437 |
}
|
438 |
+
|
439 |
.fa-align-right:before {
|
440 |
+
content: "\f038";
|
441 |
}
|
442 |
+
|
443 |
.fa-align-justify:before {
|
444 |
+
content: "\f039";
|
445 |
}
|
446 |
+
|
447 |
.fa-list:before {
|
448 |
+
content: "\f03a";
|
449 |
}
|
450 |
+
|
451 |
.fa-dedent:before,
|
452 |
.fa-outdent:before {
|
453 |
+
content: "\f03b";
|
454 |
}
|
455 |
+
|
456 |
.fa-indent:before {
|
457 |
+
content: "\f03c";
|
458 |
}
|
459 |
+
|
460 |
.fa-video-camera:before {
|
461 |
+
content: "\f03d";
|
462 |
}
|
463 |
+
|
464 |
.fa-picture-o:before {
|
465 |
+
content: "\f03e";
|
466 |
}
|
467 |
+
|
468 |
.fa-pencil:before {
|
469 |
+
content: "\f040";
|
470 |
}
|
471 |
+
|
472 |
.fa-map-marker:before {
|
473 |
+
content: "\f041";
|
474 |
}
|
475 |
+
|
476 |
.fa-adjust:before {
|
477 |
+
content: "\f042";
|
478 |
}
|
479 |
+
|
480 |
.fa-tint:before {
|
481 |
+
content: "\f043";
|
482 |
}
|
483 |
+
|
484 |
.fa-edit:before,
|
485 |
.fa-pencil-square-o:before {
|
486 |
+
content: "\f044";
|
487 |
}
|
488 |
+
|
489 |
.fa-share-square-o:before {
|
490 |
+
content: "\f045";
|
491 |
}
|
492 |
+
|
493 |
.fa-check-square-o:before {
|
494 |
+
content: "\f046";
|
495 |
}
|
496 |
+
|
497 |
.fa-arrows:before {
|
498 |
+
content: "\f047";
|
499 |
}
|
500 |
+
|
501 |
.fa-step-backward:before {
|
502 |
+
content: "\f048";
|
503 |
}
|
504 |
+
|
505 |
.fa-fast-backward:before {
|
506 |
+
content: "\f049";
|
507 |
}
|
508 |
+
|
509 |
.fa-backward:before {
|
510 |
+
content: "\f04a";
|
511 |
}
|
512 |
+
|
513 |
.fa-play:before {
|
514 |
+
content: "\f04b";
|
515 |
}
|
516 |
+
|
517 |
.fa-pause:before {
|
518 |
+
content: "\f04c";
|
519 |
}
|
520 |
+
|
521 |
.fa-stop:before {
|
522 |
+
content: "\f04d";
|
523 |
}
|
524 |
+
|
525 |
.fa-forward:before {
|
526 |
+
content: "\f04e";
|
527 |
}
|
528 |
+
|
529 |
.fa-fast-forward:before {
|
530 |
+
content: "\f050";
|
531 |
}
|
532 |
+
|
533 |
.fa-step-forward:before {
|
534 |
+
content: "\f051";
|
535 |
}
|
536 |
+
|
537 |
.fa-eject:before {
|
538 |
+
content: "\f052";
|
539 |
}
|
540 |
+
|
541 |
.fa-chevron-left:before {
|
542 |
+
content: "\f053";
|
543 |
}
|
544 |
+
|
545 |
.fa-chevron-right:before {
|
546 |
+
content: "\f054";
|
547 |
}
|
548 |
+
|
549 |
.fa-plus-circle:before {
|
550 |
+
content: "\f055";
|
551 |
}
|
552 |
+
|
553 |
.fa-minus-circle:before {
|
554 |
+
content: "\f056";
|
555 |
}
|
556 |
+
|
557 |
.fa-times-circle:before {
|
558 |
+
content: "\f057";
|
559 |
}
|
560 |
+
|
561 |
.fa-check-circle:before {
|
562 |
+
content: "\f058";
|
563 |
}
|
564 |
+
|
565 |
.fa-question-circle:before {
|
566 |
+
content: "\f059";
|
567 |
}
|
568 |
+
|
569 |
.fa-info-circle:before {
|
570 |
+
content: "\f05a";
|
571 |
}
|
572 |
+
|
573 |
.fa-crosshairs:before {
|
574 |
+
content: "\f05b";
|
575 |
}
|
576 |
+
|
577 |
.fa-times-circle-o:before {
|
578 |
+
content: "\f05c";
|
579 |
}
|
580 |
+
|
581 |
.fa-check-circle-o:before {
|
582 |
+
content: "\f05d";
|
583 |
}
|
584 |
+
|
585 |
.fa-ban:before {
|
586 |
+
content: "\f05e";
|
587 |
}
|
588 |
+
|
589 |
.fa-arrow-left:before {
|
590 |
+
content: "\f060";
|
591 |
}
|
592 |
+
|
593 |
.fa-arrow-right:before {
|
594 |
+
content: "\f061";
|
595 |
}
|
596 |
+
|
597 |
.fa-arrow-up:before {
|
598 |
+
content: "\f062";
|
599 |
}
|
600 |
+
|
601 |
.fa-arrow-down:before {
|
602 |
+
content: "\f063";
|
603 |
}
|
604 |
+
|
605 |
.fa-mail-forward:before,
|
606 |
.fa-share:before {
|
607 |
+
content: "\f064";
|
608 |
}
|
609 |
+
|
610 |
.fa-expand:before {
|
611 |
+
content: "\f065";
|
612 |
}
|
613 |
+
|
614 |
.fa-compress:before {
|
615 |
+
content: "\f066";
|
616 |
}
|
617 |
+
|
618 |
.fa-plus:before {
|
619 |
+
content: "\f067";
|
620 |
}
|
621 |
+
|
622 |
.fa-minus:before {
|
623 |
+
content: "\f068";
|
624 |
}
|
625 |
+
|
626 |
.fa-asterisk:before {
|
627 |
+
content: "\f069";
|
628 |
}
|
629 |
+
|
630 |
.fa-exclamation-circle:before {
|
631 |
+
content: "\f06a";
|
632 |
}
|
633 |
+
|
634 |
.fa-gift:before {
|
635 |
+
content: "\f06b";
|
636 |
}
|
637 |
+
|
638 |
.fa-leaf:before {
|
639 |
+
content: "\f06c";
|
640 |
}
|
641 |
+
|
642 |
.fa-fire:before {
|
643 |
+
content: "\f06d";
|
644 |
}
|
645 |
+
|
646 |
.fa-eye:before {
|
647 |
+
content: "\f06e";
|
648 |
}
|
649 |
+
|
650 |
.fa-eye-slash:before {
|
651 |
+
content: "\f070";
|
652 |
}
|
653 |
+
|
654 |
.fa-warning:before,
|
655 |
.fa-exclamation-triangle:before {
|
656 |
+
content: "\f071";
|
657 |
}
|
658 |
+
|
659 |
.fa-plane:before {
|
660 |
+
content: "\f072";
|
661 |
}
|
662 |
+
|
663 |
.fa-calendar:before {
|
664 |
+
content: "\f073";
|
665 |
}
|
666 |
+
|
667 |
.fa-random:before {
|
668 |
+
content: "\f074";
|
669 |
}
|
670 |
+
|
671 |
.fa-comment:before {
|
672 |
+
content: "\f075";
|
673 |
}
|
674 |
+
|
675 |
.fa-magnet:before {
|
676 |
+
content: "\f076";
|
677 |
}
|
678 |
+
|
679 |
.fa-chevron-up:before {
|
680 |
+
content: "\f077";
|
681 |
}
|
682 |
+
|
683 |
.fa-chevron-down:before {
|
684 |
+
content: "\f078";
|
685 |
}
|
686 |
+
|
687 |
.fa-retweet:before {
|
688 |
+
content: "\f079";
|
689 |
}
|
690 |
+
|
691 |
.fa-shopping-cart:before {
|
692 |
+
content: "\f07a";
|
693 |
}
|
694 |
+
|
695 |
.fa-folder:before {
|
696 |
+
content: "\f07b";
|
697 |
}
|
698 |
+
|
699 |
.fa-folder-open:before {
|
700 |
+
content: "\f07c";
|
701 |
}
|
702 |
+
|
703 |
.fa-arrows-v:before {
|
704 |
+
content: "\f07d";
|
705 |
}
|
706 |
+
|
707 |
.fa-arrows-h:before {
|
708 |
+
content: "\f07e";
|
709 |
}
|
710 |
+
|
711 |
.fa-bar-chart-o:before {
|
712 |
+
content: "\f080";
|
713 |
}
|
714 |
+
|
715 |
.fa-twitter-square:before {
|
716 |
+
content: "\f081";
|
717 |
}
|
718 |
+
|
719 |
.fa-facebook-square:before {
|
720 |
+
content: "\f082";
|
721 |
}
|
722 |
+
|
723 |
.fa-camera-retro:before {
|
724 |
+
content: "\f083";
|
725 |
}
|
726 |
+
|
727 |
.fa-key:before {
|
728 |
+
content: "\f084";
|
729 |
}
|
730 |
+
|
731 |
.fa-gears:before,
|
732 |
.fa-cogs:before {
|
733 |
+
content: "\f085";
|
734 |
}
|
735 |
+
|
736 |
.fa-comments:before {
|
737 |
+
content: "\f086";
|
738 |
}
|
739 |
+
|
740 |
.fa-thumbs-o-up:before {
|
741 |
+
content: "\f087";
|
742 |
}
|
743 |
+
|
744 |
.fa-thumbs-o-down:before {
|
745 |
+
content: "\f088";
|
746 |
}
|
747 |
+
|
748 |
.fa-star-half:before {
|
749 |
+
content: "\f089";
|
750 |
}
|
751 |
+
|
752 |
.fa-heart-o:before {
|
753 |
+
content: "\f08a";
|
754 |
}
|
755 |
+
|
756 |
.fa-sign-out:before {
|
757 |
+
content: "\f08b";
|
758 |
}
|
759 |
+
|
760 |
.fa-linkedin-square:before {
|
761 |
+
content: "\f08c";
|
762 |
}
|
763 |
+
|
764 |
.fa-thumb-tack:before {
|
765 |
+
content: "\f08d";
|
766 |
}
|
767 |
+
|
768 |
.fa-external-link:before {
|
769 |
+
content: "\f08e";
|
770 |
}
|
771 |
+
|
772 |
.fa-sign-in:before {
|
773 |
+
content: "\f090";
|
774 |
}
|
775 |
+
|
776 |
.fa-trophy:before {
|
777 |
+
content: "\f091";
|
778 |
}
|
779 |
+
|
780 |
.fa-github-square:before {
|
781 |
+
content: "\f092";
|
782 |
}
|
783 |
+
|
784 |
.fa-upload:before {
|
785 |
+
content: "\f093";
|
786 |
}
|
787 |
+
|
788 |
.fa-lemon-o:before {
|
789 |
+
content: "\f094";
|
790 |
}
|
791 |
+
|
792 |
.fa-phone:before {
|
793 |
+
content: "\f095";
|
794 |
}
|
795 |
+
|
796 |
.fa-square-o:before {
|
797 |
+
content: "\f096";
|
798 |
}
|
799 |
+
|
800 |
.fa-bookmark-o:before {
|
801 |
+
content: "\f097";
|
802 |
}
|
803 |
+
|
804 |
.fa-phone-square:before {
|
805 |
+
content: "\f098";
|
806 |
}
|
807 |
+
|
808 |
.fa-twitter:before {
|
809 |
+
content: "\f099";
|
810 |
}
|
811 |
+
|
812 |
.fa-facebook:before {
|
813 |
+
content: "\f09a";
|
814 |
}
|
815 |
+
|
816 |
.fa-github:before {
|
817 |
+
content: "\f09b";
|
818 |
}
|
819 |
+
|
820 |
.fa-unlock:before {
|
821 |
+
content: "\f09c";
|
822 |
}
|
823 |
+
|
824 |
.fa-credit-card:before {
|
825 |
+
content: "\f09d";
|
826 |
}
|
827 |
+
|
828 |
.fa-rss:before {
|
829 |
+
content: "\f09e";
|
830 |
}
|
831 |
+
|
832 |
.fa-hdd-o:before {
|
833 |
+
content: "\f0a0";
|
834 |
}
|
835 |
+
|
836 |
.fa-bullhorn:before {
|
837 |
+
content: "\f0a1";
|
838 |
}
|
839 |
+
|
840 |
.fa-bell:before {
|
841 |
+
content: "\f0f3";
|
842 |
}
|
843 |
+
|
844 |
.fa-certificate:before {
|
845 |
+
content: "\f0a3";
|
846 |
}
|
847 |
+
|
848 |
.fa-hand-o-right:before {
|
849 |
+
content: "\f0a4";
|
850 |
}
|
851 |
+
|
852 |
.fa-hand-o-left:before {
|
853 |
+
content: "\f0a5";
|
854 |
}
|
855 |
+
|
856 |
.fa-hand-o-up:before {
|
857 |
+
content: "\f0a6";
|
858 |
}
|
859 |
+
|
860 |
.fa-hand-o-down:before {
|
861 |
+
content: "\f0a7";
|
862 |
}
|
863 |
+
|
864 |
.fa-arrow-circle-left:before {
|
865 |
+
content: "\f0a8";
|
866 |
}
|
867 |
+
|
868 |
.fa-arrow-circle-right:before {
|
869 |
+
content: "\f0a9";
|
870 |
}
|
871 |
+
|
872 |
.fa-arrow-circle-up:before {
|
873 |
+
content: "\f0aa";
|
874 |
}
|
875 |
+
|
876 |
.fa-arrow-circle-down:before {
|
877 |
+
content: "\f0ab";
|
878 |
}
|
879 |
+
|
880 |
.fa-globe:before {
|
881 |
+
content: "\f0ac";
|
882 |
}
|
883 |
+
|
884 |
.fa-wrench:before {
|
885 |
+
content: "\f0ad";
|
886 |
}
|
887 |
+
|
888 |
.fa-tasks:before {
|
889 |
+
content: "\f0ae";
|
890 |
}
|
891 |
+
|
892 |
.fa-filter:before {
|
893 |
+
content: "\f0b0";
|
894 |
}
|
895 |
+
|
896 |
.fa-briefcase:before {
|
897 |
+
content: "\f0b1";
|
898 |
}
|
899 |
+
|
900 |
.fa-arrows-alt:before {
|
901 |
+
content: "\f0b2";
|
902 |
}
|
903 |
+
|
904 |
.fa-group:before,
|
905 |
.fa-users:before {
|
906 |
+
content: "\f0c0";
|
907 |
}
|
908 |
+
|
909 |
.fa-chain:before,
|
910 |
.fa-link:before {
|
911 |
+
content: "\f0c1";
|
912 |
}
|
913 |
+
|
914 |
.fa-cloud:before {
|
915 |
+
content: "\f0c2";
|
916 |
}
|
917 |
+
|
918 |
.fa-flask:before {
|
919 |
+
content: "\f0c3";
|
920 |
}
|
921 |
+
|
922 |
.fa-cut:before,
|
923 |
.fa-scissors:before {
|
924 |
+
content: "\f0c4";
|
925 |
}
|
926 |
+
|
927 |
.fa-copy:before,
|
928 |
.fa-files-o:before {
|
929 |
+
content: "\f0c5";
|
930 |
}
|
931 |
+
|
932 |
.fa-paperclip:before {
|
933 |
+
content: "\f0c6";
|
934 |
}
|
935 |
+
|
936 |
.fa-save:before,
|
937 |
.fa-floppy-o:before {
|
938 |
+
content: "\f0c7";
|
939 |
}
|
940 |
+
|
941 |
.fa-square:before {
|
942 |
+
content: "\f0c8";
|
943 |
}
|
944 |
+
|
945 |
.fa-bars:before {
|
946 |
+
content: "\f0c9";
|
947 |
}
|
948 |
+
|
949 |
.fa-list-ul:before {
|
950 |
+
content: "\f0ca";
|
951 |
}
|
952 |
+
|
953 |
.fa-list-ol:before {
|
954 |
+
content: "\f0cb";
|
955 |
}
|
956 |
+
|
957 |
.fa-strikethrough:before {
|
958 |
+
content: "\f0cc";
|
959 |
}
|
960 |
+
|
961 |
.fa-underline:before {
|
962 |
+
content: "\f0cd";
|
963 |
}
|
964 |
+
|
965 |
.fa-table:before {
|
966 |
+
content: "\f0ce";
|
967 |
}
|
968 |
+
|
969 |
.fa-magic:before {
|
970 |
+
content: "\f0d0";
|
971 |
}
|
972 |
+
|
973 |
.fa-truck:before {
|
974 |
+
content: "\f0d1";
|
975 |
}
|
976 |
+
|
977 |
.fa-pinterest:before {
|
978 |
+
content: "\f0d2";
|
979 |
}
|
980 |
+
|
981 |
.fa-pinterest-square:before {
|
982 |
+
content: "\f0d3";
|
983 |
}
|
984 |
+
|
985 |
.fa-google-plus-square:before {
|
986 |
+
content: "\f0d4";
|
987 |
}
|
988 |
+
|
989 |
.fa-google-plus:before {
|
990 |
+
content: "\f0d5";
|
991 |
}
|
992 |
+
|
993 |
.fa-money:before {
|
994 |
+
content: "\f0d6";
|
995 |
}
|
996 |
+
|
997 |
.fa-caret-down:before {
|
998 |
+
content: "\f0d7";
|
999 |
}
|
1000 |
+
|
1001 |
.fa-caret-up:before {
|
1002 |
+
content: "\f0d8";
|
1003 |
}
|
1004 |
+
|
1005 |
.fa-caret-left:before {
|
1006 |
+
content: "\f0d9";
|
1007 |
}
|
1008 |
+
|
1009 |
.fa-caret-right:before {
|
1010 |
+
content: "\f0da";
|
1011 |
}
|
1012 |
+
|
1013 |
.fa-columns:before {
|
1014 |
+
content: "\f0db";
|
1015 |
}
|
1016 |
+
|
1017 |
.fa-unsorted:before,
|
1018 |
.fa-sort:before {
|
1019 |
+
content: "\f0dc";
|
1020 |
}
|
1021 |
+
|
1022 |
.fa-sort-down:before,
|
1023 |
.fa-sort-asc:before {
|
1024 |
+
content: "\f0dd";
|
1025 |
}
|
1026 |
+
|
1027 |
.fa-sort-up:before,
|
1028 |
.fa-sort-desc:before {
|
1029 |
+
content: "\f0de";
|
1030 |
}
|
1031 |
+
|
1032 |
.fa-envelope:before {
|
1033 |
+
content: "\f0e0";
|
1034 |
}
|
1035 |
+
|
1036 |
.fa-linkedin:before {
|
1037 |
+
content: "\f0e1";
|
1038 |
}
|
1039 |
+
|
1040 |
.fa-rotate-left:before,
|
1041 |
.fa-undo:before {
|
1042 |
+
content: "\f0e2";
|
1043 |
}
|
1044 |
+
|
1045 |
.fa-legal:before,
|
1046 |
.fa-gavel:before {
|
1047 |
+
content: "\f0e3";
|
1048 |
}
|
1049 |
+
|
1050 |
.fa-dashboard:before,
|
1051 |
.fa-tachometer:before {
|
1052 |
+
content: "\f0e4";
|
1053 |
}
|
1054 |
+
|
1055 |
.fa-comment-o:before {
|
1056 |
+
content: "\f0e5";
|
1057 |
}
|
1058 |
+
|
1059 |
.fa-comments-o:before {
|
1060 |
+
content: "\f0e6";
|
1061 |
}
|
1062 |
+
|
1063 |
.fa-flash:before,
|
1064 |
.fa-bolt:before {
|
1065 |
+
content: "\f0e7";
|
1066 |
}
|
1067 |
+
|
1068 |
.fa-sitemap:before {
|
1069 |
+
content: "\f0e8";
|
1070 |
}
|
1071 |
+
|
1072 |
.fa-umbrella:before {
|
1073 |
+
content: "\f0e9";
|
1074 |
}
|
1075 |
+
|
1076 |
.fa-paste:before,
|
1077 |
.fa-clipboard:before {
|
1078 |
+
content: "\f0ea";
|
1079 |
}
|
1080 |
+
|
1081 |
.fa-lightbulb-o:before {
|
1082 |
+
content: "\f0eb";
|
1083 |
}
|
1084 |
+
|
1085 |
.fa-exchange:before {
|
1086 |
+
content: "\f0ec";
|
1087 |
}
|
1088 |
+
|
1089 |
.fa-cloud-download:before {
|
1090 |
+
content: "\f0ed";
|
1091 |
}
|
1092 |
+
|
1093 |
.fa-cloud-upload:before {
|
1094 |
+
content: "\f0ee";
|
1095 |
}
|
1096 |
+
|
1097 |
.fa-user-md:before {
|
1098 |
+
content: "\f0f0";
|
1099 |
}
|
1100 |
+
|
1101 |
.fa-stethoscope:before {
|
1102 |
+
content: "\f0f1";
|
1103 |
}
|
1104 |
+
|
1105 |
.fa-suitcase:before {
|
1106 |
+
content: "\f0f2";
|
1107 |
}
|
1108 |
+
|
1109 |
.fa-bell-o:before {
|
1110 |
+
content: "\f0a2";
|
1111 |
}
|
1112 |
+
|
1113 |
.fa-coffee:before {
|
1114 |
+
content: "\f0f4";
|
1115 |
}
|
1116 |
+
|
1117 |
.fa-cutlery:before {
|
1118 |
+
content: "\f0f5";
|
1119 |
}
|
1120 |
+
|
1121 |
.fa-file-text-o:before {
|
1122 |
+
content: "\f0f6";
|
1123 |
}
|
1124 |
+
|
1125 |
.fa-building-o:before {
|
1126 |
+
content: "\f0f7";
|
1127 |
}
|
1128 |
+
|
1129 |
.fa-hospital-o:before {
|
1130 |
+
content: "\f0f8";
|
1131 |
}
|
1132 |
+
|
1133 |
.fa-ambulance:before {
|
1134 |
+
content: "\f0f9";
|
1135 |
}
|
1136 |
+
|
1137 |
.fa-medkit:before {
|
1138 |
+
content: "\f0fa";
|
1139 |
}
|
1140 |
+
|
1141 |
.fa-fighter-jet:before {
|
1142 |
+
content: "\f0fb";
|
1143 |
}
|
1144 |
+
|
1145 |
.fa-beer:before {
|
1146 |
+
content: "\f0fc";
|
1147 |
}
|
1148 |
+
|
1149 |
.fa-h-square:before {
|
1150 |
+
content: "\f0fd";
|
1151 |
}
|
1152 |
+
|
1153 |
.fa-plus-square:before {
|
1154 |
+
content: "\f0fe";
|
1155 |
}
|
1156 |
+
|
1157 |
.fa-angle-double-left:before {
|
1158 |
+
content: "\f100";
|
1159 |
}
|
1160 |
+
|
1161 |
.fa-angle-double-right:before {
|
1162 |
+
content: "\f101";
|
1163 |
}
|
1164 |
+
|
1165 |
.fa-angle-double-up:before {
|
1166 |
+
content: "\f102";
|
1167 |
}
|
1168 |
+
|
1169 |
.fa-angle-double-down:before {
|
1170 |
+
content: "\f103";
|
1171 |
}
|
1172 |
+
|
1173 |
.fa-angle-left:before {
|
1174 |
+
content: "\f104";
|
1175 |
}
|
1176 |
+
|
1177 |
.fa-angle-right:before {
|
1178 |
+
content: "\f105";
|
1179 |
}
|
1180 |
+
|
1181 |
.fa-angle-up:before {
|
1182 |
+
content: "\f106";
|
1183 |
}
|
1184 |
+
|
1185 |
.fa-angle-down:before {
|
1186 |
+
content: "\f107";
|
1187 |
}
|
1188 |
+
|
1189 |
.fa-desktop:before {
|
1190 |
+
content: "\f108";
|
1191 |
}
|
1192 |
+
|
1193 |
.fa-laptop:before {
|
1194 |
+
content: "\f109";
|
1195 |
}
|
1196 |
+
|
1197 |
.fa-tablet:before {
|
1198 |
+
content: "\f10a";
|
1199 |
}
|
1200 |
+
|
1201 |
.fa-mobile-phone:before,
|
1202 |
.fa-mobile:before {
|
1203 |
+
content: "\f10b";
|
1204 |
}
|
1205 |
+
|
1206 |
.fa-circle-o:before {
|
1207 |
+
content: "\f10c";
|
1208 |
}
|
1209 |
+
|
1210 |
.fa-quote-left:before {
|
1211 |
+
content: "\f10d";
|
1212 |
}
|
1213 |
+
|
1214 |
.fa-quote-right:before {
|
1215 |
+
content: "\f10e";
|
1216 |
}
|
1217 |
+
|
1218 |
.fa-spinner:before {
|
1219 |
+
content: "\f110";
|
1220 |
}
|
1221 |
+
|
1222 |
.fa-circle:before {
|
1223 |
+
content: "\f111";
|
1224 |
}
|
1225 |
+
|
1226 |
.fa-mail-reply:before,
|
1227 |
.fa-reply:before {
|
1228 |
+
content: "\f112";
|
1229 |
}
|
1230 |
+
|
1231 |
.fa-github-alt:before {
|
1232 |
+
content: "\f113";
|
1233 |
}
|
1234 |
+
|
1235 |
.fa-folder-o:before {
|
1236 |
+
content: "\f114";
|
1237 |
}
|
1238 |
+
|
1239 |
.fa-folder-open-o:before {
|
1240 |
+
content: "\f115";
|
1241 |
}
|
1242 |
+
|
1243 |
.fa-smile-o:before {
|
1244 |
+
content: "\f118";
|
1245 |
}
|
1246 |
+
|
1247 |
.fa-frown-o:before {
|
1248 |
+
content: "\f119";
|
1249 |
}
|
1250 |
+
|
1251 |
.fa-meh-o:before {
|
1252 |
+
content: "\f11a";
|
1253 |
}
|
1254 |
+
|
1255 |
.fa-gamepad:before {
|
1256 |
+
content: "\f11b";
|
1257 |
}
|
1258 |
+
|
1259 |
.fa-keyboard-o:before {
|
1260 |
+
content: "\f11c";
|
1261 |
}
|
1262 |
+
|
1263 |
.fa-flag-o:before {
|
1264 |
+
content: "\f11d";
|
1265 |
}
|
1266 |
+
|
1267 |
.fa-flag-checkered:before {
|
1268 |
+
content: "\f11e";
|
1269 |
}
|
1270 |
+
|
1271 |
.fa-terminal:before {
|
1272 |
+
content: "\f120";
|
1273 |
}
|
1274 |
+
|
1275 |
.fa-code:before {
|
1276 |
+
content: "\f121";
|
1277 |
}
|
1278 |
+
|
1279 |
.fa-reply-all:before {
|
1280 |
+
content: "\f122";
|
1281 |
}
|
1282 |
+
|
1283 |
.fa-mail-reply-all:before {
|
1284 |
+
content: "\f122";
|
1285 |
}
|
1286 |
+
|
1287 |
.fa-star-half-empty:before,
|
1288 |
.fa-star-half-full:before,
|
1289 |
.fa-star-half-o:before {
|
1290 |
+
content: "\f123";
|
1291 |
}
|
1292 |
+
|
1293 |
.fa-location-arrow:before {
|
1294 |
+
content: "\f124";
|
1295 |
}
|
1296 |
+
|
1297 |
.fa-crop:before {
|
1298 |
+
content: "\f125";
|
1299 |
}
|
1300 |
+
|
1301 |
.fa-code-fork:before {
|
1302 |
+
content: "\f126";
|
1303 |
}
|
1304 |
+
|
1305 |
.fa-unlink:before,
|
1306 |
.fa-chain-broken:before {
|
1307 |
+
content: "\f127";
|
1308 |
}
|
1309 |
+
|
1310 |
.fa-question:before {
|
1311 |
+
content: "\f128";
|
1312 |
}
|
1313 |
+
|
1314 |
.fa-info:before {
|
1315 |
+
content: "\f129";
|
1316 |
}
|
1317 |
+
|
1318 |
.fa-exclamation:before {
|
1319 |
+
content: "\f12a";
|
1320 |
}
|
1321 |
+
|
1322 |
.fa-superscript:before {
|
1323 |
+
content: "\f12b";
|
1324 |
}
|
1325 |
+
|
1326 |
.fa-subscript:before {
|
1327 |
+
content: "\f12c";
|
1328 |
}
|
1329 |
+
|
1330 |
.fa-eraser:before {
|
1331 |
+
content: "\f12d";
|
1332 |
}
|
1333 |
+
|
1334 |
.fa-puzzle-piece:before {
|
1335 |
+
content: "\f12e";
|
1336 |
}
|
1337 |
+
|
1338 |
.fa-microphone:before {
|
1339 |
+
content: "\f130";
|
1340 |
}
|
1341 |
+
|
1342 |
.fa-microphone-slash:before {
|
1343 |
+
content: "\f131";
|
1344 |
}
|
1345 |
+
|
1346 |
.fa-shield:before {
|
1347 |
+
content: "\f132";
|
1348 |
}
|
1349 |
+
|
1350 |
.fa-calendar-o:before {
|
1351 |
+
content: "\f133";
|
1352 |
}
|
1353 |
+
|
1354 |
.fa-fire-extinguisher:before {
|
1355 |
+
content: "\f134";
|
1356 |
}
|
1357 |
+
|
1358 |
.fa-rocket:before {
|
1359 |
+
content: "\f135";
|
1360 |
}
|
1361 |
+
|
1362 |
.fa-maxcdn:before {
|
1363 |
+
content: "\f136";
|
1364 |
}
|
1365 |
+
|
1366 |
.fa-chevron-circle-left:before {
|
1367 |
+
content: "\f137";
|
1368 |
}
|
1369 |
+
|
1370 |
.fa-chevron-circle-right:before {
|
1371 |
+
content: "\f138";
|
1372 |
}
|
1373 |
+
|
1374 |
.fa-chevron-circle-up:before {
|
1375 |
+
content: "\f139";
|
1376 |
}
|
1377 |
+
|
1378 |
.fa-chevron-circle-down:before {
|
1379 |
+
content: "\f13a";
|
1380 |
}
|
1381 |
+
|
1382 |
.fa-html5:before {
|
1383 |
+
content: "\f13b";
|
1384 |
}
|
1385 |
+
|
1386 |
.fa-css3:before {
|
1387 |
+
content: "\f13c";
|
1388 |
}
|
1389 |
+
|
1390 |
.fa-anchor:before {
|
1391 |
+
content: "\f13d";
|
1392 |
}
|
1393 |
+
|
1394 |
.fa-unlock-alt:before {
|
1395 |
+
content: "\f13e";
|
1396 |
}
|
1397 |
+
|
1398 |
.fa-bullseye:before {
|
1399 |
+
content: "\f140";
|
1400 |
}
|
1401 |
+
|
1402 |
.fa-ellipsis-h:before {
|
1403 |
+
content: "\f141";
|
1404 |
}
|
1405 |
+
|
1406 |
.fa-ellipsis-v:before {
|
1407 |
+
content: "\f142";
|
1408 |
}
|
1409 |
+
|
1410 |
.fa-rss-square:before {
|
1411 |
+
content: "\f143";
|
1412 |
}
|
1413 |
+
|
1414 |
.fa-play-circle:before {
|
1415 |
+
content: "\f144";
|
1416 |
}
|
1417 |
+
|
1418 |
.fa-ticket:before {
|
1419 |
+
content: "\f145";
|
1420 |
}
|
1421 |
+
|
1422 |
.fa-minus-square:before {
|
1423 |
+
content: "\f146";
|
1424 |
}
|
1425 |
+
|
1426 |
.fa-minus-square-o:before {
|
1427 |
+
content: "\f147";
|
1428 |
}
|
1429 |
+
|
1430 |
.fa-level-up:before {
|
1431 |
+
content: "\f148";
|
1432 |
}
|
1433 |
+
|
1434 |
.fa-level-down:before {
|
1435 |
+
content: "\f149";
|
1436 |
}
|
1437 |
+
|
1438 |
.fa-check-square:before {
|
1439 |
+
content: "\f14a";
|
1440 |
}
|
1441 |
+
|
1442 |
.fa-pencil-square:before {
|
1443 |
+
content: "\f14b";
|
1444 |
}
|
1445 |
+
|
1446 |
.fa-external-link-square:before {
|
1447 |
+
content: "\f14c";
|
1448 |
}
|
1449 |
+
|
1450 |
.fa-share-square:before {
|
1451 |
+
content: "\f14d";
|
1452 |
}
|
1453 |
+
|
1454 |
.fa-compass:before {
|
1455 |
+
content: "\f14e";
|
1456 |
}
|
1457 |
+
|
1458 |
.fa-toggle-down:before,
|
1459 |
.fa-caret-square-o-down:before {
|
1460 |
+
content: "\f150";
|
1461 |
}
|
1462 |
+
|
1463 |
.fa-toggle-up:before,
|
1464 |
.fa-caret-square-o-up:before {
|
1465 |
+
content: "\f151";
|
1466 |
}
|
1467 |
+
|
1468 |
.fa-toggle-right:before,
|
1469 |
.fa-caret-square-o-right:before {
|
1470 |
+
content: "\f152";
|
1471 |
}
|
1472 |
+
|
1473 |
.fa-euro:before,
|
1474 |
.fa-eur:before {
|
1475 |
+
content: "\f153";
|
1476 |
}
|
1477 |
+
|
1478 |
.fa-gbp:before {
|
1479 |
+
content: "\f154";
|
1480 |
}
|
1481 |
+
|
1482 |
.fa-dollar:before,
|
1483 |
.fa-usd:before {
|
1484 |
+
content: "\f155";
|
1485 |
}
|
1486 |
+
|
1487 |
.fa-rupee:before,
|
1488 |
.fa-inr:before {
|
1489 |
+
content: "\f156";
|
1490 |
}
|
1491 |
+
|
1492 |
.fa-cny:before,
|
1493 |
.fa-rmb:before,
|
1494 |
.fa-yen:before,
|
1495 |
.fa-jpy:before {
|
1496 |
+
content: "\f157";
|
1497 |
}
|
1498 |
+
|
1499 |
.fa-ruble:before,
|
1500 |
.fa-rouble:before,
|
1501 |
.fa-rub:before {
|
1502 |
+
content: "\f158";
|
1503 |
}
|
1504 |
+
|
1505 |
.fa-won:before,
|
1506 |
.fa-krw:before {
|
1507 |
+
content: "\f159";
|
1508 |
}
|
1509 |
+
|
1510 |
.fa-bitcoin:before,
|
1511 |
.fa-btc:before {
|
1512 |
+
content: "\f15a";
|
1513 |
}
|
1514 |
+
|
1515 |
.fa-file:before {
|
1516 |
+
content: "\f15b";
|
1517 |
}
|
1518 |
+
|
1519 |
.fa-file-text:before {
|
1520 |
+
content: "\f15c";
|
1521 |
}
|
1522 |
+
|
1523 |
.fa-sort-alpha-asc:before {
|
1524 |
+
content: "\f15d";
|
1525 |
}
|
1526 |
+
|
1527 |
.fa-sort-alpha-desc:before {
|
1528 |
+
content: "\f15e";
|
1529 |
}
|
1530 |
+
|
1531 |
.fa-sort-amount-asc:before {
|
1532 |
+
content: "\f160";
|
1533 |
}
|
1534 |
+
|
1535 |
.fa-sort-amount-desc:before {
|
1536 |
+
content: "\f161";
|
1537 |
}
|
1538 |
+
|
1539 |
.fa-sort-numeric-asc:before {
|
1540 |
+
content: "\f162";
|
1541 |
}
|
1542 |
+
|
1543 |
.fa-sort-numeric-desc:before {
|
1544 |
+
content: "\f163";
|
1545 |
}
|
1546 |
+
|
1547 |
.fa-thumbs-up:before {
|
1548 |
+
content: "\f164";
|
1549 |
}
|
1550 |
+
|
1551 |
.fa-thumbs-down:before {
|
1552 |
+
content: "\f165";
|
1553 |
}
|
1554 |
+
|
1555 |
.fa-youtube-square:before {
|
1556 |
+
content: "\f166";
|
1557 |
}
|
1558 |
+
|
1559 |
.fa-youtube:before {
|
1560 |
+
content: "\f167";
|
1561 |
}
|
1562 |
+
|
1563 |
.fa-xing:before {
|
1564 |
+
content: "\f168";
|
1565 |
}
|
1566 |
+
|
1567 |
.fa-xing-square:before {
|
1568 |
+
content: "\f169";
|
1569 |
}
|
1570 |
+
|
1571 |
.fa-youtube-play:before {
|
1572 |
+
content: "\f16a";
|
1573 |
}
|
1574 |
+
|
1575 |
.fa-dropbox:before {
|
1576 |
+
content: "\f16b";
|
1577 |
}
|
1578 |
+
|
1579 |
.fa-stack-overflow:before {
|
1580 |
+
content: "\f16c";
|
1581 |
}
|
1582 |
+
|
1583 |
.fa-instagram:before {
|
1584 |
+
content: "\f16d";
|
1585 |
}
|
1586 |
+
|
1587 |
.fa-flickr:before {
|
1588 |
+
content: "\f16e";
|
1589 |
}
|
1590 |
+
|
1591 |
.fa-adn:before {
|
1592 |
+
content: "\f170";
|
1593 |
}
|
1594 |
+
|
1595 |
.fa-bitbucket:before {
|
1596 |
+
content: "\f171";
|
1597 |
}
|
1598 |
+
|
1599 |
.fa-bitbucket-square:before {
|
1600 |
+
content: "\f172";
|
1601 |
}
|
1602 |
+
|
1603 |
.fa-tumblr:before {
|
1604 |
+
content: "\f173";
|
1605 |
}
|
1606 |
+
|
1607 |
.fa-tumblr-square:before {
|
1608 |
+
content: "\f174";
|
1609 |
}
|
1610 |
+
|
1611 |
.fa-long-arrow-down:before {
|
1612 |
+
content: "\f175";
|
1613 |
}
|
1614 |
+
|
1615 |
.fa-long-arrow-up:before {
|
1616 |
+
content: "\f176";
|
1617 |
}
|
1618 |
+
|
1619 |
.fa-long-arrow-left:before {
|
1620 |
+
content: "\f177";
|
1621 |
}
|
1622 |
+
|
1623 |
.fa-long-arrow-right:before {
|
1624 |
+
content: "\f178";
|
1625 |
}
|
1626 |
+
|
1627 |
.fa-apple:before {
|
1628 |
+
content: "\f179";
|
1629 |
}
|
1630 |
+
|
1631 |
.fa-windows:before {
|
1632 |
+
content: "\f17a";
|
1633 |
}
|
1634 |
+
|
1635 |
.fa-android:before {
|
1636 |
+
content: "\f17b";
|
1637 |
}
|
1638 |
+
|
1639 |
.fa-linux:before {
|
1640 |
+
content: "\f17c";
|
1641 |
}
|
1642 |
+
|
1643 |
.fa-dribbble:before {
|
1644 |
+
content: "\f17d";
|
1645 |
}
|
1646 |
+
|
1647 |
.fa-skype:before {
|
1648 |
+
content: "\f17e";
|
1649 |
}
|
1650 |
+
|
1651 |
.fa-foursquare:before {
|
1652 |
+
content: "\f180";
|
1653 |
}
|
1654 |
+
|
1655 |
.fa-trello:before {
|
1656 |
+
content: "\f181";
|
1657 |
}
|
1658 |
+
|
1659 |
.fa-female:before {
|
1660 |
+
content: "\f182";
|
1661 |
}
|
1662 |
+
|
1663 |
.fa-male:before {
|
1664 |
+
content: "\f183";
|
1665 |
}
|
1666 |
+
|
1667 |
.fa-gittip:before {
|
1668 |
+
content: "\f184";
|
1669 |
}
|
1670 |
+
|
1671 |
.fa-sun-o:before {
|
1672 |
+
content: "\f185";
|
1673 |
}
|
1674 |
+
|
1675 |
.fa-moon-o:before {
|
1676 |
+
content: "\f186";
|
1677 |
}
|
1678 |
+
|
1679 |
.fa-archive:before {
|
1680 |
+
content: "\f187";
|
1681 |
}
|
1682 |
+
|
1683 |
.fa-bug:before {
|
1684 |
+
content: "\f188";
|
1685 |
}
|
1686 |
+
|
1687 |
.fa-vk:before {
|
1688 |
+
content: "\f189";
|
1689 |
}
|
1690 |
+
|
1691 |
.fa-weibo:before {
|
1692 |
+
content: "\f18a";
|
1693 |
}
|
1694 |
+
|
1695 |
.fa-renren:before {
|
1696 |
+
content: "\f18b";
|
1697 |
}
|
1698 |
+
|
1699 |
.fa-pagelines:before {
|
1700 |
+
content: "\f18c";
|
1701 |
}
|
1702 |
+
|
1703 |
.fa-stack-exchange:before {
|
1704 |
+
content: "\f18d";
|
1705 |
}
|
1706 |
+
|
1707 |
.fa-arrow-circle-o-right:before {
|
1708 |
+
content: "\f18e";
|
1709 |
}
|
1710 |
+
|
1711 |
.fa-arrow-circle-o-left:before {
|
1712 |
+
content: "\f190";
|
1713 |
}
|
1714 |
+
|
1715 |
.fa-toggle-left:before,
|
1716 |
.fa-caret-square-o-left:before {
|
1717 |
+
content: "\f191";
|
1718 |
}
|
1719 |
+
|
1720 |
.fa-dot-circle-o:before {
|
1721 |
+
content: "\f192";
|
1722 |
}
|
1723 |
+
|
1724 |
.fa-wheelchair:before {
|
1725 |
+
content: "\f193";
|
1726 |
}
|
1727 |
+
|
1728 |
.fa-vimeo-square:before {
|
1729 |
+
content: "\f194";
|
1730 |
}
|
1731 |
+
|
1732 |
.fa-turkish-lira:before,
|
1733 |
.fa-try:before {
|
1734 |
+
content: "\f195";
|
1735 |
}
|
1736 |
+
|
1737 |
.fa-plus-square-o:before {
|
1738 |
+
content: "\f196";
|
1739 |
}
|
1740 |
|
1741 |
|
css/jquery-ui.css
CHANGED
@@ -6,476 +6,1751 @@
|
|
6 |
|
7 |
/* Layout helpers
|
8 |
----------------------------------*/
|
9 |
-
.ui-helper-hidden {
|
10 |
-
|
11 |
-
|
12 |
-
|
13 |
-
.ui-helper-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
14 |
/* required comment for clearfix to work in Opera \*/
|
15 |
-
* html .ui-helper-clearfix {
|
16 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
17 |
/* end clearfix */
|
18 |
-
.ui-helper-zfix {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
19 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
20 |
|
21 |
-
|
22 |
-
|
23 |
-
|
|
|
|
|
24 |
|
|
|
|
|
|
|
|
|
|
|
|
|
25 |
|
26 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
27 |
----------------------------------*/
|
|
|
|
|
|
|
28 |
|
29 |
-
|
30 |
-
|
|
|
|
|
|
|
|
|
31 |
|
|
|
|
|
|
|
32 |
|
33 |
-
|
34 |
-
|
|
|
|
|
|
|
|
|
|
|
35 |
|
36 |
-
|
37 |
-
|
|
|
|
|
|
|
|
|
|
|
38 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
39 |
|
40 |
-
|
41 |
-
|
42 |
-
|
43 |
-
|
44 |
-
|
45 |
-
|
|
|
46 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
47 |
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
|
52 |
-
|
53 |
-
|
54 |
-
|
55 |
-
.ui-widget-header { border: 1px solid #aaaaaa; background: #cccccc url(images/ui-bg_highlight-soft_75_cccccc_1x100.png) 50% 50% repeat-x; color: #222222; font-weight: bold; }
|
56 |
-
.ui-widget-header a { color: #222222; }
|
57 |
|
58 |
-
|
59 |
-
|
60 |
-
|
61 |
-
|
62 |
-
|
63 |
-
|
64 |
-
|
65 |
-
.ui-state-active a, .ui-state-active a:link, .ui-state-active a:visited { color: #212121; text-decoration: none; }
|
66 |
-
.ui-widget :active { outline: none; }
|
67 |
|
68 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
69 |
----------------------------------*/
|
70 |
-
.ui-
|
71 |
-
|
72 |
-
|
73 |
-
.ui-state-error a, .ui-widget-content .ui-state-error a, .ui-widget-header .ui-state-error a { color: #cd0a0a; }
|
74 |
-
.ui-state-error-text, .ui-widget-content .ui-state-error-text, .ui-widget-header .ui-state-error-text { color: #cd0a0a; }
|
75 |
-
.ui-priority-primary, .ui-widget-content .ui-priority-primary, .ui-widget-header .ui-priority-primary { font-weight: bold; }
|
76 |
-
.ui-priority-secondary, .ui-widget-content .ui-priority-secondary, .ui-widget-header .ui-priority-secondary { opacity: .7; filter:Alpha(Opacity=70); font-weight: normal; }
|
77 |
-
.ui-state-disabled, .ui-widget-content .ui-state-disabled, .ui-widget-header .ui-state-disabled { opacity: .35; filter:Alpha(Opacity=35); background-image: none; }
|
78 |
|
79 |
-
/*
|
80 |
----------------------------------*/
|
|
|
|
|
|
|
|
|
|
|
|
|
81 |
|
82 |
-
|
83 |
-
|
84 |
-
|
85 |
-
.ui-widget-header .ui-icon {background-image: url(images/ui-icons_222222_256x240.png); }
|
86 |
-
.ui-state-default .ui-icon { background-image: url(images/ui-icons_888888_256x240.png); }
|
87 |
-
.ui-state-hover .ui-icon, .ui-state-focus .ui-icon {background-image: url(images/ui-icons_454545_256x240.png); }
|
88 |
-
.ui-state-active .ui-icon {background-image: url(images/ui-icons_454545_256x240.png); }
|
89 |
-
.ui-state-highlight .ui-icon {background-image: url(images/ui-icons_2e83ff_256x240.png); }
|
90 |
-
.ui-state-error .ui-icon, .ui-state-error-text .ui-icon {background-image: url(images/ui-icons_cd0a0a_256x240.png); }
|
91 |
|
92 |
-
|
93 |
-
|
94 |
-
|
95 |
-
.ui-icon-carat-1-e { background-position: -32px 0; }
|
96 |
-
.ui-icon-carat-1-se { background-position: -48px 0; }
|
97 |
-
.ui-icon-carat-1-s { background-position: -64px 0; }
|
98 |
-
.ui-icon-carat-1-sw { background-position: -80px 0; }
|
99 |
-
.ui-icon-carat-1-w { background-position: -96px 0; }
|
100 |
-
.ui-icon-carat-1-nw { background-position: -112px 0; }
|
101 |
-
.ui-icon-carat-2-n-s { background-position: -128px 0; }
|
102 |
-
.ui-icon-carat-2-e-w { background-position: -144px 0; }
|
103 |
-
.ui-icon-triangle-1-n { background-position: 0 -16px; }
|
104 |
-
.ui-icon-triangle-1-ne { background-position: -16px -16px; }
|
105 |
-
.ui-icon-triangle-1-e { background-position: -32px -16px; }
|
106 |
-
.ui-icon-triangle-1-se { background-position: -48px -16px; }
|
107 |
-
.ui-icon-triangle-1-s { background-position: -64px -16px; }
|
108 |
-
.ui-icon-triangle-1-sw { background-position: -80px -16px; }
|
109 |
-
.ui-icon-triangle-1-w { background-position: -96px -16px; }
|
110 |
-
.ui-icon-triangle-1-nw { background-position: -112px -16px; }
|
111 |
-
.ui-icon-triangle-2-n-s { background-position: -128px -16px; }
|
112 |
-
.ui-icon-triangle-2-e-w { background-position: -144px -16px; }
|
113 |
-
.ui-icon-arrow-1-n { background-position: 0 -32px; }
|
114 |
-
.ui-icon-arrow-1-ne { background-position: -16px -32px; }
|
115 |
-
.ui-icon-arrow-1-e { background-position: -32px -32px; }
|
116 |
-
.ui-icon-arrow-1-se { background-position: -48px -32px; }
|
117 |
-
.ui-icon-arrow-1-s { background-position: -64px -32px; }
|
118 |
-
.ui-icon-arrow-1-sw { background-position: -80px -32px; }
|
119 |
-
.ui-icon-arrow-1-w { background-position: -96px -32px; }
|
120 |
-
.ui-icon-arrow-1-nw { background-position: -112px -32px; }
|
121 |
-
.ui-icon-arrow-2-n-s { background-position: -128px -32px; }
|
122 |
-
.ui-icon-arrow-2-ne-sw { background-position: -144px -32px; }
|
123 |
-
.ui-icon-arrow-2-e-w { background-position: -160px -32px; }
|
124 |
-
.ui-icon-arrow-2-se-nw { background-position: -176px -32px; }
|
125 |
-
.ui-icon-arrowstop-1-n { background-position: -192px -32px; }
|
126 |
-
.ui-icon-arrowstop-1-e { background-position: -208px -32px; }
|
127 |
-
.ui-icon-arrowstop-1-s { background-position: -224px -32px; }
|
128 |
-
.ui-icon-arrowstop-1-w { background-position: -240px -32px; }
|
129 |
-
.ui-icon-arrowthick-1-n { background-position: 0 -48px; }
|
130 |
-
.ui-icon-arrowthick-1-ne { background-position: -16px -48px; }
|
131 |
-
.ui-icon-arrowthick-1-e { background-position: -32px -48px; }
|
132 |
-
.ui-icon-arrowthick-1-se { background-position: -48px -48px; }
|
133 |
-
.ui-icon-arrowthick-1-s { background-position: -64px -48px; }
|
134 |
-
.ui-icon-arrowthick-1-sw { background-position: -80px -48px; }
|
135 |
-
.ui-icon-arrowthick-1-w { background-position: -96px -48px; }
|
136 |
-
.ui-icon-arrowthick-1-nw { background-position: -112px -48px; }
|
137 |
-
.ui-icon-arrowthick-2-n-s { background-position: -128px -48px; }
|
138 |
-
.ui-icon-arrowthick-2-ne-sw { background-position: -144px -48px; }
|
139 |
-
.ui-icon-arrowthick-2-e-w { background-position: -160px -48px; }
|
140 |
-
.ui-icon-arrowthick-2-se-nw { background-position: -176px -48px; }
|
141 |
-
.ui-icon-arrowthickstop-1-n { background-position: -192px -48px; }
|
142 |
-
.ui-icon-arrowthickstop-1-e { background-position: -208px -48px; }
|
143 |
-
.ui-icon-arrowthickstop-1-s { background-position: -224px -48px; }
|
144 |
-
.ui-icon-arrowthickstop-1-w { background-position: -240px -48px; }
|
145 |
-
.ui-icon-arrowreturnthick-1-w { background-position: 0 -64px; }
|
146 |
-
.ui-icon-arrowreturnthick-1-n { background-position: -16px -64px; }
|
147 |
-
.ui-icon-arrowreturnthick-1-e { background-position: -32px -64px; }
|
148 |
-
.ui-icon-arrowreturnthick-1-s { background-position: -48px -64px; }
|
149 |
-
.ui-icon-arrowreturn-1-w { background-position: -64px -64px; }
|
150 |
-
.ui-icon-arrowreturn-1-n { background-position: -80px -64px; }
|
151 |
-
.ui-icon-arrowreturn-1-e { background-position: -96px -64px; }
|
152 |
-
.ui-icon-arrowreturn-1-s { background-position: -112px -64px; }
|
153 |
-
.ui-icon-arrowrefresh-1-w { background-position: -128px -64px; }
|
154 |
-
.ui-icon-arrowrefresh-1-n { background-position: -144px -64px; }
|
155 |
-
.ui-icon-arrowrefresh-1-e { background-position: -160px -64px; }
|
156 |
-
.ui-icon-arrowrefresh-1-s { background-position: -176px -64px; }
|
157 |
-
.ui-icon-arrow-4 { background-position: 0 -80px; }
|
158 |
-
.ui-icon-arrow-4-diag { background-position: -16px -80px; }
|
159 |
-
.ui-icon-extlink { background-position: -32px -80px; }
|
160 |
-
.ui-icon-newwin { background-position: -48px -80px; }
|
161 |
-
.ui-icon-refresh { background-position: -64px -80px; }
|
162 |
-
.ui-icon-shuffle { background-position: -80px -80px; }
|
163 |
-
.ui-icon-transfer-e-w { background-position: -96px -80px; }
|
164 |
-
.ui-icon-transferthick-e-w { background-position: -112px -80px; }
|
165 |
-
.ui-icon-folder-collapsed { background-position: 0 -96px; }
|
166 |
-
.ui-icon-folder-open { background-position: -16px -96px; }
|
167 |
-
.ui-icon-document { background-position: -32px -96px; }
|
168 |
-
.ui-icon-document-b { background-position: -48px -96px; }
|
169 |
-
.ui-icon-note { background-position: -64px -96px; }
|
170 |
-
.ui-icon-mail-closed { background-position: -80px -96px; }
|
171 |
-
.ui-icon-mail-open { background-position: -96px -96px; }
|
172 |
-
.ui-icon-suitcase { background-position: -112px -96px; }
|
173 |
-
.ui-icon-comment { background-position: -128px -96px; }
|
174 |
-
.ui-icon-person { background-position: -144px -96px; }
|
175 |
-
.ui-icon-print { background-position: -160px -96px; }
|
176 |
-
.ui-icon-trash { background-position: -176px -96px; }
|
177 |
-
.ui-icon-locked { background-position: -192px -96px; }
|
178 |
-
.ui-icon-unlocked { background-position: -208px -96px; }
|
179 |
-
.ui-icon-bookmark { background-position: -224px -96px; }
|
180 |
-
.ui-icon-tag { background-position: -240px -96px; }
|
181 |
-
.ui-icon-home { background-position: 0 -112px; }
|
182 |
-
.ui-icon-flag { background-position: -16px -112px; }
|
183 |
-
.ui-icon-calendar { background-position: -32px -112px; }
|
184 |
-
.ui-icon-cart { background-position: -48px -112px; }
|
185 |
-
.ui-icon-pencil { background-position: -64px -112px; }
|
186 |
-
.ui-icon-clock { background-position: -80px -112px; }
|
187 |
-
.ui-icon-disk { background-position: -96px -112px; }
|
188 |
-
.ui-icon-calculator { background-position: -112px -112px; }
|
189 |
-
.ui-icon-zoomin { background-position: -128px -112px; }
|
190 |
-
.ui-icon-zoomout { background-position: -144px -112px; }
|
191 |
-
.ui-icon-search { background-position: -160px -112px; }
|
192 |
-
.ui-icon-wrench { background-position: -176px -112px; }
|
193 |
-
.ui-icon-gear { background-position: -192px -112px; }
|
194 |
-
.ui-icon-heart { background-position: -208px -112px; }
|
195 |
-
.ui-icon-star { background-position: -224px -112px; }
|
196 |
-
.ui-icon-link { background-position: -240px -112px; }
|
197 |
-
.ui-icon-cancel { background-position: 0 -128px; }
|
198 |
-
.ui-icon-plus { background-position: -16px -128px; }
|
199 |
-
.ui-icon-plusthick { background-position: -32px -128px; }
|
200 |
-
.ui-icon-minus { background-position: -48px -128px; }
|
201 |
-
.ui-icon-minusthick { background-position: -64px -128px; }
|
202 |
-
.ui-icon-close { background-position: -80px -128px; }
|
203 |
-
.ui-icon-closethick { background-position: -96px -128px; }
|
204 |
-
.ui-icon-key { background-position: -112px -128px; }
|
205 |
-
.ui-icon-lightbulb { background-position: -128px -128px; }
|
206 |
-
.ui-icon-scissors { background-position: -144px -128px; }
|
207 |
-
.ui-icon-clipboard { background-position: -160px -128px; }
|
208 |
-
.ui-icon-copy { background-position: -176px -128px; }
|
209 |
-
.ui-icon-contact { background-position: -192px -128px; }
|
210 |
-
.ui-icon-image { background-position: -208px -128px; }
|
211 |
-
.ui-icon-video { background-position: -224px -128px; }
|
212 |
-
.ui-icon-script { background-position: -240px -128px; }
|
213 |
-
.ui-icon-alert { background-position: 0 -144px; }
|
214 |
-
.ui-icon-info { background-position: -16px -144px; }
|
215 |
-
.ui-icon-notice { background-position: -32px -144px; }
|
216 |
-
.ui-icon-help { background-position: -48px -144px; }
|
217 |
-
.ui-icon-check { background-position: -64px -144px; }
|
218 |
-
.ui-icon-bullet { background-position: -80px -144px; }
|
219 |
-
.ui-icon-radio-off { background-position: -96px -144px; }
|
220 |
-
.ui-icon-radio-on { background-position: -112px -144px; }
|
221 |
-
.ui-icon-pin-w { background-position: -128px -144px; }
|
222 |
-
.ui-icon-pin-s { background-position: -144px -144px; }
|
223 |
-
.ui-icon-play { background-position: 0 -160px; }
|
224 |
-
.ui-icon-pause { background-position: -16px -160px; }
|
225 |
-
.ui-icon-seek-next { background-position: -32px -160px; }
|
226 |
-
.ui-icon-seek-prev { background-position: -48px -160px; }
|
227 |
-
.ui-icon-seek-end { background-position: -64px -160px; }
|
228 |
-
.ui-icon-seek-start { background-position: -80px -160px; }
|
229 |
-
/* ui-icon-seek-first is deprecated, use ui-icon-seek-start instead */
|
230 |
-
.ui-icon-seek-first { background-position: -80px -160px; }
|
231 |
-
.ui-icon-stop { background-position: -96px -160px; }
|
232 |
-
.ui-icon-eject { background-position: -112px -160px; }
|
233 |
-
.ui-icon-volume-off { background-position: -128px -160px; }
|
234 |
-
.ui-icon-volume-on { background-position: -144px -160px; }
|
235 |
-
.ui-icon-power { background-position: 0 -176px; }
|
236 |
-
.ui-icon-signal-diag { background-position: -16px -176px; }
|
237 |
-
.ui-icon-signal { background-position: -32px -176px; }
|
238 |
-
.ui-icon-battery-0 { background-position: -48px -176px; }
|
239 |
-
.ui-icon-battery-1 { background-position: -64px -176px; }
|
240 |
-
.ui-icon-battery-2 { background-position: -80px -176px; }
|
241 |
-
.ui-icon-battery-3 { background-position: -96px -176px; }
|
242 |
-
.ui-icon-circle-plus { background-position: 0 -192px; }
|
243 |
-
.ui-icon-circle-minus { background-position: -16px -192px; }
|
244 |
-
.ui-icon-circle-close { background-position: -32px -192px; }
|
245 |
-
.ui-icon-circle-triangle-e { background-position: -48px -192px; }
|
246 |
-
.ui-icon-circle-triangle-s { background-position: -64px -192px; }
|
247 |
-
.ui-icon-circle-triangle-w { background-position: -80px -192px; }
|
248 |
-
.ui-icon-circle-triangle-n { background-position: -96px -192px; }
|
249 |
-
.ui-icon-circle-arrow-e { background-position: -112px -192px; }
|
250 |
-
.ui-icon-circle-arrow-s { background-position: -128px -192px; }
|
251 |
-
.ui-icon-circle-arrow-w { background-position: -144px -192px; }
|
252 |
-
.ui-icon-circle-arrow-n { background-position: -160px -192px; }
|
253 |
-
.ui-icon-circle-zoomin { background-position: -176px -192px; }
|
254 |
-
.ui-icon-circle-zoomout { background-position: -192px -192px; }
|
255 |
-
.ui-icon-circle-check { background-position: -208px -192px; }
|
256 |
-
.ui-icon-circlesmall-plus { background-position: 0 -208px; }
|
257 |
-
.ui-icon-circlesmall-minus { background-position: -16px -208px; }
|
258 |
-
.ui-icon-circlesmall-close { background-position: -32px -208px; }
|
259 |
-
.ui-icon-squaresmall-plus { background-position: -48px -208px; }
|
260 |
-
.ui-icon-squaresmall-minus { background-position: -64px -208px; }
|
261 |
-
.ui-icon-squaresmall-close { background-position: -80px -208px; }
|
262 |
-
.ui-icon-grip-dotted-vertical { background-position: 0 -224px; }
|
263 |
-
.ui-icon-grip-dotted-horizontal { background-position: -16px -224px; }
|
264 |
-
.ui-icon-grip-solid-vertical { background-position: -32px -224px; }
|
265 |
-
.ui-icon-grip-solid-horizontal { background-position: -48px -224px; }
|
266 |
-
.ui-icon-gripsmall-diagonal-se { background-position: -64px -224px; }
|
267 |
-
.ui-icon-grip-diagonal-se { background-position: -80px -224px; }
|
268 |
|
|
|
|
|
|
|
|
|
|
|
269 |
|
270 |
-
/*
|
271 |
-
|
|
|
|
|
272 |
|
273 |
-
|
274 |
-
|
275 |
-
|
276 |
-
.ui-corner-bl { -moz-border-radius-bottomleft: 4px; -webkit-border-bottom-left-radius: 4px; border-bottom-left-radius: 4px; }
|
277 |
-
.ui-corner-br { -moz-border-radius-bottomright: 4px; -webkit-border-bottom-right-radius: 4px; border-bottom-right-radius: 4px; }
|
278 |
-
.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; }
|
279 |
-
.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; }
|
280 |
-
.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; }
|
281 |
-
.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; }
|
282 |
-
.ui-corner-all { -moz-border-radius: 4px; -webkit-border-radius: 4px; border-radius: 4px; }
|
283 |
|
284 |
-
|
285 |
-
|
286 |
-
|
287 |
-
|
288 |
-
|
289 |
-
|
290 |
-
|
291 |
-
.ui-
|
292 |
-
|
293 |
-
|
294 |
-
|
295 |
-
|
296 |
-
|
297 |
-
|
298 |
-
|
299 |
-
|
300 |
-
|
301 |
-
|
302 |
-
|
303 |
-
.ui-accordion .ui-accordion-
|
304 |
-
|
305 |
-
|
306 |
-
|
307 |
-
/*
|
308 |
-
.ui-accordion a { zoom: 1; }
|
309 |
-
.ui-accordion-icons .ui-accordion-header a { padding-left: 2.2em; }
|
310 |
-
.ui-accordion .ui-accordion-header .ui-icon { position: absolute; left: .5em; top: 50%; margin-top: -8px; }
|
311 |
-
.ui-accordion .ui-accordion-content { padding: 1em 2.2em; border-top: 0; margin-top: -2px; position: relative; top: 1px; margin-bottom: 2px; overflow: auto; display: none; zoom: 1; }
|
312 |
-
.ui-accordion .ui-accordion-content-active { display: block; }/* Autocomplete
|
313 |
----------------------------------*/
|
314 |
-
.ui-autocomplete {
|
315 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
316 |
|
317 |
/* workarounds */
|
318 |
-
* html .ui-autocomplete {
|
|
|
|
|
|
|
|
|
319 |
|
320 |
/* Menu
|
321 |
----------------------------------*/
|
322 |
.ui-menu {
|
323 |
-
|
324 |
-
|
325 |
-
|
326 |
-
|
327 |
}
|
|
|
328 |
.ui-menu .ui-menu {
|
329 |
-
|
330 |
}
|
|
|
331 |
.ui-menu .ui-menu-item {
|
332 |
-
|
333 |
-
|
334 |
-
|
335 |
-
|
336 |
-
|
337 |
-
|
338 |
}
|
|
|
339 |
.ui-menu .ui-menu-item a {
|
340 |
-
|
341 |
-
|
342 |
-
|
343 |
-
|
344 |
-
|
345 |
}
|
|
|
346 |
.ui-menu .ui-menu-item a.ui-state-hover,
|
347 |
.ui-menu .ui-menu-item a.ui-state-active {
|
348 |
-
|
349 |
-
|
350 |
}
|
|
|
351 |
/* Button
|
352 |
----------------------------------*/
|
353 |
|
354 |
-
.ui-button {
|
355 |
-
|
356 |
-
|
357 |
-
|
358 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
359 |
|
360 |
/*button text element */
|
361 |
-
.ui-button .ui-button-text {
|
362 |
-
|
363 |
-
|
364 |
-
|
365 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
366 |
/* no icon support for input elements, provide padding by default */
|
367 |
-
input.ui-button {
|
|
|
|
|
368 |
|
369 |
/*button icon element(s) */
|
370 |
-
.ui-button-icon-only .ui-icon, .ui-button-text-icon .ui-icon, .ui-button-text-icons .ui-icon, .ui-button-icons-only .ui-icon {
|
371 |
-
|
372 |
-
|
373 |
-
|
|
|
374 |
|
375 |
-
|
376 |
-
|
377 |
-
|
|
|
378 |
|
379 |
-
|
380 |
-
|
|
|
|
|
|
|
|
|
|
|
381 |
|
|
|
|
|
|
|
|
|
382 |
|
|
|
|
|
|
|
|
|
383 |
|
|
|
|
|
|
|
|
|
|
|
384 |
|
|
|
385 |
|
386 |
/* Dialog
|
387 |
----------------------------------*/
|
388 |
-
.ui-dialog {
|
389 |
-
|
390 |
-
|
391 |
-
|
392 |
-
|
393 |
-
|
394 |
-
|
395 |
-
.ui-dialog .ui-dialog-
|
396 |
-
|
397 |
-
|
398 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
399 |
/* Slider
|
400 |
----------------------------------*/
|
401 |
-
.ui-slider {
|
402 |
-
|
403 |
-
|
404 |
-
|
405 |
-
|
406 |
-
.ui-slider
|
407 |
-
|
408 |
-
|
409 |
-
|
410 |
-
|
411 |
-
|
412 |
-
|
413 |
-
|
414 |
-
.ui-slider
|
415 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
416 |
----------------------------------*/
|
417 |
-
.ui-tabs {
|
418 |
-
|
419 |
-
|
420 |
-
|
421 |
-
|
422 |
-
|
423 |
-
|
424 |
-
.ui-tabs .ui-tabs-
|
425 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
426 |
/* Datepicker
|
427 |
----------------------------------*/
|
428 |
-
.ui-datepicker {
|
429 |
-
|
430 |
-
|
431 |
-
|
432 |
-
|
433 |
-
.ui-datepicker .ui-datepicker-
|
434 |
-
|
435 |
-
|
436 |
-
|
437 |
-
|
438 |
-
.ui-datepicker .ui-datepicker-
|
439 |
-
|
440 |
-
|
441 |
-
|
442 |
-
|
443 |
-
|
444 |
-
|
445 |
-
.ui-datepicker
|
446 |
-
|
447 |
-
|
448 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
449 |
|
450 |
/* with multiple calendars */
|
451 |
-
.ui-datepicker.ui-datepicker-multi {
|
452 |
-
|
453 |
-
|
454 |
-
|
455 |
-
.ui-datepicker-multi
|
456 |
-
|
457 |
-
|
458 |
-
|
459 |
-
.ui-datepicker-multi .ui-datepicker-
|
460 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
461 |
|
462 |
/* RTL support */
|
463 |
-
.ui-datepicker-rtl {
|
464 |
-
|
465 |
-
|
466 |
-
|
467 |
-
.ui-datepicker-rtl .ui-datepicker-
|
468 |
-
|
469 |
-
|
470 |
-
|
471 |
-
|
472 |
-
.ui-datepicker-rtl .ui-datepicker-
|
473 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
474 |
|
475 |
/* IE6 IFRAME FIX (taken from datepicker 1.5.3 */
|
476 |
.ui-datepicker-cover {
|
477 |
display: none; /*sorry for IE5*/
|
478 |
-
display/**/: block; /*sorry for IE5*/
|
479 |
position: absolute; /*must have*/
|
480 |
z-index: -1; /*must have*/
|
481 |
filter: mask(); /*must have*/
|
@@ -483,7 +1758,16 @@ button.ui-button::-moz-focus-inner { border: 0; padding: 0; } /* reset extra pad
|
|
483 |
left: -4px; /*must have*/
|
484 |
width: 200px; /*must have*/
|
485 |
height: 200px; /*must have*/
|
486 |
-
}
|
|
|
|
|
487 |
----------------------------------*/
|
488 |
-
.ui-progressbar {
|
489 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
6 |
|
7 |
/* Layout helpers
|
8 |
----------------------------------*/
|
9 |
+
.ui-helper-hidden {
|
10 |
+
display: none;
|
11 |
+
}
|
12 |
+
|
13 |
+
.ui-helper-hidden-accessible {
|
14 |
+
position: absolute;
|
15 |
+
left: -99999999px;
|
16 |
+
}
|
17 |
+
|
18 |
+
.ui-helper-reset {
|
19 |
+
margin: 0;
|
20 |
+
padding: 0;
|
21 |
+
border: 0;
|
22 |
+
outline: 0;
|
23 |
+
line-height: 1.3;
|
24 |
+
text-decoration: none;
|
25 |
+
font-size: 100%;
|
26 |
+
list-style: none;
|
27 |
+
}
|
28 |
+
|
29 |
+
.ui-helper-clearfix:after {
|
30 |
+
content: ".";
|
31 |
+
display: block;
|
32 |
+
height: 0;
|
33 |
+
clear: both;
|
34 |
+
visibility: hidden;
|
35 |
+
}
|
36 |
+
|
37 |
+
.ui-helper-clearfix {
|
38 |
+
display: inline-block;
|
39 |
+
}
|
40 |
+
|
41 |
/* required comment for clearfix to work in Opera \*/
|
42 |
+
* html .ui-helper-clearfix {
|
43 |
+
height: 1%;
|
44 |
+
}
|
45 |
+
|
46 |
+
.ui-helper-clearfix {
|
47 |
+
display: block;
|
48 |
+
}
|
49 |
+
|
50 |
/* end clearfix */
|
51 |
+
.ui-helper-zfix {
|
52 |
+
width: 100%;
|
53 |
+
height: 100%;
|
54 |
+
top: 0;
|
55 |
+
left: 0;
|
56 |
+
position: absolute;
|
57 |
+
opacity: 0;
|
58 |
+
filter: Alpha(Opacity=0);
|
59 |
+
}
|
60 |
+
|
61 |
+
/* Interaction Cues
|
62 |
+
----------------------------------*/
|
63 |
+
.ui-state-disabled {
|
64 |
+
cursor: default !important;
|
65 |
+
}
|
66 |
+
|
67 |
+
/* Icons
|
68 |
+
----------------------------------*/
|
69 |
+
|
70 |
+
/* states and images */
|
71 |
+
.ui-icon {
|
72 |
+
display: block;
|
73 |
+
text-indent: -99999px;
|
74 |
+
overflow: hidden;
|
75 |
+
background-repeat: no-repeat;
|
76 |
+
}
|
77 |
+
|
78 |
+
/* Misc visuals
|
79 |
+
----------------------------------*/
|
80 |
+
|
81 |
+
/* Overlays */
|
82 |
+
.ui-widget-overlay {
|
83 |
+
position: absolute;
|
84 |
+
top: 0;
|
85 |
+
left: 0;
|
86 |
+
width: 100%;
|
87 |
+
height: 100%;
|
88 |
+
}
|
89 |
+
|
90 |
+
/*
|
91 |
+
* jQuery UI CSS Framework
|
92 |
+
* Copyright (c) 2010 AUTHORS.txt (http://jqueryui.com/about)
|
93 |
+
* Dual licensed under the MIT (MIT-LICENSE.txt) and GPL (GPL-LICENSE.txt) licenses.
|
94 |
+
* To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=Verdana,Arial,sans-serif&fwDefault=normal&fsDefault=1.1em&cornerRadius=4px&bgColorHeader=cccccc&bgTextureHeader=03_highlight_soft.png&bgImgOpacityHeader=75&borderColorHeader=aaaaaa&fcHeader=222222&iconColorHeader=222222&bgColorContent=ffffff&bgTextureContent=01_flat.png&bgImgOpacityContent=75&borderColorContent=aaaaaa&fcContent=222222&iconColorContent=222222&bgColorDefault=e6e6e6&bgTextureDefault=02_glass.png&bgImgOpacityDefault=75&borderColorDefault=d3d3d3&fcDefault=555555&iconColorDefault=888888&bgColorHover=dadada&bgTextureHover=02_glass.png&bgImgOpacityHover=75&borderColorHover=999999&fcHover=212121&iconColorHover=454545&bgColorActive=ffffff&bgTextureActive=02_glass.png&bgImgOpacityActive=65&borderColorActive=aaaaaa&fcActive=212121&iconColorActive=454545&bgColorHighlight=fbf9ee&bgTextureHighlight=02_glass.png&bgImgOpacityHighlight=55&borderColorHighlight=fcefa1&fcHighlight=363636&iconColorHighlight=2e83ff&bgColorError=fef1ec&bgTextureError=02_glass.png&bgImgOpacityError=95&borderColorError=cd0a0a&fcError=cd0a0a&iconColorError=cd0a0a&bgColorOverlay=aaaaaa&bgTextureOverlay=01_flat.png&bgImgOpacityOverlay=0&opacityOverlay=30&bgColorShadow=aaaaaa&bgTextureShadow=01_flat.png&bgImgOpacityShadow=0&opacityShadow=30&thicknessShadow=8px&offsetTopShadow=-8px&offsetLeftShadow=-8px&cornerRadiusShadow=8px
|
95 |
+
*/
|
96 |
+
|
97 |
+
/* Component containers
|
98 |
+
----------------------------------*/
|
99 |
+
.ui-widget {
|
100 |
+
font-family: Verdana, Arial, sans-serif;
|
101 |
+
font-size: 1.1em;
|
102 |
+
}
|
103 |
+
|
104 |
+
.ui-widget .ui-widget {
|
105 |
+
font-size: 1em;
|
106 |
+
}
|
107 |
+
|
108 |
+
.ui-widget input, .ui-widget select, .ui-widget textarea, .ui-widget button {
|
109 |
+
font-family: Verdana, Arial, sans-serif;
|
110 |
+
font-size: 1em;
|
111 |
+
}
|
112 |
+
|
113 |
+
.ui-widget-content {
|
114 |
+
border: 1px solid #aaaaaa;
|
115 |
+
background: #ffffff url(images/ui-bg_flat_75_ffffff_40x100.png) 50% 50% repeat-x;
|
116 |
+
color: #222222;
|
117 |
+
}
|
118 |
+
|
119 |
+
.ui-widget-content a {
|
120 |
+
color: #222222;
|
121 |
+
}
|
122 |
+
|
123 |
+
.ui-widget-header {
|
124 |
+
border: 1px solid #aaaaaa;
|
125 |
+
background: #cccccc url(images/ui-bg_highlight-soft_75_cccccc_1x100.png) 50% 50% repeat-x;
|
126 |
+
color: #222222;
|
127 |
+
font-weight: bold;
|
128 |
+
}
|
129 |
+
|
130 |
+
.ui-widget-header a {
|
131 |
+
color: #222222;
|
132 |
+
}
|
133 |
+
|
134 |
+
/* Interaction states
|
135 |
+
----------------------------------*/
|
136 |
+
.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default {
|
137 |
+
border: 1px solid #d3d3d3;
|
138 |
+
background: #e6e6e6 url(images/ui-bg_glass_75_e6e6e6_1x400.png) 50% 50% repeat-x;
|
139 |
+
font-weight: normal;
|
140 |
+
color: #555555;
|
141 |
+
}
|
142 |
+
|
143 |
+
.ui-state-default a, .ui-state-default a:link, .ui-state-default a:visited {
|
144 |
+
color: #555555;
|
145 |
+
text-decoration: none;
|
146 |
+
}
|
147 |
+
|
148 |
+
.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 {
|
149 |
+
border: 1px solid #999999;
|
150 |
+
background: #dadada url(images/ui-bg_glass_75_dadada_1x400.png) 50% 50% repeat-x;
|
151 |
+
font-weight: normal;
|
152 |
+
color: #212121;
|
153 |
+
}
|
154 |
+
|
155 |
+
.ui-state-hover a, .ui-state-hover a:hover {
|
156 |
+
color: #212121;
|
157 |
+
text-decoration: none;
|
158 |
+
}
|
159 |
+
|
160 |
+
.ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active {
|
161 |
+
border: 1px solid #aaaaaa;
|
162 |
+
background: #ffffff url(images/ui-bg_glass_65_ffffff_1x400.png) 50% 50% repeat-x;
|
163 |
+
font-weight: normal;
|
164 |
+
color: #212121;
|
165 |
+
}
|
166 |
+
|
167 |
+
.ui-state-active a, .ui-state-active a:link, .ui-state-active a:visited {
|
168 |
+
color: #212121;
|
169 |
+
text-decoration: none;
|
170 |
+
}
|
171 |
+
|
172 |
+
.ui-widget :active {
|
173 |
+
outline: none;
|
174 |
+
}
|
175 |
+
|
176 |
+
/* Interaction Cues
|
177 |
+
----------------------------------*/
|
178 |
+
.ui-state-highlight, .ui-widget-content .ui-state-highlight, .ui-widget-header .ui-state-highlight {
|
179 |
+
border: 1px solid #fcefa1;
|
180 |
+
background: #fbf9ee url(images/ui-bg_glass_55_fbf9ee_1x400.png) 50% 50% repeat-x;
|
181 |
+
color: #363636;
|
182 |
+
}
|
183 |
+
|
184 |
+
.ui-state-highlight a, .ui-widget-content .ui-state-highlight a, .ui-widget-header .ui-state-highlight a {
|
185 |
+
color: #363636;
|
186 |
+
}
|
187 |
+
|
188 |
+
.ui-state-error, .ui-widget-content .ui-state-error, .ui-widget-header .ui-state-error {
|
189 |
+
border: 1px solid #cd0a0a;
|
190 |
+
background: #fef1ec url(images/ui-bg_glass_95_fef1ec_1x400.png) 50% 50% repeat-x;
|
191 |
+
color: #cd0a0a;
|
192 |
+
}
|
193 |
+
|
194 |
+
.ui-state-error a, .ui-widget-content .ui-state-error a, .ui-widget-header .ui-state-error a {
|
195 |
+
color: #cd0a0a;
|
196 |
+
}
|
197 |
+
|
198 |
+
.ui-state-error-text, .ui-widget-content .ui-state-error-text, .ui-widget-header .ui-state-error-text {
|
199 |
+
color: #cd0a0a;
|
200 |
+
}
|
201 |
+
|
202 |
+
.ui-priority-primary, .ui-widget-content .ui-priority-primary, .ui-widget-header .ui-priority-primary {
|
203 |
+
font-weight: bold;
|
204 |
+
}
|
205 |
+
|
206 |
+
.ui-priority-secondary, .ui-widget-content .ui-priority-secondary, .ui-widget-header .ui-priority-secondary {
|
207 |
+
opacity: .7;
|
208 |
+
filter: Alpha(Opacity=70);
|
209 |
+
font-weight: normal;
|
210 |
+
}
|
211 |
+
|
212 |
+
.ui-state-disabled, .ui-widget-content .ui-state-disabled, .ui-widget-header .ui-state-disabled {
|
213 |
+
opacity: .35;
|
214 |
+
filter: Alpha(Opacity=35);
|
215 |
+
background-image: none;
|
216 |
+
}
|
217 |
+
|
218 |
+
/* Icons
|
219 |
+
----------------------------------*/
|
220 |
+
|
221 |
+
/* states and images */
|
222 |
+
.ui-icon {
|
223 |
+
width: 16px;
|
224 |
+
height: 16px;
|
225 |
+
background-image: url(images/ui-icons_222222_256x240.png);
|
226 |
+
}
|
227 |
+
|
228 |
+
.ui-widget-content .ui-icon {
|
229 |
+
background-image: url(images/ui-icons_222222_256x240.png);
|
230 |
+
}
|
231 |
+
|
232 |
+
.ui-widget-header .ui-icon {
|
233 |
+
background-image: url(images/ui-icons_222222_256x240.png);
|
234 |
+
}
|
235 |
+
|
236 |
+
.ui-state-default .ui-icon {
|
237 |
+
background-image: url(images/ui-icons_888888_256x240.png);
|
238 |
+
}
|
239 |
+
|
240 |
+
.ui-state-hover .ui-icon, .ui-state-focus .ui-icon {
|
241 |
+
background-image: url(images/ui-icons_454545_256x240.png);
|
242 |
+
}
|
243 |
+
|
244 |
+
.ui-state-active .ui-icon {
|
245 |
+
background-image: url(images/ui-icons_454545_256x240.png);
|
246 |
+
}
|
247 |
+
|
248 |
+
.ui-state-highlight .ui-icon {
|
249 |
+
background-image: url(images/ui-icons_2e83ff_256x240.png);
|
250 |
+
}
|
251 |
+
|
252 |
+
.ui-state-error .ui-icon, .ui-state-error-text .ui-icon {
|
253 |
+
background-image: url(images/ui-icons_cd0a0a_256x240.png);
|
254 |
+
}
|
255 |
+
|
256 |
+
/* positioning */
|
257 |
+
.ui-icon-carat-1-n {
|
258 |
+
background-position: 0 0;
|
259 |
+
}
|
260 |
+
|
261 |
+
.ui-icon-carat-1-ne {
|
262 |
+
background-position: -16px 0;
|
263 |
+
}
|
264 |
+
|
265 |
+
.ui-icon-carat-1-e {
|
266 |
+
background-position: -32px 0;
|
267 |
+
}
|
268 |
+
|
269 |
+
.ui-icon-carat-1-se {
|
270 |
+
background-position: -48px 0;
|
271 |
+
}
|
272 |
+
|
273 |
+
.ui-icon-carat-1-s {
|
274 |
+
background-position: -64px 0;
|
275 |
+
}
|
276 |
+
|
277 |
+
.ui-icon-carat-1-sw {
|
278 |
+
background-position: -80px 0;
|
279 |
+
}
|
280 |
+
|
281 |
+
.ui-icon-carat-1-w {
|
282 |
+
background-position: -96px 0;
|
283 |
+
}
|
284 |
+
|
285 |
+
.ui-icon-carat-1-nw {
|
286 |
+
background-position: -112px 0;
|
287 |
+
}
|
288 |
+
|
289 |
+
.ui-icon-carat-2-n-s {
|
290 |
+
background-position: -128px 0;
|
291 |
+
}
|
292 |
+
|
293 |
+
.ui-icon-carat-2-e-w {
|
294 |
+
background-position: -144px 0;
|
295 |
+
}
|
296 |
+
|
297 |
+
.ui-icon-triangle-1-n {
|
298 |
+
background-position: 0 -16px;
|
299 |
+
}
|
300 |
+
|
301 |
+
.ui-icon-triangle-1-ne {
|
302 |
+
background-position: -16px -16px;
|
303 |
+
}
|
304 |
+
|
305 |
+
.ui-icon-triangle-1-e {
|
306 |
+
background-position: -32px -16px;
|
307 |
+
}
|
308 |
+
|
309 |
+
.ui-icon-triangle-1-se {
|
310 |
+
background-position: -48px -16px;
|
311 |
+
}
|
312 |
+
|
313 |
+
.ui-icon-triangle-1-s {
|
314 |
+
background-position: -64px -16px;
|
315 |
+
}
|
316 |
+
|
317 |
+
.ui-icon-triangle-1-sw {
|
318 |
+
background-position: -80px -16px;
|
319 |
+
}
|
320 |
+
|
321 |
+
.ui-icon-triangle-1-w {
|
322 |
+
background-position: -96px -16px;
|
323 |
+
}
|
324 |
+
|
325 |
+
.ui-icon-triangle-1-nw {
|
326 |
+
background-position: -112px -16px;
|
327 |
+
}
|
328 |
+
|
329 |
+
.ui-icon-triangle-2-n-s {
|
330 |
+
background-position: -128px -16px;
|
331 |
+
}
|
332 |
+
|
333 |
+
.ui-icon-triangle-2-e-w {
|
334 |
+
background-position: -144px -16px;
|
335 |
+
}
|
336 |
+
|
337 |
+
.ui-icon-arrow-1-n {
|
338 |
+
background-position: 0 -32px;
|
339 |
+
}
|
340 |
+
|
341 |
+
.ui-icon-arrow-1-ne {
|
342 |
+
background-position: -16px -32px;
|
343 |
+
}
|
344 |
+
|
345 |
+
.ui-icon-arrow-1-e {
|
346 |
+
background-position: -32px -32px;
|
347 |
+
}
|
348 |
+
|
349 |
+
.ui-icon-arrow-1-se {
|
350 |
+
background-position: -48px -32px;
|
351 |
+
}
|
352 |
+
|
353 |
+
.ui-icon-arrow-1-s {
|
354 |
+
background-position: -64px -32px;
|
355 |
+
}
|
356 |
+
|
357 |
+
.ui-icon-arrow-1-sw {
|
358 |
+
background-position: -80px -32px;
|
359 |
+
}
|
360 |
+
|
361 |
+
.ui-icon-arrow-1-w {
|
362 |
+
background-position: -96px -32px;
|
363 |
+
}
|
364 |
+
|
365 |
+
.ui-icon-arrow-1-nw {
|
366 |
+
background-position: -112px -32px;
|
367 |
+
}
|
368 |
+
|
369 |
+
.ui-icon-arrow-2-n-s {
|
370 |
+
background-position: -128px -32px;
|
371 |
+
}
|
372 |
+
|
373 |
+
.ui-icon-arrow-2-ne-sw {
|
374 |
+
background-position: -144px -32px;
|
375 |
+
}
|
376 |
+
|
377 |
+
.ui-icon-arrow-2-e-w {
|
378 |
+
background-position: -160px -32px;
|
379 |
+
}
|
380 |
+
|
381 |
+
.ui-icon-arrow-2-se-nw {
|
382 |
+
background-position: -176px -32px;
|
383 |
+
}
|
384 |
+
|
385 |
+
.ui-icon-arrowstop-1-n {
|
386 |
+
background-position: -192px -32px;
|
387 |
+
}
|
388 |
+
|
389 |
+
.ui-icon-arrowstop-1-e {
|
390 |
+
background-position: -208px -32px;
|
391 |
+
}
|
392 |
+
|
393 |
+
.ui-icon-arrowstop-1-s {
|
394 |
+
background-position: -224px -32px;
|
395 |
+
}
|
396 |
+
|
397 |
+
.ui-icon-arrowstop-1-w {
|
398 |
+
background-position: -240px -32px;
|
399 |
+
}
|
400 |
+
|
401 |
+
.ui-icon-arrowthick-1-n {
|
402 |
+
background-position: 0 -48px;
|
403 |
+
}
|
404 |
+
|
405 |
+
.ui-icon-arrowthick-1-ne {
|
406 |
+
background-position: -16px -48px;
|
407 |
+
}
|
408 |
+
|
409 |
+
.ui-icon-arrowthick-1-e {
|
410 |
+
background-position: -32px -48px;
|
411 |
+
}
|
412 |
+
|
413 |
+
.ui-icon-arrowthick-1-se {
|
414 |
+
background-position: -48px -48px;
|
415 |
+
}
|
416 |
+
|
417 |
+
.ui-icon-arrowthick-1-s {
|
418 |
+
background-position: -64px -48px;
|
419 |
+
}
|
420 |
+
|
421 |
+
.ui-icon-arrowthick-1-sw {
|
422 |
+
background-position: -80px -48px;
|
423 |
+
}
|
424 |
+
|
425 |
+
.ui-icon-arrowthick-1-w {
|
426 |
+
background-position: -96px -48px;
|
427 |
+
}
|
428 |
+
|
429 |
+
.ui-icon-arrowthick-1-nw {
|
430 |
+
background-position: -112px -48px;
|
431 |
+
}
|
432 |
+
|
433 |
+
.ui-icon-arrowthick-2-n-s {
|
434 |
+
background-position: -128px -48px;
|
435 |
+
}
|
436 |
+
|
437 |
+
.ui-icon-arrowthick-2-ne-sw {
|
438 |
+
background-position: -144px -48px;
|
439 |
+
}
|
440 |
+
|
441 |
+
.ui-icon-arrowthick-2-e-w {
|
442 |
+
background-position: -160px -48px;
|
443 |
+
}
|
444 |
+
|
445 |
+
.ui-icon-arrowthick-2-se-nw {
|
446 |
+
background-position: -176px -48px;
|
447 |
+
}
|
448 |
+
|
449 |
+
.ui-icon-arrowthickstop-1-n {
|
450 |
+
background-position: -192px -48px;
|
451 |
+
}
|
452 |
+
|
453 |
+
.ui-icon-arrowthickstop-1-e {
|
454 |
+
background-position: -208px -48px;
|
455 |
+
}
|
456 |
+
|
457 |
+
.ui-icon-arrowthickstop-1-s {
|
458 |
+
background-position: -224px -48px;
|
459 |
+
}
|
460 |
+
|
461 |
+
.ui-icon-arrowthickstop-1-w {
|
462 |
+
background-position: -240px -48px;
|
463 |
+
}
|
464 |
+
|
465 |
+
.ui-icon-arrowreturnthick-1-w {
|
466 |
+
background-position: 0 -64px;
|
467 |
+
}
|
468 |
+
|
469 |
+
.ui-icon-arrowreturnthick-1-n {
|
470 |
+
background-position: -16px -64px;
|
471 |
+
}
|
472 |
+
|
473 |
+
.ui-icon-arrowreturnthick-1-e {
|
474 |
+
background-position: -32px -64px;
|
475 |
+
}
|
476 |
+
|
477 |
+
.ui-icon-arrowreturnthick-1-s {
|
478 |
+
background-position: -48px -64px;
|
479 |
+
}
|
480 |
+
|
481 |
+
.ui-icon-arrowreturn-1-w {
|
482 |
+
background-position: -64px -64px;
|
483 |
+
}
|
484 |
+
|
485 |
+
.ui-icon-arrowreturn-1-n {
|
486 |
+
background-position: -80px -64px;
|
487 |
+
}
|
488 |
+
|
489 |
+
.ui-icon-arrowreturn-1-e {
|
490 |
+
background-position: -96px -64px;
|
491 |
+
}
|
492 |
+
|
493 |
+
.ui-icon-arrowreturn-1-s {
|
494 |
+
background-position: -112px -64px;
|
495 |
+
}
|
496 |
+
|
497 |
+
.ui-icon-arrowrefresh-1-w {
|
498 |
+
background-position: -128px -64px;
|
499 |
+
}
|
500 |
+
|
501 |
+
.ui-icon-arrowrefresh-1-n {
|
502 |
+
background-position: -144px -64px;
|
503 |
+
}
|
504 |
+
|
505 |
+
.ui-icon-arrowrefresh-1-e {
|
506 |
+
background-position: -160px -64px;
|
507 |
+
}
|
508 |
+
|
509 |
+
.ui-icon-arrowrefresh-1-s {
|
510 |
+
background-position: -176px -64px;
|
511 |
+
}
|
512 |
+
|
513 |
+
.ui-icon-arrow-4 {
|
514 |
+
background-position: 0 -80px;
|
515 |
+
}
|
516 |
+
|
517 |
+
.ui-icon-arrow-4-diag {
|
518 |
+
background-position: -16px -80px;
|
519 |
+
}
|
520 |
+
|
521 |
+
.ui-icon-extlink {
|
522 |
+
background-position: -32px -80px;
|
523 |
+
}
|
524 |
+
|
525 |
+
.ui-icon-newwin {
|
526 |
+
background-position: -48px -80px;
|
527 |
+
}
|
528 |
+
|
529 |
+
.ui-icon-refresh {
|
530 |
+
background-position: -64px -80px;
|
531 |
+
}
|
532 |
+
|
533 |
+
.ui-icon-shuffle {
|
534 |
+
background-position: -80px -80px;
|
535 |
+
}
|
536 |
+
|
537 |
+
.ui-icon-transfer-e-w {
|
538 |
+
background-position: -96px -80px;
|
539 |
+
}
|
540 |
+
|
541 |
+
.ui-icon-transferthick-e-w {
|
542 |
+
background-position: -112px -80px;
|
543 |
+
}
|
544 |
+
|
545 |
+
.ui-icon-folder-collapsed {
|
546 |
+
background-position: 0 -96px;
|
547 |
+
}
|
548 |
+
|
549 |
+
.ui-icon-folder-open {
|
550 |
+
background-position: -16px -96px;
|
551 |
+
}
|
552 |
+
|
553 |
+
.ui-icon-document {
|
554 |
+
background-position: -32px -96px;
|
555 |
+
}
|
556 |
+
|
557 |
+
.ui-icon-document-b {
|
558 |
+
background-position: -48px -96px;
|
559 |
+
}
|
560 |
+
|
561 |
+
.ui-icon-note {
|
562 |
+
background-position: -64px -96px;
|
563 |
+
}
|
564 |
+
|
565 |
+
.ui-icon-mail-closed {
|
566 |
+
background-position: -80px -96px;
|
567 |
+
}
|
568 |
+
|
569 |
+
.ui-icon-mail-open {
|
570 |
+
background-position: -96px -96px;
|
571 |
+
}
|
572 |
+
|
573 |
+
.ui-icon-suitcase {
|
574 |
+
background-position: -112px -96px;
|
575 |
+
}
|
576 |
+
|
577 |
+
.ui-icon-comment {
|
578 |
+
background-position: -128px -96px;
|
579 |
+
}
|
580 |
+
|
581 |
+
.ui-icon-person {
|
582 |
+
background-position: -144px -96px;
|
583 |
+
}
|
584 |
+
|
585 |
+
.ui-icon-print {
|
586 |
+
background-position: -160px -96px;
|
587 |
+
}
|
588 |
+
|
589 |
+
.ui-icon-trash {
|
590 |
+
background-position: -176px -96px;
|
591 |
+
}
|
592 |
+
|
593 |
+
.ui-icon-locked {
|
594 |
+
background-position: -192px -96px;
|
595 |
+
}
|
596 |
+
|
597 |
+
.ui-icon-unlocked {
|
598 |
+
background-position: -208px -96px;
|
599 |
+
}
|
600 |
+
|
601 |
+
.ui-icon-bookmark {
|
602 |
+
background-position: -224px -96px;
|
603 |
+
}
|
604 |
+
|
605 |
+
.ui-icon-tag {
|
606 |
+
background-position: -240px -96px;
|
607 |
+
}
|
608 |
+
|
609 |
+
.ui-icon-home {
|
610 |
+
background-position: 0 -112px;
|
611 |
+
}
|
612 |
+
|
613 |
+
.ui-icon-flag {
|
614 |
+
background-position: -16px -112px;
|
615 |
+
}
|
616 |
+
|
617 |
+
.ui-icon-calendar {
|
618 |
+
background-position: -32px -112px;
|
619 |
+
}
|
620 |
+
|
621 |
+
.ui-icon-cart {
|
622 |
+
background-position: -48px -112px;
|
623 |
+
}
|
624 |
+
|
625 |
+
.ui-icon-pencil {
|
626 |
+
background-position: -64px -112px;
|
627 |
+
}
|
628 |
+
|
629 |
+
.ui-icon-clock {
|
630 |
+
background-position: -80px -112px;
|
631 |
+
}
|
632 |
+
|
633 |
+
.ui-icon-disk {
|
634 |
+
background-position: -96px -112px;
|
635 |
+
}
|
636 |
+
|
637 |
+
.ui-icon-calculator {
|
638 |
+
background-position: -112px -112px;
|
639 |
+
}
|
640 |
+
|
641 |
+
.ui-icon-zoomin {
|
642 |
+
background-position: -128px -112px;
|
643 |
+
}
|
644 |
+
|
645 |
+
.ui-icon-zoomout {
|
646 |
+
background-position: -144px -112px;
|
647 |
+
}
|
648 |
+
|
649 |
+
.ui-icon-search {
|
650 |
+
background-position: -160px -112px;
|
651 |
+
}
|
652 |
+
|
653 |
+
.ui-icon-wrench {
|
654 |
+
background-position: -176px -112px;
|
655 |
+
}
|
656 |
+
|
657 |
+
.ui-icon-gear {
|
658 |
+
background-position: -192px -112px;
|
659 |
+
}
|
660 |
+
|
661 |
+
.ui-icon-heart {
|
662 |
+
background-position: -208px -112px;
|
663 |
+
}
|
664 |
+
|
665 |
+
.ui-icon-star {
|
666 |
+
background-position: -224px -112px;
|
667 |
+
}
|
668 |
+
|
669 |
+
.ui-icon-link {
|
670 |
+
background-position: -240px -112px;
|
671 |
+
}
|
672 |
+
|
673 |
+
.ui-icon-cancel {
|
674 |
+
background-position: 0 -128px;
|
675 |
+
}
|
676 |
+
|
677 |
+
.ui-icon-plus {
|
678 |
+
background-position: -16px -128px;
|
679 |
+
}
|
680 |
+
|
681 |
+
.ui-icon-plusthick {
|
682 |
+
background-position: -32px -128px;
|
683 |
+
}
|
684 |
+
|
685 |
+
.ui-icon-minus {
|
686 |
+
background-position: -48px -128px;
|
687 |
+
}
|
688 |
+
|
689 |
+
.ui-icon-minusthick {
|
690 |
+
background-position: -64px -128px;
|
691 |
+
}
|
692 |
+
|
693 |
+
.ui-icon-close {
|
694 |
+
background-position: -80px -128px;
|
695 |
+
}
|
696 |
+
|
697 |
+
.ui-icon-closethick {
|
698 |
+
background-position: -96px -128px;
|
699 |
+
}
|
700 |
+
|
701 |
+
.ui-icon-key {
|
702 |
+
background-position: -112px -128px;
|
703 |
+
}
|
704 |
+
|
705 |
+
.ui-icon-lightbulb {
|
706 |
+
background-position: -128px -128px;
|
707 |
+
}
|
708 |
+
|
709 |
+
.ui-icon-scissors {
|
710 |
+
background-position: -144px -128px;
|
711 |
+
}
|
712 |
+
|
713 |
+
.ui-icon-clipboard {
|
714 |
+
background-position: -160px -128px;
|
715 |
+
}
|
716 |
+
|
717 |
+
.ui-icon-copy {
|
718 |
+
background-position: -176px -128px;
|
719 |
+
}
|
720 |
+
|
721 |
+
.ui-icon-contact {
|
722 |
+
background-position: -192px -128px;
|
723 |
+
}
|
724 |
+
|
725 |
+
.ui-icon-image {
|
726 |
+
background-position: -208px -128px;
|
727 |
+
}
|
728 |
+
|
729 |
+
.ui-icon-video {
|
730 |
+
background-position: -224px -128px;
|
731 |
+
}
|
732 |
+
|
733 |
+
.ui-icon-script {
|
734 |
+
background-position: -240px -128px;
|
735 |
+
}
|
736 |
+
|
737 |
+
.ui-icon-alert {
|
738 |
+
background-position: 0 -144px;
|
739 |
+
}
|
740 |
+
|
741 |
+
.ui-icon-info {
|
742 |
+
background-position: -16px -144px;
|
743 |
+
}
|
744 |
+
|
745 |
+
.ui-icon-notice {
|
746 |
+
background-position: -32px -144px;
|
747 |
+
}
|
748 |
+
|
749 |
+
.ui-icon-help {
|
750 |
+
background-position: -48px -144px;
|
751 |
+
}
|
752 |
+
|
753 |
+
.ui-icon-check {
|
754 |
+
background-position: -64px -144px;
|
755 |
+
}
|
756 |
+
|
757 |
+
.ui-icon-bullet {
|
758 |
+
background-position: -80px -144px;
|
759 |
+
}
|
760 |
+
|
761 |
+
.ui-icon-radio-off {
|
762 |
+
background-position: -96px -144px;
|
763 |
+
}
|
764 |
+
|
765 |
+
.ui-icon-radio-on {
|
766 |
+
background-position: -112px -144px;
|
767 |
+
}
|
768 |
+
|
769 |
+
.ui-icon-pin-w {
|
770 |
+
background-position: -128px -144px;
|
771 |
+
}
|
772 |
+
|
773 |
+
.ui-icon-pin-s {
|
774 |
+
background-position: -144px -144px;
|
775 |
+
}
|
776 |
+
|
777 |
+
.ui-icon-play {
|
778 |
+
background-position: 0 -160px;
|
779 |
+
}
|
780 |
+
|
781 |
+
.ui-icon-pause {
|
782 |
+
background-position: -16px -160px;
|
783 |
+
}
|
784 |
+
|
785 |
+
.ui-icon-seek-next {
|
786 |
+
background-position: -32px -160px;
|
787 |
+
}
|
788 |
+
|
789 |
+
.ui-icon-seek-prev {
|
790 |
+
background-position: -48px -160px;
|
791 |
+
}
|
792 |
+
|
793 |
+
.ui-icon-seek-end {
|
794 |
+
background-position: -64px -160px;
|
795 |
+
}
|
796 |
+
|
797 |
+
.ui-icon-seek-start {
|
798 |
+
background-position: -80px -160px;
|
799 |
+
}
|
800 |
+
|
801 |
+
/* ui-icon-seek-first is deprecated, use ui-icon-seek-start instead */
|
802 |
+
.ui-icon-seek-first {
|
803 |
+
background-position: -80px -160px;
|
804 |
+
}
|
805 |
+
|
806 |
+
.ui-icon-stop {
|
807 |
+
background-position: -96px -160px;
|
808 |
+
}
|
809 |
+
|
810 |
+
.ui-icon-eject {
|
811 |
+
background-position: -112px -160px;
|
812 |
+
}
|
813 |
+
|
814 |
+
.ui-icon-volume-off {
|
815 |
+
background-position: -128px -160px;
|
816 |
+
}
|
817 |
+
|
818 |
+
.ui-icon-volume-on {
|
819 |
+
background-position: -144px -160px;
|
820 |
+
}
|
821 |
+
|
822 |
+
.ui-icon-power {
|
823 |
+
background-position: 0 -176px;
|
824 |
+
}
|
825 |
+
|
826 |
+
.ui-icon-signal-diag {
|
827 |
+
background-position: -16px -176px;
|
828 |
+
}
|
829 |
+
|
830 |
+
.ui-icon-signal {
|
831 |
+
background-position: -32px -176px;
|
832 |
+
}
|
833 |
+
|
834 |
+
.ui-icon-battery-0 {
|
835 |
+
background-position: -48px -176px;
|
836 |
+
}
|
837 |
+
|
838 |
+
.ui-icon-battery-1 {
|
839 |
+
background-position: -64px -176px;
|
840 |
+
}
|
841 |
+
|
842 |
+
.ui-icon-battery-2 {
|
843 |
+
background-position: -80px -176px;
|
844 |
+
}
|
845 |
+
|
846 |
+
.ui-icon-battery-3 {
|
847 |
+
background-position: -96px -176px;
|
848 |
+
}
|
849 |
+
|
850 |
+
.ui-icon-circle-plus {
|
851 |
+
background-position: 0 -192px;
|
852 |
+
}
|
853 |
+
|
854 |
+
.ui-icon-circle-minus {
|
855 |
+
background-position: -16px -192px;
|
856 |
+
}
|
857 |
+
|
858 |
+
.ui-icon-circle-close {
|
859 |
+
background-position: -32px -192px;
|
860 |
+
}
|
861 |
+
|
862 |
+
.ui-icon-circle-triangle-e {
|
863 |
+
background-position: -48px -192px;
|
864 |
+
}
|
865 |
+
|
866 |
+
.ui-icon-circle-triangle-s {
|
867 |
+
background-position: -64px -192px;
|
868 |
+
}
|
869 |
+
|
870 |
+
.ui-icon-circle-triangle-w {
|
871 |
+
background-position: -80px -192px;
|
872 |
+
}
|
873 |
+
|
874 |
+
.ui-icon-circle-triangle-n {
|
875 |
+
background-position: -96px -192px;
|
876 |
+
}
|
877 |
+
|
878 |
+
.ui-icon-circle-arrow-e {
|
879 |
+
background-position: -112px -192px;
|
880 |
+
}
|
881 |
+
|
882 |
+
.ui-icon-circle-arrow-s {
|
883 |
+
background-position: -128px -192px;
|
884 |
+
}
|
885 |
+
|
886 |
+
.ui-icon-circle-arrow-w {
|
887 |
+
background-position: -144px -192px;
|
888 |
+
}
|
889 |
+
|
890 |
+
.ui-icon-circle-arrow-n {
|
891 |
+
background-position: -160px -192px;
|
892 |
+
}
|
893 |
+
|
894 |
+
.ui-icon-circle-zoomin {
|
895 |
+
background-position: -176px -192px;
|
896 |
+
}
|
897 |
+
|
898 |
+
.ui-icon-circle-zoomout {
|
899 |
+
background-position: -192px -192px;
|
900 |
+
}
|
901 |
+
|
902 |
+
.ui-icon-circle-check {
|
903 |
+
background-position: -208px -192px;
|
904 |
+
}
|
905 |
+
|
906 |
+
.ui-icon-circlesmall-plus {
|
907 |
+
background-position: 0 -208px;
|
908 |
+
}
|
909 |
+
|
910 |
+
.ui-icon-circlesmall-minus {
|
911 |
+
background-position: -16px -208px;
|
912 |
+
}
|
913 |
+
|
914 |
+
.ui-icon-circlesmall-close {
|
915 |
+
background-position: -32px -208px;
|
916 |
+
}
|
917 |
+
|
918 |
+
.ui-icon-squaresmall-plus {
|
919 |
+
background-position: -48px -208px;
|
920 |
+
}
|
921 |
+
|
922 |
+
.ui-icon-squaresmall-minus {
|
923 |
+
background-position: -64px -208px;
|
924 |
+
}
|
925 |
+
|
926 |
+
.ui-icon-squaresmall-close {
|
927 |
+
background-position: -80px -208px;
|
928 |
+
}
|
929 |
+
|
930 |
+
.ui-icon-grip-dotted-vertical {
|
931 |
+
background-position: 0 -224px;
|
932 |
+
}
|
933 |
+
|
934 |
+
.ui-icon-grip-dotted-horizontal {
|
935 |
+
background-position: -16px -224px;
|
936 |
+
}
|
937 |
+
|
938 |
+
.ui-icon-grip-solid-vertical {
|
939 |
+
background-position: -32px -224px;
|
940 |
+
}
|
941 |
+
|
942 |
+
.ui-icon-grip-solid-horizontal {
|
943 |
+
background-position: -48px -224px;
|
944 |
+
}
|
945 |
+
|
946 |
+
.ui-icon-gripsmall-diagonal-se {
|
947 |
+
background-position: -64px -224px;
|
948 |
+
}
|
949 |
+
|
950 |
+
.ui-icon-grip-diagonal-se {
|
951 |
+
background-position: -80px -224px;
|
952 |
+
}
|
953 |
+
|
954 |
+
/* Misc visuals
|
955 |
+
----------------------------------*/
|
956 |
+
|
957 |
+
/* Corner radius */
|
958 |
+
.ui-corner-tl {
|
959 |
+
-moz-border-radius-topleft: 4px;
|
960 |
+
-webkit-border-top-left-radius: 4px;
|
961 |
+
border-top-left-radius: 4px;
|
962 |
+
}
|
963 |
+
|
964 |
+
.ui-corner-tr {
|
965 |
+
-moz-border-radius-topright: 4px;
|
966 |
+
-webkit-border-top-right-radius: 4px;
|
967 |
+
border-top-right-radius: 4px;
|
968 |
+
}
|
969 |
+
|
970 |
+
.ui-corner-bl {
|
971 |
+
-moz-border-radius-bottomleft: 4px;
|
972 |
+
-webkit-border-bottom-left-radius: 4px;
|
973 |
+
border-bottom-left-radius: 4px;
|
974 |
+
}
|
975 |
+
|
976 |
+
.ui-corner-br {
|
977 |
+
-moz-border-radius-bottomright: 4px;
|
978 |
+
-webkit-border-bottom-right-radius: 4px;
|
979 |
+
border-bottom-right-radius: 4px;
|
980 |
+
}
|
981 |
+
|
982 |
+
.ui-corner-top {
|
983 |
+
-moz-border-radius-topleft: 4px;
|
984 |
+
-webkit-border-top-left-radius: 4px;
|
985 |
+
border-top-left-radius: 4px;
|
986 |
+
-moz-border-radius-topright: 4px;
|
987 |
+
-webkit-border-top-right-radius: 4px;
|
988 |
+
border-top-right-radius: 4px;
|
989 |
+
}
|
990 |
+
|
991 |
+
.ui-corner-bottom {
|
992 |
+
-moz-border-radius-bottomleft: 4px;
|
993 |
+
-webkit-border-bottom-left-radius: 4px;
|
994 |
+
border-bottom-left-radius: 4px;
|
995 |
+
-moz-border-radius-bottomright: 4px;
|
996 |
+
-webkit-border-bottom-right-radius: 4px;
|
997 |
+
border-bottom-right-radius: 4px;
|
998 |
+
}
|
999 |
+
|
1000 |
+
.ui-corner-right {
|
1001 |
+
-moz-border-radius-topright: 4px;
|
1002 |
+
-webkit-border-top-right-radius: 4px;
|
1003 |
+
border-top-right-radius: 4px;
|
1004 |
+
-moz-border-radius-bottomright: 4px;
|
1005 |
+
-webkit-border-bottom-right-radius: 4px;
|
1006 |
+
border-bottom-right-radius: 4px;
|
1007 |
+
}
|
1008 |
|
1009 |
+
.ui-corner-left {
|
1010 |
+
-moz-border-radius-topleft: 4px;
|
1011 |
+
-webkit-border-top-left-radius: 4px;
|
1012 |
+
border-top-left-radius: 4px;
|
1013 |
+
-moz-border-radius-bottomleft: 4px;
|
1014 |
+
-webkit-border-bottom-left-radius: 4px;
|
1015 |
+
border-bottom-left-radius: 4px;
|
1016 |
+
}
|
1017 |
|
1018 |
+
.ui-corner-all {
|
1019 |
+
-moz-border-radius: 4px;
|
1020 |
+
-webkit-border-radius: 4px;
|
1021 |
+
border-radius: 4px;
|
1022 |
+
}
|
1023 |
|
1024 |
+
/* Overlays */
|
1025 |
+
.ui-widget-overlay {
|
1026 |
+
background: #aaaaaa url(images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x;
|
1027 |
+
opacity: .30;
|
1028 |
+
filter: Alpha(Opacity=30);
|
1029 |
+
}
|
1030 |
|
1031 |
+
.ui-widget-shadow {
|
1032 |
+
margin: -8px 0 0 -8px;
|
1033 |
+
padding: 8px;
|
1034 |
+
background: #aaaaaa url(images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x;
|
1035 |
+
opacity: .30;
|
1036 |
+
filter: Alpha(Opacity=30);
|
1037 |
+
-moz-border-radius: 8px;
|
1038 |
+
-webkit-border-radius: 8px;
|
1039 |
+
border-radius: 8px;
|
1040 |
+
}
|
1041 |
+
|
1042 |
+
/* Resizable
|
1043 |
----------------------------------*/
|
1044 |
+
.ui-resizable {
|
1045 |
+
position: relative;
|
1046 |
+
}
|
1047 |
|
1048 |
+
.ui-resizable-handle {
|
1049 |
+
position: absolute;
|
1050 |
+
font-size: 0.1px;
|
1051 |
+
z-index: 99999;
|
1052 |
+
display: block;
|
1053 |
+
}
|
1054 |
|
1055 |
+
.ui-resizable-disabled .ui-resizable-handle, .ui-resizable-autohide .ui-resizable-handle {
|
1056 |
+
display: none;
|
1057 |
+
}
|
1058 |
|
1059 |
+
.ui-resizable-n {
|
1060 |
+
cursor: n-resize;
|
1061 |
+
height: 7px;
|
1062 |
+
width: 100%;
|
1063 |
+
top: -5px;
|
1064 |
+
left: 0;
|
1065 |
+
}
|
1066 |
|
1067 |
+
.ui-resizable-s {
|
1068 |
+
cursor: s-resize;
|
1069 |
+
height: 7px;
|
1070 |
+
width: 100%;
|
1071 |
+
bottom: -5px;
|
1072 |
+
left: 0;
|
1073 |
+
}
|
1074 |
|
1075 |
+
.ui-resizable-e {
|
1076 |
+
cursor: e-resize;
|
1077 |
+
width: 7px;
|
1078 |
+
right: -5px;
|
1079 |
+
top: 0;
|
1080 |
+
height: 100%;
|
1081 |
+
}
|
1082 |
|
1083 |
+
.ui-resizable-w {
|
1084 |
+
cursor: w-resize;
|
1085 |
+
width: 7px;
|
1086 |
+
left: -5px;
|
1087 |
+
top: 0;
|
1088 |
+
height: 100%;
|
1089 |
+
}
|
1090 |
|
1091 |
+
.ui-resizable-se {
|
1092 |
+
cursor: se-resize;
|
1093 |
+
width: 12px;
|
1094 |
+
height: 12px;
|
1095 |
+
right: 1px;
|
1096 |
+
bottom: 1px;
|
1097 |
+
}
|
1098 |
|
1099 |
+
.ui-resizable-sw {
|
1100 |
+
cursor: sw-resize;
|
1101 |
+
width: 9px;
|
1102 |
+
height: 9px;
|
1103 |
+
left: -5px;
|
1104 |
+
bottom: -5px;
|
1105 |
+
}
|
|
|
|
|
1106 |
|
1107 |
+
.ui-resizable-nw {
|
1108 |
+
cursor: nw-resize;
|
1109 |
+
width: 9px;
|
1110 |
+
height: 9px;
|
1111 |
+
left: -5px;
|
1112 |
+
top: -5px;
|
1113 |
+
}
|
|
|
|
|
1114 |
|
1115 |
+
.ui-resizable-ne {
|
1116 |
+
cursor: ne-resize;
|
1117 |
+
width: 9px;
|
1118 |
+
height: 9px;
|
1119 |
+
right: -5px;
|
1120 |
+
top: -5px;
|
1121 |
+
}
|
1122 |
+
|
1123 |
+
/* Selectable
|
1124 |
----------------------------------*/
|
1125 |
+
.ui-selectable-helper {
|
1126 |
+
border: 1px dotted black
|
1127 |
+
}
|
|
|
|
|
|
|
|
|
|
|
1128 |
|
1129 |
+
/* Accordion
|
1130 |
----------------------------------*/
|
1131 |
+
.ui-accordion .ui-accordion-header {
|
1132 |
+
cursor: pointer;
|
1133 |
+
position: relative;
|
1134 |
+
margin-top: 1px;
|
1135 |
+
zoom: 1;
|
1136 |
+
}
|
1137 |
|
1138 |
+
.ui-accordion .ui-accordion-li-fix {
|
1139 |
+
display: inline;
|
1140 |
+
}
|
|
|
|
|
|
|
|
|
|
|
|
|
1141 |
|
1142 |
+
.ui-accordion .ui-accordion-header-active {
|
1143 |
+
border-bottom: 0 !important;
|
1144 |
+
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1145 |
|
1146 |
+
.ui-accordion .ui-accordion-header a {
|
1147 |
+
display: block;
|
1148 |
+
font-size: 1em;
|
1149 |
+
padding: .5em .5em .5em .7em;
|
1150 |
+
}
|
1151 |
|
1152 |
+
/* IE7-/Win - Fix extra vertical space in lists */
|
1153 |
+
.ui-accordion a {
|
1154 |
+
zoom: 1;
|
1155 |
+
}
|
1156 |
|
1157 |
+
.ui-accordion-icons .ui-accordion-header a {
|
1158 |
+
padding-left: 2.2em;
|
1159 |
+
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1160 |
|
1161 |
+
.ui-accordion .ui-accordion-header .ui-icon {
|
1162 |
+
position: absolute;
|
1163 |
+
left: .5em;
|
1164 |
+
top: 50%;
|
1165 |
+
margin-top: -8px;
|
1166 |
+
}
|
1167 |
+
|
1168 |
+
.ui-accordion .ui-accordion-content {
|
1169 |
+
padding: 1em 2.2em;
|
1170 |
+
border-top: 0;
|
1171 |
+
margin-top: -2px;
|
1172 |
+
position: relative;
|
1173 |
+
top: 1px;
|
1174 |
+
margin-bottom: 2px;
|
1175 |
+
overflow: auto;
|
1176 |
+
display: none;
|
1177 |
+
zoom: 1;
|
1178 |
+
}
|
1179 |
+
|
1180 |
+
.ui-accordion .ui-accordion-content-active {
|
1181 |
+
display: block;
|
1182 |
+
}
|
1183 |
+
|
1184 |
+
/* Autocomplete
|
|
|
|
|
|
|
|
|
|
|
1185 |
----------------------------------*/
|
1186 |
+
.ui-autocomplete {
|
1187 |
+
position: absolute;
|
1188 |
+
cursor: default;
|
1189 |
+
}
|
1190 |
+
|
1191 |
+
.ui-autocomplete-loading {
|
1192 |
+
background: white url('images/ui-anim_basic_16x16.gif') right center no-repeat;
|
1193 |
+
}
|
1194 |
|
1195 |
/* workarounds */
|
1196 |
+
* html .ui-autocomplete {
|
1197 |
+
width: 1px;
|
1198 |
+
}
|
1199 |
+
|
1200 |
+
/* without this, the menu expands to 100% in IE6 */
|
1201 |
|
1202 |
/* Menu
|
1203 |
----------------------------------*/
|
1204 |
.ui-menu {
|
1205 |
+
list-style: none;
|
1206 |
+
padding: 2px;
|
1207 |
+
margin: 0;
|
1208 |
+
display: block;
|
1209 |
}
|
1210 |
+
|
1211 |
.ui-menu .ui-menu {
|
1212 |
+
margin-top: -3px;
|
1213 |
}
|
1214 |
+
|
1215 |
.ui-menu .ui-menu-item {
|
1216 |
+
margin: 0;
|
1217 |
+
padding: 0;
|
1218 |
+
zoom: 1;
|
1219 |
+
float: left;
|
1220 |
+
clear: left;
|
1221 |
+
width: 100%;
|
1222 |
}
|
1223 |
+
|
1224 |
.ui-menu .ui-menu-item a {
|
1225 |
+
text-decoration: none;
|
1226 |
+
display: block;
|
1227 |
+
padding: .2em .4em;
|
1228 |
+
line-height: 1.5;
|
1229 |
+
zoom: 1;
|
1230 |
}
|
1231 |
+
|
1232 |
.ui-menu .ui-menu-item a.ui-state-hover,
|
1233 |
.ui-menu .ui-menu-item a.ui-state-active {
|
1234 |
+
font-weight: normal;
|
1235 |
+
margin: -1px;
|
1236 |
}
|
1237 |
+
|
1238 |
/* Button
|
1239 |
----------------------------------*/
|
1240 |
|
1241 |
+
.ui-button {
|
1242 |
+
display: inline-block;
|
1243 |
+
position: relative;
|
1244 |
+
padding: 0;
|
1245 |
+
margin-right: .1em;
|
1246 |
+
text-decoration: none !important;
|
1247 |
+
cursor: pointer;
|
1248 |
+
text-align: center;
|
1249 |
+
zoom: 1;
|
1250 |
+
overflow: visible;
|
1251 |
+
}
|
1252 |
+
|
1253 |
+
/* the overflow property removes extra width in IE */
|
1254 |
+
.ui-button-icon-only {
|
1255 |
+
width: 2.2em;
|
1256 |
+
}
|
1257 |
+
|
1258 |
+
/* to make room for the icon, a width needs to be set here */
|
1259 |
+
button.ui-button-icon-only {
|
1260 |
+
width: 2.4em;
|
1261 |
+
}
|
1262 |
+
|
1263 |
+
/* button elements seem to need a little more width */
|
1264 |
+
.ui-button-icons-only {
|
1265 |
+
width: 3.4em;
|
1266 |
+
}
|
1267 |
+
|
1268 |
+
button.ui-button-icons-only {
|
1269 |
+
width: 3.7em;
|
1270 |
+
}
|
1271 |
|
1272 |
/*button text element */
|
1273 |
+
.ui-button .ui-button-text {
|
1274 |
+
display: block;
|
1275 |
+
line-height: 1.4;
|
1276 |
+
}
|
1277 |
+
|
1278 |
+
.ui-button-text-only .ui-button-text {
|
1279 |
+
padding: .4em 1em;
|
1280 |
+
}
|
1281 |
+
|
1282 |
+
.ui-button-icon-only .ui-button-text, .ui-button-icons-only .ui-button-text {
|
1283 |
+
padding: .4em;
|
1284 |
+
text-indent: -9999999px;
|
1285 |
+
}
|
1286 |
+
|
1287 |
+
.ui-button-text-icon .ui-button-text, .ui-button-text-icons .ui-button-text {
|
1288 |
+
padding: .4em 1em .4em 2.1em;
|
1289 |
+
}
|
1290 |
+
|
1291 |
+
.ui-button-text-icons .ui-button-text {
|
1292 |
+
padding-left: 2.1em;
|
1293 |
+
padding-right: 2.1em;
|
1294 |
+
}
|
1295 |
+
|
1296 |
/* no icon support for input elements, provide padding by default */
|
1297 |
+
input.ui-button {
|
1298 |
+
padding: .4em 1em;
|
1299 |
+
}
|
1300 |
|
1301 |
/*button icon element(s) */
|
1302 |
+
.ui-button-icon-only .ui-icon, .ui-button-text-icon .ui-icon, .ui-button-text-icons .ui-icon, .ui-button-icons-only .ui-icon {
|
1303 |
+
position: absolute;
|
1304 |
+
top: 50%;
|
1305 |
+
margin-top: -8px;
|
1306 |
+
}
|
1307 |
|
1308 |
+
.ui-button-icon-only .ui-icon {
|
1309 |
+
left: 50%;
|
1310 |
+
margin-left: -8px;
|
1311 |
+
}
|
1312 |
|
1313 |
+
.ui-button-text-icon .ui-button-icon-primary, .ui-button-text-icons .ui-button-icon-primary, .ui-button-icons-only .ui-button-icon-primary {
|
1314 |
+
left: .5em;
|
1315 |
+
}
|
1316 |
+
|
1317 |
+
.ui-button-text-icons .ui-button-icon-secondary, .ui-button-icons-only .ui-button-icon-secondary {
|
1318 |
+
right: .5em;
|
1319 |
+
}
|
1320 |
|
1321 |
+
/*button sets*/
|
1322 |
+
.ui-buttonset {
|
1323 |
+
margin-right: 7px;
|
1324 |
+
}
|
1325 |
|
1326 |
+
.ui-buttonset .ui-button {
|
1327 |
+
margin-left: 0;
|
1328 |
+
margin-right: -.3em;
|
1329 |
+
}
|
1330 |
|
1331 |
+
/* workarounds */
|
1332 |
+
button.ui-button::-moz-focus-inner {
|
1333 |
+
border: 0;
|
1334 |
+
padding: 0;
|
1335 |
+
}
|
1336 |
|
1337 |
+
/* reset extra padding in Firefox */
|
1338 |
|
1339 |
/* Dialog
|
1340 |
----------------------------------*/
|
1341 |
+
.ui-dialog {
|
1342 |
+
position: absolute;
|
1343 |
+
padding: .2em;
|
1344 |
+
width: 300px;
|
1345 |
+
overflow: hidden;
|
1346 |
+
}
|
1347 |
+
|
1348 |
+
.ui-dialog .ui-dialog-titlebar {
|
1349 |
+
padding: .5em 1em .3em;
|
1350 |
+
position: relative;
|
1351 |
+
}
|
1352 |
+
|
1353 |
+
.ui-dialog .ui-dialog-title {
|
1354 |
+
float: left;
|
1355 |
+
margin: .1em 16px .2em 0;
|
1356 |
+
}
|
1357 |
+
|
1358 |
+
.ui-dialog .ui-dialog-titlebar-close {
|
1359 |
+
position: absolute;
|
1360 |
+
right: .3em;
|
1361 |
+
top: 50%;
|
1362 |
+
width: 19px;
|
1363 |
+
margin: -10px 0 0 0;
|
1364 |
+
padding: 1px;
|
1365 |
+
height: 18px;
|
1366 |
+
}
|
1367 |
+
|
1368 |
+
.ui-dialog .ui-dialog-titlebar-close span {
|
1369 |
+
display: block;
|
1370 |
+
margin: 1px;
|
1371 |
+
}
|
1372 |
+
|
1373 |
+
.ui-dialog .ui-dialog-titlebar-close:hover, .ui-dialog .ui-dialog-titlebar-close:focus {
|
1374 |
+
padding: 0;
|
1375 |
+
}
|
1376 |
+
|
1377 |
+
.ui-dialog .ui-dialog-content {
|
1378 |
+
border: 0;
|
1379 |
+
padding: .5em 1em;
|
1380 |
+
background: none;
|
1381 |
+
overflow: auto;
|
1382 |
+
zoom: 1;
|
1383 |
+
}
|
1384 |
+
|
1385 |
+
.ui-dialog .ui-dialog-buttonpane {
|
1386 |
+
text-align: left;
|
1387 |
+
border-width: 1px 0 0 0;
|
1388 |
+
background-image: none;
|
1389 |
+
margin: .5em 0 0 0;
|
1390 |
+
padding: .3em 1em .5em .4em;
|
1391 |
+
}
|
1392 |
+
|
1393 |
+
.ui-dialog .ui-dialog-buttonpane button {
|
1394 |
+
float: right;
|
1395 |
+
margin: .5em .4em .5em 0;
|
1396 |
+
cursor: pointer;
|
1397 |
+
padding: .2em .6em .3em .6em;
|
1398 |
+
line-height: 1.4em;
|
1399 |
+
width: auto;
|
1400 |
+
overflow: visible;
|
1401 |
+
}
|
1402 |
+
|
1403 |
+
.ui-dialog .ui-resizable-se {
|
1404 |
+
width: 14px;
|
1405 |
+
height: 14px;
|
1406 |
+
right: 3px;
|
1407 |
+
bottom: 3px;
|
1408 |
+
}
|
1409 |
+
|
1410 |
+
.ui-draggable .ui-dialog-titlebar {
|
1411 |
+
cursor: move;
|
1412 |
+
}
|
1413 |
+
|
1414 |
/* Slider
|
1415 |
----------------------------------*/
|
1416 |
+
.ui-slider {
|
1417 |
+
position: relative;
|
1418 |
+
text-align: left;
|
1419 |
+
}
|
1420 |
+
|
1421 |
+
.ui-slider .ui-slider-handle {
|
1422 |
+
position: absolute;
|
1423 |
+
z-index: 2;
|
1424 |
+
width: 1.2em;
|
1425 |
+
height: 1.2em;
|
1426 |
+
cursor: default;
|
1427 |
+
}
|
1428 |
+
|
1429 |
+
.ui-slider .ui-slider-range {
|
1430 |
+
position: absolute;
|
1431 |
+
z-index: 1;
|
1432 |
+
font-size: .7em;
|
1433 |
+
display: block;
|
1434 |
+
border: 0;
|
1435 |
+
background-position: 0 0;
|
1436 |
+
}
|
1437 |
+
|
1438 |
+
.ui-slider-horizontal {
|
1439 |
+
height: .8em;
|
1440 |
+
}
|
1441 |
+
|
1442 |
+
.ui-slider-horizontal .ui-slider-handle {
|
1443 |
+
top: -.3em;
|
1444 |
+
margin-left: -.6em;
|
1445 |
+
}
|
1446 |
+
|
1447 |
+
.ui-slider-horizontal .ui-slider-range {
|
1448 |
+
top: 0;
|
1449 |
+
height: 100%;
|
1450 |
+
}
|
1451 |
+
|
1452 |
+
.ui-slider-horizontal .ui-slider-range-min {
|
1453 |
+
left: 0;
|
1454 |
+
}
|
1455 |
+
|
1456 |
+
.ui-slider-horizontal .ui-slider-range-max {
|
1457 |
+
right: 0;
|
1458 |
+
}
|
1459 |
+
|
1460 |
+
.ui-slider-vertical {
|
1461 |
+
width: .8em;
|
1462 |
+
height: 100px;
|
1463 |
+
}
|
1464 |
+
|
1465 |
+
.ui-slider-vertical .ui-slider-handle {
|
1466 |
+
left: -.3em;
|
1467 |
+
margin-left: 0;
|
1468 |
+
margin-bottom: -.6em;
|
1469 |
+
}
|
1470 |
+
|
1471 |
+
.ui-slider-vertical .ui-slider-range {
|
1472 |
+
left: 0;
|
1473 |
+
width: 100%;
|
1474 |
+
}
|
1475 |
+
|
1476 |
+
.ui-slider-vertical .ui-slider-range-min {
|
1477 |
+
bottom: 0;
|
1478 |
+
}
|
1479 |
+
|
1480 |
+
.ui-slider-vertical .ui-slider-range-max {
|
1481 |
+
top: 0;
|
1482 |
+
}
|
1483 |
+
|
1484 |
+
/* Tabs
|
1485 |
----------------------------------*/
|
1486 |
+
.ui-tabs {
|
1487 |
+
position: relative;
|
1488 |
+
padding: .2em;
|
1489 |
+
zoom: 1;
|
1490 |
+
}
|
1491 |
+
|
1492 |
+
/* position: relative prevents IE scroll bug (element with position: relative inside container with overflow: auto appear as "fixed") */
|
1493 |
+
.ui-tabs .ui-tabs-nav {
|
1494 |
+
margin: 0;
|
1495 |
+
padding: .2em .2em 0;
|
1496 |
+
}
|
1497 |
+
|
1498 |
+
.ui-tabs .ui-tabs-nav li {
|
1499 |
+
list-style: none;
|
1500 |
+
float: left;
|
1501 |
+
position: relative;
|
1502 |
+
top: 1px;
|
1503 |
+
margin: 0 .2em 1px 0;
|
1504 |
+
border-bottom: 0 !important;
|
1505 |
+
padding: 0;
|
1506 |
+
white-space: nowrap;
|
1507 |
+
}
|
1508 |
+
|
1509 |
+
.ui-tabs .ui-tabs-nav li a {
|
1510 |
+
float: left;
|
1511 |
+
padding: .5em 1em;
|
1512 |
+
text-decoration: none;
|
1513 |
+
}
|
1514 |
+
|
1515 |
+
.ui-tabs .ui-tabs-nav li.ui-tabs-selected {
|
1516 |
+
margin-bottom: 0;
|
1517 |
+
padding-bottom: 1px;
|
1518 |
+
}
|
1519 |
+
|
1520 |
+
.ui-tabs .ui-tabs-nav li.ui-tabs-selected a, .ui-tabs .ui-tabs-nav li.ui-state-disabled a, .ui-tabs .ui-tabs-nav li.ui-state-processing a {
|
1521 |
+
cursor: text;
|
1522 |
+
}
|
1523 |
+
|
1524 |
+
.ui-tabs .ui-tabs-nav li a, .ui-tabs.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-selected a {
|
1525 |
+
cursor: pointer;
|
1526 |
+
}
|
1527 |
+
|
1528 |
+
/* first selector in group seems obsolete, but required to overcome bug in Opera applying cursor: text overall if defined elsewhere... */
|
1529 |
+
.ui-tabs .ui-tabs-panel {
|
1530 |
+
display: block;
|
1531 |
+
border-width: 0;
|
1532 |
+
padding: 1em 1.4em;
|
1533 |
+
background: none;
|
1534 |
+
}
|
1535 |
+
|
1536 |
+
.ui-tabs .ui-tabs-hide {
|
1537 |
+
display: none !important;
|
1538 |
+
}
|
1539 |
+
|
1540 |
/* Datepicker
|
1541 |
----------------------------------*/
|
1542 |
+
.ui-datepicker {
|
1543 |
+
width: 17em;
|
1544 |
+
padding: .2em .2em 0;
|
1545 |
+
}
|
1546 |
+
|
1547 |
+
.ui-datepicker .ui-datepicker-header {
|
1548 |
+
position: relative;
|
1549 |
+
padding: .2em 0;
|
1550 |
+
}
|
1551 |
+
|
1552 |
+
.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next {
|
1553 |
+
position: absolute;
|
1554 |
+
top: 2px;
|
1555 |
+
width: 1.8em;
|
1556 |
+
height: 1.8em;
|
1557 |
+
}
|
1558 |
+
|
1559 |
+
.ui-datepicker .ui-datepicker-prev-hover, .ui-datepicker .ui-datepicker-next-hover {
|
1560 |
+
top: 1px;
|
1561 |
+
}
|
1562 |
+
|
1563 |
+
.ui-datepicker .ui-datepicker-prev {
|
1564 |
+
left: 2px;
|
1565 |
+
}
|
1566 |
+
|
1567 |
+
.ui-datepicker .ui-datepicker-next {
|
1568 |
+
right: 2px;
|
1569 |
+
}
|
1570 |
+
|
1571 |
+
.ui-datepicker .ui-datepicker-prev-hover {
|
1572 |
+
left: 1px;
|
1573 |
+
}
|
1574 |
+
|
1575 |
+
.ui-datepicker .ui-datepicker-next-hover {
|
1576 |
+
right: 1px;
|
1577 |
+
}
|
1578 |
+
|
1579 |
+
.ui-datepicker .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-next span {
|
1580 |
+
display: block;
|
1581 |
+
position: absolute;
|
1582 |
+
left: 50%;
|
1583 |
+
margin-left: -8px;
|
1584 |
+
top: 50%;
|
1585 |
+
margin-top: -8px;
|
1586 |
+
}
|
1587 |
+
|
1588 |
+
.ui-datepicker .ui-datepicker-title {
|
1589 |
+
margin: 0 2.3em;
|
1590 |
+
line-height: 1.8em;
|
1591 |
+
text-align: center;
|
1592 |
+
}
|
1593 |
+
|
1594 |
+
.ui-datepicker .ui-datepicker-title select {
|
1595 |
+
font-size: 1em;
|
1596 |
+
margin: 1px 0;
|
1597 |
+
}
|
1598 |
+
|
1599 |
+
.ui-datepicker select.ui-datepicker-month-year {
|
1600 |
+
width: 100%;
|
1601 |
+
}
|
1602 |
+
|
1603 |
+
.ui-datepicker select.ui-datepicker-month,
|
1604 |
+
.ui-datepicker select.ui-datepicker-year {
|
1605 |
+
width: 49%;
|
1606 |
+
}
|
1607 |
+
|
1608 |
+
.ui-datepicker table {
|
1609 |
+
width: 100%;
|
1610 |
+
font-size: .9em;
|
1611 |
+
border-collapse: collapse;
|
1612 |
+
margin: 0 0 .4em;
|
1613 |
+
}
|
1614 |
+
|
1615 |
+
.ui-datepicker th {
|
1616 |
+
padding: .7em .3em;
|
1617 |
+
text-align: center;
|
1618 |
+
font-weight: bold;
|
1619 |
+
border: 0;
|
1620 |
+
}
|
1621 |
+
|
1622 |
+
.ui-datepicker td {
|
1623 |
+
border: 0;
|
1624 |
+
padding: 1px;
|
1625 |
+
}
|
1626 |
+
|
1627 |
+
.ui-datepicker td span, .ui-datepicker td a {
|
1628 |
+
display: block;
|
1629 |
+
padding: .2em;
|
1630 |
+
text-align: right;
|
1631 |
+
text-decoration: none;
|
1632 |
+
}
|
1633 |
+
|
1634 |
+
.ui-datepicker .ui-datepicker-buttonpane {
|
1635 |
+
background-image: none;
|
1636 |
+
margin: .7em 0 0 0;
|
1637 |
+
padding: 0 .2em;
|
1638 |
+
border-left: 0;
|
1639 |
+
border-right: 0;
|
1640 |
+
border-bottom: 0;
|
1641 |
+
}
|
1642 |
+
|
1643 |
+
.ui-datepicker .ui-datepicker-buttonpane button {
|
1644 |
+
float: right;
|
1645 |
+
margin: .5em .2em .4em;
|
1646 |
+
cursor: pointer;
|
1647 |
+
padding: .2em .6em .3em .6em;
|
1648 |
+
width: auto;
|
1649 |
+
overflow: visible;
|
1650 |
+
}
|
1651 |
+
|
1652 |
+
.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current {
|
1653 |
+
float: left;
|
1654 |
+
}
|
1655 |
|
1656 |
/* with multiple calendars */
|
1657 |
+
.ui-datepicker.ui-datepicker-multi {
|
1658 |
+
width: auto;
|
1659 |
+
}
|
1660 |
+
|
1661 |
+
.ui-datepicker-multi .ui-datepicker-group {
|
1662 |
+
float: left;
|
1663 |
+
}
|
1664 |
+
|
1665 |
+
.ui-datepicker-multi .ui-datepicker-group table {
|
1666 |
+
width: 95%;
|
1667 |
+
margin: 0 auto .4em;
|
1668 |
+
}
|
1669 |
+
|
1670 |
+
.ui-datepicker-multi-2 .ui-datepicker-group {
|
1671 |
+
width: 50%;
|
1672 |
+
}
|
1673 |
+
|
1674 |
+
.ui-datepicker-multi-3 .ui-datepicker-group {
|
1675 |
+
width: 33.3%;
|
1676 |
+
}
|
1677 |
+
|
1678 |
+
.ui-datepicker-multi-4 .ui-datepicker-group {
|
1679 |
+
width: 25%;
|
1680 |
+
}
|
1681 |
+
|
1682 |
+
.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header {
|
1683 |
+
border-left-width: 0;
|
1684 |
+
}
|
1685 |
+
|
1686 |
+
.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header {
|
1687 |
+
border-left-width: 0;
|
1688 |
+
}
|
1689 |
+
|
1690 |
+
.ui-datepicker-multi .ui-datepicker-buttonpane {
|
1691 |
+
clear: left;
|
1692 |
+
}
|
1693 |
+
|
1694 |
+
.ui-datepicker-row-break {
|
1695 |
+
clear: both;
|
1696 |
+
width: 100%;
|
1697 |
+
}
|
1698 |
|
1699 |
/* RTL support */
|
1700 |
+
.ui-datepicker-rtl {
|
1701 |
+
direction: rtl;
|
1702 |
+
}
|
1703 |
+
|
1704 |
+
.ui-datepicker-rtl .ui-datepicker-prev {
|
1705 |
+
right: 2px;
|
1706 |
+
left: auto;
|
1707 |
+
}
|
1708 |
+
|
1709 |
+
.ui-datepicker-rtl .ui-datepicker-next {
|
1710 |
+
left: 2px;
|
1711 |
+
right: auto;
|
1712 |
+
}
|
1713 |
+
|
1714 |
+
.ui-datepicker-rtl .ui-datepicker-prev:hover {
|
1715 |
+
right: 1px;
|
1716 |
+
left: auto;
|
1717 |
+
}
|
1718 |
+
|
1719 |
+
.ui-datepicker-rtl .ui-datepicker-next:hover {
|
1720 |
+
left: 1px;
|
1721 |
+
right: auto;
|
1722 |
+
}
|
1723 |
+
|
1724 |
+
.ui-datepicker-rtl .ui-datepicker-buttonpane {
|
1725 |
+
clear: right;
|
1726 |
+
}
|
1727 |
+
|
1728 |
+
.ui-datepicker-rtl .ui-datepicker-buttonpane button {
|
1729 |
+
float: left;
|
1730 |
+
}
|
1731 |
+
|
1732 |
+
.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current {
|
1733 |
+
float: right;
|
1734 |
+
}
|
1735 |
+
|
1736 |
+
.ui-datepicker-rtl .ui-datepicker-group {
|
1737 |
+
float: right;
|
1738 |
+
}
|
1739 |
+
|
1740 |
+
.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header {
|
1741 |
+
border-right-width: 0;
|
1742 |
+
border-left-width: 1px;
|
1743 |
+
}
|
1744 |
+
|
1745 |
+
.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header {
|
1746 |
+
border-right-width: 0;
|
1747 |
+
border-left-width: 1px;
|
1748 |
+
}
|
1749 |
|
1750 |
/* IE6 IFRAME FIX (taken from datepicker 1.5.3 */
|
1751 |
.ui-datepicker-cover {
|
1752 |
display: none; /*sorry for IE5*/
|
1753 |
+
display /**/: block; /*sorry for IE5*/
|
1754 |
position: absolute; /*must have*/
|
1755 |
z-index: -1; /*must have*/
|
1756 |
filter: mask(); /*must have*/
|
1758 |
left: -4px; /*must have*/
|
1759 |
width: 200px; /*must have*/
|
1760 |
height: 200px; /*must have*/
|
1761 |
+
}
|
1762 |
+
|
1763 |
+
/* Progressbar
|
1764 |
----------------------------------*/
|
1765 |
+
.ui-progressbar {
|
1766 |
+
height: 2em;
|
1767 |
+
text-align: left;
|
1768 |
+
}
|
1769 |
+
|
1770 |
+
.ui-progressbar .ui-progressbar-value {
|
1771 |
+
margin: -1px;
|
1772 |
+
height: 100%;
|
1773 |
+
}
|
css/jquery.fileupload.css
CHANGED
@@ -11,26 +11,27 @@
|
|
11 |
*/
|
12 |
|
13 |
.fileinput-button {
|
14 |
-
|
15 |
-
|
16 |
}
|
|
|
17 |
.fileinput-button input {
|
18 |
-
|
19 |
-
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
-
|
26 |
-
|
27 |
}
|
28 |
|
29 |
/* Fixes for IE < 8 */
|
30 |
@media screen\9 {
|
31 |
-
|
32 |
-
|
33 |
-
|
34 |
-
|
35 |
-
|
36 |
}
|
11 |
*/
|
12 |
|
13 |
.fileinput-button {
|
14 |
+
position: relative;
|
15 |
+
overflow: hidden;
|
16 |
}
|
17 |
+
|
18 |
.fileinput-button input {
|
19 |
+
position: absolute;
|
20 |
+
top: 0;
|
21 |
+
right: 0;
|
22 |
+
margin: 0;
|
23 |
+
opacity: 0;
|
24 |
+
-ms-filter: 'alpha(opacity=0)';
|
25 |
+
font-size: 200px;
|
26 |
+
direction: ltr;
|
27 |
+
cursor: pointer;
|
28 |
}
|
29 |
|
30 |
/* Fixes for IE < 8 */
|
31 |
@media screen\9 {
|
32 |
+
.fileinput-button input {
|
33 |
+
filter: alpha(opacity=0);
|
34 |
+
font-size: 100%;
|
35 |
+
height: 100%;
|
36 |
+
}
|
37 |
}
|
css/main.css
CHANGED
@@ -1,586 +1,656 @@
|
|
1 |
#accordion {
|
2 |
-
width:98%;
|
3 |
-
margin-right:15px;
|
4 |
-
margin-top: 22px;
|
5 |
-
float:left;
|
6 |
-
}
|
7 |
-
|
8 |
-
.accordion-body {
|
9 |
-
background: #fff;
|
10 |
-
}
|
11 |
-
.tooltip_smack { -moz-padding-start:135px; }
|
12 |
-
|
13 |
-
#accordion h3{
|
14 |
-
font: normal 12px Verdana;
|
15 |
-
text-decoration: none;
|
16 |
-
position: relative;
|
17 |
-
padding: 7px 22px;
|
18 |
-
color: #fff;
|
19 |
-
outline:none;
|
20 |
-
background: #222222;
|
21 |
-
border:1px solid #333333;
|
22 |
-
margin-top:-10px;
|
23 |
-
/*text-transform:uppercase; */
|
24 |
}
|
25 |
-
|
26 |
-
|
27 |
-
|
28 |
-
|
29 |
-
|
30 |
-
|
31 |
-
|
32 |
-
|
33 |
-
|
34 |
-
|
35 |
-
|
36 |
-
|
37 |
-
|
38 |
-
|
39 |
-
#
|
40 |
-
|
41 |
-
|
42 |
-
|
43 |
-
|
44 |
-
|
45 |
-
|
46 |
-
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
|
52 |
-
|
53 |
-
|
54 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
55 |
}
|
56 |
|
57 |
-
.csv-top-navigation-wrapper li{
|
58 |
-
|
59 |
-
|
60 |
-
margin: 0;
|
61 |
-
margin-right:4px;
|
62 |
-
font: normal 12px Verdana;
|
63 |
-
text-decoration: none;
|
64 |
-
position: relative;
|
65 |
-
padding: 6px 10px;
|
66 |
-
-webkit-padding-before:5px;
|
67 |
-
-webkit-padding-end:15px;
|
68 |
-
-webkit-padding-after:5px;
|
69 |
-
-webkit-padding-start:15px;
|
70 |
-
border: 1px solid #333333;
|
71 |
-
color: #000;
|
72 |
-
/*text-transform:uppercase; */
|
73 |
-
/*background: #F7F7F7 url(../images/tabbg2.gif) repeat-x 0 0;*/
|
74 |
-
background: #222222;
|
75 |
-
border-radius: 3px 3px 0 0;
|
76 |
-
outline:none;
|
77 |
}
|
78 |
-
|
79 |
-
|
80 |
-
color: #
|
81 |
}
|
82 |
-
|
83 |
-
|
|
|
|
|
84 |
}
|
85 |
-
|
86 |
-
|
87 |
-
background:
|
|
|
|
|
|
|
88 |
}
|
89 |
-
|
90 |
-
|
91 |
-
|
92 |
-
background: #0074A2;
|
93 |
-
/*text-transform:uppercase;*/
|
94 |
}
|
95 |
-
|
96 |
-
|
|
|
97 |
}
|
98 |
-
|
99 |
-
|
|
|
100 |
}
|
101 |
|
102 |
-
.
|
|
|
|
|
103 |
|
|
|
|
|
104 |
}
|
105 |
-
|
106 |
-
|
|
|
|
|
107 |
}
|
108 |
-
|
109 |
-
|
|
|
110 |
}
|
111 |
-
|
112 |
-
|
113 |
-
|
114 |
-
|
115 |
-
|
116 |
-
.importfile{
|
117 |
-
/* height : 300px; */
|
118 |
}
|
119 |
|
120 |
-
.
|
121 |
-
|
122 |
-
width:100px;
|
123 |
-
padding-top:10px;
|
124 |
}
|
125 |
-
|
126 |
-
|
|
|
|
|
|
|
|
|
127 |
}
|
128 |
-
|
129 |
-
|
130 |
-
|
131 |
-
float:right;
|
132 |
-
margin-top:5px;
|
133 |
}
|
134 |
-
|
135 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
136 |
}
|
137 |
-
|
138 |
-
|
139 |
-
|
140 |
-
text-decoration:none;
|
141 |
-
padding: 5px;
|
142 |
-
font-size: medium;
|
143 |
-
font-weight: bold;
|
144 |
-
padding: 7px;
|
145 |
-
min-width:600px;
|
146 |
}
|
147 |
-
|
148 |
-
|
|
|
149 |
}
|
150 |
-
.mappingsection{
|
151 |
|
|
|
|
|
152 |
}
|
153 |
-
|
154 |
-
|
|
|
155 |
}
|
156 |
-
|
157 |
-
|
|
|
|
|
158 |
}
|
159 |
-
|
160 |
-
|
161 |
-
|
|
|
|
|
|
|
|
|
|
|
162 |
}
|
|
|
163 |
.panel {
|
164 |
-
margin-
|
165 |
-
|
166 |
-
|
167 |
-
|
168 |
-
|
169 |
-
|
170 |
-
|
171 |
-
|
172 |
-
|
173 |
-
text-align:left;
|
174 |
-
padding:10px;
|
175 |
-
margin-bottom:0px;
|
176 |
-
}
|
177 |
-
.panel h4{
|
178 |
-
font-weight: bold;
|
179 |
-
padding-bottom:3px;
|
180 |
}
|
|
|
181 |
.progress {
|
182 |
-
height: 20px;
|
183 |
-
overflow: hidden;
|
184 |
-
background-color: #f5f5f5;
|
185 |
-
border-radius: 4px;
|
186 |
-
-webkit-box-shadow: inset 0 1px 2px rgba(0,0,0,0.1);
|
187 |
-
box-shadow: inset 0 1px 2px rgba(0,0,0,0.1);
|
188 |
}
|
|
|
189 |
.btn-success {
|
190 |
-
color: #fff;
|
191 |
-
background-color: #5cb85c;
|
192 |
-
border-color: #4cae4c;
|
193 |
}
|
|
|
194 |
.btn {
|
195 |
-
display: inline-block;
|
196 |
-
padding: 6px 12px;
|
197 |
-
margin-bottom: 0;
|
198 |
-
font-size: 14px;
|
199 |
-
font-weight: normal;
|
200 |
-
line-height: 1.428571429;
|
201 |
-
text-align: center;
|
202 |
-
white-space: nowrap;
|
203 |
-
vertical-align: middle;
|
204 |
-
cursor: pointer;
|
205 |
-
border: 1px solid transparent;
|
206 |
-
border-radius: 4px;
|
207 |
-
-webkit-user-select: none;
|
208 |
-
-moz-user-select: none;
|
209 |
-
-ms-user-select: none;
|
210 |
-
-o-user-select: none;
|
211 |
-
user-select: none;
|
212 |
}
|
|
|
213 |
.glyphicon {
|
214 |
-
position: relative;
|
215 |
-
top: 1px;
|
216 |
-
display: inline-block;
|
217 |
-
font-family: 'Glyphicons Halflings';
|
218 |
-
-webkit-font-smoothing: antialiased;
|
219 |
-
font-style: normal;
|
220 |
-
font-weight: normal;
|
221 |
-
line-height: 1;
|
222 |
}
|
|
|
223 |
.glyphicon-plus:before {
|
224 |
-
content: "+";
|
225 |
}
|
|
|
226 |
.progress-bar-success {
|
227 |
-
background-color: #5cb85c;
|
228 |
}
|
|
|
229 |
.progress-bar {
|
230 |
-
float: left;
|
231 |
-
width: 0;
|
232 |
-
height: 100%;
|
233 |
-
font-size: 12px;
|
234 |
-
color: #fff;
|
235 |
-
text-align: center;
|
236 |
-
-webkit-box-shadow: inset 0 -1px 0 rgba(0,0,0,0.15);
|
237 |
-
box-shadow: inset 0 -1px 0 rgba(0,0,0,0.15);
|
238 |
-
-webkit-transition: width .6s ease;
|
239 |
-
transition: width .6s ease;
|
240 |
}
|
|
|
241 |
.container {
|
242 |
-
max-width: 1170px;
|
243 |
}
|
|
|
244 |
.container {
|
245 |
-
padding-right: 15px;
|
246 |
-
padding-left: 15px;
|
247 |
-
margin-right: auto;
|
248 |
-
margin-left: auto;
|
249 |
}
|
|
|
250 |
.container:before, .container:after {
|
251 |
-
display: table;
|
252 |
-
content: " ";
|
253 |
}
|
|
|
254 |
.panel-default {
|
255 |
-
border-color: #ddd;
|
256 |
-
}
|
257 |
-
|
258 |
-
|
259 |
-
|
260 |
-
|
261 |
-
|
262 |
-
|
263 |
-
|
264 |
-
|
265 |
-
|
266 |
-
|
267 |
-
|
268 |
-
-
|
269 |
-
-webkit-margin-
|
270 |
-
-webkit-margin-
|
271 |
-
-webkit-margin-
|
272 |
-
|
273 |
-
|
274 |
-
|
275 |
-
|
276 |
-
|
277 |
-
|
278 |
-
|
279 |
-
|
280 |
-
|
281 |
-
|
|
|
|
|
|
|
282 |
}
|
|
|
283 |
@-moz-document url-prefix() {
|
284 |
-
.reportLog{
|
285 |
margin-top: 26px;
|
286 |
}
|
287 |
-
}
|
288 |
-
.logcontainer{
|
289 |
-
height:300px;
|
290 |
-
border: 1px solid #CCC;
|
291 |
-
margin-top: -13px;
|
292 |
-
overflow-y: scroll;
|
293 |
-
background: #fff;
|
294 |
}
|
295 |
|
296 |
-
.
|
297 |
-
|
298 |
-
|
299 |
-
margin-
|
300 |
-
|
301 |
-
|
302 |
}
|
303 |
|
304 |
-
.
|
305 |
-
|
306 |
-
margin-left:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
307 |
}
|
308 |
|
309 |
-
|
310 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
311 |
}
|
312 |
|
313 |
-
a.tooltip {outline:none; }
|
314 |
-
a.tooltip strong {line-height:20px;}
|
315 |
-
a.tooltip:hover {text-decoration:none;}
|
316 |
a.tooltip span {
|
317 |
-
|
|
|
|
|
318 |
}
|
319 |
|
320 |
-
a.tooltip:hover span{
|
321 |
-
display:inline;
|
322 |
-
|
323 |
-
|
|
|
|
|
|
|
324 |
|
325 |
-
|
326 |
-
|
327 |
-
|
328 |
-
|
329 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
330 |
|
331 |
-
|
332 |
-
|
333 |
-
|
334 |
}
|
335 |
-
|
336 |
-
{
|
337 |
-
margin-top
|
338 |
-
margin-left:27px;
|
339 |
-
width:225px;
|
340 |
-
line-height:30px;
|
341 |
}
|
342 |
|
343 |
-
.tooltipPostStatus
|
344 |
-
|
345 |
-
|
346 |
-
margin-
|
347 |
-
|
348 |
-
|
349 |
-
|
350 |
-
-webkit-margin-
|
351 |
-
-webkit-margin-
|
352 |
-
-webkit-margin-before: -28px;
|
353 |
}
|
354 |
|
355 |
-
.tooltipClearMapping
|
356 |
-
|
357 |
-
margin-
|
358 |
-
|
359 |
-
|
360 |
-
|
361 |
-
-webkit-margin-
|
362 |
-
-webkit-margin-
|
363 |
-
-webkit-margin-before: -28px;
|
364 |
}
|
365 |
|
366 |
-
.goto_importer_setting
|
367 |
-
|
368 |
-
margin-
|
369 |
-
margin-bottom:50px;
|
370 |
}
|
371 |
|
372 |
-
.clear_mapping
|
373 |
-
|
374 |
-
/*margin-left:25px;*/
|
375 |
}
|
376 |
|
377 |
.maperror {
|
378 |
-
position: fixed;
|
379 |
-
z-index: 999;
|
380 |
-
width: 250px;
|
381 |
-
right: 200px;
|
382 |
}
|
383 |
|
384 |
.error {
|
385 |
-
background-color: #FAEBE7 !important;
|
386 |
-
border: 1px solid #F16048 !important;
|
387 |
-
color: #DF280A !important;
|
388 |
}
|
389 |
|
390 |
.msg {
|
391 |
-
font-weight: bold !important;
|
392 |
-
margin: 0 auto !important;
|
393 |
-
width: 60%;
|
394 |
-
text-align: center;
|
395 |
-
min-height: 23px !important;
|
396 |
-
padding: 8px 8px 2px 32px !important;
|
397 |
-
margin-top: 5px !important;
|
398 |
-
}
|
399 |
-
.warning
|
400 |
-
{
|
401 |
-
float:left;
|
402 |
-
padding: 5px 5px;
|
403 |
-
border: 2px solid red;
|
404 |
-
border-radius:4px;
|
405 |
-
-moz-border-radius: 4px;
|
406 |
-
-webkit-border-radius: 4px;
|
407 |
-
margin-left:100px;
|
408 |
-
margin-top:20px;
|
409 |
}
|
410 |
|
411 |
-
.
|
412 |
-
|
413 |
-
padding:
|
414 |
-
border: 2px solid red;
|
415 |
-
border-radius:4px;
|
416 |
-
-moz-border-radius: 4px;
|
417 |
-
-webkit-border-radius: 4px;
|
418 |
-
|
419 |
-
|
420 |
}
|
421 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
422 |
|
423 |
-
.secondformheader{
|
424 |
-
padding-left:20px;
|
425 |
}
|
426 |
|
427 |
-
#settings{
|
428 |
-
line-height:200%;
|
429 |
}
|
430 |
|
431 |
-
.left_align{
|
432 |
-
/*padding-left: 15px;*/
|
433 |
}
|
434 |
-
|
435 |
-
|
|
|
436 |
}
|
437 |
|
438 |
-
.moreMenu
|
439 |
-
|
440 |
-
|
441 |
-
background-color: #222222 !important;
|
442 |
}
|
443 |
-
|
444 |
-
{
|
445 |
-
display: none;
|
446 |
}
|
447 |
|
448 |
-
.moreMenu:hover > ul
|
449 |
-
|
450 |
-
|
451 |
-
|
452 |
-
|
453 |
-
margin-
|
454 |
-
margin-left:-16px;
|
455 |
}
|
|
|
456 |
.moreMenu ul li {
|
457 |
-
width:145px;
|
458 |
}
|
|
|
459 |
.moreMenu li {
|
460 |
-
position:relative;
|
461 |
}
|
|
|
462 |
/*.contactus
|
463 |
{
|
464 |
width: 300px;
|
465 |
} */
|
466 |
-
#contactus, #usefullinks
|
467 |
-
|
468 |
-
|
469 |
-
|
470 |
-
float:left;
|
471 |
-
}
|
472 |
-
.usefullinks{
|
473 |
-
padding-top: 12px;
|
474 |
-
}
|
475 |
-
.promobox .accordion-inner{
|
476 |
-
padding:14px;
|
477 |
-
}
|
478 |
-
#promobox{
|
479 |
-
height:auto;
|
480 |
-
width:50%;
|
481 |
-
padding : 10px;
|
482 |
-
}
|
483 |
-
#pluginpromo{
|
484 |
-
margin-top:15px;
|
485 |
-
}
|
486 |
-
#pluginpromo, #promobox{
|
487 |
-
float:left;
|
488 |
-
}
|
489 |
-
.stars li{
|
490 |
-
float:left;
|
491 |
-
width:20px;
|
492 |
-
height:20px;
|
493 |
-
background-color:#fff;
|
494 |
-
border:1px solid #ccc;
|
495 |
-
font-size:10px;
|
496 |
-
border-radius:50%;
|
497 |
-
text-align:center;
|
498 |
-
line-height:20px;
|
499 |
-
margin-right:3px;
|
500 |
-
transition:all 0.2s linear;
|
501 |
-
}
|
502 |
-
.stars:hover li{
|
503 |
-
background-color:yellow;
|
504 |
-
}
|
505 |
-
.stars li:hover ~ li{
|
506 |
-
background-color:#fff;
|
507 |
-
}
|
508 |
-
.sociallink{
|
509 |
-
margin-right:12px;
|
510 |
-
}
|
511 |
-
.plugintags a{
|
512 |
-
/*background-color: #767676;
|
513 |
-
border-radius: 0 2px 2px 0;
|
514 |
-
color: #fff; */
|
515 |
-
display: inline-block;
|
516 |
-
font-size: 11px;
|
517 |
-
font-weight: 700;
|
518 |
-
line-height: 1.2727272727;
|
519 |
-
margin: 2px 4px 2px 10px;
|
520 |
-
padding: 3px 7px;
|
521 |
-
position: relative;
|
522 |
-
/*text-transform: uppercase; */
|
523 |
-
text-decoration: none;
|
524 |
-
}
|
525 |
-
.plugintags a:before{
|
526 |
-
/*border-top: 10px solid transparent;
|
527 |
-
border-right: 8px solid #767676;
|
528 |
-
border-bottom: 10px solid transparent; */
|
529 |
-
content: "";
|
530 |
-
height: 0;
|
531 |
-
position: absolute;
|
532 |
-
top: 0;
|
533 |
-
left: -8px;
|
534 |
-
width: 0;
|
535 |
-
}
|
536 |
-
.plugintags a:after{
|
537 |
-
background-color: #fff;
|
538 |
-
border-radius: 50%;
|
539 |
-
content: "";
|
540 |
-
height: 4px;
|
541 |
-
position: absolute;
|
542 |
-
top: 8px;
|
543 |
-
left: -2px;
|
544 |
-
width: 4px;
|
545 |
-
}
|
546 |
-
.plugintags a:hover{
|
547 |
-
/*background: #2ea2cc;
|
548 |
-
color: #fff;
|
549 |
-
text-shadow: none;
|
550 |
-
*/
|
551 |
-
}
|
552 |
-
.moreMenuList
|
553 |
-
{
|
554 |
-
border-radius: 0 !important;
|
555 |
}
|
556 |
-
|
557 |
-
{
|
558 |
-
padding:
|
559 |
-
|
560 |
-
|
561 |
-
-
|
562 |
-
|
563 |
-
margin-top:30px;
|
564 |
-
margin-bottom:20px;
|
565 |
-
position:relative;
|
566 |
-
}
|
567 |
-
#filenamedisplay{
|
568 |
-
height:65px;
|
569 |
-
padding-top: 30px;
|
570 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
571 |
input[type="checkbox"], #duplicatecontent {
|
572 |
-
margin-top: 0px;
|
573 |
-
-webkit-margin-start: -5px;
|
574 |
-
-webkit-margin-end: 0px;
|
575 |
}
|
576 |
|
577 |
-
#cust_post_empty
|
578 |
-
|
579 |
-
|
580 |
-
margin-
|
581 |
-
|
582 |
-
font-size:20px;
|
583 |
}
|
584 |
-
|
585 |
-
|
|
|
586 |
}
|
1 |
#accordion {
|
2 |
+
width: 98%;
|
3 |
+
margin-right: 15px;
|
4 |
+
margin-top: 22px;
|
5 |
+
float: left;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
6 |
}
|
7 |
+
|
8 |
+
.accordion-body {
|
9 |
+
background: #fff;
|
10 |
+
}
|
11 |
+
|
12 |
+
.tooltip_smack {
|
13 |
+
-moz-padding-start: 135px;
|
14 |
+
}
|
15 |
+
|
16 |
+
#accordion h3 {
|
17 |
+
font: normal 12px Verdana;
|
18 |
+
text-decoration: none;
|
19 |
+
position: relative;
|
20 |
+
padding: 7px 22px;
|
21 |
+
color: #fff;
|
22 |
+
outline: none;
|
23 |
+
background: #222222;
|
24 |
+
border: 1px solid #333333;
|
25 |
+
margin-top: -10px;
|
26 |
+
/*text-transform:uppercase; */
|
27 |
+
}
|
28 |
+
|
29 |
+
#accordion h3:hover {
|
30 |
+
top: 0px;
|
31 |
+
font-weight: normal;
|
32 |
+
background: #333;
|
33 |
+
color: #2EA2CC;
|
34 |
+
}
|
35 |
+
|
36 |
+
#sec-one, #sec-two, #sec-three, #sec-four {
|
37 |
+
border: 1px solid #CCC;
|
38 |
+
margin-top: -13px;
|
39 |
+
width: 100%;
|
40 |
+
background: #FFF;
|
41 |
+
}
|
42 |
+
|
43 |
+
#sec-two {
|
44 |
+
height: auto;
|
45 |
+
}
|
46 |
+
|
47 |
+
.csv-top-navigation-wrapper {
|
48 |
+
border-bottom: 1px solid #B7B7B7;
|
49 |
+
display: block;
|
50 |
+
height: 28px;
|
51 |
+
margin-bottom: 20px;
|
52 |
+
margin-top: 20px;
|
53 |
+
padding-bottom: 2px;
|
54 |
+
-webkit-padding-before: 0px;
|
55 |
+
-webkit-padding-end: 0px;
|
56 |
+
-webkit-padding-after: 0px;
|
57 |
+
-webkit-padding-start: 0px;
|
58 |
+
width: 100%;
|
59 |
+
}
|
60 |
+
|
61 |
+
.csv-top-navigation-wrapper li {
|
62 |
+
float: left;
|
63 |
+
display: inline;
|
64 |
+
margin: 0;
|
65 |
+
margin-right: 4px;
|
66 |
+
font: normal 12px Verdana;
|
67 |
+
text-decoration: none;
|
68 |
+
position: relative;
|
69 |
+
padding: 6px 10px;
|
70 |
+
-webkit-padding-before: 5px;
|
71 |
+
-webkit-padding-end: 15px;
|
72 |
+
-webkit-padding-after: 5px;
|
73 |
+
-webkit-padding-start: 15px;
|
74 |
+
border: 1px solid #333333;
|
75 |
+
color: #000;
|
76 |
+
/*text-transform:uppercase; */
|
77 |
+
/*background: #F7F7F7 url(../images/tabbg2.gif) repeat-x 0 0;*/
|
78 |
+
background: #222222;
|
79 |
+
border-radius: 3px 3px 0 0;
|
80 |
+
outline: none;
|
81 |
}
|
82 |
|
83 |
+
.csv-top-navigation-wrapper li a {
|
84 |
+
text-decoration: none;
|
85 |
+
color: #ffffff;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
86 |
}
|
87 |
+
|
88 |
+
.csv-top-navigation-wrapper li a:hover {
|
89 |
+
color: #2EA2CC;
|
90 |
}
|
91 |
+
|
92 |
+
.csv-top-navigation-wrapper li:hover {
|
93 |
+
/*background:White url(../images/tabbg.gif) repeat-x 0 0;*/
|
94 |
+
background: #333333;
|
95 |
}
|
96 |
+
|
97 |
+
.csv-top-navigation-wrapper li.selected {
|
98 |
+
/*background:White url(../images/tabbg.gif) repeat-x 0 0;*/
|
99 |
+
/*font-weight: bold;*/
|
100 |
+
background: #0074A2;
|
101 |
+
/*text-transform:uppercase;*/
|
102 |
}
|
103 |
+
|
104 |
+
.csv-top-navigation-wrapper li.selected a:hover {
|
105 |
+
color: #FFFFFF;
|
|
|
|
|
106 |
}
|
107 |
+
|
108 |
+
.navigationMenu {
|
109 |
+
text-decoration: none;
|
110 |
}
|
111 |
+
|
112 |
+
.selected {
|
113 |
+
|
114 |
}
|
115 |
|
116 |
+
.section-one {
|
117 |
+
padding-top: 15px;
|
118 |
+
}
|
119 |
|
120 |
+
.section-one input {
|
121 |
+
width: 65px;
|
122 |
}
|
123 |
+
|
124 |
+
.importer_icon img {
|
125 |
+
padding-right: 5px;
|
126 |
+
padding-top: 8px;
|
127 |
}
|
128 |
+
|
129 |
+
.importfile {
|
130 |
+
/* height : 300px; */
|
131 |
}
|
132 |
+
|
133 |
+
.uploadlabel {
|
134 |
+
float: left;
|
135 |
+
width: 100px;
|
136 |
+
padding-top: 10px;
|
|
|
|
|
137 |
}
|
138 |
|
139 |
+
.mandatory {
|
140 |
+
color: red;
|
|
|
|
|
141 |
}
|
142 |
+
|
143 |
+
.progress {
|
144 |
+
/*margin:10px 10px 0px 15px; */
|
145 |
+
width: 90%;
|
146 |
+
float: right;
|
147 |
+
margin-top: 5px;
|
148 |
}
|
149 |
+
|
150 |
+
.fileinput-button {
|
151 |
+
float: left;
|
|
|
|
|
152 |
}
|
153 |
+
|
154 |
+
.smackhelpswitcher {
|
155 |
+
border-bottom: 1px solid #A2A29D;
|
156 |
+
background-color: #E8F1F5;
|
157 |
+
text-decoration: none;
|
158 |
+
padding: 5px;
|
159 |
+
font-size: medium;
|
160 |
+
font-weight: bold;
|
161 |
+
padding: 7px;
|
162 |
+
min-width: 600px;
|
163 |
}
|
164 |
+
|
165 |
+
.switchercontent li input[type="checkbox"], .switchercontent input[type="checkbox"], .supportedplugins input[type="radio"] {
|
166 |
+
margin-top: -2px;
|
|
|
|
|
|
|
|
|
|
|
|
|
167 |
}
|
168 |
+
|
169 |
+
.mappingsection {
|
170 |
+
|
171 |
}
|
|
|
172 |
|
173 |
+
.importstatus {
|
174 |
+
padding: 10px 0px 35px 10px;
|
175 |
}
|
176 |
+
|
177 |
+
.mappingheader {
|
178 |
+
margin-top: 15px;
|
179 |
}
|
180 |
+
|
181 |
+
.mappingactions > span a.tooltip {
|
182 |
+
-webkit-margin-start: 130px;
|
183 |
+
-webkit-margin-end: 0px;
|
184 |
}
|
185 |
+
|
186 |
+
.panel {
|
187 |
+
margin-bottom: 20px;
|
188 |
+
background-color: #fff;
|
189 |
+
border: 1px solid transparent;
|
190 |
+
border-radius: 4px;
|
191 |
+
-webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
|
192 |
+
box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
|
193 |
}
|
194 |
+
|
195 |
.panel {
|
196 |
+
margin-top: 40px;
|
197 |
+
text-align: left;
|
198 |
+
padding: 10px;
|
199 |
+
margin-bottom: 0px;
|
200 |
+
}
|
201 |
+
|
202 |
+
.panel h4 {
|
203 |
+
font-weight: bold;
|
204 |
+
padding-bottom: 3px;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
205 |
}
|
206 |
+
|
207 |
.progress {
|
208 |
+
height: 20px;
|
209 |
+
overflow: hidden;
|
210 |
+
background-color: #f5f5f5;
|
211 |
+
border-radius: 4px;
|
212 |
+
-webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
|
213 |
+
box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
|
214 |
}
|
215 |
+
|
216 |
.btn-success {
|
217 |
+
color: #fff;
|
218 |
+
background-color: #5cb85c;
|
219 |
+
border-color: #4cae4c;
|
220 |
}
|
221 |
+
|
222 |
.btn {
|
223 |
+
display: inline-block;
|
224 |
+
padding: 6px 12px;
|
225 |
+
margin-bottom: 0;
|
226 |
+
font-size: 14px;
|
227 |
+
font-weight: normal;
|
228 |
+
line-height: 1.428571429;
|
229 |
+
text-align: center;
|
230 |
+
white-space: nowrap;
|
231 |
+
vertical-align: middle;
|
232 |
+
cursor: pointer;
|
233 |
+
border: 1px solid transparent;
|
234 |
+
border-radius: 4px;
|
235 |
+
-webkit-user-select: none;
|
236 |
+
-moz-user-select: none;
|
237 |
+
-ms-user-select: none;
|
238 |
+
-o-user-select: none;
|
239 |
+
user-select: none;
|
240 |
}
|
241 |
+
|
242 |
.glyphicon {
|
243 |
+
position: relative;
|
244 |
+
top: 1px;
|
245 |
+
display: inline-block;
|
246 |
+
font-family: 'Glyphicons Halflings';
|
247 |
+
-webkit-font-smoothing: antialiased;
|
248 |
+
font-style: normal;
|
249 |
+
font-weight: normal;
|
250 |
+
line-height: 1;
|
251 |
}
|
252 |
+
|
253 |
.glyphicon-plus:before {
|
254 |
+
content: "+";
|
255 |
}
|
256 |
+
|
257 |
.progress-bar-success {
|
258 |
+
background-color: #5cb85c;
|
259 |
}
|
260 |
+
|
261 |
.progress-bar {
|
262 |
+
float: left;
|
263 |
+
width: 0;
|
264 |
+
height: 100%;
|
265 |
+
font-size: 12px;
|
266 |
+
color: #fff;
|
267 |
+
text-align: center;
|
268 |
+
-webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
|
269 |
+
box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
|
270 |
+
-webkit-transition: width .6s ease;
|
271 |
+
transition: width .6s ease;
|
272 |
}
|
273 |
+
|
274 |
.container {
|
275 |
+
max-width: 1170px;
|
276 |
}
|
277 |
+
|
278 |
.container {
|
279 |
+
padding-right: 15px;
|
280 |
+
padding-left: 15px;
|
281 |
+
margin-right: auto;
|
282 |
+
margin-left: auto;
|
283 |
}
|
284 |
+
|
285 |
.container:before, .container:after {
|
286 |
+
display: table;
|
287 |
+
content: " ";
|
288 |
}
|
289 |
+
|
290 |
.panel-default {
|
291 |
+
border-color: #ddd;
|
292 |
+
}
|
293 |
+
|
294 |
+
.reportLog h3 {
|
295 |
+
font: normal 12px Verdana;
|
296 |
+
text-decoration: none;
|
297 |
+
position: relative;
|
298 |
+
padding: 7px 22px;
|
299 |
+
color: #FFF;
|
300 |
+
outline: none;
|
301 |
+
background: #222;
|
302 |
+
border: 1px solid #CCC;
|
303 |
+
margin-top: -13px;
|
304 |
+
/*text-transform:uppercase; */
|
305 |
+
-webkit-margin-before: 1em;
|
306 |
+
-webkit-margin-after: 1em;
|
307 |
+
-webkit-margin-start: 0px;
|
308 |
+
-webkit-margin-end: 0px;
|
309 |
+
}
|
310 |
+
|
311 |
+
.reportLog h3:hover {
|
312 |
+
color: #2EA2CC;
|
313 |
+
background: #333;
|
314 |
+
}
|
315 |
+
|
316 |
+
.reportLog {
|
317 |
+
width: 35%;
|
318 |
+
float: right;
|
319 |
+
margin-right: 15px;
|
320 |
+
height: 350px;
|
321 |
}
|
322 |
+
|
323 |
@-moz-document url-prefix() {
|
324 |
+
.reportLog {
|
325 |
margin-top: 26px;
|
326 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
327 |
}
|
328 |
|
329 |
+
.logcontainer {
|
330 |
+
height: 300px;
|
331 |
+
border: 1px solid #CCC;
|
332 |
+
margin-top: -13px;
|
333 |
+
overflow-y: scroll;
|
334 |
+
background: #fff;
|
335 |
}
|
336 |
|
337 |
+
.delimeter {
|
338 |
+
float: left;
|
339 |
+
margin-left: 35px;
|
340 |
+
margin-top: 7px;
|
341 |
+
margin-bottom: 7px;
|
342 |
+
}
|
343 |
+
|
344 |
+
.cutompostview {
|
345 |
+
margin-left: 10px;
|
346 |
+
}
|
347 |
+
|
348 |
+
#goto_element {
|
349 |
+
width: 85px;
|
350 |
}
|
351 |
|
352 |
+
a.tooltip {
|
353 |
+
outline: none;
|
354 |
+
}
|
355 |
+
|
356 |
+
a.tooltip strong {
|
357 |
+
line-height: 20px;
|
358 |
+
}
|
359 |
+
|
360 |
+
a.tooltip:hover {
|
361 |
+
text-decoration: none;
|
362 |
}
|
363 |
|
|
|
|
|
|
|
364 |
a.tooltip span {
|
365 |
+
z-index: 10;
|
366 |
+
display: none;
|
367 |
+
padding: 3px 12px;
|
368 |
}
|
369 |
|
370 |
+
a.tooltip:hover span {
|
371 |
+
display: inline;
|
372 |
+
position: absolute;
|
373 |
+
color: #111;
|
374 |
+
border: 1px solid #DCA;
|
375 |
+
background: #fffAF0;
|
376 |
+
}
|
377 |
|
378 |
+
.callout {
|
379 |
+
z-index: 20;
|
380 |
+
position: absolute;
|
381 |
+
top: 8px;
|
382 |
+
border: 0;
|
383 |
+
left: -12px;
|
384 |
+
}
|
385 |
+
|
386 |
+
a.tooltip span {
|
387 |
+
border-radius: 4px;
|
388 |
+
-moz-border-radius: 4px;
|
389 |
+
-webkit-border-radius: 4px;
|
390 |
|
391 |
+
-moz-box-shadow: 5px 5px 8px #CCC;
|
392 |
+
-webkit-box-shadow: 5px 5px 8px #CCC;
|
393 |
+
box-shadow: 5px 5px 8px #CCC;
|
394 |
}
|
395 |
+
|
396 |
+
.tooltipCustompost {
|
397 |
+
margin-top: -27px;
|
398 |
+
margin-left: 27px;
|
399 |
+
width: 225px;
|
400 |
+
line-height: 30px;
|
401 |
}
|
402 |
|
403 |
+
.tooltipPostStatus {
|
404 |
+
min-height: 50px;
|
405 |
+
margin-top: -13px;
|
406 |
+
margin-left: 13px;
|
407 |
+
width: 325px;
|
408 |
+
line-height: 20px;
|
409 |
+
-webkit-margin-start: 28px;
|
410 |
+
-webkit-margin-end: 0px;
|
411 |
+
-webkit-margin-before: -28px;
|
|
|
412 |
}
|
413 |
|
414 |
+
.tooltipClearMapping {
|
415 |
+
margin-top: -13px;
|
416 |
+
margin-left: 13px;
|
417 |
+
width: 225px;
|
418 |
+
line-height: 30px;
|
419 |
+
-webkit-margin-start: 21px;
|
420 |
+
-webkit-margin-end: 0px;
|
421 |
+
-webkit-margin-before: -28px;
|
|
|
422 |
}
|
423 |
|
424 |
+
.goto_importer_setting {
|
425 |
+
margin-left: 50px;
|
426 |
+
margin-bottom: 50px;
|
|
|
427 |
}
|
428 |
|
429 |
+
.clear_mapping {
|
430 |
+
/*margin-left:25px;*/
|
|
|
431 |
}
|
432 |
|
433 |
.maperror {
|
434 |
+
position: fixed;
|
435 |
+
z-index: 999;
|
436 |
+
width: 250px;
|
437 |
+
right: 200px;
|
438 |
}
|
439 |
|
440 |
.error {
|
441 |
+
background-color: #FAEBE7 !important;
|
442 |
+
border: 1px solid #F16048 !important;
|
443 |
+
color: #DF280A !important;
|
444 |
}
|
445 |
|
446 |
.msg {
|
447 |
+
font-weight: bold !important;
|
448 |
+
margin: 0 auto !important;
|
449 |
+
width: 60%;
|
450 |
+
text-align: center;
|
451 |
+
min-height: 23px !important;
|
452 |
+
padding: 8px 8px 2px 32px !important;
|
453 |
+
margin-top: 5px !important;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
454 |
}
|
455 |
|
456 |
+
.warning {
|
457 |
+
float: left;
|
458 |
+
padding: 5px 5px;
|
459 |
+
border: 2px solid red;
|
460 |
+
border-radius: 4px;
|
461 |
+
-moz-border-radius: 4px;
|
462 |
+
-webkit-border-radius: 4px;
|
463 |
+
margin-left: 100px;
|
464 |
+
margin-top: 20px;
|
465 |
}
|
466 |
|
467 |
+
.warnings {
|
468 |
+
padding: 10px 10px;
|
469 |
+
border: 2px solid red;
|
470 |
+
border-radius: 4px;
|
471 |
+
-moz-border-radius: 4px;
|
472 |
+
-webkit-border-radius: 4px;
|
473 |
+
/* top:190px; */
|
474 |
+
position: relative;
|
475 |
+
}
|
476 |
|
477 |
+
.secondformheader {
|
478 |
+
padding-left: 20px;
|
479 |
}
|
480 |
|
481 |
+
#settings {
|
482 |
+
line-height: 200%;
|
483 |
}
|
484 |
|
485 |
+
.left_align {
|
486 |
+
/*padding-left: 15px;*/
|
487 |
}
|
488 |
+
|
489 |
+
.table-importer {
|
490 |
+
width: 100%;
|
491 |
}
|
492 |
|
493 |
+
.moreMenu {
|
494 |
+
z-index: 5 !important;
|
495 |
+
background-color: #222222 !important;
|
|
|
496 |
}
|
497 |
+
|
498 |
+
.moreMenu ul {
|
499 |
+
display: none;
|
500 |
}
|
501 |
|
502 |
+
.moreMenu:hover > ul {
|
503 |
+
color: #ffffff;
|
504 |
+
display: block;
|
505 |
+
position: absolute;
|
506 |
+
margin-top: 7px;
|
507 |
+
margin-left: -16px;
|
|
|
508 |
}
|
509 |
+
|
510 |
.moreMenu ul li {
|
511 |
+
width: 145px;
|
512 |
}
|
513 |
+
|
514 |
.moreMenu li {
|
515 |
+
position: relative;
|
516 |
}
|
517 |
+
|
518 |
/*.contactus
|
519 |
{
|
520 |
width: 300px;
|
521 |
} */
|
522 |
+
#contactus, #usefullinks {
|
523 |
+
width: 50%;
|
524 |
+
padding-top: 10px;
|
525 |
+
float: left;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
526 |
}
|
527 |
+
|
528 |
+
.usefullinks {
|
529 |
+
padding-top: 12px;
|
530 |
+
}
|
531 |
+
|
532 |
+
.promobox .accordion-inner {
|
533 |
+
padding: 14px;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
534 |
}
|
535 |
+
|
536 |
+
#promobox {
|
537 |
+
height: auto;
|
538 |
+
width: 50%;
|
539 |
+
padding: 10px;
|
540 |
+
}
|
541 |
+
|
542 |
+
#pluginpromo {
|
543 |
+
margin-top: 15px;
|
544 |
+
}
|
545 |
+
|
546 |
+
#pluginpromo, #promobox {
|
547 |
+
float: left;
|
548 |
+
}
|
549 |
+
|
550 |
+
.stars li {
|
551 |
+
float: left;
|
552 |
+
width: 20px;
|
553 |
+
height: 20px;
|
554 |
+
background-color: #fff;
|
555 |
+
border: 1px solid #ccc;
|
556 |
+
font-size: 10px;
|
557 |
+
border-radius: 50%;
|
558 |
+
text-align: center;
|
559 |
+
line-height: 20px;
|
560 |
+
margin-right: 3px;
|
561 |
+
transition: all 0.2s linear;
|
562 |
+
}
|
563 |
+
|
564 |
+
.stars:hover li {
|
565 |
+
background-color: yellow;
|
566 |
+
}
|
567 |
+
|
568 |
+
.stars li:hover ~ li {
|
569 |
+
background-color: #fff;
|
570 |
+
}
|
571 |
+
|
572 |
+
.sociallink {
|
573 |
+
margin-right: 12px;
|
574 |
+
}
|
575 |
+
|
576 |
+
.plugintags a {
|
577 |
+
/*background-color: #767676;
|
578 |
+
border-radius: 0 2px 2px 0;
|
579 |
+
color: #fff; */
|
580 |
+
display: inline-block;
|
581 |
+
font-size: 11px;
|
582 |
+
font-weight: 700;
|
583 |
+
line-height: 1.2727272727;
|
584 |
+
margin: 2px 4px 2px 10px;
|
585 |
+
padding: 3px 7px;
|
586 |
+
position: relative;
|
587 |
+
/*text-transform: uppercase; */
|
588 |
+
text-decoration: none;
|
589 |
+
}
|
590 |
+
|
591 |
+
.plugintags a:before {
|
592 |
+
/*border-top: 10px solid transparent;
|
593 |
+
border-right: 8px solid #767676;
|
594 |
+
border-bottom: 10px solid transparent; */
|
595 |
+
content: "";
|
596 |
+
height: 0;
|
597 |
+
position: absolute;
|
598 |
+
top: 0;
|
599 |
+
left: -8px;
|
600 |
+
width: 0;
|
601 |
+
}
|
602 |
+
|
603 |
+
.plugintags a:after {
|
604 |
+
background-color: #fff;
|
605 |
+
border-radius: 50%;
|
606 |
+
content: "";
|
607 |
+
height: 4px;
|
608 |
+
position: absolute;
|
609 |
+
top: 8px;
|
610 |
+
left: -2px;
|
611 |
+
width: 4px;
|
612 |
+
}
|
613 |
+
|
614 |
+
.plugintags a:hover {
|
615 |
+
/*background: #2ea2cc;
|
616 |
+
color: #fff;
|
617 |
+
text-shadow: none;
|
618 |
+
*/
|
619 |
+
}
|
620 |
+
|
621 |
+
.moreMenuList {
|
622 |
+
border-radius: 0 !important;
|
623 |
+
}
|
624 |
+
|
625 |
+
.msgborder {
|
626 |
+
padding: 10px;
|
627 |
+
border: 2px solid green;
|
628 |
+
border-radius: 4px;
|
629 |
+
-moz-border-radius: 4px;
|
630 |
+
-webkit-border-radius: 4px;
|
631 |
+
margin-top: 30px;
|
632 |
+
margin-bottom: 20px;
|
633 |
+
position: relative;
|
634 |
+
}
|
635 |
+
|
636 |
+
#filenamedisplay {
|
637 |
+
height: 65px;
|
638 |
+
padding-top: 30px;
|
639 |
+
}
|
640 |
+
|
641 |
input[type="checkbox"], #duplicatecontent {
|
642 |
+
margin-top: 0px;
|
643 |
+
-webkit-margin-start: -5px;
|
644 |
+
-webkit-margin-end: 0px;
|
645 |
}
|
646 |
|
647 |
+
#cust_post_empty {
|
648 |
+
color: red;
|
649 |
+
margin-left: 100px;
|
650 |
+
margin-top: 7px;
|
651 |
+
font-size: 20px;
|
|
|
652 |
}
|
653 |
+
|
654 |
+
.prolinks {
|
655 |
+
padding: 0px 10px;
|
656 |
}
|
css/morris.css
ADDED
@@ -0,0 +1,2 @@
|
|
|
|
|
1 |
+
.morris-hover{position:absolute;z-index:1000}.morris-hover.morris-default-style{border-radius:10px;padding:6px;color:#666;background:rgba(255,255,255,0.8);border:solid 2px rgba(230,230,230,0.8);font-family:sans-serif;font-size:12px;text-align:center}.morris-hover.morris-default-style .morris-hover-row-label{font-weight:bold;margin:0.25em 0}
|
2 |
+
.morris-hover.morris-default-style .morris-hover-point{white-space:nowrap;margin:0.1em 0}
|
css/style.css
CHANGED
@@ -14,258 +14,320 @@ body {
|
|
14 |
}
|
15 |
|
16 |
.container-fluid {
|
17 |
-
/* padding-left: 20px; */
|
18 |
-
|
19 |
-
|
20 |
-
|
21 |
}
|
|
|
22 |
.container-fluid:before, .container-fluid:after {
|
23 |
-
|
24 |
-
|
25 |
}
|
|
|
26 |
.container-fluid:after {
|
27 |
-
|
28 |
}
|
|
|
29 |
.accordion {
|
30 |
-
|
31 |
}
|
|
|
32 |
.accordion-group {
|
33 |
-
|
34 |
-
|
35 |
-
|
36 |
-
|
37 |
-
|
38 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
39 |
.activate {
|
40 |
-
color
|
41 |
-
background-color
|
42 |
-
|
43 |
-
.deactivate {
|
44 |
|
|
|
45 |
|
46 |
-
|
47 |
|
48 |
.accordion-heading {
|
49 |
-
|
50 |
}
|
51 |
-
|
52 |
-
|
53 |
-
|
|
|
54 |
}
|
|
|
55 |
.accordion-heading .accordion-toggle {
|
56 |
-
|
57 |
-
|
58 |
}
|
59 |
-
|
60 |
-
|
61 |
-
|
|
|
62 |
}
|
|
|
63 |
.accordion-inner {
|
64 |
-
|
65 |
-
|
66 |
-
|
67 |
}
|
|
|
68 |
.accordion-group {
|
69 |
-
|
70 |
-
|
71 |
-
|
72 |
-
|
73 |
-
|
74 |
}
|
|
|
75 |
.accordion-heading {
|
76 |
-
|
77 |
-
|
78 |
}
|
|
|
79 |
.accordion-heading .accordion-toggle {
|
80 |
-
|
81 |
-
|
82 |
-
|
83 |
}
|
|
|
84 |
.accordion-inner {
|
85 |
-
|
86 |
-
|
87 |
}
|
|
|
88 |
.collapse {
|
89 |
-
|
90 |
-
|
91 |
-
|
92 |
-
|
93 |
-
|
94 |
-
|
95 |
-
|
96 |
-
|
97 |
}
|
|
|
98 |
.collapse.in {
|
99 |
-
|
100 |
}
|
|
|
101 |
.nav-collapse.collapse {
|
102 |
-
|
103 |
}
|
104 |
-
|
105 |
-
|
106 |
-
|
|
|
107 |
}
|
108 |
|
109 |
-
.alert{
|
110 |
-
text-align:center;
|
111 |
-
padding:10px;
|
112 |
-
margin:5px;
|
113 |
-
border-radius:3px;
|
114 |
}
|
|
|
115 |
.alert-warning {
|
116 |
-
background-color: #FAEBE7 !important;
|
117 |
-
border: 1px solid #F16048 !important;
|
118 |
-
color: #DF280A !important;
|
119 |
}
|
120 |
-
|
121 |
-
|
|
|
122 |
}
|
123 |
-
|
124 |
-
|
|
|
125 |
}
|
126 |
-
|
127 |
-
|
|
|
128 |
}
|
129 |
-
|
130 |
-
|
131 |
-
|
132 |
-
|
|
|
133 |
}
|
134 |
-
|
135 |
-
|
|
|
136 |
}
|
137 |
-
|
138 |
-
|
|
|
139 |
}
|
|
|
140 |
.typeofplugin {
|
141 |
-
text-transform:uppercase;
|
142 |
}
|
143 |
-
|
144 |
-
|
|
|
145 |
}
|
146 |
-
|
147 |
-
|
148 |
-
|
|
|
149 |
}
|
150 |
-
|
151 |
-
|
152 |
-
|
153 |
-
|
|
|
154 |
}
|
155 |
-
|
156 |
-
|
|
|
157 |
}
|
158 |
-
|
159 |
-
|
160 |
-
|
|
|
161 |
}
|
162 |
-
|
163 |
-
|
164 |
-
|
165 |
-
|
166 |
-
|
167 |
-
border-top-
|
168 |
-
|
169 |
-
font-
|
170 |
-
|
|
|
171 |
}
|
172 |
-
|
173 |
-
|
|
|
174 |
}
|
175 |
-
|
176 |
-
|
177 |
-
|
178 |
-
|
179 |
-
|
|
|
180 |
}
|
181 |
-
|
182 |
-
|
|
|
183 |
}
|
184 |
-
|
185 |
-
|
186 |
-
|
187 |
-
|
188 |
-
border: 1px solid #
|
189 |
-
border
|
|
|
190 |
}
|
191 |
-
|
192 |
-
|
|
|
193 |
}
|
194 |
-
|
195 |
-
|
196 |
-
|
|
|
197 |
}
|
198 |
-
|
199 |
-
|
|
|
200 |
}
|
201 |
-
|
202 |
-
|
|
|
203 |
}
|
204 |
-
|
205 |
-
|
|
|
206 |
}
|
207 |
-
|
208 |
-
|
|
|
209 |
}
|
210 |
-
|
211 |
-
|
|
|
212 |
}
|
213 |
-
|
214 |
-
|
|
|
215 |
}
|
216 |
-
|
217 |
-
|
|
|
218 |
}
|
|
|
219 |
.form-group label {
|
220 |
-
/* margin-top:8px; */
|
221 |
-
margin-top
|
222 |
-
-webkit-margin-start: 8px;
|
223 |
-
-webkit-margin-end: 0px;
|
224 |
}
|
225 |
-
|
226 |
-
|
|
|
227 |
}
|
|
|
228 |
.importstatus label {
|
229 |
-
margin-top:12px
|
230 |
}
|
231 |
-
|
232 |
-
|
233 |
-
|
|
|
234 |
}
|
|
|
235 |
.newmoduleicon {
|
236 |
-
z-index: 1000;
|
237 |
-
margin-top: -12px;
|
238 |
-
margin-left: -10px;
|
239 |
-
position: absolute;
|
240 |
}
|
|
|
241 |
.method-row {
|
242 |
-
width:100%;
|
243 |
}
|
244 |
|
245 |
.importfileoption .header-text {
|
246 |
-
|
247 |
-
|
248 |
}
|
249 |
|
250 |
.method1, .method2, .method3, .method4 {
|
251 |
-
|
252 |
}
|
253 |
|
254 |
.method1 img, .method2 img, .method3 img, .method4 img, #showmappingtemplate img, .databaseoptimization img {
|
255 |
-
|
256 |
}
|
257 |
|
258 |
#boxmethod1, #boxmethod2, #boxmethod3, #boxmethod4 {
|
259 |
-
|
260 |
}
|
261 |
|
262 |
.scheduling-config {
|
263 |
-
|
264 |
}
|
265 |
|
266 |
.scheduling-config td {
|
267 |
-
|
268 |
}
|
|
|
269 |
div#mappingheader select {
|
270 |
width: 170px;
|
271 |
}
|
@@ -282,46 +344,46 @@ div#mappingheader select {
|
|
282 |
}
|
283 |
|
284 |
.method-row {
|
285 |
-
width:100%;
|
286 |
}
|
287 |
|
288 |
#checkallModules, #uncheckallModules {
|
289 |
-
|
290 |
-
|
291 |
-
|
292 |
-
|
293 |
-
|
294 |
|
295 |
}
|
296 |
|
297 |
.left_align {
|
298 |
-
width:23%;
|
299 |
}
|
300 |
|
301 |
.exportmodule > thead > tr > th, .exportmodule > tbody > tr > th, .exportmodule > tfoot > tr > th, .exportmodule > thead > tr > td, .exportmodule > tbody > tr > td, .exportmodule > tfoot > tr > td {
|
302 |
-
padding: 8px;
|
303 |
-
line-height: 1.428571429;
|
304 |
-
vertical-align: top;
|
305 |
-
border-top: 1px solid #ffffff !important;
|
306 |
}
|
307 |
|
308 |
.advancemediahandling {
|
309 |
-
padding-right:15px;
|
310 |
-
float:left;
|
311 |
}
|
312 |
|
313 |
.media_handling {
|
314 |
-
height: 50px;
|
315 |
-
padding-top: 15px;
|
316 |
-
padding-left: 15px;
|
317 |
}
|
318 |
|
319 |
.inside input[type=radio] {
|
320 |
-
margin-top: -2px;
|
321 |
}
|
322 |
|
323 |
.inside label {
|
324 |
-
padding-right: 20px;
|
325 |
}
|
326 |
|
327 |
/*.mappingheader .table-condensed label {
|
@@ -332,326 +394,377 @@ margin-top:13px;
|
|
332 |
}*/
|
333 |
/*settings css*/
|
334 |
.selected {
|
335 |
-
background-color
|
336 |
-
color
|
337 |
-
border:0 none !important;
|
338 |
}
|
|
|
339 |
.selected:hover {
|
340 |
-
background-color
|
341 |
-
opacity:1;
|
342 |
-
color
|
343 |
}
|
|
|
344 |
.not-selected {
|
345 |
-
background-color
|
346 |
-
color
|
347 |
-
opacity:0.7;
|
348 |
}
|
|
|
349 |
.bg-sidebar {
|
350 |
-
background-color
|
351 |
-
}
|
352 |
-
#sidebar ul
|
353 |
-
{
|
354 |
-
margin-top: -1px;
|
355 |
-
margin-top: 0px;
|
356 |
-
width:100%;
|
357 |
-
float:left;
|
358 |
-
cursor:pointer;
|
359 |
-
position: relative;
|
360 |
-
list-style-type: none;
|
361 |
-
padding-left:5px;
|
362 |
-
}
|
363 |
-
#sidebar ul > li
|
364 |
-
{
|
365 |
-
border-right: 1px solid #e7e7e7;
|
366 |
-
border-bottom: 1px solid #e7e7e7;
|
367 |
-
margin-left:-5px;
|
368 |
-
margin-bottom: -0px;
|
369 |
-
padding:10px 23px;
|
370 |
-
font-weight:700;
|
371 |
-
font-size:13px;
|
372 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
373 |
#sidebar li:hover {
|
374 |
-
background-color
|
375 |
-
color
|
376 |
}
|
|
|
377 |
#contentbar {
|
378 |
-
color: #444444;
|
379 |
-
display:inline-block;
|
380 |
-
font-family: "Open Sans",sans-serif;
|
381 |
-
font-size: 13px;
|
382 |
-
line-height: 1.4em;
|
383 |
-
background: none repeat scroll 0 0 #FCFCFC;
|
384 |
-
width: 73.5%;
|
385 |
-
height:965px;
|
386 |
-
border-right:1px solid #D1D1D1;
|
387 |
-
position: absolute;
|
388 |
-
margin-left:0%;
|
389 |
-
float:right;
|
390 |
-
min-height:499px;
|
391 |
}
|
|
|
392 |
#sidebar {
|
393 |
-
float:left;
|
394 |
-
height:965px;
|
395 |
-
border-left:1px solid #D1D1D1;
|
396 |
-
color
|
397 |
-
background
|
398 |
-
width:25%;
|
399 |
-
min-height:499px;
|
400 |
-
}
|
401 |
-
|
402 |
-
{
|
403 |
-
width:100%;
|
404 |
}
|
|
|
405 |
.title {
|
406 |
-
border-bottom: 1px solid #E7E7E7;
|
407 |
-
margin-left:25px;
|
408 |
-
margin-right:25px;
|
409 |
}
|
|
|
410 |
.title > h3 {
|
411 |
-
color: #222;
|
412 |
-
font-family: "Open Sans",sans-serif;
|
413 |
-
font-size: 1.3em;
|
414 |
-
font-weight: 600;
|
415 |
-
line-height: 2em;
|
416 |
-
margin-top:10px;
|
417 |
}
|
|
|
418 |
#innertitle {
|
419 |
-
color: #333 !important;
|
420 |
-
font-family: "Open Sans",sans-serif !important;
|
421 |
-
font-size: 14px !important;
|
422 |
-
font-weight: 700 !important;
|
423 |
-
}
|
424 |
-
#data
|
425 |
-
{
|
426 |
-
font-size:13px;
|
427 |
-
color:#666;
|
428 |
-
font-weight:400;
|
429 |
-
margin-left:25px;
|
430 |
-
margin-right:25px;
|
431 |
-
padding-left:30px;
|
432 |
-
padding-top:10px;
|
433 |
-
padding-bottom: 10px;
|
434 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
435 |
#resetcustfield {
|
436 |
float: right;
|
437 |
margin-top: -33px;
|
438 |
margin-right: 8px;
|
439 |
}
|
440 |
-
|
441 |
-
#
|
442 |
-
|
|
|
443 |
}
|
444 |
-
|
445 |
-
#
|
446 |
-
|
|
|
447 |
}
|
|
|
448 |
#activemenu {
|
449 |
margin-left: 3px;
|
450 |
margin-top: 15px;
|
451 |
-
font-family: "Open Sans",sans-serif;
|
452 |
font-weight: normal;
|
453 |
font-style: normal;
|
454 |
font-size: 1.7em;
|
455 |
}
|
|
|
456 |
.tabase table {
|
457 |
-
width:80%;
|
458 |
}
|
|
|
459 |
#align {
|
460 |
-
padding-top:5px;
|
461 |
-
padding-left:5px;
|
462 |
-
color
|
463 |
-
font-size:16px;
|
464 |
-
font-family: "open sans";
|
465 |
}
|
|
|
466 |
#data table {
|
467 |
-
width:88%;
|
468 |
}
|
|
|
469 |
.security-perfoemance {
|
470 |
-
-webkit-padding-after: 26px !important;
|
471 |
}
|
|
|
472 |
.custom-fields {
|
473 |
-
-webkit-padding-after: 14px !important;
|
474 |
}
|
|
|
475 |
.databorder tr {
|
476 |
-
border-bottom:1px solid #E7E7E7;
|
477 |
}
|
|
|
478 |
.databorder tr:last-child {
|
479 |
-
border-bottom: 0 none !important;
|
480 |
}
|
|
|
481 |
#data td {
|
482 |
-
padding: 8px 0;
|
483 |
}
|
|
|
484 |
#settingheader {
|
485 |
-
border:1px solid #D1D1D1;
|
486 |
-
height:52px;
|
487 |
-
margin-right:23px;
|
488 |
-
margin-top: -17px;
|
489 |
-
width:98%;
|
490 |
}
|
|
|
491 |
#bottomsave {
|
492 |
-
border-bottom:1px solid #D1D1D1;
|
493 |
-
border-left:1px solid #D1D1D1;
|
494 |
-
border-right:1px solid #D1D1D1;
|
495 |
-
height:52px;
|
496 |
-
margin-right:23px;
|
497 |
-
margin-top: -4px;
|
498 |
-
width:98%;
|
499 |
}
|
|
|
500 |
#settingsholder {
|
501 |
-
display:inline-block;
|
502 |
-
height:966px;
|
503 |
-
width:98%;
|
504 |
-
border-bottom:1px solid #D1D1D1;
|
505 |
-
min-height:500px;
|
506 |
}
|
|
|
507 |
#resetopt {
|
508 |
-
color: #0099d5;
|
509 |
}
|
|
|
510 |
.settings-icon {
|
511 |
-
padding-right: 7px;
|
512 |
}
|
|
|
513 |
.uifree-settings {
|
514 |
-
padding-top: 10px;
|
515 |
}
|
516 |
-
|
517 |
-
|
|
|
518 |
}
|
|
|
519 |
.corner-icon > img {
|
520 |
-
margin-left: 11px;
|
521 |
-
margin-top: 13px;
|
522 |
}
|
|
|
523 |
.enablesetting {
|
524 |
-
background-color
|
525 |
-
color
|
526 |
-
border-color: #004f6f;
|
527 |
-
box-shadow: 0 1px 0 #00abef inset, 0 1px 0 rgba(0, 0, 0, 0.15);
|
528 |
-
border-style: solid;
|
529 |
-
border-width: 1px;
|
530 |
-
cursor: pointer;
|
531 |
-
line-height: normal;
|
532 |
-
margin-right: -4px;
|
533 |
-
padding: 5px;
|
534 |
-
border-radius:5px;
|
535 |
-
text-align:center;
|
536 |
}
|
|
|
537 |
.disablesetting {
|
538 |
-
background-color: #e6e6e6;
|
539 |
-
background-image: linear-gradient(#fff, #fff 25%, #e6e6e6);
|
540 |
-
background-repeat: no-repeat;
|
541 |
-
border-color: #ccc #ccc #bbb;
|
542 |
-
border-image: none;
|
543 |
-
border-style: solid;
|
544 |
-
border-width: 1px;
|
545 |
-
box-shadow: 0 1px 0 rgba(255, 255, 255, 0.2) inset, 0 1px 2px rgba(0, 0, 0, 0.05);
|
546 |
-
cursor: pointer;
|
547 |
-
line-height: normal;
|
548 |
-
margin-right: -4px;
|
549 |
-
padding: 5px;
|
550 |
-
text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75);
|
551 |
-
border-radius:5px;
|
552 |
-
text-align:center;
|
553 |
}
|
|
|
554 |
.debug-info-name {
|
555 |
-
width:40%;
|
556 |
}
|
|
|
557 |
.ini-configured-values, .min-requirement-values {
|
558 |
-
text-align: center;
|
559 |
}
|
|
|
560 |
.moduleavail {
|
561 |
float: left;
|
562 |
margin: 6px 0 0 20px !important;
|
563 |
position: absolute;
|
564 |
}
|
|
|
565 |
#pluginavail {
|
566 |
-
width: 8px;
|
567 |
-
height: 9px;
|
568 |
-
border-radius: 15px;
|
569 |
-
float:right;
|
570 |
-
margin-top: 11px;
|
571 |
}
|
|
|
572 |
#repavail {
|
573 |
-
width: 8px;
|
574 |
-
height: 9px;
|
575 |
-
border-radius: 15px;
|
576 |
}
|
|
|
577 |
#repplugin {
|
578 |
padding-left: 5px;
|
579 |
padding-top: 5px;
|
580 |
}
|
581 |
-
|
582 |
-
|
583 |
-
|
|
|
584 |
}
|
|
|
585 |
/*End of settings css*/
|
586 |
|
587 |
/*Export Settings*/
|
588 |
-
#exporttable input[type="radio"],input[type="checkbox"] {
|
589 |
-
|
590 |
-
|
591 |
-
|
592 |
}
|
|
|
593 |
/*End of export section*/
|
594 |
-
.inside input[type="radio"],input[type="checkbox"] {
|
595 |
-
|
596 |
-
|
597 |
-
|
598 |
}
|
|
|
599 |
#renameradio input[type="radio"] {
|
600 |
-
|
601 |
-
|
602 |
-
|
603 |
}
|
|
|
604 |
#updatediv input[type="checkbox"] {
|
605 |
-
|
606 |
-
|
607 |
-
|
608 |
}
|
|
|
609 |
#savetemp input[type="radio"] {
|
610 |
-
|
611 |
-
|
612 |
-
|
613 |
}
|
614 |
-
|
615 |
-
|
616 |
-
|
617 |
-
font-
|
618 |
-
font-
|
|
|
619 |
}
|
620 |
|
621 |
-
#importalign
|
622 |
-
padding-top:5px !important;
|
623 |
-
padding-left:5px !important;
|
624 |
-
color
|
625 |
-
font-size:14px !important;
|
626 |
-
font-family: "open sans" !important;
|
627 |
}
|
|
|
628 |
#importalign > input[type="radio"], input[type="checkbox"] {
|
629 |
-
margin: 0px 6px !important;
|
630 |
}
|
|
|
631 |
.importstatus, #importalign {
|
632 |
-
margin-top:0px;
|
633 |
}
|
|
|
634 |
.csvheader, .csvcolumnvalue {
|
635 |
-
font-size: 13px;
|
636 |
-
font-style: normal;
|
637 |
-
font-weight: 400;
|
638 |
-
color
|
639 |
}
|
|
|
640 |
div#log {
|
641 |
-
color: #666;
|
642 |
}
|
|
|
643 |
.columnheader {
|
644 |
-
font-size: 1.25em;
|
645 |
}
|
646 |
|
647 |
.form-group {
|
648 |
-
margin-top: 10px;
|
649 |
}
|
|
|
650 |
/*Summary log*/
|
651 |
#logtabs {
|
652 |
-
height:315px !important;
|
653 |
}
|
|
|
654 |
/*End off summary*/
|
655 |
#noPlugin {
|
656 |
-
margin: 5% 12%;
|
657 |
}
|
14 |
}
|
15 |
|
16 |
.container-fluid {
|
17 |
+
/* padding-left: 20px; */
|
18 |
+
padding-right: 20px;
|
19 |
+
width: 100%;
|
20 |
+
*zoom: 1;
|
21 |
}
|
22 |
+
|
23 |
.container-fluid:before, .container-fluid:after {
|
24 |
+
display: table;
|
25 |
+
content: "";
|
26 |
}
|
27 |
+
|
28 |
.container-fluid:after {
|
29 |
+
clear: both;
|
30 |
}
|
31 |
+
|
32 |
.accordion {
|
33 |
+
margin-bottom: 18px;
|
34 |
}
|
35 |
+
|
36 |
.accordion-group {
|
37 |
+
margin-bottom: 2px;
|
38 |
+
border: 1px solid #e5e5e5;
|
39 |
+
-webkit-border-radius: 4px;
|
40 |
+
-moz-border-radius: 4px;
|
41 |
+
border-radius: 4px;
|
42 |
}
|
43 |
+
|
44 |
+
.wpfields {
|
45 |
+
padding-left: 20px;
|
46 |
+
}
|
47 |
+
|
48 |
+
.samptxt {
|
49 |
+
color: #2ea2cc;
|
50 |
+
font-size: 11px;
|
51 |
+
font-family: "Open Sans", sans-serif !important;
|
52 |
+
margin-top: -8px;
|
53 |
+
}
|
54 |
+
|
55 |
.activate {
|
56 |
+
color: #fff;
|
57 |
+
background-color: #0074A2;
|
58 |
+
}
|
|
|
59 |
|
60 |
+
.deactivate {
|
61 |
|
62 |
+
}
|
63 |
|
64 |
.accordion-heading {
|
65 |
+
border-bottom: 0;
|
66 |
}
|
67 |
+
|
68 |
+
.accordion-heading a {
|
69 |
+
text-decoration: none;
|
70 |
+
color: #ffffff;
|
71 |
}
|
72 |
+
|
73 |
.accordion-heading .accordion-toggle {
|
74 |
+
display: block;
|
75 |
+
padding: 8px 15px;
|
76 |
}
|
77 |
+
|
78 |
+
.accordion-heading a:hover {
|
79 |
+
color: #2EA2CC;
|
80 |
+
text-decoration: none;
|
81 |
}
|
82 |
+
|
83 |
.accordion-inner {
|
84 |
+
padding: 9px 15px;
|
85 |
+
background: #ffffff;
|
86 |
+
border-top: 1px solid #e5e5e5;
|
87 |
}
|
88 |
+
|
89 |
.accordion-group {
|
90 |
+
margin-bottom: 2px;
|
91 |
+
border: 1px solid #e5e5e5;
|
92 |
+
-webkit-border-radius: 4px;
|
93 |
+
-moz-border-radius: 4px;
|
94 |
+
border-radius: 4px;
|
95 |
}
|
96 |
+
|
97 |
.accordion-heading {
|
98 |
+
border-bottom: 0;
|
99 |
+
background: #222222;
|
100 |
}
|
101 |
+
|
102 |
.accordion-heading .accordion-toggle {
|
103 |
+
display: block;
|
104 |
+
padding: 8px 15px;
|
105 |
+
font: 12px Verdana;
|
106 |
}
|
107 |
+
|
108 |
.accordion-inner {
|
109 |
+
padding: 9px 10px;
|
110 |
+
border-top: 1px solid #e5e5e5;
|
111 |
}
|
112 |
+
|
113 |
.collapse {
|
114 |
+
-webkit-transition: height 0.35s ease;
|
115 |
+
-moz-transition: height 0.35s ease;
|
116 |
+
-ms-transition: height 0.35s ease;
|
117 |
+
-o-transition: height 0.35s ease;
|
118 |
+
transition: height 0.35s ease;
|
119 |
+
position: relative;
|
120 |
+
overflow: hidden;
|
121 |
+
height: 0;
|
122 |
}
|
123 |
+
|
124 |
.collapse.in {
|
125 |
+
height: auto;
|
126 |
}
|
127 |
+
|
128 |
.nav-collapse.collapse {
|
129 |
+
height: auto;
|
130 |
}
|
131 |
+
|
132 |
+
.success {
|
133 |
+
background-color: #EAF0D5;
|
134 |
+
border: 1px solid #008000;
|
135 |
}
|
136 |
|
137 |
+
.alert {
|
138 |
+
text-align: center;
|
139 |
+
padding: 10px;
|
140 |
+
margin: 5px;
|
141 |
+
border-radius: 3px;
|
142 |
}
|
143 |
+
|
144 |
.alert-warning {
|
145 |
+
background-color: #FAEBE7 !important;
|
146 |
+
border: 1px solid #F16048 !important;
|
147 |
+
color: #DF280A !important;
|
148 |
}
|
149 |
+
|
150 |
+
.pluginAbsent:hover {
|
151 |
+
color: red;
|
152 |
}
|
153 |
+
|
154 |
+
.pluginPresent:hover {
|
155 |
+
color: red;
|
156 |
}
|
157 |
+
|
158 |
+
.pluginActive:hover {
|
159 |
+
color: green;
|
160 |
}
|
161 |
+
|
162 |
+
.container-fluid label {
|
163 |
+
display: block;
|
164 |
+
/*font-size: 1.2em;*/
|
165 |
+
padding: 7px 10px;
|
166 |
}
|
167 |
+
|
168 |
+
.typeofplugin {
|
169 |
+
font-size: 1.3em;
|
170 |
}
|
171 |
+
|
172 |
+
.supportedplugins td {
|
173 |
+
width: 230px;
|
174 |
}
|
175 |
+
|
176 |
.typeofplugin {
|
177 |
+
text-transform: uppercase;
|
178 |
}
|
179 |
+
|
180 |
+
td.plugintype {
|
181 |
+
width: 230px;
|
182 |
}
|
183 |
+
|
184 |
+
.box-one {
|
185 |
+
height: 350px;
|
186 |
+
width: 100%;
|
187 |
}
|
188 |
+
|
189 |
+
.top-left-box, .top-right-box {
|
190 |
+
width: 48%;
|
191 |
+
height: 350px;
|
192 |
+
margin-right: 20px;
|
193 |
}
|
194 |
+
|
195 |
+
.top-left-box {
|
196 |
+
float: left;
|
197 |
}
|
198 |
+
|
199 |
+
.top-right-box {
|
200 |
+
float: left;
|
201 |
+
width: 98%;
|
202 |
}
|
203 |
+
|
204 |
+
.top-left-box h3, .top-right-box h3, .fileManager h3 {
|
205 |
+
padding: 10px;
|
206 |
+
background: #222222;
|
207 |
+
border-color: #D2E3EB;
|
208 |
+
/*border-top-left-radius: 5px;
|
209 |
+
border-top-right-radius: 5px; */
|
210 |
+
font-weight: normal;
|
211 |
+
font-size: 1.5em;
|
212 |
+
color: #ffffff;
|
213 |
}
|
214 |
+
|
215 |
+
.top-left-box h3:hover, .top-right-box h3:hover, .fileManager h3:hover {
|
216 |
+
color: #ffffff;
|
217 |
}
|
218 |
+
|
219 |
+
.top-left-content, .top-right-content {
|
220 |
+
border: 1px solid #dddddd;
|
221 |
+
height: 275px;
|
222 |
+
margin-top: -16px;
|
223 |
+
background: #ffffff;
|
224 |
}
|
225 |
+
|
226 |
+
.fileManager {
|
227 |
+
width: 98%;
|
228 |
}
|
229 |
+
|
230 |
+
.manager-content {
|
231 |
+
height: auto;
|
232 |
+
margin-top: -12px;
|
233 |
+
/*border: 1px solid #2e8965;*/
|
234 |
+
border: 1px solid #dddddd;
|
235 |
+
border-top: 1px solid #333333;
|
236 |
}
|
237 |
+
|
238 |
+
.manager-actions {
|
239 |
+
width: 200px;
|
240 |
}
|
241 |
+
|
242 |
+
.manageraction {
|
243 |
+
margin-right: 15px;
|
244 |
+
cursor: pointer;
|
245 |
}
|
246 |
+
|
247 |
+
.file-version {
|
248 |
+
width: 100px;
|
249 |
}
|
250 |
+
|
251 |
+
.importedtime, .updatedtime {
|
252 |
+
width: 150px;
|
253 |
}
|
254 |
+
|
255 |
+
.importedtype {
|
256 |
+
width: 225px;
|
257 |
}
|
258 |
+
|
259 |
+
.importedfilename {
|
260 |
+
width: 250px;
|
261 |
}
|
262 |
+
|
263 |
+
.selectall {
|
264 |
+
width: 60px;
|
265 |
}
|
266 |
+
|
267 |
+
.center {
|
268 |
+
text-align: center;
|
269 |
}
|
270 |
+
|
271 |
+
.header-icon {
|
272 |
+
margin-right: 15px;
|
273 |
}
|
274 |
+
|
275 |
.form-group label {
|
276 |
+
/* margin-top:8px; */
|
277 |
+
margin-top: 0px;
|
278 |
+
-webkit-margin-start: 8px;
|
279 |
+
-webkit-margin-end: 0px;
|
280 |
}
|
281 |
+
|
282 |
+
.mappingactions {
|
283 |
+
width: 300px;
|
284 |
}
|
285 |
+
|
286 |
.importstatus label {
|
287 |
+
margin-top: 12px
|
288 |
}
|
289 |
+
|
290 |
+
.importstatus span {
|
291 |
+
/*margin-top:15px;*/
|
292 |
+
padding: 0 5px;
|
293 |
}
|
294 |
+
|
295 |
.newmoduleicon {
|
296 |
+
z-index: 1000;
|
297 |
+
margin-top: -12px;
|
298 |
+
margin-left: -10px;
|
299 |
+
position: absolute;
|
300 |
}
|
301 |
+
|
302 |
.method-row {
|
303 |
+
width: 100%;
|
304 |
}
|
305 |
|
306 |
.importfileoption .header-text {
|
307 |
+
font-size: 1.3em;
|
308 |
+
font-weight: bold;
|
309 |
}
|
310 |
|
311 |
.method1, .method2, .method3, .method4 {
|
312 |
+
padding: 15px 0;
|
313 |
}
|
314 |
|
315 |
.method1 img, .method2 img, .method3 img, .method4 img, #showmappingtemplate img, .databaseoptimization img {
|
316 |
+
margin-top: -25px;
|
317 |
}
|
318 |
|
319 |
#boxmethod1, #boxmethod2, #boxmethod3, #boxmethod4 {
|
320 |
+
padding: 10px;
|
321 |
}
|
322 |
|
323 |
.scheduling-config {
|
324 |
+
width: 80%;
|
325 |
}
|
326 |
|
327 |
.scheduling-config td {
|
328 |
+
padding: 8px;
|
329 |
}
|
330 |
+
|
331 |
div#mappingheader select {
|
332 |
width: 170px;
|
333 |
}
|
344 |
}
|
345 |
|
346 |
.method-row {
|
347 |
+
width: 100%;
|
348 |
}
|
349 |
|
350 |
#checkallModules, #uncheckallModules {
|
351 |
+
background: none !important;
|
352 |
+
border: none;
|
353 |
+
padding: 0 !important;
|
354 |
+
color: #0099D5;
|
355 |
+
text-decoration: none;
|
356 |
|
357 |
}
|
358 |
|
359 |
.left_align {
|
360 |
+
width: 23%;
|
361 |
}
|
362 |
|
363 |
.exportmodule > thead > tr > th, .exportmodule > tbody > tr > th, .exportmodule > tfoot > tr > th, .exportmodule > thead > tr > td, .exportmodule > tbody > tr > td, .exportmodule > tfoot > tr > td {
|
364 |
+
padding: 8px;
|
365 |
+
line-height: 1.428571429;
|
366 |
+
vertical-align: top;
|
367 |
+
border-top: 1px solid #ffffff !important;
|
368 |
}
|
369 |
|
370 |
.advancemediahandling {
|
371 |
+
padding-right: 15px;
|
372 |
+
float: left;
|
373 |
}
|
374 |
|
375 |
.media_handling {
|
376 |
+
height: 50px;
|
377 |
+
padding-top: 15px;
|
378 |
+
padding-left: 15px;
|
379 |
}
|
380 |
|
381 |
.inside input[type=radio] {
|
382 |
+
margin-top: -2px;
|
383 |
}
|
384 |
|
385 |
.inside label {
|
386 |
+
padding-right: 20px;
|
387 |
}
|
388 |
|
389 |
/*.mappingheader .table-condensed label {
|
394 |
}*/
|
395 |
/*settings css*/
|
396 |
.selected {
|
397 |
+
background-color: #fcfcfc !important;
|
398 |
+
color: #222222;
|
399 |
+
border: 0 none !important;
|
400 |
}
|
401 |
+
|
402 |
.selected:hover {
|
403 |
+
background-color: #E5E5E5 !important;
|
404 |
+
opacity: 1;
|
405 |
+
color: #222 !important;
|
406 |
}
|
407 |
+
|
408 |
.not-selected {
|
409 |
+
background-color: #F2F2F2 !important;
|
410 |
+
color: #777;
|
411 |
+
opacity: 0.7;
|
412 |
}
|
413 |
+
|
414 |
.bg-sidebar {
|
415 |
+
background-color: #F2F2F2;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
416 |
}
|
417 |
+
|
418 |
+
#sidebar ul {
|
419 |
+
margin-top: -1px;
|
420 |
+
margin-top: 0px;
|
421 |
+
width: 100%;
|
422 |
+
float: left;
|
423 |
+
cursor: pointer;
|
424 |
+
position: relative;
|
425 |
+
list-style-type: none;
|
426 |
+
padding-left: 5px;
|
427 |
+
}
|
428 |
+
|
429 |
+
#sidebar ul > li {
|
430 |
+
border-right: 1px solid #e7e7e7;
|
431 |
+
border-bottom: 1px solid #e7e7e7;
|
432 |
+
margin-left: -5px;
|
433 |
+
margin-bottom: -0px;
|
434 |
+
padding: 10px 23px;
|
435 |
+
font-weight: 700;
|
436 |
+
font-size: 13px;
|
437 |
+
}
|
438 |
+
|
439 |
#sidebar li:hover {
|
440 |
+
background-color: #E5E5E5;
|
441 |
+
color: #555;
|
442 |
}
|
443 |
+
|
444 |
#contentbar {
|
445 |
+
color: #444444;
|
446 |
+
display: inline-block;
|
447 |
+
font-family: "Open Sans", sans-serif;
|
448 |
+
font-size: 13px;
|
449 |
+
line-height: 1.4em;
|
450 |
+
background: none repeat scroll 0 0 #FCFCFC;
|
451 |
+
width: 73.5%;
|
452 |
+
height: 965px;
|
453 |
+
border-right: 1px solid #D1D1D1;
|
454 |
+
position: absolute;
|
455 |
+
margin-left: 0%;
|
456 |
+
float: right;
|
457 |
+
min-height: 499px;
|
458 |
}
|
459 |
+
|
460 |
#sidebar {
|
461 |
+
float: left;
|
462 |
+
height: 965px;
|
463 |
+
border-left: 1px solid #D1D1D1;
|
464 |
+
color: #777;
|
465 |
+
background: #F2F2F2;
|
466 |
+
width: 25%;
|
467 |
+
min-height: 499px;
|
468 |
+
}
|
469 |
+
|
470 |
+
#settingmodule {
|
471 |
+
width: 100%;
|
472 |
}
|
473 |
+
|
474 |
.title {
|
475 |
+
border-bottom: 1px solid #E7E7E7;
|
476 |
+
margin-left: 25px;
|
477 |
+
margin-right: 25px;
|
478 |
}
|
479 |
+
|
480 |
.title > h3 {
|
481 |
+
color: #222;
|
482 |
+
font-family: "Open Sans", sans-serif;
|
483 |
+
font-size: 1.3em;
|
484 |
+
font-weight: 600;
|
485 |
+
line-height: 2em;
|
486 |
+
margin-top: 10px;
|
487 |
}
|
488 |
+
|
489 |
#innertitle {
|
490 |
+
color: #333 !important;
|
491 |
+
font-family: "Open Sans", sans-serif !important;
|
492 |
+
font-size: 14px !important;
|
493 |
+
font-weight: 700 !important;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
494 |
}
|
495 |
+
|
496 |
+
#data {
|
497 |
+
font-size: 13px;
|
498 |
+
color: #666;
|
499 |
+
font-weight: 400;
|
500 |
+
margin-left: 25px;
|
501 |
+
margin-right: 25px;
|
502 |
+
padding-left: 30px;
|
503 |
+
padding-top: 10px;
|
504 |
+
padding-bottom: 10px;
|
505 |
+
}
|
506 |
+
|
507 |
#resetcustfield {
|
508 |
float: right;
|
509 |
margin-top: -33px;
|
510 |
margin-right: 8px;
|
511 |
}
|
512 |
+
|
513 |
+
#wpusercheck, #allowimport, #schedulecheck, #dropon, #catenable, #postlabel, #debugmode_enable,
|
514 |
+
#pagelabel, #userlabel, #commentslabel, #custaxlabel, #cplabel, #catlabel, #custrevlabel {
|
515 |
+
border-radius: 5px 0 0 5px;
|
516 |
}
|
517 |
+
|
518 |
+
#wpuseruncheck, #donallowimport, #scheduleuncheck, #dropoff, #catdisable, #nopostlabel, #debugmode_disable,
|
519 |
+
#nopagelabel, #nouserlabel, #nocommentslabel, #nocustaxlabel, #nocplabel, #nocatlabel, #nocustrevlabel {
|
520 |
+
border-radius: 0 5px 5px 0;
|
521 |
}
|
522 |
+
|
523 |
#activemenu {
|
524 |
margin-left: 3px;
|
525 |
margin-top: 15px;
|
526 |
+
font-family: "Open Sans", sans-serif;
|
527 |
font-weight: normal;
|
528 |
font-style: normal;
|
529 |
font-size: 1.7em;
|
530 |
}
|
531 |
+
|
532 |
.tabase table {
|
533 |
+
width: 80%;
|
534 |
}
|
535 |
+
|
536 |
#align {
|
537 |
+
padding-top: 5px;
|
538 |
+
padding-left: 5px;
|
539 |
+
color: #666;
|
540 |
+
font-size: 16px;
|
541 |
+
font-family: "open sans";
|
542 |
}
|
543 |
+
|
544 |
#data table {
|
545 |
+
width: 88%;
|
546 |
}
|
547 |
+
|
548 |
.security-perfoemance {
|
549 |
+
-webkit-padding-after: 26px !important;
|
550 |
}
|
551 |
+
|
552 |
.custom-fields {
|
553 |
+
-webkit-padding-after: 14px !important;
|
554 |
}
|
555 |
+
|
556 |
.databorder tr {
|
557 |
+
border-bottom: 1px solid #E7E7E7;
|
558 |
}
|
559 |
+
|
560 |
.databorder tr:last-child {
|
561 |
+
border-bottom: 0 none !important;
|
562 |
}
|
563 |
+
|
564 |
#data td {
|
565 |
+
padding: 8px 0;
|
566 |
}
|
567 |
+
|
568 |
#settingheader {
|
569 |
+
border: 1px solid #D1D1D1;
|
570 |
+
height: 52px;
|
571 |
+
margin-right: 23px;
|
572 |
+
margin-top: -17px;
|
573 |
+
width: 98%;
|
574 |
}
|
575 |
+
|
576 |
#bottomsave {
|
577 |
+
border-bottom: 1px solid #D1D1D1;
|
578 |
+
border-left: 1px solid #D1D1D1;
|
579 |
+
border-right: 1px solid #D1D1D1;
|
580 |
+
height: 52px;
|
581 |
+
margin-right: 23px;
|
582 |
+
margin-top: -4px;
|
583 |
+
width: 98%;
|
584 |
}
|
585 |
+
|
586 |
#settingsholder {
|
587 |
+
display: inline-block;
|
588 |
+
height: 966px;
|
589 |
+
width: 98%;
|
590 |
+
border-bottom: 1px solid #D1D1D1;
|
591 |
+
min-height: 500px;
|
592 |
}
|
593 |
+
|
594 |
#resetopt {
|
595 |
+
color: #0099d5;
|
596 |
}
|
597 |
+
|
598 |
.settings-icon {
|
599 |
+
padding-right: 7px;
|
600 |
}
|
601 |
+
|
602 |
.uifree-settings {
|
603 |
+
padding-top: 10px;
|
604 |
}
|
605 |
+
|
606 |
+
#data input[type="radio"], input[type="checkbox"] {
|
607 |
+
margin-top: -3px !important;
|
608 |
}
|
609 |
+
|
610 |
.corner-icon > img {
|
611 |
+
margin-left: 11px;
|
612 |
+
margin-top: 13px;
|
613 |
}
|
614 |
+
|
615 |
.enablesetting {
|
616 |
+
background-color: #0074a2;
|
617 |
+
color: #fff;
|
618 |
+
border-color: #004f6f;
|
619 |
+
box-shadow: 0 1px 0 #00abef inset, 0 1px 0 rgba(0, 0, 0, 0.15);
|
620 |
+
border-style: solid;
|
621 |
+
border-width: 1px;
|
622 |
+
cursor: pointer;
|
623 |
+
line-height: normal;
|
624 |
+
margin-right: -4px;
|
625 |
+
padding: 5px;
|
626 |
+
border-radius: 5px;
|
627 |
+
text-align: center;
|
628 |
}
|
629 |
+
|
630 |
.disablesetting {
|
631 |
+
background-color: #e6e6e6;
|
632 |
+
background-image: linear-gradient(#fff, #fff 25%, #e6e6e6);
|
633 |
+
background-repeat: no-repeat;
|
634 |
+
border-color: #ccc #ccc #bbb;
|
635 |
+
border-image: none;
|
636 |
+
border-style: solid;
|
637 |
+
border-width: 1px;
|
638 |
+
box-shadow: 0 1px 0 rgba(255, 255, 255, 0.2) inset, 0 1px 2px rgba(0, 0, 0, 0.05);
|
639 |
+
cursor: pointer;
|
640 |
+
line-height: normal;
|
641 |
+
margin-right: -4px;
|
642 |
+
padding: 5px;
|
643 |
+
text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75);
|
644 |
+
border-radius: 5px;
|
645 |
+
text-align: center;
|
646 |
}
|
647 |
+
|
648 |
.debug-info-name {
|
649 |
+
width: 40%;
|
650 |
}
|
651 |
+
|
652 |
.ini-configured-values, .min-requirement-values {
|
653 |
+
text-align: center;
|
654 |
}
|
655 |
+
|
656 |
.moduleavail {
|
657 |
float: left;
|
658 |
margin: 6px 0 0 20px !important;
|
659 |
position: absolute;
|
660 |
}
|
661 |
+
|
662 |
#pluginavail {
|
663 |
+
width: 8px;
|
664 |
+
height: 9px;
|
665 |
+
border-radius: 15px;
|
666 |
+
float: right;
|
667 |
+
margin-top: 11px;
|
668 |
}
|
669 |
+
|
670 |
#repavail {
|
671 |
+
width: 8px;
|
672 |
+
height: 9px;
|
673 |
+
border-radius: 15px;
|
674 |
}
|
675 |
+
|
676 |
#repplugin {
|
677 |
padding-left: 5px;
|
678 |
padding-top: 5px;
|
679 |
}
|
680 |
+
|
681 |
+
#replabel {
|
682 |
+
padding-left: 5px;
|
683 |
+
margin-top: -7px;
|
684 |
}
|
685 |
+
|
686 |
/*End of settings css*/
|
687 |
|
688 |
/*Export Settings*/
|
689 |
+
#exporttable input[type="radio"], input[type="checkbox"] {
|
690 |
+
margin-top: -3px !important;
|
691 |
+
vertical-align: middle;
|
692 |
+
min-width: 16px;
|
693 |
}
|
694 |
+
|
695 |
/*End of export section*/
|
696 |
+
.inside input[type="radio"], input[type="checkbox"] {
|
697 |
+
margin-top: -3px !important;
|
698 |
+
vertical-align: middle;
|
699 |
+
min-width: 16px;
|
700 |
}
|
701 |
+
|
702 |
#renameradio input[type="radio"] {
|
703 |
+
margin-top: -3px !important;
|
704 |
+
vertical-align: middle;
|
705 |
+
min-width: 16px;
|
706 |
}
|
707 |
+
|
708 |
#updatediv input[type="checkbox"] {
|
709 |
+
margin-top: -3px !important;
|
710 |
+
vertical-align: middle;
|
711 |
+
min-width: 16px;
|
712 |
}
|
713 |
+
|
714 |
#savetemp input[type="radio"] {
|
715 |
+
margin-top: -3px !important;
|
716 |
+
vertical-align: middle;
|
717 |
+
min-width: 16px;
|
718 |
}
|
719 |
+
|
720 |
+
#importopt {
|
721 |
+
color: #222;
|
722 |
+
font-family: "Open Sans", sans-serif;
|
723 |
+
font-size: 1.3em !important;
|
724 |
+
font-weight: 600 !important;
|
725 |
}
|
726 |
|
727 |
+
#importalign, #preview_of_row {
|
728 |
+
padding-top: 5px !important;
|
729 |
+
padding-left: 5px !important;
|
730 |
+
color: #666 !important;
|
731 |
+
font-size: 14px !important;
|
732 |
+
font-family: "open sans" !important;
|
733 |
}
|
734 |
+
|
735 |
#importalign > input[type="radio"], input[type="checkbox"] {
|
736 |
+
margin: 0px 6px !important;
|
737 |
}
|
738 |
+
|
739 |
.importstatus, #importalign {
|
740 |
+
margin-top: 0px;
|
741 |
}
|
742 |
+
|
743 |
.csvheader, .csvcolumnvalue {
|
744 |
+
font-size: 13px;
|
745 |
+
font-style: normal;
|
746 |
+
font-weight: 400;
|
747 |
+
color: #666;
|
748 |
}
|
749 |
+
|
750 |
div#log {
|
751 |
+
color: #666;
|
752 |
}
|
753 |
+
|
754 |
.columnheader {
|
755 |
+
font-size: 1.25em;
|
756 |
}
|
757 |
|
758 |
.form-group {
|
759 |
+
margin-top: 10px;
|
760 |
}
|
761 |
+
|
762 |
/*Summary log*/
|
763 |
#logtabs {
|
764 |
+
height: 315px !important;
|
765 |
}
|
766 |
+
|
767 |
/*End off summary*/
|
768 |
#noPlugin {
|
769 |
+
margin: 5% 12%;
|
770 |
}
|
images/Importicon_24.png
CHANGED
File without changes
|
images/csv_importer_dashboard_v3.5.png
ADDED
Binary file
|
images/facebook.png
CHANGED
File without changes
|
images/googleplus.png
CHANGED
File without changes
|
images/icon.png
CHANGED
File without changes
|
images/linkedin.png
CHANGED
File without changes
|
images/twitter.png
CHANGED
File without changes
|
includes/Importer.php
CHANGED
@@ -1,6 +1,43 @@
|
|
1 |
<?php
|
2 |
-
|
3 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
4 |
|
5 |
class ImporterLib {
|
6 |
var $rzfejj_23 = true;
|
@@ -21,7 +58,7 @@ class ImporterLib {
|
|
21 |
var $foevdt_43 = 'ISO-8859-1';
|
22 |
var $bzcrxk_44 = "\r\n";
|
23 |
var $huzgna_45 = ',';
|
24 |
-
|
25 |
var $bhujwy_34 = false;
|
26 |
var $iigiqu_63;
|
27 |
var $nftvhw_20;
|
@@ -29,103 +66,141 @@ class ImporterLib {
|
|
29 |
var $gtxpcj_22 = array();
|
30 |
var $mpkaqs_35 = array();
|
31 |
var $data = array();
|
32 |
-
|
33 |
-
|
34 |
-
function akhrnw_2
|
35 |
-
if (
|
36 |
-
|
37 |
-
|
38 |
-
if (
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
39 |
}
|
40 |
-
|
41 |
-
|
42 |
-
function ruscjv_15
|
43 |
-
if (
|
44 |
-
|
45 |
-
|
46 |
-
|
47 |
-
if (
|
48 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
49 |
$this->data = $this->ghloqy_7($dsmiub_46);
|
50 |
} else {
|
51 |
$this->nftvhw_20 = &$dsmiub_46;
|
52 |
$this->data = $this->ytcfme_6();
|
53 |
}
|
54 |
-
if (
|
|
|
|
|
55 |
}
|
56 |
return true;
|
57 |
}
|
58 |
-
|
59 |
-
function vsxpii_16
|
60 |
-
if (
|
61 |
-
|
62 |
-
|
|
|
|
|
63 |
return $this->jvyhik_14($iigiqu_63, $this->krlkbv_0($huzgna_45, $lfxszn_24, $bkarne_52, $is_php), $mode);
|
64 |
}
|
65 |
-
|
66 |
-
function wmyuyn_3
|
67 |
-
if (
|
68 |
-
|
|
|
|
|
|
|
|
|
69 |
$huzgna_45 = $this->krlkbv_0($huzgna_45, $lfxszn_24, null, null, $delimiter);
|
70 |
-
if (
|
71 |
header('Content-type: application/csv');
|
72 |
-
header('Content-Disposition: attachment; filename="'
|
73 |
echo $huzgna_45;
|
74 |
}
|
75 |
return $huzgna_45;
|
76 |
}
|
77 |
-
|
78 |
-
function fidfvc_4
|
79 |
$this->fybktu_41 = true;
|
80 |
-
if (
|
81 |
-
|
|
|
|
|
|
|
|
|
82 |
}
|
83 |
-
|
84 |
-
function delim
|
85 |
-
|
86 |
-
if (
|
87 |
-
|
88 |
-
|
89 |
-
|
90 |
-
|
91 |
-
|
92 |
-
if (
|
93 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
94 |
$huzgna_45 = &$this->nftvhw_20;
|
95 |
-
} else
|
|
|
|
|
96 |
} else {
|
97 |
$huzgna_45 = &$this->nftvhw_20;
|
98 |
}
|
99 |
-
|
100 |
$chars = array();
|
101 |
$strlen = strlen($huzgna_45);
|
102 |
$fqlsha_68 = false;
|
103 |
$n = 1;
|
104 |
$to_end = true;
|
105 |
-
|
106 |
-
for (
|
107 |
$ch = $huzgna_45{$i};
|
108 |
-
$nch = (
|
109 |
-
$pch = (
|
110 |
-
|
111 |
-
if (
|
112 |
-
if (
|
113 |
-
$fqlsha_68 = (
|
114 |
-
} elseif (
|
115 |
$i++;
|
116 |
}
|
117 |
-
|
118 |
-
} elseif (
|
119 |
-
if (
|
120 |
$strlen = 0;
|
121 |
$to_end = false;
|
122 |
} else {
|
123 |
$n++;
|
124 |
}
|
125 |
-
|
126 |
} elseif (!$fqlsha_68) {
|
127 |
-
if (
|
128 |
-
if (
|
129 |
$chars[$ch][$n] = 1;
|
130 |
} else {
|
131 |
$chars[$ch][$n]++;
|
@@ -133,100 +208,94 @@ class ImporterLib {
|
|
133 |
}
|
134 |
}
|
135 |
}
|
136 |
-
|
137 |
-
$depth = (
|
138 |
$filtered = array();
|
139 |
-
foreach(
|
140 |
-
if (
|
141 |
$filtered[$match] = $char;
|
142 |
}
|
143 |
}
|
144 |
-
|
145 |
ksort($filtered);
|
146 |
$this->delimiter = reset($filtered);
|
147 |
-
|
148 |
-
if (
|
149 |
-
|
|
|
|
|
150 |
return $this->delimiter;
|
151 |
-
|
152 |
}
|
153 |
-
|
154 |
-
|
155 |
-
function vh100
|
156 |
-
if (
|
157 |
-
|
158 |
-
|
|
|
|
|
|
|
|
|
159 |
}
|
160 |
-
|
161 |
-
function ytcfme_6
|
162 |
-
if (
|
163 |
-
if (
|
164 |
$huzgna_45 = &$this->nftvhw_20;
|
165 |
-
} else
|
|
|
|
|
166 |
}
|
167 |
-
|
168 |
$white_spaces = str_replace($this->delimiter, '', " \t\x0B\0");
|
169 |
-
|
170 |
$jlesjs_83 = array();
|
171 |
$mbswxn_84 = array();
|
172 |
$cdgpzw_85 = 0;
|
173 |
$ewhrie_86 = '';
|
174 |
-
$head = (
|
175 |
$eylwks_89 = 0;
|
176 |
$fqlsha_68 = false;
|
177 |
$qobixt_90 = false;
|
178 |
$strlen = strlen($huzgna_45);
|
179 |
-
|
180 |
-
for (
|
181 |
$ch = $huzgna_45{$i};
|
182 |
-
$nch = (
|
183 |
-
$pch = (
|
184 |
-
|
185 |
-
if (
|
186 |
-
if (
|
187 |
-
if (
|
188 |
$fqlsha_68 = true;
|
189 |
$qobixt_90 = true;
|
190 |
} else {
|
191 |
$this->jybluc_21 = 2;
|
192 |
$error_row = count($jlesjs_83) + 1;
|
193 |
$error_col = $eylwks_89 + 1;
|
194 |
-
if (
|
195 |
-
$this->gtxpcj_22[$error_row.'-'
|
196 |
-
'type' => 2,
|
197 |
-
'info' => 'Syntax error found on row '.$error_row.'. Non-enclosed lfxszn_24 can not contain double-quotes.',
|
198 |
-
'row' => $error_row,
|
199 |
-
'field' => $error_col,
|
200 |
-
'field_name' => (!empty($head[$eylwks_89])) ? $head[$eylwks_89] : null,
|
201 |
-
);
|
202 |
}
|
203 |
$ewhrie_86 .= $ch;
|
204 |
}
|
205 |
} elseif ($nch == $this->ezvruf_29) {
|
206 |
$ewhrie_86 .= $ch;
|
207 |
$i++;
|
208 |
-
} elseif (
|
209 |
-
for (
|
210 |
-
|
|
|
211 |
$fqlsha_68 = false;
|
212 |
$i = $x;
|
213 |
} else {
|
214 |
-
if (
|
215 |
$this->jybluc_21 = 1;
|
216 |
}
|
217 |
$error_row = count($jlesjs_83) + 1;
|
218 |
$error_col = $eylwks_89 + 1;
|
219 |
-
if (
|
220 |
-
$this->gtxpcj_22[$error_row.'-'
|
221 |
-
'type' => 1,
|
222 |
-
'info' =>
|
223 |
-
'Syntax error found on row '.(count($jlesjs_83) + 1).'. '.
|
224 |
-
'A single double-quote was found within an enclosed string. '.
|
225 |
-
'Enclosed double-quotes must be escaped with a second double-quote.',
|
226 |
-
'row' => count($jlesjs_83) + 1,
|
227 |
-
'field' => $eylwks_89 + 1,
|
228 |
-
'field_name' => (!empty($head[$eylwks_89])) ? $head[$eylwks_89] : null,
|
229 |
-
);
|
230 |
}
|
231 |
$ewhrie_86 .= $ch;
|
232 |
$fqlsha_68 = false;
|
@@ -234,160 +303,170 @@ class ImporterLib {
|
|
234 |
} else {
|
235 |
$fqlsha_68 = false;
|
236 |
}
|
237 |
-
|
238 |
-
|
239 |
-
} elseif (
|
240 |
-
$key = (
|
241 |
-
$mbswxn_84[$key] = (
|
242 |
$ewhrie_86 = '';
|
243 |
$qobixt_90 = false;
|
244 |
$eylwks_89++;
|
245 |
-
|
246 |
// end of row
|
247 |
-
if (
|
248 |
-
if (
|
249 |
-
if (
|
250 |
$head = $mbswxn_84;
|
251 |
-
} elseif (
|
252 |
-
if (
|
253 |
-
if (
|
254 |
-
$jlesjs_83[$mbswxn_84[$this->aerjwu_25].'_0'] = &$jlesjs_83[$mbswxn_84[$this->aerjwu_25]];
|
255 |
unset($jlesjs_83[$mbswxn_84[$this->aerjwu_25]]);
|
256 |
-
for (
|
257 |
-
|
258 |
-
|
259 |
-
|
|
|
|
|
|
|
|
|
|
|
260 |
}
|
261 |
}
|
262 |
$mbswxn_84 = array();
|
263 |
$eylwks_89 = 0;
|
264 |
$cdgpzw_85++;
|
265 |
-
if (
|
266 |
$i = $strlen;
|
267 |
}
|
268 |
-
if (
|
|
|
|
|
269 |
}
|
270 |
-
|
271 |
} else {
|
272 |
$ewhrie_86 .= $ch;
|
273 |
}
|
274 |
}
|
275 |
$this->mpkaqs_35 = $head;
|
276 |
-
if (
|
277 |
$qnghcy_27 = SORT_REGULAR;
|
278 |
-
if (
|
279 |
$qnghcy_27 = SORT_NUMERIC;
|
280 |
-
} elseif (
|
281 |
$qnghcy_27 = SORT_STRING;
|
282 |
}
|
283 |
-
(
|
284 |
-
if (
|
285 |
-
$jlesjs_83 = array_slice($jlesjs_83, ($this->rtkfzr_31 === null ? 0 : $this->rtkfzr_31)
|
286 |
}
|
287 |
}
|
288 |
-
if (
|
289 |
$this->nftvhw_20 = null;
|
290 |
}
|
291 |
return $jlesjs_83;
|
292 |
}
|
293 |
-
|
294 |
-
function krlkbv_0
|
295 |
-
if (
|
296 |
-
|
297 |
-
|
298 |
-
|
299 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
300 |
$entry = array();
|
301 |
-
|
302 |
-
if (
|
303 |
-
foreach(
|
304 |
$entry[] = $this->sxzpwt_8($value);
|
305 |
}
|
306 |
-
$string .= implode($delimiter, $entry)
|
307 |
$entry = array();
|
308 |
}
|
309 |
-
|
310 |
-
foreach(
|
311 |
-
foreach(
|
312 |
$entry[] = $this->sxzpwt_8($value);
|
313 |
}
|
314 |
-
$string .= implode($delimiter, $entry)
|
315 |
$entry = array();
|
316 |
}
|
317 |
-
|
318 |
return $string;
|
319 |
}
|
320 |
-
|
321 |
-
function fmilrp_13
|
322 |
$huzgna_45 = null;
|
323 |
$iigiqu_63 = null;
|
324 |
-
if (
|
325 |
$iigiqu_63 = $this->iigiqu_63;
|
326 |
-
} elseif (
|
327 |
$iigiqu_63 = $dsmiub_46;
|
328 |
} else {
|
329 |
$huzgna_45 = $dsmiub_46;
|
330 |
}
|
331 |
-
if (
|
332 |
-
if (
|
333 |
-
|
|
|
|
|
334 |
$huzgna_45 = ltrim($strip[1]);
|
335 |
}
|
336 |
-
if (
|
337 |
-
|
|
|
|
|
|
|
|
|
338 |
$this->nftvhw_20 = &$huzgna_45;
|
339 |
return true;
|
340 |
}
|
341 |
return false;
|
342 |
}
|
343 |
-
|
344 |
-
|
345 |
-
function qnoiuh_17s
|
346 |
-
if (
|
347 |
-
if (
|
348 |
-
|
349 |
$or = '';
|
350 |
-
foreach(
|
351 |
-
if (
|
352 |
$value = explode(' AND ', $value);
|
353 |
$and = '';
|
354 |
-
foreach(
|
355 |
$and .= $this->qnoiuh_17($mbswxn_84, $v);
|
356 |
}
|
357 |
-
$or .= (strpos($and, '0') !== false) ? '0' : '1'
|
358 |
} else {
|
359 |
$or .= $this->qnoiuh_17($mbswxn_84, $value);
|
360 |
}
|
361 |
}
|
362 |
-
return (strpos($or, '1') !== false) ? true : false
|
363 |
}
|
364 |
return true;
|
365 |
}
|
366 |
return false;
|
367 |
}
|
368 |
-
|
369 |
-
function qnoiuh_17
|
370 |
-
$operators = array(
|
371 |
-
'=', 'equals', 'is',
|
372 |
-
'!=', 'is not',
|
373 |
-
'<', 'is less than',
|
374 |
-
'>', 'is greater than',
|
375 |
-
'<=', 'is less than or equals',
|
376 |
-
'>=', 'is greater than or equals',
|
377 |
-
'contains',
|
378 |
-
'does not contain',
|
379 |
-
);
|
380 |
$operators_regex = array();
|
381 |
-
foreach(
|
382 |
$operators_regex[] = preg_quote($value, '/');
|
383 |
}
|
384 |
$operators_regex = implode('|', $operators_regex);
|
385 |
-
if (
|
386 |
$field = $capture[1];
|
387 |
$op = $capture[2];
|
388 |
$value = $capture[3];
|
389 |
-
if (
|
390 |
-
if (
|
391 |
$value = $capture[2];
|
392 |
$value = str_replace("\\n", "\n", $value);
|
393 |
$value = str_replace("\\r", "\r", $value);
|
@@ -395,22 +474,22 @@ class ImporterLib {
|
|
395 |
$value = stripslashes($value);
|
396 |
}
|
397 |
}
|
398 |
-
if (
|
399 |
-
if (
|
400 |
return '1';
|
401 |
-
} elseif (
|
402 |
return '1';
|
403 |
-
} elseif (
|
404 |
return '1';
|
405 |
-
} elseif (
|
406 |
return '1';
|
407 |
-
} elseif (
|
408 |
return '1';
|
409 |
-
} elseif (
|
410 |
return '1';
|
411 |
-
} elseif (
|
412 |
return '1';
|
413 |
-
} elseif (
|
414 |
return '1';
|
415 |
} else {
|
416 |
return '0';
|
@@ -419,62 +498,70 @@ class ImporterLib {
|
|
419 |
}
|
420 |
return '1';
|
421 |
}
|
422 |
-
|
423 |
-
function blhlef_1
|
424 |
-
if (
|
|
|
|
|
425 |
return true;
|
426 |
}
|
427 |
-
|
428 |
-
function sxzpwt_8
|
429 |
-
if (
|
430 |
$delimiter = preg_quote($this->delimiter, '/');
|
431 |
$ezvruf_29 = preg_quote($this->ezvruf_29, '/');
|
432 |
-
if (
|
433 |
-
$value = str_replace($this->ezvruf_29, $this->ezvruf_29
|
434 |
-
$value = $this->ezvruf_29
|
435 |
}
|
436 |
}
|
437 |
return $value;
|
438 |
}
|
439 |
-
|
440 |
-
function totraw_9
|
441 |
-
if (
|
442 |
-
if (
|
|
|
|
|
443 |
return $this->fmilrp_13($iigiqu_63);
|
444 |
}
|
445 |
return true;
|
446 |
}
|
447 |
-
|
448 |
-
|
449 |
-
function klpqct_10
|
450 |
-
if (
|
451 |
$first = null;
|
452 |
$equal = null;
|
453 |
$almost = false;
|
454 |
-
foreach(
|
455 |
-
if (
|
456 |
$first = $value;
|
457 |
-
} elseif (
|
458 |
$equal = true;
|
459 |
-
} elseif (
|
460 |
$equal = true;
|
461 |
$almost = true;
|
462 |
} else {
|
463 |
$equal = false;
|
464 |
}
|
465 |
}
|
466 |
-
if (
|
467 |
-
$match = (
|
468 |
$pref = strpos($preferred, $char);
|
469 |
-
$pref = (
|
470 |
-
return $pref
|
471 |
-
} else
|
|
|
|
|
472 |
}
|
473 |
}
|
474 |
-
|
475 |
-
function rqauqn_12
|
476 |
-
if (
|
477 |
-
if (
|
|
|
|
|
478 |
$huzgna_45 = fread($fh, filesize($iigiqu_63));
|
479 |
fclose($fh);
|
480 |
return $huzgna_45;
|
@@ -482,15 +569,16 @@ class ImporterLib {
|
|
482 |
return false;
|
483 |
}
|
484 |
|
485 |
-
function jvyhik_14
|
486 |
-
if (
|
487 |
flock($fp, $lock);
|
488 |
$re = fwrite($fp, $string);
|
489 |
$re2 = fclose($fp);
|
490 |
-
if (
|
|
|
|
|
491 |
}
|
492 |
return false;
|
493 |
}
|
494 |
-
|
495 |
}
|
496 |
-
?>
|
1 |
<?php
|
2 |
+
/*********************************************************************************
|
3 |
+
* WP Ultimate CSV Importer is a Tool for importing CSV for the Wordpress
|
4 |
+
* plugin developed by Smackcoder. Copyright (C) 2014 Smackcoders.
|
5 |
+
*
|
6 |
+
* WP Ultimate CSV Importer is free software; you can redistribute it and/or
|
7 |
+
* modify it under the terms of the GNU Affero General Public License version 3
|
8 |
+
* as published by the Free Software Foundation with the addition of the
|
9 |
+
* following permission added to Section 15 as permitted in Section 7(a): FOR
|
10 |
+
* ANY PART OF THE COVERED WORK IN WHICH THE COPYRIGHT IS OWNED BY WP Ultimate
|
11 |
+
* CSV Importer, WP Ultimate CSV Importer DISCLAIMS THE WARRANTY OF NON
|
12 |
+
* INFRINGEMENT OF THIRD PARTY RIGHTS.
|
13 |
+
*
|
14 |
+
* WP Ultimate CSV Importer is distributed in the hope that it will be useful,
|
15 |
+
* but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
|
16 |
+
* or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
|
17 |
+
* License for more details.
|
18 |
+
*
|
19 |
+
* You should have received a copy of the GNU Affero General Public License
|
20 |
+
* along with this program; if not, see http://www.gnu.org/licenses or write
|
21 |
+
* to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
22 |
+
* Boston, MA 02110-1301 USA.
|
23 |
+
*
|
24 |
+
* You can contact Smackcoders at email address info@smackcoders.com.
|
25 |
+
*
|
26 |
+
* The interactive user interfaces in original and modified versions
|
27 |
+
* of this program must display Appropriate Legal Notices, as required under
|
28 |
+
* Section 5 of the GNU Affero General Public License version 3.
|
29 |
+
*
|
30 |
+
* In accordance with Section 7(b) of the GNU Affero General Public License
|
31 |
+
* version 3, these Appropriate Legal Notices must retain the display of the
|
32 |
+
* WP Ultimate CSV Importer copyright notice. If the display of the logo is
|
33 |
+
* not reasonably feasible for technical reasons, the Appropriate Legal
|
34 |
+
* Notices must display the words
|
35 |
+
* "Copyright Smackcoders. 2015. All rights reserved".
|
36 |
+
********************************************************************************/
|
37 |
+
|
38 |
+
if (!defined('ABSPATH')) {
|
39 |
+
exit;
|
40 |
+
} // Exit if accessed directly
|
41 |
|
42 |
class ImporterLib {
|
43 |
var $rzfejj_23 = true;
|
58 |
var $foevdt_43 = 'ISO-8859-1';
|
59 |
var $bzcrxk_44 = "\r\n";
|
60 |
var $huzgna_45 = ',';
|
61 |
+
var $gbuviv_33 = 'data.csv';
|
62 |
var $bhujwy_34 = false;
|
63 |
var $iigiqu_63;
|
64 |
var $nftvhw_20;
|
66 |
var $gtxpcj_22 = array();
|
67 |
var $mpkaqs_35 = array();
|
68 |
var $data = array();
|
69 |
+
|
70 |
+
|
71 |
+
function akhrnw_2($dsmiub_46 = null, $rtkfzr_31 = null, $urccim_32 = null, $hhtsch_30 = null) {
|
72 |
+
if ($rtkfzr_31 !== null) {
|
73 |
+
$this->rtkfzr_31 = $rtkfzr_31;
|
74 |
+
}
|
75 |
+
if ($urccim_32 !== null) {
|
76 |
+
$this->urccim_32 = $urccim_32;
|
77 |
+
}
|
78 |
+
if (count($hhtsch_30) > 0) {
|
79 |
+
$this->hhtsch_30 = $hhtsch_30;
|
80 |
+
}
|
81 |
+
if (!empty($dsmiub_46)) {
|
82 |
+
$this->ruscjv_15($dsmiub_46);
|
83 |
+
}
|
84 |
}
|
85 |
+
|
86 |
+
|
87 |
+
function ruscjv_15($dsmiub_46 = null, $rtkfzr_31 = null, $urccim_32 = null, $hhtsch_30 = null) {
|
88 |
+
if ($dsmiub_46 === null) {
|
89 |
+
$dsmiub_46 = $this->iigiqu_63;
|
90 |
+
}
|
91 |
+
if (!empty($dsmiub_46)) {
|
92 |
+
if ($rtkfzr_31 !== null) {
|
93 |
+
$this->rtkfzr_31 = $rtkfzr_31;
|
94 |
+
}
|
95 |
+
if ($urccim_32 !== null) {
|
96 |
+
$this->urccim_32 = $urccim_32;
|
97 |
+
}
|
98 |
+
if (count($hhtsch_30) > 0) {
|
99 |
+
$this->hhtsch_30 = $hhtsch_30;
|
100 |
+
}
|
101 |
+
if (is_readable($dsmiub_46)) {
|
102 |
$this->data = $this->ghloqy_7($dsmiub_46);
|
103 |
} else {
|
104 |
$this->nftvhw_20 = &$dsmiub_46;
|
105 |
$this->data = $this->ytcfme_6();
|
106 |
}
|
107 |
+
if ($this->data === false) {
|
108 |
+
return false;
|
109 |
+
}
|
110 |
}
|
111 |
return true;
|
112 |
}
|
113 |
+
|
114 |
+
function vsxpii_16($iigiqu_63 = null, $huzgna_45 = array(), $bkarne_52 = false, $lfxszn_24 = array()) {
|
115 |
+
if (empty($iigiqu_63)) {
|
116 |
+
$iigiqu_63 = &$this->iigiqu_63;
|
117 |
+
}
|
118 |
+
$mode = ($bkarne_52) ? 'at' : 'wt';
|
119 |
+
$is_php = (preg_match('/\.php$/i', $iigiqu_63)) ? true : false;
|
120 |
return $this->jvyhik_14($iigiqu_63, $this->krlkbv_0($huzgna_45, $lfxszn_24, $bkarne_52, $is_php), $mode);
|
121 |
}
|
122 |
+
|
123 |
+
function wmyuyn_3($filename = null, $huzgna_45 = array(), $lfxszn_24 = array(), $delimiter = null) {
|
124 |
+
if (empty($filename)) {
|
125 |
+
$filename = $this->gbuviv_33;
|
126 |
+
}
|
127 |
+
if ($delimiter === null) {
|
128 |
+
$delimiter = $this->huzgna_45;
|
129 |
+
}
|
130 |
$huzgna_45 = $this->krlkbv_0($huzgna_45, $lfxszn_24, null, null, $delimiter);
|
131 |
+
if ($filename !== null) {
|
132 |
header('Content-type: application/csv');
|
133 |
+
header('Content-Disposition: attachment; filename="' . $filename . '"');
|
134 |
echo $huzgna_45;
|
135 |
}
|
136 |
return $huzgna_45;
|
137 |
}
|
138 |
+
|
139 |
+
function fidfvc_4($dsmiub_46 = null, $wmrey_p8 = null) {
|
140 |
$this->fybktu_41 = true;
|
141 |
+
if ($dsmiub_46 !== null) {
|
142 |
+
$this->bmalcx_42 = $dsmiub_46;
|
143 |
+
}
|
144 |
+
if ($wmrey_p8 !== null) {
|
145 |
+
$this->foevdt_43 = $wmrey_p8;
|
146 |
+
}
|
147 |
}
|
148 |
+
|
149 |
+
function delim($iigiqu_63 = null, $parse = true, $search_depth = null, $preferred = null, $ezvruf_29 = null) {
|
150 |
+
|
151 |
+
if ($iigiqu_63 === null) {
|
152 |
+
$iigiqu_63 = $this->iigiqu_63;
|
153 |
+
}
|
154 |
+
if (empty($search_depth)) {
|
155 |
+
$search_depth = $this->ppbenb_38;
|
156 |
+
}
|
157 |
+
if ($ezvruf_29 === null) {
|
158 |
+
$ezvruf_29 = $this->ezvruf_29;
|
159 |
+
}
|
160 |
+
|
161 |
+
if ($preferred === null) {
|
162 |
+
$preferred = $this->qyllow_39;
|
163 |
+
}
|
164 |
+
|
165 |
+
if (empty($this->nftvhw_20)) {
|
166 |
+
if ($this->totraw_9($iigiqu_63)) {
|
167 |
$huzgna_45 = &$this->nftvhw_20;
|
168 |
+
} else {
|
169 |
+
return false;
|
170 |
+
}
|
171 |
} else {
|
172 |
$huzgna_45 = &$this->nftvhw_20;
|
173 |
}
|
174 |
+
|
175 |
$chars = array();
|
176 |
$strlen = strlen($huzgna_45);
|
177 |
$fqlsha_68 = false;
|
178 |
$n = 1;
|
179 |
$to_end = true;
|
180 |
+
|
181 |
+
for ($i = 0; $i < $strlen; $i++) {
|
182 |
$ch = $huzgna_45{$i};
|
183 |
+
$nch = (isset($huzgna_45{$i + 1})) ? $huzgna_45{$i + 1} : false;
|
184 |
+
$pch = (isset($huzgna_45{$i - 1})) ? $huzgna_45{$i - 1} : false;
|
185 |
+
|
186 |
+
if ($ch == $ezvruf_29) {
|
187 |
+
if (!$fqlsha_68 || $nch != $ezvruf_29) {
|
188 |
+
$fqlsha_68 = ($fqlsha_68) ? false : true;
|
189 |
+
} elseif ($fqlsha_68) {
|
190 |
$i++;
|
191 |
}
|
192 |
+
|
193 |
+
} elseif (($ch == "\n" && $pch != "\r" || $ch == "\r") && !$fqlsha_68) {
|
194 |
+
if ($n >= $search_depth) {
|
195 |
$strlen = 0;
|
196 |
$to_end = false;
|
197 |
} else {
|
198 |
$n++;
|
199 |
}
|
200 |
+
|
201 |
} elseif (!$fqlsha_68) {
|
202 |
+
if (!preg_match('/[' . preg_quote($this->gpxabp_40, '/') . ']/i', $ch)) {
|
203 |
+
if (!isset($chars[$ch][$n])) {
|
204 |
$chars[$ch][$n] = 1;
|
205 |
} else {
|
206 |
$chars[$ch][$n]++;
|
208 |
}
|
209 |
}
|
210 |
}
|
211 |
+
|
212 |
+
$depth = ($to_end) ? $n - 1 : $n;
|
213 |
$filtered = array();
|
214 |
+
foreach ($chars as $char => $value) {
|
215 |
+
if ($match = $this->klpqct_10($char, $value, $depth, $preferred)) {
|
216 |
$filtered[$match] = $char;
|
217 |
}
|
218 |
}
|
219 |
+
|
220 |
ksort($filtered);
|
221 |
$this->delimiter = reset($filtered);
|
222 |
+
|
223 |
+
if ($parse) {
|
224 |
+
$this->data = $this->ytcfme_6();
|
225 |
+
}
|
226 |
+
|
227 |
return $this->delimiter;
|
228 |
+
|
229 |
}
|
230 |
+
|
231 |
+
|
232 |
+
function vh100($iigiqu_63 = null) {
|
233 |
+
if ($iigiqu_63 === null) {
|
234 |
+
$iigiqu_63 = $this->iigiqu_63;
|
235 |
+
}
|
236 |
+
if (empty($this->nftvhw_20)) {
|
237 |
+
$this->fmilrp_13($iigiqu_63);
|
238 |
+
}
|
239 |
+
return (!empty($this->nftvhw_20)) ? $this->ytcfme_6() : false;
|
240 |
}
|
241 |
+
|
242 |
+
function ytcfme_6($huzgna_45 = null) {
|
243 |
+
if (empty($huzgna_45)) {
|
244 |
+
if ($this->totraw_9()) {
|
245 |
$huzgna_45 = &$this->nftvhw_20;
|
246 |
+
} else {
|
247 |
+
return false;
|
248 |
+
}
|
249 |
}
|
250 |
+
|
251 |
$white_spaces = str_replace($this->delimiter, '', " \t\x0B\0");
|
252 |
+
|
253 |
$jlesjs_83 = array();
|
254 |
$mbswxn_84 = array();
|
255 |
$cdgpzw_85 = 0;
|
256 |
$ewhrie_86 = '';
|
257 |
+
$head = (!empty($this->lfxszn_24)) ? $this->lfxszn_24 : array();
|
258 |
$eylwks_89 = 0;
|
259 |
$fqlsha_68 = false;
|
260 |
$qobixt_90 = false;
|
261 |
$strlen = strlen($huzgna_45);
|
262 |
+
|
263 |
+
for ($i = 0; $i < $strlen; $i++) {
|
264 |
$ch = $huzgna_45{$i};
|
265 |
+
$nch = (isset($huzgna_45{$i + 1})) ? $huzgna_45{$i + 1} : false;
|
266 |
+
$pch = (isset($huzgna_45{$i - 1})) ? $huzgna_45{$i - 1} : false;
|
267 |
+
|
268 |
+
if ($ch == $this->ezvruf_29) {
|
269 |
+
if (!$fqlsha_68) {
|
270 |
+
if (ltrim($ewhrie_86, $white_spaces) == '') {
|
271 |
$fqlsha_68 = true;
|
272 |
$qobixt_90 = true;
|
273 |
} else {
|
274 |
$this->jybluc_21 = 2;
|
275 |
$error_row = count($jlesjs_83) + 1;
|
276 |
$error_col = $eylwks_89 + 1;
|
277 |
+
if (!isset($this->gtxpcj_22[$error_row . '-' . $error_col])) {
|
278 |
+
$this->gtxpcj_22[$error_row . '-' . $error_col] = array('type' => 2, 'info' => 'Syntax error found on row ' . $error_row . '. Non-enclosed lfxszn_24 can not contain double-quotes.', 'row' => $error_row, 'field' => $error_col, 'field_name' => (!empty($head[$eylwks_89])) ? $head[$eylwks_89] : null,);
|
|
|
|
|
|
|
|
|
|
|
|
|
279 |
}
|
280 |
$ewhrie_86 .= $ch;
|
281 |
}
|
282 |
} elseif ($nch == $this->ezvruf_29) {
|
283 |
$ewhrie_86 .= $ch;
|
284 |
$i++;
|
285 |
+
} elseif ($nch != $this->delimiter && $nch != "\r" && $nch != "\n") {
|
286 |
+
for ($x = ($i + 1); isset($huzgna_45{$x}) && ltrim($huzgna_45{$x}, $white_spaces) == ''; $x++) {
|
287 |
+
}
|
288 |
+
if ($huzgna_45{$x} == $this->delimiter) {
|
289 |
$fqlsha_68 = false;
|
290 |
$i = $x;
|
291 |
} else {
|
292 |
+
if ($this->jybluc_21 < 1) {
|
293 |
$this->jybluc_21 = 1;
|
294 |
}
|
295 |
$error_row = count($jlesjs_83) + 1;
|
296 |
$error_col = $eylwks_89 + 1;
|
297 |
+
if (!isset($this->gtxpcj_22[$error_row . '-' . $error_col])) {
|
298 |
+
$this->gtxpcj_22[$error_row . '-' . $error_col] = array('type' => 1, 'info' => 'Syntax error found on row ' . (count($jlesjs_83) + 1) . '. ' . 'A single double-quote was found within an enclosed string. ' . 'Enclosed double-quotes must be escaped with a second double-quote.', 'row' => count($jlesjs_83) + 1, 'field' => $eylwks_89 + 1, 'field_name' => (!empty($head[$eylwks_89])) ? $head[$eylwks_89] : null,);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
299 |
}
|
300 |
$ewhrie_86 .= $ch;
|
301 |
$fqlsha_68 = false;
|
303 |
} else {
|
304 |
$fqlsha_68 = false;
|
305 |
}
|
306 |
+
|
307 |
+
// end of field/row
|
308 |
+
} elseif (($ch == $this->delimiter || $ch == "\n" || $ch == "\r") && !$fqlsha_68) {
|
309 |
+
$key = (!empty($head[$eylwks_89])) ? $head[$eylwks_89] : $eylwks_89;
|
310 |
+
$mbswxn_84[$key] = ($qobixt_90) ? $ewhrie_86 : trim($ewhrie_86);
|
311 |
$ewhrie_86 = '';
|
312 |
$qobixt_90 = false;
|
313 |
$eylwks_89++;
|
314 |
+
|
315 |
// end of row
|
316 |
+
if ($ch == "\n" || $ch == "\r") {
|
317 |
+
if ($this->blhlef_1($cdgpzw_85) && $this->qnoiuh_17s($mbswxn_84, $this->hhtsch_30)) {
|
318 |
+
if ($this->rzfejj_23 && empty($head)) {
|
319 |
$head = $mbswxn_84;
|
320 |
+
} elseif (empty($this->lfxszn_24) || (!empty($this->lfxszn_24) && (($this->rzfejj_23 && $cdgpzw_85 > 0) || !$this->rzfejj_23))) {
|
321 |
+
if (!empty($this->aerjwu_25) && !empty($mbswxn_84[$this->aerjwu_25])) {
|
322 |
+
if (isset($jlesjs_83[$mbswxn_84[$this->aerjwu_25]])) {
|
323 |
+
$jlesjs_83[$mbswxn_84[$this->aerjwu_25] . '_0'] = &$jlesjs_83[$mbswxn_84[$this->aerjwu_25]];
|
324 |
unset($jlesjs_83[$mbswxn_84[$this->aerjwu_25]]);
|
325 |
+
for ($sn = 1; isset($jlesjs_83[$mbswxn_84[$this->aerjwu_25] . '_' . $sn]); $sn++) {
|
326 |
+
}
|
327 |
+
$jlesjs_83[$mbswxn_84[$this->aerjwu_25] . '_' . $sn] = $mbswxn_84;
|
328 |
+
} else {
|
329 |
+
$jlesjs_83[$mbswxn_84[$this->aerjwu_25]] = $mbswxn_84;
|
330 |
+
}
|
331 |
+
} else {
|
332 |
+
$jlesjs_83[] = $mbswxn_84;
|
333 |
+
}
|
334 |
}
|
335 |
}
|
336 |
$mbswxn_84 = array();
|
337 |
$eylwks_89 = 0;
|
338 |
$cdgpzw_85++;
|
339 |
+
if ($this->aerjwu_25 === null && $this->urccim_32 !== null && count($jlesjs_83) == $this->urccim_32) {
|
340 |
$i = $strlen;
|
341 |
}
|
342 |
+
if ($ch == "\r" && $nch == "\n") {
|
343 |
+
$i++;
|
344 |
+
}
|
345 |
}
|
346 |
+
|
347 |
} else {
|
348 |
$ewhrie_86 .= $ch;
|
349 |
}
|
350 |
}
|
351 |
$this->mpkaqs_35 = $head;
|
352 |
+
if (!empty($this->aerjwu_25)) {
|
353 |
$qnghcy_27 = SORT_REGULAR;
|
354 |
+
if ($this->qnghcy_27 == 'numeric') {
|
355 |
$qnghcy_27 = SORT_NUMERIC;
|
356 |
+
} elseif ($this->qnghcy_27 == 'string') {
|
357 |
$qnghcy_27 = SORT_STRING;
|
358 |
}
|
359 |
+
($this->huepva_26) ? krsort($jlesjs_83, $qnghcy_27) : ksort($jlesjs_83, $qnghcy_27);
|
360 |
+
if ($this->rtkfzr_31 !== null || $this->urccim_32 !== null) {
|
361 |
+
$jlesjs_83 = array_slice($jlesjs_83, ($this->rtkfzr_31 === null ? 0 : $this->rtkfzr_31), $this->urccim_32, true);
|
362 |
}
|
363 |
}
|
364 |
+
if (!$this->bhujwy_34) {
|
365 |
$this->nftvhw_20 = null;
|
366 |
}
|
367 |
return $jlesjs_83;
|
368 |
}
|
369 |
+
|
370 |
+
function krlkbv_0($huzgna_45 = array(), $lfxszn_24 = array(), $bkarne_52 = false, $is_php = false, $delimiter = null) {
|
371 |
+
if (!is_array($huzgna_45) || empty($huzgna_45)) {
|
372 |
+
$huzgna_45 = &$this->data;
|
373 |
+
}
|
374 |
+
if (!is_array($lfxszn_24) || empty($lfxszn_24)) {
|
375 |
+
$lfxszn_24 = &$this->mpkaqs_35;
|
376 |
+
}
|
377 |
+
if ($delimiter === null) {
|
378 |
+
$delimiter = $this->delimiter;
|
379 |
+
}
|
380 |
+
|
381 |
+
$string = ($is_php) ? "<?php header('Status: 403'); die(' '); ?>" . $this->bzcrxk_44 : '';
|
382 |
$entry = array();
|
383 |
+
|
384 |
+
if ($this->rzfejj_23 && !$bkarne_52 && !empty($lfxszn_24)) {
|
385 |
+
foreach ($lfxszn_24 as $key => $value) {
|
386 |
$entry[] = $this->sxzpwt_8($value);
|
387 |
}
|
388 |
+
$string .= implode($delimiter, $entry) . $this->bzcrxk_44;
|
389 |
$entry = array();
|
390 |
}
|
391 |
+
|
392 |
+
foreach ($huzgna_45 as $key => $mbswxn_84) {
|
393 |
+
foreach ($mbswxn_84 as $field => $value) {
|
394 |
$entry[] = $this->sxzpwt_8($value);
|
395 |
}
|
396 |
+
$string .= implode($delimiter, $entry) . $this->bzcrxk_44;
|
397 |
$entry = array();
|
398 |
}
|
399 |
+
|
400 |
return $string;
|
401 |
}
|
402 |
+
|
403 |
+
function fmilrp_13($dsmiub_46 = null) {
|
404 |
$huzgna_45 = null;
|
405 |
$iigiqu_63 = null;
|
406 |
+
if ($dsmiub_46 === null) {
|
407 |
$iigiqu_63 = $this->iigiqu_63;
|
408 |
+
} elseif (file_exists($dsmiub_46)) {
|
409 |
$iigiqu_63 = $dsmiub_46;
|
410 |
} else {
|
411 |
$huzgna_45 = $dsmiub_46;
|
412 |
}
|
413 |
+
if (!empty($huzgna_45) || $huzgna_45 = $this->rqauqn_12($iigiqu_63)) {
|
414 |
+
if ($this->iigiqu_63 != $iigiqu_63) {
|
415 |
+
$this->iigiqu_63 = $iigiqu_63;
|
416 |
+
}
|
417 |
+
if (preg_match('/\.php$/i', $iigiqu_63) && preg_match('/<\?.*?\?>(.*)/ims', $huzgna_45, $strip)) {
|
418 |
$huzgna_45 = ltrim($strip[1]);
|
419 |
}
|
420 |
+
if ($this->fybktu_41) {
|
421 |
+
$huzgna_45 = iconv($this->bmalcx_42, $this->foevdt_43, $huzgna_45);
|
422 |
+
}
|
423 |
+
if (substr($huzgna_45, -1) != "\n") {
|
424 |
+
$huzgna_45 .= "\n";
|
425 |
+
}
|
426 |
$this->nftvhw_20 = &$huzgna_45;
|
427 |
return true;
|
428 |
}
|
429 |
return false;
|
430 |
}
|
431 |
+
|
432 |
+
|
433 |
+
function qnoiuh_17s($mbswxn_84 = array(), $hhtsch_30 = null) {
|
434 |
+
if (!empty($mbswxn_84)) {
|
435 |
+
if (!empty($hhtsch_30)) {
|
436 |
+
$hhtsch_30 = (strpos($hhtsch_30, ' OR ') !== false) ? explode(' OR ', $hhtsch_30) : array($hhtsch_30);
|
437 |
$or = '';
|
438 |
+
foreach ($hhtsch_30 as $key => $value) {
|
439 |
+
if (strpos($value, ' AND ') !== false) {
|
440 |
$value = explode(' AND ', $value);
|
441 |
$and = '';
|
442 |
+
foreach ($value as $k => $v) {
|
443 |
$and .= $this->qnoiuh_17($mbswxn_84, $v);
|
444 |
}
|
445 |
+
$or .= (strpos($and, '0') !== false) ? '0' : '1';
|
446 |
} else {
|
447 |
$or .= $this->qnoiuh_17($mbswxn_84, $value);
|
448 |
}
|
449 |
}
|
450 |
+
return (strpos($or, '1') !== false) ? true : false;
|
451 |
}
|
452 |
return true;
|
453 |
}
|
454 |
return false;
|
455 |
}
|
456 |
+
|
457 |
+
function qnoiuh_17($mbswxn_84, $condition) {
|
458 |
+
$operators = array('=', 'equals', 'is', '!=', 'is not', '<', 'is less than', '>', 'is greater than', '<=', 'is less than or equals', '>=', 'is greater than or equals', 'contains', 'does not contain',);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
459 |
$operators_regex = array();
|
460 |
+
foreach ($operators as $value) {
|
461 |
$operators_regex[] = preg_quote($value, '/');
|
462 |
}
|
463 |
$operators_regex = implode('|', $operators_regex);
|
464 |
+
if (preg_match('/^(.+) (' . $operators_regex . ') (.+)$/i', trim($condition), $capture)) {
|
465 |
$field = $capture[1];
|
466 |
$op = $capture[2];
|
467 |
$value = $capture[3];
|
468 |
+
if (preg_match('/^([\'\"]{1})(.*)([\'\"]{1})$/i', $value, $capture)) {
|
469 |
+
if ($capture[1] == $capture[3]) {
|
470 |
$value = $capture[2];
|
471 |
$value = str_replace("\\n", "\n", $value);
|
472 |
$value = str_replace("\\r", "\r", $value);
|
474 |
$value = stripslashes($value);
|
475 |
}
|
476 |
}
|
477 |
+
if (array_key_exists($field, $mbswxn_84)) {
|
478 |
+
if (($op == '=' || $op == 'equals' || $op == 'is') && $mbswxn_84[$field] == $value) {
|
479 |
return '1';
|
480 |
+
} elseif (($op == '!=' || $op == 'is not') && $mbswxn_84[$field] != $value) {
|
481 |
return '1';
|
482 |
+
} elseif (($op == '<' || $op == 'is less than') && $mbswxn_84[$field] < $value) {
|
483 |
return '1';
|
484 |
+
} elseif (($op == '>' || $op == 'is greater than') && $mbswxn_84[$field] > $value) {
|
485 |
return '1';
|
486 |
+
} elseif (($op == '<=' || $op == 'is less than or equals') && $mbswxn_84[$field] <= $value) {
|
487 |
return '1';
|
488 |
+
} elseif (($op == '>=' || $op == 'is greater than or equals') && $mbswxn_84[$field] >= $value) {
|
489 |
return '1';
|
490 |
+
} elseif ($op == 'contains' && preg_match('/' . preg_quote($value, '/') . '/i', $mbswxn_84[$field])) {
|
491 |
return '1';
|
492 |
+
} elseif ($op == 'does not contain' && !preg_match('/' . preg_quote($value, '/') . '/i', $mbswxn_84[$field])) {
|
493 |
return '1';
|
494 |
} else {
|
495 |
return '0';
|
498 |
}
|
499 |
return '1';
|
500 |
}
|
501 |
+
|
502 |
+
function blhlef_1($ewhrie_86_row) {
|
503 |
+
if ($this->aerjwu_25 === null && $this->rtkfzr_31 !== null && $ewhrie_86_row < $this->rtkfzr_31) {
|
504 |
+
return false;
|
505 |
+
}
|
506 |
return true;
|
507 |
}
|
508 |
+
|
509 |
+
function sxzpwt_8($value = null) {
|
510 |
+
if ($value !== null && $value != '') {
|
511 |
$delimiter = preg_quote($this->delimiter, '/');
|
512 |
$ezvruf_29 = preg_quote($this->ezvruf_29, '/');
|
513 |
+
if (preg_match("/" . $delimiter . "|" . $ezvruf_29 . "|\n|\r/i", $value) || ($value{0} == ' ' || substr($value, -1) == ' ')) {
|
514 |
+
$value = str_replace($this->ezvruf_29, $this->ezvruf_29 . $this->ezvruf_29, $value);
|
515 |
+
$value = $this->ezvruf_29 . $value . $this->ezvruf_29;
|
516 |
}
|
517 |
}
|
518 |
return $value;
|
519 |
}
|
520 |
+
|
521 |
+
function totraw_9($iigiqu_63 = null) {
|
522 |
+
if (empty($this->nftvhw_20)) {
|
523 |
+
if ($iigiqu_63 === null) {
|
524 |
+
$iigiqu_63 = $this->iigiqu_63;
|
525 |
+
}
|
526 |
return $this->fmilrp_13($iigiqu_63);
|
527 |
}
|
528 |
return true;
|
529 |
}
|
530 |
+
|
531 |
+
|
532 |
+
function klpqct_10($char, $array, $depth, $preferred) {
|
533 |
+
if ($depth == count($array)) {
|
534 |
$first = null;
|
535 |
$equal = null;
|
536 |
$almost = false;
|
537 |
+
foreach ($array as $key => $value) {
|
538 |
+
if ($first == null) {
|
539 |
$first = $value;
|
540 |
+
} elseif ($value == $first && $equal !== false) {
|
541 |
$equal = true;
|
542 |
+
} elseif ($value == $first + 1 && $equal !== false) {
|
543 |
$equal = true;
|
544 |
$almost = true;
|
545 |
} else {
|
546 |
$equal = false;
|
547 |
}
|
548 |
}
|
549 |
+
if ($equal) {
|
550 |
+
$match = ($almost) ? 2 : 1;
|
551 |
$pref = strpos($preferred, $char);
|
552 |
+
$pref = ($pref !== false) ? str_pad($pref, 3, '0', STR_PAD_LEFT) : '999';
|
553 |
+
return $pref . $match . '.' . (99999 - str_pad($first, 5, '0', STR_PAD_LEFT));
|
554 |
+
} else {
|
555 |
+
return false;
|
556 |
+
}
|
557 |
}
|
558 |
}
|
559 |
+
|
560 |
+
function rqauqn_12($iigiqu_63 = null) {
|
561 |
+
if (is_readable($iigiqu_63)) {
|
562 |
+
if (!($fh = fopen($iigiqu_63, 'r'))) {
|
563 |
+
return false;
|
564 |
+
}
|
565 |
$huzgna_45 = fread($fh, filesize($iigiqu_63));
|
566 |
fclose($fh);
|
567 |
return $huzgna_45;
|
569 |
return false;
|
570 |
}
|
571 |
|
572 |
+
function jvyhik_14($iigiqu_63, $string = '', $mode = 'wb', $lock = 2) {
|
573 |
+
if ($fp = fopen($iigiqu_63, $mode)) {
|
574 |
flock($fp, $lock);
|
575 |
$re = fwrite($fp, $string);
|
576 |
$re2 = fclose($fp);
|
577 |
+
if ($re != false && $re2 != false) {
|
578 |
+
return true;
|
579 |
+
}
|
580 |
}
|
581 |
return false;
|
582 |
}
|
583 |
+
|
584 |
}
|
|
includes/WPImporter_includes_helper.php
CHANGED
@@ -32,15 +32,16 @@
|
|
32 |
* WP Ultimate CSV Importer copyright notice. If the display of the logo is
|
33 |
* not reasonably feasible for technical reasons, the Appropriate Legal
|
34 |
* Notices must display the words
|
35 |
-
* "Copyright Smackcoders.
|
36 |
********************************************************************************/
|
37 |
-
|
38 |
-
|
|
|
|
|
39 |
|
40 |
class WPImporter_includes_helper {
|
41 |
|
42 |
-
public function __construct()
|
43 |
-
{
|
44 |
$this->getKeyVals();
|
45 |
}
|
46 |
|
@@ -66,16 +67,13 @@ class WPImporter_includes_helper {
|
|
66 |
public $noPostAuthCount = 0;
|
67 |
|
68 |
// @var int updated post count
|
69 |
-
public $updatedPostCount=0;
|
70 |
|
71 |
// @var string delimiter
|
72 |
public $delim = ",";
|
73 |
|
74 |
// @var array delilimters supported by CSV importer
|
75 |
-
public $delim_avail = array(
|
76 |
-
',',
|
77 |
-
';'
|
78 |
-
);
|
79 |
|
80 |
// @var array wp field keys
|
81 |
public $keys = array();
|
@@ -84,35 +82,20 @@ class WPImporter_includes_helper {
|
|
84 |
public $MultiImages = false;
|
85 |
|
86 |
// @var array for default columns
|
87 |
-
public $defCols = array(
|
88 |
-
'post_title' => null,
|
89 |
-
'post_content' => null,
|
90 |
-
'post_excerpt' => null,
|
91 |
-
'post_date' => null,
|
92 |
-
'post_name' => null,
|
93 |
-
'post_tag' => null,
|
94 |
-
'post_category' => null,
|
95 |
-
'post_author' => null,
|
96 |
-
'featured_image' => null,
|
97 |
-
'post_parent' => 0,
|
98 |
-
'post_status' => 0,
|
99 |
-
'menu_order' => 0,
|
100 |
-
'post_format' => 0,
|
101 |
-
'wp_page_template' => null,
|
102 |
-
);
|
103 |
|
104 |
// @var array CSV headers
|
105 |
public $headers = array();
|
106 |
|
107 |
-
public $capturedId=0;
|
108 |
|
109 |
public $detailedLog = array();
|
110 |
|
111 |
/* getImportDataConfiguration */
|
112 |
-
public function getImportDataConfiguration(){
|
113 |
$importDataConfig = "<div class='importstatus'id='importallwithps_div'>
|
114 |
<table><tr><td>
|
115 |
-
<label id='importalign'>". __('Import with post status','wp-ultimate-csv-importer') ."</label><span class='mandatory'> *</span></td><td>
|
116 |
<div style='float:left;margin-right:10px;'>
|
117 |
<select name='importallwithps' id='importallwithps' onChange='selectpoststatus();' >
|
118 |
<option value='0'>Status as in CSV</option>
|
@@ -125,15 +108,15 @@ class WPImporter_includes_helper {
|
|
125 |
</select></div>
|
126 |
<div style='float:right;'>
|
127 |
<a href='#' class='tooltip'>
|
128 |
-
<img src='".WP_CONST_ULTIMATE_CSV_IMP_DIR."images/help.png' />
|
129 |
<span class='tooltipPostStatus'>
|
130 |
-
<img class='callout' src='".WP_CONST_ULTIMATE_CSV_IMP_DIR."images/callout.gif' />
|
131 |
-
". __('Select the status for the post imported, if not defined within your csv .E.g.publish','wp-ultimate-csv-importer')."
|
132 |
-
<img src='". WP_CONST_ULTIMATE_CSV_IMP_DIR."images/help.png' style='margin-top: 6px;float:right;' />
|
133 |
</span></a> </div>
|
134 |
</td></tr><tr><td>
|
135 |
-
<div id='globalpassword_label' class='globalpassword' style='display:none;'><label>". __('Password','wp-ultimate-csv-importer')."</label><span class='mandatory'> *</span></div></td><td>
|
136 |
-
<div id='globalpassword_text' class='globalpassword' style='display:none;'><input type = 'text' id='globalpassword_txt' name='globalpassword_txt' placeholder=".__('Password for all post','wp-ultimate-csv-importer')."></div></td></tr></table>
|
137 |
</div>";
|
138 |
return $importDataConfig;
|
139 |
}
|
@@ -141,84 +124,79 @@ class WPImporter_includes_helper {
|
|
141 |
/**
|
142 |
* Get upload directory
|
143 |
*/
|
144 |
-
public function getUploadDirectory($check = 'plugin_uploads')
|
145 |
-
{
|
146 |
$upload_dir = wp_upload_dir();
|
147 |
-
if($check == 'plugin_uploads'){
|
148 |
return $upload_dir ['basedir'] . "/" . $this->uploadDir;
|
149 |
-
}else{
|
150 |
return $upload_dir ['basedir'];
|
151 |
}
|
152 |
}
|
153 |
|
154 |
/**
|
155 |
-
*
|
156 |
-
*
|
157 |
-
*
|
158 |
**/
|
159 |
-
public function generatehelp($content, $mapping_style = NULL)
|
160 |
-
|
161 |
-
|
162 |
-
<img src="'.WP_CONST_ULTIMATE_CSV_IMP_DIR.'images/help.png" />
|
163 |
<span class="tooltipPostStatus">
|
164 |
-
<img class="callout" src="'.WP_CONST_ULTIMATE_CSV_IMP_DIR.'images/callout.gif" />
|
165 |
-
'
|
166 |
-
<img src="'.WP_CONST_ULTIMATE_CSV_IMP_DIR.'images/help.png" style="margin-top: 6px;float:right;" />
|
167 |
</span> </a> </div>';
|
168 |
return $html;
|
169 |
}
|
170 |
|
171 |
-
public static function output_fd_page()
|
172 |
-
{
|
173 |
$get_pluginData = get_plugin_data(plugin_dir_path(__FILE__) . '../index.php');
|
174 |
$plugin_version = get_option('ULTIMATE_CSV_IMPORTER_UPGRADE_FREE_VERSION');
|
175 |
-
if(!$plugin_version) {
|
176 |
$plugin_version = get_option('ULTIMATE_CSV_IMP_FREE_VERSION');
|
177 |
}
|
178 |
if ($get_pluginData['Version'] == '3.6' && $plugin_version == '') {
|
179 |
if (file_exists(WP_CONST_ULTIMATE_CSV_IMP_DIRECTORY . '/upgrade/migrationfreev3.6.php')) {
|
180 |
require_once(WP_CONST_ULTIMATE_CSV_IMP_DIRECTORY . '/upgrade/migrationfreev3.6.php');
|
181 |
-
die();
|
182 |
}
|
183 |
-
}
|
184 |
-
else if (!isset($_REQUEST['__module']))
|
185 |
-
{
|
186 |
if (!isset($_REQUEST['__module'])) {
|
187 |
-
|
|
|
188 |
|
|
|
189 |
}
|
190 |
}
|
191 |
-
require_once(WP_CONST_ULTIMATE_CSV_IMP_DIRECTORY.'config/settings.php');
|
192 |
-
require_once(WP_CONST_ULTIMATE_CSV_IMP_DIRECTORY.'lib/skinnymvc/controller/SkinnyController.php');
|
193 |
|
194 |
$c = new SkinnyControllerWPCsvFree;
|
195 |
$c->main();
|
196 |
}
|
197 |
|
198 |
-
public function getSettings(){
|
199 |
return get_option('wpcsvfreesettings');
|
200 |
}
|
201 |
|
202 |
-
public function renderMenu()
|
203 |
-
{
|
204 |
include(plugin_dir_path(__FILE__) . '../templates/menu.php');
|
205 |
}
|
206 |
|
207 |
-
public function requestedAction($action
|
208 |
-
$actions = array('dashboard','settings','help','users','comments','eshop','wpcommerce','woocommerce','categories','customtaxonomy','export', 'mappingtemplate');
|
209 |
-
if(!in_array($action
|
210 |
include(plugin_dir_path(__FILE__) . '../templates/view.php');
|
211 |
-
}else{
|
212 |
-
include(plugin_dir_path(__FILE__) . '../modules/'
|
213 |
-
include(plugin_dir_path(__FILE__) . '../modules/'
|
214 |
}
|
215 |
}
|
216 |
|
217 |
/**
|
218 |
* Move CSV to the upload directory
|
219 |
*/
|
220 |
-
public function move_file()
|
221 |
-
{
|
222 |
if ($_FILES ["csv_import"] ["error"] == 0) {
|
223 |
$tmp_name = $_FILES ["csv_import"] ["tmp_name"];
|
224 |
$this->csvFileName = $_FILES ["csv_import"] ["name"];
|
@@ -229,8 +207,7 @@ class WPImporter_includes_helper {
|
|
229 |
/**
|
230 |
* Check upload dirctory permission
|
231 |
*/
|
232 |
-
function checkUploadDirPermission()
|
233 |
-
{
|
234 |
$this->getUploadDirectory();
|
235 |
$upload_dir = wp_upload_dir();
|
236 |
if (!is_dir($upload_dir ['basedir'])) {
|
@@ -253,10 +230,9 @@ class WPImporter_includes_helper {
|
|
253 |
/**
|
254 |
* Get field colum keys
|
255 |
*/
|
256 |
-
function getKeyVals()
|
257 |
-
|
258 |
-
$
|
259 |
-
$acf_field=array();
|
260 |
$wpcsvfreesettings = array();
|
261 |
global $wpdb;
|
262 |
$active_plugins = get_option('active_plugins');
|
@@ -271,14 +247,16 @@ class WPImporter_includes_helper {
|
|
271 |
$this->defCols ["CF: " . $val] = $val;
|
272 |
}
|
273 |
$wpcsvfreesettings = get_option('wpcsvfreesettings');
|
274 |
-
if($wpcsvfreesettings)
|
275 |
-
if(in_array('aioseo'
|
276 |
-
if(in_array('all-in-one-seo-pack/all_in_one_seo_pack.php', $active_plugins)){
|
277 |
-
$seo_custoFields =array('SEO: keywords','SEO: description','SEO: title','SEO: noindex','SEO: nofollow','SEO: titleatr','SEO: menulabel','SEO: disable','SEO: disable_analytics','SEO: noodp','SEO: noydir');
|
278 |
-
foreach($seo_custoFields as $val)
|
279 |
-
$this->defCols[$val]
|
|
|
280 |
}
|
281 |
}
|
|
|
282 |
}
|
283 |
|
284 |
/**
|
@@ -287,35 +265,33 @@ class WPImporter_includes_helper {
|
|
287 |
* @param $delim delimiter for the CSV
|
288 |
* @return array formatted CSV output as array
|
289 |
*/
|
290 |
-
function csv_file_data($file)
|
291 |
-
|
292 |
-
|
293 |
-
require_once(WP_CONST_ULTIMATE_CSV_IMP_DIRECTORY.'includes/Importer.php');
|
294 |
$csv = new ImporterLib();
|
295 |
$csv->delim($file);
|
296 |
-
foreach($csv->data as $hkey => $hval) {
|
297 |
-
foreach($hval as $hk => $hv) {
|
298 |
$this->headers[] = $hk;
|
299 |
}
|
300 |
break;
|
301 |
}
|
302 |
-
return $csv->data;
|
303 |
}
|
304 |
|
305 |
-
|
306 |
-
|
307 |
-
|
308 |
-
|
309 |
-
|
310 |
-
|
311 |
-
|
312 |
-
|
313 |
-
|
314 |
-
|
315 |
-
|
316 |
-
|
317 |
-
|
318 |
-
}
|
319 |
|
320 |
/**
|
321 |
* Manage duplicates
|
@@ -323,8 +299,7 @@ class WPImporter_includes_helper {
|
|
323 |
* @param string type = (title|content), string content
|
324 |
* @return boolean
|
325 |
*/
|
326 |
-
function duplicateChecks($type = 'title', $text, $gettype, $currentLimit, $postTitle)
|
327 |
-
{
|
328 |
global $wpdb;
|
329 |
if ($type == 'content') {
|
330 |
$htmlDecode = html_entity_decode($text);
|
@@ -344,24 +319,28 @@ class WPImporter_includes_helper {
|
|
344 |
}
|
345 |
}
|
346 |
return true;
|
347 |
-
} else
|
348 |
-
|
349 |
-
|
350 |
-
|
351 |
-
|
352 |
-
|
353 |
-
|
354 |
-
|
355 |
-
|
356 |
-
|
357 |
-
|
358 |
-
|
359 |
-
|
360 |
-
|
361 |
-
|
362 |
-
|
363 |
-
|
364 |
-
|
|
|
|
|
|
|
|
|
365 |
|
366 |
|
367 |
/**
|
@@ -373,25 +352,25 @@ class WPImporter_includes_helper {
|
|
373 |
* @param $currentLimit
|
374 |
* @param string $logObj
|
375 |
*/
|
376 |
-
public static function get_fimg_from_URL($f_img, $fimg_path, $fimg_name, $post_slug_value, $currentLimit = null, $logObj = ""){
|
377 |
-
$f_img = str_replace(
|
378 |
-
if($fimg_path!="" && $fimg_path){
|
379 |
$fimg_path = $fimg_path . "/" . $fimg_name;
|
380 |
}
|
381 |
-
$ch = curl_init
|
382 |
curl_setopt($ch, CURLOPT_HEADER, 0);
|
383 |
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
|
384 |
-
curl_setopt($ch, CURLOPT_BINARYTRANSFER,1);
|
385 |
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
|
386 |
$rawdata = curl_exec($ch);
|
387 |
-
if(strpos($rawdata, 'Not Found') != 0) {
|
388 |
$rawdata = false;
|
389 |
}
|
390 |
if ($rawdata == false) {
|
391 |
if ($logObj == '') {
|
392 |
-
$
|
393 |
} else {
|
394 |
-
$logObj->detailedLog[$currentLimit]['image'] = "<b>" . __('Image','wp-ultimate-csv-importer')." -</b>" .__('host not resolved','wp-ultimate-csv-importer');
|
395 |
}
|
396 |
} else {
|
397 |
if (file_exists($fimg_path)) {
|
@@ -400,7 +379,7 @@ class WPImporter_includes_helper {
|
|
400 |
$fp = fopen($fimg_path, 'x');
|
401 |
fwrite($fp, $rawdata);
|
402 |
fclose($fp);
|
403 |
-
$logObj->detailedLog[$currentLimit]['image'] = "<b>". __('Image','wp-ultimate-csv-importer')." -</b>" . $fimg_name;
|
404 |
}
|
405 |
curl_close($ch);
|
406 |
return $fimg_name;
|
@@ -411,59 +390,53 @@ class WPImporter_includes_helper {
|
|
411 |
*
|
412 |
* @return boolean
|
413 |
*/
|
414 |
-
function processDataInWP($data_rows
|
415 |
global $wpdb;
|
416 |
$post_id = '';
|
417 |
$new_post = array();
|
418 |
$smack_taxo = array();
|
419 |
$custom_array = array();
|
420 |
-
$seo_custom_array= array();
|
421 |
$imported_feature_img = array();
|
422 |
$headr_count = $ret_array['h2'];
|
423 |
-
|
424 |
-
|
425 |
-
|
426 |
-
|
427 |
-
|
428 |
-
|
429 |
-
|
|
|
430 |
}
|
431 |
-
}
|
432 |
-
|
433 |
-
|
434 |
-
|
435 |
-
|
436 |
-
|
437 |
-
|
438 |
-
if ($strip_CF === 0) {
|
439 |
-
$custom_key = substr($ret_array['mapping' . $i], 4);
|
440 |
-
$custom_array[$custom_key] = $data_rows[$i];
|
441 |
-
}
|
442 |
-
elseif($strip_SEO === 0){
|
443 |
-
$seo_key = substr($ret_array['mapping'.$i], 5);
|
444 |
-
$seo_custom_array[$seo_key] = $data_rows[$i];
|
445 |
}
|
446 |
-
|
447 |
-
|
|
|
|
|
|
|
|
|
|
|
448 |
}
|
|
|
449 |
} else {
|
450 |
-
|
451 |
-
|
|
|
|
|
|
|
|
|
|
|
452 |
}
|
453 |
}
|
454 |
}
|
455 |
}
|
456 |
-
/* for($j = 0; $j< $ret_array['corecustomcount'];j++){
|
457 |
-
if(array_key_exists('coremapping' . $i,$ret_array)){
|
458 |
-
echo '<pre>';print_r($ret_array['coretextbox' . $i]);echo '</pre>';
|
459 |
-
if($ret_array['coretextbox' . $i] != '-- Select --'){
|
460 |
-
$mappedindex = str_replace('textbox','',$ret_array['coretextbox'.$i]);
|
461 |
-
echo '<pre>';print_r($mappedindex);echo '</pre>';die;
|
462 |
-
//$new_post[$ret_array['coretextbox'.$i]] = $data_rows[];
|
463 |
-
//$custom_array[$ret_array['coremapping'.$i]] = $data_rows[$i];
|
464 |
-
}
|
465 |
-
}
|
466 |
-
}*/
|
467 |
for ($inc = 0; $inc < count($data_rows); $inc++) {
|
468 |
foreach ($this->keys as $k => $v) {
|
469 |
if (array_key_exists($v, $new_post)) {
|
@@ -471,7 +444,7 @@ class WPImporter_includes_helper {
|
|
471 |
}
|
472 |
}
|
473 |
}
|
474 |
-
if(is_array(
|
475 |
foreach ($new_post as $ckey => $cval) {
|
476 |
$this->postFlag = true;
|
477 |
$taxo = get_taxonomies();
|
@@ -488,7 +461,7 @@ class WPImporter_includes_helper {
|
|
488 |
$smack_taxo [$ckey] = null;
|
489 |
$taxo_check = 1;
|
490 |
}
|
491 |
-
if ($ckey != 'post_category' && $ckey != 'post_tag' && $ckey != 'featured_image' && $ckey != $smack_taxo [$ckey] && $ckey != 'wp_page_template') {
|
492 |
if ($taxo_check == 1) {
|
493 |
unset($smack_taxo[$ckey]);
|
494 |
$taxo_check = 0;
|
@@ -518,11 +491,11 @@ class WPImporter_includes_helper {
|
|
518 |
require_once(ABSPATH . 'wp-admin/includes/image.php');
|
519 |
$dir = wp_upload_dir();
|
520 |
$get_media_settings = get_option('uploads_use_yearmonth_folders');
|
521 |
-
if($get_media_settings == 1){
|
522 |
$dirname = date('Y') . '/' . date('m');
|
523 |
$full_path = $dir ['basedir'] . '/' . $dirname;
|
524 |
$baseurl = $dir ['baseurl'] . '/' . $dirname;
|
525 |
-
}else{
|
526 |
$full_path = $dir ['basedir'];
|
527 |
$baseurl = $dir ['baseurl'];
|
528 |
}
|
@@ -532,49 +505,36 @@ class WPImporter_includes_helper {
|
|
532 |
|
533 |
$fimg_name = @basename($f_img);
|
534 |
$featured_image = $fimg_name;
|
535 |
-
$fimg_name = strtolower(str_replace(' ','-'
|
536 |
-
$fimg_name =
|
537 |
$fimg_name = urlencode($fimg_name);
|
538 |
|
539 |
$parseURL = parse_url($f_img);
|
540 |
$path_parts = pathinfo($f_img);
|
541 |
-
if(!isset($path_parts['extension']))
|
542 |
$fimg_name = $fimg_name . '.jpg';
|
|
|
543 |
//else
|
544 |
// $fimg_name = $fimg_name.'.'.$path_parts['extension'];
|
545 |
-
|
546 |
$f_img_slug = '';
|
547 |
-
$f_img_slug = strtolower(str_replace('','-'
|
548 |
-
$f_img_slug =
|
549 |
|
550 |
$post_slug_value = strtolower($f_img_slug);
|
551 |
-
if(array_key_exists('extension'
|
552 |
-
|
553 |
}
|
554 |
$this->get_fimg_from_URL($f_img, $fimg_path, $fimg_name, $post_slug_value, $currentLimit, $this);
|
555 |
-
$filepath = $fimg_path ."/" . $fimg_name;
|
556 |
|
557 |
-
if(@getimagesize($filepath)){
|
558 |
$img = wp_get_image_editor($filepath);
|
559 |
-
|
560 |
-
$sizes_array = array(
|
561 |
-
// #1 - resizes to 1024x768 pixel, square-cropped image
|
562 |
-
array('width' => 1024, 'height' => 768, 'crop' => true),
|
563 |
-
// #2 - resizes to 100px max width/height, non-cropped image
|
564 |
-
array('width' => 100, 'height' => 100, 'crop' => false),
|
565 |
-
// #3 - resizes to 100 pixel max height, non-cropped image
|
566 |
-
array('width' => 300, 'height' => 100, 'crop' => false),
|
567 |
-
// #3 - resizes to 624x468 pixel max width, non-cropped image
|
568 |
-
array('width' => 624, 'height' => 468, 'crop' => false)
|
569 |
-
);
|
570 |
-
$resize = $img->multi_resize($sizes_array);
|
571 |
-
}*/
|
572 |
-
$file ['guid'] = $baseurl."/".$fimg_name;
|
573 |
$file ['post_title'] = $fimg_name;
|
574 |
$file ['post_content'] = '';
|
575 |
$file ['post_status'] = 'attachment';
|
576 |
-
}
|
577 |
-
else {
|
578 |
$file = false;
|
579 |
}
|
580 |
break;
|
@@ -583,91 +543,118 @@ class WPImporter_includes_helper {
|
|
583 |
}
|
584 |
}
|
585 |
|
586 |
-
if($_SESSION['SMACK_MAPPING_SETTINGS_VALUES']['selectedImporter'] != 'custompost'){
|
587 |
$data_array['post_type'] = $_SESSION['SMACK_MAPPING_SETTINGS_VALUES']['selectedImporter'];
|
588 |
-
}else{
|
589 |
$data_array['post_type'] = $_SESSION['SMACK_MAPPING_SETTINGS_VALUES']['custompostlist'];
|
590 |
}
|
591 |
-
if ($this->titleDupCheck == 'true')
|
592 |
$this->postFlag = $this->duplicateChecks('title', $data_array ['post_title'], $data_array ['post_type'], $currentLimit, $data_array ['post_title']);
|
|
|
593 |
|
594 |
-
if ($this->conDupCheck == 'true' && $this->postFlag)
|
595 |
$this->postFlag = $this->duplicateChecks('content', $data_array ['post_content'], $data_array ['post_type'], $currentLimit, $data_array ['post_title']);
|
|
|
596 |
|
597 |
-
if ($this->titleDupCheck == 'true' && $this->conDupCheck == 'true')
|
598 |
-
|
599 |
-
|
600 |
|
601 |
|
602 |
if ($this->postFlag) {
|
603 |
unset ($sticky);
|
604 |
-
if (empty($data_array['post_status']))
|
605 |
$data_array['post_status'] = null;
|
|
|
606 |
|
607 |
-
if ($_SESSION['SMACK_MAPPING_SETTINGS_VALUES']['importallwithps'] != 0)
|
608 |
$data_array['post_status'] = $_SESSION['SMACK_MAPPING_SETTINGS_VALUES']['importallwithps'];
|
|
|
609 |
|
610 |
switch ($data_array ['post_status']) {
|
611 |
case 1 :
|
612 |
$data_array['post_status'] = 'publish';
|
613 |
-
$this->detailedLog[$currentLimit]['poststatus'] = "<b>". __('Status','wp-ultimate-csv-importer')." - </b>".__('publish','wp-ultimate-csv-importer');
|
614 |
break;
|
615 |
case 2 :
|
616 |
-
$
|
617 |
-
|
618 |
-
|
|
|
|
|
|
|
|
|
|
|
619 |
break;
|
620 |
case 3 :
|
621 |
-
$data_array['post_status'] = 'publish';
|
622 |
-
$data_array ['post_password'] = $_POST ['postsPassword'];
|
623 |
-
$this->detailedLog[$currentLimit]['poststatus'] = "<b>". __('Status','wp-ultimate-csv-importer')." - </b>".__('protected with password','wp-ultimate-csv-importer'). $data_array['post_password'];
|
624 |
-
break;
|
625 |
-
case 4 :
|
626 |
$data_array ['post_status'] = 'private';
|
627 |
-
$this->detailedLog[$currentLimit]['poststatus'] = "<b>". __('Status','wp-ultimate-csv-importer')." - </b>".__('private','wp-ultimate-csv-importer');
|
628 |
break;
|
629 |
-
case
|
630 |
$data_array ['post_status'] = 'draft';
|
631 |
-
$this->detailedLog[$currentLimit]['poststatus'] = "<b>". __('Status','wp-ultimate-csv-importer')." - </b>".__('draft','wp-ultimate-csv-importer');
|
632 |
break;
|
633 |
-
case
|
634 |
$data_array ['post_status'] = 'pending';
|
635 |
-
$this->detailedLog[$currentLimit]['poststatus'] = "<b>". __('Status','wp-ultimate-csv-importer')." - </b>".__('pending','wp-ultimate-csv-importer');
|
636 |
break;
|
637 |
default :
|
|
|
638 |
$poststatus = $data_array['post_status'] = strtolower($data_array['post_status']);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
639 |
if ($data_array['post_status'] != 'publish' && $data_array['post_status'] != 'private' && $data_array['post_status'] != 'draft' && $data_array['post_status'] != 'pending' && $data_array['post_status'] != 'sticky') {
|
640 |
$stripPSF = strpos($data_array['post_status'], '{');
|
641 |
if ($stripPSF === 0) {
|
642 |
-
$poststatus = substr($
|
643 |
$stripPSL = substr($poststatus, -1);
|
644 |
if ($stripPSL == '}') {
|
645 |
-
$postpwd = substr($poststatus,
|
646 |
$data_array['post_status'] = 'publish';
|
647 |
$data_array ['post_password'] = $postpwd;
|
648 |
-
$this->detailedLog[$currentLimit]['poststatus'] = "<b>".__('Status','wp-ultimate-csv-importer')." - </b>".__('protected with password','wp-ultimate-csv-importer')
|
649 |
} else {
|
650 |
$data_array['post_status'] = 'publish';
|
651 |
-
$
|
652 |
-
$this->detailedLog[$currentLimit]['poststatus'] = "<b>". __('Status','wp-ultimate-csv-importer')." - </b>".__('protected with password','wp-ultimate-csv-importer') . $data_array['post_password'];
|
653 |
}
|
654 |
} else {
|
655 |
$data_array['post_status'] = 'publish';
|
656 |
-
$this->detailedLog[$currentLimit]['poststatus'] = "<b>". __('Status','wp-ultimate-csv-importer')." - </b>".__('publish','wp-ultimate-csv-importer');
|
657 |
}
|
658 |
}
|
659 |
if ($data_array['post_status'] == 'sticky') {
|
660 |
-
$
|
661 |
-
|
662 |
-
|
663 |
-
|
664 |
-
|
665 |
-
|
|
|
|
|
|
|
666 |
}
|
|
|
|
|
|
|
667 |
}
|
668 |
// Post Format Options
|
669 |
|
670 |
-
if(isset($data_array ['post_format'])) {
|
671 |
$post_format = 0;
|
672 |
switch ($data_array ['post_format']) {
|
673 |
case 1 :
|
@@ -692,34 +679,34 @@ class WPImporter_includes_helper {
|
|
692 |
$post_format = 'post-format-gallery';
|
693 |
break;
|
694 |
default :
|
695 |
-
if($data_array['post_format']=='post-format-aside'){
|
696 |
-
|
697 |
-
|
698 |
-
|
699 |
-
|
700 |
-
|
701 |
-
|
702 |
-
|
703 |
-
|
704 |
-
|
705 |
-
|
706 |
-
|
707 |
-
|
708 |
-
|
709 |
-
|
710 |
-
|
711 |
-
|
712 |
-
|
713 |
-
|
714 |
-
|
715 |
-
|
716 |
-
|
717 |
-
|
718 |
-
|
719 |
-
|
720 |
-
|
721 |
-
|
722 |
-
|
723 |
$post_format = 0;
|
724 |
|
725 |
}
|
@@ -727,7 +714,7 @@ class WPImporter_includes_helper {
|
|
727 |
|
728 |
|
729 |
// Author name/id update
|
730 |
-
if(isset($data_array ['post_author'])){
|
731 |
$authorLen = strlen($data_array ['post_author']);
|
732 |
$postuserid = $data_array ['post_author'];
|
733 |
$checkpostuserid = intval($data_array ['post_author']);
|
@@ -736,7 +723,7 @@ class WPImporter_includes_helper {
|
|
736 |
|
737 |
if ($authorLen == $postAuthorLen) {
|
738 |
$postauthor = $wpdb->get_results("select ID,user_login from $wpdb->users where ID = \"{$postuserid}\"");
|
739 |
-
if(empty($postauthor) || !$postauthor[0]->ID) { // If user name are numeric Ex: 1300001
|
740 |
$postauthor = $wpdb->get_results("select ID,user_login from $wpdb->users where user_login = \"{$postuserid}\"");
|
741 |
}
|
742 |
} else {
|
@@ -746,54 +733,57 @@ class WPImporter_includes_helper {
|
|
746 |
if (empty($postauthor) || !$postauthor[0]->ID) {
|
747 |
$data_array ['post_author'] = 1;
|
748 |
$admindet = $wpdb->get_results("select ID,user_login from $wpdb->users where ID = 1");
|
749 |
-
$this->detailedLog[$currentLimit]['assigned_author'] = "<b>" .__('Author - not found (assigned to','wp-ultimate-csv-importer')." </b>" . $admindet[0]->user_login . ")";
|
750 |
$this->noPostAuthCount++;
|
751 |
} else {
|
752 |
$data_array ['post_author'] = $postauthor [0]->ID;
|
753 |
-
$this->detailedLog[$currentLimit]['assigned_author'] = "<b>".__('Author','wp-ultimate-csv-importer')." - </b>" . $postauthor[0]->user_login;
|
754 |
}
|
755 |
-
}
|
756 |
-
else{
|
757 |
$data_array ['post_author'] = 1;
|
758 |
$admindet = $wpdb->get_results("select ID,user_login from $wpdb->users where ID = 1");
|
759 |
-
$this->detailedLog[$currentLimit]['assigned_author'] = "<b>".__('Author - not found (assigned to','wp-ultimate-csv-importer')." </b>" . $admindet[0]->user_login . ")";
|
760 |
$this->noPostAuthCount++;
|
761 |
}
|
762 |
|
763 |
// Date format post
|
764 |
-
|
765 |
-
|
766 |
-
|
767 |
-
$
|
768 |
-
}
|
|
|
|
|
|
|
|
|
769 |
$data_array ['post_date'] = date('Y-m-d H:i:s', strtotime($data_array ['post_date']));
|
770 |
-
$this->detailedLog[$currentLimit]['postdate'] = "<b>".__('Date','wp-ultimate-csv-importer')." - </b>" . $data_array ['post_date'];
|
771 |
}
|
772 |
-
if(isset($data_array ['post_slug'])){
|
773 |
$data_array ['post_name'] = $data_array ['post_slug'];
|
774 |
}
|
775 |
|
776 |
//add global password
|
777 |
-
if($data_array){
|
778 |
-
if($ret_array['importallwithps'] == 3){
|
779 |
$data_array['post_password'] = $ret_array['globalpassword_txt'];
|
780 |
-
$this->detailedLog[$currentLimit]['poststatus'] = "<b>".__('Status','wp-ultimate-csv-importer')." - </b>".__('protected with password','wp-ultimate-csv-importer')
|
781 |
}
|
782 |
}
|
783 |
if ($data_array) {
|
784 |
-
if($this->MultiImages == 'true') { // Inline image import feature by fredrick marks
|
785 |
$inlineImagesObj = new WPImporter_inlineImages();
|
786 |
$postid = wp_insert_post($data_array);
|
787 |
$post_id = $inlineImagesObj->importwithInlineImages($postid, $currentLimit, $data_array, $this, $importinlineimageoption, $extractedimagelocation, $sample_inlineimage_url);
|
788 |
-
|
789 |
} else {
|
790 |
$post_id = wp_insert_post($data_array);
|
791 |
-
$this->detailedLog[$currentLimit]['post_id'] = "<b>".__('Created Post_ID','wp-ultimate-csv-importer')." - </b>" . $post_id . " - success";
|
792 |
}
|
793 |
}
|
794 |
unset($postauthor);
|
795 |
if ($post_id) {
|
796 |
-
$uploaded_file_name
|
797 |
$real_file_name = $session_arr['uploaded_csv_name'];
|
798 |
// $version = $session_arr['currentfileversion'];
|
799 |
$action = $data_array['post_type'];
|
@@ -803,27 +793,27 @@ class WPImporter_includes_helper {
|
|
803 |
$version=$version_arr[0]; */
|
804 |
$get_imported_feature_image = array();
|
805 |
$get_imported_feature_image = get_option('IMPORTED_FEATURE_IMAGES');
|
806 |
-
if(is_array($get_imported_feature_image)){
|
807 |
$imported_feature_img = array_merge($get_imported_feature_image, $imported_feature_img);
|
808 |
-
}
|
809 |
-
else{
|
810 |
$imported_feature_img = $imported_feature_img;
|
811 |
}
|
812 |
update_option('IMPORTED_FEATURE_IMAGES', $imported_feature_img);
|
813 |
$created_records[$action][] = $post_id;
|
814 |
-
if($action == 'post'){
|
815 |
$imported_as = 'Post';
|
816 |
}
|
817 |
-
if($action == 'page'){
|
818 |
$imported_as = 'Page';
|
819 |
}
|
820 |
-
if($action != 'post' && $action != 'page'){
|
821 |
$imported_as = 'Custom Post';
|
822 |
}
|
823 |
$keyword = $action;
|
824 |
$this->insPostCount++;
|
825 |
-
if (isset($sticky) && $sticky)
|
826 |
stick_post($post_id);
|
|
|
827 |
|
828 |
if (!empty ($custom_array)) {
|
829 |
foreach ($custom_array as $custom_key => $custom_value) {
|
@@ -833,13 +823,13 @@ class WPImporter_includes_helper {
|
|
833 |
|
834 |
|
835 |
// Import post formats added by fredrick marks
|
836 |
-
if(isset($post_format)) {
|
837 |
wp_set_object_terms($post_id, $post_format, 'post_format');
|
838 |
|
839 |
-
}
|
840 |
//Import SEO Values
|
841 |
-
if(!empty($seo_custom_array)){
|
842 |
-
$this->importSEOfields($seo_custom_array
|
843 |
}
|
844 |
|
845 |
// Create custom taxonomy to post
|
@@ -859,7 +849,7 @@ class WPImporter_includes_helper {
|
|
859 |
$this->detailedLog[$currentLimit]['tags'] .= $tag_value . "|";
|
860 |
wp_set_post_tags($post_id, $tag_value);
|
861 |
}
|
862 |
-
$this->detailedLog[$currentLimit]['tags'] = "<b>".__('Tags','wp-ultimate-csv-importer')." - </b>" .substr($this->detailedLog[$currentLimit]['tags'], 0, -1);
|
863 |
}
|
864 |
|
865 |
// Create/Add category to post
|
@@ -874,26 +864,20 @@ class WPImporter_includes_helper {
|
|
874 |
}
|
875 |
$assigned_categories[$val] = $val;
|
876 |
}
|
877 |
-
foreach($assigned_categories as $cateKey => $cateVal) {
|
878 |
$this->detailedLog[$currentLimit]['category'] .= $cateKey . "|";
|
879 |
}
|
880 |
-
$this->detailedLog[$currentLimit]['category'] = "<b>".__('Category','wp-ultimate-csv-importer')." - </b>" .substr($this->detailedLog[$currentLimit]['category'], 0, -1);
|
881 |
wp_set_object_terms($post_id, $split_cate, 'category');
|
882 |
}
|
883 |
// Add featured image
|
884 |
if (!empty ($file)) {
|
885 |
//$wp_filetype = wp_check_filetype(@basename($file ['guid']), null);
|
886 |
$wp_upload_dir = wp_upload_dir();
|
887 |
-
$attachment = array(
|
888 |
-
|
889 |
-
|
890 |
-
|
891 |
-
'post_content' => '',
|
892 |
-
'post_status' => 'inherit'
|
893 |
-
);
|
894 |
-
if($get_media_settings == 1){
|
895 |
-
$generate_attachment = $dirname . '/' . $fimg_name;
|
896 |
-
}else{
|
897 |
$generate_attachment = $fimg_name;
|
898 |
}
|
899 |
$uploadedImage = $wp_upload_dir['path'] . '/' . $fimg_name;
|
@@ -901,28 +885,27 @@ class WPImporter_includes_helper {
|
|
901 |
$attach_data = wp_generate_attachment_metadata($attach_id, $uploadedImage);
|
902 |
wp_update_attachment_metadata($attach_id, $attach_data);*/
|
903 |
$existing_attachment = array();
|
904 |
-
|
905 |
-
|
906 |
-
|
907 |
-
|
908 |
-
|
909 |
-
|
910 |
-
|
911 |
-
|
912 |
-
|
913 |
-
|
914 |
-
|
915 |
-
|
916 |
-
|
917 |
-
|
918 |
set_post_thumbnail($post_id, $attach_id);
|
919 |
}
|
920 |
-
}
|
921 |
-
else{
|
922 |
$skippedRecords[] = $_SESSION['SMACK_SKIPPED_RECORDS'];
|
923 |
}
|
924 |
-
|
925 |
-
|
926 |
}
|
927 |
unset($data_array);
|
928 |
}
|
@@ -930,18 +913,18 @@ class WPImporter_includes_helper {
|
|
930 |
// Create Data base for Statistic chart
|
931 |
public static function activate() {
|
932 |
if (!defined('PDO::ATTR_DRIVER_NAME')) {
|
933 |
-
echo __("Make sure you have enable the PDO extensions in your environment before activate the plugin!",'wp-ultimate-csv-importer');
|
934 |
die;
|
935 |
}
|
936 |
global $wpdb;
|
937 |
-
$sql1="CREATE TABLE `smackcsv_pie_log` (
|
938 |
`id` int(11) NOT NULL AUTO_INCREMENT,
|
939 |
`type` varchar(255) DEFAULT NULL,
|
940 |
`value` int(11) DEFAULT NULL,
|
941 |
PRIMARY KEY (`id`)
|
942 |
) ENGINE=InnoDB;";
|
943 |
|
944 |
-
$sql2="CREATE TABLE `smackcsv_line_log` (
|
945 |
`id` int(11) NOT NULL AUTO_INCREMENT,
|
946 |
`month` varchar(60) DEFAULT NULL,
|
947 |
`year` varchar(60) DEFAULT NULL,
|
@@ -952,11 +935,11 @@ class WPImporter_includes_helper {
|
|
952 |
PRIMARY KEY (`id`)
|
953 |
) ENGINE=InnoDB;";
|
954 |
$wpdb->query($sql1);
|
955 |
-
$wpdb->query($sql2);
|
956 |
-
$importedTypes = array('Post','Page','Custom Post','Comments','Users','Eshop');
|
957 |
-
foreach($importedTypes as $importedType){
|
958 |
$querycheck = $wpdb->get_results("select *from smackcsv_pie_log where type = \"{$importedType}\"");
|
959 |
-
if (count($querycheck) == 0){
|
960 |
$sql4 = "insert into smackcsv_pie_log (type,value) values(\"$importedType\",0)";
|
961 |
$wpdb->query($sql4);
|
962 |
}
|
@@ -974,48 +957,72 @@ class WPImporter_includes_helper {
|
|
974 |
$sql2 = "DROP TABLE smackcsv_line_log;";
|
975 |
$wpdb->query($sql2);
|
976 |
|
977 |
-
update_option('wpcsvfreesettings','');
|
978 |
}
|
|
|
979 |
public function addPieChartEntry($imported_as, $count) {
|
980 |
//add total counts
|
981 |
global $wpdb;
|
982 |
$getTypeID = $wpdb->get_results("select * from smackcsv_pie_log where type = '$imported_as'");
|
983 |
-
if(count($getTypeID) == 0)
|
984 |
-
$wpdb->insert('smackcsv_pie_log',array('type'
|
985 |
-
else
|
986 |
-
$wpdb->update('smackcsv_pie_log', array('value'
|
|
|
987 |
}
|
988 |
-
|
|
|
989 |
global $wpdb;
|
990 |
$today = date('Y-m-d h:i:s');
|
991 |
-
$mon = date("M",strtotime($today));
|
992 |
-
$year = date("Y",strtotime($today));
|
993 |
-
$wpdb->insert('smackcsv_line_log', array('month'
|
994 |
}
|
995 |
|
996 |
/**
|
997 |
-
* Function for importing the all in seo data
|
998 |
* Feature added by Fredrick on version3.5.4
|
999 |
*/
|
1000 |
-
function importSEOfields($array
|
1001 |
-
{
|
1002 |
$seo_opt = get_option('wpcsvfreesettings');
|
1003 |
-
if(in_array('aioseo'
|
1004 |
-
if(isset($array['keywords'])) {
|
1005 |
-
|
1006 |
-
|
1007 |
-
if(isset($array['
|
1008 |
-
|
1009 |
-
|
1010 |
-
if(isset($array['
|
1011 |
-
|
1012 |
-
|
1013 |
-
if(isset($array['
|
1014 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1015 |
}
|
1016 |
-
if (!
|
1017 |
-
foreach (
|
1018 |
-
update_post_meta
|
1019 |
}
|
1020 |
}
|
1021 |
|
@@ -1026,10 +1033,10 @@ class WPImporter_includes_helper {
|
|
1026 |
*/
|
1027 |
function deletefileafterprocesscomplete($uploadDir) {
|
1028 |
//array_map('unlink', glob("$uploadDir/*"));
|
1029 |
-
$files = array_diff(scandir($uploadDir), array('.','..'));
|
1030 |
-
foreach ($files as $file) {
|
1031 |
-
(is_dir("$uploadDir/$file")) ? rmdir("$uploadDir/$file") : unlink("$uploadDir/$file");
|
1032 |
-
}
|
1033 |
}
|
1034 |
|
1035 |
// Function convert string to hash_key
|
@@ -1040,11 +1047,11 @@ class WPImporter_includes_helper {
|
|
1040 |
|
1041 |
// Function to show common notice for PRO Feature
|
1042 |
public function common_notice_for_pro_feature() {
|
1043 |
-
return "<p align='center'> <label style='color:red;'> ".__('This feature is only available in Pro!','wp-ultimate-csv-importer')." </label> <a href='http://www.smackcoders.com/wp-ultimate-csv-importer-pro.html' target='_blank'>". __('Go Pro Now','wp-ultimate-csv-importer')."</a> </p>";
|
1044 |
}
|
1045 |
|
1046 |
// Function for common footer
|
1047 |
-
public function common_footer_for_other_plugin_promotions(){
|
1048 |
$content = '<div class="accordion-inner">
|
1049 |
<label class="plugintags"><a href="http://blog.smackcoders.com/category/free-wordpress-plugins/?utm_source=WpPlugin&utm_medium=Free&utm_campaign=SupportTraffic" target="_blank">Social All in One Bot</a></label>
|
1050 |
<label class="plugintags"><a href="http://blog.smackcoders.com/category/free-wordpress-plugins/google-seo-author-snippet-plugin/?utm_source=WpPlugin&utm_medium=Free&utm_campaign=SupportTraffic" target="_blank">Google SEO Author Snippet</a></label>
|
@@ -1071,21 +1078,21 @@ class WPImporter_includes_helper {
|
|
1071 |
|
1072 |
//Facebook
|
1073 |
$htmlShareButtons = '<span class="sociallink">';
|
1074 |
-
$htmlShareButtons .= '<a id="wpcsv_facebook_share" href="http://www.facebook.com/sharer.php?u=' . $urlCurrentPage
|
1075 |
$htmlShareButtons .= '<img title="Facebook" class="wpcsv" src="' . $fbimgsrc . '" alt="Facebook" />';
|
1076 |
$htmlShareButtons .= '</a>';
|
1077 |
$htmlShareButtons .= '</span>';
|
1078 |
|
1079 |
//Google Plus
|
1080 |
$htmlShareButtons .= '<span class="sociallink">';
|
1081 |
-
$htmlShareButtons .= '<a id="wpcsv_google_share" href="https://plus.google.com/share?url=' . $urlCurrentPage
|
1082 |
$htmlShareButtons .= '<img title="Google+" class="wpcsv" src="' . $googleimgsrc . '" alt="Google+" />';
|
1083 |
$htmlShareButtons .= '</a>';
|
1084 |
$htmlShareButtons .= '</span>';
|
1085 |
|
1086 |
//Linked in
|
1087 |
$htmlShareButtons .= '<span class="sociallink">';
|
1088 |
-
$htmlShareButtons .= '<a id="wpcsv_linkedin_share" class="wpcsv_share_link" href="http://www.linkedin.com/shareArticle?mini=true&url=' . urlencode($urlCurrentPage)
|
1089 |
$htmlShareButtons .= '<img title="LinkedIn" class="wpcsv" src="' . $linkedimgsrc . '" alt="LinkedIn" />';
|
1090 |
$htmlShareButtons .= '</a>';
|
1091 |
$htmlShareButtons .= '</span>';
|
@@ -1096,7 +1103,7 @@ class WPImporter_includes_helper {
|
|
1096 |
$twitterShareText = urlencode(html_entity_decode($strPageTitle . ' ', ENT_COMPAT, 'UTF-8'));
|
1097 |
// twitter share link
|
1098 |
$htmlShareButtons .= '<span class="sociallink">';
|
1099 |
-
$htmlShareButtons .= '<a id="wpcsv_twitter_share" href="http://twitter.com/share?url=' . $urlCurrentPage .'&via='
|
1100 |
$htmlShareButtons .= '<img title="Twitter" class="wpcsv" src="' . $twitimgsrc . '" alt="Twitter" />';
|
1101 |
$htmlShareButtons .= '</a>';
|
1102 |
$htmlShareButtons .= '</span>';
|
@@ -1104,26 +1111,27 @@ class WPImporter_includes_helper {
|
|
1104 |
}
|
1105 |
|
1106 |
public function common_footer() {
|
1107 |
-
$get_pluginData = get_plugin_data(plugin_dir_path(
|
1108 |
$footer = '';
|
1109 |
$footer .= '<div style="padding:10px;">';
|
1110 |
-
$footer .= '<label class="plugintags"><a href="http://www.wpultimatecsvimporter.com" target="_blank">'.__("Home",'wp-ultimate-csv-importer').'</a></label><label class="plugintags"><a href="http://wiki.smackcoders.com/WP_Ultimate_CSV_Importer?utm_source=WpPlugin&utm_medium=Free&utm_campaign=SupportTraffic" target="_blank">'. __("Wiki",'wp-ultimate-csv-importer').'</a></label>
|
1111 |
-
<label class="plugintags"><a href="http://www.wpultimatecsvimporter.com" target="_blank">' .__('Tutorials','wp-ultimate-csv-importer').'</a></label> <label class="plugintags"><a href="http://wiki.smackcoders.com/WP_Ultimate_CSV_Importer_Videos?utm_source=WpPlugin&utm_medium=Free&utm_campaign=SupportTraffic" target="_blank">'. __("Videos",'wp-ultimate-csv-importer').'</a></label>
|
1112 |
-
<label class="plugintags"><a href="http://blog.smackcoders.com/wordpress-ultimate-csv-importer-csv-sample-files-and-updates.html?utm_source=WpPlugin&utm_medium=Free&utm_campaign=SupportTraffic" target="_blank">'. __("Sample Files",'wp-ultimate-csv-importer').'</a></label>';
|
1113 |
$footer .= '</div>';
|
1114 |
$footer .= '<div style="padding:10px;margin-bottom:20px;">';
|
1115 |
-
if(isset ($_REQUEST['__module']) && $_REQUEST['__module'] != 'settings')
|
1116 |
-
$footer .= "<div style='float:right;margin-top:-49px;'><a class='label label-info' href='".get_admin_url()."admin.php?page=".WP_CONST_ULTIMATE_CSV_IMP_SLUG."/index.php&__module=settings'>". __('Click here to Enable any disabled module','wp-ultimate-csv-importer')."</a></div>";
|
1117 |
-
if(isset ($_REQUEST['__module']) && $_REQUEST['__module'] == 'settings') {
|
1118 |
-
$footer .= "<div style='float:right;margin-top:-48px;'><span style='margin-right:20px;'><a class='label label-info' href='http://wordpress.org/plugins/wp-ultimate-csv-importer/developers/'>".__('Get Old Versions','wp-ultimate-csv-importer')."</a></span><a class='label label-info' href='".get_admin_url()."admin.php?page=".WP_CONST_ULTIMATE_CSV_IMP_SLUG."/index.php&__module=support'>".__('Click here to Get some useful links')."</a></div>";
|
1119 |
-
$footer .= "<div style='float:right;margin-right:15px;'> </span> ".__('Current Version','wp-ultimate-csv-importer').":".$get_pluginData['Version']." </div>";
|
1120 |
}
|
1121 |
-
if(isset ($_REQUEST['__module']) && $_REQUEST['__module']
|
1122 |
-
$footer .= "<div style='float:right;margin-
|
1123 |
-
$footer .= "<div style='float:right;margin-right:15px;'> ".'Current Version'.":
|
1124 |
}
|
1125 |
-
if(isset ($_REQUEST['__module']) && $_REQUEST['__module']
|
1126 |
-
$footer .= "<div style='float:right;margin-right:
|
|
|
|
|
|
|
|
|
1127 |
}
|
1128 |
$footer .= '</div>';
|
1129 |
$footer .= '<div style="float:right;margin-right:15px;margin-top:-10px;"> <label>Plugin By <a href="http://www.smackcoders.com"> Smackcoders</a></label> </div>';
|
@@ -1136,11 +1144,11 @@ class WPImporter_includes_helper {
|
|
1136 |
|
1137 |
<div align="center" style="text-align:left;margin-top:-33px;">
|
1138 |
<div id="boxmethod1" class="method1">
|
1139 |
-
<label><span class="radio-icon"><input type="radio" name="importmethod" id="uploadfilefromcomputer" onclick="choose_import_method(this.id);" checked/></span> <span class="header-text" id="importopt">' . __('From Computer','wp-ultimate-csv-importer') . '</span> </label> <br>
|
1140 |
<!-- The fileinput-button span is used to style the file input field as button -->
|
1141 |
<div id="method1" style="display:block;height:40px;">
|
1142 |
<span class="btn btn-success fileinput-button">
|
1143 |
-
<span>' . __('Browse','wp-ultimate-csv-importer') . '</span>
|
1144 |
<input id="fileupload" type="file" name="files[]" multiple>
|
1145 |
<a href="#" id="zip_process" style = "display:none"> Click Here To Process Zip </a>
|
1146 |
</span>';
|
@@ -1148,269 +1156,292 @@ class WPImporter_includes_helper {
|
|
1148 |
$smack_csv_import_method .= '<span style="padding-top:10px;">
|
1149 |
<div id="progress" class="progress">
|
1150 |
<div class="progress-bar progress-bar-success"></div>
|
1151 |
-
<div align="center" id="helpnotify" style="width:100%;"><p class="msgborder" style="color:green;">' . __('You can also drag and drop files here','wp-ultimate-csv-importer') . '</div>
|
1152 |
</div>
|
1153 |
</span>
|
1154 |
</div>
|
1155 |
</div>
|
1156 |
<div style = "opacity: 0.3;background-color: ghostwhite;">
|
1157 |
<div id="boxmethod2" class="method2">
|
1158 |
-
<label><span class="radio-icon"><input type="radio" name="importmethod" id="dwnldftpfile" /></span> <span class="header-text" id="importopt">' . __('From FTP','wp-ultimate-csv-importer') . '</span> </label> <img src="' . WP_CONTENT_URL . '/plugins/' . WP_CONST_ULTIMATE_CSV_IMP_SLUG . '/images/pro_icon.gif" title="PRO Feature" /> <br>
|
1159 |
</div>
|
1160 |
<div id="boxmethod3" class="method3">
|
1161 |
-
<label> <span class="radio-icon"><input type="radio" name="importmethod" id="dwnldextrfile" /></span> <span class="header-text" id="importopt">' . __('From URL','wp-ultimate-csv-importer') . '</span></label> <img src="' . WP_CONTENT_URL . '/plugins/' . WP_CONST_ULTIMATE_CSV_IMP_SLUG . '/images/pro_icon.gif" title="PRO Feature" /> <br>
|
1162 |
</div>
|
1163 |
<div id="boxmethod4" class="method4">
|
1164 |
-
<label><span class="radio-icon"><input type="radio" name="importmethod" id="useuploadedfile" /></span> <span class="header-text" id="importopt">' . __('From Already Uploaded','wp-ultimate-csv-importer') . '</span></label> <img src="' . WP_CONTENT_URL . '/plugins/' . WP_CONST_ULTIMATE_CSV_IMP_SLUG . '/images/pro_icon.gif" title="PRO Feature" /> <br>
|
1165 |
</div>
|
1166 |
</div>
|
1167 |
|
1168 |
</div>
|
1169 |
</div>';
|
1170 |
-
|
1171 |
-
|
1172 |
$smack_csv_import_method .= '<div class="media_handling" align="left">
|
1173 |
-
<span class="advancemediahandling"> <label id="importalign"> <input type="checkbox" name="advance_media_handling" id="advance_media_handling" onclick = "filezipopen();" /> '.__("Advance Media Handling",'wp-ultimate-csv-importer').' </label> </span>
|
1174 |
<span id = "filezipup" style ="display:none;">
|
1175 |
<span class="advancemediahandling" style="padding-left:30px;"> <input type="file" name="inlineimages" id="inlineimages" onchange ="checkextension(this.value);" /> </span>
|
1176 |
</span>
|
1177 |
</div>';
|
1178 |
-
|
1179 |
|
1180 |
return $smack_csv_import_method;
|
1181 |
}
|
1182 |
-
|
1183 |
-
{
|
1184 |
$smackhelpnotes = '<span style="position:absolute;margin-top:6px;margin-left:15px;">
|
1185 |
<a href="" class="tooltip">
|
1186 |
-
<img src="'. WP_CONST_ULTIMATE_CSV_IMP_DIR .'images/help.png" />
|
1187 |
<span class="tooltipPostStatus">
|
1188 |
-
<img class="callout" src="'. WP_CONST_ULTIMATE_CSV_IMP_DIR . 'images/callout.gif" />
|
1189 |
Default value is 1. You can give any value based on your environment configuration.
|
1190 |
-
<img src="'. WP_CONST_ULTIMATE_CSV_IMP_DIR .'images/help.png" style="margin-top: 6px;float:right;" />
|
1191 |
</span>
|
1192 |
</a>
|
1193 |
</span>';
|
1194 |
return $smackhelpnotes;
|
1195 |
}
|
1196 |
-
|
|
|
1197 |
return wp_create_nonce('smack_nonce');
|
1198 |
}
|
1199 |
-
|
1200 |
-
|
1201 |
-
|
1202 |
-
|
1203 |
-
|
1204 |
-
|
1205 |
-
|
1206 |
-
|
1207 |
-
|
1208 |
-
|
1209 |
-
|
1210 |
-
|
1211 |
-
|
1212 |
-
|
1213 |
-
|
1214 |
-
|
1215 |
-
|
1216 |
-
|
1217 |
-
|
1218 |
-
|
1219 |
-
|
1220 |
-
|
1221 |
-
|
1222 |
-
|
1223 |
-
|
1224 |
-
|
1225 |
-
|
1226 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1227 |
</div>
|
1228 |
</div>";
|
1229 |
$result .= "<table style='font-size: 12px;' class = 'table table-striped' id='CORECUST'><tr>
|
1230 |
<td class='left_align columnheader'><b>CUSTOM FIELD</b></td>
|
1231 |
<td class='columnheader'><b>CSV HEADER</b></td><td></td><td></td></tr></table>
|
1232 |
-
<input type='button' class='btn btn-primary' name='addcustomfd' value='Add Custom Field' style='margin-left:20px;margin-bottom:15px;margin-top:20px;' onclick = 'addcorecustomfield(CORECUST,"
|
1233 |
return $result;
|
1234 |
|
1235 |
}
|
1236 |
}
|
1237 |
|
1238 |
-
class CallWPImporterObj extends WPImporter_includes_helper
|
1239 |
-
{
|
1240 |
private static $_instance = null;
|
1241 |
-
|
1242 |
-
{
|
1243 |
-
if(
|
|
|
1244 |
self::$_instance = new WPImporter_includes_helper();
|
|
|
1245 |
return self::$_instance;
|
1246 |
}
|
1247 |
-
|
1248 |
-
|
1249 |
-
|
1250 |
-
|
1251 |
-
|
1252 |
-
|
|
|
1253 |
return 'true';
|
1254 |
-
|
1255 |
-
|
1256 |
-
|
1257 |
-
|
1258 |
-
|
1259 |
-
|
1260 |
-
|
1261 |
-
|
1262 |
-
|
1263 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1264 |
}
|
1265 |
|
1266 |
class WPImpCSVParserLib {
|
1267 |
-
|
1268 |
-
/*
|
1269 |
-
|
1270 |
-
|
1271 |
-
|
1272 |
-
|
1273 |
-
|
1274 |
-
|
1275 |
-
|
1276 |
-
|
1277 |
-
|
1278 |
-
|
1279 |
-
|
1280 |
-
|
1281 |
-
|
1282 |
-
|
1283 |
-
|
1284 |
-
|
1285 |
-
|
1286 |
-
|
1287 |
-
|
1288 |
-
|
1289 |
-
|
1290 |
-
|
1291 |
-
|
1292 |
-
|
1293 |
-
|
1294 |
-
|
1295 |
-
|
1296 |
-
|
1297 |
-
|
1298 |
-
|
1299 |
-
|
1300 |
-
|
1301 |
-
|
1302 |
-
|
1303 |
-
|
1304 |
-
|
1305 |
-
|
1306 |
-
|
1307 |
-
|
1308 |
-
|
1309 |
-
|
1310 |
-
|
1311 |
-
|
1312 |
-
|
1313 |
-
|
1314 |
-
|
1315 |
-
|
1316 |
-
|
1317 |
-
|
1318 |
-
|
1319 |
-
|
1320 |
-
|
1321 |
-
|
1322 |
-
|
1323 |
-
|
1324 |
-
|
1325 |
-
|
1326 |
-
|
1327 |
-
|
1328 |
-
|
1329 |
-
|
1330 |
-
|
1331 |
-
|
1332 |
-
|
1333 |
-
|
1334 |
-
|
1335 |
-
|
1336 |
-
|
1337 |
-
|
1338 |
-
|
1339 |
-
|
1340 |
-
|
1341 |
-
|
1342 |
-
*/
|
1343 |
|
1344 |
|
1345 |
/**
|
1346 |
* Configuration
|
1347 |
* - set these options with $object->var_name = 'value';
|
1348 |
*/
|
1349 |
-
|
1350 |
# use first line/entry as field names
|
1351 |
var $heading = true;
|
1352 |
-
|
1353 |
# override field names
|
1354 |
var $fields = array();
|
1355 |
-
|
1356 |
# sort entries by this field
|
1357 |
var $sort_by = null;
|
1358 |
var $sort_reverse = false;
|
1359 |
-
|
1360 |
# sort behavior passed to ksort/krsort functions
|
1361 |
# regular = SORT_REGULAR
|
1362 |
# numeric = SORT_NUMERIC
|
1363 |
# string = SORT_STRING
|
1364 |
var $sort_type = null;
|
1365 |
-
|
1366 |
# delimiter (comma) and enclosure (double quote)
|
1367 |
var $delimiter = ',';
|
1368 |
var $enclosure = '"';
|
1369 |
-
|
1370 |
# basic SQL-like conditions for row matching
|
1371 |
var $conditions = null;
|
1372 |
-
|
1373 |
# number of rows to ignore from beginning of data
|
1374 |
var $offset = null;
|
1375 |
-
|
1376 |
# limits the number of returned rows to specified amount
|
1377 |
var $limit = null;
|
1378 |
-
|
1379 |
# number of rows to analyze when attempting to auto-detect delimiter
|
1380 |
var $auto_depth = 15;
|
1381 |
-
|
1382 |
# characters to ignore when attempting to auto-detect delimiter
|
1383 |
var $auto_non_chars = "a-zA-Z0-9\n\r";
|
1384 |
-
|
1385 |
# preferred delimiter characters, only used when all filtering method
|
1386 |
# returns multiple possible delimiters (happens very rarely)
|
1387 |
var $auto_preferred = ",;\t.:|";
|
1388 |
-
|
1389 |
# character encoding options
|
1390 |
var $convert_encoding = false;
|
1391 |
var $input_encoding = 'ISO-8859-1';
|
1392 |
var $output_encoding = 'ISO-8859-1';
|
1393 |
-
|
1394 |
# used by unparse(), save(), and output() functions
|
1395 |
var $linefeed = "\r\n";
|
1396 |
-
|
1397 |
# only used by output() function
|
1398 |
var $output_delimiter = ',';
|
1399 |
var $output_filename = 'data.csv';
|
1400 |
-
|
1401 |
# keep raw file data in memory after successful parsing (useful for debugging)
|
1402 |
var $keep_file_data = false;
|
1403 |
-
|
1404 |
/**
|
1405 |
* Internal variables
|
1406 |
*/
|
1407 |
-
|
1408 |
# current file
|
1409 |
var $file;
|
1410 |
-
|
1411 |
# loaded file contents
|
1412 |
var $file_data;
|
1413 |
-
|
1414 |
# error while parsing input data
|
1415 |
# 0 = No errors found. Everything should be fine :)
|
1416 |
# 1 = Hopefully correctable syntax error was found.
|
@@ -1420,103 +1451,131 @@ class WPImpCSVParserLib {
|
|
1420 |
# standard CSV formatting. Please validate
|
1421 |
# the parsed data yourself.
|
1422 |
var $error = 0;
|
1423 |
-
|
1424 |
# detailed error info
|
1425 |
var $error_info = array();
|
1426 |
-
|
1427 |
# array of field values in data parsed
|
1428 |
var $titles = array();
|
1429 |
-
|
1430 |
# two dimentional array of CSV data
|
1431 |
var $data = array();
|
1432 |
-
|
1433 |
-
|
1434 |
/**
|
1435 |
* Constructor
|
1436 |
* @param input CSV file or string
|
1437 |
* @return nothing
|
1438 |
*/
|
1439 |
-
function parseCSV
|
1440 |
-
if (
|
1441 |
-
|
1442 |
-
|
1443 |
-
if (
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1444 |
}
|
1445 |
-
|
1446 |
-
|
1447 |
// ==============================================
|
1448 |
// ----- [ Main Functions ] ---------------------
|
1449 |
// ==============================================
|
1450 |
-
|
1451 |
/**
|
1452 |
* Parse CSV file or string
|
1453 |
* @param input CSV file or string
|
1454 |
* @return nothing
|
1455 |
*/
|
1456 |
-
function parse
|
1457 |
-
if (
|
1458 |
-
|
1459 |
-
|
1460 |
-
|
1461 |
-
if (
|
1462 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1463 |
$this->data = $this->parse_file($input);
|
1464 |
} else {
|
1465 |
$this->file_data = &$input;
|
1466 |
$this->data = $this->parse_string();
|
1467 |
}
|
1468 |
-
if (
|
|
|
|
|
1469 |
}
|
1470 |
return true;
|
1471 |
}
|
1472 |
-
|
1473 |
/**
|
1474 |
* Save changes, or new file and/or data
|
1475 |
* @param file file to save to
|
1476 |
-
* @param data
|
1477 |
* @param append append current data to end of target CSV if exists
|
1478 |
* @param fields field names
|
1479 |
* @return true or false
|
1480 |
*/
|
1481 |
-
function save
|
1482 |
-
if (
|
1483 |
-
|
1484 |
-
|
|
|
|
|
1485 |
return $this->_wfile($file, $this->unparse($data, $fields, $append, $is_php), $mode);
|
1486 |
}
|
1487 |
-
|
1488 |
/**
|
1489 |
* Generate CSV based string for output
|
1490 |
* @param filename if specified, headers and data will be output directly to browser as a downloable file
|
1491 |
-
* @param data
|
1492 |
* @param fields field names
|
1493 |
* @param delimiter delimiter used to separate data
|
1494 |
* @return CSV data using delimiter of choice, or default
|
1495 |
*/
|
1496 |
-
function output
|
1497 |
-
if (
|
1498 |
-
|
|
|
|
|
|
|
|
|
1499 |
$data = $this->unparse($data, $fields, null, null, $delimiter);
|
1500 |
-
if (
|
1501 |
header('Content-type: application/csv');
|
1502 |
-
header('Content-Disposition: attachment; filename="'
|
1503 |
echo $data;
|
1504 |
}
|
1505 |
return $data;
|
1506 |
}
|
1507 |
-
|
1508 |
/**
|
1509 |
* Convert character encoding
|
1510 |
* @param input input character encoding, uses default if left blank
|
1511 |
* @param output output character encoding, uses default if left blank
|
1512 |
* @return nothing
|
1513 |
*/
|
1514 |
-
function encoding
|
1515 |
$this->convert_encoding = true;
|
1516 |
-
if (
|
1517 |
-
|
|
|
|
|
|
|
|
|
1518 |
}
|
1519 |
-
|
1520 |
/**
|
1521 |
* Auto-Detect Delimiter: Find delimiter by analyzing a specific number of
|
1522 |
* rows to determine most probable delimiter character
|
@@ -1527,55 +1586,65 @@ class WPImpCSVParserLib {
|
|
1527 |
* @param enclosure enclosure character, default is double quote (").
|
1528 |
* @return delimiter character
|
1529 |
*/
|
1530 |
-
function auto
|
1531 |
-
|
1532 |
-
if (
|
1533 |
-
|
1534 |
-
|
1535 |
-
|
1536 |
-
|
1537 |
-
|
1538 |
-
if (
|
1539 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1540 |
$data = &$this->file_data;
|
1541 |
-
} else
|
|
|
|
|
1542 |
} else {
|
1543 |
$data = &$this->file_data;
|
1544 |
}
|
1545 |
-
|
1546 |
$chars = array();
|
1547 |
$strlen = strlen($data);
|
1548 |
$enclosed = false;
|
1549 |
$n = 1;
|
1550 |
$to_end = true;
|
1551 |
-
|
1552 |
// walk specific depth finding posssible delimiter characters
|
1553 |
-
for (
|
1554 |
$ch = $data{$i};
|
1555 |
-
$nch = (
|
1556 |
-
$pch = (
|
1557 |
-
|
1558 |
// open and closing quotes
|
1559 |
-
if (
|
1560 |
-
if (
|
1561 |
-
$enclosed = (
|
1562 |
-
} elseif (
|
1563 |
$i++;
|
1564 |
}
|
1565 |
-
|
1566 |
-
|
1567 |
-
} elseif (
|
1568 |
-
if (
|
1569 |
$strlen = 0;
|
1570 |
$to_end = false;
|
1571 |
} else {
|
1572 |
$n++;
|
1573 |
}
|
1574 |
-
|
1575 |
-
|
1576 |
} elseif (!$enclosed) {
|
1577 |
-
if (
|
1578 |
-
if (
|
1579 |
$chars[$ch][$n] = 1;
|
1580 |
} else {
|
1581 |
$chars[$ch][$n]++;
|
@@ -1583,119 +1652,113 @@ class WPImpCSVParserLib {
|
|
1583 |
}
|
1584 |
}
|
1585 |
}
|
1586 |
-
|
1587 |
// filtering
|
1588 |
-
$depth = (
|
1589 |
$filtered = array();
|
1590 |
-
foreach(
|
1591 |
-
if (
|
1592 |
$filtered[$match] = $char;
|
1593 |
}
|
1594 |
}
|
1595 |
-
|
1596 |
// capture most probable delimiter
|
1597 |
ksort($filtered);
|
1598 |
$this->delimiter = reset($filtered);
|
1599 |
-
|
1600 |
// parse data
|
1601 |
-
if (
|
1602 |
-
|
|
|
|
|
1603 |
return $this->delimiter;
|
1604 |
-
|
1605 |
}
|
1606 |
-
|
1607 |
-
|
1608 |
// ==============================================
|
1609 |
// ----- [ Core Functions ] ---------------------
|
1610 |
// ==============================================
|
1611 |
-
|
1612 |
/**
|
1613 |
* Read file to string and call parse_string()
|
1614 |
* @param file local CSV file
|
1615 |
* @return 2D array with CSV data, or false on failure
|
1616 |
*/
|
1617 |
-
function parse_file
|
1618 |
-
if (
|
1619 |
-
|
1620 |
-
|
|
|
|
|
|
|
|
|
1621 |
}
|
1622 |
-
|
1623 |
/**
|
1624 |
* Parse CSV strings to arrays
|
1625 |
* @param data CSV string
|
1626 |
* @return 2D array with CSV data, or false on failure
|
1627 |
*/
|
1628 |
-
function parse_string
|
1629 |
-
if (
|
1630 |
-
if (
|
1631 |
$data = &$this->file_data;
|
1632 |
-
} else
|
|
|
|
|
1633 |
}
|
1634 |
-
|
1635 |
$white_spaces = str_replace($this->delimiter, '', " \t\x0B\0");
|
1636 |
-
|
1637 |
$rows = array();
|
1638 |
$row = array();
|
1639 |
$row_count = 0;
|
1640 |
$current = '';
|
1641 |
-
$head = (
|
1642 |
$col = 0;
|
1643 |
$enclosed = false;
|
1644 |
$was_enclosed = false;
|
1645 |
$strlen = strlen($data);
|
1646 |
-
|
1647 |
// walk through each character
|
1648 |
-
for (
|
1649 |
$ch = $data{$i};
|
1650 |
-
$nch = (
|
1651 |
-
$pch = (
|
1652 |
-
|
1653 |
// open/close quotes, and inline quotes
|
1654 |
-
if (
|
1655 |
-
if (
|
1656 |
-
if (
|
1657 |
$enclosed = true;
|
1658 |
$was_enclosed = true;
|
1659 |
} else {
|
1660 |
$this->error = 2;
|
1661 |
$error_row = count($rows) + 1;
|
1662 |
$error_col = $col + 1;
|
1663 |
-
if (
|
1664 |
-
$this->error_info[$error_row.'-'
|
1665 |
-
'type' => 2,
|
1666 |
-
'info' => 'Syntax error found on row '.$error_row.'. Non-enclosed fields can not contain double-quotes.',
|
1667 |
-
'row' => $error_row,
|
1668 |
-
'field' => $error_col,
|
1669 |
-
'field_name' => (!empty($head[$col])) ? $head[$col] : null,
|
1670 |
-
);
|
1671 |
}
|
1672 |
$current .= $ch;
|
1673 |
}
|
1674 |
} elseif ($nch == $this->enclosure) {
|
1675 |
$current .= $ch;
|
1676 |
$i++;
|
1677 |
-
} elseif (
|
1678 |
-
for (
|
1679 |
-
|
|
|
1680 |
$enclosed = false;
|
1681 |
$i = $x;
|
1682 |
} else {
|
1683 |
-
if (
|
1684 |
$this->error = 1;
|
1685 |
}
|
1686 |
$error_row = count($rows) + 1;
|
1687 |
$error_col = $col + 1;
|
1688 |
-
if (
|
1689 |
-
$this->error_info[$error_row.'-'
|
1690 |
-
'type' => 1,
|
1691 |
-
'info' =>
|
1692 |
-
'Syntax error found on row '.(count($rows) + 1).'. '.
|
1693 |
-
'A single double-quote was found within an enclosed string. '.
|
1694 |
-
'Enclosed double-quotes must be escaped with a second double-quote.',
|
1695 |
-
'row' => count($rows) + 1,
|
1696 |
-
'field' => $col + 1,
|
1697 |
-
'field_name' => (!empty($head[$col])) ? $head[$col] : null,
|
1698 |
-
);
|
1699 |
}
|
1700 |
$current .= $ch;
|
1701 |
$enclosed = false;
|
@@ -1703,67 +1766,74 @@ class WPImpCSVParserLib {
|
|
1703 |
} else {
|
1704 |
$enclosed = false;
|
1705 |
}
|
1706 |
-
|
1707 |
-
|
1708 |
-
} elseif (
|
1709 |
-
$key = (
|
1710 |
-
$row[$key] = (
|
1711 |
$current = '';
|
1712 |
$was_enclosed = false;
|
1713 |
$col++;
|
1714 |
-
|
1715 |
// end of row
|
1716 |
-
if (
|
1717 |
-
if (
|
1718 |
-
if (
|
1719 |
$head = $row;
|
1720 |
-
} elseif (
|
1721 |
-
if (
|
1722 |
-
if (
|
1723 |
-
$rows[$row[$this->sort_by].'_0'] = &$rows[$row[$this->sort_by]];
|
1724 |
unset($rows[$row[$this->sort_by]]);
|
1725 |
-
for (
|
1726 |
-
|
1727 |
-
|
1728 |
-
|
|
|
|
|
|
|
|
|
|
|
1729 |
}
|
1730 |
}
|
1731 |
$row = array();
|
1732 |
$col = 0;
|
1733 |
$row_count++;
|
1734 |
-
if (
|
1735 |
$i = $strlen;
|
1736 |
}
|
1737 |
-
if (
|
|
|
|
|
1738 |
}
|
1739 |
-
|
1740 |
-
|
1741 |
} else {
|
1742 |
$current .= $ch;
|
1743 |
}
|
1744 |
}
|
1745 |
$this->titles = $head;
|
1746 |
-
if (
|
1747 |
$sort_type = SORT_REGULAR;
|
1748 |
-
if (
|
1749 |
$sort_type = SORT_NUMERIC;
|
1750 |
-
} elseif (
|
1751 |
$sort_type = SORT_STRING;
|
1752 |
}
|
1753 |
-
(
|
1754 |
-
if (
|
1755 |
-
$rows = array_slice($rows, ($this->offset === null ? 0 : $this->offset)
|
1756 |
}
|
1757 |
}
|
1758 |
-
if (
|
1759 |
$this->file_data = null;
|
1760 |
}
|
1761 |
return $rows;
|
1762 |
}
|
1763 |
-
|
1764 |
/**
|
1765 |
* Create CSV data from array
|
1766 |
-
* @param data
|
1767 |
* @param fields field names
|
1768 |
* @param append if true, field names will not be output
|
1769 |
* @param is_php if a php die() call should be put on the first
|
@@ -1771,126 +1841,129 @@ class WPImpCSVParserLib {
|
|
1771 |
* @param delimiter field delimiter to use
|
1772 |
* @return CSV data (text string)
|
1773 |
*/
|
1774 |
-
function unparse
|
1775 |
-
if (
|
1776 |
-
|
1777 |
-
|
1778 |
-
|
1779 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
1780 |
$entry = array();
|
1781 |
-
|
1782 |
// create heading
|
1783 |
-
if (
|
1784 |
-
foreach(
|
1785 |
$entry[] = $this->_enclose_value($value);
|
1786 |
}
|
1787 |
-
$string .= implode($delimiter, $entry)
|
1788 |
$entry = array();
|
1789 |
}
|
1790 |
-
|
1791 |
// create data
|
1792 |
-
foreach(
|
1793 |
-
foreach(
|
1794 |
$entry[] = $this->_enclose_value($value);
|
1795 |
}
|
1796 |
-
$string .= implode($delimiter, $entry)
|
1797 |
$entry = array();
|
1798 |
}
|
1799 |
-
|
1800 |
return $string;
|
1801 |
}
|
1802 |
-
|
1803 |
/**
|
1804 |
* Load local file or string
|
1805 |
* @param input local CSV file
|
1806 |
* @return true or false
|
1807 |
*/
|
1808 |
-
function load_data
|
1809 |
$data = null;
|
1810 |
$file = null;
|
1811 |
-
if (
|
1812 |
$file = $this->file;
|
1813 |
-
} elseif (
|
1814 |
$file = $input;
|
1815 |
} else {
|
1816 |
$data = $input;
|
1817 |
}
|
1818 |
-
if (
|
1819 |
-
if (
|
1820 |
-
|
|
|
|
|
1821 |
$data = ltrim($strip[1]);
|
1822 |
}
|
1823 |
-
if (
|
1824 |
-
|
|
|
|
|
|
|
|
|
1825 |
$this->file_data = &$data;
|
1826 |
return true;
|
1827 |
}
|
1828 |
return false;
|
1829 |
}
|
1830 |
-
|
1831 |
-
|
1832 |
// ==============================================
|
1833 |
// ----- [ Internal Functions ] -----------------
|
1834 |
// ==============================================
|
1835 |
-
|
1836 |
/**
|
1837 |
* Validate a row against specified conditions
|
1838 |
* @param row array with values from a row
|
1839 |
-
* @param conditions specified conditions that the row must match
|
1840 |
* @return true of false
|
1841 |
*/
|
1842 |
-
function _validate_row_conditions
|
1843 |
-
if (
|
1844 |
-
if (
|
1845 |
-
$conditions = (strpos($conditions, ' OR ') !== false) ? explode(' OR ', $conditions) : array($conditions)
|
1846 |
$or = '';
|
1847 |
-
foreach(
|
1848 |
-
if (
|
1849 |
$value = explode(' AND ', $value);
|
1850 |
$and = '';
|
1851 |
-
foreach(
|
1852 |
$and .= $this->_validate_row_condition($row, $v);
|
1853 |
}
|
1854 |
-
$or .= (strpos($and, '0') !== false) ? '0' : '1'
|
1855 |
} else {
|
1856 |
$or .= $this->_validate_row_condition($row, $value);
|
1857 |
}
|
1858 |
}
|
1859 |
-
return (strpos($or, '1') !== false) ? true : false
|
1860 |
}
|
1861 |
return true;
|
1862 |
}
|
1863 |
return false;
|
1864 |
}
|
1865 |
-
|
1866 |
/**
|
1867 |
* Validate a row against a single condition
|
1868 |
* @param row array with values from a row
|
1869 |
-
* @param condition specified condition that the row must match
|
1870 |
* @return true of false
|
1871 |
*/
|
1872 |
-
function _validate_row_condition
|
1873 |
-
$operators = array(
|
1874 |
-
'=', 'equals', 'is',
|
1875 |
-
'!=', 'is not',
|
1876 |
-
'<', 'is less than',
|
1877 |
-
'>', 'is greater than',
|
1878 |
-
'<=', 'is less than or equals',
|
1879 |
-
'>=', 'is greater than or equals',
|
1880 |
-
'contains',
|
1881 |
-
'does not contain',
|
1882 |
-
);
|
1883 |
$operators_regex = array();
|
1884 |
-
foreach(
|
1885 |
$operators_regex[] = preg_quote($value, '/');
|
1886 |
}
|
1887 |
$operators_regex = implode('|', $operators_regex);
|
1888 |
-
if (
|
1889 |
$field = $capture[1];
|
1890 |
$op = $capture[2];
|
1891 |
$value = $capture[3];
|
1892 |
-
if (
|
1893 |
-
if (
|
1894 |
$value = $capture[2];
|
1895 |
$value = str_replace("\\n", "\n", $value);
|
1896 |
$value = str_replace("\\r", "\r", $value);
|
@@ -1898,22 +1971,22 @@ class WPImpCSVParserLib {
|
|
1898 |
$value = stripslashes($value);
|
1899 |
}
|
1900 |
}
|
1901 |
-
if (
|
1902 |
-
if (
|
1903 |
return '1';
|
1904 |
-
} elseif (
|
1905 |
return '1';
|
1906 |
-
} elseif (
|
1907 |
return '1';
|
1908 |
-
} elseif (
|
1909 |
return '1';
|
1910 |
-
} elseif (
|
1911 |
return '1';
|
1912 |
-
} elseif (
|
1913 |
return '1';
|
1914 |
-
} elseif (
|
1915 |
return '1';
|
1916 |
-
} elseif (
|
1917 |
return '1';
|
1918 |
} else {
|
1919 |
return '0';
|
@@ -1922,88 +1995,96 @@ class WPImpCSVParserLib {
|
|
1922 |
}
|
1923 |
return '1';
|
1924 |
}
|
1925 |
-
|
1926 |
/**
|
1927 |
* Validates if the row is within the offset or not if sorting is disabled
|
1928 |
* @param current_row the current row number being processed
|
1929 |
* @return true of false
|
1930 |
*/
|
1931 |
-
function _validate_offset
|
1932 |
-
if (
|
|
|
|
|
1933 |
return true;
|
1934 |
}
|
1935 |
-
|
1936 |
/**
|
1937 |
* Enclose values if needed
|
1938 |
* - only used by unparse()
|
1939 |
* @param value string to process
|
1940 |
* @return Processed value
|
1941 |
*/
|
1942 |
-
function _enclose_value
|
1943 |
-
if (
|
1944 |
$delimiter = preg_quote($this->delimiter, '/');
|
1945 |
$enclosure = preg_quote($this->enclosure, '/');
|
1946 |
-
if (
|
1947 |
-
$value = str_replace($this->enclosure, $this->enclosure
|
1948 |
-
$value = $this->enclosure
|
1949 |
}
|
1950 |
}
|
1951 |
return $value;
|
1952 |
}
|
1953 |
-
|
1954 |
/**
|
1955 |
* Check file data
|
1956 |
* @param file local filename
|
1957 |
* @return true or false
|
1958 |
*/
|
1959 |
-
function _check_data
|
1960 |
-
if (
|
1961 |
-
if (
|
|
|
|
|
1962 |
return $this->load_data($file);
|
1963 |
}
|
1964 |
return true;
|
1965 |
}
|
1966 |
-
|
1967 |
-
|
1968 |
/**
|
1969 |
* Check if passed info might be delimiter
|
1970 |
* - only used by find_delimiter()
|
1971 |
* @return special string used for delimiter selection, or false
|
1972 |
*/
|
1973 |
-
function _check_count
|
1974 |
-
if (
|
1975 |
$first = null;
|
1976 |
$equal = null;
|
1977 |
$almost = false;
|
1978 |
-
foreach(
|
1979 |
-
if (
|
1980 |
$first = $value;
|
1981 |
-
} elseif (
|
1982 |
$equal = true;
|
1983 |
-
} elseif (
|
1984 |
$equal = true;
|
1985 |
$almost = true;
|
1986 |
} else {
|
1987 |
$equal = false;
|
1988 |
}
|
1989 |
}
|
1990 |
-
if (
|
1991 |
-
$match = (
|
1992 |
$pref = strpos($preferred, $char);
|
1993 |
-
$pref = (
|
1994 |
-
return $pref
|
1995 |
-
} else
|
|
|
|
|
1996 |
}
|
1997 |
}
|
1998 |
-
|
1999 |
/**
|
2000 |
* Read local file
|
2001 |
* @param file local filename
|
2002 |
* @return Data from file, or false on failure
|
2003 |
*/
|
2004 |
-
function _rfile
|
2005 |
-
if (
|
2006 |
-
if (
|
|
|
|
|
2007 |
$data = fread($fh, filesize($file));
|
2008 |
fclose($fh);
|
2009 |
return $data;
|
@@ -2019,15 +2100,17 @@ class WPImpCSVParserLib {
|
|
2019 |
* @param lock flock() mode
|
2020 |
* @return true or false
|
2021 |
*/
|
2022 |
-
function _wfile
|
2023 |
-
if (
|
2024 |
flock($fp, $lock);
|
2025 |
$re = fwrite($fp, $string);
|
2026 |
$re2 = fclose($fp);
|
2027 |
-
if (
|
|
|
|
|
2028 |
}
|
2029 |
return false;
|
2030 |
}
|
2031 |
-
|
2032 |
}
|
2033 |
|
32 |
* WP Ultimate CSV Importer copyright notice. If the display of the logo is
|
33 |
* not reasonably feasible for technical reasons, the Appropriate Legal
|
34 |
* Notices must display the words
|
35 |
+
* "Copyright Smackcoders. 2015. All rights reserved".
|
36 |
********************************************************************************/
|
37 |
+
|
38 |
+
if (!defined('ABSPATH')) {
|
39 |
+
exit;
|
40 |
+
} // Exit if accessed directly
|
41 |
|
42 |
class WPImporter_includes_helper {
|
43 |
|
44 |
+
public function __construct() {
|
|
|
45 |
$this->getKeyVals();
|
46 |
}
|
47 |
|
67 |
public $noPostAuthCount = 0;
|
68 |
|
69 |
// @var int updated post count
|
70 |
+
public $updatedPostCount = 0;
|
71 |
|
72 |
// @var string delimiter
|
73 |
public $delim = ",";
|
74 |
|
75 |
// @var array delilimters supported by CSV importer
|
76 |
+
public $delim_avail = array(',', ';');
|
|
|
|
|
|
|
77 |
|
78 |
// @var array wp field keys
|
79 |
public $keys = array();
|
82 |
public $MultiImages = false;
|
83 |
|
84 |
// @var array for default columns
|
85 |
+
public $defCols = array('post_title' => null, 'post_content' => null, 'post_excerpt' => null, 'post_date' => null, 'post_name' => null, 'post_tag' => null, 'post_category' => null, 'post_author' => null, 'featured_image' => null, 'post_parent' => 0, 'post_status' => 0, 'menu_order' => 0, 'post_format' => 0, 'wp_page_template' => null,);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
86 |
|
87 |
// @var array CSV headers
|
88 |
public $headers = array();
|
89 |
|
90 |
+
public $capturedId = 0;
|
91 |
|
92 |
public $detailedLog = array();
|
93 |
|
94 |
/* getImportDataConfiguration */
|
95 |
+
public function getImportDataConfiguration() {
|
96 |
$importDataConfig = "<div class='importstatus'id='importallwithps_div'>
|
97 |
<table><tr><td>
|
98 |
+
<label id='importalign'>" . __('Import with post status', 'wp-ultimate-csv-importer') . "</label><span class='mandatory'> *</span></td><td>
|
99 |
<div style='float:left;margin-right:10px;'>
|
100 |
<select name='importallwithps' id='importallwithps' onChange='selectpoststatus();' >
|
101 |
<option value='0'>Status as in CSV</option>
|
108 |
</select></div>
|
109 |
<div style='float:right;'>
|
110 |
<a href='#' class='tooltip'>
|
111 |
+
<img src='" . WP_CONST_ULTIMATE_CSV_IMP_DIR . "images/help.png' />
|
112 |
<span class='tooltipPostStatus'>
|
113 |
+
<img class='callout' src='" . WP_CONST_ULTIMATE_CSV_IMP_DIR . "images/callout.gif' />
|
114 |
+
" . __('Select the status for the post imported, if not defined within your csv .E.g.publish', 'wp-ultimate-csv-importer') . "
|
115 |
+
<img src='" . WP_CONST_ULTIMATE_CSV_IMP_DIR . "images/help.png' style='margin-top: 6px;float:right;' />
|
116 |
</span></a> </div>
|
117 |
</td></tr><tr><td>
|
118 |
+
<div id='globalpassword_label' class='globalpassword' style='display:none;'><label>" . __('Password', 'wp-ultimate-csv-importer') . "</label><span class='mandatory'> *</span></div></td><td>
|
119 |
+
<div id='globalpassword_text' class='globalpassword' style='display:none;'><input type = 'text' id='globalpassword_txt' name='globalpassword_txt' placeholder=" . __('Password for all post', 'wp-ultimate-csv-importer') . "></div></td></tr></table>
|
120 |
</div>";
|
121 |
return $importDataConfig;
|
122 |
}
|
124 |
/**
|
125 |
* Get upload directory
|
126 |
*/
|
127 |
+
public function getUploadDirectory($check = 'plugin_uploads') {
|
|
|
128 |
$upload_dir = wp_upload_dir();
|
129 |
+
if ($check == 'plugin_uploads') {
|
130 |
return $upload_dir ['basedir'] . "/" . $this->uploadDir;
|
131 |
+
} else {
|
132 |
return $upload_dir ['basedir'];
|
133 |
}
|
134 |
}
|
135 |
|
136 |
/**
|
137 |
+
* generate help tooltip
|
138 |
+
* @param string $content ** content to show on tooltip **
|
139 |
+
* @return string $html ** generated HTML **
|
140 |
**/
|
141 |
+
public function generatehelp($content, $mapping_style = NULL) {
|
142 |
+
$html = '<div style = "' . $mapping_style . '"> <a href="#" class="tooltip">
|
143 |
+
<img src="' . WP_CONST_ULTIMATE_CSV_IMP_DIR . 'images/help.png" />
|
|
|
144 |
<span class="tooltipPostStatus">
|
145 |
+
<img class="callout" src="' . WP_CONST_ULTIMATE_CSV_IMP_DIR . 'images/callout.gif" />
|
146 |
+
' . $content . '
|
147 |
+
<img src="' . WP_CONST_ULTIMATE_CSV_IMP_DIR . 'images/help.png" style="margin-top: 6px;float:right;" />
|
148 |
</span> </a> </div>';
|
149 |
return $html;
|
150 |
}
|
151 |
|
152 |
+
public static function output_fd_page() {
|
|
|
153 |
$get_pluginData = get_plugin_data(plugin_dir_path(__FILE__) . '../index.php');
|
154 |
$plugin_version = get_option('ULTIMATE_CSV_IMPORTER_UPGRADE_FREE_VERSION');
|
155 |
+
if (!$plugin_version) {
|
156 |
$plugin_version = get_option('ULTIMATE_CSV_IMP_FREE_VERSION');
|
157 |
}
|
158 |
if ($get_pluginData['Version'] == '3.6' && $plugin_version == '') {
|
159 |
if (file_exists(WP_CONST_ULTIMATE_CSV_IMP_DIRECTORY . '/upgrade/migrationfreev3.6.php')) {
|
160 |
require_once(WP_CONST_ULTIMATE_CSV_IMP_DIRECTORY . '/upgrade/migrationfreev3.6.php');
|
161 |
+
die();
|
162 |
}
|
163 |
+
} else {
|
|
|
|
|
164 |
if (!isset($_REQUEST['__module'])) {
|
165 |
+
if (!isset($_REQUEST['__module'])) {
|
166 |
+
wp_redirect(get_admin_url() . 'admin.php?page=' . WP_CONST_ULTIMATE_CSV_IMP_SLUG . '/index.php&__module=dashboard');
|
167 |
|
168 |
+
}
|
169 |
}
|
170 |
}
|
171 |
+
require_once(WP_CONST_ULTIMATE_CSV_IMP_DIRECTORY . 'config/settings.php');
|
172 |
+
require_once(WP_CONST_ULTIMATE_CSV_IMP_DIRECTORY . 'lib/skinnymvc/controller/SkinnyController.php');
|
173 |
|
174 |
$c = new SkinnyControllerWPCsvFree;
|
175 |
$c->main();
|
176 |
}
|
177 |
|
178 |
+
public function getSettings() {
|
179 |
return get_option('wpcsvfreesettings');
|
180 |
}
|
181 |
|
182 |
+
public function renderMenu() {
|
|
|
183 |
include(plugin_dir_path(__FILE__) . '../templates/menu.php');
|
184 |
}
|
185 |
|
186 |
+
public function requestedAction($action, $step) {
|
187 |
+
$actions = array('dashboard', 'settings', 'help', 'users', 'comments', 'eshop', 'wpcommerce', 'woocommerce', 'categories', 'customtaxonomy', 'export', 'mappingtemplate');
|
188 |
+
if (!in_array($action, $actions)) {
|
189 |
include(plugin_dir_path(__FILE__) . '../templates/view.php');
|
190 |
+
} else {
|
191 |
+
include(plugin_dir_path(__FILE__) . '../modules/' . $action . '/actions/actions.php');
|
192 |
+
include(plugin_dir_path(__FILE__) . '../modules/' . $action . '/templates/view.php');
|
193 |
}
|
194 |
}
|
195 |
|
196 |
/**
|
197 |
* Move CSV to the upload directory
|
198 |
*/
|
199 |
+
public function move_file() {
|
|
|
200 |
if ($_FILES ["csv_import"] ["error"] == 0) {
|
201 |
$tmp_name = $_FILES ["csv_import"] ["tmp_name"];
|
202 |
$this->csvFileName = $_FILES ["csv_import"] ["name"];
|
207 |
/**
|
208 |
* Check upload dirctory permission
|
209 |
*/
|
210 |
+
function checkUploadDirPermission() {
|
|
|
211 |
$this->getUploadDirectory();
|
212 |
$upload_dir = wp_upload_dir();
|
213 |
if (!is_dir($upload_dir ['basedir'])) {
|
230 |
/**
|
231 |
* Get field colum keys
|
232 |
*/
|
233 |
+
function getKeyVals() {
|
234 |
+
$cust_fields = '';
|
235 |
+
$acf_field = array();
|
|
|
236 |
$wpcsvfreesettings = array();
|
237 |
global $wpdb;
|
238 |
$active_plugins = get_option('active_plugins');
|
247 |
$this->defCols ["CF: " . $val] = $val;
|
248 |
}
|
249 |
$wpcsvfreesettings = get_option('wpcsvfreesettings');
|
250 |
+
if ($wpcsvfreesettings) {
|
251 |
+
if (in_array('aioseo', $wpcsvfreesettings)) {
|
252 |
+
if (in_array('all-in-one-seo-pack/all_in_one_seo_pack.php', $active_plugins)) {
|
253 |
+
$seo_custoFields = array('SEO: keywords', 'SEO: description', 'SEO: title', 'SEO: noindex', 'SEO: nofollow', 'SEO: titleatr', 'SEO: menulabel', 'SEO: disable', 'SEO: disable_analytics', 'SEO: noodp', 'SEO: noydir');
|
254 |
+
foreach ($seo_custoFields as $val) {
|
255 |
+
$this->defCols[$val] = $val;
|
256 |
+
}
|
257 |
}
|
258 |
}
|
259 |
+
}
|
260 |
}
|
261 |
|
262 |
/**
|
265 |
* @param $delim delimiter for the CSV
|
266 |
* @return array formatted CSV output as array
|
267 |
*/
|
268 |
+
function csv_file_data($file) {
|
269 |
+
$file = $this->getUploadDirectory() . '/' . $file;
|
270 |
+
require_once(WP_CONST_ULTIMATE_CSV_IMP_DIRECTORY . 'includes/Importer.php');
|
|
|
271 |
$csv = new ImporterLib();
|
272 |
$csv->delim($file);
|
273 |
+
foreach ($csv->data as $hkey => $hval) {
|
274 |
+
foreach ($hval as $hk => $hv) {
|
275 |
$this->headers[] = $hk;
|
276 |
}
|
277 |
break;
|
278 |
}
|
279 |
+
return $csv->data;
|
280 |
}
|
281 |
|
282 |
+
function csv_file_readdata($file, $obj) {
|
283 |
+
$file = $obj->getUploadDirectory() . '/' . $file;
|
284 |
+
require_once(WP_CONST_ULTIMATE_CSV_IMP_DIRECTORY . 'includes/Importer.php');
|
285 |
+
$csv = new ImporterLib();
|
286 |
+
$csv->delim($file);
|
287 |
+
foreach ($csv->data as $hkey => $hval) {
|
288 |
+
foreach ($hval as $hk => $hv) {
|
289 |
+
$this->headers[] = $hk;
|
290 |
+
}
|
291 |
+
break;
|
292 |
+
}
|
293 |
+
return $csv->data;
|
294 |
+
}
|
|
|
295 |
|
296 |
/**
|
297 |
* Manage duplicates
|
299 |
* @param string type = (title|content), string content
|
300 |
* @return boolean
|
301 |
*/
|
302 |
+
function duplicateChecks($type = 'title', $text, $gettype, $currentLimit, $postTitle) {
|
|
|
303 |
global $wpdb;
|
304 |
if ($type == 'content') {
|
305 |
$htmlDecode = html_entity_decode($text);
|
319 |
}
|
320 |
}
|
321 |
return true;
|
322 |
+
} else {
|
323 |
+
if ($type == 'title') {
|
324 |
+
$post_exist = $wpdb->get_results("select ID from " . $wpdb->posts . " where post_title = \"{$text}\" and post_type = \"{$gettype}\" and post_status in('publish','future','draft','pending','private')");
|
325 |
+
if (!(count($post_exist) == 0 && ($text != null || $text != ''))) {
|
326 |
+
$this->dupPostCount++;
|
327 |
+
$this->detailedLog[$currentLimit]['verify_here'] = "Post-title Already Exists. It can't be imported.";
|
328 |
+
return false;
|
329 |
+
}
|
330 |
+
return true;
|
331 |
+
} else {
|
332 |
+
if ($type == 'title && content') {
|
333 |
+
$post_exist = $wpdb->get_results("select ID from " . $wpdb->posts . " where post_title = \"{$postTitle}\" and post_content = \"{$text}\" and post_status IN('publish','future','draft','pending','private')");
|
334 |
+
if (!(count($post_exist) == 0 && ($text != null || $text != ''))) {
|
335 |
+
$this->dupPostCount++;
|
336 |
+
$this->detailedLog[$currentLimit]['verify_here'] = "Post-title and post-content Already Exists. It can't be imported.";
|
337 |
+
return false;
|
338 |
+
}
|
339 |
+
return true;
|
340 |
+
}
|
341 |
+
}
|
342 |
+
}
|
343 |
+
}
|
344 |
|
345 |
|
346 |
/**
|
352 |
* @param $currentLimit
|
353 |
* @param string $logObj
|
354 |
*/
|
355 |
+
public static function get_fimg_from_URL($f_img, $fimg_path, $fimg_name, $post_slug_value, $currentLimit = null, $logObj = "") {
|
356 |
+
$f_img = str_replace(" ", "%20", $f_img);
|
357 |
+
if ($fimg_path != "" && $fimg_path) {
|
358 |
$fimg_path = $fimg_path . "/" . $fimg_name;
|
359 |
}
|
360 |
+
$ch = curl_init($f_img);
|
361 |
curl_setopt($ch, CURLOPT_HEADER, 0);
|
362 |
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
|
363 |
+
curl_setopt($ch, CURLOPT_BINARYTRANSFER, 1);
|
364 |
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
|
365 |
$rawdata = curl_exec($ch);
|
366 |
+
if (strpos($rawdata, 'Not Found') != 0) {
|
367 |
$rawdata = false;
|
368 |
}
|
369 |
if ($rawdata == false) {
|
370 |
if ($logObj == '') {
|
371 |
+
$logObj->detailedLog[$currentLimit]['image'] = "<b>" . __('Image', 'wp-ultimate-csv-importer') . " -</b> " . __('host not resolved', 'wp-ultimate-csv-importer');
|
372 |
} else {
|
373 |
+
$logObj->detailedLog[$currentLimit]['image'] = "<b>" . __('Image', 'wp-ultimate-csv-importer') . " -</b>" . __('host not resolved', 'wp-ultimate-csv-importer');
|
374 |
}
|
375 |
} else {
|
376 |
if (file_exists($fimg_path)) {
|
379 |
$fp = fopen($fimg_path, 'x');
|
380 |
fwrite($fp, $rawdata);
|
381 |
fclose($fp);
|
382 |
+
$logObj->detailedLog[$currentLimit]['image'] = "<b>" . __('Image', 'wp-ultimate-csv-importer') . " -</b>" . $fimg_name;
|
383 |
}
|
384 |
curl_close($ch);
|
385 |
return $fimg_name;
|
390 |
*
|
391 |
* @return boolean
|
392 |
*/
|
393 |
+
function processDataInWP($data_rows, $ret_array, $session_arr, $currentLimit, $extractedimagelocation, $importinlineimageoption, $sample_inlineimage_url = null) {
|
394 |
global $wpdb;
|
395 |
$post_id = '';
|
396 |
$new_post = array();
|
397 |
$smack_taxo = array();
|
398 |
$custom_array = array();
|
399 |
+
$seo_custom_array = array();
|
400 |
$imported_feature_img = array();
|
401 |
$headr_count = $ret_array['h2'];
|
402 |
+
for ($i = 0; $i <= $ret_array['basic_count']; $i++) {
|
403 |
+
if (array_key_exists('corefieldname' . $i, $ret_array)) {
|
404 |
+
if ($ret_array['coremapping' . $i] != '-- Select --' && $ret_array['coremapping' . $i] != '') {
|
405 |
+
$mappedindex = str_replace('CF: ', '', $ret_array['corefieldname' . $i]);
|
406 |
+
if (array_key_exists($ret_array['coremapping' . $i], $data_rows)) {
|
407 |
+
$new_post[$mappedindex] = $data_rows[$ret_array['coremapping' . $i]];
|
408 |
+
//$custom_array[$ret_array['coremapping'.$i]] = $data_rows[$mappedindex];
|
409 |
+
}
|
410 |
}
|
411 |
+
} else {
|
412 |
+
if (array_key_exists('seofieldname' . $i, $ret_array)) {
|
413 |
+
if ($ret_array['seomapping' . $i] != '-- Select --' && $ret_array['seomapping' . $i] != '') {
|
414 |
+
$mappedindex = str_replace('SEO: ', '', $ret_array['seofieldname' . $i]);
|
415 |
+
if (array_key_exists($ret_array['seomapping' . $i], $data_rows)) {
|
416 |
+
//$new_post[$mappedindex] = $data_rows[$ret_array['seomapping'.$i]];
|
417 |
+
$seo_custom_array[$mappedindex] = $data_rows[$ret_array['seomapping' . $i]];
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
418 |
}
|
419 |
+
}
|
420 |
+
} else {
|
421 |
+
if (array_key_exists('addcorefieldname' . $i, $ret_array)) {
|
422 |
+
if ($ret_array['addcoremapping' . $i] != '-- Select --' && $ret_array['addcoremapping' . $i] != '') {
|
423 |
+
if (array_key_exists($ret_array['addcoremapping' . $i], $data_rows)) {
|
424 |
+
$custom_array[$ret_array['addcorefieldname' . $i]] = $data_rows[$ret_array['addcoremapping' . $i]];
|
425 |
+
}
|
426 |
}
|
427 |
+
|
428 |
} else {
|
429 |
+
if (array_key_exists('mapping' . $i, $ret_array)) {
|
430 |
+
if ($ret_array ['mapping' . $i] != '-- Select --') {
|
431 |
+
if (array_key_exists($ret_array['mapping' . $i], $data_rows)) {
|
432 |
+
$new_post[$ret_array['fieldname' . $i]] = $data_rows[$ret_array['mapping' . $i]];
|
433 |
+
}
|
434 |
+
}
|
435 |
+
}
|
436 |
}
|
437 |
}
|
438 |
}
|
439 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
440 |
for ($inc = 0; $inc < count($data_rows); $inc++) {
|
441 |
foreach ($this->keys as $k => $v) {
|
442 |
if (array_key_exists($v, $new_post)) {
|
444 |
}
|
445 |
}
|
446 |
}
|
447 |
+
if (is_array($new_post)) {
|
448 |
foreach ($new_post as $ckey => $cval) {
|
449 |
$this->postFlag = true;
|
450 |
$taxo = get_taxonomies();
|
461 |
$smack_taxo [$ckey] = null;
|
462 |
$taxo_check = 1;
|
463 |
}
|
464 |
+
if ($ckey != 'post_category' && $ckey != 'post_tag' && $ckey != 'featured_image' && $ckey != $smack_taxo [$ckey] && $ckey != 'wp_page_template') {
|
465 |
if ($taxo_check == 1) {
|
466 |
unset($smack_taxo[$ckey]);
|
467 |
$taxo_check = 0;
|
491 |
require_once(ABSPATH . 'wp-admin/includes/image.php');
|
492 |
$dir = wp_upload_dir();
|
493 |
$get_media_settings = get_option('uploads_use_yearmonth_folders');
|
494 |
+
if ($get_media_settings == 1) {
|
495 |
$dirname = date('Y') . '/' . date('m');
|
496 |
$full_path = $dir ['basedir'] . '/' . $dirname;
|
497 |
$baseurl = $dir ['baseurl'] . '/' . $dirname;
|
498 |
+
} else {
|
499 |
$full_path = $dir ['basedir'];
|
500 |
$baseurl = $dir ['baseurl'];
|
501 |
}
|
505 |
|
506 |
$fimg_name = @basename($f_img);
|
507 |
$featured_image = $fimg_name;
|
508 |
+
$fimg_name = strtolower(str_replace(' ', '-', $fimg_name));
|
509 |
+
$fimg_name = preg_replace('/[^a-zA-Z0-9._\s]/', '', $fimg_name);
|
510 |
$fimg_name = urlencode($fimg_name);
|
511 |
|
512 |
$parseURL = parse_url($f_img);
|
513 |
$path_parts = pathinfo($f_img);
|
514 |
+
if (!isset($path_parts['extension'])) {
|
515 |
$fimg_name = $fimg_name . '.jpg';
|
516 |
+
}
|
517 |
//else
|
518 |
// $fimg_name = $fimg_name.'.'.$path_parts['extension'];
|
519 |
+
|
520 |
$f_img_slug = '';
|
521 |
+
$f_img_slug = strtolower(str_replace('', '-', $f_img_slug));
|
522 |
+
$f_img_slug = preg_replace('/[^a-zA-Z0-9._\s]/', '', $f_img_slug);
|
523 |
|
524 |
$post_slug_value = strtolower($f_img_slug);
|
525 |
+
if (array_key_exists('extension', $path_parts)) {
|
526 |
+
//$fimg_name = wp_unique_filename($fimg_path, $fimg_name, $path_parts['extension']);
|
527 |
}
|
528 |
$this->get_fimg_from_URL($f_img, $fimg_path, $fimg_name, $post_slug_value, $currentLimit, $this);
|
529 |
+
$filepath = $fimg_path . "/" . $fimg_name;
|
530 |
|
531 |
+
if (@getimagesize($filepath)) {
|
532 |
$img = wp_get_image_editor($filepath);
|
533 |
+
$file ['guid'] = $baseurl . "/" . $fimg_name;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
534 |
$file ['post_title'] = $fimg_name;
|
535 |
$file ['post_content'] = '';
|
536 |
$file ['post_status'] = 'attachment';
|
537 |
+
} else {
|
|
|
538 |
$file = false;
|
539 |
}
|
540 |
break;
|
543 |
}
|
544 |
}
|
545 |
|
546 |
+
if ($_SESSION['SMACK_MAPPING_SETTINGS_VALUES']['selectedImporter'] != 'custompost') {
|
547 |
$data_array['post_type'] = $_SESSION['SMACK_MAPPING_SETTINGS_VALUES']['selectedImporter'];
|
548 |
+
} else {
|
549 |
$data_array['post_type'] = $_SESSION['SMACK_MAPPING_SETTINGS_VALUES']['custompostlist'];
|
550 |
}
|
551 |
+
if ($this->titleDupCheck == 'true') {
|
552 |
$this->postFlag = $this->duplicateChecks('title', $data_array ['post_title'], $data_array ['post_type'], $currentLimit, $data_array ['post_title']);
|
553 |
+
}
|
554 |
|
555 |
+
if ($this->conDupCheck == 'true' && $this->postFlag) {
|
556 |
$this->postFlag = $this->duplicateChecks('content', $data_array ['post_content'], $data_array ['post_type'], $currentLimit, $data_array ['post_title']);
|
557 |
+
}
|
558 |
|
559 |
+
if ($this->titleDupCheck == 'true' && $this->conDupCheck == 'true') {
|
560 |
+
$this->postFlag = $this->duplicateChecks('title && content', $data_array ['post_content'], $data_array ['post_type'], $currentLimit, $data_array ['post_title']);
|
561 |
+
}
|
562 |
|
563 |
|
564 |
if ($this->postFlag) {
|
565 |
unset ($sticky);
|
566 |
+
if (empty($data_array['post_status'])) {
|
567 |
$data_array['post_status'] = null;
|
568 |
+
}
|
569 |
|
570 |
+
if ($_SESSION['SMACK_MAPPING_SETTINGS_VALUES']['importallwithps'] != 0) {
|
571 |
$data_array['post_status'] = $_SESSION['SMACK_MAPPING_SETTINGS_VALUES']['importallwithps'];
|
572 |
+
}
|
573 |
|
574 |
switch ($data_array ['post_status']) {
|
575 |
case 1 :
|
576 |
$data_array['post_status'] = 'publish';
|
577 |
+
$this->detailedLog[$currentLimit]['poststatus'] = "<b>" . __('Status', 'wp-ultimate-csv-importer') . " - </b>" . __('publish', 'wp-ultimate-csv-importer');
|
578 |
break;
|
579 |
case 2 :
|
580 |
+
if ($_SESSION['SMACK_MAPPING_SETTINGS_VALUES']['selectedImporter'] == 'post') {
|
581 |
+
$data_array['post_status'] = 'publish';
|
582 |
+
$sticky = true;
|
583 |
+
$this->detailedLog[$currentLimit]['poststatus'] = "<b>" . __('Status', 'wp-ultimate-csv-importer') . " - </b>" . __('sticky', 'wp-ultimate-csv-importer');
|
584 |
+
} else {
|
585 |
+
$data_array['post_status'] = 'publish';
|
586 |
+
$this->detailedLog[$currentLimit]['poststatus'] = "<b>" . __('Status', 'wp-ultimate-csv-importer') . " - </b>" . __('publish', 'wp-ultimate-csv-importer');
|
587 |
+
}
|
588 |
break;
|
589 |
case 3 :
|
|
|
|
|
|
|
|
|
|
|
590 |
$data_array ['post_status'] = 'private';
|
591 |
+
$this->detailedLog[$currentLimit]['poststatus'] = "<b>" . __('Status', 'wp-ultimate-csv-importer') . " - </b>" . __('private', 'wp-ultimate-csv-importer');
|
592 |
break;
|
593 |
+
case 4 :
|
594 |
$data_array ['post_status'] = 'draft';
|
595 |
+
$this->detailedLog[$currentLimit]['poststatus'] = "<b>" . __('Status', 'wp-ultimate-csv-importer') . " - </b>" . __('draft', 'wp-ultimate-csv-importer');
|
596 |
break;
|
597 |
+
case 5 :
|
598 |
$data_array ['post_status'] = 'pending';
|
599 |
+
$this->detailedLog[$currentLimit]['poststatus'] = "<b>" . __('Status', 'wp-ultimate-csv-importer') . " - </b>" . __('pending', 'wp-ultimate-csv-importer');
|
600 |
break;
|
601 |
default :
|
602 |
+
$poststatus_pwd = $data_array['post_status'];
|
603 |
$poststatus = $data_array['post_status'] = strtolower($data_array['post_status']);
|
604 |
+
if ($data_array['post_status'] == 'pending') {
|
605 |
+
$data_array['post_status'] = 'pending';
|
606 |
+
$this->detailedLog[$currentLimit]['poststatus'] = "<b>" . __('Status', 'wp-ultimate-csv-importer') . " - </b>" . __('pending', 'wp-ultimate-csv-importer');
|
607 |
+
}
|
608 |
+
if ($data_array['post_status'] == 'draft') {
|
609 |
+
$data_array['post_status'] = 'draft';
|
610 |
+
$this->detailedLog[$currentLimit]['poststatus'] = "<b>" . __('Status', 'wp-ultimate-csv-importer') . " - </b>" . __('draft', 'wp-ultimate-csv-importer');
|
611 |
+
}
|
612 |
+
if ($data_array['post_status'] == 'publish') {
|
613 |
+
$data_array['post_status'] = 'publish';
|
614 |
+
$this->detailedLog[$currentLimit]['poststatus'] = "<b>" . __('Status', 'wp-ultimate-csv-importer') . " - </b>" . __('publish', 'wp-ultimate-csv-importer');
|
615 |
+
}
|
616 |
+
if ($data_array['post_status'] == 'private') {
|
617 |
+
$data_array['post_status'] = 'private';
|
618 |
+
$this->detailedLog[$currentLimit]['poststatus'] = "<b>" . __('Status', 'wp-ultimate-csv-importer') . " - </b>" . __('private', 'wp-ultimate-csv-importer');
|
619 |
+
}
|
620 |
+
|
621 |
if ($data_array['post_status'] != 'publish' && $data_array['post_status'] != 'private' && $data_array['post_status'] != 'draft' && $data_array['post_status'] != 'pending' && $data_array['post_status'] != 'sticky') {
|
622 |
$stripPSF = strpos($data_array['post_status'], '{');
|
623 |
if ($stripPSF === 0) {
|
624 |
+
$poststatus = substr($poststatus_pwd, 1);
|
625 |
$stripPSL = substr($poststatus, -1);
|
626 |
if ($stripPSL == '}') {
|
627 |
+
$postpwd = substr($poststatus, 1, -1);
|
628 |
$data_array['post_status'] = 'publish';
|
629 |
$data_array ['post_password'] = $postpwd;
|
630 |
+
$this->detailedLog[$currentLimit]['poststatus'] = "<b>" . __('Status', 'wp-ultimate-csv-importer') . " - </b>" . __('protected with password', 'wp-ultimate-csv-importer');
|
631 |
} else {
|
632 |
$data_array['post_status'] = 'publish';
|
633 |
+
$this->detailedLog[$currentLimit]['poststatus'] = "<b>" . __('Status', 'wp-ultimate-csv-importer') . " - </b>" . __('publish', 'wp-ultimate-csv-importer');
|
|
|
634 |
}
|
635 |
} else {
|
636 |
$data_array['post_status'] = 'publish';
|
637 |
+
$this->detailedLog[$currentLimit]['poststatus'] = "<b>" . __('Status', 'wp-ultimate-csv-importer') . " - </b>" . __('publish', 'wp-ultimate-csv-importer');
|
638 |
}
|
639 |
}
|
640 |
if ($data_array['post_status'] == 'sticky') {
|
641 |
+
if ($_SESSION['SMACK_MAPPING_SETTINGS_VALUES']['selectedImporter'] == 'post') {
|
642 |
+
$data_array['post_status'] = 'publish';
|
643 |
+
$sticky = true;
|
644 |
+
$this->detailedLog[$currentLimit]['poststatus'] = "<b>" . __('Status', 'wp-ultimate-csv-importer') . " - </b>" . __('sticky', 'wp-ultimate-csv-importer');
|
645 |
+
} else {
|
646 |
+
$data_array['post_status'] = 'publish';
|
647 |
+
$this->detailedLog[$currentLimit]['poststatus'] = "<b>" . __('Status', 'wp-ultimate-csv-importer') . " - </b>" . __('publish', 'wp-ultimate-csv-importer');
|
648 |
+
}
|
649 |
+
|
650 |
}
|
651 |
+
/*else {
|
652 |
+
$this->detailedLog[$currentLimit]['poststatus'] = "<b>".__('Status','wp-ultimate-csv-importer')." - </b>" . $data_array['post_status'];
|
653 |
+
}*/
|
654 |
}
|
655 |
// Post Format Options
|
656 |
|
657 |
+
if (isset($data_array ['post_format'])) {
|
658 |
$post_format = 0;
|
659 |
switch ($data_array ['post_format']) {
|
660 |
case 1 :
|
679 |
$post_format = 'post-format-gallery';
|
680 |
break;
|
681 |
default :
|
682 |
+
if ($data_array['post_format'] == 'post-format-aside') {
|
683 |
+
$post_format = 'post-format-aside';
|
684 |
+
break;
|
685 |
+
}
|
686 |
+
if ($data_array['post_format'] == 'post-format-image') {
|
687 |
+
$post_format = 'post-format-image';
|
688 |
+
break;
|
689 |
+
}
|
690 |
+
if ($data_array['post_format'] == 'post-format-video') {
|
691 |
+
$post_format = 'post-format-video';
|
692 |
+
break;
|
693 |
+
}
|
694 |
+
if ($data_array['post_format'] == 'post-format-audio') {
|
695 |
+
$post_format = 'post-format-audio';
|
696 |
+
break;
|
697 |
+
}
|
698 |
+
if ($data_array['post_format'] == 'post-format-quote') {
|
699 |
+
$post_format = 'post-format-quote';
|
700 |
+
break;
|
701 |
+
}
|
702 |
+
if ($data_array['post_format'] == 'post-format-link') {
|
703 |
+
$post_format = 'post-format-link';
|
704 |
+
break;
|
705 |
+
}
|
706 |
+
if ($data_array['post_format'] == 'post-format-gallery') {
|
707 |
+
$post_format = 'post-format-gallery';
|
708 |
+
break;
|
709 |
+
}
|
710 |
$post_format = 0;
|
711 |
|
712 |
}
|
714 |
|
715 |
|
716 |
// Author name/id update
|
717 |
+
if (isset($data_array ['post_author'])) {
|
718 |
$authorLen = strlen($data_array ['post_author']);
|
719 |
$postuserid = $data_array ['post_author'];
|
720 |
$checkpostuserid = intval($data_array ['post_author']);
|
723 |
|
724 |
if ($authorLen == $postAuthorLen) {
|
725 |
$postauthor = $wpdb->get_results("select ID,user_login from $wpdb->users where ID = \"{$postuserid}\"");
|
726 |
+
if (empty($postauthor) || !$postauthor[0]->ID) { // If user name are numeric Ex: 1300001
|
727 |
$postauthor = $wpdb->get_results("select ID,user_login from $wpdb->users where user_login = \"{$postuserid}\"");
|
728 |
}
|
729 |
} else {
|
733 |
if (empty($postauthor) || !$postauthor[0]->ID) {
|
734 |
$data_array ['post_author'] = 1;
|
735 |
$admindet = $wpdb->get_results("select ID,user_login from $wpdb->users where ID = 1");
|
736 |
+
$this->detailedLog[$currentLimit]['assigned_author'] = "<b>" . __('Author - not found (assigned to', 'wp-ultimate-csv-importer') . " </b>" . $admindet[0]->user_login . ")";
|
737 |
$this->noPostAuthCount++;
|
738 |
} else {
|
739 |
$data_array ['post_author'] = $postauthor [0]->ID;
|
740 |
+
$this->detailedLog[$currentLimit]['assigned_author'] = "<b>" . __('Author', 'wp-ultimate-csv-importer') . " - </b>" . $postauthor[0]->user_login;
|
741 |
}
|
742 |
+
} else {
|
|
|
743 |
$data_array ['post_author'] = 1;
|
744 |
$admindet = $wpdb->get_results("select ID,user_login from $wpdb->users where ID = 1");
|
745 |
+
$this->detailedLog[$currentLimit]['assigned_author'] = "<b>" . __('Author - not found (assigned to', 'wp-ultimate-csv-importer') . " </b>" . $admindet[0]->user_login . ")";
|
746 |
$this->noPostAuthCount++;
|
747 |
}
|
748 |
|
749 |
// Date format post
|
750 |
+
if (isset($data_array['post_date'])) {
|
751 |
+
$data_array ['post_date'] = str_replace('/', '-', $data_array ['post_date']);
|
752 |
+
} else {
|
753 |
+
$data_array['post_date'] = date('Y-m-d');
|
754 |
+
}
|
755 |
+
if ($data_array ['post_date'] == null) {
|
756 |
+
$data_array ['post_date'] = date('Y-m-d');
|
757 |
+
$this->detailedLog[$currentLimit]['postdate'] = "<b>" . __('Date', 'wp-ultimate-csv-importer') . " - </b>" . $data_array ['post_date'];
|
758 |
+
} else {
|
759 |
$data_array ['post_date'] = date('Y-m-d H:i:s', strtotime($data_array ['post_date']));
|
760 |
+
$this->detailedLog[$currentLimit]['postdate'] = "<b>" . __('Date', 'wp-ultimate-csv-importer') . " - </b>" . $data_array ['post_date'];
|
761 |
}
|
762 |
+
if (isset($data_array ['post_slug'])) {
|
763 |
$data_array ['post_name'] = $data_array ['post_slug'];
|
764 |
}
|
765 |
|
766 |
//add global password
|
767 |
+
if ($data_array) {
|
768 |
+
if ($ret_array['importallwithps'] == 3) {
|
769 |
$data_array['post_password'] = $ret_array['globalpassword_txt'];
|
770 |
+
$this->detailedLog[$currentLimit]['poststatus'] = "<b>" . __('Status', 'wp-ultimate-csv-importer') . " - </b>" . __('protected with password', 'wp-ultimate-csv-importer') . $ret_array['globalpassword_txt'];
|
771 |
}
|
772 |
}
|
773 |
if ($data_array) {
|
774 |
+
if ($this->MultiImages == 'true') { // Inline image import feature by fredrick marks
|
775 |
$inlineImagesObj = new WPImporter_inlineImages();
|
776 |
$postid = wp_insert_post($data_array);
|
777 |
$post_id = $inlineImagesObj->importwithInlineImages($postid, $currentLimit, $data_array, $this, $importinlineimageoption, $extractedimagelocation, $sample_inlineimage_url);
|
778 |
+
// $inline_shortcode = $inlineImagesObj->capture_all_shortcodes($data_array['post_content']);
|
779 |
} else {
|
780 |
$post_id = wp_insert_post($data_array);
|
781 |
+
$this->detailedLog[$currentLimit]['post_id'] = "<b>" . __('Created Post_ID', 'wp-ultimate-csv-importer') . " - </b>" . $post_id . " - success";
|
782 |
}
|
783 |
}
|
784 |
unset($postauthor);
|
785 |
if ($post_id) {
|
786 |
+
$uploaded_file_name = $session_arr['uploadedFile'];
|
787 |
$real_file_name = $session_arr['uploaded_csv_name'];
|
788 |
// $version = $session_arr['currentfileversion'];
|
789 |
$action = $data_array['post_type'];
|
793 |
$version=$version_arr[0]; */
|
794 |
$get_imported_feature_image = array();
|
795 |
$get_imported_feature_image = get_option('IMPORTED_FEATURE_IMAGES');
|
796 |
+
if (is_array($get_imported_feature_image)) {
|
797 |
$imported_feature_img = array_merge($get_imported_feature_image, $imported_feature_img);
|
798 |
+
} else {
|
|
|
799 |
$imported_feature_img = $imported_feature_img;
|
800 |
}
|
801 |
update_option('IMPORTED_FEATURE_IMAGES', $imported_feature_img);
|
802 |
$created_records[$action][] = $post_id;
|
803 |
+
if ($action == 'post') {
|
804 |
$imported_as = 'Post';
|
805 |
}
|
806 |
+
if ($action == 'page') {
|
807 |
$imported_as = 'Page';
|
808 |
}
|
809 |
+
if ($action != 'post' && $action != 'page') {
|
810 |
$imported_as = 'Custom Post';
|
811 |
}
|
812 |
$keyword = $action;
|
813 |
$this->insPostCount++;
|
814 |
+
if (isset($sticky) && $sticky) {
|
815 |
stick_post($post_id);
|
816 |
+
}
|
817 |
|
818 |
if (!empty ($custom_array)) {
|
819 |
foreach ($custom_array as $custom_key => $custom_value) {
|
823 |
|
824 |
|
825 |
// Import post formats added by fredrick marks
|
826 |
+
if (isset($post_format)) {
|
827 |
wp_set_object_terms($post_id, $post_format, 'post_format');
|
828 |
|
829 |
+
}
|
830 |
//Import SEO Values
|
831 |
+
if (!empty($seo_custom_array)) {
|
832 |
+
$this->importSEOfields($seo_custom_array, $post_id);
|
833 |
}
|
834 |
|
835 |
// Create custom taxonomy to post
|
849 |
$this->detailedLog[$currentLimit]['tags'] .= $tag_value . "|";
|
850 |
wp_set_post_tags($post_id, $tag_value);
|
851 |
}
|
852 |
+
$this->detailedLog[$currentLimit]['tags'] = "<b>" . __('Tags', 'wp-ultimate-csv-importer') . " - </b>" . substr($this->detailedLog[$currentLimit]['tags'], 0, -1);
|
853 |
}
|
854 |
|
855 |
// Create/Add category to post
|
864 |
}
|
865 |
$assigned_categories[$val] = $val;
|
866 |
}
|
867 |
+
foreach ($assigned_categories as $cateKey => $cateVal) {
|
868 |
$this->detailedLog[$currentLimit]['category'] .= $cateKey . "|";
|
869 |
}
|
870 |
+
$this->detailedLog[$currentLimit]['category'] = "<b>" . __('Category', 'wp-ultimate-csv-importer') . " - </b>" . substr($this->detailedLog[$currentLimit]['category'], 0, -1);
|
871 |
wp_set_object_terms($post_id, $split_cate, 'category');
|
872 |
}
|
873 |
// Add featured image
|
874 |
if (!empty ($file)) {
|
875 |
//$wp_filetype = wp_check_filetype(@basename($file ['guid']), null);
|
876 |
$wp_upload_dir = wp_upload_dir();
|
877 |
+
$attachment = array('guid' => $file ['guid'], 'post_mime_type' => 'image/jpeg', 'post_title' => preg_replace('/[^a-zA-Z0-9._\s]/', '', @basename($file ['guid'])), 'post_content' => '', 'post_status' => 'inherit');
|
878 |
+
if ($get_media_settings == 1) {
|
879 |
+
$generate_attachment = $dirname . '/' . $fimg_name;
|
880 |
+
} else {
|
|
|
|
|
|
|
|
|
|
|
|
|
881 |
$generate_attachment = $fimg_name;
|
882 |
}
|
883 |
$uploadedImage = $wp_upload_dir['path'] . '/' . $fimg_name;
|
885 |
$attach_data = wp_generate_attachment_metadata($attach_id, $uploadedImage);
|
886 |
wp_update_attachment_metadata($attach_id, $attach_data);*/
|
887 |
$existing_attachment = array();
|
888 |
+
$query = $wpdb->get_results("select post_title from $wpdb->posts where post_type = 'attachment' and post_mime_type = 'image/jpeg'");
|
889 |
+
foreach ($query as $key) {
|
890 |
+
$existing_attachment[] = $key->post_title;
|
891 |
+
}
|
892 |
+
if (!in_array($fimg_name, $existing_attachment)) {
|
893 |
+
$attach_id = wp_insert_attachment($attachment, $generate_attachment, $post_id);
|
894 |
+
$attach_data = wp_generate_attachment_metadata($attach_id, $uploadedImage);
|
895 |
+
wp_update_attachment_metadata($attach_id, $attach_data);
|
896 |
+
} else {
|
897 |
+
$query2 = $wpdb->get_results("select ID from $wpdb->posts where post_title = '$fimg_name' and post_type = 'attachment'");
|
898 |
+
foreach ($query2 as $key2) {
|
899 |
+
$attach_id = $key2->ID;
|
900 |
+
}
|
901 |
+
}
|
902 |
set_post_thumbnail($post_id, $attach_id);
|
903 |
}
|
904 |
+
} else {
|
|
|
905 |
$skippedRecords[] = $_SESSION['SMACK_SKIPPED_RECORDS'];
|
906 |
}
|
907 |
+
|
908 |
+
$this->detailedLog[$currentLimit]['verify_here'] = "<b>Verify Here -</b> <a href='" . get_permalink($post_id) . "' title='" . esc_attr(sprintf(__('View “%s”'), $data_array['post_title'])) . "' rel='permalink' target='_blank'>" . __('Web View', 'wp-ultimate-csv-importer') . "</a> | <a href='" . get_edit_post_link($post_id, true) . "' title='" . esc_attr(__('Edit this item', 'wp-ultimate-csv-importer')) . "' target='_blank'>" . __('Admin View', 'wp-ultimate-csv-importer') . "</a>";
|
909 |
}
|
910 |
unset($data_array);
|
911 |
}
|
913 |
// Create Data base for Statistic chart
|
914 |
public static function activate() {
|
915 |
if (!defined('PDO::ATTR_DRIVER_NAME')) {
|
916 |
+
echo __("Make sure you have enable the PDO extensions in your environment before activate the plugin!", 'wp-ultimate-csv-importer');
|
917 |
die;
|
918 |
}
|
919 |
global $wpdb;
|
920 |
+
$sql1 = "CREATE TABLE `smackcsv_pie_log` (
|
921 |
`id` int(11) NOT NULL AUTO_INCREMENT,
|
922 |
`type` varchar(255) DEFAULT NULL,
|
923 |
`value` int(11) DEFAULT NULL,
|
924 |
PRIMARY KEY (`id`)
|
925 |
) ENGINE=InnoDB;";
|
926 |
|
927 |
+
$sql2 = "CREATE TABLE `smackcsv_line_log` (
|
928 |
`id` int(11) NOT NULL AUTO_INCREMENT,
|
929 |
`month` varchar(60) DEFAULT NULL,
|
930 |
`year` varchar(60) DEFAULT NULL,
|
935 |
PRIMARY KEY (`id`)
|
936 |
) ENGINE=InnoDB;";
|
937 |
$wpdb->query($sql1);
|
938 |
+
$wpdb->query($sql2);
|
939 |
+
$importedTypes = array('Post', 'Page', 'Custom Post', 'Comments', 'Users', 'Eshop');
|
940 |
+
foreach ($importedTypes as $importedType) {
|
941 |
$querycheck = $wpdb->get_results("select *from smackcsv_pie_log where type = \"{$importedType}\"");
|
942 |
+
if (count($querycheck) == 0) {
|
943 |
$sql4 = "insert into smackcsv_pie_log (type,value) values(\"$importedType\",0)";
|
944 |
$wpdb->query($sql4);
|
945 |
}
|
957 |
$sql2 = "DROP TABLE smackcsv_line_log;";
|
958 |
$wpdb->query($sql2);
|
959 |
|
960 |
+
update_option('wpcsvfreesettings', '');
|
961 |
}
|
962 |
+
|
963 |
public function addPieChartEntry($imported_as, $count) {
|
964 |
//add total counts
|
965 |
global $wpdb;
|
966 |
$getTypeID = $wpdb->get_results("select * from smackcsv_pie_log where type = '$imported_as'");
|
967 |
+
if (count($getTypeID) == 0) {
|
968 |
+
$wpdb->insert('smackcsv_pie_log', array('type' => $imported_as, 'value' => $count));
|
969 |
+
} else {
|
970 |
+
$wpdb->update('smackcsv_pie_log', array('value' => $getTypeID[0]->value + $count), array('id' => $getTypeID[0]->id));
|
971 |
+
}
|
972 |
}
|
973 |
+
|
974 |
+
function addStatusLog($inserted, $imported_as) {
|
975 |
global $wpdb;
|
976 |
$today = date('Y-m-d h:i:s');
|
977 |
+
$mon = date("M", strtotime($today));
|
978 |
+
$year = date("Y", strtotime($today));
|
979 |
+
$wpdb->insert('smackcsv_line_log', array('month' => $mon, 'year' => $year, 'imported_type' => $imported_as, 'imported_on' => date('Y-m-d h:i:s'), 'inserted' => $inserted));
|
980 |
}
|
981 |
|
982 |
/**
|
983 |
+
* Function for importing the all in seo data
|
984 |
* Feature added by Fredrick on version3.5.4
|
985 |
*/
|
986 |
+
function importSEOfields($array, $postId) {
|
|
|
987 |
$seo_opt = get_option('wpcsvfreesettings');
|
988 |
+
if (in_array('aioseo', $seo_opt)) {
|
989 |
+
if (isset($array['keywords'])) {
|
990 |
+
$custom_array['_aioseop_keywords'] = $array['keywords'];
|
991 |
+
}
|
992 |
+
if (isset($array['description'])) {
|
993 |
+
$custom_array['_aioseop_description'] = $array['description'];
|
994 |
+
}
|
995 |
+
if (isset($array['title'])) {
|
996 |
+
$custom_array['_aioseop_title'] = $array['title'];
|
997 |
+
}
|
998 |
+
if (isset($array['noindex'])) {
|
999 |
+
$custom_array['_aioseop_noindex'] = $array['noindex'];
|
1000 |
+
}
|
1001 |
+
if (isset($array['nofollow'])) {
|
1002 |
+
$custom_array['_aioseop_nofollow'] = $array['nofollow'];
|
1003 |
+
}
|
1004 |
+
if (isset($array['titleatr'])) {
|
1005 |
+
$custom_array['_aioseop_titleatr'] = $array['titleatr'];
|
1006 |
+
}
|
1007 |
+
if (isset($array['menulabel'])) {
|
1008 |
+
$custom_array['_aioseop_menulabel'] = $array['menulabel'];
|
1009 |
+
}
|
1010 |
+
if (isset($array['disable'])) {
|
1011 |
+
$custom_array['_aioseop_disable'] = $array['disable'];
|
1012 |
+
}
|
1013 |
+
if (isset($array['disable_analytics'])) {
|
1014 |
+
$custom_array['_aioseop_disable_analytics'] = $array['disable_analytics'];
|
1015 |
+
}
|
1016 |
+
if (isset($array['noodp'])) {
|
1017 |
+
$custom_array['_aioseop_noodp'] = $array['noodp'];
|
1018 |
+
}
|
1019 |
+
if (isset($array['noydir'])) {
|
1020 |
+
$custom_array['_aioseop_noydir'] = $array['noydir'];
|
1021 |
+
}
|
1022 |
}
|
1023 |
+
if (!empty ($custom_array)) {
|
1024 |
+
foreach ($custom_array as $custom_key => $custom_value) {
|
1025 |
+
update_post_meta($postId, $custom_key, $custom_value);
|
1026 |
}
|
1027 |
}
|
1028 |
|
1033 |
*/
|
1034 |
function deletefileafterprocesscomplete($uploadDir) {
|
1035 |
//array_map('unlink', glob("$uploadDir/*"));
|
1036 |
+
$files = array_diff(scandir($uploadDir), array('.', '..'));
|
1037 |
+
foreach ($files as $file) {
|
1038 |
+
(is_dir("$uploadDir/$file")) ? rmdir("$uploadDir/$file") : unlink("$uploadDir/$file");
|
1039 |
+
}
|
1040 |
}
|
1041 |
|
1042 |
// Function convert string to hash_key
|
1047 |
|
1048 |
// Function to show common notice for PRO Feature
|
1049 |
public function common_notice_for_pro_feature() {
|
1050 |
+
return "<p align='center'> <label style='color:red;'> " . __('This feature is only available in Pro!', 'wp-ultimate-csv-importer') . " </label> <a href='http://www.smackcoders.com/wp-ultimate-csv-importer-pro.html' target='_blank'>" . __('Go Pro Now', 'wp-ultimate-csv-importer') . "</a> </p>";
|
1051 |
}
|
1052 |
|
1053 |
// Function for common footer
|
1054 |
+
public function common_footer_for_other_plugin_promotions() {
|
1055 |
$content = '<div class="accordion-inner">
|
1056 |
<label class="plugintags"><a href="http://blog.smackcoders.com/category/free-wordpress-plugins/?utm_source=WpPlugin&utm_medium=Free&utm_campaign=SupportTraffic" target="_blank">Social All in One Bot</a></label>
|
1057 |
<label class="plugintags"><a href="http://blog.smackcoders.com/category/free-wordpress-plugins/google-seo-author-snippet-plugin/?utm_source=WpPlugin&utm_medium=Free&utm_campaign=SupportTraffic" target="_blank">Google SEO Author Snippet</a></label>
|
1078 |
|
1079 |
//Facebook
|
1080 |
$htmlShareButtons = '<span class="sociallink">';
|
1081 |
+
$htmlShareButtons .= '<a id="wpcsv_facebook_share" href="http://www.facebook.com/sharer.php?u=' . $urlCurrentPage . '" target="_blank">';
|
1082 |
$htmlShareButtons .= '<img title="Facebook" class="wpcsv" src="' . $fbimgsrc . '" alt="Facebook" />';
|
1083 |
$htmlShareButtons .= '</a>';
|
1084 |
$htmlShareButtons .= '</span>';
|
1085 |
|
1086 |
//Google Plus
|
1087 |
$htmlShareButtons .= '<span class="sociallink">';
|
1088 |
+
$htmlShareButtons .= '<a id="wpcsv_google_share" href="https://plus.google.com/share?url=' . $urlCurrentPage . '" target="_blank" >';
|
1089 |
$htmlShareButtons .= '<img title="Google+" class="wpcsv" src="' . $googleimgsrc . '" alt="Google+" />';
|
1090 |
$htmlShareButtons .= '</a>';
|
1091 |
$htmlShareButtons .= '</span>';
|
1092 |
|
1093 |
//Linked in
|
1094 |
$htmlShareButtons .= '<span class="sociallink">';
|
1095 |
+
$htmlShareButtons .= '<a id="wpcsv_linkedin_share" class="wpcsv_share_link" href="http://www.linkedin.com/shareArticle?mini=true&url=' . urlencode($urlCurrentPage) . '&title=' . urlencode($strPageTitle) . '&source=' . $linked_in_username . '" target="_blank" >';
|
1096 |
$htmlShareButtons .= '<img title="LinkedIn" class="wpcsv" src="' . $linkedimgsrc . '" alt="LinkedIn" />';
|
1097 |
$htmlShareButtons .= '</a>';
|
1098 |
$htmlShareButtons .= '</span>';
|
1103 |
$twitterShareText = urlencode(html_entity_decode($strPageTitle . ' ', ENT_COMPAT, 'UTF-8'));
|
1104 |
// twitter share link
|
1105 |
$htmlShareButtons .= '<span class="sociallink">';
|
1106 |
+
$htmlShareButtons .= '<a id="wpcsv_twitter_share" href="http://twitter.com/share?url=' . $urlCurrentPage . '&via=' . $username . '&related=' . $username . '&text=' . $twitterShareText . '" target="_blank">';
|
1107 |
$htmlShareButtons .= '<img title="Twitter" class="wpcsv" src="' . $twitimgsrc . '" alt="Twitter" />';
|
1108 |
$htmlShareButtons .= '</a>';
|
1109 |
$htmlShareButtons .= '</span>';
|
1111 |
}
|
1112 |
|
1113 |
public function common_footer() {
|
1114 |
+
$get_pluginData = get_plugin_data(plugin_dir_path(__FILE__) . '../index.php');
|
1115 |
$footer = '';
|
1116 |
$footer .= '<div style="padding:10px;">';
|
1117 |
+
$footer .= '<label class="plugintags"><a href="http://www.wpultimatecsvimporter.com" target="_blank">' . __("Home", 'wp-ultimate-csv-importer') . '</a></label><label class="plugintags"><a href="http://wiki.smackcoders.com/WP_Ultimate_CSV_Importer?utm_source=WpPlugin&utm_medium=Free&utm_campaign=SupportTraffic" target="_blank">' . __("Wiki", 'wp-ultimate-csv-importer') . '</a></label>
|
1118 |
+
<label class="plugintags"><a href="http://www.wpultimatecsvimporter.com" target="_blank">' . __('Tutorials', 'wp-ultimate-csv-importer') . '</a></label> <label class="plugintags"><a href="http://wiki.smackcoders.com/WP_Ultimate_CSV_Importer_Videos?utm_source=WpPlugin&utm_medium=Free&utm_campaign=SupportTraffic" target="_blank">' . __("Videos", 'wp-ultimate-csv-importer') . '</a></label>
|
1119 |
+
<label class="plugintags"><a href="http://blog.smackcoders.com/wordpress-ultimate-csv-importer-csv-sample-files-and-updates.html?utm_source=WpPlugin&utm_medium=Free&utm_campaign=SupportTraffic" target="_blank">' . __("Sample Files", 'wp-ultimate-csv-importer') . '</a></label>';
|
1120 |
$footer .= '</div>';
|
1121 |
$footer .= '<div style="padding:10px;margin-bottom:20px;">';
|
1122 |
+
if (isset ($_REQUEST['__module']) && $_REQUEST['__module'] != 'settings') {
|
1123 |
+
$footer .= "<div style='float:right;margin-top:-49px;'><a class='label label-info' href='" . get_admin_url() . "admin.php?page=" . WP_CONST_ULTIMATE_CSV_IMP_SLUG . "/index.php&__module=settings'>" . __('Click here to Enable any disabled module', 'wp-ultimate-csv-importer') . "</a></div>";
|
|
|
|
|
|
|
1124 |
}
|
1125 |
+
if (isset ($_REQUEST['__module']) && $_REQUEST['__module'] == 'settings') {
|
1126 |
+
$footer .= "<div style='float:right;margin-top:-48px;'><span style='margin-right:20px;'><a class='label label-info' href='http://wordpress.org/plugins/wp-ultimate-csv-importer/developers/'>" . __('Get Old Versions', 'wp-ultimate-csv-importer') . "</a></span><a class='label label-info' href='" . get_admin_url() . "admin.php?page=" . WP_CONST_ULTIMATE_CSV_IMP_SLUG . "/index.php&__module=support'>" . __('Click here to Get some useful links') . "</a></div>";
|
1127 |
+
$footer .= "<div style='float:right;margin-right:15px;'> </span> " . __('Current Version', 'wp-ultimate-csv-importer') . ":" . $get_pluginData['Version'] . " </div>";
|
1128 |
}
|
1129 |
+
if (isset ($_REQUEST['__module']) && $_REQUEST['__module'] != 'support' && $_REQUEST['__module'] != 'settings') {
|
1130 |
+
$footer .= "<div style='float:right;margin-right:225px;margin-top:-48px;'><span style='margin-right:20px;'> <a class='label label-info' href='http://wordpress.org/plugins/wp-ultimate-csv-importer/developers/'>" . __('Get Old Versions', 'wp-ultimate-csv-importer') . "</a></span><a class='label label-info' href='" . get_admin_url() . "admin.php?page=" . WP_CONST_ULTIMATE_CSV_IMP_SLUG . "/index.php&__module=support'>" . __('Click here to Get some useful links', 'wp-ultimate-csv-importer') . "</a></div>";
|
1131 |
+
$footer .= "<div style='float:right;margin-right:15px;'> " . 'Current Version' . ": " . $get_pluginData['Version'] . " </div>";
|
1132 |
+
}
|
1133 |
+
if (isset ($_REQUEST['__module']) && $_REQUEST['__module'] == 'support') {
|
1134 |
+
$footer .= "<div style='float:right;margin-right:15px;'><span style='margin-right:20px;'>" . __('Current Version', 'wp-ultimate-csv-importer') . ": " . $get_pluginData['Version'] . " </span><span style='margin-right:10px;'><a class='label label-info' href='http://wordpress.org/plugins/wp-ultimate-csv-importer/developers/'>" . __('Get Old Versions', 'wp-ultimate-csv-importer') . "</a></span></div>";
|
1135 |
}
|
1136 |
$footer .= '</div>';
|
1137 |
$footer .= '<div style="float:right;margin-right:15px;margin-top:-10px;"> <label>Plugin By <a href="http://www.smackcoders.com"> Smackcoders</a></label> </div>';
|
1144 |
|
1145 |
<div align="center" style="text-align:left;margin-top:-33px;">
|
1146 |
<div id="boxmethod1" class="method1">
|
1147 |
+
<label><span class="radio-icon"><input type="radio" name="importmethod" id="uploadfilefromcomputer" onclick="choose_import_method(this.id);" checked/></span> <span class="header-text" id="importopt">' . __('From Computer', 'wp-ultimate-csv-importer') . '</span> </label> <br>
|
1148 |
<!-- The fileinput-button span is used to style the file input field as button -->
|
1149 |
<div id="method1" style="display:block;height:40px;">
|
1150 |
<span class="btn btn-success fileinput-button">
|
1151 |
+
<span>' . __('Browse', 'wp-ultimate-csv-importer') . '</span>
|
1152 |
<input id="fileupload" type="file" name="files[]" multiple>
|
1153 |
<a href="#" id="zip_process" style = "display:none"> Click Here To Process Zip </a>
|
1154 |
</span>';
|
1156 |
$smack_csv_import_method .= '<span style="padding-top:10px;">
|
1157 |
<div id="progress" class="progress">
|
1158 |
<div class="progress-bar progress-bar-success"></div>
|
1159 |
+
<div align="center" id="helpnotify" style="width:100%;"><p class="msgborder" style="color:green;">' . __('You can also drag and drop files here', 'wp-ultimate-csv-importer') . '</div>
|
1160 |
</div>
|
1161 |
</span>
|
1162 |
</div>
|
1163 |
</div>
|
1164 |
<div style = "opacity: 0.3;background-color: ghostwhite;">
|
1165 |
<div id="boxmethod2" class="method2">
|
1166 |
+
<label><span class="radio-icon"><input type="radio" name="importmethod" id="dwnldftpfile" /></span> <span class="header-text" id="importopt">' . __('From FTP', 'wp-ultimate-csv-importer') . '</span> </label> <img src="' . WP_CONTENT_URL . '/plugins/' . WP_CONST_ULTIMATE_CSV_IMP_SLUG . '/images/pro_icon.gif" title="PRO Feature" /> <br>
|
1167 |
</div>
|
1168 |
<div id="boxmethod3" class="method3">
|
1169 |
+
<label> <span class="radio-icon"><input type="radio" name="importmethod" id="dwnldextrfile" /></span> <span class="header-text" id="importopt">' . __('From URL', 'wp-ultimate-csv-importer') . '</span></label> <img src="' . WP_CONTENT_URL . '/plugins/' . WP_CONST_ULTIMATE_CSV_IMP_SLUG . '/images/pro_icon.gif" title="PRO Feature" /> <br>
|
1170 |
</div>
|
1171 |
<div id="boxmethod4" class="method4">
|
1172 |
+
<label><span class="radio-icon"><input type="radio" name="importmethod" id="useuploadedfile" /></span> <span class="header-text" id="importopt">' . __('From Already Uploaded', 'wp-ultimate-csv-importer') . '</span></label> <img src="' . WP_CONTENT_URL . '/plugins/' . WP_CONST_ULTIMATE_CSV_IMP_SLUG . '/images/pro_icon.gif" title="PRO Feature" /> <br>
|
1173 |
</div>
|
1174 |
</div>
|
1175 |
|
1176 |
</div>
|
1177 |
</div>';
|
1178 |
+
$curr_module = $_REQUEST['__module'];
|
1179 |
+
if ($curr_module == 'post' || $curr_module == 'page' || $curr_module == 'custompost' || $curr_module == 'eshop') {
|
1180 |
$smack_csv_import_method .= '<div class="media_handling" align="left">
|
1181 |
+
<span class="advancemediahandling"> <label id="importalign"> <input type="checkbox" name="advance_media_handling" id="advance_media_handling" onclick = "filezipopen();" /> ' . __("Advance Media Handling", 'wp-ultimate-csv-importer') . ' </label> </span>
|
1182 |
<span id = "filezipup" style ="display:none;">
|
1183 |
<span class="advancemediahandling" style="padding-left:30px;"> <input type="file" name="inlineimages" id="inlineimages" onchange ="checkextension(this.value);" /> </span>
|
1184 |
</span>
|
1185 |
</div>';
|
1186 |
+
}
|
1187 |
|
1188 |
return $smack_csv_import_method;
|
1189 |
}
|
1190 |
+
|
1191 |
+
function helpnotes() {
|
1192 |
$smackhelpnotes = '<span style="position:absolute;margin-top:6px;margin-left:15px;">
|
1193 |
<a href="" class="tooltip">
|
1194 |
+
<img src="' . WP_CONST_ULTIMATE_CSV_IMP_DIR . 'images/help.png" />
|
1195 |
<span class="tooltipPostStatus">
|
1196 |
+
<img class="callout" src="' . WP_CONST_ULTIMATE_CSV_IMP_DIR . 'images/callout.gif" />
|
1197 |
Default value is 1. You can give any value based on your environment configuration.
|
1198 |
+
<img src="' . WP_CONST_ULTIMATE_CSV_IMP_DIR . 'images/help.png" style="margin-top: 6px;float:right;" />
|
1199 |
</span>
|
1200 |
</a>
|
1201 |
</span>';
|
1202 |
return $smackhelpnotes;
|
1203 |
}
|
1204 |
+
|
1205 |
+
function create_nonce_key() {
|
1206 |
return wp_create_nonce('smack_nonce');
|
1207 |
}
|
1208 |
+
|
1209 |
+
function reduceStringLength($convert_str, $checktext) {
|
1210 |
+
if ($checktext == 'Enable' || $checktext == 'Disable' || $checktext == 'Mapping') {
|
1211 |
+
if (strlen($convert_str) > 7) {
|
1212 |
+
$convert_str = substr($convert_str, 0, 5) . '..';
|
1213 |
+
}
|
1214 |
+
} else {
|
1215 |
+
if ($checktext == 'caticonEnable' || $checktext == 'caticonDisable') {
|
1216 |
+
if (strlen($convert_str) > 7) {
|
1217 |
+
$convert_str = substr($convert_str, 0, 4) . '..';
|
1218 |
+
}
|
1219 |
+
} else {
|
1220 |
+
if ($checktext == 'Enabled' || $checktext == 'Disabled') {
|
1221 |
+
if (strlen($convert_str) > 8) {
|
1222 |
+
$convert_str = substr($convert_str, 0, 3) . '..';
|
1223 |
+
}
|
1224 |
+
} else {
|
1225 |
+
if ($checktext == 'Check All' || $checktext == 'Uncheck All') {
|
1226 |
+
if (strlen($convert_str) > 12) {
|
1227 |
+
$convert_str = substr($convert_str, 0, 10) . '..';
|
1228 |
+
}
|
1229 |
+
} else {
|
1230 |
+
if ($checktext == 'Yes' || $checktext == 'No') {
|
1231 |
+
if (strlen($convert_str) > 4) {
|
1232 |
+
$convert_str = substr($convert_str, 0, 2) . '..';
|
1233 |
+
}
|
1234 |
+
} else {
|
1235 |
+
if ($checktext == 'Next' && strlen($convert_str) > 5) {
|
1236 |
+
$convert_str = substr($convert_str, 0, 4) . '..';
|
1237 |
+
}
|
1238 |
+
}
|
1239 |
+
}
|
1240 |
+
}
|
1241 |
+
}
|
1242 |
+
}
|
1243 |
+
return $convert_str;
|
1244 |
+
}
|
1245 |
+
|
1246 |
+
function customfieldui($count) {
|
1247 |
+
$result = "<div class='left_align columnheader' style='background-color: #E5E4E2; border: 1px solid #d6e9c6;padding: 10px; width:100%;'>
|
1248 |
+
<div id = 'custfield_core'><b>Custom Fields:</b>
|
1249 |
</div>
|
1250 |
</div>";
|
1251 |
$result .= "<table style='font-size: 12px;' class = 'table table-striped' id='CORECUST'><tr>
|
1252 |
<td class='left_align columnheader'><b>CUSTOM FIELD</b></td>
|
1253 |
<td class='columnheader'><b>CSV HEADER</b></td><td></td><td></td></tr></table>
|
1254 |
+
<input type='button' class='btn btn-primary' name='addcustomfd' value='Add Custom Field' style='margin-left:20px;margin-bottom:15px;margin-top:20px;' onclick = 'addcorecustomfield(CORECUST," . $count . ");'>";
|
1255 |
return $result;
|
1256 |
|
1257 |
}
|
1258 |
}
|
1259 |
|
1260 |
+
class CallWPImporterObj extends WPImporter_includes_helper {
|
|
|
1261 |
private static $_instance = null;
|
1262 |
+
|
1263 |
+
public static function getInstance() {
|
1264 |
+
if (!is_object(self::$_instance)) //or if( is_null(self::$_instance) ) or if( self::$_instance == null )
|
1265 |
+
{
|
1266 |
self::$_instance = new WPImporter_includes_helper();
|
1267 |
+
}
|
1268 |
return self::$_instance;
|
1269 |
}
|
1270 |
+
|
1271 |
+
public static function checkSecurity() {
|
1272 |
+
$msg = 'You are not allowed to do this operation! Please contact your admin';
|
1273 |
+
if (!function_exists('session_status')) {
|
1274 |
+
if (session_id() == '') {
|
1275 |
+
return $msg;
|
1276 |
+
} else {
|
1277 |
return 'true';
|
1278 |
+
}
|
1279 |
+
} else {
|
1280 |
+
if (session_status() != PHP_SESSION_ACTIVE) {
|
1281 |
+
return $msg;
|
1282 |
+
} else {
|
1283 |
+
if (!defined('ABSPATH')) {
|
1284 |
+
return $msg;
|
1285 |
+
} else {
|
1286 |
+
if (php_sapi_name() == "cli") {
|
1287 |
+
return $msg;
|
1288 |
+
} else {
|
1289 |
+
return 'true';
|
1290 |
+
}
|
1291 |
+
}
|
1292 |
+
}
|
1293 |
+
}
|
1294 |
+
}
|
1295 |
}
|
1296 |
|
1297 |
class WPImpCSVParserLib {
|
1298 |
+
|
1299 |
+
/*
|
1300 |
+
|
1301 |
+
Class: parseCSV v0.4.3 beta
|
1302 |
+
http://code.google.com/p/parsecsv-for-php/
|
1303 |
+
|
1304 |
+
|
1305 |
+
Fully conforms to the specifications lined out on wikipedia:
|
1306 |
+
- http://en.wikipedia.org/wiki/Comma-separated_values
|
1307 |
+
|
1308 |
+
Based on the concept of Ming Hong Ng's CsvFileParser class:
|
1309 |
+
- http://minghong.blogspot.com/2006/07/csv-parser-for-php.html
|
1310 |
+
|
1311 |
+
|
1312 |
+
|
1313 |
+
Copyright (c) 2007 Jim Myhrberg (jim@zydev.info).
|
1314 |
+
|
1315 |
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
1316 |
+
of this software and associated documentation files (the "Software"), to deal
|
1317 |
+
in the Software without restriction, including without limitation the rights
|
1318 |
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
1319 |
+
copies of the Software, and to permit persons to whom the Software is
|
1320 |
+
furnished to do so, subject to the following conditions:
|
1321 |
+
|
1322 |
+
The above copyright notice and this permission notice shall be included in
|
1323 |
+
all copies or substantial portions of the Software.
|
1324 |
+
|
1325 |
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
1326 |
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
1327 |
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
1328 |
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
1329 |
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
1330 |
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
1331 |
+
THE SOFTWARE.
|
1332 |
+
|
1333 |
+
|
1334 |
+
|
1335 |
+
Code Examples
|
1336 |
+
----------------
|
1337 |
+
# general usage
|
1338 |
+
$csv = new parseCSV('data.csv');
|
1339 |
+
print_r($csv->data);
|
1340 |
+
----------------
|
1341 |
+
# tab delimited, and encoding conversion
|
1342 |
+
$csv = new parseCSV();
|
1343 |
+
$csv->encoding('UTF-16', 'UTF-8');
|
1344 |
+
$csv->delimiter = "\t";
|
1345 |
+
$csv->parse('data.tsv');
|
1346 |
+
print_r($csv->data);
|
1347 |
+
----------------
|
1348 |
+
# auto-detect delimiter character
|
1349 |
+
$csv = new parseCSV();
|
1350 |
+
$csv->auto('data.csv');
|
1351 |
+
print_r($csv->data);
|
1352 |
+
----------------
|
1353 |
+
# modify data in a csv file
|
1354 |
+
$csv = new parseCSV();
|
1355 |
+
$csv->sort_by = 'id';
|
1356 |
+
$csv->parse('data.csv');
|
1357 |
+
# "4" is the value of the "id" column of the CSV row
|
1358 |
+
$csv->data[4] = array('firstname' => 'John', 'lastname' => 'Doe', 'email' => 'john@doe.com');
|
1359 |
+
$csv->save();
|
1360 |
+
----------------
|
1361 |
+
# add row/entry to end of CSV file
|
1362 |
+
# - only recommended when you know the extact sctructure of the file
|
1363 |
+
$csv = new parseCSV();
|
1364 |
+
$csv->save('data.csv', array(array('1986', 'Home', 'Nowhere', '')), true);
|
1365 |
+
----------------
|
1366 |
+
# convert 2D array to csv data and send headers
|
1367 |
+
# to browser to treat output as a file and download it
|
1368 |
+
$csv = new parseCSV();
|
1369 |
+
$csv->output (true, 'movies.csv', $array);
|
1370 |
+
----------------
|
1371 |
+
|
1372 |
+
|
1373 |
+
*/
|
1374 |
|
1375 |
|
1376 |
/**
|
1377 |
* Configuration
|
1378 |
* - set these options with $object->var_name = 'value';
|
1379 |
*/
|
1380 |
+
|
1381 |
# use first line/entry as field names
|
1382 |
var $heading = true;
|
1383 |
+
|
1384 |
# override field names
|
1385 |
var $fields = array();
|
1386 |
+
|
1387 |
# sort entries by this field
|
1388 |
var $sort_by = null;
|
1389 |
var $sort_reverse = false;
|
1390 |
+
|
1391 |
# sort behavior passed to ksort/krsort functions
|
1392 |
# regular = SORT_REGULAR
|
1393 |
# numeric = SORT_NUMERIC
|
1394 |
# string = SORT_STRING
|
1395 |
var $sort_type = null;
|
1396 |
+
|
1397 |
# delimiter (comma) and enclosure (double quote)
|
1398 |
var $delimiter = ',';
|
1399 |
var $enclosure = '"';
|
1400 |
+
|
1401 |
# basic SQL-like conditions for row matching
|
1402 |
var $conditions = null;
|
1403 |
+
|
1404 |
# number of rows to ignore from beginning of data
|
1405 |
var $offset = null;
|
1406 |
+
|
1407 |
# limits the number of returned rows to specified amount
|
1408 |
var $limit = null;
|
1409 |
+
|
1410 |
# number of rows to analyze when attempting to auto-detect delimiter
|
1411 |
var $auto_depth = 15;
|
1412 |
+
|
1413 |
# characters to ignore when attempting to auto-detect delimiter
|
1414 |
var $auto_non_chars = "a-zA-Z0-9\n\r";
|
1415 |
+
|
1416 |
# preferred delimiter characters, only used when all filtering method
|
1417 |
# returns multiple possible delimiters (happens very rarely)
|
1418 |
var $auto_preferred = ",;\t.:|";
|
1419 |
+
|
1420 |
# character encoding options
|
1421 |
var $convert_encoding = false;
|
1422 |
var $input_encoding = 'ISO-8859-1';
|
1423 |
var $output_encoding = 'ISO-8859-1';
|
1424 |
+
|
1425 |
# used by unparse(), save(), and output() functions
|
1426 |
var $linefeed = "\r\n";
|
1427 |
+
|
1428 |
# only used by output() function
|
1429 |
var $output_delimiter = ',';
|
1430 |
var $output_filename = 'data.csv';
|
1431 |
+
|
1432 |
# keep raw file data in memory after successful parsing (useful for debugging)
|
1433 |
var $keep_file_data = false;
|
1434 |
+
|
1435 |
/**
|
1436 |
* Internal variables
|
1437 |
*/
|
1438 |
+
|
1439 |
# current file
|
1440 |
var $file;
|
1441 |
+
|
1442 |
# loaded file contents
|
1443 |
var $file_data;
|
1444 |
+
|
1445 |
# error while parsing input data
|
1446 |
# 0 = No errors found. Everything should be fine :)
|
1447 |
# 1 = Hopefully correctable syntax error was found.
|
1451 |
# standard CSV formatting. Please validate
|
1452 |
# the parsed data yourself.
|
1453 |
var $error = 0;
|
1454 |
+
|
1455 |
# detailed error info
|
1456 |
var $error_info = array();
|
1457 |
+
|
1458 |
# array of field values in data parsed
|
1459 |
var $titles = array();
|
1460 |
+
|
1461 |
# two dimentional array of CSV data
|
1462 |
var $data = array();
|
1463 |
+
|
1464 |
+
|
1465 |
/**
|
1466 |
* Constructor
|
1467 |
* @param input CSV file or string
|
1468 |
* @return nothing
|
1469 |
*/
|
1470 |
+
function parseCSV($input = null, $offset = null, $limit = null, $conditions = null) {
|
1471 |
+
if ($offset !== null) {
|
1472 |
+
$this->offset = $offset;
|
1473 |
+
}
|
1474 |
+
if ($limit !== null) {
|
1475 |
+
$this->limit = $limit;
|
1476 |
+
}
|
1477 |
+
if (count($conditions) > 0) {
|
1478 |
+
$this->conditions = $conditions;
|
1479 |
+
}
|
1480 |
+
if (!empty($input)) {
|
1481 |
+
$this->parse($input);
|
1482 |
+
}
|
1483 |
}
|
1484 |
+
|
1485 |
+
|
1486 |
// ==============================================
|
1487 |
// ----- [ Main Functions ] ---------------------
|
1488 |
// ==============================================
|
1489 |
+
|
1490 |
/**
|
1491 |
* Parse CSV file or string
|
1492 |
* @param input CSV file or string
|
1493 |
* @return nothing
|
1494 |
*/
|
1495 |
+
function parse($input = null, $offset = null, $limit = null, $conditions = null) {
|
1496 |
+
if ($input === null) {
|
1497 |
+
$input = $this->file;
|
1498 |
+
}
|
1499 |
+
if (!empty($input)) {
|
1500 |
+
if ($offset !== null) {
|
1501 |
+
$this->offset = $offset;
|
1502 |
+
}
|
1503 |
+
if ($limit !== null) {
|
1504 |
+
$this->limit = $limit;
|
1505 |
+
}
|
1506 |
+
if (count($conditions) > 0) {
|
1507 |
+
$this->conditions = $conditions;
|
1508 |
+
}
|
1509 |
+
if (is_readable($input)) {
|
1510 |
$this->data = $this->parse_file($input);
|
1511 |
} else {
|
1512 |
$this->file_data = &$input;
|
1513 |
$this->data = $this->parse_string();
|
1514 |
}
|
1515 |
+
if ($this->data === false) {
|
1516 |
+
return false;
|
1517 |
+
}
|
1518 |
}
|
1519 |
return true;
|
1520 |
}
|
1521 |
+
|
1522 |
/**
|
1523 |
* Save changes, or new file and/or data
|
1524 |
* @param file file to save to
|
1525 |
+
* @param data 2D array with data
|
1526 |
* @param append append current data to end of target CSV if exists
|
1527 |
* @param fields field names
|
1528 |
* @return true or false
|
1529 |
*/
|
1530 |
+
function save($file = null, $data = array(), $append = false, $fields = array()) {
|
1531 |
+
if (empty($file)) {
|
1532 |
+
$file = &$this->file;
|
1533 |
+
}
|
1534 |
+
$mode = ($append) ? 'at' : 'wt';
|
1535 |
+
$is_php = (preg_match('/\.php$/i', $file)) ? true : false;
|
1536 |
return $this->_wfile($file, $this->unparse($data, $fields, $append, $is_php), $mode);
|
1537 |
}
|
1538 |
+
|
1539 |
/**
|
1540 |
* Generate CSV based string for output
|
1541 |
* @param filename if specified, headers and data will be output directly to browser as a downloable file
|
1542 |
+
* @param data 2D array with data
|
1543 |
* @param fields field names
|
1544 |
* @param delimiter delimiter used to separate data
|
1545 |
* @return CSV data using delimiter of choice, or default
|
1546 |
*/
|
1547 |
+
function output($filename = null, $data = array(), $fields = array(), $delimiter = null) {
|
1548 |
+
if (empty($filename)) {
|
1549 |
+
$filename = $this->output_filename;
|
1550 |
+
}
|
1551 |
+
if ($delimiter === null) {
|
1552 |
+
$delimiter = $this->output_delimiter;
|
1553 |
+
}
|
1554 |
$data = $this->unparse($data, $fields, null, null, $delimiter);
|
1555 |
+
if ($filename !== null) {
|
1556 |
header('Content-type: application/csv');
|
1557 |
+
header('Content-Disposition: attachment; filename="' . $filename . '"');
|
1558 |
echo $data;
|
1559 |
}
|
1560 |
return $data;
|
1561 |
}
|
1562 |
+
|
1563 |
/**
|
1564 |
* Convert character encoding
|
1565 |
* @param input input character encoding, uses default if left blank
|
1566 |
* @param output output character encoding, uses default if left blank
|
1567 |
* @return nothing
|
1568 |
*/
|
1569 |
+
function encoding($input = null, $output = null) {
|
1570 |
$this->convert_encoding = true;
|
1571 |
+
if ($input !== null) {
|
1572 |
+
$this->input_encoding = $input;
|
1573 |
+
}
|
1574 |
+
if ($output !== null) {
|
1575 |
+
$this->output_encoding = $output;
|
1576 |
+
}
|
1577 |
}
|
1578 |
+
|
1579 |
/**
|
1580 |
* Auto-Detect Delimiter: Find delimiter by analyzing a specific number of
|
1581 |
* rows to determine most probable delimiter character
|
1586 |
* @param enclosure enclosure character, default is double quote (").
|
1587 |
* @return delimiter character
|
1588 |
*/
|
1589 |
+
function auto($file = null, $parse = true, $search_depth = null, $preferred = null, $enclosure = null) {
|
1590 |
+
|
1591 |
+
if ($file === null) {
|
1592 |
+
$file = $this->file;
|
1593 |
+
}
|
1594 |
+
if (empty($search_depth)) {
|
1595 |
+
$search_depth = $this->auto_depth;
|
1596 |
+
}
|
1597 |
+
if ($enclosure === null) {
|
1598 |
+
$enclosure = $this->enclosure;
|
1599 |
+
}
|
1600 |
+
|
1601 |
+
if ($preferred === null) {
|
1602 |
+
$preferred = $this->auto_preferred;
|
1603 |
+
}
|
1604 |
+
|
1605 |
+
if (empty($this->file_data)) {
|
1606 |
+
if ($this->_check_data($file)) {
|
1607 |
$data = &$this->file_data;
|
1608 |
+
} else {
|
1609 |
+
return false;
|
1610 |
+
}
|
1611 |
} else {
|
1612 |
$data = &$this->file_data;
|
1613 |
}
|
1614 |
+
|
1615 |
$chars = array();
|
1616 |
$strlen = strlen($data);
|
1617 |
$enclosed = false;
|
1618 |
$n = 1;
|
1619 |
$to_end = true;
|
1620 |
+
|
1621 |
// walk specific depth finding posssible delimiter characters
|
1622 |
+
for ($i = 0; $i < $strlen; $i++) {
|
1623 |
$ch = $data{$i};
|
1624 |
+
$nch = (isset($data{$i + 1})) ? $data{$i + 1} : false;
|
1625 |
+
$pch = (isset($data{$i - 1})) ? $data{$i - 1} : false;
|
1626 |
+
|
1627 |
// open and closing quotes
|
1628 |
+
if ($ch == $enclosure) {
|
1629 |
+
if (!$enclosed || $nch != $enclosure) {
|
1630 |
+
$enclosed = ($enclosed) ? false : true;
|
1631 |
+
} elseif ($enclosed) {
|
1632 |
$i++;
|
1633 |
}
|
1634 |
+
|
1635 |
+
// end of row
|
1636 |
+
} elseif (($ch == "\n" && $pch != "\r" || $ch == "\r") && !$enclosed) {
|
1637 |
+
if ($n >= $search_depth) {
|
1638 |
$strlen = 0;
|
1639 |
$to_end = false;
|
1640 |
} else {
|
1641 |
$n++;
|
1642 |
}
|
1643 |
+
|
1644 |
+
// count character
|
1645 |
} elseif (!$enclosed) {
|
1646 |
+
if (!preg_match('/[' . preg_quote($this->auto_non_chars, '/') . ']/i', $ch)) {
|
1647 |
+
if (!isset($chars[$ch][$n])) {
|
1648 |
$chars[$ch][$n] = 1;
|
1649 |
} else {
|
1650 |
$chars[$ch][$n]++;
|
1652 |
}
|
1653 |
}
|
1654 |
}
|
1655 |
+
|
1656 |
// filtering
|
1657 |
+
$depth = ($to_end) ? $n - 1 : $n;
|
1658 |
$filtered = array();
|
1659 |
+
foreach ($chars as $char => $value) {
|
1660 |
+
if ($match = $this->_check_count($char, $value, $depth, $preferred)) {
|
1661 |
$filtered[$match] = $char;
|
1662 |
}
|
1663 |
}
|
1664 |
+
|
1665 |
// capture most probable delimiter
|
1666 |
ksort($filtered);
|
1667 |
$this->delimiter = reset($filtered);
|
1668 |
+
|
1669 |
// parse data
|
1670 |
+
if ($parse) {
|
1671 |
+
$this->data = $this->parse_string();
|
1672 |
+
}
|
1673 |
+
|
1674 |
return $this->delimiter;
|
1675 |
+
|
1676 |
}
|
1677 |
+
|
1678 |
+
|
1679 |
// ==============================================
|
1680 |
// ----- [ Core Functions ] ---------------------
|
1681 |
// ==============================================
|
1682 |
+
|
1683 |
/**
|
1684 |
* Read file to string and call parse_string()
|
1685 |
* @param file local CSV file
|
1686 |
* @return 2D array with CSV data, or false on failure
|
1687 |
*/
|
1688 |
+
function parse_file($file = null) {
|
1689 |
+
if ($file === null) {
|
1690 |
+
$file = $this->file;
|
1691 |
+
}
|
1692 |
+
if (empty($this->file_data)) {
|
1693 |
+
$this->load_data($file);
|
1694 |
+
}
|
1695 |
+
return (!empty($this->file_data)) ? $this->parse_string() : false;
|
1696 |
}
|
1697 |
+
|
1698 |
/**
|
1699 |
* Parse CSV strings to arrays
|
1700 |
* @param data CSV string
|
1701 |
* @return 2D array with CSV data, or false on failure
|
1702 |
*/
|
1703 |
+
function parse_string($data = null) {
|
1704 |
+
if (empty($data)) {
|
1705 |
+
if ($this->_check_data()) {
|
1706 |
$data = &$this->file_data;
|
1707 |
+
} else {
|
1708 |
+
return false;
|
1709 |
+
}
|
1710 |
}
|
1711 |
+
|
1712 |
$white_spaces = str_replace($this->delimiter, '', " \t\x0B\0");
|
1713 |
+
|
1714 |
$rows = array();
|
1715 |
$row = array();
|
1716 |
$row_count = 0;
|
1717 |
$current = '';
|
1718 |
+
$head = (!empty($this->fields)) ? $this->fields : array();
|
1719 |
$col = 0;
|
1720 |
$enclosed = false;
|
1721 |
$was_enclosed = false;
|
1722 |
$strlen = strlen($data);
|
1723 |
+
|
1724 |
// walk through each character
|
1725 |
+
for ($i = 0; $i < $strlen; $i++) {
|
1726 |
$ch = $data{$i};
|
1727 |
+
$nch = (isset($data{$i + 1})) ? $data{$i + 1} : false;
|
1728 |
+
$pch = (isset($data{$i - 1})) ? $data{$i - 1} : false;
|
1729 |
+
|
1730 |
// open/close quotes, and inline quotes
|
1731 |
+
if ($ch == $this->enclosure) {
|
1732 |
+
if (!$enclosed) {
|
1733 |
+
if (ltrim($current, $white_spaces) == '') {
|
1734 |
$enclosed = true;
|
1735 |
$was_enclosed = true;
|
1736 |
} else {
|
1737 |
$this->error = 2;
|
1738 |
$error_row = count($rows) + 1;
|
1739 |
$error_col = $col + 1;
|
1740 |
+
if (!isset($this->error_info[$error_row . '-' . $error_col])) {
|
1741 |
+
$this->error_info[$error_row . '-' . $error_col] = array('type' => 2, 'info' => 'Syntax error found on row ' . $error_row . '. Non-enclosed fields can not contain double-quotes.', 'row' => $error_row, 'field' => $error_col, 'field_name' => (!empty($head[$col])) ? $head[$col] : null,);
|
|
|
|
|
|
|
|
|
|
|
|
|
1742 |
}
|
1743 |
$current .= $ch;
|
1744 |
}
|
1745 |
} elseif ($nch == $this->enclosure) {
|
1746 |
$current .= $ch;
|
1747 |
$i++;
|
1748 |
+
} elseif ($nch != $this->delimiter && $nch != "\r" && $nch != "\n") {
|
1749 |
+
for ($x = ($i + 1); isset($data{$x}) && ltrim($data{$x}, $white_spaces) == ''; $x++) {
|
1750 |
+
}
|
1751 |
+
if ($data{$x} == $this->delimiter) {
|
1752 |
$enclosed = false;
|
1753 |
$i = $x;
|
1754 |
} else {
|
1755 |
+
if ($this->error < 1) {
|
1756 |
$this->error = 1;
|
1757 |
}
|
1758 |
$error_row = count($rows) + 1;
|
1759 |
$error_col = $col + 1;
|
1760 |
+
if (!isset($this->error_info[$error_row . '-' . $error_col])) {
|
1761 |
+
$this->error_info[$error_row . '-' . $error_col] = array('type' => 1, 'info' => 'Syntax error found on row ' . (count($rows) + 1) . '. ' . 'A single double-quote was found within an enclosed string. ' . 'Enclosed double-quotes must be escaped with a second double-quote.', 'row' => count($rows) + 1, 'field' => $col + 1, 'field_name' => (!empty($head[$col])) ? $head[$col] : null,);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1762 |
}
|
1763 |
$current .= $ch;
|
1764 |
$enclosed = false;
|
1766 |
} else {
|
1767 |
$enclosed = false;
|
1768 |
}
|
1769 |
+
|
1770 |
+
// end of field/row
|
1771 |
+
} elseif (($ch == $this->delimiter || $ch == "\n" || $ch == "\r") && !$enclosed) {
|
1772 |
+
$key = (!empty($head[$col])) ? $head[$col] : $col;
|
1773 |
+
$row[$key] = ($was_enclosed) ? $current : trim($current);
|
1774 |
$current = '';
|
1775 |
$was_enclosed = false;
|
1776 |
$col++;
|
1777 |
+
|
1778 |
// end of row
|
1779 |
+
if ($ch == "\n" || $ch == "\r") {
|
1780 |
+
if ($this->_validate_offset($row_count) && $this->_validate_row_conditions($row, $this->conditions)) {
|
1781 |
+
if ($this->heading && empty($head)) {
|
1782 |
$head = $row;
|
1783 |
+
} elseif (empty($this->fields) || (!empty($this->fields) && (($this->heading && $row_count > 0) || !$this->heading))) {
|
1784 |
+
if (!empty($this->sort_by) && !empty($row[$this->sort_by])) {
|
1785 |
+
if (isset($rows[$row[$this->sort_by]])) {
|
1786 |
+
$rows[$row[$this->sort_by] . '_0'] = &$rows[$row[$this->sort_by]];
|
1787 |
unset($rows[$row[$this->sort_by]]);
|
1788 |
+
for ($sn = 1; isset($rows[$row[$this->sort_by] . '_' . $sn]); $sn++) {
|
1789 |
+
}
|
1790 |
+
$rows[$row[$this->sort_by] . '_' . $sn] = $row;
|
1791 |
+
} else {
|
1792 |
+
$rows[$row[$this->sort_by]] = $row;
|
1793 |
+
}
|
1794 |
+
} else {
|
1795 |
+
$rows[] = $row;
|
1796 |
+
}
|
1797 |
}
|
1798 |
}
|
1799 |
$row = array();
|
1800 |
$col = 0;
|
1801 |
$row_count++;
|
1802 |
+
if ($this->sort_by === null && $this->limit !== null && count($rows) == $this->limit) {
|
1803 |
$i = $strlen;
|
1804 |
}
|
1805 |
+
if ($ch == "\r" && $nch == "\n") {
|
1806 |
+
$i++;
|
1807 |
+
}
|
1808 |
}
|
1809 |
+
|
1810 |
+
// append character to current field
|
1811 |
} else {
|
1812 |
$current .= $ch;
|
1813 |
}
|
1814 |
}
|
1815 |
$this->titles = $head;
|
1816 |
+
if (!empty($this->sort_by)) {
|
1817 |
$sort_type = SORT_REGULAR;
|
1818 |
+
if ($this->sort_type == 'numeric') {
|
1819 |
$sort_type = SORT_NUMERIC;
|
1820 |
+
} elseif ($this->sort_type == 'string') {
|
1821 |
$sort_type = SORT_STRING;
|
1822 |
}
|
1823 |
+
($this->sort_reverse) ? krsort($rows, $sort_type) : ksort($rows, $sort_type);
|
1824 |
+
if ($this->offset !== null || $this->limit !== null) {
|
1825 |
+
$rows = array_slice($rows, ($this->offset === null ? 0 : $this->offset), $this->limit, true);
|
1826 |
}
|
1827 |
}
|
1828 |
+
if (!$this->keep_file_data) {
|
1829 |
$this->file_data = null;
|
1830 |
}
|
1831 |
return $rows;
|
1832 |
}
|
1833 |
+
|
1834 |
/**
|
1835 |
* Create CSV data from array
|
1836 |
+
* @param data 2D array with data
|
1837 |
* @param fields field names
|
1838 |
* @param append if true, field names will not be output
|
1839 |
* @param is_php if a php die() call should be put on the first
|
1841 |
* @param delimiter field delimiter to use
|
1842 |
* @return CSV data (text string)
|
1843 |
*/
|
1844 |
+
function unparse($data = array(), $fields = array(), $append = false, $is_php = false, $delimiter = null) {
|
1845 |
+
if (!is_array($data) || empty($data)) {
|
1846 |
+
$data = &$this->data;
|
1847 |
+
}
|
1848 |
+
if (!is_array($fields) || empty($fields)) {
|
1849 |
+
$fields = &$this->titles;
|
1850 |
+
}
|
1851 |
+
if ($delimiter === null) {
|
1852 |
+
$delimiter = $this->delimiter;
|
1853 |
+
}
|
1854 |
+
|
1855 |
+
$string = ($is_php) ? "<?php header('Status: 403'); die(' '); ?>" . $this->linefeed : '';
|
1856 |
$entry = array();
|
1857 |
+
|
1858 |
// create heading
|
1859 |
+
if ($this->heading && !$append && !empty($fields)) {
|
1860 |
+
foreach ($fields as $key => $value) {
|
1861 |
$entry[] = $this->_enclose_value($value);
|
1862 |
}
|
1863 |
+
$string .= implode($delimiter, $entry) . $this->linefeed;
|
1864 |
$entry = array();
|
1865 |
}
|
1866 |
+
|
1867 |
// create data
|
1868 |
+
foreach ($data as $key => $row) {
|
1869 |
+
foreach ($row as $field => $value) {
|
1870 |
$entry[] = $this->_enclose_value($value);
|
1871 |
}
|
1872 |
+
$string .= implode($delimiter, $entry) . $this->linefeed;
|
1873 |
$entry = array();
|
1874 |
}
|
1875 |
+
|
1876 |
return $string;
|
1877 |
}
|
1878 |
+
|
1879 |
/**
|
1880 |
* Load local file or string
|
1881 |
* @param input local CSV file
|
1882 |
* @return true or false
|
1883 |
*/
|
1884 |
+
function load_data($input = null) {
|
1885 |
$data = null;
|
1886 |
$file = null;
|
1887 |
+
if ($input === null) {
|
1888 |
$file = $this->file;
|
1889 |
+
} elseif (file_exists($input)) {
|
1890 |
$file = $input;
|
1891 |
} else {
|
1892 |
$data = $input;
|
1893 |
}
|
1894 |
+
if (!empty($data) || $data = $this->_rfile($file)) {
|
1895 |
+
if ($this->file != $file) {
|
1896 |
+
$this->file = $file;
|
1897 |
+
}
|
1898 |
+
if (preg_match('/\.php$/i', $file) && preg_match('/<\?.*?\?>(.*)/ims', $data, $strip)) {
|
1899 |
$data = ltrim($strip[1]);
|
1900 |
}
|
1901 |
+
if ($this->convert_encoding) {
|
1902 |
+
$data = iconv($this->input_encoding, $this->output_encoding, $data);
|
1903 |
+
}
|
1904 |
+
if (substr($data, -1) != "\n") {
|
1905 |
+
$data .= "\n";
|
1906 |
+
}
|
1907 |
$this->file_data = &$data;
|
1908 |
return true;
|
1909 |
}
|
1910 |
return false;
|
1911 |
}
|
1912 |
+
|
1913 |
+
|
1914 |
// ==============================================
|
1915 |
// ----- [ Internal Functions ] -----------------
|
1916 |
// ==============================================
|
1917 |
+
|
1918 |
/**
|
1919 |
* Validate a row against specified conditions
|
1920 |
* @param row array with values from a row
|
1921 |
+
* @param conditions specified conditions that the row must match
|
1922 |
* @return true of false
|
1923 |
*/
|
1924 |
+
function _validate_row_conditions($row = array(), $conditions = null) {
|
1925 |
+
if (!empty($row)) {
|
1926 |
+
if (!empty($conditions)) {
|
1927 |
+
$conditions = (strpos($conditions, ' OR ') !== false) ? explode(' OR ', $conditions) : array($conditions);
|
1928 |
$or = '';
|
1929 |
+
foreach ($conditions as $key => $value) {
|
1930 |
+
if (strpos($value, ' AND ') !== false) {
|
1931 |
$value = explode(' AND ', $value);
|
1932 |
$and = '';
|
1933 |
+
foreach ($value as $k => $v) {
|
1934 |
$and .= $this->_validate_row_condition($row, $v);
|
1935 |
}
|
1936 |
+
$or .= (strpos($and, '0') !== false) ? '0' : '1';
|
1937 |
} else {
|
1938 |
$or .= $this->_validate_row_condition($row, $value);
|
1939 |
}
|
1940 |
}
|
1941 |
+
return (strpos($or, '1') !== false) ? true : false;
|
1942 |
}
|
1943 |
return true;
|
1944 |
}
|
1945 |
return false;
|
1946 |
}
|
1947 |
+
|
1948 |
/**
|
1949 |
* Validate a row against a single condition
|
1950 |
* @param row array with values from a row
|
1951 |
+
* @param condition specified condition that the row must match
|
1952 |
* @return true of false
|
1953 |
*/
|
1954 |
+
function _validate_row_condition($row, $condition) {
|
1955 |
+
$operators = array('=', 'equals', 'is', '!=', 'is not', '<', 'is less than', '>', 'is greater than', '<=', 'is less than or equals', '>=', 'is greater than or equals', 'contains', 'does not contain',);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1956 |
$operators_regex = array();
|
1957 |
+
foreach ($operators as $value) {
|
1958 |
$operators_regex[] = preg_quote($value, '/');
|
1959 |
}
|
1960 |
$operators_regex = implode('|', $operators_regex);
|
1961 |
+
if (preg_match('/^(.+) (' . $operators_regex . ') (.+)$/i', trim($condition), $capture)) {
|
1962 |
$field = $capture[1];
|
1963 |
$op = $capture[2];
|
1964 |
$value = $capture[3];
|
1965 |
+
if (preg_match('/^([\'\"]{1})(.*)([\'\"]{1})$/i', $value, $capture)) {
|
1966 |
+
if ($capture[1] == $capture[3]) {
|
1967 |
$value = $capture[2];
|
1968 |
$value = str_replace("\\n", "\n", $value);
|
1969 |
$value = str_replace("\\r", "\r", $value);
|
1971 |
$value = stripslashes($value);
|
1972 |
}
|
1973 |
}
|
1974 |
+
if (array_key_exists($field, $row)) {
|
1975 |
+
if (($op == '=' || $op == 'equals' || $op == 'is') && $row[$field] == $value) {
|
1976 |
return '1';
|
1977 |
+
} elseif (($op == '!=' || $op == 'is not') && $row[$field] != $value) {
|
1978 |
return '1';
|
1979 |
+
} elseif (($op == '<' || $op == 'is less than') && $row[$field] < $value) {
|
1980 |
return '1';
|
1981 |
+
} elseif (($op == '>' || $op == 'is greater than') && $row[$field] > $value) {
|
1982 |
return '1';
|
1983 |
+
} elseif (($op == '<=' || $op == 'is less than or equals') && $row[$field] <= $value) {
|
1984 |
return '1';
|
1985 |
+
} elseif (($op == '>=' || $op == 'is greater than or equals') && $row[$field] >= $value) {
|
1986 |
return '1';
|
1987 |
+
} elseif ($op == 'contains' && preg_match('/' . preg_quote($value, '/') . '/i', $row[$field])) {
|
1988 |
return '1';
|
1989 |
+
} elseif ($op == 'does not contain' && !preg_match('/' . preg_quote($value, '/') . '/i', $row[$field])) {
|
1990 |
return '1';
|
1991 |
} else {
|
1992 |
return '0';
|
1995 |
}
|
1996 |
return '1';
|
1997 |
}
|
1998 |
+
|
1999 |
/**
|
2000 |
* Validates if the row is within the offset or not if sorting is disabled
|
2001 |
* @param current_row the current row number being processed
|
2002 |
* @return true of false
|
2003 |
*/
|
2004 |
+
function _validate_offset($current_row) {
|
2005 |
+
if ($this->sort_by === null && $this->offset !== null && $current_row < $this->offset) {
|
2006 |
+
return false;
|
2007 |
+
}
|
2008 |
return true;
|
2009 |
}
|
2010 |
+
|
2011 |
/**
|
2012 |
* Enclose values if needed
|
2013 |
* - only used by unparse()
|
2014 |
* @param value string to process
|
2015 |
* @return Processed value
|
2016 |
*/
|
2017 |
+
function _enclose_value($value = null) {
|
2018 |
+
if ($value !== null && $value != '') {
|
2019 |
$delimiter = preg_quote($this->delimiter, '/');
|
2020 |
$enclosure = preg_quote($this->enclosure, '/');
|
2021 |
+
if (preg_match("/" . $delimiter . "|" . $enclosure . "|\n|\r/i", $value) || ($value{0} == ' ' || substr($value, -1) == ' ')) {
|
2022 |
+
$value = str_replace($this->enclosure, $this->enclosure . $this->enclosure, $value);
|
2023 |
+
$value = $this->enclosure . $value . $this->enclosure;
|
2024 |
}
|
2025 |
}
|
2026 |
return $value;
|
2027 |
}
|
2028 |
+
|
2029 |
/**
|
2030 |
* Check file data
|
2031 |
* @param file local filename
|
2032 |
* @return true or false
|
2033 |
*/
|
2034 |
+
function _check_data($file = null) {
|
2035 |
+
if (empty($this->file_data)) {
|
2036 |
+
if ($file === null) {
|
2037 |
+
$file = $this->file;
|
2038 |
+
}
|
2039 |
return $this->load_data($file);
|
2040 |
}
|
2041 |
return true;
|
2042 |
}
|
2043 |
+
|
2044 |
+
|
2045 |
/**
|
2046 |
* Check if passed info might be delimiter
|
2047 |
* - only used by find_delimiter()
|
2048 |
* @return special string used for delimiter selection, or false
|
2049 |
*/
|
2050 |
+
function _check_count($char, $array, $depth, $preferred) {
|
2051 |
+
if ($depth == count($array)) {
|
2052 |
$first = null;
|
2053 |
$equal = null;
|
2054 |
$almost = false;
|
2055 |
+
foreach ($array as $key => $value) {
|
2056 |
+
if ($first == null) {
|
2057 |
$first = $value;
|
2058 |
+
} elseif ($value == $first && $equal !== false) {
|
2059 |
$equal = true;
|
2060 |
+
} elseif ($value == $first + 1 && $equal !== false) {
|
2061 |
$equal = true;
|
2062 |
$almost = true;
|
2063 |
} else {
|
2064 |
$equal = false;
|
2065 |
}
|
2066 |
}
|
2067 |
+
if ($equal) {
|
2068 |
+
$match = ($almost) ? 2 : 1;
|
2069 |
$pref = strpos($preferred, $char);
|
2070 |
+
$pref = ($pref !== false) ? str_pad($pref, 3, '0', STR_PAD_LEFT) : '999';
|
2071 |
+
return $pref . $match . '.' . (99999 - str_pad($first, 5, '0', STR_PAD_LEFT));
|
2072 |
+
} else {
|
2073 |
+
return false;
|
2074 |
+
}
|
2075 |
}
|
2076 |
}
|
2077 |
+
|
2078 |
/**
|
2079 |
* Read local file
|
2080 |
* @param file local filename
|
2081 |
* @return Data from file, or false on failure
|
2082 |
*/
|
2083 |
+
function _rfile($file = null) {
|
2084 |
+
if (is_readable($file)) {
|
2085 |
+
if (!($fh = fopen($file, 'r'))) {
|
2086 |
+
return false;
|
2087 |
+
}
|
2088 |
$data = fread($fh, filesize($file));
|
2089 |
fclose($fh);
|
2090 |
return $data;
|
2100 |
* @param lock flock() mode
|
2101 |
* @return true or false
|
2102 |
*/
|
2103 |
+
function _wfile($file, $string = '', $mode = 'wb', $lock = 2) {
|
2104 |
+
if ($fp = fopen($file, $mode)) {
|
2105 |
flock($fp, $lock);
|
2106 |
$re = fwrite($fp, $string);
|
2107 |
$re2 = fclose($fp);
|
2108 |
+
if ($re != false && $re2 != false) {
|
2109 |
+
return true;
|
2110 |
+
}
|
2111 |
}
|
2112 |
return false;
|
2113 |
}
|
2114 |
+
|
2115 |
}
|
2116 |
|
index.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/******************************
|
3 |
* Plugin Name: WP Ultimate CSV Importer
|
4 |
* Description: A plugin that helps to import the data's from a CSV file.
|
5 |
-
* Version: 3.8.
|
6 |
* Author: smackcoders.com
|
7 |
* Text Domain: wp-ultimate-csv-importer
|
8 |
* Domain Path: /languages
|
@@ -167,13 +167,16 @@ function action_csv_imp_admin_init() {
|
|
167 |
wp_enqueue_style('jquery-fileupload', plugins_url('css/jquery.fileupload.css', __FILE__));
|
168 |
wp_enqueue_style('bootstrap-css', plugins_url('css/bootstrap.css', __FILE__));
|
169 |
wp_enqueue_style('ultimate-importer-css', plugins_url('css/main.css', __FILE__));
|
|
|
170 |
// For chart js
|
171 |
wp_enqueue_script('high_chart', plugins_url('js/highcharts.js', __FILE__));
|
172 |
wp_enqueue_script('export_module', plugins_url('js/exporting.js', __FILE__));
|
173 |
wp_enqueue_script('pie_chart', plugins_url('js/highcharts-3d.js', __FILE__));
|
174 |
wp_enqueue_script('dropdown', plugins_url('js/dropdown.js', __FILE__));
|
175 |
-
|
|
|
176 |
wp_enqueue_script('data', plugins_url('js/dashchart.js', __FILE__));
|
|
|
177 |
|
178 |
}
|
179 |
}
|
@@ -268,6 +271,8 @@ function wpcsvimporter_add_dashboard_widgets() {
|
|
268 |
wp_enqueue_script('high_chart', plugins_url('js/highcharts.js', __FILE__));
|
269 |
wp_enqueue_script('export_module', plugins_url('js/exporting.js', __FILE__));
|
270 |
wp_enqueue_script('pie_chart', plugins_url('js/highcharts-3d.js', __FILE__));
|
|
|
|
|
271 |
wp_add_dashboard_widget('wpcsvimporter_dashboard_piehart', 'Ultimate-CSV-Importer-Statistics', 'roundchart',$screen = get_current_screen() , 'advanced' ,'high' );
|
272 |
wp_add_dashboard_widget('wpcsvimporter_dashboard_linechart', 'Ultimate-CSV-Importer-Activity', 'linetwoStats',$screen = get_current_screen(),'advanced','high');
|
273 |
}
|
2 |
/******************************
|
3 |
* Plugin Name: WP Ultimate CSV Importer
|
4 |
* Description: A plugin that helps to import the data's from a CSV file.
|
5 |
+
* Version: 3.8.4
|
6 |
* Author: smackcoders.com
|
7 |
* Text Domain: wp-ultimate-csv-importer
|
8 |
* Domain Path: /languages
|
167 |
wp_enqueue_style('jquery-fileupload', plugins_url('css/jquery.fileupload.css', __FILE__));
|
168 |
wp_enqueue_style('bootstrap-css', plugins_url('css/bootstrap.css', __FILE__));
|
169 |
wp_enqueue_style('ultimate-importer-css', plugins_url('css/main.css', __FILE__));
|
170 |
+
wp_enqueue_style('morris-css', plugins_url('css/morris.css', __FILE__));
|
171 |
// For chart js
|
172 |
wp_enqueue_script('high_chart', plugins_url('js/highcharts.js', __FILE__));
|
173 |
wp_enqueue_script('export_module', plugins_url('js/exporting.js', __FILE__));
|
174 |
wp_enqueue_script('pie_chart', plugins_url('js/highcharts-3d.js', __FILE__));
|
175 |
wp_enqueue_script('dropdown', plugins_url('js/dropdown.js', __FILE__));
|
176 |
+
wp_enqueue_script('raphael-min-js', plugins_url('js/raphael-min.js', __FILE__));
|
177 |
+
wp_enqueue_script('morris-min-js', plugins_url('js/morris.min.js', __FILE__));
|
178 |
wp_enqueue_script('data', plugins_url('js/dashchart.js', __FILE__));
|
179 |
+
//wp_enqueue_script('jquery-min-js', plugins_url('js/jquery.min.js', __FILE__));
|
180 |
|
181 |
}
|
182 |
}
|
271 |
wp_enqueue_script('high_chart', plugins_url('js/highcharts.js', __FILE__));
|
272 |
wp_enqueue_script('export_module', plugins_url('js/exporting.js', __FILE__));
|
273 |
wp_enqueue_script('pie_chart', plugins_url('js/highcharts-3d.js', __FILE__));
|
274 |
+
wp_enqueue_script('raphael-min-js', plugins_url('js/raphael-min.js', __FILE__));
|
275 |
+
wp_enqueue_script('morris-min-js', plugins_url('js/morris.min.js', __FILE__));
|
276 |
wp_add_dashboard_widget('wpcsvimporter_dashboard_piehart', 'Ultimate-CSV-Importer-Statistics', 'roundchart',$screen = get_current_screen() , 'advanced' ,'high' );
|
277 |
wp_add_dashboard_widget('wpcsvimporter_dashboard_linechart', 'Ultimate-CSV-Importer-Activity', 'linetwoStats',$screen = get_current_screen(),'advanced','high');
|
278 |
}
|
js/bootstrap-collapse.js
CHANGED
@@ -17,120 +17,120 @@
|
|
17 |
* limitations under the License.
|
18 |
* ============================================================ */
|
19 |
|
20 |
-
!function(
|
21 |
|
22 |
-
|
23 |
|
24 |
-
|
25 |
-
|
26 |
-
|
27 |
|
28 |
-
|
29 |
-
|
|
|
|
|
|
|
30 |
}
|
31 |
|
32 |
-
|
33 |
-
}
|
34 |
|
35 |
-
|
36 |
|
37 |
-
|
|
|
|
|
|
|
38 |
|
39 |
-
|
40 |
-
|
41 |
-
|
42 |
-
|
|
|
43 |
|
44 |
-
|
45 |
-
|
46 |
-
|
47 |
-
|
48 |
-
|
49 |
|
50 |
-
|
51 |
-
|
52 |
-
|
53 |
-
hasData || actives.data('collapse', null)
|
54 |
-
}
|
55 |
|
56 |
-
|
57 |
-
this.transition('addClass', 'show', 'shown')
|
58 |
-
this.$element[dimension](this.$element[0][scroll])
|
59 |
|
60 |
-
|
|
|
|
|
|
|
|
|
|
|
61 |
|
62 |
-
|
63 |
-
|
64 |
-
|
65 |
-
|
66 |
-
|
67 |
-
|
|
|
|
|
|
|
|
|
68 |
|
69 |
-
|
70 |
-
|
|
|
|
|
|
|
|
|
71 |
|
72 |
-
|
73 |
-
|
74 |
-
|
75 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
76 |
|
77 |
-
this.$element.addClass('collapse')
|
78 |
}
|
79 |
|
80 |
-
|
81 |
-
|
82 |
-
|
83 |
-
|
84 |
-
|
85 |
-
|
86 |
-
|
87 |
-
|
88 |
-
|
89 |
-
|
90 |
-
|
91 |
-
|
92 |
-
this.$element.one($.support.transition.end, complete) :
|
93 |
-
complete()
|
94 |
-
}
|
95 |
-
|
96 |
-
, toggle: function () {
|
97 |
-
this[this.$element.hasClass('in') ? 'hide' : 'show']()
|
98 |
-
}
|
99 |
-
|
100 |
-
}
|
101 |
-
|
102 |
-
/* COLLAPSIBLE PLUGIN DEFINITION
|
103 |
-
* ============================== */
|
104 |
-
|
105 |
-
$.fn.collapse = function ( option ) {
|
106 |
-
return this.each(function () {
|
107 |
-
var $this = $(this)
|
108 |
-
, data = $this.data('collapse')
|
109 |
-
, options = typeof option == 'object' && option
|
110 |
-
if (!data) $this.data('collapse', (data = new Collapse(this, options)))
|
111 |
-
if (typeof option == 'string') data[option]()
|
112 |
-
})
|
113 |
-
}
|
114 |
|
115 |
-
|
116 |
-
|
117 |
-
|
118 |
|
119 |
-
|
120 |
|
121 |
|
122 |
-
|
123 |
-
|
124 |
|
125 |
-
|
126 |
-
|
127 |
-
|
128 |
-
|
129 |
-
|
130 |
-
|
131 |
-
|
132 |
-
|
|
|
133 |
})
|
134 |
-
})
|
135 |
|
136 |
-
}(
|
17 |
* limitations under the License.
|
18 |
* ============================================================ */
|
19 |
|
20 |
+
!function ($) {
|
21 |
|
22 |
+
"use strict"
|
23 |
|
24 |
+
var Collapse = function (element, options) {
|
25 |
+
this.$element = $(element)
|
26 |
+
this.options = $.extend({}, $.fn.collapse.defaults, options)
|
27 |
|
28 |
+
if (this.options["parent"]) {
|
29 |
+
this.$parent = $(this.options["parent"])
|
30 |
+
}
|
31 |
+
|
32 |
+
this.options.toggle && this.toggle()
|
33 |
}
|
34 |
|
35 |
+
Collapse.prototype = {
|
|
|
36 |
|
37 |
+
constructor: Collapse
|
38 |
|
39 |
+
, dimension: function () {
|
40 |
+
var hasWidth = this.$element.hasClass('width')
|
41 |
+
return hasWidth ? 'width' : 'height'
|
42 |
+
}
|
43 |
|
44 |
+
, show: function () {
|
45 |
+
var dimension = this.dimension()
|
46 |
+
, scroll = $.camelCase(['scroll', dimension].join('-'))
|
47 |
+
, actives = this.$parent && this.$parent.find('.in')
|
48 |
+
, hasData
|
49 |
|
50 |
+
if (actives && actives.length) {
|
51 |
+
hasData = actives.data('collapse')
|
52 |
+
actives.collapse('hide')
|
53 |
+
hasData || actives.data('collapse', null)
|
54 |
+
}
|
55 |
|
56 |
+
this.$element[dimension](0)
|
57 |
+
this.transition('addClass', 'show', 'shown')
|
58 |
+
this.$element[dimension](this.$element[0][scroll])
|
|
|
|
|
59 |
|
60 |
+
}
|
|
|
|
|
61 |
|
62 |
+
, hide: function () {
|
63 |
+
var dimension = this.dimension()
|
64 |
+
this.reset(this.$element[dimension]())
|
65 |
+
this.transition('removeClass', 'hide', 'hidden')
|
66 |
+
this.$element[dimension](0)
|
67 |
+
}
|
68 |
|
69 |
+
, reset: function (size) {
|
70 |
+
var dimension = this.dimension()
|
71 |
+
|
72 |
+
this.$element
|
73 |
+
.removeClass('collapse')
|
74 |
+
[dimension](size || 'auto')
|
75 |
+
[0].offsetWidth
|
76 |
+
|
77 |
+
this.$element.addClass('collapse')
|
78 |
+
}
|
79 |
|
80 |
+
, transition: function (method, startEvent, completeEvent) {
|
81 |
+
var that = this
|
82 |
+
, complete = function () {
|
83 |
+
if (startEvent == 'show') that.reset()
|
84 |
+
that.$element.trigger(completeEvent)
|
85 |
+
}
|
86 |
|
87 |
+
this.$element
|
88 |
+
.trigger(startEvent)
|
89 |
+
[method]('in')
|
90 |
+
|
91 |
+
$.support.transition && this.$element.hasClass('collapse') ?
|
92 |
+
this.$element.one($.support.transition.end, complete) :
|
93 |
+
complete()
|
94 |
+
}
|
95 |
+
|
96 |
+
, toggle: function () {
|
97 |
+
this[this.$element.hasClass('in') ? 'hide' : 'show']()
|
98 |
+
}
|
99 |
|
|
|
100 |
}
|
101 |
|
102 |
+
/* COLLAPSIBLE PLUGIN DEFINITION
|
103 |
+
* ============================== */
|
104 |
+
|
105 |
+
$.fn.collapse = function (option) {
|
106 |
+
return this.each(function () {
|
107 |
+
var $this = $(this)
|
108 |
+
, data = $this.data('collapse')
|
109 |
+
, options = typeof option == 'object' && option
|
110 |
+
if (!data) $this.data('collapse', (data = new Collapse(this, options)))
|
111 |
+
if (typeof option == 'string') data[option]()
|
112 |
+
})
|
113 |
+
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
114 |
|
115 |
+
$.fn.collapse.defaults = {
|
116 |
+
toggle: true
|
117 |
+
}
|
118 |
|
119 |
+
$.fn.collapse.Constructor = Collapse
|
120 |
|
121 |
|
122 |
+
/* COLLAPSIBLE DATA-API
|
123 |
+
* ==================== */
|
124 |
|
125 |
+
$(function () {
|
126 |
+
$('body').on('click.collapse.data-api', '[data-toggle=collapse]', function (e) {
|
127 |
+
var $this = $(this), href
|
128 |
+
, target = $this.attr('data-target')
|
129 |
+
|| e.preventDefault()
|
130 |
+
|| (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '') //strip for ie7
|
131 |
+
, option = $(target).data('collapse') ? 'toggle' : $this.data()
|
132 |
+
$(target).collapse(option)
|
133 |
+
})
|
134 |
})
|
|
|
135 |
|
136 |
+
}(window.jQuery);
|
js/bootstrap.min.js
CHANGED
@@ -1,6 +1,603 @@
|
|
1 |
/**
|
2 |
-
* bootstrap.js v3.0.0 by @fat and @mdo
|
3 |
-
* Copyright 2013 Twitter Inc.
|
4 |
-
* http://www.apache.org/licenses/LICENSE-2.0
|
5 |
-
*/
|
6 |
-
if(!jQuery)throw new Error("Bootstrap requires jQuery");+function(a){"use strict";function b(){var a=document.createElement("bootstrap"),b={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd otransitionend",transition:"transitionend"};for(var c in b)if(void 0!==a.style[c])return{end:b[c]}}a.fn.emulateTransitionEnd=function(b){var c=!1,d=this;a(this).one(a.support.transition.end,function(){c=!0});var e=function(){c||a(d).trigger(a.support.transition.end)};return setTimeout(e,b),this},a(function(){a.support.transition=b()})}(window.jQuery),+function(a){"use strict";var b='[data-dismiss="alert"]',c=function(c){a(c).on("click",b,this.close)};c.prototype.close=function(b){function c(){f.trigger("closed.bs.alert").remove()}var d=a(this),e=d.attr("data-target");e||(e=d.attr("href"),e=e&&e.replace(/.*(?=#[^\s]*$)/,""));var f=a(e);b&&b.preventDefault(),f.length||(f=d.hasClass("alert")?d:d.parent()),f.trigger(b=a.Event("close.bs.alert")),b.isDefaultPrevented()||(f.removeClass("in"),a.support.transition&&f.hasClass("fade")?f.one(a.support.transition.end,c).emulateTransitionEnd(150):c())};var d=a.fn.alert;a.fn.alert=function(b){return this.each(function(){var d=a(this),e=d.data("bs.alert");e||d.data("bs.alert",e=new c(this)),"string"==typeof b&&e[b].call(d)})},a.fn.alert.Constructor=c,a.fn.alert.noConflict=function(){return a.fn.alert=d,this},a(document).on("click.bs.alert.data-api",b,c.prototype.close)}(window.jQuery),+function(a){"use strict";var b=function(c,d){this.$element=a(c),this.options=a.extend({},b.DEFAULTS,d)};b.DEFAULTS={loadingText:"loading..."},b.prototype.setState=function(a){var b="disabled",c=this.$element,d=c.is("input")?"val":"html",e=c.data();a+="Text",e.resetText||c.data("resetText",c[d]()),c[d](e[a]||this.options[a]),setTimeout(function(){"loadingText"==a?c.addClass(b).attr(b,b):c.removeClass(b).removeAttr(b)},0)},b.prototype.toggle=function(){var a=this.$element.closest('[data-toggle="buttons"]');if(a.length){var b=this.$element.find("input").prop("checked",!this.$element.hasClass("active")).trigger("change");"radio"===b.prop("type")&&a.find(".active").removeClass("active")}this.$element.toggleClass("active")};var c=a.fn.button;a.fn.button=function(c){return this.each(function(){var d=a(this),e=d.data("bs.button"),f="object"==typeof c&&c;e||d.data("bs.button",e=new b(this,f)),"toggle"==c?e.toggle():c&&e.setState(c)})},a.fn.button.Constructor=b,a.fn.button.noConflict=function(){return a.fn.button=c,this},a(document).on("click.bs.button.data-api","[data-toggle^=button]",function(b){var c=a(b.target);c.hasClass("btn")||(c=c.closest(".btn")),c.button("toggle"),b.preventDefault()})}(window.jQuery),+function(a){"use strict";var b=function(b,c){this.$element=a(b),this.$indicators=this.$element.find(".carousel-indicators"),this.options=c,this.paused=this.sliding=this.interval=this.$active=this.$items=null,"hover"==this.options.pause&&this.$element.on("mouseenter",a.proxy(this.pause,this)).on("mouseleave",a.proxy(this.cycle,this))};b.DEFAULTS={interval:5e3,pause:"hover",wrap:!0},b.prototype.cycle=function(b){return b||(this.paused=!1),this.interval&&clearInterval(this.interval),this.options.interval&&!this.paused&&(this.interval=setInterval(a.proxy(this.next,this),this.options.interval)),this},b.prototype.getActiveIndex=function(){return this.$active=this.$element.find(".item.active"),this.$items=this.$active.parent().children(),this.$items.index(this.$active)},b.prototype.to=function(b){var c=this,d=this.getActiveIndex();return b>this.$items.length-1||0>b?void 0:this.sliding?this.$element.one("slid",function(){c.to(b)}):d==b?this.pause().cycle():this.slide(b>d?"next":"prev",a(this.$items[b]))},b.prototype.pause=function(b){return b||(this.paused=!0),this.$element.find(".next, .prev").length&&a.support.transition.end&&(this.$element.trigger(a.support.transition.end),this.cycle(!0)),this.interval=clearInterval(this.interval),this},b.prototype.next=function(){return this.sliding?void 0:this.slide("next")},b.prototype.prev=function(){return this.sliding?void 0:this.slide("prev")},b.prototype.slide=function(b,c){var d=this.$element.find(".item.active"),e=c||d[b](),f=this.interval,g="next"==b?"left":"right",h="next"==b?"first":"last",i=this;if(!e.length){if(!this.options.wrap)return;e=this.$element.find(".item")[h]()}this.sliding=!0,f&&this.pause();var j=a.Event("slide.bs.carousel",{relatedTarget:e[0],direction:g});if(!e.hasClass("active")){if(this.$indicators.length&&(this.$indicators.find(".active").removeClass("active"),this.$element.one("slid",function(){var b=a(i.$indicators.children()[i.getActiveIndex()]);b&&b.addClass("active")})),a.support.transition&&this.$element.hasClass("slide")){if(this.$element.trigger(j),j.isDefaultPrevented())return;e.addClass(b),e[0].offsetWidth,d.addClass(g),e.addClass(g),d.one(a.support.transition.end,function(){e.removeClass([b,g].join(" ")).addClass("active"),d.removeClass(["active",g].join(" ")),i.sliding=!1,setTimeout(function(){i.$element.trigger("slid")},0)}).emulateTransitionEnd(600)}else{if(this.$element.trigger(j),j.isDefaultPrevented())return;d.removeClass("active"),e.addClass("active"),this.sliding=!1,this.$element.trigger("slid")}return f&&this.cycle(),this}};var c=a.fn.carousel;a.fn.carousel=function(c){return this.each(function(){var d=a(this),e=d.data("bs.carousel"),f=a.extend({},b.DEFAULTS,d.data(),"object"==typeof c&&c),g="string"==typeof c?c:f.slide;e||d.data("bs.carousel",e=new b(this,f)),"number"==typeof c?e.to(c):g?e[g]():f.interval&&e.pause().cycle()})},a.fn.carousel.Constructor=b,a.fn.carousel.noConflict=function(){return a.fn.carousel=c,this},a(document).on("click.bs.carousel.data-api","[data-slide], [data-slide-to]",function(b){var c,d=a(this),e=a(d.attr("data-target")||(c=d.attr("href"))&&c.replace(/.*(?=#[^\s]+$)/,"")),f=a.extend({},e.data(),d.data()),g=d.attr("data-slide-to");g&&(f.interval=!1),e.carousel(f),(g=d.attr("data-slide-to"))&&e.data("bs.carousel").to(g),b.preventDefault()}),a(window).on("load",function(){a('[data-ride="carousel"]').each(function(){var b=a(this);b.carousel(b.data())})})}(window.jQuery),+function(a){"use strict";var b=function(c,d){this.$element=a(c),this.options=a.extend({},b.DEFAULTS,d),this.transitioning=null,this.options.parent&&(this.$parent=a(this.options.parent)),this.options.toggle&&this.toggle()};b.DEFAULTS={toggle:!0},b.prototype.dimension=function(){var a=this.$element.hasClass("width");return a?"width":"height"},b.prototype.show=function(){if(!this.transitioning&&!this.$element.hasClass("in")){var b=a.Event("show.bs.collapse");if(this.$element.trigger(b),!b.isDefaultPrevented()){var c=this.$parent&&this.$parent.find("> .panel > .in");if(c&&c.length){var d=c.data("bs.collapse");if(d&&d.transitioning)return;c.collapse("hide"),d||c.data("bs.collapse",null)}var e=this.dimension();this.$element.removeClass("collapse").addClass("collapsing")[e](0),this.transitioning=1;var f=function(){this.$element.removeClass("collapsing").addClass("in")[e]("auto"),this.transitioning=0,this.$element.trigger("shown.bs.collapse")};if(!a.support.transition)return f.call(this);var g=a.camelCase(["scroll",e].join("-"));this.$element.one(a.support.transition.end,a.proxy(f,this)).emulateTransitionEnd(350)[e](this.$element[0][g])}}},b.prototype.hide=function(){if(!this.transitioning&&this.$element.hasClass("in")){var b=a.Event("hide.bs.collapse");if(this.$element.trigger(b),!b.isDefaultPrevented()){var c=this.dimension();this.$element[c](this.$element[c]())[0].offsetHeight,this.$element.addClass("collapsing").removeClass("collapse").removeClass("in"),this.transitioning=1;var d=function(){this.transitioning=0,this.$element.trigger("hidden.bs.collapse").removeClass("collapsing").addClass("collapse")};return a.support.transition?(this.$element[c](0).one(a.support.transition.end,a.proxy(d,this)).emulateTransitionEnd(350),void 0):d.call(this)}}},b.prototype.toggle=function(){this[this.$element.hasClass("in")?"hide":"show"]()};var c=a.fn.collapse;a.fn.collapse=function(c){return this.each(function(){var d=a(this),e=d.data("bs.collapse"),f=a.extend({},b.DEFAULTS,d.data(),"object"==typeof c&&c);e||d.data("bs.collapse",e=new b(this,f)),"string"==typeof c&&e[c]()})},a.fn.collapse.Constructor=b,a.fn.collapse.noConflict=function(){return a.fn.collapse=c,this},a(document).on("click.bs.collapse.data-api","[data-toggle=collapse]",function(b){var c,d=a(this),e=d.attr("data-target")||b.preventDefault()||(c=d.attr("href"))&&c.replace(/.*(?=#[^\s]+$)/,""),f=a(e),g=f.data("bs.collapse"),h=g?"toggle":d.data(),i=d.attr("data-parent"),j=i&&a(i);g&&g.transitioning||(j&&j.find('[data-toggle=collapse][data-parent="'+i+'"]').not(d).addClass("collapsed"),d[f.hasClass("in")?"addClass":"removeClass"]("collapsed")),f.collapse(h)})}(window.jQuery),+function(a){"use strict";function b(){a(d).remove(),a(e).each(function(b){var d=c(a(this));d.hasClass("open")&&(d.trigger(b=a.Event("hide.bs.dropdown")),b.isDefaultPrevented()||d.removeClass("open").trigger("hidden.bs.dropdown"))})}function c(b){var c=b.attr("data-target");c||(c=b.attr("href"),c=c&&/#/.test(c)&&c.replace(/.*(?=#[^\s]*$)/,""));var d=c&&a(c);return d&&d.length?d:b.parent()}var d=".dropdown-backdrop",e="[data-toggle=dropdown]",f=function(b){a(b).on("click.bs.dropdown",this.toggle)};f.prototype.toggle=function(d){var e=a(this);if(!e.is(".disabled, :disabled")){var f=c(e),g=f.hasClass("open");if(b(),!g){if("ontouchstart"in document.documentElement&&!f.closest(".navbar-nav").length&&a('<div class="dropdown-backdrop"/>').insertAfter(a(this)).on("click",b),f.trigger(d=a.Event("show.bs.dropdown")),d.isDefaultPrevented())return;f.toggleClass("open").trigger("shown.bs.dropdown"),e.focus()}return!1}},f.prototype.keydown=function(b){if(/(38|40|27)/.test(b.keyCode)){var d=a(this);if(b.preventDefault(),b.stopPropagation(),!d.is(".disabled, :disabled")){var f=c(d),g=f.hasClass("open");if(!g||g&&27==b.keyCode)return 27==b.which&&f.find(e).focus(),d.click();var h=a("[role=menu] li:not(.divider):visible a",f);if(h.length){var i=h.index(h.filter(":focus"));38==b.keyCode&&i>0&&i--,40==b.keyCode&&i<h.length-1&&i++,~i||(i=0),h.eq(i).focus()}}}};var g=a.fn.dropdown;a.fn.dropdown=function(b){return this.each(function(){var c=a(this),d=c.data("dropdown");d||c.data("dropdown",d=new f(this)),"string"==typeof b&&d[b].call(c)})},a.fn.dropdown.Constructor=f,a.fn.dropdown.noConflict=function(){return a.fn.dropdown=g,this},a(document).on("click.bs.dropdown.data-api",b).on("click.bs.dropdown.data-api",".dropdown form",function(a){a.stopPropagation()}).on("click.bs.dropdown.data-api",e,f.prototype.toggle).on("keydown.bs.dropdown.data-api",e+", [role=menu]",f.prototype.keydown)}(window.jQuery),+function(a){"use strict";var b=function(b,c){this.options=c,this.$element=a(b),this.$backdrop=this.isShown=null,this.options.remote&&this.$element.load(this.options.remote)};b.DEFAULTS={backdrop:!0,keyboard:!0,show:!0},b.prototype.toggle=function(a){return this[this.isShown?"hide":"show"](a)},b.prototype.show=function(b){var c=this,d=a.Event("show.bs.modal",{relatedTarget:b});this.$element.trigger(d),this.isShown||d.isDefaultPrevented()||(this.isShown=!0,this.escape(),this.$element.on("click.dismiss.modal",'[data-dismiss="modal"]',a.proxy(this.hide,this)),this.backdrop(function(){var d=a.support.transition&&c.$element.hasClass("fade");c.$element.parent().length||c.$element.appendTo(document.body),c.$element.show(),d&&c.$element[0].offsetWidth,c.$element.addClass("in").attr("aria-hidden",!1),c.enforceFocus();var e=a.Event("shown.bs.modal",{relatedTarget:b});d?c.$element.find(".modal-dialog").one(a.support.transition.end,function(){c.$element.focus().trigger(e)}).emulateTransitionEnd(300):c.$element.focus().trigger(e)}))},b.prototype.hide=function(b){b&&b.preventDefault(),b=a.Event("hide.bs.modal"),this.$element.trigger(b),this.isShown&&!b.isDefaultPrevented()&&(this.isShown=!1,this.escape(),a(document).off("focusin.bs.modal"),this.$element.removeClass("in").attr("aria-hidden",!0).off("click.dismiss.modal"),a.support.transition&&this.$element.hasClass("fade")?this.$element.one(a.support.transition.end,a.proxy(this.hideModal,this)).emulateTransitionEnd(300):this.hideModal())},b.prototype.enforceFocus=function(){a(document).off("focusin.bs.modal").on("focusin.bs.modal",a.proxy(function(a){this.$element[0]===a.target||this.$element.has(a.target).length||this.$element.focus()},this))},b.prototype.escape=function(){this.isShown&&this.options.keyboard?this.$element.on("keyup.dismiss.bs.modal",a.proxy(function(a){27==a.which&&this.hide()},this)):this.isShown||this.$element.off("keyup.dismiss.bs.modal")},b.prototype.hideModal=function(){var a=this;this.$element.hide(),this.backdrop(function(){a.removeBackdrop(),a.$element.trigger("hidden.bs.modal")})},b.prototype.removeBackdrop=function(){this.$backdrop&&this.$backdrop.remove(),this.$backdrop=null},b.prototype.backdrop=function(b){var c=this.$element.hasClass("fade")?"fade":"";if(this.isShown&&this.options.backdrop){var d=a.support.transition&&c;if(this.$backdrop=a('<div class="modal-backdrop '+c+'" />').appendTo(document.body),this.$element.on("click.dismiss.modal",a.proxy(function(a){a.target===a.currentTarget&&("static"==this.options.backdrop?this.$element[0].focus.call(this.$element[0]):this.hide.call(this))},this)),d&&this.$backdrop[0].offsetWidth,this.$backdrop.addClass("in"),!b)return;d?this.$backdrop.one(a.support.transition.end,b).emulateTransitionEnd(150):b()}else!this.isShown&&this.$backdrop?(this.$backdrop.removeClass("in"),a.support.transition&&this.$element.hasClass("fade")?this.$backdrop.one(a.support.transition.end,b).emulateTransitionEnd(150):b()):b&&b()};var c=a.fn.modal;a.fn.modal=function(c,d){return this.each(function(){var e=a(this),f=e.data("bs.modal"),g=a.extend({},b.DEFAULTS,e.data(),"object"==typeof c&&c);f||e.data("bs.modal",f=new b(this,g)),"string"==typeof c?f[c](d):g.show&&f.show(d)})},a.fn.modal.Constructor=b,a.fn.modal.noConflict=function(){return a.fn.modal=c,this},a(document).on("click.bs.modal.data-api",'[data-toggle="modal"]',function(b){var c=a(this),d=c.attr("href"),e=a(c.attr("data-target")||d&&d.replace(/.*(?=#[^\s]+$)/,"")),f=e.data("modal")?"toggle":a.extend({remote:!/#/.test(d)&&d},e.data(),c.data());b.preventDefault(),e.modal(f,this).one("hide",function(){c.is(":visible")&&c.focus()})}),a(document).on("show.bs.modal",".modal",function(){a(document.body).addClass("modal-open")}).on("hidden.bs.modal",".modal",function(){a(document.body).removeClass("modal-open")})}(window.jQuery),+function(a){"use strict";var b=function(a,b){this.type=this.options=this.enabled=this.timeout=this.hoverState=this.$element=null,this.init("tooltip",a,b)};b.DEFAULTS={animation:!0,placement:"top",selector:!1,template:'<div class="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>',trigger:"hover focus",title:"",delay:0,html:!1,container:!1},b.prototype.init=function(b,c,d){this.enabled=!0,this.type=b,this.$element=a(c),this.options=this.getOptions(d);for(var e=this.options.trigger.split(" "),f=e.length;f--;){var g=e[f];if("click"==g)this.$element.on("click."+this.type,this.options.selector,a.proxy(this.toggle,this));else if("manual"!=g){var h="hover"==g?"mouseenter":"focus",i="hover"==g?"mouseleave":"blur";this.$element.on(h+"."+this.type,this.options.selector,a.proxy(this.enter,this)),this.$element.on(i+"."+this.type,this.options.selector,a.proxy(this.leave,this))}}this.options.selector?this._options=a.extend({},this.options,{trigger:"manual",selector:""}):this.fixTitle()},b.prototype.getDefaults=function(){return b.DEFAULTS},b.prototype.getOptions=function(b){return b=a.extend({},this.getDefaults(),this.$element.data(),b),b.delay&&"number"==typeof b.delay&&(b.delay={show:b.delay,hide:b.delay}),b},b.prototype.getDelegateOptions=function(){var b={},c=this.getDefaults();return this._options&&a.each(this._options,function(a,d){c[a]!=d&&(b[a]=d)}),b},b.prototype.enter=function(b){var c=b instanceof this.constructor?b:a(b.currentTarget)[this.type](this.getDelegateOptions()).data("bs."+this.type);return clearTimeout(c.timeout),c.hoverState="in",c.options.delay&&c.options.delay.show?(c.timeout=setTimeout(function(){"in"==c.hoverState&&c.show()},c.options.delay.show),void 0):c.show()},b.prototype.leave=function(b){var c=b instanceof this.constructor?b:a(b.currentTarget)[this.type](this.getDelegateOptions()).data("bs."+this.type);return clearTimeout(c.timeout),c.hoverState="out",c.options.delay&&c.options.delay.hide?(c.timeout=setTimeout(function(){"out"==c.hoverState&&c.hide()},c.options.delay.hide),void 0):c.hide()},b.prototype.show=function(){var b=a.Event("show.bs."+this.type);if(this.hasContent()&&this.enabled){if(this.$element.trigger(b),b.isDefaultPrevented())return;var c=this.tip();this.setContent(),this.options.animation&&c.addClass("fade");var d="function"==typeof this.options.placement?this.options.placement.call(this,c[0],this.$element[0]):this.options.placement,e=/\s?auto?\s?/i,f=e.test(d);f&&(d=d.replace(e,"")||"top"),c.detach().css({top:0,left:0,display:"block"}).addClass(d),this.options.container?c.appendTo(this.options.container):c.insertAfter(this.$element);var g=this.getPosition(),h=c[0].offsetWidth,i=c[0].offsetHeight;if(f){var j=this.$element.parent(),k=d,l=document.documentElement.scrollTop||document.body.scrollTop,m="body"==this.options.container?window.innerWidth:j.outerWidth(),n="body"==this.options.container?window.innerHeight:j.outerHeight(),o="body"==this.options.container?0:j.offset().left;d="bottom"==d&&g.top+g.height+i-l>n?"top":"top"==d&&g.top-l-i<0?"bottom":"right"==d&&g.right+h>m?"left":"left"==d&&g.left-h<o?"right":d,c.removeClass(k).addClass(d)}var p=this.getCalculatedOffset(d,g,h,i);this.applyPlacement(p,d),this.$element.trigger("shown.bs."+this.type)}},b.prototype.applyPlacement=function(a,b){var c,d=this.tip(),e=d[0].offsetWidth,f=d[0].offsetHeight,g=parseInt(d.css("margin-top"),10),h=parseInt(d.css("margin-left"),10);isNaN(g)&&(g=0),isNaN(h)&&(h=0),a.top=a.top+g,a.left=a.left+h,d.offset(a).addClass("in");var i=d[0].offsetWidth,j=d[0].offsetHeight;if("top"==b&&j!=f&&(c=!0,a.top=a.top+f-j),/bottom|top/.test(b)){var k=0;a.left<0&&(k=-2*a.left,a.left=0,d.offset(a),i=d[0].offsetWidth,j=d[0].offsetHeight),this.replaceArrow(k-e+i,i,"left")}else this.replaceArrow(j-f,j,"top");c&&d.offset(a)},b.prototype.replaceArrow=function(a,b,c){this.arrow().css(c,a?50*(1-a/b)+"%":"")},b.prototype.setContent=function(){var a=this.tip(),b=this.getTitle();a.find(".tooltip-inner")[this.options.html?"html":"text"](b),a.removeClass("fade in top bottom left right")},b.prototype.hide=function(){function b(){"in"!=c.hoverState&&d.detach()}var c=this,d=this.tip(),e=a.Event("hide.bs."+this.type);return this.$element.trigger(e),e.isDefaultPrevented()?void 0:(d.removeClass("in"),a.support.transition&&this.$tip.hasClass("fade")?d.one(a.support.transition.end,b).emulateTransitionEnd(150):b(),this.$element.trigger("hidden.bs."+this.type),this)},b.prototype.fixTitle=function(){var a=this.$element;(a.attr("title")||"string"!=typeof a.attr("data-original-title"))&&a.attr("data-original-title",a.attr("title")||"").attr("title","")},b.prototype.hasContent=function(){return this.getTitle()},b.prototype.getPosition=function(){var b=this.$element[0];return a.extend({},"function"==typeof b.getBoundingClientRect?b.getBoundingClientRect():{width:b.offsetWidth,height:b.offsetHeight},this.$element.offset())},b.prototype.getCalculatedOffset=function(a,b,c,d){return"bottom"==a?{top:b.top+b.height,left:b.left+b.width/2-c/2}:"top"==a?{top:b.top-d,left:b.left+b.width/2-c/2}:"left"==a?{top:b.top+b.height/2-d/2,left:b.left-c}:{top:b.top+b.height/2-d/2,left:b.left+b.width}},b.prototype.getTitle=function(){var a,b=this.$element,c=this.options;return a=b.attr("data-original-title")||("function"==typeof c.title?c.title.call(b[0]):c.title)},b.prototype.tip=function(){return this.$tip=this.$tip||a(this.options.template)},b.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(".tooltip-arrow")},b.prototype.validate=function(){this.$element[0].parentNode||(this.hide(),this.$element=null,this.options=null)},b.prototype.enable=function(){this.enabled=!0},b.prototype.disable=function(){this.enabled=!1},b.prototype.toggleEnabled=function(){this.enabled=!this.enabled},b.prototype.toggle=function(b){var c=b?a(b.currentTarget)[this.type](this.getDelegateOptions()).data("bs."+this.type):this;c.tip().hasClass("in")?c.leave(c):c.enter(c)},b.prototype.destroy=function(){this.hide().$element.off("."+this.type).removeData("bs."+this.type)};var c=a.fn.tooltip;a.fn.tooltip=function(c){return this.each(function(){var d=a(this),e=d.data("bs.tooltip"),f="object"==typeof c&&c;e||d.data("bs.tooltip",e=new b(this,f)),"string"==typeof c&&e[c]()})},a.fn.tooltip.Constructor=b,a.fn.tooltip.noConflict=function(){return a.fn.tooltip=c,this}}(window.jQuery),+function(a){"use strict";var b=function(a,b){this.init("popover",a,b)};if(!a.fn.tooltip)throw new Error("Popover requires tooltip.js");b.DEFAULTS=a.extend({},a.fn.tooltip.Constructor.DEFAULTS,{placement:"right",trigger:"click",content:"",template:'<div class="popover"><div class="arrow"></div><h3 class="popover-title"></h3><div class="popover-content"></div></div>'}),b.prototype=a.extend({},a.fn.tooltip.Constructor.prototype),b.prototype.constructor=b,b.prototype.getDefaults=function(){return b.DEFAULTS},b.prototype.setContent=function(){var a=this.tip(),b=this.getTitle(),c=this.getContent();a.find(".popover-title")[this.options.html?"html":"text"](b),a.find(".popover-content")[this.options.html?"html":"text"](c),a.removeClass("fade top bottom left right in"),a.find(".popover-title").html()||a.find(".popover-title").hide()},b.prototype.hasContent=function(){return this.getTitle()||this.getContent()},b.prototype.getContent=function(){var a=this.$element,b=this.options;return a.attr("data-content")||("function"==typeof b.content?b.content.call(a[0]):b.content)},b.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(".arrow")},b.prototype.tip=function(){return this.$tip||(this.$tip=a(this.options.template)),this.$tip};var c=a.fn.popover;a.fn.popover=function(c){return this.each(function(){var d=a(this),e=d.data("bs.popover"),f="object"==typeof c&&c;e||d.data("bs.popover",e=new b(this,f)),"string"==typeof c&&e[c]()})},a.fn.popover.Constructor=b,a.fn.popover.noConflict=function(){return a.fn.popover=c,this}}(window.jQuery),+function(a){"use strict";function b(c,d){var e,f=a.proxy(this.process,this);this.$element=a(c).is("body")?a(window):a(c),this.$body=a("body"),this.$scrollElement=this.$element.on("scroll.bs.scroll-spy.data-api",f),this.options=a.extend({},b.DEFAULTS,d),this.selector=(this.options.target||(e=a(c).attr("href"))&&e.replace(/.*(?=#[^\s]+$)/,"")||"")+" .nav li > a",this.offsets=a([]),this.targets=a([]),this.activeTarget=null,this.refresh(),this.process()}b.DEFAULTS={offset:10},b.prototype.refresh=function(){var b=this.$element[0]==window?"offset":"position";this.offsets=a([]),this.targets=a([]);var c=this;this.$body.find(this.selector).map(function(){var d=a(this),e=d.data("target")||d.attr("href"),f=/^#\w/.test(e)&&a(e);return f&&f.length&&[[f[b]().top+(!a.isWindow(c.$scrollElement.get(0))&&c.$scrollElement.scrollTop()),e]]||null}).sort(function(a,b){return a[0]-b[0]}).each(function(){c.offsets.push(this[0]),c.targets.push(this[1])})},b.prototype.process=function(){var a,b=this.$scrollElement.scrollTop()+this.options.offset,c=this.$scrollElement[0].scrollHeight||this.$body[0].scrollHeight,d=c-this.$scrollElement.height(),e=this.offsets,f=this.targets,g=this.activeTarget;if(b>=d)return g!=(a=f.last()[0])&&this.activate(a);for(a=e.length;a--;)g!=f[a]&&b>=e[a]&&(!e[a+1]||b<=e[a+1])&&this.activate(f[a])},b.prototype.activate=function(b){this.activeTarget=b,a(this.selector).parents(".active").removeClass("active");var c=this.selector+'[data-target="'+b+'"],'+this.selector+'[href="'+b+'"]',d=a(c).parents("li").addClass("active");d.parent(".dropdown-menu").length&&(d=d.closest("li.dropdown").addClass("active")),d.trigger("activate")};var c=a.fn.scrollspy;a.fn.scrollspy=function(c){return this.each(function(){var d=a(this),e=d.data("bs.scrollspy"),f="object"==typeof c&&c;e||d.data("bs.scrollspy",e=new b(this,f)),"string"==typeof c&&e[c]()})},a.fn.scrollspy.Constructor=b,a.fn.scrollspy.noConflict=function(){return a.fn.scrollspy=c,this},a(window).on("load",function(){a('[data-spy="scroll"]').each(function(){var b=a(this);b.scrollspy(b.data())})})}(window.jQuery),+function(a){"use strict";var b=function(b){this.element=a(b)};b.prototype.show=function(){var b=this.element,c=b.closest("ul:not(.dropdown-menu)"),d=b.attr("data-target");if(d||(d=b.attr("href"),d=d&&d.replace(/.*(?=#[^\s]*$)/,"")),!b.parent("li").hasClass("active")){var e=c.find(".active:last a")[0],f=a.Event("show.bs.tab",{relatedTarget:e});if(b.trigger(f),!f.isDefaultPrevented()){var g=a(d);this.activate(b.parent("li"),c),this.activate(g,g.parent(),function(){b.trigger({type:"shown.bs.tab",relatedTarget:e})})}}},b.prototype.activate=function(b,c,d){function e(){f.removeClass("active").find("> .dropdown-menu > .active").removeClass("active"),b.addClass("active"),g?(b[0].offsetWidth,b.addClass("in")):b.removeClass("fade"),b.parent(".dropdown-menu")&&b.closest("li.dropdown").addClass("active"),d&&d()}var f=c.find("> .active"),g=d&&a.support.transition&&f.hasClass("fade");g?f.one(a.support.transition.end,e).emulateTransitionEnd(150):e(),f.removeClass("in")};var c=a.fn.tab;a.fn.tab=function(c){return this.each(function(){var d=a(this),e=d.data("bs.tab");e||d.data("bs.tab",e=new b(this)),"string"==typeof c&&e[c]()})},a.fn.tab.Constructor=b,a.fn.tab.noConflict=function(){return a.fn.tab=c,this},a(document).on("click.bs.tab.data-api",'[data-toggle="tab"], [data-toggle="pill"]',function(b){b.preventDefault(),a(this).tab("show")})}(window.jQuery),+function(a){"use strict";var b=function(c,d){this.options=a.extend({},b.DEFAULTS,d),this.$window=a(window).on("scroll.bs.affix.data-api",a.proxy(this.checkPosition,this)).on("click.bs.affix.data-api",a.proxy(this.checkPositionWithEventLoop,this)),this.$element=a(c),this.affixed=this.unpin=null,this.checkPosition()};b.RESET="affix affix-top affix-bottom",b.DEFAULTS={offset:0},b.prototype.checkPositionWithEventLoop=function(){setTimeout(a.proxy(this.checkPosition,this),1)},b.prototype.checkPosition=function(){if(this.$element.is(":visible")){var c=a(document).height(),d=this.$window.scrollTop(),e=this.$element.offset(),f=this.options.offset,g=f.top,h=f.bottom;"object"!=typeof f&&(h=g=f),"function"==typeof g&&(g=f.top()),"function"==typeof h&&(h=f.bottom());var i=null!=this.unpin&&d+this.unpin<=e.top?!1:null!=h&&e.top+this.$element.height()>=c-h?"bottom":null!=g&&g>=d?"top":!1;this.affixed!==i&&(this.unpin&&this.$element.css("top",""),this.affixed=i,this.unpin="bottom"==i?e.top-d:null,this.$element.removeClass(b.RESET).addClass("affix"+(i?"-"+i:"")),"bottom"==i&&this.$element.offset({top:document.body.offsetHeight-h-this.$element.height()}))}};var c=a.fn.affix;a.fn.affix=function(c){return this.each(function(){var d=a(this),e=d.data("bs.affix"),f="object"==typeof c&&c;e||d.data("bs.affix",e=new b(this,f)),"string"==typeof c&&e[c]()})},a.fn.affix.Constructor=b,a.fn.affix.noConflict=function(){return a.fn.affix=c,this},a(window).on("load",function(){a('[data-spy="affix"]').each(function(){var b=a(this),c=b.data();c.offset=c.offset||{},c.offsetBottom&&(c.offset.bottom=c.offsetBottom),c.offsetTop&&(c.offset.top=c.offsetTop),b.affix(c)})})}(window.jQuery);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
/**
|
2 |
+
* bootstrap.js v3.0.0 by @fat and @mdo
|
3 |
+
* Copyright 2013 Twitter Inc.
|
4 |
+
* http://www.apache.org/licenses/LICENSE-2.0
|
5 |
+
*/
|
6 |
+
if (!jQuery)throw new Error("Bootstrap requires jQuery");
|
7 |
+
+function (a) {
|
8 |
+
"use strict";
|
9 |
+
function b() {
|
10 |
+
var a = document.createElement("bootstrap"), b = {
|
11 |
+
WebkitTransition: "webkitTransitionEnd",
|
12 |
+
MozTransition: "transitionend",
|
13 |
+
OTransition: "oTransitionEnd otransitionend",
|
14 |
+
transition: "transitionend"
|
15 |
+
};
|
16 |
+
for (var c in b)if (void 0 !== a.style[c])return {end: b[c]}
|
17 |
+
}
|
18 |
+
|
19 |
+
a.fn.emulateTransitionEnd = function (b) {
|
20 |
+
var c = !1, d = this;
|
21 |
+
a(this).one(a.support.transition.end, function () {
|
22 |
+
c = !0
|
23 |
+
});
|
24 |
+
var e = function () {
|
25 |
+
c || a(d).trigger(a.support.transition.end)
|
26 |
+
};
|
27 |
+
return setTimeout(e, b), this
|
28 |
+
}, a(function () {
|
29 |
+
a.support.transition = b()
|
30 |
+
})
|
31 |
+
}(window.jQuery), +function (a) {
|
32 |
+
"use strict";
|
33 |
+
var b = '[data-dismiss="alert"]', c = function (c) {
|
34 |
+
a(c).on("click", b, this.close)
|
35 |
+
};
|
36 |
+
c.prototype.close = function (b) {
|
37 |
+
function c() {
|
38 |
+
f.trigger("closed.bs.alert").remove()
|
39 |
+
}
|
40 |
+
|
41 |
+
var d = a(this), e = d.attr("data-target");
|
42 |
+
e || (e = d.attr("href"), e = e && e.replace(/.*(?=#[^\s]*$)/, ""));
|
43 |
+
var f = a(e);
|
44 |
+
b && b.preventDefault(), f.length || (f = d.hasClass("alert") ? d : d.parent()), f.trigger(b = a.Event("close.bs.alert")), b.isDefaultPrevented() || (f.removeClass("in"), a.support.transition && f.hasClass("fade") ? f.one(a.support.transition.end, c).emulateTransitionEnd(150) : c())
|
45 |
+
};
|
46 |
+
var d = a.fn.alert;
|
47 |
+
a.fn.alert = function (b) {
|
48 |
+
return this.each(function () {
|
49 |
+
var d = a(this), e = d.data("bs.alert");
|
50 |
+
e || d.data("bs.alert", e = new c(this)), "string" == typeof b && e[b].call(d)
|
51 |
+
})
|
52 |
+
}, a.fn.alert.Constructor = c, a.fn.alert.noConflict = function () {
|
53 |
+
return a.fn.alert = d, this
|
54 |
+
}, a(document).on("click.bs.alert.data-api", b, c.prototype.close)
|
55 |
+
}(window.jQuery), +function (a) {
|
56 |
+
"use strict";
|
57 |
+
var b = function (c, d) {
|
58 |
+
this.$element = a(c), this.options = a.extend({}, b.DEFAULTS, d)
|
59 |
+
};
|
60 |
+
b.DEFAULTS = {loadingText: "loading..."}, b.prototype.setState = function (a) {
|
61 |
+
var b = "disabled", c = this.$element, d = c.is("input") ? "val" : "html", e = c.data();
|
62 |
+
a += "Text", e.resetText || c.data("resetText", c[d]()), c[d](e[a] || this.options[a]), setTimeout(function () {
|
63 |
+
"loadingText" == a ? c.addClass(b).attr(b, b) : c.removeClass(b).removeAttr(b)
|
64 |
+
}, 0)
|
65 |
+
}, b.prototype.toggle = function () {
|
66 |
+
var a = this.$element.closest('[data-toggle="buttons"]');
|
67 |
+
if (a.length) {
|
68 |
+
var b = this.$element.find("input").prop("checked", !this.$element.hasClass("active")).trigger("change");
|
69 |
+
"radio" === b.prop("type") && a.find(".active").removeClass("active")
|
70 |
+
}
|
71 |
+
this.$element.toggleClass("active")
|
72 |
+
};
|
73 |
+
var c = a.fn.button;
|
74 |
+
a.fn.button = function (c) {
|
75 |
+
return this.each(function () {
|
76 |
+
var d = a(this), e = d.data("bs.button"), f = "object" == typeof c && c;
|
77 |
+
e || d.data("bs.button", e = new b(this, f)), "toggle" == c ? e.toggle() : c && e.setState(c)
|
78 |
+
})
|
79 |
+
}, a.fn.button.Constructor = b, a.fn.button.noConflict = function () {
|
80 |
+
return a.fn.button = c, this
|
81 |
+
}, a(document).on("click.bs.button.data-api", "[data-toggle^=button]", function (b) {
|
82 |
+
var c = a(b.target);
|
83 |
+
c.hasClass("btn") || (c = c.closest(".btn")), c.button("toggle"), b.preventDefault()
|
84 |
+
})
|
85 |
+
}(window.jQuery), +function (a) {
|
86 |
+
"use strict";
|
87 |
+
var b = function (b, c) {
|
88 |
+
this.$element = a(b), this.$indicators = this.$element.find(".carousel-indicators"), this.options = c, this.paused = this.sliding = this.interval = this.$active = this.$items = null, "hover" == this.options.pause && this.$element.on("mouseenter", a.proxy(this.pause, this)).on("mouseleave", a.proxy(this.cycle, this))
|
89 |
+
};
|
90 |
+
b.DEFAULTS = {interval: 5e3, pause: "hover", wrap: !0}, b.prototype.cycle = function (b) {
|
91 |
+
return b || (this.paused = !1), this.interval && clearInterval(this.interval), this.options.interval && !this.paused && (this.interval = setInterval(a.proxy(this.next, this), this.options.interval)), this
|
92 |
+
}, b.prototype.getActiveIndex = function () {
|
93 |
+
return this.$active = this.$element.find(".item.active"), this.$items = this.$active.parent().children(), this.$items.index(this.$active)
|
94 |
+
}, b.prototype.to = function (b) {
|
95 |
+
var c = this, d = this.getActiveIndex();
|
96 |
+
return b > this.$items.length - 1 || 0 > b ? void 0 : this.sliding ? this.$element.one("slid", function () {
|
97 |
+
c.to(b)
|
98 |
+
}) : d == b ? this.pause().cycle() : this.slide(b > d ? "next" : "prev", a(this.$items[b]))
|
99 |
+
}, b.prototype.pause = function (b) {
|
100 |
+
return b || (this.paused = !0), this.$element.find(".next, .prev").length && a.support.transition.end && (this.$element.trigger(a.support.transition.end), this.cycle(!0)), this.interval = clearInterval(this.interval), this
|
101 |
+
}, b.prototype.next = function () {
|
102 |
+
return this.sliding ? void 0 : this.slide("next")
|
103 |
+
}, b.prototype.prev = function () {
|
104 |
+
return this.sliding ? void 0 : this.slide("prev")
|
105 |
+
}, b.prototype.slide = function (b, c) {
|
106 |
+
var d = this.$element.find(".item.active"), e = c || d[b](), f = this.interval, g = "next" == b ? "left" : "right", h = "next" == b ? "first" : "last", i = this;
|
107 |
+
if (!e.length) {
|
108 |
+
if (!this.options.wrap)return;
|
109 |
+
e = this.$element.find(".item")[h]()
|
110 |
+
}
|
111 |
+
this.sliding = !0, f && this.pause();
|
112 |
+
var j = a.Event("slide.bs.carousel", {relatedTarget: e[0], direction: g});
|
113 |
+
if (!e.hasClass("active")) {
|
114 |
+
if (this.$indicators.length && (this.$indicators.find(".active").removeClass("active"), this.$element.one("slid", function () {
|
115 |
+
var b = a(i.$indicators.children()[i.getActiveIndex()]);
|
116 |
+
b && b.addClass("active")
|
117 |
+
})), a.support.transition && this.$element.hasClass("slide")) {
|
118 |
+
if (this.$element.trigger(j), j.isDefaultPrevented())return;
|
119 |
+
e.addClass(b), e[0].offsetWidth, d.addClass(g), e.addClass(g), d.one(a.support.transition.end, function () {
|
120 |
+
e.removeClass([b, g].join(" ")).addClass("active"), d.removeClass(["active", g].join(" ")), i.sliding = !1, setTimeout(function () {
|
121 |
+
i.$element.trigger("slid")
|
122 |
+
}, 0)
|
123 |
+
}).emulateTransitionEnd(600)
|
124 |
+
} else {
|
125 |
+
if (this.$element.trigger(j), j.isDefaultPrevented())return;
|
126 |
+
d.removeClass("active"), e.addClass("active"), this.sliding = !1, this.$element.trigger("slid")
|
127 |
+
}
|
128 |
+
return f && this.cycle(), this
|
129 |
+
}
|
130 |
+
};
|
131 |
+
var c = a.fn.carousel;
|
132 |
+
a.fn.carousel = function (c) {
|
133 |
+
return this.each(function () {
|
134 |
+
var d = a(this), e = d.data("bs.carousel"), f = a.extend({}, b.DEFAULTS, d.data(), "object" == typeof c && c), g = "string" == typeof c ? c : f.slide;
|
135 |
+
e || d.data("bs.carousel", e = new b(this, f)), "number" == typeof c ? e.to(c) : g ? e[g]() : f.interval && e.pause().cycle()
|
136 |
+
})
|
137 |
+
}, a.fn.carousel.Constructor = b, a.fn.carousel.noConflict = function () {
|
138 |
+
return a.fn.carousel = c, this
|
139 |
+
}, a(document).on("click.bs.carousel.data-api", "[data-slide], [data-slide-to]", function (b) {
|
140 |
+
var c, d = a(this), e = a(d.attr("data-target") || (c = d.attr("href")) && c.replace(/.*(?=#[^\s]+$)/, "")), f = a.extend({}, e.data(), d.data()), g = d.attr("data-slide-to");
|
141 |
+
g && (f.interval = !1), e.carousel(f), (g = d.attr("data-slide-to")) && e.data("bs.carousel").to(g), b.preventDefault()
|
142 |
+
}), a(window).on("load", function () {
|
143 |
+
a('[data-ride="carousel"]').each(function () {
|
144 |
+
var b = a(this);
|
145 |
+
b.carousel(b.data())
|
146 |
+
})
|
147 |
+
})
|
148 |
+
}(window.jQuery), +function (a) {
|
149 |
+
"use strict";
|
150 |
+
var b = function (c, d) {
|
151 |
+
this.$element = a(c), this.options = a.extend({}, b.DEFAULTS, d), this.transitioning = null, this.options.parent && (this.$parent = a(this.options.parent)), this.options.toggle && this.toggle()
|
152 |
+
};
|
153 |
+
b.DEFAULTS = {toggle: !0}, b.prototype.dimension = function () {
|
154 |
+
var a = this.$element.hasClass("width");
|
155 |
+
return a ? "width" : "height"
|
156 |
+
}, b.prototype.show = function () {
|
157 |
+
if (!this.transitioning && !this.$element.hasClass("in")) {
|
158 |
+
var b = a.Event("show.bs.collapse");
|
159 |
+
if (this.$element.trigger(b), !b.isDefaultPrevented()) {
|
160 |
+
var c = this.$parent && this.$parent.find("> .panel > .in");
|
161 |
+
if (c && c.length) {
|
162 |
+
var d = c.data("bs.collapse");
|
163 |
+
if (d && d.transitioning)return;
|
164 |
+
c.collapse("hide"), d || c.data("bs.collapse", null)
|
165 |
+
}
|
166 |
+
var e = this.dimension();
|
167 |
+
this.$element.removeClass("collapse").addClass("collapsing")[e](0), this.transitioning = 1;
|
168 |
+
var f = function () {
|
169 |
+
this.$element.removeClass("collapsing").addClass("in")[e]("auto"), this.transitioning = 0, this.$element.trigger("shown.bs.collapse")
|
170 |
+
};
|
171 |
+
if (!a.support.transition)return f.call(this);
|
172 |
+
var g = a.camelCase(["scroll", e].join("-"));
|
173 |
+
this.$element.one(a.support.transition.end, a.proxy(f, this)).emulateTransitionEnd(350)[e](this.$element[0][g])
|
174 |
+
}
|
175 |
+
}
|
176 |
+
}, b.prototype.hide = function () {
|
177 |
+
if (!this.transitioning && this.$element.hasClass("in")) {
|
178 |
+
var b = a.Event("hide.bs.collapse");
|
179 |
+
if (this.$element.trigger(b), !b.isDefaultPrevented()) {
|
180 |
+
var c = this.dimension();
|
181 |
+
this.$element[c](this.$element[c]())[0].offsetHeight, this.$element.addClass("collapsing").removeClass("collapse").removeClass("in"), this.transitioning = 1;
|
182 |
+
var d = function () {
|
183 |
+
this.transitioning = 0, this.$element.trigger("hidden.bs.collapse").removeClass("collapsing").addClass("collapse")
|
184 |
+
};
|
185 |
+
return a.support.transition ? (this.$element[c](0).one(a.support.transition.end, a.proxy(d, this)).emulateTransitionEnd(350), void 0) : d.call(this)
|
186 |
+
}
|
187 |
+
}
|
188 |
+
}, b.prototype.toggle = function () {
|
189 |
+
this[this.$element.hasClass("in") ? "hide" : "show"]()
|
190 |
+
};
|
191 |
+
var c = a.fn.collapse;
|
192 |
+
a.fn.collapse = function (c) {
|
193 |
+
return this.each(function () {
|
194 |
+
var d = a(this), e = d.data("bs.collapse"), f = a.extend({}, b.DEFAULTS, d.data(), "object" == typeof c && c);
|
195 |
+
e || d.data("bs.collapse", e = new b(this, f)), "string" == typeof c && e[c]()
|
196 |
+
})
|
197 |
+
}, a.fn.collapse.Constructor = b, a.fn.collapse.noConflict = function () {
|
198 |
+
return a.fn.collapse = c, this
|
199 |
+
}, a(document).on("click.bs.collapse.data-api", "[data-toggle=collapse]", function (b) {
|
200 |
+
var c, d = a(this), e = d.attr("data-target") || b.preventDefault() || (c = d.attr("href")) && c.replace(/.*(?=#[^\s]+$)/, ""), f = a(e), g = f.data("bs.collapse"), h = g ? "toggle" : d.data(), i = d.attr("data-parent"), j = i && a(i);
|
201 |
+
g && g.transitioning || (j && j.find('[data-toggle=collapse][data-parent="' + i + '"]').not(d).addClass("collapsed"), d[f.hasClass("in") ? "addClass" : "removeClass"]("collapsed")), f.collapse(h)
|
202 |
+
})
|
203 |
+
}(window.jQuery), +function (a) {
|
204 |
+
"use strict";
|
205 |
+
function b() {
|
206 |
+
a(d).remove(), a(e).each(function (b) {
|
207 |
+
var d = c(a(this));
|
208 |
+
d.hasClass("open") && (d.trigger(b = a.Event("hide.bs.dropdown")), b.isDefaultPrevented() || d.removeClass("open").trigger("hidden.bs.dropdown"))
|
209 |
+
})
|
210 |
+
}
|
211 |
+
|
212 |
+
function c(b) {
|
213 |
+
var c = b.attr("data-target");
|
214 |
+
c || (c = b.attr("href"), c = c && /#/.test(c) && c.replace(/.*(?=#[^\s]*$)/, ""));
|
215 |
+
var d = c && a(c);
|
216 |
+
return d && d.length ? d : b.parent()
|
217 |
+
}
|
218 |
+
|
219 |
+
var d = ".dropdown-backdrop", e = "[data-toggle=dropdown]", f = function (b) {
|
220 |
+
a(b).on("click.bs.dropdown", this.toggle)
|
221 |
+
};
|
222 |
+
f.prototype.toggle = function (d) {
|
223 |
+
var e = a(this);
|
224 |
+
if (!e.is(".disabled, :disabled")) {
|
225 |
+
var f = c(e), g = f.hasClass("open");
|
226 |
+
if (b(), !g) {
|
227 |
+
if ("ontouchstart" in document.documentElement && !f.closest(".navbar-nav").length && a('<div class="dropdown-backdrop"/>').insertAfter(a(this)).on("click", b), f.trigger(d = a.Event("show.bs.dropdown")), d.isDefaultPrevented())return;
|
228 |
+
f.toggleClass("open").trigger("shown.bs.dropdown"), e.focus()
|
229 |
+
}
|
230 |
+
return !1
|
231 |
+
}
|
232 |
+
}, f.prototype.keydown = function (b) {
|
233 |
+
if (/(38|40|27)/.test(b.keyCode)) {
|
234 |
+
var d = a(this);
|
235 |
+
if (b.preventDefault(), b.stopPropagation(), !d.is(".disabled, :disabled")) {
|
236 |
+
var f = c(d), g = f.hasClass("open");
|
237 |
+
if (!g || g && 27 == b.keyCode)return 27 == b.which && f.find(e).focus(), d.click();
|
238 |
+
var h = a("[role=menu] li:not(.divider):visible a", f);
|
239 |
+
if (h.length) {
|
240 |
+
var i = h.index(h.filter(":focus"));
|
241 |
+
38 == b.keyCode && i > 0 && i--, 40 == b.keyCode && i < h.length - 1 && i++, ~i || (i = 0), h.eq(i).focus()
|
242 |
+
}
|
243 |
+
}
|
244 |
+
}
|
245 |
+
};
|
246 |
+
var g = a.fn.dropdown;
|
247 |
+
a.fn.dropdown = function (b) {
|
248 |
+
return this.each(function () {
|
249 |
+
var c = a(this), d = c.data("dropdown");
|
250 |
+
d || c.data("dropdown", d = new f(this)), "string" == typeof b && d[b].call(c)
|
251 |
+
})
|
252 |
+
}, a.fn.dropdown.Constructor = f, a.fn.dropdown.noConflict = function () {
|
253 |
+
return a.fn.dropdown = g, this
|
254 |
+
}, a(document).on("click.bs.dropdown.data-api", b).on("click.bs.dropdown.data-api", ".dropdown form", function (a) {
|
255 |
+
a.stopPropagation()
|
256 |
+
}).on("click.bs.dropdown.data-api", e, f.prototype.toggle).on("keydown.bs.dropdown.data-api", e + ", [role=menu]", f.prototype.keydown)
|
257 |
+
}(window.jQuery), +function (a) {
|
258 |
+
"use strict";
|
259 |
+
var b = function (b, c) {
|
260 |
+
this.options = c, this.$element = a(b), this.$backdrop = this.isShown = null, this.options.remote && this.$element.load(this.options.remote)
|
261 |
+
};
|
262 |
+
b.DEFAULTS = {backdrop: !0, keyboard: !0, show: !0}, b.prototype.toggle = function (a) {
|
263 |
+
return this[this.isShown ? "hide" : "show"](a)
|
264 |
+
}, b.prototype.show = function (b) {
|
265 |
+
var c = this, d = a.Event("show.bs.modal", {relatedTarget: b});
|
266 |
+
this.$element.trigger(d), this.isShown || d.isDefaultPrevented() || (this.isShown = !0, this.escape(), this.$element.on("click.dismiss.modal", '[data-dismiss="modal"]', a.proxy(this.hide, this)), this.backdrop(function () {
|
267 |
+
var d = a.support.transition && c.$element.hasClass("fade");
|
268 |
+
c.$element.parent().length || c.$element.appendTo(document.body), c.$element.show(), d && c.$element[0].offsetWidth, c.$element.addClass("in").attr("aria-hidden", !1), c.enforceFocus();
|
269 |
+
var e = a.Event("shown.bs.modal", {relatedTarget: b});
|
270 |
+
d ? c.$element.find(".modal-dialog").one(a.support.transition.end, function () {
|
271 |
+
c.$element.focus().trigger(e)
|
272 |
+
}).emulateTransitionEnd(300) : c.$element.focus().trigger(e)
|
273 |
+
}))
|
274 |
+
}, b.prototype.hide = function (b) {
|
275 |
+
b && b.preventDefault(), b = a.Event("hide.bs.modal"), this.$element.trigger(b), this.isShown && !b.isDefaultPrevented() && (this.isShown = !1, this.escape(), a(document).off("focusin.bs.modal"), this.$element.removeClass("in").attr("aria-hidden", !0).off("click.dismiss.modal"), a.support.transition && this.$element.hasClass("fade") ? this.$element.one(a.support.transition.end, a.proxy(this.hideModal, this)).emulateTransitionEnd(300) : this.hideModal())
|
276 |
+
}, b.prototype.enforceFocus = function () {
|
277 |
+
a(document).off("focusin.bs.modal").on("focusin.bs.modal", a.proxy(function (a) {
|
278 |
+
this.$element[0] === a.target || this.$element.has(a.target).length || this.$element.focus()
|
279 |
+
}, this))
|
280 |
+
}, b.prototype.escape = function () {
|
281 |
+
this.isShown && this.options.keyboard ? this.$element.on("keyup.dismiss.bs.modal", a.proxy(function (a) {
|
282 |
+
27 == a.which && this.hide()
|
283 |
+
}, this)) : this.isShown || this.$element.off("keyup.dismiss.bs.modal")
|
284 |
+
}, b.prototype.hideModal = function () {
|
285 |
+
var a = this;
|
286 |
+
this.$element.hide(), this.backdrop(function () {
|
287 |
+
a.removeBackdrop(), a.$element.trigger("hidden.bs.modal")
|
288 |
+
})
|
289 |
+
}, b.prototype.removeBackdrop = function () {
|
290 |
+
this.$backdrop && this.$backdrop.remove(), this.$backdrop = null
|
291 |
+
}, b.prototype.backdrop = function (b) {
|
292 |
+
var c = this.$element.hasClass("fade") ? "fade" : "";
|
293 |
+
if (this.isShown && this.options.backdrop) {
|
294 |
+
var d = a.support.transition && c;
|
295 |
+
if (this.$backdrop = a('<div class="modal-backdrop ' + c + '" />').appendTo(document.body), this.$element.on("click.dismiss.modal", a.proxy(function (a) {
|
296 |
+
a.target === a.currentTarget && ("static" == this.options.backdrop ? this.$element[0].focus.call(this.$element[0]) : this.hide.call(this))
|
297 |
+
}, this)), d && this.$backdrop[0].offsetWidth, this.$backdrop.addClass("in"), !b)return;
|
298 |
+
d ? this.$backdrop.one(a.support.transition.end, b).emulateTransitionEnd(150) : b()
|
299 |
+
} else!this.isShown && this.$backdrop ? (this.$backdrop.removeClass("in"), a.support.transition && this.$element.hasClass("fade") ? this.$backdrop.one(a.support.transition.end, b).emulateTransitionEnd(150) : b()) : b && b()
|
300 |
+
};
|
301 |
+
var c = a.fn.modal;
|
302 |
+
a.fn.modal = function (c, d) {
|
303 |
+
return this.each(function () {
|
304 |
+
var e = a(this), f = e.data("bs.modal"), g = a.extend({}, b.DEFAULTS, e.data(), "object" == typeof c && c);
|
305 |
+
f || e.data("bs.modal", f = new b(this, g)), "string" == typeof c ? f[c](d) : g.show && f.show(d)
|
306 |
+
})
|
307 |
+
}, a.fn.modal.Constructor = b, a.fn.modal.noConflict = function () {
|
308 |
+
return a.fn.modal = c, this
|
309 |
+
}, a(document).on("click.bs.modal.data-api", '[data-toggle="modal"]', function (b) {
|
310 |
+
var c = a(this), d = c.attr("href"), e = a(c.attr("data-target") || d && d.replace(/.*(?=#[^\s]+$)/, "")), f = e.data("modal") ? "toggle" : a.extend({remote: !/#/.test(d) && d}, e.data(), c.data());
|
311 |
+
b.preventDefault(), e.modal(f, this).one("hide", function () {
|
312 |
+
c.is(":visible") && c.focus()
|
313 |
+
})
|
314 |
+
}), a(document).on("show.bs.modal", ".modal", function () {
|
315 |
+
a(document.body).addClass("modal-open")
|
316 |
+
}).on("hidden.bs.modal", ".modal", function () {
|
317 |
+
a(document.body).removeClass("modal-open")
|
318 |
+
})
|
319 |
+
}(window.jQuery), +function (a) {
|
320 |
+
"use strict";
|
321 |
+
var b = function (a, b) {
|
322 |
+
this.type = this.options = this.enabled = this.timeout = this.hoverState = this.$element = null, this.init("tooltip", a, b)
|
323 |
+
};
|
324 |
+
b.DEFAULTS = {
|
325 |
+
animation: !0,
|
326 |
+
placement: "top",
|
327 |
+
selector: !1,
|
328 |
+
template: '<div class="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>',
|
329 |
+
trigger: "hover focus",
|
330 |
+
title: "",
|
331 |
+
delay: 0,
|
332 |
+
html: !1,
|
333 |
+
container: !1
|
334 |
+
}, b.prototype.init = function (b, c, d) {
|
335 |
+
this.enabled = !0, this.type = b, this.$element = a(c), this.options = this.getOptions(d);
|
336 |
+
for (var e = this.options.trigger.split(" "), f = e.length; f--;) {
|
337 |
+
var g = e[f];
|
338 |
+
if ("click" == g)this.$element.on("click." + this.type, this.options.selector, a.proxy(this.toggle, this)); else if ("manual" != g) {
|
339 |
+
var h = "hover" == g ? "mouseenter" : "focus", i = "hover" == g ? "mouseleave" : "blur";
|
340 |
+
this.$element.on(h + "." + this.type, this.options.selector, a.proxy(this.enter, this)), this.$element.on(i + "." + this.type, this.options.selector, a.proxy(this.leave, this))
|
341 |
+
}
|
342 |
+
}
|
343 |
+
this.options.selector ? this._options = a.extend({}, this.options, {
|
344 |
+
trigger: "manual",
|
345 |
+
selector: ""
|
346 |
+
}) : this.fixTitle()
|
347 |
+
}, b.prototype.getDefaults = function () {
|
348 |
+
return b.DEFAULTS
|
349 |
+
}, b.prototype.getOptions = function (b) {
|
350 |
+
return b = a.extend({}, this.getDefaults(), this.$element.data(), b), b.delay && "number" == typeof b.delay && (b.delay = {
|
351 |
+
show: b.delay,
|
352 |
+
hide: b.delay
|
353 |
+
}), b
|
354 |
+
}, b.prototype.getDelegateOptions = function () {
|
355 |
+
var b = {}, c = this.getDefaults();
|
356 |
+
return this._options && a.each(this._options, function (a, d) {
|
357 |
+
c[a] != d && (b[a] = d)
|
358 |
+
}), b
|
359 |
+
}, b.prototype.enter = function (b) {
|
360 |
+
var c = b instanceof this.constructor ? b : a(b.currentTarget)[this.type](this.getDelegateOptions()).data("bs." + this.type);
|
361 |
+
return clearTimeout(c.timeout), c.hoverState = "in", c.options.delay && c.options.delay.show ? (c.timeout = setTimeout(function () {
|
362 |
+
"in" == c.hoverState && c.show()
|
363 |
+
}, c.options.delay.show), void 0) : c.show()
|
364 |
+
}, b.prototype.leave = function (b) {
|
365 |
+
var c = b instanceof this.constructor ? b : a(b.currentTarget)[this.type](this.getDelegateOptions()).data("bs." + this.type);
|
366 |
+
return clearTimeout(c.timeout), c.hoverState = "out", c.options.delay && c.options.delay.hide ? (c.timeout = setTimeout(function () {
|
367 |
+
"out" == c.hoverState && c.hide()
|
368 |
+
}, c.options.delay.hide), void 0) : c.hide()
|
369 |
+
}, b.prototype.show = function () {
|
370 |
+
var b = a.Event("show.bs." + this.type);
|
371 |
+
if (this.hasContent() && this.enabled) {
|
372 |
+
if (this.$element.trigger(b), b.isDefaultPrevented())return;
|
373 |
+
var c = this.tip();
|
374 |
+
this.setContent(), this.options.animation && c.addClass("fade");
|
375 |
+
var d = "function" == typeof this.options.placement ? this.options.placement.call(this, c[0], this.$element[0]) : this.options.placement, e = /\s?auto?\s?/i, f = e.test(d);
|
376 |
+
f && (d = d.replace(e, "") || "top"), c.detach().css({
|
377 |
+
top: 0,
|
378 |
+
left: 0,
|
379 |
+
display: "block"
|
380 |
+
}).addClass(d), this.options.container ? c.appendTo(this.options.container) : c.insertAfter(this.$element);
|
381 |
+
var g = this.getPosition(), h = c[0].offsetWidth, i = c[0].offsetHeight;
|
382 |
+
if (f) {
|
383 |
+
var j = this.$element.parent(), k = d, l = document.documentElement.scrollTop || document.body.scrollTop, m = "body" == this.options.container ? window.innerWidth : j.outerWidth(), n = "body" == this.options.container ? window.innerHeight : j.outerHeight(), o = "body" == this.options.container ? 0 : j.offset().left;
|
384 |
+
d = "bottom" == d && g.top + g.height + i - l > n ? "top" : "top" == d && g.top - l - i < 0 ? "bottom" : "right" == d && g.right + h > m ? "left" : "left" == d && g.left - h < o ? "right" : d, c.removeClass(k).addClass(d)
|
385 |
+
}
|
386 |
+
var p = this.getCalculatedOffset(d, g, h, i);
|
387 |
+
this.applyPlacement(p, d), this.$element.trigger("shown.bs." + this.type)
|
388 |
+
}
|
389 |
+
}, b.prototype.applyPlacement = function (a, b) {
|
390 |
+
var c, d = this.tip(), e = d[0].offsetWidth, f = d[0].offsetHeight, g = parseInt(d.css("margin-top"), 10), h = parseInt(d.css("margin-left"), 10);
|
391 |
+
isNaN(g) && (g = 0), isNaN(h) && (h = 0), a.top = a.top + g, a.left = a.left + h, d.offset(a).addClass("in");
|
392 |
+
var i = d[0].offsetWidth, j = d[0].offsetHeight;
|
393 |
+
if ("top" == b && j != f && (c = !0, a.top = a.top + f - j), /bottom|top/.test(b)) {
|
394 |
+
var k = 0;
|
395 |
+
a.left < 0 && (k = -2 * a.left, a.left = 0, d.offset(a), i = d[0].offsetWidth, j = d[0].offsetHeight), this.replaceArrow(k - e + i, i, "left")
|
396 |
+
} else this.replaceArrow(j - f, j, "top");
|
397 |
+
c && d.offset(a)
|
398 |
+
}, b.prototype.replaceArrow = function (a, b, c) {
|
399 |
+
this.arrow().css(c, a ? 50 * (1 - a / b) + "%" : "")
|
400 |
+
}, b.prototype.setContent = function () {
|
401 |
+
var a = this.tip(), b = this.getTitle();
|
402 |
+
a.find(".tooltip-inner")[this.options.html ? "html" : "text"](b), a.removeClass("fade in top bottom left right")
|
403 |
+
}, b.prototype.hide = function () {
|
404 |
+
function b() {
|
405 |
+
"in" != c.hoverState && d.detach()
|
406 |
+
}
|
407 |
+
|
408 |
+
var c = this, d = this.tip(), e = a.Event("hide.bs." + this.type);
|
409 |
+
return this.$element.trigger(e), e.isDefaultPrevented() ? void 0 : (d.removeClass("in"), a.support.transition && this.$tip.hasClass("fade") ? d.one(a.support.transition.end, b).emulateTransitionEnd(150) : b(), this.$element.trigger("hidden.bs." + this.type), this)
|
410 |
+
}, b.prototype.fixTitle = function () {
|
411 |
+
var a = this.$element;
|
412 |
+
(a.attr("title") || "string" != typeof a.attr("data-original-title")) && a.attr("data-original-title", a.attr("title") || "").attr("title", "")
|
413 |
+
}, b.prototype.hasContent = function () {
|
414 |
+
return this.getTitle()
|
415 |
+
}, b.prototype.getPosition = function () {
|
416 |
+
var b = this.$element[0];
|
417 |
+
return a.extend({}, "function" == typeof b.getBoundingClientRect ? b.getBoundingClientRect() : {
|
418 |
+
width: b.offsetWidth,
|
419 |
+
height: b.offsetHeight
|
420 |
+
}, this.$element.offset())
|
421 |
+
}, b.prototype.getCalculatedOffset = function (a, b, c, d) {
|
422 |
+
return "bottom" == a ? {
|
423 |
+
top: b.top + b.height,
|
424 |
+
left: b.left + b.width / 2 - c / 2
|
425 |
+
} : "top" == a ? {
|
426 |
+
top: b.top - d,
|
427 |
+
left: b.left + b.width / 2 - c / 2
|
428 |
+
} : "left" == a ? {top: b.top + b.height / 2 - d / 2, left: b.left - c} : {
|
429 |
+
top: b.top + b.height / 2 - d / 2,
|
430 |
+
left: b.left + b.width
|
431 |
+
}
|
432 |
+
}, b.prototype.getTitle = function () {
|
433 |
+
var a, b = this.$element, c = this.options;
|
434 |
+
return a = b.attr("data-original-title") || ("function" == typeof c.title ? c.title.call(b[0]) : c.title)
|
435 |
+
}, b.prototype.tip = function () {
|
436 |
+
return this.$tip = this.$tip || a(this.options.template)
|
437 |
+
}, b.prototype.arrow = function () {
|
438 |
+
return this.$arrow = this.$arrow || this.tip().find(".tooltip-arrow")
|
439 |
+
}, b.prototype.validate = function () {
|
440 |
+
this.$element[0].parentNode || (this.hide(), this.$element = null, this.options = null)
|
441 |
+
}, b.prototype.enable = function () {
|
442 |
+
this.enabled = !0
|
443 |
+
}, b.prototype.disable = function () {
|
444 |
+
this.enabled = !1
|
445 |
+
}, b.prototype.toggleEnabled = function () {
|
446 |
+
this.enabled = !this.enabled
|
447 |
+
}, b.prototype.toggle = function (b) {
|
448 |
+
var c = b ? a(b.currentTarget)[this.type](this.getDelegateOptions()).data("bs." + this.type) : this;
|
449 |
+
c.tip().hasClass("in") ? c.leave(c) : c.enter(c)
|
450 |
+
}, b.prototype.destroy = function () {
|
451 |
+
this.hide().$element.off("." + this.type).removeData("bs." + this.type)
|
452 |
+
};
|
453 |
+
var c = a.fn.tooltip;
|
454 |
+
a.fn.tooltip = function (c) {
|
455 |
+
return this.each(function () {
|
456 |
+
var d = a(this), e = d.data("bs.tooltip"), f = "object" == typeof c && c;
|
457 |
+
e || d.data("bs.tooltip", e = new b(this, f)), "string" == typeof c && e[c]()
|
458 |
+
})
|
459 |
+
}, a.fn.tooltip.Constructor = b, a.fn.tooltip.noConflict = function () {
|
460 |
+
return a.fn.tooltip = c, this
|
461 |
+
}
|
462 |
+
}(window.jQuery), +function (a) {
|
463 |
+
"use strict";
|
464 |
+
var b = function (a, b) {
|
465 |
+
this.init("popover", a, b)
|
466 |
+
};
|
467 |
+
if (!a.fn.tooltip)throw new Error("Popover requires tooltip.js");
|
468 |
+
b.DEFAULTS = a.extend({}, a.fn.tooltip.Constructor.DEFAULTS, {
|
469 |
+
placement: "right",
|
470 |
+
trigger: "click",
|
471 |
+
content: "",
|
472 |
+
template: '<div class="popover"><div class="arrow"></div><h3 class="popover-title"></h3><div class="popover-content"></div></div>'
|
473 |
+
}), b.prototype = a.extend({}, a.fn.tooltip.Constructor.prototype), b.prototype.constructor = b, b.prototype.getDefaults = function () {
|
474 |
+
return b.DEFAULTS
|
475 |
+
}, b.prototype.setContent = function () {
|
476 |
+
var a = this.tip(), b = this.getTitle(), c = this.getContent();
|
477 |
+
a.find(".popover-title")[this.options.html ? "html" : "text"](b), a.find(".popover-content")[this.options.html ? "html" : "text"](c), a.removeClass("fade top bottom left right in"), a.find(".popover-title").html() || a.find(".popover-title").hide()
|
478 |
+
}, b.prototype.hasContent = function () {
|
479 |
+
return this.getTitle() || this.getContent()
|
480 |
+
}, b.prototype.getContent = function () {
|
481 |
+
var a = this.$element, b = this.options;
|
482 |
+
return a.attr("data-content") || ("function" == typeof b.content ? b.content.call(a[0]) : b.content)
|
483 |
+
}, b.prototype.arrow = function () {
|
484 |
+
return this.$arrow = this.$arrow || this.tip().find(".arrow")
|
485 |
+
}, b.prototype.tip = function () {
|
486 |
+
return this.$tip || (this.$tip = a(this.options.template)), this.$tip
|
487 |
+
};
|
488 |
+
var c = a.fn.popover;
|
489 |
+
a.fn.popover = function (c) {
|
490 |
+
return this.each(function () {
|
491 |
+
var d = a(this), e = d.data("bs.popover"), f = "object" == typeof c && c;
|
492 |
+
e || d.data("bs.popover", e = new b(this, f)), "string" == typeof c && e[c]()
|
493 |
+
})
|
494 |
+
}, a.fn.popover.Constructor = b, a.fn.popover.noConflict = function () {
|
495 |
+
return a.fn.popover = c, this
|
496 |
+
}
|
497 |
+
}(window.jQuery), +function (a) {
|
498 |
+
"use strict";
|
499 |
+
function b(c, d) {
|
500 |
+
var e, f = a.proxy(this.process, this);
|
501 |
+
this.$element = a(c).is("body") ? a(window) : a(c), this.$body = a("body"), this.$scrollElement = this.$element.on("scroll.bs.scroll-spy.data-api", f), this.options = a.extend({}, b.DEFAULTS, d), this.selector = (this.options.target || (e = a(c).attr("href")) && e.replace(/.*(?=#[^\s]+$)/, "") || "") + " .nav li > a", this.offsets = a([]), this.targets = a([]), this.activeTarget = null, this.refresh(), this.process()
|
502 |
+
}
|
503 |
+
|
504 |
+
b.DEFAULTS = {offset: 10}, b.prototype.refresh = function () {
|
505 |
+
var b = this.$element[0] == window ? "offset" : "position";
|
506 |
+
this.offsets = a([]), this.targets = a([]);
|
507 |
+
var c = this;
|
508 |
+
this.$body.find(this.selector).map(function () {
|
509 |
+
var d = a(this), e = d.data("target") || d.attr("href"), f = /^#\w/.test(e) && a(e);
|
510 |
+
return f && f.length && [[f[b]().top + (!a.isWindow(c.$scrollElement.get(0)) && c.$scrollElement.scrollTop()), e]] || null
|
511 |
+
}).sort(function (a, b) {
|
512 |
+
return a[0] - b[0]
|
513 |
+
}).each(function () {
|
514 |
+
c.offsets.push(this[0]), c.targets.push(this[1])
|
515 |
+
})
|
516 |
+
}, b.prototype.process = function () {
|
517 |
+
var a, b = this.$scrollElement.scrollTop() + this.options.offset, c = this.$scrollElement[0].scrollHeight || this.$body[0].scrollHeight, d = c - this.$scrollElement.height(), e = this.offsets, f = this.targets, g = this.activeTarget;
|
518 |
+
if (b >= d)return g != (a = f.last()[0]) && this.activate(a);
|
519 |
+
for (a = e.length; a--;)g != f[a] && b >= e[a] && (!e[a + 1] || b <= e[a + 1]) && this.activate(f[a])
|
520 |
+
}, b.prototype.activate = function (b) {
|
521 |
+
this.activeTarget = b, a(this.selector).parents(".active").removeClass("active");
|
522 |
+
var c = this.selector + '[data-target="' + b + '"],' + this.selector + '[href="' + b + '"]', d = a(c).parents("li").addClass("active");
|
523 |
+
d.parent(".dropdown-menu").length && (d = d.closest("li.dropdown").addClass("active")), d.trigger("activate")
|
524 |
+
};
|
525 |
+
var c = a.fn.scrollspy;
|
526 |
+
a.fn.scrollspy = function (c) {
|
527 |
+
return this.each(function () {
|
528 |
+
var d = a(this), e = d.data("bs.scrollspy"), f = "object" == typeof c && c;
|
529 |
+
e || d.data("bs.scrollspy", e = new b(this, f)), "string" == typeof c && e[c]()
|
530 |
+
})
|
531 |
+
}, a.fn.scrollspy.Constructor = b, a.fn.scrollspy.noConflict = function () {
|
532 |
+
return a.fn.scrollspy = c, this
|
533 |
+
}, a(window).on("load", function () {
|
534 |
+
a('[data-spy="scroll"]').each(function () {
|
535 |
+
var b = a(this);
|
536 |
+
b.scrollspy(b.data())
|
537 |
+
})
|
538 |
+
})
|
539 |
+
}(window.jQuery), +function (a) {
|
540 |
+
"use strict";
|
541 |
+
var b = function (b) {
|
542 |
+
this.element = a(b)
|
543 |
+
};
|
544 |
+
b.prototype.show = function () {
|
545 |
+
var b = this.element, c = b.closest("ul:not(.dropdown-menu)"), d = b.attr("data-target");
|
546 |
+
if (d || (d = b.attr("href"), d = d && d.replace(/.*(?=#[^\s]*$)/, "")), !b.parent("li").hasClass("active")) {
|
547 |
+
var e = c.find(".active:last a")[0], f = a.Event("show.bs.tab", {relatedTarget: e});
|
548 |
+
if (b.trigger(f), !f.isDefaultPrevented()) {
|
549 |
+
var g = a(d);
|
550 |
+
this.activate(b.parent("li"), c), this.activate(g, g.parent(), function () {
|
551 |
+
b.trigger({type: "shown.bs.tab", relatedTarget: e})
|
552 |
+
})
|
553 |
+
}
|
554 |
+
}
|
555 |
+
}, b.prototype.activate = function (b, c, d) {
|
556 |
+
function e() {
|
557 |
+
f.removeClass("active").find("> .dropdown-menu > .active").removeClass("active"), b.addClass("active"), g ? (b[0].offsetWidth, b.addClass("in")) : b.removeClass("fade"), b.parent(".dropdown-menu") && b.closest("li.dropdown").addClass("active"), d && d()
|
558 |
+
}
|
559 |
+
|
560 |
+
var f = c.find("> .active"), g = d && a.support.transition && f.hasClass("fade");
|
561 |
+
g ? f.one(a.support.transition.end, e).emulateTransitionEnd(150) : e(), f.removeClass("in")
|
562 |
+
};
|
563 |
+
var c = a.fn.tab;
|
564 |
+
a.fn.tab = function (c) {
|
565 |
+
return this.each(function () {
|
566 |
+
var d = a(this), e = d.data("bs.tab");
|
567 |
+
e || d.data("bs.tab", e = new b(this)), "string" == typeof c && e[c]()
|
568 |
+
})
|
569 |
+
}, a.fn.tab.Constructor = b, a.fn.tab.noConflict = function () {
|
570 |
+
return a.fn.tab = c, this
|
571 |
+
}, a(document).on("click.bs.tab.data-api", '[data-toggle="tab"], [data-toggle="pill"]', function (b) {
|
572 |
+
b.preventDefault(), a(this).tab("show")
|
573 |
+
})
|
574 |
+
}(window.jQuery), +function (a) {
|
575 |
+
"use strict";
|
576 |
+
var b = function (c, d) {
|
577 |
+
this.options = a.extend({}, b.DEFAULTS, d), this.$window = a(window).on("scroll.bs.affix.data-api", a.proxy(this.checkPosition, this)).on("click.bs.affix.data-api", a.proxy(this.checkPositionWithEventLoop, this)), this.$element = a(c), this.affixed = this.unpin = null, this.checkPosition()
|
578 |
+
};
|
579 |
+
b.RESET = "affix affix-top affix-bottom", b.DEFAULTS = {offset: 0}, b.prototype.checkPositionWithEventLoop = function () {
|
580 |
+
setTimeout(a.proxy(this.checkPosition, this), 1)
|
581 |
+
}, b.prototype.checkPosition = function () {
|
582 |
+
if (this.$element.is(":visible")) {
|
583 |
+
var c = a(document).height(), d = this.$window.scrollTop(), e = this.$element.offset(), f = this.options.offset, g = f.top, h = f.bottom;
|
584 |
+
"object" != typeof f && (h = g = f), "function" == typeof g && (g = f.top()), "function" == typeof h && (h = f.bottom());
|
585 |
+
var i = null != this.unpin && d + this.unpin <= e.top ? !1 : null != h && e.top + this.$element.height() >= c - h ? "bottom" : null != g && g >= d ? "top" : !1;
|
586 |
+
this.affixed !== i && (this.unpin && this.$element.css("top", ""), this.affixed = i, this.unpin = "bottom" == i ? e.top - d : null, this.$element.removeClass(b.RESET).addClass("affix" + (i ? "-" + i : "")), "bottom" == i && this.$element.offset({top: document.body.offsetHeight - h - this.$element.height()}))
|
587 |
+
}
|
588 |
+
};
|
589 |
+
var c = a.fn.affix;
|
590 |
+
a.fn.affix = function (c) {
|
591 |
+
return this.each(function () {
|
592 |
+
var d = a(this), e = d.data("bs.affix"), f = "object" == typeof c && c;
|
593 |
+
e || d.data("bs.affix", e = new b(this, f)), "string" == typeof c && e[c]()
|
594 |
+
})
|
595 |
+
}, a.fn.affix.Constructor = b, a.fn.affix.noConflict = function () {
|
596 |
+
return a.fn.affix = c, this
|
597 |
+
}, a(window).on("load", function () {
|
598 |
+
a('[data-spy="affix"]').each(function () {
|
599 |
+
var b = a(this), c = b.data();
|
600 |
+
c.offset = c.offset || {}, c.offsetBottom && (c.offset.bottom = c.offsetBottom), c.offsetTop && (c.offset.top = c.offsetTop), b.affix(c)
|
601 |
+
})
|
602 |
+
})
|
603 |
+
}(window.jQuery);
|
js/buttons.js
CHANGED
@@ -18,98 +18,99 @@
|
|
18 |
* ======================================================================== */
|
19 |
|
20 |
|
21 |
-
+function ($) {
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
-
|
26 |
-
|
27 |
-
|
28 |
-
|
29 |
-
|
30 |
-
|
31 |
-
|
32 |
-
|
33 |
-
|
34 |
-
|
35 |
-
Button.prototype.setState = function (state) {
|
36 |
-
var d = 'disabled'
|
37 |
-
var $el = this.$element
|
38 |
-
var val = $el.is('input') ? 'val' : 'html'
|
39 |
-
var data = $el.data()
|
40 |
-
|
41 |
-
state = state + 'Text'
|
42 |
-
|
43 |
-
if (!data.resetText) $el.data('resetText', $el[val]())
|
44 |
-
|
45 |
-
$el[val](data[state] || this.options[state])
|
46 |
-
|
47 |
-
// push to event loop to allow forms to submit
|
48 |
-
setTimeout(function () {
|
49 |
-
state == 'loadingText' ?
|
50 |
-
$el.addClass(d).attr(d, d) :
|
51 |
-
$el.removeClass(d).removeAttr(d);
|
52 |
-
}, 0)
|
53 |
-
}
|
54 |
-
|
55 |
-
Button.prototype.toggle = function () {
|
56 |
-
var $parent = this.$element.closest('[data-toggle="buttons"]')
|
57 |
-
var changed = true
|
58 |
-
|
59 |
-
if ($parent.length) {
|
60 |
-
var $input = this.$element.find('input')
|
61 |
-
if ($input.prop('type') === 'radio') {
|
62 |
-
// see if clicking on current one
|
63 |
-
if ($input.prop('checked') && this.$element.hasClass('active'))
|
64 |
-
changed = false
|
65 |
-
else
|
66 |
-
$parent.find('.active').removeClass('active')
|
67 |
-
}
|
68 |
-
if (changed) $input.prop('checked', !this.$element.hasClass('active')).trigger('change')
|
69 |
}
|
70 |
|
71 |
-
|
72 |
-
|
|
|
|
|
|
|
73 |
|
|
|
74 |
|
75 |
-
|
76 |
-
// ========================
|
77 |
|
78 |
-
|
79 |
|
80 |
-
|
81 |
-
|
82 |
-
|
83 |
-
|
84 |
-
|
|
|
|
|
85 |
|
86 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
87 |
|
88 |
-
if (option == 'toggle') data.toggle()
|
89 |
-
else if (option) data.setState(option)
|
90 |
-
})
|
91 |
-
}
|
92 |
|
93 |
-
|
|
|
94 |
|
|
|
95 |
|
96 |
-
|
97 |
-
|
|
|
|
|
|
|
98 |
|
99 |
-
|
100 |
-
$.fn.button = old
|
101 |
-
return this
|
102 |
-
}
|
103 |
|
|
|
|
|
|
|
|
|
104 |
|
105 |
-
|
106 |
-
// ===============
|
107 |
|
108 |
-
|
109 |
-
|
110 |
-
|
111 |
-
|
112 |
-
|
113 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
114 |
|
115 |
}(jQuery);
|
18 |
* ======================================================================== */
|
19 |
|
20 |
|
21 |
+
+function ($) {
|
22 |
+
"use strict";
|
23 |
+
|
24 |
+
// BUTTON PUBLIC CLASS DEFINITION
|
25 |
+
// ==============================
|
26 |
+
|
27 |
+
var Button = function (element, options) {
|
28 |
+
this.$element = $(element)
|
29 |
+
this.options = $.extend({}, Button.DEFAULTS, options)
|
30 |
+
}
|
31 |
+
|
32 |
+
Button.DEFAULTS = {
|
33 |
+
loadingText: 'loading...'
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
34 |
}
|
35 |
|
36 |
+
Button.prototype.setState = function (state) {
|
37 |
+
var d = 'disabled'
|
38 |
+
var $el = this.$element
|
39 |
+
var val = $el.is('input') ? 'val' : 'html'
|
40 |
+
var data = $el.data()
|
41 |
|
42 |
+
state = state + 'Text'
|
43 |
|
44 |
+
if (!data.resetText) $el.data('resetText', $el[val]())
|
|
|
45 |
|
46 |
+
$el[val](data[state] || this.options[state])
|
47 |
|
48 |
+
// push to event loop to allow forms to submit
|
49 |
+
setTimeout(function () {
|
50 |
+
state == 'loadingText' ?
|
51 |
+
$el.addClass(d).attr(d, d) :
|
52 |
+
$el.removeClass(d).removeAttr(d);
|
53 |
+
}, 0)
|
54 |
+
}
|
55 |
|
56 |
+
Button.prototype.toggle = function () {
|
57 |
+
var $parent = this.$element.closest('[data-toggle="buttons"]')
|
58 |
+
var changed = true
|
59 |
+
|
60 |
+
if ($parent.length) {
|
61 |
+
var $input = this.$element.find('input')
|
62 |
+
if ($input.prop('type') === 'radio') {
|
63 |
+
// see if clicking on current one
|
64 |
+
if ($input.prop('checked') && this.$element.hasClass('active'))
|
65 |
+
changed = false
|
66 |
+
else
|
67 |
+
$parent.find('.active').removeClass('active')
|
68 |
+
}
|
69 |
+
if (changed) $input.prop('checked', !this.$element.hasClass('active')).trigger('change')
|
70 |
+
}
|
71 |
+
|
72 |
+
if (changed) this.$element.toggleClass('active')
|
73 |
+
}
|
74 |
|
|
|
|
|
|
|
|
|
75 |
|
76 |
+
// BUTTON PLUGIN DEFINITION
|
77 |
+
// ========================
|
78 |
|
79 |
+
var old = $.fn.button
|
80 |
|
81 |
+
$.fn.button = function (option) {
|
82 |
+
return this.each(function () {
|
83 |
+
var $this = $(this)
|
84 |
+
var data = $this.data('bs.button')
|
85 |
+
var options = typeof option == 'object' && option
|
86 |
|
87 |
+
if (!data) $this.data('bs.button', (data = new Button(this, options)))
|
|
|
|
|
|
|
88 |
|
89 |
+
if (option == 'toggle') data.toggle()
|
90 |
+
else if (option) data.setState(option)
|
91 |
+
})
|
92 |
+
}
|
93 |
|
94 |
+
$.fn.button.Constructor = Button
|
|
|
95 |
|
96 |
+
|
97 |
+
// BUTTON NO CONFLICT
|
98 |
+
// ==================
|
99 |
+
|
100 |
+
$.fn.button.noConflict = function () {
|
101 |
+
$.fn.button = old
|
102 |
+
return this
|
103 |
+
}
|
104 |
+
|
105 |
+
|
106 |
+
// BUTTON DATA-API
|
107 |
+
// ===============
|
108 |
+
|
109 |
+
$(document).on('click.bs.button.data-api', '[data-toggle^=button]', function (e) {
|
110 |
+
var $btn = $(e.target)
|
111 |
+
if (!$btn.hasClass('btn')) $btn = $btn.closest('.btn')
|
112 |
+
$btn.button('toggle')
|
113 |
+
e.preventDefault()
|
114 |
+
})
|
115 |
|
116 |
}(jQuery);
|
js/dashchart-widget.js
CHANGED
@@ -1,8 +1,73 @@
|
|
1 |
jQuery( document ).ready(function() {
|
2 |
-
|
3 |
-
|
4 |
});
|
5 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
6 |
{
|
7 |
jQuery.ajax({
|
8 |
type: 'POST',
|
@@ -105,5 +170,5 @@ jQuery.ajax({
|
|
105 |
}
|
106 |
});
|
107 |
}
|
108 |
-
|
109 |
|
1 |
jQuery( document ).ready(function() {
|
2 |
+
piechart();
|
3 |
+
linechart();
|
4 |
});
|
5 |
+
|
6 |
+
function piechart()
|
7 |
+
{
|
8 |
+
jQuery.ajax({
|
9 |
+
type: 'POST',
|
10 |
+
url: ajaxurl,
|
11 |
+
data: {
|
12 |
+
'action' : 'firstchart',
|
13 |
+
'postdata' : 'firstchartdata',
|
14 |
+
},
|
15 |
+
dataType: 'json',
|
16 |
+
cache: false,
|
17 |
+
success: function(data) {
|
18 |
+
var val = JSON.parse(data);
|
19 |
+
if (val['label'] == 'No Imports Yet') {
|
20 |
+
document.getElementById('pieStats').innerHTML = "<h2 style='color: red;text-align: center;padding-top: 100px;' >No Imports Yet</h2>";
|
21 |
+
return false;
|
22 |
+
}
|
23 |
+
Morris.Donut({
|
24 |
+
element: 'pieStats',
|
25 |
+
data: val//[
|
26 |
+
//{label: val[0][0], value: value[0][1]}
|
27 |
+
//{label: "page", value: 30},
|
28 |
+
//{label: "custompost", value: 20}
|
29 |
+
//]
|
30 |
+
});
|
31 |
+
}
|
32 |
+
});
|
33 |
+
}
|
34 |
+
|
35 |
+
function linechart() {
|
36 |
+
jQuery.ajax({
|
37 |
+
type: 'POST',
|
38 |
+
url: ajaxurl,
|
39 |
+
data: {
|
40 |
+
'action' : 'secondchart',
|
41 |
+
'postdata' : 'secondchartdata',
|
42 |
+
},
|
43 |
+
dataType: 'json',
|
44 |
+
cache: false,
|
45 |
+
success: function(result) {
|
46 |
+
console.log(result);
|
47 |
+
var val = JSON.parse(result);
|
48 |
+
var months = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"];
|
49 |
+
Morris.Line({
|
50 |
+
element: 'lineStats',
|
51 |
+
data : val,
|
52 |
+
xkey: 'year',
|
53 |
+
ykeys: ['post', 'page','custompost','users','eshop'],
|
54 |
+
labels: ['post', 'page','custompost','users','eshop'],
|
55 |
+
lineColors:['gray','red','blue','black','orange'],
|
56 |
+
xLabelFormat: function(x) { // <--- x.getMonth() returns valid index
|
57 |
+
var month = months[x.getMonth()];
|
58 |
+
return month;
|
59 |
+
},
|
60 |
+
dateFormat: function(x) {
|
61 |
+
var month = months[new Date(x).getMonth()];
|
62 |
+
return month;
|
63 |
+
},
|
64 |
+
|
65 |
+
});
|
66 |
+
}
|
67 |
+
});
|
68 |
+
}
|
69 |
+
|
70 |
+
/*function pieStats()
|
71 |
{
|
72 |
jQuery.ajax({
|
73 |
type: 'POST',
|
170 |
}
|
171 |
});
|
172 |
}
|
173 |
+
*/
|
174 |
|
js/dashchart.js
CHANGED
@@ -1,10 +1,153 @@
|
|
1 |
jQuery( document ).ready(function() {
|
2 |
var get_module = document.getElementById('checkmodule').value;
|
3 |
if(get_module == 'dashboard') {
|
4 |
-
|
5 |
-
|
6 |
}
|
7 |
});
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
8 |
function pieStats()
|
9 |
{
|
10 |
jQuery.ajax({
|
@@ -110,4 +253,4 @@ jQuery.ajax({
|
|
110 |
});
|
111 |
}
|
112 |
|
113 |
-
|
1 |
jQuery( document ).ready(function() {
|
2 |
var get_module = document.getElementById('checkmodule').value;
|
3 |
if(get_module == 'dashboard') {
|
4 |
+
piechart();
|
5 |
+
linechart();
|
6 |
}
|
7 |
});
|
8 |
+
function piechart()
|
9 |
+
{
|
10 |
+
jQuery.ajax({
|
11 |
+
type: 'POST',
|
12 |
+
url: ajaxurl,
|
13 |
+
data: {
|
14 |
+
'action' : 'firstchart',
|
15 |
+
'postdata' : 'firstchartdata',
|
16 |
+
},
|
17 |
+
dataType: 'json',
|
18 |
+
cache: false,
|
19 |
+
success: function(data) {
|
20 |
+
var val = JSON.parse(data);
|
21 |
+
if (val['label'] == 'No Imports Yet') {
|
22 |
+
document.getElementById('pieStats').innerHTML = "<h2 style='color: red;text-align: center;padding-top: 100px;' >No Imports Yet</h2>";
|
23 |
+
return false;
|
24 |
+
}
|
25 |
+
Morris.Donut({
|
26 |
+
element: 'pieStats',
|
27 |
+
data: val//[
|
28 |
+
//{label: val[0][0], value: value[0][1]}
|
29 |
+
//{label: "page", value: 30},
|
30 |
+
//{label: "custompost", value: 20}
|
31 |
+
//]
|
32 |
+
});
|
33 |
+
}
|
34 |
+
});
|
35 |
+
}
|
36 |
+
|
37 |
+
function linechart() {
|
38 |
+
jQuery.ajax({
|
39 |
+
type: 'POST',
|
40 |
+
url: ajaxurl,
|
41 |
+
data: {
|
42 |
+
'action' : 'secondchart',
|
43 |
+
'postdata' : 'secondchartdata',
|
44 |
+
},
|
45 |
+
dataType: 'json',
|
46 |
+
cache: false,
|
47 |
+
success: function(result) {
|
48 |
+
console.log(result);
|
49 |
+
var val = JSON.parse(result);
|
50 |
+
var months = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"];
|
51 |
+
Morris.Line({
|
52 |
+
element: 'lineStats',
|
53 |
+
data : val,
|
54 |
+
xkey: 'year',
|
55 |
+
ykeys: ['post', 'page','custompost','users','eshop'],
|
56 |
+
labels: ['post', 'page','custompost','users','eshop'],
|
57 |
+
lineColors:['gray','red','blue','black','orange'],
|
58 |
+
xLabelFormat: function(x) { // <--- x.getMonth() returns valid index
|
59 |
+
var month = months[x.getMonth()];
|
60 |
+
return month;
|
61 |
+
},
|
62 |
+
dateFormat: function(x) {
|
63 |
+
var month = months[new Date(x).getMonth()];
|
64 |
+
return month;
|
65 |
+
},
|
66 |
+
|
67 |
+
});
|
68 |
+
}
|
69 |
+
});
|
70 |
+
}
|
71 |
+
|
72 |
+
/*
|
73 |
+
function linechart()
|
74 |
+
{
|
75 |
+
jQuery.ajax({
|
76 |
+
type: 'POST',
|
77 |
+
url: ajaxurl,
|
78 |
+
data: {
|
79 |
+
'action' : 'secondchart',
|
80 |
+
'postdata' : 'secondchartdata',
|
81 |
+
},
|
82 |
+
dataType: 'json',
|
83 |
+
cache: false,
|
84 |
+
success: function(data) {
|
85 |
+
var val = JSON.parse(data);
|
86 |
+
/* var line = new Morris.Line({
|
87 |
+
// ID of the element in which to draw the chart.
|
88 |
+
element: 'lineStats',
|
89 |
+
// Chart data records -- each entry in this array corresponds to a point on
|
90 |
+
// the chart.
|
91 |
+
data: [
|
92 |
+
{ year: '2015-02 post', No: 20 },
|
93 |
+
{ year: '2010-03 users', No: 10 },
|
94 |
+
{ year: '2012-04 page', No: 25 },
|
95 |
+
{ year: '2013-05 custompost', No: 45 },
|
96 |
+
{ year: '2011-06 eshop', No: 50 }
|
97 |
+
],
|
98 |
+
// The name of the data record attribute that contains x-values.
|
99 |
+
xkey: 'year',
|
100 |
+
xLabels: "month",
|
101 |
+
// A list of names of data record attributes that contain y-values.
|
102 |
+
ykeys: ['No'],
|
103 |
+
// Labels for the ykeys -- will be displayed when you hover over the
|
104 |
+
// chart.
|
105 |
+
labels: ['No']
|
106 |
+
});
|
107 |
+
function formatDate(myDate){
|
108 |
+
var m_names = new Array("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec");
|
109 |
+
|
110 |
+
var d = new Date(myDate);
|
111 |
+
|
112 |
+
var curr_month = d.getMonth();
|
113 |
+
//var curr_year = d.getFullYear();
|
114 |
+
//return (m_names[curr_month] + "-" + curr_year);
|
115 |
+
return (m_names[curr_month]);
|
116 |
+
}
|
117 |
+
|
118 |
+
new Morris.Line({
|
119 |
+
element: 'financial-year-sales-graph',
|
120 |
+
data: [
|
121 |
+
{ month: '2013-07', sales: 52325 },
|
122 |
+
{ month: '2013-08', sales: 65432 },
|
123 |
+
{ month: '2013-09', sales: 52125 },
|
124 |
+
{ month: '2013-10', sales: 23265 },
|
125 |
+
{ month: '2013-11', sales: 25125 },
|
126 |
+
{ month: '2013-12', sales: 63256 },
|
127 |
+
{ month: '2014-01', sales: 52365 },
|
128 |
+
{ month: '2014-02', sales: 65954 },
|
129 |
+
{ month: '2014-03', sales: 55255 },
|
130 |
+
{ month: '2014-04', sales: 66236 },
|
131 |
+
{ month: '2014-05', sales: 52369 },
|
132 |
+
{ month: '2014-06', sales: 85214 }
|
133 |
+
],
|
134 |
+
// The name of the data record attribute that contains x-values.
|
135 |
+
xkey: 'month',
|
136 |
+
// A list of names of data record attributes that contain y-values.
|
137 |
+
ykeys: ['sales'],
|
138 |
+
// Labels for the ykeys -- will be displayed when you hover over the
|
139 |
+
// chart.
|
140 |
+
labels: ['Sales'],
|
141 |
+
xLabelFormat: function(str){
|
142 |
+
return formatDate(str);
|
143 |
+
},
|
144 |
+
preUnits: '$'
|
145 |
+
});
|
146 |
+
|
147 |
+
}
|
148 |
+
});
|
149 |
+
}
|
150 |
+
|
151 |
function pieStats()
|
152 |
{
|
153 |
jQuery.ajax({
|
253 |
});
|
254 |
}
|
255 |
|
256 |
+
*/
|
js/dropdown.js
CHANGED
@@ -8,7 +8,9 @@
|
|
8 |
* Generated using the Bootstrap Customizer (http://getbootstrap.com/customize/?id=8fcd7d337a57dc98835b)
|
9 |
* Config saved to config.json and https://gist.github.com/8fcd7d337a57dc98835b
|
10 |
*/
|
11 |
-
if (typeof jQuery === "undefined") {
|
|
|
|
|
12 |
|
13 |
/* ========================================================================
|
14 |
* Bootstrap: dropdown.js v3.2.0
|
@@ -20,144 +22,146 @@ if (typeof jQuery === "undefined") { throw new Error("Bootstrap's JavaScript req
|
|
20 |
|
21 |
|
22 |
+function ($) {
|
23 |
-
|
24 |
|
25 |
-
|
26 |
-
|
27 |
|
28 |
-
|
29 |
-
|
30 |
-
|
31 |
-
|
32 |
-
|
|
|
|
|
33 |
|
34 |
-
|
|
|
35 |
|
36 |
-
|
37 |
-
var $this = $(this)
|
38 |
|
39 |
-
|
|
|
40 |
|
41 |
-
|
42 |
-
var isActive = $parent.hasClass('open')
|
43 |
|
44 |
-
|
|
|
|
|
|
|
|
|
45 |
|
46 |
-
|
47 |
-
|
48 |
-
// if mobile we use a backdrop because click events don't delegate
|
49 |
-
$('<div class="dropdown-backdrop"/>').insertAfter($(this)).on('click', clearMenus)
|
50 |
-
}
|
51 |
|
52 |
-
|
53 |
-
$parent.trigger(e = $.Event('show.bs.dropdown', relatedTarget))
|
54 |
|
55 |
-
|
56 |
|
57 |
-
|
|
|
|
|
|
|
58 |
|
59 |
-
|
60 |
-
.toggleClass('open')
|
61 |
-
.trigger('shown.bs.dropdown', relatedTarget)
|
62 |
}
|
63 |
|
64 |
-
|
65 |
-
|
66 |
|
67 |
-
|
68 |
-
if (!/(38|40|27)/.test(e.keyCode)) return
|
69 |
|
70 |
-
|
|
|
71 |
|
72 |
-
|
73 |
-
e.stopPropagation()
|
74 |
|
75 |
-
|
|
|
76 |
|
77 |
-
|
78 |
-
|
|
|
|
|
79 |
|
80 |
-
|
81 |
-
|
82 |
-
return $this.trigger('click')
|
83 |
-
}
|
84 |
|
85 |
-
|
86 |
-
var $items = $parent.find('[role="menu"]' + desc + ', [role="listbox"]' + desc)
|
87 |
|
88 |
-
|
89 |
|
90 |
-
|
|
|
|
|
91 |
|
92 |
-
|
93 |
-
|
94 |
-
if (!~index) index = 0
|
95 |
-
|
96 |
-
$items.eq(index).trigger('focus')
|
97 |
-
}
|
98 |
|
99 |
-
|
100 |
-
|
101 |
-
|
102 |
-
|
103 |
-
|
104 |
-
|
105 |
-
|
106 |
-
|
107 |
-
|
108 |
-
|
109 |
-
|
110 |
-
|
111 |
|
112 |
-
|
113 |
-
|
114 |
|
115 |
-
|
116 |
-
|
117 |
-
|
118 |
-
|
119 |
|
120 |
-
|
121 |
|
122 |
-
|
123 |
-
|
124 |
|
125 |
|
126 |
-
|
127 |
-
|
128 |
|
129 |
-
|
130 |
-
|
131 |
-
|
132 |
-
|
133 |
|
134 |
-
|
135 |
-
|
136 |
-
|
137 |
-
|
138 |
|
139 |
-
|
140 |
|
141 |
-
|
142 |
-
|
143 |
|
144 |
|
145 |
-
|
146 |
-
|
147 |
|
148 |
-
|
149 |
-
|
150 |
-
|
151 |
-
|
152 |
|
153 |
|
154 |
-
|
155 |
-
|
156 |
|
157 |
-
|
158 |
-
|
159 |
-
|
160 |
-
|
161 |
-
|
|
|
|
|
162 |
|
163 |
}(jQuery);
|
8 |
* Generated using the Bootstrap Customizer (http://getbootstrap.com/customize/?id=8fcd7d337a57dc98835b)
|
9 |
* Config saved to config.json and https://gist.github.com/8fcd7d337a57dc98835b
|
10 |
*/
|
11 |
+
if (typeof jQuery === "undefined") {
|
12 |
+
throw new Error("Bootstrap's JavaScript requires jQuery")
|
13 |
+
}
|
14 |
|
15 |
/* ========================================================================
|
16 |
* Bootstrap: dropdown.js v3.2.0
|
22 |
|
23 |
|
24 |
+function ($) {
|
25 |
+
'use strict';
|
26 |
|
27 |
+
// DROPDOWN CLASS DEFINITION
|
28 |
+
// =========================
|
29 |
|
30 |
+
var backdrop = '.dropdown-backdrop'
|
31 |
+
var toggle = '[data-toggle="dropdown"]'
|
32 |
+
var Dropdown = function (element) {
|
33 |
+
$(element).on('click.bs.dropdown', this.toggle)
|
34 |
+
}
|
35 |
+
|
36 |
+
Dropdown.VERSION = '3.2.0'
|
37 |
|
38 |
+
Dropdown.prototype.toggle = function (e) {
|
39 |
+
var $this = $(this)
|
40 |
|
41 |
+
if ($this.is('.disabled, :disabled')) return
|
|
|
42 |
|
43 |
+
var $parent = getParent($this)
|
44 |
+
var isActive = $parent.hasClass('open')
|
45 |
|
46 |
+
clearMenus()
|
|
|
47 |
|
48 |
+
if (!isActive) {
|
49 |
+
if ('ontouchstart' in document.documentElement && !$parent.closest('.navbar-nav').length) {
|
50 |
+
// if mobile we use a backdrop because click events don't delegate
|
51 |
+
$('<div class="dropdown-backdrop"/>').insertAfter($(this)).on('click', clearMenus)
|
52 |
+
}
|
53 |
|
54 |
+
var relatedTarget = {relatedTarget: this}
|
55 |
+
$parent.trigger(e = $.Event('show.bs.dropdown', relatedTarget))
|
|
|
|
|
|
|
56 |
|
57 |
+
if (e.isDefaultPrevented()) return
|
|
|
58 |
|
59 |
+
$this.trigger('focus')
|
60 |
|
61 |
+
$parent
|
62 |
+
.toggleClass('open')
|
63 |
+
.trigger('shown.bs.dropdown', relatedTarget)
|
64 |
+
}
|
65 |
|
66 |
+
return false
|
|
|
|
|
67 |
}
|
68 |
|
69 |
+
Dropdown.prototype.keydown = function (e) {
|
70 |
+
if (!/(38|40|27)/.test(e.keyCode)) return
|
71 |
|
72 |
+
var $this = $(this)
|
|
|
73 |
|
74 |
+
e.preventDefault()
|
75 |
+
e.stopPropagation()
|
76 |
|
77 |
+
if ($this.is('.disabled, :disabled')) return
|
|
|
78 |
|
79 |
+
var $parent = getParent($this)
|
80 |
+
var isActive = $parent.hasClass('open')
|
81 |
|
82 |
+
if (!isActive || (isActive && e.keyCode == 27)) {
|
83 |
+
if (e.which == 27) $parent.find(toggle).trigger('focus')
|
84 |
+
return $this.trigger('click')
|
85 |
+
}
|
86 |
|
87 |
+
var desc = ' li:not(.divider):visible a'
|
88 |
+
var $items = $parent.find('[role="menu"]' + desc + ', [role="listbox"]' + desc)
|
|
|
|
|
89 |
|
90 |
+
if (!$items.length) return
|
|
|
91 |
|
92 |
+
var index = $items.index($items.filter(':focus'))
|
93 |
|
94 |
+
if (e.keyCode == 38 && index > 0) index-- // up
|
95 |
+
if (e.keyCode == 40 && index < $items.length - 1) index++ // down
|
96 |
+
if (!~index) index = 0
|
97 |
|
98 |
+
$items.eq(index).trigger('focus')
|
99 |
+
}
|
|
|
|
|
|
|
|
|
100 |
|
101 |
+
function clearMenus(e) {
|
102 |
+
if (e && e.which === 3) return
|
103 |
+
$(backdrop).remove()
|
104 |
+
$(toggle).each(function () {
|
105 |
+
var $parent = getParent($(this))
|
106 |
+
var relatedTarget = {relatedTarget: this}
|
107 |
+
if (!$parent.hasClass('open')) return
|
108 |
+
$parent.trigger(e = $.Event('hide.bs.dropdown', relatedTarget))
|
109 |
+
if (e.isDefaultPrevented()) return
|
110 |
+
$parent.removeClass('open').trigger('hidden.bs.dropdown', relatedTarget)
|
111 |
+
})
|
112 |
+
}
|
113 |
|
114 |
+
function getParent($this) {
|
115 |
+
var selector = $this.attr('data-target')
|
116 |
|
117 |
+
if (!selector) {
|
118 |
+
selector = $this.attr('href')
|
119 |
+
selector = selector && /#[A-Za-z]/.test(selector) && selector.replace(/.*(?=#[^\s]*$)/, '') // strip for ie7
|
120 |
+
}
|
121 |
|
122 |
+
var $parent = selector && $(selector)
|
123 |
|
124 |
+
return $parent && $parent.length ? $parent : $this.parent()
|
125 |
+
}
|
126 |
|
127 |
|
128 |
+
// DROPDOWN PLUGIN DEFINITION
|
129 |
+
// ==========================
|
130 |
|
131 |
+
function Plugin(option) {
|
132 |
+
return this.each(function () {
|
133 |
+
var $this = $(this)
|
134 |
+
var data = $this.data('bs.dropdown')
|
135 |
|
136 |
+
if (!data) $this.data('bs.dropdown', (data = new Dropdown(this)))
|
137 |
+
if (typeof option == 'string') data[option].call($this)
|
138 |
+
})
|
139 |
+
}
|
140 |
|
141 |
+
var old = $.fn.dropdown
|
142 |
|
143 |
+
$.fn.dropdown = Plugin
|
144 |
+
$.fn.dropdown.Constructor = Dropdown
|
145 |
|
146 |
|
147 |
+
// DROPDOWN NO CONFLICT
|
148 |
+
// ====================
|
149 |
|
150 |
+
$.fn.dropdown.noConflict = function () {
|
151 |
+
$.fn.dropdown = old
|
152 |
+
return this
|
153 |
+
}
|
154 |
|
155 |
|
156 |
+
// APPLY TO STANDARD DROPDOWN ELEMENTS
|
157 |
+
// ===================================
|
158 |
|
159 |
+
$(document)
|
160 |
+
.on('click.bs.dropdown.data-api', clearMenus)
|
161 |
+
.on('click.bs.dropdown.data-api', '.dropdown form', function (e) {
|
162 |
+
e.stopPropagation()
|
163 |
+
})
|
164 |
+
.on('click.bs.dropdown.data-api', toggle, Dropdown.prototype.toggle)
|
165 |
+
.on('keydown.bs.dropdown.data-api', toggle + ', [role="menu"], [role="listbox"]', Dropdown.prototype.keydown)
|
166 |
|
167 |
}(jQuery);
|
js/exporting.js
CHANGED
@@ -5,18 +5,239 @@
|
|
5 |
(c) 2010-2014 Torstein Honsi
|
6 |
|
7 |
License: www.highcharts.com/license
|
8 |
-
*/
|
9 |
-
(function(f)
|
10 |
-
|
11 |
-
|
12 |
-
|
13 |
-
|
14 |
-
|
15 |
-
|
16 |
-
|
17 |
-
|
18 |
-
|
19 |
-
|
20 |
-
|
21 |
-
|
22 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
5 |
(c) 2010-2014 Torstein Honsi
|
6 |
|
7 |
License: www.highcharts.com/license
|
8 |
+
*/
|
9 |
+
(function (f) {
|
10 |
+
var A = f.Chart, t = f.addEvent, B = f.removeEvent, l = f.createElement, o = f.discardElement, v = f.css, k = f.merge, r = f.each, p = f.extend, D = Math.max, j = document, C = window, E = f.isTouchDevice, F = f.Renderer.prototype.symbols, s = f.getOptions(), y;
|
11 |
+
p(s.lang, {
|
12 |
+
printChart: "Print chart",
|
13 |
+
downloadPNG: "Download PNG image",
|
14 |
+
downloadJPEG: "Download JPEG image",
|
15 |
+
downloadPDF: "Download PDF document",
|
16 |
+
downloadSVG: "Download SVG vector image",
|
17 |
+
contextButtonTitle: "Chart context menu"
|
18 |
+
});
|
19 |
+
s.navigation = {
|
20 |
+
menuStyle: {
|
21 |
+
border: "1px solid #A0A0A0",
|
22 |
+
background: "#FFFFFF", padding: "5px 0"
|
23 |
+
},
|
24 |
+
menuItemStyle: {padding: "0 10px", background: "none", color: "#303030", fontSize: E ? "14px" : "11px"},
|
25 |
+
menuItemHoverStyle: {background: "#4572A5", color: "#FFFFFF"},
|
26 |
+
buttonOptions: {
|
27 |
+
symbolFill: "#E0E0E0",
|
28 |
+
symbolSize: 14,
|
29 |
+
symbolStroke: "#666",
|
30 |
+
symbolStrokeWidth: 3,
|
31 |
+
symbolX: 12.5,
|
32 |
+
symbolY: 10.5,
|
33 |
+
align: "right",
|
34 |
+
buttonSpacing: 3,
|
35 |
+
height: 22,
|
36 |
+
theme: {fill: "white", stroke: "none"},
|
37 |
+
verticalAlign: "top",
|
38 |
+
width: 24
|
39 |
+
}
|
40 |
+
};
|
41 |
+
s.exporting = {
|
42 |
+
type: "image/png", url: "http://export.highcharts.com/", buttons: {
|
43 |
+
contextButton: {
|
44 |
+
menuClassName: "highcharts-contextmenu",
|
45 |
+
symbol: "menu",
|
46 |
+
_titleKey: "contextButtonTitle",
|
47 |
+
menuItems: [{
|
48 |
+
textKey: "printChart", onclick: function () {
|
49 |
+
this.print()
|
50 |
+
}
|
51 |
+
}, {separator: !0}, {
|
52 |
+
textKey: "downloadPNG", onclick: function () {
|
53 |
+
this.exportChart()
|
54 |
+
}
|
55 |
+
}, {
|
56 |
+
textKey: "downloadJPEG", onclick: function () {
|
57 |
+
this.exportChart({type: "image/jpeg"})
|
58 |
+
}
|
59 |
+
}, {
|
60 |
+
textKey: "downloadPDF", onclick: function () {
|
61 |
+
this.exportChart({type: "application/pdf"})
|
62 |
+
}
|
63 |
+
}, {
|
64 |
+
textKey: "downloadSVG", onclick: function () {
|
65 |
+
this.exportChart({type: "image/svg+xml"})
|
66 |
+
}
|
67 |
+
}]
|
68 |
+
}
|
69 |
+
}
|
70 |
+
};
|
71 |
+
f.post = function (b, a, d) {
|
72 |
+
var c, b = l("form", k({
|
73 |
+
method: "post",
|
74 |
+
action: b, enctype: "multipart/form-data"
|
75 |
+
}, d), {display: "none"}, j.body);
|
76 |
+
for (c in a)l("input", {type: "hidden", name: c, value: a[c]}, null, b);
|
77 |
+
b.submit();
|
78 |
+
o(b)
|
79 |
+
};
|
80 |
+
p(A.prototype, {
|
81 |
+
getSVG: function (b) {
|
82 |
+
var a = this, d, c, z, h, g = k(a.options, b);
|
83 |
+
if (!j.createElementNS)j.createElementNS = function (a, b) {
|
84 |
+
return j.createElement(b)
|
85 |
+
};
|
86 |
+
b = l("div", null, {
|
87 |
+
position: "absolute",
|
88 |
+
top: "-9999em",
|
89 |
+
width: a.chartWidth + "px",
|
90 |
+
height: a.chartHeight + "px"
|
91 |
+
}, j.body);
|
92 |
+
c = a.renderTo.style.width;
|
93 |
+
h = a.renderTo.style.height;
|
94 |
+
c = g.exporting.sourceWidth || g.chart.width ||
|
95 |
+
/px$/.test(c) && parseInt(c, 10) || 600;
|
96 |
+
h = g.exporting.sourceHeight || g.chart.height || /px$/.test(h) && parseInt(h, 10) || 400;
|
97 |
+
p(g.chart, {animation: !1, renderTo: b, forExport: !0, width: c, height: h});
|
98 |
+
g.exporting.enabled = !1;
|
99 |
+
g.series = [];
|
100 |
+
r(a.series, function (a) {
|
101 |
+
z = k(a.options, {animation: !1, showCheckbox: !1, visible: a.visible});
|
102 |
+
z.isInternal || g.series.push(z)
|
103 |
+
});
|
104 |
+
d = new f.Chart(g, a.callback);
|
105 |
+
r(["xAxis", "yAxis"], function (b) {
|
106 |
+
r(a[b], function (a, c) {
|
107 |
+
var g = d[b][c], f = a.getExtremes(), h = f.userMin, f = f.userMax;
|
108 |
+
g && (h !== void 0 || f !== void 0) &&
|
109 |
+
g.setExtremes(h, f, !0, !1)
|
110 |
+
})
|
111 |
+
});
|
112 |
+
c = d.container.innerHTML;
|
113 |
+
g = null;
|
114 |
+
d.destroy();
|
115 |
+
o(b);
|
116 |
+
c = c.replace(/zIndex="[^"]+"/g, "").replace(/isShadow="[^"]+"/g, "").replace(/symbolName="[^"]+"/g, "").replace(/jQuery[0-9]+="[^"]+"/g, "").replace(/url\([^#]+#/g, "url(#").replace(/<svg /, '<svg xmlns:xlink="http://www.w3.org/1999/xlink" ').replace(/ href=/g, " xlink:href=").replace(/\n/, " ").replace(/<\/svg>.*?$/, "</svg>").replace(/ /g, " ").replace(/­/g, "").replace(/<IMG /g, "<image ").replace(/height=([^" ]+)/g, 'height="$1"').replace(/width=([^" ]+)/g,
|
117 |
+
'width="$1"').replace(/hc-svg-href="([^"]+)">/g, 'xlink:href="$1"/>').replace(/id=([^" >]+)/g, 'id="$1"').replace(/class=([^" >]+)/g, 'class="$1"').replace(/ transform /g, " ").replace(/:(path|rect)/g, "$1").replace(/style="([^"]+)"/g, function (a) {
|
118 |
+
return a.toLowerCase()
|
119 |
+
});
|
120 |
+
return c = c.replace(/(url\(#highcharts-[0-9]+)"/g, "$1").replace(/"/g, "'")
|
121 |
+
}, exportChart: function (b, a) {
|
122 |
+
var b = b || {}, d = this.options.exporting, d = this.getSVG(k({chart: {borderRadius: 0}}, d.chartOptions, a, {
|
123 |
+
exporting: {
|
124 |
+
sourceWidth: b.sourceWidth ||
|
125 |
+
d.sourceWidth, sourceHeight: b.sourceHeight || d.sourceHeight
|
126 |
+
}
|
127 |
+
})), b = k(this.options.exporting, b);
|
128 |
+
f.post(b.url, {
|
129 |
+
filename: b.filename || "chart",
|
130 |
+
type: b.type,
|
131 |
+
width: b.width || 0,
|
132 |
+
scale: b.scale || 2,
|
133 |
+
svg: d
|
134 |
+
}, b.formAttributes)
|
135 |
+
}, print: function () {
|
136 |
+
var b = this, a = b.container, d = [], c = a.parentNode, f = j.body, h = f.childNodes;
|
137 |
+
if (!b.isPrinting)b.isPrinting = !0, r(h, function (a, b) {
|
138 |
+
if (a.nodeType === 1)d[b] = a.style.display, a.style.display = "none"
|
139 |
+
}), f.appendChild(a), C.focus(), C.print(), setTimeout(function () {
|
140 |
+
c.appendChild(a);
|
141 |
+
r(h, function (a, b) {
|
142 |
+
if (a.nodeType ===
|
143 |
+
1)a.style.display = d[b]
|
144 |
+
});
|
145 |
+
b.isPrinting = !1
|
146 |
+
}, 1E3)
|
147 |
+
}, contextMenu: function (b, a, d, c, f, h, g) {
|
148 |
+
var e = this, k = e.options.navigation, q = k.menuItemStyle, m = e.chartWidth, n = e.chartHeight, j = "cache-" + b, i = e[j], u = D(f, h), w, x, o, s = function (a) {
|
149 |
+
e.pointer.inClass(a.target, b) || x()
|
150 |
+
};
|
151 |
+
if (!i)e[j] = i = l("div", {className: b}, {
|
152 |
+
position: "absolute",
|
153 |
+
zIndex: 1E3,
|
154 |
+
padding: u + "px"
|
155 |
+
}, e.container), w = l("div", null, p({
|
156 |
+
MozBoxShadow: "3px 3px 10px #888",
|
157 |
+
WebkitBoxShadow: "3px 3px 10px #888",
|
158 |
+
boxShadow: "3px 3px 10px #888"
|
159 |
+
}, k.menuStyle), i), x = function () {
|
160 |
+
v(i, {display: "none"});
|
161 |
+
g && g.setState(0);
|
162 |
+
e.openMenu = !1
|
163 |
+
}, t(i, "mouseleave", function () {
|
164 |
+
o = setTimeout(x, 500)
|
165 |
+
}), t(i, "mouseenter", function () {
|
166 |
+
clearTimeout(o)
|
167 |
+
}), t(document, "mouseup", s), t(e, "destroy", function () {
|
168 |
+
B(document, "mouseup", s)
|
169 |
+
}), r(a, function (a) {
|
170 |
+
if (a) {
|
171 |
+
var b = a.separator ? l("hr", null, null, w) : l("div", {
|
172 |
+
onmouseover: function () {
|
173 |
+
v(this, k.menuItemHoverStyle)
|
174 |
+
}, onmouseout: function () {
|
175 |
+
v(this, q)
|
176 |
+
}, onclick: function () {
|
177 |
+
x();
|
178 |
+
a.onclick.apply(e, arguments)
|
179 |
+
}, innerHTML: a.text || e.options.lang[a.textKey]
|
180 |
+
}, p({cursor: "pointer"}, q), w);
|
181 |
+
e.exportDivElements.push(b)
|
182 |
+
}
|
183 |
+
}),
|
184 |
+
e.exportDivElements.push(w, i), e.exportMenuWidth = i.offsetWidth, e.exportMenuHeight = i.offsetHeight;
|
185 |
+
a = {display: "block"};
|
186 |
+
d + e.exportMenuWidth > m ? a.right = m - d - f - u + "px" : a.left = d - u + "px";
|
187 |
+
c + h + e.exportMenuHeight > n && g.alignOptions.verticalAlign !== "top" ? a.bottom = n - c - u + "px" : a.top = c + h - u + "px";
|
188 |
+
v(i, a);
|
189 |
+
e.openMenu = !0
|
190 |
+
}, addButton: function (b) {
|
191 |
+
var a = this, d = a.renderer, c = k(a.options.navigation.buttonOptions, b), j = c.onclick, h = c.menuItems, g, e, l = {
|
192 |
+
stroke: c.symbolStroke,
|
193 |
+
fill: c.symbolFill
|
194 |
+
}, q = c.symbolSize || 12;
|
195 |
+
if (!a.btnCount)a.btnCount =
|
196 |
+
0;
|
197 |
+
if (!a.exportDivElements)a.exportDivElements = [], a.exportSVGElements = [];
|
198 |
+
if (c.enabled !== !1) {
|
199 |
+
var m = c.theme, n = m.states, o = n && n.hover, n = n && n.select, i;
|
200 |
+
delete m.states;
|
201 |
+
j ? i = function () {
|
202 |
+
j.apply(a, arguments)
|
203 |
+
} : h && (i = function () {
|
204 |
+
a.contextMenu(e.menuClassName, h, e.translateX, e.translateY, e.width, e.height, e);
|
205 |
+
e.setState(2)
|
206 |
+
});
|
207 |
+
c.text && c.symbol ? m.paddingLeft = f.pick(m.paddingLeft, 25) : c.text || p(m, {
|
208 |
+
width: c.width,
|
209 |
+
height: c.height,
|
210 |
+
padding: 0
|
211 |
+
});
|
212 |
+
e = d.button(c.text, 0, 0, i, m, o, n).attr({
|
213 |
+
title: a.options.lang[c._titleKey],
|
214 |
+
"stroke-linecap": "round"
|
215 |
+
});
|
216 |
+
e.menuClassName = b.menuClassName || "highcharts-menu-" + a.btnCount++;
|
217 |
+
c.symbol && (g = d.symbol(c.symbol, c.symbolX - q / 2, c.symbolY - q / 2, q, q).attr(p(l, {
|
218 |
+
"stroke-width": c.symbolStrokeWidth || 1,
|
219 |
+
zIndex: 1
|
220 |
+
})).add(e));
|
221 |
+
e.add().align(p(c, {width: e.width, x: f.pick(c.x, y)}), !0, "spacingBox");
|
222 |
+
y += (e.width + c.buttonSpacing) * (c.align === "right" ? -1 : 1);
|
223 |
+
a.exportSVGElements.push(e, g)
|
224 |
+
}
|
225 |
+
}, destroyExport: function (b) {
|
226 |
+
var b = b.target, a, d;
|
227 |
+
for (a = 0; a < b.exportSVGElements.length; a++)if (d = b.exportSVGElements[a])d.onclick = d.ontouchstart = null, b.exportSVGElements[a] =
|
228 |
+
d.destroy();
|
229 |
+
for (a = 0; a < b.exportDivElements.length; a++)d = b.exportDivElements[a], B(d, "mouseleave"), b.exportDivElements[a] = d.onmouseout = d.onmouseover = d.ontouchstart = d.onclick = null, o(d)
|
230 |
+
}
|
231 |
+
});
|
232 |
+
F.menu = function (b, a, d, c) {
|
233 |
+
return ["M", b, a + 2.5, "L", b + d, a + 2.5, "M", b, a + c / 2 + 0.5, "L", b + d, a + c / 2 + 0.5, "M", b, a + c - 1.5, "L", b + d, a + c - 1.5]
|
234 |
+
};
|
235 |
+
A.prototype.callbacks.push(function (b) {
|
236 |
+
var a, d = b.options.exporting, c = d.buttons;
|
237 |
+
y = 0;
|
238 |
+
if (d.enabled !== !1) {
|
239 |
+
for (a in c)b.addButton(c[a]);
|
240 |
+
t(b, "destroy", b.destroyExport)
|
241 |
+
}
|
242 |
+
})
|
243 |
+
})(Highcharts);
|
js/highcharts-3d.js
CHANGED
@@ -4,38 +4,562 @@
|
|
4 |
(c) 2009-2013 Torstein Hønsi
|
5 |
|
6 |
License: www.highcharts.com/license
|
7 |
-
*/
|
8 |
-
(function
|
9 |
-
|
10 |
-
|
11 |
-
|
12 |
-
a
|
13 |
-
|
14 |
-
|
15 |
-
|
16 |
-
|
17 |
-
|
18 |
-
|
19 |
-
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
-
|
26 |
-
|
27 |
-
|
28 |
-
|
29 |
-
|
30 |
-
|
31 |
-
|
32 |
-
|
33 |
-
|
34 |
-
|
35 |
-
|
36 |
-
(
|
37 |
-
|
38 |
-
|
39 |
-
|
40 |
-
|
41 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
4 |
(c) 2009-2013 Torstein Hønsi
|
5 |
|
6 |
License: www.highcharts.com/license
|
7 |
+
*/
|
8 |
+
(function (c) {
|
9 |
+
function x(e, a, b, d) {
|
10 |
+
var f, g, h;
|
11 |
+
b *= n;
|
12 |
+
a *= n;
|
13 |
+
var i = [], j, o, t;
|
14 |
+
b *= -1;
|
15 |
+
j = d.x;
|
16 |
+
o = d.y;
|
17 |
+
t = (d.z === 0 ? 1.0E-4 : d.z) * (d.vd || 25);
|
18 |
+
var y = k(b), v = l(b), m = k(a), q = l(a), r, u, s;
|
19 |
+
c.each(e, function (a) {
|
20 |
+
r = a.x - j;
|
21 |
+
u = a.y - o;
|
22 |
+
s = a.z || 0;
|
23 |
+
f = v * r - y * s;
|
24 |
+
g = -y * m * r - v * m * s + q * u;
|
25 |
+
h = y * q * r + v * q * s + m * u;
|
26 |
+
f = f * ((t - h) / t) + j;
|
27 |
+
g = g * ((t - h) / t) + o;
|
28 |
+
i.push({x: C(f), y: C(g), z: C(h)})
|
29 |
+
});
|
30 |
+
return i
|
31 |
+
}
|
32 |
+
|
33 |
+
function z(e, a, b, d, f, c, h, i) {
|
34 |
+
var j = [];
|
35 |
+
return c > f && c - f > m / 2 + 1.0E-4 ? (j = j.concat(z(e, a, b, d, f, f + m / 2, h, i)), j = j.concat(z(e, a, b, d, f + m / 2, c, h, i))) : c < f && f - c > m / 2 + 1.0E-4 ? (j = j.concat(z(e, a, b,
|
36 |
+
d, f, f - m / 2, h, i)), j = j.concat(z(e, a, b, d, f - m / 2, c, h, i))) : (j = c - f, ["C", e + b * l(f) - b * D * j * k(f) + h, a + d * k(f) + d * D * j * l(f) + i, e + b * l(c) + b * D * j * k(c) + h, a + d * k(c) - d * D * j * l(c) + i, e + b * l(c) + h, a + d * k(c) + i])
|
37 |
+
}
|
38 |
+
|
39 |
+
function F(e) {
|
40 |
+
if (this.chart.is3d()) {
|
41 |
+
var a = this.chart.options.plotOptions.column.grouping;
|
42 |
+
a !== void 0 && !a && this.group.zIndex !== void 0 && this.group.attr({zIndex: this.group.zIndex * 10});
|
43 |
+
if (this.userOptions.borderColor === void 0)this.options.borderColor = this.color;
|
44 |
+
c.each(this.data, function (a) {
|
45 |
+
var d = a.options.borderColor || a.color || a.series.userOptions.borderColor;
|
46 |
+
a.options.borderColor = d;
|
47 |
+
a.borderColor = d;
|
48 |
+
a.pointAttr[""].stroke = d;
|
49 |
+
a.pointAttr.hover.stroke = d;
|
50 |
+
a.pointAttr.select.stroke = d
|
51 |
+
})
|
52 |
+
}
|
53 |
+
e.apply(this, [].slice.call(arguments, 1))
|
54 |
+
}
|
55 |
+
|
56 |
+
var m = Math.PI, n = m / 180, k = Math.sin, l = Math.cos, C = Math.round, D = 4 * (Math.sqrt(2) - 1) / 3 / (m / 2);
|
57 |
+
c.SVGRenderer.prototype.toLinePath = function (e, a) {
|
58 |
+
var b = [];
|
59 |
+
c.each(e, function (a) {
|
60 |
+
b.push("L", a.x, a.y)
|
61 |
+
});
|
62 |
+
b[0] = "M";
|
63 |
+
a && b.push("Z");
|
64 |
+
return b
|
65 |
+
};
|
66 |
+
c.SVGRenderer.prototype.cuboid = function (e) {
|
67 |
+
var a = this.g(), e = this.cuboidPath(e);
|
68 |
+
a.front = this.path(e[0]).attr({
|
69 |
+
zIndex: e[3],
|
70 |
+
"stroke-linejoin": "round"
|
71 |
+
}).add(a);
|
72 |
+
a.top = this.path(e[1]).attr({zIndex: e[4], "stroke-linejoin": "round"}).add(a);
|
73 |
+
a.side = this.path(e[2]).attr({zIndex: e[5], "stroke-linejoin": "round"}).add(a);
|
74 |
+
a.fillSetter = function (a) {
|
75 |
+
var d = c.Color(a).brighten(0.1).get(), e = c.Color(a).brighten(-0.1).get();
|
76 |
+
this.front.attr({fill: a});
|
77 |
+
this.top.attr({fill: d});
|
78 |
+
this.side.attr({fill: e});
|
79 |
+
this.color = a;
|
80 |
+
return this
|
81 |
+
};
|
82 |
+
a.opacitySetter = function (a) {
|
83 |
+
this.front.attr({opacity: a});
|
84 |
+
this.top.attr({opacity: a});
|
85 |
+
this.side.attr({opacity: a});
|
86 |
+
return this
|
87 |
+
};
|
88 |
+
a.attr = function (a) {
|
89 |
+
a.shapeArgs || a.x ? (a = this.renderer.cuboidPath(a.shapeArgs || a), this.front.attr({
|
90 |
+
d: a[0],
|
91 |
+
zIndex: a[3]
|
92 |
+
}), this.top.attr({d: a[1], zIndex: a[4]}), this.side.attr({
|
93 |
+
d: a[2],
|
94 |
+
zIndex: a[5]
|
95 |
+
})) : c.SVGElement.prototype.attr.call(this, a);
|
96 |
+
return this
|
97 |
+
};
|
98 |
+
a.animate = function (a, d, e) {
|
99 |
+
a.x && a.y ? (a = this.renderer.cuboidPath(a), this.front.attr({zIndex: a[3]}).animate({d: a[0]}, d, e), this.top.attr({zIndex: a[4]}).animate({d: a[1]}, d, e), this.side.attr({zIndex: a[5]}).animate({d: a[2]}, d, e)) : a.opacity ? (this.front.animate(a,
|
100 |
+
d, e), this.top.animate(a, d, e), this.side.animate(a, d, e)) : c.SVGElement.prototype.animate.call(this, a, d, e);
|
101 |
+
return this
|
102 |
+
};
|
103 |
+
a.destroy = function () {
|
104 |
+
this.front.destroy();
|
105 |
+
this.top.destroy();
|
106 |
+
this.side.destroy();
|
107 |
+
return null
|
108 |
+
};
|
109 |
+
a.attr({zIndex: -e[3]});
|
110 |
+
return a
|
111 |
+
};
|
112 |
+
c.SVGRenderer.prototype.cuboidPath = function (e) {
|
113 |
+
var a = e.x, b = e.y, d = e.z, c = e.height, g = e.width, h = e.depth, i = e.alpha, j = e.beta, a = [{
|
114 |
+
x: a,
|
115 |
+
y: b,
|
116 |
+
z: d
|
117 |
+
}, {x: a + g, y: b, z: d}, {x: a + g, y: b + c, z: d}, {x: a, y: b + c, z: d}, {
|
118 |
+
x: a,
|
119 |
+
y: b + c,
|
120 |
+
z: d + h
|
121 |
+
}, {x: a + g, y: b + c, z: d + h}, {x: a + g, y: b, z: d + h}, {x: a, y: b, z: d + h}],
|
122 |
+
a = x(a, i, j, e.origin), e = ["M", a[0].x, a[0].y, "L", a[7].x, a[7].y, "L", a[6].x, a[6].y, "L", a[1].x, a[1].y, "Z"], b = ["M", a[3].x, a[3].y, "L", a[2].x, a[2].y, "L", a[5].x, a[5].y, "L", a[4].x, a[4].y, "Z"], d = ["M", a[1].x, a[1].y, "L", a[2].x, a[2].y, "L", a[5].x, a[5].y, "L", a[6].x, a[6].y, "Z"], c = ["M", a[0].x, a[0].y, "L", a[7].x, a[7].y, "L", a[4].x, a[4].y, "L", a[3].x, a[3].y, "Z"];
|
123 |
+
return [["M", a[0].x, a[0].y, "L", a[1].x, a[1].y, "L", a[2].x, a[2].y, "L", a[3].x, a[3].y, "Z"], a[7].y < a[1].y ? e : a[4].y > a[2].y ? b : [], a[6].x > a[1].x ? d : a[7].x < a[0].x ? c : [], (a[0].z +
|
124 |
+
a[1].z + a[2].z + a[3].z) / 4, j > 0 ? (a[0].z + a[7].z + a[6].z + a[1].z) / 4 : (a[3].z + a[2].z + a[5].z + a[4].z) / 4, i > 0 ? (a[1].z + a[2].z + a[5].z + a[6].z) / 4 : (a[0].z + a[7].z + a[4].z + a[3].z) / 4]
|
125 |
+
};
|
126 |
+
c.SVGRenderer.prototype.arc3d = function (e) {
|
127 |
+
e.alpha *= n;
|
128 |
+
e.beta *= n;
|
129 |
+
var a = this.g(), b = this.arc3dPath(e), d = a.renderer, f = b.zAll * 100;
|
130 |
+
a.shapeArgs = e;
|
131 |
+
a.side1 = d.path(b.side2).attr({zIndex: b.zSide2}).add(a);
|
132 |
+
a.side2 = d.path(b.side1).attr({zIndex: b.zSide1}).add(a);
|
133 |
+
a.inn = d.path(b.inn).attr({zIndex: b.zInn}).add(a);
|
134 |
+
a.out = d.path(b.out).attr({zIndex: b.zOut}).add(a);
|
135 |
+
a.top = d.path(b.top).attr({zIndex: b.zTop}).add(a);
|
136 |
+
a.fillSetter = function (a) {
|
137 |
+
this.color = a;
|
138 |
+
var b = c.Color(a).brighten(-0.1).get();
|
139 |
+
this.side1.attr({fill: b});
|
140 |
+
this.side2.attr({fill: b});
|
141 |
+
this.inn.attr({fill: b});
|
142 |
+
this.out.attr({fill: b});
|
143 |
+
this.top.attr({fill: a});
|
144 |
+
return this
|
145 |
+
};
|
146 |
+
a.animate = function (a, b, d) {
|
147 |
+
c.SVGElement.prototype.animate.call(this, a, b, d);
|
148 |
+
if (a.x && a.y)b = this.renderer, a = c.splat(a)[0], a.alpha *= n, a.beta *= n, b = b.arc3dPath(a), this.shapeArgs = a, this.inn.attr({
|
149 |
+
d: b.inn,
|
150 |
+
zIndex: b.zInn
|
151 |
+
}), this.out.attr({d: b.out, zIndex: b.zOut}),
|
152 |
+
this.side1.attr({d: b.side1, zIndex: b.zSide2}), this.side2.attr({
|
153 |
+
d: b.side2,
|
154 |
+
zIndex: b.zSide1
|
155 |
+
}), this.top.attr({
|
156 |
+
d: b.top,
|
157 |
+
zIndex: b.zTop
|
158 |
+
}), this.attr({fill: this.color}), this.attr({zIndex: b.zAll * 100});
|
159 |
+
return this
|
160 |
+
};
|
161 |
+
a.zIndex = f;
|
162 |
+
a.attr({zIndex: f});
|
163 |
+
return a
|
164 |
+
};
|
165 |
+
c.SVGRenderer.prototype.arc3dPath = function (e) {
|
166 |
+
var a = e.x, b = e.y, d = e.start, c = e.end - 1.0E-5, g = e.r, h = e.innerR, i = e.depth, j = e.alpha, o = e.beta, t = l(d), y = k(d), v = l(c), n = k(c), q = g * l(o), r = g * l(j), u = h * l(o), s = h * l(j), A = i * k(o), B = i * k(j), i = ["M", a + q * t, b + r * y], i = i.concat(z(a, b, q, r, d, c,
|
167 |
+
0, 0)), i = i.concat(["L", a + u * v, b + s * n]), i = i.concat(z(a, b, u, s, c, d, 0, 0)), i = i.concat(["Z"]), e = (e.start + e.end) / 2, e = k(o) * l(e) + k(-j) * k(-e), p = o > 0 ? m / 2 : 0, w = j > 0 ? 0 : m / 2, p = d > -p ? d : c > -p ? -p : d, x = c < m - w ? c : d < m - w ? m - w : c, w = ["M", a + q * l(p), b + r * k(p)], w = w.concat(z(a, b, q, r, p, x, 0, 0)), w = w.concat(["L", a + q * l(x) + A, b + r * k(x) + B]), w = w.concat(z(a, b, q, r, x, p, A, B)), w = w.concat(["Z"]), p = ["M", a + u * t, b + s * y], p = p.concat(z(a, b, u, s, d, c, 0, 0)), p = p.concat(["L", a + u * l(c) + A, b + s * k(c) + B]), p = p.concat(z(a, b, u, s, c, d, A, B)), p = p.concat(["Z"]), t = ["M", a + q * t, b + r * y, "L",
|
168 |
+
a + q * t + A, b + r * y + B, "L", a + u * t + A, b + s * y + B, "L", a + u * t, b + s * y, "Z"], a = ["M", a + q * v, b + r * n, "L", a + q * v + A, b + r * n + B, "L", a + u * v + A, b + s * n + B, "L", a + u * v, b + s * n, "Z"], v = h + (g - h) / 2, b = Math.abs(e * 2 * v);
|
169 |
+
g *= e;
|
170 |
+
h *= e;
|
171 |
+
d = (k(o) * l(d) + k(-j) * k(-d)) * v;
|
172 |
+
c = (k(o) * l(c) + k(-j) * k(-c)) * v;
|
173 |
+
return {
|
174 |
+
top: i,
|
175 |
+
zTop: b * 100,
|
176 |
+
out: w,
|
177 |
+
zOut: g * 100,
|
178 |
+
inn: p,
|
179 |
+
zInn: h * 100,
|
180 |
+
side1: t,
|
181 |
+
zSide1: d * 100,
|
182 |
+
side2: a,
|
183 |
+
zSide2: c * 100,
|
184 |
+
zAll: e
|
185 |
+
}
|
186 |
+
};
|
187 |
+
c.Chart.prototype.is3d = function () {
|
188 |
+
return this.options.chart.options3d && this.options.chart.options3d.enabled
|
189 |
+
};
|
190 |
+
c.wrap(c.Chart.prototype, "isInsidePlot", function (c) {
|
191 |
+
return this.is3d() ?
|
192 |
+
!0 : c.apply(this, [].slice.call(arguments, 1))
|
193 |
+
});
|
194 |
+
c.wrap(c.Chart.prototype, "init", function (e) {
|
195 |
+
var a = arguments;
|
196 |
+
a[1] = c.merge({
|
197 |
+
chart: {
|
198 |
+
options3d: {
|
199 |
+
enabled: !1,
|
200 |
+
alpha: 0,
|
201 |
+
beta: 0,
|
202 |
+
depth: 100,
|
203 |
+
viewDistance: 25,
|
204 |
+
frame: {
|
205 |
+
bottom: {size: 1, color: "rgba(255,255,255,0)"},
|
206 |
+
side: {size: 1, color: "rgba(255,255,255,0)"},
|
207 |
+
back: {size: 1, color: "rgba(255,255,255,0)"}
|
208 |
+
}
|
209 |
+
}
|
210 |
+
}
|
211 |
+
}, a[1]);
|
212 |
+
e.apply(this, [].slice.call(a, 1))
|
213 |
+
});
|
214 |
+
c.wrap(c.Chart.prototype, "setChartSize", function (c) {
|
215 |
+
c.apply(this, [].slice.call(arguments, 1));
|
216 |
+
if (this.is3d()) {
|
217 |
+
var a = this.inverted, b =
|
218 |
+
this.clipBox, d = this.margin;
|
219 |
+
b[a ? "y" : "x"] = -(d[3] || 0);
|
220 |
+
b[a ? "x" : "y"] = -(d[0] || 0);
|
221 |
+
b[a ? "height" : "width"] = this.chartWidth + (d[3] || 0) + (d[1] || 0);
|
222 |
+
b[a ? "width" : "height"] = this.chartHeight + (d[0] || 0) + (d[2] || 0)
|
223 |
+
}
|
224 |
+
});
|
225 |
+
c.wrap(c.Chart.prototype, "redraw", function (c) {
|
226 |
+
if (this.is3d())this.isDirtyBox = !0;
|
227 |
+
c.apply(this, [].slice.call(arguments, 1))
|
228 |
+
});
|
229 |
+
c.Chart.prototype.retrieveStacks = function () {
|
230 |
+
var e = {}, a = this.options.plotOptions[this.options.chart.type], b = a.stacking, d = 1;
|
231 |
+
if (a.grouping || !b)return this.series;
|
232 |
+
c.each(this.series, function (a) {
|
233 |
+
e[a.options.stack ||
|
234 |
+
0] ? e[a.options.stack || 0].series.push(a) : (e[a.options.stack || 0] = {series: [a], position: d}, d++)
|
235 |
+
});
|
236 |
+
e.totalStacks = d + 1;
|
237 |
+
return e
|
238 |
+
};
|
239 |
+
c.wrap(c.Axis.prototype, "init", function (e) {
|
240 |
+
var a = arguments;
|
241 |
+
if (a[1].is3d())a[2].tickWidth = c.pick(a[2].tickWidth, 0), a[2].gridLineWidth = c.pick(a[2].gridLineWidth, 1);
|
242 |
+
e.apply(this, [].slice.call(arguments, 1))
|
243 |
+
});
|
244 |
+
c.wrap(c.Axis.prototype, "render", function (c) {
|
245 |
+
c.apply(this, [].slice.call(arguments, 1));
|
246 |
+
if (this.chart.is3d()) {
|
247 |
+
var a = this.chart, b = a.renderer, d = a.options.chart.options3d, f = d.alpha,
|
248 |
+
g = d.beta * (a.yAxis[0].opposite ? -1 : 1), h = d.frame, i = h.bottom, j = h.back, h = h.side, o = d.depth, k = this.height, l = this.width, m = this.left, n = this.top, d = {
|
249 |
+
x: a.plotLeft + a.plotWidth / 2,
|
250 |
+
y: a.plotTop + a.plotHeight / 2,
|
251 |
+
z: o,
|
252 |
+
vd: d.viewDistance
|
253 |
+
};
|
254 |
+
if (this.horiz)this.axisLine && this.axisLine.hide(), g = {
|
255 |
+
x: m,
|
256 |
+
y: n + (a.yAxis[0].reversed ? -i.size : k),
|
257 |
+
z: 0,
|
258 |
+
width: l,
|
259 |
+
height: i.size,
|
260 |
+
depth: o,
|
261 |
+
alpha: f,
|
262 |
+
beta: g,
|
263 |
+
origin: d
|
264 |
+
}, this.bottomFrame ? this.bottomFrame.animate(g) : this.bottomFrame = b.cuboid(g).attr({
|
265 |
+
fill: i.color,
|
266 |
+
zIndex: a.yAxis[0].reversed && f > 0 ? 4 : -1
|
267 |
+
}).css({stroke: i.color}).add();
|
268 |
+
else {
|
269 |
+
var q = {
|
270 |
+
x: m,
|
271 |
+
y: n,
|
272 |
+
z: o + 1,
|
273 |
+
width: l,
|
274 |
+
height: k + i.size,
|
275 |
+
depth: j.size,
|
276 |
+
alpha: f,
|
277 |
+
beta: g,
|
278 |
+
origin: d
|
279 |
+
};
|
280 |
+
this.backFrame ? this.backFrame.animate(q) : this.backFrame = b.cuboid(q).attr({
|
281 |
+
fill: j.color,
|
282 |
+
zIndex: -3
|
283 |
+
}).css({stroke: j.color}).add();
|
284 |
+
this.axisLine && this.axisLine.hide();
|
285 |
+
a = {
|
286 |
+
x: (a.yAxis[0].opposite ? l : 0) + m - h.size,
|
287 |
+
y: n,
|
288 |
+
z: 0,
|
289 |
+
width: h.size,
|
290 |
+
height: k + i.size,
|
291 |
+
depth: o + j.size,
|
292 |
+
alpha: f,
|
293 |
+
beta: g,
|
294 |
+
origin: d
|
295 |
+
};
|
296 |
+
this.sideFrame ? this.sideFrame.animate(a) : this.sideFrame = b.cuboid(a).attr({
|
297 |
+
fill: h.color,
|
298 |
+
zIndex: -2
|
299 |
+
}).css({stroke: h.color}).add()
|
300 |
+
}
|
301 |
+
}
|
302 |
+
});
|
303 |
+
c.wrap(c.Axis.prototype,
|
304 |
+
"getPlotLinePath", function (c) {
|
305 |
+
var a = c.apply(this, [].slice.call(arguments, 1));
|
306 |
+
if (!this.chart.is3d())return a;
|
307 |
+
if (a === null)return a;
|
308 |
+
var b = this.chart, d = b.options.chart.options3d, f = d.depth;
|
309 |
+
d.origin = {x: b.plotLeft + b.plotWidth / 2, y: b.plotTop + b.plotHeight / 2, z: f, vd: d.viewDistance};
|
310 |
+
var a = [{x: a[1], y: a[2], z: this.horiz || this.opposite ? f : 0}, {x: a[1], y: a[2], z: f}, {
|
311 |
+
x: a[4],
|
312 |
+
y: a[5],
|
313 |
+
z: f
|
314 |
+
}, {
|
315 |
+
x: a[4],
|
316 |
+
y: a[5],
|
317 |
+
z: this.horiz || this.opposite ? 0 : f
|
318 |
+
}], f = b.options.inverted ? d.beta : d.alpha, g = b.options.inverted ? d.alpha : d.beta;
|
319 |
+
g *= b.yAxis[0].opposite ?
|
320 |
+
-1 : 1;
|
321 |
+
a = x(a, f, g, d.origin);
|
322 |
+
return a = this.chart.renderer.toLinePath(a, !1)
|
323 |
+
});
|
324 |
+
c.wrap(c.Tick.prototype, "getMarkPath", function (c) {
|
325 |
+
var a = c.apply(this, [].slice.call(arguments, 1));
|
326 |
+
if (!this.axis.chart.is3d())return a;
|
327 |
+
var b = this.axis.chart, d = b.options.chart.options3d, f = {
|
328 |
+
x: b.plotLeft + b.plotWidth / 2,
|
329 |
+
y: b.plotTop + b.plotHeight / 2,
|
330 |
+
z: d.depth,
|
331 |
+
vd: d.viewDistance
|
332 |
+
}, a = [{x: a[1], y: a[2], z: 0}, {
|
333 |
+
x: a[4],
|
334 |
+
y: a[5],
|
335 |
+
z: 0
|
336 |
+
}], g = b.inverted ? d.beta : d.alpha, d = b.inverted ? d.alpha : d.beta;
|
337 |
+
d *= b.yAxis[0].opposite ? -1 : 1;
|
338 |
+
a = x(a, g, d, f);
|
339 |
+
return a = ["M", a[0].x,
|
340 |
+
a[0].y, "L", a[1].x, a[1].y]
|
341 |
+
});
|
342 |
+
c.wrap(c.Tick.prototype, "getLabelPosition", function (c) {
|
343 |
+
var a = c.apply(this, [].slice.call(arguments, 1));
|
344 |
+
if (!this.axis.chart.is3d())return a;
|
345 |
+
var b = this.axis.chart, d = b.options.chart.options3d, f = {
|
346 |
+
x: b.plotLeft + b.plotWidth / 2,
|
347 |
+
y: b.plotTop + b.plotHeight / 2,
|
348 |
+
z: d.depth,
|
349 |
+
vd: d.viewDistance
|
350 |
+
}, g = b.inverted ? d.beta : d.alpha, d = b.inverted ? d.alpha : d.beta;
|
351 |
+
d *= b.yAxis[0].opposite ? -1 : 1;
|
352 |
+
return a = x([{x: a.x, y: a.y, z: 0}], g, d, f)[0]
|
353 |
+
});
|
354 |
+
c.wrap(c.Axis.prototype, "drawCrosshair", function (c) {
|
355 |
+
var a = arguments;
|
356 |
+
this.chart.is3d() &&
|
357 |
+
a[2] && (a[2] = {plotX: a[2].plotXold || a[2].plotX, plotY: a[2].plotYold || a[2].plotY});
|
358 |
+
c.apply(this, [].slice.call(a, 1))
|
359 |
+
});
|
360 |
+
c.wrap(c.seriesTypes.column.prototype, "translate", function (e) {
|
361 |
+
e.apply(this, [].slice.call(arguments, 1));
|
362 |
+
if (this.chart.is3d()) {
|
363 |
+
var a = this.chart, b = a.options, d = b.plotOptions[this.chart.options.chart.type], b = b.chart.options3d, f = d.depth || 25, g = {
|
364 |
+
x: a.plotWidth / 2,
|
365 |
+
y: a.plotHeight / 2,
|
366 |
+
z: b.depth,
|
367 |
+
vd: b.viewDistance
|
368 |
+
}, h = b.alpha, i = b.beta * (a.yAxis[0].opposite ? -1 : 1), j = (d.stacking ? this.options.stack || 0 : this._i) *
|
369 |
+
(f + (d.groupZPadding || 1));
|
370 |
+
d.grouping !== !1 && (j = 0);
|
371 |
+
j += d.groupZPadding || 1;
|
372 |
+
c.each(this.data, function (a) {
|
373 |
+
var b = a.shapeArgs, c = a.tooltipPos;
|
374 |
+
a.shapeType = "cuboid";
|
375 |
+
b.alpha = h;
|
376 |
+
b.beta = i;
|
377 |
+
b.z = j;
|
378 |
+
b.origin = g;
|
379 |
+
b.depth = f;
|
380 |
+
c = x([{x: c[0], y: c[1], z: j}], h, i, g)[0];
|
381 |
+
a.tooltipPos = [c.x, c.y]
|
382 |
+
})
|
383 |
+
}
|
384 |
+
});
|
385 |
+
c.wrap(c.seriesTypes.column.prototype, "animate", function (e) {
|
386 |
+
if (this.chart.is3d()) {
|
387 |
+
var a = arguments[1], b = this.yAxis, d = this, f = this.yAxis.reversed;
|
388 |
+
if (c.svg)a ? c.each(d.data, function (a) {
|
389 |
+
a.height = a.shapeArgs.height;
|
390 |
+
a.shapeArgs.height = 1;
|
391 |
+
if (!f)a.shapeArgs.y =
|
392 |
+
a.stackY ? a.plotY + b.translate(a.stackY) : a.plotY + (a.negative ? -a.height : a.height)
|
393 |
+
}) : (c.each(d.data, function (a) {
|
394 |
+
a.shapeArgs.height = a.height;
|
395 |
+
if (!f)a.shapeArgs.y = a.plotY - (a.negative ? a.height : 0);
|
396 |
+
a.graphic && a.graphic.animate(a.shapeArgs, d.options.animation)
|
397 |
+
}), d.animate = null)
|
398 |
+
} else e.apply(this, [].slice.call(arguments, 1))
|
399 |
+
});
|
400 |
+
c.wrap(c.seriesTypes.column.prototype, "init", function (c) {
|
401 |
+
c.apply(this, [].slice.call(arguments, 1));
|
402 |
+
if (this.chart.is3d()) {
|
403 |
+
var a = this.chart.options.plotOptions.column.grouping, b = this.chart.options.plotOptions.column.stacking,
|
404 |
+
d = this.options.zIndex;
|
405 |
+
if (!d && (a === void 0 || a) && b) {
|
406 |
+
a = this.chart.retrieveStacks();
|
407 |
+
b = this.options.stack || 0;
|
408 |
+
for (d = 0; d < a[b].series.length; d++)if (a[b].series[d] === this)break;
|
409 |
+
d = a.totalStacks * 10 - 10 * (a.totalStacks - a[b].position) - d;
|
410 |
+
this.options.zIndex = d
|
411 |
+
}
|
412 |
+
}
|
413 |
+
});
|
414 |
+
c.seriesTypes.columnrange && c.wrap(c.seriesTypes.columnrange.prototype, "drawPoints", F);
|
415 |
+
c.wrap(c.seriesTypes.column.prototype, "drawPoints", F);
|
416 |
+
var E = c.getOptions();
|
417 |
+
E.plotOptions.cylinder = c.merge(E.plotOptions.column);
|
418 |
+
E = c.extendClass(c.seriesTypes.column, {type: "cylinder"});
|
419 |
+
c.seriesTypes.cylinder = E;
|
420 |
+
c.wrap(c.seriesTypes.cylinder.prototype, "translate", function (e) {
|
421 |
+
e.apply(this, [].slice.call(arguments, 1));
|
422 |
+
if (this.chart.is3d()) {
|
423 |
+
var a = this.chart, b = a.options, d = b.plotOptions.cylinder, b = b.chart.options3d, f = d.depth || 0, g = {
|
424 |
+
x: a.inverted ? a.plotHeight / 2 : a.plotWidth / 2,
|
425 |
+
y: a.inverted ? a.plotWidth / 2 : a.plotHeight / 2,
|
426 |
+
z: b.depth,
|
427 |
+
vd: b.viewDistance
|
428 |
+
}, h = b.alpha, i = d.stacking ? (this.options.stack || 0) * f : this._i * f;
|
429 |
+
i += f / 2;
|
430 |
+
d.grouping !== !1 && (i = 0);
|
431 |
+
c.each(this.data, function (a) {
|
432 |
+
var b = a.shapeArgs;
|
433 |
+
a.shapeType =
|
434 |
+
"arc3d";
|
435 |
+
b.x += f / 2;
|
436 |
+
b.z = i;
|
437 |
+
b.start = 0;
|
438 |
+
b.end = 2 * m;
|
439 |
+
b.r = f * 0.95;
|
440 |
+
b.innerR = 0;
|
441 |
+
b.depth = b.height * (1 / k((90 - h) * n)) - i;
|
442 |
+
b.alpha = 90 - h;
|
443 |
+
b.beta = 0;
|
444 |
+
b.origin = g
|
445 |
+
})
|
446 |
+
}
|
447 |
+
});
|
448 |
+
c.wrap(c.seriesTypes.pie.prototype, "translate", function (e) {
|
449 |
+
e.apply(this, [].slice.call(arguments, 1));
|
450 |
+
if (this.chart.is3d()) {
|
451 |
+
var a = this, b = a.chart, d = b.options, f = d.plotOptions.pie, g = f.depth || 0, d = d.chart.options3d, h = {
|
452 |
+
x: b.plotWidth / 2,
|
453 |
+
y: b.plotHeight / 2,
|
454 |
+
z: d.depth
|
455 |
+
}, i = d.alpha, j = d.beta, o = f.stacking ? (this.options.stack || 0) * g : a._i * g;
|
456 |
+
o += g / 2;
|
457 |
+
f.grouping !== !1 && (o = 0);
|
458 |
+
c.each(a.data,
|
459 |
+
function (b) {
|
460 |
+
b.shapeType = "arc3d";
|
461 |
+
var c = b.shapeArgs;
|
462 |
+
c.z = o;
|
463 |
+
c.depth = g * 0.75;
|
464 |
+
c.origin = h;
|
465 |
+
c.alpha = i;
|
466 |
+
c.beta = j;
|
467 |
+
c = (c.end + c.start) / 2;
|
468 |
+
b.slicedTranslation = {
|
469 |
+
translateX: C(l(c) * a.options.slicedOffset * l(i * n)),
|
470 |
+
translateY: C(k(c) * a.options.slicedOffset * l(i * n))
|
471 |
+
}
|
472 |
+
})
|
473 |
+
}
|
474 |
+
});
|
475 |
+
c.wrap(c.seriesTypes.pie.prototype.pointClass.prototype, "haloPath", function (c) {
|
476 |
+
return this.series.chart.is3d() ? [] : c.call(this)
|
477 |
+
});
|
478 |
+
c.wrap(c.seriesTypes.pie.prototype, "drawPoints", function (e) {
|
479 |
+
this.chart.is3d() && c.each(this.data, function (a) {
|
480 |
+
var b = a.options.borderColor ||
|
481 |
+
a.color || a.series.userOptions.borderColor || a.series.color;
|
482 |
+
a.options.borderColor = b;
|
483 |
+
a.borderColor = b;
|
484 |
+
a.pointAttr[""].stroke = b;
|
485 |
+
a.pointAttr.hover.stroke = b;
|
486 |
+
a.pointAttr.select.stroke = b
|
487 |
+
});
|
488 |
+
e.apply(this, [].slice.call(arguments, 1))
|
489 |
+
});
|
490 |
+
c.wrap(c.seriesTypes.pie.prototype, "drawDataLabels", function (e) {
|
491 |
+
e.apply(this, [].slice.call(arguments, 1));
|
492 |
+
this.chart.is3d() && c.each(this.data, function (a) {
|
493 |
+
var b = a.shapeArgs, c = b.r, e = b.depth, g = b.alpha * n, h = b.beta * n, b = (b.start + b.end) / 2;
|
494 |
+
a.connector && a.connector.translate(-c * (1 - l(h)) * l(b) +
|
495 |
+
(l(b) > 0 ? k(h) * e : 0), -c * (1 - l(g)) * k(b) + (k(b) > 0 ? k(g) * e : 0));
|
496 |
+
a.dataLabel && a.dataLabel.attr({
|
497 |
+
x: a.dataLabel.connX + -c * (1 - l(h)) * l(b) + (l(b) > 0 ? l(h) * e : 0) - a.dataLabel.width / 2,
|
498 |
+
y: a.dataLabel.connY + -c * (1 - l(g)) * k(b) + (k(b) > 0 ? k(g) * e : 0) - a.dataLabel.height / 2
|
499 |
+
})
|
500 |
+
})
|
501 |
+
});
|
502 |
+
c.wrap(c.seriesTypes.pie.prototype, "addPoint", function (c) {
|
503 |
+
c.apply(this, [].slice.call(arguments, 1));
|
504 |
+
this.chart.is3d() && this.update()
|
505 |
+
});
|
506 |
+
c.wrap(c.seriesTypes.pie.prototype, "animate", function (e) {
|
507 |
+
if (this.chart.is3d()) {
|
508 |
+
var a = arguments[1], b = this.options.animation, d =
|
509 |
+
this.center, f = this.group, g = this.markerGroup;
|
510 |
+
if (c.svg)if (b === !0 && (b = {}), a) {
|
511 |
+
if (this.oldtranslateX = f.translateX, this.oldtranslateY = f.translateY, a = {
|
512 |
+
translateX: d[0],
|
513 |
+
translateY: d[1],
|
514 |
+
scaleX: 0.001,
|
515 |
+
scaleY: 0.001
|
516 |
+
}, f.attr(a), g)g.attrSetters = f.attrSetters, g.attr(a)
|
517 |
+
} else a = {
|
518 |
+
translateX: this.oldtranslateX,
|
519 |
+
translateY: this.oldtranslateY,
|
520 |
+
scaleX: 1,
|
521 |
+
scaleY: 1
|
522 |
+
}, f.animate(a, b), g && g.animate(a, b), this.animate = null
|
523 |
+
} else e.apply(this, [].slice.call(arguments, 1))
|
524 |
+
});
|
525 |
+
c.wrap(c.seriesTypes.scatter.prototype, "translate", function (e) {
|
526 |
+
e.apply(this,
|
527 |
+
[].slice.call(arguments, 1));
|
528 |
+
if (this.chart.is3d()) {
|
529 |
+
var a = this.chart, b = this.chart.options.chart.options3d, d = b.alpha, f = b.beta, g = {
|
530 |
+
x: a.inverted ? a.plotHeight / 2 : a.plotWidth / 2,
|
531 |
+
y: a.inverted ? a.plotWidth / 2 : a.plotHeight / 2,
|
532 |
+
z: b.depth,
|
533 |
+
vd: b.viewDistance
|
534 |
+
}, b = b.depth, h = a.options.zAxis || {min: 0, max: b}, i = b / (h.max - h.min);
|
535 |
+
c.each(this.data, function (a) {
|
536 |
+
var b = {x: a.plotX, y: a.plotY, z: (a.z - h.min) * i}, b = x([b], d, f, g)[0];
|
537 |
+
a.plotXold = a.plotX;
|
538 |
+
a.plotYold = a.plotY;
|
539 |
+
a.plotX = b.x;
|
540 |
+
a.plotY = b.y;
|
541 |
+
a.plotZ = b.z
|
542 |
+
})
|
543 |
+
}
|
544 |
+
});
|
545 |
+
c.wrap(c.seriesTypes.scatter.prototype,
|
546 |
+
"init", function (c) {
|
547 |
+
var a = c.apply(this, [].slice.call(arguments, 1));
|
548 |
+
if (this.chart.is3d())this.pointArrayMap = ["x", "y", "z"], this.tooltipOptions.pointFormat = this.userOptions.tooltip ? this.userOptions.tooltip.pointFormat || "x: <b>{point.x}</b><br/>y: <b>{point.y}</b><br/>z: <b>{point.z}</b><br/>" : "x: <b>{point.x}</b><br/>y: <b>{point.y}</b><br/>z: <b>{point.z}</b><br/>";
|
549 |
+
return a
|
550 |
+
});
|
551 |
+
if (c.VMLRenderer)c.setOptions({animate: !1}), c.VMLRenderer.prototype.cuboid = c.SVGRenderer.prototype.cuboid, c.VMLRenderer.prototype.cuboidPath =
|
552 |
+
c.SVGRenderer.prototype.cuboidPath, c.VMLRenderer.prototype.toLinePath = c.SVGRenderer.prototype.toLinePath, c.VMLRenderer.prototype.createElement3D = c.SVGRenderer.prototype.createElement3D, c.VMLRenderer.prototype.arc3d = function (e) {
|
553 |
+
e = c.SVGRenderer.prototype.arc3d.call(this, e);
|
554 |
+
e.css({zIndex: e.zIndex});
|
555 |
+
return e
|
556 |
+
}, c.VMLRenderer.prototype.arc3dPath = c.SVGRenderer.prototype.arc3dPath, c.Chart.prototype.renderSeries = function () {
|
557 |
+
for (var c, a = this.series.length; a--;)c = this.series[a], c.translate(), c.setTooltipPoints &&
|
558 |
+
c.setTooltipPoints(), c.render()
|
559 |
+
}, c.wrap(c.Axis.prototype, "render", function (c) {
|
560 |
+
c.apply(this, [].slice.call(arguments, 1));
|
561 |
+
this.sideFrame && (this.sideFrame.css({zIndex: 0}), this.sideFrame.front.attr({fill: this.sideFrame.color}));
|
562 |
+
this.bottomFrame && (this.bottomFrame.css({zIndex: 1}), this.bottomFrame.front.attr({fill: this.bottomFrame.color}));
|
563 |
+
this.backFrame && (this.backFrame.css({zIndex: 0}), this.backFrame.front.attr({fill: this.backFrame.color}))
|
564 |
+
})
|
565 |
+
})(Highcharts);
|
js/highcharts.js
CHANGED
@@ -4,302 +4,4915 @@
|
|
4 |
(c) 2009-2014 Torstein Honsi
|
5 |
|
6 |
License: www.highcharts.com/license
|
7 |
-
*/
|
8 |
-
(function
|
9 |
-
|
10 |
-
|
11 |
-
|
12 |
-
|
13 |
-
|
14 |
-
|
15 |
-
|
16 |
-
|
17 |
-
|
18 |
-
|
19 |
-
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
-
|
26 |
-
|
27 |
-
|
28 |
-
|
29 |
-
|
30 |
-
|
31 |
-
|
32 |
-
|
33 |
-
|
34 |
-
function
|
35 |
-
|
36 |
-
|
37 |
-
|
38 |
-
|
39 |
-
|
40 |
-
|
41 |
-
|
42 |
-
|
43 |
-
|
44 |
-
|
45 |
-
|
46 |
-
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
|
52 |
-
|
53 |
-
|
54 |
-
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
|
59 |
-
|
60 |
-
|
61 |
-
|
62 |
-
|
63 |
-
|
64 |
-
|
65 |
-
|
66 |
-
|
67 |
-
|
68 |
-
|
69 |
-
|
70 |
-
|
71 |
-
|
72 |
-
|
73 |
-
|
74 |
-
|
75 |
-
|
76 |
-
|
77 |
-
|
78 |
-
|
79 |
-
|
80 |
-
|
81 |
-
|
82 |
-
|
83 |
-
|
84 |
-
|
85 |
-
|
86 |
-
|
87 |
-
|
88 |
-
|
89 |
-
|
90 |
-
|
91 |
-
|
92 |
-
|
93 |
-
|
94 |
-
c
|
95 |
-
|
96 |
-
|
97 |
-
|
98 |
-
|
99 |
-
|
100 |
-
|
101 |
-
|
102 |
-
|
103 |
-
|
104 |
-
|
105 |
-
|
106 |
-
|
107 |
-
|
108 |
-
|
109 |
-
|
110 |
-
|
111 |
-
|
112 |
-
|
113 |
-
|
114 |
-
|
115 |
-
|
116 |
-
|
117 |
-
|
118 |
-
|
119 |
-
|
120 |
-
|
121 |
-
|
122 |
-
|
123 |
-
|
124 |
-
|
125 |
-
|
126 |
-
|
127 |
-
e=
|
128 |
-
|
129 |
-
|
130 |
-
|
131 |
-
|
132 |
-
|
133 |
-
|
134 |
-
|
135 |
-
|
136 |
-
|
137 |
-
|
138 |
-
|
139 |
-
|
140 |
-
|
141 |
-
|
142 |
-
|
143 |
-
|
144 |
-
|
145 |
-
|
146 |
-
|
147 |
-
|
148 |
-
|
149 |
-
(a
|
150 |
-
|
151 |
-
|
152 |
-
|
153 |
-
|
154 |
-
|
155 |
-
|
156 |
-
|
157 |
-
|
158 |
-
function(
|
159 |
-
|
160 |
-
|
161 |
-
|
162 |
-
|
163 |
-
|
164 |
-
|
165 |
-
a.
|
166 |
-
|
167 |
-
|
168 |
-
|
169 |
-
e=
|
170 |
-
|
171 |
-
|
172 |
-
|
173 |
-
|
174 |
-
|
175 |
-
|
176 |
-
|
177 |
-
|
178 |
-
|
179 |
-
|
180 |
-
|
181 |
-
|
182 |
-
|
183 |
-
|
184 |
-
|
185 |
-
|
186 |
-
|
187 |
-
|
188 |
-
|
189 |
-
|
190 |
-
|
191 |
-
|
192 |
-
|
193 |
-
|
194 |
-
|
195 |
-
|
196 |
-
|
197 |
-
|
198 |
-
|
199 |
-
|
200 |
-
|
201 |
-
|
202 |
-
|
203 |
-
|
204 |
-
|
205 |
-
|
206 |
-
|
207 |
-
|
208 |
-
|
209 |
-
|
210 |
-
|
211 |
-
|
212 |
-
|
213 |
-
|
214 |
-
|
215 |
-
|
216 |
-
|
217 |
-
|
218 |
-
|
219 |
-
|
220 |
-
|
221 |
-
|
222 |
-
|
223 |
-
|
224 |
-
|
225 |
-
|
226 |
-
|
227 |
-
|
228 |
-
|
229 |
-
|
230 |
-
this.
|
231 |
-
|
232 |
-
|
233 |
-
|
234 |
-
|
235 |
-
|
236 |
-
|
237 |
-
|
238 |
-
|
239 |
-
|
240 |
-
|
241 |
-
|
242 |
-
|
243 |
-
|
244 |
-
|
245 |
-
|
246 |
-
|
247 |
-
this.
|
248 |
-
|
249 |
-
|
250 |
-
|
251 |
-
this.
|
252 |
-
this.
|
253 |
-
|
254 |
-
|
255 |
-
|
256 |
-
|
257 |
-
|
258 |
-
|
259 |
-
|
260 |
-
|
261 |
-
|
262 |
-
|
263 |
-
|
264 |
-
|
265 |
-
0):
|
266 |
-
|
267 |
-
|
268 |
-
|
269 |
-
|
270 |
-
|
271 |
-
|
272 |
-
|
273 |
-
b
|
274 |
-
|
275 |
-
|
276 |
-
|
277 |
-
|
278 |
-
|
279 |
-
|
280 |
-
|
281 |
-
|
282 |
-
|
283 |
-
|
284 |
-
|
285 |
-
|
286 |
-
|
287 |
-
|
288 |
-
|
289 |
-
|
290 |
-
|
291 |
-
|
292 |
-
|
293 |
-
|
294 |
-
|
295 |
-
|
296 |
-
|
297 |
-
|
298 |
-
|
299 |
-
|
300 |
-
|
301 |
-
|
302 |
-
|
303 |
-
|
304 |
-
|
305 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
4 |
(c) 2009-2014 Torstein Honsi
|
5 |
|
6 |
License: www.highcharts.com/license
|
7 |
+
*/
|
8 |
+
(function () {
|
9 |
+
function q(a, b) {
|
10 |
+
var c;
|
11 |
+
a || (a = {});
|
12 |
+
for (c in b)a[c] = b[c];
|
13 |
+
return a
|
14 |
+
}
|
15 |
+
|
16 |
+
function w() {
|
17 |
+
var a, b = arguments, c, d = {}, e = function (a, b) {
|
18 |
+
var c, d;
|
19 |
+
typeof a !== "object" && (a = {});
|
20 |
+
for (d in b)b.hasOwnProperty(d) && (c = b[d], a[d] = c && typeof c === "object" && Object.prototype.toString.call(c) !== "[object Array]" && d !== "renderTo" && typeof c.nodeType !== "number" ? e(a[d] || {}, c) : b[d]);
|
21 |
+
return a
|
22 |
+
};
|
23 |
+
b[0] === !0 && (d = b[1], b = Array.prototype.slice.call(b, 2));
|
24 |
+
c = b.length;
|
25 |
+
for (a = 0; a < c; a++)d = e(d, b[a]);
|
26 |
+
return d
|
27 |
+
}
|
28 |
+
|
29 |
+
function z(a, b) {
|
30 |
+
return parseInt(a, b ||
|
31 |
+
10)
|
32 |
+
}
|
33 |
+
|
34 |
+
function Fa(a) {
|
35 |
+
return typeof a === "string"
|
36 |
+
}
|
37 |
+
|
38 |
+
function ca(a) {
|
39 |
+
return typeof a === "object"
|
40 |
+
}
|
41 |
+
|
42 |
+
function La(a) {
|
43 |
+
return Object.prototype.toString.call(a) === "[object Array]"
|
44 |
+
}
|
45 |
+
|
46 |
+
function ha(a) {
|
47 |
+
return typeof a === "number"
|
48 |
+
}
|
49 |
+
|
50 |
+
function za(a) {
|
51 |
+
return U.log(a) / U.LN10
|
52 |
+
}
|
53 |
+
|
54 |
+
function ia(a) {
|
55 |
+
return U.pow(10, a)
|
56 |
+
}
|
57 |
+
|
58 |
+
function ja(a, b) {
|
59 |
+
for (var c = a.length; c--;)if (a[c] === b) {
|
60 |
+
a.splice(c, 1);
|
61 |
+
break
|
62 |
+
}
|
63 |
+
}
|
64 |
+
|
65 |
+
function r(a) {
|
66 |
+
return a !== t && a !== null
|
67 |
+
}
|
68 |
+
|
69 |
+
function H(a, b, c) {
|
70 |
+
var d, e;
|
71 |
+
if (Fa(b))r(c) ? a.setAttribute(b, c) : a && a.getAttribute && (e = a.getAttribute(b)); else if (r(b) &&
|
72 |
+
ca(b))for (d in b)a.setAttribute(d, b[d]);
|
73 |
+
return e
|
74 |
+
}
|
75 |
+
|
76 |
+
function qa(a) {
|
77 |
+
return La(a) ? a : [a]
|
78 |
+
}
|
79 |
+
|
80 |
+
function m() {
|
81 |
+
var a = arguments, b, c, d = a.length;
|
82 |
+
for (b = 0; b < d; b++)if (c = a[b], typeof c !== "undefined" && c !== null)return c
|
83 |
+
}
|
84 |
+
|
85 |
+
function G(a, b) {
|
86 |
+
if (Aa && !aa && b && b.opacity !== t)b.filter = "alpha(opacity=" + b.opacity * 100 + ")";
|
87 |
+
q(a.style, b)
|
88 |
+
}
|
89 |
+
|
90 |
+
function Y(a, b, c, d, e) {
|
91 |
+
a = y.createElement(a);
|
92 |
+
b && q(a, b);
|
93 |
+
e && G(a, {padding: 0, border: Q, margin: 0});
|
94 |
+
c && G(a, c);
|
95 |
+
d && d.appendChild(a);
|
96 |
+
return a
|
97 |
+
}
|
98 |
+
|
99 |
+
function ka(a, b) {
|
100 |
+
var c = function () {
|
101 |
+
};
|
102 |
+
c.prototype = new a;
|
103 |
+
q(c.prototype, b);
|
104 |
+
return c
|
105 |
+
}
|
106 |
+
|
107 |
+
function Ga(a, b, c, d) {
|
108 |
+
var e = E.lang, a = +a || 0, f = b === -1 ? (a.toString().split(".")[1] || "").length : isNaN(b = M(b)) ? 2 : b, b = c === void 0 ? e.decimalPoint : c, d = d === void 0 ? e.thousandsSep : d, e = a < 0 ? "-" : "", c = String(z(a = M(a).toFixed(f))), g = c.length > 3 ? c.length % 3 : 0;
|
109 |
+
return e + (g ? c.substr(0, g) + d : "") + c.substr(g).replace(/(\d{3})(?=\d)/g, "$1" + d) + (f ? b + M(a - c).toFixed(f).slice(2) : "")
|
110 |
+
}
|
111 |
+
|
112 |
+
function Ha(a, b) {
|
113 |
+
return Array((b || 2) + 1 - String(a).length).join(0) + a
|
114 |
+
}
|
115 |
+
|
116 |
+
function Ma(a, b, c) {
|
117 |
+
var d = a[b];
|
118 |
+
a[b] = function () {
|
119 |
+
var a = Array.prototype.slice.call(arguments);
|
120 |
+
a.unshift(d);
|
121 |
+
return c.apply(this, a)
|
122 |
+
}
|
123 |
+
}
|
124 |
+
|
125 |
+
function Ia(a, b) {
|
126 |
+
for (var c = "{", d = !1, e, f, g, h, i, j = []; (c = a.indexOf(c)) !== -1;) {
|
127 |
+
e = a.slice(0, c);
|
128 |
+
if (d) {
|
129 |
+
f = e.split(":");
|
130 |
+
g = f.shift().split(".");
|
131 |
+
i = g.length;
|
132 |
+
e = b;
|
133 |
+
for (h = 0; h < i; h++)e = e[g[h]];
|
134 |
+
if (f.length)f = f.join(":"), g = /\.([0-9])/, h = E.lang, i = void 0, /f$/.test(f) ? (i = (i = f.match(g)) ? i[1] : -1, e !== null && (e = Ga(e, i, h.decimalPoint, f.indexOf(",") > -1 ? h.thousandsSep : ""))) : e = cb(f, e)
|
135 |
+
}
|
136 |
+
j.push(e);
|
137 |
+
a = a.slice(c + 1);
|
138 |
+
c = (d = !d) ? "}" : "{"
|
139 |
+
}
|
140 |
+
j.push(a);
|
141 |
+
return j.join("")
|
142 |
+
}
|
143 |
+
|
144 |
+
function mb(a) {
|
145 |
+
return U.pow(10, T(U.log(a) /
|
146 |
+
U.LN10))
|
147 |
+
}
|
148 |
+
|
149 |
+
function nb(a, b, c, d) {
|
150 |
+
var e, c = m(c, 1);
|
151 |
+
e = a / c;
|
152 |
+
b || (b = [1, 2, 2.5, 5, 10], d && d.allowDecimals === !1 && (c === 1 ? b = [1, 2, 5, 10] : c <= 0.1 && (b = [1 / c])));
|
153 |
+
for (d = 0; d < b.length; d++)if (a = b[d], e <= (b[d] + (b[d + 1] || b[d])) / 2)break;
|
154 |
+
a *= c;
|
155 |
+
return a
|
156 |
+
}
|
157 |
+
|
158 |
+
function Bb() {
|
159 |
+
this.symbol = this.color = 0
|
160 |
+
}
|
161 |
+
|
162 |
+
function ob(a, b) {
|
163 |
+
var c = a.length, d, e;
|
164 |
+
for (e = 0; e < c; e++)a[e].ss_i = e;
|
165 |
+
a.sort(function (a, c) {
|
166 |
+
d = b(a, c);
|
167 |
+
return d === 0 ? a.ss_i - c.ss_i : d
|
168 |
+
});
|
169 |
+
for (e = 0; e < c; e++)delete a[e].ss_i
|
170 |
+
}
|
171 |
+
|
172 |
+
function Na(a) {
|
173 |
+
for (var b = a.length, c = a[0]; b--;)a[b] < c && (c = a[b]);
|
174 |
+
return c
|
175 |
+
}
|
176 |
+
|
177 |
+
function Ba(a) {
|
178 |
+
for (var b =
|
179 |
+
a.length, c = a[0]; b--;)a[b] > c && (c = a[b]);
|
180 |
+
return c
|
181 |
+
}
|
182 |
+
|
183 |
+
function Oa(a, b) {
|
184 |
+
for (var c in a)a[c] && a[c] !== b && a[c].destroy && a[c].destroy(), delete a[c]
|
185 |
+
}
|
186 |
+
|
187 |
+
function Pa(a) {
|
188 |
+
db || (db = Y(Ja));
|
189 |
+
a && db.appendChild(a);
|
190 |
+
db.innerHTML = ""
|
191 |
+
}
|
192 |
+
|
193 |
+
function ra(a, b) {
|
194 |
+
var c = "Highcharts error #" + a + ": www.highcharts.com/errors/" + a;
|
195 |
+
if (b)throw c; else I.console && console.log(c)
|
196 |
+
}
|
197 |
+
|
198 |
+
function da(a) {
|
199 |
+
return parseFloat(a.toPrecision(14))
|
200 |
+
}
|
201 |
+
|
202 |
+
function Qa(a, b) {
|
203 |
+
va = m(a, b.animation)
|
204 |
+
}
|
205 |
+
|
206 |
+
function Cb() {
|
207 |
+
var a = E.global.useUTC, b = a ? "getUTC" : "get", c = a ? "setUTC" : "set";
|
208 |
+
Ra = (a && E.global.timezoneOffset ||
|
209 |
+
0) * 6E4;
|
210 |
+
eb = a ? Date.UTC : function (a, b, c, g, h, i) {
|
211 |
+
return (new Date(a, b, m(c, 1), m(g, 0), m(h, 0), m(i, 0))).getTime()
|
212 |
+
};
|
213 |
+
pb = b + "Minutes";
|
214 |
+
qb = b + "Hours";
|
215 |
+
rb = b + "Day";
|
216 |
+
Xa = b + "Date";
|
217 |
+
fb = b + "Month";
|
218 |
+
gb = b + "FullYear";
|
219 |
+
Db = c + "Minutes";
|
220 |
+
Eb = c + "Hours";
|
221 |
+
sb = c + "Date";
|
222 |
+
Fb = c + "Month";
|
223 |
+
Gb = c + "FullYear"
|
224 |
+
}
|
225 |
+
|
226 |
+
function P() {
|
227 |
+
}
|
228 |
+
|
229 |
+
function Sa(a, b, c, d) {
|
230 |
+
this.axis = a;
|
231 |
+
this.pos = b;
|
232 |
+
this.type = c || "";
|
233 |
+
this.isNew = !0;
|
234 |
+
!c && !d && this.addLabel()
|
235 |
+
}
|
236 |
+
|
237 |
+
function la() {
|
238 |
+
this.init.apply(this, arguments)
|
239 |
+
}
|
240 |
+
|
241 |
+
function Ya() {
|
242 |
+
this.init.apply(this, arguments)
|
243 |
+
}
|
244 |
+
|
245 |
+
function Hb(a, b, c, d, e) {
|
246 |
+
var f = a.chart.inverted;
|
247 |
+
this.axis = a;
|
248 |
+
this.isNegative = c;
|
249 |
+
this.options = b;
|
250 |
+
this.x = d;
|
251 |
+
this.total = null;
|
252 |
+
this.points = {};
|
253 |
+
this.stack = e;
|
254 |
+
this.alignOptions = {
|
255 |
+
align: b.align || (f ? c ? "left" : "right" : "center"),
|
256 |
+
verticalAlign: b.verticalAlign || (f ? "middle" : c ? "bottom" : "top"),
|
257 |
+
y: m(b.y, f ? 4 : c ? 14 : -6),
|
258 |
+
x: m(b.x, f ? c ? -6 : 6 : 0)
|
259 |
+
};
|
260 |
+
this.textAlign = b.textAlign || (f ? c ? "right" : "left" : "center")
|
261 |
+
}
|
262 |
+
|
263 |
+
var t, y = document, I = window, U = Math, u = U.round, T = U.floor, Ka = U.ceil, v = U.max, C = U.min, M = U.abs, Z = U.cos, ea = U.sin, ma = U.PI, Ca = ma * 2 / 360, wa = navigator.userAgent, Ib = I.opera, Aa = /msie/i.test(wa) && !Ib, hb = y.documentMode === 8, ib = /AppleWebKit/.test(wa), Ta = /Firefox/.test(wa), Jb = /(Mobile|Android|Windows Phone)/.test(wa), xa = "http://www.w3.org/2000/svg", aa = !!y.createElementNS && !!y.createElementNS(xa, "svg").createSVGRect, Nb = Ta && parseInt(wa.split("Firefox/")[1], 10) < 4, fa = !aa && !Aa && !!y.createElement("canvas").getContext, Za, $a, Kb = {}, tb = 0, db, E, cb, va, ub, A, sa = function () {
|
264 |
+
}, V = [], ab = 0, Ja = "div", Q = "none", Ob = /^[0-9]+$/, Pb = "stroke-width", eb, Ra, pb, qb, rb, Xa, fb, gb, Db, Eb, sb, Fb, Gb, F = {}, R = I.Highcharts = I.Highcharts ? ra(16,
|
265 |
+
!0) : {};
|
266 |
+
cb = function (a, b, c) {
|
267 |
+
if (!r(b) || isNaN(b))return "Invalid date";
|
268 |
+
var a = m(a, "%Y-%m-%d %H:%M:%S"), d = new Date(b - Ra), e, f = d[qb](), g = d[rb](), h = d[Xa](), i = d[fb](), j = d[gb](), k = E.lang, l = k.weekdays, d = q({
|
269 |
+
a: l[g].substr(0, 3),
|
270 |
+
A: l[g],
|
271 |
+
d: Ha(h),
|
272 |
+
e: h,
|
273 |
+
b: k.shortMonths[i],
|
274 |
+
B: k.months[i],
|
275 |
+
m: Ha(i + 1),
|
276 |
+
y: j.toString().substr(2, 2),
|
277 |
+
Y: j,
|
278 |
+
H: Ha(f),
|
279 |
+
I: Ha(f % 12 || 12),
|
280 |
+
l: f % 12 || 12,
|
281 |
+
M: Ha(d[pb]()),
|
282 |
+
p: f < 12 ? "AM" : "PM",
|
283 |
+
P: f < 12 ? "am" : "pm",
|
284 |
+
S: Ha(d.getSeconds()),
|
285 |
+
L: Ha(u(b % 1E3), 3)
|
286 |
+
}, R.dateFormats);
|
287 |
+
for (e in d)for (; a.indexOf("%" + e) !== -1;)a = a.replace("%" + e, typeof d[e] ===
|
288 |
+
"function" ? d[e](b) : d[e]);
|
289 |
+
return c ? a.substr(0, 1).toUpperCase() + a.substr(1) : a
|
290 |
+
};
|
291 |
+
Bb.prototype = {
|
292 |
+
wrapColor: function (a) {
|
293 |
+
if (this.color >= a)this.color = 0
|
294 |
+
}, wrapSymbol: function (a) {
|
295 |
+
if (this.symbol >= a)this.symbol = 0
|
296 |
+
}
|
297 |
+
};
|
298 |
+
A = function () {
|
299 |
+
for (var a = 0, b = arguments, c = b.length, d = {}; a < c; a++)d[b[a++]] = b[a];
|
300 |
+
return d
|
301 |
+
}("millisecond", 1, "second", 1E3, "minute", 6E4, "hour", 36E5, "day", 864E5, "week", 6048E5, "month", 26784E5, "year", 31556952E3);
|
302 |
+
ub = {
|
303 |
+
init: function (a, b, c) {
|
304 |
+
var b = b || "", d = a.shift, e = b.indexOf("C") > -1, f = e ? 7 : 3, g, b = b.split(" "), c = [].concat(c),
|
305 |
+
h, i, j = function (a) {
|
306 |
+
for (g = a.length; g--;)a[g] === "M" && a.splice(g + 1, 0, a[g + 1], a[g + 2], a[g + 1], a[g + 2])
|
307 |
+
};
|
308 |
+
e && (j(b), j(c));
|
309 |
+
a.isArea && (h = b.splice(b.length - 6, 6), i = c.splice(c.length - 6, 6));
|
310 |
+
if (d <= c.length / f && b.length === c.length)for (; d--;)c = [].concat(c).splice(0, f).concat(c);
|
311 |
+
a.shift = 0;
|
312 |
+
if (b.length)for (a = c.length; b.length < a;)d = [].concat(b).splice(b.length - f, f), e && (d[f - 6] = d[f - 2], d[f - 5] = d[f - 1]), b = b.concat(d);
|
313 |
+
h && (b = b.concat(h), c = c.concat(i));
|
314 |
+
return [b, c]
|
315 |
+
}, step: function (a, b, c, d) {
|
316 |
+
var e = [], f = a.length;
|
317 |
+
if (c === 1)e = d; else if (f ===
|
318 |
+
b.length && c < 1)for (; f--;)d = parseFloat(a[f]), e[f] = isNaN(d) ? a[f] : c * parseFloat(b[f] - d) + d; else e = b;
|
319 |
+
return e
|
320 |
+
}
|
321 |
+
};
|
322 |
+
(function (a) {
|
323 |
+
I.HighchartsAdapter = I.HighchartsAdapter || a && {
|
324 |
+
init: function (b) {
|
325 |
+
var c = a.fx, d = c.step, e, f = a.Tween, g = f && f.propHooks;
|
326 |
+
e = a.cssHooks.opacity;
|
327 |
+
a.extend(a.easing, {
|
328 |
+
easeOutQuad: function (a, b, c, d, e) {
|
329 |
+
return -d * (b /= e) * (b - 2) + c
|
330 |
+
}
|
331 |
+
});
|
332 |
+
a.each(["cur", "_default", "width", "height", "opacity"], function (a, b) {
|
333 |
+
var e = d, k;
|
334 |
+
b === "cur" ? e = c.prototype : b === "_default" && f && (e = g[b], b = "set");
|
335 |
+
(k = e[b]) && (e[b] = function (c) {
|
336 |
+
var d, c =
|
337 |
+
a ? c : this;
|
338 |
+
if (c.prop !== "align")return d = c.elem, d.attr ? d.attr(c.prop, b === "cur" ? t : c.now) : k.apply(this, arguments)
|
339 |
+
})
|
340 |
+
});
|
341 |
+
Ma(e, "get", function (a, b, c) {
|
342 |
+
return b.attr ? b.opacity || 0 : a.call(this, b, c)
|
343 |
+
});
|
344 |
+
e = function (a) {
|
345 |
+
var c = a.elem, d;
|
346 |
+
if (!a.started)d = b.init(c, c.d, c.toD), a.start = d[0], a.end = d[1], a.started = !0;
|
347 |
+
c.attr("d", b.step(a.start, a.end, a.pos, c.toD))
|
348 |
+
};
|
349 |
+
f ? g.d = {set: e} : d.d = e;
|
350 |
+
this.each = Array.prototype.forEach ? function (a, b) {
|
351 |
+
return Array.prototype.forEach.call(a, b)
|
352 |
+
} : function (a, b) {
|
353 |
+
for (var c = 0, d = a.length; c < d; c++)if (b.call(a[c],
|
354 |
+
a[c], c, a) === !1)return c
|
355 |
+
};
|
356 |
+
a.fn.highcharts = function () {
|
357 |
+
var a = "Chart", b = arguments, c, d;
|
358 |
+
if (this[0]) {
|
359 |
+
Fa(b[0]) && (a = b[0], b = Array.prototype.slice.call(b, 1));
|
360 |
+
c = b[0];
|
361 |
+
if (c !== t)c.chart = c.chart || {}, c.chart.renderTo = this[0], new R[a](c, b[1]), d = this;
|
362 |
+
c === t && (d = V[H(this[0], "data-highcharts-chart")])
|
363 |
+
}
|
364 |
+
return d
|
365 |
+
}
|
366 |
+
}, getScript: a.getScript, inArray: a.inArray, adapterRun: function (b, c) {
|
367 |
+
return a(b)[c]()
|
368 |
+
}, grep: a.grep, map: function (a, c) {
|
369 |
+
for (var d = [], e = 0, f = a.length; e < f; e++)d[e] = c.call(a[e], a[e], e, a);
|
370 |
+
return d
|
371 |
+
}, offset: function (b) {
|
372 |
+
return a(b).offset()
|
373 |
+
},
|
374 |
+
addEvent: function (b, c, d) {
|
375 |
+
a(b).bind(c, d)
|
376 |
+
}, removeEvent: function (b, c, d) {
|
377 |
+
var e = y.removeEventListener ? "removeEventListener" : "detachEvent";
|
378 |
+
y[e] && b && !b[e] && (b[e] = function () {
|
379 |
+
});
|
380 |
+
a(b).unbind(c, d)
|
381 |
+
}, fireEvent: function (b, c, d, e) {
|
382 |
+
var f = a.Event(c), g = "detached" + c, h;
|
383 |
+
!Aa && d && (delete d.layerX, delete d.layerY, delete d.returnValue);
|
384 |
+
q(f, d);
|
385 |
+
b[c] && (b[g] = b[c], b[c] = null);
|
386 |
+
a.each(["preventDefault", "stopPropagation"], function (a, b) {
|
387 |
+
var c = f[b];
|
388 |
+
f[b] = function () {
|
389 |
+
try {
|
390 |
+
c.call(f)
|
391 |
+
} catch (a) {
|
392 |
+
b === "preventDefault" && (h = !0)
|
393 |
+
}
|
394 |
+
}
|
395 |
+
});
|
396 |
+
a(b).trigger(f);
|
397 |
+
b[g] && (b[c] = b[g], b[g] = null);
|
398 |
+
e && !f.isDefaultPrevented() && !h && e(f)
|
399 |
+
}, washMouseEvent: function (a) {
|
400 |
+
var c = a.originalEvent || a;
|
401 |
+
if (c.pageX === t)c.pageX = a.pageX, c.pageY = a.pageY;
|
402 |
+
return c
|
403 |
+
}, animate: function (b, c, d) {
|
404 |
+
var e = a(b);
|
405 |
+
if (!b.style)b.style = {};
|
406 |
+
if (c.d)b.toD = c.d, c.d = 1;
|
407 |
+
e.stop();
|
408 |
+
c.opacity !== t && b.attr && (c.opacity += "px");
|
409 |
+
e.animate(c, d)
|
410 |
+
}, stop: function (b) {
|
411 |
+
a(b).stop()
|
412 |
+
}
|
413 |
+
}
|
414 |
+
})(I.jQuery);
|
415 |
+
var S = I.HighchartsAdapter, N = S || {};
|
416 |
+
S && S.init.call(S, ub);
|
417 |
+
var jb = N.adapterRun, Qb = N.getScript, Da = N.inArray, p = N.each, vb = N.grep, Rb = N.offset, Ua =
|
418 |
+
N.map, K = N.addEvent, W = N.removeEvent, D = N.fireEvent, Sb = N.washMouseEvent, kb = N.animate, bb = N.stop, N = {
|
419 |
+
enabled: !0,
|
420 |
+
x: 0,
|
421 |
+
y: 15,
|
422 |
+
style: {color: "#606060", cursor: "default", fontSize: "11px"}
|
423 |
+
};
|
424 |
+
E = {
|
425 |
+
colors: "#7cb5ec,#434348,#90ed7d,#f7a35c,#8085e9,#f15c80,#e4d354,#8085e8,#8d4653,#91e8e1".split(","),
|
426 |
+
symbols: ["circle", "diamond", "square", "triangle", "triangle-down"],
|
427 |
+
lang: {
|
428 |
+
loading: "Loading...",
|
429 |
+
months: "January,February,March,April,May,June,July,August,September,October,November,December".split(","),
|
430 |
+
shortMonths: "Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec".split(","),
|
431 |
+
weekdays: "Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday".split(","),
|
432 |
+
decimalPoint: ".",
|
433 |
+
numericSymbols: "k,M,G,T,P,E".split(","),
|
434 |
+
resetZoom: "Reset zoom",
|
435 |
+
resetZoomTitle: "Reset zoom level 1:1",
|
436 |
+
thousandsSep: ","
|
437 |
+
},
|
438 |
+
global: {
|
439 |
+
useUTC: !0,
|
440 |
+
canvasToolsURL: "http://code.highcharts.com/4.0.1/modules/canvas-tools.js",
|
441 |
+
VMLRadialGradientURL: "http://code.highcharts.com/4.0.1/gfx/vml-radial-gradient.png"
|
442 |
+
},
|
443 |
+
chart: {
|
444 |
+
borderColor: "#4572A7",
|
445 |
+
borderRadius: 0,
|
446 |
+
defaultSeriesType: "line",
|
447 |
+
ignoreHiddenSeries: !0,
|
448 |
+
spacing: [10, 10, 15,
|
449 |
+
10],
|
450 |
+
backgroundColor: "#FFFFFF",
|
451 |
+
plotBorderColor: "#C0C0C0",
|
452 |
+
resetZoomButton: {theme: {zIndex: 20}, position: {align: "right", x: -10, y: 10}}
|
453 |
+
},
|
454 |
+
title: {text: "Chart title", align: "center", margin: 15, style: {color: "#333333", fontSize: "18px"}},
|
455 |
+
subtitle: {text: "", align: "center", style: {color: "#555555"}},
|
456 |
+
plotOptions: {
|
457 |
+
line: {
|
458 |
+
allowPointSelect: !1,
|
459 |
+
showCheckbox: !1,
|
460 |
+
animation: {duration: 1E3},
|
461 |
+
events: {},
|
462 |
+
lineWidth: 2,
|
463 |
+
marker: {
|
464 |
+
lineWidth: 0, radius: 4, lineColor: "#FFFFFF", states: {
|
465 |
+
hover: {enabled: !0}, select: {
|
466 |
+
fillColor: "#FFFFFF", lineColor: "#000000",
|
467 |
+
lineWidth: 2
|
468 |
+
}
|
469 |
+
}
|
470 |
+
},
|
471 |
+
point: {events: {}},
|
472 |
+
dataLabels: w(N, {
|
473 |
+
align: "center", enabled: !1, formatter: function () {
|
474 |
+
return this.y === null ? "" : Ga(this.y, -1)
|
475 |
+
}, verticalAlign: "bottom", y: 0
|
476 |
+
}),
|
477 |
+
cropThreshold: 300,
|
478 |
+
pointRange: 0,
|
479 |
+
states: {hover: {marker: {}, halo: {size: 10, opacity: 0.25}}, select: {marker: {}}},
|
480 |
+
stickyTracking: !0,
|
481 |
+
turboThreshold: 1E3
|
482 |
+
}
|
483 |
+
},
|
484 |
+
labels: {style: {position: "absolute", color: "#3E576F"}},
|
485 |
+
legend: {
|
486 |
+
enabled: !0,
|
487 |
+
align: "center",
|
488 |
+
layout: "horizontal",
|
489 |
+
labelFormatter: function () {
|
490 |
+
return this.name
|
491 |
+
},
|
492 |
+
borderColor: "#909090",
|
493 |
+
borderRadius: 0,
|
494 |
+
navigation: {
|
495 |
+
activeColor: "#274b6d",
|
496 |
+
inactiveColor: "#CCC"
|
497 |
+
},
|
498 |
+
shadow: !1,
|
499 |
+
itemStyle: {color: "#333333", fontSize: "12px", fontWeight: "bold"},
|
500 |
+
itemHoverStyle: {color: "#000"},
|
501 |
+
itemHiddenStyle: {color: "#CCC"},
|
502 |
+
itemCheckboxStyle: {position: "absolute", width: "13px", height: "13px"},
|
503 |
+
symbolPadding: 5,
|
504 |
+
verticalAlign: "bottom",
|
505 |
+
x: 0,
|
506 |
+
y: 0,
|
507 |
+
title: {style: {fontWeight: "bold"}}
|
508 |
+
},
|
509 |
+
loading: {
|
510 |
+
labelStyle: {fontWeight: "bold", position: "relative", top: "1em"},
|
511 |
+
style: {position: "absolute", backgroundColor: "white", opacity: 0.5, textAlign: "center"}
|
512 |
+
},
|
513 |
+
tooltip: {
|
514 |
+
enabled: !0,
|
515 |
+
animation: aa,
|
516 |
+
backgroundColor: "rgba(249, 249, 249, .85)",
|
517 |
+
borderWidth: 1,
|
518 |
+
borderRadius: 3,
|
519 |
+
dateTimeLabelFormats: {
|
520 |
+
millisecond: "%A, %b %e, %H:%M:%S.%L",
|
521 |
+
second: "%A, %b %e, %H:%M:%S",
|
522 |
+
minute: "%A, %b %e, %H:%M",
|
523 |
+
hour: "%A, %b %e, %H:%M",
|
524 |
+
day: "%A, %b %e, %Y",
|
525 |
+
week: "Week from %A, %b %e, %Y",
|
526 |
+
month: "%B %Y",
|
527 |
+
year: "%Y"
|
528 |
+
},
|
529 |
+
headerFormat: '<span style="font-size: 10px">{point.key}</span><br/>',
|
530 |
+
pointFormat: '<span style="color:{series.color}">●</span> {series.name}: <b>{point.y}</b><br/>',
|
531 |
+
shadow: !0,
|
532 |
+
snap: Jb ? 25 : 10,
|
533 |
+
style: {
|
534 |
+
color: "#333333", cursor: "default", fontSize: "12px", padding: "8px",
|
535 |
+
whiteSpace: "nowrap"
|
536 |
+
}
|
537 |
+
},
|
538 |
+
credits: {
|
539 |
+
enabled: !0,
|
540 |
+
text: "Highcharts.com",
|
541 |
+
href: "http://www.highcharts.com",
|
542 |
+
position: {align: "right", x: -10, verticalAlign: "bottom", y: -5},
|
543 |
+
style: {cursor: "pointer", color: "#909090", fontSize: "9px"}
|
544 |
+
}
|
545 |
+
};
|
546 |
+
var ba = E.plotOptions, S = ba.line;
|
547 |
+
Cb();
|
548 |
+
var Tb = /rgba\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]?(?:\.[0-9]+)?)\s*\)/, Ub = /#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/, Vb = /rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/, ya = function (a) {
|
549 |
+
var b = [], c,
|
550 |
+
d;
|
551 |
+
(function (a) {
|
552 |
+
a && a.stops ? d = Ua(a.stops, function (a) {
|
553 |
+
return ya(a[1])
|
554 |
+
}) : (c = Tb.exec(a)) ? b = [z(c[1]), z(c[2]), z(c[3]), parseFloat(c[4], 10)] : (c = Ub.exec(a)) ? b = [z(c[1], 16), z(c[2], 16), z(c[3], 16), 1] : (c = Vb.exec(a)) && (b = [z(c[1]), z(c[2]), z(c[3]), 1])
|
555 |
+
})(a);
|
556 |
+
return {
|
557 |
+
get: function (c) {
|
558 |
+
var f;
|
559 |
+
d ? (f = w(a), f.stops = [].concat(f.stops), p(d, function (a, b) {
|
560 |
+
f.stops[b] = [f.stops[b][0], a.get(c)]
|
561 |
+
})) : f = b && !isNaN(b[0]) ? c === "rgb" ? "rgb(" + b[0] + "," + b[1] + "," + b[2] + ")" : c === "a" ? b[3] : "rgba(" + b.join(",") + ")" : a;
|
562 |
+
return f
|
563 |
+
}, brighten: function (a) {
|
564 |
+
if (d)p(d,
|
565 |
+
function (b) {
|
566 |
+
b.brighten(a)
|
567 |
+
}); else if (ha(a) && a !== 0) {
|
568 |
+
var c;
|
569 |
+
for (c = 0; c < 3; c++)b[c] += z(a * 255), b[c] < 0 && (b[c] = 0), b[c] > 255 && (b[c] = 255)
|
570 |
+
}
|
571 |
+
return this
|
572 |
+
}, rgba: b, setOpacity: function (a) {
|
573 |
+
b[3] = a;
|
574 |
+
return this
|
575 |
+
}
|
576 |
+
}
|
577 |
+
};
|
578 |
+
P.prototype = {
|
579 |
+
init: function (a, b) {
|
580 |
+
this.element = b === "span" ? Y(b) : y.createElementNS(xa, b);
|
581 |
+
this.renderer = a
|
582 |
+
}, opacity: 1, animate: function (a, b, c) {
|
583 |
+
b = m(b, va, !0);
|
584 |
+
bb(this);
|
585 |
+
if (b) {
|
586 |
+
b = w(b, {});
|
587 |
+
if (c)b.complete = c;
|
588 |
+
kb(this, a, b)
|
589 |
+
} else this.attr(a), c && c()
|
590 |
+
}, colorGradient: function (a, b, c) {
|
591 |
+
var d = this.renderer, e, f, g, h, i, j, k, l, o, n, s = [];
|
592 |
+
a.linearGradient ?
|
593 |
+
f = "linearGradient" : a.radialGradient && (f = "radialGradient");
|
594 |
+
if (f) {
|
595 |
+
g = a[f];
|
596 |
+
h = d.gradients;
|
597 |
+
j = a.stops;
|
598 |
+
o = c.radialReference;
|
599 |
+
La(g) && (a[f] = g = {x1: g[0], y1: g[1], x2: g[2], y2: g[3], gradientUnits: "userSpaceOnUse"});
|
600 |
+
f === "radialGradient" && o && !r(g.gradientUnits) && (g = w(g, {
|
601 |
+
cx: o[0] - o[2] / 2 + g.cx * o[2],
|
602 |
+
cy: o[1] - o[2] / 2 + g.cy * o[2],
|
603 |
+
r: g.r * o[2],
|
604 |
+
gradientUnits: "userSpaceOnUse"
|
605 |
+
}));
|
606 |
+
for (n in g)n !== "id" && s.push(n, g[n]);
|
607 |
+
for (n in j)s.push(j[n]);
|
608 |
+
s = s.join(",");
|
609 |
+
h[s] ? a = h[s].attr("id") : (g.id = a = "highcharts-" + tb++, h[s] = i = d.createElement(f).attr(g).add(d.defs),
|
610 |
+
i.stops = [], p(j, function (a) {
|
611 |
+
a[1].indexOf("rgba") === 0 ? (e = ya(a[1]), k = e.get("rgb"), l = e.get("a")) : (k = a[1], l = 1);
|
612 |
+
a = d.createElement("stop").attr({offset: a[0], "stop-color": k, "stop-opacity": l}).add(i);
|
613 |
+
i.stops.push(a)
|
614 |
+
}));
|
615 |
+
c.setAttribute(b, "url(" + d.url + "#" + a + ")")
|
616 |
+
}
|
617 |
+
}, attr: function (a, b) {
|
618 |
+
var c, d, e = this.element, f, g = this, h;
|
619 |
+
typeof a === "string" && b !== t && (c = a, a = {}, a[c] = b);
|
620 |
+
if (typeof a === "string")g = (this[a + "Getter"] || this._defaultGetter).call(this, a, e); else {
|
621 |
+
for (c in a) {
|
622 |
+
d = a[c];
|
623 |
+
h = !1;
|
624 |
+
this.symbolName && /^(x|y|width|height|r|start|end|innerR|anchorX|anchorY)/.test(c) &&
|
625 |
+
(f || (this.symbolAttr(a), f = !0), h = !0);
|
626 |
+
if (this.rotation && (c === "x" || c === "y"))this.doTransform = !0;
|
627 |
+
h || (this[c + "Setter"] || this._defaultSetter).call(this, d, c, e);
|
628 |
+
this.shadows && /^(width|height|visibility|x|y|d|transform|cx|cy|r)$/.test(c) && this.updateShadows(c, d)
|
629 |
+
}
|
630 |
+
if (this.doTransform)this.updateTransform(), this.doTransform = !1
|
631 |
+
}
|
632 |
+
return g
|
633 |
+
}, updateShadows: function (a, b) {
|
634 |
+
for (var c = this.shadows, d = c.length; d--;)c[d].setAttribute(a, a === "height" ? v(b - (c[d].cutHeight || 0), 0) : a === "d" ? this.d : b)
|
635 |
+
}, addClass: function (a) {
|
636 |
+
var b = this.element,
|
637 |
+
c = H(b, "class") || "";
|
638 |
+
c.indexOf(a) === -1 && H(b, "class", c + " " + a);
|
639 |
+
return this
|
640 |
+
}, symbolAttr: function (a) {
|
641 |
+
var b = this;
|
642 |
+
p("x,y,r,start,end,width,height,innerR,anchorX,anchorY".split(","), function (c) {
|
643 |
+
b[c] = m(a[c], b[c])
|
644 |
+
});
|
645 |
+
b.attr({d: b.renderer.symbols[b.symbolName](b.x, b.y, b.width, b.height, b)})
|
646 |
+
}, clip: function (a) {
|
647 |
+
return this.attr("clip-path", a ? "url(" + this.renderer.url + "#" + a.id + ")" : Q)
|
648 |
+
}, crisp: function (a) {
|
649 |
+
var b, c = {}, d, e = a.strokeWidth || this.strokeWidth || this.attr && this.attr("stroke-width") || 0;
|
650 |
+
d = u(e) % 2 / 2;
|
651 |
+
a.x = T(a.x || this.x ||
|
652 |
+
0) + d;
|
653 |
+
a.y = T(a.y || this.y || 0) + d;
|
654 |
+
a.width = T((a.width || this.width || 0) - 2 * d);
|
655 |
+
a.height = T((a.height || this.height || 0) - 2 * d);
|
656 |
+
a.strokeWidth = e;
|
657 |
+
for (b in a)this[b] !== a[b] && (this[b] = c[b] = a[b]);
|
658 |
+
return c
|
659 |
+
}, css: function (a) {
|
660 |
+
var b = this.styles, c = {}, d = this.element, e, f, g = "";
|
661 |
+
e = !b;
|
662 |
+
if (a && a.color)a.fill = a.color;
|
663 |
+
if (b)for (f in a)a[f] !== b[f] && (c[f] = a[f], e = !0);
|
664 |
+
if (e) {
|
665 |
+
e = this.textWidth = a && a.width && d.nodeName.toLowerCase() === "text" && z(a.width);
|
666 |
+
b && (a = q(b, c));
|
667 |
+
this.styles = a;
|
668 |
+
e && (fa || !aa && this.renderer.forExport) && delete a.width;
|
669 |
+
if (Aa && !aa)G(this.element,
|
670 |
+
a); else {
|
671 |
+
b = function (a, b) {
|
672 |
+
return "-" + b.toLowerCase()
|
673 |
+
};
|
674 |
+
for (f in a)g += f.replace(/([A-Z])/g, b) + ":" + a[f] + ";";
|
675 |
+
H(d, "style", g)
|
676 |
+
}
|
677 |
+
e && this.added && this.renderer.buildText(this)
|
678 |
+
}
|
679 |
+
return this
|
680 |
+
}, on: function (a, b) {
|
681 |
+
var c = this, d = c.element;
|
682 |
+
$a && a === "click" ? (d.ontouchstart = function (a) {
|
683 |
+
c.touchEventFired = Date.now();
|
684 |
+
a.preventDefault();
|
685 |
+
b.call(d, a)
|
686 |
+
}, d.onclick = function (a) {
|
687 |
+
(wa.indexOf("Android") === -1 || Date.now() - (c.touchEventFired || 0) > 1100) && b.call(d, a)
|
688 |
+
}) : d["on" + a] = b;
|
689 |
+
return this
|
690 |
+
}, setRadialReference: function (a) {
|
691 |
+
this.element.radialReference =
|
692 |
+
a;
|
693 |
+
return this
|
694 |
+
}, translate: function (a, b) {
|
695 |
+
return this.attr({translateX: a, translateY: b})
|
696 |
+
}, invert: function () {
|
697 |
+
this.inverted = !0;
|
698 |
+
this.updateTransform();
|
699 |
+
return this
|
700 |
+
}, updateTransform: function () {
|
701 |
+
var a = this.translateX || 0, b = this.translateY || 0, c = this.scaleX, d = this.scaleY, e = this.inverted, f = this.rotation, g = this.element;
|
702 |
+
e && (a += this.attr("width"), b += this.attr("height"));
|
703 |
+
a = ["translate(" + a + "," + b + ")"];
|
704 |
+
e ? a.push("rotate(90) scale(-1,1)") : f && a.push("rotate(" + f + " " + (g.getAttribute("x") || 0) + " " + (g.getAttribute("y") || 0) + ")");
|
705 |
+
(r(c) || r(d)) && a.push("scale(" + m(c, 1) + " " + m(d, 1) + ")");
|
706 |
+
a.length && g.setAttribute("transform", a.join(" "))
|
707 |
+
}, toFront: function () {
|
708 |
+
var a = this.element;
|
709 |
+
a.parentNode.appendChild(a);
|
710 |
+
return this
|
711 |
+
}, align: function (a, b, c) {
|
712 |
+
var d, e, f, g, h = {};
|
713 |
+
e = this.renderer;
|
714 |
+
f = e.alignedObjects;
|
715 |
+
if (a) {
|
716 |
+
if (this.alignOptions = a, this.alignByTranslate = b, !c || Fa(c))this.alignTo = d = c || "renderer", ja(f, this), f.push(this), c = null
|
717 |
+
} else a = this.alignOptions, b = this.alignByTranslate, d = this.alignTo;
|
718 |
+
c = m(c, e[d], e);
|
719 |
+
d = a.align;
|
720 |
+
e = a.verticalAlign;
|
721 |
+
f = (c.x || 0) + (a.x ||
|
722 |
+
0);
|
723 |
+
g = (c.y || 0) + (a.y || 0);
|
724 |
+
if (d === "right" || d === "center")f += (c.width - (a.width || 0)) / {right: 1, center: 2}[d];
|
725 |
+
h[b ? "translateX" : "x"] = u(f);
|
726 |
+
if (e === "bottom" || e === "middle")g += (c.height - (a.height || 0)) / ({bottom: 1, middle: 2}[e] || 1);
|
727 |
+
h[b ? "translateY" : "y"] = u(g);
|
728 |
+
this[this.placed ? "animate" : "attr"](h);
|
729 |
+
this.placed = !0;
|
730 |
+
this.alignAttr = h;
|
731 |
+
return this
|
732 |
+
}, getBBox: function () {
|
733 |
+
var a = this.bBox, b = this.renderer, c, d, e = this.rotation;
|
734 |
+
c = this.element;
|
735 |
+
var f = this.styles, g = e * Ca;
|
736 |
+
d = this.textStr;
|
737 |
+
var h;
|
738 |
+
if (d === "" || Ob.test(d))h = "num." + d.toString().length +
|
739 |
+
(f ? "|" + f.fontSize + "|" + f.fontFamily : "");
|
740 |
+
h && (a = b.cache[h]);
|
741 |
+
if (!a) {
|
742 |
+
if (c.namespaceURI === xa || b.forExport) {
|
743 |
+
try {
|
744 |
+
a = c.getBBox ? q({}, c.getBBox()) : {width: c.offsetWidth, height: c.offsetHeight}
|
745 |
+
} catch (i) {
|
746 |
+
}
|
747 |
+
if (!a || a.width < 0)a = {width: 0, height: 0}
|
748 |
+
} else a = this.htmlGetBBox();
|
749 |
+
if (b.isSVG) {
|
750 |
+
c = a.width;
|
751 |
+
d = a.height;
|
752 |
+
if (Aa && f && f.fontSize === "11px" && d.toPrecision(3) === "16.9")a.height = d = 14;
|
753 |
+
if (e)a.width = M(d * ea(g)) + M(c * Z(g)), a.height = M(d * Z(g)) + M(c * ea(g))
|
754 |
+
}
|
755 |
+
this.bBox = a;
|
756 |
+
h && (b.cache[h] = a)
|
757 |
+
}
|
758 |
+
return a
|
759 |
+
}, show: function (a) {
|
760 |
+
return a && this.element.namespaceURI ===
|
761 |
+
xa ? (this.element.removeAttribute("visibility"), this) : this.attr({visibility: a ? "inherit" : "visible"})
|
762 |
+
}, hide: function () {
|
763 |
+
return this.attr({visibility: "hidden"})
|
764 |
+
}, fadeOut: function (a) {
|
765 |
+
var b = this;
|
766 |
+
b.animate({opacity: 0}, {
|
767 |
+
duration: a || 150, complete: function () {
|
768 |
+
b.hide()
|
769 |
+
}
|
770 |
+
})
|
771 |
+
}, add: function (a) {
|
772 |
+
var b = this.renderer, c = a || b, d = c.element || b.box, e = this.element, f = this.zIndex, g, h;
|
773 |
+
if (a)this.parentGroup = a;
|
774 |
+
this.parentInverted = a && a.inverted;
|
775 |
+
this.textStr !== void 0 && b.buildText(this);
|
776 |
+
if (f)c.handleZ = !0, f = z(f);
|
777 |
+
if (c.handleZ) {
|
778 |
+
a = d.childNodes;
|
779 |
+
for (g = 0; g < a.length; g++)if (b = a[g], c = H(b, "zIndex"), b !== e && (z(c) > f || !r(f) && r(c))) {
|
780 |
+
d.insertBefore(e, b);
|
781 |
+
h = !0;
|
782 |
+
break
|
783 |
+
}
|
784 |
+
}
|
785 |
+
h || d.appendChild(e);
|
786 |
+
this.added = !0;
|
787 |
+
if (this.onAdd)this.onAdd();
|
788 |
+
return this
|
789 |
+
}, safeRemoveChild: function (a) {
|
790 |
+
var b = a.parentNode;
|
791 |
+
b && b.removeChild(a)
|
792 |
+
}, destroy: function () {
|
793 |
+
var a = this, b = a.element || {}, c = a.shadows, d = a.renderer.isSVG && b.nodeName === "SPAN" && a.parentGroup, e, f;
|
794 |
+
b.onclick = b.onmouseout = b.onmouseover = b.onmousemove = b.point = null;
|
795 |
+
bb(a);
|
796 |
+
if (a.clipPath)a.clipPath = a.clipPath.destroy();
|
797 |
+
if (a.stops) {
|
798 |
+
for (f =
|
799 |
+
0; f < a.stops.length; f++)a.stops[f] = a.stops[f].destroy();
|
800 |
+
a.stops = null
|
801 |
+
}
|
802 |
+
a.safeRemoveChild(b);
|
803 |
+
for (c && p(c, function (b) {
|
804 |
+
a.safeRemoveChild(b)
|
805 |
+
}); d && d.div.childNodes.length === 0;)b = d.parentGroup, a.safeRemoveChild(d.div), delete d.div, d = b;
|
806 |
+
a.alignTo && ja(a.renderer.alignedObjects, a);
|
807 |
+
for (e in a)delete a[e];
|
808 |
+
return null
|
809 |
+
}, shadow: function (a, b, c) {
|
810 |
+
var d = [], e, f, g = this.element, h, i, j, k;
|
811 |
+
if (a) {
|
812 |
+
i = m(a.width, 3);
|
813 |
+
j = (a.opacity || 0.15) / i;
|
814 |
+
k = this.parentInverted ? "(-1,-1)" : "(" + m(a.offsetX, 1) + ", " + m(a.offsetY, 1) + ")";
|
815 |
+
for (e = 1; e <= i; e++) {
|
816 |
+
f =
|
817 |
+
g.cloneNode(0);
|
818 |
+
h = i * 2 + 1 - 2 * e;
|
819 |
+
H(f, {
|
820 |
+
isShadow: "true",
|
821 |
+
stroke: a.color || "black",
|
822 |
+
"stroke-opacity": j * e,
|
823 |
+
"stroke-width": h,
|
824 |
+
transform: "translate" + k,
|
825 |
+
fill: Q
|
826 |
+
});
|
827 |
+
if (c)H(f, "height", v(H(f, "height") - h, 0)), f.cutHeight = h;
|
828 |
+
b ? b.element.appendChild(f) : g.parentNode.insertBefore(f, g);
|
829 |
+
d.push(f)
|
830 |
+
}
|
831 |
+
this.shadows = d
|
832 |
+
}
|
833 |
+
return this
|
834 |
+
}, xGetter: function (a) {
|
835 |
+
this.element.nodeName === "circle" && (a = {x: "cx", y: "cy"}[a] || a);
|
836 |
+
return this._defaultGetter(a)
|
837 |
+
}, _defaultGetter: function (a) {
|
838 |
+
a = m(this[a], this.element ? this.element.getAttribute(a) : null, 0);
|
839 |
+
/^[0-9\.]+$/.test(a) &&
|
840 |
+
(a = parseFloat(a));
|
841 |
+
return a
|
842 |
+
}, dSetter: function (a, b, c) {
|
843 |
+
a && a.join && (a = a.join(" "));
|
844 |
+
/(NaN| {2}|^$)/.test(a) && (a = "M 0 0");
|
845 |
+
c.setAttribute(b, a);
|
846 |
+
this[b] = a
|
847 |
+
}, dashstyleSetter: function (a) {
|
848 |
+
var b;
|
849 |
+
if (a = a && a.toLowerCase()) {
|
850 |
+
a = a.replace("shortdashdotdot", "3,1,1,1,1,1,").replace("shortdashdot", "3,1,1,1").replace("shortdot", "1,1,").replace("shortdash", "3,1,").replace("longdash", "8,3,").replace(/dot/g, "1,3,").replace("dash", "4,3,").replace(/,$/, "").split(",");
|
851 |
+
for (b = a.length; b--;)a[b] = z(a[b]) * this.element.getAttribute("stroke-width");
|
852 |
+
a = a.join(",");
|
853 |
+
this.element.setAttribute("stroke-dasharray", a)
|
854 |
+
}
|
855 |
+
}, alignSetter: function (a) {
|
856 |
+
this.element.setAttribute("text-anchor", {left: "start", center: "middle", right: "end"}[a])
|
857 |
+
}, opacitySetter: function (a, b, c) {
|
858 |
+
this[b] = a;
|
859 |
+
c.setAttribute(b, a)
|
860 |
+
}, "stroke-widthSetter": function (a, b, c) {
|
861 |
+
a === 0 && (a = 1.0E-5);
|
862 |
+
this.strokeWidth = a;
|
863 |
+
c.setAttribute(b, a)
|
864 |
+
}, titleSetter: function (a) {
|
865 |
+
var b = this.element.getElementsByTagName("title")[0];
|
866 |
+
b || (b = y.createElementNS(xa, "title"), this.element.appendChild(b));
|
867 |
+
b.textContent = a
|
868 |
+
}, textSetter: function (a) {
|
869 |
+
if (a !==
|
870 |
+
this.textStr)delete this.bBox, this.textStr = a, this.added && this.renderer.buildText(this)
|
871 |
+
}, fillSetter: function (a, b, c) {
|
872 |
+
typeof a === "string" ? c.setAttribute(b, a) : a && this.colorGradient(a, b, c)
|
873 |
+
}, zIndexSetter: function (a, b, c) {
|
874 |
+
c.setAttribute(b, a);
|
875 |
+
this[b] = a
|
876 |
+
}, _defaultSetter: function (a, b, c) {
|
877 |
+
c.setAttribute(b, a)
|
878 |
+
}
|
879 |
+
};
|
880 |
+
P.prototype.yGetter = P.prototype.xGetter;
|
881 |
+
P.prototype.translateXSetter = P.prototype.translateYSetter = P.prototype.rotationSetter = P.prototype.verticalAlignSetter = P.prototype.scaleXSetter = P.prototype.scaleYSetter =
|
882 |
+
function (a, b) {
|
883 |
+
this[b] = a;
|
884 |
+
this.doTransform = !0
|
885 |
+
};
|
886 |
+
P.prototype.strokeSetter = P.prototype.fillSetter;
|
887 |
+
var ta = function () {
|
888 |
+
this.init.apply(this, arguments)
|
889 |
+
};
|
890 |
+
ta.prototype = {
|
891 |
+
Element: P, init: function (a, b, c, d, e) {
|
892 |
+
var f = location, g, d = this.createElement("svg").attr({version: "1.1"}).css(this.getStyle(d));
|
893 |
+
g = d.element;
|
894 |
+
a.appendChild(g);
|
895 |
+
a.innerHTML.indexOf("xmlns") === -1 && H(g, "xmlns", xa);
|
896 |
+
this.isSVG = !0;
|
897 |
+
this.box = g;
|
898 |
+
this.boxWrapper = d;
|
899 |
+
this.alignedObjects = [];
|
900 |
+
this.url = (Ta || ib) && y.getElementsByTagName("base").length ? f.href.replace(/#.*?$/,
|
901 |
+
"").replace(/([\('\)])/g, "\\$1").replace(/ /g, "%20") : "";
|
902 |
+
this.createElement("desc").add().element.appendChild(y.createTextNode("Created with Highcharts 4.0.1"));
|
903 |
+
this.defs = this.createElement("defs").add();
|
904 |
+
this.forExport = e;
|
905 |
+
this.gradients = {};
|
906 |
+
this.cache = {};
|
907 |
+
this.setSize(b, c, !1);
|
908 |
+
var h;
|
909 |
+
if (Ta && a.getBoundingClientRect)this.subPixelFix = b = function () {
|
910 |
+
G(a, {left: 0, top: 0});
|
911 |
+
h = a.getBoundingClientRect();
|
912 |
+
G(a, {left: Ka(h.left) - h.left + "px", top: Ka(h.top) - h.top + "px"})
|
913 |
+
}, b(), K(I, "resize", b)
|
914 |
+
}, getStyle: function (a) {
|
915 |
+
return this.style =
|
916 |
+
q({
|
917 |
+
fontFamily: '"Lucida Grande", "Lucida Sans Unicode", Arial, Helvetica, sans-serif',
|
918 |
+
fontSize: "12px"
|
919 |
+
}, a)
|
920 |
+
}, isHidden: function () {
|
921 |
+
return !this.boxWrapper.getBBox().width
|
922 |
+
}, destroy: function () {
|
923 |
+
var a = this.defs;
|
924 |
+
this.box = null;
|
925 |
+
this.boxWrapper = this.boxWrapper.destroy();
|
926 |
+
Oa(this.gradients || {});
|
927 |
+
this.gradients = null;
|
928 |
+
if (a)this.defs = a.destroy();
|
929 |
+
this.subPixelFix && W(I, "resize", this.subPixelFix);
|
930 |
+
return this.alignedObjects = null
|
931 |
+
}, createElement: function (a) {
|
932 |
+
var b = new this.Element;
|
933 |
+
b.init(this, a);
|
934 |
+
return b
|
935 |
+
}, draw: function () {
|
936 |
+
},
|
937 |
+
buildText: function (a) {
|
938 |
+
for (var b = a.element, c = this, d = c.forExport, e = m(a.textStr, "").toString(), f = e.indexOf("<") !== -1, g = b.childNodes, h, i, j = H(b, "x"), k = a.styles, l = a.textWidth, o = k && k.lineHeight, n = g.length, s = function (a) {
|
939 |
+
return o ? z(o) : c.fontMetrics(/(px|em)$/.test(a && a.style.fontSize) ? a.style.fontSize : k && k.fontSize || c.style.fontSize || 12).h
|
940 |
+
}; n--;)b.removeChild(g[n]);
|
941 |
+
!f && e.indexOf(" ") === -1 ? b.appendChild(y.createTextNode(e)) : (h = /<.*style="([^"]+)".*>/, i = /<.*href="(http[^"]+)".*>/, l && !a.added && this.box.appendChild(b),
|
942 |
+
e = f ? e.replace(/<(b|strong)>/g, '<span style="font-weight:bold">').replace(/<(i|em)>/g, '<span style="font-style:italic">').replace(/<a/g, "<span").replace(/<\/(b|strong|i|em|a)>/g, "</span>").split(/<br.*?>/g) : [e], e[e.length - 1] === "" && e.pop(), p(e, function (e, f) {
|
943 |
+
var g, n = 0, e = e.replace(/<span/g, "|||<span").replace(/<\/span>/g, "</span>|||");
|
944 |
+
g = e.split("|||");
|
945 |
+
p(g, function (e) {
|
946 |
+
if (e !== "" || g.length === 1) {
|
947 |
+
var o = {}, m = y.createElementNS(xa, "tspan"), p;
|
948 |
+
h.test(e) && (p = e.match(h)[1].replace(/(;| |^)color([ :])/, "$1fill$2"),
|
949 |
+
H(m, "style", p));
|
950 |
+
i.test(e) && !d && (H(m, "onclick", 'location.href="' + e.match(i)[1] + '"'), G(m, {cursor: "pointer"}));
|
951 |
+
e = (e.replace(/<(.|\n)*?>/g, "") || " ").replace(/</g, "<").replace(/>/g, ">");
|
952 |
+
if (e !== " ") {
|
953 |
+
m.appendChild(y.createTextNode(e));
|
954 |
+
if (n)o.dx = 0; else if (f && j !== null)o.x = j;
|
955 |
+
H(m, o);
|
956 |
+
!n && f && (!aa && d && G(m, {display: "block"}), H(m, "dy", s(m), ib && m.offsetHeight));
|
957 |
+
b.appendChild(m);
|
958 |
+
n++;
|
959 |
+
if (l)for (var e = e.replace(/([^\^])-/g, "$1- ").split(" "), o = e.length > 1 && k.whiteSpace !== "nowrap", $, r, B = a._clipHeight, q = [], v = s(), t =
|
960 |
+
1; o && (e.length || q.length);)delete a.bBox, $ = a.getBBox(), r = $.width, !aa && c.forExport && (r = c.measureSpanWidth(m.firstChild.data, a.styles)), $ = r > l, !$ || e.length === 1 ? (e = q, q = [], e.length && (t++, B && t * v > B ? (e = ["..."], a.attr("title", a.textStr)) : (m = y.createElementNS(xa, "tspan"), H(m, {
|
961 |
+
dy: v,
|
962 |
+
x: j
|
963 |
+
}), p && H(m, "style", p), b.appendChild(m), r > l && (l = r)))) : (m.removeChild(m.firstChild), q.unshift(e.pop())), e.length && m.appendChild(y.createTextNode(e.join(" ").replace(/- /g, "-")))
|
964 |
+
}
|
965 |
+
}
|
966 |
+
})
|
967 |
+
}))
|
968 |
+
}, button: function (a, b, c, d, e, f, g, h, i) {
|
969 |
+
var j = this.label(a,
|
970 |
+
b, c, i, null, null, null, null, "button"), k = 0, l, o, n, s, m, p, a = {
|
971 |
+
x1: 0,
|
972 |
+
y1: 0,
|
973 |
+
x2: 0,
|
974 |
+
y2: 1
|
975 |
+
}, e = w({
|
976 |
+
"stroke-width": 1,
|
977 |
+
stroke: "#CCCCCC",
|
978 |
+
fill: {linearGradient: a, stops: [[0, "#FEFEFE"], [1, "#F6F6F6"]]},
|
979 |
+
r: 2,
|
980 |
+
padding: 5,
|
981 |
+
style: {color: "black"}
|
982 |
+
}, e);
|
983 |
+
n = e.style;
|
984 |
+
delete e.style;
|
985 |
+
f = w(e, {stroke: "#68A", fill: {linearGradient: a, stops: [[0, "#FFF"], [1, "#ACF"]]}}, f);
|
986 |
+
s = f.style;
|
987 |
+
delete f.style;
|
988 |
+
g = w(e, {stroke: "#68A", fill: {linearGradient: a, stops: [[0, "#9BD"], [1, "#CDF"]]}}, g);
|
989 |
+
m = g.style;
|
990 |
+
delete g.style;
|
991 |
+
h = w(e, {style: {color: "#CCC"}}, h);
|
992 |
+
p = h.style;
|
993 |
+
delete h.style;
|
994 |
+
K(j.element, Aa ? "mouseover" : "mouseenter", function () {
|
995 |
+
k !== 3 && j.attr(f).css(s)
|
996 |
+
});
|
997 |
+
K(j.element, Aa ? "mouseout" : "mouseleave", function () {
|
998 |
+
k !== 3 && (l = [e, f, g][k], o = [n, s, m][k], j.attr(l).css(o))
|
999 |
+
});
|
1000 |
+
j.setState = function (a) {
|
1001 |
+
(j.state = k = a) ? a === 2 ? j.attr(g).css(m) : a === 3 && j.attr(h).css(p) : j.attr(e).css(n)
|
1002 |
+
};
|
1003 |
+
return j.on("click", function () {
|
1004 |
+
k !== 3 && d.call(j)
|
1005 |
+
}).attr(e).css(q({cursor: "default"}, n))
|
1006 |
+
}, crispLine: function (a, b) {
|
1007 |
+
a[1] === a[4] && (a[1] = a[4] = u(a[1]) - b % 2 / 2);
|
1008 |
+
a[2] === a[5] && (a[2] = a[5] = u(a[2]) + b % 2 / 2);
|
1009 |
+
return a
|
1010 |
+
}, path: function (a) {
|
1011 |
+
var b =
|
1012 |
+
{fill: Q};
|
1013 |
+
La(a) ? b.d = a : ca(a) && q(b, a);
|
1014 |
+
return this.createElement("path").attr(b)
|
1015 |
+
}, circle: function (a, b, c) {
|
1016 |
+
a = ca(a) ? a : {x: a, y: b, r: c};
|
1017 |
+
b = this.createElement("circle");
|
1018 |
+
b.xSetter = function (a) {
|
1019 |
+
this.element.setAttribute("cx", a)
|
1020 |
+
};
|
1021 |
+
b.ySetter = function (a) {
|
1022 |
+
this.element.setAttribute("cy", a)
|
1023 |
+
};
|
1024 |
+
return b.attr(a)
|
1025 |
+
}, arc: function (a, b, c, d, e, f) {
|
1026 |
+
if (ca(a))b = a.y, c = a.r, d = a.innerR, e = a.start, f = a.end, a = a.x;
|
1027 |
+
a = this.symbol("arc", a || 0, b || 0, c || 0, c || 0, {innerR: d || 0, start: e || 0, end: f || 0});
|
1028 |
+
a.r = c;
|
1029 |
+
return a
|
1030 |
+
}, rect: function (a, b, c, d, e, f) {
|
1031 |
+
var e = ca(a) ? a.r :
|
1032 |
+
e, g = this.createElement("rect"), a = ca(a) ? a : a === t ? {} : {
|
1033 |
+
x: a,
|
1034 |
+
y: b,
|
1035 |
+
width: v(c, 0),
|
1036 |
+
height: v(d, 0)
|
1037 |
+
};
|
1038 |
+
if (f !== t)a.strokeWidth = f, a = g.crisp(a);
|
1039 |
+
if (e)a.r = e;
|
1040 |
+
g.rSetter = function (a) {
|
1041 |
+
H(this.element, {rx: a, ry: a})
|
1042 |
+
};
|
1043 |
+
return g.attr(a)
|
1044 |
+
}, setSize: function (a, b, c) {
|
1045 |
+
var d = this.alignedObjects, e = d.length;
|
1046 |
+
this.width = a;
|
1047 |
+
this.height = b;
|
1048 |
+
for (this.boxWrapper[m(c, !0) ? "animate" : "attr"]({width: a, height: b}); e--;)d[e].align()
|
1049 |
+
}, g: function (a) {
|
1050 |
+
var b = this.createElement("g");
|
1051 |
+
return r(a) ? b.attr({"class": "highcharts-" + a}) : b
|
1052 |
+
}, image: function (a, b, c, d, e) {
|
1053 |
+
var f =
|
1054 |
+
{preserveAspectRatio: Q};
|
1055 |
+
arguments.length > 1 && q(f, {x: b, y: c, width: d, height: e});
|
1056 |
+
f = this.createElement("image").attr(f);
|
1057 |
+
f.element.setAttributeNS ? f.element.setAttributeNS("http://www.w3.org/1999/xlink", "href", a) : f.element.setAttribute("hc-svg-href", a);
|
1058 |
+
return f
|
1059 |
+
}, symbol: function (a, b, c, d, e, f) {
|
1060 |
+
var g, h = this.symbols[a], h = h && h(u(b), u(c), d, e, f), i = /^url\((.*?)\)$/, j, k;
|
1061 |
+
if (h)g = this.path(h), q(g, {
|
1062 |
+
symbolName: a,
|
1063 |
+
x: b,
|
1064 |
+
y: c,
|
1065 |
+
width: d,
|
1066 |
+
height: e
|
1067 |
+
}), f && q(g, f); else if (i.test(a))k = function (a, b) {
|
1068 |
+
a.element && (a.attr({width: b[0], height: b[1]}),
|
1069 |
+
a.alignByTranslate || a.translate(u((d - b[0]) / 2), u((e - b[1]) / 2)))
|
1070 |
+
}, j = a.match(i)[1], a = Kb[j], g = this.image(j).attr({
|
1071 |
+
x: b,
|
1072 |
+
y: c
|
1073 |
+
}), g.isImg = !0, a ? k(g, a) : (g.attr({width: 0, height: 0}), Y("img", {
|
1074 |
+
onload: function () {
|
1075 |
+
k(g, Kb[j] = [this.width, this.height])
|
1076 |
+
}, src: j
|
1077 |
+
}));
|
1078 |
+
return g
|
1079 |
+
}, symbols: {
|
1080 |
+
circle: function (a, b, c, d) {
|
1081 |
+
var e = 0.166 * c;
|
1082 |
+
return ["M", a + c / 2, b, "C", a + c + e, b, a + c + e, b + d, a + c / 2, b + d, "C", a - e, b + d, a - e, b, a + c / 2, b, "Z"]
|
1083 |
+
}, square: function (a, b, c, d) {
|
1084 |
+
return ["M", a, b, "L", a + c, b, a + c, b + d, a, b + d, "Z"]
|
1085 |
+
}, triangle: function (a, b, c, d) {
|
1086 |
+
return ["M", a + c / 2, b, "L",
|
1087 |
+
a + c, b + d, a, b + d, "Z"]
|
1088 |
+
}, "triangle-down": function (a, b, c, d) {
|
1089 |
+
return ["M", a, b, "L", a + c, b, a + c / 2, b + d, "Z"]
|
1090 |
+
}, diamond: function (a, b, c, d) {
|
1091 |
+
return ["M", a + c / 2, b, "L", a + c, b + d / 2, a + c / 2, b + d, a, b + d / 2, "Z"]
|
1092 |
+
}, arc: function (a, b, c, d, e) {
|
1093 |
+
var f = e.start, c = e.r || c || d, g = e.end - 0.001, d = e.innerR, h = e.open, i = Z(f), j = ea(f), k = Z(g), g = ea(g), e = e.end - f < ma ? 0 : 1;
|
1094 |
+
return ["M", a + c * i, b + c * j, "A", c, c, 0, e, 1, a + c * k, b + c * g, h ? "M" : "L", a + d * k, b + d * g, "A", d, d, 0, e, 0, a + d * i, b + d * j, h ? "" : "Z"]
|
1095 |
+
}, callout: function (a, b, c, d, e) {
|
1096 |
+
var f = C(e && e.r || 0, c, d), g = f + 6, h = e && e.anchorX, i = e && e.anchorY,
|
1097 |
+
e = u(e.strokeWidth || 0) % 2 / 2;
|
1098 |
+
a += e;
|
1099 |
+
b += e;
|
1100 |
+
e = ["M", a + f, b, "L", a + c - f, b, "C", a + c, b, a + c, b, a + c, b + f, "L", a + c, b + d - f, "C", a + c, b + d, a + c, b + d, a + c - f, b + d, "L", a + f, b + d, "C", a, b + d, a, b + d, a, b + d - f, "L", a, b + f, "C", a, b, a, b, a + f, b];
|
1101 |
+
h && h > c && i > b + g && i < b + d - g ? e.splice(13, 3, "L", a + c, i - 6, a + c + 6, i, a + c, i + 6, a + c, b + d - f) : h && h < 0 && i > b + g && i < b + d - g ? e.splice(33, 3, "L", a, i + 6, a - 6, i, a, i - 6, a, b + f) : i && i > d && h > a + g && h < a + c - g ? e.splice(23, 3, "L", h + 6, b + d, h, b + d + 6, h - 6, b + d, a + f, b + d) : i && i < 0 && h > a + g && h < a + c - g && e.splice(3, 3, "L", h - 6, b, h, b - 6, h + 6, b, c - f, b);
|
1102 |
+
return e
|
1103 |
+
}
|
1104 |
+
}, clipRect: function (a,
|
1105 |
+
b, c, d) {
|
1106 |
+
var e = "highcharts-" + tb++, f = this.createElement("clipPath").attr({id: e}).add(this.defs), a = this.rect(a, b, c, d, 0).add(f);
|
1107 |
+
a.id = e;
|
1108 |
+
a.clipPath = f;
|
1109 |
+
return a
|
1110 |
+
}, text: function (a, b, c, d) {
|
1111 |
+
var e = fa || !aa && this.forExport, f = {};
|
1112 |
+
if (d && !this.forExport)return this.html(a, b, c);
|
1113 |
+
f.x = Math.round(b || 0);
|
1114 |
+
if (c)f.y = Math.round(c);
|
1115 |
+
if (a || a === 0)f.text = a;
|
1116 |
+
a = this.createElement("text").attr(f);
|
1117 |
+
e && a.css({position: "absolute"});
|
1118 |
+
if (!d)a.xSetter = function (a, b, c) {
|
1119 |
+
var d = c.childNodes, e, f;
|
1120 |
+
for (f = 1; f < d.length; f++)e = d[f], e.getAttribute("x") === c.getAttribute("x") &&
|
1121 |
+
e.setAttribute("x", a);
|
1122 |
+
c.setAttribute(b, a)
|
1123 |
+
};
|
1124 |
+
return a
|
1125 |
+
}, fontMetrics: function (a) {
|
1126 |
+
var a = a || this.style.fontSize, a = /px/.test(a) ? z(a) : /em/.test(a) ? parseFloat(a) * 12 : 12, a = a < 24 ? a + 4 : u(a * 1.2), b = u(a * 0.8);
|
1127 |
+
return {h: a, b: b}
|
1128 |
+
}, label: function (a, b, c, d, e, f, g, h, i) {
|
1129 |
+
function j() {
|
1130 |
+
var a, b;
|
1131 |
+
a = s.element.style;
|
1132 |
+
J = (Va === void 0 || wb === void 0 || n.styles.textAlign) && s.textStr && s.getBBox();
|
1133 |
+
n.width = (Va || J.width || 0) + 2 * x + v;
|
1134 |
+
n.height = (wb || J.height || 0) + 2 * x;
|
1135 |
+
na = x + o.fontMetrics(a && a.fontSize).b;
|
1136 |
+
if (z) {
|
1137 |
+
if (!m)a = u(-L * x), b = h ? -na : 0, n.box = m = d ? o.symbol(d,
|
1138 |
+
a, b, n.width, n.height, B) : o.rect(a, b, n.width, n.height, 0, B[Pb]), m.attr("fill", Q).add(n);
|
1139 |
+
m.isImg || m.attr(q({width: u(n.width), height: u(n.height)}, B));
|
1140 |
+
B = null
|
1141 |
+
}
|
1142 |
+
}
|
1143 |
+
|
1144 |
+
function k() {
|
1145 |
+
var a = n.styles, a = a && a.textAlign, b = v + x * (1 - L), c;
|
1146 |
+
c = h ? 0 : na;
|
1147 |
+
if (r(Va) && J && (a === "center" || a === "right"))b += {center: 0.5, right: 1}[a] * (Va - J.width);
|
1148 |
+
if (b !== s.x || c !== s.y)s.attr("x", b), c !== t && s.attr("y", c);
|
1149 |
+
s.x = b;
|
1150 |
+
s.y = c
|
1151 |
+
}
|
1152 |
+
|
1153 |
+
function l(a, b) {
|
1154 |
+
m ? m.attr(a, b) : B[a] = b
|
1155 |
+
}
|
1156 |
+
|
1157 |
+
var o = this, n = o.g(i), s = o.text("", 0, 0, g).attr({zIndex: 1}), m, J, L = 0, x = 3, v = 0, Va, wb, xb, yb, y = 0, B = {}, na,
|
1158 |
+
z;
|
1159 |
+
n.onAdd = function () {
|
1160 |
+
s.add(n);
|
1161 |
+
n.attr({text: a || "", x: b, y: c});
|
1162 |
+
m && r(e) && n.attr({anchorX: e, anchorY: f})
|
1163 |
+
};
|
1164 |
+
n.widthSetter = function (a) {
|
1165 |
+
Va = a
|
1166 |
+
};
|
1167 |
+
n.heightSetter = function (a) {
|
1168 |
+
wb = a
|
1169 |
+
};
|
1170 |
+
n.paddingSetter = function (a) {
|
1171 |
+
r(a) && a !== x && (x = a, k())
|
1172 |
+
};
|
1173 |
+
n.paddingLeftSetter = function (a) {
|
1174 |
+
r(a) && a !== v && (v = a, k())
|
1175 |
+
};
|
1176 |
+
n.alignSetter = function (a) {
|
1177 |
+
L = {left: 0, center: 0.5, right: 1}[a]
|
1178 |
+
};
|
1179 |
+
n.textSetter = function (a) {
|
1180 |
+
a !== t && s.textSetter(a);
|
1181 |
+
j();
|
1182 |
+
k()
|
1183 |
+
};
|
1184 |
+
n["stroke-widthSetter"] = function (a, b) {
|
1185 |
+
a && (z = !0);
|
1186 |
+
y = a % 2 / 2;
|
1187 |
+
l(b, a)
|
1188 |
+
};
|
1189 |
+
n.strokeSetter = n.fillSetter = n.rSetter = function (a,
|
1190 |
+
b) {
|
1191 |
+
b === "fill" && a && (z = !0);
|
1192 |
+
l(b, a)
|
1193 |
+
};
|
1194 |
+
n.anchorXSetter = function (a, b) {
|
1195 |
+
e = a;
|
1196 |
+
l(b, a + y - xb)
|
1197 |
+
};
|
1198 |
+
n.anchorYSetter = function (a, b) {
|
1199 |
+
f = a;
|
1200 |
+
l(b, a - yb)
|
1201 |
+
};
|
1202 |
+
n.xSetter = function (a) {
|
1203 |
+
n.x = a;
|
1204 |
+
L && (a -= L * ((Va || J.width) + x));
|
1205 |
+
xb = u(a);
|
1206 |
+
n.attr("translateX", xb)
|
1207 |
+
};
|
1208 |
+
n.ySetter = function (a) {
|
1209 |
+
yb = n.y = u(a);
|
1210 |
+
n.attr("translateY", yb)
|
1211 |
+
};
|
1212 |
+
var A = n.css;
|
1213 |
+
return q(n, {
|
1214 |
+
css: function (a) {
|
1215 |
+
if (a) {
|
1216 |
+
var b = {}, a = w(a);
|
1217 |
+
p("fontSize,fontWeight,fontFamily,color,lineHeight,width,textDecoration,textShadow".split(","), function (c) {
|
1218 |
+
a[c] !== t && (b[c] = a[c], delete a[c])
|
1219 |
+
});
|
1220 |
+
s.css(b)
|
1221 |
+
}
|
1222 |
+
return A.call(n,
|
1223 |
+
a)
|
1224 |
+
}, getBBox: function () {
|
1225 |
+
return {width: J.width + 2 * x, height: J.height + 2 * x, x: J.x - x, y: J.y - x}
|
1226 |
+
}, shadow: function (a) {
|
1227 |
+
m && m.shadow(a);
|
1228 |
+
return n
|
1229 |
+
}, destroy: function () {
|
1230 |
+
W(n.element, "mouseenter");
|
1231 |
+
W(n.element, "mouseleave");
|
1232 |
+
s && (s = s.destroy());
|
1233 |
+
m && (m = m.destroy());
|
1234 |
+
P.prototype.destroy.call(n);
|
1235 |
+
n = o = j = k = l = null
|
1236 |
+
}
|
1237 |
+
})
|
1238 |
+
}
|
1239 |
+
};
|
1240 |
+
Za = ta;
|
1241 |
+
q(P.prototype, {
|
1242 |
+
htmlCss: function (a) {
|
1243 |
+
var b = this.element;
|
1244 |
+
if (b = a && b.tagName === "SPAN" && a.width)delete a.width, this.textWidth = b, this.updateTransform();
|
1245 |
+
this.styles = q(this.styles, a);
|
1246 |
+
G(this.element, a);
|
1247 |
+
return this
|
1248 |
+
}, htmlGetBBox: function () {
|
1249 |
+
var a =
|
1250 |
+
this.element, b = this.bBox;
|
1251 |
+
if (!b) {
|
1252 |
+
if (a.nodeName === "text")a.style.position = "absolute";
|
1253 |
+
b = this.bBox = {x: a.offsetLeft, y: a.offsetTop, width: a.offsetWidth, height: a.offsetHeight}
|
1254 |
+
}
|
1255 |
+
return b
|
1256 |
+
}, htmlUpdateTransform: function () {
|
1257 |
+
if (this.added) {
|
1258 |
+
var a = this.renderer, b = this.element, c = this.translateX || 0, d = this.translateY || 0, e = this.x || 0, f = this.y || 0, g = this.textAlign || "left", h = {
|
1259 |
+
left: 0,
|
1260 |
+
center: 0.5,
|
1261 |
+
right: 1
|
1262 |
+
}[g], i = this.shadows;
|
1263 |
+
G(b, {marginLeft: c, marginTop: d});
|
1264 |
+
i && p(i, function (a) {
|
1265 |
+
G(a, {marginLeft: c + 1, marginTop: d + 1})
|
1266 |
+
});
|
1267 |
+
this.inverted &&
|
1268 |
+
p(b.childNodes, function (c) {
|
1269 |
+
a.invertChild(c, b)
|
1270 |
+
});
|
1271 |
+
if (b.tagName === "SPAN") {
|
1272 |
+
var j = this.rotation, k, l = z(this.textWidth), o = [j, g, b.innerHTML, this.textWidth].join(",");
|
1273 |
+
if (o !== this.cTT) {
|
1274 |
+
k = a.fontMetrics(b.style.fontSize).b;
|
1275 |
+
r(j) && this.setSpanRotation(j, h, k);
|
1276 |
+
i = m(this.elemWidth, b.offsetWidth);
|
1277 |
+
if (i > l && /[ \-]/.test(b.textContent || b.innerText))G(b, {
|
1278 |
+
width: l + "px",
|
1279 |
+
display: "block",
|
1280 |
+
whiteSpace: "normal"
|
1281 |
+
}), i = l;
|
1282 |
+
this.getSpanCorrection(i, k, h, j, g)
|
1283 |
+
}
|
1284 |
+
G(b, {left: e + (this.xCorr || 0) + "px", top: f + (this.yCorr || 0) + "px"});
|
1285 |
+
if (ib)k = b.offsetHeight;
|
1286 |
+
this.cTT = o
|
1287 |
+
}
|
1288 |
+
} else this.alignOnAdd = !0
|
1289 |
+
}, setSpanRotation: function (a, b, c) {
|
1290 |
+
var d = {}, e = Aa ? "-ms-transform" : ib ? "-webkit-transform" : Ta ? "MozTransform" : Ib ? "-o-transform" : "";
|
1291 |
+
d[e] = d.transform = "rotate(" + a + "deg)";
|
1292 |
+
d[e + (Ta ? "Origin" : "-origin")] = d.transformOrigin = b * 100 + "% " + c + "px";
|
1293 |
+
G(this.element, d)
|
1294 |
+
}, getSpanCorrection: function (a, b, c) {
|
1295 |
+
this.xCorr = -a * c;
|
1296 |
+
this.yCorr = -b
|
1297 |
+
}
|
1298 |
+
});
|
1299 |
+
q(ta.prototype, {
|
1300 |
+
html: function (a, b, c) {
|
1301 |
+
var d = this.createElement("span"), e = d.element, f = d.renderer;
|
1302 |
+
d.textSetter = function (a) {
|
1303 |
+
a !== e.innerHTML && delete this.bBox;
|
1304 |
+
e.innerHTML = this.textStr = a
|
1305 |
+
};
|
1306 |
+
d.xSetter = d.ySetter = d.alignSetter = d.rotationSetter = function (a, b) {
|
1307 |
+
b === "align" && (b = "textAlign");
|
1308 |
+
d[b] = a;
|
1309 |
+
d.htmlUpdateTransform()
|
1310 |
+
};
|
1311 |
+
d.attr({text: a, x: u(b), y: u(c)}).css({
|
1312 |
+
position: "absolute",
|
1313 |
+
whiteSpace: "nowrap",
|
1314 |
+
fontFamily: this.style.fontFamily,
|
1315 |
+
fontSize: this.style.fontSize
|
1316 |
+
});
|
1317 |
+
d.css = d.htmlCss;
|
1318 |
+
if (f.isSVG)d.add = function (a) {
|
1319 |
+
var b, c = f.box.parentNode, j = [];
|
1320 |
+
if (this.parentGroup = a) {
|
1321 |
+
if (b = a.div, !b) {
|
1322 |
+
for (; a;)j.push(a), a = a.parentGroup;
|
1323 |
+
p(j.reverse(), function (a) {
|
1324 |
+
var d;
|
1325 |
+
b = a.div = a.div || Y(Ja, {
|
1326 |
+
className: H(a.element,
|
1327 |
+
"class")
|
1328 |
+
}, {
|
1329 |
+
position: "absolute",
|
1330 |
+
left: (a.translateX || 0) + "px",
|
1331 |
+
top: (a.translateY || 0) + "px"
|
1332 |
+
}, b || c);
|
1333 |
+
d = b.style;
|
1334 |
+
q(a, {
|
1335 |
+
translateXSetter: function (b, c) {
|
1336 |
+
d.left = b + "px";
|
1337 |
+
a[c] = b;
|
1338 |
+
a.doTransform = !0
|
1339 |
+
}, translateYSetter: function (b, c) {
|
1340 |
+
d.top = b + "px";
|
1341 |
+
a[c] = b;
|
1342 |
+
a.doTransform = !0
|
1343 |
+
}, visibilitySetter: function (a, b) {
|
1344 |
+
d[b] = a
|
1345 |
+
}
|
1346 |
+
})
|
1347 |
+
})
|
1348 |
+
}
|
1349 |
+
} else b = c;
|
1350 |
+
b.appendChild(e);
|
1351 |
+
d.added = !0;
|
1352 |
+
d.alignOnAdd && d.htmlUpdateTransform();
|
1353 |
+
return d
|
1354 |
+
};
|
1355 |
+
return d
|
1356 |
+
}
|
1357 |
+
});
|
1358 |
+
var X;
|
1359 |
+
if (!aa && !fa) {
|
1360 |
+
R.VMLElement = X = {
|
1361 |
+
init: function (a, b) {
|
1362 |
+
var c = ["<", b, ' filled="f" stroked="f"'], d = ["position: ", "absolute",
|
1363 |
+
";"], e = b === Ja;
|
1364 |
+
(b === "shape" || e) && d.push("left:0;top:0;width:1px;height:1px;");
|
1365 |
+
d.push("visibility: ", e ? "hidden" : "visible");
|
1366 |
+
c.push(' style="', d.join(""), '"/>');
|
1367 |
+
if (b)c = e || b === "span" || b === "img" ? c.join("") : a.prepVML(c), this.element = Y(c);
|
1368 |
+
this.renderer = a
|
1369 |
+
}, add: function (a) {
|
1370 |
+
var b = this.renderer, c = this.element, d = b.box, d = a ? a.element || a : d;
|
1371 |
+
a && a.inverted && b.invertChild(c, d);
|
1372 |
+
d.appendChild(c);
|
1373 |
+
this.added = !0;
|
1374 |
+
this.alignOnAdd && !this.deferUpdateTransform && this.updateTransform();
|
1375 |
+
if (this.onAdd)this.onAdd();
|
1376 |
+
return this
|
1377 |
+
}, updateTransform: P.prototype.htmlUpdateTransform,
|
1378 |
+
setSpanRotation: function () {
|
1379 |
+
var a = this.rotation, b = Z(a * Ca), c = ea(a * Ca);
|
1380 |
+
G(this.element, {filter: a ? ["progid:DXImageTransform.Microsoft.Matrix(M11=", b, ", M12=", -c, ", M21=", c, ", M22=", b, ", sizingMethod='auto expand')"].join("") : Q})
|
1381 |
+
}, getSpanCorrection: function (a, b, c, d, e) {
|
1382 |
+
var f = d ? Z(d * Ca) : 1, g = d ? ea(d * Ca) : 0, h = m(this.elemHeight, this.element.offsetHeight), i;
|
1383 |
+
this.xCorr = f < 0 && -a;
|
1384 |
+
this.yCorr = g < 0 && -h;
|
1385 |
+
i = f * g < 0;
|
1386 |
+
this.xCorr += g * b * (i ? 1 - c : c);
|
1387 |
+
this.yCorr -= f * b * (d ? i ? c : 1 - c : 1);
|
1388 |
+
e && e !== "left" && (this.xCorr -= a * c * (f < 0 ? -1 : 1), d && (this.yCorr -=
|
1389 |
+
h * c * (g < 0 ? -1 : 1)), G(this.element, {textAlign: e}))
|
1390 |
+
}, pathToVML: function (a) {
|
1391 |
+
for (var b = a.length, c = []; b--;)if (ha(a[b]))c[b] = u(a[b] * 10) - 5; else if (a[b] === "Z")c[b] = "x"; else if (c[b] = a[b], a.isArc && (a[b] === "wa" || a[b] === "at"))c[b + 5] === c[b + 7] && (c[b + 7] += a[b + 7] > a[b + 5] ? 1 : -1), c[b + 6] === c[b + 8] && (c[b + 8] += a[b + 8] > a[b + 6] ? 1 : -1);
|
1392 |
+
return c.join(" ") || "x"
|
1393 |
+
}, clip: function (a) {
|
1394 |
+
var b = this, c;
|
1395 |
+
a ? (c = a.members, ja(c, b), c.push(b), b.destroyClip = function () {
|
1396 |
+
ja(c, b)
|
1397 |
+
}, a = a.getCSS(b)) : (b.destroyClip && b.destroyClip(), a = {clip: hb ? "inherit" : "rect(auto)"});
|
1398 |
+
return b.css(a)
|
1399 |
+
}, css: P.prototype.htmlCss, safeRemoveChild: function (a) {
|
1400 |
+
a.parentNode && Pa(a)
|
1401 |
+
}, destroy: function () {
|
1402 |
+
this.destroyClip && this.destroyClip();
|
1403 |
+
return P.prototype.destroy.apply(this)
|
1404 |
+
}, on: function (a, b) {
|
1405 |
+
this.element["on" + a] = function () {
|
1406 |
+
var a = I.event;
|
1407 |
+
a.target = a.srcElement;
|
1408 |
+
b(a)
|
1409 |
+
};
|
1410 |
+
return this
|
1411 |
+
}, cutOffPath: function (a, b) {
|
1412 |
+
var c, a = a.split(/[ ,]/);
|
1413 |
+
c = a.length;
|
1414 |
+
if (c === 9 || c === 11)a[c - 4] = a[c - 2] = z(a[c - 2]) - 10 * b;
|
1415 |
+
return a.join(" ")
|
1416 |
+
}, shadow: function (a, b, c) {
|
1417 |
+
var d = [], e, f = this.element, g = this.renderer, h, i = f.style, j, k = f.path,
|
1418 |
+
l, o, n, s;
|
1419 |
+
k && typeof k.value !== "string" && (k = "x");
|
1420 |
+
o = k;
|
1421 |
+
if (a) {
|
1422 |
+
n = m(a.width, 3);
|
1423 |
+
s = (a.opacity || 0.15) / n;
|
1424 |
+
for (e = 1; e <= 3; e++) {
|
1425 |
+
l = n * 2 + 1 - 2 * e;
|
1426 |
+
c && (o = this.cutOffPath(k.value, l + 0.5));
|
1427 |
+
j = ['<shape isShadow="true" strokeweight="', l, '" filled="false" path="', o, '" coordsize="10 10" style="', f.style.cssText, '" />'];
|
1428 |
+
h = Y(g.prepVML(j), null, {left: z(i.left) + m(a.offsetX, 1), top: z(i.top) + m(a.offsetY, 1)});
|
1429 |
+
if (c)h.cutOff = l + 1;
|
1430 |
+
j = ['<stroke color="', a.color || "black", '" opacity="', s * e, '"/>'];
|
1431 |
+
Y(g.prepVML(j), null, null, h);
|
1432 |
+
b ? b.element.appendChild(h) :
|
1433 |
+
f.parentNode.insertBefore(h, f);
|
1434 |
+
d.push(h)
|
1435 |
+
}
|
1436 |
+
this.shadows = d
|
1437 |
+
}
|
1438 |
+
return this
|
1439 |
+
}, updateShadows: sa, setAttr: function (a, b) {
|
1440 |
+
hb ? this.element[a] = b : this.element.setAttribute(a, b)
|
1441 |
+
}, classSetter: function (a) {
|
1442 |
+
this.element.className = a
|
1443 |
+
}, dashstyleSetter: function (a, b, c) {
|
1444 |
+
(c.getElementsByTagName("stroke")[0] || Y(this.renderer.prepVML(["<stroke/>"]), null, null, c))[b] = a || "solid";
|
1445 |
+
this[b] = a
|
1446 |
+
}, dSetter: function (a, b, c) {
|
1447 |
+
var d = this.shadows, a = a || [];
|
1448 |
+
this.d = a.join(" ");
|
1449 |
+
c.path = a = this.pathToVML(a);
|
1450 |
+
if (d)for (c = d.length; c--;)d[c].path = d[c].cutOff ?
|
1451 |
+
this.cutOffPath(a, d[c].cutOff) : a;
|
1452 |
+
this.setAttr(b, a)
|
1453 |
+
}, fillSetter: function (a, b, c) {
|
1454 |
+
var d = c.nodeName;
|
1455 |
+
if (d === "SPAN")c.style.color = a; else if (d !== "IMG")c.filled = a !== Q, this.setAttr("fillcolor", this.renderer.color(a, c, b, this))
|
1456 |
+
}, opacitySetter: sa, rotationSetter: function (a, b, c) {
|
1457 |
+
c = c.style;
|
1458 |
+
this[b] = c[b] = a;
|
1459 |
+
c.left = -u(ea(a * Ca) + 1) + "px";
|
1460 |
+
c.top = u(Z(a * Ca)) + "px"
|
1461 |
+
}, strokeSetter: function (a, b, c) {
|
1462 |
+
this.setAttr("strokecolor", this.renderer.color(a, c, b))
|
1463 |
+
}, "stroke-widthSetter": function (a, b, c) {
|
1464 |
+
c.stroked = !!a;
|
1465 |
+
this[b] = a;
|
1466 |
+
ha(a) && (a += "px");
|
1467 |
+
this.setAttr("strokeweight", a)
|
1468 |
+
}, titleSetter: function (a, b) {
|
1469 |
+
this.setAttr(b, a)
|
1470 |
+
}, visibilitySetter: function (a, b, c) {
|
1471 |
+
a === "inherit" && (a = "visible");
|
1472 |
+
this.shadows && p(this.shadows, function (c) {
|
1473 |
+
c.style[b] = a
|
1474 |
+
});
|
1475 |
+
c.nodeName === "DIV" && (a = a === "hidden" ? "-999em" : 0, hb || (c.style[b] = a ? "visible" : "hidden"), b = "top");
|
1476 |
+
c.style[b] = a
|
1477 |
+
}, xSetter: function (a, b, c) {
|
1478 |
+
this[b] = a;
|
1479 |
+
b === "x" ? b = "left" : b === "y" && (b = "top");
|
1480 |
+
this.updateClipping ? (this[b] = a, this.updateClipping()) : c.style[b] = a
|
1481 |
+
}, zIndexSetter: function (a, b, c) {
|
1482 |
+
c.style[b] = a
|
1483 |
+
}
|
1484 |
+
};
|
1485 |
+
X = ka(P, X);
|
1486 |
+
X.prototype.ySetter =
|
1487 |
+
X.prototype.widthSetter = X.prototype.heightSetter = X.prototype.xSetter;
|
1488 |
+
var ga = {
|
1489 |
+
Element: X, isIE8: wa.indexOf("MSIE 8.0") > -1, init: function (a, b, c, d) {
|
1490 |
+
var e;
|
1491 |
+
this.alignedObjects = [];
|
1492 |
+
d = this.createElement(Ja).css(q(this.getStyle(d), {position: "relative"}));
|
1493 |
+
e = d.element;
|
1494 |
+
a.appendChild(d.element);
|
1495 |
+
this.isVML = !0;
|
1496 |
+
this.box = e;
|
1497 |
+
this.boxWrapper = d;
|
1498 |
+
this.cache = {};
|
1499 |
+
this.setSize(b, c, !1);
|
1500 |
+
if (!y.namespaces.hcv) {
|
1501 |
+
y.namespaces.add("hcv", "urn:schemas-microsoft-com:vml");
|
1502 |
+
try {
|
1503 |
+
y.createStyleSheet().cssText = "hcv\\:fill, hcv\\:path, hcv\\:shape, hcv\\:stroke{ behavior:url(#default#VML); display: inline-block; } "
|
1504 |
+
} catch (f) {
|
1505 |
+
y.styleSheets[0].cssText +=
|
1506 |
+
"hcv\\:fill, hcv\\:path, hcv\\:shape, hcv\\:stroke{ behavior:url(#default#VML); display: inline-block; } "
|
1507 |
+
}
|
1508 |
+
}
|
1509 |
+
}, isHidden: function () {
|
1510 |
+
return !this.box.offsetWidth
|
1511 |
+
}, clipRect: function (a, b, c, d) {
|
1512 |
+
var e = this.createElement(), f = ca(a);
|
1513 |
+
return q(e, {
|
1514 |
+
members: [],
|
1515 |
+
left: (f ? a.x : a) + 1,
|
1516 |
+
top: (f ? a.y : b) + 1,
|
1517 |
+
width: (f ? a.width : c) - 1,
|
1518 |
+
height: (f ? a.height : d) - 1,
|
1519 |
+
getCSS: function (a) {
|
1520 |
+
var b = a.element, c = b.nodeName, a = a.inverted, d = this.top - (c === "shape" ? b.offsetTop : 0), e = this.left, b = e + this.width, f = d + this.height, d = {
|
1521 |
+
clip: "rect(" + u(a ? e : d) + "px," + u(a ?
|
1522 |
+
f : b) + "px," + u(a ? b : f) + "px," + u(a ? d : e) + "px)"
|
1523 |
+
};
|
1524 |
+
!a && hb && c === "DIV" && q(d, {width: b + "px", height: f + "px"});
|
1525 |
+
return d
|
1526 |
+
},
|
1527 |
+
updateClipping: function () {
|
1528 |
+
p(e.members, function (a) {
|
1529 |
+
a.element && a.css(e.getCSS(a))
|
1530 |
+
})
|
1531 |
+
}
|
1532 |
+
})
|
1533 |
+
}, color: function (a, b, c, d) {
|
1534 |
+
var e = this, f, g = /^rgba/, h, i, j = Q;
|
1535 |
+
a && a.linearGradient ? i = "gradient" : a && a.radialGradient && (i = "pattern");
|
1536 |
+
if (i) {
|
1537 |
+
var k, l, o = a.linearGradient || a.radialGradient, n, s, m, J, L, x = "", a = a.stops, r, v = [], q = function () {
|
1538 |
+
h = ['<fill colors="' + v.join(",") + '" opacity="', m, '" o:opacity2="', s, '" type="', i, '" ', x, 'focus="100%" method="any" />'];
|
1539 |
+
Y(e.prepVML(h), null, null, b)
|
1540 |
+
};
|
1541 |
+
n = a[0];
|
1542 |
+
r = a[a.length - 1];
|
1543 |
+
n[0] > 0 && a.unshift([0, n[1]]);
|
1544 |
+
r[0] < 1 && a.push([1, r[1]]);
|
1545 |
+
p(a, function (a, b) {
|
1546 |
+
g.test(a[1]) ? (f = ya(a[1]), k = f.get("rgb"), l = f.get("a")) : (k = a[1], l = 1);
|
1547 |
+
v.push(a[0] * 100 + "% " + k);
|
1548 |
+
b ? (m = l, J = k) : (s = l, L = k)
|
1549 |
+
});
|
1550 |
+
if (c === "fill")if (i === "gradient")c = o.x1 || o[0] || 0, a = o.y1 || o[1] || 0, n = o.x2 || o[2] || 0, o = o.y2 || o[3] || 0, x = 'angle="' + (90 - U.atan((o - a) / (n - c)) * 180 / ma) + '"', q(); else {
|
1551 |
+
var j = o.r, t = j * 2, u = j * 2, y = o.cx, B = o.cy, na = b.radialReference, w, j = function () {
|
1552 |
+
na && (w = d.getBBox(), y += (na[0] - w.x) / w.width -
|
1553 |
+
0.5, B += (na[1] - w.y) / w.height - 0.5, t *= na[2] / w.width, u *= na[2] / w.height);
|
1554 |
+
x = 'src="' + E.global.VMLRadialGradientURL + '" size="' + t + "," + u + '" origin="0.5,0.5" position="' + y + "," + B + '" color2="' + L + '" ';
|
1555 |
+
q()
|
1556 |
+
};
|
1557 |
+
d.added ? j() : d.onAdd = j;
|
1558 |
+
j = J
|
1559 |
+
} else j = k
|
1560 |
+
} else if (g.test(a) && b.tagName !== "IMG")f = ya(a), h = ["<", c, ' opacity="', f.get("a"), '"/>'], Y(this.prepVML(h), null, null, b), j = f.get("rgb"); else {
|
1561 |
+
j = b.getElementsByTagName(c);
|
1562 |
+
if (j.length)j[0].opacity = 1, j[0].type = "solid";
|
1563 |
+
j = a
|
1564 |
+
}
|
1565 |
+
return j
|
1566 |
+
}, prepVML: function (a) {
|
1567 |
+
var b = this.isIE8, a = a.join("");
|
1568 |
+
b ?
|
1569 |
+
(a = a.replace("/>", ' xmlns="urn:schemas-microsoft-com:vml" />'), a = a.indexOf('style="') === -1 ? a.replace("/>", ' style="display:inline-block;behavior:url(#default#VML);" />') : a.replace('style="', 'style="display:inline-block;behavior:url(#default#VML);')) : a = a.replace("<", "<hcv:");
|
1570 |
+
return a
|
1571 |
+
}, text: ta.prototype.html, path: function (a) {
|
1572 |
+
var b = {coordsize: "10 10"};
|
1573 |
+
La(a) ? b.d = a : ca(a) && q(b, a);
|
1574 |
+
return this.createElement("shape").attr(b)
|
1575 |
+
}, circle: function (a, b, c) {
|
1576 |
+
var d = this.symbol("circle");
|
1577 |
+
if (ca(a))c = a.r, b = a.y, a = a.x;
|
1578 |
+
d.isCircle = !0;
|
1579 |
+
d.r = c;
|
1580 |
+
return d.attr({x: a, y: b})
|
1581 |
+
}, g: function (a) {
|
1582 |
+
var b;
|
1583 |
+
a && (b = {className: "highcharts-" + a, "class": "highcharts-" + a});
|
1584 |
+
return this.createElement(Ja).attr(b)
|
1585 |
+
}, image: function (a, b, c, d, e) {
|
1586 |
+
var f = this.createElement("img").attr({src: a});
|
1587 |
+
arguments.length > 1 && f.attr({x: b, y: c, width: d, height: e});
|
1588 |
+
return f
|
1589 |
+
}, createElement: function (a) {
|
1590 |
+
return a === "rect" ? this.symbol(a) : ta.prototype.createElement.call(this, a)
|
1591 |
+
}, invertChild: function (a, b) {
|
1592 |
+
var c = this, d = b.style, e = a.tagName === "IMG" && a.style;
|
1593 |
+
G(a, {
|
1594 |
+
flip: "x", left: z(d.width) - (e ? z(e.top) :
|
1595 |
+
1), top: z(d.height) - (e ? z(e.left) : 1), rotation: -90
|
1596 |
+
});
|
1597 |
+
p(a.childNodes, function (b) {
|
1598 |
+
c.invertChild(b, a)
|
1599 |
+
})
|
1600 |
+
}, symbols: {
|
1601 |
+
arc: function (a, b, c, d, e) {
|
1602 |
+
var f = e.start, g = e.end, h = e.r || c || d, c = e.innerR, d = Z(f), i = ea(f), j = Z(g), k = ea(g);
|
1603 |
+
if (g - f === 0)return ["x"];
|
1604 |
+
f = ["wa", a - h, b - h, a + h, b + h, a + h * d, b + h * i, a + h * j, b + h * k];
|
1605 |
+
e.open && !c && f.push("e", "M", a, b);
|
1606 |
+
f.push("at", a - c, b - c, a + c, b + c, a + c * j, b + c * k, a + c * d, b + c * i, "x", "e");
|
1607 |
+
f.isArc = !0;
|
1608 |
+
return f
|
1609 |
+
}, circle: function (a, b, c, d, e) {
|
1610 |
+
e && (c = d = 2 * e.r);
|
1611 |
+
e && e.isCircle && (a -= c / 2, b -= d / 2);
|
1612 |
+
return ["wa", a, b, a + c, b + d, a + c, b + d / 2, a +
|
1613 |
+
c, b + d / 2, "e"]
|
1614 |
+
}, rect: function (a, b, c, d, e) {
|
1615 |
+
return ta.prototype.symbols[!r(e) || !e.r ? "square" : "callout"].call(0, a, b, c, d, e)
|
1616 |
+
}
|
1617 |
+
}
|
1618 |
+
};
|
1619 |
+
R.VMLRenderer = X = function () {
|
1620 |
+
this.init.apply(this, arguments)
|
1621 |
+
};
|
1622 |
+
X.prototype = w(ta.prototype, ga);
|
1623 |
+
Za = X
|
1624 |
+
}
|
1625 |
+
ta.prototype.measureSpanWidth = function (a, b) {
|
1626 |
+
var c = y.createElement("span"), d;
|
1627 |
+
d = y.createTextNode(a);
|
1628 |
+
c.appendChild(d);
|
1629 |
+
G(c, b);
|
1630 |
+
this.box.appendChild(c);
|
1631 |
+
d = c.offsetWidth;
|
1632 |
+
Pa(c);
|
1633 |
+
return d
|
1634 |
+
};
|
1635 |
+
var Lb;
|
1636 |
+
if (fa)R.CanVGRenderer = X = function () {
|
1637 |
+
xa = "http://www.w3.org/1999/xhtml"
|
1638 |
+
}, X.prototype.symbols = {}, Lb = function () {
|
1639 |
+
function a() {
|
1640 |
+
var a =
|
1641 |
+
b.length, d;
|
1642 |
+
for (d = 0; d < a; d++)b[d]();
|
1643 |
+
b = []
|
1644 |
+
}
|
1645 |
+
|
1646 |
+
var b = [];
|
1647 |
+
return {
|
1648 |
+
push: function (c, d) {
|
1649 |
+
b.length === 0 && Qb(d, a);
|
1650 |
+
b.push(c)
|
1651 |
+
}
|
1652 |
+
}
|
1653 |
+
}(), Za = X;
|
1654 |
+
Sa.prototype = {
|
1655 |
+
addLabel: function () {
|
1656 |
+
var a = this.axis, b = a.options, c = a.chart, d = a.horiz, e = a.categories, f = a.names, g = this.pos, h = b.labels, i = a.tickPositions, d = d && e && !h.step && !h.staggerLines && !h.rotation && c.plotWidth / i.length || !d && (c.margin[3] || c.chartWidth * 0.33), j = g === i[0], k = g === i[i.length - 1], l, f = e ? m(e[g], f[g], g) : g, e = this.label, o = i.info;
|
1657 |
+
a.isDatetimeAxis && o && (l = b.dateTimeLabelFormats[o.higherRanks[g] ||
|
1658 |
+
o.unitName]);
|
1659 |
+
this.isFirst = j;
|
1660 |
+
this.isLast = k;
|
1661 |
+
b = a.labelFormatter.call({
|
1662 |
+
axis: a,
|
1663 |
+
chart: c,
|
1664 |
+
isFirst: j,
|
1665 |
+
isLast: k,
|
1666 |
+
dateTimeLabelFormat: l,
|
1667 |
+
value: a.isLog ? da(ia(f)) : f
|
1668 |
+
});
|
1669 |
+
g = d && {width: v(1, u(d - 2 * (h.padding || 10))) + "px"};
|
1670 |
+
g = q(g, h.style);
|
1671 |
+
if (r(e))e && e.attr({text: b}).css(g); else {
|
1672 |
+
l = {align: a.labelAlign};
|
1673 |
+
if (ha(h.rotation))l.rotation = h.rotation;
|
1674 |
+
if (d && h.ellipsis)l._clipHeight = a.len / i.length;
|
1675 |
+
this.label = r(b) && h.enabled ? c.renderer.text(b, 0, 0, h.useHTML).attr(l).css(g).add(a.labelGroup) : null
|
1676 |
+
}
|
1677 |
+
}, getLabelSize: function () {
|
1678 |
+
var a = this.label,
|
1679 |
+
b = this.axis;
|
1680 |
+
return a ? a.getBBox()[b.horiz ? "height" : "width"] : 0
|
1681 |
+
}, getLabelSides: function () {
|
1682 |
+
var a = this.label.getBBox(), b = this.axis, c = b.horiz, d = b.options.labels, a = c ? a.width : a.height, b = c ? d.x - a * {
|
1683 |
+
left: 0,
|
1684 |
+
center: 0.5,
|
1685 |
+
right: 1
|
1686 |
+
}[b.labelAlign] : 0;
|
1687 |
+
return [b, c ? a + b : a]
|
1688 |
+
}, handleOverflow: function (a, b) {
|
1689 |
+
var c = !0, d = this.axis, e = this.isFirst, f = this.isLast, g = d.horiz ? b.x : b.y, h = d.reversed, i = d.tickPositions, j = this.getLabelSides(), k = j[0], j = j[1], l, o, n, s = this.label.line || 0;
|
1690 |
+
l = d.labelEdge;
|
1691 |
+
o = d.justifyLabels && (e || f);
|
1692 |
+
l[s] === t || g + k > l[s] ? l[s] =
|
1693 |
+
g + j : o || (c = !1);
|
1694 |
+
if (o) {
|
1695 |
+
l = (o = d.justifyToPlot) ? d.pos : 0;
|
1696 |
+
o = o ? l + d.len : d.chart.chartWidth;
|
1697 |
+
do a += e ? 1 : -1, n = d.ticks[i[a]]; while (i[a] && (!n || n.label.line !== s));
|
1698 |
+
d = n && n.label.xy && n.label.xy.x + n.getLabelSides()[e ? 0 : 1];
|
1699 |
+
e && !h || f && h ? g + k < l && (g = l - k, n && g + j > d && (c = !1)) : g + j > o && (g = o - j, n && g + k < d && (c = !1));
|
1700 |
+
b.x = g
|
1701 |
+
}
|
1702 |
+
return c
|
1703 |
+
}, getPosition: function (a, b, c, d) {
|
1704 |
+
var e = this.axis, f = e.chart, g = d && f.oldChartHeight || f.chartHeight;
|
1705 |
+
return {
|
1706 |
+
x: a ? e.translate(b + c, null, null, d) + e.transB : e.left + e.offset + (e.opposite ? (d && f.oldChartWidth || f.chartWidth) - e.right -
|
1707 |
+
e.left : 0),
|
1708 |
+
y: a ? g - e.bottom + e.offset - (e.opposite ? e.height : 0) : g - e.translate(b + c, null, null, d) - e.transB
|
1709 |
+
}
|
1710 |
+
}, getLabelPosition: function (a, b, c, d, e, f, g, h) {
|
1711 |
+
var i = this.axis, j = i.transA, k = i.reversed, l = i.staggerLines, o = i.chart.renderer.fontMetrics(e.style.fontSize).b, n = e.rotation, a = a + e.x - (f && d ? f * j * (k ? -1 : 1) : 0), b = b + e.y - (f && !d ? f * j * (k ? 1 : -1) : 0);
|
1712 |
+
n && i.side === 2 && (b -= o - o * Z(n * Ca));
|
1713 |
+
!r(e.y) && !n && (b += o - c.getBBox().height / 2);
|
1714 |
+
if (l)c.line = g / (h || 1) % l, b += c.line * (i.labelOffset / l);
|
1715 |
+
return {x: a, y: b}
|
1716 |
+
}, getMarkPath: function (a, b, c, d, e, f) {
|
1717 |
+
return f.crispLine(["M",
|
1718 |
+
a, b, "L", a + (e ? 0 : -c), b + (e ? c : 0)], d)
|
1719 |
+
}, render: function (a, b, c) {
|
1720 |
+
var d = this.axis, e = d.options, f = d.chart.renderer, g = d.horiz, h = this.type, i = this.label, j = this.pos, k = e.labels, l = this.gridLine, o = h ? h + "Grid" : "grid", n = h ? h + "Tick" : "tick", s = e[o + "LineWidth"], p = e[o + "LineColor"], J = e[o + "LineDashStyle"], L = e[n + "Length"], o = e[n + "Width"] || 0, x = e[n + "Color"], r = e[n + "Position"], n = this.mark, v = k.step, q = !0, u = d.tickmarkOffset, w = this.getPosition(g, j, u, b), y = w.x, w = w.y, B = g && y === d.pos + d.len || !g && w === d.pos ? -1 : 1;
|
1721 |
+
this.isActive = !0;
|
1722 |
+
if (s) {
|
1723 |
+
j = d.getPlotLinePath(j +
|
1724 |
+
u, s * B, b, !0);
|
1725 |
+
if (l === t) {
|
1726 |
+
l = {stroke: p, "stroke-width": s};
|
1727 |
+
if (J)l.dashstyle = J;
|
1728 |
+
if (!h)l.zIndex = 1;
|
1729 |
+
if (b)l.opacity = 0;
|
1730 |
+
this.gridLine = l = s ? f.path(j).attr(l).add(d.gridGroup) : null
|
1731 |
+
}
|
1732 |
+
if (!b && l && j)l[this.isNew ? "attr" : "animate"]({d: j, opacity: c})
|
1733 |
+
}
|
1734 |
+
if (o && L)r === "inside" && (L = -L), d.opposite && (L = -L), h = this.getMarkPath(y, w, L, o * B, g, f), n ? n.animate({
|
1735 |
+
d: h,
|
1736 |
+
opacity: c
|
1737 |
+
}) : this.mark = f.path(h).attr({stroke: x, "stroke-width": o, opacity: c}).add(d.axisGroup);
|
1738 |
+
if (i && !isNaN(y))i.xy = w = this.getLabelPosition(y, w, i, g, k, u, a, v), this.isFirst && !this.isLast && !m(e.showFirstLabel, 1) || this.isLast && !this.isFirst && !m(e.showLastLabel, 1) ? q = !1 : !d.isRadial && !k.step && !k.rotation && !b && c !== 0 && (q = this.handleOverflow(a, w)), v && a % v && (q = !1), q && !isNaN(w.y) ? (w.opacity = c, i[this.isNew ? "attr" : "animate"](w), this.isNew = !1) : i.attr("y", -9999)
|
1739 |
+
}, destroy: function () {
|
1740 |
+
Oa(this, this.axis)
|
1741 |
+
}
|
1742 |
+
};
|
1743 |
+
R.PlotLineOrBand = function (a, b) {
|
1744 |
+
this.axis = a;
|
1745 |
+
if (b)this.options = b, this.id = b.id
|
1746 |
+
};
|
1747 |
+
R.PlotLineOrBand.prototype = {
|
1748 |
+
render: function () {
|
1749 |
+
var a = this, b = a.axis, c = b.horiz, d = (b.pointRange || 0) / 2, e = a.options, f = e.label,
|
1750 |
+
g = a.label, h = e.width, i = e.to, j = e.from, k = r(j) && r(i), l = e.value, o = e.dashStyle, n = a.svgElem, s = [], p, J = e.color, L = e.zIndex, x = e.events, q = {}, t = b.chart.renderer;
|
1751 |
+
b.isLog && (j = za(j), i = za(i), l = za(l));
|
1752 |
+
if (h) {
|
1753 |
+
if (s = b.getPlotLinePath(l, h), q = {stroke: J, "stroke-width": h}, o)q.dashstyle = o
|
1754 |
+
} else if (k) {
|
1755 |
+
j = v(j, b.min - d);
|
1756 |
+
i = C(i, b.max + d);
|
1757 |
+
s = b.getPlotBandPath(j, i, e);
|
1758 |
+
if (J)q.fill = J;
|
1759 |
+
if (e.borderWidth)q.stroke = e.borderColor, q["stroke-width"] = e.borderWidth
|
1760 |
+
} else return;
|
1761 |
+
if (r(L))q.zIndex = L;
|
1762 |
+
if (n)if (s)n.animate({d: s}, null, n.onGetPath); else {
|
1763 |
+
if (n.hide(),
|
1764 |
+
n.onGetPath = function () {
|
1765 |
+
n.show()
|
1766 |
+
}, g)a.label = g = g.destroy()
|
1767 |
+
} else if (s && s.length && (a.svgElem = n = t.path(s).attr(q).add(), x))for (p in d = function (b) {
|
1768 |
+
n.on(b, function (c) {
|
1769 |
+
x[b].apply(a, [c])
|
1770 |
+
})
|
1771 |
+
}, x)d(p);
|
1772 |
+
if (f && r(f.text) && s && s.length && b.width > 0 && b.height > 0) {
|
1773 |
+
f = w({
|
1774 |
+
align: c && k && "center",
|
1775 |
+
x: c ? !k && 4 : 10,
|
1776 |
+
verticalAlign: !c && k && "middle",
|
1777 |
+
y: c ? k ? 16 : 10 : k ? 6 : -4,
|
1778 |
+
rotation: c && !k && 90
|
1779 |
+
}, f);
|
1780 |
+
if (!g) {
|
1781 |
+
q = {align: f.textAlign || f.align, rotation: f.rotation};
|
1782 |
+
if (r(L))q.zIndex = L;
|
1783 |
+
a.label = g = t.text(f.text, 0, 0, f.useHTML).attr(q).css(f.style).add()
|
1784 |
+
}
|
1785 |
+
b = [s[1],
|
1786 |
+
s[4], m(s[6], s[1])];
|
1787 |
+
s = [s[2], s[5], m(s[7], s[2])];
|
1788 |
+
c = Na(b);
|
1789 |
+
k = Na(s);
|
1790 |
+
g.align(f, !1, {x: c, y: k, width: Ba(b) - c, height: Ba(s) - k});
|
1791 |
+
g.show()
|
1792 |
+
} else g && g.hide();
|
1793 |
+
return a
|
1794 |
+
}, destroy: function () {
|
1795 |
+
ja(this.axis.plotLinesAndBands, this);
|
1796 |
+
delete this.axis;
|
1797 |
+
Oa(this)
|
1798 |
+
}
|
1799 |
+
};
|
1800 |
+
la.prototype = {
|
1801 |
+
defaultOptions: {
|
1802 |
+
dateTimeLabelFormats: {
|
1803 |
+
millisecond: "%H:%M:%S.%L",
|
1804 |
+
second: "%H:%M:%S",
|
1805 |
+
minute: "%H:%M",
|
1806 |
+
hour: "%H:%M",
|
1807 |
+
day: "%e. %b",
|
1808 |
+
week: "%e. %b",
|
1809 |
+
month: "%b '%y",
|
1810 |
+
year: "%Y"
|
1811 |
+
},
|
1812 |
+
endOnTick: !1,
|
1813 |
+
gridLineColor: "#C0C0C0",
|
1814 |
+
labels: N,
|
1815 |
+
lineColor: "#C0D0E0",
|
1816 |
+
lineWidth: 1,
|
1817 |
+
minPadding: 0.01,
|
1818 |
+
maxPadding: 0.01,
|
1819 |
+
minorGridLineColor: "#E0E0E0",
|
1820 |
+
minorGridLineWidth: 1,
|
1821 |
+
minorTickColor: "#A0A0A0",
|
1822 |
+
minorTickLength: 2,
|
1823 |
+
minorTickPosition: "outside",
|
1824 |
+
startOfWeek: 1,
|
1825 |
+
startOnTick: !1,
|
1826 |
+
tickColor: "#C0D0E0",
|
1827 |
+
tickLength: 10,
|
1828 |
+
tickmarkPlacement: "between",
|
1829 |
+
tickPixelInterval: 100,
|
1830 |
+
tickPosition: "outside",
|
1831 |
+
tickWidth: 1,
|
1832 |
+
title: {align: "middle", style: {color: "#707070"}},
|
1833 |
+
type: "linear"
|
1834 |
+
},
|
1835 |
+
defaultYAxisOptions: {
|
1836 |
+
endOnTick: !0,
|
1837 |
+
gridLineWidth: 1,
|
1838 |
+
tickPixelInterval: 72,
|
1839 |
+
showLastLabel: !0,
|
1840 |
+
labels: {x: -8, y: 3},
|
1841 |
+
lineWidth: 0,
|
1842 |
+
maxPadding: 0.05,
|
1843 |
+
minPadding: 0.05,
|
1844 |
+
startOnTick: !0,
|
1845 |
+
tickWidth: 0,
|
1846 |
+
title: {rotation: 270, text: "Values"},
|
1847 |
+
stackLabels: {
|
1848 |
+
enabled: !1, formatter: function () {
|
1849 |
+
return Ga(this.total, -1)
|
1850 |
+
}, style: N.style
|
1851 |
+
}
|
1852 |
+
},
|
1853 |
+
defaultLeftAxisOptions: {labels: {x: -15, y: null}, title: {rotation: 270}},
|
1854 |
+
defaultRightAxisOptions: {labels: {x: 15, y: null}, title: {rotation: 90}},
|
1855 |
+
defaultBottomAxisOptions: {labels: {x: 0, y: 20}, title: {rotation: 0}},
|
1856 |
+
defaultTopAxisOptions: {labels: {x: 0, y: -15}, title: {rotation: 0}},
|
1857 |
+
init: function (a, b) {
|
1858 |
+
var c = b.isX;
|
1859 |
+
this.horiz = a.inverted ? !c : c;
|
1860 |
+
this.coll = (this.isXAxis = c) ? "xAxis" : "yAxis";
|
1861 |
+
this.opposite =
|
1862 |
+
b.opposite;
|
1863 |
+
this.side = b.side || (this.horiz ? this.opposite ? 0 : 2 : this.opposite ? 1 : 3);
|
1864 |
+
this.setOptions(b);
|
1865 |
+
var d = this.options, e = d.type;
|
1866 |
+
this.labelFormatter = d.labels.formatter || this.defaultLabelFormatter;
|
1867 |
+
this.userOptions = b;
|
1868 |
+
this.minPixelPadding = 0;
|
1869 |
+
this.chart = a;
|
1870 |
+
this.reversed = d.reversed;
|
1871 |
+
this.zoomEnabled = d.zoomEnabled !== !1;
|
1872 |
+
this.categories = d.categories || e === "category";
|
1873 |
+
this.names = [];
|
1874 |
+
this.isLog = e === "logarithmic";
|
1875 |
+
this.isDatetimeAxis = e === "datetime";
|
1876 |
+
this.isLinked = r(d.linkedTo);
|
1877 |
+
this.tickmarkOffset = this.categories && d.tickmarkPlacement ===
|
1878 |
+
"between" ? 0.5 : 0;
|
1879 |
+
this.ticks = {};
|
1880 |
+
this.labelEdge = [];
|
1881 |
+
this.minorTicks = {};
|
1882 |
+
this.plotLinesAndBands = [];
|
1883 |
+
this.alternateBands = {};
|
1884 |
+
this.len = 0;
|
1885 |
+
this.minRange = this.userMinRange = d.minRange || d.maxZoom;
|
1886 |
+
this.range = d.range;
|
1887 |
+
this.offset = d.offset || 0;
|
1888 |
+
this.stacks = {};
|
1889 |
+
this.oldStacks = {};
|
1890 |
+
this.min = this.max = null;
|
1891 |
+
this.crosshair = m(d.crosshair, qa(a.options.tooltip.crosshairs)[c ? 0 : 1], !1);
|
1892 |
+
var f, d = this.options.events;
|
1893 |
+
Da(this, a.axes) === -1 && (c && !this.isColorAxis ? a.axes.splice(a.xAxis.length, 0, this) : a.axes.push(this), a[this.coll].push(this));
|
1894 |
+
this.series = this.series || [];
|
1895 |
+
if (a.inverted && c && this.reversed === t)this.reversed = !0;
|
1896 |
+
this.removePlotLine = this.removePlotBand = this.removePlotBandOrLine;
|
1897 |
+
for (f in d)K(this, f, d[f]);
|
1898 |
+
if (this.isLog)this.val2lin = za, this.lin2val = ia
|
1899 |
+
},
|
1900 |
+
setOptions: function (a) {
|
1901 |
+
this.options = w(this.defaultOptions, this.isXAxis ? {} : this.defaultYAxisOptions, [this.defaultTopAxisOptions, this.defaultRightAxisOptions, this.defaultBottomAxisOptions, this.defaultLeftAxisOptions][this.side], w(E[this.coll], a))
|
1902 |
+
},
|
1903 |
+
defaultLabelFormatter: function () {
|
1904 |
+
var a =
|
1905 |
+
this.axis, b = this.value, c = a.categories, d = this.dateTimeLabelFormat, e = E.lang.numericSymbols, f = e && e.length, g, h = a.options.labels.format, a = a.isLog ? b : a.tickInterval;
|
1906 |
+
if (h)g = Ia(h, this); else if (c)g = b; else if (d)g = cb(d, b); else if (f && a >= 1E3)for (; f-- && g === t;)c = Math.pow(1E3, f + 1), a >= c && e[f] !== null && (g = Ga(b / c, -1) + e[f]);
|
1907 |
+
g === t && (g = M(b) >= 1E4 ? Ga(b, 0) : Ga(b, -1, t, ""));
|
1908 |
+
return g
|
1909 |
+
},
|
1910 |
+
getSeriesExtremes: function () {
|
1911 |
+
var a = this, b = a.chart;
|
1912 |
+
a.hasVisibleSeries = !1;
|
1913 |
+
a.dataMin = a.dataMax = null;
|
1914 |
+
a.buildStacks && a.buildStacks();
|
1915 |
+
p(a.series, function (c) {
|
1916 |
+
if (c.visible || !b.options.chart.ignoreHiddenSeries) {
|
1917 |
+
var d;
|
1918 |
+
d = c.options.threshold;
|
1919 |
+
var e;
|
1920 |
+
a.hasVisibleSeries = !0;
|
1921 |
+
a.isLog && d <= 0 && (d = null);
|
1922 |
+
if (a.isXAxis) {
|
1923 |
+
if (d = c.xData, d.length)a.dataMin = C(m(a.dataMin, d[0]), Na(d)), a.dataMax = v(m(a.dataMax, d[0]), Ba(d))
|
1924 |
+
} else {
|
1925 |
+
c.getExtremes();
|
1926 |
+
e = c.dataMax;
|
1927 |
+
c = c.dataMin;
|
1928 |
+
if (r(c) && r(e))a.dataMin = C(m(a.dataMin, c), c), a.dataMax = v(m(a.dataMax, e), e);
|
1929 |
+
if (r(d))if (a.dataMin >= d)a.dataMin = d, a.ignoreMinPadding = !0; else if (a.dataMax < d)a.dataMax = d, a.ignoreMaxPadding = !0
|
1930 |
+
}
|
1931 |
+
}
|
1932 |
+
})
|
1933 |
+
},
|
1934 |
+
translate: function (a, b, c, d, e, f) {
|
1935 |
+
var g =
|
1936 |
+
1, h = 0, i = d ? this.oldTransA : this.transA, d = d ? this.oldMin : this.min, j = this.minPixelPadding, e = (this.options.ordinal || this.isLog && e) && this.lin2val;
|
1937 |
+
if (!i)i = this.transA;
|
1938 |
+
if (c)g *= -1, h = this.len;
|
1939 |
+
this.reversed && (g *= -1, h -= g * (this.sector || this.len));
|
1940 |
+
b ? (a = a * g + h, a -= j, a = a / i + d, e && (a = this.lin2val(a))) : (e && (a = this.val2lin(a)), f === "between" && (f = 0.5), a = g * (a - d) * i + h + g * j + (ha(f) ? i * f * this.pointRange : 0));
|
1941 |
+
return a
|
1942 |
+
},
|
1943 |
+
toPixels: function (a, b) {
|
1944 |
+
return this.translate(a, !1, !this.horiz, null, !0) + (b ? 0 : this.pos)
|
1945 |
+
},
|
1946 |
+
toValue: function (a, b) {
|
1947 |
+
return this.translate(a -
|
1948 |
+
(b ? 0 : this.pos), !0, !this.horiz, null, !0)
|
1949 |
+
},
|
1950 |
+
getPlotLinePath: function (a, b, c, d, e) {
|
1951 |
+
var f = this.chart, g = this.left, h = this.top, i, j, k = c && f.oldChartHeight || f.chartHeight, l = c && f.oldChartWidth || f.chartWidth, o;
|
1952 |
+
i = this.transB;
|
1953 |
+
e = m(e, this.translate(a, null, null, c));
|
1954 |
+
a = c = u(e + i);
|
1955 |
+
i = j = u(k - e - i);
|
1956 |
+
if (isNaN(e))o = !0; else if (this.horiz) {
|
1957 |
+
if (i = h, j = k - this.bottom, a < g || a > g + this.width)o = !0
|
1958 |
+
} else if (a = g, c = l - this.right, i < h || i > h + this.height)o = !0;
|
1959 |
+
return o && !d ? null : f.renderer.crispLine(["M", a, i, "L", c, j], b || 1)
|
1960 |
+
},
|
1961 |
+
getLinearTickPositions: function (a,
|
1962 |
+
b, c) {
|
1963 |
+
var d, e = da(T(b / a) * a), f = da(Ka(c / a) * a), g = [];
|
1964 |
+
if (b === c && ha(b))return [b];
|
1965 |
+
for (b = e; b <= f;) {
|
1966 |
+
g.push(b);
|
1967 |
+
b = da(b + a);
|
1968 |
+
if (b === d)break;
|
1969 |
+
d = b
|
1970 |
+
}
|
1971 |
+
return g
|
1972 |
+
},
|
1973 |
+
getMinorTickPositions: function () {
|
1974 |
+
var a = this.options, b = this.tickPositions, c = this.minorTickInterval, d = [], e;
|
1975 |
+
if (this.isLog) {
|
1976 |
+
e = b.length;
|
1977 |
+
for (a = 1; a < e; a++)d = d.concat(this.getLogTickPositions(c, b[a - 1], b[a], !0))
|
1978 |
+
} else if (this.isDatetimeAxis && a.minorTickInterval === "auto")d = d.concat(this.getTimeTicks(this.normalizeTimeTickInterval(c), this.min, this.max, a.startOfWeek)), d[0] < this.min &&
|
1979 |
+
d.shift(); else for (b = this.min + (b[0] - this.min) % c; b <= this.max; b += c)d.push(b);
|
1980 |
+
return d
|
1981 |
+
},
|
1982 |
+
adjustForMinRange: function () {
|
1983 |
+
var a = this.options, b = this.min, c = this.max, d, e = this.dataMax - this.dataMin >= this.minRange, f, g, h, i, j;
|
1984 |
+
if (this.isXAxis && this.minRange === t && !this.isLog)r(a.min) || r(a.max) ? this.minRange = null : (p(this.series, function (a) {
|
1985 |
+
i = a.xData;
|
1986 |
+
for (g = j = a.xIncrement ? 1 : i.length - 1; g > 0; g--)if (h = i[g] - i[g - 1], f === t || h < f)f = h
|
1987 |
+
}), this.minRange = C(f * 5, this.dataMax - this.dataMin));
|
1988 |
+
if (c - b < this.minRange) {
|
1989 |
+
var k = this.minRange;
|
1990 |
+
d =
|
1991 |
+
(k - c + b) / 2;
|
1992 |
+
d = [b - d, m(a.min, b - d)];
|
1993 |
+
if (e)d[2] = this.dataMin;
|
1994 |
+
b = Ba(d);
|
1995 |
+
c = [b + k, m(a.max, b + k)];
|
1996 |
+
if (e)c[2] = this.dataMax;
|
1997 |
+
c = Na(c);
|
1998 |
+
c - b < k && (d[0] = c - k, d[1] = m(a.min, c - k), b = Ba(d))
|
1999 |
+
}
|
2000 |
+
this.min = b;
|
2001 |
+
this.max = c
|
2002 |
+
},
|
2003 |
+
setAxisTranslation: function (a) {
|
2004 |
+
var b = this, c = b.max - b.min, d = b.axisPointRange || 0, e, f = 0, g = 0, h = b.linkedParent, i = !!b.categories, j = b.transA;
|
2005 |
+
if (b.isXAxis || i || d)h ? (f = h.minPointOffset, g = h.pointRangePadding) : p(b.series, function (a) {
|
2006 |
+
var h = i ? 1 : b.isXAxis ? a.pointRange : b.axisPointRange || 0, j = a.options.pointPlacement, n = a.closestPointRange;
|
2007 |
+
h > c && (h = 0);
|
2008 |
+
d = v(d, h);
|
2009 |
+
f = v(f, Fa(j) ? 0 : h / 2);
|
2010 |
+
g = v(g, j === "on" ? 0 : h);
|
2011 |
+
!a.noSharedTooltip && r(n) && (e = r(e) ? C(e, n) : n)
|
2012 |
+
}), h = b.ordinalSlope && e ? b.ordinalSlope / e : 1, b.minPointOffset = f *= h, b.pointRangePadding = g *= h, b.pointRange = C(d, c), b.closestPointRange = e;
|
2013 |
+
if (a)b.oldTransA = j;
|
2014 |
+
b.translationSlope = b.transA = j = b.len / (c + g || 1);
|
2015 |
+
b.transB = b.horiz ? b.left : b.bottom;
|
2016 |
+
b.minPixelPadding = j * f
|
2017 |
+
},
|
2018 |
+
setTickPositions: function (a) {
|
2019 |
+
var b = this, c = b.chart, d = b.options, e = b.isLog, f = b.isDatetimeAxis, g = b.isXAxis, h = b.isLinked, i = b.options.tickPositioner, j = d.maxPadding,
|
2020 |
+
k = d.minPadding, l = d.tickInterval, o = d.minTickInterval, n = d.tickPixelInterval, s, $ = b.categories;
|
2021 |
+
h ? (b.linkedParent = c[b.coll][d.linkedTo], c = b.linkedParent.getExtremes(), b.min = m(c.min, c.dataMin), b.max = m(c.max, c.dataMax), d.type !== b.linkedParent.options.type && ra(11, 1)) : (b.min = m(b.userMin, d.min, b.dataMin), b.max = m(b.userMax, d.max, b.dataMax));
|
2022 |
+
if (e)!a && C(b.min, m(b.dataMin, b.min)) <= 0 && ra(10, 1), b.min = da(za(b.min)), b.max = da(za(b.max));
|
2023 |
+
if (b.range && r(b.max))b.userMin = b.min = v(b.min, b.max - b.range), b.userMax = b.max, b.range =
|
2024 |
+
null;
|
2025 |
+
b.beforePadding && b.beforePadding();
|
2026 |
+
b.adjustForMinRange();
|
2027 |
+
if (!$ && !b.axisPointRange && !b.usePercentage && !h && r(b.min) && r(b.max) && (c = b.max - b.min)) {
|
2028 |
+
if (!r(d.min) && !r(b.userMin) && k && (b.dataMin < 0 || !b.ignoreMinPadding))b.min -= c * k;
|
2029 |
+
if (!r(d.max) && !r(b.userMax) && j && (b.dataMax > 0 || !b.ignoreMaxPadding))b.max += c * j
|
2030 |
+
}
|
2031 |
+
if (ha(d.floor))b.min = v(b.min, d.floor);
|
2032 |
+
if (ha(d.ceiling))b.max = C(b.max, d.ceiling);
|
2033 |
+
b.min === b.max || b.min === void 0 || b.max === void 0 ? b.tickInterval = 1 : h && !l && n === b.linkedParent.options.tickPixelInterval ? b.tickInterval =
|
2034 |
+
b.linkedParent.tickInterval : (b.tickInterval = m(l, $ ? 1 : (b.max - b.min) * n / v(b.len, n)), !r(l) && b.len < n && !this.isRadial && !this.isLog && !$ && d.startOnTick && d.endOnTick && (s = !0, b.tickInterval /= 4));
|
2035 |
+
g && !a && p(b.series, function (a) {
|
2036 |
+
a.processData(b.min !== b.oldMin || b.max !== b.oldMax)
|
2037 |
+
});
|
2038 |
+
b.setAxisTranslation(!0);
|
2039 |
+
b.beforeSetTickPositions && b.beforeSetTickPositions();
|
2040 |
+
if (b.postProcessTickInterval)b.tickInterval = b.postProcessTickInterval(b.tickInterval);
|
2041 |
+
if (b.pointRange)b.tickInterval = v(b.pointRange, b.tickInterval);
|
2042 |
+
if (!l && b.tickInterval <
|
2043 |
+
o)b.tickInterval = o;
|
2044 |
+
if (!f && !e && !l)b.tickInterval = nb(b.tickInterval, null, mb(b.tickInterval), d);
|
2045 |
+
b.minorTickInterval = d.minorTickInterval === "auto" && b.tickInterval ? b.tickInterval / 5 : d.minorTickInterval;
|
2046 |
+
b.tickPositions = a = d.tickPositions ? [].concat(d.tickPositions) : i && i.apply(b, [b.min, b.max]);
|
2047 |
+
if (!a)!b.ordinalPositions && (b.max - b.min) / b.tickInterval > v(2 * b.len, 200) && ra(19, !0), a = f ? b.getTimeTicks(b.normalizeTimeTickInterval(b.tickInterval, d.units), b.min, b.max, d.startOfWeek, b.ordinalPositions, b.closestPointRange,
|
2048 |
+
!0) : e ? b.getLogTickPositions(b.tickInterval, b.min, b.max) : b.getLinearTickPositions(b.tickInterval, b.min, b.max), s && a.splice(1, a.length - 2), b.tickPositions = a;
|
2049 |
+
if (!h)e = a[0], f = a[a.length - 1], h = b.minPointOffset || 0, d.startOnTick ? b.min = e : b.min - h > e && a.shift(), d.endOnTick ? b.max = f : b.max + h < f && a.pop(), a.length === 1 && (d = M(b.max) > 1E13 ? 1 : 0.001, b.min -= d, b.max += d)
|
2050 |
+
},
|
2051 |
+
setMaxTicks: function () {
|
2052 |
+
var a = this.chart, b = a.maxTicks || {}, c = this.tickPositions, d = this._maxTicksKey = [this.coll, this.pos, this.len].join("-");
|
2053 |
+
if (!this.isLinked && !this.isDatetimeAxis && c && c.length > (b[d] || 0) && this.options.alignTicks !== !1)b[d] = c.length;
|
2054 |
+
a.maxTicks = b
|
2055 |
+
},
|
2056 |
+
adjustTickAmount: function () {
|
2057 |
+
var a = this._maxTicksKey, b = this.tickPositions, c = this.chart.maxTicks;
|
2058 |
+
if (c && c[a] && !this.isDatetimeAxis && !this.categories && !this.isLinked && this.options.alignTicks !== !1 && this.min !== t) {
|
2059 |
+
var d = this.tickAmount, e = b.length;
|
2060 |
+
this.tickAmount = a = c[a];
|
2061 |
+
if (e < a) {
|
2062 |
+
for (; b.length < a;)b.push(da(b[b.length - 1] + this.tickInterval));
|
2063 |
+
this.transA *= (e - 1) / (a - 1);
|
2064 |
+
this.max = b[b.length - 1]
|
2065 |
+
}
|
2066 |
+
if (r(d) && a !== d)this.isDirty = !0
|
2067 |
+
}
|
2068 |
+
},
|
2069 |
+
setScale: function () {
|
2070 |
+
var a = this.stacks, b, c, d, e;
|
2071 |
+
this.oldMin = this.min;
|
2072 |
+
this.oldMax = this.max;
|
2073 |
+
this.oldAxisLength = this.len;
|
2074 |
+
this.setAxisSize();
|
2075 |
+
e = this.len !== this.oldAxisLength;
|
2076 |
+
p(this.series, function (a) {
|
2077 |
+
if (a.isDirtyData || a.isDirty || a.xAxis.isDirty)d = !0
|
2078 |
+
});
|
2079 |
+
if (e || d || this.isLinked || this.forceRedraw || this.userMin !== this.oldUserMin || this.userMax !== this.oldUserMax) {
|
2080 |
+
if (!this.isXAxis)for (b in a)for (c in a[b])a[b][c].total = null, a[b][c].cum = 0;
|
2081 |
+
this.forceRedraw = !1;
|
2082 |
+
this.getSeriesExtremes();
|
2083 |
+
this.setTickPositions();
|
2084 |
+
this.oldUserMin =
|
2085 |
+
this.userMin;
|
2086 |
+
this.oldUserMax = this.userMax;
|
2087 |
+
if (!this.isDirty)this.isDirty = e || this.min !== this.oldMin || this.max !== this.oldMax
|
2088 |
+
} else if (!this.isXAxis) {
|
2089 |
+
if (this.oldStacks)a = this.stacks = this.oldStacks;
|
2090 |
+
for (b in a)for (c in a[b])a[b][c].cum = a[b][c].total
|
2091 |
+
}
|
2092 |
+
this.setMaxTicks()
|
2093 |
+
},
|
2094 |
+
setExtremes: function (a, b, c, d, e) {
|
2095 |
+
var f = this, g = f.chart, c = m(c, !0), e = q(e, {min: a, max: b});
|
2096 |
+
D(f, "setExtremes", e, function () {
|
2097 |
+
f.userMin = a;
|
2098 |
+
f.userMax = b;
|
2099 |
+
f.eventArgs = e;
|
2100 |
+
f.isDirtyExtremes = !0;
|
2101 |
+
c && g.redraw(d)
|
2102 |
+
})
|
2103 |
+
},
|
2104 |
+
zoom: function (a, b) {
|
2105 |
+
var c = this.dataMin, d = this.dataMax,
|
2106 |
+
e = this.options;
|
2107 |
+
this.allowZoomOutside || (r(c) && a <= C(c, m(e.min, c)) && (a = t), r(d) && b >= v(d, m(e.max, d)) && (b = t));
|
2108 |
+
this.displayBtn = a !== t || b !== t;
|
2109 |
+
this.setExtremes(a, b, !1, t, {trigger: "zoom"});
|
2110 |
+
return !0
|
2111 |
+
},
|
2112 |
+
setAxisSize: function () {
|
2113 |
+
var a = this.chart, b = this.options, c = b.offsetLeft || 0, d = this.horiz, e = m(b.width, a.plotWidth - c + (b.offsetRight || 0)), f = m(b.height, a.plotHeight), g = m(b.top, a.plotTop), b = m(b.left, a.plotLeft + c), c = /%$/;
|
2114 |
+
c.test(f) && (f = parseInt(f, 10) / 100 * a.plotHeight);
|
2115 |
+
c.test(g) && (g = parseInt(g, 10) / 100 * a.plotHeight + a.plotTop);
|
2116 |
+
this.left = b;
|
2117 |
+
this.top = g;
|
2118 |
+
this.width = e;
|
2119 |
+
this.height = f;
|
2120 |
+
this.bottom = a.chartHeight - f - g;
|
2121 |
+
this.right = a.chartWidth - e - b;
|
2122 |
+
this.len = v(d ? e : f, 0);
|
2123 |
+
this.pos = d ? b : g
|
2124 |
+
},
|
2125 |
+
getExtremes: function () {
|
2126 |
+
var a = this.isLog;
|
2127 |
+
return {
|
2128 |
+
min: a ? da(ia(this.min)) : this.min,
|
2129 |
+
max: a ? da(ia(this.max)) : this.max,
|
2130 |
+
dataMin: this.dataMin,
|
2131 |
+
dataMax: this.dataMax,
|
2132 |
+
userMin: this.userMin,
|
2133 |
+
userMax: this.userMax
|
2134 |
+
}
|
2135 |
+
},
|
2136 |
+
getThreshold: function (a) {
|
2137 |
+
var b = this.isLog, c = b ? ia(this.min) : this.min, b = b ? ia(this.max) : this.max;
|
2138 |
+
c > a || a === null ? a = c : b < a && (a = b);
|
2139 |
+
return this.translate(a, 0, 1, 0, 1)
|
2140 |
+
},
|
2141 |
+
autoLabelAlign: function (a) {
|
2142 |
+
a =
|
2143 |
+
(m(a, 0) - this.side * 90 + 720) % 360;
|
2144 |
+
return a > 15 && a < 165 ? "right" : a > 195 && a < 345 ? "left" : "center"
|
2145 |
+
},
|
2146 |
+
getOffset: function () {
|
2147 |
+
var a = this, b = a.chart, c = b.renderer, d = a.options, e = a.tickPositions, f = a.ticks, g = a.horiz, h = a.side, i = b.inverted ? [1, 0, 3, 2][h] : h, j, k = 0, l, o = 0, n = d.title, s = d.labels, $ = 0, J = b.axisOffset, L = b.clipOffset, x = [-1, 1, 1, -1][h], q, u = 1, w = m(s.maxStaggerLines, 5), y, z, A, B, na = h === 2 ? c.fontMetrics(s.style.fontSize).b : 0;
|
2148 |
+
a.hasData = j = a.hasVisibleSeries || r(a.min) && r(a.max) && !!e;
|
2149 |
+
a.showAxis = b = j || m(d.showEmpty, !0);
|
2150 |
+
a.staggerLines =
|
2151 |
+
a.horiz && s.staggerLines;
|
2152 |
+
if (!a.axisGroup)a.gridGroup = c.g("grid").attr({zIndex: d.gridZIndex || 1}).add(), a.axisGroup = c.g("axis").attr({zIndex: d.zIndex || 2}).add(), a.labelGroup = c.g("axis-labels").attr({zIndex: s.zIndex || 7}).addClass("highcharts-" + a.coll.toLowerCase() + "-labels").add();
|
2153 |
+
if (j || a.isLinked) {
|
2154 |
+
a.labelAlign = m(s.align || a.autoLabelAlign(s.rotation));
|
2155 |
+
p(e, function (b) {
|
2156 |
+
f[b] ? f[b].addLabel() : f[b] = new Sa(a, b)
|
2157 |
+
});
|
2158 |
+
if (a.horiz && !a.staggerLines && w && !s.rotation) {
|
2159 |
+
for (q = a.reversed ? [].concat(e).reverse() : e; u < w;) {
|
2160 |
+
j =
|
2161 |
+
[];
|
2162 |
+
y = !1;
|
2163 |
+
for (s = 0; s < q.length; s++)z = q[s], A = (A = f[z].label && f[z].label.getBBox()) ? A.width : 0, B = s % u, A && (z = a.translate(z), j[B] !== t && z < j[B] && (y = !0), j[B] = z + A);
|
2164 |
+
if (y)u++; else break
|
2165 |
+
}
|
2166 |
+
if (u > 1)a.staggerLines = u
|
2167 |
+
}
|
2168 |
+
p(e, function (b) {
|
2169 |
+
if (h === 0 || h === 2 || {1: "left", 3: "right"}[h] === a.labelAlign)$ = v(f[b].getLabelSize(), $)
|
2170 |
+
});
|
2171 |
+
if (a.staggerLines)$ *= a.staggerLines, a.labelOffset = $
|
2172 |
+
} else for (q in f)f[q].destroy(), delete f[q];
|
2173 |
+
if (n && n.text && n.enabled !== !1) {
|
2174 |
+
if (!a.axisTitle)a.axisTitle = c.text(n.text, 0, 0, n.useHTML).attr({
|
2175 |
+
zIndex: 7, rotation: n.rotation ||
|
2176 |
+
0, align: n.textAlign || {low: "left", middle: "center", high: "right"}[n.align]
|
2177 |
+
}).addClass("highcharts-" + this.coll.toLowerCase() + "-title").css(n.style).add(a.axisGroup), a.axisTitle.isNew = !0;
|
2178 |
+
if (b)k = a.axisTitle.getBBox()[g ? "height" : "width"], o = m(n.margin, g ? 5 : 10), l = n.offset;
|
2179 |
+
a.axisTitle[b ? "show" : "hide"]()
|
2180 |
+
}
|
2181 |
+
a.offset = x * m(d.offset, J[h]);
|
2182 |
+
a.axisTitleMargin = m(l, $ + o + ($ && x * d.labels[g ? "y" : "x"] - na));
|
2183 |
+
J[h] = v(J[h], a.axisTitleMargin + k + x * a.offset);
|
2184 |
+
L[i] = v(L[i], T(d.lineWidth / 2) * 2)
|
2185 |
+
},
|
2186 |
+
getLinePath: function (a) {
|
2187 |
+
var b = this.chart, c = this.opposite,
|
2188 |
+
d = this.offset, e = this.horiz, f = this.left + (c ? this.width : 0) + d, d = b.chartHeight - this.bottom - (c ? this.height : 0) + d;
|
2189 |
+
c && (a *= -1);
|
2190 |
+
return b.renderer.crispLine(["M", e ? this.left : f, e ? d : this.top, "L", e ? b.chartWidth - this.right : f, e ? d : b.chartHeight - this.bottom], a)
|
2191 |
+
},
|
2192 |
+
getTitlePosition: function () {
|
2193 |
+
var a = this.horiz, b = this.left, c = this.top, d = this.len, e = this.options.title, f = a ? b : c, g = this.opposite, h = this.offset, i = z(e.style.fontSize || 12), d = {
|
2194 |
+
low: f + (a ? 0 : d),
|
2195 |
+
middle: f + d / 2,
|
2196 |
+
high: f + (a ? d : 0)
|
2197 |
+
}[e.align], b = (a ? c + this.height : b) + (a ? 1 : -1) * (g ? -1 : 1) *
|
2198 |
+
this.axisTitleMargin + (this.side === 2 ? i : 0);
|
2199 |
+
return {
|
2200 |
+
x: a ? d : b + (g ? this.width : 0) + h + (e.x || 0),
|
2201 |
+
y: a ? b - (g ? this.height : 0) + h : d + (e.y || 0)
|
2202 |
+
}
|
2203 |
+
},
|
2204 |
+
render: function () {
|
2205 |
+
var a = this, b = a.horiz, c = a.reversed, d = a.chart, e = d.renderer, f = a.options, g = a.isLog, h = a.isLinked, i = a.tickPositions, j, k = a.axisTitle, l = a.ticks, o = a.minorTicks, n = a.alternateBands, s = f.stackLabels, m = f.alternateGridColor, J = a.tickmarkOffset, L = f.lineWidth, x = d.hasRendered && r(a.oldMin) && !isNaN(a.oldMin), q = a.hasData, v = a.showAxis, u, w = f.labels.overflow, y = a.justifyLabels = b && w !== !1, z;
|
2206 |
+
a.labelEdge.length = 0;
|
2207 |
+
a.justifyToPlot = w === "justify";
|
2208 |
+
p([l, o, n], function (a) {
|
2209 |
+
for (var b in a)a[b].isActive = !1
|
2210 |
+
});
|
2211 |
+
if (q || h)if (a.minorTickInterval && !a.categories && p(a.getMinorTickPositions(), function (b) {
|
2212 |
+
o[b] || (o[b] = new Sa(a, b, "minor"));
|
2213 |
+
x && o[b].isNew && o[b].render(null, !0);
|
2214 |
+
o[b].render(null, !1, 1)
|
2215 |
+
}), i.length && (j = i.slice(), (b && c || !b && !c) && j.reverse(), y && (j = j.slice(1).concat([j[0]])), p(j, function (b, c) {
|
2216 |
+
y && (c = c === j.length - 1 ? 0 : c + 1);
|
2217 |
+
if (!h || b >= a.min && b <= a.max)l[b] || (l[b] = new Sa(a, b)), x && l[b].isNew && l[b].render(c,
|
2218 |
+
!0, 0.1), l[b].render(c, !1, 1)
|
2219 |
+
}), J && a.min === 0 && (l[-1] || (l[-1] = new Sa(a, -1, null, !0)), l[-1].render(-1))), m && p(i, function (b, c) {
|
2220 |
+
if (c % 2 === 0 && b < a.max)n[b] || (n[b] = new R.PlotLineOrBand(a)), u = b + J, z = i[c + 1] !== t ? i[c + 1] + J : a.max, n[b].options = {
|
2221 |
+
from: g ? ia(u) : u,
|
2222 |
+
to: g ? ia(z) : z,
|
2223 |
+
color: m
|
2224 |
+
}, n[b].render(), n[b].isActive = !0
|
2225 |
+
}), !a._addedPlotLB)p((f.plotLines || []).concat(f.plotBands || []), function (b) {
|
2226 |
+
a.addPlotBandOrLine(b)
|
2227 |
+
}), a._addedPlotLB = !0;
|
2228 |
+
p([l, o, n], function (a) {
|
2229 |
+
var b, c, e = [], f = va ? va.duration || 500 : 0, g = function () {
|
2230 |
+
for (c = e.length; c--;)a[e[c]] && !a[e[c]].isActive && (a[e[c]].destroy(), delete a[e[c]])
|
2231 |
+
};
|
2232 |
+
for (b in a)if (!a[b].isActive)a[b].render(b, !1, 0), a[b].isActive = !1, e.push(b);
|
2233 |
+
a === n || !d.hasRendered || !f ? g() : f && setTimeout(g, f)
|
2234 |
+
});
|
2235 |
+
if (L)b = a.getLinePath(L), a.axisLine ? a.axisLine.animate({d: b}) : a.axisLine = e.path(b).attr({
|
2236 |
+
stroke: f.lineColor,
|
2237 |
+
"stroke-width": L,
|
2238 |
+
zIndex: 7
|
2239 |
+
}).add(a.axisGroup), a.axisLine[v ? "show" : "hide"]();
|
2240 |
+
if (k && v)k[k.isNew ? "attr" : "animate"](a.getTitlePosition()), k.isNew = !1;
|
2241 |
+
s && s.enabled && a.renderStackTotals();
|
2242 |
+
a.isDirty = !1
|
2243 |
+
},
|
2244 |
+
redraw: function () {
|
2245 |
+
var a =
|
2246 |
+
this.chart.pointer;
|
2247 |
+
a && a.reset(!0);
|
2248 |
+
this.render();
|
2249 |
+
p(this.plotLinesAndBands, function (a) {
|
2250 |
+
a.render()
|
2251 |
+
});
|
2252 |
+
p(this.series, function (a) {
|
2253 |
+
a.isDirty = !0
|
2254 |
+
})
|
2255 |
+
},
|
2256 |
+
destroy: function (a) {
|
2257 |
+
var b = this, c = b.stacks, d, e = b.plotLinesAndBands;
|
2258 |
+
a || W(b);
|
2259 |
+
for (d in c)Oa(c[d]), c[d] = null;
|
2260 |
+
p([b.ticks, b.minorTicks, b.alternateBands], function (a) {
|
2261 |
+
Oa(a)
|
2262 |
+
});
|
2263 |
+
for (a = e.length; a--;)e[a].destroy();
|
2264 |
+
p("stackTotalGroup,axisLine,axisTitle,axisGroup,cross,gridGroup,labelGroup".split(","), function (a) {
|
2265 |
+
b[a] && (b[a] = b[a].destroy())
|
2266 |
+
});
|
2267 |
+
this.cross && this.cross.destroy()
|
2268 |
+
},
|
2269 |
+
drawCrosshair: function (a, b) {
|
2270 |
+
if (this.crosshair)if ((r(b) || !m(this.crosshair.snap, !0)) === !1)this.hideCrosshair(); else {
|
2271 |
+
var c, d = this.crosshair, e = d.animation;
|
2272 |
+
m(d.snap, !0) ? r(b) && (c = this.chart.inverted != this.horiz ? b.plotX : this.len - b.plotY) : c = this.horiz ? a.chartX - this.pos : this.len - a.chartY + this.pos;
|
2273 |
+
c = this.isRadial ? this.getPlotLinePath(this.isXAxis ? b.x : m(b.stackY, b.y)) : this.getPlotLinePath(null, null, null, null, c);
|
2274 |
+
if (c === null)this.hideCrosshair(); else if (this.cross)this.cross.attr({visibility: "visible"})[e ? "animate" :
|
2275 |
+
"attr"]({d: c}, e); else {
|
2276 |
+
e = {"stroke-width": d.width || 1, stroke: d.color || "#C0C0C0", zIndex: d.zIndex || 2};
|
2277 |
+
if (d.dashStyle)e.dashstyle = d.dashStyle;
|
2278 |
+
this.cross = this.chart.renderer.path(c).attr(e).add()
|
2279 |
+
}
|
2280 |
+
}
|
2281 |
+
},
|
2282 |
+
hideCrosshair: function () {
|
2283 |
+
this.cross && this.cross.hide()
|
2284 |
+
}
|
2285 |
+
};
|
2286 |
+
q(la.prototype, {
|
2287 |
+
getPlotBandPath: function (a, b) {
|
2288 |
+
var c = this.getPlotLinePath(b), d = this.getPlotLinePath(a);
|
2289 |
+
d && c ? d.push(c[4], c[5], c[1], c[2]) : d = null;
|
2290 |
+
return d
|
2291 |
+
}, addPlotBand: function (a) {
|
2292 |
+
this.addPlotBandOrLine(a, "plotBands")
|
2293 |
+
}, addPlotLine: function (a) {
|
2294 |
+
this.addPlotBandOrLine(a,
|
2295 |
+
"plotLines")
|
2296 |
+
}, addPlotBandOrLine: function (a, b) {
|
2297 |
+
var c = (new R.PlotLineOrBand(this, a)).render(), d = this.userOptions;
|
2298 |
+
c && (b && (d[b] = d[b] || [], d[b].push(a)), this.plotLinesAndBands.push(c));
|
2299 |
+
return c
|
2300 |
+
}, removePlotBandOrLine: function (a) {
|
2301 |
+
for (var b = this.plotLinesAndBands, c = this.options, d = this.userOptions, e = b.length; e--;)b[e].id === a && b[e].destroy();
|
2302 |
+
p([c.plotLines || [], d.plotLines || [], c.plotBands || [], d.plotBands || []], function (b) {
|
2303 |
+
for (e = b.length; e--;)b[e].id === a && ja(b, b[e])
|
2304 |
+
})
|
2305 |
+
}
|
2306 |
+
});
|
2307 |
+
la.prototype.getTimeTicks = function (a, b,
|
2308 |
+
c, d) {
|
2309 |
+
var e = [], f = {}, g = E.global.useUTC, h, i = new Date(b - Ra), j = a.unitRange, k = a.count;
|
2310 |
+
if (r(b)) {
|
2311 |
+
j >= A.second && (i.setMilliseconds(0), i.setSeconds(j >= A.minute ? 0 : k * T(i.getSeconds() / k)));
|
2312 |
+
if (j >= A.minute)i[Db](j >= A.hour ? 0 : k * T(i[pb]() / k));
|
2313 |
+
if (j >= A.hour)i[Eb](j >= A.day ? 0 : k * T(i[qb]() / k));
|
2314 |
+
if (j >= A.day)i[sb](j >= A.month ? 1 : k * T(i[Xa]() / k));
|
2315 |
+
j >= A.month && (i[Fb](j >= A.year ? 0 : k * T(i[fb]() / k)), h = i[gb]());
|
2316 |
+
j >= A.year && (h -= h % k, i[Gb](h));
|
2317 |
+
if (j === A.week)i[sb](i[Xa]() - i[rb]() + m(d, 1));
|
2318 |
+
b = 1;
|
2319 |
+
Ra && (i = new Date(i.getTime() + Ra));
|
2320 |
+
h = i[gb]();
|
2321 |
+
for (var d =
|
2322 |
+
i.getTime(), l = i[fb](), o = i[Xa](), n = g ? Ra : (864E5 + i.getTimezoneOffset() * 6E4) % 864E5; d < c;)e.push(d), j === A.year ? d = eb(h + b * k, 0) : j === A.month ? d = eb(h, l + b * k) : !g && (j === A.day || j === A.week) ? d = eb(h, l, o + b * k * (j === A.day ? 1 : 7)) : d += j * k, b++;
|
2323 |
+
e.push(d);
|
2324 |
+
p(vb(e, function (a) {
|
2325 |
+
return j <= A.hour && a % A.day === n
|
2326 |
+
}), function (a) {
|
2327 |
+
f[a] = "day"
|
2328 |
+
})
|
2329 |
+
}
|
2330 |
+
e.info = q(a, {higherRanks: f, totalRange: j * k});
|
2331 |
+
return e
|
2332 |
+
};
|
2333 |
+
la.prototype.normalizeTimeTickInterval = function (a, b) {
|
2334 |
+
var c = b || [["millisecond", [1, 2, 5, 10, 20, 25, 50, 100, 200, 500]], ["second", [1, 2, 5, 10, 15, 30]], ["minute",
|
2335 |
+
[1, 2, 5, 10, 15, 30]], ["hour", [1, 2, 3, 4, 6, 8, 12]], ["day", [1, 2]], ["week", [1, 2]], ["month", [1, 2, 3, 4, 6]], ["year", null]], d = c[c.length - 1], e = A[d[0]], f = d[1], g;
|
2336 |
+
for (g = 0; g < c.length; g++)if (d = c[g], e = A[d[0]], f = d[1], c[g + 1] && a <= (e * f[f.length - 1] + A[c[g + 1][0]]) / 2)break;
|
2337 |
+
e === A.year && a < 5 * e && (f = [1, 2, 5]);
|
2338 |
+
c = nb(a / e, f, d[0] === "year" ? v(mb(a / e), 1) : 1);
|
2339 |
+
return {unitRange: e, count: c, unitName: d[0]}
|
2340 |
+
};
|
2341 |
+
la.prototype.getLogTickPositions = function (a, b, c, d) {
|
2342 |
+
var e = this.options, f = this.len, g = [];
|
2343 |
+
if (!d)this._minorAutoInterval = null;
|
2344 |
+
if (a >= 0.5)a = u(a), g = this.getLinearTickPositions(a,
|
2345 |
+
b, c); else if (a >= 0.08)for (var f = T(b), h, i, j, k, l, e = a > 0.3 ? [1, 2, 4] : a > 0.15 ? [1, 2, 4, 6, 8] : [1, 2, 3, 4, 5, 6, 7, 8, 9]; f < c + 1 && !l; f++) {
|
2346 |
+
i = e.length;
|
2347 |
+
for (h = 0; h < i && !l; h++)j = za(ia(f) * e[h]), j > b && (!d || k <= c) && g.push(k), k > c && (l = !0), k = j
|
2348 |
+
} else if (b = ia(b), c = ia(c), a = e[d ? "minorTickInterval" : "tickInterval"], a = m(a === "auto" ? null : a, this._minorAutoInterval, (c - b) * (e.tickPixelInterval / (d ? 5 : 1)) / ((d ? f / this.tickPositions.length : f) || 1)), a = nb(a, null, mb(a)), g = Ua(this.getLinearTickPositions(a, b, c), za), !d)this._minorAutoInterval = a / 5;
|
2349 |
+
if (!d)this.tickInterval =
|
2350 |
+
a;
|
2351 |
+
return g
|
2352 |
+
};
|
2353 |
+
var Mb = R.Tooltip = function () {
|
2354 |
+
this.init.apply(this, arguments)
|
2355 |
+
};
|
2356 |
+
Mb.prototype = {
|
2357 |
+
init: function (a, b) {
|
2358 |
+
var c = b.borderWidth, d = b.style, e = z(d.padding);
|
2359 |
+
this.chart = a;
|
2360 |
+
this.options = b;
|
2361 |
+
this.crosshairs = [];
|
2362 |
+
this.now = {x: 0, y: 0};
|
2363 |
+
this.isHidden = !0;
|
2364 |
+
this.label = a.renderer.label("", 0, 0, b.shape || "callout", null, null, b.useHTML, null, "tooltip").attr({
|
2365 |
+
padding: e,
|
2366 |
+
fill: b.backgroundColor,
|
2367 |
+
"stroke-width": c,
|
2368 |
+
r: b.borderRadius,
|
2369 |
+
zIndex: 8
|
2370 |
+
}).css(d).css({padding: 0}).add().attr({y: -9999});
|
2371 |
+
fa || this.label.shadow(b.shadow);
|
2372 |
+
this.shared = b.shared
|
2373 |
+
},
|
2374 |
+
destroy: function () {
|
2375 |
+
if (this.label)this.label = this.label.destroy();
|
2376 |
+
clearTimeout(this.hideTimer);
|
2377 |
+
clearTimeout(this.tooltipTimeout)
|
2378 |
+
}, move: function (a, b, c, d) {
|
2379 |
+
var e = this, f = e.now, g = e.options.animation !== !1 && !e.isHidden, h = e.followPointer || e.len > 1;
|
2380 |
+
q(f, {
|
2381 |
+
x: g ? (2 * f.x + a) / 3 : a,
|
2382 |
+
y: g ? (f.y + b) / 2 : b,
|
2383 |
+
anchorX: h ? t : g ? (2 * f.anchorX + c) / 3 : c,
|
2384 |
+
anchorY: h ? t : g ? (f.anchorY + d) / 2 : d
|
2385 |
+
});
|
2386 |
+
e.label.attr(f);
|
2387 |
+
if (g && (M(a - f.x) > 1 || M(b - f.y) > 1))clearTimeout(this.tooltipTimeout), this.tooltipTimeout = setTimeout(function () {
|
2388 |
+
e && e.move(a, b, c, d)
|
2389 |
+
}, 32)
|
2390 |
+
}, hide: function () {
|
2391 |
+
var a =
|
2392 |
+
this, b;
|
2393 |
+
clearTimeout(this.hideTimer);
|
2394 |
+
if (!this.isHidden)b = this.chart.hoverPoints, this.hideTimer = setTimeout(function () {
|
2395 |
+
a.label.fadeOut();
|
2396 |
+
a.isHidden = !0
|
2397 |
+
}, m(this.options.hideDelay, 500)), b && p(b, function (a) {
|
2398 |
+
a.setState()
|
2399 |
+
}), this.chart.hoverPoints = null
|
2400 |
+
}, getAnchor: function (a, b) {
|
2401 |
+
var c, d = this.chart, e = d.inverted, f = d.plotTop, g = 0, h = 0, i, a = qa(a);
|
2402 |
+
c = a[0].tooltipPos;
|
2403 |
+
this.followPointer && b && (b.chartX === t && (b = d.pointer.normalize(b)), c = [b.chartX - d.plotLeft, b.chartY - f]);
|
2404 |
+
c || (p(a, function (a) {
|
2405 |
+
i = a.series.yAxis;
|
2406 |
+
g += a.plotX;
|
2407 |
+
h += (a.plotLow ?
|
2408 |
+
(a.plotLow + a.plotHigh) / 2 : a.plotY) + (!e && i ? i.top - f : 0)
|
2409 |
+
}), g /= a.length, h /= a.length, c = [e ? d.plotWidth - h : g, this.shared && !e && a.length > 1 && b ? b.chartY - f : e ? d.plotHeight - g : h]);
|
2410 |
+
return Ua(c, u)
|
2411 |
+
}, getPosition: function (a, b, c) {
|
2412 |
+
var d = this.chart, e = this.distance, f = {}, g, h = ["y", d.chartHeight, b, c.plotY + d.plotTop], i = ["x", d.chartWidth, a, c.plotX + d.plotLeft], j = c.ttBelow || d.inverted && !c.negative || !d.inverted && c.negative, k = function (a, b, c, d) {
|
2413 |
+
var g = c < d - e, b = d + e + c < b, c = d - e - c;
|
2414 |
+
d += e;
|
2415 |
+
if (j && b)f[a] = d; else if (!j && g)f[a] = c; else if (g)f[a] = c; else if (b)f[a] =
|
2416 |
+
d; else return !1
|
2417 |
+
}, l = function (a, b, c, d) {
|
2418 |
+
if (d < e || d > b - e)return !1; else f[a] = d < c / 2 ? 1 : d > b - c / 2 ? b - c - 2 : d - c / 2
|
2419 |
+
}, o = function (a) {
|
2420 |
+
var b = h;
|
2421 |
+
h = i;
|
2422 |
+
i = b;
|
2423 |
+
g = a
|
2424 |
+
}, n = function () {
|
2425 |
+
k.apply(0, h) !== !1 ? l.apply(0, i) === !1 && !g && (o(!0), n()) : g ? f.x = f.y = 0 : (o(!0), n())
|
2426 |
+
};
|
2427 |
+
(d.inverted || this.len > 1) && o();
|
2428 |
+
n();
|
2429 |
+
return f
|
2430 |
+
}, defaultFormatter: function (a) {
|
2431 |
+
var b = this.points || qa(this), c = b[0].series, d;
|
2432 |
+
d = [a.tooltipHeaderFormatter(b[0])];
|
2433 |
+
p(b, function (a) {
|
2434 |
+
c = a.series;
|
2435 |
+
d.push(c.tooltipFormatter && c.tooltipFormatter(a) || a.point.tooltipFormatter(c.tooltipOptions.pointFormat))
|
2436 |
+
});
|
2437 |
+
d.push(a.options.footerFormat || "");
|
2438 |
+
return d.join("")
|
2439 |
+
}, refresh: function (a, b) {
|
2440 |
+
var c = this.chart, d = this.label, e = this.options, f, g, h = {}, i, j = [];
|
2441 |
+
i = e.formatter || this.defaultFormatter;
|
2442 |
+
var h = c.hoverPoints, k, l = this.shared;
|
2443 |
+
clearTimeout(this.hideTimer);
|
2444 |
+
this.followPointer = qa(a)[0].series.tooltipOptions.followPointer;
|
2445 |
+
g = this.getAnchor(a, b);
|
2446 |
+
f = g[0];
|
2447 |
+
g = g[1];
|
2448 |
+
l && (!a.series || !a.series.noSharedTooltip) ? (c.hoverPoints = a, h && p(h, function (a) {
|
2449 |
+
a.setState()
|
2450 |
+
}), p(a, function (a) {
|
2451 |
+
a.setState("hover");
|
2452 |
+
j.push(a.getLabelConfig())
|
2453 |
+
}), h = {
|
2454 |
+
x: a[0].category,
|
2455 |
+
y: a[0].y
|
2456 |
+
}, h.points = j, this.len = j.length, a = a[0]) : h = a.getLabelConfig();
|
2457 |
+
i = i.call(h, this);
|
2458 |
+
h = a.series;
|
2459 |
+
this.distance = m(h.tooltipOptions.distance, 16);
|
2460 |
+
i === !1 ? this.hide() : (this.isHidden && (bb(d), d.attr("opacity", 1).show()), d.attr({text: i}), k = e.borderColor || a.color || h.color || "#606060", d.attr({stroke: k}), this.updatePosition({
|
2461 |
+
plotX: f,
|
2462 |
+
plotY: g,
|
2463 |
+
negative: a.negative,
|
2464 |
+
ttBelow: a.ttBelow
|
2465 |
+
}), this.isHidden = !1);
|
2466 |
+
D(c, "tooltipRefresh", {text: i, x: f + c.plotLeft, y: g + c.plotTop, borderColor: k})
|
2467 |
+
}, updatePosition: function (a) {
|
2468 |
+
var b = this.chart,
|
2469 |
+
c = this.label, c = (this.options.positioner || this.getPosition).call(this, c.width, c.height, a);
|
2470 |
+
this.move(u(c.x), u(c.y), a.plotX + b.plotLeft, a.plotY + b.plotTop)
|
2471 |
+
}, tooltipHeaderFormatter: function (a) {
|
2472 |
+
var b = a.series, c = b.tooltipOptions, d = c.dateTimeLabelFormats, e = c.xDateFormat, f = b.xAxis, g = f && f.options.type === "datetime" && ha(a.key), c = c.headerFormat, f = f && f.closestPointRange, h;
|
2473 |
+
if (g && !e) {
|
2474 |
+
if (f)for (h in A) {
|
2475 |
+
if (A[h] >= f || A[h] <= A.day && a.key % A[h] > 0) {
|
2476 |
+
e = d[h];
|
2477 |
+
break
|
2478 |
+
}
|
2479 |
+
} else e = d.day;
|
2480 |
+
e = e || d.year
|
2481 |
+
}
|
2482 |
+
g && e && (c = c.replace("{point.key}", "{point.key:" +
|
2483 |
+
e + "}"));
|
2484 |
+
return Ia(c, {point: a, series: b})
|
2485 |
+
}
|
2486 |
+
};
|
2487 |
+
var oa;
|
2488 |
+
$a = y.documentElement.ontouchstart !== t;
|
2489 |
+
var Wa = R.Pointer = function (a, b) {
|
2490 |
+
this.init(a, b)
|
2491 |
+
};
|
2492 |
+
Wa.prototype = {
|
2493 |
+
init: function (a, b) {
|
2494 |
+
var c = b.chart, d = c.events, e = fa ? "" : c.zoomType, c = a.inverted, f;
|
2495 |
+
this.options = b;
|
2496 |
+
this.chart = a;
|
2497 |
+
this.zoomX = f = /x/.test(e);
|
2498 |
+
this.zoomY = e = /y/.test(e);
|
2499 |
+
this.zoomHor = f && !c || e && c;
|
2500 |
+
this.zoomVert = e && !c || f && c;
|
2501 |
+
this.hasZoom = f || e;
|
2502 |
+
this.runChartClick = d && !!d.click;
|
2503 |
+
this.pinchDown = [];
|
2504 |
+
this.lastValidTouch = {};
|
2505 |
+
if (R.Tooltip && b.tooltip.enabled)a.tooltip = new Mb(a, b.tooltip),
|
2506 |
+
this.followTouchMove = b.tooltip.followTouchMove;
|
2507 |
+
this.setDOMEvents()
|
2508 |
+
}, normalize: function (a, b) {
|
2509 |
+
var c, d, a = a || window.event, a = Sb(a);
|
2510 |
+
if (!a.target)a.target = a.srcElement;
|
2511 |
+
d = a.touches ? a.touches.length ? a.touches.item(0) : a.changedTouches[0] : a;
|
2512 |
+
if (!b)this.chartPosition = b = Rb(this.chart.container);
|
2513 |
+
d.pageX === t ? (c = v(a.x, a.clientX - b.left), d = a.y) : (c = d.pageX - b.left, d = d.pageY - b.top);
|
2514 |
+
return q(a, {chartX: u(c), chartY: u(d)})
|
2515 |
+
}, getCoordinates: function (a) {
|
2516 |
+
var b = {xAxis: [], yAxis: []};
|
2517 |
+
p(this.chart.axes, function (c) {
|
2518 |
+
b[c.isXAxis ? "xAxis" :
|
2519 |
+
"yAxis"].push({axis: c, value: c.toValue(a[c.horiz ? "chartX" : "chartY"])})
|
2520 |
+
});
|
2521 |
+
return b
|
2522 |
+
}, getIndex: function (a) {
|
2523 |
+
var b = this.chart;
|
2524 |
+
return b.inverted ? b.plotHeight + b.plotTop - a.chartY : a.chartX - b.plotLeft
|
2525 |
+
}, runPointActions: function (a) {
|
2526 |
+
var b = this.chart, c = b.series, d = b.tooltip, e, f, g = b.hoverPoint, h = b.hoverSeries, i, j, k = b.chartWidth, l = this.getIndex(a);
|
2527 |
+
if (d && this.options.tooltip.shared && (!h || !h.noSharedTooltip)) {
|
2528 |
+
f = [];
|
2529 |
+
i = c.length;
|
2530 |
+
for (j = 0; j < i; j++)if (c[j].visible && c[j].options.enableMouseTracking !== !1 && !c[j].noSharedTooltip &&
|
2531 |
+
c[j].singularTooltips !== !0 && c[j].tooltipPoints.length && (e = c[j].tooltipPoints[l]) && e.series)e._dist = M(l - e.clientX), k = C(k, e._dist), f.push(e);
|
2532 |
+
for (i = f.length; i--;)f[i]._dist > k && f.splice(i, 1);
|
2533 |
+
if (f.length && f[0].clientX !== this.hoverX)d.refresh(f, a), this.hoverX = f[0].clientX
|
2534 |
+
}
|
2535 |
+
c = h && h.tooltipOptions.followPointer;
|
2536 |
+
if (h && h.tracker && !c) {
|
2537 |
+
if ((e = h.tooltipPoints[l]) && e !== g)e.onMouseOver(a)
|
2538 |
+
} else d && c && !d.isHidden && (h = d.getAnchor([{}], a), d.updatePosition({plotX: h[0], plotY: h[1]}));
|
2539 |
+
if (d && !this._onDocumentMouseMove)this._onDocumentMouseMove =
|
2540 |
+
function (a) {
|
2541 |
+
if (V[oa])V[oa].pointer.onDocumentMouseMove(a)
|
2542 |
+
}, K(y, "mousemove", this._onDocumentMouseMove);
|
2543 |
+
p(b.axes, function (b) {
|
2544 |
+
b.drawCrosshair(a, m(e, g))
|
2545 |
+
})
|
2546 |
+
}, reset: function (a) {
|
2547 |
+
var b = this.chart, c = b.hoverSeries, d = b.hoverPoint, e = b.tooltip, f = e && e.shared ? b.hoverPoints : d;
|
2548 |
+
(a = a && e && f) && qa(f)[0].plotX === t && (a = !1);
|
2549 |
+
if (a)e.refresh(f), d && d.setState(d.state, !0); else {
|
2550 |
+
if (d)d.onMouseOut();
|
2551 |
+
if (c)c.onMouseOut();
|
2552 |
+
e && e.hide();
|
2553 |
+
if (this._onDocumentMouseMove)W(y, "mousemove", this._onDocumentMouseMove), this._onDocumentMouseMove = null;
|
2554 |
+
p(b.axes, function (a) {
|
2555 |
+
a.hideCrosshair()
|
2556 |
+
});
|
2557 |
+
this.hoverX = null
|
2558 |
+
}
|
2559 |
+
}, scaleGroups: function (a, b) {
|
2560 |
+
var c = this.chart, d;
|
2561 |
+
p(c.series, function (e) {
|
2562 |
+
d = a || e.getPlotBox();
|
2563 |
+
e.xAxis && e.xAxis.zoomEnabled && (e.group.attr(d), e.markerGroup && (e.markerGroup.attr(d), e.markerGroup.clip(b ? c.clipRect : null)), e.dataLabelsGroup && e.dataLabelsGroup.attr(d))
|
2564 |
+
});
|
2565 |
+
c.clipRect.attr(b || c.clipBox)
|
2566 |
+
}, dragStart: function (a) {
|
2567 |
+
var b = this.chart;
|
2568 |
+
b.mouseIsDown = a.type;
|
2569 |
+
b.cancelClick = !1;
|
2570 |
+
b.mouseDownX = this.mouseDownX = a.chartX;
|
2571 |
+
b.mouseDownY = this.mouseDownY = a.chartY
|
2572 |
+
},
|
2573 |
+
drag: function (a) {
|
2574 |
+
var b = this.chart, c = b.options.chart, d = a.chartX, e = a.chartY, f = this.zoomHor, g = this.zoomVert, h = b.plotLeft, i = b.plotTop, j = b.plotWidth, k = b.plotHeight, l, o = this.mouseDownX, n = this.mouseDownY;
|
2575 |
+
d < h ? d = h : d > h + j && (d = h + j);
|
2576 |
+
e < i ? e = i : e > i + k && (e = i + k);
|
2577 |
+
this.hasDragged = Math.sqrt(Math.pow(o - d, 2) + Math.pow(n - e, 2));
|
2578 |
+
if (this.hasDragged > 10) {
|
2579 |
+
l = b.isInsidePlot(o - h, n - i);
|
2580 |
+
if (b.hasCartesianSeries && (this.zoomX || this.zoomY) && l && !this.selectionMarker)this.selectionMarker = b.renderer.rect(h, i, f ? 1 : j, g ? 1 : k, 0).attr({
|
2581 |
+
fill: c.selectionMarkerFill ||
|
2582 |
+
"rgba(69,114,167,0.25)", zIndex: 7
|
2583 |
+
}).add();
|
2584 |
+
this.selectionMarker && f && (d -= o, this.selectionMarker.attr({width: M(d), x: (d > 0 ? 0 : d) + o}));
|
2585 |
+
this.selectionMarker && g && (d = e - n, this.selectionMarker.attr({
|
2586 |
+
height: M(d),
|
2587 |
+
y: (d > 0 ? 0 : d) + n
|
2588 |
+
}));
|
2589 |
+
l && !this.selectionMarker && c.panning && b.pan(a, c.panning)
|
2590 |
+
}
|
2591 |
+
}, drop: function (a) {
|
2592 |
+
var b = this.chart, c = this.hasPinched;
|
2593 |
+
if (this.selectionMarker) {
|
2594 |
+
var d = {
|
2595 |
+
xAxis: [],
|
2596 |
+
yAxis: [],
|
2597 |
+
originalEvent: a.originalEvent || a
|
2598 |
+
}, a = this.selectionMarker, e = a.attr ? a.attr("x") : a.x, f = a.attr ? a.attr("y") : a.y, g = a.attr ? a.attr("width") :
|
2599 |
+
a.width, h = a.attr ? a.attr("height") : a.height, i;
|
2600 |
+
if (this.hasDragged || c)p(b.axes, function (a) {
|
2601 |
+
if (a.zoomEnabled) {
|
2602 |
+
var b = a.horiz, c = a.toValue(b ? e : f), b = a.toValue(b ? e + g : f + h);
|
2603 |
+
!isNaN(c) && !isNaN(b) && (d[a.coll].push({axis: a, min: C(c, b), max: v(c, b)}), i = !0)
|
2604 |
+
}
|
2605 |
+
}), i && D(b, "selection", d, function (a) {
|
2606 |
+
b.zoom(q(a, c ? {animation: !1} : null))
|
2607 |
+
});
|
2608 |
+
this.selectionMarker = this.selectionMarker.destroy();
|
2609 |
+
c && this.scaleGroups()
|
2610 |
+
}
|
2611 |
+
if (b)G(b.container, {cursor: b._cursor}), b.cancelClick = this.hasDragged > 10, b.mouseIsDown = this.hasDragged = this.hasPinched = !1, this.pinchDown = []
|
2612 |
+
}, onContainerMouseDown: function (a) {
|
2613 |
+
a = this.normalize(a);
|
2614 |
+
a.preventDefault && a.preventDefault();
|
2615 |
+
this.dragStart(a)
|
2616 |
+
}, onDocumentMouseUp: function (a) {
|
2617 |
+
V[oa] && V[oa].pointer.drop(a)
|
2618 |
+
}, onDocumentMouseMove: function (a) {
|
2619 |
+
var b = this.chart, c = this.chartPosition, d = b.hoverSeries, a = this.normalize(a, c);
|
2620 |
+
c && d && !this.inClass(a.target, "highcharts-tracker") && !b.isInsidePlot(a.chartX - b.plotLeft, a.chartY - b.plotTop) && this.reset()
|
2621 |
+
}, onContainerMouseLeave: function () {
|
2622 |
+
var a = V[oa];
|
2623 |
+
if (a)a.pointer.reset(), a.pointer.chartPosition =
|
2624 |
+
null
|
2625 |
+
}, onContainerMouseMove: function (a) {
|
2626 |
+
var b = this.chart;
|
2627 |
+
oa = b.index;
|
2628 |
+
a = this.normalize(a);
|
2629 |
+
b.mouseIsDown === "mousedown" && this.drag(a);
|
2630 |
+
(this.inClass(a.target, "highcharts-tracker") || b.isInsidePlot(a.chartX - b.plotLeft, a.chartY - b.plotTop)) && !b.openMenu && this.runPointActions(a)
|
2631 |
+
}, inClass: function (a, b) {
|
2632 |
+
for (var c; a;) {
|
2633 |
+
if (c = H(a, "class"))if (c.indexOf(b) !== -1)return !0; else if (c.indexOf("highcharts-container") !== -1)return !1;
|
2634 |
+
a = a.parentNode
|
2635 |
+
}
|
2636 |
+
}, onTrackerMouseOut: function (a) {
|
2637 |
+
var b = this.chart.hoverSeries, c = (a = a.relatedTarget ||
|
2638 |
+
a.toElement) && a.point && a.point.series;
|
2639 |
+
if (b && !b.options.stickyTracking && !this.inClass(a, "highcharts-tooltip") && c !== b)b.onMouseOut()
|
2640 |
+
}, onContainerClick: function (a) {
|
2641 |
+
var b = this.chart, c = b.hoverPoint, d = b.plotLeft, e = b.plotTop, a = this.normalize(a);
|
2642 |
+
a.cancelBubble = !0;
|
2643 |
+
b.cancelClick || (c && this.inClass(a.target, "highcharts-tracker") ? (D(c.series, "click", q(a, {point: c})), b.hoverPoint && c.firePointEvent("click", a)) : (q(a, this.getCoordinates(a)), b.isInsidePlot(a.chartX - d, a.chartY - e) && D(b, "click", a)))
|
2644 |
+
}, setDOMEvents: function () {
|
2645 |
+
var a =
|
2646 |
+
this, b = a.chart.container;
|
2647 |
+
b.onmousedown = function (b) {
|
2648 |
+
a.onContainerMouseDown(b)
|
2649 |
+
};
|
2650 |
+
b.onmousemove = function (b) {
|
2651 |
+
a.onContainerMouseMove(b)
|
2652 |
+
};
|
2653 |
+
b.onclick = function (b) {
|
2654 |
+
a.onContainerClick(b)
|
2655 |
+
};
|
2656 |
+
K(b, "mouseleave", a.onContainerMouseLeave);
|
2657 |
+
ab === 1 && K(y, "mouseup", a.onDocumentMouseUp);
|
2658 |
+
if ($a)b.ontouchstart = function (b) {
|
2659 |
+
a.onContainerTouchStart(b)
|
2660 |
+
}, b.ontouchmove = function (b) {
|
2661 |
+
a.onContainerTouchMove(b)
|
2662 |
+
}, ab === 1 && K(y, "touchend", a.onDocumentTouchEnd)
|
2663 |
+
}, destroy: function () {
|
2664 |
+
var a;
|
2665 |
+
W(this.chart.container, "mouseleave", this.onContainerMouseLeave);
|
2666 |
+
ab || (W(y, "mouseup", this.onDocumentMouseUp), W(y, "touchend", this.onDocumentTouchEnd));
|
2667 |
+
clearInterval(this.tooltipTimeout);
|
2668 |
+
for (a in this)this[a] = null
|
2669 |
+
}
|
2670 |
+
};
|
2671 |
+
q(R.Pointer.prototype, {
|
2672 |
+
pinchTranslate: function (a, b, c, d, e, f) {
|
2673 |
+
(this.zoomHor || this.pinchHor) && this.pinchTranslateDirection(!0, a, b, c, d, e, f);
|
2674 |
+
(this.zoomVert || this.pinchVert) && this.pinchTranslateDirection(!1, a, b, c, d, e, f)
|
2675 |
+
}, pinchTranslateDirection: function (a, b, c, d, e, f, g, h) {
|
2676 |
+
var i = this.chart, j = a ? "x" : "y", k = a ? "X" : "Y", l = "chart" + k, o = a ? "width" : "height", n = i["plot" + (a ?
|
2677 |
+
"Left" : "Top")], s, m, p = h || 1, q = i.inverted, x = i.bounds[a ? "h" : "v"], r = b.length === 1, v = b[0][l], u = c[0][l], t = !r && b[1][l], w = !r && c[1][l], y, c = function () {
|
2678 |
+
!r && M(v - t) > 20 && (p = h || M(u - w) / M(v - t));
|
2679 |
+
m = (n - u) / p + v;
|
2680 |
+
s = i["plot" + (a ? "Width" : "Height")] / p
|
2681 |
+
};
|
2682 |
+
c();
|
2683 |
+
b = m;
|
2684 |
+
b < x.min ? (b = x.min, y = !0) : b + s > x.max && (b = x.max - s, y = !0);
|
2685 |
+
y ? (u -= 0.8 * (u - g[j][0]), r || (w -= 0.8 * (w - g[j][1])), c()) : g[j] = [u, w];
|
2686 |
+
q || (f[j] = m - n, f[o] = s);
|
2687 |
+
f = q ? 1 / p : p;
|
2688 |
+
e[o] = s;
|
2689 |
+
e[j] = b;
|
2690 |
+
d[q ? a ? "scaleY" : "scaleX" : "scale" + k] = p;
|
2691 |
+
d["translate" + k] = f * n + (u - f * v)
|
2692 |
+
}, pinch: function (a) {
|
2693 |
+
var b = this, c = b.chart, d = b.pinchDown,
|
2694 |
+
e = b.followTouchMove, f = a.touches, g = f.length, h = b.lastValidTouch, i = b.hasZoom, j = b.selectionMarker, k = {}, l = g === 1 && (b.inClass(a.target, "highcharts-tracker") && c.runTrackerClick || c.runChartClick), o = {};
|
2695 |
+
(i || e) && !l && a.preventDefault();
|
2696 |
+
Ua(f, function (a) {
|
2697 |
+
return b.normalize(a)
|
2698 |
+
});
|
2699 |
+
if (a.type === "touchstart")p(f, function (a, b) {
|
2700 |
+
d[b] = {chartX: a.chartX, chartY: a.chartY}
|
2701 |
+
}), h.x = [d[0].chartX, d[1] && d[1].chartX], h.y = [d[0].chartY, d[1] && d[1].chartY], p(c.axes, function (a) {
|
2702 |
+
if (a.zoomEnabled) {
|
2703 |
+
var b = c.bounds[a.horiz ? "h" : "v"], d = a.minPixelPadding,
|
2704 |
+
e = a.toPixels(a.dataMin), f = a.toPixels(a.dataMax), g = C(e, f), e = v(e, f);
|
2705 |
+
b.min = C(a.pos, g - d);
|
2706 |
+
b.max = v(a.pos + a.len, e + d)
|
2707 |
+
}
|
2708 |
+
}); else if (d.length) {
|
2709 |
+
if (!j)b.selectionMarker = j = q({destroy: sa}, c.plotBox);
|
2710 |
+
b.pinchTranslate(d, f, k, j, o, h);
|
2711 |
+
b.hasPinched = i;
|
2712 |
+
b.scaleGroups(k, o);
|
2713 |
+
!i && e && g === 1 && this.runPointActions(b.normalize(a))
|
2714 |
+
}
|
2715 |
+
}, onContainerTouchStart: function (a) {
|
2716 |
+
var b = this.chart;
|
2717 |
+
oa = b.index;
|
2718 |
+
a.touches.length === 1 ? (a = this.normalize(a), b.isInsidePlot(a.chartX - b.plotLeft, a.chartY - b.plotTop) ? (this.runPointActions(a), this.pinch(a)) : this.reset()) :
|
2719 |
+
a.touches.length === 2 && this.pinch(a)
|
2720 |
+
}, onContainerTouchMove: function (a) {
|
2721 |
+
(a.touches.length === 1 || a.touches.length === 2) && this.pinch(a)
|
2722 |
+
}, onDocumentTouchEnd: function (a) {
|
2723 |
+
V[oa] && V[oa].pointer.drop(a)
|
2724 |
+
}
|
2725 |
+
});
|
2726 |
+
if (I.PointerEvent || I.MSPointerEvent) {
|
2727 |
+
var ua = {}, zb = !!I.PointerEvent, Wb = function () {
|
2728 |
+
var a, b = [];
|
2729 |
+
b.item = function (a) {
|
2730 |
+
return this[a]
|
2731 |
+
};
|
2732 |
+
for (a in ua)ua.hasOwnProperty(a) && b.push({pageX: ua[a].pageX, pageY: ua[a].pageY, target: ua[a].target});
|
2733 |
+
return b
|
2734 |
+
}, Ab = function (a, b, c, d) {
|
2735 |
+
a = a.originalEvent || a;
|
2736 |
+
if ((a.pointerType === "touch" ||
|
2737 |
+
a.pointerType === a.MSPOINTER_TYPE_TOUCH) && V[oa])d(a), d = V[oa].pointer, d[b]({
|
2738 |
+
type: c,
|
2739 |
+
target: a.currentTarget,
|
2740 |
+
preventDefault: sa,
|
2741 |
+
touches: Wb()
|
2742 |
+
})
|
2743 |
+
};
|
2744 |
+
q(Wa.prototype, {
|
2745 |
+
onContainerPointerDown: function (a) {
|
2746 |
+
Ab(a, "onContainerTouchStart", "touchstart", function (a) {
|
2747 |
+
ua[a.pointerId] = {pageX: a.pageX, pageY: a.pageY, target: a.currentTarget}
|
2748 |
+
})
|
2749 |
+
}, onContainerPointerMove: function (a) {
|
2750 |
+
Ab(a, "onContainerTouchMove", "touchmove", function (a) {
|
2751 |
+
ua[a.pointerId] = {pageX: a.pageX, pageY: a.pageY};
|
2752 |
+
if (!ua[a.pointerId].target)ua[a.pointerId].target = a.currentTarget
|
2753 |
+
})
|
2754 |
+
},
|
2755 |
+
onDocumentPointerUp: function (a) {
|
2756 |
+
Ab(a, "onContainerTouchEnd", "touchend", function (a) {
|
2757 |
+
delete ua[a.pointerId]
|
2758 |
+
})
|
2759 |
+
}, batchMSEvents: function (a) {
|
2760 |
+
a(this.chart.container, zb ? "pointerdown" : "MSPointerDown", this.onContainerPointerDown);
|
2761 |
+
a(this.chart.container, zb ? "pointermove" : "MSPointerMove", this.onContainerPointerMove);
|
2762 |
+
a(y, zb ? "pointerup" : "MSPointerUp", this.onDocumentPointerUp)
|
2763 |
+
}
|
2764 |
+
});
|
2765 |
+
Ma(Wa.prototype, "init", function (a, b, c) {
|
2766 |
+
a.call(this, b, c);
|
2767 |
+
(this.hasZoom || this.followTouchMove) && G(b.container, {"-ms-touch-action": Q, "touch-action": Q})
|
2768 |
+
});
|
2769 |
+
Ma(Wa.prototype, "setDOMEvents", function (a) {
|
2770 |
+
a.apply(this);
|
2771 |
+
(this.hasZoom || this.followTouchMove) && this.batchMSEvents(K)
|
2772 |
+
});
|
2773 |
+
Ma(Wa.prototype, "destroy", function (a) {
|
2774 |
+
this.batchMSEvents(W);
|
2775 |
+
a.call(this)
|
2776 |
+
})
|
2777 |
+
}
|
2778 |
+
var lb = R.Legend = function (a, b) {
|
2779 |
+
this.init(a, b)
|
2780 |
+
};
|
2781 |
+
lb.prototype = {
|
2782 |
+
init: function (a, b) {
|
2783 |
+
var c = this, d = b.itemStyle, e = m(b.padding, 8), f = b.itemMarginTop || 0;
|
2784 |
+
this.options = b;
|
2785 |
+
if (b.enabled)c.baseline = z(d.fontSize) + 3 + f, c.itemStyle = d, c.itemHiddenStyle = w(d, b.itemHiddenStyle), c.itemMarginTop = f, c.padding = e, c.initialItemX = e, c.initialItemY =
|
2786 |
+
e - 5, c.maxItemWidth = 0, c.chart = a, c.itemHeight = 0, c.lastLineHeight = 0, c.symbolWidth = m(b.symbolWidth, 16), c.pages = [], c.render(), K(c.chart, "endResize", function () {
|
2787 |
+
c.positionCheckboxes()
|
2788 |
+
})
|
2789 |
+
}, colorizeItem: function (a, b) {
|
2790 |
+
var c = this.options, d = a.legendItem, e = a.legendLine, f = a.legendSymbol, g = this.itemHiddenStyle.color, c = b ? c.itemStyle.color : g, h = b ? a.legendColor || a.color || "#CCC" : g, g = a.options && a.options.marker, i = {fill: h}, j;
|
2791 |
+
d && d.css({fill: c, color: c});
|
2792 |
+
e && e.attr({stroke: h});
|
2793 |
+
if (f) {
|
2794 |
+
if (g && f.isMarker)for (j in i.stroke = h, g = a.convertAttribs(g),
|
2795 |
+
g)d = g[j], d !== t && (i[j] = d);
|
2796 |
+
f.attr(i)
|
2797 |
+
}
|
2798 |
+
}, positionItem: function (a) {
|
2799 |
+
var b = this.options, c = b.symbolPadding, b = !b.rtl, d = a._legendItemPos, e = d[0], d = d[1], f = a.checkbox;
|
2800 |
+
a.legendGroup && a.legendGroup.translate(b ? e : this.legendWidth - e - 2 * c - 4, d);
|
2801 |
+
if (f)f.x = e, f.y = d
|
2802 |
+
}, destroyItem: function (a) {
|
2803 |
+
var b = a.checkbox;
|
2804 |
+
p(["legendItem", "legendLine", "legendSymbol", "legendGroup"], function (b) {
|
2805 |
+
a[b] && (a[b] = a[b].destroy())
|
2806 |
+
});
|
2807 |
+
b && Pa(a.checkbox)
|
2808 |
+
}, destroy: function () {
|
2809 |
+
var a = this.group, b = this.box;
|
2810 |
+
if (b)this.box = b.destroy();
|
2811 |
+
if (a)this.group = a.destroy()
|
2812 |
+
},
|
2813 |
+
positionCheckboxes: function (a) {
|
2814 |
+
var b = this.group.alignAttr, c, d = this.clipHeight || this.legendHeight;
|
2815 |
+
if (b)c = b.translateY, p(this.allItems, function (e) {
|
2816 |
+
var f = e.checkbox, g;
|
2817 |
+
f && (g = c + f.y + (a || 0) + 3, G(f, {
|
2818 |
+
left: b.translateX + e.checkboxOffset + f.x - 20 + "px",
|
2819 |
+
top: g + "px",
|
2820 |
+
display: g > c - 6 && g < c + d - 6 ? "" : Q
|
2821 |
+
}))
|
2822 |
+
})
|
2823 |
+
}, renderTitle: function ()
|