Version Description
Premium
Download this release
Release Info
Developer | yani.iliev |
Plugin | All-in-One Event Calendar |
Version | 1.6 |
Comparing to | |
See all releases |
Code changes from version 1.5 to 1.6
- all-in-one-event-calendar.php +146 -65
- app/controller/class-ai1ec-app-controller.php +197 -147
- app/controller/class-ai1ec-calendar-controller.php +37 -24
- app/controller/class-ai1ec-events-controller.php +69 -59
- app/controller/class-ai1ec-importer-controller.php +3 -3
- app/controller/class-ai1ec-settings-controller.php +121 -111
- app/controller/class-ai1ec-themes-controller.php +164 -0
- app/helper/class-ai1ec-app-helper.php +403 -266
- app/helper/class-ai1ec-calendar-helper.php +20 -11
- app/helper/class-ai1ec-events-helper.php +69 -39
- app/helper/class-ai1ec-exporter-helper.php +1 -1
- app/helper/class-ai1ec-settings-helper.php +90 -73
- app/helper/class-ai1ec-view-helper.php +430 -13
- app/model/class-ai1ec-event.php +69 -45
- app/model/class-ai1ec-settings.php +127 -67
- app/view/{admin_notices.php → admin/admin_notices.php} +0 -0
- app/view/admin/box_advanced_settings.php +7 -0
- app/view/{box_event_contact.php → admin/box_event_contact.php} +0 -0
- app/view/{box_event_cost.php → admin/box_event_cost.php} +0 -0
- app/view/admin/box_event_location.php +44 -0
- app/view/{box_eventbrite.php → admin/box_eventbrite.php} +0 -0
- app/view/{box_ics_import_settings.php → admin/box_feeds.php} +14 -1
- app/view/{box_general_settings.php → admin/box_general_settings.php} +25 -19
- app/view/{box_publish_button.php → admin/box_publish_button.php} +0 -0
- app/view/{box_repeat.php → admin/box_repeat.php} +0 -0
- app/view/admin/box_the_seed_studio.php +60 -0
- app/view/{box_time_and_date.php → admin/box_time_and_date.php} +0 -0
- app/view/admin/calendar_tasks.php +82 -0
- app/view/{class-ai1ec-agenda-widget.php → admin/class-ai1ec-agenda-widget.php} +5 -8
- {css → app/view/admin/css}/add_new_event.css +6 -1
- app/view/admin/css/admin.css +4 -0
- app/view/admin/css/bootstrap.min.css +9 -0
- {css → app/view/admin/css}/colorpicker.css +11 -1
- app/view/admin/css/dashboard.css +28 -0
- {css → app/view/admin/css}/datepicker.css +0 -0
- {css → app/view/admin/css}/jquery.autocomplete.css +0 -0
- app/view/admin/css/platform.css +61 -0
- {css → app/view/admin/css}/selector.css +0 -0
- app/view/admin/css/settings.css +139 -0
- {css → app/view/admin/css}/widget.css +0 -0
- app/view/{donate_button.php → admin/donate_button.php} +0 -0
- app/view/{event_categories-color_picker.php → admin/event_categories-color_picker.php} +0 -0
- app/view/{feed_row.php → admin/feed_row.php} +0 -0
- app/view/admin/font/fontawesome-webfont.eot +0 -0
- app/view/admin/font/fontawesome-webfont.svg +175 -0
- app/view/admin/font/fontawesome-webfont.svgz +0 -0
- app/view/admin/font/fontawesome-webfont.ttf +0 -0
- app/view/admin/font/fontawesome-webfont.woff +0 -0
- app/view/admin/img/admin-bar-sprite.png +0 -0
- {img → app/view/admin/img}/admin-menu.png +0 -0
- {img → app/view/admin/img}/ajax-loader.gif +0 -0
- app/view/admin/img/color-picker-default.png +0 -0
- {img → app/view/admin/img}/color-picker.png +0 -0
- {img → app/view/admin/img}/colorpicker_background.png +0 -0
- {img → app/view/admin/img}/colorpicker_hex.png +0 -0
- {img → app/view/admin/img}/colorpicker_hsb_b.png +0 -0
- {img → app/view/admin/img}/colorpicker_hsb_h.png +0 -0
- {img → app/view/admin/img}/colorpicker_hsb_s.png +0 -0
- {img → app/view/admin/img}/colorpicker_indic.gif +0 -0
- {img → app/view/admin/img}/colorpicker_overlay.png +0 -0
- {img → app/view/admin/img}/colorpicker_rgb_b.png +0 -0
- {img → app/view/admin/img}/colorpicker_rgb_g.png +0 -0
- {img → app/view/admin/img}/colorpicker_rgb_r.png +0 -0
- {img → app/view/admin/img}/colorpicker_select.gif +0 -0
- {img → app/view/admin/img}/colorpicker_submit.png +0 -0
- {img → app/view/admin/img}/custom_b.png +0 -0
- {img → app/view/admin/img}/custom_background.png +0 -0
- {img → app/view/admin/img}/custom_bl.png +0 -0
- {img → app/view/admin/img}/custom_br.png +0 -0
- {img → app/view/admin/img}/custom_hex.png +0 -0
- {img → app/view/admin/img}/custom_hsb_b.png +0 -0
- {img → app/view/admin/img}/custom_hsb_h.png +0 -0
- {img → app/view/admin/img}/custom_hsb_s.png +0 -0
- {img → app/view/admin/img}/custom_indic.gif +0 -0
- {img → app/view/admin/img}/custom_l.png +0 -0
- {img → app/view/admin/img}/custom_r.png +0 -0
- {img → app/view/admin/img}/custom_rgb_b.png +0 -0
- {img → app/view/admin/img}/custom_rgb_g.png +0 -0
- {img → app/view/admin/img}/custom_rgb_r.png +0 -0
- {img → app/view/admin/img}/custom_submit.png +0 -0
- {img → app/view/admin/img}/custom_t.png +0 -0
- {img → app/view/admin/img}/custom_tl.png +0 -0
- {img → app/view/admin/img}/custom_tr.png +0 -0
- {img → app/view/admin/img}/datepicker_b.png +0 -0
- {img → app/view/admin/img}/datepicker_bl.png +0 -0
- {img → app/view/admin/img}/datepicker_br.png +0 -0
- {img → app/view/admin/img}/datepicker_l.png +0 -0
- {img → app/view/admin/img}/datepicker_r.png +0 -0
- {img → app/view/admin/img}/datepicker_t.png +0 -0
- {img → app/view/admin/img}/datepicker_tl.png +0 -0
- {img → app/view/admin/img}/datepicker_tr.png +0 -0
- {img → app/view/admin/img}/field.png +0 -0
- {img → app/view/admin/img}/icon-close.png +0 -0
- {img → app/view/admin/img}/indicator.gif +0 -0
- app/view/admin/img/logo.png +0 -0
- {img → app/view/admin/img}/slider.png +0 -0
- app/view/{import.php → admin/import.php} +0 -0
- {js → app/view/admin/js}/add_new_event.js +206 -105
- {js → app/view/admin/js}/colorpicker.js +21 -8
- {js → app/view/admin/js}/datepicker.js +0 -0
- {js → app/view/admin/js}/element-selector.js +0 -0
- {js → app/view/admin/js}/geo_autocomplete.js +0 -0
- {js → app/view/admin/js}/jquery-tools-1.2.5.min.js +0 -0
- {js → app/view/admin/js}/jquery.autocomplete_geomod.js +0 -0
- {js → app/view/admin/js}/jquery.blockUI.js +0 -0
- {js → app/view/admin/js}/jquery.calendrical.js +0 -0
- {js → app/view/admin/js}/jquery.inputdate.js +0 -0
- {js → app/view/admin/js}/jquery.timespan.js +0 -0
- app/view/admin/js/platform-all.js +11 -0
- app/view/admin/js/platform.js +15 -0
- {js → app/view/admin/js}/settings.js +0 -0
- {js → app/view/admin/js}/widget.js +0 -0
- app/view/admin/less/bootstrap.less +82 -0
- app/view/admin/less/build-css.sh +10 -0
- app/view/admin/less/button-groups.less +172 -0
- app/view/admin/less/buttons.less +187 -0
- app/view/admin/less/dropdowns.less +148 -0
- app/view/admin/less/font-awesome.less +264 -0
- app/view/admin/less/grid.less +5 -0
- app/view/admin/less/hero-unit.less +22 -0
- app/view/admin/less/mixins.less +614 -0
- app/view/admin/less/navs.less +363 -0
- app/view/admin/less/reset.less +126 -0
- app/view/admin/less/scaffolding.less +29 -0
- app/view/admin/less/type.less +234 -0
- app/view/admin/less/utilities.less +23 -0
- app/view/admin/less/variables.less +205 -0
- app/view/{on_the_select.php → admin/on_the_select.php} +0 -0
- app/view/{row_daily.php → admin/row_daily.php} +0 -0
- app/view/{row_monthly.php → admin/row_monthly.php} +0 -0
- app/view/{row_weekly.php → admin/row_weekly.php} +0 -0
- app/view/{row_yearly.php → admin/row_yearly.php} +0 -0
- app/view/{save_successful.php → admin/save_successful.php} +0 -0
- app/view/{settings.php → admin/settings.php} +1 -1
- app/view/{subscription_button.php → admin/subscription_button.php} +0 -0
- app/view/agenda-widget-form.php +0 -69
- app/view/agenda-widget.php +0 -81
- app/view/box_event_location.php +0 -42
- app/view/box_the_seed_studio.php +0 -56
- app/view/calendar.php +0 -128
- app/view/event-excerpt.php +0 -6
- app/view/event-multi.php +0 -56
- app/view/oneday.php +0 -137
- css/calendar.css +0 -1009
- css/event.css +0 -202
- css/general.css +0 -356
- css/settings.css +0 -185
- img/agenda-view.png +0 -0
- img/blank.gif +0 -0
- img/month-view.png +0 -0
- img/oneday-view.png +0 -0
- img/scroll-down.png +0 -0
- img/scroll-up.png +0 -0
- img/week-view.png +0 -0
- language/all-in-one-event-calendar.pot +611 -517
- lib/class-ai1ec-updater.php +103 -0
- lib/global-functions.php +11 -29
- readme.txt +41 -19
- screenshot-11.jpg +0 -0
- screenshot-2.jpg +0 -0
- themes-ai1ec/vortex/agenda-widget.php +85 -0
- {app/view → themes-ai1ec/vortex}/agenda.php +30 -27
- themes-ai1ec/vortex/calendar.php +125 -0
- themes-ai1ec/vortex/css/calendar.css +1 -0
- themes-ai1ec/vortex/css/event.css +1 -0
- themes-ai1ec/vortex/css/general.css +1 -0
- themes-ai1ec/vortex/css/print.css +1 -0
- themes-ai1ec/vortex/event-excerpt.php +6 -0
- {app/view → themes-ai1ec/vortex}/event-map.php +3 -3
- themes-ai1ec/vortex/event-multi.php +56 -0
- {app/view → themes-ai1ec/vortex}/event-single-footer.php +2 -1
- {app/view → themes-ai1ec/vortex}/event-single.php +7 -7
- themes-ai1ec/vortex/font/fontawesome-webfont.eot +0 -0
- themes-ai1ec/vortex/font/fontawesome-webfont.svg +175 -0
- themes-ai1ec/vortex/font/fontawesome-webfont.svgz +0 -0
- themes-ai1ec/vortex/font/fontawesome-webfont.ttf +0 -0
- themes-ai1ec/vortex/font/fontawesome-webfont.woff +0 -0
- themes-ai1ec/vortex/functions.php +19 -0
- themes-ai1ec/vortex/img/agenda-view.png +0 -0
- themes-ai1ec/vortex/img/ajax-loader.gif +0 -0
- {img → themes-ai1ec/vortex/img}/google-calendar.png +0 -0
- {img → themes-ai1ec/vortex/img}/ics-icon.png +0 -0
- themes-ai1ec/vortex/img/month-view.png +0 -0
- themes-ai1ec/vortex/img/oneday-view.png +0 -0
- themes-ai1ec/vortex/img/week-view.png +0 -0
- themes-ai1ec/vortex/index.php +0 -0
- themes-ai1ec/vortex/js/bootstrap-dropdown.js +93 -0
- themes-ai1ec/vortex/js/bootstrap-tooltip.js +272 -0
- themes-ai1ec/vortex/js/build-js.sh +10 -0
- {js → themes-ai1ec/vortex/js}/calendar.js +860 -627
- themes-ai1ec/vortex/js/calendar.min.js +1 -0
- {js → themes-ai1ec/vortex/js}/event.js +3 -3
- themes-ai1ec/vortex/js/event.min.js +1 -0
- themes-ai1ec/vortex/js/general.js +23 -0
- themes-ai1ec/vortex/js/general.min.js +1 -0
- {js → themes-ai1ec/vortex/js}/jquery.scrollTo-min.js +0 -0
- {js → themes-ai1ec/vortex/js}/jquery.tablescroll.js +0 -0
- {js → themes-ai1ec/vortex/js}/modernizr.custom.78720.js +0 -0
- themes-ai1ec/vortex/less/build-css.sh +13 -0
- themes-ai1ec/vortex/less/button-groups.less +172 -0
- themes-ai1ec/vortex/less/buttons.less +187 -0
- themes-ai1ec/vortex/less/calendar.less +837 -0
- themes-ai1ec/vortex/less/dropdowns.less +148 -0
- themes-ai1ec/vortex/less/event.less +208 -0
- themes-ai1ec/vortex/less/font-awesome.less +264 -0
- themes-ai1ec/vortex/less/general.less +313 -0
- themes-ai1ec/vortex/less/grid.less +5 -0
- themes-ai1ec/vortex/less/mixins-custom.less +65 -0
- themes-ai1ec/vortex/less/mixins.less +614 -0
- themes-ai1ec/vortex/less/navs.less +363 -0
- themes-ai1ec/vortex/less/print.less +30 -0
- themes-ai1ec/vortex/less/reset.less +126 -0
- themes-ai1ec/vortex/less/scaffolding.less +29 -0
- themes-ai1ec/vortex/less/tooltip.less +35 -0
- themes-ai1ec/vortex/less/type.less +234 -0
- themes-ai1ec/vortex/less/utilities.less +23 -0
- themes-ai1ec/vortex/less/variables.less +235 -0
- {app/view → themes-ai1ec/vortex}/month.php +32 -19
- themes-ai1ec/vortex/oneday.php +165 -0
- themes-ai1ec/vortex/screenshot.png +0 -0
- themes-ai1ec/vortex/style.css +9 -0
- {app/view → themes-ai1ec/vortex}/week.php +37 -22
all-in-one-event-calendar.php
CHANGED
@@ -1,143 +1,218 @@
|
|
1 |
<?php
|
2 |
/**
|
3 |
-
* Plugin Name: All-in-One
|
4 |
-
* Plugin URI: http://
|
5 |
-
* Description:
|
6 |
-
* Author:
|
7 |
-
* Author URI: http://
|
8 |
-
* Version: 1.
|
9 |
-
*/
|
10 |
@set_time_limit( 0 );
|
11 |
-
@ini_set(
|
12 |
-
@ini_set(
|
13 |
|
14 |
// ===============
|
15 |
// = Plugin Name =
|
16 |
// ===============
|
17 |
-
define( 'AI1EC_PLUGIN_NAME',
|
18 |
|
19 |
// ===================
|
20 |
// = Plugin Basename =
|
21 |
// ===================
|
22 |
-
define( 'AI1EC_PLUGIN_BASENAME',
|
23 |
|
24 |
// ==================
|
25 |
// = Plugin Version =
|
26 |
// ==================
|
27 |
-
define( 'AI1EC_VERSION',
|
28 |
|
29 |
// ====================
|
30 |
// = Database Version =
|
31 |
// ====================
|
32 |
-
define( 'AI1EC_DB_VERSION',
|
33 |
|
34 |
// ================
|
35 |
// = Cron Version =
|
36 |
// ================
|
37 |
-
define( 'AI1EC_CRON_VERSION',
|
38 |
-
define( 'AI1EC_N_CRON_VERSION',
|
39 |
-
define( 'AI1EC_N_CRON_FREQ',
|
40 |
|
41 |
// ===============
|
42 |
// = Plugin Path =
|
43 |
// ===============
|
44 |
-
define( 'AI1EC_PATH',
|
45 |
|
46 |
-
//
|
47 |
-
// =
|
48 |
-
//
|
49 |
-
define( '
|
50 |
|
51 |
-
//
|
52 |
-
// =
|
53 |
-
//
|
54 |
-
define( '
|
55 |
|
56 |
-
//
|
57 |
-
// =
|
58 |
-
//
|
59 |
-
define( '
|
60 |
|
61 |
// ============
|
62 |
// = Lib Path =
|
63 |
// ============
|
64 |
-
define( 'AI1EC_LIB_PATH',
|
65 |
|
66 |
// =================
|
67 |
// = Language Path =
|
68 |
// =================
|
69 |
-
define( 'AI1EC_LANGUAGE_PATH',
|
70 |
|
71 |
// ============
|
72 |
// = App Path =
|
73 |
// ============
|
74 |
-
define( 'AI1EC_APP_PATH',
|
75 |
|
76 |
// ===================
|
77 |
// = Controller Path =
|
78 |
// ===================
|
79 |
-
define( 'AI1EC_CONTROLLER_PATH',
|
80 |
|
81 |
// ==============
|
82 |
// = Model Path =
|
83 |
// ==============
|
84 |
-
define( 'AI1EC_MODEL_PATH',
|
85 |
|
86 |
// =============
|
87 |
// = View Path =
|
88 |
// =============
|
89 |
-
define( 'AI1EC_VIEW_PATH',
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
90 |
|
91 |
// ===============
|
92 |
// = Helper Path =
|
93 |
// ===============
|
94 |
-
define( 'AI1EC_HELPER_PATH',
|
95 |
|
96 |
// ==================
|
97 |
// = Exception Path =
|
98 |
// ==================
|
99 |
-
define( 'AI1EC_EXCEPTION_PATH',
|
100 |
|
101 |
// ==============
|
102 |
// = Plugin Url =
|
103 |
// ==============
|
104 |
-
define( 'AI1EC_URL',
|
105 |
|
106 |
// ==============
|
107 |
// = Images URL =
|
108 |
// ==============
|
109 |
-
define( 'AI1EC_IMAGE_URL',
|
110 |
|
111 |
// ===========
|
112 |
// = CSS URL =
|
113 |
// ===========
|
114 |
-
define( 'AI1EC_CSS_URL',
|
115 |
|
116 |
// ==========
|
117 |
// = JS URL =
|
118 |
// ==========
|
119 |
-
define( 'AI1EC_JS_URL',
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
120 |
|
121 |
// =============
|
122 |
// = POST TYPE =
|
123 |
// =============
|
124 |
-
define( 'AI1EC_POST_TYPE',
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
125 |
|
126 |
// ================
|
127 |
// = RSS FEED URL =
|
128 |
// ================
|
129 |
-
define( 'AI1EC_RSS_FEED',
|
130 |
|
131 |
// ======================================
|
132 |
// = FAKE CATEGORY ID FOR CALENDAR PAGE =
|
133 |
// ======================================
|
134 |
-
define( 'AI1EC_FAKE_CATEGORY_ID',
|
135 |
|
136 |
// ==============
|
137 |
// = SCRIPT URL =
|
138 |
// ==============
|
139 |
$ai1ec_script_url = get_option( 'home' ) . '/?plugin=' . AI1EC_PLUGIN_NAME;
|
140 |
-
define( 'AI1EC_SCRIPT_URL',
|
141 |
|
142 |
// ====================================================
|
143 |
// = Convert http:// to webcal:// in AI1EC_SCRIPT_URL =
|
@@ -148,7 +223,7 @@ $tmp = str_replace( 'http://', 'webcal://', AI1EC_SCRIPT_URL );
|
|
148 |
// ==============
|
149 |
// = EXPORT URL =
|
150 |
// ==============
|
151 |
-
define( 'AI1EC_EXPORT_URL', "
|
152 |
|
153 |
// ====================================
|
154 |
// = Include iCal parsers and helpers =
|
@@ -187,12 +262,18 @@ function ai1ec_autoload( $class_name )
|
|
187 |
AI1EC_EXCEPTION_PATH,
|
188 |
AI1EC_LIB_PATH,
|
189 |
AI1EC_VIEW_PATH,
|
|
|
|
|
|
|
190 |
);
|
191 |
|
|
|
|
|
|
|
192 |
// Search each path for the class.
|
193 |
foreach( $paths as $path ) {
|
194 |
if( file_exists( "$path/class-$class_name.php" ) )
|
195 |
-
|
196 |
}
|
197 |
}
|
198 |
spl_autoload_register( 'ai1ec_autoload' );
|
@@ -210,11 +291,11 @@ $ai1ec_settings = Ai1ec_Settings::get_instance();
|
|
210 |
// ================================
|
211 |
global $ai1ec_view_helper,
|
212 |
$ai1ec_settings_helper,
|
213 |
-
|
214 |
-
|
215 |
-
|
216 |
-
|
217 |
-
|
218 |
|
219 |
$ai1ec_view_helper = Ai1ec_View_Helper::get_instance();
|
220 |
$ai1ec_settings_helper = Ai1ec_Settings_Helper::get_instance();
|
@@ -224,7 +305,6 @@ $ai1ec_events_helper = Ai1ec_Events_Helper::get_instance();
|
|
224 |
$ai1ec_importer_helper = Ai1ec_Importer_Helper::get_instance();
|
225 |
$ai1ec_exporter_helper = Ai1ec_Exporter_Helper::get_instance();
|
226 |
|
227 |
-
|
228 |
// ====================================
|
229 |
// = Initialize and setup CONTROLLERS =
|
230 |
// ====================================
|
@@ -233,16 +313,17 @@ global $ai1ec_app_controller,
|
|
233 |
$ai1ec_events_controller,
|
234 |
$ai1ec_calendar_controller,
|
235 |
$ai1ec_importer_controller,
|
236 |
-
$ai1ec_exporter_controller
|
237 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
238 |
$ai1ec_app_controller = Ai1ec_App_Controller::get_instance();
|
239 |
-
$ai1ec_settings_controller = Ai1ec_Settings_Controller::get_instance();
|
240 |
-
$ai1ec_events_controller = Ai1ec_Events_Controller::get_instance();
|
241 |
-
$ai1ec_calendar_controller = Ai1ec_Calendar_Controller::get_instance();
|
242 |
-
$ai1ec_importer_controller = Ai1ec_Importer_Controller::get_instance();
|
243 |
-
$ai1ec_exporter_controller = Ai1ec_Exporter_Controller::get_instance();
|
244 |
-
|
245 |
-
// ===================
|
246 |
-
// = Call admin menu =
|
247 |
-
// ===================
|
248 |
-
$ai1ec_app_controller->setup_menus();
|
1 |
<?php
|
2 |
/**
|
3 |
+
* Plugin Name: All-in-One Calendar by Then.ly
|
4 |
+
* Plugin URI: http://then.ly/
|
5 |
+
* Description: A calendar system with month, week, day, agenda views, upcoming events widget, color-coded categories, recurrence, and import/export of .ics feeds.
|
6 |
+
* Author: Then.ly
|
7 |
+
* Author URI: http://then.ly/
|
8 |
+
* Version: 1.6
|
9 |
+
*/
|
10 |
@set_time_limit( 0 );
|
11 |
+
@ini_set( 'memory_limit', '256M' );
|
12 |
+
@ini_set( 'max_input_time', '-1' );
|
13 |
|
14 |
// ===============
|
15 |
// = Plugin Name =
|
16 |
// ===============
|
17 |
+
define( 'AI1EC_PLUGIN_NAME', 'all-in-one-event-calendar' );
|
18 |
|
19 |
// ===================
|
20 |
// = Plugin Basename =
|
21 |
// ===================
|
22 |
+
define( 'AI1EC_PLUGIN_BASENAME', plugin_basename( __FILE__ ) );
|
23 |
|
24 |
// ==================
|
25 |
// = Plugin Version =
|
26 |
// ==================
|
27 |
+
define( 'AI1EC_VERSION', '1.6' );
|
28 |
|
29 |
// ====================
|
30 |
// = Database Version =
|
31 |
// ====================
|
32 |
+
define( 'AI1EC_DB_VERSION', 108 );
|
33 |
|
34 |
// ================
|
35 |
// = Cron Version =
|
36 |
// ================
|
37 |
+
define( 'AI1EC_CRON_VERSION', 102 );
|
38 |
+
define( 'AI1EC_N_CRON_VERSION', 101 );
|
39 |
+
define( 'AI1EC_N_CRON_FREQ', 'daily' );
|
40 |
|
41 |
// ===============
|
42 |
// = Plugin Path =
|
43 |
// ===============
|
44 |
+
define( 'AI1EC_PATH', dirname( __FILE__ ) );
|
45 |
|
46 |
+
// ===================
|
47 |
+
// = CSS Folder name =
|
48 |
+
// ===================
|
49 |
+
define( 'AI1EC_CSS_FOLDER', 'css' );
|
50 |
|
51 |
+
// ==================
|
52 |
+
// = JS Folder name =
|
53 |
+
// ==================
|
54 |
+
define( 'AI1EC_JS_FOLDER', 'js' );
|
55 |
|
56 |
+
// =====================
|
57 |
+
// = Image folder name =
|
58 |
+
// =====================
|
59 |
+
define( 'AI1EC_IMG_FOLDER', 'img' );
|
60 |
|
61 |
// ============
|
62 |
// = Lib Path =
|
63 |
// ============
|
64 |
+
define( 'AI1EC_LIB_PATH', AI1EC_PATH . '/lib' );
|
65 |
|
66 |
// =================
|
67 |
// = Language Path =
|
68 |
// =================
|
69 |
+
define( 'AI1EC_LANGUAGE_PATH', AI1EC_PLUGIN_NAME . '/language' );
|
70 |
|
71 |
// ============
|
72 |
// = App Path =
|
73 |
// ============
|
74 |
+
define( 'AI1EC_APP_PATH', AI1EC_PATH . '/app' );
|
75 |
|
76 |
// ===================
|
77 |
// = Controller Path =
|
78 |
// ===================
|
79 |
+
define( 'AI1EC_CONTROLLER_PATH', AI1EC_APP_PATH . '/controller' );
|
80 |
|
81 |
// ==============
|
82 |
// = Model Path =
|
83 |
// ==============
|
84 |
+
define( 'AI1EC_MODEL_PATH', AI1EC_APP_PATH . '/model' );
|
85 |
|
86 |
// =============
|
87 |
// = View Path =
|
88 |
// =============
|
89 |
+
define( 'AI1EC_VIEW_PATH', AI1EC_APP_PATH . '/view' );
|
90 |
+
|
91 |
+
// ====================
|
92 |
+
// = Admin Theme Path =
|
93 |
+
// ====================
|
94 |
+
define( 'AI1EC_ADMIN_THEME_PATH', AI1EC_VIEW_PATH . '/admin' );
|
95 |
+
|
96 |
+
// ==================
|
97 |
+
// = Admin theme CSS path =
|
98 |
+
// ==================
|
99 |
+
define( 'AI1EC_ADMIN_THEME_CSS_PATH', AI1EC_ADMIN_THEME_PATH . '/' . AI1EC_CSS_FOLDER );
|
100 |
+
|
101 |
+
// =======================
|
102 |
+
// = Admin theme JS path =
|
103 |
+
// =======================
|
104 |
+
define( 'AI1EC_ADMIN_THEME_JS_PATH', AI1EC_ADMIN_THEME_PATH . '/' . AI1EC_JS_FOLDER );
|
105 |
+
|
106 |
+
// ========================
|
107 |
+
// = Admin theme IMG path =
|
108 |
+
// ========================
|
109 |
+
define( 'AI1EC_ADMIN_THEME_IMG_PATH', AI1EC_ADMIN_THEME_PATH . '/' . AI1EC_IMG_FOLDER );
|
110 |
|
111 |
// ===============
|
112 |
// = Helper Path =
|
113 |
// ===============
|
114 |
+
define( 'AI1EC_HELPER_PATH', AI1EC_APP_PATH . '/helper' );
|
115 |
|
116 |
// ==================
|
117 |
// = Exception Path =
|
118 |
// ==================
|
119 |
+
define( 'AI1EC_EXCEPTION_PATH', AI1EC_APP_PATH . '/exception' );
|
120 |
|
121 |
// ==============
|
122 |
// = Plugin Url =
|
123 |
// ==============
|
124 |
+
define( 'AI1EC_URL', plugins_url( '', __FILE__ ) );
|
125 |
|
126 |
// ==============
|
127 |
// = Images URL =
|
128 |
// ==============
|
129 |
+
define( 'AI1EC_IMAGE_URL', AI1EC_URL . '/' . AI1EC_IMG_FOLDER );
|
130 |
|
131 |
// ===========
|
132 |
// = CSS URL =
|
133 |
// ===========
|
134 |
+
define( 'AI1EC_CSS_URL', AI1EC_URL . '/' . AI1EC_CSS_FOLDER );
|
135 |
|
136 |
// ==========
|
137 |
// = JS URL =
|
138 |
// ==========
|
139 |
+
define( 'AI1EC_JS_URL', AI1EC_URL . '/' . AI1EC_JS_FOLDER );
|
140 |
+
|
141 |
+
// ================
|
142 |
+
// = Admin JS URL =
|
143 |
+
// ================
|
144 |
+
define( 'AI1EC_ADMIN_THEME_JS_URL', AI1EC_URL . '/app/view/admin/' . AI1EC_JS_FOLDER );
|
145 |
+
|
146 |
+
// =================
|
147 |
+
// = Admin CSS URL =
|
148 |
+
// =================
|
149 |
+
define( 'AI1EC_ADMIN_THEME_CSS_URL', AI1EC_URL . '/app/view/admin/' . AI1EC_CSS_FOLDER );
|
150 |
+
|
151 |
+
// =================
|
152 |
+
// = Admin IMG URL =
|
153 |
+
// =================
|
154 |
+
define( 'AI1EC_ADMIN_THEME_IMG_URL', AI1EC_URL . '/app/view/admin/' . AI1EC_IMG_FOLDER );
|
155 |
|
156 |
// =============
|
157 |
// = POST TYPE =
|
158 |
// =============
|
159 |
+
define( 'AI1EC_POST_TYPE', 'ai1ec_event' );
|
160 |
+
|
161 |
+
// =====================================================
|
162 |
+
// = FEED SETTINGS PAGE BASE URL (wrap in admin_url()) =
|
163 |
+
// =====================================================
|
164 |
+
define( 'AI1EC_FEED_SETTINGS_BASE_URL', 'edit.php?post_type=' . AI1EC_POST_TYPE . '&page=' . AI1EC_PLUGIN_NAME . '-feeds' );
|
165 |
+
|
166 |
+
// ================================================
|
167 |
+
// = SETTINGS PAGE BASE URL (wrap in admin_url()) =
|
168 |
+
// ================================================
|
169 |
+
define( 'AI1EC_SETTINGS_BASE_URL', 'options-general.php?page=' . AI1EC_PLUGIN_NAME . '-settings' );
|
170 |
+
|
171 |
+
// ======================
|
172 |
+
// = Default Theme Name =
|
173 |
+
// ======================
|
174 |
+
define( 'AI1EC_DEFAULT_THEME_NAME', 'vortex' );
|
175 |
+
|
176 |
+
// =============================
|
177 |
+
// = Default Theme folder name =
|
178 |
+
// =============================
|
179 |
+
define( 'AI1EC_THEMES_FOLDER', 'themes-ai1ec' );
|
180 |
+
|
181 |
+
// ========================
|
182 |
+
// = AI1EC Theme location =
|
183 |
+
// ========================
|
184 |
+
define( 'AI1EC_THEMES_ROOT', WP_CONTENT_DIR . '/' . AI1EC_THEMES_FOLDER );
|
185 |
+
|
186 |
+
// ===================
|
187 |
+
// = AI1EC Theme URL =
|
188 |
+
// ===================
|
189 |
+
define( 'AI1EC_THEMES_URL', WP_CONTENT_URL . '/' . AI1EC_THEMES_FOLDER );
|
190 |
+
|
191 |
+
// ======================
|
192 |
+
// = Default theme path =
|
193 |
+
// ======================
|
194 |
+
define( 'AI1EC_DEFAULT_THEME_PATH', AI1EC_THEMES_ROOT . '/' . AI1EC_DEFAULT_THEME_NAME );
|
195 |
+
|
196 |
+
// =====================
|
197 |
+
// = Default theme url =
|
198 |
+
// =====================
|
199 |
+
define( 'AI1EC_DEFAULT_THEME_URL', AI1EC_THEMES_URL . '/' . AI1EC_DEFAULT_THEME_NAME );
|
200 |
|
201 |
// ================
|
202 |
// = RSS FEED URL =
|
203 |
// ================
|
204 |
+
define( 'AI1EC_RSS_FEED', 'http://feeds.feedburner.com/ai1ec' );
|
205 |
|
206 |
// ======================================
|
207 |
// = FAKE CATEGORY ID FOR CALENDAR PAGE =
|
208 |
// ======================================
|
209 |
+
define( 'AI1EC_FAKE_CATEGORY_ID', -4113473042 ); // Numeric-only 1337-speak of AI1EC_CALENDAR - ID must be numeric
|
210 |
|
211 |
// ==============
|
212 |
// = SCRIPT URL =
|
213 |
// ==============
|
214 |
$ai1ec_script_url = get_option( 'home' ) . '/?plugin=' . AI1EC_PLUGIN_NAME;
|
215 |
+
define( 'AI1EC_SCRIPT_URL', $ai1ec_script_url );
|
216 |
|
217 |
// ====================================================
|
218 |
// = Convert http:// to webcal:// in AI1EC_SCRIPT_URL =
|
223 |
// ==============
|
224 |
// = EXPORT URL =
|
225 |
// ==============
|
226 |
+
define( 'AI1EC_EXPORT_URL', $tmp . "&controller=ai1ec_exporter_controller&action=export_events&cb=" . rand() );
|
227 |
|
228 |
// ====================================
|
229 |
// = Include iCal parsers and helpers =
|
262 |
AI1EC_EXCEPTION_PATH,
|
263 |
AI1EC_LIB_PATH,
|
264 |
AI1EC_VIEW_PATH,
|
265 |
+
AI1EC_ADMIN_THEME_PATH,
|
266 |
+
get_option( 'ai1ec_current_theme_path', AI1EC_DEFAULT_THEME_PATH ),
|
267 |
+
AI1EC_DEFAULT_THEME_PATH
|
268 |
);
|
269 |
|
270 |
+
// remove duplicates from the paths array
|
271 |
+
$paths = array_unique( $paths, SORT_STRING );
|
272 |
+
|
273 |
// Search each path for the class.
|
274 |
foreach( $paths as $path ) {
|
275 |
if( file_exists( "$path/class-$class_name.php" ) )
|
276 |
+
require_once( "$path/class-$class_name.php" );
|
277 |
}
|
278 |
}
|
279 |
spl_autoload_register( 'ai1ec_autoload' );
|
291 |
// ================================
|
292 |
global $ai1ec_view_helper,
|
293 |
$ai1ec_settings_helper,
|
294 |
+
$ai1ec_calendar_helper,
|
295 |
+
$ai1ec_app_helper,
|
296 |
+
$ai1ec_events_helper,
|
297 |
+
$ai1ec_importer_helper,
|
298 |
+
$ai1ec_exporter_helper;
|
299 |
|
300 |
$ai1ec_view_helper = Ai1ec_View_Helper::get_instance();
|
301 |
$ai1ec_settings_helper = Ai1ec_Settings_Helper::get_instance();
|
305 |
$ai1ec_importer_helper = Ai1ec_Importer_Helper::get_instance();
|
306 |
$ai1ec_exporter_helper = Ai1ec_Exporter_Helper::get_instance();
|
307 |
|
|
|
308 |
// ====================================
|
309 |
// = Initialize and setup CONTROLLERS =
|
310 |
// ====================================
|
313 |
$ai1ec_events_controller,
|
314 |
$ai1ec_calendar_controller,
|
315 |
$ai1ec_importer_controller,
|
316 |
+
$ai1ec_exporter_controller,
|
317 |
+
$ai1ec_themes_controller;
|
318 |
+
|
319 |
+
$ai1ec_settings_controller = Ai1ec_Settings_Controller::get_instance();
|
320 |
+
$ai1ec_events_controller = Ai1ec_Events_Controller::get_instance();
|
321 |
+
$ai1ec_calendar_controller = Ai1ec_Calendar_Controller::get_instance();
|
322 |
+
$ai1ec_importer_controller = Ai1ec_Importer_Controller::get_instance();
|
323 |
+
$ai1ec_exporter_controller = Ai1ec_Exporter_Controller::get_instance();
|
324 |
+
$ai1ec_themes_controller = Ai1ec_Themes_Controller::get_instance();
|
325 |
+
|
326 |
+
// ==========================================================================
|
327 |
+
// = All app initialization is done in Ai1ec_App_Controller::__construct(). =
|
328 |
+
// ==========================================================================
|
329 |
$ai1ec_app_controller = Ai1ec_App_Controller::get_instance();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
app/controller/class-ai1ec-app-controller.php
CHANGED
@@ -6,7 +6,6 @@
|
|
6 |
// Created by The Seed Studio on 2011-07-13.
|
7 |
//
|
8 |
|
9 |
-
|
10 |
/**
|
11 |
* Ai1ec_App_Controller class
|
12 |
*
|
@@ -62,15 +61,16 @@ class Ai1ec_App_Controller {
|
|
62 |
* Default constructor - application initialization
|
63 |
**/
|
64 |
private function __construct()
|
65 |
-
|
66 |
global $wpdb,
|
67 |
$ai1ec_app_helper,
|
68 |
$ai1ec_events_controller,
|
69 |
$ai1ec_events_helper,
|
70 |
$ai1ec_importer_controller,
|
71 |
-
|
72 |
$ai1ec_settings_controller,
|
73 |
-
$ai1ec_settings
|
|
|
74 |
|
75 |
// register_activation_hook
|
76 |
register_activation_hook( AI1EC_PLUGIN_NAME . '/' . AI1EC_PLUGIN_NAME . '.php', array( &$this, 'activation_hook' ) );
|
@@ -86,30 +86,44 @@ class Ai1ec_App_Controller {
|
|
86 |
|
87 |
// Install/update cron as necessary
|
88 |
$this->install_cron();
|
89 |
-
|
90 |
// Enable stats collection
|
91 |
$this->install_n_cron();
|
92 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
93 |
// ===========
|
94 |
// = ACTIONS =
|
95 |
// ===========
|
|
|
|
|
96 |
// Create custom post type
|
97 |
-
add_action( 'init',
|
98 |
// Handle ICS export requests
|
99 |
-
add_action( 'init',
|
100 |
// General initialization
|
101 |
add_action( 'init', array( &$ai1ec_events_controller, 'init' ) );
|
102 |
// Load plugin text domain
|
103 |
add_action( 'init', array( &$this, 'load_textdomain' ) );
|
104 |
// Register The Event Calendar importer
|
105 |
add_action( 'admin_init', array( &$ai1ec_importer_controller, 'register_importer' ) );
|
|
|
|
|
|
|
|
|
106 |
// add content for our custom columns
|
107 |
add_action( 'manage_posts_custom_column', array( &$ai1ec_app_helper, 'custom_columns' ), 10, 2 );
|
108 |
// Add filtering dropdowns for event categories and tags
|
109 |
add_action( 'restrict_manage_posts', array( &$ai1ec_app_helper, 'taxonomy_filter_restrict_manage_posts' ) );
|
110 |
// Trigger display of page in front-end depending on request
|
111 |
add_action( 'template_redirect', array( &$this, 'route_request' ) );
|
112 |
-
// Add meta boxes to event creation/edit form
|
113 |
add_action( 'add_meta_boxes', array( &$ai1ec_app_helper, 'add_meta_boxes' ) );
|
114 |
add_filter( 'screen_layout_columns', array( &$ai1ec_app_helper, 'screen_layout_columns' ), 10, 2 );
|
115 |
// Save event data when post is saved
|
@@ -126,42 +140,44 @@ class Ai1ec_App_Controller {
|
|
126 |
add_action( 'created_events_categories', array( &$ai1ec_events_controller, 'created_events_categories' ) );
|
127 |
add_action( 'edited_events_categories', array( &$ai1ec_events_controller, 'edited_events_categories' ) );
|
128 |
add_action( 'admin_notices', array( &$ai1ec_app_helper, 'admin_notices' ) );
|
129 |
-
// Scripts/styles for settings
|
130 |
-
add_action( 'admin_enqueue_scripts', array( &$
|
131 |
// Widgets
|
132 |
-
add_action( 'widgets_init',
|
133 |
|
134 |
// ===========
|
135 |
// = FILTERS =
|
136 |
// ===========
|
137 |
-
add_filter( 'posts_orderby',
|
138 |
// add custom column names and change existing columns
|
139 |
-
add_filter( 'manage_ai1ec_event_posts_columns',
|
140 |
// filter the post lists by custom filters
|
141 |
-
add_filter( 'parse_query',
|
142 |
// Filter event post content, in single- and multi-post views
|
143 |
-
add_filter( 'the_content',
|
144 |
// Override excerpt filters for proper event display in excerpt form
|
145 |
-
add_filter( 'get_the_excerpt',
|
146 |
-
add_filter( 'the_excerpt',
|
147 |
-
remove_filter( 'the_excerpt',
|
148 |
// Update event post update messages
|
149 |
-
add_filter( 'post_updated_messages',
|
150 |
// Sort the custom columns
|
151 |
add_filter( 'manage_edit-ai1ec_event_sortable_columns', array( &$ai1ec_app_helper, 'sortable_columns' ) );
|
152 |
-
add_filter( 'map_meta_cap',
|
153 |
// Inject event categories, only in front-end, depending on setting
|
154 |
if( $ai1ec_settings->inject_categories && ! is_admin() ) {
|
155 |
add_filter( 'get_terms', array( &$ai1ec_app_helper, 'inject_categories' ), 10, 3 );
|
156 |
add_filter( 'wp_list_categories', array( &$ai1ec_app_helper, 'selected_category_link' ), 10, 2 );
|
157 |
}
|
158 |
-
// Rewrite event category URLs to point to calendar page
|
159 |
add_filter( 'term_link', array( &$ai1ec_app_helper, 'calendar_term_link' ), 10, 3 );
|
160 |
-
//
|
161 |
add_filter( 'plugin_action_links_' . AI1EC_PLUGIN_BASENAME, array( &$ai1ec_settings_controller, 'plugin_action_links' ) );
|
162 |
-
//
|
163 |
add_filter( 'plugin_row_meta', array( &$ai1ec_settings_controller, 'plugin_row_meta' ), 10, 2 );
|
164 |
add_filter( 'post_type_link', array( &$ai1ec_events_helper, 'post_type_link' ), 10, 3 );
|
|
|
|
|
165 |
|
166 |
// ========
|
167 |
// = AJAX =
|
@@ -174,22 +190,22 @@ class Ai1ec_App_Controller {
|
|
174 |
add_action( 'wp_ajax_ai1ec_flush_ics', array( &$ai1ec_settings_controller, 'flush_ics_feed' ) );
|
175 |
// Update iCalendar feed
|
176 |
add_action( 'wp_ajax_ai1ec_update_ics', array( &$ai1ec_settings_controller, 'update_ics_feed' ) );
|
177 |
-
|
178 |
// RRule to Text
|
179 |
add_action( 'wp_ajax_ai1ec_rrule_to_text', array( &$ai1ec_events_helper, 'convert_rrule_to_text' ) );
|
180 |
-
|
181 |
// Display Repeat Box
|
182 |
add_action( 'wp_ajax_ai1ec_get_repeat_box', array( &$ai1ec_events_helper, 'get_repeat_box' ) );
|
183 |
add_action( 'wp_ajax_ai1ec_get_date_picker_box', array( &$ai1ec_events_helper, 'get_date_picker_box' ) );
|
184 |
-
|
185 |
// Disable notification
|
186 |
add_action( 'wp_ajax_ai1ec_disable_notification', array( &$ai1ec_settings_controller, 'disable_notification' ) );
|
187 |
-
|
188 |
// ==============
|
189 |
// = Shortcodes =
|
190 |
// ==============
|
191 |
add_shortcode( 'ai1ec', array( &$ai1ec_events_helper, 'shortcode' ) );
|
192 |
-
|
193 |
}
|
194 |
|
195 |
/**
|
@@ -200,12 +216,11 @@ class Ai1ec_App_Controller {
|
|
200 |
* @return void
|
201 |
**/
|
202 |
function activation_hook() {
|
|
|
|
|
203 |
|
204 |
-
|
205 |
-
|
206 |
-
|
207 |
-
// flush rewrite rules
|
208 |
-
$this->rewrite_flush();
|
209 |
}
|
210 |
|
211 |
/**
|
@@ -216,11 +231,10 @@ class Ai1ec_App_Controller {
|
|
216 |
* @return void
|
217 |
**/
|
218 |
function load_textdomain() {
|
219 |
-
|
220 |
-
|
221 |
-
|
222 |
-
|
223 |
-
}
|
224 |
}
|
225 |
|
226 |
/**
|
@@ -255,30 +269,30 @@ class Ai1ec_App_Controller {
|
|
255 |
// =======================
|
256 |
$table_name = $wpdb->prefix . 'ai1ec_events';
|
257 |
$sql = "CREATE TABLE $table_name (
|
258 |
-
post_id
|
259 |
-
start
|
260 |
-
end
|
261 |
-
allday
|
262 |
-
recurrence_rules
|
263 |
-
exception_rules
|
264 |
-
recurrence_dates
|
265 |
-
exception_dates
|
266 |
-
venue
|
267 |
-
country
|
268 |
-
address
|
269 |
-
city
|
270 |
-
province
|
271 |
-
postal_code
|
272 |
-
show_map
|
273 |
-
contact_name
|
274 |
-
contact_phone
|
275 |
-
contact_email
|
276 |
-
cost
|
277 |
-
ical_feed_url
|
278 |
-
ical_source_url
|
279 |
-
ical_organizer
|
280 |
-
ical_contact
|
281 |
-
ical_uid
|
282 |
PRIMARY KEY (post_id)
|
283 |
) CHARACTER SET utf8;";
|
284 |
|
@@ -287,10 +301,10 @@ class Ai1ec_App_Controller {
|
|
287 |
// ==========================
|
288 |
$table_name = $wpdb->prefix . 'ai1ec_event_instances';
|
289 |
$sql .= "CREATE TABLE $table_name (
|
290 |
-
id
|
291 |
post_id bigint(20) NOT NULL,
|
292 |
-
start
|
293 |
-
end
|
294 |
PRIMARY KEY (id)
|
295 |
) CHARACTER SET utf8;";
|
296 |
|
@@ -299,20 +313,20 @@ class Ai1ec_App_Controller {
|
|
299 |
// ======================
|
300 |
$table_name = $wpdb->prefix . 'ai1ec_event_feeds';
|
301 |
$sql .= "CREATE TABLE $table_name (
|
302 |
-
feed_id
|
303 |
-
feed_url
|
304 |
feed_category bigint(20) NOT NULL,
|
305 |
-
feed_tags
|
306 |
PRIMARY KEY (feed_id)
|
307 |
) CHARACTER SET utf8;";
|
308 |
|
309 |
-
|
310 |
// = Create table category colors =
|
311 |
// ================================
|
312 |
$table_name = $wpdb->prefix . 'ai1ec_event_category_colors';
|
313 |
$sql .= "CREATE TABLE $table_name (
|
314 |
-
|
315 |
-
|
316 |
PRIMARY KEY (term_id)
|
317 |
) CHARACTER SET utf8;";
|
318 |
|
@@ -343,7 +357,7 @@ class Ai1ec_App_Controller {
|
|
343 |
update_option( 'ai1ec_cron_version', AI1EC_CRON_VERSION );
|
344 |
}
|
345 |
}
|
346 |
-
|
347 |
/**
|
348 |
* install_notification_cron function
|
349 |
*
|
@@ -353,19 +367,19 @@ class Ai1ec_App_Controller {
|
|
353 |
**/
|
354 |
function install_n_cron() {
|
355 |
global $ai1ec_settings;
|
356 |
-
|
357 |
// if stats are disabled, cancel the cron
|
358 |
if( $ai1ec_settings->allow_statistics == false ) {
|
359 |
// delete our scheduled crons
|
360 |
wp_clear_scheduled_hook( 'ai1ec_n_cron_version' );
|
361 |
-
|
362 |
// remove the cron version
|
363 |
delete_option( 'ai1ec_n_cron_version' );
|
364 |
-
|
365 |
// prevent the execution of the code below
|
366 |
return;
|
367 |
}
|
368 |
-
|
369 |
// If existing CRON version is not consistent with current plugin's version,
|
370 |
// or does not exist, then create/update cron using
|
371 |
if( get_option( 'ai1ec_n_cron_version' ) != AI1EC_N_CRON_VERSION ) {
|
@@ -379,44 +393,62 @@ class Ai1ec_App_Controller {
|
|
379 |
}
|
380 |
|
381 |
/**
|
382 |
-
*
|
383 |
-
* Adds the hook to admin_menu that is pointing to menu member function
|
384 |
-
*
|
385 |
-
* @return void
|
386 |
-
**/
|
387 |
-
function setup_menus() {
|
388 |
-
add_action( "admin_menu", array( &$this, "menu" ) );
|
389 |
-
}
|
390 |
-
|
391 |
-
/**
|
392 |
-
* menu function
|
393 |
* Display the admin menu items using the add_menu_page WP function.
|
394 |
*
|
395 |
* @return void
|
396 |
-
|
397 |
-
function
|
398 |
global $ai1ec_settings_controller,
|
399 |
-
|
400 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
401 |
|
402 |
// =================
|
403 |
// = Settings Page =
|
404 |
// =================
|
405 |
$ai1ec_settings->settings_page = add_submenu_page(
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
406 |
'edit.php?post_type=' . AI1EC_POST_TYPE,
|
407 |
-
__( '
|
408 |
-
__( '
|
409 |
-
'
|
410 |
-
AI1EC_PLUGIN_NAME .
|
411 |
-
array( &$
|
412 |
);
|
413 |
-
|
414 |
-
add_action( "load-{$ai1ec_settings->settings_page}", array( &$ai1ec_settings_helper, 'add_meta_boxes') );
|
415 |
-
// Load the meta boxes
|
416 |
-
add_action( "load-{$ai1ec_settings->settings_page}", array( &$ai1ec_settings_controller, 'add_meta_boxes' ) );
|
417 |
}
|
418 |
|
419 |
-
|
420 |
/**
|
421 |
* route_request function
|
422 |
*
|
@@ -427,10 +459,11 @@ class Ai1ec_App_Controller {
|
|
427 |
**/
|
428 |
function route_request() {
|
429 |
global $ai1ec_settings,
|
430 |
-
|
431 |
-
|
432 |
-
|
433 |
-
|
|
|
434 |
// regex pattern to match our shortcode [ai1ec]
|
435 |
// \[(\[?)(ai1ec)\b([^\]\/]*(?:\/(?!\])[^\]\/]*)*?)(?:(\/)\]|\](?:([^\[]*+(?:\[(?!\/\2\])[^\[]*+)*+)\[\/\2\])?)(\]?)
|
436 |
$out = array();
|
@@ -440,29 +473,29 @@ class Ai1ec_App_Controller {
|
|
440 |
|
441 |
// Find out if the calendar page ID is defined, and we're on it
|
442 |
if( $ai1ec_settings->calendar_page_id &&
|
443 |
-
|
444 |
{
|
445 |
-
|
446 |
-
|
447 |
-
|
448 |
-
|
449 |
-
|
450 |
-
|
451 |
-
|
452 |
-
|
453 |
-
|
454 |
-
|
455 |
-
|
456 |
-
|
457 |
-
|
458 |
-
|
459 |
} else if( isset( $out[2] ) && $out[2] == 'ai1ec' ) {
|
460 |
// if content has [ai1ec] shortcode, display the calendar page
|
461 |
$attr = shortcode_parse_atts( $out[3] );
|
462 |
// Proceed only if the page password is correctly entered OR
|
463 |
-
|
464 |
-
|
465 |
-
|
466 |
if( isset( $attr["view"] ) && ! empty( $attr["view"] ) ) {
|
467 |
switch( $attr["view"] ) {
|
468 |
case "monthly":
|
@@ -495,9 +528,9 @@ class Ai1ec_App_Controller {
|
|
495 |
// Parse categories by id
|
496 |
if( isset( $attr["cat_id"] ) && ! empty( $attr["cat_id"] ) ) {
|
497 |
// append cat_id to the ai1ec_cat_ids array
|
498 |
-
$_REQUEST["ai1ec_cat_ids"] = ( isset( $_REQUEST["ai1ec_cat_ids"] ) && strlen( $_REQUEST["ai1ec_cat_ids"] ) > 0 )
|
499 |
-
|
500 |
-
|
501 |
}
|
502 |
|
503 |
// Parse tags by name
|
@@ -519,25 +552,25 @@ class Ai1ec_App_Controller {
|
|
519 |
if( isset( $attr["tag_id"] ) && ! empty( $attr["tag_id"] ) ) {
|
520 |
// append tag_id to the ai1ec_tag_ids array
|
521 |
$_REQUEST["ai1ec_tag_ids"] = ( isset( $_REQUEST["ai1ec_tag_ids"] ) && strlen( $_REQUEST["ai1ec_tag_ids"] ) > 0 )
|
522 |
-
|
523 |
-
|
524 |
}
|
525 |
|
526 |
// Parse posts by id
|
527 |
if( isset( $attr["post_id"] ) && ! empty( $attr["post_id"] ) ) {
|
528 |
$_REQUEST["ai1ec_post_ids"] = $attr["post_id"];
|
529 |
}
|
530 |
-
|
531 |
-
|
532 |
-
|
533 |
-
|
534 |
-
|
535 |
-
|
536 |
-
|
537 |
-
|
538 |
-
|
539 |
-
|
540 |
-
|
541 |
}
|
542 |
}
|
543 |
|
@@ -551,16 +584,16 @@ class Ai1ec_App_Controller {
|
|
551 |
$ai1ec_app_helper;
|
552 |
|
553 |
$plugin = $ai1ec_app_helper->get_param('plugin');
|
554 |
-
|
555 |
-
|
556 |
|
557 |
if( ! empty( $plugin ) && $plugin == AI1EC_PLUGIN_NAME && ! empty( $controller ) && ! empty( $action ) ) {
|
558 |
if( $controller == "ai1ec_exporter_controller" ) :
|
559 |
-
|
560 |
-
|
561 |
-
|
562 |
-
|
563 |
-
|
564 |
endif; // ai1ec_exporter_controller
|
565 |
}
|
566 |
}
|
@@ -580,11 +613,28 @@ class Ai1ec_App_Controller {
|
|
580 |
// the calendar container div
|
581 |
if( in_the_loop() )
|
582 |
$content =
|
583 |
-
'<div id="ai1ec-container" class="ai1ec-container">' .
|
584 |
$content . $this->page_content .
|
585 |
'</div>';
|
586 |
|
587 |
return $content;
|
588 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
589 |
}
|
590 |
// END class
|
6 |
// Created by The Seed Studio on 2011-07-13.
|
7 |
//
|
8 |
|
|
|
9 |
/**
|
10 |
* Ai1ec_App_Controller class
|
11 |
*
|
61 |
* Default constructor - application initialization
|
62 |
**/
|
63 |
private function __construct()
|
64 |
+
{
|
65 |
global $wpdb,
|
66 |
$ai1ec_app_helper,
|
67 |
$ai1ec_events_controller,
|
68 |
$ai1ec_events_helper,
|
69 |
$ai1ec_importer_controller,
|
70 |
+
$ai1ec_exporter_controller,
|
71 |
$ai1ec_settings_controller,
|
72 |
+
$ai1ec_settings,
|
73 |
+
$ai1ec_themes_controller;
|
74 |
|
75 |
// register_activation_hook
|
76 |
register_activation_hook( AI1EC_PLUGIN_NAME . '/' . AI1EC_PLUGIN_NAME . '.php', array( &$this, 'activation_hook' ) );
|
86 |
|
87 |
// Install/update cron as necessary
|
88 |
$this->install_cron();
|
89 |
+
|
90 |
// Enable stats collection
|
91 |
$this->install_n_cron();
|
92 |
|
93 |
+
// Continue loading hooks only if themes are installed
|
94 |
+
// otherwise display a notification on the backend with instructions
|
95 |
+
// how to install themes
|
96 |
+
if( ! $ai1ec_themes_controller->are_themes_available() ) {
|
97 |
+
add_action( 'admin_notices', array( &$ai1ec_app_helper, 'admin_notices' ) );
|
98 |
+
return;
|
99 |
+
}
|
100 |
+
|
101 |
// ===========
|
102 |
// = ACTIONS =
|
103 |
// ===========
|
104 |
+
// Calendar theme initialization
|
105 |
+
add_action( 'after_setup_theme', array( &$ai1ec_themes_controller, 'setup_theme' ) );
|
106 |
// Create custom post type
|
107 |
+
add_action( 'init', array( &$ai1ec_app_helper, 'create_post_type' ) );
|
108 |
// Handle ICS export requests
|
109 |
+
add_action( 'init', array( &$this, 'parse_standalone_request' ) );
|
110 |
// General initialization
|
111 |
add_action( 'init', array( &$ai1ec_events_controller, 'init' ) );
|
112 |
// Load plugin text domain
|
113 |
add_action( 'init', array( &$this, 'load_textdomain' ) );
|
114 |
// Register The Event Calendar importer
|
115 |
add_action( 'admin_init', array( &$ai1ec_importer_controller, 'register_importer' ) );
|
116 |
+
// Install admin menu items.
|
117 |
+
add_action( 'admin_menu', array( &$this, 'admin_menu' ), 9 );
|
118 |
+
// Add Event counts to dashboard.
|
119 |
+
add_action( 'right_now_content_table_end', array( &$ai1ec_app_helper, 'right_now_content_table_end' ) );
|
120 |
// add content for our custom columns
|
121 |
add_action( 'manage_posts_custom_column', array( &$ai1ec_app_helper, 'custom_columns' ), 10, 2 );
|
122 |
// Add filtering dropdowns for event categories and tags
|
123 |
add_action( 'restrict_manage_posts', array( &$ai1ec_app_helper, 'taxonomy_filter_restrict_manage_posts' ) );
|
124 |
// Trigger display of page in front-end depending on request
|
125 |
add_action( 'template_redirect', array( &$this, 'route_request' ) );
|
126 |
+
// Add meta boxes to event creation/edit form.
|
127 |
add_action( 'add_meta_boxes', array( &$ai1ec_app_helper, 'add_meta_boxes' ) );
|
128 |
add_filter( 'screen_layout_columns', array( &$ai1ec_app_helper, 'screen_layout_columns' ), 10, 2 );
|
129 |
// Save event data when post is saved
|
140 |
add_action( 'created_events_categories', array( &$ai1ec_events_controller, 'created_events_categories' ) );
|
141 |
add_action( 'edited_events_categories', array( &$ai1ec_events_controller, 'edited_events_categories' ) );
|
142 |
add_action( 'admin_notices', array( &$ai1ec_app_helper, 'admin_notices' ) );
|
143 |
+
// Scripts/styles for settings and widget admin screens.
|
144 |
+
add_action( 'admin_enqueue_scripts', array( &$ai1ec_app_helper, 'admin_enqueue_scripts' ) );
|
145 |
// Widgets
|
146 |
+
add_action( 'widgets_init', create_function( '', "return register_widget( 'Ai1ec_Agenda_Widget' );" ) );
|
147 |
|
148 |
// ===========
|
149 |
// = FILTERS =
|
150 |
// ===========
|
151 |
+
add_filter( 'posts_orderby', array( &$ai1ec_app_helper, 'orderby' ), 10, 2 );
|
152 |
// add custom column names and change existing columns
|
153 |
+
add_filter( 'manage_ai1ec_event_posts_columns', array( &$ai1ec_app_helper, 'change_columns' ) );
|
154 |
// filter the post lists by custom filters
|
155 |
+
add_filter( 'parse_query', array( &$ai1ec_app_helper, 'taxonomy_filter_post_type_request' ) );
|
156 |
// Filter event post content, in single- and multi-post views
|
157 |
+
add_filter( 'the_content', array( &$ai1ec_events_controller, 'event_content' ), PHP_INT_MAX - 1 );
|
158 |
// Override excerpt filters for proper event display in excerpt form
|
159 |
+
add_filter( 'get_the_excerpt', array( &$ai1ec_events_controller, 'event_excerpt' ), 11 );
|
160 |
+
add_filter( 'the_excerpt', array( &$ai1ec_events_controller, 'event_excerpt_noautop' ), 11 );
|
161 |
+
remove_filter( 'the_excerpt', 'wpautop', 10 );
|
162 |
// Update event post update messages
|
163 |
+
add_filter( 'post_updated_messages', array( &$ai1ec_events_controller, 'post_updated_messages' ) );
|
164 |
// Sort the custom columns
|
165 |
add_filter( 'manage_edit-ai1ec_event_sortable_columns', array( &$ai1ec_app_helper, 'sortable_columns' ) );
|
166 |
+
add_filter( 'map_meta_cap', array( &$ai1ec_app_helper, 'map_meta_cap' ), 10, 4 );
|
167 |
// Inject event categories, only in front-end, depending on setting
|
168 |
if( $ai1ec_settings->inject_categories && ! is_admin() ) {
|
169 |
add_filter( 'get_terms', array( &$ai1ec_app_helper, 'inject_categories' ), 10, 3 );
|
170 |
add_filter( 'wp_list_categories', array( &$ai1ec_app_helper, 'selected_category_link' ), 10, 2 );
|
171 |
}
|
172 |
+
// Rewrite event category URLs to point to calendar page.
|
173 |
add_filter( 'term_link', array( &$ai1ec_app_helper, 'calendar_term_link' ), 10, 3 );
|
174 |
+
// Add a link to settings page on the plugin list page.
|
175 |
add_filter( 'plugin_action_links_' . AI1EC_PLUGIN_BASENAME, array( &$ai1ec_settings_controller, 'plugin_action_links' ) );
|
176 |
+
// Add a link to donate page on plugin list page.
|
177 |
add_filter( 'plugin_row_meta', array( &$ai1ec_settings_controller, 'plugin_row_meta' ), 10, 2 );
|
178 |
add_filter( 'post_type_link', array( &$ai1ec_events_helper, 'post_type_link' ), 10, 3 );
|
179 |
+
add_filter( 'ai1ec_template_root_path', array( &$ai1ec_themes_controller, 'template_root_path' ) );
|
180 |
+
add_filter( 'ai1ec_template_root_url', array( &$ai1ec_themes_controller, 'template_root_url' ) );
|
181 |
|
182 |
// ========
|
183 |
// = AJAX =
|
190 |
add_action( 'wp_ajax_ai1ec_flush_ics', array( &$ai1ec_settings_controller, 'flush_ics_feed' ) );
|
191 |
// Update iCalendar feed
|
192 |
add_action( 'wp_ajax_ai1ec_update_ics', array( &$ai1ec_settings_controller, 'update_ics_feed' ) );
|
193 |
+
|
194 |
// RRule to Text
|
195 |
add_action( 'wp_ajax_ai1ec_rrule_to_text', array( &$ai1ec_events_helper, 'convert_rrule_to_text' ) );
|
196 |
+
|
197 |
// Display Repeat Box
|
198 |
add_action( 'wp_ajax_ai1ec_get_repeat_box', array( &$ai1ec_events_helper, 'get_repeat_box' ) );
|
199 |
add_action( 'wp_ajax_ai1ec_get_date_picker_box', array( &$ai1ec_events_helper, 'get_date_picker_box' ) );
|
200 |
+
|
201 |
// Disable notification
|
202 |
add_action( 'wp_ajax_ai1ec_disable_notification', array( &$ai1ec_settings_controller, 'disable_notification' ) );
|
203 |
+
|
204 |
// ==============
|
205 |
// = Shortcodes =
|
206 |
// ==============
|
207 |
add_shortcode( 'ai1ec', array( &$ai1ec_events_helper, 'shortcode' ) );
|
208 |
+
|
209 |
}
|
210 |
|
211 |
/**
|
216 |
* @return void
|
217 |
**/
|
218 |
function activation_hook() {
|
219 |
+
// Load plugin text domain.
|
220 |
+
$this->load_textdomain();
|
221 |
|
222 |
+
// Flush rewrite rules.
|
223 |
+
$this->rewrite_flush();
|
|
|
|
|
|
|
224 |
}
|
225 |
|
226 |
/**
|
231 |
* @return void
|
232 |
**/
|
233 |
function load_textdomain() {
|
234 |
+
if( self::$_load_domain === FALSE ) {
|
235 |
+
load_plugin_textdomain( AI1EC_PLUGIN_NAME, false, AI1EC_LANGUAGE_PATH );
|
236 |
+
self::$_load_domain = TRUE;
|
237 |
+
}
|
|
|
238 |
}
|
239 |
|
240 |
/**
|
269 |
// =======================
|
270 |
$table_name = $wpdb->prefix . 'ai1ec_events';
|
271 |
$sql = "CREATE TABLE $table_name (
|
272 |
+
post_id bigint(20) NOT NULL,
|
273 |
+
start datetime NOT NULL,
|
274 |
+
end datetime,
|
275 |
+
allday tinyint(1) NOT NULL,
|
276 |
+
recurrence_rules longtext,
|
277 |
+
exception_rules longtext,
|
278 |
+
recurrence_dates longtext,
|
279 |
+
exception_dates longtext,
|
280 |
+
venue varchar(255),
|
281 |
+
country varchar(255),
|
282 |
+
address varchar(255),
|
283 |
+
city varchar(255),
|
284 |
+
province varchar(255),
|
285 |
+
postal_code varchar(32),
|
286 |
+
show_map tinyint(1),
|
287 |
+
contact_name varchar(255),
|
288 |
+
contact_phone varchar(32),
|
289 |
+
contact_email varchar(128),
|
290 |
+
cost varchar(255),
|
291 |
+
ical_feed_url varchar(255),
|
292 |
+
ical_source_url varchar(255),
|
293 |
+
ical_organizer varchar(255),
|
294 |
+
ical_contact varchar(255),
|
295 |
+
ical_uid varchar(255),
|
296 |
PRIMARY KEY (post_id)
|
297 |
) CHARACTER SET utf8;";
|
298 |
|
301 |
// ==========================
|
302 |
$table_name = $wpdb->prefix . 'ai1ec_event_instances';
|
303 |
$sql .= "CREATE TABLE $table_name (
|
304 |
+
id bigint(20) NOT NULL AUTO_INCREMENT,
|
305 |
post_id bigint(20) NOT NULL,
|
306 |
+
start datetime NOT NULL,
|
307 |
+
end datetime NOT NULL,
|
308 |
PRIMARY KEY (id)
|
309 |
) CHARACTER SET utf8;";
|
310 |
|
313 |
// ======================
|
314 |
$table_name = $wpdb->prefix . 'ai1ec_event_feeds';
|
315 |
$sql .= "CREATE TABLE $table_name (
|
316 |
+
feed_id bigint(20) NOT NULL AUTO_INCREMENT,
|
317 |
+
feed_url varchar(255) NOT NULL,
|
318 |
feed_category bigint(20) NOT NULL,
|
319 |
+
feed_tags varchar(255) NOT NULL,
|
320 |
PRIMARY KEY (feed_id)
|
321 |
) CHARACTER SET utf8;";
|
322 |
|
323 |
+
// ================================
|
324 |
// = Create table category colors =
|
325 |
// ================================
|
326 |
$table_name = $wpdb->prefix . 'ai1ec_event_category_colors';
|
327 |
$sql .= "CREATE TABLE $table_name (
|
328 |
+
term_id bigint(20) NOT NULL,
|
329 |
+
term_color varchar(255) NOT NULL,
|
330 |
PRIMARY KEY (term_id)
|
331 |
) CHARACTER SET utf8;";
|
332 |
|
357 |
update_option( 'ai1ec_cron_version', AI1EC_CRON_VERSION );
|
358 |
}
|
359 |
}
|
360 |
+
|
361 |
/**
|
362 |
* install_notification_cron function
|
363 |
*
|
367 |
**/
|
368 |
function install_n_cron() {
|
369 |
global $ai1ec_settings;
|
370 |
+
|
371 |
// if stats are disabled, cancel the cron
|
372 |
if( $ai1ec_settings->allow_statistics == false ) {
|
373 |
// delete our scheduled crons
|
374 |
wp_clear_scheduled_hook( 'ai1ec_n_cron_version' );
|
375 |
+
|
376 |
// remove the cron version
|
377 |
delete_option( 'ai1ec_n_cron_version' );
|
378 |
+
|
379 |
// prevent the execution of the code below
|
380 |
return;
|
381 |
}
|
382 |
+
|
383 |
// If existing CRON version is not consistent with current plugin's version,
|
384 |
// or does not exist, then create/update cron using
|
385 |
if( get_option( 'ai1ec_n_cron_version' ) != AI1EC_N_CRON_VERSION ) {
|
393 |
}
|
394 |
|
395 |
/**
|
396 |
+
* admin_menu function
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
397 |
* Display the admin menu items using the add_menu_page WP function.
|
398 |
*
|
399 |
* @return void
|
400 |
+
*/
|
401 |
+
function admin_menu() {
|
402 |
global $ai1ec_settings_controller,
|
403 |
+
$ai1ec_settings_helper,
|
404 |
+
$ai1ec_settings,
|
405 |
+
$ai1ec_themes_controller;
|
406 |
+
|
407 |
+
// =======================
|
408 |
+
// = Calendar Feeds Page =
|
409 |
+
// =======================
|
410 |
+
$ai1ec_settings->feeds_page = add_submenu_page(
|
411 |
+
'edit.php?post_type=' . AI1EC_POST_TYPE,
|
412 |
+
__( 'Calendar Feeds', AI1EC_PLUGIN_NAME ),
|
413 |
+
__( 'Calendar Feeds', AI1EC_PLUGIN_NAME ),
|
414 |
+
'manage_ai1ec_feeds',
|
415 |
+
AI1EC_PLUGIN_NAME . '-feeds',
|
416 |
+
array( &$ai1ec_settings_controller, 'view_feeds' )
|
417 |
+
);
|
418 |
+
// Allow feeds page to have additional meta boxes added to it.
|
419 |
+
add_action( "load-{$ai1ec_settings->feeds_page}", array( &$ai1ec_settings_helper, 'add_feeds_meta_boxes') );
|
420 |
+
// Load our plugin's meta boxes.
|
421 |
+
add_action( "load-{$ai1ec_settings->feeds_page}", array( &$ai1ec_settings_controller, 'add_feeds_meta_boxes' ) );
|
422 |
|
423 |
// =================
|
424 |
// = Settings Page =
|
425 |
// =================
|
426 |
$ai1ec_settings->settings_page = add_submenu_page(
|
427 |
+
'options-general.php',
|
428 |
+
__( 'Calendar', AI1EC_PLUGIN_NAME ),
|
429 |
+
__( 'Calendar', AI1EC_PLUGIN_NAME ),
|
430 |
+
'manage_ai1ec_options',
|
431 |
+
AI1EC_PLUGIN_NAME . '-settings',
|
432 |
+
array( &$ai1ec_settings_controller, 'view_settings' )
|
433 |
+
);
|
434 |
+
// Allow settings page to have additional meta boxes added to it.
|
435 |
+
add_action( "load-{$ai1ec_settings->settings_page}", array( &$ai1ec_settings_helper, 'add_settings_meta_boxes') );
|
436 |
+
// Load our plugin's meta boxes.
|
437 |
+
add_action( "load-{$ai1ec_settings->settings_page}", array( &$ai1ec_settings_controller, 'add_settings_meta_boxes' ) );
|
438 |
+
// ========================
|
439 |
+
// = Calendar Update Page =
|
440 |
+
// ========================
|
441 |
+
add_submenu_page(
|
442 |
'edit.php?post_type=' . AI1EC_POST_TYPE,
|
443 |
+
__( 'Upgrade', AI1EC_PLUGIN_NAME ),
|
444 |
+
__( 'Upgrade', AI1EC_PLUGIN_NAME ),
|
445 |
+
'update_plugins',
|
446 |
+
AI1EC_PLUGIN_NAME . '-upgrade',
|
447 |
+
array( &$this, 'upgrade' )
|
448 |
);
|
449 |
+
remove_submenu_page( 'edit.php?post_type=' . AI1EC_POST_TYPE, AI1EC_PLUGIN_NAME . '-upgrade' );
|
|
|
|
|
|
|
450 |
}
|
451 |
|
|
|
452 |
/**
|
453 |
* route_request function
|
454 |
*
|
459 |
**/
|
460 |
function route_request() {
|
461 |
global $ai1ec_settings,
|
462 |
+
$ai1ec_calendar_controller,
|
463 |
+
$ai1ec_events_controller,
|
464 |
+
$ai1ec_events_helper,
|
465 |
+
$post;
|
466 |
+
|
467 |
// regex pattern to match our shortcode [ai1ec]
|
468 |
// \[(\[?)(ai1ec)\b([^\]\/]*(?:\/(?!\])[^\]\/]*)*?)(?:(\/)\]|\](?:([^\[]*+(?:\[(?!\/\2\])[^\[]*+)*+)\[\/\2\])?)(\]?)
|
469 |
$out = array();
|
473 |
|
474 |
// Find out if the calendar page ID is defined, and we're on it
|
475 |
if( $ai1ec_settings->calendar_page_id &&
|
476 |
+
is_page( $ai1ec_settings->calendar_page_id ) )
|
477 |
{
|
478 |
+
// Proceed only if the page password is correctly entered OR
|
479 |
+
// the page doesn't require a password
|
480 |
+
if( ! post_password_required( $ai1ec_settings->calendar_page_id ) ) {
|
481 |
+
ob_start();
|
482 |
+
// Render view
|
483 |
+
$ai1ec_calendar_controller->view();
|
484 |
+
// Save page content to local variable
|
485 |
+
$this->page_content = ob_get_contents();
|
486 |
+
ob_end_clean();
|
487 |
+
|
488 |
+
// Replace page content - make sure it happens at (almost) the very end of
|
489 |
+
// page content filters (some themes are overly ambitious here)
|
490 |
+
add_filter( 'the_content', array( &$this, 'append_content' ), PHP_INT_MAX - 1 );
|
491 |
+
}
|
492 |
} else if( isset( $out[2] ) && $out[2] == 'ai1ec' ) {
|
493 |
// if content has [ai1ec] shortcode, display the calendar page
|
494 |
$attr = shortcode_parse_atts( $out[3] );
|
495 |
// Proceed only if the page password is correctly entered OR
|
496 |
+
// the page doesn't require a password
|
497 |
+
if( ! post_password_required( $post->ID ) ) {
|
498 |
+
ob_start();
|
499 |
if( isset( $attr["view"] ) && ! empty( $attr["view"] ) ) {
|
500 |
switch( $attr["view"] ) {
|
501 |
case "monthly":
|
528 |
// Parse categories by id
|
529 |
if( isset( $attr["cat_id"] ) && ! empty( $attr["cat_id"] ) ) {
|
530 |
// append cat_id to the ai1ec_cat_ids array
|
531 |
+
$_REQUEST["ai1ec_cat_ids"] = ( isset( $_REQUEST["ai1ec_cat_ids"] ) && strlen( $_REQUEST["ai1ec_cat_ids"] ) > 0 )
|
532 |
+
? $_REQUEST["ai1ec_cat_ids"] . ',' . $attr["cat_id"]
|
533 |
+
: $attr["cat_id"];
|
534 |
}
|
535 |
|
536 |
// Parse tags by name
|
552 |
if( isset( $attr["tag_id"] ) && ! empty( $attr["tag_id"] ) ) {
|
553 |
// append tag_id to the ai1ec_tag_ids array
|
554 |
$_REQUEST["ai1ec_tag_ids"] = ( isset( $_REQUEST["ai1ec_tag_ids"] ) && strlen( $_REQUEST["ai1ec_tag_ids"] ) > 0 )
|
555 |
+
? $_REQUEST["ai1ec_tag_ids"] . ',' . $attr["tag_id"]
|
556 |
+
: $attr["tag_id"];
|
557 |
}
|
558 |
|
559 |
// Parse posts by id
|
560 |
if( isset( $attr["post_id"] ) && ! empty( $attr["post_id"] ) ) {
|
561 |
$_REQUEST["ai1ec_post_ids"] = $attr["post_id"];
|
562 |
}
|
563 |
+
|
564 |
+
// Render view
|
565 |
+
$ai1ec_calendar_controller->view();
|
566 |
+
// Save page content to local variable
|
567 |
+
$this->page_content = ob_get_contents();
|
568 |
+
ob_end_clean();
|
569 |
+
|
570 |
+
// Replace page content - make sure it happens at (almost) the very end of
|
571 |
+
// page content filters (some themes are overly ambitious here)
|
572 |
+
add_filter( 'the_content', array( &$this, 'append_content' ), PHP_INT_MAX - 1 );
|
573 |
+
}
|
574 |
}
|
575 |
}
|
576 |
|
584 |
$ai1ec_app_helper;
|
585 |
|
586 |
$plugin = $ai1ec_app_helper->get_param('plugin');
|
587 |
+
$action = $ai1ec_app_helper->get_param('action');
|
588 |
+
$controller = $ai1ec_app_helper->get_param('controller');
|
589 |
|
590 |
if( ! empty( $plugin ) && $plugin == AI1EC_PLUGIN_NAME && ! empty( $controller ) && ! empty( $action ) ) {
|
591 |
if( $controller == "ai1ec_exporter_controller" ) :
|
592 |
+
switch( $action ) :
|
593 |
+
case 'export_events':
|
594 |
+
$ai1ec_exporter_controller->export_events();
|
595 |
+
break;
|
596 |
+
endswitch;
|
597 |
endif; // ai1ec_exporter_controller
|
598 |
}
|
599 |
}
|
613 |
// the calendar container div
|
614 |
if( in_the_loop() )
|
615 |
$content =
|
616 |
+
'<div id="ai1ec-container" class="ai1ec-container thenly">' .
|
617 |
$content . $this->page_content .
|
618 |
'</div>';
|
619 |
|
620 |
return $content;
|
621 |
}
|
622 |
+
|
623 |
+
/**
|
624 |
+
* upgrade function
|
625 |
+
*
|
626 |
+
* @return void
|
627 |
+
**/
|
628 |
+
function upgrade() {
|
629 |
+
// continue only if user can update plugins
|
630 |
+
if ( ! current_user_can( 'update_plugins' ) )
|
631 |
+
wp_die( __( 'You do not have sufficient permissions to update plugins for this site.' ) );
|
632 |
+
// use our custom class
|
633 |
+
$upgrader = new Ai1ec_Updater();
|
634 |
+
// update the plugin
|
635 |
+
$upgrader->upgrade( 'all-in-one-event-calendar' );
|
636 |
+
// give user a way out of the page
|
637 |
+
echo '<a href="' . admin_url( 'edit.php?post_type=' . AI1EC_POST_TYPE ) . '">Continue here</a>';
|
638 |
+
}
|
639 |
}
|
640 |
// END class
|
app/controller/class-ai1ec-calendar-controller.php
CHANGED
@@ -214,8 +214,20 @@ class Ai1ec_Calendar_Controller {
|
|
214 |
foreach( $categories as &$cat ) {
|
215 |
$cat->color = $ai1ec_events_helper->get_category_color_square( $cat->term_id );
|
216 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
217 |
// Define new arguments for overall calendar view
|
218 |
$args = array(
|
|
|
|
|
219 |
'view' => $view,
|
220 |
'create_event_url' => $create_event_url,
|
221 |
'categories' => $categories,
|
@@ -223,11 +235,12 @@ class Ai1ec_Calendar_Controller {
|
|
223 |
'selected_cat_ids' => $cat_ids,
|
224 |
'selected_tag_ids' => $tag_ids,
|
225 |
'selected_post_ids' => $post_ids,
|
226 |
-
'show_subscribe_buttons' => ! $ai1ec_settings->turn_off_subscription_buttons
|
|
|
227 |
);
|
228 |
|
229 |
// Feed month view into generic calendar view
|
230 |
-
echo apply_filters( 'ai1ec_view', $ai1ec_view_helper->
|
231 |
}
|
232 |
|
233 |
/**
|
@@ -285,7 +298,8 @@ class Ai1ec_Calendar_Controller {
|
|
285 |
'active_event' => $active_event,
|
286 |
'post_ids' => join( ',', $post_ids ),
|
287 |
);
|
288 |
-
|
|
|
289 |
}
|
290 |
|
291 |
/**
|
@@ -314,8 +328,8 @@ class Ai1ec_Calendar_Controller {
|
|
314 |
$ai1ec_events_helper,
|
315 |
$ai1ec_calendar_helper;
|
316 |
|
317 |
-
$defaults = array(
|
318 |
-
'oneday_offset' => 0,
|
319 |
'active_event' => null,
|
320 |
'categories' => array(),
|
321 |
'tags' => array(),
|
@@ -347,7 +361,7 @@ class Ai1ec_Calendar_Controller {
|
|
347 |
'done_allday_label' => false,
|
348 |
'done_grid' => false
|
349 |
);
|
350 |
-
return apply_filters( 'ai1ec_get_oneday_view', $ai1ec_view_helper->
|
351 |
}
|
352 |
|
353 |
/**
|
@@ -413,7 +427,7 @@ class Ai1ec_Calendar_Controller {
|
|
413 |
'done_allday_label' => false,
|
414 |
'done_grid' => false
|
415 |
);
|
416 |
-
return apply_filters( 'ai1ec_get_week_view', $ai1ec_view_helper->
|
417 |
}
|
418 |
|
419 |
/**
|
@@ -466,9 +480,9 @@ class Ai1ec_Calendar_Controller {
|
|
466 |
'pagination_links' => $pagination_links,
|
467 |
'active_event' => $active_event,
|
468 |
'expanded' => $ai1ec_settings->agenda_events_expanded,
|
469 |
-
'post_ids' => join( ',', $post_ids )
|
470 |
);
|
471 |
-
return apply_filters( 'ai1ec_get_agenda_view', $ai1ec_view_helper->
|
472 |
}
|
473 |
|
474 |
/**
|
@@ -642,13 +656,12 @@ class Ai1ec_Calendar_Controller {
|
|
642 |
* CSS rules necessary for calendar container replacement.
|
643 |
*
|
644 |
* @return void
|
645 |
-
|
646 |
-
function load_css()
|
647 |
-
|
648 |
-
global $ai1ec_settings;
|
649 |
|
650 |
-
|
651 |
-
|
652 |
|
653 |
if( $ai1ec_settings->calendar_css_selector )
|
654 |
add_action( 'wp_head', array( &$this, 'selector_css' ) );
|
@@ -663,7 +676,7 @@ class Ai1ec_Calendar_Controller {
|
|
663 |
function selector_css() {
|
664 |
global $ai1ec_view_helper, $ai1ec_settings;
|
665 |
|
666 |
-
$ai1ec_view_helper->
|
667 |
'selector.css',
|
668 |
array( 'selector' => $ai1ec_settings->calendar_css_selector )
|
669 |
);
|
@@ -678,17 +691,17 @@ class Ai1ec_Calendar_Controller {
|
|
678 |
**/
|
679 |
function load_js()
|
680 |
{
|
681 |
-
global $ai1ec_settings;
|
682 |
|
683 |
// Include dependent scripts (jQuery plugins, modernizr)
|
684 |
-
|
685 |
-
|
686 |
-
|
687 |
-
|
688 |
-
|
689 |
// Include custom script
|
690 |
-
|
691 |
-
array( 'jquery', 'jquery.scrollTo', 'jquery.tableScroll', 'modernizr.custom.78720' )
|
692 |
|
693 |
$data = array(
|
694 |
// Point script to AJAX URL - use relative to plugin URL to fix domain mapping issues
|
214 |
foreach( $categories as &$cat ) {
|
215 |
$cat->color = $ai1ec_events_helper->get_category_color_square( $cat->term_id );
|
216 |
}
|
217 |
+
|
218 |
+
// Supply view names and current view.
|
219 |
+
$view_names = array(
|
220 |
+
'month' => __( 'Month', AI1EC_PLUGIN_NAME ),
|
221 |
+
'week' => __( 'Week', AI1EC_PLUGIN_NAME ),
|
222 |
+
'oneday' => __( 'Day', AI1EC_PLUGIN_NAME ),
|
223 |
+
'agenda' => __( 'Agenda', AI1EC_PLUGIN_NAME ),
|
224 |
+
);
|
225 |
+
$current_view = substr( $this->request['action'], 6 );
|
226 |
+
|
227 |
// Define new arguments for overall calendar view
|
228 |
$args = array(
|
229 |
+
'view_names' => $view_names,
|
230 |
+
'current_view' => $current_view,
|
231 |
'view' => $view,
|
232 |
'create_event_url' => $create_event_url,
|
233 |
'categories' => $categories,
|
235 |
'selected_cat_ids' => $cat_ids,
|
236 |
'selected_tag_ids' => $tag_ids,
|
237 |
'selected_post_ids' => $post_ids,
|
238 |
+
'show_subscribe_buttons' => ! $ai1ec_settings->turn_off_subscription_buttons,
|
239 |
+
'ai1ec_view_helper' => $ai1ec_view_helper,
|
240 |
);
|
241 |
|
242 |
// Feed month view into generic calendar view
|
243 |
+
echo apply_filters( 'ai1ec_view', $ai1ec_view_helper->get_theme_view( 'calendar.php', $args ), $args );
|
244 |
}
|
245 |
|
246 |
/**
|
298 |
'active_event' => $active_event,
|
299 |
'post_ids' => join( ',', $post_ids ),
|
300 |
);
|
301 |
+
|
302 |
+
return apply_filters( 'ai1ec_get_month_view', $ai1ec_view_helper->get_theme_view( 'month.php', $view_args ), $view_args );
|
303 |
}
|
304 |
|
305 |
/**
|
328 |
$ai1ec_events_helper,
|
329 |
$ai1ec_calendar_helper;
|
330 |
|
331 |
+
$defaults = array(
|
332 |
+
'oneday_offset' => 0,
|
333 |
'active_event' => null,
|
334 |
'categories' => array(),
|
335 |
'tags' => array(),
|
361 |
'done_allday_label' => false,
|
362 |
'done_grid' => false
|
363 |
);
|
364 |
+
return apply_filters( 'ai1ec_get_oneday_view', $ai1ec_view_helper->get_theme_view( 'oneday.php', $view_args ), $view_args );
|
365 |
}
|
366 |
|
367 |
/**
|
427 |
'done_allday_label' => false,
|
428 |
'done_grid' => false
|
429 |
);
|
430 |
+
return apply_filters( 'ai1ec_get_week_view', $ai1ec_view_helper->get_theme_view( 'week.php', $view_args ), $view_args );
|
431 |
}
|
432 |
|
433 |
/**
|
480 |
'pagination_links' => $pagination_links,
|
481 |
'active_event' => $active_event,
|
482 |
'expanded' => $ai1ec_settings->agenda_events_expanded,
|
483 |
+
'post_ids' => join( ',', $post_ids )
|
484 |
);
|
485 |
+
return apply_filters( 'ai1ec_get_agenda_view', $ai1ec_view_helper->get_theme_view( 'agenda.php', $args ), $args );
|
486 |
}
|
487 |
|
488 |
/**
|
656 |
* CSS rules necessary for calendar container replacement.
|
657 |
*
|
658 |
* @return void
|
659 |
+
*/
|
660 |
+
function load_css() {
|
661 |
+
global $ai1ec_settings, $ai1ec_view_helper;
|
|
|
662 |
|
663 |
+
$ai1ec_view_helper->theme_enqueue_style( 'ai1ec-general', 'general.css' );
|
664 |
+
$ai1ec_view_helper->theme_enqueue_style( 'ai1ec-calendar', 'calendar.css' );
|
665 |
|
666 |
if( $ai1ec_settings->calendar_css_selector )
|
667 |
add_action( 'wp_head', array( &$this, 'selector_css' ) );
|
676 |
function selector_css() {
|
677 |
global $ai1ec_view_helper, $ai1ec_settings;
|
678 |
|
679 |
+
$ai1ec_view_helper->display_admin_css(
|
680 |
'selector.css',
|
681 |
array( 'selector' => $ai1ec_settings->calendar_css_selector )
|
682 |
);
|
691 |
**/
|
692 |
function load_js()
|
693 |
{
|
694 |
+
global $ai1ec_settings, $ai1ec_view_helper;
|
695 |
|
696 |
// Include dependent scripts (jQuery plugins, modernizr)
|
697 |
+
$ai1ec_view_helper->theme_enqueue_script( 'jquery.scrollTo', 'jquery.scrollTo-min.js', array( 'jquery' ) );
|
698 |
+
$ai1ec_view_helper->theme_enqueue_script( 'jquery.tableScroll', 'jquery.tablescroll.js', array( 'jquery' ) );
|
699 |
+
$ai1ec_view_helper->theme_enqueue_script( 'modernizr.custom.78720', 'modernizr.custom.78720.js' );
|
700 |
+
// Include element selector function
|
701 |
+
$ai1ec_view_helper->admin_enqueue_script( 'ai1ec-element-selector', 'element-selector.js', array( 'jquery' ) );
|
702 |
// Include custom script
|
703 |
+
$ai1ec_view_helper->theme_enqueue_script( 'ai1ec-calendar', 'calendar.min.js',
|
704 |
+
array( 'jquery', 'jquery.scrollTo', 'jquery.tableScroll', 'modernizr.custom.78720' ) );
|
705 |
|
706 |
$data = array(
|
707 |
// Point script to AJAX URL - use relative to plugin URL to fix domain mapping issues
|
app/controller/class-ai1ec-events-controller.php
CHANGED
@@ -94,9 +94,9 @@ class Ai1ec_Events_Controller {
|
|
94 |
*
|
95 |
* @return void
|
96 |
**/
|
97 |
-
function init()
|
98 |
{
|
99 |
-
global $ai1ec_events_helper, $ai1ec_settings, $wp_locale;
|
100 |
|
101 |
// Initialize dashboard view
|
102 |
if( is_admin() ) {
|
@@ -104,67 +104,68 @@ class Ai1ec_Events_Controller {
|
|
104 |
// = JS =
|
105 |
// ======
|
106 |
// Include timespan helper functions
|
107 |
-
|
108 |
// Include timespan plugin
|
109 |
-
|
110 |
// Include timespan plugin
|
111 |
-
|
112 |
// Include Google Maps API
|
113 |
-
wp_enqueue_script( 'gmap_api',
|
114 |
// Include autocomplete_geomod plugin
|
115 |
-
|
116 |
// Include geo_autocomplete plugin
|
117 |
-
|
118 |
// Include element selector function
|
119 |
-
|
120 |
// Include jQuery Tools form elements
|
121 |
-
|
122 |
// Include add new event script
|
123 |
-
|
124 |
// Include date picker plugin
|
125 |
-
|
126 |
-
|
127 |
-
|
128 |
-
'jquery.timespan',
|
129 |
-
'ai1ec-element-selector',
|
130 |
-
'jquery.tools-form',
|
131 |
'ai1ec-blockui',
|
132 |
-
'ai1ec-datepicker' )
|
133 |
|
134 |
-
|
135 |
|
136 |
// Supply custom value to JavaScript from PHP
|
137 |
wp_localize_script( 'ai1ec-add_new_event', 'ai1ec_add_new_event', array(
|
138 |
// Current time, used for date/time pickers
|
139 |
-
'now'
|
140 |
// Date format for date pickers
|
141 |
-
'date_format'
|
142 |
// Names for months in date picker header (escaping is done in wp_localize_script)
|
143 |
-
'month_names'
|
144 |
// Names for days in date picker header (escaping is done in wp_localize_script)
|
145 |
-
'day_names'
|
146 |
// Start the week on this day in the date picker
|
147 |
-
'week_start_day'
|
148 |
// 24h time format for time pickers
|
149 |
-
'twentyfour_hour'
|
150 |
// Set region biasing for geo_autocomplete plugin
|
151 |
-
'region'
|
152 |
// ICS feed error messages
|
153 |
-
'duplicate_feed_message'
|
154 |
-
'invalid_url_message'
|
|
|
155 |
) );
|
156 |
|
157 |
// =======
|
158 |
// = CSS =
|
159 |
// =======
|
160 |
// include autocomplete style
|
161 |
-
|
162 |
// include colorpicker style
|
163 |
-
|
164 |
// include add new event style
|
165 |
-
|
166 |
// include datepicker style
|
167 |
-
|
168 |
}
|
169 |
// Initialize front-end view
|
170 |
else
|
@@ -172,7 +173,7 @@ class Ai1ec_Events_Controller {
|
|
172 |
// ======
|
173 |
// = JS =
|
174 |
// ======
|
175 |
-
|
176 |
// Supply custom value to JavaScript from PHP
|
177 |
wp_localize_script( 'ai1ec-event', 'ai1ec_event', array(
|
178 |
// Language for Google Map
|
@@ -182,8 +183,12 @@ class Ai1ec_Events_Controller {
|
|
182 |
// =======
|
183 |
// = CSS =
|
184 |
// =======
|
185 |
-
|
186 |
-
|
|
|
|
|
|
|
|
|
187 |
}
|
188 |
}
|
189 |
|
@@ -236,9 +241,12 @@ class Ai1ec_Events_Controller {
|
|
236 |
|
237 |
$all_day_event = $event->allday ? 'checked="checked"' : '';
|
238 |
|
|
|
239 |
$start_timestamp = $ai1ec_events_helper->gmt_to_local( $event->start );
|
240 |
$end_timestamp = $ai1ec_events_helper->gmt_to_local( $event->end );
|
241 |
|
|
|
|
|
242 |
$show_map = $event->show_map;
|
243 |
$google_map = $show_map ? 'checked="checked"' : '';
|
244 |
|
@@ -290,22 +298,22 @@ class Ai1ec_Events_Controller {
|
|
290 |
'timezone' => $timezone,
|
291 |
'exdate' => $exdate
|
292 |
);
|
293 |
-
$ai1ec_view_helper->
|
294 |
|
295 |
// =================================================
|
296 |
// = Display event location details and Google map =
|
297 |
// =================================================
|
298 |
$args = array(
|
299 |
-
'venue'
|
300 |
-
'country'
|
301 |
-
'address'
|
302 |
-
'city'
|
303 |
-
'province'
|
304 |
-
'postal_code'
|
305 |
-
'google_map'
|
306 |
-
'show_map'
|
307 |
);
|
308 |
-
$ai1ec_view_helper->
|
309 |
|
310 |
// ======================
|
311 |
// = Display event cost =
|
@@ -313,7 +321,7 @@ class Ai1ec_Events_Controller {
|
|
313 |
$args = array(
|
314 |
'cost' => $cost
|
315 |
);
|
316 |
-
$ai1ec_view_helper->
|
317 |
|
318 |
// =========================================
|
319 |
// = Display organizer contact information =
|
@@ -323,7 +331,7 @@ class Ai1ec_Events_Controller {
|
|
323 |
'contact_phone' => $contact_phone,
|
324 |
'contact_email' => $contact_email,
|
325 |
);
|
326 |
-
$ai1ec_view_helper->
|
327 |
|
328 |
if( $ai1ec_settings->show_publish_button ) {
|
329 |
$args = array();
|
@@ -334,7 +342,7 @@ class Ai1ec_Events_Controller {
|
|
334 |
else
|
335 |
$args["button_value"] = __( 'Submit for Review', AI1EC_PLUGIN_NAME );
|
336 |
|
337 |
-
$ai1ec_view_helper->
|
338 |
}
|
339 |
|
340 |
/*
|
@@ -436,6 +444,7 @@ class Ai1ec_Events_Controller {
|
|
436 |
$event->recurrence_rules = $rrule;
|
437 |
$event->exception_rules = $exrule;
|
438 |
$event->exception_dates = $exdate;
|
|
|
439 |
$event->save( ! $is_new );
|
440 |
|
441 |
$ai1ec_events_helper->delete_event_cache( $post_id );
|
@@ -611,7 +620,7 @@ class Ai1ec_Events_Controller {
|
|
611 |
'google_url' => 'http://www.google.com/calendar/render?cid=' . urlencode( $subscribe_url ),
|
612 |
'show_subscribe_buttons' => ! $ai1ec_settings->turn_off_subscription_buttons
|
613 |
);
|
614 |
-
$ai1ec_view_helper->
|
615 |
}
|
616 |
|
617 |
/**
|
@@ -640,7 +649,7 @@ class Ai1ec_Events_Controller {
|
|
640 |
'contact' => $event->contact_html,
|
641 |
'calendar_url' => $ai1ec_calendar_helper->get_calendar_url( $event ),
|
642 |
);
|
643 |
-
$ai1ec_view_helper->
|
644 |
}
|
645 |
|
646 |
/**
|
@@ -661,10 +670,10 @@ class Ai1ec_Events_Controller {
|
|
661 |
$location = str_replace( "\n", ', ', rtrim( $event->location ) );
|
662 |
|
663 |
$args = array(
|
664 |
-
'event'
|
665 |
'location' => $location,
|
666 |
);
|
667 |
-
$ai1ec_view_helper->
|
668 |
}
|
669 |
|
670 |
/**
|
@@ -683,11 +692,11 @@ class Ai1ec_Events_Controller {
|
|
683 |
return '';
|
684 |
|
685 |
$args = array(
|
686 |
-
'address'
|
687 |
-
'gmap_url_link'
|
688 |
-
'hide_maps_until_clicked' => $ai1ec_settings->hide_maps_until_clicked
|
689 |
);
|
690 |
-
return $ai1ec_view_helper->
|
691 |
}
|
692 |
|
693 |
/**
|
@@ -705,7 +714,7 @@ class Ai1ec_Events_Controller {
|
|
705 |
$args = array(
|
706 |
'event' => &$event,
|
707 |
);
|
708 |
-
return $ai1ec_view_helper->
|
709 |
}
|
710 |
|
711 |
/**
|
@@ -719,7 +728,7 @@ class Ai1ec_Events_Controller {
|
|
719 |
global $ai1ec_view_helper;
|
720 |
|
721 |
$args = array( 'edit' => false );
|
722 |
-
$ai1ec_view_helper->
|
723 |
}
|
724 |
|
725 |
/**
|
@@ -742,12 +751,13 @@ class Ai1ec_Events_Controller {
|
|
742 |
$style = 'style="background-color: ' . $color . '"';
|
743 |
$clr = $color;
|
744 |
}
|
|
|
745 |
$args = array(
|
746 |
'style' => $style,
|
747 |
'color' => $clr,
|
748 |
'edit' => true,
|
749 |
);
|
750 |
-
$ai1ec_view_helper->
|
751 |
}
|
752 |
|
753 |
/**
|
94 |
*
|
95 |
* @return void
|
96 |
**/
|
97 |
+
public function init()
|
98 |
{
|
99 |
+
global $ai1ec_events_helper, $ai1ec_settings, $wp_locale, $ai1ec_view_helper;
|
100 |
|
101 |
// Initialize dashboard view
|
102 |
if( is_admin() ) {
|
104 |
// = JS =
|
105 |
// ======
|
106 |
// Include timespan helper functions
|
107 |
+
$ai1ec_view_helper->admin_enqueue_script( 'jquery.calendrical', 'jquery.calendrical.js', array( 'jquery' ) );
|
108 |
// Include timespan plugin
|
109 |
+
$ai1ec_view_helper->admin_enqueue_script( 'jquery.timespan', 'jquery.timespan.js', array( 'jquery', 'jquery.calendrical' ) );
|
110 |
// Include timespan plugin
|
111 |
+
$ai1ec_view_helper->admin_enqueue_script( 'jquery.inputdate', 'jquery.inputdate.js', array( 'jquery', 'jquery.calendrical' ) );
|
112 |
// Include Google Maps API
|
113 |
+
wp_enqueue_script( 'gmap_api', 'http://maps.google.com/maps/api/js?sensor=false&language=' . $ai1ec_events_helper->get_lang() );
|
114 |
// Include autocomplete_geomod plugin
|
115 |
+
$ai1ec_view_helper->admin_enqueue_script( 'autocomplete_geomod', 'jquery.autocomplete_geomod.js', array( 'jquery' ) );
|
116 |
// Include geo_autocomplete plugin
|
117 |
+
$ai1ec_view_helper->admin_enqueue_script( 'geo_autocomplete', 'geo_autocomplete.js', array( 'jquery', 'autocomplete_geomod' ) );
|
118 |
// Include element selector function
|
119 |
+
$ai1ec_view_helper->admin_enqueue_script( 'ai1ec-element-selector', 'element-selector.js', array( 'jquery' ) );
|
120 |
// Include jQuery Tools form elements
|
121 |
+
$ai1ec_view_helper->admin_enqueue_script( 'jquery.tools-form', 'jquery-tools-1.2.5.min.js', array( 'jquery' ) );
|
122 |
// Include add new event script
|
123 |
+
$ai1ec_view_helper->admin_enqueue_script( 'ai1ec-blockui', 'jquery.blockUI.js', array( 'jquery' ) );
|
124 |
// Include date picker plugin
|
125 |
+
$ai1ec_view_helper->admin_enqueue_script( 'ai1ec-datepicker', 'datepicker.js', array( 'jquery' ) );
|
126 |
+
|
127 |
+
$ai1ec_view_helper->admin_enqueue_script( 'ai1ec-add_new_event', 'add_new_event.js', array( 'jquery',
|
128 |
+
'jquery.timespan',
|
129 |
+
'ai1ec-element-selector',
|
130 |
+
'jquery.tools-form',
|
131 |
'ai1ec-blockui',
|
132 |
+
'ai1ec-datepicker' ) );
|
133 |
|
134 |
+
$ai1ec_view_helper->admin_enqueue_script( 'ai1ec-color-picker', 'colorpicker.js', array( 'jquery' ) );
|
135 |
|
136 |
// Supply custom value to JavaScript from PHP
|
137 |
wp_localize_script( 'ai1ec-add_new_event', 'ai1ec_add_new_event', array(
|
138 |
// Current time, used for date/time pickers
|
139 |
+
'now' => $ai1ec_events_helper->gmt_to_local( time() ),
|
140 |
// Date format for date pickers
|
141 |
+
'date_format' => $ai1ec_settings->input_date_format,
|
142 |
// Names for months in date picker header (escaping is done in wp_localize_script)
|
143 |
+
'month_names' => implode( ',', $wp_locale->month ),
|
144 |
// Names for days in date picker header (escaping is done in wp_localize_script)
|
145 |
+
'day_names' => implode( ',', $wp_locale->weekday_initial ),
|
146 |
// Start the week on this day in the date picker
|
147 |
+
'week_start_day' => $ai1ec_settings->week_start_day,
|
148 |
// 24h time format for time pickers
|
149 |
+
'twentyfour_hour' => $ai1ec_settings->input_24h_time,
|
150 |
// Set region biasing for geo_autocomplete plugin
|
151 |
+
'region' => ( $ai1ec_settings->geo_region_biasing ) ? $ai1ec_events_helper->get_region() : '',
|
152 |
// ICS feed error messages
|
153 |
+
'duplicate_feed_message' => esc_html__( 'This feed is already being imported.', AI1EC_PLUGIN_NAME ),
|
154 |
+
'invalid_url_message' => esc_html__( 'Please enter a valid iCalendar URL.', AI1EC_PLUGIN_NAME ),
|
155 |
+
'disable_autocompletion' => $ai1ec_settings->disable_autocompletion,
|
156 |
) );
|
157 |
|
158 |
// =======
|
159 |
// = CSS =
|
160 |
// =======
|
161 |
// include autocomplete style
|
162 |
+
$ai1ec_view_helper->admin_enqueue_style( 'autocomplete', 'jquery.autocomplete.css' );
|
163 |
// include colorpicker style
|
164 |
+
$ai1ec_view_helper->admin_enqueue_style( 'colorpicker', 'colorpicker.css' );
|
165 |
// include add new event style
|
166 |
+
$ai1ec_view_helper->admin_enqueue_style( 'ai1ec_add_new_event', 'add_new_event.css' );
|
167 |
// include datepicker style
|
168 |
+
$ai1ec_view_helper->admin_enqueue_style( 'ai1ec_datepicker', 'datepicker.css' );
|
169 |
}
|
170 |
// Initialize front-end view
|
171 |
else
|
173 |
// ======
|
174 |
// = JS =
|
175 |
// ======
|
176 |
+
$ai1ec_view_helper->theme_enqueue_script( 'ai1ec-event', 'event.min.js', array( 'jquery' ) );
|
177 |
// Supply custom value to JavaScript from PHP
|
178 |
wp_localize_script( 'ai1ec-event', 'ai1ec_event', array(
|
179 |
// Language for Google Map
|
183 |
// =======
|
184 |
// = CSS =
|
185 |
// =======
|
186 |
+
$ai1ec_view_helper->theme_enqueue_style( 'ai1ec-general', 'general.css' );
|
187 |
+
$ai1ec_view_helper->theme_enqueue_style( 'ai1ec-event', 'event.css' );
|
188 |
+
// Load the print style only if the parameter print is set to true.
|
189 |
+
if( isset( $_GET['print'] ) && $_GET['print'] === 'true' ) {
|
190 |
+
$ai1ec_view_helper->theme_enqueue_style( 'ai1ec-print', 'print.css' );
|
191 |
+
}
|
192 |
}
|
193 |
}
|
194 |
|
241 |
|
242 |
$all_day_event = $event->allday ? 'checked="checked"' : '';
|
243 |
|
244 |
+
|
245 |
$start_timestamp = $ai1ec_events_helper->gmt_to_local( $event->start );
|
246 |
$end_timestamp = $ai1ec_events_helper->gmt_to_local( $event->end );
|
247 |
|
248 |
+
$multi_day = $event->multiday;
|
249 |
+
|
250 |
$show_map = $event->show_map;
|
251 |
$google_map = $show_map ? 'checked="checked"' : '';
|
252 |
|
298 |
'timezone' => $timezone,
|
299 |
'exdate' => $exdate
|
300 |
);
|
301 |
+
$ai1ec_view_helper->display_admin( 'box_time_and_date.php', $args );
|
302 |
|
303 |
// =================================================
|
304 |
// = Display event location details and Google map =
|
305 |
// =================================================
|
306 |
$args = array(
|
307 |
+
'venue' => $venue,
|
308 |
+
'country' => $country,
|
309 |
+
'address' => $address,
|
310 |
+
'city' => $city,
|
311 |
+
'province' => $province,
|
312 |
+
'postal_code' => $postal_code,
|
313 |
+
'google_map' => $google_map,
|
314 |
+
'show_map' => $show_map,
|
315 |
);
|
316 |
+
$ai1ec_view_helper->display_admin( 'box_event_location.php', $args );
|
317 |
|
318 |
// ======================
|
319 |
// = Display event cost =
|
321 |
$args = array(
|
322 |
'cost' => $cost
|
323 |
);
|
324 |
+
$ai1ec_view_helper->display_admin( 'box_event_cost.php', $args );
|
325 |
|
326 |
// =========================================
|
327 |
// = Display organizer contact information =
|
331 |
'contact_phone' => $contact_phone,
|
332 |
'contact_email' => $contact_email,
|
333 |
);
|
334 |
+
$ai1ec_view_helper->display_admin( 'box_event_contact.php', $args );
|
335 |
|
336 |
if( $ai1ec_settings->show_publish_button ) {
|
337 |
$args = array();
|
342 |
else
|
343 |
$args["button_value"] = __( 'Submit for Review', AI1EC_PLUGIN_NAME );
|
344 |
|
345 |
+
$ai1ec_view_helper->display_admin( 'box_publish_button.php', $args );
|
346 |
}
|
347 |
|
348 |
/*
|
444 |
$event->recurrence_rules = $rrule;
|
445 |
$event->exception_rules = $exrule;
|
446 |
$event->exception_dates = $exdate;
|
447 |
+
|
448 |
$event->save( ! $is_new );
|
449 |
|
450 |
$ai1ec_events_helper->delete_event_cache( $post_id );
|
620 |
'google_url' => 'http://www.google.com/calendar/render?cid=' . urlencode( $subscribe_url ),
|
621 |
'show_subscribe_buttons' => ! $ai1ec_settings->turn_off_subscription_buttons
|
622 |
);
|
623 |
+
$ai1ec_view_helper->display_theme( 'event-single.php', $args );
|
624 |
}
|
625 |
|
626 |
/**
|
649 |
'contact' => $event->contact_html,
|
650 |
'calendar_url' => $ai1ec_calendar_helper->get_calendar_url( $event ),
|
651 |
);
|
652 |
+
$ai1ec_view_helper->display_theme( 'event-multi.php', $args );
|
653 |
}
|
654 |
|
655 |
/**
|
670 |
$location = str_replace( "\n", ', ', rtrim( $event->location ) );
|
671 |
|
672 |
$args = array(
|
673 |
+
'event' => &$event,
|
674 |
'location' => $location,
|
675 |
);
|
676 |
+
$ai1ec_view_helper->display_theme( 'event-excerpt.php', $args );
|
677 |
}
|
678 |
|
679 |
/**
|
692 |
return '';
|
693 |
|
694 |
$args = array(
|
695 |
+
'address' => $event->address,
|
696 |
+
'gmap_url_link' => $ai1ec_events_helper->get_gmap_url( $event, false ),
|
697 |
+
'hide_maps_until_clicked' => $ai1ec_settings->hide_maps_until_clicked,
|
698 |
);
|
699 |
+
return $ai1ec_view_helper->get_theme_view( 'event-map.php', $args );
|
700 |
}
|
701 |
|
702 |
/**
|
714 |
$args = array(
|
715 |
'event' => &$event,
|
716 |
);
|
717 |
+
return $ai1ec_view_helper->display_theme( 'event-single-footer.php', $args );
|
718 |
}
|
719 |
|
720 |
/**
|
728 |
global $ai1ec_view_helper;
|
729 |
|
730 |
$args = array( 'edit' => false );
|
731 |
+
$ai1ec_view_helper->display_admin( 'event_categories-color_picker.php', $args );
|
732 |
}
|
733 |
|
734 |
/**
|
751 |
$style = 'style="background-color: ' . $color . '"';
|
752 |
$clr = $color;
|
753 |
}
|
754 |
+
|
755 |
$args = array(
|
756 |
'style' => $style,
|
757 |
'color' => $clr,
|
758 |
'edit' => true,
|
759 |
);
|
760 |
+
$ai1ec_view_helper->display_admin( 'event_categories-color_picker.php', $args );
|
761 |
}
|
762 |
|
763 |
/**
|
app/controller/class-ai1ec-importer-controller.php
CHANGED
@@ -88,8 +88,8 @@ class Ai1ec_Importer_Controller {
|
|
88 |
|
89 |
if( ! isset( $wp_importers['ai1ec_the_events_calendar'] ) ) {
|
90 |
$wp_importers['ai1ec_the_events_calendar'] = array(
|
91 |
-
__( 'The Events Calendar → All-in-One
|
92 |
-
__( 'Imports events created using The Events Calendar plugin into the All-in-One
|
93 |
array( &$this, 'import_the_events_calendar' )
|
94 |
);
|
95 |
}
|
@@ -199,7 +199,7 @@ class Ai1ec_Importer_Controller {
|
|
199 |
$imported_events++;
|
200 |
}
|
201 |
|
202 |
-
$ai1ec_view_helper->
|
203 |
}
|
204 |
}
|
205 |
// END class
|
88 |
|
89 |
if( ! isset( $wp_importers['ai1ec_the_events_calendar'] ) ) {
|
90 |
$wp_importers['ai1ec_the_events_calendar'] = array(
|
91 |
+
__( 'The Events Calendar → All-in-One Calendar', AI1EC_PLUGIN_NAME ),
|
92 |
+
__( 'Imports events created using The Events Calendar plugin into the All-in-One Calendar', AI1EC_PLUGIN_NAME ),
|
93 |
array( &$this, 'import_the_events_calendar' )
|
94 |
);
|
95 |
}
|
199 |
$imported_events++;
|
200 |
}
|
201 |
|
202 |
+
$ai1ec_view_helper->display_admin( "import.php", array( 'imported_events' => $imported_events ) );
|
203 |
}
|
204 |
}
|
205 |
// END class
|
app/controller/class-ai1ec-settings-controller.php
CHANGED
@@ -45,44 +45,62 @@ class Ai1ec_Settings_Controller {
|
|
45 |
}
|
46 |
|
47 |
/**
|
48 |
-
* view function
|
49 |
-
*
|
50 |
* Display this plugin's settings page in the admin.
|
51 |
*
|
52 |
* @return void
|
53 |
-
|
54 |
-
function
|
55 |
global $ai1ec_view_helper,
|
56 |
-
|
57 |
|
58 |
if( isset( $_REQUEST['ai1ec_save_settings'] ) ) {
|
59 |
-
$this->save();
|
60 |
}
|
61 |
$args = array(
|
62 |
-
'
|
|
|
63 |
);
|
64 |
-
$ai1ec_view_helper->
|
65 |
}
|
66 |
|
67 |
/**
|
68 |
-
*
|
69 |
*
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
70 |
* Save the submitted settings form.
|
71 |
*
|
|
|
72 |
* @return void
|
73 |
-
|
74 |
-
function save() {
|
75 |
global $ai1ec_settings,
|
76 |
-
|
77 |
|
78 |
-
$ai1ec_settings->update( $_REQUEST );
|
|
|
79 |
$ai1ec_settings->save();
|
80 |
|
81 |
$args = array(
|
82 |
-
|
83 |
);
|
84 |
|
85 |
-
$ai1ec_view_helper->
|
86 |
}
|
87 |
|
88 |
/**
|
@@ -94,7 +112,7 @@ class Ai1ec_Settings_Controller {
|
|
94 |
**/
|
95 |
function add_ics_feed() {
|
96 |
global $ai1ec_view_helper,
|
97 |
-
|
98 |
|
99 |
$table_name = $wpdb->prefix . 'ai1ec_event_feeds';
|
100 |
|
@@ -122,7 +140,7 @@ class Ai1ec_Settings_Controller {
|
|
122 |
'events' => 0
|
123 |
);
|
124 |
// display added feed row
|
125 |
-
$ai1ec_view_helper->
|
126 |
|
127 |
$output = ob_get_contents();
|
128 |
ob_end_clean();
|
@@ -141,23 +159,22 @@ class Ai1ec_Settings_Controller {
|
|
141 |
*
|
142 |
* Deletes all event posts that are from that selected feed
|
143 |
*
|
144 |
-
* @param bool $ajax When set to
|
145 |
* @param bool|string $feed_url Feed URL
|
146 |
*
|
147 |
* @return void
|
148 |
**/
|
149 |
-
function flush_ics_feed( $ajax =
|
150 |
-
{
|
151 |
global $wpdb,
|
152 |
-
|
153 |
$ics_id = isset( $_REQUEST['ics_id'] ) ? (int) $_REQUEST['ics_id'] : 0;
|
154 |
$table_name = $wpdb->prefix . 'ai1ec_event_feeds';
|
155 |
|
156 |
-
if( $feed_url ===
|
157 |
-
|
|
|
158 |
|
159 |
-
if( $feed_url )
|
160 |
-
{
|
161 |
$table_name = $wpdb->prefix . 'ai1ec_events';
|
162 |
$sql = "SELECT post_id FROM {$table_name} WHERE ical_feed_url = '%s'";
|
163 |
$events = $wpdb->get_results( $wpdb->prepare( $sql, $feed_url ) );
|
@@ -169,21 +186,20 @@ class Ai1ec_Settings_Controller {
|
|
169 |
}
|
170 |
|
171 |
$output = array(
|
172 |
-
'error' =>
|
173 |
'message' => sprintf( __( 'Flushed %d events', AI1EC_PLUGIN_NAME ), $total ),
|
174 |
'count' => $total,
|
175 |
);
|
176 |
-
}
|
177 |
-
else
|
178 |
-
{
|
179 |
$output = array(
|
180 |
-
'error' =>
|
181 |
'message' => __( 'Invalid ICS feed ID', AI1EC_PLUGIN_NAME )
|
182 |
);
|
183 |
}
|
184 |
|
185 |
-
if( $ajax )
|
186 |
$ai1ec_view_helper->json_response( $output );
|
|
|
187 |
}
|
188 |
|
189 |
/**
|
@@ -193,18 +209,16 @@ class Ai1ec_Settings_Controller {
|
|
193 |
*
|
194 |
* @return void
|
195 |
**/
|
196 |
-
function update_ics_feed()
|
197 |
-
{
|
198 |
global $wpdb,
|
199 |
-
|
200 |
-
|
201 |
|
202 |
$feed_id = (int) $_REQUEST['ics_id'];
|
203 |
$table_name = $wpdb->prefix . 'ai1ec_event_feeds';
|
204 |
$feed = $wpdb->get_row( $wpdb->prepare( "SELECT * FROM $table_name WHERE feed_id = %d", $feed_id ) );
|
205 |
|
206 |
-
if( $feed )
|
207 |
-
{
|
208 |
// flush the feed
|
209 |
$this->flush_ics_feed( false, $feed->feed_url );
|
210 |
// reimport the feed
|
@@ -223,9 +237,7 @@ class Ai1ec_Settings_Controller {
|
|
223 |
'count' => $count,
|
224 |
);
|
225 |
}
|
226 |
-
}
|
227 |
-
else
|
228 |
-
{
|
229 |
$output = array(
|
230 |
'error' => true,
|
231 |
'message' => __( 'Invalid ICS feed ID', AI1EC_PLUGIN_NAME )
|
@@ -242,10 +254,9 @@ class Ai1ec_Settings_Controller {
|
|
242 |
*
|
243 |
* @return String JSON output
|
244 |
**/
|
245 |
-
function delete_ics_feed()
|
246 |
-
{
|
247 |
global $wpdb,
|
248 |
-
|
249 |
|
250 |
$ics_id = (int) $_REQUEST['ics_id'];
|
251 |
$table_name = $wpdb->prefix . 'ai1ec_event_feeds';
|
@@ -257,7 +268,7 @@ class Ai1ec_Settings_Controller {
|
|
257 |
|
258 |
$ai1ec_view_helper->json_response( $output );
|
259 |
}
|
260 |
-
|
261 |
/**
|
262 |
* disable_notification function
|
263 |
*
|
@@ -265,7 +276,7 @@ class Ai1ec_Settings_Controller {
|
|
265 |
**/
|
266 |
function disable_notification() {
|
267 |
global $ai1ec_view_helper, $ai1ec_settings;
|
268 |
-
|
269 |
$ai1ec_settings->update_notification( false );
|
270 |
$output = array(
|
271 |
'error' => false,
|
@@ -276,85 +287,83 @@ class Ai1ec_Settings_Controller {
|
|
276 |
}
|
277 |
|
278 |
/**
|
279 |
-
*
|
280 |
-
*
|
281 |
-
*
|
282 |
*
|
283 |
* @return void
|
284 |
-
|
285 |
-
function
|
286 |
-
|
287 |
-
|
288 |
-
|
289 |
-
/* Add the 'General Settings' meta box. */
|
290 |
-
add_meta_box( 'general-settings',
|
291 |
-
_x( 'General Settings', 'meta box', AI1EC_PLUGIN_NAME ),
|
292 |
-
array( &$ai1ec_settings_helper, 'general_settings_meta_box' ),
|
293 |
-
$ai1ec_settings->settings_page,
|
294 |
-
'left-side',
|
295 |
-
'default' );
|
296 |
-
|
297 |
-
/* Add the 'The Seed Studio' meta box. */
|
298 |
-
add_meta_box( 'the-seed-studio-settings',
|
299 |
-
_x( 'The Seed Studio Support', 'meta box', AI1EC_PLUGIN_NAME ),
|
300 |
-
array( &$ai1ec_settings_helper, 'the_seed_studio_meta_box' ),
|
301 |
-
$ai1ec_settings->settings_page,
|
302 |
-
'right-side',
|
303 |
-
'default' );
|
304 |
-
/* Add the 'ICS Import Settings' meta box. */
|
305 |
-
add_meta_box( 'ics-import-settings',
|
306 |
-
_x( 'ICS Import Settings', 'meta box', AI1EC_PLUGIN_NAME ),
|
307 |
-
array( &$ai1ec_settings_helper, 'ics_import_settings_meta_box' ),
|
308 |
-
$ai1ec_settings->settings_page,
|
309 |
-
'left-side',
|
310 |
-
'default' );
|
311 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
312 |
}
|
313 |
|
314 |
/**
|
315 |
-
*
|
316 |
-
*
|
317 |
-
* Enqueue any scripts and styles in the admin side, depending on context.
|
318 |
*
|
319 |
* @return void
|
320 |
-
|
321 |
-
function
|
322 |
-
global $
|
323 |
-
|
324 |
-
if( $hook_suffix == 'widgets.php' ) {
|
325 |
-
// Scripts
|
326 |
-
wp_enqueue_script( 'ai1ec-widget', AI1EC_JS_URL . '/widget.js', array( 'jquery' ), AI1EC_VERSION );
|
327 |
-
// Styles
|
328 |
-
wp_enqueue_style( 'ai1ec-widget', AI1EC_CSS_URL . '/widget.css', array(), AI1EC_VERSION );
|
329 |
-
}
|
330 |
|
331 |
-
|
332 |
-
|
333 |
-
|
334 |
-
|
335 |
-
|
336 |
-
|
337 |
-
|
338 |
-
|
339 |
-
|
340 |
-
|
341 |
-
|
342 |
-
|
343 |
-
|
344 |
-
|
|
|
|
|
|
|
|
|
345 |
}
|
346 |
|
347 |
/**
|
348 |
* plugin_action_links function
|
349 |
*
|
350 |
-
* Adds a link to Settings page in plugin list page
|
351 |
*
|
352 |
* @return array
|
353 |
**/
|
354 |
function plugin_action_links( $links ) {
|
355 |
-
|
356 |
-
|
357 |
-
|
358 |
}
|
359 |
|
360 |
/**
|
@@ -365,12 +374,13 @@ class Ai1ec_Settings_Controller {
|
|
365 |
* @return void
|
366 |
**/
|
367 |
function plugin_row_meta( $links, $file ) {
|
368 |
-
|
369 |
-
|
370 |
-
|
371 |
-
|
372 |
|
373 |
-
|
374 |
}
|
|
|
375 |
}
|
376 |
// END class
|
45 |
}
|
46 |
|
47 |
/**
|
|
|
|
|
48 |
* Display this plugin's settings page in the admin.
|
49 |
*
|
50 |
* @return void
|
51 |
+
*/
|
52 |
+
function view_settings() {
|
53 |
global $ai1ec_view_helper,
|
54 |
+
$ai1ec_settings;
|
55 |
|
56 |
if( isset( $_REQUEST['ai1ec_save_settings'] ) ) {
|
57 |
+
$this->save( 'settings' );
|
58 |
}
|
59 |
$args = array(
|
60 |
+
'title' => __( 'All-in-One Calendar: Settings', AI1EC_PLUGIN_NAME ),
|
61 |
+
'settings_page' => $ai1ec_settings->settings_page,
|
62 |
);
|
63 |
+
$ai1ec_view_helper->display_admin( 'settings.php', $args );
|
64 |
}
|
65 |
|
66 |
/**
|
67 |
+
* Display this plugin's feeds page in the admin.
|
68 |
*
|
69 |
+
* @return void
|
70 |
+
*/
|
71 |
+
function view_feeds() {
|
72 |
+
global $ai1ec_view_helper,
|
73 |
+
$ai1ec_settings;
|
74 |
+
|
75 |
+
if( isset( $_REQUEST['ai1ec_save_settings'] ) ) {
|
76 |
+
$this->save( 'feeds' );
|
77 |
+
}
|
78 |
+
$args = array(
|
79 |
+
'title' => __( 'All-in-One Calendar: Calendar Feeds', AI1EC_PLUGIN_NAME ),
|
80 |
+
'settings_page' => $ai1ec_settings->feeds_page,
|
81 |
+
);
|
82 |
+
$ai1ec_view_helper->display_admin( 'settings.php', $args );
|
83 |
+
}
|
84 |
+
|
85 |
+
/**
|
86 |
* Save the submitted settings form.
|
87 |
*
|
88 |
+
* @param string $settings_page Which settings page is being saved.
|
89 |
* @return void
|
90 |
+
*/
|
91 |
+
function save( $settings_page ) {
|
92 |
global $ai1ec_settings,
|
93 |
+
$ai1ec_view_helper;
|
94 |
|
95 |
+
$ai1ec_settings->update( $settings_page, $_REQUEST );
|
96 |
+
do_action( 'ai1ec_save_settings', $settings_page, $_REQUEST );
|
97 |
$ai1ec_settings->save();
|
98 |
|
99 |
$args = array(
|
100 |
+
'msg' => __( 'Settings Updated.', AI1EC_PLUGIN_NAME )
|
101 |
);
|
102 |
|
103 |
+
$ai1ec_view_helper->display_admin( "save_successful.php", $args );
|
104 |
}
|
105 |
|
106 |
/**
|
112 |
**/
|
113 |
function add_ics_feed() {
|
114 |
global $ai1ec_view_helper,
|
115 |
+
$wpdb;
|
116 |
|
117 |
$table_name = $wpdb->prefix . 'ai1ec_event_feeds';
|
118 |
|
140 |
'events' => 0
|
141 |
);
|
142 |
// display added feed row
|
143 |
+
$ai1ec_view_helper->display_admin( 'feed_row.php', $args );
|
144 |
|
145 |
$output = ob_get_contents();
|
146 |
ob_end_clean();
|
159 |
*
|
160 |
* Deletes all event posts that are from that selected feed
|
161 |
*
|
162 |
+
* @param bool $ajax When set to TRUE, the data is outputted using json_response
|
163 |
* @param bool|string $feed_url Feed URL
|
164 |
*
|
165 |
* @return void
|
166 |
**/
|
167 |
+
function flush_ics_feed( $ajax = TRUE, $feed_url = FALSE ) {
|
|
|
168 |
global $wpdb,
|
169 |
+
$ai1ec_view_helper;
|
170 |
$ics_id = isset( $_REQUEST['ics_id'] ) ? (int) $_REQUEST['ics_id'] : 0;
|
171 |
$table_name = $wpdb->prefix . 'ai1ec_event_feeds';
|
172 |
|
173 |
+
if( $feed_url === FALSE ) {
|
174 |
+
$feed_url = $wpdb->get_var( $wpdb->prepare( "SELECT feed_url FROM $table_name WHERE feed_id = %d", $ics_id ) );
|
175 |
+
}
|
176 |
|
177 |
+
if( $feed_url ) {
|
|
|
178 |
$table_name = $wpdb->prefix . 'ai1ec_events';
|
179 |
$sql = "SELECT post_id FROM {$table_name} WHERE ical_feed_url = '%s'";
|
180 |
$events = $wpdb->get_results( $wpdb->prepare( $sql, $feed_url ) );
|
186 |
}
|
187 |
|
188 |
$output = array(
|
189 |
+
'error' => FALSE,
|
190 |
'message' => sprintf( __( 'Flushed %d events', AI1EC_PLUGIN_NAME ), $total ),
|
191 |
'count' => $total,
|
192 |
);
|
193 |
+
} else {
|
|
|
|
|
194 |
$output = array(
|
195 |
+
'error' => TRUE,
|
196 |
'message' => __( 'Invalid ICS feed ID', AI1EC_PLUGIN_NAME )
|
197 |
);
|
198 |
}
|
199 |
|
200 |
+
if( $ajax ) {
|
201 |
$ai1ec_view_helper->json_response( $output );
|
202 |
+
}
|
203 |
}
|
204 |
|
205 |
/**
|
209 |
*
|
210 |
* @return void
|
211 |
**/
|
212 |
+
function update_ics_feed() {
|
|
|
213 |
global $wpdb,
|
214 |
+
$ai1ec_view_helper,
|
215 |
+
$ai1ec_importer_helper;
|
216 |
|
217 |
$feed_id = (int) $_REQUEST['ics_id'];
|
218 |
$table_name = $wpdb->prefix . 'ai1ec_event_feeds';
|
219 |
$feed = $wpdb->get_row( $wpdb->prepare( "SELECT * FROM $table_name WHERE feed_id = %d", $feed_id ) );
|
220 |
|
221 |
+
if( $feed ) {
|
|
|
222 |
// flush the feed
|
223 |
$this->flush_ics_feed( false, $feed->feed_url );
|
224 |
// reimport the feed
|
237 |
'count' => $count,
|
238 |
);
|
239 |
}
|
240 |
+
} else {
|
|
|
|
|
241 |
$output = array(
|
242 |
'error' => true,
|
243 |
'message' => __( 'Invalid ICS feed ID', AI1EC_PLUGIN_NAME )
|
254 |
*
|
255 |
* @return String JSON output
|
256 |
**/
|
257 |
+
function delete_ics_feed() {
|
|
|
258 |
global $wpdb,
|
259 |
+
$ai1ec_view_helper;
|
260 |
|
261 |
$ics_id = (int) $_REQUEST['ics_id'];
|
262 |
$table_name = $wpdb->prefix . 'ai1ec_event_feeds';
|
268 |
|
269 |
$ai1ec_view_helper->json_response( $output );
|
270 |
}
|
271 |
+
|
272 |
/**
|
273 |
* disable_notification function
|
274 |
*
|
276 |
**/
|
277 |
function disable_notification() {
|
278 |
global $ai1ec_view_helper, $ai1ec_settings;
|
279 |
+
|
280 |
$ai1ec_settings->update_notification( false );
|
281 |
$output = array(
|
282 |
'error' => false,
|
287 |
}
|
288 |
|
289 |
/**
|
290 |
+
* Add meta boxes to settings screen.
|
|
|
|
|
291 |
*
|
292 |
* @return void
|
293 |
+
*/
|
294 |
+
function add_settings_meta_boxes() {
|
295 |
+
global $ai1ec_settings_helper,
|
296 |
+
$ai1ec_settings;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
297 |
|
298 |
+
// Add the 'General Settings' meta box.
|
299 |
+
add_meta_box(
|
300 |
+
'ai1ec-general-settings',
|
301 |
+
_x( 'General Settings', 'meta box', AI1EC_PLUGIN_NAME ),
|
302 |
+
array( &$ai1ec_settings_helper, 'general_settings_meta_box' ),
|
303 |
+
$ai1ec_settings->settings_page,
|
304 |
+
'left-side',
|
305 |
+
'default'
|
306 |
+
);
|
307 |
+
// Add the 'Advanced Settings' meta box.
|
308 |
+
add_meta_box(
|
309 |
+
'ai1ec-advanced-settings',
|
310 |
+
_x( 'Advanced Settings', 'meta box', AI1EC_PLUGIN_NAME ),
|
311 |
+
array( &$ai1ec_settings_helper, 'advanced_settings_meta_box' ),
|
312 |
+
$ai1ec_settings->settings_page,
|
313 |
+
'left-side',
|
314 |
+
'default'
|
315 |
+
);
|
316 |
+
// Add the 'Then.ly Support' meta box.
|
317 |
+
add_meta_box(
|
318 |
+
'the-seed-studio-settings',
|
319 |
+
_x( 'Then.ly Support', 'meta box', AI1EC_PLUGIN_NAME ),
|
320 |
+
array( &$ai1ec_settings_helper, 'the_seed_studio_meta_box' ),
|
321 |
+
$ai1ec_settings->settings_page,
|
322 |
+
'right-side',
|
323 |
+
'default'
|
324 |
+
);
|
325 |
}
|
326 |
|
327 |
/**
|
328 |
+
* Add meta boxes to feeds screen.
|
|
|
|
|
329 |
*
|
330 |
* @return void
|
331 |
+
*/
|
332 |
+
function add_feeds_meta_boxes() {
|
333 |
+
global $ai1ec_settings_helper,
|
334 |
+
$ai1ec_settings;
|
|
|
|
|
|
|
|
|
|
|
|
|
335 |
|
336 |
+
// Add the 'ICS Import Settings' meta box.
|
337 |
+
add_meta_box(
|
338 |
+
'ai1ec-feeds',
|
339 |
+
_x( 'Feed Subscriptions', 'meta box', AI1EC_PLUGIN_NAME ),
|
340 |
+
array( &$ai1ec_settings_helper, 'feeds_meta_box' ),
|
341 |
+
$ai1ec_settings->feeds_page,
|
342 |
+
'left-side',
|
343 |
+
'default'
|
344 |
+
);
|
345 |
+
// Add the 'Then.ly Support' meta box.
|
346 |
+
add_meta_box(
|
347 |
+
'the-seed-studio-settings',
|
348 |
+
_x( 'Then.ly Support', 'meta box', AI1EC_PLUGIN_NAME ),
|
349 |
+
array( &$ai1ec_settings_helper, 'the_seed_studio_meta_box' ),
|
350 |
+
$ai1ec_settings->feeds_page,
|
351 |
+
'right-side',
|
352 |
+
'default'
|
353 |
+
);
|
354 |
}
|
355 |
|
356 |
/**
|
357 |
* plugin_action_links function
|
358 |
*
|
359 |
+
* Adds a link to Settings page in plugin list page.
|
360 |
*
|
361 |
* @return array
|
362 |
**/
|
363 |
function plugin_action_links( $links ) {
|
364 |
+
$settings = sprintf( __( '<a href="%s">Settings</a>', AI1EC_PLUGIN_NAME ), admin_url( AI1EC_SETTINGS_BASE_URL ) );
|
365 |
+
array_unshift( $links, $settings );
|
366 |
+
return $links;
|
367 |
}
|
368 |
|
369 |
/**
|
374 |
* @return void
|
375 |
**/
|
376 |
function plugin_row_meta( $links, $file ) {
|
377 |
+
if( $file == AI1EC_PLUGIN_BASENAME ) {
|
378 |
+
$links[] = sprintf( __( '<a href="%s" target="_blank">Donate</a>', AI1EC_PLUGIN_NAME ), 'https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=9JJMUW48W2ED8' );
|
379 |
+
$links[] = sprintf( __( '<a href="%s" target="_blank">Get Support</a>', AI1EC_PLUGIN_NAME ), 'http://help.then.ly' );
|
380 |
+
}
|
381 |
|
382 |
+
return $links;
|
383 |
}
|
384 |
+
|
385 |
}
|
386 |
// END class
|
app/controller/class-ai1ec-themes-controller.php
ADDED
@@ -0,0 +1,164 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
//
|
3 |
+
// class-ai1ec-themes-controller.php
|
4 |
+
// all-in-one-event-calendar
|
5 |
+
//
|
6 |
+
// Created by The Seed Studio on 2012-04-05.
|
7 |
+
//
|
8 |
+
|
9 |
+
/**
|
10 |
+
* Ai1ec_Themes_Controller class
|
11 |
+
*
|
12 |
+
* @package Controllers
|
13 |
+
* @author The Seed Studio
|
14 |
+
**/
|
15 |
+
class Ai1ec_Themes_Controller {
|
16 |
+
/**
|
17 |
+
* _instance class variable
|
18 |
+
*
|
19 |
+
* Class instance
|
20 |
+
*
|
21 |
+
* @var null | object
|
22 |
+
**/
|
23 |
+
private static $_instance = NULL;
|
24 |
+
|
25 |
+
/**
|
26 |
+
* get_instance function
|
27 |
+
*
|
28 |
+
* Return singleton instance
|
29 |
+
*
|
30 |
+
* @return object
|
31 |
+
**/
|
32 |
+
static function get_instance() {
|
33 |
+
if( self::$_instance === NULL ) {
|
34 |
+
self::$_instance = new self();
|
35 |
+
}
|
36 |
+
|
37 |
+
return self::$_instance;
|
38 |
+
}
|
39 |
+
|
40 |
+
/**
|
41 |
+
* Constructor
|
42 |
+
*
|
43 |
+
* Default constructor
|
44 |
+
**/
|
45 |
+
private function __construct() { }
|
46 |
+
|
47 |
+
/**
|
48 |
+
* Returns the root path of ai1ec-themes.
|
49 |
+
*
|
50 |
+
* @return string
|
51 |
+
**/
|
52 |
+
public function template_root_path( $template ) {
|
53 |
+
return AI1EC_THEMES_ROOT . '/' . $template;
|
54 |
+
}
|
55 |
+
|
56 |
+
/**
|
57 |
+
* Returns the root URL of ai1ec-themes.
|
58 |
+
*
|
59 |
+
* @return string
|
60 |
+
**/
|
61 |
+
public function template_root_url( $template ) {
|
62 |
+
return AI1EC_THEMES_URL . '/' . $template;
|
63 |
+
}
|
64 |
+
|
65 |
+
/**
|
66 |
+
* Returns the path to the active calendar theme.
|
67 |
+
*
|
68 |
+
* @return string
|
69 |
+
*/
|
70 |
+
public function active_template_path() {
|
71 |
+
return apply_filters(
|
72 |
+
'ai1ec_template_root_path',
|
73 |
+
apply_filters(
|
74 |
+
'ai1ec_template',
|
75 |
+
get_option( 'ai1ec_template', AI1EC_DEFAULT_THEME_NAME )
|
76 |
+
)
|
77 |
+
);
|
78 |
+
}
|
79 |
+
|
80 |
+
/**
|
81 |
+
* Returns the URL to the active calendar theme.
|
82 |
+
*
|
83 |
+
* @return string
|
84 |
+
*/
|
85 |
+
public function active_template_url() {
|
86 |
+
return apply_filters(
|
87 |
+
'ai1ec_template_root_url',
|
88 |
+
apply_filters(
|
89 |
+
'ai1ec_template',
|
90 |
+
get_option( 'ai1ec_template', AI1EC_DEFAULT_THEME_NAME )
|
91 |
+
)
|
92 |
+
);
|
93 |
+
}
|
94 |
+
|
95 |
+
/**
|
96 |
+
* are_themes_available function
|
97 |
+
*
|
98 |
+
* @return bool
|
99 |
+
**/
|
100 |
+
public function are_themes_available() {
|
101 |
+
// are themes folder and Vortex theme available?
|
102 |
+
if( @is_dir( AI1EC_THEMES_ROOT ) === true && @is_dir( AI1EC_DEFAULT_THEME_PATH ) === true ) {
|
103 |
+
return true;
|
104 |
+
} else {
|
105 |
+
// try to create AI1EC_THEMES_ROOT
|
106 |
+
if( ! @mkdir( AI1EC_THEMES_ROOT ) )
|
107 |
+
return false;
|
108 |
+
|
109 |
+
// copy themes-ai1ec from plugin's root to wp-content's themes root
|
110 |
+
$this->copy_directory( AI1EC_PATH . '/' . AI1EC_THEMES_FOLDER, AI1EC_THEMES_ROOT );
|
111 |
+
|
112 |
+
if( @is_dir( AI1EC_THEMES_ROOT ) === false || @is_dir( AI1EC_DEFAULT_THEME_PATH ) === false )
|
113 |
+
return false;
|
114 |
+
}
|
115 |
+
return true;
|
116 |
+
}
|
117 |
+
|
118 |
+
/**
|
119 |
+
* copy_directory function
|
120 |
+
*
|
121 |
+
* @return void
|
122 |
+
**/
|
123 |
+
private function copy_directory( $source, $destination ) {
|
124 |
+
if( is_dir( $source ) ) {
|
125 |
+
@mkdir( $destination );
|
126 |
+
$directory = dir( $source );
|
127 |
+
while( FALSE !== ( $readdirectory = $directory->read() ) ) {
|
128 |
+
if( $readdirectory == '.' || $readdirectory == '..' ) {
|
129 |
+
continue;
|
130 |
+
}
|
131 |
+
$PathDir = $source . '/' . $readdirectory;
|
132 |
+
if( is_dir( $PathDir ) ) {
|
133 |
+
$this->copy_directory( $PathDir, $destination . '/' . $readdirectory );
|
134 |
+
continue;
|
135 |
+
}
|
136 |
+
copy( $PathDir, $destination . '/' . $readdirectory );
|
137 |
+
}
|
138 |
+
|
139 |
+
$directory->close();
|
140 |
+
} else {
|
141 |
+
copy( $source, $destination );
|
142 |
+
}
|
143 |
+
}
|
144 |
+
|
145 |
+
/**
|
146 |
+
* Called immediately after WP theme's functions.php is loaded. Load our own
|
147 |
+
* theme's functions.php at this time, and the default theme's functions.php.
|
148 |
+
*/
|
149 |
+
function setup_theme() {
|
150 |
+
$functions_files = array(
|
151 |
+
$this->active_template_path() . '/functions.php',
|
152 |
+
AI1EC_DEFAULT_THEME_PATH . '/functions.php',
|
153 |
+
);
|
154 |
+
|
155 |
+
$functions_files = array_unique( $functions_files );
|
156 |
+
|
157 |
+
foreach( $functions_files as $file ) {
|
158 |
+
if ( file_exists( $file ) ) {
|
159 |
+
include( $file );
|
160 |
+
}
|
161 |
+
}
|
162 |
+
}
|
163 |
+
}
|
164 |
+
// END class
|
app/helper/class-ai1ec-app-helper.php
CHANGED
@@ -100,46 +100,55 @@ class Ai1ec_App_Helper {
|
|
100 |
* @return void
|
101 |
**/
|
102 |
function create_post_type() {
|
103 |
-
|
104 |
-
|
105 |
-
// if the event contributor role is not created, create it
|
106 |
-
if( !get_role( 'ai1ec_event_assistant' ) ) {
|
107 |
|
108 |
-
|
109 |
-
|
110 |
-
|
|
|
111 |
$caps = get_role( 'subscriber' )->capabilities;
|
112 |
-
add_role( 'ai1ec_event_assistant', 'Event Contributor', $caps );
|
113 |
-
|
114 |
-
// add event managing capability to administrator, editor, author
|
115 |
-
foreach( array( 'administrator', 'editor', 'author' ) as $user ) {
|
116 |
-
$role = get_role( $user );
|
117 |
-
// read events
|
118 |
-
$role->add_cap( 'read_ai1ec_event' );
|
119 |
-
// edit events
|
120 |
-
$role->add_cap( 'edit_ai1ec_event' );
|
121 |
-
$role->add_cap( 'edit_ai1ec_events' );
|
122 |
-
$role->add_cap( 'edit_others_ai1ec_events' );
|
123 |
-
$role->add_cap( 'edit_private_ai1ec_events' );
|
124 |
-
$role->add_cap( 'edit_published_ai1ec_events' );
|
125 |
-
// delete events
|
126 |
-
$role->add_cap( 'delete_ai1ec_event' );
|
127 |
-
$role->add_cap( 'delete_ai1ec_events' );
|
128 |
-
$role->add_cap( 'delete_others_ai1ec_events' );
|
129 |
-
$role->add_cap( 'delete_published_ai1ec_events' );
|
130 |
-
$role->add_cap( 'delete_private_ai1ec_events' );
|
131 |
-
// publish events
|
132 |
-
$role->add_cap( 'publish_ai1ec_events' );
|
133 |
-
// read private events
|
134 |
-
$role->add_cap( 'read_private_ai1ec_events' );
|
135 |
-
}
|
136 |
-
|
137 |
-
// add event managing capability to contributors
|
138 |
-
$role = get_role( 'ai1ec_event_assistant' );
|
139 |
$role->add_cap( 'edit_ai1ec_events' );
|
140 |
$role->add_cap( 'delete_ai1ec_event' );
|
141 |
$role->add_cap( 'read' );
|
142 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
143 |
// ===============================
|
144 |
// = labels for custom post type =
|
145 |
// ===============================
|
@@ -171,31 +180,31 @@ class Ai1ec_App_Helper {
|
|
171 |
$args = array(
|
172 |
'labels' => $labels,
|
173 |
'public' => true,
|
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 |
// ========================================
|
@@ -213,7 +222,7 @@ class Ai1ec_App_Helper {
|
|
213 |
'name' => _x( 'Event Tags', 'Event tags taxonomy', AI1EC_PLUGIN_NAME ),
|
214 |
'singular_name' => _x( 'Event Tag', 'Event tags taxonomy (singular)', AI1EC_PLUGIN_NAME )
|
215 |
);
|
216 |
-
|
217 |
// ==================================
|
218 |
// = labels for event feeds taxonomy =
|
219 |
// ==================================
|
@@ -230,10 +239,10 @@ class Ai1ec_App_Helper {
|
|
230 |
'hierarchical' => true,
|
231 |
'rewrite' => array( 'slug' => 'events_categories' ),
|
232 |
'capabilities' => array(
|
233 |
-
'manage_terms' => '
|
234 |
-
|
235 |
-
|
236 |
-
|
237 |
)
|
238 |
);
|
239 |
|
@@ -245,13 +254,13 @@ class Ai1ec_App_Helper {
|
|
245 |
'hierarchical' => false,
|
246 |
'rewrite' => array( 'slug' => 'events_tags' ),
|
247 |
'capabilities' => array(
|
248 |
-
'manage_terms' => '
|
249 |
-
|
250 |
-
|
251 |
-
|
252 |
)
|
253 |
);
|
254 |
-
|
255 |
// ================================
|
256 |
// = args for event feeds taxonomy =
|
257 |
// ================================
|
@@ -260,10 +269,10 @@ class Ai1ec_App_Helper {
|
|
260 |
'hierarchical' => false,
|
261 |
'rewrite' => array( 'slug' => 'events_feeds' ),
|
262 |
'capabilities' => array(
|
263 |
-
'manage_terms' => '
|
264 |
-
|
265 |
-
|
266 |
-
|
267 |
),
|
268 |
'public' => false // don't show taxonomy in admin UI
|
269 |
);
|
@@ -277,7 +286,7 @@ class Ai1ec_App_Helper {
|
|
277 |
// = register event tags taxonomy =
|
278 |
// ================================
|
279 |
register_taxonomy( 'events_tags', array( AI1EC_POST_TYPE ), $events_tags_args );
|
280 |
-
|
281 |
// ================================
|
282 |
// = register event tags taxonomy =
|
283 |
// ================================
|
@@ -309,12 +318,12 @@ class Ai1ec_App_Helper {
|
|
309 |
wp_dropdown_categories( array(
|
310 |
'show_option_all' => __( 'Show All ', AI1EC_PLUGIN_NAME ) . $tax_obj->label,
|
311 |
'taxonomy' => $tax_slug,
|
312 |
-
|
313 |
-
|
314 |
-
|
315 |
-
|
316 |
-
|
317 |
-
|
318 |
));
|
319 |
}
|
320 |
}
|
@@ -331,21 +340,22 @@ class Ai1ec_App_Helper {
|
|
331 |
**/
|
332 |
function get_all_items_name() {
|
333 |
|
334 |
-
|
335 |
-
|
336 |
-
|
337 |
-
|
338 |
-
|
339 |
-
|
340 |
-
|
341 |
-
|
342 |
-
|
343 |
-
|
344 |
-
|
345 |
-
|
346 |
-
|
347 |
-
|
348 |
-
|
|
|
349 |
}
|
350 |
|
351 |
/**
|
@@ -362,12 +372,12 @@ class Ai1ec_App_Helper {
|
|
362 |
foreach( $filters as $tax_slug ) {
|
363 |
$var = &$query->query_vars[$tax_slug];
|
364 |
if( isset( $var ) ) {
|
365 |
-
|
366 |
|
367 |
-
|
368 |
-
|
369 |
else
|
370 |
-
|
371 |
|
372 |
if( isset( $term->slug ) ) {
|
373 |
$var = $term->slug;
|
@@ -384,7 +394,6 @@ class Ai1ec_App_Helper {
|
|
384 |
$query->query_vars["order"] = 'desc';
|
385 |
}
|
386 |
}
|
387 |
-
|
388 |
}
|
389 |
|
390 |
/**
|
@@ -415,20 +424,23 @@ class Ai1ec_App_Helper {
|
|
415 |
/**
|
416 |
* add_meta_boxes function
|
417 |
*
|
418 |
-
* Display event
|
419 |
*
|
420 |
* @return void
|
421 |
**/
|
422 |
function add_meta_boxes() {
|
423 |
global $ai1ec_events_controller;
|
|
|
424 |
add_meta_box(
|
425 |
-
|
426 |
-
|
427 |
-
|
428 |
-
|
429 |
-
|
|
|
|
|
430 |
}
|
431 |
-
|
432 |
/**
|
433 |
* screen_layout_columns function
|
434 |
*
|
@@ -438,7 +450,7 @@ class Ai1ec_App_Helper {
|
|
438 |
**/
|
439 |
function screen_layout_columns( $columns, $screen ) {
|
440 |
global $ai1ec_settings;
|
441 |
-
|
442 |
if( isset( $ai1ec_settings->settings_page ) && $screen == $ai1ec_settings->settings_page )
|
443 |
$columns[$ai1ec_settings->settings_page] = 2;
|
444 |
|
@@ -507,12 +519,12 @@ class Ai1ec_App_Helper {
|
|
507 |
* @return mixed
|
508 |
**/
|
509 |
function get_param( $param, $default='' ) {
|
510 |
-
|
511 |
-
|
512 |
-
|
513 |
-
|
514 |
-
|
515 |
-
|
516 |
|
517 |
/**
|
518 |
* get_param_delimiter_char function
|
@@ -523,11 +535,11 @@ class Ai1ec_App_Helper {
|
|
523 |
*
|
524 |
* @return string
|
525 |
**/
|
526 |
-
|
527 |
-
|
528 |
}
|
529 |
|
530 |
-
|
531 |
* inject_categories function
|
532 |
*
|
533 |
* Displays event categories whenever post categories are requested
|
@@ -544,119 +556,119 @@ class Ai1ec_App_Helper {
|
|
544 |
{
|
545 |
global $ai1ec_settings;
|
546 |
|
547 |
-
|
548 |
-
|
549 |
-
|
550 |
-
|
551 |
-
|
552 |
-
|
553 |
-
|
554 |
-
|
555 |
-
|
556 |
-
|
557 |
-
|
558 |
-
|
559 |
-
|
560 |
-
|
561 |
-
|
562 |
-
|
563 |
-
|
564 |
-
|
565 |
-
|
566 |
-
|
567 |
-
|
568 |
-
|
569 |
-
|
570 |
-
|
571 |
-
|
572 |
-
|
573 |
-
|
574 |
-
|
575 |
-
|
576 |
-
|
577 |
-
|
578 |
-
|
579 |
-
|
580 |
-
|
581 |
-
|
582 |
-
|
583 |
-
|
584 |
-
|
585 |
-
|
586 |
-
return $terms;
|
587 |
-
}
|
588 |
|
589 |
-
|
590 |
-
|
591 |
-
*
|
592 |
-
* Corrects the URL for the calendar page when injected into the post
|
593 |
-
* categories.
|
594 |
-
*
|
595 |
-
* @param string $link The normally generated link
|
596 |
-
* @param object $term The term that we're getting the link for
|
597 |
-
* @param string $taxonomy The name of the taxonomy of interest
|
598 |
-
*
|
599 |
-
* @return string The correct link to the calendar page
|
600 |
-
*/
|
601 |
-
function calendar_term_link( $link, $term, $taxonomy )
|
602 |
-
{
|
603 |
-
global $ai1ec_calendar_helper;
|
604 |
-
|
605 |
-
if( $taxonomy == 'events_categories' ) {
|
606 |
-
if( $term->term_id == AI1EC_FAKE_CATEGORY_ID )
|
607 |
-
$link = $ai1ec_calendar_helper->get_calendar_url( null );
|
608 |
-
else
|
609 |
-
$link = $ai1ec_calendar_helper->get_calendar_url( null,
|
610 |
-
array( 'cat_ids' => array( $term->term_id ) )
|
611 |
-
);
|
612 |
-
}
|
613 |
-
|
614 |
-
return $link;
|
615 |
-
}
|
616 |
|
617 |
-
|
618 |
-
|
619 |
-
|
620 |
-
|
621 |
-
|
622 |
-
|
623 |
-
|
624 |
-
|
625 |
-
|
626 |
-
|
627 |
-
|
628 |
-
|
629 |
-
|
630 |
-
|
631 |
-
|
632 |
-
|
633 |
-
|
634 |
-
|
635 |
-
|
636 |
-
|
637 |
-
|
638 |
-
|
639 |
-
|
640 |
-
|
641 |
-
|
642 |
-
|
643 |
-
|
644 |
-
|
645 |
-
|
646 |
-
|
647 |
-
|
648 |
-
|
649 |
-
|
650 |
-
|
651 |
-
|
652 |
-
|
653 |
-
|
654 |
-
|
655 |
-
|
656 |
-
|
657 |
-
|
658 |
-
|
659 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
660 |
|
661 |
/**
|
662 |
* admin_notices function
|
@@ -667,53 +679,178 @@ class Ai1ec_App_Helper {
|
|
667 |
**/
|
668 |
function admin_notices() {
|
669 |
global $ai1ec_view_helper,
|
670 |
-
|
671 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
672 |
|
673 |
if( $ai1ec_settings->show_data_notification ) {
|
674 |
$args = array(
|
675 |
-
'label' => 'All-in-One
|
676 |
-
'msg' =>
|
677 |
-
|
678 |
-
|
679 |
-
|
680 |
-
|
681 |
-
|
682 |
-
|
|
|
|
|
|
|
683 |
);
|
684 |
-
$ai1ec_view_helper->
|
685 |
}
|
686 |
|
687 |
-
|
688 |
-
|
689 |
-
|
690 |
-
|
691 |
-
|
692 |
-
|
693 |
-
|
694 |
-
|
695 |
-
|
696 |
-
|
697 |
-
|
698 |
-
|
699 |
-
|
700 |
-
|
701 |
-
|
702 |
-
|
703 |
-
|
704 |
-
}
|
705 |
-
|
706 |
-
|
707 |
-
|
708 |
-
)
|
|
|
|
|
709 |
}
|
|
|
710 |
// Else display messages for other blog users
|
711 |
-
|
712 |
-
$
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
713 |
}
|
714 |
-
$args['label'] = __( 'All-in-One
|
715 |
-
|
716 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
717 |
}
|
718 |
}
|
719 |
// END class
|
100 |
* @return void
|
101 |
**/
|
102 |
function create_post_type() {
|
103 |
+
global $ai1ec_settings;
|
|
|
|
|
|
|
104 |
|
105 |
+
// Create event contributor role with the same capabilities
|
106 |
+
// as subscriber role, plus event managing capabilities - if we haven't done
|
107 |
+
// so yet.
|
108 |
+
if( ! get_role( 'ai1ec_event_assistant' ) ) {
|
109 |
$caps = get_role( 'subscriber' )->capabilities;
|
110 |
+
$role = add_role( 'ai1ec_event_assistant', 'Event Contributor', $caps );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
111 |
$role->add_cap( 'edit_ai1ec_events' );
|
112 |
$role->add_cap( 'delete_ai1ec_event' );
|
113 |
$role->add_cap( 'read' );
|
114 |
}
|
115 |
+
|
116 |
+
// Add event managing capabilities to administrator, editor, author. (The
|
117 |
+
// last created capability is "manage_ai1ec_feeds", so check for that one.)
|
118 |
+
if( ! get_role( 'administrator' )->has_cap( 'manage_ai1ec_feeds' ) ) {
|
119 |
+
foreach( array( 'administrator', 'editor', 'author' ) as $role_name ) {
|
120 |
+
$role = get_role( $role_name );
|
121 |
+
// Read events.
|
122 |
+
$role->add_cap( 'read_ai1ec_event' );
|
123 |
+
// Edit events.
|
124 |
+
$role->add_cap( 'edit_ai1ec_event' );
|
125 |
+
$role->add_cap( 'edit_ai1ec_events' );
|
126 |
+
$role->add_cap( 'edit_others_ai1ec_events' );
|
127 |
+
$role->add_cap( 'edit_private_ai1ec_events' );
|
128 |
+
$role->add_cap( 'edit_published_ai1ec_events' );
|
129 |
+
// Delete events.
|
130 |
+
$role->add_cap( 'delete_ai1ec_event' );
|
131 |
+
$role->add_cap( 'delete_ai1ec_events' );
|
132 |
+
$role->add_cap( 'delete_others_ai1ec_events' );
|
133 |
+
$role->add_cap( 'delete_published_ai1ec_events' );
|
134 |
+
$role->add_cap( 'delete_private_ai1ec_events' );
|
135 |
+
// Publish events.
|
136 |
+
$role->add_cap( 'publish_ai1ec_events' );
|
137 |
+
// Read private events.
|
138 |
+
$role->add_cap( 'read_private_ai1ec_events' );
|
139 |
+
// Manage categories & tags.
|
140 |
+
$role->add_cap( 'manage_events_categories' );
|
141 |
+
// Manage calendar feeds.
|
142 |
+
$role->add_cap( 'manage_ai1ec_feeds' );
|
143 |
+
|
144 |
+
if( $role_name == 'administrator' ) {
|
145 |
+
// Change calendar themes & manage calendar options.
|
146 |
+
$role->add_cap( 'switch_ai1ec_themes' );
|
147 |
+
$role->add_cap( 'manage_ai1ec_options' );
|
148 |
+
}
|
149 |
+
}
|
150 |
+
}
|
151 |
+
|
152 |
// ===============================
|
153 |
// = labels for custom post type =
|
154 |
// ===============================
|
180 |
$args = array(
|
181 |
'labels' => $labels,
|
182 |
'public' => true,
|
183 |
+
'publicly_queryable' => true,
|
184 |
+
'show_ui' => true,
|
185 |
+
'show_in_menu' => true,
|
186 |
+
'query_var' => true,
|
187 |
+
'rewrite' => true,
|
188 |
+
'capability_type' => array( 'ai1ec_event', 'ai1ec_events' ),
|
189 |
+
'capabilities' => array(
|
190 |
+
'read_post' => 'read_ai1ec_event',
|
191 |
+
'edit_post' => 'edit_ai1ec_event',
|
192 |
+
'edit_posts' => 'edit_ai1ec_events',
|
193 |
+
'edit_others_posts' => 'edit_others_ai1ec_events',
|
194 |
+
'edit_private_posts' => 'edit_private_ai1ec_events',
|
195 |
+
'edit_published_posts' => 'edit_published_ai1ec_events',
|
196 |
+
'delete_post' => 'delete_ai1ec_event',
|
197 |
+
'delete_posts' => 'delete_ai1ec_events',
|
198 |
+
'delete_others_posts' => 'delete_others_ai1ec_events',
|
199 |
+
'delete_published_posts' => 'delete_published_ai1ec_events',
|
200 |
+
'delete_private_posts' => 'delete_private_ai1ec_events',
|
201 |
+
'publish_posts' => 'publish_ai1ec_events',
|
202 |
+
'read_private_posts' => 'read_private_ai1ec_events' ),
|
203 |
+
'has_archive' => true,
|
204 |
+
'hierarchical' => false,
|
205 |
+
'menu_position' => 5,
|
206 |
+
'supports' => $supports,
|
207 |
+
'exclude_from_search' => $ai1ec_settings->exclude_from_search,
|
208 |
);
|
209 |
|
210 |
// ========================================
|
222 |
'name' => _x( 'Event Tags', 'Event tags taxonomy', AI1EC_PLUGIN_NAME ),
|
223 |
'singular_name' => _x( 'Event Tag', 'Event tags taxonomy (singular)', AI1EC_PLUGIN_NAME )
|
224 |
);
|
225 |
+
|
226 |
// ==================================
|
227 |
// = labels for event feeds taxonomy =
|
228 |
// ==================================
|
239 |
'hierarchical' => true,
|
240 |
'rewrite' => array( 'slug' => 'events_categories' ),
|
241 |
'capabilities' => array(
|
242 |
+
'manage_terms' => 'manage_events_categories',
|
243 |
+
'edit_terms' => 'manage_events_categories',
|
244 |
+
'delete_terms' => 'manage_events_categories',
|
245 |
+
'assign_terms' => 'edit_ai1ec_events'
|
246 |
)
|
247 |
);
|
248 |
|
254 |
'hierarchical' => false,
|
255 |
'rewrite' => array( 'slug' => 'events_tags' ),
|
256 |
'capabilities' => array(
|
257 |
+
'manage_terms' => 'manage_events_categories',
|
258 |
+
'edit_terms' => 'manage_events_categories',
|
259 |
+
'delete_terms' => 'manage_events_categories',
|
260 |
+
'assign_terms' => 'edit_ai1ec_events'
|
261 |
)
|
262 |
);
|
263 |
+
|
264 |
// ================================
|
265 |
// = args for event feeds taxonomy =
|
266 |
// ================================
|
269 |
'hierarchical' => false,
|
270 |
'rewrite' => array( 'slug' => 'events_feeds' ),
|
271 |
'capabilities' => array(
|
272 |
+
'manage_terms' => 'manage_events_categories',
|
273 |
+
'edit_terms' => 'manage_events_categories',
|
274 |
+
'delete_terms' => 'manage_events_categories',
|
275 |
+
'assign_terms' => 'edit_ai1ec_events'
|
276 |
),
|
277 |
'public' => false // don't show taxonomy in admin UI
|
278 |
);
|
286 |
// = register event tags taxonomy =
|
287 |
// ================================
|
288 |
register_taxonomy( 'events_tags', array( AI1EC_POST_TYPE ), $events_tags_args );
|
289 |
+
|
290 |
// ================================
|
291 |
// = register event tags taxonomy =
|
292 |
// ================================
|
318 |
wp_dropdown_categories( array(
|
319 |
'show_option_all' => __( 'Show All ', AI1EC_PLUGIN_NAME ) . $tax_obj->label,
|
320 |
'taxonomy' => $tax_slug,
|
321 |
+
'name' => $tax_obj->name,
|
322 |
+
'orderby' => 'name',
|
323 |
+
'selected' => isset( $_GET[$tax_slug] ) ? $_GET[$tax_slug] : '',
|
324 |
+
'hierarchical' => $tax_obj->hierarchical,
|
325 |
+
'show_count' => true,
|
326 |
+
'hide_if_empty' => true
|
327 |
));
|
328 |
}
|
329 |
}
|
340 |
**/
|
341 |
function get_all_items_name() {
|
342 |
|
343 |
+
// if current user can publish events
|
344 |
+
if( current_user_can( 'publish_ai1ec_events' ) ) {
|
345 |
+
// get all pending events
|
346 |
+
$query = new WP_Query( array ( 'post_type' => 'ai1ec_event', 'post_status' => 'pending', 'posts_per_page' => -1, ) );
|
347 |
+
|
348 |
+
// at least 1 pending event?
|
349 |
+
if( $query->post_count > 0 ) {
|
350 |
+
// append the pending events number to the menu
|
351 |
+
return sprintf(
|
352 |
+
__( 'All Events <span class="update-plugins count-%d" title="%d Pending Events"><span class="update-count">%d</span></span>', AI1EC_PLUGIN_NAME ),
|
353 |
+
$query->post_count, $query->post_count, $query->post_count );
|
354 |
+
}
|
355 |
+
}
|
356 |
+
|
357 |
+
// no pending events, or the user doesn't have sufficient capabilities
|
358 |
+
return __( 'All Events', AI1EC_PLUGIN_NAME );
|
359 |
}
|
360 |
|
361 |
/**
|
372 |
foreach( $filters as $tax_slug ) {
|
373 |
$var = &$query->query_vars[$tax_slug];
|
374 |
if( isset( $var ) ) {
|
375 |
+
$term = null;
|
376 |
|
377 |
+
if( is_numeric( $var ) )
|
378 |
+
$term = get_term_by( 'id', $var, $tax_slug );
|
379 |
else
|
380 |
+
$term = get_term_by( 'slug', $var, $tax_slug );
|
381 |
|
382 |
if( isset( $term->slug ) ) {
|
383 |
$var = $term->slug;
|
394 |
$query->query_vars["order"] = 'desc';
|
395 |
}
|
396 |
}
|
|
|
397 |
}
|
398 |
|
399 |
/**
|
424 |
/**
|
425 |
* add_meta_boxes function
|
426 |
*
|
427 |
+
* Display event meta box when creating or editing an event.
|
428 |
*
|
429 |
* @return void
|
430 |
**/
|
431 |
function add_meta_boxes() {
|
432 |
global $ai1ec_events_controller;
|
433 |
+
|
434 |
add_meta_box(
|
435 |
+
AI1EC_POST_TYPE,
|
436 |
+
__( 'Event Details', AI1EC_PLUGIN_NAME ),
|
437 |
+
array( &$ai1ec_events_controller, 'meta_box_view' ),
|
438 |
+
AI1EC_POST_TYPE,
|
439 |
+
'normal',
|
440 |
+
'high'
|
441 |
+
);
|
442 |
}
|
443 |
+
|
444 |
/**
|
445 |
* screen_layout_columns function
|
446 |
*
|
450 |
**/
|
451 |
function screen_layout_columns( $columns, $screen ) {
|
452 |
global $ai1ec_settings;
|
453 |
+
|
454 |
if( isset( $ai1ec_settings->settings_page ) && $screen == $ai1ec_settings->settings_page )
|
455 |
$columns[$ai1ec_settings->settings_page] = 2;
|
456 |
|
519 |
* @return mixed
|
520 |
**/
|
521 |
function get_param( $param, $default='' ) {
|
522 |
+
if( isset( $_POST[$param] ) )
|
523 |
+
return $_POST[$param];
|
524 |
+
if( isset( $_GET[$param] ) )
|
525 |
+
return $_GET[$param];
|
526 |
+
return $default;
|
527 |
+
}
|
528 |
|
529 |
/**
|
530 |
* get_param_delimiter_char function
|
535 |
*
|
536 |
* @return string
|
537 |
**/
|
538 |
+
function get_param_delimiter_char( $link ) {
|
539 |
+
return strpos( $link, '?' ) === false ? '?' : '&';
|
540 |
}
|
541 |
|
542 |
+
/**
|
543 |
* inject_categories function
|
544 |
*
|
545 |
* Displays event categories whenever post categories are requested
|
556 |
{
|
557 |
global $ai1ec_settings;
|
558 |
|
559 |
+
if( in_array( 'category', $taxonomies ) )
|
560 |
+
{
|
561 |
+
// Create fake calendar page category
|
562 |
+
$count_args = $args;
|
563 |
+
$count_args['fields'] = 'count';
|
564 |
+
$count = get_terms( 'events_categories', $count_args );
|
565 |
+
$post = get_post( $ai1ec_settings->calendar_page_id );
|
566 |
+
switch( $args['fields'] )
|
567 |
+
{
|
568 |
+
case 'all':
|
569 |
+
$calendar = (object) array(
|
570 |
+
'term_id' => AI1EC_FAKE_CATEGORY_ID,
|
571 |
+
'name' => $post->post_title,
|
572 |
+
'slug' => $post->post_name,
|
573 |
+
'taxonomy' => 'events_categories',
|
574 |
+
'description' => '',
|
575 |
+
'parent' => 0,
|
576 |
+
'count' => $count,
|
577 |
+
);
|
578 |
+
break;
|
579 |
+
case 'ids':
|
580 |
+
$calendar = 'ai1ec_calendar';
|
581 |
+
break;
|
582 |
+
case 'names':
|
583 |
+
$calendar = $post->post_title;
|
584 |
+
break;
|
585 |
+
}
|
586 |
+
$terms[] = $calendar;
|
587 |
+
|
588 |
+
if( $args['hierarchical'] ) {
|
589 |
+
$children = get_terms( 'events_categories', $args );
|
590 |
+
foreach( $children as &$child ) {
|
591 |
+
if( is_object( $child ) && $child->parent == 0 )
|
592 |
+
$child->parent = AI1EC_FAKE_CATEGORY_ID;
|
593 |
+
$terms[] = $child;
|
594 |
+
}
|
595 |
+
}
|
596 |
+
}
|
|
|
|
|
|
|
597 |
|
598 |
+
return $terms;
|
599 |
+
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
600 |
|
601 |
+
/**
|
602 |
+
* function calendar_term_link
|
603 |
+
*
|
604 |
+
* Corrects the URL for the calendar page when injected into the post
|
605 |
+
* categories.
|
606 |
+
*
|
607 |
+
* @param string $link The normally generated link
|
608 |
+
* @param object $term The term that we're getting the link for
|
609 |
+
* @param string $taxonomy The name of the taxonomy of interest
|
610 |
+
*
|
611 |
+
* @return string The correct link to the calendar page
|
612 |
+
*/
|
613 |
+
function calendar_term_link( $link, $term, $taxonomy )
|
614 |
+
{
|
615 |
+
global $ai1ec_calendar_helper;
|
616 |
+
|
617 |
+
if( $taxonomy == 'events_categories' ) {
|
618 |
+
if( $term->term_id == AI1EC_FAKE_CATEGORY_ID )
|
619 |
+
$link = $ai1ec_calendar_helper->get_calendar_url( null );
|
620 |
+
else
|
621 |
+
$link = $ai1ec_calendar_helper->get_calendar_url( null,
|
622 |
+
array( 'cat_ids' => array( $term->term_id ) )
|
623 |
+
);
|
624 |
+
}
|
625 |
+
|
626 |
+
return $link;
|
627 |
+
}
|
628 |
+
|
629 |
+
/**
|
630 |
+
* function selected_category_link
|
631 |
+
*
|
632 |
+
* Corrects the output of wp_list_categories so that the currently viewed
|
633 |
+
* event category (in calendar view) has the "active" CSS class applied to it.
|
634 |
+
*
|
635 |
+
* @param string $output The normally generated output of wp_list_categories()
|
636 |
+
* @param object $args The args passed to wp_list_categories()
|
637 |
+
*
|
638 |
+
* @return string The corrected output
|
639 |
+
*/
|
640 |
+
function selected_category_link( $output, $args )
|
641 |
+
{
|
642 |
+
global $ai1ec_calendar_controller, $ai1ec_settings;
|
643 |
+
|
644 |
+
// First check if current page is calendar
|
645 |
+
if( is_page( $ai1ec_settings->calendar_page_id ) )
|
646 |
+
{
|
647 |
+
$cat_ids = array_filter( explode( ',', $ai1ec_calendar_controller->get_requested_categories() ), 'is_numeric' );
|
648 |
+
if( $cat_ids ) {
|
649 |
+
// Mark each filtered event category link as selected
|
650 |
+
foreach( $cat_ids as $cat_id ) {
|
651 |
+
$output = str_replace(
|
652 |
+
'class="cat-item cat-item-' . $cat_id . '"',
|
653 |
+
'class="cat-item cat-item-' . $cat_id . ' current-cat current_page_item"',
|
654 |
+
$output );
|
655 |
+
}
|
656 |
+
// Mark calendar page link as selected parent
|
657 |
+
$output = str_replace(
|
658 |
+
'class="cat-item cat-item-' . AI1EC_FAKE_CATEGORY_ID . '"',
|
659 |
+
'class="cat-item cat-item-' . AI1EC_FAKE_CATEGORY_ID . ' current-cat-parent"',
|
660 |
+
$output );
|
661 |
+
} else {
|
662 |
+
// No categories filtered, so mark calendar page link as selected
|
663 |
+
$output = str_replace(
|
664 |
+
'class="cat-item cat-item-' . AI1EC_FAKE_CATEGORY_ID . '"',
|
665 |
+
'class="cat-item cat-item-' . AI1EC_FAKE_CATEGORY_ID . ' current-cat current_page_item"',
|
666 |
+
$output );
|
667 |
+
}
|
668 |
+
}
|
669 |
+
|
670 |
+
return $output;
|
671 |
+
}
|
672 |
|
673 |
/**
|
674 |
* admin_notices function
|
679 |
**/
|
680 |
function admin_notices() {
|
681 |
global $ai1ec_view_helper,
|
682 |
+
$ai1ec_settings,
|
683 |
+
$plugin_page,
|
684 |
+
$ai1ec_themes_controller;
|
685 |
+
|
686 |
+
if( ! $ai1ec_themes_controller->are_themes_available() ) {
|
687 |
+
$args = array(
|
688 |
+
'label' => 'All-in-One Calendar Notice',
|
689 |
+
'msg' => sprintf(
|
690 |
+
__( '<p><strong>Calendar Themes are not installed.</strong></p>' .
|
691 |
+
'<p>Our automated install couldn\'t install your themes automatically. ' .
|
692 |
+
'You will need to install calendar themes manually by following these steps:</p>' .
|
693 |
+
'<ol><li>Go to <strong>%s</strong>.</li>' .
|
694 |
+
'<li>Copy the <strong>%s</strong> folder to the clipboard.</li>' .
|
695 |
+
'<li>Go to <strong>%s</strong>.</li>' .
|
696 |
+
'<li>Paste the <strong>%s</strong> folder that you copied to the clipboard in step 2.</li>' .
|
697 |
+
'<li>Refresh this page and if this notice is gone, themes are installed.</li></ol>', AI1EC_PLUGIN_NAME ),
|
698 |
+
AI1EC_PATH,
|
699 |
+
AI1EC_THEMES_FOLDER,
|
700 |
+
WP_CONTENT_DIR,
|
701 |
+
AI1EC_THEMES_FOLDER )
|
702 |
+
);
|
703 |
+
$ai1ec_view_helper->display_admin( 'admin_notices.php', $args );
|
704 |
+
}
|
705 |
|
706 |
if( $ai1ec_settings->show_data_notification ) {
|
707 |
$args = array(
|
708 |
+
'label' => 'All-in-One Calendar Notice',
|
709 |
+
'msg' =>
|
710 |
+
sprintf(
|
711 |
+
__( '<p>We collect some basic information about how your calendar works in order to deliver a better ' .
|
712 |
+
'and faster calendar system and one that will help you promote your events even more.</p>' .
|
713 |
+
'<p>You can find more detailed information by <a href="%s" target="_blank">clicking here »</a></p>' .
|
714 |
+
'<p>You may opt out of sending data to us by unchecking "Allow Then.ly to collect statistics" checkbox located on plugin\'s <a href="%s">Settings page</a>.</p>', AI1EC_PLUGIN_NAME ),
|
715 |
+
'http://then.ly/all-in-one-event-calendar-privacy-policy/',
|
716 |
+
admin_url( AI1EC_SETTINGS_BASE_URL )
|
717 |
+
),
|
718 |
+
'button' => (object) array( 'class' => 'ai1ec-dismiss-notification', 'value' => 'Dismiss' ),
|
719 |
);
|
720 |
+
$ai1ec_view_helper->display_admin( 'admin_notices.php', $args );
|
721 |
}
|
722 |
|
723 |
+
// If calendar page ID has not been set, and we're not updating the settings
|
724 |
+
// page, the calendar is not properly set up yet.
|
725 |
+
if( ! $ai1ec_settings->calendar_page_id || ! get_option( 'timezone_string' ) && ! isset( $_REQUEST['ai1ec_save_settings'] ) ) {
|
726 |
+
$args = array();
|
727 |
+
$messages = array();
|
728 |
+
|
729 |
+
// Display messages for blog admin.
|
730 |
+
if( current_user_can( 'manage_ai1ec_options' ) ) {
|
731 |
+
// If not on the settings page already, direct user there.
|
732 |
+
if( $plugin_page == AI1EC_PLUGIN_NAME . '-settings' ) {
|
733 |
+
if( ! $ai1ec_settings->calendar_page_id ) {
|
734 |
+
$messages[] = __( 'Select an option in the <strong>Calendar page</strong> dropdown list.', AI1EC_PLUGIN_NAME );
|
735 |
+
}
|
736 |
+
if( ! get_option( 'timezone_string' ) ) {
|
737 |
+
$messages[] = __( 'Select an option in the <strong>Timezone</strong> dropdown list.', AI1EC_PLUGIN_NAME );
|
738 |
+
}
|
739 |
+
$messages[] = __( 'Click <strong>Update Settings</strong>.', AI1EC_PLUGIN_NAME );
|
740 |
+
}
|
741 |
+
// Else instruct user as to what to do on the settings page.
|
742 |
+
else {
|
743 |
+
$messages[] = sprintf(
|
744 |
+
__( 'The plugin is installed, but has not been configured. <a href="%s">Click here to set it up now »</a>', AI1EC_PLUGIN_NAME ),
|
745 |
+
admin_url( AI1EC_SETTINGS_BASE_URL )
|
746 |
+
);
|
747 |
}
|
748 |
+
}
|
749 |
// Else display messages for other blog users
|
750 |
+
else {
|
751 |
+
$messages[] = __( 'The plugin is installed, but has not been configured. Please log in as an Administrator to set it up.', AI1EC_PLUGIN_NAME );
|
752 |
+
}
|
753 |
+
|
754 |
+
// Format notice message.
|
755 |
+
if (count($messages) > 1) {
|
756 |
+
$args['msg'] = __( '<p>To set up the plugin:</p>', AI1EC_PLUGIN_NAME );
|
757 |
+
$args['msg'] .= '<ol><li>';
|
758 |
+
$args['msg'] .= implode( '</li><li>', $messages );
|
759 |
+
$args['msg'] .= '</li></ol>';
|
760 |
+
}
|
761 |
+
else {
|
762 |
+
$args['msg'] = "<p>$messages[0]</p>";
|
763 |
}
|
764 |
+
$args['label'] = __( 'All-in-One Calendar Notice', AI1EC_PLUGIN_NAME );
|
765 |
+
$ai1ec_view_helper->display_admin( 'admin_notices.php', $args );
|
766 |
+
}
|
767 |
+
}
|
768 |
+
|
769 |
+
/**
|
770 |
+
* Add Events items to "Right Now" widget in Dashboard.
|
771 |
+
*
|
772 |
+
* @return void
|
773 |
+
*/
|
774 |
+
function right_now_content_table_end() {
|
775 |
+
$num_events = wp_count_posts( AI1EC_POST_TYPE );
|
776 |
+
$num_cats = wp_count_terms( 'events_categories' );
|
777 |
+
$num_tags = wp_count_terms( 'events_tags' );
|
778 |
+
|
779 |
+
// Events.
|
780 |
+
$num = number_format_i18n( $num_events->publish );
|
781 |
+
$text = _n( 'Event', 'Events', $num_events->publish );
|
782 |
+
if ( current_user_can( 'edit_ai1ec_events' ) ) {
|
783 |
+
$num = "<a href='edit.php?post_type=" . AI1EC_POST_TYPE . "'>$num</a>";
|
784 |
+
$text = "<a href='edit.php?post_type=" . AI1EC_POST_TYPE . "'>$text</a>";
|
785 |
+
}
|
786 |
+
echo '<td class="first b b-ai1ec-event">' . $num . '</td>';
|
787 |
+
echo '<td class="t ai1ec-event">' . $text . '</td>';
|
788 |
+
|
789 |
+
echo '</tr><tr>';
|
790 |
+
|
791 |
+
// Event categories.
|
792 |
+
$num = number_format_i18n( $num_cats );
|
793 |
+
$text = _n( 'Event Category', 'Event Categories', $num_cats );
|
794 |
+
if ( current_user_can( 'manage_events_categories' ) ) {
|
795 |
+
$num = "<a href='edit-tags.php?taxonomy=events_categories'>$num</a>";
|
796 |
+
$text = "<a href='edit-tags.php?taxonomy=events_categories'>$text</a>";
|
797 |
+
}
|
798 |
+
echo '<td class="first b b-events-categories">' . $num . '</td>';
|
799 |
+
echo '<td class="t events-categories">' . $text . '</td>';
|
800 |
+
|
801 |
+
echo '</tr><tr>';
|
802 |
+
|
803 |
+
// Event tags.
|
804 |
+
$num = number_format_i18n( $num_tags );
|
805 |
+
$text = _n( 'Event Tag', 'Event Tags', $num_tags );
|
806 |
+
if ( current_user_can( 'manage_events_categories' ) ) {
|
807 |
+
$num = "<a href='edit-tags.php?taxonomy=events_tags'>$num</a>";
|
808 |
+
$text = "<a href='edit-tags.php?taxonomy=events_tags'>$text</a>";
|
809 |
+
}
|
810 |
+
echo '<td class="first b b-events-tags">' . $num . '</td>';
|
811 |
+
echo '<td class="t events-tags">' . $text . '</td>';
|
812 |
+
}
|
813 |
+
|
814 |
+
/**
|
815 |
+
* admin_enqueue_scripts function
|
816 |
+
*
|
817 |
+
* Enqueue any scripts and styles in the admin side, depending on context.
|
818 |
+
*
|
819 |
+
* @return void
|
820 |
+
*/
|
821 |
+
function admin_enqueue_scripts( $hook_suffix ) {
|
822 |
+
global $ai1ec_settings, $ai1ec_view_helper;
|
823 |
+
|
824 |
+
// Common styles.
|
825 |
+
$ai1ec_view_helper->admin_enqueue_style( 'ai1ec-admin', 'admin.css' );
|
826 |
+
|
827 |
+
switch( $hook_suffix ) {
|
828 |
+
// Event lists.
|
829 |
+
// Widgets screen.
|
830 |
+
case 'widgets.php':
|
831 |
+
// Scripts.
|
832 |
+
$ai1ec_view_helper->admin_enqueue_script( 'ai1ec-widget', 'widget.js', array( 'jquery' ), AI1EC_VERSION );
|
833 |
+
// Styles.
|
834 |
+
$ai1ec_view_helper->admin_enqueue_style( 'ai1ec-widget', '/widget.css', array(), AI1EC_VERSION );
|
835 |
+
break;
|
836 |
+
|
837 |
+
// Calendar settings & feeds screens.
|
838 |
+
case $ai1ec_settings->settings_page:
|
839 |
+
case $ai1ec_settings->feeds_page:
|
840 |
+
// Scripts.
|
841 |
+
wp_enqueue_script( 'common' );
|
842 |
+
wp_enqueue_script( 'wp-lists' );
|
843 |
+
wp_enqueue_script( 'postbox' );
|
844 |
+
|
845 |
+
$ai1ec_view_helper->admin_enqueue_script( 'ai1ec-settings', 'settings.js', array( 'jquery' ) );
|
846 |
+
wp_localize_script( 'ai1ec-settings', 'ai1ec_settings', array(
|
847 |
+
'page' => $ai1ec_settings->settings_page,
|
848 |
+
) );
|
849 |
+
// Styles.
|
850 |
+
$ai1ec_view_helper->admin_enqueue_style( 'ai1ec-settings', 'settings.css' );
|
851 |
+
$ai1ec_view_helper->admin_enqueue_style( 'thenly-bootstrap', 'bootstrap.min.css' );
|
852 |
+
break;
|
853 |
+
}
|
854 |
}
|
855 |
}
|
856 |
// END class
|
app/helper/class-ai1ec-calendar-helper.php
CHANGED
@@ -78,17 +78,26 @@ class Ai1ec_Calendar_Helper {
|
|
78 |
// ==========================================
|
79 |
for( $day = 1; $day <= $last_day; $day++ )
|
80 |
{
|
81 |
-
$_events = array();
|
82 |
$start_time = gmmktime( 0, 0, 0, $bits['mon'], $day, $bits['year'] );
|
83 |
$end_time = gmmktime( 0, 0, 0, $bits['mon'], $day + 1, $bits['year'] );
|
84 |
|
85 |
// Itemize events that fall under the current day
|
|
|
|
|
|
|
86 |
foreach( $month_events as $event ) {
|
87 |
$event_start = $ai1ec_events_helper->gmt_to_local( $event->start );
|
88 |
-
if( $event_start >= $start_time && $event_start < $end_time )
|
89 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
90 |
}
|
91 |
-
|
|
|
92 |
}
|
93 |
|
94 |
return apply_filters( 'ai1ec_get_events_for_month', $days_events, $time, $filter );
|
@@ -230,7 +239,7 @@ class Ai1ec_Calendar_Helper {
|
|
230 |
}
|
231 |
|
232 |
// Place copy of event in appropriate category
|
233 |
-
if( $_evt->allday )
|
234 |
$all_events[$day_start]['allday'][] = $_evt;
|
235 |
else
|
236 |
$all_events[$day_start]['notallday'][] = $_evt;
|
@@ -320,7 +329,7 @@ class Ai1ec_Calendar_Helper {
|
|
320 |
* @return array array of arrays as per function description
|
321 |
**/
|
322 |
function get_oneday_cell_array( $timestamp, $filter = array() )
|
323 |
-
{
|
324 |
global $ai1ec_events_helper, $ai1ec_settings;
|
325 |
|
326 |
// Decompose given date and current time into components, used below
|
@@ -355,7 +364,7 @@ class Ai1ec_Calendar_Helper {
|
|
355 |
}
|
356 |
|
357 |
// Place copy of event in appropriate category
|
358 |
-
if( $_evt->allday )
|
359 |
$all_events[$day_start]['allday'][] = $_evt;
|
360 |
else
|
361 |
$all_events[$day_start]['notallday'][] = $_evt;
|
@@ -365,7 +374,7 @@ class Ai1ec_Calendar_Helper {
|
|
365 |
// This will store the returned array
|
366 |
$days = array();
|
367 |
$day = $bits['mday'];
|
368 |
-
|
369 |
$day_date = gmmktime( 0, 0, 0, $bits['mon'], $day, $bits['year'] );
|
370 |
// Re-fetch date bits, since $bits['mday'] + 1 might be in the next month
|
371 |
$day_bits = $ai1ec_events_helper->gmgetdate( $day_date );
|
@@ -409,7 +418,7 @@ class Ai1ec_Calendar_Helper {
|
|
409 |
'allday' => $all_events[$day_date]['allday'],
|
410 |
'notallday' => $notallday,
|
411 |
);
|
412 |
-
|
413 |
// =========================================
|
414 |
// = Set one oneday events =
|
415 |
// =========================================
|
@@ -631,7 +640,7 @@ class Ai1ec_Calendar_Helper {
|
|
631 |
$date = $ai1ec_events_helper->gmt_to_local( $event->start );
|
632 |
$date = $ai1ec_events_helper->gmgetdate( $date );
|
633 |
$timestamp = gmmktime( 0, 0, 0, $date['mon'], $date['mday'], $date['year'] );
|
634 |
-
$category = $event->allday ? 'allday' : 'notallday';
|
635 |
$dates[$timestamp]['events'][$category][] = $event;
|
636 |
}
|
637 |
|
@@ -794,7 +803,7 @@ class Ai1ec_Calendar_Helper {
|
|
794 |
);
|
795 |
$links[] = array(
|
796 |
'id' => 'ai1ec-prev-day',
|
797 |
-
'text' =>
|
798 |
date_i18n( __( 'j F Y', AI1EC_PLUGIN_NAME ), gmmktime( 0, 0, 0, $bits['mon'], $bits['mday'] + 1, $bits['year'] ))
|
799 |
.' ›',
|
800 |
'href' => '#action=ai1ec_oneday&ai1ec_oneday_offset=' . ( $cur_offset + 1 ),
|
78 |
// ==========================================
|
79 |
for( $day = 1; $day <= $last_day; $day++ )
|
80 |
{
|
|
|
81 |
$start_time = gmmktime( 0, 0, 0, $bits['mon'], $day, $bits['year'] );
|
82 |
$end_time = gmmktime( 0, 0, 0, $bits['mon'], $day + 1, $bits['year'] );
|
83 |
|
84 |
// Itemize events that fall under the current day
|
85 |
+
$_events = array();
|
86 |
+
$_allday_events = array();
|
87 |
+
$_multiday_events = array();
|
88 |
foreach( $month_events as $event ) {
|
89 |
$event_start = $ai1ec_events_helper->gmt_to_local( $event->start );
|
90 |
+
if( $event_start >= $start_time && $event_start < $end_time ) {
|
91 |
+
if( $event->allday )
|
92 |
+
$_allday_events[] = $event;
|
93 |
+
elseif ($event->multiday)
|
94 |
+
$_multiday_events[] = $event;
|
95 |
+
else
|
96 |
+
$_events[] = $event;
|
97 |
+
}
|
98 |
}
|
99 |
+
|
100 |
+
$days_events[$day] = array_merge( $_multiday_events, $_allday_events, $_events );
|
101 |
}
|
102 |
|
103 |
return apply_filters( 'ai1ec_get_events_for_month', $days_events, $time, $filter );
|
239 |
}
|
240 |
|
241 |
// Place copy of event in appropriate category
|
242 |
+
if( $_evt->allday || $_evt->multiday)
|
243 |
$all_events[$day_start]['allday'][] = $_evt;
|
244 |
else
|
245 |
$all_events[$day_start]['notallday'][] = $_evt;
|
329 |
* @return array array of arrays as per function description
|
330 |
**/
|
331 |
function get_oneday_cell_array( $timestamp, $filter = array() )
|
332 |
+
{
|
333 |
global $ai1ec_events_helper, $ai1ec_settings;
|
334 |
|
335 |
// Decompose given date and current time into components, used below
|
364 |
}
|
365 |
|
366 |
// Place copy of event in appropriate category
|
367 |
+
if( $_evt->allday || $_evt->multiday)
|
368 |
$all_events[$day_start]['allday'][] = $_evt;
|
369 |
else
|
370 |
$all_events[$day_start]['notallday'][] = $_evt;
|
374 |
// This will store the returned array
|
375 |
$days = array();
|
376 |
$day = $bits['mday'];
|
377 |
+
|
378 |
$day_date = gmmktime( 0, 0, 0, $bits['mon'], $day, $bits['year'] );
|
379 |
// Re-fetch date bits, since $bits['mday'] + 1 might be in the next month
|
380 |
$day_bits = $ai1ec_events_helper->gmgetdate( $day_date );
|
418 |
'allday' => $all_events[$day_date]['allday'],
|
419 |
'notallday' => $notallday,
|
420 |
);
|
421 |
+
|
422 |
// =========================================
|
423 |
// = Set one oneday events =
|
424 |
// =========================================
|
640 |
$date = $ai1ec_events_helper->gmt_to_local( $event->start );
|
641 |
$date = $ai1ec_events_helper->gmgetdate( $date );
|
642 |
$timestamp = gmmktime( 0, 0, 0, $date['mon'], $date['mday'], $date['year'] );
|
643 |
+
$category = $event->allday||$event->multiday ? 'allday' : 'notallday';
|
644 |
$dates[$timestamp]['events'][$category][] = $event;
|
645 |
}
|
646 |
|
803 |
);
|
804 |
$links[] = array(
|
805 |
'id' => 'ai1ec-prev-day',
|
806 |
+
'text' =>
|
807 |
date_i18n( __( 'j F Y', AI1EC_PLUGIN_NAME ), gmmktime( 0, 0, 0, $bits['mon'], $bits['mday'] + 1, $bits['year'] ))
|
808 |
.' ›',
|
809 |
'href' => '#action=ai1ec_oneday&ai1ec_oneday_offset=' . ( $cur_offset + 1 ),
|
app/helper/class-ai1ec-events-helper.php
CHANGED
@@ -149,7 +149,7 @@ class Ai1ec_Events_Helper {
|
|
149 |
'end' => $event->end,
|
150 |
);
|
151 |
$duration = $event->getDuration();
|
152 |
-
|
153 |
// Timestamp of today's date + 10 years
|
154 |
$tif = gmmktime() + 315569260; //315 569 260 = 10 years in seconds
|
155 |
// Always cache initial instance
|
@@ -237,7 +237,7 @@ class Ai1ec_Events_Helper {
|
|
237 |
}
|
238 |
}
|
239 |
}
|
240 |
-
|
241 |
/**
|
242 |
* date_match_exdates function
|
243 |
*
|
@@ -260,7 +260,7 @@ class Ai1ec_Events_Helper {
|
|
260 |
}
|
261 |
return false;
|
262 |
}
|
263 |
-
|
264 |
/**
|
265 |
* generate_dates_array_from_ics_rule function
|
266 |
*
|
@@ -615,8 +615,6 @@ class Ai1ec_Events_Helper {
|
|
615 |
/**
|
616 |
* row_frequency function
|
617 |
*
|
618 |
-
*
|
619 |
-
*
|
620 |
* @return void
|
621 |
**/
|
622 |
function row_frequency( $visible = false, $selected = false ) {
|
@@ -633,7 +631,7 @@ class Ai1ec_Events_Helper {
|
|
633 |
'visible' => $visible,
|
634 |
'frequency' => $this->create_select_element( 'ai1ec_frequency', $frequency, $selected )
|
635 |
);
|
636 |
-
return $ai1ec_view_helper->
|
637 |
}
|
638 |
|
639 |
/**
|
@@ -650,7 +648,7 @@ class Ai1ec_Events_Helper {
|
|
650 |
'visible' => $visible,
|
651 |
'count' => $this->create_count_input( 'ai1ec_daily_count', $selected, 365 ) . __( 'day(s)', AI1EC_PLUGIN_NAME )
|
652 |
);
|
653 |
-
return $ai1ec_view_helper->
|
654 |
}
|
655 |
|
656 |
/**
|
@@ -680,7 +678,7 @@ class Ai1ec_Events_Helper {
|
|
680 |
'count' => $this->create_count_input( 'ai1ec_weekly_count', $count, 52 ) . __( 'week(s)', AI1EC_PLUGIN_NAME ),
|
681 |
'week_days' => $this->create_list_element( 'ai1ec_weekly_date_select', $options, $selected )
|
682 |
);
|
683 |
-
return $ai1ec_view_helper->
|
684 |
}
|
685 |
|
686 |
/**
|
@@ -732,7 +730,7 @@ class Ai1ec_Events_Helper {
|
|
732 |
// get days from start_of_week until the last day
|
733 |
for( $i = $start_of_week; $i <= 6; ++$i )
|
734 |
$options_wd[$this->get_weekday_by_id( $i )] = $wp_locale->weekday[$i];
|
735 |
-
|
736 |
// get days from 0 until start_of_week
|
737 |
if( $start_of_week > 0 ) {
|
738 |
for( $i = 0; $i < $start_of_week; $i++ )
|
@@ -755,7 +753,7 @@ class Ai1ec_Events_Helper {
|
|
755 |
'day_nums' => $this->create_select_element( 'ai1ec_monthly_byday_num', $options_dn ),
|
756 |
'week_days' => $this->create_select_element( 'ai1ec_monthly_byday_weekday', $options_wd )
|
757 |
);
|
758 |
-
return $ai1ec_view_helper->
|
759 |
}
|
760 |
|
761 |
/**
|
@@ -774,7 +772,7 @@ class Ai1ec_Events_Helper {
|
|
774 |
'year' => $this->create_yearly_date_select( $year ),
|
775 |
'on_the_select' => $this->create_on_the_select( $first, $second )
|
776 |
);
|
777 |
-
return $ai1ec_view_helper->
|
778 |
}
|
779 |
|
780 |
/**
|
@@ -940,6 +938,23 @@ class Ai1ec_Events_Helper {
|
|
940 |
return date_i18n( 'M j', $timestamp, true );
|
941 |
}
|
942 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
943 |
/**
|
944 |
* get_medium_time function
|
945 |
*
|
@@ -1052,7 +1067,7 @@ class Ai1ec_Events_Helper {
|
|
1052 |
if( $timestamp == false ) {
|
1053 |
$timestamp = gmmktime();
|
1054 |
}
|
1055 |
-
|
1056 |
if( $origin_tz === null ) {
|
1057 |
if( ! is_string( $origin_tz = date_default_timezone_get() ) ) {
|
1058 |
return false; // A UTC timestamp was returned -- bail out!
|
@@ -1116,15 +1131,12 @@ class Ai1ec_Events_Helper {
|
|
1116 |
*
|
1117 |
* Returns the URL to the Google Map for the given event object.
|
1118 |
*
|
1119 |
-
* @param Ai1ec_Event
|
1120 |
*
|
1121 |
* @return string
|
1122 |
**/
|
1123 |
function get_gmap_url( &$event ) {
|
1124 |
-
$
|
1125 |
-
$lang = $this->get_lang();
|
1126 |
-
|
1127 |
-
return "http://www.google.com/maps?f=q&hl=" . $lang . "&source=embed&q=" . $location_arg;
|
1128 |
}
|
1129 |
|
1130 |
/**
|
@@ -1266,7 +1278,7 @@ class Ai1ec_Events_Helper {
|
|
1266 |
$color = $this->get_category_color( $term_id );
|
1267 |
$cat = get_term( $term_id, 'events_categories' );
|
1268 |
if( ! is_null( $color ) && ! empty( $color ) )
|
1269 |
-
return '<div class="ai1ec-category-color" style="background:' . $color . '" title="' . esc_attr( $cat->name ) . '"></div>';
|
1270 |
|
1271 |
return '';
|
1272 |
}
|
@@ -1284,7 +1296,7 @@ class Ai1ec_Events_Helper {
|
|
1284 |
$color = $this->get_category_color( $term_id );
|
1285 |
if( ! is_null( $color ) && ! empty( $color ) ) {
|
1286 |
if( $allday )
|
1287 |
-
return 'background: ' . $color . ';';
|
1288 |
else
|
1289 |
return 'color: ' . $color . ' !important;';
|
1290 |
}
|
@@ -1293,13 +1305,12 @@ class Ai1ec_Events_Helper {
|
|
1293 |
}
|
1294 |
|
1295 |
/**
|
1296 |
-
* get_event_category_faded_color function
|
1297 |
-
*
|
1298 |
* Returns a faded version of the event's category color in hex format.
|
1299 |
*
|
1300 |
* @param int $term_id The Event Category's term ID
|
|
|
1301 |
* @return string
|
1302 |
-
|
1303 |
function get_event_category_faded_color( $term_id ) {
|
1304 |
$color = $this->get_category_color( $term_id );
|
1305 |
if( ! is_null( $color ) && ! empty( $color ) ) {
|
@@ -1325,6 +1336,26 @@ class Ai1ec_Events_Helper {
|
|
1325 |
return '';
|
1326 |
}
|
1327 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1328 |
/**
|
1329 |
* get_event_category_colors function
|
1330 |
*
|
@@ -1464,7 +1495,7 @@ class Ai1ec_Events_Helper {
|
|
1464 |
} else {
|
1465 |
$until = $this->gmt_to_local( $until );
|
1466 |
}
|
1467 |
-
|
1468 |
$until = gmdate( "Ymd\THis\Z", $until );
|
1469 |
$rule_props = explode( ';', $rule );
|
1470 |
$_rule = array();
|
@@ -1505,7 +1536,7 @@ class Ai1ec_Events_Helper {
|
|
1505 |
function exception_dates_to_gmt( $exception_dates ) {
|
1506 |
return $this->exception_dates_to( $exception_dates, true );
|
1507 |
}
|
1508 |
-
|
1509 |
/**
|
1510 |
* exception_dates_to function
|
1511 |
*
|
@@ -1521,7 +1552,7 @@ class Ai1ec_Events_Helper {
|
|
1521 |
} else {
|
1522 |
$_exdate = $this->gmt_to_local( $_exdate );
|
1523 |
}
|
1524 |
-
|
1525 |
$dates_to_add[] = gmdate( "Ymd\THis\Z", $_exdate );
|
1526 |
}
|
1527 |
// append dates to the string and return it;
|
@@ -1794,7 +1825,7 @@ class Ai1ec_Events_Helper {
|
|
1794 |
|
1795 |
return $permalink;
|
1796 |
}
|
1797 |
-
|
1798 |
/**
|
1799 |
* get_repeat_box function
|
1800 |
*
|
@@ -1802,19 +1833,19 @@ class Ai1ec_Events_Helper {
|
|
1802 |
**/
|
1803 |
function get_repeat_box() {
|
1804 |
global $ai1ec_view_helper;
|
1805 |
-
|
1806 |
$repeat = (int) $_REQUEST["repeat"];
|
1807 |
$repeat = $repeat == 1 ? 1 : 0;
|
1808 |
$post_id = (int) $_REQUEST["post_id"];
|
1809 |
$count = 100;
|
1810 |
$end = null;
|
1811 |
$until = gmmktime();
|
1812 |
-
|
1813 |
// try getting the event
|
1814 |
try {
|
1815 |
$event = new Ai1ec_Event( $post_id );
|
1816 |
$rule = '';
|
1817 |
-
|
1818 |
if( $repeat ) {
|
1819 |
$rule = empty( $event->recurrence_rules ) ? '' : $event->recurrence_rules;
|
1820 |
} else {
|
@@ -1822,7 +1853,7 @@ class Ai1ec_Events_Helper {
|
|
1822 |
}
|
1823 |
|
1824 |
$rc = new SG_iCal_Recurrence( new SG_iCal_Line( 'RRULE:' . $rule ) );
|
1825 |
-
|
1826 |
if( $until = $rc->getUntil() ) {
|
1827 |
$until = ( is_numeric( $until ) ) ? $until : strtotime( $until );
|
1828 |
}
|
@@ -1830,7 +1861,7 @@ class Ai1ec_Events_Helper {
|
|
1830 |
$count = ( is_numeric( $count ) ) ? $count : 100;
|
1831 |
}
|
1832 |
} catch( Ai1ec_Event_Not_Found $e ) { /* event wasn't found, keep defaults */ }
|
1833 |
-
|
1834 |
$args = array(
|
1835 |
'row_daily' => $this->row_daily(),
|
1836 |
'row_weekly' => $this->row_weekly(),
|
@@ -1843,14 +1874,13 @@ class Ai1ec_Events_Helper {
|
|
1843 |
);
|
1844 |
$output = array(
|
1845 |
"error" => false,
|
1846 |
-
"message" => $ai1ec_view_helper->
|
1847 |
"repeat" => $repeat
|
1848 |
);
|
1849 |
|
1850 |
echo json_encode( $output );
|
1851 |
exit();
|
1852 |
}
|
1853 |
-
|
1854 |
/**
|
1855 |
* get_date_picker_box function
|
1856 |
*
|
@@ -1858,22 +1888,22 @@ class Ai1ec_Events_Helper {
|
|
1858 |
**/
|
1859 |
function get_date_picker_box() {
|
1860 |
global $ai1ec_view_helper;
|
1861 |
-
|
1862 |
$dates = '';
|
1863 |
-
|
1864 |
$args = array(
|
1865 |
'dates' => $dates
|
1866 |
);
|
1867 |
-
|
1868 |
$output = array(
|
1869 |
"error" => false,
|
1870 |
-
"message" => $ai1ec_view_helper->
|
1871 |
);
|
1872 |
|
1873 |
echo json_encode( $output );
|
1874 |
exit();
|
1875 |
}
|
1876 |
-
|
1877 |
/**
|
1878 |
* shortcode function
|
1879 |
*
|
@@ -1897,4 +1927,4 @@ class Ai1ec_Events_Helper {
|
|
1897 |
return - ( 7 - ( $ai1ec_settings->week_start_day - $wday ) ) % 7;
|
1898 |
}
|
1899 |
}
|
1900 |
-
// END class
|
149 |
'end' => $event->end,
|
150 |
);
|
151 |
$duration = $event->getDuration();
|
152 |
+
|
153 |
// Timestamp of today's date + 10 years
|
154 |
$tif = gmmktime() + 315569260; //315 569 260 = 10 years in seconds
|
155 |
// Always cache initial instance
|
237 |
}
|
238 |
}
|
239 |
}
|
240 |
+
|
241 |
/**
|
242 |
* date_match_exdates function
|
243 |
*
|
260 |
}
|
261 |
return false;
|
262 |
}
|
263 |
+
|
264 |
/**
|
265 |
* generate_dates_array_from_ics_rule function
|
266 |
*
|
615 |
/**
|
616 |
* row_frequency function
|
617 |
*
|
|
|
|
|
618 |
* @return void
|
619 |
**/
|
620 |
function row_frequency( $visible = false, $selected = false ) {
|
631 |
'visible' => $visible,
|
632 |
'frequency' => $this->create_select_element( 'ai1ec_frequency', $frequency, $selected )
|
633 |
);
|
634 |
+
return $ai1ec_view_helper->get_admin_view( 'row_frequency.php', $args );
|
635 |
}
|
636 |
|
637 |
/**
|
648 |
'visible' => $visible,
|
649 |
'count' => $this->create_count_input( 'ai1ec_daily_count', $selected, 365 ) . __( 'day(s)', AI1EC_PLUGIN_NAME )
|
650 |
);
|
651 |
+
return $ai1ec_view_helper->get_admin_view( 'row_daily.php', $args );
|
652 |
}
|
653 |
|
654 |
/**
|
678 |
'count' => $this->create_count_input( 'ai1ec_weekly_count', $count, 52 ) . __( 'week(s)', AI1EC_PLUGIN_NAME ),
|
679 |
'week_days' => $this->create_list_element( 'ai1ec_weekly_date_select', $options, $selected )
|
680 |
);
|
681 |
+
return $ai1ec_view_helper->get_admin_view( 'row_weekly.php', $args );
|
682 |
}
|
683 |
|
684 |
/**
|
730 |
// get days from start_of_week until the last day
|
731 |
for( $i = $start_of_week; $i <= 6; ++$i )
|
732 |
$options_wd[$this->get_weekday_by_id( $i )] = $wp_locale->weekday[$i];
|
733 |
+
|
734 |
// get days from 0 until start_of_week
|
735 |
if( $start_of_week > 0 ) {
|
736 |
for( $i = 0; $i < $start_of_week; $i++ )
|
753 |
'day_nums' => $this->create_select_element( 'ai1ec_monthly_byday_num', $options_dn ),
|
754 |
'week_days' => $this->create_select_element( 'ai1ec_monthly_byday_weekday', $options_wd )
|
755 |
);
|
756 |
+
return $ai1ec_view_helper->get_admin_view( 'row_monthly.php', $args );
|
757 |
}
|
758 |
|
759 |
/**
|
772 |
'year' => $this->create_yearly_date_select( $year ),
|
773 |
'on_the_select' => $this->create_on_the_select( $first, $second )
|
774 |
);
|
775 |
+
return $ai1ec_view_helper->get_admin_view( 'row_yearly.php', $args );
|
776 |
}
|
777 |
|
778 |
/**
|
938 |
return date_i18n( 'M j', $timestamp, true );
|
939 |
}
|
940 |
|
941 |
+
/**
|
942 |
+
* get_multiday_end_date function
|
943 |
+
*
|
944 |
+
* Format a date for use in JS functions to extend multiday bars;
|
945 |
+
* this is also converted to the local timezone.
|
946 |
+
*
|
947 |
+
* @param int $timestamp
|
948 |
+
* @param bool $convert_from_gmt Whether to convert from GMT time to local
|
949 |
+
*
|
950 |
+
* @return string
|
951 |
+
**/
|
952 |
+
function get_multiday_end_date( $timestamp, $convert_from_gmt = true ) {
|
953 |
+
if( $convert_from_gmt )
|
954 |
+
$timestamp = $this->gmt_to_local( $timestamp );
|
955 |
+
return date_i18n( 'F Y d', $timestamp, true );
|
956 |
+
}
|
957 |
+
|
958 |
/**
|
959 |
* get_medium_time function
|
960 |
*
|
1067 |
if( $timestamp == false ) {
|
1068 |
$timestamp = gmmktime();
|
1069 |
}
|
1070 |
+
|
1071 |
if( $origin_tz === null ) {
|
1072 |
if( ! is_string( $origin_tz = date_default_timezone_get() ) ) {
|
1073 |
return false; // A UTC timestamp was returned -- bail out!
|
1131 |
*
|
1132 |
* Returns the URL to the Google Map for the given event object.
|
1133 |
*
|
1134 |
+
* @param Ai1ec_Event &$event The event object to display a map for
|
1135 |
*
|
1136 |
* @return string
|
1137 |
**/
|
1138 |
function get_gmap_url( &$event ) {
|
1139 |
+
return "http://www.google.com/maps?f=q&hl=" . $this->get_lang() . "&source=embed&q=" . urlencode( $event->address );
|
|
|
|
|
|
|
1140 |
}
|
1141 |
|
1142 |
/**
|
1278 |
$color = $this->get_category_color( $term_id );
|
1279 |
$cat = get_term( $term_id, 'events_categories' );
|
1280 |
if( ! is_null( $color ) && ! empty( $color ) )
|
1281 |
+
return '<div class="ai1ec-category-color" style="background:' . $color . '" rel="tooltip" title="' . esc_attr( $cat->name ) . '"></div>';
|
1282 |
|
1283 |
return '';
|
1284 |
}
|
1296 |
$color = $this->get_category_color( $term_id );
|
1297 |
if( ! is_null( $color ) && ! empty( $color ) ) {
|
1298 |
if( $allday )
|
1299 |
+
return 'background-color: ' . $color . ';';
|
1300 |
else
|
1301 |
return 'color: ' . $color . ' !important;';
|
1302 |
}
|
1305 |
}
|
1306 |
|
1307 |
/**
|
|
|
|
|
1308 |
* Returns a faded version of the event's category color in hex format.
|
1309 |
*
|
1310 |
* @param int $term_id The Event Category's term ID
|
1311 |
+
*
|
1312 |
* @return string
|
1313 |
+
*/
|
1314 |
function get_event_category_faded_color( $term_id ) {
|
1315 |
$color = $this->get_category_color( $term_id );
|
1316 |
if( ! is_null( $color ) && ! empty( $color ) ) {
|
1336 |
return '';
|
1337 |
}
|
1338 |
|
1339 |
+
/**
|
1340 |
+
* Returns an opacity-faded version of the event's category color in rgba
|
1341 |
+
* format.
|
1342 |
+
*
|
1343 |
+
* @param int $term_id The Event Category's term ID
|
1344 |
+
*
|
1345 |
+
* @return string
|
1346 |
+
*/
|
1347 |
+
function get_event_category_rgba_color( $term_id ) {
|
1348 |
+
$color = $this->get_category_color( $term_id );
|
1349 |
+
if( ! is_null( $color ) && ! empty( $color ) ) {
|
1350 |
+
$p1 = hexdec( substr( $color, 1, 2 ) );
|
1351 |
+
$p2 = hexdec( substr( $color, 3, 2 ) );
|
1352 |
+
$p3 = hexdec( substr( $color, 5, 2 ) );
|
1353 |
+
return "rgba($p1, $p2, $p3, 0.3)";
|
1354 |
+
}
|
1355 |
+
|
1356 |
+
return '';
|
1357 |
+
}
|
1358 |
+
|
1359 |
/**
|
1360 |
* get_event_category_colors function
|
1361 |
*
|
1495 |
} else {
|
1496 |
$until = $this->gmt_to_local( $until );
|
1497 |
}
|
1498 |
+
|
1499 |
$until = gmdate( "Ymd\THis\Z", $until );
|
1500 |
$rule_props = explode( ';', $rule );
|
1501 |
$_rule = array();
|
1536 |
function exception_dates_to_gmt( $exception_dates ) {
|
1537 |
return $this->exception_dates_to( $exception_dates, true );
|
1538 |
}
|
1539 |
+
|
1540 |
/**
|
1541 |
* exception_dates_to function
|
1542 |
*
|
1552 |
} else {
|
1553 |
$_exdate = $this->gmt_to_local( $_exdate );
|
1554 |
}
|
1555 |
+
|
1556 |
$dates_to_add[] = gmdate( "Ymd\THis\Z", $_exdate );
|
1557 |
}
|
1558 |
// append dates to the string and return it;
|
1825 |
|
1826 |
return $permalink;
|
1827 |
}
|
1828 |
+
|
1829 |
/**
|
1830 |
* get_repeat_box function
|
1831 |
*
|
1833 |
**/
|
1834 |
function get_repeat_box() {
|
1835 |
global $ai1ec_view_helper;
|
1836 |
+
|
1837 |
$repeat = (int) $_REQUEST["repeat"];
|
1838 |
$repeat = $repeat == 1 ? 1 : 0;
|
1839 |
$post_id = (int) $_REQUEST["post_id"];
|
1840 |
$count = 100;
|
1841 |
$end = null;
|
1842 |
$until = gmmktime();
|
1843 |
+
|
1844 |
// try getting the event
|
1845 |
try {
|
1846 |
$event = new Ai1ec_Event( $post_id );
|
1847 |
$rule = '';
|
1848 |
+
|
1849 |
if( $repeat ) {
|
1850 |
$rule = empty( $event->recurrence_rules ) ? '' : $event->recurrence_rules;
|
1851 |
} else {
|
1853 |
}
|
1854 |
|
1855 |
$rc = new SG_iCal_Recurrence( new SG_iCal_Line( 'RRULE:' . $rule ) );
|
1856 |
+
|
1857 |
if( $until = $rc->getUntil() ) {
|
1858 |
$until = ( is_numeric( $until ) ) ? $until : strtotime( $until );
|
1859 |
}
|
1861 |
$count = ( is_numeric( $count ) ) ? $count : 100;
|
1862 |
}
|
1863 |
} catch( Ai1ec_Event_Not_Found $e ) { /* event wasn't found, keep defaults */ }
|
1864 |
+
|
1865 |
$args = array(
|
1866 |
'row_daily' => $this->row_daily(),
|
1867 |
'row_weekly' => $this->row_weekly(),
|
1874 |
);
|
1875 |
$output = array(
|
1876 |
"error" => false,
|
1877 |
+
"message" => $ai1ec_view_helper->get_admin_view( 'box_repeat.php', $args ),
|
1878 |
"repeat" => $repeat
|
1879 |
);
|
1880 |
|
1881 |
echo json_encode( $output );
|
1882 |
exit();
|
1883 |
}
|
|
|
1884 |
/**
|
1885 |
* get_date_picker_box function
|
1886 |
*
|
1888 |
**/
|
1889 |
function get_date_picker_box() {
|
1890 |
global $ai1ec_view_helper;
|
1891 |
+
|
1892 |
$dates = '';
|
1893 |
+
|
1894 |
$args = array(
|
1895 |
'dates' => $dates
|
1896 |
);
|
1897 |
+
|
1898 |
$output = array(
|
1899 |
"error" => false,
|
1900 |
+
"message" => $ai1ec_view_helper->get_admin_view( 'box_date_picker.php', $args ),
|
1901 |
);
|
1902 |
|
1903 |
echo json_encode( $output );
|
1904 |
exit();
|
1905 |
}
|
1906 |
+
|
1907 |
/**
|
1908 |
* shortcode function
|
1909 |
*
|
1927 |
return - ( 7 - ( $ai1ec_settings->week_start_day - $wday ) ) % 7;
|
1928 |
}
|
1929 |
}
|
1930 |
+
// END class
|
app/helper/class-ai1ec-exporter-helper.php
CHANGED
@@ -65,7 +65,7 @@ class Ai1ec_Exporter_Helper {
|
|
65 |
$uid = $event->ical_uid ? $event->ical_uid : $event->post->guid;
|
66 |
$e->setProperty( 'uid', $uid );
|
67 |
$e->setProperty( 'url', get_permalink( $event->post_id ) );
|
68 |
-
$e->setProperty( 'summary', html_entity_decode( apply_filters( 'the_title', $event->post->post_title ), ENT_QUOTES ) );
|
69 |
$content = apply_filters( 'the_content', $event->post->post_content );
|
70 |
$content = str_replace(']]>', ']]>', $content);
|
71 |
$e->setProperty( 'description', $content );
|
65 |
$uid = $event->ical_uid ? $event->ical_uid : $event->post->guid;
|
66 |
$e->setProperty( 'uid', $uid );
|
67 |
$e->setProperty( 'url', get_permalink( $event->post_id ) );
|
68 |
+
$e->setProperty( 'summary', html_entity_decode( apply_filters( 'the_title', $event->post->post_title ), ENT_QUOTES, 'UTF-8' ) );
|
69 |
$content = apply_filters( 'the_content', $event->post->post_content );
|
70 |
$content = str_replace(']]>', ']]>', $content);
|
71 |
$e->setProperty( 'description', $content );
|
app/helper/class-ai1ec-settings-helper.php
CHANGED
@@ -102,10 +102,9 @@ class Ai1ec_Settings_Helper {
|
|
102 |
if( is_numeric( $selected_page_id ) && $selected_page_id > 0 ) {
|
103 |
$permalink = get_permalink( $selected_page_id );
|
104 |
?>
|
105 |
-
<
|
106 |
-
<a href="<?php echo $permalink ?>" target="_blank">
|
107 |
<?php printf( __( 'View "%s" »', AI1EC_PLUGIN_NAME ), $selected_title ) ?>
|
108 |
-
</a>
|
109 |
<?php
|
110 |
}
|
111 |
return ob_get_clean();
|
@@ -273,7 +272,7 @@ class Ai1ec_Settings_Helper {
|
|
273 |
'feed_id' => $row->feed_id,
|
274 |
'events' => $events
|
275 |
);
|
276 |
-
$ai1ec_view_helper->
|
277 |
endforeach;
|
278 |
|
279 |
return ob_get_clean();
|
@@ -306,76 +305,86 @@ class Ai1ec_Settings_Helper {
|
|
306 |
return ob_get_clean();
|
307 |
}
|
308 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
309 |
/**
|
310 |
-
*
|
311 |
-
*
|
312 |
-
* Displays the General Settings meta box.
|
313 |
*
|
314 |
* @return void
|
315 |
-
|
316 |
-
function
|
317 |
global $ai1ec_view_helper,
|
318 |
-
$ai1ec_settings_helper,
|
319 |
$ai1ec_settings;
|
320 |
|
321 |
-
$calendar_page = $ai1ec_settings_helper->wp_pages_dropdown(
|
322 |
-
'calendar_page_id',
|
323 |
-
$ai1ec_settings->calendar_page_id,
|
324 |
-
__( 'Calendar', AI1EC_PLUGIN_NAME )
|
325 |
-
);
|
326 |
-
$calendar_css_selector = $ai1ec_settings->calendar_css_selector;
|
327 |
-
$week_start_day = $ai1ec_settings_helper->get_week_dropdown( get_option( 'start_of_week' ) );
|
328 |
-
$agenda_events_per_page = $ai1ec_settings->agenda_events_per_page;
|
329 |
-
$include_events_in_rss =
|
330 |
-
'<input type="checkbox" name="include_events_in_rss"
|
331 |
-
id="include_events_in_rss" value="1"'
|
332 |
-
. ( $ai1ec_settings->include_events_in_rss ? ' checked="checked"' : '' )
|
333 |
-
. '/>';
|
334 |
-
$exclude_from_search = $ai1ec_settings->exclude_from_search ? 'checked=checked' : '';
|
335 |
-
$show_publish_button = $ai1ec_settings->show_publish_button ? 'checked=checked' : '';
|
336 |
-
$hide_maps_until_clicked = $ai1ec_settings->hide_maps_until_clicked ? 'checked=checked' : '';
|
337 |
-
$agenda_events_expanded = $ai1ec_settings->agenda_events_expanded ? 'checked=checked' : '';
|
338 |
-
$turn_off_subscription_buttons = $ai1ec_settings->turn_off_subscription_buttons ? 'checked=checked' : '';
|
339 |
-
$show_create_event_button = $ai1ec_settings->show_create_event_button ? 'checked=checked' : '';
|
340 |
-
$inject_categories = $ai1ec_settings->inject_categories ? 'checked=checked' : '';
|
341 |
-
$geo_region_biasing = $ai1ec_settings->geo_region_biasing ? 'checked=checked' : '';
|
342 |
-
$input_date_format = $ai1ec_settings_helper->get_date_format_dropdown( $ai1ec_settings->input_date_format );
|
343 |
-
$input_24h_time = $ai1ec_settings->input_24h_time ? 'checked=checked' : '';
|
344 |
-
$default_calendar_view = $ai1ec_settings_helper->get_view_dropdown( $ai1ec_settings->default_calendar_view );
|
345 |
-
$timezone_control = $ai1ec_settings_helper->get_timezone_dropdown( $ai1ec_settings->timezone );
|
346 |
-
$allow_statistics = $ai1ec_settings->allow_statistics ? 'checked=checked' : '';
|
347 |
-
|
348 |
$args = array(
|
349 |
-
|
350 |
-
'default_calendar_view' => $default_calendar_view,
|
351 |
-
'calendar_css_selector' => $calendar_css_selector,
|
352 |
-
'week_start_day' => $week_start_day,
|
353 |
-
'agenda_events_per_page' => $agenda_events_per_page,
|
354 |
-
'exclude_from_search' => $exclude_from_search,
|
355 |
-
'show_publish_button' => $show_publish_button,
|
356 |
-
'hide_maps_until_clicked' => $hide_maps_until_clicked,
|
357 |
-
'agenda_events_expanded' => $agenda_events_expanded,
|
358 |
-
'turn_off_subscription_buttons' => $turn_off_subscription_buttons,
|
359 |
-
'show_create_event_button' => $show_create_event_button,
|
360 |
-
'inject_categories' => $inject_categories,
|
361 |
-
'input_date_format' => $input_date_format,
|
362 |
-
'input_24h_time' => $input_24h_time,
|
363 |
-
'show_timezone' => ! get_option( 'timezone_string' ),
|
364 |
-
'timezone_control' => $timezone_control,
|
365 |
-
'geo_region_biasing' => $geo_region_biasing,
|
366 |
-
'allow_statistics' => $allow_statistics
|
367 |
);
|
368 |
-
$ai1ec_view_helper->
|
369 |
}
|
370 |
|
371 |
/**
|
372 |
-
|
373 |
-
*
|
374 |
-
* Renders view of iCalendar import meta box on the settings page.
|
375 |
*
|
376 |
* @return void
|
377 |
-
|
378 |
-
function
|
379 |
{
|
380 |
global $ai1ec_view_helper,
|
381 |
$ai1ec_settings_helper,
|
@@ -386,16 +395,14 @@ class Ai1ec_Settings_Helper {
|
|
386 |
'event_categories' => $ai1ec_settings_helper->get_event_categories_select(),
|
387 |
'feed_rows' => $ai1ec_settings_helper->get_feed_rows()
|
388 |
);
|
389 |
-
$ai1ec_view_helper->
|
390 |
}
|
391 |
|
392 |
/**
|
393 |
-
*
|
394 |
-
*
|
395 |
-
*
|
396 |
*
|
397 |
* @return void
|
398 |
-
|
399 |
function the_seed_studio_meta_box( $object, $box ) {
|
400 |
global $ai1ec_view_helper;
|
401 |
include_once( ABSPATH . WPINC . '/feed.php' );
|
@@ -403,19 +410,29 @@ class Ai1ec_Settings_Helper {
|
|
403 |
$newsItems = array();
|
404 |
$feed = fetch_feed( AI1EC_RSS_FEED );
|
405 |
$newsItems = is_wp_error( $feed ) ? array() : $feed->get_items();
|
406 |
-
$ai1ec_view_helper->
|
407 |
}
|
408 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
409 |
/**
|
410 |
-
*
|
411 |
-
|
412 |
-
*
|
413 |
*
|
414 |
* @return void
|
415 |
-
|
416 |
-
function
|
417 |
global $ai1ec_settings;
|
418 |
-
do_action( 'add_meta_boxes', $ai1ec_settings->
|
419 |
}
|
420 |
}
|
421 |
// END class
|
102 |
if( is_numeric( $selected_page_id ) && $selected_page_id > 0 ) {
|
103 |
$permalink = get_permalink( $selected_page_id );
|
104 |
?>
|
105 |
+
<div><a href="<?php echo $permalink ?>" target="_blank">
|
|
|
106 |
<?php printf( __( 'View "%s" »', AI1EC_PLUGIN_NAME ), $selected_title ) ?>
|
107 |
+
</a></div>
|
108 |
<?php
|
109 |
}
|
110 |
return ob_get_clean();
|
272 |
'feed_id' => $row->feed_id,
|
273 |
'events' => $events
|
274 |
);
|
275 |
+
$ai1ec_view_helper->display_admin( 'feed_row.php', $args );
|
276 |
endforeach;
|
277 |
|
278 |
return ob_get_clean();
|
305 |
return ob_get_clean();
|
306 |
}
|
307 |
|
308 |
+
/**
|
309 |
+
* Displays the General Settings meta box.
|
310 |
+
*
|
311 |
+
* @return void
|
312 |
+
*/
|
313 |
+
function general_settings_meta_box( $object, $box ) {
|
314 |
+
global $ai1ec_view_helper,
|
315 |
+
$ai1ec_settings;
|
316 |
+
|
317 |
+
$calendar_page = $this->wp_pages_dropdown(
|
318 |
+
'calendar_page_id',
|
319 |
+
$ai1ec_settings->calendar_page_id,
|
320 |
+
__( 'Calendar', AI1EC_PLUGIN_NAME )
|
321 |
+
);
|
322 |
+
$week_start_day = $this->get_week_dropdown( get_option( 'start_of_week' ) );
|
323 |
+
$agenda_events_per_page = $ai1ec_settings->agenda_events_per_page;
|
324 |
+
$include_events_in_rss =
|
325 |
+
'<input type="checkbox" name="include_events_in_rss"
|
326 |
+
id="include_events_in_rss" value="1"'
|
327 |
+
. ( $ai1ec_settings->include_events_in_rss ? ' checked="checked"' : '' )
|
328 |
+
. '/>';
|
329 |
+
$exclude_from_search = $ai1ec_settings->exclude_from_search ? 'checked=checked' : '';
|
330 |
+
$show_publish_button = $ai1ec_settings->show_publish_button ? 'checked=checked' : '';
|
331 |
+
$hide_maps_until_clicked = $ai1ec_settings->hide_maps_until_clicked ? 'checked=checked' : '';
|
332 |
+
$agenda_events_expanded = $ai1ec_settings->agenda_events_expanded ? 'checked=checked' : '';
|
333 |
+
$turn_off_subscription_buttons = $ai1ec_settings->turn_off_subscription_buttons ? 'checked=checked' : '';
|
334 |
+
$show_create_event_button = $ai1ec_settings->show_create_event_button ? 'checked=checked' : '';
|
335 |
+
$inject_categories = $ai1ec_settings->inject_categories ? 'checked=checked' : '';
|
336 |
+
$geo_region_biasing = $ai1ec_settings->geo_region_biasing ? 'checked=checked' : '';
|
337 |
+
$input_date_format = $this->get_date_format_dropdown( $ai1ec_settings->input_date_format );
|
338 |
+
$input_24h_time = $ai1ec_settings->input_24h_time ? 'checked=checked' : '';
|
339 |
+
$default_calendar_view = $this->get_view_dropdown( $ai1ec_settings->default_calendar_view );
|
340 |
+
$timezone_control = $this->get_timezone_dropdown( $ai1ec_settings->timezone );
|
341 |
+
$allow_statistics = $ai1ec_settings->allow_statistics ? 'checked=checked' : '';
|
342 |
+
$disable_autocompletion = $ai1ec_settings->disable_autocompletion ? 'checked=checked' : '';
|
343 |
+
|
344 |
+
$args = array(
|
345 |
+
'calendar_page' => $calendar_page,
|
346 |
+
'default_calendar_view' => $default_calendar_view,
|
347 |
+
'week_start_day' => $week_start_day,
|
348 |
+
'agenda_events_per_page' => $agenda_events_per_page,
|
349 |
+
'exclude_from_search' => $exclude_from_search,
|
350 |
+
'show_publish_button' => $show_publish_button,
|
351 |
+
'hide_maps_until_clicked' => $hide_maps_until_clicked,
|
352 |
+
'agenda_events_expanded' => $agenda_events_expanded,
|
353 |
+
'turn_off_subscription_buttons' => $turn_off_subscription_buttons,
|
354 |
+
'show_create_event_button' => $show_create_event_button,
|
355 |
+
'inject_categories' => $inject_categories,
|
356 |
+
'input_date_format' => $input_date_format,
|
357 |
+
'input_24h_time' => $input_24h_time,
|
358 |
+
'show_timezone' => ! get_option( 'timezone_string' ),
|
359 |
+
'timezone_control' => $timezone_control,
|
360 |
+
'geo_region_biasing' => $geo_region_biasing,
|
361 |
+
'allow_statistics' => $allow_statistics,
|
362 |
+
'disable_autocompletion' => $disable_autocompletion,
|
363 |
+
);
|
364 |
+
$ai1ec_view_helper->display_admin( 'box_general_settings.php', $args );
|
365 |
+
}
|
366 |
+
|
367 |
/**
|
368 |
+
* Displays the Advanced Settings meta box.
|
|
|
|
|
369 |
*
|
370 |
* @return void
|
371 |
+
*/
|
372 |
+
function advanced_settings_meta_box( $object, $box ) {
|
373 |
global $ai1ec_view_helper,
|
|
|
374 |
$ai1ec_settings;
|
375 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
376 |
$args = array(
|
377 |
+
'calendar_css_selector' => $ai1ec_settings->calendar_css_selector,
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
378 |
);
|
379 |
+
$ai1ec_view_helper->display_admin( 'box_advanced_settings.php', $args );
|
380 |
}
|
381 |
|
382 |
/**
|
383 |
+
* Renders the contents of the Calendar Feeds meta box.
|
|
|
|
|
384 |
*
|
385 |
* @return void
|
386 |
+
*/
|
387 |
+
function feeds_meta_box( $object, $box )
|
388 |
{
|
389 |
global $ai1ec_view_helper,
|
390 |
$ai1ec_settings_helper,
|
395 |
'event_categories' => $ai1ec_settings_helper->get_event_categories_select(),
|
396 |
'feed_rows' => $ai1ec_settings_helper->get_feed_rows()
|
397 |
);
|
398 |
+
$ai1ec_view_helper->display_admin( 'box_feeds.php', $args );
|
399 |
}
|
400 |
|
401 |
/**
|
402 |
+
* Renders the contents of the Seed Studio Support meta box.
|
|
|
|
|
403 |
*
|
404 |
* @return void
|
405 |
+
*/
|
406 |
function the_seed_studio_meta_box( $object, $box ) {
|
407 |
global $ai1ec_view_helper;
|
408 |
include_once( ABSPATH . WPINC . '/feed.php' );
|
410 |
$newsItems = array();
|
411 |
$feed = fetch_feed( AI1EC_RSS_FEED );
|
412 |
$newsItems = is_wp_error( $feed ) ? array() : $feed->get_items();
|
413 |
+
$ai1ec_view_helper->display_admin( 'box_the_seed_studio.php', array( 'news' => $newsItems ) );
|
414 |
}
|
415 |
|
416 |
+
/**
|
417 |
+
* This is called when the settings page is loaded, so that any additional
|
418 |
+
* custom meta boxes can be added by other plugins, themes, etc.
|
419 |
+
*
|
420 |
+
* @return void
|
421 |
+
*/
|
422 |
+
function add_settings_meta_boxes(){
|
423 |
+
global $ai1ec_settings;
|
424 |
+
do_action( 'add_meta_boxes', $ai1ec_settings->settings_page );
|
425 |
+
}
|
426 |
+
|
427 |
/**
|
428 |
+
* This is called when the feeds page is loaded, so that any additional
|
429 |
+
* custom meta boxes can be added by other plugins, themes, etc.
|
|
|
430 |
*
|
431 |
* @return void
|
432 |
+
*/
|
433 |
+
function add_feeds_meta_boxes(){
|
434 |
global $ai1ec_settings;
|
435 |
+
do_action( 'add_meta_boxes', $ai1ec_settings->feeds_page );
|
436 |
}
|
437 |
}
|
438 |
// END class
|
app/helper/class-ai1ec-view-helper.php
CHANGED
@@ -45,7 +45,163 @@ class Ai1ec_View_Helper {
|
|
45 |
}
|
46 |
|
47 |
/**
|
48 |
-
*
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
49 |
*
|
50 |
* Display the view specified by file $file and passed arguments $args.
|
51 |
*
|
@@ -54,12 +210,12 @@ class Ai1ec_View_Helper {
|
|
54 |
*
|
55 |
* @return void
|
56 |
**/
|
57 |
-
function
|
58 |
if( ! $file || empty( $file ) ) {
|
59 |
throw new Ai1ec_File_Not_Provided( "You need to specify a view file." );
|
60 |
}
|
61 |
|
62 |
-
$file =
|
63 |
|
64 |
if( ! file_exists( $file ) ) {
|
65 |
throw new Ai1ec_File_Not_Found( "The specified view file doesn't exist." );
|
@@ -70,7 +226,58 @@ class Ai1ec_View_Helper {
|
|
70 |
}
|
71 |
|
72 |
/**
|
73 |
-
*
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
74 |
*
|
75 |
* Renders the given stylesheet inline. If stylesheet has already been
|
76 |
* displayed once before with the same set of $args, does not display
|
@@ -81,15 +288,14 @@ class Ai1ec_View_Helper {
|
|
81 |
*
|
82 |
* @return void
|
83 |
**/
|
84 |
-
function
|
85 |
static $displayed = array();
|
86 |
-
static $num = 0;
|
87 |
|
88 |
if( ! $file || empty( $file ) ) {
|
89 |
throw new Ai1ec_File_Not_Provided( 'You need to specify a css file.' );
|
90 |
}
|
91 |
|
92 |
-
$file =
|
93 |
|
94 |
if( isset( $displayed[$file] ) && $displayed[$file] === $args ) // Skip if already displayed
|
95 |
return;
|
@@ -107,7 +313,68 @@ class Ai1ec_View_Helper {
|
|
107 |
}
|
108 |
|
109 |
/**
|
110 |
-
*
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
111 |
*
|
112 |
* Renders the given script inline. If script has already been displayed
|
113 |
* once before with the same set of $args, does not display it again.
|
@@ -117,14 +384,14 @@ class Ai1ec_View_Helper {
|
|
117 |
*
|
118 |
* @return void
|
119 |
**/
|
120 |
-
function
|
121 |
static $displayed = array();
|
122 |
|
123 |
if( ! $file || empty( $file ) ) {
|
124 |
throw new Ai1ec_File_Not_Provided( "You need to specify a js file." );
|
125 |
}
|
126 |
|
127 |
-
$file =
|
128 |
|
129 |
if( $displayed[$file] === $args) // Skip if already displayed
|
130 |
return;
|
@@ -142,9 +409,70 @@ class Ai1ec_View_Helper {
|
|
142 |
echo '</script>';
|
143 |
}
|
144 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
145 |
|
146 |
/**
|
147 |
-
*
|
148 |
*
|
149 |
* Return the output of a view as a string rather than output to response.
|
150 |
*
|
@@ -153,12 +481,101 @@ class Ai1ec_View_Helper {
|
|
153 |
*
|
154 |
* @return void
|
155 |
**/
|
156 |
-
function
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
157 |
ob_start();
|
158 |
-
$this->
|
159 |
return ob_get_clean();
|
160 |
}
|
161 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
162 |
/**
|
163 |
* json_response function
|
164 |
*
|
45 |
}
|
46 |
|
47 |
/**
|
48 |
+
* Enqueue a script from the admin resources directory (app/view/admin/js).
|
49 |
+
*
|
50 |
+
* @param string $name Unique identifer for the script
|
51 |
+
* @param string $file Filename of the script
|
52 |
+
* @param array $deps Dependencies of the script
|
53 |
+
* @param bool $in_footer Whether to add the script to the footer of the page
|
54 |
+
*
|
55 |
+
* @return void
|
56 |
+
*/
|
57 |
+
function admin_enqueue_script( $name, $file, $deps = array(), $in_footer = FALSE ) {
|
58 |
+
if( ! $file || empty( $file ) ) {
|
59 |
+
throw new Ai1ec_File_Not_Provided( "You need to specify a script file." );
|
60 |
+
}
|
61 |
+
|
62 |
+
$_file = AI1EC_ADMIN_THEME_JS_PATH . '/' . $file;
|
63 |
+
|
64 |
+
if( ! file_exists( $_file ) ) {
|
65 |
+
throw new Ai1ec_File_Not_Found( "The specified file " . $_file . " doesn't exist." );
|
66 |
+
} else {
|
67 |
+
$file = AI1EC_ADMIN_THEME_JS_URL . '/' . $file;
|
68 |
+
wp_enqueue_script( $name, $file, $deps, AI1EC_VERSION, $in_footer );
|
69 |
+
}
|
70 |
+
}
|
71 |
+
|
72 |
+
/**
|
73 |
+
* Enqueue a script from the theme resources directory.
|
74 |
+
*
|
75 |
+
* @param string $name Unique identifer for the script
|
76 |
+
* @param string $file Filename of the script
|
77 |
+
* @param array $deps Dependencies of the script
|
78 |
+
* @param bool $in_footer Whether to add the script to the footer of the page
|
79 |
+
*
|
80 |
+
* @return void
|
81 |
+
*/
|
82 |
+
function theme_enqueue_script( $name, $file, $deps = array(), $in_footer = FALSE ) {
|
83 |
+
global $ai1ec_themes_controller;
|
84 |
+
|
85 |
+
if( ! $file || empty( $file ) ) {
|
86 |
+
throw new Ai1ec_File_Not_Provided( "You need to specify a script file." );
|
87 |
+
}
|
88 |
+
|
89 |
+
// template path
|
90 |
+
$active_template_path = $ai1ec_themes_controller->active_template_path();
|
91 |
+
// template url
|
92 |
+
$active_template_url = $ai1ec_themes_controller->active_template_url();
|
93 |
+
|
94 |
+
// look for the file in the active theme
|
95 |
+
$themes_root = array(
|
96 |
+
(object) array(
|
97 |
+
'path' => $active_template_path . '/' . AI1EC_JS_FOLDER,
|
98 |
+
'url' => $active_template_url . '/' . AI1EC_JS_FOLDER
|
99 |
+
),
|
100 |
+
(object) array(
|
101 |
+
'path' => AI1EC_DEFAULT_THEME_PATH . '/' . AI1EC_JS_FOLDER,
|
102 |
+
'url' => AI1EC_DEFAULT_THEME_URL . '/' . AI1EC_JS_FOLDER
|
103 |
+
),
|
104 |
+
);
|
105 |
+
|
106 |
+
$file_found = false;
|
107 |
+
|
108 |
+
// look for the file in each theme
|
109 |
+
foreach( $themes_root as $theme_root ) {
|
110 |
+
// $_file is a local var to hold the value of
|
111 |
+
// the file we are looking for
|
112 |
+
$_file = $theme_root->path . '/' . $file;
|
113 |
+
if( file_exists( $_file ) ) {
|
114 |
+
// file is found
|
115 |
+
$file_found = true;
|
116 |
+
// assign the found file
|
117 |
+
$file = $theme_root->url . '/' . $file;
|
118 |
+
// exit the loop;
|
119 |
+
break;
|
120 |
+
}
|
121 |
+
}
|
122 |
+
|
123 |
+
if( $file_found === false ) {
|
124 |
+
throw new Ai1ec_File_Not_Found( "The specified file '" . $file . "' doesn't exist." );
|
125 |
+
} else {
|
126 |
+
wp_enqueue_script( $name, $file, $deps, AI1EC_VERSION, $in_footer );
|
127 |
+
}
|
128 |
+
}
|
129 |
+
|
130 |
+
/**
|
131 |
+
* admin_enqueue_style function
|
132 |
+
*
|
133 |
+
* @return void
|
134 |
+
**/
|
135 |
+
function admin_enqueue_style( $name, $file, $deps = array() ) {
|
136 |
+
if( ! $file || empty( $file ) ) {
|
137 |
+
throw new Ai1ec_File_Not_Provided( "You need to specify a style file." );
|
138 |
+
}
|
139 |
+
|
140 |
+
$_file = AI1EC_ADMIN_THEME_CSS_PATH . '/' . $file;
|
141 |
+
|
142 |
+
if( ! file_exists( $_file ) ) {
|
143 |
+
throw new Ai1ec_File_Not_Found( "The specified file " . $file . " doesn't exist." );
|
144 |
+
} else {
|
145 |
+
$file = AI1EC_ADMIN_THEME_CSS_URL . '/' . $file;
|
146 |
+
wp_enqueue_style( $name, $file, $deps, AI1EC_VERSION );
|
147 |
+
}
|
148 |
+
}
|
149 |
+
|
150 |
+
/**
|
151 |
+
* theme_enqueue_style function
|
152 |
+
*
|
153 |
+
* @return void
|
154 |
+
**/
|
155 |
+
function theme_enqueue_style( $name, $file, $deps = array() ) {
|
156 |
+
global $ai1ec_themes_controller;
|
157 |
+
|
158 |
+
if( ! $file || empty( $file ) ) {
|
159 |
+
throw new Ai1ec_File_Not_Provided( "You need to specify a style file." );
|
160 |
+
}
|
161 |
+
|
162 |
+
// template path
|
163 |
+
$active_template_path = $ai1ec_themes_controller->active_template_path();
|
164 |
+
// template url
|
165 |
+
$active_template_url = $ai1ec_themes_controller->active_template_url();
|
166 |
+
|
167 |
+
// look for the file in the active theme
|
168 |
+
$themes_root = array(
|
169 |
+
(object) array(
|
170 |
+
'path' => $active_template_path . '/' . AI1EC_CSS_FOLDER,
|
171 |
+
'url' => $active_template_url . '/' . AI1EC_CSS_FOLDER
|
172 |
+
),
|
173 |
+
(object) array(
|
174 |
+
'path' => AI1EC_DEFAULT_THEME_PATH . '/' . AI1EC_CSS_FOLDER,
|
175 |
+
'url' => AI1EC_DEFAULT_THEME_URL . '/' . AI1EC_CSS_FOLDER
|
176 |
+
),
|
177 |
+
);
|
178 |
+
|
179 |
+
$file_found = false;
|
180 |
+
|
181 |
+
// look for the file in each theme
|
182 |
+
foreach( $themes_root as $theme_root ) {
|
183 |
+
// $_file is a local var to hold the value of
|
184 |
+
// the file we are looking for
|
185 |
+
$_file = $theme_root->path . '/' . $file;
|
186 |
+
if( file_exists( $_file ) ) {
|
187 |
+
// file is found
|
188 |
+
$file_found = true;
|
189 |
+
// assign the found file
|
190 |
+
$file = $theme_root->url . '/' . $file;
|
191 |
+
// exit the loop;
|
192 |
+
break;
|
193 |
+
}
|
194 |
+
}
|
195 |
+
|
196 |
+
if( $file_found === false ) {
|
197 |
+
throw new Ai1ec_File_Not_Found( "The specified file '" . $file . "' doesn't exist." );
|
198 |
+
} else {
|
199 |
+
wp_enqueue_style( $name, $file, $deps, AI1EC_VERSION );
|
200 |
+
}
|
201 |
+
}
|
202 |
+
|
203 |
+
/**
|
204 |
+
* display_admin function
|
205 |
*
|
206 |
* Display the view specified by file $file and passed arguments $args.
|
207 |
*
|
210 |
*
|
211 |
* @return void
|
212 |
**/
|
213 |
+
function display_admin( $file = false, $args = array() ) {
|
214 |
if( ! $file || empty( $file ) ) {
|
215 |
throw new Ai1ec_File_Not_Provided( "You need to specify a view file." );
|
216 |
}
|
217 |
|
218 |
+
$file = AI1EC_ADMIN_THEME_PATH . '/' . $file;
|
219 |
|
220 |
if( ! file_exists( $file ) ) {
|
221 |
throw new Ai1ec_File_Not_Found( "The specified view file doesn't exist." );
|
226 |
}
|
227 |
|
228 |
/**
|
229 |
+
* display_theme function
|
230 |
+
*
|
231 |
+
* Display the view specified by file $file and passed arguments $args.
|
232 |
+
*
|
233 |
+
* @param string $file
|
234 |
+
* @param array $args
|
235 |
+
*
|
236 |
+
* @return void
|
237 |
+
**/
|
238 |
+
function display_theme( $file = false, $args = array() ) {
|
239 |
+
global $ai1ec_themes_controller;
|
240 |
+
|
241 |
+
if( ! $file || empty( $file ) ) {
|
242 |
+
throw new Ai1ec_File_Not_Provided( "You need to specify a view file." );
|
243 |
+
}
|
244 |
+
|
245 |
+
// look for the file in the selected theme
|
246 |
+
$themes_root = array(
|
247 |
+
$ai1ec_themes_controller->active_template_path(),
|
248 |
+
AI1EC_DEFAULT_THEME_PATH
|
249 |
+
);
|
250 |
+
|
251 |
+
// remove duplicates
|
252 |
+
$themes_root = array_unique( $themes_root );
|
253 |
+
|
254 |
+
$file_found = false;
|
255 |
+
|
256 |
+
// look for the file in each theme
|
257 |
+
foreach( $themes_root as $theme_root ) {
|
258 |
+
// $_file is a local var to hold the value of
|
259 |
+
// the file we are looking for
|
260 |
+
$_file = $theme_root . '/' . $file;
|
261 |
+
if( file_exists( $_file ) ) {
|
262 |
+
// file is found
|
263 |
+
$file_found = true;
|
264 |
+
// assign the found file
|
265 |
+
$file = $_file;
|
266 |
+
// exit the loop;
|
267 |
+
break;
|
268 |
+
}
|
269 |
+
}
|
270 |
+
|
271 |
+
if( $file_found === false ) {
|
272 |
+
throw new Ai1ec_File_Not_Found( "The specified view file '" . $file . "' doesn't exist." );
|
273 |
+
} else {
|
274 |
+
extract( $args );
|
275 |
+
require( $file );
|
276 |
+
}
|
277 |
+
}
|
278 |
+
|
279 |
+
/**
|
280 |
+
* display_admin_css function
|
281 |
*
|
282 |
* Renders the given stylesheet inline. If stylesheet has already been
|
283 |
* displayed once before with the same set of $args, does not display
|
288 |
*
|
289 |
* @return void
|
290 |
**/
|
291 |
+
function display_admin_css( $file = false, $args = array() ) {
|
292 |
static $displayed = array();
|
|
|
293 |
|
294 |
if( ! $file || empty( $file ) ) {
|
295 |
throw new Ai1ec_File_Not_Provided( 'You need to specify a css file.' );
|
296 |
}
|
297 |
|
298 |
+
$file = AI1EC_ADMIN_THEME_CSS_PATH . '/' . $file;
|
299 |
|
300 |
if( isset( $displayed[$file] ) && $displayed[$file] === $args ) // Skip if already displayed
|
301 |
return;
|
313 |
}
|
314 |
|
315 |
/**
|
316 |
+
* display_theme_css function
|
317 |
+
*
|
318 |
+
* Renders the given stylesheet inline. If stylesheet has already been
|
319 |
+
* displayed once before with the same set of $args, does not display
|
320 |
+
* it again.
|
321 |
+
*
|
322 |
+
* @param string $file
|
323 |
+
* @param array $args
|
324 |
+
*
|
325 |
+
* @return void
|
326 |
+
**/
|
327 |
+
function display_theme_css( $file = false, $args = array() ) {
|
328 |
+
global $ai1ec_themes_controller;
|
329 |
+
static $displayed = array();
|
330 |
+
|
331 |
+
if( ! $file || empty( $file ) ) {
|
332 |
+
throw new Ai1ec_File_Not_Provided( 'You need to specify a CSS file.' );
|
333 |
+
}
|
334 |
+
|
335 |
+
// look for the file in the selected theme
|
336 |
+
$themes_root = array(
|
337 |
+
$ai1ec_themes_controller->active_template_path() . '/' . AI1EC_THEME_CSS_FOLDER,
|
338 |
+
AI1EC_DEFAULT_THEME_PATH . '/' . AI1EC_THEME_CSS_FOLDER
|
339 |
+
);
|
340 |
+
|
341 |
+
// remove duplicates
|
342 |
+
$themes_root = array_unique( $themes_root );
|
343 |
+
|
344 |
+
$file_found = false;
|
345 |
+
|
346 |
+
// look for the file in each theme
|
347 |
+
foreach( $themes_root as $theme_root ) {
|
348 |
+
// $_file is a local var to hold the value of
|
349 |
+
// the file we are looking for
|
350 |
+
$_file = $theme_root . '/' . $file;
|
351 |
+
if( file_exists( $_file ) ) {
|
352 |
+
// file is found
|
353 |
+
$file_found = true;
|
354 |
+
// assign the found file
|
355 |
+
$file = $_file;
|
356 |
+
// exit the loop;
|
357 |
+
break;
|
358 |
+
}
|
359 |
+
}
|
360 |
+
|
361 |
+
if( isset( $displayed[$file] ) && $displayed[$file] === $args ) // Skip if already displayed
|
362 |
+
return;
|
363 |
+
|
364 |
+
if( ! file_exists( $file ) ) {
|
365 |
+
throw new Ai1ec_File_Not_Found( "The specified CSS file doesn't exist." );
|
366 |
+
} else {
|
367 |
+
$displayed[$file] = $args; // Flag that we've displayed this file with these args
|
368 |
+
|
369 |
+
extract( $args );
|
370 |
+
echo '<style type="text/css">';
|
371 |
+
require( $file );
|
372 |
+
echo '</style>';
|
373 |
+
}
|
374 |
+
}
|
375 |
+
|
376 |
+
/**
|
377 |
+
* display_admin_js function
|
378 |
*
|
379 |
* Renders the given script inline. If script has already been displayed
|
380 |
* once before with the same set of $args, does not display it again.
|
384 |
*
|
385 |
* @return void
|
386 |
**/
|
387 |
+
function display_admin_js( $file = false, $args = array() ) {
|
388 |
static $displayed = array();
|
389 |
|
390 |
if( ! $file || empty( $file ) ) {
|
391 |
throw new Ai1ec_File_Not_Provided( "You need to specify a js file." );
|
392 |
}
|
393 |
|
394 |
+
$file = AI1EC_ADMIN_THEME_JS_PATH . '/' . $file;
|
395 |
|
396 |
if( $displayed[$file] === $args) // Skip if already displayed
|
397 |
return;
|
409 |
echo '</script>';
|
410 |
}
|
411 |
}
|
412 |
+
/**
|
413 |
+
* display_theme_js function
|
414 |
+
*
|
415 |
+
* Renders the given script inline. If script has already been displayed
|
416 |
+
* once before with the same set of $args, does not display it again.
|
417 |
+
*
|
418 |
+
* @param string $file
|
419 |
+
* @param array $args
|
420 |
+
*
|
421 |
+
* @return void
|
422 |
+
**/
|
423 |
+
function display_theme_js( $file = false, $args = array() ) {
|
424 |
+
global $ai1ec_themes_controller;
|
425 |
+
static $displayed = array();
|
426 |
+
|
427 |
+
if( ! $file || empty( $file ) ) {
|
428 |
+
throw new Ai1ec_File_Not_Provided( "You need to specify a JS file." );
|
429 |
+
}
|
430 |
+
|
431 |
+
// look for the file in the selected theme
|
432 |
+
$themes_root = array(
|
433 |
+
$ai1ec_themes_controller->active_template_path() . '/' . AI1EC_THEME_JS_FOLDER,
|
434 |
+
AI1EC_DEFAULT_THEME_PATH . '/' . AI1EC_THEME_JS_FOLDER
|
435 |
+
);
|
436 |
+
|
437 |
+
// remove duplicates
|
438 |
+
$themes_root = array_unique( $themes_root );
|
439 |
+
|
440 |
+
$file_found = false;
|
441 |
+
|
442 |
+
// look for the file in each theme
|
443 |
+
foreach( $themes_root as $theme_root ) {
|
444 |
+
// $_file is a local var to hold the value of
|
445 |
+
// the file we are looking for
|
446 |
+
$_file = $theme_root . '/' . $file;
|
447 |
+
if( file_exists( $_file ) ) {
|
448 |
+
// file is found
|
449 |
+
$file_found = true;
|
450 |
+
// assign the found file
|
451 |
+
$file = $_file;
|
452 |
+
// exit the loop;
|
453 |
+
break;
|
454 |
+
}
|
455 |
+
}
|
456 |
+
|
457 |
+
if( $displayed[$file] === $args) // Skip if already displayed
|
458 |
+
return;
|
459 |
+
|
460 |
+
if( ! file_exists( $file ) ) {
|
461 |
+
throw new Ai1ec_File_Not_Found( "The specified JS file doesn't exist." );
|
462 |
+
} else {
|
463 |
+
$displayed[$file] = $args; // Flag that we've displayed this file with these args
|
464 |
+
|
465 |
+
extract( $args );
|
466 |
+
echo '<script type="text/javascript" charset="utf-8">';
|
467 |
+
echo '/* <![CDATA[ */';
|
468 |
+
require( $file );
|
469 |
+
echo '/* ]]> */';
|
470 |
+
echo '</script>';
|
471 |
+
}
|
472 |
+
}
|
473 |
|
474 |
/**
|
475 |
+
* get_admin_view function
|
476 |
*
|
477 |
* Return the output of a view as a string rather than output to response.
|
478 |
*
|
481 |
*
|
482 |
* @return void
|
483 |
**/
|
484 |
+
function get_admin_view( $file = false, $args = array() ) {
|
485 |
+
ob_start();
|
486 |
+
$this->display_admin( $file, $args );
|
487 |
+
return ob_get_clean();
|
488 |
+
}
|
489 |
+
|
490 |
+
/**
|
491 |
+
* get_theme_view function
|
492 |
+
*
|
493 |
+
* Return the output of a view in the theme as a string rather than output to response.
|
494 |
+
*
|
495 |
+
* @param string $file
|
496 |
+
* @param array $args
|
497 |
+
*
|
498 |
+
* @return void
|
499 |
+
**/
|
500 |
+
function get_theme_view( $file = false, $args = array() ) {
|
501 |
ob_start();
|
502 |
+
$this->display_theme( $file, $args );
|
503 |
return ob_get_clean();
|
504 |
}
|
505 |
|
506 |
+
/**
|
507 |
+
* get_admin_img_url function
|
508 |
+
*
|
509 |
+
* @return string
|
510 |
+
**/
|
511 |
+
public function get_admin_img_url( $file ) {
|
512 |
+
if( ! $file || empty( $file ) ) {
|
513 |
+
throw new Ai1ec_File_Not_Provided( "You need to specify an image file." );
|
514 |
+
}
|
515 |
+
|
516 |
+
$_file = AI1EC_ADMIN_THEME_IMG_PATH . '/' . $file;
|
517 |
+
|
518 |
+
if( ! file_exists( $_file ) ) {
|
519 |
+
throw new Ai1ec_File_Not_Found( "The specified file " . $_file . " doesn't exist." );
|
520 |
+
} else {
|
521 |
+
$file = AI1EC_ADMIN_THEME_IMG_URL . '/' . $file;
|
522 |
+
return $file;
|
523 |
+
}
|
524 |
+
}
|
525 |
+
|
526 |
+
/**
|
527 |
+
* get_theme_img_url function
|
528 |
+
*
|
529 |
+
* @return string
|
530 |
+
**/
|
531 |
+
public function get_theme_img_url( $file ) {
|
532 |
+
global $ai1ec_themes_controller;
|
533 |
+
|
534 |
+
if( ! $file || empty( $file ) ) {
|
535 |
+
throw new Ai1ec_File_Not_Provided( "You need to specify a style file." );
|
536 |
+
}
|
537 |
+
|
538 |
+
// template path
|
539 |
+
$active_template_path = $ai1ec_themes_controller->active_template_path();
|
540 |
+
// template url
|
541 |
+
$active_template_url = $ai1ec_themes_controller->active_template_url();
|
542 |
+
|
543 |
+
// look for the file in the active theme
|
544 |
+
$themes_root = array(
|
545 |
+
(object) array(
|
546 |
+
'path' => $active_template_path . '/' . AI1EC_IMG_FOLDER,
|
547 |
+
'url' => $active_template_url . '/' . AI1EC_IMG_FOLDER
|
548 |
+
),
|
549 |
+
(object) array(
|
550 |
+
'path' => AI1EC_DEFAULT_THEME_PATH . '/' . AI1EC_IMG_FOLDER,
|
551 |
+
'url' => AI1EC_DEFAULT_THEME_URL . '/' . AI1EC_IMG_FOLDER
|
552 |
+
),
|
553 |
+
);
|
554 |
+
|
555 |
+
$file_found = false;
|
556 |
+
|
557 |
+
// look for the file in each theme
|
558 |
+
foreach( $themes_root as $theme_root ) {
|
559 |
+
// $_file is a local var to hold the value of
|
560 |
+
// the file we are looking for
|
561 |
+
$_file = $theme_root->path . '/' . $file;
|
562 |
+
if( file_exists( $_file ) ) {
|
563 |
+
// file is found
|
564 |
+
$file_found = true;
|
565 |
+
// assign the found file
|
566 |
+
$file = $theme_root->url . '/' . $file;
|
567 |
+
// exit the loop;
|
568 |
+
break;
|
569 |
+
}
|
570 |
+
}
|
571 |
+
|
572 |
+
if( $file_found === false ) {
|
573 |
+
throw new Ai1ec_File_Not_Found( "The specified file '" . $file . "' doesn't exist." );
|
574 |
+
} else {
|
575 |
+
return $file;
|
576 |
+
}
|
577 |
+
}
|
578 |
+
|
579 |
/**
|
580 |
* json_response function
|
581 |
*
|
app/model/class-ai1ec-event.php
CHANGED
@@ -241,7 +241,7 @@ class Ai1ec_Event {
|
|
241 |
* @var string
|
242 |
**/
|
243 |
var $categories;
|
244 |
-
|
245 |
/**
|
246 |
* feed class variable
|
247 |
*
|
@@ -434,6 +434,17 @@ class Ai1ec_Event {
|
|
434 |
|
435 |
case 'uid':
|
436 |
return $this->post_id . '@' . bloginfo( 'url' );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
437 |
// ========================
|
438 |
// = Get short-form dates =
|
439 |
// ========================
|
@@ -592,29 +603,43 @@ class Ai1ec_Event {
|
|
592 |
case 'color_style':
|
593 |
if( $this->color_style === null ) {
|
594 |
$categories = wp_get_post_terms( $this->post_id, 'events_categories' );
|
595 |
-
if( $categories && ! empty( $categories ) )
|
596 |
-
$this->color_style = $ai1ec_events_helper->get_event_category_color_style( $categories[0]->term_id, $this->allday );
|
|
|
597 |
}
|
598 |
return $this->color_style;
|
599 |
|
600 |
-
|
601 |
-
|
602 |
-
|
603 |
-
|
604 |
-
|
605 |
-
|
606 |
-
|
607 |
-
|
608 |
-
|
609 |
-
|
610 |
-
|
611 |
-
|
612 |
-
|
613 |
-
|
614 |
-
|
615 |
-
|
616 |
-
|
617 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
618 |
}
|
619 |
return $this->category_colors;
|
620 |
|
@@ -669,28 +694,28 @@ class Ai1ec_Event {
|
|
669 |
// = Insert events meta data =
|
670 |
// ===========================
|
671 |
$columns = array(
|
672 |
-
'post_id'
|
673 |
-
'start'
|
674 |
-
'end'
|
675 |
-
'allday'
|
676 |
-
'recurrence_rules'
|
677 |
-
'exception_rules'
|
678 |
-
'recurrence_dates'
|
679 |
-
'exception_dates'
|
680 |
-
'venue'
|
681 |
-
'country'
|
682 |
-
'address'
|
683 |
-
'city'
|
684 |
-
'province'
|
685 |
-
'postal_code'
|
686 |
-
'show_map'
|
687 |
-
'contact_name'
|
688 |
-
'contact_phone'
|
689 |
-
'contact_email'
|
690 |
-
'cost'
|
691 |
-
'ical_feed_url'
|
692 |
-
'ical_source_url'
|
693 |
-
'ical_uid'
|
694 |
);
|
695 |
|
696 |
$format = array(
|
@@ -715,7 +740,7 @@ class Ai1ec_Event {
|
|
715 |
'%s',
|
716 |
'%s',
|
717 |
'%s',
|
718 |
-
'%s'
|
719 |
);
|
720 |
|
721 |
$table_name = $wpdb->prefix . 'ai1ec_events';
|
@@ -769,7 +794,6 @@ class Ai1ec_Event {
|
|
769 |
// associate the event with the feed only if we have term id set
|
770 |
$a = wp_set_object_terms( $this->post_id, (int)$term->term_id, 'events_feeds', false );
|
771 |
}
|
772 |
-
|
773 |
}
|
774 |
|
775 |
// =========================
|
241 |
* @var string
|
242 |
**/
|
243 |
var $categories;
|
244 |
+
|
245 |
/**
|
246 |
* feed class variable
|
247 |
*
|
434 |
|
435 |
case 'uid':
|
436 |
return $this->post_id . '@' . bloginfo( 'url' );
|
437 |
+
|
438 |
+
case "multiday":
|
439 |
+
return (
|
440 |
+
$ai1ec_events_helper->get_long_date( $this->start )
|
441 |
+
!=
|
442 |
+
$ai1ec_events_helper->get_long_date( $this->end - 1 )
|
443 |
+
);
|
444 |
+
|
445 |
+
case "multiday_end_date":
|
446 |
+
return $ai1ec_events_helper->get_multiday_end_date( $this->end - 1 );
|
447 |
+
|
448 |
// ========================
|
449 |
// = Get short-form dates =
|
450 |
// ========================
|
603 |
case 'color_style':
|
604 |
if( $this->color_style === null ) {
|
605 |
$categories = wp_get_post_terms( $this->post_id, 'events_categories' );
|
606 |
+
if( $categories && ! empty( $categories ) ) {
|
607 |
+
$this->color_style = $ai1ec_events_helper->get_event_category_color_style( $categories[0]->term_id, $this->allday || $this->multiday );
|
608 |
+
}
|
609 |
}
|
610 |
return $this->color_style;
|
611 |
|
612 |
+
// =========================================
|
613 |
+
// = Faded version of event category color =
|
614 |
+
// =========================================
|
615 |
+
case 'faded_color':
|
616 |
+
if( $this->faded_color === null ) {
|
617 |
+
$categories = wp_get_post_terms( $this->post_id, 'events_categories' );
|
618 |
+
if( $categories && ! empty( $categories ) ) {
|
619 |
+
$this->faded_color = $ai1ec_events_helper->get_event_category_faded_color( $categories[0]->term_id );
|
620 |
+
}
|
621 |
+
}
|
622 |
+
return $this->faded_color;
|
623 |
+
|
624 |
+
// ========================================
|
625 |
+
// = RGBA version of faded category color =
|
626 |
+
// ========================================
|
627 |
+
case 'rgba_color':
|
628 |
+
if( $this->rgba_color === null ) {
|
629 |
+
$categories = wp_get_post_terms( $this->post_id, 'events_categories' );
|
630 |
+
if( $categories && ! empty( $categories ) ) {
|
631 |
+
$this->rgba_color = $ai1ec_events_helper->get_event_category_rgba_color( $categories[0]->term_id );
|
632 |
+
}
|
633 |
+
}
|
634 |
+
return $this->rgba_color;
|
635 |
+
|
636 |
+
// ===============================================
|
637 |
+
// = HTML of category color boxes for this event =
|
638 |
+
// ===============================================
|
639 |
+
case 'category_colors':
|
640 |
+
if( $this->category_colors === null ) {
|
641 |
+
$categories = wp_get_post_terms( $this->post_id, 'events_categories' );
|
642 |
+
$this->category_colors = $ai1ec_events_helper->get_event_category_colors( $categories );
|
643 |
}
|
644 |
return $this->category_colors;
|
645 |
|
694 |
// = Insert events meta data =
|
695 |
// ===========================
|
696 |
$columns = array(
|
697 |
+
'post_id' => $this->post_id,
|
698 |
+
'start' => $this->start,
|
699 |
+
'end' => $this->end,
|
700 |
+
'allday' => $this->allday,
|
701 |
+
'recurrence_rules' => $this->recurrence_rules,
|
702 |
+
'exception_rules' => $this->exception_rules,
|
703 |
+
'recurrence_dates' => $this->recurrence_dates,
|
704 |
+
'exception_dates' => $this->exception_dates,
|
705 |
+
'venue' => $this->venue,
|
706 |
+
'country' => $this->country,
|
707 |
+
'address' => $this->address,
|
708 |
+
'city' => $this->city,
|
709 |
+
'province' => $this->province,
|
710 |
+
'postal_code' => $this->postal_code,
|
711 |
+
'show_map' => $this->show_map,
|
712 |
+
'contact_name' => $this->contact_name,
|
713 |
+
'contact_phone' => $this->contact_phone,
|
714 |
+
'contact_email' => $this->contact_email,
|
715 |
+
'cost' => $this->cost,
|
716 |
+
'ical_feed_url' => $this->ical_feed_url,
|
717 |
+
'ical_source_url' => $this->ical_source_url,
|
718 |
+
'ical_uid' => $this->ical_uid,
|
719 |
);
|
720 |
|
721 |
$format = array(
|
740 |
'%s',
|
741 |
'%s',
|
742 |
'%s',
|
743 |
+
'%s',
|
744 |
);
|
745 |
|
746 |
$table_name = $wpdb->prefix . 'ai1ec_events';
|
794 |
// associate the event with the feed only if we have term id set
|
795 |
$a = wp_set_object_terms( $this->post_id, (int)$term->term_id, 'events_feeds', false );
|
796 |
}
|
|
|
797 |
}
|
798 |
|
799 |
// =========================
|
app/model/class-ai1ec-settings.php
CHANGED
@@ -93,7 +93,7 @@ class Ai1ec_Settings {
|
|
93 |
* @var string
|
94 |
**/
|
95 |
var $cron_freq;
|
96 |
-
|
97 |
/**
|
98 |
* timezone class variable
|
99 |
*
|
@@ -118,18 +118,18 @@ class Ai1ec_Settings {
|
|
118 |
* @var bool
|
119 |
**/
|
120 |
var $show_publish_button;
|
121 |
-
|
122 |
/**
|
123 |
* hide_maps_until_clicked class variable
|
124 |
*
|
125 |
-
* When this setting is on, instead of showing the Google Map,
|
126 |
-
* show a dotted-line box containing the text "Click to view map",
|
127 |
* and when clicked, this box is replaced by the Google Map.
|
128 |
*
|
129 |
* @var bool
|
130 |
**/
|
131 |
var $hide_maps_until_clicked;
|
132 |
-
|
133 |
/**
|
134 |
* agenda_events_expanded class variable
|
135 |
*
|
@@ -179,50 +179,67 @@ class Ai1ec_Settings {
|
|
179 |
* @var string
|
180 |
**/
|
181 |
var $input_date_format;
|
182 |
-
|
183 |
/**
|
184 |
* input_24h_time class variable
|
185 |
*
|
186 |
-
* Use 24h time in time pickers.
|
187 |
*
|
188 |
* @var bool
|
189 |
**/
|
190 |
var $input_24h_time;
|
191 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
192 |
/**
|
193 |
-
*
|
194 |
*
|
195 |
-
* Stores a reference to the
|
196 |
-
* add_submenu_page function
|
197 |
*
|
198 |
* @var object
|
199 |
-
|
200 |
-
var $
|
201 |
-
|
202 |
/**
|
203 |
* geo_region_biasing class variable
|
204 |
*
|
205 |
-
* If set to
|
206 |
* locale in WordPress is going to be used to bias the
|
207 |
* geo autocomplete plugin towards a specific region.
|
208 |
*
|
209 |
* @var bool
|
210 |
**/
|
211 |
var $geo_region_biasing;
|
212 |
-
|
213 |
/**
|
214 |
-
*
|
215 |
*
|
216 |
* @var bool
|
217 |
-
|
218 |
var $show_data_notification;
|
219 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
220 |
/**
|
221 |
-
*
|
222 |
*
|
223 |
* @var bool
|
224 |
**/
|
225 |
-
var $
|
226 |
|
227 |
/**
|
228 |
* __construct function
|
@@ -288,24 +305,25 @@ class Ai1ec_Settings {
|
|
288 |
'calendar_css_selector' => '',
|
289 |
'week_start_day' => get_option( 'start_of_week' ),
|
290 |
'agenda_events_per_page' => get_option( 'posts_per_page' ),
|
291 |
-
'agenda_events_expanded' =>
|
292 |
-
'include_events_in_rss' =>
|
293 |
-
'allow_publish_to_facebook' =>
|
294 |
-
'facebook_credentials' =>
|
295 |
-
'user_role_can_create_event' =>
|
296 |
-
'show_publish_button' =>
|
297 |
-
'hide_maps_until_clicked' =>
|
298 |
-
'exclude_from_search' =>
|
299 |
-
'show_create_event_button' =>
|
300 |
-
'turn_off_subscription_buttons' =>
|
301 |
-
'inject_categories' =>
|
302 |
'input_date_format' => 'def',
|
303 |
-
'input_24h_time' =>
|
304 |
'cron_freq' => 'daily',
|
305 |
'timezone' => get_option( 'timezone_string' ),
|
306 |
-
'geo_region_biasing' =>
|
307 |
-
'show_data_notification' =>
|
308 |
-
|
|
|
309 |
);
|
310 |
|
311 |
foreach( $defaults as $key => $default ) {
|
@@ -315,44 +333,86 @@ class Ai1ec_Settings {
|
|
315 |
}
|
316 |
|
317 |
/**
|
318 |
-
* update function
|
319 |
-
*
|
320 |
* Updates field values with corresponding values found in $params
|
321 |
* associative array.
|
322 |
*
|
323 |
-
|
|
|
324 |
*
|
325 |
* @return void
|
326 |
-
|
327 |
-
function update( $params ) {
|
328 |
-
|
329 |
-
|
330 |
-
|
331 |
-
|
332 |
-
|
333 |
-
|
334 |
-
|
335 |
-
|
336 |
-
|
337 |
-
|
338 |
-
|
339 |
-
|
340 |
-
|
341 |
-
|
342 |
-
|
343 |
-
|
344 |
-
|
345 |
-
|
346 |
-
|
347 |
-
|
348 |
-
|
349 |
-
|
350 |
-
|
351 |
-
|
352 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
353 |
}
|
354 |
-
|
355 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
356 |
$this->show_data_notification = $value;
|
357 |
update_option( 'ai1ec_settings', $this );
|
358 |
}
|
93 |
* @var string
|
94 |
**/
|
95 |
var $cron_freq;
|
96 |
+
|
97 |
/**
|
98 |
* timezone class variable
|
99 |
*
|
118 |
* @var bool
|
119 |
**/
|
120 |
var $show_publish_button;
|
121 |
+
|
122 |
/**
|
123 |
* hide_maps_until_clicked class variable
|
124 |
*
|
125 |
+
* When this setting is on, instead of showing the Google Map,
|
126 |
+
* show a dotted-line box containing the text "Click to view map",
|
127 |
* and when clicked, this box is replaced by the Google Map.
|
128 |
*
|
129 |
* @var bool
|
130 |
**/
|
131 |
var $hide_maps_until_clicked;
|
132 |
+
|
133 |
/**
|
134 |
* agenda_events_expanded class variable
|
135 |
*
|
179 |
* @var string
|
180 |
**/
|
181 |
var $input_date_format;
|
182 |
+
|
183 |
/**
|
184 |
* input_24h_time class variable
|
185 |
*
|
186 |
+
* Use 24h time in time pickers.
|
187 |
*
|
188 |
* @var bool
|
189 |
**/
|
190 |
var $input_24h_time;
|
191 |
|
192 |
+
/**
|
193 |
+
* settings_page class variable
|
194 |
+
*
|
195 |
+
* Stores a reference to the settings page added using the
|
196 |
+
* add_submenu_page function.
|
197 |
+
*
|
198 |
+
* @var object
|
199 |
+
*/
|
200 |
+
var $settings_page;
|
201 |
+
|
202 |
/**
|
203 |
+
* feeds_page class variable
|
204 |
*
|
205 |
+
* Stores a reference to the calendar feeds page added using the
|
206 |
+
* add_submenu_page function.
|
207 |
*
|
208 |
* @var object
|
209 |
+
*/
|
210 |
+
var $feeds_page;
|
211 |
+
|
212 |
/**
|
213 |
* geo_region_biasing class variable
|
214 |
*
|
215 |
+
* If set to TRUE the ISO-3166 part of the configured
|
216 |
* locale in WordPress is going to be used to bias the
|
217 |
* geo autocomplete plugin towards a specific region.
|
218 |
*
|
219 |
* @var bool
|
220 |
**/
|
221 |
var $geo_region_biasing;
|
222 |
+
|
223 |
/**
|
224 |
+
* Whether to display data collection notice on the admin side.
|
225 |
*
|
226 |
* @var bool
|
227 |
+
*/
|
228 |
var $show_data_notification;
|
229 |
+
|
230 |
+
/**
|
231 |
+
* allow_statistics class variable
|
232 |
+
*
|
233 |
+
* @var bool
|
234 |
+
**/
|
235 |
+
var $allow_statistics;
|
236 |
+
|
237 |
/**
|
238 |
+
* disable_autocompletion class variable
|
239 |
*
|
240 |
* @var bool
|
241 |
**/
|
242 |
+
var $disable_autocompletion;
|
243 |
|
244 |
/**
|
245 |
* __construct function
|
305 |
'calendar_css_selector' => '',
|
306 |
'week_start_day' => get_option( 'start_of_week' ),
|
307 |
'agenda_events_per_page' => get_option( 'posts_per_page' ),
|
308 |
+
'agenda_events_expanded' => FALSE,
|
309 |
+
'include_events_in_rss' => FALSE,
|
310 |
+
'allow_publish_to_facebook' => FALSE,
|
311 |
+
'facebook_credentials' => NULL,
|
312 |
+
'user_role_can_create_event' => NULL,
|
313 |
+
'show_publish_button' => FALSE,
|
314 |
+
'hide_maps_until_clicked' => FALSE,
|
315 |
+
'exclude_from_search' => FALSE,
|
316 |
+
'show_create_event_button' => FALSE,
|
317 |
+
'turn_off_subscription_buttons' => FALSE,
|
318 |
+
'inject_categories' => FALSE,
|
319 |
'input_date_format' => 'def',
|
320 |
+
'input_24h_time' => FALSE,
|
321 |
'cron_freq' => 'daily',
|
322 |
'timezone' => get_option( 'timezone_string' ),
|
323 |
+
'geo_region_biasing' => FALSE,
|
324 |
+
'show_data_notification' => TRUE,
|
325 |
+
'allow_statistics' => TRUE,
|
326 |
+
'disable_autocompletion' => FALSE,
|
327 |
);
|
328 |
|
329 |
foreach( $defaults as $key => $default ) {
|
333 |
}
|
334 |
|
335 |
/**
|
|
|
|
|
336 |
* Updates field values with corresponding values found in $params
|
337 |
* associative array.
|
338 |
*
|
339 |
+
* @param string $settings_page Which settings page is being updated.
|
340 |
+
* @param array $params Assoc. array of new settings, e.g. from $_REQUEST.
|
341 |
*
|
342 |
* @return void
|
343 |
+
*/
|
344 |
+
function update( $settings_page, $params ) {
|
345 |
+
switch ($settings_page) {
|
346 |
+
// ==================
|
347 |
+
// = Settings page. =
|
348 |
+
// ==================
|
349 |
+
case 'settings':
|
350 |
+
$field_names = array(
|
351 |
+
'default_calendar_view',
|
352 |
+
'calendar_css_selector',
|
353 |
+
'week_start_day',
|
354 |
+
'agenda_events_per_page',
|
355 |
+
'input_date_format',
|
356 |
+
'allow_events_posting_facebook',
|
357 |
+
'facebook_credentials',
|
358 |
+
'user_role_can_create_event',
|
359 |
+
'timezone',
|
360 |
+
);
|
361 |
+
$checkboxes = array(
|
362 |
+
'agenda_events_expanded',
|
363 |
+
'include_events_in_rss',
|
364 |
+
'show_publish_button',
|
365 |
+
'hide_maps_until_clicked',
|
366 |
+
'exclude_from_search',
|
367 |
+
'show_create_event_button',
|
368 |
+
'turn_off_subscription_buttons',
|
369 |
+
'inject_categories',
|
370 |
+
'input_24h_time',
|
371 |
+
'geo_region_biasing',
|
372 |
+
'allow_statistics',
|
373 |
+
'disable_autocompletion'
|
374 |
+
);
|
375 |
+
|
376 |
+
// Assign parameters to settings.
|
377 |
+
foreach( $field_names as $field_name ) {
|
378 |
+
if( isset( $params[$field_name] ) ) {
|
379 |
+
$this->$field_name = $params[$field_name];
|
380 |
+
}
|
381 |
+
}
|
382 |
+
foreach( $checkboxes as $checkbox ) {
|
383 |
+
$this->$checkbox = isset( $params[$checkbox] ) ? TRUE : FALSE;
|
384 |
+
}
|
385 |
+
|
386 |
+
// Validate specific parameters.
|
387 |
+
$this->agenda_events_per_page = intval( $this->agenda_events_per_page );
|
388 |
+
if( $this->agenda_events_per_page <= 0 ) {
|
389 |
+
$this->agenda_events_per_page = 1;
|
390 |
+
}
|
391 |
+
|
392 |
+
// Update special parameters.
|
393 |
+
$this->update_page( 'calendar_page_id', $params );
|
394 |
+
break;
|
395 |
+
|
396 |
+
// ===============
|
397 |
+
// = Feeds page. =
|
398 |
+
// ===============
|
399 |
+
case 'feeds':
|
400 |
+
// Assign parameters to settings.
|
401 |
+
if( isset( $params['cron_freq'] ) ) {
|
402 |
+
$this->cron_freq = $params['cron_freq'];
|
403 |
+
}
|
404 |
+
break;
|
405 |
+
}
|
406 |
}
|
407 |
+
|
408 |
+
/**
|
409 |
+
* Update setting of show_data_notification - whether to display data
|
410 |
+
* collection notice on the admin side.
|
411 |
+
*
|
412 |
+
* @param boolean $value The new setting for show_data_notification.
|
413 |
+
* @return void
|
414 |
+
*/
|
415 |
+
function update_notification( $value = FALSE ) {
|
416 |
$this->show_data_notification = $value;
|
417 |
update_option( 'ai1ec_settings', $this );
|
418 |
}
|
app/view/{admin_notices.php → admin/admin_notices.php}
RENAMED
File without changes
|
app/view/admin/box_advanced_settings.php
ADDED
@@ -0,0 +1,7 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php do_action( 'ai1ec_advanced_settings_before' ); ?>
|
2 |
+
|
3 |
+
<label class="textinput" for="calendar_css_selector"><?php _e( 'Contain calendar in this DOM element:', AI1EC_PLUGIN_NAME ) ?></label>
|
4 |
+
<input name="calendar_css_selector" id="calendar_css_selector" type="text" size="20" value="<?php echo esc_attr( $calendar_css_selector ) ?>" />
|
5 |
+
<div class="description"><?php _e( 'Optional. Provide a <a href="http://api.jquery.com/category/selectors/" target="_blank">jQuery selector</a> that evaluates to a single DOM element. Replaces any existing markup found within target. If left empty, calendar is shown in normal page content container.', AI1EC_PLUGIN_NAME ) ?></div>
|
6 |
+
|
7 |
+
<?php do_action( 'ai1ec_advanced_settings_after' ); ?>
|
app/view/{box_event_contact.php → admin/box_event_contact.php}
RENAMED
File without changes
|
app/view/{box_event_cost.php → admin/box_event_cost.php}
RENAMED
File without changes
|
app/view/admin/box_event_location.php
ADDED
@@ -0,0 +1,44 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<h4 class="ai1ec-section-title"><?php _e( 'Event location details', AI1EC_PLUGIN_NAME ); ?></h4>
|
2 |
+
<div id="ai1ec-inside-wrapper">
|
3 |
+
<table class="ai1ec-form ai1ec-location-form">
|
4 |
+
<tbody>
|
5 |
+
<tr>
|
6 |
+
<td class="ai1ec-first">
|
7 |
+
<label for="ai1ec_venue">
|
8 |
+
<?php _e( 'Venue name:', AI1EC_PLUGIN_NAME ); ?>
|
9 |
+
</label>
|
10 |
+
</td>
|
11 |
+
<td>
|
12 |
+
<input type="text" name="ai1ec_venue" id="ai1ec_venue" value="<?php echo $venue; ?>" />
|
13 |
+
</td>
|
14 |
+
</tr>
|
15 |
+
<tr>
|
16 |
+
<td>
|
17 |
+
<label for="ai1ec_address">
|
18 |
+
<?php _e( 'Address:', AI1EC_PLUGIN_NAME ); ?>
|
19 |
+
</label>
|
20 |
+
</td>
|
21 |
+
<td>
|
22 |
+
<input type="text" name="ai1ec_address" id="ai1ec_address" value="<?php echo $address; ?>" />
|
23 |
+
</td>
|
24 |
+
</tr>
|
25 |
+
<tr>
|
26 |
+
<td>
|
27 |
+
<label for="ai1ec_google_map">
|
28 |
+
<?php _e( 'Show Google Map:', AI1EC_PLUGIN_NAME ); ?>
|
29 |
+
</label>
|
30 |
+
</td>
|
31 |
+
<td>
|
32 |
+
<input type="checkbox" value="1" name="ai1ec_google_map" id="ai1ec_google_map" <?php echo $google_map; ?> />
|
33 |
+
</td>
|
34 |
+
</tr>
|
35 |
+
</tbody>
|
36 |
+
</table>
|
37 |
+
</div>
|
38 |
+
<div class="ai1ec_box_map <?php if( $show_map ) echo 'ai1ec_box_map_visible' ?>">
|
39 |
+
<div id="ai1ec_map_canvas"></div>
|
40 |
+
</div>
|
41 |
+
<input type="hidden" name="ai1ec_city" id="ai1ec_city" value="<?php echo $city; ?>" />
|
42 |
+
<input type="hidden" name="ai1ec_province" id="ai1ec_province" value="<?php echo $province; ?>" />
|
43 |
+
<input type="hidden" name="ai1ec_postal_code" id="ai1ec_postal_code" value="<?php echo $postal_code; ?>" />
|
44 |
+
<input type="hidden" name="ai1ec_country" id="ai1ec_country" value="<?php echo $country; ?>" />
|
app/view/{box_eventbrite.php → admin/box_eventbrite.php}
RENAMED
File without changes
|
app/view/{box_ics_import_settings.php → admin/box_feeds.php}
RENAMED
@@ -1,5 +1,16 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
<label class="textinput" for="cron_freq">
|
2 |
-
<?php _e( '
|
3 |
</label>
|
4 |
<?php echo $cron_freq ?>
|
5 |
<br class="clear" />
|
@@ -24,3 +35,5 @@
|
|
24 |
|
25 |
<?php echo $feed_rows; ?>
|
26 |
<br class="clear" />
|
|
|
|
1 |
+
<p>
|
2 |
+
<?php _e(
|
3 |
+
'Configure which other calendars your own calendar subscribes to.
|
4 |
+
You can add any calendar that provides an iCalendar (.ics) feed.
|
5 |
+
Enter the feed URL(s) below and the events from those feeds will be
|
6 |
+
imported periodically.',
|
7 |
+
AI1EC_PLUGIN_NAME ); ?>
|
8 |
+
</p>
|
9 |
+
|
10 |
+
<?php do_action( 'ai1ec_feeds_before' ); ?>
|
11 |
+
|
12 |
<label class="textinput" for="cron_freq">
|
13 |
+
<?php _e( 'Check for new events', AI1EC_PLUGIN_NAME ) ?>:
|
14 |
</label>
|
15 |
<?php echo $cron_freq ?>
|
16 |
<br class="clear" />
|
35 |
|
36 |
<?php echo $feed_rows; ?>
|
37 |
<br class="clear" />
|
38 |
+
|
39 |
+
<?php do_action( 'ai1ec_feeds_after' ); ?>
|
app/view/{box_general_settings.php → admin/box_general_settings.php}
RENAMED
@@ -1,3 +1,5 @@
|
|
|
|
|
|
1 |
<h2><?php _e( 'Viewing Events', AI1EC_PLUGIN_NAME ) ?></h2>
|
2 |
|
3 |
<label class="textinput" for="calendar_page_id"><?php _e( 'Calendar page:', AI1EC_PLUGIN_NAME ) ?></label>
|
@@ -14,10 +16,6 @@
|
|
14 |
<?php endif; ?>
|
15 |
<br class="clear" />
|
16 |
|
17 |
-
<label class="textinput" for="calendar_css_selector"><?php _e( 'Contain calendar in this DOM element:', AI1EC_PLUGIN_NAME ) ?></label>
|
18 |
-
<input name="calendar_css_selector" id="calendar_css_selector" type="text" size="20" value="<?php echo esc_attr( $calendar_css_selector ) ?>" />
|
19 |
-
<div class="description"><?php _e( 'Optional. Provide a <a href="http://api.jquery.com/category/selectors/" target="_blank">jQuery selector</a> that evaluates to a single DOM element. Replaces any existing markup found within target. If left empty, calendar is shown in normal page content container.', AI1EC_PLUGIN_NAME ) ?></div>
|
20 |
-
|
21 |
<label class="textinput" for="week_start_day"><?php _e( 'Week starts on', AI1EC_PLUGIN_NAME ) ?></label>
|
22 |
<?php echo $week_start_day ?>
|
23 |
<br class="clear" />
|
@@ -56,12 +54,6 @@
|
|
56 |
</label>
|
57 |
<br class="clear" />
|
58 |
|
59 |
-
<label for="geo_region_biasing">
|
60 |
-
<input class="checkbox" name="geo_region_biasing" id="geo_region_biasing" type="checkbox" value="1" <?php echo $geo_region_biasing ?> />
|
61 |
-
<?php _e( 'Use the configured <strong>region</strong> (WordPress locale) to bias the address autocomplete function', AI1EC_PLUGIN_NAME ) ?>
|
62 |
-
</label>
|
63 |
-
<br class="clear" />
|
64 |
-
|
65 |
<label for="inject_categories">
|
66 |
<input class="checkbox" name="inject_categories" id="inject_categories" type="checkbox" value="1" <?php echo $inject_categories ?> />
|
67 |
<?php _e( 'Include <strong>event categories</strong> in post category lists', AI1EC_PLUGIN_NAME ) ?>
|
@@ -74,10 +66,22 @@
|
|
74 |
<?php echo $input_date_format ?>
|
75 |
<br class="clear" />
|
76 |
|
77 |
-
<label for="input_24h_time">
|
78 |
-
<input class="checkbox" name="input_24h_time" id="input_24h_time" type="checkbox" value="1" <?php echo $input_24h_time ?> />
|
79 |
-
<?php _e( 'Use <strong>24h time</strong> in time pickers', AI1EC_PLUGIN_NAME ) ?>
|
80 |
-
</label>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
81 |
<br class="clear" />
|
82 |
|
83 |
<label for="show_publish_button">
|
@@ -86,10 +90,12 @@
|
|
86 |
</label>
|
87 |
<br class="clear" />
|
88 |
|
89 |
-
<h2><?php _e( 'Sharing
|
90 |
|
91 |
-
<label for="allow_statistics">
|
92 |
-
<input class="checkbox" name="allow_statistics" id="allow_statistics" type="checkbox" value="1" <?php echo $allow_statistics ?> />
|
93 |
-
<?php _e( 'Allow The Seed to collect statistics', AI1EC_PLUGIN_NAME ) ?>
|
94 |
-
</label>
|
95 |
<br class="clear" />
|
|
|
|
1 |
+
<?php do_action( 'ai1ec_general_settings_before' ); ?>
|
2 |
+
|
3 |
<h2><?php _e( 'Viewing Events', AI1EC_PLUGIN_NAME ) ?></h2>
|
4 |
|
5 |
<label class="textinput" for="calendar_page_id"><?php _e( 'Calendar page:', AI1EC_PLUGIN_NAME ) ?></label>
|
16 |
<?php endif; ?>
|
17 |
<br class="clear" />
|
18 |
|
|
|
|
|
|
|
|
|
19 |
<label class="textinput" for="week_start_day"><?php _e( 'Week starts on', AI1EC_PLUGIN_NAME ) ?></label>
|
20 |
<?php echo $week_start_day ?>
|
21 |
<br class="clear" />
|
54 |
</label>
|
55 |
<br class="clear" />
|
56 |
|
|
|
|
|
|
|
|
|
|
|
|
|
57 |
<label for="inject_categories">
|
58 |
<input class="checkbox" name="inject_categories" id="inject_categories" type="checkbox" value="1" <?php echo $inject_categories ?> />
|
59 |
<?php _e( 'Include <strong>event categories</strong> in post category lists', AI1EC_PLUGIN_NAME ) ?>
|
66 |
<?php echo $input_date_format ?>
|
67 |
<br class="clear" />
|
68 |
|
69 |
+
<label for="input_24h_time">
|
70 |
+
<input class="checkbox" name="input_24h_time" id="input_24h_time" type="checkbox" value="1" <?php echo $input_24h_time ?> />
|
71 |
+
<?php _e( 'Use <strong>24h time</strong> in time pickers', AI1EC_PLUGIN_NAME ) ?>
|
72 |
+
</label>
|
73 |
+
<br class="clear" />
|
74 |
+
|
75 |
+
<label for="disable_autocompletion">
|
76 |
+
<input class="checkbox" name="disable_autocompletion" id="disable_autocompletion" type="checkbox" value="1" <?php echo $disable_autocompletion ?> />
|
77 |
+
<?php _e( '<strong>Disable address autocomplete</strong> function', AI1EC_PLUGIN_NAME ) ?>
|
78 |
+
</label>
|
79 |
+
<br class="clear" />
|
80 |
+
|
81 |
+
<label for="geo_region_biasing">
|
82 |
+
<input class="checkbox" name="geo_region_biasing" id="geo_region_biasing" type="checkbox" value="1" <?php echo $geo_region_biasing ?> />
|
83 |
+
<?php _e( 'Use the configured <strong>region</strong> (WordPress locale) to bias the address autocomplete function', AI1EC_PLUGIN_NAME ) ?>
|
84 |
+
</label>
|
85 |
<br class="clear" />
|
86 |
|
87 |
<label for="show_publish_button">
|
90 |
</label>
|
91 |
<br class="clear" />
|
92 |
|
93 |
+
<h2><?php _e( 'Sharing Data', AI1EC_PLUGIN_NAME ) ?></h2>
|
94 |
|
95 |
+
<label for="allow_statistics">
|
96 |
+
<input class="checkbox" name="allow_statistics" id="allow_statistics" type="checkbox" value="1" <?php echo $allow_statistics ?> />
|
97 |
+
<?php _e( 'Allow The Seed to collect calendar statistics', AI1EC_PLUGIN_NAME ) ?>
|
98 |
+
</label>
|
99 |
<br class="clear" />
|
100 |
+
|
101 |
+
<?php do_action( 'ai1ec_general_settings_after' ); ?>
|
app/view/{box_publish_button.php → admin/box_publish_button.php}
RENAMED
File without changes
|
app/view/{box_repeat.php → admin/box_repeat.php}
RENAMED
File without changes
|
app/view/admin/box_the_seed_studio.php
ADDED
@@ -0,0 +1,60 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<div class="ai1ec-plugin-branding thenly">
|
2 |
+
|
3 |
+
<h2 class="thenly-logo"><a href="http://then.ly/" target="_blank"><img src="http://then.ly/img/logo.png" alt="<?php esc_attr_e( 'then.ly', AI1EC_PLUGIN_NAME ) ?>" /></a></h2>
|
4 |
+
|
5 |
+
<div class="thenly-intro">
|
6 |
+
<h2>
|
7 |
+
<?php _e( 'Then.ly’s All-in-One Calendar is a revolutionary new way to find and share events.', AI1EC_PLUGIN_NAME ); ?>
|
8 |
+
</h2>
|
9 |
+
</div>
|
10 |
+
|
11 |
+
<div class="ai1ec-follow-fan">
|
12 |
+
<div class="ai1ec-facebook-like-top">
|
13 |
+
<script src="http://connect.facebook.net/en_US/all.js#xfbml=1"></script>
|
14 |
+
<fb:like href="http://www.facebook.com/thenly.events" layout="button_count" show_faces="true" width="110" font="lucida grande"></fb:like>
|
15 |
+
</div>
|
16 |
+
<a href="http://twitter.com/then_ly" class="twitter-follow-button"><?php _e( 'Follow @then_ly', AI1EC_PLUGIN_NAME ) ?></a>
|
17 |
+
<script src="http://platform.twitter.com/widgets.js" type="text/javascript"></script>
|
18 |
+
</div>
|
19 |
+
|
20 |
+
<p></p>
|
21 |
+
<h2>
|
22 |
+
<?php _e( 'Upgrade to the free Premium version and get access to exclusive features such as:', AI1EC_PLUGIN_NAME ) ?>
|
23 |
+
</h2>
|
24 |
+
<p></p>
|
25 |
+
<h4 class="row-fluid">
|
26 |
+
<div class="span1"> </div>
|
27 |
+
<div class="span4">
|
28 |
+
<ul>
|
29 |
+
<li class="icon-leaf span6"><strong><?php _e( 'Calendar Themes', AI1EC_PLUGIN_NAME ) ?></strong></li>
|
30 |
+
<li class="icon-calendar span6"><strong><?php _e( 'Duplicate Events', AI1EC_PLUGIN_NAME ) ?></strong></li>
|
31 |
+
</ul>
|
32 |
+
</div>
|
33 |
+
<div class="span4">
|
34 |
+
<ul>
|
35 |
+
<li class="icon-map-marker span6"><strong><?php _e( 'Location by Latitude/Longitude', AI1EC_PLUGIN_NAME ) ?></strong></li>
|
36 |
+
<li class="icon-star span6"><strong><?php _e( '... and more!', AI1EC_PLUGIN_NAME ) ?></strong></li>
|
37 |
+
</ul>
|
38 |
+
</div>
|
39 |
+
</h4>
|
40 |
+
<p></p>
|
41 |
+
<p class="ai1ec-get-support">
|
42 |
+
<a class="btn btn-large btn-primary" href="<?php echo admin_url( 'edit.php?post_type=' . AI1EC_POST_TYPE . '&page=' . AI1EC_PLUGIN_NAME . '-upgrade' ) ?>">
|
43 |
+
<i class="icon-download-alt"></i> <?php _e( 'Upgrade to Premium for Free', AI1EC_PLUGIN_NAME ) ?>
|
44 |
+
</a>
|
45 |
+
</p>
|
46 |
+
<hr />
|
47 |
+
<h4>
|
48 |
+
<?php _e( 'Then.ly is dedicated to creating the best calendar software in the world.', AI1EC_PLUGIN_NAME ) ?>
|
49 |
+
</h4>
|
50 |
+
<p></p>
|
51 |
+
<p>
|
52 |
+
<?php _e( 'Please let us know if anything is not working the way you expect. While many problems are caused by conflicts with other plugins, most problems can be solved quickly. Visit our <a href="http://help.then.ly/" target="_blank">Help Desk</a> to report bugs, request features, or learn how to get the most out of this plugin.', AI1EC_PLUGIN_NAME ) ?>
|
53 |
+
</p>
|
54 |
+
<div class="ai1ec-get-support">
|
55 |
+
<a class="btn btn-large btn-primary" href="http://help.then.ly/" target="_blank">
|
56 |
+
<i class="icon-info-sign"></i> <?php _e( 'Get Support', AI1EC_PLUGIN_NAME ) ?>
|
57 |
+
</a>
|
58 |
+
</div>
|
59 |
+
</div>
|
60 |
+
<br class="clear" />
|
app/view/{box_time_and_date.php → admin/box_time_and_date.php}
RENAMED
File without changes
|
app/view/admin/calendar_tasks.php
ADDED
@@ -0,0 +1,82 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<div class="thenly">
|
2 |
+
<div class="hero-unit">
|
3 |
+
<h1><?php _e( 'Welcome', AI1EC_PLUGIN_NAME ); ?></h1>
|
4 |
+
<p><?php _e( 'to the All-in-One Calendar by <a href="http://then.ly/" target="_blank">Then.ly</a>', AI1EC_PLUGIN_NAME ); ?></p>
|
5 |
+
</div>
|
6 |
+
|
7 |
+
<div class="clearfix">
|
8 |
+
<div class="row-fluid">
|
9 |
+
<?php if( $add_allowed ): ?>
|
10 |
+
<div class="span6">
|
11 |
+
<p>
|
12 |
+
<a class="btn btn-primary btn-large" href="<?php echo esc_attr( $add_url ); ?>">
|
13 |
+
<i class="icon-plus"></i> <?php _e( 'Post Your Event', AI1EC_PLUGIN_NAME ); ?>
|
14 |
+
</a>
|
15 |
+
</p>
|
16 |
+
<strong><?php _e( 'Add a new event to the calendar.', AI1EC_PLUGIN_NAME ); ?></strong>
|
17 |
+
</div>
|
18 |
+
<?php endif; ?>
|
19 |
+
|
20 |
+
<?php if( $edit_allowed ): ?>
|
21 |
+
<div class="span6">
|
22 |
+
<p>
|
23 |
+
<a class="btn btn-primary btn-large" href="<?php echo esc_attr( $edit_url ); ?>">
|
24 |
+
<i class="icon-pencil"></i> <?php _e( 'Manage Events', AI1EC_PLUGIN_NAME ); ?>
|
25 |
+
</a>
|
26 |
+
</p>
|
27 |
+
<strong><?php _e( 'View and edit all your events.', AI1EC_PLUGIN_NAME ); ?></strong>
|
28 |
+
</div>
|
29 |
+
<?php endif; ?>
|
30 |
+
</div>
|
31 |
+
|
32 |
+
<hr />
|
33 |
+
|
34 |
+
<div class="row-fluid">
|
35 |
+
<?php if( $categories_allowed ): ?>
|
36 |
+
<div class="span6">
|
37 |
+
<p>
|
38 |
+
<a class="btn" href="<?php echo esc_attr( $categories_url ); ?>">
|
39 |
+
<i class="icon-tags icon-large"></i> <?php _e( 'Manage Event Categories', AI1EC_PLUGIN_NAME ); ?>
|
40 |
+
</a>
|
41 |
+
</p>
|
42 |
+
<p><strong><?php _e( 'Organize and color-code your events.', AI1EC_PLUGIN_NAME ); ?></strong></p>
|
43 |
+
</div>
|
44 |
+
<?php endif; ?>
|
45 |
+
|
46 |
+
<?php if( $themes_allowed ): ?>
|
47 |
+
<div class="span6">
|
48 |
+
<p>
|
49 |
+
<a class="btn" href="<?php echo esc_attr( $themes_url ); ?>">
|
50 |
+
<i class="icon-leaf icon-large"></i> <?php _e( 'Choose Your Theme', AI1EC_PLUGIN_NAME ); ?>
|
51 |
+
</a>
|
52 |
+
</p>
|
53 |
+
<p><strong><?php _e( 'Change the look and feel.', AI1EC_PLUGIN_NAME ); ?></strong></p>
|
54 |
+
</div>
|
55 |
+
<?php endif; ?>
|
56 |
+
</div>
|
57 |
+
|
58 |
+
<div class="row-fluid">
|
59 |
+
<?php if( $feeds_allowed ): ?>
|
60 |
+
<div class="span6">
|
61 |
+
<p>
|
62 |
+
<a class="btn" href="<?php echo esc_attr( $feeds_url ); ?>">
|
63 |
+
<i class="icon-refresh icon-large"></i> <?php _e( 'Manage Calendar Feeds', AI1EC_PLUGIN_NAME ); ?>
|
64 |
+
</a>
|
65 |
+
</p>
|
66 |
+
<p><strong><?php _e( 'Subscribe to other calendars.', AI1EC_PLUGIN_NAME ); ?></strong></p>
|
67 |
+
</div>
|
68 |
+
<?php endif; ?>
|
69 |
+
|
70 |
+
<?php if( $settings_allowed ): ?>
|
71 |
+
<div class="span6">
|
72 |
+
<p>
|
73 |
+
<a class="btn" href="<?php echo esc_attr( $settings_url ); ?>">
|
74 |
+
<i class="icon-cog icon-large"></i> <?php _e( 'Edit Calendar Settings', AI1EC_PLUGIN_NAME ); ?>
|
75 |
+
</a>
|
76 |
+
</p>
|
77 |
+
<p><strong><?php _e( 'Make this calendar your own.', AI1EC_PLUGIN_NAME ); ?></strong></p>
|
78 |
+
</div>
|
79 |
+
<?php endif; ?>
|
80 |
+
</div>
|
81 |
+
</div>
|
82 |
+
</div>
|
app/view/{class-ai1ec-agenda-widget.php → admin/class-ai1ec-agenda-widget.php}
RENAMED
@@ -5,11 +5,8 @@
|
|
5 |
*
|
6 |
* A widget that displays the next X upcoming events (similar to Agenda view).
|
7 |
*/
|
8 |
-
class Ai1ec_Agenda_Widget extends WP_Widget
|
9 |
-
{
|
10 |
/**
|
11 |
-
* _construct function
|
12 |
-
*
|
13 |
* Constructor for widget.
|
14 |
*/
|
15 |
function __construct() {
|
@@ -17,7 +14,7 @@ class Ai1ec_Agenda_Widget extends WP_Widget
|
|
17 |
'ai1ec_agenda_widget',
|
18 |
__( 'Upcoming Events', AI1EC_PLUGIN_NAME ),
|
19 |
array(
|
20 |
-
'description' => __( 'All-in-One
|
21 |
'class' => 'ai1ec-agenda-widget',
|
22 |
)
|
23 |
);
|
@@ -88,7 +85,7 @@ class Ai1ec_Agenda_Widget extends WP_Widget
|
|
88 |
}
|
89 |
}
|
90 |
|
91 |
-
$ai1ec_view_helper->
|
92 |
}
|
93 |
|
94 |
/**
|
@@ -111,7 +108,7 @@ class Ai1ec_Agenda_Widget extends WP_Widget
|
|
111 |
$instance['show_subscribe_buttons'] = $new_instance['show_subscribe_buttons'] ? true : false;
|
112 |
$instance['show_calendar_button'] = $new_instance['show_calendar_button'] ? true : false;
|
113 |
$instance['hide_on_calendar_page'] = $new_instance['hide_on_calendar_page'] ? true : false;
|
114 |
-
|
115 |
// For limits, set the limit to False if no IDs were selected, or set the respective IDs to empty if "limit by" was unchecked
|
116 |
$instance['limit_by_cat'] = false;
|
117 |
$instance['event_cat_ids'] = array();
|
@@ -208,6 +205,6 @@ class Ai1ec_Agenda_Widget extends WP_Widget
|
|
208 |
$args['calendar_url'] = $ai1ec_calendar_helper->get_calendar_url( null, $limit );
|
209 |
$args['subscribe_url'] = AI1EC_EXPORT_URL . $subscribe_filter;
|
210 |
|
211 |
-
$ai1ec_view_helper->
|
212 |
}
|
213 |
}
|
5 |
*
|
6 |
* A widget that displays the next X upcoming events (similar to Agenda view).
|
7 |
*/
|
8 |
+
class Ai1ec_Agenda_Widget extends WP_Widget {
|
|
|
9 |
/**
|
|
|
|
|
10 |
* Constructor for widget.
|
11 |
*/
|
12 |
function __construct() {
|
14 |
'ai1ec_agenda_widget',
|
15 |
__( 'Upcoming Events', AI1EC_PLUGIN_NAME ),
|
16 |
array(
|
17 |
+
'description' => __( 'All-in-One Calendar: Lists upcoming events in Agenda view', AI1EC_PLUGIN_NAME ),
|
18 |
'class' => 'ai1ec-agenda-widget',
|
19 |
)
|
20 |
);
|
85 |
}
|
86 |
}
|
87 |
|
88 |
+
$ai1ec_view_helper->display_admin( 'agenda-widget-form.php', $fields );
|
89 |
}
|
90 |
|
91 |
/**
|
108 |
$instance['show_subscribe_buttons'] = $new_instance['show_subscribe_buttons'] ? true : false;
|
109 |
$instance['show_calendar_button'] = $new_instance['show_calendar_button'] ? true : false;
|
110 |
$instance['hide_on_calendar_page'] = $new_instance['hide_on_calendar_page'] ? true : false;
|
111 |
+
|
112 |
// For limits, set the limit to False if no IDs were selected, or set the respective IDs to empty if "limit by" was unchecked
|
113 |
$instance['limit_by_cat'] = false;
|
114 |
$instance['event_cat_ids'] = array();
|
205 |
$args['calendar_url'] = $ai1ec_calendar_helper->get_calendar_url( null, $limit );
|
206 |
$args['subscribe_url'] = AI1EC_EXPORT_URL . $subscribe_filter;
|
207 |
|
208 |
+
$ai1ec_view_helper->display_theme( 'agenda-widget.php', $args );
|
209 |
}
|
210 |
}
|
{css → app/view/admin/css}/add_new_event.css
RENAMED
@@ -91,6 +91,7 @@
|
|
91 |
.ai1ec_box_map {
|
92 |
float: right;
|
93 |
margin-bottom: 1em;
|
|
|
94 |
/* These are needed for proper map initialization: */
|
95 |
position: absolute;
|
96 |
visibility: hidden;
|
@@ -102,7 +103,7 @@
|
|
102 |
}
|
103 |
#ai1ec_map_canvas {
|
104 |
width: 264px;
|
105 |
-
height:
|
106 |
}
|
107 |
/* Bottom publish button */
|
108 |
.ai1ec_bottom_publish {
|
@@ -517,4 +518,8 @@ div.growlUI h1, div.growlUI h2 {
|
|
517 |
.ai1ec-info-text {
|
518 |
font-size: 10px;
|
519 |
float: left;
|
|
|
|
|
|
|
|
|
520 |
}
|
91 |
.ai1ec_box_map {
|
92 |
float: right;
|
93 |
margin-bottom: 1em;
|
94 |
+
margin-top: -11em;
|
95 |
/* These are needed for proper map initialization: */
|
96 |
position: absolute;
|
97 |
visibility: hidden;
|
103 |
}
|
104 |
#ai1ec_map_canvas {
|
105 |
width: 264px;
|
106 |
+
height: 16em;
|
107 |
}
|
108 |
/* Bottom publish button */
|
109 |
.ai1ec_bottom_publish {
|
518 |
.ai1ec-info-text {
|
519 |
font-size: 10px;
|
520 |
float: left;
|
521 |
+
}
|
522 |
+
/* input coordinates */
|
523 |
+
#ai1ec-inside-wrapper{
|
524 |
+
width: 33em;
|
525 |
}
|
app/view/admin/css/admin.css
ADDED
@@ -0,0 +1,4 @@
|
|
|
|
|
|
|
|
|
1 |
+
#icon-edit.icon32-posts-ai1ec_event,
|
2 |
+
#icon-post.icon32-posts-ai1ec_event {
|
3 |
+
background: url(../img/logo.png) no-repeat center center;
|
4 |
+
}
|
app/view/admin/css/bootstrap.min.css
ADDED
@@ -0,0 +1,9 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
@import url("http://fonts.googleapis.com/css?family=Droid+Sans:400,700");/*!
|
2 |
+
* Bootstrap v2.0.2
|
3 |
+
*
|
4 |
+
* Copyright 2012 Twitter, Inc
|
5 |
+
* Licensed under the Apache License v2.0
|
6 |
+
* http://www.apache.org/licenses/LICENSE-2.0
|
7 |
+
*
|
8 |
+
* Designed and built with all the love in the world @twitter by @mdo and @fat.
|
9 |
+
*/@font-face{font-family:'FontAwesome';src:url('../font/fontawesome-webfont.eot');src:url('../font/fontawesome-webfont.eot?#iefix') format('embedded-opentype'),url('../font/fontawesome-webfont.woff') format('woff'),url('../font/fontawesome-webfont.ttf') format('truetype'),url('../font/fontawesome-webfont.svgz#FontAwesomeRegular') format('svg'),url('../font/fontawesome-webfont.svg#FontAwesomeRegular') format('svg');font-weight:normal;font-style:normal}[class^="icon-"],[class*=" icon-"]{display:inline;width:auto;height:auto;line-height:inherit;vertical-align:baseline;background-image:none;background-position:0 0;background-repeat:repeat}li[class^="icon-"],li[class*=" icon-"]{display:block}[class^="icon-"]:before,[class*=" icon-"]:before{font-family:FontAwesome;font-weight:normal;font-style:normal;display:inline-block;text-decoration:inherit}a [class^="icon-"],a [class*=" icon-"]{display:inline-block;text-decoration:inherit}.icon-large:before{vertical-align:top;font-size:1.3333333333333333em}.btn [class^="icon-"],.btn [class*=" icon-"]{line-height:.9em}li [class^="icon-"],li [class*=" icon-"]{display:inline-block;width:1.25em;text-align:center}li .icon-large[class^="icon-"],li .icon-large[class*=" icon-"]{width:1.875em}li[class^="icon-"],li[class*=" icon-"]{margin-left:0;list-style-type:none}li[class^="icon-"]:before,li[class*=" icon-"]:before{text-indent:-2em;text-align:center}li[class^="icon-"].icon-large:before,li[class*=" icon-"].icon-large:before{text-indent:-1.3333333333333333em}.icon-glass:before{content:"\f000"}.icon-music:before{content:"\f001"}.icon-search:before{content:"\f002"}.icon-envelope:before{content:"\f003"}.icon-heart:before{content:"\f004"}.icon-star:before{content:"\f005"}.icon-star-empty:before{content:"\f006"}.icon-user:before{content:"\f007"}.icon-film:before{content:"\f008"}.icon-th-large:before{content:"\f009"}.icon-th:before{content:"\f00a"}.icon-th-list:before{content:"\f00b"}.icon-ok:before{content:"\f00c"}.icon-remove:before{content:"\f00d"}.icon-zoom-in:before{content:"\f00e"}.icon-zoom-out:before{content:"\f010"}.icon-off:before{content:"\f011"}.icon-signal:before{content:"\f012"}.icon-cog:before{content:"\f013"}.icon-trash:before{content:"\f014"}.icon-home:before{content:"\f015"}.icon-file:before{content:"\f016"}.icon-time:before{content:"\f017"}.icon-road:before{content:"\f018"}.icon-download-alt:before{content:"\f019"}.icon-download:before{content:"\f01a"}.icon-upload:before{content:"\f01b"}.icon-inbox:before{content:"\f01c"}.icon-play-circle:before{content:"\f01d"}.icon-repeat:before{content:"\f01e"}.icon-refresh:before{content:"\f021"}.icon-list-alt:before{content:"\f022"}.icon-lock:before{content:"\f023"}.icon-flag:before{content:"\f024"}.icon-headphones:before{content:"\f025"}.icon-volume-off:before{content:"\f026"}.icon-volume-down:before{content:"\f027"}.icon-volume-up:before{content:"\f028"}.icon-qrcode:before{content:"\f029"}.icon-barcode:before{content:"\f02a"}.icon-tag:before{content:"\f02b"}.icon-tags:before{content:"\f02c"}.icon-book:before{content:"\f02d"}.icon-bookmark:before{content:"\f02e"}.icon-print:before{content:"\f02f"}.icon-camera:before{content:"\f030"}.icon-font:before{content:"\f031"}.icon-bold:before{content:"\f032"}.icon-italic:before{content:"\f033"}.icon-text-height:before{content:"\f034"}.icon-text-width:before{content:"\f035"}.icon-align-left:before{content:"\f036"}.icon-align-center:before{content:"\f037"}.icon-align-right:before{content:"\f038"}.icon-align-justify:before{content:"\f039"}.icon-list:before{content:"\f03a"}.icon-indent-left:before{content:"\f03b"}.icon-indent-right:before{content:"\f03c"}.icon-facetime-video:before{content:"\f03d"}.icon-picture:before{content:"\f03e"}.icon-pencil:before{content:"\f040"}.icon-map-marker:before{content:"\f041"}.icon-adjust:before{content:"\f042"}.icon-tint:before{content:"\f043"}.icon-edit:before{content:"\f044"}.icon-share:before{content:"\f045"}.icon-check:before{content:"\f046"}.icon-move:before{content:"\f047"}.icon-step-backward:before{content:"\f048"}.icon-fast-backward:before{content:"\f049"}.icon-backward:before{content:"\f04a"}.icon-play:before{content:"\f04b"}.icon-pause:before{content:"\f04c"}.icon-stop:before{content:"\f04d"}.icon-forward:before{content:"\f04e"}.icon-fast-forward:before{content:"\f050"}.icon-step-forward:before{content:"\f051"}.icon-eject:before{content:"\f052"}.icon-chevron-left:before{content:"\f053"}.icon-chevron-right:before{content:"\f054"}.icon-plus-sign:before{content:"\f055"}.icon-minus-sign:before{content:"\f056"}.icon-remove-sign:before{content:"\f057"}.icon-ok-sign:before{content:"\f058"}.icon-question-sign:before{content:"\f059"}.icon-info-sign:before{content:"\f05a"}.icon-screenshot:before{content:"\f05b"}.icon-remove-circle:before{content:"\f05c"}.icon-ok-circle:before{content:"\f05d"}.icon-ban-circle:before{content:"\f05e"}.icon-arrow-left:before{content:"\f060"}.icon-arrow-right:before{content:"\f061"}.icon-arrow-up:before{content:"\f062"}.icon-arrow-down:before{content:"\f063"}.icon-share-alt:before{content:"\f064"}.icon-resize-full:before{content:"\f065"}.icon-resize-small:before{content:"\f066"}.icon-plus:before{content:"\f067"}.icon-minus:before{content:"\f068"}.icon-asterisk:before{content:"\f069"}.icon-exclamation-sign:before{content:"\f06a"}.icon-gift:before{content:"\f06b"}.icon-leaf:before{content:"\f06c"}.icon-fire:before{content:"\f06d"}.icon-eye-open:before{content:"\f06e"}.icon-eye-close:before{content:"\f070"}.icon-warning-sign:before{content:"\f071"}.icon-plane:before{content:"\f072"}.icon-calendar:before{content:"\f073"}.icon-random:before{content:"\f074"}.icon-comment:before{content:"\f075"}.icon-magnet:before{content:"\f076"}.icon-chevron-up:before{content:"\f077"}.icon-chevron-down:before{content:"\f078"}.icon-retweet:before{content:"\f079"}.icon-shopping-cart:before{content:"\f07a"}.icon-folder-close:before{content:"\f07b"}.icon-folder-open:before{content:"\f07c"}.icon-resize-vertical:before{content:"\f07d"}.icon-resize-horizontal:before{content:"\f07e"}.icon-bar-chart:before{content:"\f080"}.icon-twitter-sign:before{content:"\f081"}.icon-facebook-sign:before{content:"\f082"}.icon-camera-retro:before{content:"\f083"}.icon-key:before{content:"\f084"}.icon-cogs:before{content:"\f085"}.icon-comments:before{content:"\f086"}.icon-thumbs-up:before{content:"\f087"}.icon-thumbs-down:before{content:"\f088"}.icon-star-half:before{content:"\f089"}.icon-heart-empty:before{content:"\f08a"}.icon-signout:before{content:"\f08b"}.icon-linkedin-sign:before{content:"\f08c"}.icon-pushpin:before{content:"\f08d"}.icon-external-link:before{content:"\f08e"}.icon-signin:before{content:"\f090"}.icon-trophy:before{content:"\f091"}.icon-github-sign:before{content:"\f092"}.icon-upload-alt:before{content:"\f093"}.icon-lemon:before{content:"\f094"}.thenly article,.thenly aside,.thenly details,.thenly figcaption,.thenly figure,.thenly footer,.thenly header,.thenly hgroup,.thenly nav,.thenly section{display:block}.thenly audio,.thenly canvas,.thenly video{display:inline-block;*display:inline;*zoom:1}.thenly audio:not([controls]){display:none}.thenly html{font-size:100%;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}.thenly a:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.thenly a:hover,.thenly a:active{outline:0}.thenly sub,.thenly sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}.thenly sup{top:-0.5em}.thenly sub{bottom:-0.25em}.thenly img{height:auto;border:0;-ms-interpolation-mode:bicubic;vertical-align:middle}.thenly button,.thenly input,.thenly select,.thenly textarea{margin:0;font-size:100%;vertical-align:middle}.thenly button,.thenly input{*overflow:visible;line-height:normal}.thenly button::-moz-focus-inner,.thenly input::-moz-focus-inner{padding:0;border:0}.thenly button,.thenly input[type="button"],.thenly input[type="reset"],.thenly input[type="submit"]{cursor:pointer;-webkit-appearance:button}.thenly input[type="search"]{-webkit-appearance:textfield;-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}.thenly input[type="search"]::-webkit-search-decoration,.thenly input[type="search"]::-webkit-search-cancel-button{-webkit-appearance:none}.thenly textarea{overflow:auto;vertical-align:top}.thenly .clearfix{*zoom:1}.thenly .clearfix:before,.thenly .clearfix:after{display:table;content:""}.thenly .clearfix:after{clear:both}.thenly .hide-text{overflow:hidden;text-indent:100%;white-space:nowrap}.thenly .input-block-level{display:block;width:100%;min-height:28px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box}.thenly .row{margin-left:-20px;*zoom:1}.thenly .row:before,.thenly .row:after{display:table;content:""}.thenly .row:after{clear:both}.thenly [class*="span"]{float:left;margin-left:20px}.thenly .container,.thenly .navbar-fixed-top .container,.thenly .navbar-fixed-bottom .container{width:940px}.thenly .span12{width:940px}.thenly .span11{width:860px}.thenly .span10{width:780px}.thenly .span9{width:700px}.thenly .span8{width:620px}.thenly .span7{width:540px}.thenly .span6{width:460px}.thenly .span5{width:380px}.thenly .span4{width:300px}.thenly .span3{width:220px}.thenly .span2{width:140px}.thenly .span1{width:60px}.thenly .offset12{margin-left:980px}.thenly .offset11{margin-left:900px}.thenly .offset10{margin-left:820px}.thenly .offset9{margin-left:740px}.thenly .offset8{margin-left:660px}.thenly .offset7{margin-left:580px}.thenly .offset6{margin-left:500px}.thenly .offset5{margin-left:420px}.thenly .offset4{margin-left:340px}.thenly .offset3{margin-left:260px}.thenly .offset2{margin-left:180px}.thenly .offset1{margin-left:100px}.thenly .row-fluid{width:100%;*zoom:1}.thenly .row-fluid:before,.thenly .row-fluid:after{display:table;content:""}.thenly .row-fluid:after{clear:both}.thenly .row-fluid>[class*="span"]{float:left;margin-left:2.127659574%}.thenly .row-fluid>[class*="span"]:first-child{margin-left:0}.thenly .row-fluid>.span12{width:99.99999998999999%}.thenly .row-fluid>.span11{width:91.489361693%}.thenly .row-fluid>.span10{width:82.97872339599999%}.thenly .row-fluid>.span9{width:74.468085099%}.thenly .row-fluid>.span8{width:65.95744680199999%}.thenly .row-fluid>.span7{width:57.446808505%}.thenly .row-fluid>.span6{width:48.93617020799999%}.thenly .row-fluid>.span5{width:40.425531911%}.thenly .row-fluid>.span4{width:31.914893614%}.thenly .row-fluid>.span3{width:23.404255317%}.thenly .row-fluid>.span2{width:14.89361702%}.thenly .row-fluid>.span1{width:6.382978723%}.thenly p{margin:0 0 9px;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:13px;line-height:18px}.thenly p small{font-size:11px;color:#999}.thenly .lead{margin-bottom:18px;font-size:20px;font-weight:200;line-height:27px}.thenly h1,.thenly h2,.thenly h3,.thenly h4,.thenly h5,.thenly h6{margin:0;font-family:'Droid Sans','Helvetica Neue',Helvetica,Arial,sans-serif;font-weight:bold;color:#135486;text-rendering:optimizelegibility}.thenly h1 small,.thenly h2 small,.thenly h3 small,.thenly h4 small,.thenly h5 small,.thenly h6 small{font-weight:normal;color:#999}.thenly h1{font-size:30px;line-height:36px}.thenly h1 small{font-size:18px}.thenly h2{font-size:24px;line-height:36px}.thenly h2 small{font-size:18px}.thenly h3{line-height:27px;font-size:18px}.thenly h3 small{font-size:14px}.thenly h4,.thenly h5,.thenly h6{line-height:18px}.thenly h4{font-size:14px}.thenly h4 small{font-size:12px}.thenly h5{font-size:12px}.thenly h6{font-size:11px;color:#999;text-transform:uppercase}.thenly .page-header{padding-bottom:17px;margin:18px 0;border-bottom:1px solid #eee}.thenly .page-header h1{line-height:1}.thenly ul,.thenly ol{padding:0;margin:0 0 9px 25px}.thenly ul ul,.thenly ul ol,.thenly ol ol,.thenly ol ul{margin-bottom:0}.thenly ul{list-style:disc}.thenly ol{list-style:decimal}.thenly li{line-height:18px}.thenly ul.unstyled,.thenly ol.unstyled{margin-left:0;list-style:none}.thenly dl{margin-bottom:18px}.thenly dt,.thenly dd{line-height:18px}.thenly dt{font-weight:bold;line-height:17px}.thenly dd{margin-left:9px}.thenly .dl-horizontal dt{float:left;clear:left;width:120px;text-align:right}.thenly .dl-horizontal dd{margin-left:130px}.thenly hr{margin:18px 0;border:0;border-top:1px solid #eee;border-bottom:1px solid #fff}.thenly strong{font-weight:bold}.thenly em{font-style:italic}.thenly .muted{color:#999}.thenly abbr[title]{border-bottom:1px dotted #ddd;cursor:help}.thenly abbr.initialism{font-size:90%;text-transform:uppercase}.thenly blockquote{padding:0 0 0 15px;margin:0 0 18px;border-left:5px solid #eee}.thenly blockquote p{margin-bottom:0;font-size:16px;font-weight:300;line-height:22.5px}.thenly blockquote small{display:block;line-height:18px;color:#999}.thenly blockquote small:before{content:'\2014 \00A0'}.thenly blockquote.pull-right{float:right;padding-left:0;padding-right:15px;border-left:0;border-right:5px solid #eee}.thenly blockquote.pull-right p,.thenly blockquote.pull-right small{text-align:right}.thenly q:before,.thenly q:after,.thenly blockquote:before,.thenly blockquote:after{content:""}.thenly address{display:block;margin-bottom:18px;line-height:18px;font-style:normal}.thenly small{font-size:100%}.thenly cite{font-style:normal}.thenly .btn{display:inline-block;*display:inline;*zoom:1;padding:4px 10px 4px;margin-bottom:0;font-size:13px;line-height:18px;color:#333;text-align:center;text-shadow:0 1px 1px rgba(255,255,255,0.75);vertical-align:middle;background-color:#f5f5f5;background-image:-moz-linear-gradient(top,#fff,#e6e6e6);background-image:-ms-linear-gradient(top,#fff,#e6e6e6);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fff),to(#e6e6e6));background-image:-webkit-linear-gradient(top,#fff,#e6e6e6);background-image:-o-linear-gradient(top,#fff,#e6e6e6);background-image:linear-gradient(top,#fff,#e6e6e6);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff',endColorstr='#e6e6e6',GradientType=0);border-color:#e6e6e6 #e6e6e6 #bfbfbf;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:dximagetransform.microsoft.gradient(enabled=false);border:1px solid #ccc;border-bottom-color:#b3b3b3;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05);box-shadow:inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05);cursor:pointer;*margin-left:.3em}.thenly .btn:hover,.thenly .btn:active,.thenly .btn.active,.thenly .btn.disabled,.thenly .btn[disabled]{background-color:#e6e6e6}.thenly .btn:active,.thenly .btn.active{background-color:#ccc \9}.thenly .btn:first-child{*margin-left:0}.thenly .btn:hover{color:#333;text-decoration:none;background-color:#e6e6e6;background-position:0 -15px;-webkit-transition:background-position .1s linear;-moz-transition:background-position .1s linear;-ms-transition:background-position .1s linear;-o-transition:background-position .1s linear;transition:background-position .1s linear}.thenly .btn:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.thenly .btn.active,.thenly .btn:active{background-image:none;-webkit-box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05);box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05);background-color:#e6e6e6;background-color:#d9d9d9 \9;outline:0}.thenly .btn.disabled,.thenly .btn[disabled]{cursor:default;background-image:none;background-color:#e6e6e6;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.thenly .btn-large{padding:9px 14px;font-size:15px;line-height:normal;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.thenly .btn-large [class^="icon-"]{margin-top:1px}.thenly .btn-small{padding:5px 9px;font-size:11px;line-height:16px}.thenly .btn-small [class^="icon-"]{margin-top:-1px}.thenly .btn-mini{padding:2px 6px;font-size:11px;line-height:14px}.thenly .btn-primary,.thenly .btn-primary:hover,.thenly .btn-warning,.thenly .btn-warning:hover,.thenly .btn-danger,.thenly .btn-danger:hover,.thenly .btn-success,.thenly .btn-success:hover,.thenly .btn-info,.thenly .btn-info:hover,.thenly .btn-inverse,.thenly .btn-inverse:hover{text-shadow:0 -1px 0 rgba(0,0,0,0.25);color:#fff}.thenly .btn-primary.active,.thenly .btn-warning.active,.thenly .btn-danger.active,.thenly .btn-success.active,.thenly .btn-info.active,.thenly .btn-inverse.active{color:rgba(255,255,255,0.75)}.thenly .btn-primary{background-color:#58b03a;background-image:-moz-linear-gradient(top,#6bbf3f,#3c9933);background-image:-ms-linear-gradient(top,#6bbf3f,#3c9933);background-image:-webkit-gradient(linear,0 0,0 100%,from(#6bbf3f),to(#3c9933));background-image:-webkit-linear-gradient(top,#6bbf3f,#3c9933);background-image:-o-linear-gradient(top,#6bbf3f,#3c9933);background-image:linear-gradient(top,#6bbf3f,#3c9933);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#6bbf3f',endColorstr='#3c9933',GradientType=0);border-color:#3c9933 #3c9933 #255f20;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:dximagetransform.microsoft.gradient(enabled=false)}.thenly .btn-primary:hover,.thenly .btn-primary:active,.thenly .btn-primary.active,.thenly .btn-primary.disabled,.thenly .btn-primary[disabled]{background-color:#3c9933}.thenly .btn-primary:active,.thenly .btn-primary.active{background-color:#2d7326 \9}.thenly .btn-warning{background-color:#e7a179;background-image:-moz-linear-gradient(top,#ecb393,#e08652);background-image:-ms-linear-gradient(top,#ecb393,#e08652);background-image:-webkit-gradient(linear,0 0,0 100%,from(#ecb393),to(#e08652));background-image:-webkit-linear-gradient(top,#ecb393,#e08652);background-image:-o-linear-gradient(top,#ecb393,#e08652);background-image:linear-gradient(top,#ecb393,#e08652);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ecb393',endColorstr='#e08652',GradientType=0);border-color:#e08652 #e08652 #c35d23;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:dximagetransform.microsoft.gradient(enabled=false)}.thenly .btn-warning:hover,.thenly .btn-warning:active,.thenly .btn-warning.active,.thenly .btn-warning.disabled,.thenly .btn-warning[disabled]{background-color:#e08652}.thenly .btn-warning:active,.thenly .btn-warning.active{background-color:#d86827 \9}.thenly .btn-danger{background-color:#da4f49;background-image:-moz-linear-gradient(top,#ee5f5b,#bd362f);background-image:-ms-linear-gradient(top,#ee5f5b,#bd362f);background-image:-webkit-gradient(linear,0 0,0 100%,from(#ee5f5b),to(#bd362f));background-image:-webkit-linear-gradient(top,#ee5f5b,#bd362f);background-image:-o-linear-gradient(top,#ee5f5b,#bd362f);background-image:linear-gradient(top,#ee5f5b,#bd362f);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ee5f5b',endColorstr='#bd362f',GradientType=0);border-color:#bd362f #bd362f #802420;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:dximagetransform.microsoft.gradient(enabled=false)}.thenly .btn-danger:hover,.thenly .btn-danger:active,.thenly .btn-danger.active,.thenly .btn-danger.disabled,.thenly .btn-danger[disabled]{background-color:#bd362f}.thenly .btn-danger:active,.thenly .btn-danger.active{background-color:#942a25 \9}.thenly .btn-success{background-color:#5bb75b;background-image:-moz-linear-gradient(top,#62c462,#51a351);background-image:-ms-linear-gradient(top,#62c462,#51a351);background-image:-webkit-gradient(linear,0 0,0 100%,from(#62c462),to(#51a351));background-image:-webkit-linear-gradient(top,#62c462,#51a351);background-image:-o-linear-gradient(top,#62c462,#51a351);background-image:linear-gradient(top,#62c462,#51a351);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#62c462',endColorstr='#51a351',GradientType=0);border-color:#51a351 #51a351 #387038;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:dximagetransform.microsoft.gradient(enabled=false)}.thenly .btn-success:hover,.thenly .btn-success:active,.thenly .btn-success.active,.thenly .btn-success.disabled,.thenly .btn-success[disabled]{background-color:#51a351}.thenly .btn-success:active,.thenly .btn-success.active{background-color:#408140 \9}.thenly .btn-info{background-color:#49afcd;background-image:-moz-linear-gradient(top,#5bc0de,#2f96b4);background-image:-ms-linear-gradient(top,#5bc0de,#2f96b4);background-image:-webkit-gradient(linear,0 0,0 100%,from(#5bc0de),to(#2f96b4));background-image:-webkit-linear-gradient(top,#5bc0de,#2f96b4);background-image:-o-linear-gradient(top,#5bc0de,#2f96b4);background-image:linear-gradient(top,#5bc0de,#2f96b4);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#5bc0de',endColorstr='#2f96b4',GradientType=0);border-color:#2f96b4 #2f96b4 #1f6377;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:dximagetransform.microsoft.gradient(enabled=false)}.thenly .btn-info:hover,.thenly .btn-info:active,.thenly .btn-info.active,.thenly .btn-info.disabled,.thenly .btn-info[disabled]{background-color:#2f96b4}.thenly .btn-info:active,.thenly .btn-info.active{background-color:#24748c \9}.thenly .btn-inverse{background-color:#414141;background-image:-moz-linear-gradient(top,#555,#222);background-image:-ms-linear-gradient(top,#555,#222);background-image:-webkit-gradient(linear,0 0,0 100%,from(#555),to(#222));background-image:-webkit-linear-gradient(top,#555,#222);background-image:-o-linear-gradient(top,#555,#222);background-image:linear-gradient(top,#555,#222);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#555555',endColorstr='#222222',GradientType=0);border-color:#222 #222 #000;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:dximagetransform.microsoft.gradient(enabled=false)}.thenly .btn-inverse:hover,.thenly .btn-inverse:active,.thenly .btn-inverse.active,.thenly .btn-inverse.disabled,.thenly .btn-inverse[disabled]{background-color:#222}.thenly .btn-inverse:active,.thenly .btn-inverse.active{background-color:#080808 \9}.thenly button.btn,.thenly input[type="submit"].btn{*padding-top:2px;*padding-bottom:2px}.thenly button.btn::-moz-focus-inner,.thenly input[type="submit"].btn::-moz-focus-inner{padding:0;border:0}.thenly button.btn.btn-large,.thenly input[type="submit"].btn.btn-large{*padding-top:7px;*padding-bottom:7px}.thenly button.btn.btn-small,.thenly input[type="submit"].btn.btn-small{*padding-top:3px;*padding-bottom:3px}.thenly button.btn.btn-mini,.thenly input[type="submit"].btn.btn-mini{*padding-top:1px;*padding-bottom:1px}.thenly .hero-unit{padding:60px;margin-bottom:30px;background-color:#eee;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.thenly .hero-unit h1{margin-bottom:0;font-size:60px;line-height:1;color:inherit;letter-spacing:-1px}.thenly .hero-unit p{font-size:18px;font-weight:200;line-height:27px;color:inherit}.thenly .pull-right{float:right}.thenly .pull-left{float:left}.thenly .hide{display:none}.thenly .show{display:block}.thenly .invisible{visibility:hidden}.thenly .hero-unit{padding:30px;margin-bottom:15px}.thenly .hero-unit h1{color:#135486}.thenly hr{margin:14px 0}
|
{css → app/view/admin/css}/colorpicker.css
RENAMED
@@ -30,7 +30,7 @@ ul.colorpicker-list {
|
|
30 |
-webkit-border-radius: 2px;
|
31 |
}
|
32 |
.select-more-colors {
|
33 |
-
width:
|
34 |
line-height: 22px;
|
35 |
height: 22px !important;
|
36 |
border-color: #fff !important;
|
@@ -38,10 +38,15 @@ ul.colorpicker-list {
|
|
38 |
text-align: center;
|
39 |
font-family: Tahoma,Verdana,Arial,Helvetica;
|
40 |
font-size: 11px;
|
|
|
41 |
}
|
42 |
li.select-more-colors:hover {
|
|
|
43 |
border-color: #0A246A !important;
|
44 |
background: #B6BDD2 !important;
|
|
|
|
|
|
|
45 |
}
|
46 |
.color-1 {
|
47 |
background: #60a !important;
|
@@ -103,6 +108,11 @@ li.select-more-colors:hover {
|
|
103 |
.color-20 {
|
104 |
background: #aaa !important;
|
105 |
}
|
|
|
|
|
|
|
|
|
|
|
106 |
.colorpicker {
|
107 |
width: 356px;
|
108 |
height: 176px;
|
30 |
-webkit-border-radius: 2px;
|
31 |
}
|
32 |
.select-more-colors {
|
33 |
+
width: 100% !important;
|
34 |
line-height: 22px;
|
35 |
height: 22px !important;
|
36 |
border-color: #fff !important;
|
38 |
text-align: center;
|
39 |
font-family: Tahoma,Verdana,Arial,Helvetica;
|
40 |
font-size: 11px;
|
41 |
+
/*padding-left: 17px !important;*/
|
42 |
}
|
43 |
li.select-more-colors:hover {
|
44 |
+
width:103px !important;
|
45 |
border-color: #0A246A !important;
|
46 |
background: #B6BDD2 !important;
|
47 |
+
margin-right: 2px !important;
|
48 |
+
|
49 |
+
|
50 |
}
|
51 |
.color-1 {
|
52 |
background: #60a !important;
|
108 |
.color-20 {
|
109 |
background: #aaa !important;
|
110 |
}
|
111 |
+
.color-21 {
|
112 |
+
width: 13px;
|
113 |
+
height: 13px;
|
114 |
+
background: url( ../img/color-picker-default.png );
|
115 |
+
}
|
116 |
.colorpicker {
|
117 |
width: 356px;
|
118 |
height: 176px;
|
app/view/admin/css/dashboard.css
ADDED
@@ -0,0 +1,28 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
div.ai1ec-calendar-tasks {
|
2 |
+
padding: 0.25em 0.5em;
|
3 |
+
position: relative;
|
4 |
+
}
|
5 |
+
#ai1ec-calendar-tasks a.ai1ec-big-button {
|
6 |
+
font-size: 23px !important;
|
7 |
+
min-width: 275px;
|
8 |
+
width: 55%;
|
9 |
+
}
|
10 |
+
.ai1ec-motif {
|
11 |
+
background: url(../img/logo.png) no-repeat 90% center;
|
12 |
+
bottom: 0;
|
13 |
+
left: 0;
|
14 |
+
opacity: 0.75;
|
15 |
+
filter: alpha(opacity=75);
|
16 |
+
right: 0;
|
17 |
+
margin: -10px 0;
|
18 |
+
position: absolute;
|
19 |
+
top: 0;
|
20 |
+
}
|
21 |
+
|
22 |
+
#dashboard-widgets > #postbox-container-1 {
|
23 |
+
width: 65% !important;
|
24 |
+
}
|
25 |
+
|
26 |
+
#dashboard-widgets > #postbox-container-2 {
|
27 |
+
width: 35% !important;
|
28 |
+
}
|
{css → app/view/admin/css}/datepicker.css
RENAMED
File without changes
|
{css → app/view/admin/css}/jquery.autocomplete.css
RENAMED
File without changes
|
app/view/admin/css/platform.css
ADDED
@@ -0,0 +1,61 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/**
|
2 |
+
* @file
|
3 |
+
* Styles specific to calendar platform mode.
|
4 |
+
*/
|
5 |
+
|
6 |
+
#ai1ec-calendar-tasks {
|
7 |
+
background: #fff;
|
8 |
+
}
|
9 |
+
#ai1ec-calendar-tasks .btn {
|
10 |
+
-webkit-box-sizing: border-box;
|
11 |
+
-moz-box-sizing: border-box;
|
12 |
+
box-sizing: border-box;
|
13 |
+
width: 85%;
|
14 |
+
}
|
15 |
+
#wp-admin-bar-wp-logo > .ab-item .ab-icon {
|
16 |
+
background-image: url(../img/admin-bar-sprite.png);
|
17 |
+
}
|
18 |
+
/* Weird rendering of large icons in WP 3.2. */
|
19 |
+
.branch-3-2 .icon-large::before {
|
20 |
+
vertical-align: bottom;
|
21 |
+
}
|
22 |
+
|
23 |
+
#adminmenu #menu-posts-ai1ec_event.menu-top {
|
24 |
+
min-height: 47px;
|
25 |
+
}
|
26 |
+
#adminmenu #menu-posts-ai1ec_event a.menu-top,
|
27 |
+
#adminmenu #menu-posts-ai1ec_event .wp-submenu-head {
|
28 |
+
font-size: 16px;
|
29 |
+
line-height: 36px;
|
30 |
+
min-width: 0;
|
31 |
+
}
|
32 |
+
#menu-posts-ai1ec_event > div.wp-menu-image {
|
33 |
+
margin-top: 8px;
|
34 |
+
}
|
35 |
+
#adminmenu #menu-posts-ai1ec_event > div.wp-menu-arrow,
|
36 |
+
#adminmenu #menu-posts-ai1ec_event.wp-not-current-submenu > div.wp-menu-arrow {
|
37 |
+
height: 46px;
|
38 |
+
}
|
39 |
+
#adminmenu #menu-posts-ai1ec_event .wp-menu-arrow div,
|
40 |
+
#adminmenu #menu-posts-ai1ec_event.wp-not-current-submenu .wp-menu-arrow div {
|
41 |
+
top: 15px;
|
42 |
+
-webkit-transform: matrix(-0.6,1.5,0.6,1.5,0,0);
|
43 |
+
-moz-transform: matrix(-0.6,1.5,0.6,1.5,0,0);
|
44 |
+
-ms-transform: matrix(-0.6,1.5,0.6,1.5,0,0);
|
45 |
+
-o-transform: matrix(-0.6,1.5,0.6,1.5,0,0);
|
46 |
+
transform: matrix(-0.6,1.5,0.6,1.5,0,0);
|
47 |
+
}
|
48 |
+
.branch-3-2 #adminmenu #menu-posts-ai1ec_event .wp-menu-arrow div,
|
49 |
+
.branch-3-2 #adminmenu #menu-posts-ai1ec_event.wp-not-current-submenu .wp-menu-arrow div {
|
50 |
+
-webkit-background-size: 100% 100%;
|
51 |
+
-moz-background-size: 100% 100%;
|
52 |
+
-ms-background-size: 100% 100%;
|
53 |
+
-o-background-size: 100% 100%;
|
54 |
+
background-size: 100% 100%;
|
55 |
+
height: 47px;
|
56 |
+
-webkit-transform: none;
|
57 |
+
-moz-transform: none;
|
58 |
+
-ms-transform: none;
|
59 |
+
-o-transform: none;
|
60 |
+
transform: none;
|
61 |
+
}
|
{css → app/view/admin/css}/selector.css
RENAMED
File without changes
|
app/view/admin/css/settings.css
ADDED
@@ -0,0 +1,139 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
.ai1ec-plugin-branding div.inside {
|
2 |
+
background: #fff;
|
3 |
+
margin: 0 !important;
|
4 |
+
padding: 6px 12px 8px;
|
5 |
+
}
|
6 |
+
.ai1ec-plugin-branding h2 {
|
7 |
+
font-size: 20px !important;
|
8 |
+
line-height: 28px !important;
|
9 |
+
}
|
10 |
+
.ai1ec-plugin-branding .thenly-logo {
|
11 |
+
text-align: center;
|
12 |
+
}
|
13 |
+
.ai1ec-plugin-branding .thenly-logo img {
|
14 |
+
max-width: 100%;
|
15 |
+
}
|
16 |
+
.ai1ec-plugin-branding .ai1ec-follow-fan {
|
17 |
+
padding: 10px 0 6px;
|
18 |
+
margin: 5px 0 15px;
|
19 |
+
border-top: 1px solid #ddd;
|
20 |
+
border-bottom: 1px solid #ddd;
|
21 |
+
}
|
22 |
+
.ai1ec-plugin-branding .ai1ec-facebook-like-top {
|
23 |
+
float: left;
|
24 |
+
}
|
25 |
+
.ai1ec-plugin-branding a.btn,
|
26 |
+
.ai1ec-plugin-branding a.btn:hover {
|
27 |
+
text-decoration: none;
|
28 |
+
}
|
29 |
+
.ai1ec-plugin-branding .ai1ec-get-support {
|
30 |
+
text-align: center;
|
31 |
+
}
|
32 |
+
.ai1ec-plugin-branding .ai1ec-get-support a.btn {
|
33 |
+
font-size: 20px;
|
34 |
+
}
|
35 |
+
|
36 |
+
.ai1ec_feed_h4 {
|
37 |
+
margin-bottom: 5px;
|
38 |
+
}
|
39 |
+
.column-1-ai1ec {
|
40 |
+
float: left;
|
41 |
+
width: 54%;
|
42 |
+
}
|
43 |
+
.column-2-ai1ec {
|
44 |
+
float: right;
|
45 |
+
width: 45%;
|
46 |
+
}
|
47 |
+
.column-3-ai1ec {
|
48 |
+
float: left;
|
49 |
+
width: 100%;
|
50 |
+
}
|
51 |
+
|
52 |
+
#ai1ec-general-settings {
|
53 |
+
line-height: 1.7em;
|
54 |
+
}
|
55 |
+
.column-1-ai1ec #ai1ec-general-settings div.inside label {
|
56 |
+
float: left;
|
57 |
+
clear: left;
|
58 |
+
margin: 0.25em 0;
|
59 |
+
}
|
60 |
+
.column-1-ai1ec #ai1ec-general-settings .checkbox {
|
61 |
+
float: left;
|
62 |
+
margin: 0.25em 0.5em 0 0;
|
63 |
+
}
|
64 |
+
.column-1-ai1ec #ai1ec-general-settings div.description {
|
65 |
+
clear: left;
|
66 |
+
font-size: 0.95em;
|
67 |
+
line-height: 1.5em;
|
68 |
+
margin-bottom: 1em;
|
69 |
+
}
|
70 |
+
.column-1-ai1ec #ai1ec-general-settings label.textinput {
|
71 |
+
width: 230px;
|
72 |
+
}
|
73 |
+
.column-1-ai1ec #ai1ec-general-settings h2 {
|
74 |
+
margin-bottom: 0;
|
75 |
+
margin-top: 10px;
|
76 |
+
}
|
77 |
+
|
78 |
+
/* ICS Feeds */
|
79 |
+
#ai1ec_feed_url,
|
80 |
+
.ai1ec-feed-url {
|
81 |
+
width: 100%;
|
82 |
+
}
|
83 |
+
.ai1ec-feed-category, .ai1ec-feed-tags {
|
84 |
+
float: left;
|
85 |
+
overflow: hidden;
|
86 |
+
line-height: 2em;
|
87 |
+
}
|
88 |
+
.ai1ec-feed-category strong, .ai1ec-feed-tags strong {
|
89 |
+
margin: 0 1em 0 0.2em;
|
90 |
+
}
|
91 |
+
#ai1ec_feed_category, #ai1ec_feed_tags {
|
92 |
+
width: 15em;
|
93 |
+
}
|
94 |
+
#ai1ec_feed_category {
|
95 |
+
margin-right: 0.5em;
|
96 |
+
}
|
97 |
+
.ai1ec-feed-container {
|
98 |
+
background: #eee;
|
99 |
+
border: 1px solid #ddd;
|
100 |
+
padding: 0.3em 0.5em;
|
101 |
+
border-radius: 0.5em;
|
102 |
+
-moz-border-radius: 0.5em;
|
103 |
+
-webkit-border-radius: 0.5em;
|
104 |
+
overflow: hidden;
|
105 |
+
position: relative;
|
106 |
+
margin: 1em 0 0;
|
107 |
+
}
|
108 |
+
.ai1ec-feed-container .ajax-loading {
|
109 |
+
clear: left;
|
110 |
+
display: block;
|
111 |
+
}
|
112 |
+
.ai1ec_feed_h4 {
|
113 |
+
margin: 0.5em 0;
|
114 |
+
}
|
115 |
+
#ai1ec_add_new_ics, .ai1ec_delete_ics {
|
116 |
+
clear: left;
|
117 |
+
}
|
118 |
+
#ai1ec_add_new_ics, .ai1ec_delete_ics, .ai1ec_update_ics, .ai1ec_flush_ics {
|
119 |
+
float: right;
|
120 |
+
}
|
121 |
+
#ai1ec_save_settings {
|
122 |
+
clear: left;
|
123 |
+
display: block;
|
124 |
+
}
|
125 |
+
|
126 |
+
.ai1ec-donate {
|
127 |
+
text-align: center;
|
128 |
+
}
|
129 |
+
#ai1ec-rss-news {
|
130 |
+
margin: 0;
|
131 |
+
padding: 0px 0px 0px 20px;
|
132 |
+
}
|
133 |
+
#ai1ec-rss-news > li {
|
134 |
+
list-style: disc;
|
135 |
+
}
|
136 |
+
|
137 |
+
p.submit {
|
138 |
+
padding-top: 0;
|
139 |
+
}
|
{css → app/view/admin/css}/widget.css
RENAMED
File without changes
|
app/view/{donate_button.php → admin/donate_button.php}
RENAMED
File without changes
|
app/view/{event_categories-color_picker.php → admin/event_categories-color_picker.php}
RENAMED
File without changes
|
app/view/{feed_row.php → admin/feed_row.php}
RENAMED
File without changes
|
app/view/admin/font/fontawesome-webfont.eot
ADDED
Binary file
|
app/view/admin/font/fontawesome-webfont.svg
ADDED
@@ -0,0 +1,175 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?xml version="1.0" standalone="no"?>
|
2 |
+
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
|
3 |
+
<svg xmlns="http://www.w3.org/2000/svg">
|
4 |
+
<metadata>
|
5 |
+
This is a custom SVG webfont generated by Font Squirrel.
|
6 |
+
Designer : Dave Gandy
|
7 |
+
Foundry : Fort Awesome
|
8 |
+
</metadata>
|
9 |
+
<defs>
|
10 |
+
<font id="FontAwesomeRegular" horiz-adv-x="900" >
|
11 |
+
<font-face units-per-em="1000" ascent="750" descent="-250" />
|
12 |
+
<missing-glyph horiz-adv-x="250" />
|
13 |
+
<glyph unicode="
" horiz-adv-x="250" />
|
14 |
+
<glyph horiz-adv-x="0" />
|
15 |
+
<glyph horiz-adv-x="0" />
|
16 |
+
<glyph unicode=" " horiz-adv-x="250" />
|
17 |
+
<glyph unicode="	" horiz-adv-x="250" />
|
18 |
+
<glyph unicode=" " horiz-adv-x="250" />
|
19 |
+
<glyph unicode=" " horiz-adv-x="375" />
|
20 |
+
<glyph unicode=" " horiz-adv-x="751" />
|
21 |
+
<glyph unicode=" " horiz-adv-x="375" />
|
22 |
+
<glyph unicode=" " horiz-adv-x="751" />
|
23 |
+
<glyph unicode=" " horiz-adv-x="250" />
|
24 |
+
<glyph unicode=" " horiz-adv-x="187" />
|
25 |
+
<glyph unicode=" " horiz-adv-x="125" />
|
26 |
+
<glyph unicode=" " horiz-adv-x="125" />
|
27 |
+
<glyph unicode=" " horiz-adv-x="93" />
|
28 |
+
<glyph unicode=" " horiz-adv-x="150" />
|
29 |
+
<glyph unicode=" " horiz-adv-x="41" />
|
30 |
+
<glyph unicode=" " horiz-adv-x="150" />
|
31 |
+
<glyph unicode=" " horiz-adv-x="187" />
|
32 |
+
<glyph unicode="" horiz-adv-x="500" d="M0 0v0v0v0v0z" />
|
33 |
+
<glyph unicode="" horiz-adv-x="750" d="M3 727q10 23 34 23h675q25 0 35 -23t-8 -41l-298 -298v-313h121q16 0 27 -11t11 -26q0 -16 -11 -27t-27 -11h-375q-15 0 -26 11t-11 27q0 15 11 26t26 11h122v313l-298 298q-18 18 -8 41z" />
|
34 |
+
<glyph unicode="" horiz-adv-x="688" d="M0 112q0 24 11 44.5t30 35.5t45 24t55 9q13 0 24.5 -2t22.5 -5v388l500 144v-525q0 -23 -11 -43.5t-30 -36t-45 -24.5t-55 -9t-54.5 9t-44.5 24.5t-30 36t-11 43.5t11 43.5t30 35.5t44.5 24t54.5 9q24 0 47 -6v248l-312 -90v-377q0 -23 -11 -43.5t-30 -35.5t-45 -24 t-55 -9t-55 9t-45 24t-30 35.5t-11 43.5z" />
|
35 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 437q0 65 24.5 122t67 99.5t99.5 67t122 24.5q64 0 121 -24.5t99.5 -67t67 -99.5t24.5 -122q0 -48 -13.5 -91t-38.5 -81l168 -167q9 -10 9 -23t-9 -22l-44 -44q-9 -9 -22 -9t-22 9l-168 168q-38 -25 -81 -38.5t-91 -13.5q-65 0 -122 24.5t-99.5 67t-67 99t-24.5 121.5z M125 437q0 -39 14.5 -73t40 -59.5t60 -40t73.5 -14.5t73 14.5t59.5 40t40 59.5t14.5 73t-14.5 73t-40 59.5t-59.5 40.5t-73 15t-73.5 -15t-60 -40.5t-40 -59.5t-14.5 -73zM194 437q0 25 9.5 46.5t25.5 37.5t37.5 25.5t46.5 9.5q10 0 16.5 -7t6.5 -17t-6.5 -16.5t-16.5 -6.5 q-30 0 -51 -21t-21 -51q0 -10 -6.5 -16.5t-16.5 -6.5t-17 6.5t-7 16.5z" />
|
36 |
+
<glyph unicode="" d="M0 56v587v32v19q0 23 16.5 39.5t39.5 16.5h19h750h19q23 0 39.5 -16.5t16.5 -39.5v-19v-30v-589q0 -23 -16.5 -39.5t-39.5 -16.5h-788q-23 0 -39.5 16.5t-16.5 39.5zM75 75h750v416q-15 -15 -28 -24q-29 -21 -61 -46t-64 -49q-19 -14 -36.5 -28t-32.5 -25q-3 -2 -6 -4.5 t-7 -5.5q-14 -11 -29.5 -22.5t-33.5 -22t-37.5 -17t-40.5 -6.5q-20 0 -39.5 6.5t-37 17t-33.5 22t-29 22.5q-4 3 -7 5.5t-6 4.5q-15 11 -32.5 25t-36.5 28q-32 24 -64 49t-61 46q-13 9 -28 24v-416zM75 643q0 -14 6 -30t16.5 -32t23 -30t26.5 -24q23 -17 49 -37l52 -38 q26 -20 50 -39t44 -34l22 -17q14 -11 28.5 -21t29 -17.5t27.5 -7.5h1h1q13 0 27.5 7.5t29 17.5t28.5 21l22 17q20 15 44 34t50 39l52 38q26 20 49 37q13 10 26 24t23.5 30t16.5 32t6 30v32h-750v-32z" />
|
37 |
+
<glyph unicode="" horiz-adv-x="846" d="M0 519q0 64 20 108t52.5 71.5t73.5 39.5t83 12q30 0 59 -10t54 -25t45.5 -32.5t35.5 -32.5q15 15 35.5 32.5t45.5 32.5t54 25t59 10q42 0 83 -12t73.5 -39.5t52.5 -71.5t20 -108q0 -44 -16.5 -83.5t-36 -69.5t-37 -48t-18.5 -19l-289 -288q-11 -11 -26 -11t-26 11 l-290 288q-1 1 -18 19t-36.5 48t-36 69.5t-16.5 83.5z" />
|
38 |
+
<glyph unicode="" horiz-adv-x="787" d="M0.5 465q4.5 13 25.5 16l238 35l106 215q10 20 23.5 20t22.5 -20l107 -215l237 -35q22 -3 26 -16t-11 -28l-172 -168l40 -236q4 -22 -7 -30t-30 3l-213 111l-212 -111q-20 -11 -31 -3t-7 30l41 236l-172 168q-16 15 -11.5 28z" />
|
39 |
+
<glyph unicode="" horiz-adv-x="787" d="M0.5 465q4.5 13 25.5 16l238 34l106 216q9 19 23 19t23 -19l107 -216l237 -34q22 -3 26 -16t-11 -28l-172 -168l40 -236q3 -16 -2 -24.5t-16 -8.5q-7 0 -19 5l-213 112l-212 -112q-12 -5 -19 -5q-11 0 -16 8.5t-3 24.5l41 236l-172 168q-16 15 -11.5 28zM136 421l100 -98 l29 -27l-7 -39l-24 -139l124 66l35 18l35 -18l124 -66l-23 139l-7 39l28 27l101 98l-139 20l-39 6l-18 35l-62 126l-62 -126l-17 -35l-39 -6z" />
|
40 |
+
<glyph unicode="" d="M0 34v7q11 19 19.5 40t17.5 42t19.5 40t25.5 34q7 7 15.5 13.5t19.5 10.5t23.5 5t25.5 3q37 6 77.5 12.5t78.5 12.5q4 17 7 34.5t8 33.5q-8 11 -16 21.5t-15.5 23t-13.5 28.5t-9 37q-2 11 -5 32.5t-6 44t-5.5 41t-2.5 22.5q0 25 10.5 56t33 58t58 45.5t84.5 18.5 t84.5 -18.5t58 -45.5t33 -58t10.5 -56q0 -4 -2.5 -22.5t-5.5 -41t-6 -44t-5 -32.5q-3 -21 -9 -37t-13.5 -28.5t-16 -23t-15.5 -21.5q5 -16 8 -33.5t7 -34.5q38 -6 78.5 -12.5t77.5 -12.5q13 -2 25.5 -3t23.5 -5t19.5 -10.5t15.5 -13.5q15 -15 25.5 -34t19.5 -40t17.5 -42 t19.5 -40v-7q-14 -8 -26.5 -18.5t-30.5 -15.5h-786q-18 5 -30.5 15.5t-26.5 18.5z" />
|
41 |
+
<glyph unicode="" d="M0 56v638q0 23 16.5 39.5t39.5 16.5h788q23 0 39.5 -16.5t16.5 -39.5v-638q0 -23 -16.5 -39.5t-39.5 -16.5h-788q-23 0 -39.5 16.5t-16.5 39.5zM56 75q0 -8 5.5 -13.5t13.5 -5.5h75q8 0 13.5 5.5t5.5 13.5v75q0 8 -5.5 13.5t-13.5 5.5h-75q-8 0 -13.5 -5.5t-5.5 -13.5 v-75zM56 250q0 -8 5.5 -13.5t13.5 -5.5h75q8 0 13.5 5.5t5.5 13.5v75q0 8 -5.5 13.5t-13.5 5.5h-75q-8 0 -13.5 -5.5t-5.5 -13.5v-75zM56 425q0 -8 5.5 -13.5t13.5 -5.5h75q8 0 13.5 5.5t5.5 13.5v75q0 8 -5.5 13.5t-13.5 5.5h-75q-8 0 -13.5 -5.5t-5.5 -13.5v-75zM56 600 q0 -8 5.5 -13.5t13.5 -5.5h75q8 0 13.5 5.5t5.5 13.5v75q0 8 -5.5 13.5t-13.5 5.5h-75q-8 0 -13.5 -5.5t-5.5 -13.5v-75zM225 75q0 -8 5.5 -13.5t13.5 -5.5h412q8 0 13.5 5.5t5.5 13.5v250q0 8 -5.5 13.5t-13.5 5.5h-412q-8 0 -13.5 -5.5t-5.5 -13.5v-250zM225 425 q0 -8 5.5 -13.5t13.5 -5.5h412q8 0 13.5 5.5t5.5 13.5v250q0 8 -5.5 13.5t-13.5 5.5h-412q-8 0 -13.5 -5.5t-5.5 -13.5v-250zM731 75q0 -8 5.5 -13.5t13.5 -5.5h75q8 0 13.5 5.5t5.5 13.5v75q0 8 -5.5 13.5t-13.5 5.5h-75q-8 0 -13.5 -5.5t-5.5 -13.5v-75zM731 250 q0 -8 5.5 -13.5t13.5 -5.5h75q8 0 13.5 5.5t5.5 13.5v75q0 8 -5.5 13.5t-13.5 5.5h-75q-8 0 -13.5 -5.5t-5.5 -13.5v-75zM731 425q0 -8 5.5 -13.5t13.5 -5.5h75q8 0 13.5 5.5t5.5 13.5v75q0 8 -5.5 13.5t-13.5 5.5h-75q-8 0 -13.5 -5.5t-5.5 -13.5v-75zM731 600 q0 -8 5.5 -13.5t13.5 -5.5h75q8 0 13.5 5.5t5.5 13.5v75q0 8 -5.5 13.5t-13.5 5.5h-75q-8 0 -13.5 -5.5t-5.5 -13.5v-75z" />
|
42 |
+
<glyph unicode="" d="M0 38v262q0 16 11 27t27 11h337q16 0 27 -11t11 -27v-262q0 -16 -11 -27t-27 -11h-337q-16 0 -27 11t-11 27zM0 450v263q0 15 11 26t27 11h337q16 0 27 -11t11 -26v-263q0 -16 -11 -26.5t-27 -10.5h-337q-16 0 -27 10.5t-11 26.5zM488 38v262q0 16 10.5 27t26.5 11h338 q15 0 26 -11t11 -27v-262q0 -16 -11 -27t-26 -11h-338q-16 0 -26.5 11t-10.5 27zM488 450v263q0 15 10.5 26t26.5 11h338q15 0 26 -11t11 -26v-263q0 -16 -11 -26.5t-26 -10.5h-338q-16 0 -26.5 10.5t-10.5 26.5z" />
|
43 |
+
<glyph unicode="" d="M0 38v132q0 16 11 26.5t27 10.5h175q15 0 26 -10.5t11 -26.5v-132q0 -16 -11 -27t-26 -11h-175q-16 0 -27 11t-11 27zM0 320v110q0 16 11 26.5t27 10.5h175q15 0 26 -10.5t11 -26.5v-110q0 -16 -11 -27t-26 -11h-175q-16 0 -27 11t-11 27zM0 580v133q0 15 11 26t27 11 h175q15 0 26 -11t11 -26v-133q0 -16 -11 -27t-26 -11h-175q-16 0 -27 11t-11 27zM325 38v132q0 16 11 26.5t27 10.5h175q15 0 26 -10.5t11 -26.5v-132q0 -16 -11 -27t-26 -11h-175q-16 0 -27 11t-11 27zM325 320v110q0 16 11 26.5t27 10.5h175q15 0 26 -10.5t11 -26.5v-110 q0 -16 -11 -27t-26 -11h-175q-16 0 -27 11t-11 27zM325 580v133q0 15 11 26t27 11h175q15 0 26 -11t11 -26v-133q0 -16 -11 -27t-26 -11h-175q-16 0 -27 11t-11 27zM650 38v132q0 16 11 26.5t27 10.5h175q15 0 26 -10.5t11 -26.5v-132q0 -16 -11 -27t-26 -11h-175 q-16 0 -27 11t-11 27zM650 320v110q0 16 11 26.5t27 10.5h175q15 0 26 -10.5t11 -26.5v-110q0 -16 -11 -27t-26 -11h-175q-16 0 -27 11t-11 27zM650 580v133q0 15 11 26t27 11h175q15 0 26 -11t11 -26v-133q0 -16 -11 -27t-26 -11h-175q-16 0 -27 11t-11 27z" />
|
44 |
+
<glyph unicode="" d="M0 38v132q0 16 11 26.5t27 10.5h145q15 0 26 -10.5t11 -26.5v-132q0 -16 -11 -27t-26 -11h-145q-16 0 -27 11t-11 27zM0 320v110q0 16 11 26.5t27 10.5h145q15 0 26 -10.5t11 -26.5v-110q0 -16 -11 -27t-26 -11h-145q-16 0 -27 11t-11 27zM0 580v133q0 15 11 26t27 11 h145q15 0 26 -11t11 -26v-133q0 -16 -11 -27t-26 -11h-145q-16 0 -27 11t-11 27zM295 38v132q0 16 11 26.5t27 10.5h530q15 0 26 -10.5t11 -26.5v-132q0 -16 -11 -27t-26 -11h-530q-16 0 -27 11t-11 27zM295 320v110q0 16 11 26.5t27 10.5h530q15 0 26 -10.5t11 -26.5v-110 q0 -16 -11 -27t-26 -11h-530q-16 0 -27 11t-11 27zM295 580v133q0 15 11 26t27 11h530q15 0 26 -11t11 -26v-133q0 -16 -11 -27t-26 -11h-530q-16 0 -27 11t-11 27z" />
|
45 |
+
<glyph unicode="" d="M0 312.5q0 16.5 11 27.5l85 85q11 11 27.5 11t27.5 -11l178 -178q11 -11 27.5 -11t27.5 11l364 364q11 11 27.5 11t27.5 -11l85 -85q11 -11 11 -27.5t-11 -27.5l-444 -444q-11 -11 -30.5 -19t-35.5 -8h-43q-17 0 -36.5 8t-30.5 19l-257 258q-11 11 -11 27.5z" />
|
46 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 94q0 19 14 33l248 249l-248 244q-14 14 -14 33t14 33l49 49q14 14 33 14t33 -14l246 -246l246 246q14 14 33 14t33 -14l49 -49q14 -14 14 -33t-14 -33l-248 -249l248 -244q14 -14 14 -32.5t-14 -32.5l-49 -50q-14 -14 -33 -14t-33 14l-246 247l-247 -247 q-14 -14 -32.5 -14t-32.5 14l-49 49q-14 14 -14 33z" />
|
47 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 437q0 65 24.5 122t67 99.5t99.5 67t122 24.5q64 0 121 -24.5t99.5 -67t67 -99.5t24.5 -122q0 -48 -13.5 -91t-38.5 -81l168 -167q9 -10 9 -23t-9 -22l-44 -44q-9 -9 -22 -9t-22 9l-168 168q-38 -25 -81 -38.5t-91 -13.5q-65 0 -122 24.5t-99.5 67t-67 99t-24.5 121.5z M125 437q0 -39 14.5 -73t40 -59.5t60 -40t73.5 -14.5t73 14.5t59.5 40t40 59.5t14.5 73t-14.5 73t-40 59.5t-59.5 40.5t-73 15t-73.5 -15t-60 -40.5t-40 -59.5t-14.5 -73zM188 422v31q0 7 4.5 11.5t10.5 4.5h78v78q0 6 4.5 10.5t11.5 4.5h31q7 0 11.5 -4.5t4.5 -10.5v-78h78 q16 0 16 -16v-31q0 -16 -16 -16h-78v-78q0 -16 -16 -16h-31q-16 0 -16 16v78h-78q-6 0 -10.5 4.5t-4.5 11.5z" />
|
48 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 437q0 65 24.5 122t67 99.5t99.5 67t122 24.5q64 0 121 -24.5t99.5 -67t67 -99.5t24.5 -122q0 -48 -13.5 -91t-38.5 -81l168 -167q9 -10 9 -23t-9 -22l-44 -44q-9 -9 -22 -9t-22 9l-168 168q-38 -25 -81 -38.5t-91 -13.5q-65 0 -122 24.5t-99.5 67t-67 99t-24.5 121.5z M125 437q0 -39 14.5 -73t40 -59.5t60 -40t73.5 -14.5t73 14.5t59.5 40t40 59.5t14.5 73t-14.5 73t-40 59.5t-59.5 40.5t-73 15t-73.5 -15t-60 -40.5t-40 -59.5t-14.5 -73zM188 422v31q0 7 4.5 11.5t10.5 4.5h219q16 0 16 -16v-31q0 -16 -16 -16h-219q-6 0 -10.5 4.5 t-4.5 11.5z" />
|
49 |
+
<glyph unicode="" horiz-adv-x="713" d="M0 356q0 89 41 166.5t115 128.5q6 3 14 3q7 -1 12 -8l42 -62q10 -16 -5 -26q-51 -35 -78.5 -88t-27.5 -114q0 -50 19 -94.5t52 -77.5t77.5 -52t94.5 -19q51 0 95.5 19t77.5 52t52 77.5t19 94.5q0 61 -28 114t-79 88q-6 3 -8 12q-1 6 3 14l43 62q5 6 12 7.5t14 -2.5 q73 -51 114.5 -128.5t41.5 -166.5q0 -74 -28 -138.5t-76.5 -113t-113.5 -76.5t-139 -28t-138.5 28t-113 76.5t-76.5 113t-28 138.5zM300 394v337q0 19 19 19h75q8 0 13.5 -5.5t5.5 -13.5v-337q0 -8 -5.5 -13.5t-13.5 -5.5h-75q-19 0 -19 19z" />
|
50 |
+
<glyph unicode="" d="M0 19v127q0 8 5.5 13.5t13.5 5.5h94q8 0 13 -5.5t5 -13.5v-127q0 -8 -5 -13.5t-13 -5.5h-94q-19 0 -19 19zM192 19v212q0 8 5.5 13.5t13.5 5.5h94q8 0 13 -5.5t5 -13.5v-212q0 -8 -5 -13.5t-13 -5.5h-94q-8 0 -13.5 5.5t-5.5 13.5zM384 19v330q0 8 5.5 13.5t13.5 5.5h94 q8 0 13.5 -5.5t5.5 -13.5v-330q0 -8 -5.5 -13.5t-13.5 -5.5h-94q-8 0 -13.5 5.5t-5.5 13.5zM577 19v486q0 8 5 13.5t13 5.5h94q8 0 13.5 -5.5t5.5 -13.5v-486q0 -8 -5.5 -13.5t-13.5 -5.5h-94q-8 0 -13 5.5t-5 13.5zM769 19v712q0 19 19 19h93q19 0 19 -19v-712 q0 -19 -19 -19h-93q-19 0 -19 19z" />
|
51 |
+
<glyph unicode="" horiz-adv-x="748" d="M0 320v111q0 7 7 9q19 5 39.5 8t40.5 5q4 0 8 0.5t9 1.5q5 14 10.5 27.5t12.5 27.5q-12 17 -26.5 36.5t-30.5 37.5q-5 5 0 12q19 23 40 44t44 40q5 5 12 0q11 -11 22.5 -20t23.5 -17q7 -5 14 -10.5t14 -10.5q26 14 55 23q3 28 6 51.5t8 45.5q2 8 9 8h111q9 0 9 -8 q4 -19 6.5 -38t5.5 -39l3 -20q14 -5 27.5 -10t26.5 -13q7 5 13 9.5t12 9.5q13 10 26 19t25 20q6 6 12 -1l11 -11q5 -5 11 -10q15 -14 30 -29.5t29 -32.5q4 -6 0 -12q-13 -15 -26 -32.5t-30 -40.5q15 -29 24 -58q12 -3 24.5 -4.5t25.5 -3.5q11 -2 23.5 -3.5t23.5 -3.5 q7 -2 7 -9v-111q0 -7 -7 -9q-18 -5 -38 -7.5t-40 -4.5q-5 -1 -9.5 -1.5t-9.5 -1.5q-5 -14 -10.5 -27.5t-12.5 -27.5q12 -17 26.5 -36.5t30.5 -37.5q5 -5 0 -12q-38 -47 -84 -84q-5 -5 -12 0q-11 11 -22.5 20t-23.5 17q-7 5 -14 10.5t-14 10.5q-26 -14 -55 -23 q-2 -23 -5.5 -48t-9.5 -49q-2 -8 -9 -8h-111q-7 0 -9 8q-3 19 -5.5 38t-5.5 39l-3 20q-14 5 -27.5 10t-26.5 13q-6 -5 -12.5 -9.5t-12.5 -9.5q-26 -18 -51 -39q-6 -6 -12 1q-5 5 -11 10.5t-11 10.5q-15 14 -30 29.5t-29 32.5q-5 6 0 12q15 18 29 37t27 36q-15 29 -24 58 q-12 3 -24.5 4.5t-24.5 3.5t-24.5 3.5t-23.5 3.5q-7 2 -7 9zM261 375q0 -24 9 -44.5t24.5 -35.5t36 -24t43.5 -9t43.5 9t35.5 24t24 35.5t9 44.5q0 23 -9 43.5t-24 35.5t-35.5 24t-43.5 9t-43.5 -9t-36 -24t-24.5 -35.5t-9 -43.5z" />
|
52 |
+
<glyph unicode="" horiz-adv-x="648" d="M0 582q0 8 0.5 16t0.5 17q11 6 32.5 10t47 7t52.5 5t49 3q-2 16 -1 32t7 33q1 4 6 11.5t18.5 15t40 13t71.5 5.5t71.5 -5.5t40 -13t18 -15.5t6.5 -12q6 -17 7 -32.5t-1 -31.5q22 -1 49 -3t53 -5t47 -7t32 -10q1 -9 1 -17v-16v-16q0 -8 -1 -17q-10 -6 -30.5 -10t-45.5 -7 t-51 -5t-48 -3t-37 -1.5t-16 -0.5l-95 -1h-13h-28q-19 0 -54 1q-2 0 -16.5 0.5t-36.5 1.5t-48 3t-51 5t-45.5 7t-30.5 10q0 9 -0.5 17t-0.5 16zM67 484q41 -5 84.5 -7.5t75.5 -3.5q9 -1 23 -1h74h73q14 0 23 1q33 1 76.5 3.5t84.5 7.5q-5 -76 -8 -154.5t-7 -154.5 q-1 -19 -1.5 -42.5t-2 -45.5t-6 -40.5t-14.5 -28.5q-12 -11 -42 -14.5t-58 -3.5h-236q-29 0 -58.5 3.5t-41.5 14.5q-10 10 -14.5 28.5t-6 40.5t-2 45.5t-1.5 42.5q-4 76 -7.5 154.5t-7.5 154.5zM147 383q1 -15 1 -28t1 -22q0 -11 1 -19q2 -34 3.5 -68t3.5 -67q1 -8 1 -17 v-20v-12q0 -6 0.5 -14t1.5 -19q1 -8 9.5 -14t13.5 -6q5 -1 10 -1t8 -1h11q5 0 5 19v286q0 8 -5.5 13.5t-13.5 5.5l-33 2q-8 0 -13 -5t-5 -13zM255.5 657q0.5 -6 1.5 -15q9 1 20 1h47l67 -1q1 9 1.5 15t-0.5 11q-11 3 -29.5 4.5t-38.5 1.5t-38.5 -1.5t-29.5 -4.5 q-1 -5 -0.5 -11zM292 94q0 -8 5 -13.5t13 -5.5h28q8 0 13.5 5.5t5.5 13.5v285q0 8 -11 13t-14 5h-15q-3 0 -14 -5t-11 -13v-285zM432 94q0 -19 4 -19h11q3 1 13 1.5t15 0.5q5 1 8.5 6.5t4.5 13.5q0 11 0.5 19t0.5 14q0 7 1 12v20q0 9 1 17q2 33 3 66.5t3 67.5q0 9 1 20 q1 9 1.5 22t1.5 28q0 8 -5 13t-13 5l-33 -2q-8 0 -13 -5.5t-5 -13.5v-286z" />
|
53 |
+
<glyph unicode="" d="M1 384.5q3 11.5 13 19.5l412 338q11 8 24 8t24 -8l126 -104v58q0 19 19 19h112q19 0 19 -19v-180l136 -112q10 -8 13 -19.5t-1 -22.5q-10 -24 -36 -24h-75v-300q0 -16 -10.5 -27t-26.5 -11h-206v225h-188v-225h-206q-16 0 -27 11t-11 27v300h-75q-25 0 -35 24 q-4 11 -1 22.5z" />
|
54 |
+
<glyph unicode="" horiz-adv-x="600" d="M0 56v638q0 23 16.5 39.5t39.5 16.5h219v-269q0 -23 16.5 -39.5t39.5 -16.5h269v-369q0 -23 -16.5 -39.5t-39.5 -16.5h-488q-23 0 -39.5 16.5t-16.5 39.5zM331 481v266h3l263 -263v-3h-266z" />
|
55 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 375q0 78 29.5 146t80.5 119t119 80.5t146 29.5t146 -29.5t119 -80.5t80.5 -119t29.5 -146t-29.5 -146t-80.5 -119t-119 -80.5t-146 -29.5t-146 29.5t-119 80.5t-80.5 119t-29.5 146zM113 375q0 -54 20.5 -102t56 -83.5t83.5 -56t102 -20.5t102 20.5t84 56t56.5 83.5 t20.5 102t-20.5 102t-56.5 84t-84 56.5t-102 20.5t-102 -20.5t-83.5 -56.5t-56 -84t-20.5 -102zM319 375v150q0 23 16.5 39.5t39.5 16.5t39.5 -16.5t16.5 -39.5v-127l90 -89q17 -17 17 -40t-17 -40q-8 -8 -18.5 -12t-21.5 -4t-21.5 4t-18.5 12l-106 106q-1 1 -1 2t-1 2 q-7 7 -10 14q-4 9 -4 22z" />
|
56 |
+
<glyph unicode="" d="M1 17l290 716q3 7 10.5 12t15.5 5h95l-4 -83h84l-4 83h95q8 0 15.5 -5t10.5 -12l290 -716q3 -7 -0.5 -12t-11.5 -5h-361l-13 250h-126l-13 -250h-361q-8 0 -11.5 5t-0.5 12zM394 389h112l-10 202h-92z" />
|
57 |
+
<glyph unicode="" d="M0 19v300q0 8 5.5 13.5t13.5 5.5h112q8 0 13.5 -5.5t5.5 -13.5v-169h600v169q0 8 5.5 13.5t13.5 5.5h112q8 0 13.5 -5.5t5.5 -13.5v-300q0 -19 -19 -19h-862q-19 0 -19 19zM169 461q3 8 19 8h150v244q0 15 10.5 26t26.5 11h150q16 0 27 -11t11 -26v-244h150q15 0 18 -8 t-8 -19l-246 -247q-11 -11 -27 -11t-27 11l-246 247q-11 11 -8 19z" />
|
58 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 375q0 78 29.5 146t80.5 119t119 80.5t146 29.5t146 -29.5t119 -80.5t80.5 -119t29.5 -146t-29.5 -146t-80.5 -119t-119 -80.5t-146 -29.5t-146 29.5t-119 80.5t-80.5 119t-29.5 146zM113 375q0 -54 20.5 -102t56 -83.5t83.5 -56t102 -20.5t102 20.5t84 56t56.5 83.5 t20.5 102t-20.5 102t-56.5 83.5t-84 56t-102 20.5t-102 -20.5t-83.5 -56t-56 -83.5t-20.5 -102zM206 349q4 10 24 10h79v185q0 8 5.5 13.5t13.5 5.5h94q8 0 13.5 -5.5t5.5 -13.5v-185h79q20 0 24 -10t-10 -24l-136 -136q-9 -9 -23 -9q-13 0 -23 9l-136 136q-14 14 -10 24z " />
|
59 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 375q0 78 29.5 146t80.5 119t119 80.5t146 29.5t146 -29.5t119 -80.5t80.5 -119t29.5 -146t-29.5 -146t-80.5 -119t-119 -80.5t-146 -29.5t-146 29.5t-119 80.5t-80.5 119t-29.5 146zM113 375q0 -54 20.5 -102t56 -83.5t83.5 -56t102 -20.5t102 20.5t84 56t56.5 83.5 t20.5 102t-20.5 102t-56.5 83.5t-84 56t-102 20.5t-102 -20.5t-83.5 -56t-56 -83.5t-20.5 -102zM206 401q-4 10 10 24l136 136q10 9 23 9q12 0 23 -9l136 -136q14 -14 10 -24t-24 -10h-79v-185q0 -8 -5.5 -13.5t-13.5 -5.5h-94q-8 0 -13.5 5.5t-5.5 13.5v185h-79 q-20 0 -24 10z" />
|
60 |
+
<glyph unicode="" d="M0 38v282q0 16 4.5 37t10.5 35l139 324q6 14 21.5 24t30.5 10h488q15 0 30.5 -10t21.5 -24l139 -324q6 -14 10.5 -35t4.5 -37v-282q0 -16 -11 -27t-26 -11h-825q-16 0 -27 11t-11 27zM116 339h189l56 -113h187l57 113h179q-1 2 -1 4.5t-1 4.5l-125 290h-414l-125 -291 q-1 -1 -1 -3.5t-1 -4.5z" />
|
61 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 375q0 78 29.5 146t80.5 119t119 80.5t146 29.5t146 -29.5t119 -80.5t80.5 -119t29.5 -146t-29.5 -146t-80.5 -119t-119 -80.5t-146 -29.5t-146 29.5t-119 80.5t-80.5 119t-29.5 146zM113 375q0 -54 20.5 -102t56 -83.5t83.5 -56t102 -20.5t102 20.5t84 56t56.5 83.5 t20.5 102t-20.5 102t-56.5 84t-84 56.5t-102 20.5t-102 -20.5t-83.5 -56.5t-56 -84t-20.5 -102zM258 220v310q0 9 8 14q8 4 15 0l269 -156q8 -3 8 -13t-8 -13l-269 -156q-4 -2 -8 -2q-3 0 -7 2q-8 5 -8 14z" />
|
62 |
+
<glyph unicode="" horiz-adv-x="747" d="M0 375q0 78 29.5 146t80.5 119t119 80.5t146 29.5q66 0 127.5 -23t112.5 -65l76 76q16 16 27 11.5t11 -27.5v-217q0 -15 -11 -26q-10 -10 -25 -10l-217 -1q-23 0 -27.5 11.5t11.5 27.5l75 75q-35 26 -75.5 41t-84.5 15q-54 0 -102 -20.5t-83.5 -56.5t-56 -84t-20.5 -102 t20.5 -102t56 -83.5t83.5 -56t102 -20.5q49 0 93.5 17t79.5 47.5t58 72t29 90.5q1 6 7 12q7 5 14 4l75 -10q8 -1 12.5 -7t3.5 -14q-9 -69 -42 -128.5t-83 -103t-113.5 -68.5t-133.5 -25q-78 0 -146 29.5t-119 80.5t-80.5 119t-29.5 146z" />
|
63 |
+
<glyph unicode="" d="M3 160l70 206q4 13 18 20q15 6 28 2l206 -70q21 -7 21.5 -19t-19.5 -22l-95 -47q24 -36 57.5 -63t75.5 -41q51 -18 103 -13.5t97.5 26.5t80.5 61t53 90q2 8 8.5 11t14.5 1l71 -24q17 -7 12 -24q-25 -74 -75 -129t-114.5 -86.5t-139 -37.5t-147.5 19q-63 21 -113.5 62 t-84.5 98l-97 -47q-20 -11 -29.5 -2.5t-1.5 29.5zM95 495q25 73 75 128.5t114.5 87.5t138.5 38t148 -19q63 -22 113 -63t85 -98l97 48q20 10 29.5 1.5t1.5 -29.5l-70 -205q-4 -14 -18 -21q-15 -6 -28 -2l-206 70q-21 7 -21.5 19t19.5 22l95 47q-24 36 -58 63t-76 41 q-51 18 -103 13.5t-97 -26.5t-80 -61t-53 -90q-2 -8 -9 -11t-14 -1l-71 25q-8 2 -11 9t-1 14z" />
|
64 |
+
<glyph unicode="" d="M0 56v638q0 23 16.5 39.5t39.5 16.5h788q23 0 39.5 -16.5t16.5 -39.5v-638q0 -23 -16.5 -39.5t-39.5 -16.5h-788q-23 0 -39.5 16.5t-16.5 39.5zM75 75h750v525h-750v-525zM150 169v37q0 19 19 19h75q8 0 13.5 -5.5t5.5 -13.5v-37q0 -8 -5.5 -13.5t-13.5 -5.5h-75 q-19 0 -19 19zM150 319v37q0 19 19 19h75q8 0 13.5 -5.5t5.5 -13.5v-37q0 -8 -5.5 -13.5t-13.5 -5.5h-75q-19 0 -19 19zM150 469v37q0 19 19 19h75q8 0 13.5 -5.5t5.5 -13.5v-37q0 -8 -5.5 -13.5t-13.5 -5.5h-75q-19 0 -19 19zM338 169v37q0 8 5 13.5t13 5.5h375 q19 0 19 -19v-37q0 -19 -19 -19h-375q-8 0 -13 5.5t-5 13.5zM338 319v37q0 8 5 13.5t13 5.5h375q19 0 19 -19v-37q0 -19 -19 -19h-375q-8 0 -13 5.5t-5 13.5zM338 469v37q0 8 5 13.5t13 5.5h375q19 0 19 -19v-37q0 -19 -19 -19h-375q-8 0 -13 5.5t-5 13.5z" />
|
65 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 56v300q0 23 16.5 40t39.5 17h57v85q0 52 20.5 98t56 80t83.5 54t102 20t102 -20t84 -54t56.5 -80t20.5 -98v-85h56q23 0 39.5 -17t16.5 -40v-300q0 -23 -16.5 -39.5t-39.5 -16.5h-638q-23 0 -39.5 16.5t-16.5 39.5zM225 413h300v85q0 29 -12 54.5t-32 44.5t-47.5 30 t-58.5 11t-58.5 -11t-47.5 -30t-32 -44.5t-12 -54.5v-85z" />
|
66 |
+
<glyph unicode="" d="M0 675q0 31 22 53t53 22t53 -22t22 -53q0 -20 -10 -36.5t-27 -27.5v-592q0 -8 -5.5 -13.5t-13.5 -5.5h-38q-8 0 -13 5.5t-5 13.5v592q-17 11 -27.5 27.5t-10.5 36.5zM150 203v364q0 16 9.5 32t23.5 24q51 27 92 42t70 22q34 8 61 9q33 0 60.5 -5.5t52.5 -14.5t48.5 -21 t48.5 -25q31 -14 71 -16q34 -2 80 7.5t101 42.5q14 8 23 3t9 -21v-365q0 -15 -9 -31.5t-23 -24.5q-55 -33 -101 -42.5t-80 -7.5q-40 2 -71 16q-25 13 -48.5 25t-48.5 21t-52.5 14.5t-60.5 5.5q-27 -1 -61 -9q-29 -7 -70 -22t-92 -43q-14 -8 -23.5 -2t-9.5 22z" />
|
67 |
+
<glyph unicode="" d="M0 356q0 54 18.5 104.5t50 94t75 79.5t93.5 62t104.5 40t108.5 14t108.5 -14t104.5 -40t93.5 -62t75 -79.5t50 -94t18.5 -104.5q0 -87 -36 -165l-13 -28l-81 -12q-13 -49 -52.5 -81t-92.5 -32v-19q0 -8 -5.5 -13.5t-13.5 -5.5h-38q-8 0 -13 5.5t-5 13.5v337q0 8 5 13.5 t13 5.5h38q8 0 13.5 -5.5t5.5 -13.5v-18q42 0 75.5 -21t53.5 -54l19 2q15 43 15 91q0 58 -31 109.5t-80 89.5t-109 60.5t-118 22.5t-118 -22.5t-108.5 -60.5t-79.5 -89.5t-31 -109.5q0 -46 14 -91l19 -2q20 33 53.5 54t75.5 21v18q0 8 5.5 13.5t13.5 5.5h38q8 0 13 -5.5 t5 -13.5v-337q0 -8 -5 -13.5t-13 -5.5h-38q-8 0 -13.5 5.5t-5.5 13.5v19q-53 0 -92.5 32t-52.5 81l-81 12l-13 28q-36 78 -36 165z" />
|
68 |
+
<glyph unicode="" horiz-adv-x="425" d="M0 286v178q0 8 5.5 13.5t13.5 5.5h196l153 153q23 23 39.5 16t16.5 -39v-476q0 -32 -16.5 -39t-39.5 16l-153 153h-196q-8 0 -13.5 5.5t-5.5 13.5z" />
|
69 |
+
<glyph unicode="" horiz-adv-x="600" d="M0 286v178q0 8 5.5 13.5t13.5 5.5h196l153 153q23 23 39.5 16t16.5 -39v-476q0 -32 -16.5 -39t-39.5 16l-153 153h-196q-8 0 -13.5 5.5t-5.5 13.5zM482 205q-4 15 4 29q39 67 39 141q0 73 -39 141q-8 14 -4 29t18 23t28.5 4t22.5 -18q49 -87 49 -179t-49 -179 q-11 -19 -33 -19q-8 0 -18 5q-14 8 -18 23z" />
|
70 |
+
<glyph unicode="" d="M0 286v178q0 8 5.5 13.5t13.5 5.5h196l153 153q23 23 39.5 16t16.5 -39v-476q0 -32 -16.5 -39t-39.5 16l-153 153h-196q-8 0 -13.5 5.5t-5.5 13.5zM482 205q-4 15 4 29q39 67 39 141q0 73 -39 141q-8 14 -4 29t18 23t28.5 4t22.5 -18q49 -87 49 -179t-49 -179 q-11 -19 -33 -19q-8 0 -18 5q-14 8 -18 23zM603 117q-3 15 5 29q67 105 67 229t-67 229q-8 14 -5 29t17 23t29 5t23 -17q38 -61 58 -129t20 -140t-20 -140t-58 -129q-5 -9 -14 -13.5t-18 -4.5q-11 0 -20 6q-14 8 -17 23zM723.5 30q-2.5 15 5.5 28q48 72 72 152t24 165 t-24 165t-72 152q-8 13 -5.5 28t16.5 24q13 8 28 5t24 -16q54 -81 81 -171.5t27 -186.5t-27 -186.5t-81 -171.5q-12 -17 -32 -17q-11 0 -20 6q-14 9 -16.5 24z" />
|
71 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 0v341h341v-341h-341zM0 409v341h341v-341h-341zM68 68h205v205h-205v-205zM68 477h205v205h-205v-205zM136 136v69h69v-69h-69zM136 545v68h69v-68h-69zM409 0v341h204v-68h69v68h68v-205h-205v68h-68v-204h-68zM409 409v341h341v-341h-341zM477 477h205v205h-205 v-205zM545 0v68h68v-68h-68zM545 545v68h68v-68h-68zM682 0v68h68v-68h-68z" />
|
72 |
+
<glyph unicode="" d="M0 0v750h75v-750h-75zM111 0v750h18v-750h-18zM174 0v750h57v-750h-57zM266 0v750h38v-750h-38zM349 0v750h37v-750h-37zM441 0v750h18v-750h-18zM495 0v750h75v-750h-75zM596 0v750h38v-750h-38zM688 0v750h19v-750h-19zM771 0v750h18v-750h-18zM825 0v750h75v-750h-75z " />
|
73 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 474v218q0 24 17 41t41 17h218q24 0 53 -12t46 -29l358 -358q17 -17 17 -41t-17 -41l-252 -252q-17 -17 -41 -17t-41 17l-358 358q-17 17 -29 46t-12 53zM94 600q0 -23 16.5 -39.5t39.5 -16.5t39.5 16.5t16.5 39.5t-16.5 39.5t-39.5 16.5t-39.5 -16.5t-16.5 -39.5z" />
|
74 |
+
<glyph unicode="" horiz-adv-x="898" d="M0 475v217q0 24 17 41t41 17h217q24 0 53.5 -11.5t45.5 -29.5l321 -358q16 -17 16.5 -41t-16.5 -41l-252 -251q-17 -17 -41 -17.5t-41 17.5l-320 358q-16 18 -28.5 46.5t-12.5 52.5zM94 600q0 -23 16.5 -39.5t39.5 -16.5t39.5 16.5t16.5 39.5t-16.5 39.5t-39.5 16.5 t-39.5 -16.5t-16.5 -39.5zM379 749h83q24 0 53.5 -12t45.5 -29l321 -358q16 -18 16.5 -41.5t-16.5 -40.5l-252 -251q-17 -17 -41 -17.5t-41 17.5l-6 7l246 245q17 17 16.5 41t-16.5 41l-320 358q-15 16 -40.5 27t-48.5 13z" />
|
75 |
+
<glyph unicode="" horiz-adv-x="835" d="M5 152q1 8 2 15.5t2 16.5q0 5 -2 10t-1 10q1 8 7.5 15.5t12.5 17.5q11 18 22 44t16 45q2 8 -0.5 15t-0.5 13q2 8 8 13.5t10 11.5q5 9 10.5 20.5t10.5 24t8 24.5t4 20t-1 16t0 14q3 8 10 13t12 12q5 6 10.5 17t11 24t9.5 25.5t5 22.5q1 6 -2 12t-1 13t9 14.5t13 15.5 q8 12 14 28.5t14.5 30t22.5 21t38 0.5l-1 -2q15 5 26 5h381q38 0 58 -28q20 -26 9 -63l-138 -442q-9 -31 -38 -52.5t-62 -21.5h-436q-5 0 -10 -1t-9 -6q-6 -10 0 -27q8 -21 29.5 -37t42.5 -16h462q14 0 28 10.5t18 23.5l151 482q2 8 2.5 14.5t-0.5 13.5q20 -7 30 -21 q20 -26 9 -63l-138 -442q-9 -32 -38 -53t-62 -21h-462q-20 0 -39 7t-36 19t-30 28.5t-20 35.5q-12 33 -1 62zM244 469q-5 -19 13 -19h300q8 0 15 5.5t9 13.5l12 37q2 8 -1.5 13.5t-11.5 5.5h-300q-8 0 -15.5 -5.5t-9.5 -13.5zM278 581q-2 -8 1.5 -13t11.5 -5h300q8 0 15 5 t10 13l11 38q2 8 -1.5 13.5t-11.5 5.5h-300q-8 0 -15 -5.5t-10 -13.5z" />
|
76 |
+
<glyph unicode="" horiz-adv-x="600" d="M0 54v641q0 17 9 30.5t25 20.5q5 2 10 3t11 1h490q5 0 10.5 -1t10.5 -3q16 -7 25 -20.5t9 -30.5v-641q0 -17 -9 -30.5t-25 -19.5q-15 -7 -31.5 -3.5t-27.5 15.5l-207 207l-207 -207q-11 -12 -27.5 -15.5t-31.5 3.5q-16 7 -25 20t-9 30z" />
|
77 |
+
<glyph unicode="" d="M0 19v169q0 23 9 43.5t24.5 35.5t36 24t43.5 9h675q23 0 43.5 -9t35.5 -24t24 -35.5t9 -43.5v-169q0 -19 -19 -19h-862q-19 0 -19 19zM131 94q0 -8 5.5 -13t13.5 -5h600q8 0 13.5 5t5.5 13v19q0 8 -5.5 13.5t-13.5 5.5h-600q-8 0 -13.5 -5.5t-5.5 -13.5v-19zM150 356v357 q0 15 11 26t27 11h318v-187q0 -24 16.5 -40.5t39.5 -16.5h188v-150h-600zM562 563v187l188 -187h-188z" />
|
78 |
+
<glyph unicode="" d="M0 56v525q0 23 16.5 40t39.5 17h179l28 61q9 21 32.5 36t46.5 15h216q23 0 46.5 -15t32.5 -36l28 -61h179q23 0 39.5 -17t16.5 -40v-525q0 -23 -16.5 -39.5t-39.5 -16.5h-788q-23 0 -39.5 16.5t-16.5 39.5zM216 319q0 -49 18.5 -91.5t50 -74.5t74.5 -50.5t91 -18.5 t91 18.5t74.5 50.5t50 74.5t18.5 91.5q0 48 -18.5 91t-50 74.5t-74.5 50t-91 18.5t-91 -18.5t-74.5 -50t-50 -74.5t-18.5 -91zM291 319q0 33 12.5 62t34 50.5t50.5 34t62 12.5t62 -12.5t50.5 -34t34 -50.5t12.5 -62t-12.5 -62t-34 -51t-50.5 -34.5t-62 -12.5t-62 12.5 t-50.5 34.5t-34 51t-12.5 62z" />
|
79 |
+
<glyph unicode="" horiz-adv-x="803" d="M0 0l1 39q5 2 14.5 4t23.5 4q45 9 53 16q8 5 24 33l114 300l135 354h36h26l5 -10l99 -235q16 -38 31 -74t29 -71t25.5 -63.5t20.5 -50.5q6 -14 14 -34t18 -46q11 -32 31 -73q12 -24 17 -28q10 -9 33 -12q12 -1 24 -4.5t26 -8.5q3 -18 3 -27v-5q0 -3 -1 -8q-21 0 -44 1 t-48 3q-26 2 -48.5 3t-42.5 1h-39q-16 0 -26 -1l-97 -5l-28 -1q0 10 0.5 19.5t1.5 18.5l63 13q28 7 33 12q6 4 6 13q0 7 -3 15l-23 56l-44 111l-218 1q-6 -14 -18 -47t-32 -87q-11 -31 -11 -41q0 -13 8 -21q7 -5 19.5 -8.5t30.5 -6.5q7 -2 41 -6v-29q0 -8 -1 -13 q-17 0 -59 2.5t-109 7.5l-24 -4q-21 -4 -40.5 -5.5t-39.5 -1.5h-10zM268 320q66 -1 105.5 -2t51.5 0l14 1q-9 25 -20 54.5t-25 63.5t-25 59.5t-19 42.5z" />
|
80 |
+
<glyph unicode="" horiz-adv-x="693" d="M0 0l1 46q13 3 33 6q19 3 34 6.5t27 8.5q4 7 6.5 13t3.5 12q3 16 4 39.5t1 54.5l-1 243q-1 19 -1.5 68t-2.5 130q-2 43 -6 53q-2 4 -6 5q-10 7 -34 8q-11 0 -56 6l-2 41l128 3l187 6h22q4 1 8 1h6q3 0 10.5 -0.5t19.5 -0.5h37q45 0 94 -13q9 -2 21 -6.5t26 -12.5 q31 -15 51 -37q22 -23 32 -51q5 -14 7.5 -28.5t2.5 -30.5q0 -35 -16 -63q-15 -28 -46 -51q-8 -6 -26.5 -15t-47.5 -23q87 -20 131 -71q45 -51 45 -115q0 -35 -14 -79q-11 -32 -35 -57q-32 -35 -69 -53q-38 -17 -100 -29q-34 -6 -97 -5l-97 2q-31 1 -67.5 -1t-79.5 -5 q-12 -1 -45.5 -2t-88.5 -3zM262 693q0 -6 0.5 -15.5t1.5 -21.5q1 -25 2 -58.5t0 -77.5v-48v-38q12 -2 25.5 -3t28.5 -1q86 0 130 32t44 110q0 55 -42 91q-41 37 -126 37q-26 0 -64 -7zM266 223l2 -132q0 -8 5 -21q36 -16 69 -16q64 0 107 20q40 19 60 55q9 18 14 40t5 49 q0 55 -21 88q-29 46 -69 61q-39 16 -122 16q-18 0 -30 -1.5t-20 -3.5v-70v-85z" />
|
81 |
+
<glyph unicode="" horiz-adv-x="515" d="M0 0l9 41q6 2 15.5 4.5t22.5 5.5q20 5 34.5 9.5t24.5 9.5q14 19 20 50l14 67l28 131l6 31q11 58 20 87t9 31l15 76l8 31l11 66l4 24v19q-22 11 -72 14q-7 0 -11.5 0.5t-8.5 0.5l10 51l159 -7q15 -1 24 -1h13q17 0 43.5 1t64.5 3q20 2 33.5 3t18.5 1q-1 -5 -1.5 -9.5 t-1.5 -9.5q-2 -5 -4 -11l-3 -14q-24 -8 -54 -15q-32 -8 -51 -15q-6 -16 -12 -43q-3 -12 -4.5 -22t-2.5 -18q-11 -49 -19.5 -86t-13.5 -63l-31 -152l-19 -77l-21 -115l-7 -22v-5q0 -3 1 -8q17 -4 31.5 -6.5t28.5 -4.5q2 0 10.5 -1t22.5 -3q-1 -9 -1.5 -16t-1.5 -13 q-1 -3 -2 -8t-3 -11q-4 0 -7 -0.5t-5 -0.5q-9 -1 -14 -1h-7h-5q-4 0 -9 2q-4 0 -22 2t-51 6l-99 1q-30 0 -88 -6q-19 -2 -31 -3t-18 -1z" />
|
82 |
+
<glyph unicode="" d="M0 562q7 18 17 54t22 90q4 16 6.5 26.5t4.5 15.5h28q2 -3 3 -5l2 -4q14 -28 20 -35q8 -2 63 -2q17 0 32.5 0.5t29.5 0.5l10 1l55 1l104 -1h141l27 5q5 4 13 26l2 6q1 3 3 8l21 1h5q3 0 8 -1q1 -19 0.5 -47.5t0.5 -67.5v-49v-28q0 -7 -0.5 -13.5t-1.5 -11.5 q-10 -4 -18 -5.5t-15 -3.5q-13 25 -26 63q-14 40 -18 45q-6 7 -13 10q-5 2 -30 2h-67h-15q-8 0 -17 -2q-3 -21 -3 -35l1 -74v-163l1 -175v-72q0 -35 5 -57q4 -2 10.5 -4t16.5 -4q2 0 10.5 -2t24.5 -6q13 -5 24 -9q2 -10 2 -16v-9v-5q0 -4 -1 -9h-17q-23 0 -43 1t-37 3 t-46.5 3t-72.5 1q-8 0 -28 -2t-53 -5q-14 -1 -22 -1.5t-12 -0.5q0 5 -0.5 8t-0.5 5l-1 12v5q9 15 39 24q46 13 66 24q2 5 3 12.5t2 15.5q2 33 3 86t0 125l-2 209q-1 44 -1 69.5t-2 35.5q0 4 -3 7q-2 3 -6 3q-8 2 -31 2h-62q-44 0 -58 -10q-20 -14 -59 -75q-11 -17 -17 -17 q-11 6 -17.5 11.5t-9.5 9.5zM675.5 112.5q2.5 6.5 15.5 6.5h59v512h-59q-13 0 -15.5 6.5t6.5 16.5l90 90q7 6 16 6q7 0 15 -6l90 -90q9 -10 6.5 -16.5t-16.5 -6.5h-58v-512h58q14 0 16.5 -6.5t-6.5 -15.5l-90 -91q-8 -6 -16 -6t-15 6l-90 91q-9 9 -6.5 15.5z" />
|
83 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 114q0 9 6 15l91 90q9 10 15.5 7t6.5 -16v-59h512v59q0 13 6.5 16t16.5 -7l90 -90q6 -6 6 -15t-6 -15l-90 -91q-10 -9 -16.5 -6.5t-6.5 16.5v58h-512v-58q0 -14 -6.5 -16.5t-15.5 6.5l-91 91q-6 6 -6 15zM0 602q7 14 16.5 42.5t21.5 71.5q3 13 5.5 21t4.5 13h27 q4 -6 5 -7q13 -23 18 -28q1 0 17.5 -0.5t38.5 -0.5h44h36h60l9 1h53h99h203l26 3q6 5 12 22q1 2 2 4.5t3 6.5h19h14v-92v-39v-22q0 -6 -0.5 -10.5t-1.5 -9.5q-16 -5 -31 -7q-12 18 -25 50q-13 29 -17 36q-6 5 -13 7q-3 1 -20.5 1.5t-41.5 0.5h-50h-48h-14q-8 0 -17 -1 q-1 -9 -1.5 -16t-0.5 -12l2 -217l-1 -58q0 -30 6 -45q6 -3 26 -6q2 0 10 -2t22 -5q7 -2 13 -3.5t11 -3.5q1 -8 1.5 -12.5t0.5 -6.5t-0.5 -5t-0.5 -7h-16q-46 0 -77 3q-32 3 -115 3q-7 0 -26 -1.5t-51 -3.5q-13 -1 -21 -1.5t-12 -0.5q0 8 -1 10v10v4q10 13 36 19q44 10 64 20 q2 4 3 9.5t2 12.5q0 9 0.5 34.5t0.5 58.5t-0.5 69.5t-1 68t-1 52.5t-0.5 23q0 4 -3 6q-1 1 -6 3q-7 1 -29 1h-60q-10 0 -30.5 -0.5t-41.5 -1t-38 -2t-20 -3.5q-20 -12 -57 -60q-10 -14 -16 -14q-11 5 -17 9.5t-9 7.5z" />
|
84 |
+
<glyph unicode="" d="M0 38v56q0 15 11 26t27 11h825q15 0 26 -11t11 -26v-56q0 -16 -11 -27t-26 -11h-825q-16 0 -27 11t-11 27zM0 244v56q0 16 11 27t27 11h525q15 0 26 -11t11 -27v-56q0 -16 -11 -27t-26 -11h-525q-16 0 -27 11t-11 27zM0 450v56q0 16 11 27t27 11h750q15 0 26 -11t11 -27 v-56q0 -16 -11 -26.5t-26 -10.5h-750q-16 0 -27 10.5t-11 26.5zM0 656v57q0 15 11 26t27 11h450q15 0 26 -11t11 -26v-57q0 -15 -11 -26t-26 -11h-450q-16 0 -27 11t-11 26z" />
|
85 |
+
<glyph unicode="" d="M0 38v56q0 15 11 26t27 11h825q15 0 26 -11t11 -26v-56q0 -16 -11 -27t-26 -11h-825q-16 0 -27 11t-11 27zM38 450v56q0 16 10.5 27t26.5 11h750q16 0 27 -11t11 -27v-56q0 -16 -11 -26.5t-27 -10.5h-750q-16 0 -26.5 10.5t-10.5 26.5zM150 244v56q0 16 11 27t27 11h525 q15 0 26 -11t11 -27v-56q0 -16 -11 -27t-26 -11h-525q-16 0 -27 11t-11 27zM188 656v57q0 15 10.5 26t26.5 11h450q16 0 27 -11t11 -26v-57q0 -15 -11 -26t-27 -11h-450q-16 0 -26.5 11t-10.5 26z" />
|
86 |
+
<glyph unicode="" d="M0 38v56q0 15 11 26t27 11h825q15 0 26 -11t11 -26v-56q0 -16 -11 -27t-26 -11h-825q-16 0 -27 11t-11 27zM75 450v56q0 16 11 27t27 11h750q15 0 26 -11t11 -27v-56q0 -16 -11 -26.5t-26 -10.5h-750q-16 0 -27 10.5t-11 26.5zM300 244v56q0 16 11 27t27 11h525 q15 0 26 -11t11 -27v-56q0 -16 -11 -27t-26 -11h-525q-16 0 -27 11t-11 27zM375 656v57q0 15 11 26t27 11h450q15 0 26 -11t11 -26v-57q0 -15 -11 -26t-26 -11h-450q-16 0 -27 11t-11 26z" />
|
87 |
+
<glyph unicode="" d="M0 38v56q0 15 11 26t27 11h825q15 0 26 -11t11 -26v-56q0 -16 -11 -27t-26 -11h-825q-16 0 -27 11t-11 27zM0 244v56q0 16 11 27t27 11h825q15 0 26 -11t11 -27v-56q0 -16 -11 -27t-26 -11h-825q-16 0 -27 11t-11 27zM0 450v56q0 16 11 27t27 11h825q15 0 26 -11t11 -27 v-56q0 -16 -11 -26.5t-26 -10.5h-825q-16 0 -27 10.5t-11 26.5zM0 656v57q0 15 11 26t27 11h825q15 0 26 -11t11 -26v-57q0 -15 -11 -26t-26 -11h-825q-16 0 -27 11t-11 26z" />
|
88 |
+
<glyph unicode="" d="M0 38v56q0 15 11 26t27 11h75q15 0 26 -11t11 -26v-56q0 -16 -11 -27t-26 -11h-75q-16 0 -27 11t-11 27zM0 244v56q0 16 11 27t27 11h75q15 0 26 -11t11 -27v-56q0 -16 -11 -27t-26 -11h-75q-16 0 -27 11t-11 27zM0 450v56q0 16 11 27t27 11h75q15 0 26 -11t11 -27v-56 q0 -16 -11 -26.5t-26 -10.5h-75q-16 0 -27 10.5t-11 26.5zM0 656v57q0 15 11 26t27 11h75q15 0 26 -11t11 -26v-57q0 -15 -11 -26t-26 -11h-75q-16 0 -27 11t-11 26zM225 38v56q0 15 11 26t27 11h600q15 0 26 -11t11 -26v-56q0 -16 -11 -27t-26 -11h-600q-16 0 -27 11 t-11 27zM225 244v56q0 16 11 27t27 11h600q15 0 26 -11t11 -27v-56q0 -16 -11 -27t-26 -11h-600q-16 0 -27 11t-11 27zM225 450v56q0 16 11 27t27 11h600q15 0 26 -11t11 -27v-56q0 -16 -11 -26.5t-26 -10.5h-600q-16 0 -27 10.5t-11 26.5zM225 656v57q0 15 11 26t27 11h600 q15 0 26 -11t11 -26v-57q0 -15 -11 -26t-26 -11h-600q-16 0 -27 11t-11 26z" />
|
89 |
+
<glyph unicode="" d="M0 369v37q0 19 19 19h104v75q0 15 8 18t19 -8l105 -105q8 -8 8 -18q0 -9 -8 -17l-105 -105q-11 -11 -19 -8t-8 19v74h-104q-19 0 -19 19zM300 19v712q0 19 19 19h37q19 0 19 -19v-712q0 -19 -19 -19h-37q-19 0 -19 19zM450 38v56q0 15 11 26t27 11h375q15 0 26 -11 t11 -26v-56q0 -16 -11 -27t-26 -11h-375q-16 0 -27 11t-11 27zM450 244v56q0 16 11 27t27 11h300q15 0 26 -11t11 -27v-56q0 -16 -11 -27t-26 -11h-300q-16 0 -27 11t-11 27zM450 450v56q0 16 11 27t27 11h337q16 0 27 -11t11 -27v-56q0 -16 -11 -26.5t-27 -10.5h-337 q-16 0 -27 10.5t-11 26.5zM450 656v57q0 15 11 26t27 11h262q16 0 27 -11t11 -26v-57q0 -15 -11 -26t-27 -11h-262q-16 0 -27 11t-11 26z" />
|
90 |
+
<glyph unicode="" d="M0 38v56q0 15 11 26t26 11h375q16 0 27 -11t11 -26v-56q0 -16 -11 -27t-27 -11h-375q-15 0 -26 11t-11 27zM0 244v56q0 16 11 27t26 11h300q16 0 27 -11t11 -27v-56q0 -16 -11 -27t-27 -11h-300q-15 0 -26 11t-11 27zM0 450v56q0 16 11 27t26 11h338q15 0 26 -11t11 -27 v-56q0 -16 -11 -26.5t-26 -10.5h-338q-15 0 -26 10.5t-11 26.5zM0 656v57q0 15 11 26t26 11h263q15 0 26 -11t11 -26v-57q0 -15 -11 -26t-26 -11h-263q-15 0 -26 11t-11 26zM525 19v712q0 19 19 19h37q8 0 13.5 -5.5t5.5 -13.5v-712q0 -8 -5.5 -13.5t-13.5 -5.5h-37 q-19 0 -19 19zM637 363q0 8 7 17l106 105q11 11 18.5 8t7.5 -19v-74h105q8 0 13.5 -5.5t5.5 -13.5v-37q0 -8 -5.5 -13.5t-13.5 -5.5h-105v-75q0 -15 -7.5 -18.5t-18.5 7.5l-106 106q-7 9 -7 18z" />
|
91 |
+
<glyph unicode="" d="M-2 113v525q0 23 9 43.5t24.5 35.5t36 24t43.5 9h375q23 0 43.5 -9t36 -24t24.5 -35.5t9 -43.5v-169l251 272q9 9 20 9q5 0 11 -2q18 -8 18 -28v-690q0 -20 -18 -28q-17 -7 -31 7l-251 272v-168q0 -23 -9 -43.5t-24.5 -36t-36 -24.5t-43.5 -9h-375q-23 0 -43.5 9 t-36 24.5t-24.5 36t-9 43.5z" />
|
92 |
+
<glyph unicode="" d="M0 56v638q0 23 16.5 39.5t39.5 16.5h788q23 0 39.5 -16.5t16.5 -39.5v-638q0 -23 -16.5 -39.5t-39.5 -16.5h-788q-23 0 -39.5 16.5t-16.5 39.5zM75 75h750v600h-750v-600zM150 150v51l135 176l92 -76l173 262l200 -207v-206h-600zM150 524q0 32 22 54t54 22q31 0 53 -22 t22 -54q0 -31 -22 -53t-53 -22q-32 0 -54 22t-22 53z" />
|
93 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 0l67 204l423 423l137 -137l-423 -423zM140 199q0 -6 5 -11q4 -4 11 -4q6 0 10 4l337 337q10 10 0 21q-5 5 -11 5t-10 -5l-337 -336q-5 -5 -5 -11zM538 675l58 58q17 17 41 17t41 -17l28 -27l27 -28q17 -17 17 -41t-17 -41l-58 -58z" />
|
94 |
+
<glyph unicode="" horiz-adv-x="530" d="M0 485q0 55 21 103t57 84t84 57t103 21t103 -21t84 -57t57 -84t21 -103q0 -40 -12 -75t-30 -67l-179 -311q-18 -32 -44 -32t-44 32l-179 311q-18 32 -30 67.5t-12 74.5zM134 485q0 -27 10 -51t28 -42t42 -28t51 -10t51 10t41.5 28t28 42t10.5 51t-10.5 51t-28 41.5 t-41.5 28t-51 10.5t-51 -10.5t-42 -28t-28 -41.5t-10 -51z" />
|
95 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 375q0 78 29.5 146t80.5 119t119 80.5t146 29.5t146 -29.5t119 -80.5t80.5 -119t29.5 -146t-29.5 -146t-80.5 -119t-119 -80.5t-146 -29.5t-146 29.5t-119 80.5t-80.5 119t-29.5 146zM113 375q0 -54 20.5 -102t56 -83.5t83.5 -56t102 -20.5v525q-54 0 -102 -20.5 t-83.5 -56.5t-56 -84t-20.5 -102z" />
|
96 |
+
<glyph unicode="" horiz-adv-x="531" d="M0 266q0 39 11 75t31 67q10 16 33 47t50.5 72.5t53.5 90.5t42 102q5 17 17.5 24.5t26.5 5.5q15 2 27.5 -5.5t17.5 -24.5q16 -53 42 -102t53.5 -90.5t50.5 -72.5t33 -47q20 -31 31 -67t11 -75q0 -55 -21 -103.5t-57 -84.5t-84.5 -57t-103.5 -21t-103 21t-84 57t-57 84.5 t-21 103.5zM116 207q0 -28 19.5 -47t47.5 -19q27 0 46.5 19t19.5 47q0 18 -10 36q-3 4 -9 11.5t-12.5 18t-13 23t-10.5 25.5q-4 9 -11 7q-9 2 -11 -7q-4 -13 -11 -25.5t-13.5 -23t-12.5 -18t-8 -11.5q-11 -17 -11 -36z" />
|
97 |
+
<glyph unicode="" d="M0 150v450q0 31 12 58.5t32 47.5t47.5 32t58.5 12h525q2 0 5 -0.5t5 -0.5l-93 -93h-442q-23 0 -39.5 -16.5t-16.5 -39.5v-450q0 -23 16.5 -39.5t39.5 -16.5h525q23 0 39.5 16.5t16.5 39.5v217l94 94v-311q0 -31 -12 -58t-32.5 -47.5t-47.5 -32.5t-58 -12h-525 q-31 0 -58.5 12t-47.5 32.5t-32 47.5t-12 58zM308 158l53 161l318 318l108 -108l-318 -318zM423 307q3 -4 8 -4t8 4l250 249q9 9 0 17t-17 0l-249 -249q-9 -9 0 -17zM733 691l45 46q14 14 33 14t32 -14l22 -22l22 -22q13 -14 13.5 -32.5t-13.5 -32.5l-46 -45z" />
|
98 |
+
<glyph unicode="" d="M0 150v450q0 31 12 58.5t32 47.5t47.5 32t58.5 12h408q-3 -15 -3 -31v-25q-80 -10 -151 -38h-254q-23 0 -39.5 -16.5t-16.5 -39.5v-450q0 -23 16.5 -39.5t39.5 -16.5h525q23 0 39.5 16.5t16.5 39.5v54q8 5 15.5 10.5t15.5 13.5l63 62v-140q0 -31 -12 -58t-32.5 -47.5 t-47.5 -32.5t-58 -12h-525q-31 0 -58.5 12t-47.5 32.5t-32 47.5t-12 58zM188 190v18q0 81 27.5 152.5t84.5 125t143.5 84.5t204.5 32v113q0 28 14 34t34 -14l191 -191q13 -12 13 -32q0 -19 -13 -31l-191 -191q-20 -20 -34 -14t-14 34v127q-101 0 -178 -21t-130 -57t-83 -85 t-38 -105q-2 -13 -15 -13q-12 0 -14 13q-2 11 -2 21z" />
|
99 |
+
<glyph unicode="" d="M0 150v450q0 31 12 58.5t32 47.5t47.5 32t58.5 12h525q13 0 25 -3l-91 -91h-459q-23 0 -39.5 -16.5t-16.5 -39.5v-450q0 -23 16.5 -39.5t39.5 -16.5h525q23 0 39.5 16.5t16.5 39.5v159l94 94v-253q0 -31 -12 -58t-32.5 -47.5t-47.5 -32.5t-58 -12h-525q-31 0 -58.5 12 t-47.5 32.5t-32 47.5t-12 58zM188 472q0 16 11 27l48 48q11 11 27 11t27 -11l166 -166l319 320q11 11 27.5 11t27.5 -11l48 -48q11 -11 11 -27t-11 -27l-347 -347l-48 -48q-11 -11 -27 -11t-27 11l-49 48l-192 193q-11 11 -11 27z" />
|
100 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 375q0 12 8 20l121 120q12 13 21 9t9 -21v-80h169v168h-81q-17 0 -21 9t9 21l120 121q8 8 20 8t20 -8l121 -121q12 -12 8.5 -21t-21.5 -9h-81v-168h169v80q0 17 9 21t21 -9l121 -120q8 -8 8 -20t-8 -20l-121 -120q-12 -13 -21 -9.5t-9 21.5v83h-169v-171h81 q18 0 21.5 -9t-8.5 -21l-121 -121q-8 -8 -20 -8t-20 8l-120 121q-13 12 -9 21t21 9h81v171h-169v-83q0 -17 -9 -21t-21 9l-121 120q-8 8 -8 20z" />
|
101 |
+
<glyph unicode="" horiz-adv-x="525" d="M0 37q0 -15 11 -26t26 -11h75q16 0 27 11t11 26v675q0 16 -11 27t-27 11h-75q-15 0 -26 -11t-11 -27v-675zM150 375q0 13 8 21l319 345q7 9 20 9q3 0 11 -2q17 -9 17 -29v-689q0 -20 -17 -28q-19 -7 -31 7l-319 344q-8 9 -8 22z" />
|
102 |
+
<glyph unicode="" d="M0 37q0 -15 11 -26t26 -11h75q16 0 27 11t11 26v675q0 16 -11 27t-27 11h-75q-15 0 -26 -11t-11 -27v-675zM150 375q0 13 8 21l319 345q7 9 20 9q3 0 11 -2q17 -9 17 -29v-689q0 -20 -17 -28q-19 -7 -31 7l-319 344q-8 9 -8 22zM525 375q0 13 8 21l319 345q7 9 20 9 q3 0 11 -2q17 -9 17 -29v-689q0 -20 -17 -28q-19 -7 -31 7l-319 344q-8 9 -8 22z" />
|
103 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 374.5q0 12.5 8 21.5l319 345q7 9 20 9q5 0 11 -3q17 -7 17 -28v-689q0 -20 -17 -28q-18 -8 -31 7l-319 344q-8 9 -8 21.5zM375 374.5q0 12.5 8 21.5l319 345q7 9 20 9q5 0 11 -3q17 -7 17 -28v-689q0 -20 -17 -28q-18 -8 -31 7l-319 344q-8 9 -8 21.5z" />
|
104 |
+
<glyph unicode="" horiz-adv-x="659" d="M0 34v682q0 19 17 29q18 11 34 0l591 -340q17 -12 17 -30t-17 -30l-591 -340q-8 -5 -17 -5t-17 5q-17 10 -17 29z" />
|
105 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 34v682q0 14 10 24t24 10h239q14 0 24 -10t10 -24v-682q0 -14 -10 -24t-24 -10h-239q-14 0 -24 10t-10 24zM443 34v682q0 14 10 24t24 10h239q14 0 24 -10t10 -24v-682q0 -14 -10 -24t-24 -10h-239q-14 0 -24 10t-10 24z" />
|
106 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 34v682q0 14 10 24t24 10h682q14 0 24 -10t10 -24v-682q0 -14 -10 -24t-24 -10h-682q-14 0 -24 10t-10 24z" />
|
107 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 30v690q0 19 17 28q19 7 31 -7l319 -344q8 -9 8 -22t-8 -22l-319 -344q-8 -9 -20 -9q-3 0 -11 2q-17 8 -17 28zM375 30v690q0 19 17 28q19 7 31 -7l319 -344q8 -9 8 -22t-8 -22l-319 -344q-8 -9 -20 -9q-3 0 -11 2q-17 8 -17 28z" />
|
108 |
+
<glyph unicode="" d="M0 30v690q0 19 17 28q19 7 31 -7l319 -344q8 -9 8 -22t-8 -22l-319 -344q-8 -9 -20 -9q-3 0 -11 2q-17 8 -17 28zM375 30v690q0 19 17 28q19 7 31 -7l319 -344q8 -9 8 -22t-8 -22l-319 -344q-8 -9 -20 -9q-3 0 -11 2q-17 8 -17 28zM750 37q0 -15 11 -26t26 -11h75 q16 0 27 11t11 26v675q0 16 -11 27t-27 11h-75q-15 0 -26 -11t-11 -27v-675z" />
|
109 |
+
<glyph unicode="" horiz-adv-x="525" d="M0 30v690q0 19 17 28q19 7 31 -7l319 -344q8 -9 8 -22t-8 -22l-319 -344q-8 -9 -20 -9q-3 0 -11 2q-17 8 -17 28zM375 37q0 -15 11 -26t26 -11h75q16 0 27 11t11 26v675q0 16 -11 27t-27 11h-75q-15 0 -26 -11t-11 -27v-675z" />
|
110 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 34v97q0 14 10 24t24 10h682q14 0 24 -10t10 -24v-97q0 -14 -10 -24t-24 -10h-682q-14 0 -24 10t-10 24zM3 290q-9 21 7 37l341 341q10 10 24 10t24 -10l341 -341q16 -16 7 -37q-8 -21 -31 -21h-682q-23 0 -31 21z" />
|
111 |
+
<glyph unicode="" horiz-adv-x="471" d="M0 373.5q0 18.5 14 32.5l328 329q14 14 33 14t33 -14l49 -49q14 -14 14 -33t-14 -33l-248 -249l248 -244q14 -14 14 -32.5t-14 -32.5l-49 -50q-14 -14 -33 -14t-33 14l-328 329q-14 14 -14 32.5z" />
|
112 |
+
<glyph unicode="" horiz-adv-x="471" d="M0 95q0 19 14 33l248 248l-248 245q-14 14 -14 32.5t14 32.5l49 50q14 14 33 14t33 -14l328 -329q14 -14 14 -33t-14 -33l-328 -328q-14 -14 -33 -14t-33 14l-49 49q-14 14 -14 33z" />
|
113 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 375q0 78 29.5 146t80.5 119t119 80.5t146 29.5t146 -29.5t119 -80.5t80.5 -119t29.5 -146t-29.5 -146t-80.5 -119t-119 -80.5t-146 -29.5t-146 29.5t-119 80.5t-80.5 119t-29.5 146zM159 338q0 -7 4.5 -11.5t10.5 -4.5h147v-161q0 -7 4.5 -11.5t10.5 -4.5h78 q6 0 10.5 4.5t4.5 11.5v161h147q6 0 10.5 4.5t4.5 11.5v74q0 6 -4.5 10.5t-10.5 4.5h-147v162q0 7 -4.5 11.5t-10.5 4.5h-78q-6 0 -10.5 -4.5t-4.5 -11.5v-162h-147q-6 0 -10.5 -4.5t-4.5 -10.5v-74z" />
|
114 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 375q0 78 29.5 146t80.5 119t119 80.5t146 29.5t146 -29.5t119 -80.5t80.5 -119t29.5 -146t-29.5 -146t-80.5 -119t-119 -80.5t-146 -29.5t-146 29.5t-119 80.5t-80.5 119t-29.5 146zM159 338q0 -7 4.5 -11.5t10.5 -4.5h402q6 0 10.5 4.5t4.5 11.5v74q0 6 -4.5 10.5 t-10.5 4.5h-402q-6 0 -10.5 -4.5t-4.5 -10.5v-74z" />
|
115 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 376q0 72 27.5 141t82.5 124t124 82t141 27t141 -27t124 -82t82.5 -124t27.5 -141t-27.5 -141t-82.5 -124t-124 -82.5t-141 -27.5t-141 27.5t-124 82.5t-82.5 124t-27.5 141zM185 240l55 -54q5 -5 11 -5t11 5l114 114l103 -104q5 -5 11 -5t11 5l53 53q11 11 0 22 l-104 103l115 115q11 11 0 22l-55 55q-11 11 -22 0l-114 -115l-104 104q-11 11 -22 0l-52 -53q-5 -5 -5 -11t5 -11l103 -103l-114 -115q-10 -10 0 -22z" />
|
116 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 375q0 78 29.5 146t80.5 119t119 80.5t146 29.5t146 -29.5t119 -80.5t80.5 -119t29.5 -146t-29.5 -146t-80.5 -119t-119 -80.5t-146 -29.5t-146 29.5t-119 80.5t-80.5 119t-29.5 146zM112 351.5q0 -9.5 7 -16.5l150 -150q7 -6 18 -11t21 -5h25q10 0 21 5t18 11l259 259 q7 7 7 16.5t-7 15.5l-50 50q-6 7 -15.5 7t-16.5 -7l-212 -213q-7 -7 -16.5 -7t-15.5 7l-104 104q-7 7 -16.5 7t-15.5 -7l-50 -49q-7 -7 -7 -16.5z" />
|
117 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 375q0 78 29.5 146t80.5 119t119 80.5t146 29.5t146 -29.5t119 -80.5t80.5 -119t29.5 -146t-29.5 -146t-80.5 -119t-119 -80.5t-146 -29.5t-146 29.5t-119 80.5t-80.5 119t-29.5 146zM250 531l44 -55q6 -4 10 -5q6 0 10 4q8 6 18 11q8 4 18.5 7.5t21.5 3.5 q20 0 33 -10.5t13 -26.5q0 -17 -11.5 -30.5t-28.5 -28.5q-11 -9 -22 -19.5t-20 -24t-15 -30t-6 -37.5v-30q0 -5 4.5 -9.5t9.5 -4.5h77q6 0 10 4.5t4 9.5v25q0 18 12 31t29 28q12 10 24 21.5t21.5 26.5t16 33t6.5 42q0 32 -13 57t-34.5 41.5t-48.5 25t-54 8.5 q-30 0 -53.5 -7.5t-40 -16.5t-25 -17t-9.5 -9q-9 -9 -1 -18zM315 132q0 -5 4.5 -9.5t9.5 -4.5h77q6 0 10 4.5t4 9.5v74q0 14 -14 14h-77q-5 0 -9.5 -4t-4.5 -10v-74z" />
|
118 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 375q0 78 29.5 146t80.5 119t119 80.5t146 29.5t146 -29.5t119 -80.5t80.5 -119t29.5 -146t-29.5 -146t-80.5 -119t-119 -80.5t-146 -29.5t-146 29.5t-119 80.5t-80.5 119t-29.5 146zM269 418q0 -14 14 -14h40v-192h-37q-5 0 -9.5 -4.5t-4.5 -9.5v-66q0 -5 4.5 -9.5 t9.5 -4.5h189q5 0 9.5 4.5t4.5 9.5v66q0 5 -4.5 9.5t-9.5 4.5h-36v271q0 6 -4.5 10t-9.5 4h-142q-14 0 -14 -14v-65zM322 555q0 -6 4.5 -10.5t10.5 -4.5h88q5 0 9.5 4.5t4.5 10.5v77q0 6 -4.5 10t-9.5 4h-88q-6 0 -10.5 -4t-4.5 -10v-77z" />
|
119 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 338v75q0 8 5.5 13t13.5 5h80q9 41 29 77.5t48.5 65t65 48.5t77.5 29v80q0 19 19 19h75q8 0 13 -5.5t5 -13.5v-80q41 -9 77.5 -29t65 -48.5t48.5 -65t29 -77.5h80q8 0 13.5 -5t5.5 -13v-75q0 -19 -19 -19h-80q-9 -41 -29 -77.5t-48.5 -65t-65 -48.5t-77.5 -29v-80 q0 -8 -5 -13.5t-13 -5.5h-75q-19 0 -19 19v80q-41 9 -77.5 29t-65 48.5t-48.5 65t-29 77.5h-80q-19 0 -19 19zM178 319q14 -52 51.5 -89.5t89.5 -51.5v85q0 8 5.5 13t13.5 5h75q8 0 13 -5t5 -13v-85q52 14 89.5 51.5t51.5 89.5h-84q-19 0 -19 19v75q0 8 5.5 13t13.5 5h84 q-14 52 -51.5 89.5t-89.5 51.5v-84q0 -8 -5 -13.5t-13 -5.5h-75q-19 0 -19 19v84q-52 -14 -89.5 -51.5t-51.5 -89.5h85q8 0 13 -5t5 -13v-75q0 -8 -5 -13.5t-13 -5.5h-85z" />
|
120 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 375q0 78 29.5 146t80.5 119t119 80.5t146 29.5t146 -29.5t119 -80.5t80.5 -119t29.5 -146t-29.5 -146t-80.5 -119t-119 -80.5t-146 -29.5t-146 29.5t-119 80.5t-80.5 119t-29.5 146zM113 375q0 -54 20.5 -102t56 -83.5t83.5 -56t102 -20.5t102 20.5t84 56t56.5 83.5 t20.5 102t-20.5 102t-56.5 84t-84 56.5t-102 20.5t-102 -20.5t-83.5 -56.5t-56 -84t-20.5 -102zM212 466q0 8 5 14l53 53q6 5 14 5t13 -5l78 -78l78 78q6 5 14 5t13 -5l53 -53q5 -6 5 -14t-5 -13l-78 -78l78 -78q12 -14 0 -27l-53 -53q-14 -12 -27 0l-78 78l-78 -78 q-5 -5 -13 -5t-14 5l-53 53q-12 13 0 27l79 78l-79 78q-5 5 -5 13z" />
|
121 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 375q0 78 29.5 146t80.5 119t119 80.5t146 29.5t146 -29.5t119 -80.5t80.5 -119t29.5 -146t-29.5 -146t-80.5 -119t-119 -80.5t-146 -29.5t-146 29.5t-119 80.5t-80.5 119t-29.5 146zM113 375q0 -54 20.5 -102t56 -83.5t83.5 -56t102 -20.5t102 20.5t84 56t56.5 83.5 t20.5 102t-20.5 102t-56.5 84t-84 56.5t-102 20.5t-102 -20.5t-83.5 -56.5t-56 -84t-20.5 -102zM156 352q0 8 5 13l53 53q5 5 13 5t14 -5l83 -84q13 -12 27 0l158 159q6 5 14 5t13 -5l53 -53q5 -5 5 -13t-5 -14l-192 -192q-6 -5 -15 -9t-17 -4h-55q-8 0 -17 4t-15 9 l-117 117q-5 6 -5 14z" />
|
122 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 375q0 78 29.5 146t80.5 119t119 80.5t146 29.5t146 -29.5t119 -80.5t80.5 -119t29.5 -146t-29.5 -146t-80.5 -119t-119 -80.5t-146 -29.5t-146 29.5t-119 80.5t-80.5 119t-29.5 146zM113 375q0 -39 10.5 -74.5t30.5 -66.5l362 362q-31 20 -66.5 31t-74.5 11 q-54 0 -102 -20.5t-83.5 -56.5t-56 -84t-20.5 -102zM234 154q31 -20 66.5 -30.5t74.5 -10.5q54 0 102 20.5t84 56t56.5 83.5t20.5 102q0 39 -11 74.5t-31 66.5z" />
|
123 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 375q0 19 14 33l328 329q14 14 33 14t33 -14l49 -49q14 -14 14 -33t-14 -33l-165 -165h411q20 0 33.5 -13.5t13.5 -33.5v-70q0 -19 -13.5 -32.5t-32.5 -13.5h-412l165 -165q14 -14 14 -33t-14 -33l-49 -49q-14 -14 -33 -14t-33 14l-328 328q-14 14 -14 33z" />
|
124 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 341v70q0 19 13.5 32.5t32.5 13.5h412l-165 165q-14 14 -14 33t14 33l49 49q14 14 33 14t33 -14l328 -329q14 -14 14 -32.5t-14 -32.5l-328 -329q-14 -14 -33 -14t-33 14l-49 49q-14 14 -14 33t14 33l165 165h-412q-19 0 -32.5 13.5t-13.5 33.5z" />
|
125 |
+
<glyph unicode="" horiz-adv-x="750" d="M-0.5 375q-0.5 19 13.5 33l329 328q14 14 33 14t33 -14l328 -328q14 -14 14 -33t-14 -33l-49 -49q-14 -14 -32.5 -14t-32.5 14l-166 165v-412q0 -19 -13.5 -32.5t-32.5 -13.5h-70q-20 0 -33 13.5t-13 32.5v412l-165 -165q-14 -14 -33 -14t-33 14l-49 49q-14 14 -14.5 33z " />
|
126 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 374q0 19 14 33l49 49q14 14 33 14t33 -14l165 -165v412q0 19 13.5 32.5t32.5 13.5h70q20 0 33 -13.5t13 -32.5v-412l166 165q14 14 32.5 14t32.5 -14l50 -49q14 -14 14 -33t-14 -33l-329 -328q-14 -14 -33 -14t-33 14l-328 328q-14 14 -14 33z" />
|
127 |
+
<glyph unicode="" d="M0 66q0 102 35 192t106.5 157.5t181 107t259.5 40.5v143q0 35 17.5 42.5t43.5 -17.5l240 -241q17 -16 17 -40q0 -23 -17 -40l-240 -241q-25 -25 -43 -17.5t-18 42.5v161q-128 -1 -225 -27.5t-164 -72t-105 -107t-48 -132.5q-2 -16 -18 -16h-1q-16 0 -18 16q-3 25 -3 50z " />
|
128 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 42v255q0 26 13 31.5t32 -12.5l81 -81l134 134q6 6 15 6t16 -6l78 -78q6 -7 6 -16t-6 -15l-134 -134l81 -81q19 -19 13 -32t-32 -13h-254q-18 0 -30 12q-13 13 -13 30zM375 475q0 9 6 15l134 134l-81 81q-19 19 -13 32t32 13h254q18 0 30 -12q13 -13 13 -30v-255 q0 -26 -13 -31.5t-32 12.5l-81 81l-134 -133q-6 -7 -15 -7t-16 7l-78 77q-6 7 -6 16z" />
|
129 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 99q0 9 6 16l134 133l-81 81q-19 19 -13 32t32 13h254q19 0 30 -12q13 -13 13 -30v-255q0 -26 -13 -31.5t-32 13.5l-81 81l-134 -134q-6 -7 -15 -7t-16 7l-78 78q-6 6 -6 15zM375 417v255q0 26 13 31.5t32 -13.5l81 -81l134 134q6 7 15 7t16 -7l78 -78q6 -6 6 -15 t-6 -16l-134 -133l81 -81q19 -19 13 -32t-32 -13h-254q-20 0 -30 12q-13 13 -13 30z" />
|
130 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 340v70q0 19 13.5 32.5t32.5 13.5h248v247q0 20 13 33.5t33 13.5h70q19 0 32.5 -13.5t13.5 -32.5v-248h248q19 0 32.5 -13.5t13.5 -32.5v-70q0 -19 -13.5 -32.5t-32.5 -13.5h-248v-247q0 -20 -13.5 -33.5t-32.5 -13.5h-70q-19 0 -32.5 13.5t-13.5 32.5v248h-247 q-20 0 -33.5 13t-13.5 33z" />
|
131 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 340v70q0 19 13.5 32.5t32.5 13.5h658q19 0 32.5 -13.5t13.5 -32.5v-70q0 -19 -13.5 -32.5t-32.5 -13.5h-657q-20 0 -33.5 13t-13.5 33z" />
|
132 |
+
<glyph unicode="" horiz-adv-x="697" d="M1 497q-5 18 5 35l35 61q10 17 28.5 21.5t35.5 -4.5l162 -94v187q0 20 13.5 33.5t33.5 13.5h69q20 0 33.5 -13.5t13.5 -32.5v-188l162 94q17 9 35.5 4.5t28.5 -21.5l34 -61q10 -17 5.5 -35t-21.5 -28l-163 -94l163 -94q17 -10 21.5 -28t-4.5 -35l-35 -61 q-10 -17 -28.5 -21.5t-35.5 4.5l-162 94v-187q0 -20 -13.5 -33.5t-33.5 -13.5h-69q-20 0 -33.5 13.5t-13.5 32.5v188l-162 -94q-17 -10 -35.5 -5t-28.5 22l-35 61q-9 17 -4.5 35t21.5 28l163 94l-163 94q-17 10 -22 28z" />
|
133 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 375q0 78 29.5 146t80.5 119t119 80.5t146 29.5t146 -29.5t119 -80.5t80.5 -119t29.5 -146t-29.5 -146t-80.5 -119t-119 -80.5t-146 -29.5t-146 29.5t-119 80.5t-80.5 119t-29.5 146zM316 613l6 -347q2 -14 15 -14h76q14 0 14 14l7 347q1 5 -4 10q-3 4 -10 4h-90 q-7 0 -10 -4q-4 -4 -4 -10zM319 125q0 -14 14 -14h85q5 0 9.5 4t4.5 10v82q0 6 -4.5 10t-9.5 4h-85q-14 0 -14 -14v-82z" />
|
134 |
+
<glyph unicode="" d="M0 281v188q0 8 5.5 13.5t13.5 5.5h258q-27 0 -51 10t-42 28t-28.5 42t-10.5 51t10.5 51t28.5 41.5t42 28t51 10.5q29 0 55 -11.5t43 -33.5l75 -97l75 97q17 22 43 33.5t55 11.5q27 0 51 -10.5t42 -28t28.5 -41.5t10.5 -51t-10.5 -51t-28.5 -42t-42 -28t-51 -10h258 q8 0 13.5 -5.5t5.5 -13.5v-188q0 -8 -5.5 -13t-13.5 -5h-56v-207q0 -23 -16.5 -39.5t-39.5 -16.5h-638q-23 0 -39.5 16.5t-16.5 39.5v207h-56q-8 0 -13.5 5t-5.5 13zM220 619q0 -23 17 -39.5t40 -16.5h113l-73 94q-5 5 -15 11.5t-25 6.5q-23 0 -40 -16.5t-17 -39.5zM356 105 q0 -15 11 -26t27 -11h112q16 0 27 11t11 26v383h-188v-383zM509 563h114q23 0 40 16.5t17 39.5t-17 39.5t-40 16.5q-15 0 -25 -6.5t-15 -11.5z" />
|
135 |
+
<glyph unicode="" d="M3 78q9 25 25.5 41.5t33.5 30.5q14 11 24 20.5t13 20.5q1 2 0 5t-5 11q-2 6 -5 13.5t-5 16.5q-12 75 6.5 139t56.5 114.5t91 86.5t111 56q38 14 83.5 16.5t95.5 3.5q28 0 59.5 1t60.5 5.5t53.5 13.5t39.5 25q10 10 18.5 19.5t18 16.5t20.5 11.5t27 4.5q23 0 33 -21 q62 -121 32 -283q-42 -228 -272 -347q-110 -57 -220 -57q-36 0 -72.5 6t-71.5 19q-11 4 -21.5 9.5t-21.5 10.5q-13 8 -26.5 14.5t-22.5 7.5q-5 -1 -11.5 -8t-13 -16.5t-12.5 -19t-10 -15.5q-6 -11 -12 -20t-11 -16q-11 -14 -29 -14h-2q-28 2 -39 17.5t-14 23.5q-13 18 -5 37 zM188.5 253.5q1.5 -15.5 13.5 -26.5q10 -9 24 -9q18 0 28 13q42 48 85.5 82t90.5 54.5t99.5 29t114.5 6.5q15 -2 26.5 9.5t12.5 26.5q0 16 -10.5 27.5t-26.5 11.5q-69 3 -130 -7t-116 -34t-104.5 -63t-97.5 -94q-11 -11 -9.5 -26.5z" />
|
136 |
+
<glyph unicode="" horiz-adv-x="675" d="M0 214q0 58 30.5 119.5t82.5 111.5q-11 -75 0.5 -120.5t30.5 -71.5q22 -30 53 -44q-24 105 -14 204q4 42 15.5 87.5t34 90t58.5 85.5t89 74q-23 -49 -22 -90t11 -71q11 -35 34 -64q16 -19 30.5 -37.5t25 -42.5t16.5 -56.5t6 -78.5q-9 20 -27 32t-41 12q-32 0 -53.5 -22 t-21.5 -53q0 -16 5.5 -30t17 -25t30 -17t44.5 -6q44 4 77 31q13 12 25.5 29.5t20.5 43t10 60t-5 80.5h-1q52 -50 82.5 -111.5t30.5 -119.5q0 -54 -26.5 -94t-72.5 -66.5t-107 -40t-131 -13.5t-131.5 13.5t-107.5 40t-72.5 66.5t-26.5 94z" />
|
137 |
+
<glyph unicode="" d="M0 352.5q0 21.5 12 40.5q38 61 87 109.5t105.5 82t118.5 51t127 17.5q66 0 128 -17.5t118 -50.5t105 -81.5t88 -110.5q11 -19 11 -40.5t-11 -39.5q-39 -62 -88 -110.5t-105 -81.5t-118 -50.5t-128 -17.5q-65 0 -127 17.5t-118.5 51t-105.5 82t-87 109.5q-12 18 -12 39.5z M75 353q32 -51 73 -93t89 -71t101.5 -45t111.5 -16t111.5 16t101.5 45t89 71t73 93q-39 63 -91.5 110.5t-115.5 76.5q25 -29 39 -65t14 -78q0 -47 -17.5 -87.5t-48.5 -71.5t-72 -48.5t-87 -17.5q-47 0 -87.5 17.5t-71.5 48.5t-48.5 71.5t-17.5 87.5q0 38 12.5 72.5 t33.5 62.5q-57 -29 -106 -74.5t-86 -104.5zM300 397q0 -11 8 -19.5t20 -8.5t20 8.5t8 19.5q0 38 26 64t64 26q12 0 20 8.5t8 19.5q0 12 -8 20t-20 8q-30 0 -57 -11.5t-46.5 -31t-31 -46.5t-11.5 -57z" />
|
138 |
+
<glyph unicode="" d="M0 374.5q0 21.5 12 40.5q38 61 87 109.5t105.5 82t118.5 51t127 17.5q26 0 51.5 -3.5t50.5 -8.5l43 77q4 7 12 9q6 3 14 -1l65 -37q7 -4 9.5 -11.5t-1.5 -14.5l-378 -675q-3 -7 -11 -9q-2 -1 -5 -1t-9 2l-66 37q-7 4 -9 11.5t2 14.5l32 56q-71 33 -131.5 87t-106.5 127 q-12 18 -12 39.5zM75 375q40 -64 93.5 -112t117.5 -77l28 51q-42 31 -67.5 78t-25.5 104q0 38 12.5 72.5t33.5 63.5q-57 -30 -106 -75t-86 -105zM300 419q0 -11 8 -19.5t20 -8.5t20 8.5t8 19.5q0 38 26 64t64 26q12 0 20 8.5t8 19.5q0 12 -8 20t-20 8q-30 0 -57 -11.5 t-46.5 -31t-31 -46.5t-11.5 -57zM453 75l43 78q102 12 186.5 70.5t142.5 151.5q-53 83 -128 138l37 67q45 -32 84 -73t71 -92q11 -19 11 -40.5t-11 -39.5q-78 -124 -191.5 -191.5t-244.5 -68.5zM528 210l139 249q2 -10 3 -19.5t1 -20.5q0 -36 -10.5 -68.5t-29.5 -59.5 t-45.5 -48t-57.5 -33z" />
|
139 |
+
<glyph unicode="" horiz-adv-x="850" d="M5 23.5q-14 23.5 6 56.5l368 637q18 33 46 33q26 0 46 -33l368 -637q19 -33 5.5 -56.5t-51.5 -23.5h-736q-38 0 -52 23.5zM160 113h530l-265 459zM370 434q0 6 4 10t9 4h84q5 0 9 -4t4 -10l-7 -182q0 -12 -13 -12h-70q-13 0 -13 12zM372 189q0 13 13 13h78q13 0 13 -13 l1 -49q0 -13 -13 -13h-78q-13 0 -13 13z" />
|
140 |
+
<glyph unicode="" d="M1 212l34 144q2 8 2 18t-2 18l-34 144q-2 8 2 13.5t12 5.5h45q8 0 17 -4.5t14 -10.5l85 -110q44 9 92 14t94 5h12l-61 283q-2 8 2.5 13t12.5 5h64q8 0 16 -4.5t12 -11.5l164 -285h157q29 0 58 -6.5t51.5 -17t36.5 -24t13 -27.5q1 -14 -13 -27.5t-36.5 -24t-51.5 -17 t-58 -6.5h-158l-163 -283q-4 -7 -12 -11.5t-16 -4.5h-64q-8 0 -12.5 5t-2.5 13l61 281h-12q-46 0 -94 5.5t-92 13.5l-85 -110q-12 -14 -31 -14h-45q-8 0 -12 5t-2 13z" />
|
141 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 56v549q0 23 16.5 39.5t39.5 16.5h36v-69q0 -28 19.5 -47.5t47.5 -19.5h15q28 0 48 19.5t20 47.5v69h58v-69q0 -28 19.5 -47.5t47.5 -19.5h16q28 0 47.5 19.5t19.5 47.5v69h58v-69q0 -28 20 -47.5t48 -19.5h15q28 0 47.5 19.5t19.5 47.5v69h36q23 0 39.5 -16.5 t16.5 -39.5v-549q0 -23 -16.5 -39.5t-39.5 -16.5h-638q-23 0 -39.5 16.5t-16.5 39.5zM75 75h600v398h-600v-398zM129 592v128q0 12 9 21t21 9h15q13 0 21.5 -9t8.5 -21v-128q0 -12 -8.5 -20.5t-21.5 -8.5h-15q-12 0 -21 8.5t-9 20.5zM177 158q0 36 20 58.5t43.5 39t43.5 32 t20 36.5q0 20 -11.5 29t-28.5 9q-11 0 -20.5 -4.5t-16.5 -11.5q-4 -4 -7 -8t-6 -9l-34 23q7 14 20 27q11 11 27.5 19t40.5 8q35 0 61 -20.5t26 -58.5q0 -21 -9 -36.5t-23 -28t-30 -22.5t-30 -20t-23.5 -21t-9.5 -25h92v34h42v-73h-185q-1 6 -1.5 12t-0.5 11zM338 592v128 q0 12 8.5 21t20.5 9h16q12 0 21 -9t9 -21v-128q0 -12 -9 -20.5t-21 -8.5h-16q-12 0 -20.5 8.5t-8.5 20.5zM397 330v71h187v-34l-117 -232h-51l107 212q3 8 6 11l3 4v1q-3 0 -5 -1h-13h-75v-32h-42zM546 592v128q0 12 8.5 21t21.5 9h15q12 0 21 -9t9 -21v-128q0 -12 -9 -20.5 t-21 -8.5h-15q-13 0 -21.5 8.5t-8.5 20.5z" />
|
142 |
+
<glyph unicode="" d="M0 122v75q0 19 19 19h107q25 0 48.5 15.5t45.5 41t44 58.5t44 68q27 43 56 85.5t62 75.5t72 53.5t88 20.5h99v90q0 20 12 24t29 -10l163 -135q11 -9 11 -23q0 -13 -11 -22l-163 -136q-17 -14 -29 -10t-12 24v86h-99q-26 0 -49 -15.5t-45.5 -41t-44.5 -58.5t-44 -68 q-27 -44 -55.5 -86t-61.5 -75t-72.5 -53.5t-87.5 -20.5h-107q-8 0 -13.5 5t-5.5 13zM0 541v75q0 8 5.5 13.5t13.5 5.5h107q52 0 93.5 -23.5t76.5 -61.5q-18 -25 -34 -49.5t-31 -47.5q-25 31 -50.5 50t-54.5 19h-107q-8 0 -13.5 5.5t-5.5 13.5zM417 190q17 24 33 48.5 t31 48.5q25 -31 50.5 -50t54.5 -19h99v94q0 20 12 24t29 -10l163 -136q11 -9 11 -22q0 -14 -11 -23l-163 -135q-17 -14 -29 -10t-12 24v82h-99q-53 0 -93.5 23t-75.5 61z" />
|
143 |
+
<glyph unicode="" d="M0 421q0 68 35.5 128t96.5 104.5t143 70.5t175 26t175 -26t143 -70.5t96.5 -104.5t35.5 -128t-35.5 -128t-96.5 -104.5t-143 -70.5t-175 -26q-44 0 -84 6q-42 -32 -90.5 -55t-103.5 -35l-24 -4q-12 -2 -25 -4q-16 -2 -20 14v1q-2 7 3 11l9 10q10 11 19.5 21.5t17 24.5 t14 32.5t11.5 45.5q-81 45 -129 112.5t-48 148.5z" />
|
144 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 311v139q0 8 5.5 13.5t13.5 5.5h187q8 0 13.5 -5.5t5.5 -13.5v-139q0 -13 11 -28t30.5 -28t47 -21.5t61.5 -8.5t61.5 8.5t47 21.5t30.5 28t11 28v139q0 8 5.5 13.5t13.5 5.5h187q8 0 13.5 -5.5t5.5 -13.5v-139q0 -65 -29.5 -121.5t-80.5 -98.5t-119 -66.5t-146 -24.5 t-146 24.5t-119 66.5t-80.5 98.5t-29.5 121.5zM0 544v187q0 19 19 19h187q19 0 19 -19v-187q0 -19 -19 -19h-187q-19 0 -19 19zM525 544v187q0 19 19 19h187q19 0 19 -19v-187q0 -19 -19 -19h-187q-19 0 -19 19z" />
|
145 |
+
<glyph unicode="" horiz-adv-x="750" d="M-0.5 173.5q-0.5 18.5 13.5 32.5l329 329q14 14 33 14t33 -14l328 -329q14 -14 14 -32.5t-14 -32.5l-49 -50q-14 -14 -33 -14t-33 14l-248 249l-244 -249q-14 -14 -33 -14t-33 14l-49 50q-14 14 -14.5 32.5z" />
|
146 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 448.5q0 18.5 14 32.5l49 50q14 14 33 14t33 -14l248 -249l244 249q14 14 33 14t33 -14l49 -50q14 -14 14.5 -32.5t-13.5 -32.5l-329 -329q-14 -14 -33 -14t-33 14l-328 329q-14 14 -14 32.5z" />
|
147 |
+
<glyph unicode="" d="M1 502.5q-6 14.5 13 34.5l181 199q12 14 30 14t30 -14l181 -199q19 -20 13 -34.5t-32 -14.5h-117v-319h81q4 -5 6.5 -9.5t7.5 -9.5l119 -131h-327q-15 0 -26 11t-11 26v432h-117q-26 0 -32 14.5zM386 731h326q16 0 27 -11t11 -26v-431h117q26 0 32 -15t-13 -35l-181 -199 q-12 -14 -30 -14t-30 14l-181 199q-19 20 -13 35t32 15h117v318h-81q-4 5 -6.5 9.5t-7.5 9.5z" />
|
148 |
+
<glyph unicode="" d="M0 694v37q0 19 19 19h113q8 0 18.5 -2t17.5 -4q3 -2 7 -7t7.5 -11.5t6 -13t3.5 -10.5l13 -61h658q17 0 28 -13t8 -29l-53 -282q-3 -12 -13 -20.5t-24 -8.5h-529l17 -82q2 -8 8.5 -13t14.5 -5h418q8 0 13.5 -5.5t5.5 -13.5v-38q0 -8 -5.5 -13t-13.5 -5h-80h-318h-51 q-8 0 -18 1.5t-17 4.5q-3 1 -7 6.5t-7.5 12t-6 13t-3.5 10.5l-105 496q-2 8 -8.5 13t-14.5 5h-83q-19 0 -19 19zM284 56q0 23 16.5 40t39.5 17q24 0 40.5 -17t16.5 -40t-16.5 -39.5t-40.5 -16.5q-23 0 -39.5 16.5t-16.5 39.5zM602 56q0 23 16.5 40t39.5 17t39.5 -17 t16.5 -40t-16.5 -39.5t-39.5 -16.5t-39.5 16.5t-16.5 39.5z" />
|
149 |
+
<glyph unicode="" d="M0 56v638q0 23 16.5 39.5t39.5 16.5h338q23 0 39.5 -16.5t16.5 -39.5t16.5 -39.5t39.5 -16.5h338q23 0 39.5 -17t16.5 -40v-525q0 -23 -16.5 -39.5t-39.5 -16.5h-788q-23 0 -39.5 16.5t-16.5 39.5z" />
|
150 |
+
<glyph unicode="" d="M0 185v509q0 23 16.5 39.5t39.5 16.5h338q23 0 39.5 -16.5t16.5 -39.5t16.5 -39.5t39.5 -16.5h216q23 0 39.5 -17t16.5 -40v-108h-600q-18 0 -35 -6t-32 -16.5t-26 -25t-17 -31.5zM21 0l120 371q3 11 15 19t23 8h721l-127 -370q-3 -11 -15 -19.5t-23 -8.5h-714z" />
|
151 |
+
<glyph unicode="" horiz-adv-x="375" d="M0.5 187q4.5 11 27.5 11h95v354h-95q-23 0 -27.5 10.5t11.5 26.5l150 151q10 10 26 10q15 0 25 -10l150 -151q16 -15 11.5 -26t-27.5 -11h-95v-354h95q23 0 27.5 -10.5t-11.5 -26.5l-150 -151q-10 -10 -26 -10q-15 0 -25 10l-150 151q-16 15 -11.5 26z" />
|
152 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 357q0 15 10 25l151 151q15 15 26 10.5t11 -26.5v-96h354v96q0 22 10.5 26.5t26.5 -11.5l151 -150q10 -10 10 -25t-10 -25l-151 -151q-15 -16 -26 -11t-11 27v96h-354v-96q0 -22 -10.5 -26.5t-26.5 11.5l-151 150q-10 10 -10 25z" />
|
153 |
+
<glyph unicode="" d="M0 56v638q0 23 17 39.5t40 16.5h787q23 0 39.5 -16.5t16.5 -39.5v-638q0 -23 -16.5 -39.5t-39.5 -16.5h-787q-23 0 -40 16.5t-17 39.5zM75 75h750v600h-750v-600zM150 129v177h99v-177h-99zM317 129v379h98v-379h-98zM485 129v289h99v-289h-99zM651 129v450h99v-450h-99z " />
|
154 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 94v562q0 19 7.5 36.5t20 30t29.5 20t36 7.5h563q39 0 66.5 -27.5t27.5 -66.5v-562q0 -20 -7.5 -37t-20 -29.5t-30 -20t-36.5 -7.5h-563q-19 0 -36 7.5t-29.5 20t-20 29.5t-7.5 37zM98 273q39 -54 97 -82.5t127 -28.5q47 0 90 13t78 36t60.5 55t37.5 70q40 3 63 28 q7 7 2 16q-4 9 -15 7h-2q11 11 15 22q4 10 -4 16q-7 7 -16 1q-4 -2 -14.5 -5t-22.5 -3q-2 0 -3.5 0.5t-3.5 0.5q0 1 -0.5 2t-0.5 2q-8 30 -28 54t-46 35q2 2 3 4t3 4q3 8 0 16q-1 3 -6 8t-17 4q-1 2 -3 4q-6 6 -12 4q-12 -2 -24 -6l-1 1q-7 4 -15 -1q-29 -18 -48 -49 t-33 -66q-17 15 -28 20q-30 17 -63 31t-75 30q-7 2 -12 -2q-5 -3 -7 -10q-1 -13 4 -28.5t19 -30.5q-12 -3 -10 -16q6 -33 33 -49l-6 -6q-7 -7 -2 -16q2 -6 13 -18.5t32 -18.5q-3 -6 -3 -11t1 -7q3 -16 19 -24q-18 -12 -38.5 -16.5t-41.5 -3t-40.5 10t-34.5 22.5q-4 4 -9.5 4 t-9.5 -4q-11 -9 -2 -19z" />
|
155 |
+
<glyph unicode="" horiz-adv-x="750" d="M1 94v562q0 19 7.5 36.5t20 30t29.5 20t36 7.5h563q39 0 66.5 -27.5t27.5 -66.5v-562q0 -20 -7.5 -37t-20 -29.5t-30 -20t-36.5 -7.5h-237v314h84q6 0 10.5 4t4.5 10l6 82q0 7 -4 12q-5 5 -11 5h-90v36q0 20 5 26.5t26 6.5q12 0 27 -2t29 -5q3 0 6.5 0.5t5.5 2.5 q5 3 7 11l11 79q2 14 -12 17q-44 12 -92 12q-147 0 -147 -143v-41h-50q-16 0 -16 -16v-82q0 -6 4.5 -10.5t11.5 -4.5h50v-314h-192q-19 0 -36 7.5t-29.5 20t-20 29.5t-7.5 37z" />
|
156 |
+
<glyph unicode="" d="M0 56v638q0 23 16.5 39.5t39.5 16.5h788q23 0 39.5 -16.5t16.5 -39.5v-638q0 -23 -16.5 -39.5t-39.5 -16.5h-788q-23 0 -39.5 16.5t-16.5 39.5zM75 78h750v56h-750v-56zM75 559h750v113h-467l-7 -45h-276v-68zM130 655h154v45h-154v-45zM272 346q0 -37 14 -69.5t38 -56.5 t56.5 -38t69.5 -14t69.5 14t56.5 38t38 56.5t14 69.5t-14 69.5t-38 56.5t-56.5 38t-69.5 14t-69.5 -14t-56.5 -38t-38 -56.5t-14 -69.5zM328 346q0 25 9.5 47.5t26 39t39 26t47.5 9.5t47.5 -9.5t39 -26t26 -39t9.5 -47.5t-9.5 -47.5t-26 -39t-39 -26t-47.5 -9.5t-47.5 9.5 t-39 26t-26 39t-9.5 47.5zM363 346q0 -8 6 -14t14 -6q9 0 15 6t6 14q0 20 13.5 33t32.5 13v1q9 0 15 6t6 14q0 9 -6 15t-15 6q-36 0 -61.5 -26t-25.5 -62z" />
|
157 |
+
<glyph unicode="" d="M0.5 391.5q-2.5 52.5 14 108.5t53.5 107q36 51 83.5 85t98 48t99.5 8t90 -35q36 -26 57 -63.5t27.5 -82.5t-1.5 -93.5t-32 -95.5l195 -139l47 65l-49 35q-7 5 -8.5 13t3.5 15l23 32q5 7 13 8.5t15 -3.5l163 -116q7 -5 8 -13t-4 -15l-23 -33q-5 -7 -13 -8.5t-15 3.5 l-48 35l-47 -65l116 -83q20 -14 24.5 -39t-10.5 -45q-14 -20 -38.5 -24t-44.5 10l-376 269q-37 -38 -80.5 -61.5t-88 -31.5t-87 -0.5t-78.5 33.5q-41 29 -62.5 74t-24 97.5zM109 374.5q3 -19.5 13.5 -37t27.5 -29.5t37 -16.5t39.5 -1t37 14t29.5 27.5q17 24 18 53t-12 54 q28 -5 55 5.5t45 35.5q12 17 16.5 37t1 39.5t-14 37t-27.5 29.5t-37 16.5t-39.5 1t-37 -14t-29.5 -27.5q-17 -25 -18.5 -54t12.5 -54q-28 5 -55 -5.5t-45 -35.5q-12 -17 -16 -36.5t-1 -39z" />
|
158 |
+
<glyph unicode="" d="M0 391v84q0 6 5 6q14 4 29.5 6t30.5 4q4 0 7 0.5t7 0.5q6 21 17 42q-9 14 -20 28t-23 28q-5 5 0 9q14 17 30 33.5t33 30.5q6 4 9 -1q8 -8 17 -14.5t18 -13.5l21 -15q21 11 42 17q2 21 4.5 39t6.5 35q0 5 6 5h84q7 0 7 -6q2 -14 4.5 -28.5t4.5 -29.5l2 -15q20 -6 41 -17 q8 7 19 14q10 8 19.5 15t18.5 15q6 4 9 -1q5 -4 9 -8l8 -8l22 -22q12 -12 23 -25q3 -5 0 -9q-10 -11 -20 -24.5t-23 -30.5q6 -11 10.5 -22t8.5 -22q8 -2 17.5 -3t19.5 -3l18 -2q9 -1 17 -3q6 -2 6 -7v-84q0 -5 -5 -7q-14 -3 -29.5 -5t-30.5 -4q-4 0 -14 -2q-6 -20 -17 -41 q9 -14 20 -28t23 -28q4 -5 0 -9q-14 -17 -30 -33.5t-33 -30.5q-6 -4 -9 1q-8 7 -17 14t-18 13q-5 5 -10.5 8.5t-10.5 7.5q-21 -11 -42 -17q-2 -17 -4 -36.5t-7 -37.5q-2 -5 -7 -5h-84q-6 0 -6 5q-3 14 -5 29l-4 30l-2 15q-20 6 -41 17q-5 -4 -9.5 -7t-9.5 -7 q-10 -8 -19.5 -15t-18.5 -15q-6 -4 -9 1q-5 4 -8 8l-9 8q-11 11 -22.5 22t-22.5 25q-4 4 0 8q12 14 22.5 28.5t19.5 27.5q-10 20 -18 44q-8 2 -17.5 3t-19.5 3l-18 2q-9 1 -18 3q-5 2 -5 7zM197 432q0 -35 25 -60t60 -25t60 25t25 60t-25 60t-60 25t-60 -25t-25 -60z M524 188q-2 6 4 8q11 4 21 8t21 8q1 5 1.5 9t2.5 9t3.5 8.5t3.5 8.5q-7 10 -13 19.5t-12 19.5q-3 5 2 8l62 56q4 4 9 1q9 -7 17.5 -14t17.5 -15q18 7 35 8q5 11 10.5 21t10.5 19q3 5 8 3l80 -25q5 -2 5 -8q-2 -11 -4 -21.5t-4 -21.5q8 -6 14 -13t11 -15q12 1 23 1.5t22 0.5 q5 0 7 -5l18 -83q2 -5 -4 -7q-11 -5 -21 -8.5t-21 -7.5q-1 -5 -1.5 -9t-2.5 -9t-3.5 -8.5t-3.5 -7.5q7 -10 13.5 -19.5t11.5 -19.5q2 -5 -2 -8l-62 -57q-4 -4 -9 0q-8 7 -17 14t-17 14q-20 -7 -37 -8q-5 -11 -10 -21t-10 -19q-3 -5 -8 -3l-80 25q-5 2 -5 8q2 11 3.5 22 t3.5 22q-14 12 -24 27q-12 -2 -23.5 -2.5t-22.5 0.5q-5 0 -7 5zM560 607q0 5 5 7q10 2 20 4.5t20 4.5q2 4 3 8t3 8t4.5 7t4.5 7q-5 10 -9 19.5t-8 18.5q-2 4 2 8l64 42q5 3 8 -1q8 -7 14.5 -14.5t13.5 -15.5q16 3 33 3q12 18 24 33q3 3 8 2l69 -34q5 -3 3 -8 q-2 -10 -5.5 -19t-6.5 -19q10 -13 18 -29q11 -1 21.5 -1.5t20.5 -2.5q5 -2 5 -6l5 -77q0 -4 -5 -6q-10 -2 -19.5 -4.5t-20.5 -4.5q-2 -4 -3 -7.5t-3 -7.5q-3 -7 -8 -14q5 -10 9 -19.5t8 -18.5q2 -5 -3 -8l-63 -42q-5 -3 -8 1q-13 12 -28 30q-8 -2 -16.5 -3t-17.5 0 q-6 -9 -12 -17.5t-12 -16.5q-3 -3 -8 -1l-69 34q-5 2 -3 7q3 10 6 19.5t7 19.5q-6 6 -10.5 13t-8.5 15q-11 1 -21.5 1.5t-20.5 2.5q-5 0 -5 6zM658 203q-7 -22 3.5 -42.5t33.5 -27.5q22 -8 42.5 2.5t27.5 33.5q8 22 -2.5 42.5t-33.5 28.5q-22 7 -42.5 -3.5t-28.5 -33.5z M681 564q7 -20 26 -30q20 -9 40 -2.5t29 25.5q10 20 3 40t-26 29q-19 10 -39 3t-30 -26t-3 -39z" />
|
159 |
+
<glyph unicode="" d="M0 483q0 55 29 103.5t78.5 85t116 57.5t142.5 21t142.5 -21t116 -57.5t78 -85t28.5 -103.5q0 -56 -28.5 -104.5t-78 -84.5t-116 -57t-142.5 -21q-18 0 -35 1.5t-34 3.5q-34 -26 -73 -45t-84 -29q-20 -5 -40 -6q-12 -2 -16 11v1q-2 5 1.5 9t7.5 8q17 17 30 37t21 64 q-66 36 -105 91t-39 121zM305 136q8 4 12 7q13 -2 25 -2h24q93 0 173 26.5t139.5 72.5t93.5 108.5t34 134.5q0 19 -3 39q45 -36 71 -81.5t26 -98.5q0 -66 -39 -120.5t-105 -91.5q8 -44 21 -63.5t30 -36.5q4 -5 7.5 -9t1.5 -9q-1 -6 -6 -9.5t-10 -2.5q-11 2 -20.5 3.5 t-19.5 3.5q-88 19 -157 73q-17 -2 -34 -3.5t-35 -1.5q-66 0 -123.5 16t-105.5 45z" />
|
160 |
+
<glyph unicode="" horiz-adv-x="783" d="M0.5 222q-1.5 56 2 112t12.5 105q45 3 94 3t90 -10q6 -38 10 -91t5.5 -110t0.5 -111t-5 -94q-18 -2 -41.5 -2.5t-49 0.5t-50 1.5t-44.5 0.5q-10 38 -16.5 89t-8 107zM91 101q0 -16 11 -27t27 -11t26.5 11t10.5 27q0 15 -10.5 26t-26.5 11t-27 -11t-11 -26zM240 412 q22 10 35.5 19.5t24.5 21t22.5 26t30.5 34.5q16 16 28.5 26.5t23 20t19 20t17.5 25.5q16 29 21 65t13 68q0 7 7 11q19 3 35 -3.5t28 -17.5t19.5 -26t10.5 -28q6 -33 -1.5 -59.5t-19 -50.5t-22 -46.5t-11.5 -47.5q21 -9 51.5 -9.5t63.5 1t64 1.5t52 -8.5t28.5 -29t-5.5 -59.5 q0 -2 -2.5 -5.5t-5 -8t-4.5 -8.5l-2 -3q11 -11 16 -23t5 -20q1 -39 -32 -68q10 -15 11 -31.5t-4 -31.5t-14.5 -26.5t-21.5 -17.5q6 -34 -6 -58t-35.5 -38.5t-56.5 -20.5t-69 -6t-72.5 5t-67.5 14q-20 6 -39 14t-38.5 15t-41 11t-45.5 0q2 39 2.5 85t-1 93.5t-4.5 92.5t-7 82 z" />
|
161 |
+
<glyph unicode="" horiz-adv-x="783" d="M1 452q-1 21 7.5 37.5t24.5 30.5q-9 15 -10 31.5t3.5 31.5t14 26.5t21.5 17.5q-6 34 6 58t35.5 38.5t56.5 20.5t69 6t72.5 -5t67.5 -14q20 -6 39 -14t38.5 -15t41 -10.5t45.5 0.5q-2 -39 -2.5 -85.5t1 -94t4 -92.5t7.5 -82q-22 -10 -35.5 -19.5t-24 -21t-22.5 -26 t-31 -33.5q-15 -17 -27.5 -27.5t-23 -20t-19.5 -19.5t-18 -26q-16 -29 -20.5 -65t-13.5 -68q0 -8 -7 -11q-20 -3 -35.5 3.5t-27.5 17.5t-19.5 25.5t-10.5 28.5q-6 33 1.5 59.5t19 50.5t22 47t11.5 48q-21 9 -51.5 9t-63.5 -1.5t-63.5 -1.5t-52 8.5t-29 29t5.5 59.5 q1 1 3.5 5.5t5 8.5t3.5 8l2 3q-11 11 -16 23t-5 20zM568 630q1 54 5 94q18 2 42 2.5t49.5 0t50 -1.5t44.5 -1q10 -38 16 -89t7.5 -106.5t-2 -112t-12.5 -105.5q-45 -3 -93.5 -3t-90.5 10q-6 38 -10 91t-5.5 110t-0.5 111zM617 650q0 -16 11 -27t27 -11q15 0 26 11t11 27 q0 15 -11 26t-26 11q-16 0 -27 -11t-11 -26z" />
|
162 |
+
<glyph unicode="" horiz-adv-x="393" d="M0.5 465q4.5 13 25.5 16l238 34l106 216q9 19 23 19v-633l-212 -112q-20 -10 -31 -2t-7 30l41 236l-172 168q-16 15 -11.5 28z" />
|
163 |
+
<glyph unicode="" horiz-adv-x="846" d="M0 519q0 64 20.5 108t53 71.5t73.5 39.5t82 12q30 0 59 -10t54 -25t45.5 -32.5t35.5 -32.5q15 15 36 32.5t46 32.5t53.5 25t58.5 10q42 0 83 -12t73.5 -39.5t52.5 -71.5t20 -108q0 -44 -16.5 -83.5t-36 -69.5t-37 -48t-18.5 -19l-288 -288q-13 -11 -27 -11q-15 0 -26 11 l-290 288q-1 1 -18 19t-36.5 48t-36 69.5t-16.5 83.5zM75 519q0 -32 13 -61.5t29 -53t29 -37.5l14 -14l263 -263l263 262q1 1 14 15t29 37.5t29 53t13 61.5q0 48 -14 78.5t-36.5 48t-50 23.5t-53.5 6q-25 0 -50.5 -12t-48 -29t-40 -34.5t-26.5 -28.5q-11 -14 -29 -14t-29 14 q-9 11 -26.5 28.5t-40 34.5t-48 29t-50.5 12q-26 0 -53.5 -6t-50 -23.5t-36.5 -48t-14 -78.5z" />
|
164 |
+
<glyph unicode="" horiz-adv-x="825" d="M0 150v450q0 31 12 58t32.5 47.5t47.5 32.5t58 12h225v-94h-225q-23 0 -39.5 -16.5t-16.5 -39.5v-450q0 -23 16.5 -39.5t39.5 -16.5h225v-94h-225q-31 0 -58 12t-47.5 32.5t-32.5 47.5t-12 58zM248 285v180q0 16 11 26.5t27 10.5h209v143q0 20 19 28q19 7 32 -7l270 -270 q9 -9 9 -21.5t-9 -20.5l-270 -270q-9 -9 -21 -9q-5 0 -11 2q-19 8 -19 28v142h-209q-16 0 -27 11t-11 27z" />
|
165 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 94v562q0 19 7.5 36.5t20 30t29.5 20t37 7.5h562q39 0 66.5 -27.5t27.5 -66.5v-562q0 -20 -7.5 -37t-20 -29.5t-30 -20t-36.5 -7.5h-562q-39 0 -66.5 27.5t-27.5 66.5zM101 582q0 -28 19.5 -47.5t46.5 -19.5q28 0 47.5 19.5t19.5 47.5q0 27 -19.5 46.5t-47.5 19.5 q-27 0 -46.5 -19.5t-19.5 -46.5zM104 117q0 -5 4.5 -9.5t9.5 -4.5h98q6 0 10 4.5t4 9.5v345q0 14 -14 14h-98q-5 0 -9.5 -4t-4.5 -10v-345zM283 117q0 -5 4.5 -9.5t9.5 -4.5h98q6 0 10 4.5t4 9.5v187q0 28 8 47q15 31 55 31q32 0 42 -19q7 -11 7 -35v-211q0 -5 4 -9.5 t10 -4.5h100q6 0 10 4.5t4 9.5v233q0 72 -42 104q-40 31 -103 31q-50 0 -85 -23q-4 -3 -13 -12v12q0 14 -14 14h-95q-5 0 -9.5 -4t-4.5 -10v-345z" />
|
166 |
+
<glyph unicode="" d="M1 461q4 38 21 80.5t47 82.5t65.5 68.5t71.5 43t68.5 14t56.5 -18.5q25 -18 34.5 -49.5t5.5 -70.5l141 -105q52 29 101.5 33.5t84.5 -21.5q25 -19 37.5 -50.5t11.5 -70.5t-14.5 -83.5t-39.5 -88.5l201 -193q5 -5 6 -12t-4 -12q-5 -8 -15 -8q-3 0 -9 2l-242 138 q-35 -37 -73.5 -63t-75.5 -38t-71 -9.5t-60 22.5q-35 26 -45 74.5t4 106.5l-141 106q-36 -15 -69 -15t-58 18q-24 18 -34 49.5t-6 69.5zM80 417.5q1 -7.5 8 -12.5q8 -7 22 -7q15 0 31.5 8t33.5 22t33.5 31.5t31.5 37.5q5 6 4 13.5t-8 12.5q-6 5 -13.5 4t-12.5 -8 q-37 -49 -65.5 -67.5t-34.5 -16.5q-6 5 -13.5 4t-12.5 -8q-5 -6 -4 -13.5zM219 368l170 -127q6 -4 11 -4q10 0 15 8q5 6 4 13.5t-7 12.5l-163 121q-15 -14 -30 -24zM393 141q-10 -16 4 -27q13 -10 33 -10q19 0 41 10t44.5 27t44.5 39t41 47q5 7 4 14.5t-8 12.5 q-6 5 -13.5 3.5t-12.5 -7.5q-24 -32 -48 -54.5t-45 -35.5t-36.5 -17t-22.5 2q-6 5 -13.5 3.5t-12.5 -7.5z" />
|
167 |
+
<glyph unicode="" d="M0 150v450q0 31 12 58.5t32 47.5t47.5 32t58.5 12h284q-1 -7 -2 -13.5t-1 -14.5v-43q0 -11 3 -23h-284q-23 0 -39.5 -16.5t-16.5 -39.5v-450q0 -23 16.5 -39.5t39.5 -16.5h525q23 0 39.5 16.5t16.5 39.5v166q20 -15 44 -24t50 -10v-132q0 -31 -12 -58t-32.5 -47.5 t-47.5 -32.5t-58 -12h-525q-31 0 -58.5 12t-47.5 32.5t-32 47.5t-12 58zM338 255q0 12 8 20l376 377h-131q-12 0 -20 8t-8 20v42q-1 11 7.5 19.5t20.5 8.5h281q11 0 19.5 -8.5t8.5 -19.5v-42v-239q0 -12 -8.5 -20.5t-19.5 -7.5h-42q-12 0 -20 8t-8 20v131l-377 -376 q-8 -8 -20 -8t-20 8l-39 39q-8 8 -8 20z" />
|
168 |
+
<glyph unicode="" horiz-adv-x="825" d="M0 285v180q0 16 11 26.5t27 10.5h209v143q0 20 18 28q19 7 33 -7l270 -270q8 -9 8 -21.5t-8 -20.5l-270 -270q-9 -9 -21 -9q-4 0 -12 2q-18 8 -18 28v142h-209q-16 0 -27 11t-11 27zM450 0v94h225q23 0 39.5 16.5t16.5 39.5v450q0 23 -16.5 39.5t-39.5 16.5h-225v94h225 q31 0 58 -12t47.5 -32t32.5 -47.5t12 -58.5v-450q0 -31 -12 -58t-32.5 -47.5t-47.5 -32.5t-58 -12h-225z" />
|
169 |
+
<glyph unicode="" horiz-adv-x="825" d="M0 509v91q0 16 11 26.5t27 10.5h158q-1 6 -1 13v11v2q0 26 2 43t7.5 26.5t15.5 13.5t27 4h331q16 0 26.5 -4t16 -13.5t7.5 -26.5t2 -43v-13q0 -6 -1 -13h158q16 0 27 -10.5t11 -26.5v-91q0 -31 -22 -64t-59.5 -62.5t-88 -52t-108.5 -31.5q-25 -5 -44.5 -20.5t-19.5 -34.5 q0 -17 8.5 -25t19 -15t19.5 -15.5t11 -25.5q2 -11 -1 -23q-2 -7 11.5 -11.5t33 -9t40 -11t31.5 -16.5q6 -5 9.5 -19.5t4.5 -31.5q1 -16 -3 -28.5t-14 -12.5h-481q-10 0 -14 12.5t-3 28.5q1 17 4.5 31.5t9.5 19.5q11 10 31 16.5t39.5 11t33.5 9t12 11.5t-2 12v11 q1 17 10.5 25.5t20.5 15.5t19.5 15t8.5 25q0 19 -19.5 34.5t-45.5 20.5q-57 10 -107.5 32.5t-88 51.5t-59.5 62t-22 64zM75 509q0 -10 11.5 -26.5t33 -34.5t52 -35t68.5 -29q-12 39 -21.5 85.5t-16.5 92.5h-127v-53zM585 384q38 12 68.5 29t52 35t33 34.5t11.5 26.5v53h-128 q-6 -46 -15.5 -92.5t-21.5 -85.5z" />
|
170 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 94v562q0 19 7.5 36.5t20 30t29.5 20t37 7.5h562q39 0 66.5 -27.5t27.5 -66.5v-562q0 -20 -7.5 -37t-20 -29.5t-30 -20t-36.5 -7.5h-562q-39 0 -66.5 27.5t-27.5 66.5zM94 321q0 -44 11 -82.5t41.5 -67t85.5 -45t143 -16.5t142.5 16.5t85.5 45t42 67t11 82.5 q0 73 -46 127q4 16 5 36t-1.5 39t-7.5 36t-12 29h-14q-42 -2 -74 -22t-63 -37l-7 1q-8 0 -18.5 1t-22 1.5t-20.5 0.5q-18 0 -35 -1t-33 -3q-31 17 -63 37t-74 22h-14q-8 -12 -12.5 -29t-7 -36t-1.5 -39t5 -36q-46 -54 -46 -127zM183 289q15 60 84 67q13 2 27 1.5t30 -1.5 q7 0 25.5 -1t25.5 -1t25.5 1t25.5 1q16 1 30 1.5t26 -1.5q70 -7 85 -67q8 -33 -3 -61.5t-24 -41.5q-20 -20 -66 -32t-99 -12t-99 12t-66 32q-13 13 -24 41.5t-3 61.5zM242 265q0 -23 11 -39t27 -16t27 16t11 39t-11 38.5t-27 15.5t-27 -15.5t-11 -38.5zM432 265 q0 -23 11 -39t27 -16t27 16t11 39t-11 38.5t-27 15.5t-27 -15.5t-11 -38.5z" />
|
171 |
+
<glyph unicode="" d="M0 19v300q0 8 5.5 13.5t13.5 5.5h112q8 0 13.5 -5.5t5.5 -13.5v-169h600v169q0 8 5.5 13.5t13.5 5.5h112q8 0 13.5 -5.5t5.5 -13.5v-300q0 -19 -19 -19h-862q-19 0 -19 19zM169 473.5q-3 7.5 8 18.5l246 247q11 11 27 11t27 -11l247 -247q11 -11 7.5 -18.5t-18.5 -7.5 h-150v-244q0 -16 -11 -27t-27 -11h-150q-16 0 -26.5 11t-10.5 27v244h-150q-16 0 -19 7.5z" />
|
172 |
+
<glyph unicode="" horiz-adv-x="786" d="M1 251q-1 17 0.5 33.5t3.5 36.5q2 17 3.5 35t4.5 32q7 32 15 62.5t22 57.5q10 20 22 39.5t26 38.5q5 7 10.5 12t11.5 10l22 22q11 11 24 21t28 18t32 16q16 8 33 14.5t35 13.5q34 14 76 25l1 1q22 6 41.5 8.5t38.5 2.5q29 0 55 -4.5t52 -9.5q20 -4 41.5 -7.5t45.5 -3.5h1 q14 0 30.5 2.5t32.5 2.5q12 0 22 -3t16 -12q11 -15 12.5 -35t-0.5 -37t-4 -34.5t1 -35.5q2 -11 5.5 -19t7.5 -18q4 -9 5.5 -19.5t3.5 -20.5q9 -51 7.5 -95.5t-11.5 -83t-27.5 -72.5t-39.5 -65q-18 -24 -38.5 -47.5t-45 -44.5t-54 -38t-65.5 -29q-37 -13 -77.5 -16.5 t-77.5 -5.5h-15q-51 0 -95 8t-94 8h-2q-17 0 -37.5 -5t-40.5 -6h-1q-18 0 -32 8.5t-21 20.5q-10 17 -8.5 35.5t6.5 33.5t5 32.5t-2.5 37t-6 39.5t-4.5 40z" />
|
173 |
+
<glyph unicode="" horiz-adv-x="1000" />
|
174 |
+
</font>
|
175 |
+
</defs></svg>
|
app/view/admin/font/fontawesome-webfont.svgz
ADDED
Binary file
|
app/view/admin/font/fontawesome-webfont.ttf
ADDED
Binary file
|
app/view/admin/font/fontawesome-webfont.woff
ADDED
Binary file
|
app/view/admin/img/admin-bar-sprite.png
ADDED
Binary file
|
{img → app/view/admin/img}/admin-menu.png
RENAMED
File without changes
|
{img → app/view/admin/img}/ajax-loader.gif
RENAMED
File without changes
|
app/view/admin/img/color-picker-default.png
ADDED
Binary file
|
{img → app/view/admin/img}/color-picker.png
RENAMED
File without changes
|
{img → app/view/admin/img}/colorpicker_background.png
RENAMED
File without changes
|
{img → app/view/admin/img}/colorpicker_hex.png
RENAMED
File without changes
|
{img → app/view/admin/img}/colorpicker_hsb_b.png
RENAMED
File without changes
|
{img → app/view/admin/img}/colorpicker_hsb_h.png
RENAMED
File without changes
|
{img → app/view/admin/img}/colorpicker_hsb_s.png
RENAMED
File without changes
|
{img → app/view/admin/img}/colorpicker_indic.gif
RENAMED
File without changes
|
{img → app/view/admin/img}/colorpicker_overlay.png
RENAMED
File without changes
|
{img → app/view/admin/img}/colorpicker_rgb_b.png
RENAMED
File without changes
|
{img → app/view/admin/img}/colorpicker_rgb_g.png
RENAMED
File without changes
|
{img → app/view/admin/img}/colorpicker_rgb_r.png
RENAMED
File without changes
|
{img → app/view/admin/img}/colorpicker_select.gif
RENAMED
File without changes
|
{img → app/view/admin/img}/colorpicker_submit.png
RENAMED
File without changes
|
{img → app/view/admin/img}/custom_b.png
RENAMED
File without changes
|
{img → app/view/admin/img}/custom_background.png
RENAMED
File without changes
|
{img → app/view/admin/img}/custom_bl.png
RENAMED
File without changes
|
{img → app/view/admin/img}/custom_br.png
RENAMED
File without changes
|
{img → app/view/admin/img}/custom_hex.png
RENAMED
File without changes
|
{img → app/view/admin/img}/custom_hsb_b.png
RENAMED
File without changes
|
{img → app/view/admin/img}/custom_hsb_h.png
RENAMED
File without changes
|
{img → app/view/admin/img}/custom_hsb_s.png
RENAMED
File without changes
|
{img → app/view/admin/img}/custom_indic.gif
RENAMED
File without changes
|
{img → app/view/admin/img}/custom_l.png
RENAMED
File without changes
|
{img → app/view/admin/img}/custom_r.png
RENAMED
File without changes
|
{img → app/view/admin/img}/custom_rgb_b.png
RENAMED
File without changes
|
{img → app/view/admin/img}/custom_rgb_g.png
RENAMED
File without changes
|
{img → app/view/admin/img}/custom_rgb_r.png
RENAMED
File without changes
|
{img → app/view/admin/img}/custom_submit.png
RENAMED
File without changes
|
{img → app/view/admin/img}/custom_t.png
RENAMED
File without changes
|
{img → app/view/admin/img}/custom_tl.png
RENAMED
File without changes
|
{img → app/view/admin/img}/custom_tr.png
RENAMED
File without changes
|
{img → app/view/admin/img}/datepicker_b.png
RENAMED
File without changes
|
{img → app/view/admin/img}/datepicker_bl.png
RENAMED
File without changes
|
{img → app/view/admin/img}/datepicker_br.png
RENAMED
File without changes
|
{img → app/view/admin/img}/datepicker_l.png
RENAMED
File without changes
|
{img → app/view/admin/img}/datepicker_r.png
RENAMED
File without changes
|
{img → app/view/admin/img}/datepicker_t.png
RENAMED
File without changes
|
{img → app/view/admin/img}/datepicker_tl.png
RENAMED
File without changes
|
{img → app/view/admin/img}/datepicker_tr.png
RENAMED
File without changes
|
{img → app/view/admin/img}/field.png
RENAMED
File without changes
|
{img → app/view/admin/img}/icon-close.png
RENAMED
File without changes
|
{img → app/view/admin/img}/indicator.gif
RENAMED
File without changes
|
app/view/admin/img/logo.png
ADDED
Binary file
|
{img → app/view/admin/img}/slider.png
RENAMED
File without changes
|
app/view/{import.php → admin/import.php}
RENAMED
File without changes
|
{js → app/view/admin/js}/add_new_event.js
RENAMED
@@ -1,5 +1,58 @@
|
|
1 |
// Global Variables
|
2 |
-
var ai1ec_geocoder, ai1ec_default_location, ai1ec_myOptions, ai1ec_map, ai1ec_marker;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3 |
|
4 |
/**
|
5 |
* Given a location, update the address field with a reformatted version,
|
@@ -14,14 +67,14 @@ var ai1ec_update_address = function( result ) {
|
|
14 |
ai1ec_marker.setPosition( result.geometry.location );
|
15 |
jQuery( '#ai1ec_address' ).val( result.formatted_address );
|
16 |
|
17 |
-
var street_number = '',
|
18 |
-
|
19 |
-
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
for( var i = 0; i < result.address_components.length; i++ ) {
|
26 |
switch( result.address_components[i].types[0] ) {
|
27 |
case 'street_number':
|
@@ -209,17 +262,17 @@ var ai1ec_apply_js_on_repeat_block = function() {
|
|
209 |
};
|
210 |
|
211 |
var ai1ec_show_repeat_tabs = function( data, post_ajax_func ) {
|
212 |
-
jQuery.blockUI( {
|
213 |
message: '<div class="ai1ec-repeat-box-loading"></div>',
|
214 |
-
css: {
|
215 |
width: '358px',
|
216 |
border: '0',
|
217 |
background: 'transparent',
|
218 |
cursor: 'normal'
|
219 |
}
|
220 |
});
|
221 |
-
jQuery.post(
|
222 |
-
ajaxurl,
|
223 |
data,
|
224 |
function( response ) {
|
225 |
if( response.error ) {
|
@@ -229,9 +282,9 @@ var ai1ec_show_repeat_tabs = function( data, post_ajax_func ) {
|
|
229 |
jQuery.unblockUI();
|
230 |
} else {
|
231 |
// display the form
|
232 |
-
jQuery.blockUI( {
|
233 |
message: response.message,
|
234 |
-
css: {
|
235 |
width: '358px',
|
236 |
border: '0',
|
237 |
background: 'transparent',
|
@@ -261,7 +314,6 @@ var isUrl = function( s ) {
|
|
261 |
return regexp.test(s);
|
262 |
};
|
263 |
|
264 |
-
|
265 |
// ====================
|
266 |
// = jQuery DOM Ready =
|
267 |
// ====================
|
@@ -276,13 +328,13 @@ jQuery( function( $ ){
|
|
276 |
var $parent = $( this ).parent().parent();
|
277 |
// disable the update button
|
278 |
$button.attr( 'disabled', true );
|
279 |
-
|
280 |
// create the data to send
|
281 |
var data = {
|
282 |
action: 'ai1ec_disable_notification',
|
283 |
note: false
|
284 |
};
|
285 |
-
|
286 |
$.post( ajaxurl, data, function( response ) {
|
287 |
if( response.error ) {
|
288 |
// tell the user that there is an error
|
@@ -323,7 +375,7 @@ jQuery( function( $ ){
|
|
323 |
now: now
|
324 |
}
|
325 |
$.timespan( data );
|
326 |
-
|
327 |
var exdate = $( "#ai1ec_exdate" ).val();
|
328 |
var dp_date = null;
|
329 |
var _clear_dp = false;
|
@@ -338,7 +390,7 @@ jQuery( function( $ ){
|
|
338 |
_span_html += _year + '-' + _month + '-' + _day + ',';
|
339 |
_month = _month.charAt(0) == '0' ? ( '0' + ( parseInt( _month.charAt( 1 ) ) - 1 ) )
|
340 |
: ( parseInt( _month ) - 1 )
|
341 |
-
|
342 |
dp_date.push( new Date( _year, _month, _day ) );
|
343 |
});
|
344 |
_span_html = _span_html.slice( 0, _span_html.length - 1 );
|
@@ -370,11 +422,11 @@ jQuery( function( $ ){
|
|
370 |
}
|
371 |
}
|
372 |
});
|
373 |
-
|
374 |
if( _clear_dp ) {
|
375 |
$( '#widgetCalendar' ).DatePickerClear();
|
376 |
}
|
377 |
-
|
378 |
var state = false;
|
379 |
$( '#widgetField > a, #widgetField > span, #ai1ec_exclude_date_label' ).bind( 'click', function() {
|
380 |
$('#widgetCalendar').stop().animate( { height: state ? 0 : $( '#widgetCalendar div.datepicker' ).get( 0 ).offsetHeight }, 500 );
|
@@ -407,54 +459,68 @@ jQuery( function( $ ){
|
|
407 |
ai1ec_map = new google.maps.Map( $( '#ai1ec_map_canvas' ).get(0), ai1ec_myOptions );
|
408 |
ai1ec_marker = new google.maps.Marker({ map: ai1ec_map });
|
409 |
|
410 |
-
|
411 |
-
|
412 |
-
|
413 |
-
|
414 |
-
|
415 |
-
|
416 |
-
|
417 |
-
|
418 |
-
minChars: 3,
|
419 |
-
cacheLength: 50,
|
420 |
-
width: 300,
|
421 |
-
scroll: true,
|
422 |
-
scrollHeight: 330,
|
423 |
-
region: ai1ec_add_new_event.region
|
424 |
-
}
|
425 |
-
).result(
|
426 |
-
function( _event, _data ) {
|
427 |
-
if( _data ) {
|
428 |
-
ai1ec_update_address( _data );
|
429 |
}
|
430 |
-
}
|
431 |
-
|
432 |
-
|
433 |
-
|
434 |
-
|
435 |
-
|
436 |
-
|
437 |
-
|
438 |
-
|
439 |
-
|
440 |
-
|
441 |
-
|
442 |
-
|
443 |
-
|
444 |
-
|
445 |
-
|
446 |
-
|
447 |
-
|
448 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
449 |
}
|
450 |
-
|
451 |
-
|
452 |
}
|
453 |
-
|
454 |
-
|
455 |
-
|
456 |
-
|
457 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
458 |
// Toggle the visibility of google map on checkbox click
|
459 |
$( '#ai1ec_google_map' ).click( function() {
|
460 |
if( $( this ).is( ':checked' ) ) {
|
@@ -469,6 +535,41 @@ jQuery( function( $ ){
|
|
469 |
}
|
470 |
});
|
471 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
472 |
ai1ec_selector( '#ai1ec_weekly_date_select' );
|
473 |
ai1ec_selector( '#ai1ec_montly_date_select' );
|
474 |
ai1ec_selector( '#ai1ec_yearly_date_select' );
|
@@ -491,9 +592,9 @@ jQuery( function( $ ){
|
|
491 |
if( ! $( this ).hasClass( 'ai1ec_active' ) ) {
|
492 |
var $active_tab = $( '.ai1ec_repeat_tabs > li > a.ai1ec_active' );
|
493 |
var $active_content = $( $active_tab.attr( 'href' ) );
|
494 |
-
|
495 |
var $becoming_active = $( $( this ).attr( 'href' ) );
|
496 |
-
|
497 |
$active_tab.removeClass( 'ai1ec_active' );
|
498 |
$active_content.hide();
|
499 |
|
@@ -538,7 +639,7 @@ jQuery( function( $ ){
|
|
538 |
rule += 'BYMONTHDAY=' + month_days + ';';
|
539 |
} else if ( monthtype == 'byday' ) {
|
540 |
byday_num = $( '#ai1ec_monthly_byday_num' ).val();
|
541 |
-
byday_weekday = $( '#ai1ec_monthly_byday_weekday' ).val();
|
542 |
rule += 'BYDAY=' + byday_num + byday_weekday + ';';
|
543 |
}
|
544 |
break;
|
@@ -586,9 +687,9 @@ jQuery( function( $ ){
|
|
586 |
rrule: rule
|
587 |
};
|
588 |
$( this ).attr( 'disabled', true );
|
589 |
-
$.post(
|
590 |
-
ajaxurl,
|
591 |
-
data,
|
592 |
function( response ) {
|
593 |
if( response.error ) {
|
594 |
if( $( '#ai1ec_is_box_repeat' ).val() == '1' ) {
|
@@ -609,53 +710,53 @@ jQuery( function( $ ){
|
|
609 |
});
|
610 |
|
611 |
// handles click on rrule text
|
612 |
-
ai1ec_click_on_ics_rule_text(
|
613 |
-
'#ai1ec_repeat_text > a',
|
614 |
-
'#ai1ec_repeat',
|
615 |
-
'#ai1ec_repeat_label',
|
616 |
-
{
|
617 |
-
action: 'ai1ec_get_repeat_box',
|
618 |
repeat: 1,
|
619 |
-
post_id: $( '#post_ID' ).val()
|
620 |
-
},
|
621 |
'ai1ec_apply_js_on_repeat_block'
|
622 |
);
|
623 |
|
624 |
// handles click on exrule text
|
625 |
-
ai1ec_click_on_ics_rule_text(
|
626 |
-
'#ai1ec_exclude_text > a',
|
627 |
-
'#ai1ec_exclude',
|
628 |
-
'#ai1ec_exclude_label',
|
629 |
-
{
|
630 |
-
action: 'ai1ec_get_repeat_box',
|
631 |
repeat: 0,
|
632 |
-
post_id: $( '#post_ID' ).val()
|
633 |
-
},
|
634 |
'ai1ec_apply_js_on_repeat_block'
|
635 |
);
|
636 |
|
637 |
// handles click on repeat checkbox
|
638 |
-
ai1ec_click_on_checkbox(
|
639 |
-
'#ai1ec_repeat',
|
640 |
-
'#ai1ec_repeat_text > a',
|
641 |
-
'#ai1ec_repeat_label',
|
642 |
-
{
|
643 |
-
action: 'ai1ec_get_repeat_box',
|
644 |
repeat: 1,
|
645 |
-
post_id: $( '#post_ID' ).val()
|
646 |
},
|
647 |
'ai1ec_apply_js_on_repeat_block'
|
648 |
);
|
649 |
|
650 |
// handles click on exclude checkbox
|
651 |
-
ai1ec_click_on_checkbox(
|
652 |
-
'#ai1ec_exclude',
|
653 |
-
'#ai1ec_exclude_text > a',
|
654 |
-
'#ai1ec_exclude_label',
|
655 |
-
{
|
656 |
-
action: 'ai1ec_get_repeat_box',
|
657 |
repeat: 0,
|
658 |
-
post_id: $( '#post_ID' ).val()
|
659 |
},
|
660 |
'ai1ec_apply_js_on_repeat_block'
|
661 |
);
|
@@ -732,8 +833,8 @@ jQuery( function( $ ){
|
|
732 |
feed_tags: $( '#ai1ec_feed_tags' ).val()
|
733 |
};
|
734 |
// make an ajax call to save the new feed
|
735 |
-
$.post(
|
736 |
-
ajaxurl,
|
737 |
data,
|
738 |
function( response ) {
|
739 |
// restore add button
|
1 |
// Global Variables
|
2 |
+
var ai1ec_geocoder, ai1ec_default_location, ai1ec_myOptions, ai1ec_map, ai1ec_marker, ai1ec_marker_draggable;
|
3 |
+
|
4 |
+
/**
|
5 |
+
*
|
6 |
+
* converts commas to dots as in some regions (Europe for example) floating point numbers are defined with a comma instead of a dot
|
7 |
+
*
|
8 |
+
*/
|
9 |
+
var ai1ec_convert_commas_to_dots_for_coordinates = function() {
|
10 |
+
if ( jQuery( '#ai1ec_input_coordinates:checked' ).length > 0 ) {
|
11 |
+
jQuery( '#ai1ec_table_coordinates input.coordinates' ).each( function() {
|
12 |
+
this.value = AI1EC_UTILS.convert_comma_to_dot( this.value );
|
13 |
+
});
|
14 |
+
}
|
15 |
+
}
|
16 |
+
/**
|
17 |
+
* Shows the error message after the field
|
18 |
+
*
|
19 |
+
* @param Object the dom element after which we put the error
|
20 |
+
*
|
21 |
+
* @param the error message
|
22 |
+
*
|
23 |
+
*/
|
24 |
+
var ai1ec_show_error_message_after_element = function( el, error_message ) {
|
25 |
+
// Create the element to append in case of error
|
26 |
+
var error = jQuery( '<div />',
|
27 |
+
{
|
28 |
+
text : error_message,
|
29 |
+
class : "ai1ec-error"
|
30 |
+
}
|
31 |
+
);
|
32 |
+
// Insert error message
|
33 |
+
jQuery( el ).after( error );
|
34 |
+
}
|
35 |
+
/**
|
36 |
+
*
|
37 |
+
* prevent default actions and stop immediate propagation if the publish button was clicked and
|
38 |
+
* gives focus to the passed element
|
39 |
+
*
|
40 |
+
* @param Object the event object
|
41 |
+
*
|
42 |
+
* @param Object the element to focus
|
43 |
+
*
|
44 |
+
*/
|
45 |
+
var ai1ec_prevent_actions_and_focus_on_errors = function( e, el ) {
|
46 |
+
// If the validation was triggered by clicking publish
|
47 |
+
if ( e.target.id === 'publish' ) {
|
48 |
+
// Prevent other events from firing
|
49 |
+
e.stopImmediatePropagation();
|
50 |
+
// Prevent the submit
|
51 |
+
e.preventDefault();
|
52 |
+
}
|
53 |
+
// Focus on the first field that has an error
|
54 |
+
jQuery( el ).focus();
|
55 |
+
}
|
56 |
|
57 |
/**
|
58 |
* Given a location, update the address field with a reformatted version,
|
67 |
ai1ec_marker.setPosition( result.geometry.location );
|
68 |
jQuery( '#ai1ec_address' ).val( result.formatted_address );
|
69 |
|
70 |
+
var street_number = '',
|
71 |
+
street_name = '',
|
72 |
+
city = '',
|
73 |
+
state = '',
|
74 |
+
postal_code = 0,
|
75 |
+
country = 0,
|
76 |
+
province = '';
|
77 |
+
|
78 |
for( var i = 0; i < result.address_components.length; i++ ) {
|
79 |
switch( result.address_components[i].types[0] ) {
|
80 |
case 'street_number':
|
262 |
};
|
263 |
|
264 |
var ai1ec_show_repeat_tabs = function( data, post_ajax_func ) {
|
265 |
+
jQuery.blockUI( {
|
266 |
message: '<div class="ai1ec-repeat-box-loading"></div>',
|
267 |
+
css: {
|
268 |
width: '358px',
|
269 |
border: '0',
|
270 |
background: 'transparent',
|
271 |
cursor: 'normal'
|
272 |
}
|
273 |
});
|
274 |
+
jQuery.post(
|
275 |
+
ajaxurl,
|
276 |
data,
|
277 |
function( response ) {
|
278 |
if( response.error ) {
|
282 |
jQuery.unblockUI();
|
283 |
} else {
|
284 |
// display the form
|
285 |
+
jQuery.blockUI( {
|
286 |
message: response.message,
|
287 |
+
css: {
|
288 |
width: '358px',
|
289 |
border: '0',
|
290 |
background: 'transparent',
|
314 |
return regexp.test(s);
|
315 |
};
|
316 |
|
|
|
317 |
// ====================
|
318 |
// = jQuery DOM Ready =
|
319 |
// ====================
|
328 |
var $parent = $( this ).parent().parent();
|
329 |
// disable the update button
|
330 |
$button.attr( 'disabled', true );
|
331 |
+
|
332 |
// create the data to send
|
333 |
var data = {
|
334 |
action: 'ai1ec_disable_notification',
|
335 |
note: false
|
336 |
};
|
337 |
+
|
338 |
$.post( ajaxurl, data, function( response ) {
|
339 |
if( response.error ) {
|
340 |
// tell the user that there is an error
|
375 |
now: now
|
376 |
}
|
377 |
$.timespan( data );
|
378 |
+
|
379 |
var exdate = $( "#ai1ec_exdate" ).val();
|
380 |
var dp_date = null;
|
381 |
var _clear_dp = false;
|
390 |
_span_html += _year + '-' + _month + '-' + _day + ',';
|
391 |
_month = _month.charAt(0) == '0' ? ( '0' + ( parseInt( _month.charAt( 1 ) ) - 1 ) )
|
392 |
: ( parseInt( _month ) - 1 )
|
393 |
+
|
394 |
dp_date.push( new Date( _year, _month, _day ) );
|
395 |
});
|
396 |
_span_html = _span_html.slice( 0, _span_html.length - 1 );
|
422 |
}
|
423 |
}
|
424 |
});
|
425 |
+
|
426 |
if( _clear_dp ) {
|
427 |
$( '#widgetCalendar' ).DatePickerClear();
|
428 |
}
|
429 |
+
|
430 |
var state = false;
|
431 |
$( '#widgetField > a, #widgetField > span, #ai1ec_exclude_date_label' ).bind( 'click', function() {
|
432 |
$('#widgetCalendar').stop().animate( { height: state ? 0 : $( '#widgetCalendar div.datepicker' ).get( 0 ).offsetHeight }, 500 );
|
459 |
ai1ec_map = new google.maps.Map( $( '#ai1ec_map_canvas' ).get(0), ai1ec_myOptions );
|
460 |
ai1ec_marker = new google.maps.Marker({ map: ai1ec_map });
|
461 |
|
462 |
+
if( ! ai1ec_add_new_event.disable_autocompletion ) {
|
463 |
+
// This is the only way to stop the autocomplete from firing when the
|
464 |
+
// coordinates checkbox is checked. The new jQuery UI autocomplete
|
465 |
+
// supports the method .autocomplete( "disable" ) but not this version.
|
466 |
+
$( '#ai1ec_address' )
|
467 |
+
.bind( "keypress keyup keydown change", function( e ) {
|
468 |
+
if( $( '#ai1ec_input_coordinates:checked' ).length ) {
|
469 |
+
e.stopImmediatePropagation();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
470 |
}
|
471 |
+
})
|
472 |
+
// Initialize geo_autocomplete plugin
|
473 |
+
.geo_autocomplete(
|
474 |
+
new google.maps.Geocoder,
|
475 |
+
{
|
476 |
+
selectFirst: false,
|
477 |
+
minChars: 3,
|
478 |
+
cacheLength: 50,
|
479 |
+
width: 300,
|
480 |
+
scroll: true,
|
481 |
+
scrollHeight: 330,
|
482 |
+
region: ai1ec_add_new_event.region
|
483 |
+
}
|
484 |
+
)
|
485 |
+
.result(
|
486 |
+
function( _event, _data ) {
|
487 |
+
if( _data ) {
|
488 |
+
ai1ec_update_address( _data );
|
489 |
+
}
|
490 |
+
}
|
491 |
+
)
|
492 |
+
// Each time user changes address field, reformat field and update map.
|
493 |
+
.change(
|
494 |
+
function() {
|
495 |
+
// Position map based on provided address value
|
496 |
+
if( $( this ).val().length > 0 ) {
|
497 |
+
var address = $( this ).val();
|
498 |
+
|
499 |
+
ai1ec_geocoder.geocode(
|
500 |
+
{
|
501 |
+
'address': address,
|
502 |
+
'region': ai1ec_add_new_event.region
|
503 |
+
},
|
504 |
+
function( results, status ) {
|
505 |
+
if( status == google.maps.GeocoderStatus.OK ) {
|
506 |
+
ai1ec_update_address( results[0] );
|
507 |
+
}
|
508 |
}
|
509 |
+
);
|
510 |
+
}
|
511 |
}
|
512 |
+
);
|
513 |
+
}
|
514 |
+
// If the coordinates checkbox is not checked
|
515 |
+
if( $( '#ai1ec_input_coordinates:checked' ).length === 0 ) {
|
516 |
+
// Hide the table (i hide things in js for progressive enhancement reasons)
|
517 |
+
$( '#ai1ec_table_coordinates' ).css( { visibility : 'hidden' } );
|
518 |
+
// Trigger the change event on the address to show the mep
|
519 |
+
$( '#ai1ec_address' ).change();
|
520 |
+
} else {
|
521 |
+
// If the checkbox is checked, show the map using the coordinates
|
522 |
+
ai1ec_update_map_from_coordinates();
|
523 |
+
}
|
524 |
// Toggle the visibility of google map on checkbox click
|
525 |
$( '#ai1ec_google_map' ).click( function() {
|
526 |
if( $( this ).is( ':checked' ) ) {
|
535 |
}
|
536 |
});
|
537 |
|
538 |
+
// Hide / Show the coordinates table when clicking the checkbox
|
539 |
+
$( '#ai1ec_input_coordinates' ).change( function() {
|
540 |
+
// If the checkbox is checked
|
541 |
+
if( this.checked === true ) {
|
542 |
+
$( '#ai1ec_table_coordinates' ).css( { visibility : 'visible' } );
|
543 |
+
} else {
|
544 |
+
// Hide the table
|
545 |
+
$( '#ai1ec_table_coordinates' ).css( { visibility : 'hidden' } );
|
546 |
+
// Erase the input fields
|
547 |
+
$( '#ai1ec_table_coordinates input' ).val( '' );
|
548 |
+
// Clean up error messages
|
549 |
+
$( 'div.ai1ec-error' ).remove();
|
550 |
+
}
|
551 |
+
});
|
552 |
+
// Validate the coordinates when clicking Publish
|
553 |
+
$( '#publish' ).click( function( e ) {
|
554 |
+
if ( ai1ec_check_lat_long_fields_filled_when_publishing_event( e ) === true ) {
|
555 |
+
// Convert commas to dots
|
556 |
+
ai1ec_convert_commas_to_dots_for_coordinates();
|
557 |
+
// Check that fields are ok and there are no errors
|
558 |
+
ai1ec_check_lat_long_ok_for_search( e );
|
559 |
+
}
|
560 |
+
});
|
561 |
+
|
562 |
+
$( 'input.coordinates' ).blur ( function( e ) {
|
563 |
+
// Convert commas to dots
|
564 |
+
ai1ec_convert_commas_to_dots_for_coordinates();
|
565 |
+
// Check if the coordinates are valid.
|
566 |
+
var valid = ai1ec_check_lat_long_ok_for_search( e );
|
567 |
+
// If they are valid, update the map.
|
568 |
+
if( valid === true ) {
|
569 |
+
ai1ec_update_map_from_coordinates();
|
570 |
+
}
|
571 |
+
});
|
572 |
+
|
573 |
ai1ec_selector( '#ai1ec_weekly_date_select' );
|
574 |
ai1ec_selector( '#ai1ec_montly_date_select' );
|
575 |
ai1ec_selector( '#ai1ec_yearly_date_select' );
|
592 |
if( ! $( this ).hasClass( 'ai1ec_active' ) ) {
|
593 |
var $active_tab = $( '.ai1ec_repeat_tabs > li > a.ai1ec_active' );
|
594 |
var $active_content = $( $active_tab.attr( 'href' ) );
|
595 |
+
|
596 |
var $becoming_active = $( $( this ).attr( 'href' ) );
|
597 |
+
|
598 |
$active_tab.removeClass( 'ai1ec_active' );
|
599 |
$active_content.hide();
|
600 |
|
639 |
rule += 'BYMONTHDAY=' + month_days + ';';
|
640 |
} else if ( monthtype == 'byday' ) {
|
641 |
byday_num = $( '#ai1ec_monthly_byday_num' ).val();
|
642 |
+
byday_weekday = $( '#ai1ec_monthly_byday_weekday' ).val();
|
643 |
rule += 'BYDAY=' + byday_num + byday_weekday + ';';
|
644 |
}
|
645 |
break;
|
687 |
rrule: rule
|
688 |
};
|
689 |
$( this ).attr( 'disabled', true );
|
690 |
+
$.post(
|
691 |
+
ajaxurl,
|
692 |
+
data,
|
693 |
function( response ) {
|
694 |
if( response.error ) {
|
695 |
if( $( '#ai1ec_is_box_repeat' ).val() == '1' ) {
|
710 |
});
|
711 |
|
712 |
// handles click on rrule text
|
713 |
+
ai1ec_click_on_ics_rule_text(
|
714 |
+
'#ai1ec_repeat_text > a',
|
715 |
+
'#ai1ec_repeat',
|
716 |
+
'#ai1ec_repeat_label',
|
717 |
+
{
|
718 |
+
action: 'ai1ec_get_repeat_box',
|
719 |
repeat: 1,
|
720 |
+
post_id: $( '#post_ID' ).val()
|
721 |
+
},
|
722 |
'ai1ec_apply_js_on_repeat_block'
|
723 |
);
|
724 |
|
725 |
// handles click on exrule text
|
726 |
+
ai1ec_click_on_ics_rule_text(
|
727 |
+
'#ai1ec_exclude_text > a',
|
728 |
+
'#ai1ec_exclude',
|
729 |
+
'#ai1ec_exclude_label',
|
730 |
+
{
|
731 |
+
action: 'ai1ec_get_repeat_box',
|
732 |
repeat: 0,
|
733 |
+
post_id: $( '#post_ID' ).val()
|
734 |
+
},
|
735 |
'ai1ec_apply_js_on_repeat_block'
|
736 |
);
|
737 |
|
738 |
// handles click on repeat checkbox
|
739 |
+
ai1ec_click_on_checkbox(
|
740 |
+
'#ai1ec_repeat',
|
741 |
+
'#ai1ec_repeat_text > a',
|
742 |
+
'#ai1ec_repeat_label',
|
743 |
+
{
|
744 |
+
action: 'ai1ec_get_repeat_box',
|
745 |
repeat: 1,
|
746 |
+
post_id: $( '#post_ID' ).val()
|
747 |
},
|
748 |
'ai1ec_apply_js_on_repeat_block'
|
749 |
);
|
750 |
|
751 |
// handles click on exclude checkbox
|
752 |
+
ai1ec_click_on_checkbox(
|
753 |
+
'#ai1ec_exclude',
|
754 |
+
'#ai1ec_exclude_text > a',
|
755 |
+
'#ai1ec_exclude_label',
|
756 |
+
{
|
757 |
+
action: 'ai1ec_get_repeat_box',
|
758 |
repeat: 0,
|
759 |
+
post_id: $( '#post_ID' ).val()
|
760 |
},
|
761 |
'ai1ec_apply_js_on_repeat_block'
|
762 |
);
|
833 |
feed_tags: $( '#ai1ec_feed_tags' ).val()
|
834 |
};
|
835 |
// make an ajax call to save the new feed
|
836 |
+
$.post(
|
837 |
+
ajaxurl,
|
838 |
data,
|
839 |
function( response ) {
|
840 |
// restore add button
|
{js → app/view/admin/js}/colorpicker.js
RENAMED
@@ -504,7 +504,8 @@ jQuery( function( $ ) {
|
|
504 |
'<li style="color: #0ba;" class="color-17"></li>' + // 17
|
505 |
'<li style="color: #26d;" class="color-18"></li>' + // 18
|
506 |
'<li style="color: #777;" class="color-19"></li>' + // 19
|
507 |
-
'<li style="color: #aaa;" class="color-20"></li>'
|
|
|
508 |
);
|
509 |
var more_color = $( '<li class="select-more-colors">More colors</li>' );
|
510 |
$( more_color ).ColorPicker({
|
@@ -523,11 +524,17 @@ jQuery( function( $ ) {
|
|
523 |
}
|
524 |
});
|
525 |
// Add click event for each font style
|
526 |
-
li_els.click( function() {
|
527 |
-
|
528 |
-
|
529 |
-
|
530 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
531 |
});
|
532 |
|
533 |
// append li elements to the ul holder
|
@@ -540,8 +547,8 @@ jQuery( function( $ ) {
|
|
540 |
position: 'absolute',
|
541 |
top: top + 'px',
|
542 |
left: left + 'px',
|
543 |
-
width: '
|
544 |
-
height: '
|
545 |
'z-index': 1,
|
546 |
background: '#fff',
|
547 |
border: '1px solid #ccc'
|
@@ -550,6 +557,12 @@ jQuery( function( $ ) {
|
|
550 |
$( document ).bind( 'mousedown', {ls: ul_el}, hide_color_selector );
|
551 |
});
|
552 |
|
|
|
|
|
|
|
|
|
|
|
|
|
553 |
var rgb2hex = function( rgb ) {
|
554 |
rgb = rgb.match( /^rgb\((\d+),\s*(\d+),\s*(\d+)\)$/ );
|
555 |
return "#" + hex( rgb[1] ) + hex( rgb[2] ) + hex( rgb[3] );
|
504 |
'<li style="color: #0ba;" class="color-17"></li>' + // 17
|
505 |
'<li style="color: #26d;" class="color-18"></li>' + // 18
|
506 |
'<li style="color: #777;" class="color-19"></li>' + // 19
|
507 |
+
'<li style="color: #aaa;" class="color-20"></li>' + // 20
|
508 |
+
'<li style="color: #aab;" class="color-21"></li>' // 21
|
509 |
);
|
510 |
var more_color = $( '<li class="select-more-colors">More colors</li>' );
|
511 |
$( more_color ).ColorPicker({
|
524 |
}
|
525 |
});
|
526 |
// Add click event for each font style
|
527 |
+
li_els.click( function() {
|
528 |
+
if( rgb2hex( $(this).css( 'color' ) ) != "#aaaabb" ){
|
529 |
+
$( '#tag-color-background' ).css( 'background-color', $(this).css( 'color' ) );
|
530 |
+
$( '#tag-color-value' ).val( rgb2hex( $(this).css( 'color' ) ) );
|
531 |
+
ul_el.remove();
|
532 |
+
}
|
533 |
+
else{
|
534 |
+
$( '#tag-color-background' ).css( 'background-color', "" );
|
535 |
+
$( '#tag-color-value' ).val( "" );
|
536 |
+
ul_el.remove();
|
537 |
+
}
|
538 |
});
|
539 |
|
540 |
// append li elements to the ul holder
|
547 |
position: 'absolute',
|
548 |
top: top + 'px',
|
549 |
left: left + 'px',
|
550 |
+
width: '105px',
|
551 |
+
height: '70px',
|
552 |
'z-index': 1,
|
553 |
background: '#fff',
|
554 |
border: '1px solid #ccc'
|
557 |
$( document ).bind( 'mousedown', {ls: ul_el}, hide_color_selector );
|
558 |
});
|
559 |
|
560 |
+
// remove category color click
|
561 |
+
$( "#tag-color-value-remove" ).click(function(){
|
562 |
+
$( "#tag-color-background" ).css( "background-color","" );
|
563 |
+
$( "#tag-color-value" ).val("")
|
564 |
+
});
|
565 |
+
|
566 |
var rgb2hex = function( rgb ) {
|
567 |
rgb = rgb.match( /^rgb\((\d+),\s*(\d+),\s*(\d+)\)$/ );
|
568 |
return "#" + hex( rgb[1] ) + hex( rgb[2] ) + hex( rgb[3] );
|
{js → app/view/admin/js}/datepicker.js
RENAMED
File without changes
|
{js → app/view/admin/js}/element-selector.js
RENAMED
File without changes
|
{js → app/view/admin/js}/geo_autocomplete.js
RENAMED
File without changes
|
{js → app/view/admin/js}/jquery-tools-1.2.5.min.js
RENAMED
File without changes
|
{js → app/view/admin/js}/jquery.autocomplete_geomod.js
RENAMED
File without changes
|
{js → app/view/admin/js}/jquery.blockUI.js
RENAMED
File without changes
|
{js → app/view/admin/js}/jquery.calendrical.js
RENAMED
File without changes
|
{js → app/view/admin/js}/jquery.inputdate.js
RENAMED
File without changes
|
{js → app/view/admin/js}/jquery.timespan.js
RENAMED
File without changes
|
app/view/admin/js/platform-all.js
ADDED
@@ -0,0 +1,11 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
jQuery( function( $ ) {
|
2 |
+
// Disable the "Front page" option in WP General Settings.
|
3 |
+
if( $( 'body.options-reading-php' ).length ) {
|
4 |
+
function disable_front_page_option() {
|
5 |
+
$( '#page_on_front' ).attr( 'disabled', 'disabled' );
|
6 |
+
}
|
7 |
+
disable_front_page_option();
|
8 |
+
$( '#front-static-pages input:radio' ).change(disable_front_page_option);
|
9 |
+
$( '#page_on_front' ).after( '<span class="description">' + ai1ec_platform_all.page_on_front_description + '</span>' );
|
10 |
+
}
|
11 |
+
});
|
app/view/admin/js/platform.js
ADDED
@@ -0,0 +1,15 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
jQuery( function( $ ) {
|
2 |
+
// If in strict mode, hide all administrative functions other than event, user
|
3 |
+
// and media management.
|
4 |
+
if ( ai1ec_platform.strict_mode ) {
|
5 |
+
$( '#dashboard-widgets .postbox' )
|
6 |
+
.not( '#ai1ec-calendar-tasks, #dashboard_right_now' )
|
7 |
+
.remove();
|
8 |
+
$( '#adminmenu > li' )
|
9 |
+
.not( '.wp-menu-separator, #menu-dashboard, #menu-posts-ai1ec_event, #menu-media, #menu-appearance, #menu-users, #menu-settings' )
|
10 |
+
.remove();
|
11 |
+
$( '#menu-appearance > .wp-submenu li, #menu-settings > .wp-submenu li' )
|
12 |
+
.not( ':has(a[href*="all-in-one-event-calendar"])' )
|
13 |
+
.remove();
|
14 |
+
}
|
15 |
+
});
|
{js → app/view/admin/js}/settings.js
RENAMED
File without changes
|
{js → app/view/admin/js}/widget.js
RENAMED
File without changes
|
app/view/admin/less/bootstrap.less
ADDED
@@ -0,0 +1,82 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*!
|
2 |
+
* Bootstrap v2.0.2
|
3 |
+
*
|
4 |
+
* Copyright 2012 Twitter, Inc
|
5 |
+
* Licensed under the Apache License v2.0
|
6 |
+
* http://www.apache.org/licenses/LICENSE-2.0
|
7 |
+
*
|
8 |
+
* Designed and built with all the love in the world @twitter by @mdo and @fat.
|
9 |
+
*/
|
10 |
+
|
11 |
+
// Fonts
|
12 |
+
@import url("http://fonts.googleapis.com/css?family=Droid+Sans:400,700");
|
13 |
+
@import "font-awesome.less";
|
14 |
+
|
15 |
+
.thenly {
|
16 |
+
// CSS Reset
|
17 |
+
@import "reset.less";
|
18 |
+
|
19 |
+
// Core variables and mixins
|
20 |
+
@import "variables.less"; // Modify this for custom colors, font-sizes, etc
|
21 |
+
|
22 |
+
@import "mixins.less";
|
23 |
+
|
24 |
+
// Grid system and page structure
|
25 |
+
//@import "scaffolding.less";
|
26 |
+
@import "grid.less";
|
27 |
+
//@import "layouts.less";
|
28 |
+
|
29 |
+
// Base CSS
|
30 |
+
@import "type.less";
|
31 |
+
//@import "code.less";
|
32 |
+
//@import "forms.less";
|
33 |
+
//@import "tables.less";
|
34 |
+
|
35 |
+
// Components: common
|
36 |
+
//@import "sprites.less";
|
37 |
+
//@import "dropdowns.less";
|
38 |
+
//@import "wells.less";
|
39 |
+
//@import "component-animations.less";
|
40 |
+
//@import "close.less";
|
41 |
+
|
42 |
+
// Components: Buttons & Alerts
|
43 |
+
@import "buttons.less";
|
44 |
+
//@import "button-groups.less";
|
45 |
+
//@import "alerts.less"; // Note: alerts share common CSS with buttons and thus have styles in buttons.less
|
46 |
+
|
47 |
+
// Components: Nav
|
48 |
+
//@import "navs.less";
|
49 |
+
//@import "navbar.less";
|
50 |
+
//@import "breadcrumbs.less";
|
51 |
+
//@import "pagination.less";
|
52 |
+
//@import "pager.less";
|
53 |
+
|
54 |
+
// Components: Popovers
|
55 |
+
//@import "modals.less";
|
56 |
+
//@import "tooltip.less";
|
57 |
+
//@import "popovers.less";
|
58 |
+
|
59 |
+
// Components: Misc
|
60 |
+
//@import "thumbnails.less";
|
61 |
+
//@import "labels.less";
|
62 |
+
//@import "badges.less";
|
63 |
+
//@import "progress-bars.less";
|
64 |
+
//@import "accordion.less";
|
65 |
+
//@import "carousel.less";
|
66 |
+
@import "hero-unit.less";
|
67 |
+
|
68 |
+
// Utility classes
|
69 |
+
@import "utilities.less"; // Has to be last to override when necessary
|
70 |
+
|
71 |
+
// Adjustments.
|
72 |
+
.hero-unit {
|
73 |
+
padding: 30px;
|
74 |
+
margin-bottom: 15px;
|
75 |
+
}
|
76 |
+
.hero-unit h1 {
|
77 |
+
color: @headingsColor;
|
78 |
+
}
|
79 |
+
hr {
|
80 |
+
margin: 14px 0;
|
81 |
+
}
|
82 |
+
}
|
app/view/admin/less/build-css.sh
ADDED
@@ -0,0 +1,10 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
#!/bin/bash
|
2 |
+
|
3 |
+
LESSC="lessc --yui-compress --include-path=."
|
4 |
+
|
5 |
+
if which -s lessc; then
|
6 |
+
$LESSC bootstrap.less > ../css/bootstrap.min.css
|
7 |
+
else
|
8 |
+
echo 'Error: lessc not found. Install Node.js then: npm install -g less';
|
9 |
+
exit 1;
|
10 |
+
fi
|
app/view/admin/less/button-groups.less
ADDED
@@ -0,0 +1,172 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
// BUTTON GROUPS
|
2 |
+
// -------------
|
3 |
+
|
4 |
+
|
5 |
+
// Make the div behave like a button
|
6 |
+
.btn-group {
|
7 |
+
position: relative;
|
8 |
+
.clearfix(); // clears the floated buttons
|
9 |
+
.ie7-restore-left-whitespace();
|
10 |
+
}
|
11 |
+
|
12 |
+
// Space out series of button groups
|
13 |
+
.btn-group + .btn-group {
|
14 |
+
margin-left: 5px;
|
15 |
+
}
|
16 |
+
|
17 |
+
// Optional: Group multiple button groups together for a toolbar
|
18 |
+
.btn-toolbar {
|
19 |
+
margin-top: @baseLineHeight / 2;
|
20 |
+
margin-bottom: @baseLineHeight / 2;
|
21 |
+
.btn-group {
|
22 |
+
display: inline-block;
|
23 |
+
.ie7-inline-block();
|
24 |
+
}
|
25 |
+
}
|
26 |
+
|
27 |
+
// Float them, remove border radius, then re-add to first and last elements
|
28 |
+
.btn-group .btn {
|
29 |
+
position: relative;
|
30 |
+
float: left;
|
31 |
+
margin-left: -1px;
|
32 |
+
.border-radius(0);
|
33 |
+
}
|
34 |
+
// Set corners individual because sometimes a single button can be in a .btn-group and we need :first-child and :last-child to both match
|
35 |
+
.btn-group .btn:first-child {
|
36 |
+
margin-left: 0;
|
37 |
+
-webkit-border-top-left-radius: 4px;
|
38 |
+
-moz-border-radius-topleft: 4px;
|
39 |
+
border-top-left-radius: 4px;
|
40 |
+
-webkit-border-bottom-left-radius: 4px;
|
41 |
+
-moz-border-radius-bottomleft: 4px;
|
42 |
+
border-bottom-left-radius: 4px;
|
43 |
+
}
|
44 |
+
.btn-group .btn:last-child,
|
45 |
+
.btn-group .dropdown-toggle {
|
46 |
+
-webkit-border-top-right-radius: 4px;
|
47 |
+
-moz-border-radius-topright: 4px;
|
48 |
+
border-top-right-radius: 4px;
|
49 |
+
-webkit-border-bottom-right-radius: 4px;
|
50 |
+
-moz-border-radius-bottomright: 4px;
|
51 |
+
border-bottom-right-radius: 4px;
|
52 |
+
}
|
53 |
+
// Reset corners for large buttons
|
54 |
+
.btn-group .btn.large:first-child {
|
55 |
+
margin-left: 0;
|
56 |
+
-webkit-border-top-left-radius: 6px;
|
57 |
+
-moz-border-radius-topleft: 6px;
|
58 |
+
border-top-left-radius: 6px;
|
59 |
+
-webkit-border-bottom-left-radius: 6px;
|
60 |
+
-moz-border-radius-bottomleft: 6px;
|
61 |
+
border-bottom-left-radius: 6px;
|
62 |
+
}
|
63 |
+
.btn-group .btn.large:last-child,
|
64 |
+
.btn-group .large.dropdown-toggle {
|
65 |
+
-webkit-border-top-right-radius: 6px;
|
66 |
+
-moz-border-radius-topright: 6px;
|
67 |
+
border-top-right-radius: 6px;
|
68 |
+
-webkit-border-bottom-right-radius: 6px;
|
69 |
+
-moz-border-radius-bottomright: 6px;
|
70 |
+
border-bottom-right-radius: 6px;
|
71 |
+
}
|
72 |
+
|
73 |
+
// On hover/focus/active, bring the proper btn to front
|
74 |
+
.btn-group .btn:hover,
|
75 |
+
.btn-group .btn:focus,
|
76 |
+
.btn-group .btn:active,
|
77 |
+
.btn-group .btn.active {
|
78 |
+
z-index: 2;
|
79 |
+
}
|
80 |
+
|
81 |
+
// On active and open, don't show outline
|
82 |
+
.btn-group .dropdown-toggle:active,
|
83 |
+
.btn-group.open .dropdown-toggle {
|
84 |
+
outline: 0;
|
85 |
+
}
|
86 |
+
|
87 |
+
|
88 |
+
|
89 |
+
// Split button dropdowns
|
90 |
+
// ----------------------
|
91 |
+
|
92 |
+
// Give the line between buttons some depth
|
93 |
+
.btn-group .dropdown-toggle {
|
94 |
+
padding-left: 8px;
|
95 |
+
padding-right: 8px;
|
96 |
+
@shadow: inset 1px 0 0 rgba(255,255,255,.125), inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05);
|
97 |
+
.box-shadow(@shadow);
|
98 |
+
*padding-top: 3px;
|
99 |
+
*padding-bottom: 3px;
|
100 |
+
}
|
101 |
+
.btn-group .btn-mini.dropdown-toggle {
|
102 |
+
padding-left: 5px;
|
103 |
+
padding-right: 5px;
|
104 |
+
*padding-top: 1px;
|
105 |
+
*padding-bottom: 1px;
|
106 |
+
}
|
107 |
+
.btn-group .btn-small.dropdown-toggle {
|
108 |
+
*padding-top: 4px;
|
109 |
+
*padding-bottom: 4px;
|
110 |
+
}
|
111 |
+
.btn-group .btn-large.dropdown-toggle {
|
112 |
+
padding-left: 12px;
|
113 |
+
padding-right: 12px;
|
114 |
+
}
|
115 |
+
|
116 |
+
.btn-group.open {
|
117 |
+
// IE7's z-index only goes to the nearest positioned ancestor, which would
|
118 |
+
// make the menu appear below buttons that appeared later on the page
|
119 |
+
*z-index: @zindexDropdown;
|
120 |
+
|
121 |
+
// Reposition menu on open and round all corners
|
122 |
+
.dropdown-menu {
|
123 |
+
display: block;
|
124 |
+
margin-top: 1px;
|
125 |
+
.border-radius(5px);
|
126 |
+
}
|
127 |
+
|
128 |
+
.dropdown-toggle {
|
129 |
+
background-image: none;
|
130 |
+
@shadow: inset 0 1px 6px rgba(0,0,0,.15), 0 1px 2px rgba(0,0,0,.05);
|
131 |
+
.box-shadow(@shadow);
|
132 |
+
}
|
133 |
+
}
|
134 |
+
|
135 |
+
// Reposition the caret
|
136 |
+
.btn .caret {
|
137 |
+
margin-top: 7px;
|
138 |
+
margin-left: 0;
|
139 |
+
}
|
140 |
+
.btn:hover .caret,
|
141 |
+
.open.btn-group .caret {
|
142 |
+
.opacity(100);
|
143 |
+
}
|
144 |
+
// Carets in other button sizes
|
145 |
+
.btn-mini .caret {
|
146 |
+
margin-top: 5px;
|
147 |
+
}
|
148 |
+
.btn-small .caret {
|
149 |
+
margin-top: 6px;
|
150 |
+
}
|
151 |
+
.btn-large .caret {
|
152 |
+
margin-top: 6px;
|
153 |
+
border-left: 5px solid transparent;
|
154 |
+
border-right: 5px solid transparent;
|
155 |
+
border-top: 5px solid @black;
|
156 |
+
}
|
157 |
+
|
158 |
+
|
159 |
+
// Account for other colors
|
160 |
+
.btn-primary,
|
161 |
+
.btn-warning,
|
162 |
+
.btn-danger,
|
163 |
+
.btn-info,
|
164 |
+
.btn-success,
|
165 |
+
.btn-inverse {
|
166 |
+
.caret {
|
167 |
+
border-top-color: @white;
|
168 |
+
border-bottom-color: @white;
|
169 |
+
.opacity(75);
|
170 |
+
}
|
171 |
+
}
|
172 |
+
|
app/view/admin/less/buttons.less
ADDED
@@ -0,0 +1,187 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
// BUTTON STYLES
|
2 |
+
// -------------
|
3 |
+
|
4 |
+
|
5 |
+
// Base styles
|
6 |
+
// --------------------------------------------------
|
7 |
+
|
8 |
+
// Core
|
9 |
+
.btn {
|
10 |
+
display: inline-block;
|
11 |
+
.ie7-inline-block();
|
12 |
+
padding: 4px 10px 4px;
|
13 |
+
margin-bottom: 0; // For input.btn
|
14 |
+
font-size: @baseFontSize;
|
15 |
+
line-height: @baseLineHeight;
|
16 |
+
color: @grayDark;
|
17 |
+
text-align: center;
|
18 |
+
text-shadow: 0 1px 1px rgba(255,255,255,.75);
|
19 |
+
vertical-align: middle;
|
20 |
+
.buttonBackground(@btnBackground, @btnBackgroundHighlight);
|
21 |
+
border: 1px solid @btnBorder;
|
22 |
+
border-bottom-color: darken(@btnBorder, 10%);
|
23 |
+
.border-radius(4px);
|
24 |
+
@shadow: inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05);
|
25 |
+
.box-shadow(@shadow);
|
26 |
+
cursor: pointer;
|
27 |
+
|
28 |
+
// Give IE7 some love
|
29 |
+
.ie7-restore-left-whitespace();
|
30 |
+
}
|
31 |
+
|
32 |
+
// Hover state
|
33 |
+
.btn:hover {
|
34 |
+
color: @grayDark;
|
35 |
+
text-decoration: none;
|
36 |
+
background-color: darken(@white, 10%);
|
37 |
+
background-position: 0 -15px;
|
38 |
+
|
39 |
+
// transition is only when going to hover, otherwise the background
|
40 |
+
// behind the gradient (there for IE<=9 fallback) gets mismatched
|
41 |
+
.transition(background-position .1s linear);
|
42 |
+
}
|
43 |
+
|
44 |
+
// Focus state for keyboard and accessibility
|
45 |
+
.btn:focus {
|
46 |
+
.tab-focus();
|
47 |
+
}
|
48 |
+
|
49 |
+
// Active state
|
50 |
+
.btn.active,
|
51 |
+
.btn:active {
|
52 |
+
background-image: none;
|
53 |
+
@shadow: inset 0 2px 4px rgba(0,0,0,.15), 0 1px 2px rgba(0,0,0,.05);
|
54 |
+
.box-shadow(@shadow);
|
55 |
+
background-color: darken(@white, 10%);
|
56 |
+
background-color: darken(@white, 15%) e("\9");
|
57 |
+
outline: 0;
|
58 |
+
}
|
59 |
+
|
60 |
+
// Disabled state
|
61 |
+
.btn.disabled,
|
62 |
+
.btn[disabled] {
|
63 |
+
cursor: default;
|
64 |
+
background-image: none;
|
65 |
+
background-color: darken(@white, 10%);
|
66 |
+
.opacity(65);
|
67 |
+
.box-shadow(none);
|
68 |
+
}
|
69 |
+
|
70 |
+
|
71 |
+
// Button Sizes
|
72 |
+
// --------------------------------------------------
|
73 |
+
|
74 |
+
// Large
|
75 |
+
.btn-large {
|
76 |
+
padding: 9px 14px;
|
77 |
+
font-size: @baseFontSize + 2px;
|
78 |
+
line-height: normal;
|
79 |
+
.border-radius(5px);
|
80 |
+
}
|
81 |
+
.btn-large [class^="icon-"] {
|
82 |
+
margin-top: 1px;
|
83 |
+
}
|
84 |
+
|
85 |
+
// Small
|
86 |
+
.btn-small {
|
87 |
+
padding: 5px 9px;
|
88 |
+
font-size: @baseFontSize - 2px;
|
89 |
+
line-height: @baseLineHeight - 2px;
|
90 |
+
}
|
91 |
+
.btn-small [class^="icon-"] {
|
92 |
+
margin-top: -1px;
|
93 |
+
}
|
94 |
+
|
95 |
+
// Mini
|
96 |
+
.btn-mini {
|
97 |
+
padding: 2px 6px;
|
98 |
+
font-size: @baseFontSize - 2px;
|
99 |
+
line-height: @baseLineHeight - 4px;
|
100 |
+
}
|
101 |
+
|
102 |
+
|
103 |
+
// Alternate buttons
|
104 |
+
// --------------------------------------------------
|
105 |
+
|
106 |
+
// Set text color
|
107 |
+
// -------------------------
|
108 |
+
.btn-primary,
|
109 |
+
.btn-primary:hover,
|
110 |
+
.btn-warning,
|
111 |
+
.btn-warning:hover,
|
112 |
+
.btn-danger,
|
113 |
+
.btn-danger:hover,
|
114 |
+
.btn-success,
|
115 |
+
.btn-success:hover,
|
116 |
+
.btn-info,
|
117 |
+
.btn-info:hover,
|
118 |
+
.btn-inverse,
|
119 |
+
.btn-inverse:hover {
|
120 |
+
text-shadow: 0 -1px 0 rgba(0,0,0,.25);
|
121 |
+
color: @white;
|
122 |
+
}
|
123 |
+
// Provide *some* extra contrast for those who can get it
|
124 |
+
.btn-primary.active,
|
125 |
+
.btn-warning.active,
|
126 |
+
.btn-danger.active,
|
127 |
+
.btn-success.active,
|
128 |
+
.btn-info.active,
|
129 |
+
.btn-inverse.active {
|
130 |
+
color: rgba(255,255,255,.75);
|
131 |
+
}
|
132 |
+
|
133 |
+
// Set the backgrounds
|
134 |
+
// -------------------------
|
135 |
+
.btn-primary {
|
136 |
+
.buttonBackground(@btnPrimaryBackground, @btnPrimaryBackgroundHighlight);
|
137 |
+
}
|
138 |
+
// Warning appears are orange
|
139 |
+
.btn-warning {
|
140 |
+
.buttonBackground(@btnWarningBackground, @btnWarningBackgroundHighlight);
|
141 |
+
}
|
142 |
+
// Danger and error appear as red
|
143 |
+
.btn-danger {
|
144 |
+
.buttonBackground(@btnDangerBackground, @btnDangerBackgroundHighlight);
|
145 |
+
}
|
146 |
+
// Success appears as green
|
147 |
+
.btn-success {
|
148 |
+
.buttonBackground(@btnSuccessBackground, @btnSuccessBackgroundHighlight);
|
149 |
+
}
|
150 |
+
// Info appears as a neutral blue
|
151 |
+
.btn-info {
|
152 |
+
.buttonBackground(@btnInfoBackground, @btnInfoBackgroundHighlight);
|
153 |
+
}
|
154 |
+
// Inverse appears as dark gray
|
155 |
+
.btn-inverse {
|
156 |
+
.buttonBackground(@btnInverseBackground, @btnInverseBackgroundHighlight);
|
157 |
+
}
|
158 |
+
|
159 |
+
|
160 |
+
// Cross-browser Jank
|
161 |
+
// --------------------------------------------------
|
162 |
+
|
163 |
+
button.btn,
|
164 |
+
input[type="submit"].btn {
|
165 |
+
|
166 |
+
// Firefox 3.6 only I believe
|
167 |
+
&::-moz-focus-inner {
|
168 |
+
padding: 0;
|
169 |
+
border: 0;
|
170 |
+
}
|
171 |
+
|
172 |
+
// IE7 has some default padding on button controls
|
173 |
+
*padding-top: 2px;
|
174 |
+
*padding-bottom: 2px;
|
175 |
+
&.btn-large {
|
176 |
+
*padding-top: 7px;
|
177 |
+
*padding-bottom: 7px;
|
178 |
+
}
|
179 |
+
&.btn-small {
|
180 |
+
*padding-top: 3px;
|
181 |
+
*padding-bottom: 3px;
|
182 |
+
}
|
183 |
+
&.btn-mini {
|
184 |
+
*padding-top: 1px;
|
185 |
+
*padding-bottom: 1px;
|
186 |
+
}
|
187 |
+
}
|
app/view/admin/less/dropdowns.less
ADDED
@@ -0,0 +1,148 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
// DROPDOWN MENUS
|
2 |
+
// --------------
|
3 |
+
|
4 |
+
// Use the .menu class on any <li> element within the topbar or ul.tabs and you'll get some superfancy dropdowns
|
5 |
+
.dropdown {
|
6 |
+
position: relative;
|
7 |
+
}
|
8 |
+
.dropdown-toggle {
|
9 |
+
// The caret makes the toggle a bit too tall in IE7
|
10 |
+
*margin-bottom: -3px;
|
11 |
+
}
|
12 |
+
.dropdown-toggle:active,
|
13 |
+
.open .dropdown-toggle {
|
14 |
+
outline: 0;
|
15 |
+
}
|
16 |
+
|
17 |
+
// Dropdown arrow/caret
|
18 |
+
// --------------------
|
19 |
+
.caret {
|
20 |
+
display: inline-block;
|
21 |
+
width: 0;
|
22 |
+
height: 0;
|
23 |
+
vertical-align: top;
|
24 |
+
border-left: 4px solid transparent;
|
25 |
+
border-right: 4px solid transparent;
|
26 |
+
border-top: 4px solid @black;
|
27 |
+
.opacity(30);
|
28 |
+
content: "";
|
29 |
+
}
|
30 |
+
|
31 |
+
// Place the caret
|
32 |
+
.dropdown .caret {
|
33 |
+
margin-top: 8px;
|
34 |
+
margin-left: 2px;
|
35 |
+
}
|
36 |
+
.dropdown:hover .caret,
|
37 |
+
.open.dropdown .caret {
|
38 |
+
.opacity(100);
|
39 |
+
}
|
40 |
+
|
41 |
+
// The dropdown menu (ul)
|
42 |
+
// ----------------------
|
43 |
+
.dropdown-menu {
|
44 |
+
position: absolute;
|
45 |
+
top: 100%;
|
46 |
+
left: 0;
|
47 |
+
z-index: @zindexDropdown;
|
48 |
+
float: left;
|
49 |
+
display: none; // none by default, but block on "open" of the menu
|
50 |
+
min-width: 160px;
|
51 |
+
padding: 4px 0;
|
52 |
+
margin: 0; // override default ul
|
53 |
+
list-style: none;
|
54 |
+
background-color: @dropdownBackground;
|
55 |
+
border-color: #ccc;
|
56 |
+
border-color: rgba(0,0,0,.2);
|
57 |
+
border-style: solid;
|
58 |
+
border-width: 1px;
|
59 |
+
.border-radius(0 0 5px 5px);
|
60 |
+
.box-shadow(0 5px 10px rgba(0,0,0,.2));
|
61 |
+
-webkit-background-clip: padding-box;
|
62 |
+
-moz-background-clip: padding;
|
63 |
+
background-clip: padding-box;
|
64 |
+
*border-right-width: 2px;
|
65 |
+
*border-bottom-width: 2px;
|
66 |
+
|
67 |
+
// Aligns the dropdown menu to right
|
68 |
+
&.pull-right {
|
69 |
+
right: 0;
|
70 |
+
left: auto;
|
71 |
+
}
|
72 |
+
|
73 |
+
// Dividers (basically an hr) within the dropdown
|
74 |
+
.divider {
|
75 |
+
.nav-divider();
|
76 |
+
}
|
77 |
+
|
78 |
+
// Links within the dropdown menu
|
79 |
+
a {
|
80 |
+
display: block;
|
81 |
+
padding: 3px 15px;
|
82 |
+
clear: both;
|
83 |
+
font-weight: normal;
|
84 |
+
line-height: @baseLineHeight;
|
85 |
+
color: @dropdownLinkColor;
|
86 |
+
white-space: nowrap;
|
87 |
+
}
|
88 |
+
}
|
89 |
+
|
90 |
+
// Hover state
|
91 |
+
// -----------
|
92 |
+
.dropdown-menu li > a:hover,
|
93 |
+
.dropdown-menu .active > a,
|
94 |
+
.dropdown-menu .active > a:hover {
|
95 |
+
color: @dropdownLinkColorHover;
|
96 |
+
text-decoration: none;
|
97 |
+
background-color: @dropdownLinkBackgroundHover;
|
98 |
+
}
|
99 |
+
|
100 |
+
// Open state for the dropdown
|
101 |
+
// ---------------------------
|
102 |
+
.dropdown.open {
|
103 |
+
// IE7's z-index only goes to the nearest positioned ancestor, which would
|
104 |
+
// make the menu appear below buttons that appeared later on the page
|
105 |
+
*z-index: @zindexDropdown;
|
106 |
+
|
107 |
+
.dropdown-toggle {
|
108 |
+
color: @white;
|
109 |
+
background: #ccc;
|
110 |
+
background: rgba(0,0,0,.3);
|
111 |
+
}
|
112 |
+
.dropdown-menu {
|
113 |
+
display: block;
|
114 |
+
}
|
115 |
+
}
|
116 |
+
|
117 |
+
// Right aligned dropdowns
|
118 |
+
.pull-right .dropdown-menu {
|
119 |
+
left: auto;
|
120 |
+
right: 0;
|
121 |
+
}
|
122 |
+
|
123 |
+
// Allow for dropdowns to go bottom up (aka, dropup-menu)
|
124 |
+
// ------------------------------------------------------
|
125 |
+
// Just add .dropup after the standard .dropdown class and you're set, bro.
|
126 |
+
// TODO: abstract this so that the navbar fixed styles are not placed here?
|
127 |
+
.dropup,
|
128 |
+
.navbar-fixed-bottom .dropdown {
|
129 |
+
// Reverse the caret
|
130 |
+
.caret {
|
131 |
+
border-top: 0;
|
132 |
+
border-bottom: 4px solid @black;
|
133 |
+
content: "\2191";
|
134 |
+
}
|
135 |
+
// Different positioning for bottom up menu
|
136 |
+
.dropdown-menu {
|
137 |
+
top: auto;
|
138 |
+
bottom: 100%;
|
139 |
+
margin-bottom: 1px;
|
140 |
+
}
|
141 |
+
}
|
142 |
+
|
143 |
+
// Typeahead
|
144 |
+
// ---------
|
145 |
+
.typeahead {
|
146 |
+
margin-top: 2px; // give it some space to breathe
|
147 |
+
.border-radius(4px);
|
148 |
+
}
|
app/view/admin/less/font-awesome.less
ADDED
@@ -0,0 +1,264 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/* Font Awesome
|
2 |
+
the iconic font designed for use with Twitter Bootstrap
|
3 |
+
-------------------------------------------------------
|
4 |
+
The full suite of pictographic icons, examples, and documentation
|
5 |
+
can be found at: http://fortawesome.github.com/Font-Awesome/
|
6 |
+
|
7 |
+
License
|
8 |
+
-------------------------------------------------------
|
9 |
+
The Font Awesome webfont, CSS, and LESS files are licensed under CC BY 3.0:
|
10 |
+
http://creativecommons.org/licenses/by/3.0/ A mention of
|
11 |
+
'Font Awesome - http://fortawesome.github.com/Font-Awesome' in human-readable
|
12 |
+
source code is considered acceptable attribution (most common on the web).
|
13 |
+
If human readable source code is not available to the end user, a mention in
|
14 |
+
an 'About' or 'Credits' screen is considered acceptable (most common in desktop
|
15 |
+
or mobile software).
|
16 |
+
|
17 |
+
Contact
|
18 |
+
-------------------------------------------------------
|
19 |
+
Email: dave@davegandy.com
|
20 |
+
Twitter: http://twitter.com/fortaweso_me
|
21 |
+
Work: http://lemonwi.se co-founder
|
22 |
+
|
23 |
+
*/
|
24 |
+
|
25 |
+
@font-face {
|
26 |
+
font-family: 'FontAwesome';
|
27 |
+
src: url('../font/fontawesome-webfont.eot');
|
28 |
+
src: url('../font/fontawesome-webfont.eot?#iefix') format('embedded-opentype'),
|
29 |
+
url('../font/fontawesome-webfont.woff') format('woff'),
|
30 |
+
url('../font/fontawesome-webfont.ttf') format('truetype'),
|
31 |
+
url('../font/fontawesome-webfont.svgz#FontAwesomeRegular') format('svg'),
|
32 |
+
url('../font/fontawesome-webfont.svg#FontAwesomeRegular') format('svg');
|
33 |
+
font-weight: normal;
|
34 |
+
font-style: normal;
|
35 |
+
}
|
36 |
+
|
37 |
+
/* sprites.less reset */
|
38 |
+
[class^="icon-"],
|
39 |
+
[class*=" icon-"] {
|
40 |
+
display: inline;
|
41 |
+
width: auto;
|
42 |
+
height: auto;
|
43 |
+
line-height: inherit;
|
44 |
+
vertical-align: baseline;
|
45 |
+
background-image: none;
|
46 |
+
background-position: 0% 0%;
|
47 |
+
background-repeat: repeat;
|
48 |
+
}
|
49 |
+
li[class^="icon-"],
|
50 |
+
li[class*=" icon-"] {
|
51 |
+
display: block;
|
52 |
+
}
|
53 |
+
|
54 |
+
/* Font Awesome styles
|
55 |
+
------------------------------------------------------- */
|
56 |
+
[class^="icon-"]:before,
|
57 |
+
[class*=" icon-"]:before {
|
58 |
+
font-family: FontAwesome;
|
59 |
+
font-weight: normal;
|
60 |
+
font-style: normal;
|
61 |
+
display: inline-block;
|
62 |
+
text-decoration: inherit;
|
63 |
+
}
|
64 |
+
|
65 |
+
a [class^="icon-"],
|
66 |
+
a [class*=" icon-"] {
|
67 |
+
display: inline-block;
|
68 |
+
text-decoration: inherit;
|
69 |
+
}
|
70 |
+
|
71 |
+
/* makes the font 33% larger relative to the icon container */
|
72 |
+
.icon-large:before {
|
73 |
+
vertical-align: top;
|
74 |
+
font-size: 4/3em;
|
75 |
+
}
|
76 |
+
|
77 |
+
.btn {
|
78 |
+
[class^="icon-"],
|
79 |
+
[class*=" icon-"] {
|
80 |
+
/* keeps button heights with and without icons the same */
|
81 |
+
line-height: .9em;
|
82 |
+
}
|
83 |
+
}
|
84 |
+
|
85 |
+
li {
|
86 |
+
[class^="icon-"],
|
87 |
+
[class*=" icon-"] {
|
88 |
+
display: inline-block;
|
89 |
+
width: 1.25em;
|
90 |
+
text-align: center;
|
91 |
+
}
|
92 |
+
.icon-large[class^="icon-"],
|
93 |
+
.icon-large[class*=" icon-"] {
|
94 |
+
/* 1.5 increased font size for icon-large * 1.25 width */
|
95 |
+
width: 1.5*1.25em;
|
96 |
+
}
|
97 |
+
}
|
98 |
+
|
99 |
+
li[class^="icon-"],
|
100 |
+
li[class*=" icon-"] {
|
101 |
+
margin-left: 0;
|
102 |
+
list-style-type: none;
|
103 |
+
|
104 |
+
&:before {
|
105 |
+
text-indent: -2em;
|
106 |
+
text-align: center;
|
107 |
+
}
|
108 |
+
&.icon-large:before {
|
109 |
+
text-indent: -4/3em;
|
110 |
+
}
|
111 |
+
}
|
112 |
+
|
113 |
+
/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
|
114 |
+
readers do not read off random characters that represent icons */
|
115 |
+
.icon-glass:before { content: "\f000"; }
|
116 |
+
.icon-music:before { content: "\f001"; }
|
117 |
+
.icon-search:before { content: "\f002"; }
|
118 |
+
.icon-envelope:before { content: "\f003"; }
|
119 |
+
.icon-heart:before { content: "\f004"; }
|
120 |
+
.icon-star:before { content: "\f005"; }
|
121 |
+
.icon-star-empty:before { content: "\f006"; }
|
122 |
+
.icon-user:before { content: "\f007"; }
|
123 |
+
.icon-film:before { content: "\f008"; }
|
124 |
+
.icon-th-large:before { content: "\f009"; }
|
125 |
+
.icon-th:before { content: "\f00a"; }
|
126 |
+
.icon-th-list:before { content: "\f00b"; }
|
127 |
+
.icon-ok:before { content: "\f00c"; }
|
128 |
+
.icon-remove:before { content: "\f00d"; }
|
129 |
+
.icon-zoom-in:before { content: "\f00e"; }
|
130 |
+
|
131 |
+
.icon-zoom-out:before { content: "\f010"; }
|
132 |
+
.icon-off:before { content: "\f011"; }
|
133 |
+
.icon-signal:before { content: "\f012"; }
|
134 |
+
.icon-cog:before { content: "\f013"; }
|
135 |
+
.icon-trash:before { content: "\f014"; }
|
136 |
+
.icon-home:before { content: "\f015"; }
|
137 |
+
.icon-file:before { content: "\f016"; }
|
138 |
+
.icon-time:before { content: "\f017"; }
|
139 |
+
.icon-road:before { content: "\f018"; }
|
140 |
+
.icon-download-alt:before { content: "\f019"; }
|
141 |
+
.icon-download:before { content: "\f01a"; }
|
142 |
+
.icon-upload:before { content: "\f01b"; }
|
143 |
+
.icon-inbox:before { content: "\f01c"; }
|
144 |
+
.icon-play-circle:before { content: "\f01d"; }
|
145 |
+
.icon-repeat:before { content: "\f01e"; }
|
146 |
+
|
147 |
+
/* \f020 is not a valid unicode character. all shifted one down */
|
148 |
+
.icon-refresh:before { content: "\f021"; }
|
149 |
+
.icon-list-alt:before { content: "\f022"; }
|
150 |
+
.icon-lock:before { content: "\f023"; }
|
151 |
+
.icon-flag:before { content: "\f024"; }
|
152 |
+
.icon-headphones:before { content: "\f025"; }
|
153 |
+
.icon-volume-off:before { content: "\f026"; }
|
154 |
+
.icon-volume-down:before { content: "\f027"; }
|
155 |
+
.icon-volume-up:before { content: "\f028"; }
|
156 |
+
.icon-qrcode:before { content: "\f029"; }
|
157 |
+
.icon-barcode:before { content: "\f02a"; }
|
158 |
+
.icon-tag:before { content: "\f02b"; }
|
159 |
+
.icon-tags:before { content: "\f02c"; }
|
160 |
+
.icon-book:before { content: "\f02d"; }
|
161 |
+
.icon-bookmark:before { content: "\f02e"; }
|
162 |
+
.icon-print:before { content: "\f02f"; }
|
163 |
+
|
164 |
+
.icon-camera:before { content: "\f030"; }
|
165 |
+
.icon-font:before { content: "\f031"; }
|
166 |
+
.icon-bold:before { content: "\f032"; }
|
167 |
+
.icon-italic:before { content: "\f033"; }
|
168 |
+
.icon-text-height:before { content: "\f034"; }
|
169 |
+
.icon-text-width:before { content: "\f035"; }
|
170 |
+
.icon-align-left:before { content: "\f036"; }
|
171 |
+
.icon-align-center:before { content: "\f037"; }
|
172 |
+
.icon-align-right:before { content: "\f038"; }
|
173 |
+
.icon-align-justify:before { content: "\f039"; }
|
174 |
+
.icon-list:before { content: "\f03a"; }
|
175 |
+
.icon-indent-left:before { content: "\f03b"; }
|
176 |
+
.icon-indent-right:before { content: "\f03c"; }
|
177 |
+
.icon-facetime-video:before { content: "\f03d"; }
|
178 |
+
.icon-picture:before { content: "\f03e"; }
|
179 |
+
|
180 |
+
.icon-pencil:before { content: "\f040"; }
|
181 |
+
.icon-map-marker:before { content: "\f041"; }
|
182 |
+
.icon-adjust:before { content: "\f042"; }
|
183 |
+
.icon-tint:before { content: "\f043"; }
|
184 |
+
.icon-edit:before { content: "\f044"; }
|
185 |
+
.icon-share:before { content: "\f045"; }
|
186 |
+
.icon-check:before { content: "\f046"; }
|
187 |
+
.icon-move:before { content: "\f047"; }
|
188 |
+
.icon-step-backward:before { content: "\f048"; }
|
189 |
+
.icon-fast-backward:before { content: "\f049"; }
|
190 |
+
.icon-backward:before { content: "\f04a"; }
|
191 |
+
.icon-play:before { content: "\f04b"; }
|
192 |
+
.icon-pause:before { content: "\f04c"; }
|
193 |
+
.icon-stop:before { content: "\f04d"; }
|
194 |
+
.icon-forward:before { content: "\f04e"; }
|
195 |
+
|
196 |
+
.icon-fast-forward:before { content: "\f050"; }
|
197 |
+
.icon-step-forward:before { content: "\f051"; }
|
198 |
+
.icon-eject:before { content: "\f052"; }
|
199 |
+
.icon-chevron-left:before { content: "\f053"; }
|
200 |
+
.icon-chevron-right:before { content: "\f054"; }
|
201 |
+
.icon-plus-sign:before { content: "\f055"; }
|
202 |
+
.icon-minus-sign:before { content: "\f056"; }
|
203 |
+
.icon-remove-sign:before { content: "\f057"; }
|
204 |
+
.icon-ok-sign:before { content: "\f058"; }
|
205 |
+
.icon-question-sign:before { content: "\f059"; }
|
206 |
+
.icon-info-sign:before { content: "\f05a"; }
|
207 |
+
.icon-screenshot:before { content: "\f05b"; }
|
208 |
+
.icon-remove-circle:before { content: "\f05c"; }
|
209 |
+
.icon-ok-circle:before { content: "\f05d"; }
|
210 |
+
.icon-ban-circle:before { content: "\f05e"; }
|
211 |
+
|
212 |
+
.icon-arrow-left:before { content: "\f060"; }
|
213 |
+
.icon-arrow-right:before { content: "\f061"; }
|
214 |
+
.icon-arrow-up:before { content: "\f062"; }
|
215 |
+
.icon-arrow-down:before { content: "\f063"; }
|
216 |
+
.icon-share-alt:before { content: "\f064"; }
|
217 |
+
.icon-resize-full:before { content: "\f065"; }
|
218 |
+
.icon-resize-small:before { content: "\f066"; }
|
219 |
+
.icon-plus:before { content: "\f067"; }
|
220 |
+
.icon-minus:before { content: "\f068"; }
|
221 |
+
.icon-asterisk:before { content: "\f069"; }
|
222 |
+
.icon-exclamation-sign:before { content: "\f06a"; }
|
223 |
+
.icon-gift:before { content: "\f06b"; }
|
224 |
+
.icon-leaf:before { content: "\f06c"; }
|
225 |
+
.icon-fire:before { content: "\f06d"; }
|
226 |
+
.icon-eye-open:before { content: "\f06e"; }
|
227 |
+
|
228 |
+
.icon-eye-close:before { content: "\f070"; }
|
229 |
+
.icon-warning-sign:before { content: "\f071"; }
|
230 |
+
.icon-plane:before { content: "\f072"; }
|
231 |
+
.icon-calendar:before { content: "\f073"; }
|
232 |
+
.icon-random:before { content: "\f074"; }
|
233 |
+
.icon-comment:before { content: "\f075"; }
|
234 |
+
.icon-magnet:before { content: "\f076"; }
|
235 |
+
.icon-chevron-up:before { content: "\f077"; }
|
236 |
+
.icon-chevron-down:before { content: "\f078"; }
|
237 |
+
.icon-retweet:before { content: "\f079"; }
|
238 |
+
.icon-shopping-cart:before { content: "\f07a"; }
|
239 |
+
.icon-folder-close:before { content: "\f07b"; }
|
240 |
+
.icon-folder-open:before { content: "\f07c"; }
|
241 |
+
.icon-resize-vertical:before { content: "\f07d"; }
|
242 |
+
.icon-resize-horizontal:before { content: "\f07e"; }
|
243 |
+
|
244 |
+
.icon-bar-chart:before { content: "\f080"; }
|
245 |
+
.icon-twitter-sign:before { content: "\f081"; }
|
246 |
+
.icon-facebook-sign:before { content: "\f082"; }
|
247 |
+
.icon-camera-retro:before { content: "\f083"; }
|
248 |
+
.icon-key:before { content: "\f084"; }
|
249 |
+
.icon-cogs:before { content: "\f085"; }
|
250 |
+
.icon-comments:before { content: "\f086"; }
|
251 |
+
.icon-thumbs-up:before { content: "\f087"; }
|
252 |
+
.icon-thumbs-down:before { content: "\f088"; }
|
253 |
+
.icon-star-half:before { content: "\f089"; }
|
254 |
+
.icon-heart-empty:before { content: "\f08a"; }
|
255 |
+
.icon-signout:before { content: "\f08b"; }
|
256 |
+
.icon-linkedin-sign:before { content: "\f08c"; }
|
257 |
+
.icon-pushpin:before { content: "\f08d"; }
|
258 |
+
.icon-external-link:before { content: "\f08e"; }
|
259 |
+
|
260 |
+
.icon-signin:before { content: "\f090"; }
|
261 |
+
.icon-trophy:before { content: "\f091"; }
|
262 |
+
.icon-github-sign:before { content: "\f092"; }
|
263 |
+
.icon-upload-alt:before { content: "\f093"; }
|
264 |
+
.icon-lemon:before { content: "\f094"; }
|
app/view/admin/less/grid.less
ADDED
@@ -0,0 +1,5 @@
|
|
|
|
|
|
|
|
|
|
|
1 |
+
// Fixed (940px)
|
2 |
+
#grid > .core(@gridColumnWidth, @gridGutterWidth);
|
3 |
+
|
4 |
+
// Fluid (940px)
|
5 |
+
#grid > .fluid(@fluidGridColumnWidth, @fluidGridGutterWidth);
|
app/view/admin/less/hero-unit.less
ADDED
@@ -0,0 +1,22 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
// HERO UNIT
|
2 |
+
// ---------
|
3 |
+
|
4 |
+
.hero-unit {
|
5 |
+
padding: 60px;
|
6 |
+
margin-bottom: 30px;
|
7 |
+
background-color: @heroUnitBackground;
|
8 |
+
.border-radius(6px);
|
9 |
+
h1 {
|
10 |
+
margin-bottom: 0;
|
11 |
+
font-size: 60px;
|
12 |
+
line-height: 1;
|
13 |
+
color: @heroUnitHeadingColor;
|
14 |
+
letter-spacing: -1px;
|
15 |
+
}
|
16 |
+
p {
|
17 |
+
font-size: 18px;
|
18 |
+
font-weight: 200;
|
19 |
+
line-height: @baseLineHeight * 1.5;
|
20 |
+
color: @heroUnitLeadColor;
|
21 |
+
}
|
22 |
+
}
|
app/view/admin/less/mixins.less
ADDED
@@ -0,0 +1,614 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
// Mixins.less
|
2 |
+
// Snippets of reusable CSS to develop faster and keep code readable
|
3 |
+
// -----------------------------------------------------------------
|
4 |
+
|
5 |
+
|
6 |
+
// UTILITY MIXINS
|
7 |
+
// --------------------------------------------------
|
8 |
+
|
9 |
+
// Clearfix
|
10 |
+
// --------
|
11 |
+
// For clearing floats like a boss h5bp.com/q
|
12 |
+
.clearfix {
|
13 |
+
*zoom: 1;
|
14 |
+
&:before,
|
15 |
+
&:after {
|
16 |
+
display: table;
|
17 |
+
content: "";
|
18 |
+
}
|
19 |
+
&:after {
|
20 |
+
clear: both;
|
21 |
+
}
|
22 |
+
}
|
23 |
+
|
24 |
+
// Webkit-style focus
|
25 |
+
// ------------------
|
26 |
+
.tab-focus() {
|
27 |
+
// Default
|
28 |
+
outline: thin dotted #333;
|
29 |
+
// Webkit
|
30 |
+
outline: 5px auto -webkit-focus-ring-color;
|
31 |
+
outline-offset: -2px;
|
32 |
+
}
|
33 |
+
|
34 |
+
// Center-align a block level element
|
35 |
+
// ----------------------------------
|
36 |
+
.center-block() {
|
37 |
+
display: block;
|
38 |
+
margin-left: auto;
|
39 |
+
margin-right: auto;
|
40 |
+
}
|
41 |
+
|
42 |
+
// IE7 inline-block
|
43 |
+
// ----------------
|
44 |
+
.ie7-inline-block() {
|
45 |
+
*display: inline; /* IE7 inline-block hack */
|
46 |
+
*zoom: 1;
|
47 |
+
}
|
48 |
+
|
49 |
+
// IE7 likes to collapse whitespace on either side of the inline-block elements.
|
50 |
+
// Ems because we're attempting to match the width of a space character. Left
|
51 |
+
// version is for form buttons, which typically come after other elements, and
|
52 |
+
// right version is for icons, which come before. Applying both is ok, but it will
|
53 |
+
// mean that space between those elements will be .6em (~2 space characters) in IE7,
|
54 |
+
// instead of the 1 space in other browsers.
|
55 |
+
.ie7-restore-left-whitespace() {
|
56 |
+
*margin-left: .3em;
|
57 |
+
|
58 |
+
&:first-child {
|
59 |
+
*margin-left: 0;
|
60 |
+
}
|
61 |
+
}
|
62 |
+
|
63 |
+
.ie7-restore-right-whitespace() {
|
64 |
+
*margin-right: .3em;
|
65 |
+
|
66 |
+
&:last-child {
|
67 |
+
*margin-left: 0;
|
68 |
+
}
|
69 |
+
}
|
70 |
+
|
71 |
+
// Sizing shortcuts
|
72 |
+
// -------------------------
|
73 |
+
.size(@height: 5px, @width: 5px) {
|
74 |
+
width: @width;
|
75 |
+
height: @height;
|
76 |
+
}
|
77 |
+
.square(@size: 5px) {
|
78 |
+
.size(@size, @size);
|
79 |
+
}
|
80 |
+
|
81 |
+
// Placeholder text
|
82 |
+
// -------------------------
|
83 |
+
.placeholder(@color: @placeholderText) {
|
84 |
+
:-moz-placeholder {
|
85 |
+
color: @color;
|
86 |
+
}
|
87 |
+
::-webkit-input-placeholder {
|
88 |
+
color: @color;
|
89 |
+
}
|
90 |
+
}
|
91 |
+
|
92 |
+
// Text overflow
|
93 |
+
// -------------------------
|
94 |
+
// Requires inline-block or block for proper styling
|
95 |
+
.text-overflow() {
|
96 |
+
overflow: hidden;
|
97 |
+
text-overflow: ellipsis;
|
98 |
+
white-space: nowrap;
|
99 |
+
}
|
100 |
+
|
101 |
+
// New image replacement
|
102 |
+
// -------------------------
|
103 |
+
// Source: http://www.zeldman.com/2012/03/01/replacing-the-9999px-hack-new-image-replacement/
|
104 |
+
.hide-text {
|
105 |
+
overflow: hidden;
|
106 |
+
text-indent: 100%;
|
107 |
+
white-space: nowrap;
|
108 |
+
}
|
109 |
+
|
110 |
+
|
111 |
+
// FONTS
|
112 |
+
// --------------------------------------------------
|
113 |
+
|
114 |
+
#font {
|
115 |
+
#family {
|
116 |
+
.serif() {
|
117 |
+
font-family: Georgia, "Times New Roman", Times, serif;
|
118 |
+
}
|
119 |
+
.sans-serif() {
|
120 |
+
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
|
121 |
+
}
|
122 |
+
.monospace() {
|
123 |
+
font-family: Menlo, Monaco, "Courier New", monospace;
|
124 |
+
}
|
125 |
+
}
|
126 |
+
.shorthand(@size: @baseFontSize, @weight: normal, @lineHeight: @baseLineHeight) {
|
127 |
+
font-size: @size;
|
128 |
+
font-weight: @weight;
|
129 |
+
line-height: @lineHeight;
|
130 |
+
}
|
131 |
+
.serif(@size: @baseFontSize, @weight: normal, @lineHeight: @baseLineHeight) {
|
132 |
+
#font > #family > .serif;
|
133 |
+
#font > .shorthand(@size, @weight, @lineHeight);
|
134 |
+
}
|
135 |
+
.sans-serif(@size: @baseFontSize, @weight: normal, @lineHeight: @baseLineHeight) {
|
136 |
+
#font > #family > .sans-serif;
|
137 |
+
#font > .shorthand(@size, @weight, @lineHeight);
|
138 |
+
}
|
139 |
+
.monospace(@size: @baseFontSize, @weight: normal, @lineHeight: @baseLineHeight) {
|
140 |
+
#font > #family > .monospace;
|
141 |
+
#font > .shorthand(@size, @weight, @lineHeight);
|
142 |
+
}
|
143 |
+
}
|
144 |
+
|
145 |
+
|
146 |
+
// FORMS
|
147 |
+
// --------------------------------------------------
|
148 |
+
|
149 |
+
// Block level inputs
|
150 |
+
.input-block-level {
|
151 |
+
display: block;
|
152 |
+
width: 100%;
|
153 |
+
min-height: 28px; /* Make inputs at least the height of their button counterpart */
|
154 |
+
/* Makes inputs behave like true block-level elements */
|
155 |
+
.box-sizing(border-box);
|
156 |
+
}
|
157 |
+
|
158 |
+
|
159 |
+
// Mixin for form field states
|
160 |
+
.formFieldState(@textColor: #555, @borderColor: #ccc, @backgroundColor: #f5f5f5) {
|
161 |
+
// Set the text color
|
162 |
+
> label,
|
163 |
+
.help-block,
|
164 |
+
.help-inline {
|
165 |
+
color: @textColor;
|
166 |
+
}
|
167 |
+
// Style inputs accordingly
|
168 |
+
input,
|
169 |
+
select,
|
170 |
+
textarea {
|
171 |
+
color: @textColor;
|
172 |
+
border-color: @borderColor;
|
173 |
+
&:focus {
|
174 |
+
border-color: darken(@borderColor, 10%);
|
175 |
+
.box-shadow(0 0 6px lighten(@borderColor, 20%));
|
176 |
+
}
|
177 |
+
}
|
178 |
+
// Give a small background color for input-prepend/-append
|
179 |
+
.input-prepend .add-on,
|
180 |
+
.input-append .add-on {
|
181 |
+
color: @textColor;
|
182 |
+
background-color: @backgroundColor;
|
183 |
+
border-color: @textColor;
|
184 |
+
}
|
185 |
+
}
|
186 |
+
|
187 |
+
|
188 |
+
|
189 |
+
// CSS3 PROPERTIES
|
190 |
+
// --------------------------------------------------
|
191 |
+
|
192 |
+
// Border Radius
|
193 |
+
.border-radius(@radius: 5px) {
|
194 |
+
-webkit-border-radius: @radius;
|
195 |
+
-moz-border-radius: @radius;
|
196 |
+
border-radius: @radius;
|
197 |
+
}
|
198 |
+
|
199 |
+
// Drop shadows
|
200 |
+
.box-shadow(@shadow: 0 1px 3px rgba(0,0,0,.25)) {
|
201 |
+
-webkit-box-shadow: @shadow;
|
202 |
+
-moz-box-shadow: @shadow;
|
203 |
+
box-shadow: @shadow;
|
204 |
+
}
|
205 |
+
|
206 |
+
// Transitions
|
207 |
+
.transition(@transition) {
|
208 |
+
-webkit-transition: @transition;
|
209 |
+
-moz-transition: @transition;
|
210 |
+
-ms-transition: @transition;
|
211 |
+
-o-transition: @transition;
|
212 |
+
transition: @transition;
|
213 |
+
}
|
214 |
+
|
215 |
+
// Transformations
|
216 |
+
.rotate(@degrees) {
|
217 |
+
-webkit-transform: rotate(@degrees);
|
218 |
+
-moz-transform: rotate(@degrees);
|
219 |
+
-ms-transform: rotate(@degrees);
|
220 |
+
-o-transform: rotate(@degrees);
|
221 |
+
transform: rotate(@degrees);
|
222 |
+
}
|
223 |
+
.scale(@ratio) {
|
224 |
+
-webkit-transform: scale(@ratio);
|
225 |
+
-moz-transform: scale(@ratio);
|
226 |
+
-ms-transform: scale(@ratio);
|
227 |
+
-o-transform: scale(@ratio);
|
228 |
+
transform: scale(@ratio);
|
229 |
+
}
|
230 |
+
.translate(@x: 0, @y: 0) {
|
231 |
+
-webkit-transform: translate(@x, @y);
|
232 |
+
-moz-transform: translate(@x, @y);
|
233 |
+
-ms-transform: translate(@x, @y);
|
234 |
+
-o-transform: translate(@x, @y);
|
235 |
+
transform: translate(@x, @y);
|
236 |
+
}
|
237 |
+
.skew(@x: 0, @y: 0) {
|
238 |
+
-webkit-transform: skew(@x, @y);
|
239 |
+
-moz-transform: skew(@x, @y);
|
240 |
+
-ms-transform: skew(@x, @y);
|
241 |
+
-o-transform: skew(@x, @y);
|
242 |
+
transform: skew(@x, @y);
|
243 |
+
}
|
244 |
+
.translate3d(@x: 0, @y: 0, @z: 0) {
|
245 |
+
-webkit-transform: translate(@x, @y, @z);
|
246 |
+
-moz-transform: translate(@x, @y, @z);
|
247 |
+
-ms-transform: translate(@x, @y, @z);
|
248 |
+
-o-transform: translate(@x, @y, @z);
|
249 |
+
transform: translate(@x, @y, @z);
|
250 |
+
}
|
251 |
+
|
252 |
+
// Background clipping
|
253 |
+
// Heads up: FF 3.6 and under need "padding" instead of "padding-box"
|
254 |
+
.background-clip(@clip) {
|
255 |
+
-webkit-background-clip: @clip;
|
256 |
+
-moz-background-clip: @clip;
|
257 |
+
background-clip: @clip;
|
258 |
+
}
|
259 |
+
|
260 |
+
// Background sizing
|
261 |
+
.background-size(@size){
|
262 |
+
-webkit-background-size: @size;
|
263 |
+
-moz-background-size: @size;
|
264 |
+
-o-background-size: @size;
|
265 |
+
background-size: @size;
|
266 |
+
}
|
267 |
+
|
268 |
+
|
269 |
+
// Box sizing
|
270 |
+
.box-sizing(@boxmodel) {
|
271 |
+
-webkit-box-sizing: @boxmodel;
|
272 |
+
-moz-box-sizing: @boxmodel;
|
273 |
+
-ms-box-sizing: @boxmodel;
|
274 |
+
box-sizing: @boxmodel;
|
275 |
+
}
|
276 |
+
|
277 |
+
// User select
|
278 |
+
// For selecting text on the page
|
279 |
+
.user-select(@select) {
|
280 |
+
-webkit-user-select: @select;
|
281 |
+
-moz-user-select: @select;
|
282 |
+
-o-user-select: @select;
|
283 |
+
user-select: @select;
|
284 |
+
}
|
285 |
+
|
286 |
+
// Resize anything
|
287 |
+
.resizable(@direction: both) {
|
288 |
+
resize: @direction; // Options: horizontal, vertical, both
|
289 |
+
overflow: auto; // Safari fix
|
290 |
+
}
|
291 |
+
|
292 |
+
// CSS3 Content Columns
|
293 |
+
.content-columns(@columnCount, @columnGap: @gridColumnGutter) {
|
294 |
+
-webkit-column-count: @columnCount;
|
295 |
+
-moz-column-count: @columnCount;
|
296 |
+
column-count: @columnCount;
|
297 |
+
-webkit-column-gap: @columnGap;
|
298 |
+
-moz-column-gap: @columnGap;
|
299 |
+
column-gap: @columnGap;
|
300 |
+
}
|
301 |
+
|
302 |
+
// Opacity
|
303 |
+
.opacity(@opacity: 100) {
|
304 |
+
opacity: @opacity / 100;
|
305 |
+
filter: ~"alpha(opacity=@{opacity})";
|
306 |
+
}
|
307 |
+
|
308 |
+
|
309 |
+
|
310 |
+
// BACKGROUNDS
|
311 |
+
// --------------------------------------------------
|
312 |
+
|
313 |
+
// Add an alphatransparency value to any background or border color (via Elyse Holladay)
|
314 |
+
#translucent {
|
315 |
+
.background(@color: @white, @alpha: 1) {
|
316 |
+
background-color: hsla(hue(@color), saturation(@color), lightness(@color), @alpha);
|
317 |
+
}
|
318 |
+
.border(@color: @white, @alpha: 1) {
|
319 |
+
border-color: hsla(hue(@color), saturation(@color), lightness(@color), @alpha);
|
320 |
+
.background-clip(padding-box);
|
321 |
+
}
|
322 |
+
}
|
323 |
+
|
324 |
+
// Gradient Bar Colors for buttons and alerts
|
325 |
+
.gradientBar(@primaryColor, @secondaryColor) {
|
326 |
+
#gradient > .vertical(@primaryColor, @secondaryColor);
|
327 |
+
border-color: @secondaryColor @secondaryColor darken(@secondaryColor, 15%);
|
328 |
+
border-color: rgba(0,0,0,.1) rgba(0,0,0,.1) fadein(rgba(0,0,0,.1), 15%);
|
329 |
+
}
|
330 |
+
|
331 |
+
// Gradients
|
332 |
+
#gradient {
|
333 |
+
.horizontal(@startColor: #555, @endColor: #333) {
|
334 |
+
background-color: @endColor;
|
335 |
+
background-image: -moz-linear-gradient(left, @startColor, @endColor); // FF 3.6+
|
336 |
+
background-image: -ms-linear-gradient(left, @startColor, @endColor); // IE10
|
337 |
+
background-image: -webkit-gradient(linear, 0 0, 100% 0, from(@startColor), to(@endColor)); // Safari 4+, Chrome 2+
|
338 |
+
background-image: -webkit-linear-gradient(left, @startColor, @endColor); // Safari 5.1+, Chrome 10+
|
339 |
+
background-image: -o-linear-gradient(left, @startColor, @endColor); // Opera 11.10
|
340 |
+
background-image: linear-gradient(left, @startColor, @endColor); // Le standard
|
341 |
+
background-repeat: repeat-x;
|
342 |
+
filter: e(%("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)",@startColor,@endColor)); // IE9 and down
|
343 |
+
}
|
344 |
+
.vertical(@startColor: #555, @endColor: #333) {
|
345 |
+
background-color: mix(@startColor, @endColor, 60%);
|
346 |
+
background-image: -moz-linear-gradient(top, @startColor, @endColor); // FF 3.6+
|
347 |
+
background-image: -ms-linear-gradient(top, @startColor, @endColor); // IE10
|
348 |
+
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(@startColor), to(@endColor)); // Safari 4+, Chrome 2+
|
349 |
+
background-image: -webkit-linear-gradient(top, @startColor, @endColor); // Safari 5.1+, Chrome 10+
|
350 |
+
background-image: -o-linear-gradient(top, @startColor, @endColor); // Opera 11.10
|
351 |
+
background-image: linear-gradient(top, @startColor, @endColor); // The standard
|
352 |
+
background-repeat: repeat-x;
|
353 |
+
filter: e(%("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)",@startColor,@endColor)); // IE9 and down
|
354 |
+
}
|
355 |
+
.directional(@startColor: #555, @endColor: #333, @deg: 45deg) {
|
356 |
+
background-color: @endColor;
|
357 |
+
background-repeat: repeat-x;
|
358 |
+
background-image: -moz-linear-gradient(@deg, @startColor, @endColor); // FF 3.6+
|
359 |
+
background-image: -ms-linear-gradient(@deg, @startColor, @endColor); // IE10
|
360 |
+
background-image: -webkit-linear-gradient(@deg, @startColor, @endColor); // Safari 5.1+, Chrome 10+
|
361 |
+
background-image: -o-linear-gradient(@deg, @startColor, @endColor); // Opera 11.10
|
362 |
+
background-image: linear-gradient(@deg, @startColor, @endColor); // The standard
|
363 |
+
}
|
364 |
+
.vertical-three-colors(@startColor: #00b3ee, @midColor: #7a43b6, @colorStop: 50%, @endColor: #c3325f) {
|
365 |
+
background-color: mix(@midColor, @endColor, 80%);
|
366 |
+
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(@startColor), color-stop(@colorStop, @midColor), to(@endColor));
|
367 |
+
background-image: -webkit-linear-gradient(@startColor, @midColor @colorStop, @endColor);
|
368 |
+
background-image: -moz-linear-gradient(top, @startColor, @midColor @colorStop, @endColor);
|
369 |
+
background-image: -ms-linear-gradient(@startColor, @midColor @colorStop, @endColor);
|
370 |
+
background-image: -o-linear-gradient(@startColor, @midColor @colorStop, @endColor);
|
371 |
+
background-image: linear-gradient(@startColor, @midColor @colorStop, @endColor);
|
372 |
+
background-repeat: no-repeat;
|
373 |
+
filter: e(%("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)",@startColor,@endColor)); // IE9 and down, gets no color-stop at all for proper fallback
|
374 |
+
}
|
375 |
+
.radial(@innerColor: #555, @outerColor: #333) {
|
376 |
+
background-color: @outerColor;
|
377 |
+
background-image: -webkit-gradient(radial, center center, 0, center center, 460, from(@innerColor), to(@outerColor));
|
378 |
+
background-image: -webkit-radial-gradient(circle, @innerColor, @outerColor);
|
379 |
+
background-image: -moz-radial-gradient(circle, @innerColor, @outerColor);
|
380 |
+
background-image: -ms-radial-gradient(circle, @innerColor, @outerColor);
|
381 |
+
background-image: -o-radial-gradient(circle, @innerColor, @outerColor);
|
382 |
+
background-repeat: no-repeat;
|
383 |
+
}
|
384 |
+
.striped(@color, @angle: -45deg) {
|
385 |
+
background-color: @color;
|
386 |
+
background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(.25, rgba(255,255,255,.15)), color-stop(.25, transparent), color-stop(.5, transparent), color-stop(.5, rgba(255,255,255,.15)), color-stop(.75, rgba(255,255,255,.15)), color-stop(.75, transparent), to(transparent));
|
387 |
+
background-image: -webkit-linear-gradient(@angle, rgba(255,255,255,.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,.15) 50%, rgba(255,255,255,.15) 75%, transparent 75%, transparent);
|
388 |
+
background-image: -moz-linear-gradient(@angle, rgba(255,255,255,.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,.15) 50%, rgba(255,255,255,.15) 75%, transparent 75%, transparent);
|
389 |
+
background-image: -ms-linear-gradient(@angle, rgba(255,255,255,.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,.15) 50%, rgba(255,255,255,.15) 75%, transparent 75%, transparent);
|
390 |
+
background-image: -o-linear-gradient(@angle, rgba(255,255,255,.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,.15) 50%, rgba(255,255,255,.15) 75%, transparent 75%, transparent);
|
391 |
+
background-image: linear-gradient(@angle, rgba(255,255,255,.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,.15) 50%, rgba(255,255,255,.15) 75%, transparent 75%, transparent);
|
392 |
+
}
|
393 |
+
}
|
394 |
+
// Reset filters for IE
|
395 |
+
.reset-filter() {
|
396 |
+
filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
|
397 |
+
}
|
398 |
+
|
399 |
+
|
400 |
+
|
401 |
+
// COMPONENT MIXINS
|
402 |
+
// --------------------------------------------------
|
403 |
+
|
404 |
+
// Horizontal dividers
|
405 |
+
// -------------------------
|
406 |
+
// Dividers (basically an hr) within dropdowns and nav lists
|
407 |
+
.nav-divider() {
|
408 |
+
height: 1px;
|
409 |
+
margin: ((@baseLineHeight / 2) - 1) 1px; // 8px 1px
|
410 |
+
overflow: hidden;
|
411 |
+
background-color: #e5e5e5;
|
412 |
+
border-bottom: 1px solid @white;
|
413 |
+
|
414 |
+
// IE7 needs a set width since we gave a height. Restricting just
|
415 |
+
// to IE7 to keep the 1px left/right space in other browsers.
|
416 |
+
// It is unclear where IE is getting the extra space that we need
|
417 |
+
// to negative-margin away, but so it goes.
|
418 |
+
*width: 100%;
|
419 |
+
*margin: -5px 0 5px;
|
420 |
+
}
|
421 |
+
|
422 |
+
// Button backgrounds
|
423 |
+
// ------------------
|
424 |
+
.buttonBackground(@startColor, @endColor) {
|
425 |
+
// gradientBar will set the background to a pleasing blend of these, to support IE<=9
|
426 |
+
.gradientBar(@startColor, @endColor);
|
427 |
+
.reset-filter();
|
428 |
+
|
429 |
+
// in these cases the gradient won't cover the background, so we override
|
430 |
+
&:hover, &:active, &.active, &.disabled, &[disabled] {
|
431 |
+
background-color: @endColor;
|
432 |
+
}
|
433 |
+
|
434 |
+
// IE 7 + 8 can't handle box-shadow to show active, so we darken a bit ourselves
|
435 |
+
&:active,
|
436 |
+
&.active {
|
437 |
+
background-color: darken(@endColor, 10%) e("\9");
|
438 |
+
}
|
439 |
+
}
|
440 |
+
|
441 |
+
// Navbar vertical align
|
442 |
+
// -------------------------
|
443 |
+
// Vertically center elements in the navbar.
|
444 |
+
// Example: an element has a height of 30px, so write out `.navbarVerticalAlign(30px);` to calculate the appropriate top margin.
|
445 |
+
.navbarVerticalAlign(@elementHeight) {
|
446 |
+
margin-top: (@navbarHeight - @elementHeight) / 2;
|
447 |
+
}
|
448 |
+
|
449 |
+
// Popover arrows
|
450 |
+
// -------------------------
|
451 |
+
// For tipsies and popovers
|
452 |
+
#popoverArrow {
|
453 |
+
.top(@arrowWidth: 5px, @color: @black) {
|
454 |
+
bottom: 0;
|
455 |
+
left: 50%;
|
456 |
+
margin-left: -@arrowWidth;
|
457 |
+
border-left: @arrowWidth solid transparent;
|
458 |
+
border-right: @arrowWidth solid transparent;
|
459 |
+
border-top: @arrowWidth solid @color;
|
460 |
+
}
|
461 |
+
.left(@arrowWidth: 5px, @color: @black) {
|
462 |
+
top: 50%;
|
463 |
+
right: 0;
|
464 |
+
margin-top: -@arrowWidth;
|
465 |
+
border-top: @arrowWidth solid transparent;
|
466 |
+
border-bottom: @arrowWidth solid transparent;
|
467 |
+
border-left: @arrowWidth solid @color;
|
468 |
+
}
|
469 |
+
.bottom(@arrowWidth: 5px, @color: @black) {
|
470 |
+
top: 0;
|
471 |
+
left: 50%;
|
472 |
+
margin-left: -@arrowWidth;
|
473 |
+
border-left: @arrowWidth solid transparent;
|
474 |
+
border-right: @arrowWidth solid transparent;
|
475 |
+
border-bottom: @arrowWidth solid @color;
|
476 |
+
}
|
477 |
+
.right(@arrowWidth: 5px, @color: @black) {
|
478 |
+
top: 50%;
|
479 |
+
left: 0;
|
480 |
+
margin-top: -@arrowWidth;
|
481 |
+
border-top: @arrowWidth solid transparent;
|
482 |
+
border-bottom: @arrowWidth solid transparent;
|
483 |
+
border-right: @arrowWidth solid @color;
|
484 |
+
}
|
485 |
+
}
|
486 |
+
|
487 |
+
// Grid System
|
488 |
+
// -----------
|
489 |
+
|
490 |
+
// Centered container element
|
491 |
+
.container-fixed() {
|
492 |
+
margin-left: auto;
|
493 |
+
margin-right: auto;
|
494 |
+
.clearfix();
|
495 |
+
}
|
496 |
+
|
497 |
+
// Table columns
|
498 |
+
.tableColumns(@columnSpan: 1) {
|
499 |
+
float: none; // undo default grid column styles
|
500 |
+
width: ((@gridColumnWidth) * @columnSpan) + (@gridGutterWidth * (@columnSpan - 1)) - 16; // 16 is total padding on left and right of table cells
|
501 |
+
margin-left: 0; // undo default grid column styles
|
502 |
+
}
|
503 |
+
|
504 |
+
// Make a Grid
|
505 |
+
// Use .makeRow and .makeColumn to assign semantic layouts grid system behavior
|
506 |
+
.makeRow() {
|
507 |
+
margin-left: @gridGutterWidth * -1;
|
508 |
+
.clearfix();
|
509 |
+
}
|
510 |
+
.makeColumn(@columns: 1) {
|
511 |
+
float: left;
|
512 |
+
margin-left: @gridGutterWidth;
|
513 |
+
width: (@gridColumnWidth * @columns) + (@gridGutterWidth * (@columns - 1));
|
514 |
+
}
|
515 |
+
|
516 |
+
// The Grid
|
517 |
+
#grid {
|
518 |
+
|
519 |
+
.core (@gridColumnWidth, @gridGutterWidth) {
|
520 |
+
|
521 |
+
.spanX (@index) when (@index > 0) {
|
522 |
+
(~".span@{index}") { .span(@index); }
|
523 |
+
.spanX(@index - 1);
|
524 |
+
}
|
525 |
+
.spanX (0) {}
|
526 |
+
|
527 |
+
.offsetX (@index) when (@index > 0) {
|
528 |
+
(~".offset@{index}") { .offset(@index); }
|
529 |
+
.offsetX(@index - 1);
|
530 |
+
}
|
531 |
+
.offsetX (0) {}
|
532 |
+
|
533 |
+
.offset (@columns) {
|
534 |
+
margin-left: (@gridColumnWidth * @columns) + (@gridGutterWidth * (@columns - 1)) + (@gridGutterWidth * 2);
|
535 |
+
}
|
536 |
+
|
537 |
+
.span (@columns) {
|
538 |
+
width: (@gridColumnWidth * @columns) + (@gridGutterWidth * (@columns - 1));
|
539 |
+
}
|
540 |
+
|
541 |
+
.row {
|
542 |
+
margin-left: @gridGutterWidth * -1;
|
543 |
+
.clearfix();
|
544 |
+
}
|
545 |
+
|
546 |
+
[class*="span"] {
|
547 |
+
float: left;
|
548 |
+
margin-left: @gridGutterWidth;
|
549 |
+
}
|
550 |
+
|
551 |
+
// Set the container width, and override it for fixed navbars in media queries
|
552 |
+
.container,
|
553 |
+
.navbar-fixed-top .container,
|
554 |
+
.navbar-fixed-bottom .container { .span(@gridColumns); }
|
555 |
+
|
556 |
+
// generate .spanX and .offsetX
|
557 |
+
.spanX (@gridColumns);
|
558 |
+
.offsetX (@gridColumns);
|
559 |
+
|
560 |
+
}
|
561 |
+
|
562 |
+
.fluid (@fluidGridColumnWidth, @fluidGridGutterWidth) {
|
563 |
+
|
564 |
+
.spanX (@index) when (@index > 0) {
|
565 |
+
(~"> .span@{index}") { .span(@index); }
|
566 |
+
.spanX(@index - 1);
|
567 |
+
}
|
568 |
+
.spanX (0) {}
|
569 |
+
|
570 |
+
.span (@columns) {
|
571 |
+
width: (@fluidGridColumnWidth * @columns) + (@fluidGridGutterWidth * (@columns - 1));
|
572 |
+
}
|
573 |
+
|
574 |
+
.row-fluid {
|
575 |
+
width: 100%;
|
576 |
+
.clearfix();
|
577 |
+
> [class*="span"] {
|
578 |
+
float: left;
|
579 |
+
margin-left: @fluidGridGutterWidth;
|
580 |
+
}
|
581 |
+
> [class*="span"]:first-child {
|
582 |
+
margin-left: 0;
|
583 |
+
}
|
584 |
+
|
585 |
+
// generate .spanX
|
586 |
+
.spanX (@gridColumns);
|
587 |
+
}
|
588 |
+
|
589 |
+
}
|
590 |
+
|
591 |
+
.input(@gridColumnWidth, @gridGutterWidth) {
|
592 |
+
|
593 |
+
.spanX (@index) when (@index > 0) {
|
594 |
+
(~"input.span@{index}, textarea.span@{index}, .uneditable-input.span@{index}") { .span(@index); }
|
595 |
+
.spanX(@index - 1);
|
596 |
+
}
|
597 |
+
.spanX (0) {}
|
598 |
+
|
599 |
+
.span(@columns) {
|
600 |
+
width: ((@gridColumnWidth) * @columns) + (@gridGutterWidth * (@columns - 1)) - 10;
|
601 |
+
}
|
602 |
+
|
603 |
+
input,
|
604 |
+
textarea,
|
605 |
+
.uneditable-input {
|
606 |
+
margin-left: 0; // override margin-left from core grid system
|
607 |
+
}
|
608 |
+
|
609 |
+
// generate .spanX
|
610 |
+
.spanX (@gridColumns);
|
611 |
+
|
612 |
+
}
|
613 |
+
|
614 |
+
}
|
app/view/admin/less/navs.less
ADDED
@@ -0,0 +1,363 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
// NAVIGATIONS
|
2 |
+
// -----------
|
3 |
+
|
4 |
+
|
5 |
+
|
6 |
+
// BASE CLASS
|
7 |
+
// ----------
|
8 |
+
|
9 |
+
.nav {
|
10 |
+
margin-left: 0;
|
11 |
+
margin-bottom: @baseLineHeight;
|
12 |
+
list-style: none;
|
13 |
+
}
|
14 |
+
|
15 |
+
// Make links block level
|
16 |
+
.nav > li > a {
|
17 |
+
display: block;
|
18 |
+
}
|
19 |
+
.nav > li > a:hover {
|
20 |
+
text-decoration: none;
|
21 |
+
background-color: @grayLighter;
|
22 |
+
}
|
23 |
+
|
24 |
+
// Nav headers (for dropdowns and lists)
|
25 |
+
.nav .nav-header {
|
26 |
+
display: block;
|
27 |
+
padding: 3px 15px;
|
28 |
+
font-size: 11px;
|
29 |
+
font-weight: bold;
|
30 |
+
line-height: @baseLineHeight;
|
31 |
+
color: @grayLight;
|
32 |
+
text-shadow: 0 1px 0 rgba(255,255,255,.5);
|
33 |
+
text-transform: uppercase;
|
34 |
+
}
|
35 |
+
// Space them out when they follow another list item (link)
|
36 |
+
.nav li + .nav-header {
|
37 |
+
margin-top: 9px;
|
38 |
+
}
|
39 |
+
|
40 |
+
|
41 |
+
// NAV LIST
|
42 |
+
// --------
|
43 |
+
|
44 |
+
.nav-list {
|
45 |
+
padding-left: 15px;
|
46 |
+
padding-right: 15px;
|
47 |
+
margin-bottom: 0;
|
48 |
+
}
|
49 |
+
.nav-list > li > a,
|
50 |
+
.nav-list .nav-header {
|
51 |
+
margin-left: -15px;
|
52 |
+
margin-right: -15px;
|
53 |
+
text-shadow: 0 1px 0 rgba(255,255,255,.5);
|
54 |
+
}
|
55 |
+
.nav-list > li > a {
|
56 |
+
padding: 3px 15px;
|
57 |
+
}
|
58 |
+
.nav-list > .active > a,
|
59 |
+
.nav-list > .active > a:hover {
|
60 |
+
color: @white;
|
61 |
+
text-shadow: 0 -1px 0 rgba(0,0,0,.2);
|
62 |
+
background-color: @linkColor;
|
63 |
+
}
|
64 |
+
.nav-list [class^="icon-"] {
|
65 |
+
margin-right: 2px;
|
66 |
+
}
|
67 |
+
// Dividers (basically an hr) within the dropdown
|
68 |
+
.nav-list .divider {
|
69 |
+
.nav-divider();
|
70 |
+
}
|
71 |
+
|
72 |
+
|
73 |
+
|
74 |
+
// TABS AND PILLS
|
75 |
+
// -------------
|
76 |
+
|
77 |
+
// Common styles
|
78 |
+
.nav-tabs,
|
79 |
+
.nav-pills {
|
80 |
+
.clearfix();
|
81 |
+
}
|
82 |
+
.nav-tabs > li,
|
83 |
+
.nav-pills > li {
|
84 |
+
float: left;
|
85 |
+
}
|
86 |
+
.nav-tabs > li > a,
|
87 |
+
.nav-pills > li > a {
|
88 |
+
padding-right: 12px;
|
89 |
+
padding-left: 12px;
|
90 |
+
margin-right: 2px;
|
91 |
+
line-height: 14px; // keeps the overall height an even number
|
92 |
+
}
|
93 |
+
|
94 |
+
// TABS
|
95 |
+
// ----
|
96 |
+
|
97 |
+
// Give the tabs something to sit on
|
98 |
+
.nav-tabs {
|
99 |
+
border-bottom: 1px solid #ddd;
|
100 |
+
}
|
101 |
+
|
102 |
+
// Make the list-items overlay the bottom border
|
103 |
+
.nav-tabs > li {
|
104 |
+
margin-bottom: -1px;
|
105 |
+
}
|
106 |
+
|
107 |
+
// Actual tabs (as links)
|
108 |
+
.nav-tabs > li > a {
|
109 |
+
padding-top: 8px;
|
110 |
+
padding-bottom: 8px;
|
111 |
+
line-height: @baseLineHeight;
|
112 |
+
border: 1px solid transparent;
|
113 |
+
.border-radius(4px 4px 0 0);
|
114 |
+
&:hover {
|
115 |
+
border-color: @grayLighter @grayLighter #ddd;
|
116 |
+
}
|
117 |
+
}
|
118 |
+
// Active state, and it's :hover to override normal :hover
|
119 |
+
.nav-tabs > .active > a,
|
120 |
+
.nav-tabs > .active > a:hover {
|
121 |
+
color: @gray;
|
122 |
+
background-color: @white;
|
123 |
+
border: 1px solid #ddd;
|
124 |
+
border-bottom-color: transparent;
|
125 |
+
cursor: default;
|
126 |
+
}
|
127 |
+
|
128 |
+
// PILLS
|
129 |
+
// -----
|
130 |
+
|
131 |
+
// Links rendered as pills
|
132 |
+
.nav-pills > li > a {
|
133 |
+
padding-top: 8px;
|
134 |
+
padding-bottom: 8px;
|
135 |
+
margin-top: 2px;
|
136 |
+
margin-bottom: 2px;
|
137 |
+
.border-radius(5px);
|
138 |
+
}
|
139 |
+
|
140 |
+
// Active state
|
141 |
+
.nav-pills > .active > a,
|
142 |
+
.nav-pills > .active > a:hover {
|
143 |
+
color: @white;
|
144 |
+
background-color: @linkColor;
|
145 |
+
}
|
146 |
+
|
147 |
+
|
148 |
+
|
149 |
+
// STACKED NAV
|
150 |
+
// -----------
|
151 |
+
|
152 |
+
// Stacked tabs and pills
|
153 |
+
.nav-stacked > li {
|
154 |
+
float: none;
|
155 |
+
}
|
156 |
+
.nav-stacked > li > a {
|
157 |
+
margin-right: 0; // no need for the gap between nav items
|
158 |
+
}
|
159 |
+
|
160 |
+
// Tabs
|
161 |
+
.nav-tabs.nav-stacked {
|
162 |
+
border-bottom: 0;
|
163 |
+
}
|
164 |
+
.nav-tabs.nav-stacked > li > a {
|
165 |
+
border: 1px solid #ddd;
|
166 |
+
.border-radius(0);
|
167 |
+
}
|
168 |
+
.nav-tabs.nav-stacked > li:first-child > a {
|
169 |
+
.border-radius(4px 4px 0 0);
|
170 |
+
}
|
171 |
+
.nav-tabs.nav-stacked > li:last-child > a {
|
172 |
+
.border-radius(0 0 4px 4px);
|
173 |
+
}
|
174 |
+
.nav-tabs.nav-stacked > li > a:hover {
|
175 |
+
border-color: #ddd;
|
176 |
+
z-index: 2;
|
177 |
+
}
|
178 |
+
|
179 |
+
// Pills
|
180 |
+
.nav-pills.nav-stacked > li > a {
|
181 |
+
margin-bottom: 3px;
|
182 |
+
}
|
183 |
+
.nav-pills.nav-stacked > li:last-child > a {
|
184 |
+
margin-bottom: 1px; // decrease margin to match sizing of stacked tabs
|
185 |
+
}
|
186 |
+
|
187 |
+
|
188 |
+
|
189 |
+
// DROPDOWNS
|
190 |
+
// ---------
|
191 |
+
|
192 |
+
// Position the menu
|
193 |
+
.nav-tabs .dropdown-menu,
|
194 |
+
.nav-pills .dropdown-menu {
|
195 |
+
margin-top: 1px;
|
196 |
+
border-width: 1px;
|
197 |
+
}
|
198 |
+
.nav-pills .dropdown-menu {
|
199 |
+
.border-radius(4px);
|
200 |
+
}
|
201 |
+
|
202 |
+
// Default dropdown links
|
203 |
+
// -------------------------
|
204 |
+
// Make carets use linkColor to start
|
205 |
+
.nav-tabs .dropdown-toggle .caret,
|
206 |
+
.nav-pills .dropdown-toggle .caret {
|
207 |
+
border-top-color: @linkColor;
|
208 |
+
border-bottom-color: @linkColor;
|
209 |
+
margin-top: 6px;
|
210 |
+
}
|
211 |
+
.nav-tabs .dropdown-toggle:hover .caret,
|
212 |
+
.nav-pills .dropdown-toggle:hover .caret {
|
213 |
+
border-top-color: @linkColorHover;
|
214 |
+
border-bottom-color: @linkColorHover;
|
215 |
+
}
|
216 |
+
|
217 |
+
// Active dropdown links
|
218 |
+
// -------------------------
|
219 |
+
.nav-tabs .active .dropdown-toggle .caret,
|
220 |
+
.nav-pills .active .dropdown-toggle .caret {
|
221 |
+
border-top-color: @grayDark;
|
222 |
+
border-bottom-color: @grayDark;
|
223 |
+
}
|
224 |
+
|
225 |
+
// Active:hover dropdown links
|
226 |
+
// -------------------------
|
227 |
+
.nav > .dropdown.active > a:hover {
|
228 |
+
color: @black;
|
229 |
+
cursor: pointer;
|
230 |
+
}
|
231 |
+
|
232 |
+
// Open dropdowns
|
233 |
+
// -------------------------
|
234 |
+
.nav-tabs .open .dropdown-toggle,
|
235 |
+
.nav-pills .open .dropdown-toggle,
|
236 |
+
.nav > .open.active > a:hover {
|
237 |
+
color: @white;
|
238 |
+
background-color: @grayLight;
|
239 |
+
border-color: @grayLight;
|
240 |
+
}
|
241 |
+
.nav .open .caret,
|
242 |
+
.nav .open.active .caret,
|
243 |
+
.nav .open a:hover .caret {
|
244 |
+
border-top-color: @white;
|
245 |
+
border-bottom-color: @white;
|
246 |
+
.opacity(100);
|
247 |
+
}
|
248 |
+
|
249 |
+
// Dropdowns in stacked tabs
|
250 |
+
.tabs-stacked .open > a:hover {
|
251 |
+
border-color: @grayLight;
|
252 |
+
}
|
253 |
+
|
254 |
+
|
255 |
+
|
256 |
+
// TABBABLE
|
257 |
+
// --------
|
258 |
+
|
259 |
+
|
260 |
+
// COMMON STYLES
|
261 |
+
// -------------
|
262 |
+
|
263 |
+
// Clear any floats
|
264 |
+
.tabbable {
|
265 |
+
.clearfix();
|
266 |
+
}
|
267 |
+
.tab-content {
|
268 |
+
display: table; // prevent content from running below tabs
|
269 |
+
width: 100%;
|
270 |
+
}
|
271 |
+
|
272 |
+
// Remove border on bottom, left, right
|
273 |
+
.tabs-below .nav-tabs,
|
274 |
+
.tabs-right .nav-tabs,
|
275 |
+
.tabs-left .nav-tabs {
|
276 |
+
border-bottom: 0;
|
277 |
+
}
|
278 |
+
|
279 |
+
// Show/hide tabbable areas
|
280 |
+
.tab-content > .tab-pane,
|
281 |
+
.pill-content > .pill-pane {
|
282 |
+
display: none;
|
283 |
+
}
|
284 |
+
.tab-content > .active,
|
285 |
+
.pill-content > .active {
|
286 |
+
display: block;
|
287 |
+
}
|
288 |
+
|
289 |
+
|
290 |
+
// BOTTOM
|
291 |
+
// ------
|
292 |
+
|
293 |
+
.tabs-below .nav-tabs {
|
294 |
+
border-top: 1px solid #ddd;
|
295 |
+
}
|
296 |
+
.tabs-below .nav-tabs > li {
|
297 |
+
margin-top: -1px;
|
298 |
+
margin-bottom: 0;
|
299 |
+
}
|
300 |
+
.tabs-below .nav-tabs > li > a {
|
301 |
+
.border-radius(0 0 4px 4px);
|
302 |
+
&:hover {
|
303 |
+
border-bottom-color: transparent;
|
304 |
+
border-top-color: #ddd;
|
305 |
+
}
|
306 |
+
}
|
307 |
+
.tabs-below .nav-tabs .active > a,
|
308 |
+
.tabs-below .nav-tabs .active > a:hover {
|
309 |
+
border-color: transparent #ddd #ddd #ddd;
|
310 |
+
}
|
311 |
+
|
312 |
+
// LEFT & RIGHT
|
313 |
+
// ------------
|
314 |
+
|
315 |
+
// Common styles
|
316 |
+
.tabs-left .nav-tabs > li,
|
317 |
+
.tabs-right .nav-tabs > li {
|
318 |
+
float: none;
|
319 |
+
}
|
320 |
+
.tabs-left .nav-tabs > li > a,
|
321 |
+
.tabs-right .nav-tabs > li > a {
|
322 |
+
min-width: 74px;
|
323 |
+
margin-right: 0;
|
324 |
+
margin-bottom: 3px;
|
325 |
+
}
|
326 |
+
|
327 |
+
// Tabs on the left
|
328 |
+
.tabs-left .nav-tabs {
|
329 |
+
float: left;
|
330 |
+
margin-right: 19px;
|
331 |
+
border-right: 1px solid #ddd;
|
332 |
+
}
|
333 |
+
.tabs-left .nav-tabs > li > a {
|
334 |
+
margin-right: -1px;
|
335 |
+
.border-radius(4px 0 0 4px);
|
336 |
+
}
|
337 |
+
.tabs-left .nav-tabs > li > a:hover {
|
338 |
+
border-color: @grayLighter #ddd @grayLighter @grayLighter;
|
339 |
+
}
|
340 |
+
.tabs-left .nav-tabs .active > a,
|
341 |
+
.tabs-left .nav-tabs .active > a:hover {
|
342 |
+
border-color: #ddd transparent #ddd #ddd;
|
343 |
+
*border-right-color: @white;
|
344 |
+
}
|
345 |
+
|
346 |
+
// Tabs on the right
|
347 |
+
.tabs-right .nav-tabs {
|
348 |
+
float: right;
|
349 |
+
margin-left: 19px;
|
350 |
+
border-left: 1px solid #ddd;
|
351 |
+
}
|
352 |
+
.tabs-right .nav-tabs > li > a {
|
353 |
+
margin-left: -1px;
|
354 |
+
.border-radius(0 4px 4px 0);
|
355 |
+
}
|
356 |
+
.tabs-right .nav-tabs > li > a:hover {
|
357 |
+
border-color: @grayLighter @grayLighter @grayLighter #ddd;
|
358 |
+
}
|
359 |
+
.tabs-right .nav-tabs .active > a,
|
360 |
+
.tabs-right .nav-tabs .active > a:hover {
|
361 |
+
border-color: #ddd #ddd #ddd transparent;
|
362 |
+
*border-left-color: @white;
|
363 |
+
}
|
app/view/admin/less/reset.less
ADDED
@@ -0,0 +1,126 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
// Reset.less
|
2 |
+
// Adapted from Normalize.css http://github.com/necolas/normalize.css
|
3 |
+
// ------------------------------------------------------------------------
|
4 |
+
|
5 |
+
// Display in IE6-9 and FF3
|
6 |
+
// -------------------------
|
7 |
+
|
8 |
+
article,
|
9 |
+
aside,
|
10 |
+
details,
|
11 |
+
figcaption,
|
12 |
+
figure,
|
13 |
+
footer,
|
14 |
+
header,
|
15 |
+
hgroup,
|
16 |
+
nav,
|
17 |
+
section {
|
18 |
+
display: block;
|
19 |
+
}
|
20 |
+
|
21 |
+
// Display block in IE6-9 and FF3
|
22 |
+
// -------------------------
|
23 |
+
|
24 |
+
audio,
|
25 |
+
canvas,
|
26 |
+
video {
|
27 |
+
display: inline-block;
|
28 |
+
*display: inline;
|
29 |
+
*zoom: 1;
|
30 |
+
}
|
31 |
+
|
32 |
+
// Prevents modern browsers from displaying 'audio' without controls
|
33 |
+
// -------------------------
|
34 |
+
|
35 |
+
audio:not([controls]) {
|
36 |
+
display: none;
|
37 |
+
}
|
38 |
+
|
39 |
+
// Base settings
|
40 |
+
// -------------------------
|
41 |
+
|
42 |
+
html {
|
43 |
+
font-size: 100%;
|
44 |
+
-webkit-text-size-adjust: 100%;
|
45 |
+
-ms-text-size-adjust: 100%;
|
46 |
+
}
|
47 |
+
// Focus states
|
48 |
+
a:focus {
|
49 |
+
.tab-focus();
|
50 |
+
}
|
51 |
+
// Hover & Active
|
52 |
+
a:hover,
|
53 |
+
a:active {
|
54 |
+
outline: 0;
|
55 |
+
}
|
56 |
+
|
57 |
+
// Prevents sub and sup affecting line-height in all browsers
|
58 |
+
// -------------------------
|
59 |
+
|
60 |
+
sub,
|
61 |
+
sup {
|
62 |
+
position: relative;
|
63 |
+
font-size: 75%;
|
64 |
+
line-height: 0;
|
65 |
+
vertical-align: baseline;
|
66 |
+
}
|
67 |
+
sup {
|
68 |
+
top: -0.5em;
|
69 |
+
}
|
70 |
+
sub {
|
71 |
+
bottom: -0.25em;
|
72 |
+
}
|
73 |
+
|
74 |
+
// Img border in a's and image quality
|
75 |
+
// -------------------------
|
76 |
+
|
77 |
+
img {
|
78 |
+
height: auto;
|
79 |
+
border: 0;
|
80 |
+
-ms-interpolation-mode: bicubic;
|
81 |
+
vertical-align: middle;
|
82 |
+
}
|
83 |
+
|
84 |
+
// Forms
|
85 |
+
// -------------------------
|
86 |
+
|
87 |
+
// Font size in all browsers, margin changes, misc consistency
|
88 |
+
button,
|
89 |
+
input,
|
90 |
+
select,
|
91 |
+
textarea {
|
92 |
+
margin: 0;
|
93 |
+
font-size: 100%;
|
94 |
+
vertical-align: middle;
|
95 |
+
}
|
96 |
+
button,
|
97 |
+
input {
|
98 |
+
*overflow: visible; // Inner spacing ie IE6/7
|
99 |
+
line-height: normal; // FF3/4 have !important on line-height in UA stylesheet
|
100 |
+
}
|
101 |
+
button::-moz-focus-inner,
|
102 |
+
input::-moz-focus-inner { // Inner padding and border oddities in FF3/4
|
103 |
+
padding: 0;
|
104 |
+
border: 0;
|
105 |
+
}
|
106 |
+
button,
|
107 |
+
input[type="button"],
|
108 |
+
input[type="reset"],
|
109 |
+
input[type="submit"] {
|
110 |
+
cursor: pointer; // Cursors on all buttons applied consistently
|
111 |
+
-webkit-appearance: button; // Style clickable inputs in iOS
|
112 |
+
}
|
113 |
+
input[type="search"] { // Appearance in Safari/Chrome
|
114 |
+
-webkit-appearance: textfield;
|
115 |
+
-webkit-box-sizing: content-box;
|
116 |
+
-moz-box-sizing: content-box;
|
117 |
+
box-sizing: content-box;
|
118 |
+
}
|
119 |
+
input[type="search"]::-webkit-search-decoration,
|
120 |
+
input[type="search"]::-webkit-search-cancel-button {
|
121 |
+
-webkit-appearance: none; // Inner-padding issues in Chrome OSX, Safari 5
|
122 |
+
}
|
123 |
+
textarea {
|
124 |
+
overflow: auto; // Remove vertical scrollbar in IE6-9
|
125 |
+
vertical-align: top; // Readability and alignment cross-browser
|
126 |
+
}
|
app/view/admin/less/scaffolding.less
ADDED
@@ -0,0 +1,29 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
// Scaffolding
|
2 |
+
// Basic and global styles for generating a grid system, structural layout, and page templates
|
3 |
+
// -------------------------------------------------------------------------------------------
|
4 |
+
|
5 |
+
|
6 |
+
// Body reset
|
7 |
+
// ----------
|
8 |
+
|
9 |
+
body {
|
10 |
+
margin: 0;
|
11 |
+
font-family: @baseFontFamily;
|
12 |
+
font-size: @baseFontSize;
|
13 |
+
line-height: @baseLineHeight;
|
14 |
+
color: @textColor;
|
15 |
+
background-color: @bodyBackground;
|
16 |
+
}
|
17 |
+
|
18 |
+
|
19 |
+
// Links
|
20 |
+
// -----
|
21 |
+
|
22 |
+
a {
|
23 |
+
color: @linkColor;
|
24 |
+
text-decoration: none;
|
25 |
+
}
|
26 |
+
a:hover {
|
27 |
+
color: @linkColorHover;
|
28 |
+
text-decoration: underline;
|
29 |
+
}
|
app/view/admin/less/type.less
ADDED
@@ -0,0 +1,234 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
// Typography.less
|
2 |
+
// Headings, body text, lists, code, and more for a versatile and durable typography system
|
3 |
+
// ----------------------------------------------------------------------------------------
|
4 |
+
|
5 |
+
|
6 |
+
// BODY TEXT
|
7 |
+
// ---------
|
8 |
+
|
9 |
+
p {
|
10 |
+
margin: 0 0 @baseLineHeight / 2;
|
11 |
+
font-family: @baseFontFamily;
|
12 |
+
font-size: @baseFontSize;
|
13 |
+
line-height: @baseLineHeight;
|
14 |
+
small {
|
15 |
+
font-size: @baseFontSize - 2;
|
16 |
+
color: @grayLight;
|
17 |
+
}
|
18 |
+
}
|
19 |
+
.lead {
|
20 |
+
margin-bottom: @baseLineHeight;
|
21 |
+
font-size: 20px;
|
22 |
+
font-weight: 200;
|
23 |
+
line-height: @baseLineHeight * 1.5;
|
24 |
+
}
|
25 |
+
|
26 |
+
// HEADINGS
|
27 |
+
// --------
|
28 |
+
|
29 |
+
h1, h2, h3, h4, h5, h6 {
|
30 |
+
margin: 0;
|
31 |
+
font-family: @headingsFontFamily;
|
32 |
+
font-weight: @headingsFontWeight;
|
33 |
+
color: @headingsColor;
|
34 |
+
text-rendering: optimizelegibility; // Fix the character spacing for headings
|
35 |
+
small {
|
36 |
+
font-weight: normal;
|
37 |
+
color: @grayLight;
|
38 |
+
}
|
39 |
+
}
|
40 |
+
h1 {
|
41 |
+
font-size: 30px;
|
42 |
+
line-height: @baseLineHeight * 2;
|
43 |
+
small {
|
44 |
+
font-size: 18px;
|
45 |
+
}
|
46 |
+
}
|
47 |
+
h2 {
|
48 |
+
font-size: 24px;
|
49 |
+
line-height: @baseLineHeight * 2;
|
50 |
+
small {
|
51 |
+
font-size: 18px;
|
52 |
+
}
|
53 |
+
}
|
54 |
+
h3 {
|
55 |
+
line-height: @baseLineHeight * 1.5;
|
56 |
+
font-size: 18px;
|
57 |
+
small {
|
58 |
+
font-size: 14px;
|
59 |
+
}
|
60 |
+
}
|
61 |
+
h4, h5, h6 {
|
62 |
+
line-height: @baseLineHeight;
|
63 |
+
}
|
64 |
+
h4 {
|
65 |
+
font-size: 14px;
|
66 |
+
small {
|
67 |
+
font-size: 12px;
|
68 |
+
}
|
69 |
+
}
|
70 |
+
h5 {
|
71 |
+
font-size: 12px;
|
72 |
+
}
|
73 |
+
h6 {
|
74 |
+
font-size: 11px;
|
75 |
+
color: @grayLight;
|
76 |
+
text-transform: uppercase;
|
77 |
+
}
|
78 |
+
|
79 |
+
// Page header
|
80 |
+
.page-header {
|
81 |
+
padding-bottom: @baseLineHeight - 1;
|
82 |
+
margin: @baseLineHeight 0;
|
83 |
+
border-bottom: 1px solid @grayLighter;
|
84 |
+
}
|
85 |
+
.page-header h1 {
|
86 |
+
line-height: 1;
|
87 |
+
}
|
88 |
+
|
89 |
+
|
90 |
+
|
91 |
+
// LISTS
|
92 |
+
// -----
|
93 |
+
|
94 |
+
// Unordered and Ordered lists
|
95 |
+
ul, ol {
|
96 |
+
padding: 0;
|
97 |
+
margin: 0 0 @baseLineHeight / 2 25px;
|
98 |
+
}
|
99 |
+
ul ul,
|
100 |
+
ul ol,
|
101 |
+
ol ol,
|
102 |
+
ol ul {
|
103 |
+
margin-bottom: 0;
|
104 |
+
}
|
105 |
+
ul {
|
106 |
+
list-style: disc;
|
107 |
+
}
|
108 |
+
ol {
|
109 |
+
list-style: decimal;
|
110 |
+
}
|
111 |
+
li {
|
112 |
+
line-height: @baseLineHeight;
|
113 |
+
}
|
114 |
+
ul.unstyled,
|
115 |
+
ol.unstyled {
|
116 |
+
margin-left: 0;
|
117 |
+
list-style: none;
|
118 |
+
}
|
119 |
+
|
120 |
+
// Description Lists
|
121 |
+
dl {
|
122 |
+
margin-bottom: @baseLineHeight;
|
123 |
+
}
|
124 |
+
dt,
|
125 |
+
dd {
|
126 |
+
line-height: @baseLineHeight;
|
127 |
+
}
|
128 |
+
dt {
|
129 |
+
font-weight: bold;
|
130 |
+
line-height: @baseLineHeight - 1; // fix jank Helvetica Neue font bug
|
131 |
+
}
|
132 |
+
dd {
|
133 |
+
margin-left: @baseLineHeight / 2;
|
134 |
+
}
|
135 |
+
// Horizontal layout (like forms)
|
136 |
+
.dl-horizontal {
|
137 |
+
dt {
|
138 |
+
float: left;
|
139 |
+
clear: left;
|
140 |
+
width: 120px;
|
141 |
+
text-align: right;
|
142 |
+
}
|
143 |
+
dd {
|
144 |
+
margin-left: 130px;
|
145 |
+
}
|
146 |
+
}
|
147 |
+
|
148 |
+
// MISC
|
149 |
+
// ----
|
150 |
+
|
151 |
+
// Horizontal rules
|
152 |
+
hr {
|
153 |
+
margin: @baseLineHeight 0;
|
154 |
+
border: 0;
|
155 |
+
border-top: 1px solid @hrBorder;
|
156 |
+
border-bottom: 1px solid @white;
|
157 |
+
}
|
158 |
+
|
159 |
+
// Emphasis
|
160 |
+
strong {
|
161 |
+
font-weight: bold;
|
162 |
+
}
|
163 |
+
em {
|
164 |
+
font-style: italic;
|
165 |
+
}
|
166 |
+
.muted {
|
167 |
+
color: @grayLight;
|
168 |
+
}
|
169 |
+
|
170 |
+
// Abbreviations and acronyms
|
171 |
+
abbr[title] {
|
172 |
+
border-bottom: 1px dotted #ddd;
|
173 |
+
cursor: help;
|
174 |
+
}
|
175 |
+
abbr.initialism {
|
176 |
+
font-size: 90%;
|
177 |
+
text-transform: uppercase;
|
178 |
+
}
|
179 |
+
|
180 |
+
// Blockquotes
|
181 |
+
blockquote {
|
182 |
+
padding: 0 0 0 15px;
|
183 |
+
margin: 0 0 @baseLineHeight;
|
184 |
+
border-left: 5px solid @grayLighter;
|
185 |
+
p {
|
186 |
+
margin-bottom: 0;
|
187 |
+
#font > .shorthand(16px,300,@baseLineHeight * 1.25);
|
188 |
+
}
|
189 |
+
small {
|
190 |
+
display: block;
|
191 |
+
line-height: @baseLineHeight;
|
192 |
+
color: @grayLight;
|
193 |
+
&:before {
|
194 |
+
content: '\2014 \00A0';
|
195 |
+
}
|
196 |
+
}
|
197 |
+
|
198 |
+
// Float right with text-align: right
|
199 |
+
&.pull-right {
|
200 |
+
float: right;
|
201 |
+
padding-left: 0;
|
202 |
+
padding-right: 15px;
|
203 |
+
border-left: 0;
|
204 |
+
border-right: 5px solid @grayLighter;
|
205 |
+
p,
|
206 |
+
small {
|
207 |
+
text-align: right;
|
208 |
+
}
|
209 |
+
}
|
210 |
+
}
|
211 |
+
|
212 |
+
// Quotes
|
213 |
+
q:before,
|
214 |
+
q:after,
|
215 |
+
blockquote:before,
|
216 |
+
blockquote:after {
|
217 |
+
content: "";
|
218 |
+
}
|
219 |
+
|
220 |
+
// Addresses
|
221 |
+
address {
|
222 |
+
display: block;
|
223 |
+
margin-bottom: @baseLineHeight;
|
224 |
+
line-height: @baseLineHeight;
|
225 |
+
font-style: normal;
|
226 |
+
}
|
227 |
+
|
228 |
+
// Misc
|
229 |
+
small {
|
230 |
+
font-size: 100%;
|
231 |
+
}
|
232 |
+
cite {
|
233 |
+
font-style: normal;
|
234 |
+
}
|
app/view/admin/less/utilities.less
ADDED
@@ -0,0 +1,23 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
// UTILITY CLASSES
|
2 |
+
// ---------------
|
3 |
+
|
4 |
+
// Quick floats
|
5 |
+
.pull-right {
|
6 |
+
float: right;
|
7 |
+
}
|
8 |
+
.pull-left {
|
9 |
+
float: left;
|
10 |
+
}
|
11 |
+
|
12 |
+
// Toggling content
|
13 |
+
.hide {
|
14 |
+
display: none;
|
15 |
+
}
|
16 |
+
.show {
|
17 |
+
display: block;
|
18 |
+
}
|
19 |
+
|
20 |
+
// Visibility
|
21 |
+
.invisible {
|
22 |
+
visibility: hidden;
|
23 |
+
}
|
app/view/admin/less/variables.less
ADDED
@@ -0,0 +1,205 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
// Variables.less
|
2 |
+
// Variables to customize the look and feel of Bootstrap
|
3 |
+
// -----------------------------------------------------
|
4 |
+
|
5 |
+
|
6 |
+
|
7 |
+
// GLOBAL VALUES
|
8 |
+
// --------------------------------------------------
|
9 |
+
|
10 |
+
|
11 |
+
// Grays
|
12 |
+
// -------------------------
|
13 |
+
@black: #000;
|
14 |
+
@grayDarker: #222;
|
15 |
+
@grayDark: #333;
|
16 |
+
@gray: #555;
|
17 |
+
@grayLight: #999;
|
18 |
+
@grayLighter: #eee;
|
19 |
+
@white: #fff;
|
20 |
+
|
21 |
+
|
22 |
+
// Accent colors
|
23 |
+
// -------------------------
|
24 |
+
@blue: #269DD9;
|
25 |
+
@blueDark: #0974AA;
|
26 |
+
@teal: #3A77A6;
|
27 |
+
@tealDark: #135486;
|
28 |
+
@turquoise: #47c3ce;
|
29 |
+
@green: #60AC39;
|
30 |
+
@greenDark: saturate(darken(@green, 10%), 10%);
|
31 |
+
@red: #F05C4C;
|
32 |
+
@yellow: #fdcc46;
|
33 |
+
@orange: #E08652;
|
34 |
+
@pink: #f54365;
|
35 |
+
@purple: #532b81;
|
36 |
+
|
37 |
+
|
38 |
+
// Scaffolding
|
39 |
+
// -------------------------
|
40 |
+
@bodyBackground: @white;
|
41 |
+
@textColor: @grayDark;
|
42 |
+
|
43 |
+
|
44 |
+
// Links
|
45 |
+
// -------------------------
|
46 |
+
@linkColor: @greenDark;
|
47 |
+
@linkColorHover: darken(@linkColor, 15%);
|
48 |
+
|
49 |
+
|
50 |
+
// Typography
|
51 |
+
// -------------------------
|
52 |
+
@baseFontSize: 13px;
|
53 |
+
@baseFontFamily: "Helvetica Neue", Helvetica, Arial, sans-serif;
|
54 |
+
@baseLineHeight: 18px;
|
55 |
+
@altFontFamily: Georgia, "Times New Roman", Times, serif;
|
56 |
+
|
57 |
+
@headingsFontFamily: 'Droid Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;
|
58 |
+
@headingsFontWeight: bold;
|
59 |
+
@headingsColor: @tealDark;
|
60 |
+
|
61 |
+
|
62 |
+
// Tables
|
63 |
+
// -------------------------
|
64 |
+
@tableBackground: transparent; // overall background-color
|
65 |
+
@tableBackgroundAccent: #f9f9f9; // for striping
|
66 |
+
@tableBackgroundHover: #f5f5f5; // for hover
|
67 |
+
@tableBorder: #ddd; // table and cell border
|
68 |
+
|
69 |
+
|
70 |
+
// Buttons
|
71 |
+
// -------------------------
|
72 |
+
@btnBackground: @white;
|
73 |
+
@btnBackgroundHighlight: darken(@white, 10%);
|
74 |
+
@btnBorder: darken(@white, 20%);
|
75 |
+
|
76 |
+
@btnPrimaryBackground: lighten(@green, 5%);
|
77 |
+
@btnPrimaryBackgroundHighlight: darken(spin(@btnPrimaryBackground, 15%), 10%);
|
78 |
+
|
79 |
+
@btnInfoBackground: #5bc0de;
|
80 |
+
@btnInfoBackgroundHighlight: #2f96b4;
|
81 |
+
|
82 |
+
@btnSuccessBackground: #62c462;
|
83 |
+
@btnSuccessBackgroundHighlight: #51a351;
|
84 |
+
|
85 |
+
@btnWarningBackground: lighten(@orange, 15%);
|
86 |
+
@btnWarningBackgroundHighlight: @orange;
|
87 |
+
|
88 |
+
@btnDangerBackground: #ee5f5b;
|
89 |
+
@btnDangerBackgroundHighlight: #bd362f;
|
90 |
+
|
91 |
+
@btnInverseBackground: @gray;
|
92 |
+
@btnInverseBackgroundHighlight: @grayDarker;
|
93 |
+
|
94 |
+
|
95 |
+
// Forms
|
96 |
+
// -------------------------
|
97 |
+
@inputBackground: @white;
|
98 |
+
@inputBorder: #ccc;
|
99 |
+
@inputDisabledBackground: @grayLighter;
|
100 |
+
|
101 |
+
|
102 |
+
// Dropdowns
|
103 |
+
// -------------------------
|
104 |
+
@dropdownBackground: @white;
|
105 |
+
@dropdownBorder: rgba(0,0,0,.2);
|
106 |
+
@dropdownLinkColor: @grayDark;
|
107 |
+
@dropdownLinkColorHover: @white;
|
108 |
+
@dropdownLinkBackgroundHover: @linkColor;
|
109 |
+
|
110 |
+
|
111 |
+
|
112 |
+
|
113 |
+
// COMPONENT VARIABLES
|
114 |
+
// --------------------------------------------------
|
115 |
+
|
116 |
+
// Z-index master list
|
117 |
+
// -------------------------
|
118 |
+
// Used for a bird's eye view of components dependent on the z-axis
|
119 |
+
// Try to avoid customizing these :)
|
120 |
+
@zindexDropdown: 1000;
|
121 |
+
@zindexPopover: 1010;
|
122 |
+
@zindexTooltip: 1020;
|
123 |
+
@zindexFixedNavbar: 1030;
|
124 |
+
@zindexModalBackdrop: 1040;
|
125 |
+
@zindexModal: 1050;
|
126 |
+
|
127 |
+
|
128 |
+
// Sprite icons path
|
129 |
+
// -------------------------
|
130 |
+
@iconSpritePath: "../img/glyphicons-halflings.png";
|
131 |
+
@iconWhiteSpritePath: "../img/glyphicons-halflings-white.png";
|
132 |
+
|
133 |
+
|
134 |
+
// Input placeholder text color
|
135 |
+
// -------------------------
|
136 |
+
@placeholderText: @grayLight;
|
137 |
+
|
138 |
+
|
139 |
+
// Hr border color
|
140 |
+
// -------------------------
|
141 |
+
@hrBorder: @grayLighter;
|
142 |
+
|
143 |
+
|
144 |
+
// Navbar
|
145 |
+
// -------------------------
|
146 |
+
@navbarHeight: 40px;
|
147 |
+
@navbarBackground: @grayDarker;
|
148 |
+
@navbarBackgroundHighlight: @grayDark;
|
149 |
+
|
150 |
+
@navbarText: @grayLight;
|
151 |
+
@navbarLinkColor: @grayLight;
|
152 |
+
@navbarLinkColorHover: @white;
|
153 |
+
@navbarLinkColorActive: @navbarLinkColorHover;
|
154 |
+
@navbarLinkBackgroundHover: transparent;
|
155 |
+
@navbarLinkBackgroundActive: @navbarBackground;
|
156 |
+
|
157 |
+
@navbarSearchBackground: lighten(@navbarBackground, 25%);
|
158 |
+
@navbarSearchBackgroundFocus: @white;
|
159 |
+
@navbarSearchBorder: darken(@navbarSearchBackground, 30%);
|
160 |
+
@navbarSearchPlaceholderColor: #ccc;
|
161 |
+
|
162 |
+
|
163 |
+
// Hero unit
|
164 |
+
// -------------------------
|
165 |
+
@heroUnitBackground: @grayLighter;
|
166 |
+
@heroUnitHeadingColor: inherit;
|
167 |
+
@heroUnitLeadColor: inherit;
|
168 |
+
|
169 |
+
|
170 |
+
// Form states and alerts
|
171 |
+
// -------------------------
|
172 |
+
@warningText: #c09853;
|
173 |
+
@warningBackground: #fcf8e3;
|
174 |
+
@warningBorder: darken(spin(@warningBackground, -10), 3%);
|
175 |
+
|
176 |
+
@errorText: #b94a48;
|
177 |
+
@errorBackground: #f2dede;
|
178 |
+
@errorBorder: darken(spin(@errorBackground, -10), 3%);
|
179 |
+
|
180 |
+
@successText: #468847;
|
181 |
+
@successBackground: #dff0d8;
|
182 |
+
@successBorder: darken(spin(@successBackground, -10), 5%);
|
183 |
+
|
184 |
+
@infoText: #3a87ad;
|
185 |
+
@infoBackground: #d9edf7;
|
186 |
+
@infoBorder: darken(spin(@infoBackground, -10), 7%);
|
187 |
+
|
188 |
+
|
189 |
+
|
190 |
+
|
191 |
+
// GRID
|
192 |
+
// --------------------------------------------------
|
193 |
+
|
194 |
+
// Default 940px grid
|
195 |
+
// -------------------------
|
196 |
+
@gridColumns: 12;
|
197 |
+
@gridColumnWidth: 60px;
|
198 |
+
@gridGutterWidth: 20px;
|
199 |
+
@gridRowWidth: (@gridColumns * @gridColumnWidth) + (@gridGutterWidth * (@gridColumns - 1));
|
200 |
+
|
201 |
+
|
202 |
+
// Fluid grid
|
203 |
+
// -------------------------
|
204 |
+
@fluidGridColumnWidth: 6.382978723%;
|
205 |
+
@fluidGridGutterWidth: 2.127659574%;
|
app/view/{on_the_select.php → admin/on_the_select.php}
RENAMED
File without changes
|
app/view/{row_daily.php → admin/row_daily.php}
RENAMED
File without changes
|
app/view/{row_monthly.php → admin/row_monthly.php}
RENAMED
File without changes
|
app/view/{row_weekly.php → admin/row_weekly.php}
RENAMED
File without changes
|
app/view/{row_yearly.php → admin/row_yearly.php}
RENAMED
File without changes
|
app/view/{save_successful.php → admin/save_successful.php}
RENAMED
File without changes
|
app/view/{settings.php → admin/settings.php}
RENAMED
@@ -2,7 +2,7 @@
|
|
2 |
|
3 |
<?php screen_icon(); ?>
|
4 |
|
5 |
-
<h2><?php
|
6 |
|
7 |
<div id="poststuff">
|
8 |
|
2 |
|
3 |
<?php screen_icon(); ?>
|
4 |
|
5 |
+
<h2><?php echo $title; ?></h2>
|
6 |
|
7 |
<div id="poststuff">
|
8 |
|
app/view/{subscription_button.php → admin/subscription_button.php}
RENAMED
File without changes
|
app/view/agenda-widget-form.php
DELETED
@@ -1,69 +0,0 @@
|
|
1 |
-
<p>
|
2 |
-
<label for="<?php echo $title['id'] ?>"><?php _e( 'Title:', AI1EC_PLUGIN_NAME ) ?></label>
|
3 |
-
<input class="widefat" id="<?php echo $title['id'] ?>" name="<?php echo $title['name'] ?>" type="text" value="<?php echo $title['value'] ?>" />
|
4 |
-
</p>
|
5 |
-
<p>
|
6 |
-
<label for="<?php echo $events_per_page['id'] ?>"><?php _e( 'Number of events to show:', AI1EC_PLUGIN_NAME ) ?></label>
|
7 |
-
<input id="<?php echo $events_per_page['id'] ?>" name="<?php echo $events_per_page['name'] ?>" type="text" size="3" value="<?php echo $events_per_page['value'] ?>" />
|
8 |
-
</p>
|
9 |
-
<p class="ai1ec-limit-by-container">
|
10 |
-
Limit to:
|
11 |
-
<br />
|
12 |
-
<!-- Limit by Category -->
|
13 |
-
<input id="<?php echo $limit_by_cat['id'] ?>" class="ai1ec-limit-by-cat" name="<?php echo $limit_by_cat['name'] ?>" type="checkbox" value="1" <?php if( $limit_by_cat['value'] ) echo 'checked="checked"' ?> />
|
14 |
-
<label for="<?php echo $limit_by_cat['id'] ?>"><?php _e( 'Events with these <strong>Categories</strong>', AI1EC_PLUGIN_NAME ) ?></label>
|
15 |
-
</p>
|
16 |
-
<div class="ai1ec-limit-by-options-container" <?php if( ! $limit_by_cat['value'] ) { ?> style="display: none;" <?php } ?>>
|
17 |
-
<!-- Limit by Category Select box -->
|
18 |
-
<select id="<?php echo $event_cat_ids['id'] ?>" class="ai1ec-widget-cat-ids" name="<?php echo $event_cat_ids['name'] ?>[]" size="5" multiple="multiple">
|
19 |
-
<?php foreach( $event_cat_ids['options'] as $event_cat ): ?>
|
20 |
-
<option value="<?php echo $event_cat->term_id; ?>"<?php if( in_array( $event_cat->term_id, $event_cat_ids['value'] ) ) { ?> selected="selected"<?php } ?>><?php echo $event_cat->name; ?></option>
|
21 |
-
<?php endforeach ?>
|
22 |
-
<?php if( count( $event_cat_ids['options'] ) == 0 ) : ?>
|
23 |
-
<option disabled="disabled"><?php _e( 'No categories found.', AI1EC_PLUGIN_NAME ) ?></option>
|
24 |
-
<?php endif ?>
|
25 |
-
</select>
|
26 |
-
</div>
|
27 |
-
<p class="ai1ec-limit-by-container">
|
28 |
-
<!-- Limit by Tag -->
|
29 |
-
<input id="<?php echo $limit_by_tag['id'] ?>" class="ai1ec-limit-by-tag" name="<?php echo $limit_by_tag['name'] ?>" type="checkbox" value="1" <?php if( $limit_by_tag['value'] ) echo 'checked="checked"' ?> />
|
30 |
-
<label for="<?php echo $limit_by_tag['id'] ?>"><?php _e( '<strong>Or</strong> events with these <strong>Tags</strong>', AI1EC_PLUGIN_NAME ) ?></label>
|
31 |
-
</p>
|
32 |
-
<div class="ai1ec-limit-by-options-container" <?php if( ! $limit_by_tag['value'] ) { ?> style="display: none;" <?php } ?>>
|
33 |
-
<!-- Limit by Tag Select box -->
|
34 |
-
<select id="<?php echo $event_tag_ids['id'] ?>" class="ai1ec-widget-tag-ids" name="<?php echo $event_tag_ids['name'] ?>[]" size="5" multiple="multiple">
|
35 |
-
<?php foreach( $event_tag_ids['options'] as $event_tag ): ?>
|
36 |
-
<option value="<?php echo $event_tag->term_id; ?>"<?php if( in_array( $event_tag->term_id, $event_tag_ids['value'] ) ) { ?> selected="selected"<?php } ?>><?php echo $event_tag->name; ?></option>
|
37 |
-
<?php endforeach ?>
|
38 |
-
<?php if( count( $event_tag_ids['options'] ) == 0 ) : ?>
|
39 |
-
<option disabled="disabled"><?php _e( 'No tags found.', AI1EC_PLUGIN_NAME ) ?></option>
|
40 |
-
<?php endif ?>
|
41 |
-
</select>
|
42 |
-
</div>
|
43 |
-
<p class="ai1ec-limit-by-container">
|
44 |
-
<!-- Limit by Event -->
|
45 |
-
<input id="<?php echo $limit_by_post['id'] ?>" class="ai1ec-limit-by-event" name="<?php echo $limit_by_post['name'] ?>" type="checkbox" value="1" <?php if( $limit_by_post['value'] ) echo 'checked="checked"' ?> />
|
46 |
-
<label for="<?php echo $limit_by_post['id'] ?>"><?php _e( '<strong>Or</strong> any of these <strong>Events</strong>', AI1EC_PLUGIN_NAME ) ?></label>
|
47 |
-
</p>
|
48 |
-
<div class="ai1ec-limit-by-options-container" <?php if( ! $limit_by_post['value'] ) { ?> style="display: none;" <?php } ?>>
|
49 |
-
<!-- Limit by Event Select box -->
|
50 |
-
<select id="<?php echo $event_post_ids['id'] ?>" class="ai1ec-widget-event-ids" name="<?php echo $event_post_ids['name'] ?>[]" size="5" multiple="multiple">
|
51 |
-
<?php foreach( $event_post_ids['options'] as $event_post ): ?>
|
52 |
-
<option value="<?php echo $event_post->ID; ?>"<?php if( in_array( $event_post->ID, $event_post_ids['value'] ) ) { ?> selected="selected"<?php } ?>><?php echo $event_post->post_title; ?></option>
|
53 |
-
<?php endforeach ?>
|
54 |
-
<?php if( count( $event_post_ids['options'] ) == 0 ) : ?>
|
55 |
-
<option disabled="disabled"><?php _e( 'No events found.', AI1EC_PLUGIN_NAME ) ?></option>
|
56 |
-
<?php endif ?>
|
57 |
-
</select>
|
58 |
-
</div>
|
59 |
-
<br />
|
60 |
-
<p>
|
61 |
-
<input id="<?php echo $show_calendar_button['id'] ?>" name="<?php echo $show_calendar_button['name'] ?>" type="checkbox" value="1" <?php if( $show_calendar_button['value'] ) echo 'checked="checked"' ?> />
|
62 |
-
<label for="<?php echo $show_calendar_button['id'] ?>"><?php _e( 'Show <strong>View Calendar</strong> button', AI1EC_PLUGIN_NAME ) ?></label>
|
63 |
-
<br />
|
64 |
-
<input id="<?php echo $show_subscribe_buttons['id'] ?>" name="<?php echo $show_subscribe_buttons['name'] ?>" type="checkbox" value="1" <?php if( $show_subscribe_buttons['value'] ) echo 'checked="checked"' ?> />
|
65 |
-
<label for="<?php echo $show_subscribe_buttons['id'] ?>"><?php _e( 'Show <strong>Subscribe</strong> buttons', AI1EC_PLUGIN_NAME ) ?></label>
|
66 |
-
<br />
|
67 |
-
<input id="<?php echo $hide_on_calendar_page['id'] ?>" name="<?php echo $hide_on_calendar_page['name'] ?>" type="checkbox" value="1" <?php if( $hide_on_calendar_page['value'] ) echo 'checked="checked"' ?> />
|
68 |
-
<label for="<?php echo $hide_on_calendar_page['id'] ?>"><?php _e( 'Hide this widget on calendar page', AI1EC_PLUGIN_NAME ) ?></label>
|
69 |
-
</p>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
app/view/agenda-widget.php
DELETED
@@ -1,81 +0,0 @@
|
|
1 |
-
<?php echo $args['before_widget'] ?>
|
2 |
-
|
3 |
-
<?php if( $title ): ?>
|
4 |
-
<?php echo $before_title . $title . $after_title ?>
|
5 |
-
<?php endif ?>
|
6 |
-
|
7 |
-
<div class="ai1ec-agenda-widget-view">
|
8 |
-
|
9 |
-
<?php if( ! $dates ): ?>
|
10 |
-
<p class="ai1ec-no-results">
|
11 |
-
<?php _e( 'There are no upcoming events.', AI1EC_PLUGIN_NAME ) ?>
|
12 |
-
</p>
|
13 |
-
<?php else: ?>
|
14 |
-
<ol>
|
15 |
-
<?php foreach( $dates as $timestamp => $date_info ): ?>
|
16 |
-
<li class="ai1ec-date <?php if( isset( $date_info['today'] ) && $date_info['today'] ) echo 'ai1ec-today' ?>">
|
17 |
-
<h3 class="ai1ec-date-title">
|
18 |
-
<div class="ai1ec-month"><?php echo date_i18n( 'M', $timestamp, true ) ?></div>
|
19 |
-
<div class="ai1ec-day"><?php echo date_i18n( 'j', $timestamp, true ) ?></div>
|
20 |
-
<div class="ai1ec-weekday"><?php echo date_i18n( 'D', $timestamp, true ) ?></div>
|
21 |
-
</h3>
|
22 |
-
<ol class="ai1ec-date-events">
|
23 |
-
<?php foreach( $date_info['events'] as $category ): ?>
|
24 |
-
<?php foreach( $category as $event ): ?>
|
25 |
-
<li class="ai1ec-event
|
26 |
-
ai1ec-event-id-<?php echo $event->post_id ?>
|
27 |
-
ai1ec-event-instance-id-<?php echo $event->instance_id ?>
|
28 |
-
<?php if( $event->allday ) echo 'ai1ec-allday' ?>">
|
29 |
-
|
30 |
-
<?php // Insert post ID for use by JavaScript filtering later ?>
|
31 |
-
<input type="hidden" class="ai1ec-post-id" value="<?php echo $event->post_id ?>" />
|
32 |
-
|
33 |
-
<a href="<?php echo esc_attr( get_permalink( $event->post_id ) ) . $event->instance_id ?>">
|
34 |
-
<?php if( $event->category_colors ): ?>
|
35 |
-
<span class="ai1ec-category-colors"><?php echo $event->category_colors ?></span>
|
36 |
-
<?php endif ?>
|
37 |
-
<?php if( ! $event->allday ): ?>
|
38 |
-
<span class="ai1ec-event-time">
|
39 |
-
<?php echo esc_html( $event->start_time ) ?></span>
|
40 |
-
</span>
|
41 |
-
<?php endif ?>
|
42 |
-
<span class="ai1ec-event-title">
|
43 |
-
<?php echo esc_html( apply_filters( 'the_title', $event->post->post_title ) ) ?>
|
44 |
-
</span>
|
45 |
-
</a>
|
46 |
-
|
47 |
-
</li>
|
48 |
-
<?php endforeach ?>
|
49 |
-
<?php endforeach ?>
|
50 |
-
</ol>
|
51 |
-
</li>
|
52 |
-
<?php endforeach ?>
|
53 |
-
</ol>
|
54 |
-
<?php endif ?>
|
55 |
-
|
56 |
-
|
57 |
-
<?php if( $show_calendar_button ): ?>
|
58 |
-
<a class="ai1ec-button ai1ec-calendar-link" href="<?php echo $calendar_url ?>">
|
59 |
-
<?php _e( 'View Calendar »', AI1EC_PLUGIN_NAME ) ?>
|
60 |
-
</a>
|
61 |
-
<?php endif ?>
|
62 |
-
|
63 |
-
<?php if( $show_subscribe_buttons ): ?>
|
64 |
-
<div class="ai1ec-subscribe-buttons">
|
65 |
-
<a class="ai1ec-button ai1ec-subscribe"
|
66 |
-
href="<?php echo $subscribe_url ?>"
|
67 |
-
title="<?php _e( 'Subscribe to this calendar using your favourite calendar program (iCal, Outlook, etc.)', AI1EC_PLUGIN_NAME ) ?>" />
|
68 |
-
<?php _e( '✔ Subscribe', AI1EC_PLUGIN_NAME ) ?>
|
69 |
-
</a>
|
70 |
-
<a class="ai1ec-button ai1ec-subscribe-google" target="_blank"
|
71 |
-
href="http://www.google.com/calendar/render?cid=<?php echo urlencode( str_replace( 'webcal://', 'http://', $subscribe_url ) ) ?>"
|
72 |
-
title="<?php _e( 'Subscribe to this calendar in your Google Calendar', AI1EC_PLUGIN_NAME ) ?>" />
|
73 |
-
<img src="<?php echo AI1EC_IMAGE_URL ?>/google-calendar.png" />
|
74 |
-
<?php _e( 'Add to Google', AI1EC_PLUGIN_NAME ) ?>
|
75 |
-
</a>
|
76 |
-
</div>
|
77 |
-
<?php endif ?>
|
78 |
-
|
79 |
-
</div>
|
80 |
-
|
81 |
-
<?php echo $args['after_widget'] ?>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
app/view/box_event_location.php
DELETED
@@ -1,42 +0,0 @@
|
|
1 |
-
<h4 class="ai1ec-section-title"><?php _e( 'Event location details', AI1EC_PLUGIN_NAME ); ?></h4>
|
2 |
-
<table class="ai1ec-form ai1ec-location-form">
|
3 |
-
<tbody>
|
4 |
-
<tr>
|
5 |
-
<td class="ai1ec-first">
|
6 |
-
<label for="ai1ec_venue">
|
7 |
-
<?php _e( 'Venue name:', AI1EC_PLUGIN_NAME ); ?>
|
8 |
-
</label>
|
9 |
-
</td>
|
10 |
-
<td>
|
11 |
-
<input type="text" name="ai1ec_venue" id="ai1ec_venue" value="<?php echo $venue; ?>" />
|
12 |
-
</td>
|
13 |
-
</tr>
|
14 |
-
<tr>
|
15 |
-
<td>
|
16 |
-
<label for="ai1ec_address">
|
17 |
-
<?php _e( 'Address:', AI1EC_PLUGIN_NAME ); ?>
|
18 |
-
</label>
|
19 |
-
</td>
|
20 |
-
<td>
|
21 |
-
<input type="text" name="ai1ec_address" id="ai1ec_address" value="<?php echo $address; ?>" />
|
22 |
-
</td>
|
23 |
-
</tr>
|
24 |
-
<tr>
|
25 |
-
<td>
|
26 |
-
<label for="ai1ec_google_map">
|
27 |
-
<?php _e( 'Show Google Map:', AI1EC_PLUGIN_NAME ); ?>
|
28 |
-
</label>
|
29 |
-
</td>
|
30 |
-
<td>
|
31 |
-
<input type="checkbox" value="1" name="ai1ec_google_map" id="ai1ec_google_map" <?php echo $google_map; ?> />
|
32 |
-
</td>
|
33 |
-
</tr>
|
34 |
-
</tbody>
|
35 |
-
</table>
|
36 |
-
<div class="ai1ec_box_map <?php if( $show_map ) echo 'ai1ec_box_map_visible' ?>">
|
37 |
-
<div id="ai1ec_map_canvas"></div>
|
38 |
-
</div>
|
39 |
-
<input type="hidden" name="ai1ec_city" id="ai1ec_city" value="<?php echo $city; ?>" />
|
40 |
-
<input type="hidden" name="ai1ec_province" id="ai1ec_province" value="<?php echo $province; ?>" />
|
41 |
-
<input type="hidden" name="ai1ec_postal_code" id="ai1ec_postal_code" value="<?php echo $postal_code; ?>" />
|
42 |
-
<input type="hidden" name="ai1ec_country" id="ai1ec_country" value="<?php echo $country; ?>" />
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
app/view/box_the_seed_studio.php
DELETED
@@ -1,56 +0,0 @@
|
|
1 |
-
<div class="ai1ec-plugin-branding">
|
2 |
-
|
3 |
-
<div class="ai1ec-plugin-logo">
|
4 |
-
<img src="http://yellowseedimages.s3.amazonaws.com/logo-plugin.png" alt="<?php esc_attr_e( 'The Seed Studio', AI1EC_PLUGIN_NAME ) ?>" class="pluginlogo" />
|
5 |
-
</div>
|
6 |
-
|
7 |
-
<p><?php _e( 'The Seed Studio provides web development and support services for clients and web developers.', AI1EC_PLUGIN_NAME ) ?></p>
|
8 |
-
|
9 |
-
<div class="ai1ec-follow-fan">
|
10 |
-
<div class="ai1ec-facebook-like-top">
|
11 |
-
<script src="http://connect.facebook.net/en_US/all.js#xfbml=1"></script>
|
12 |
-
<fb:like href="http://www.facebook.com/pages/The-Seed-Agency/66657743707" layout="button_count" show_faces="true" width="110" font="lucida grande"></fb:like>
|
13 |
-
</div>
|
14 |
-
<a href="http://twitter.com/theseednet" class="twitter-follow-button"><?php _e( 'Follow @theseednet', AI1EC_PLUGIN_NAME ) ?></a>
|
15 |
-
<script src="http://platform.twitter.com/widgets.js" type="text/javascript"></script>
|
16 |
-
<div class="clear"></div>
|
17 |
-
</div>
|
18 |
-
|
19 |
-
<div class="ai1ec-support-button">
|
20 |
-
<a href="http://theseednetwork.com/get-supported/" target="_blank"><?php _e( 'Get Support<span> from one of our experienced pros</span>', AI1EC_PLUGIN_NAME ) ?></a>
|
21 |
-
</div>
|
22 |
-
|
23 |
-
<h2><?php _e( 'Support', AI1EC_PLUGIN_NAME ) ?></h2>
|
24 |
-
<p>
|
25 |
-
<a href="http://theseednetwork.com/software/all-in-one-event-calendar-wordpress/all-in-one-event-calendar-documentation/" target="_blank"><?php _e( 'View plugin documentation', AI1EC_PLUGIN_NAME ) ?></a>
|
26 |
-
</p>
|
27 |
-
<p>
|
28 |
-
<?php _e( 'You can also hire The Seed for support on a contract or per-hour basis for this plugin, for your website or for any of your Internet marketing needs (we can really help!).', AI1EC_PLUGIN_NAME ) ?>
|
29 |
-
</p>
|
30 |
-
<p>
|
31 |
-
<?php _e( 'Plugin users: The Seed gives support priority to clients. For free support from other WordPress users, visit the plugin\'s forum.', AI1EC_PLUGIN_NAME ) ?>
|
32 |
-
</p>
|
33 |
-
|
34 |
-
<h2><?php _e( 'Vote and Share', AI1EC_PLUGIN_NAME ) ?></h2>
|
35 |
-
<p>
|
36 |
-
<?php _e( 'This plugin is offered free to the Wordpress Community under the GPL3 license. All we ask is that you:', AI1EC_PLUGIN_NAME ) ?>
|
37 |
-
<ol>
|
38 |
-
<li><?php _e( '<a href="http://wordpress.org/extend/plugins/all-in-one-event-calendar/" target="_blank">Give it a five-star rating on wordpress.org</a> (if you think it deserves it!)', AI1EC_PLUGIN_NAME ) ?></li>
|
39 |
-
<li><a href="http://theseednetwork.com/software/all-in-one-event-calendar-wordpress/" target="_blank"><?php _e( 'Link to the plugin page on our website', AI1EC_PLUGIN_NAME ) ?></a></li>
|
40 |
-
<li><a href="http://www.facebook.com/theseednet" target="_blank"><?php _e( 'Become a Fan on Facebook', AI1EC_PLUGIN_NAME ) ?></a></li>
|
41 |
-
<li><a href="https://twitter.com/intent/user?screen_name=theseednet" target="_blank"><?php _e( 'Follow us on Twitter', AI1EC_PLUGIN_NAME ) ?></a></li>
|
42 |
-
</ol>
|
43 |
-
</p>
|
44 |
-
|
45 |
-
<?php if( count( $news ) >= 1 ) : ?>
|
46 |
-
<h2><?php _e( 'Latest from the Seed Network', AI1EC_PLUGIN_NAME ) ?></h2>
|
47 |
-
<p>
|
48 |
-
<ul id="ai1ec-rss-news">
|
49 |
-
<?php foreach( $news as $n ) : ?>
|
50 |
-
<li><a href="<?php echo $n->get_link() ?>" target="_blank"><?php echo $n->get_title() ?></a></li>
|
51 |
-
<?php endforeach ?>
|
52 |
-
</ul>
|
53 |
-
</p>
|
54 |
-
<?php endif ?>
|
55 |
-
</div>
|
56 |
-
<br class="clear" />
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
app/view/calendar.php
DELETED
@@ -1,128 +0,0 @@
|
|
1 |
-
<!-- START All-in-One Event Calendar Plugin - Version 1.5 -->
|
2 |
-
<table class="ai1ec-calendar-toolbar">
|
3 |
-
<tbody>
|
4 |
-
<tr>
|
5 |
-
|
6 |
-
<td>
|
7 |
-
<ul class="ai1ec-view-tabs">
|
8 |
-
<li>
|
9 |
-
<a id="ai1ec-view-month" class="ai1ec-load-view ai1ec-button"
|
10 |
-
href="#action=ai1ec_month&ai1ec_post_ids=<?php echo $selected_post_ids ?>">
|
11 |
-
<img src="<?php echo AI1EC_IMAGE_URL ?>/month-view.png" alt="<?php _e( 'Month', AI1EC_PLUGIN_NAME ) ?>" />
|
12 |
-
<?php _e( 'Month', AI1EC_PLUGIN_NAME ) ?>
|
13 |
-
</a>
|
14 |
-
</li>
|
15 |
-
<li>
|
16 |
-
<a id="ai1ec-view-oneday" class="ai1ec-load-view ai1ec-button"
|
17 |
-
href="#action=ai1ec_oneday&ai1ec_post_ids=<?php echo $selected_post_ids ?>">
|
18 |
-
<img src="<?php echo AI1EC_IMAGE_URL ?>/oneday-view.png" alt="<?php _e( 'Day', AI1EC_PLUGIN_NAME ) ?>" />
|
19 |
-
<?php _e( 'Day', AI1EC_PLUGIN_NAME ) ?>
|
20 |
-
</a>
|
21 |
-
</li>
|
22 |
-
<li>
|
23 |
-
<a id="ai1ec-view-week" class="ai1ec-load-view ai1ec-button"
|
24 |
-
href="#action=ai1ec_week&ai1ec_post_ids=<?php echo $selected_post_ids ?>">
|
25 |
-
<img src="<?php echo AI1EC_IMAGE_URL ?>/week-view.png" alt="<?php _e( 'Week', AI1EC_PLUGIN_NAME ) ?>" />
|
26 |
-
<?php _e( 'Week', AI1EC_PLUGIN_NAME ) ?>
|
27 |
-
</a>
|
28 |
-
</li>
|
29 |
-
<li>
|
30 |
-
<a id="ai1ec-view-agenda" class="ai1ec-load-view ai1ec-button"
|
31 |
-
href="#action=ai1ec_agenda&ai1ec_post_ids=<?php echo $selected_post_ids ?>">
|
32 |
-
<img src="<?php echo AI1EC_IMAGE_URL ?>/agenda-view.png" alt="<?php _e( 'Month', AI1EC_PLUGIN_NAME ) ?>" />
|
33 |
-
<?php _e( 'Agenda', AI1EC_PLUGIN_NAME ) ?>
|
34 |
-
</a>
|
35 |
-
</li>
|
36 |
-
</ul>
|
37 |
-
</td>
|
38 |
-
|
39 |
-
<?php if( $create_event_url ): ?>
|
40 |
-
<td>
|
41 |
-
<a class="ai1ec-button" href="<?php echo $create_event_url ?>">
|
42 |
-
<?php _e( '+ Post Your Event', AI1EC_PLUGIN_NAME ) ?>
|
43 |
-
</a>
|
44 |
-
</td>
|
45 |
-
<?php endif ?>
|
46 |
-
|
47 |
-
<?php if( $categories || $tags ): ?>
|
48 |
-
<td>
|
49 |
-
<div class="ai1ec-filters-container">
|
50 |
-
<label class="ai1ec-label">
|
51 |
-
<a class="ai1ec-clear-filters" title="<?php _e( 'Clear Filters', AI1EC_PLUGIN_NAME ) ?>"><?php _e( '✘', AI1EC_PLUGIN_NAME ) ?></a>
|
52 |
-
<?php _e( 'Filter:', AI1EC_PLUGIN_NAME ) ?>
|
53 |
-
</label>
|
54 |
-
|
55 |
-
<?php if( $categories ): ?>
|
56 |
-
<span class="ai1ec-filter-selector-container">
|
57 |
-
<a class="ai1ec-button ai1ec-dropdown"><?php _e( 'Categories ▾', AI1EC_PLUGIN_NAME ) ?></a>
|
58 |
-
<input class="ai1ec-selected-terms"
|
59 |
-
id="ai1ec-selected-categories"
|
60 |
-
type="hidden"
|
61 |
-
value="<?php echo $selected_cat_ids ?>" />
|
62 |
-
<div class="ai1ec-filter-selector ai1ec-category-filter-selector">
|
63 |
-
<ul>
|
64 |
-
<?php foreach( $categories as $cat ): ?>
|
65 |
-
<li class="ai1ec-category"
|
66 |
-
<?php if( $cat->description ) echo 'title="' . esc_attr( $cat->description ) . '"' ?>>
|
67 |
-
<?php echo $cat->color ?>
|
68 |
-
<?php echo esc_html( $cat->name ) ?>
|
69 |
-
<input class="ai1ec-term-ids" name="ai1ec-categories" type="hidden" value="<?php echo $cat->term_id ?>" />
|
70 |
-
</li>
|
71 |
-
<?php endforeach ?>
|
72 |
-
</ul>
|
73 |
-
</div>
|
74 |
-
</span>
|
75 |
-
<?php endif // $categories ?>
|
76 |
-
|
77 |
-
<?php if( $tags ): ?>
|
78 |
-
<span class="ai1ec-filter-selector-container">
|
79 |
-
<a class="ai1ec-button ai1ec-dropdown"><?php _e( 'Tags ▾', AI1EC_PLUGIN_NAME ) ?></a>
|
80 |
-
<input class="ai1ec-selected-terms"
|
81 |
-
id="ai1ec-selected-tags"
|
82 |
-
type="hidden"
|
83 |
-
value="<?php echo $selected_tag_ids ?>" />
|
84 |
-
<div class="ai1ec-filter-selector ai1ec-tag-filter-selector">
|
85 |
-
<ul>
|
86 |
-
<?php foreach( $tags as $tag ): ?>
|
87 |
-
<li class="ai1ec-tag"
|
88 |
-
<?php if( $tag->description ) echo 'title="' . esc_attr( $tag->description ) . '"' ?>
|
89 |
-
style="<?php echo $tag->count > 1 ? 'font-weight: bold;' : 'font-size: 10px !important;' ?>">
|
90 |
-
<?php echo esc_html( $tag->name ) . " ($tag->count)" ?>
|
91 |
-
<input class="ai1ec-term-ids" name="ai1ec-tags" type="hidden" value="<?php echo $tag->term_id ?>" />
|
92 |
-
</li>
|
93 |
-
<?php endforeach ?>
|
94 |
-
</ul>
|
95 |
-
<input class="ai1ec-selected-terms" id="ai1ec-selected-tags" type="hidden" />
|
96 |
-
</div>
|
97 |
-
</span>
|
98 |
-
<?php endif // $tags ?>
|
99 |
-
</div>
|
100 |
-
</td>
|
101 |
-
<?php endif // $categories || $tags ?>
|
102 |
-
|
103 |
-
</tr>
|
104 |
-
</tbody>
|
105 |
-
</table>
|
106 |
-
|
107 |
-
<div id="ai1ec-calendar-view-container">
|
108 |
-
<div id="ai1ec-calendar-view-loading" class="ai1ec-loading"></div>
|
109 |
-
<div id="ai1ec-calendar-view">
|
110 |
-
<?php echo $view ?>
|
111 |
-
</div>
|
112 |
-
</div>
|
113 |
-
|
114 |
-
<?php if( $show_subscribe_buttons ): ?>
|
115 |
-
<a class="ai1ec-button ai1ec-subscribe"
|
116 |
-
href="<?php echo AI1EC_EXPORT_URL ?>"
|
117 |
-
title="<?php _e( 'Subscribe to this calendar using your favourite calendar program (iCal, Outlook, etc.)', AI1EC_PLUGIN_NAME ) ?>" />
|
118 |
-
<?php _e( '✔ Subscribe', AI1EC_PLUGIN_NAME ) ?>
|
119 |
-
<span class="ai1ec-subscribe-filtered"><?php _e( 'to this filtered calendar', AI1EC_PLUGIN_NAME ) ?></span>
|
120 |
-
</a>
|
121 |
-
<a class="ai1ec-button ai1ec-subscribe-google" target="_blank"
|
122 |
-
href="http://www.google.com/calendar/render?cid=<?php echo urlencode( str_replace( 'webcal://', 'http://', AI1EC_EXPORT_URL ) ) ?>"
|
123 |
-
title="<?php _e( 'Subscribe to this calendar in your Google Calendar', AI1EC_PLUGIN_NAME ) ?>" />
|
124 |
-
<img src="<?php echo AI1EC_IMAGE_URL ?>/google-calendar.png" />
|
125 |
-
<?php _e( 'Subscribe in Google Calendar', AI1EC_PLUGIN_NAME ) ?>
|
126 |
-
</a>
|
127 |
-
<?php endif ?>
|
128 |
-
<!-- END All-in-One Event Calendar Plugin -->
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
app/view/event-excerpt.php
DELETED
@@ -1,6 +0,0 @@
|
|
1 |
-
<div class="ai1ec-excerpt">
|
2 |
-
<div class="ai1ec-time"><label class="ai1ec-label"><?php _e( 'When:', AI1EC_PLUGIN_NAME ) ?></label> <?php echo $event->timespan_html ?></div>
|
3 |
-
<?php if( $location ): ?>
|
4 |
-
<div class="ai1ec-location"><label class="ai1ec-label"><?php _e( 'Where:', AI1EC_PLUGIN_NAME ) ?></label> <?php echo $location ?></div>
|
5 |
-
<?php endif ?>
|
6 |
-
</div>
|
|
|
|
|
|
|
|
|
|
|
|
app/view/event-multi.php
DELETED
@@ -1,56 +0,0 @@
|
|
1 |
-
<table class="ai1ec-event ai1ec-multi-event ai1ec-event-id-<?php echo $event->post_id ?> <?php if( $event->allday ) echo 'ai1ec-allday' ?>">
|
2 |
-
<tbody>
|
3 |
-
<tr>
|
4 |
-
<th scope="row" class="ai1ec-time"><?php _e( 'When:', AI1EC_PLUGIN_NAME ) ?></th>
|
5 |
-
<td class="ai1ec-time">
|
6 |
-
<a class="ai1ec-button ai1ec-calendar-link" href="<?php echo $calendar_url ?>">
|
7 |
-
<?php _e( 'View in Calendar »', AI1EC_PLUGIN_NAME ) ?>
|
8 |
-
</a>
|
9 |
-
<?php echo $event->timespan_html ?>
|
10 |
-
</td>
|
11 |
-
</tr>
|
12 |
-
<?php if( $recurrence ): ?>
|
13 |
-
<tr>
|
14 |
-
<th scope="row" class="ai1ec-recurrence"><?php _e( 'Repeats:', AI1EC_PLUGIN_NAME ) ?></th>
|
15 |
-
<td class="ai1ec-recurrence" colspan="2"><?php echo $recurrence ?></td>
|
16 |
-
</tr>
|
17 |
-
<?php endif ?>
|
18 |
-
<tr>
|
19 |
-
<?php if( $location ): ?>
|
20 |
-
<th scope="row" class="ai1ec-location"><?php _e( 'Where:', AI1EC_PLUGIN_NAME ) ?></th>
|
21 |
-
<td class="ai1ec-location">
|
22 |
-
<?php if( $event->show_map ): ?>
|
23 |
-
<a class="ai1ec-button ai1ec-gmap-link" href="<?php the_permalink() ?>#ai1ec-event">
|
24 |
-
<?php _e( 'View Map »', AI1EC_PLUGIN_NAME ) ?>
|
25 |
-
</a>
|
26 |
-
<?php endif ?>
|
27 |
-
<?php echo $location ?>
|
28 |
-
</td>
|
29 |
-
<?php endif ?>
|
30 |
-
</tr>
|
31 |
-
<tr>
|
32 |
-
<?php if( $event->cost ): ?>
|
33 |
-
<th scope="row" class="ai1ec-cost"><?php _e( 'Cost:', AI1EC_PLUGIN_NAME ) ?></th>
|
34 |
-
<td class="ai1ec-cost"><?php echo esc_html( $event->cost ) ?></td>
|
35 |
-
<?php endif ?>
|
36 |
-
</tr>
|
37 |
-
<tr>
|
38 |
-
<?php if( $contact ): ?>
|
39 |
-
<th scope="row" class="ai1ec-contact"><?php _e( 'Contact:', AI1EC_PLUGIN_NAME ) ?></th>
|
40 |
-
<td class="ai1ec-contact"><?php echo $contact ?></td>
|
41 |
-
<?php endif ?>
|
42 |
-
</tr>
|
43 |
-
<tr>
|
44 |
-
<?php if( $categories ): ?>
|
45 |
-
<th scope="row" class="ai1ec-categories"><?php _e( 'Categories:', AI1EC_PLUGIN_NAME ) ?></th>
|
46 |
-
<td class="ai1ec-categories"><?php echo $categories ?></td>
|
47 |
-
<?php endif ?>
|
48 |
-
</tr>
|
49 |
-
<tr>
|
50 |
-
<?php if( $tags ): ?>
|
51 |
-
<th scope="row" class="ai1ec-tags"><?php _e( 'Tags:', AI1EC_PLUGIN_NAME ) ?></th>
|
52 |
-
<td class="ai1ec-tags"><?php echo $tags ?></td>
|
53 |
-
<?php endif ?>
|
54 |
-
</tr>
|
55 |
-
</tbody>
|
56 |
-
</table>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
app/view/oneday.php
DELETED
@@ -1,137 +0,0 @@
|
|
1 |
-
<h2 class="ai1ec-calendar-title"><?php echo esc_html( $title ) ?></h2>
|
2 |
-
<span class="ai1ec-title-buttons"> <a id="ai1ec-today"
|
3 |
-
class="ai1ec-load-view ai1ec-button"
|
4 |
-
href="#action=ai1ec_oneday&ai1ec_post_ids=<?php echo $post_ids ?>"> <?php _e( 'Today', AI1EC_PLUGIN_NAME ) ?>
|
5 |
-
</a> </span>
|
6 |
-
<ul class="ai1ec-pagination">
|
7 |
-
<?php foreach( $pagination_links as $link ) : ?>
|
8 |
-
<li><a id="<?php echo $link['id'] ?>"
|
9 |
-
class="ai1ec-load-view ai1ec-button"
|
10 |
-
href="<?php echo esc_attr( $link['href'] ) ?>&ai1ec_post_ids=<?php echo $post_ids ?>">
|
11 |
-
<?php echo esc_html( $link['text'] ) ?> </a></li>
|
12 |
-
<?php endforeach ?>
|
13 |
-
</ul>
|
14 |
-
<table class="ai1ec-1day-view-original">
|
15 |
-
<thead>
|
16 |
-
<tr>
|
17 |
-
<?php foreach( $cell_array as $date => $day ): ?>
|
18 |
-
<th class="ai1ec-weekday <?php if( $day['today'] ) echo 'ai1ec-today' ?>">
|
19 |
-
<span class="ai1ec-weekday-date"><?php echo date_i18n( 'l', $date, true )?> </span>
|
20 |
-
</th>
|
21 |
-
<?php endforeach // weekday ?>
|
22 |
-
</tr>
|
23 |
-
<tr>
|
24 |
-
<?php foreach( $cell_array as $day ) : ?>
|
25 |
-
<td class="ai1ec-allday-events <?php if( $day['today'] ) echo 'ai1ec-today' ?>">
|
26 |
-
|
27 |
-
<?php if( ! $done_allday_label ) : ?>
|
28 |
-
<div class="ai1ec-allday-label"><?php _e( 'All-day', AI1EC_PLUGIN_NAME ) ?></div>
|
29 |
-
<?php $done_allday_label = true ?>
|
30 |
-
<?php endif ?>
|
31 |
-
|
32 |
-
<?php foreach( $day['allday'] as $event ) : ?>
|
33 |
-
<a href="<?php echo esc_attr( get_permalink( $event->post_id ) ) . $event->instance_id ?>"
|
34 |
-
class="ai1ec-event-container
|
35 |
-
ai1ec-event-id-<?php echo $event->post_id ?>
|
36 |
-
ai1ec-event-instance-id-<?php echo $event->instance_id ?>
|
37 |
-
ai1ec-allday
|
38 |
-
<?php if( $event->start_truncated ) echo 'ai1ec-start-truncated' ?>
|
39 |
-
<?php if( $event->end_truncated ) echo 'ai1ec-end-truncated' ?>">
|
40 |
-
|
41 |
-
<?php // Insert post ID for use by JavaScript filtering later ?>
|
42 |
-
<input type="hidden" class="ai1ec-post-id" value="<?php echo $event->post_id ?>" />
|
43 |
-
|
44 |
-
<div class="ai1ec-event-popup">
|
45 |
-
<div class="ai1ec-event-summary">
|
46 |
-
<?php if( $event->category_colors ): ?>
|
47 |
-
<div class="ai1ec-category-colors"><?php echo $event->category_colors ?></div>
|
48 |
-
<?php endif ?>
|
49 |
-
<?php if( $event->post_excerpt ): ?>
|
50 |
-
<strong><?php _e( 'Summary:', AI1EC_PLUGIN_NAME ) ?></strong>
|
51 |
-
<p><?php echo esc_html( $event->post_excerpt ) ?></p>
|
52 |
-
<?php endif ?>
|
53 |
-
<div class="ai1ec-read-more"><?php esc_html_e( 'click anywhere for details', AI1EC_PLUGIN_NAME ) ?></div>
|
54 |
-
</div>
|
55 |
-
<div class="ai1ec-event-popup-bg">
|
56 |
-
<span class="ai1ec-event-title">
|
57 |
-
<?php if( function_exists( 'mb_strimwidth' ) ) : ?>
|
58 |
-
<?php echo esc_html( mb_strimwidth( apply_filters( 'the_title', $event->post->post_title ), 0, 35, '...' ) ) ?></span>
|
59 |
-
<?php else : ?>
|
60 |
-
<?php $read_more = strlen( apply_filters( 'the_title', $event->post->post_title ) ) > 35 ? '...' : '' ?>
|
61 |
-
<?php echo esc_html( substr( apply_filters( 'the_title', $event->post->post_title ), 0, 35 ) . $read_more ); ?>
|
62 |
-
<?php endif; ?>
|
63 |
-
</span>
|
64 |
-
<small><?php esc_html_e( '(all-day)', AI1EC_PLUGIN_NAME ) ?></small>
|
65 |
-
</div>
|
66 |
-
</div><!-- .event-popup -->
|
67 |
-
|
68 |
-
<div class="ai1ec-event <?php if( $event->post_id == $active_event ) echo 'ai1ec-active-event' ?>" style="<?php echo $event->color_style ?>">
|
69 |
-
<span class="ai1ec-event-title"><?php echo esc_html( apply_filters( 'the_title', $event->post->post_title ) ) ?></span>
|
70 |
-
</div>
|
71 |
-
|
72 |
-
</a>
|
73 |
-
<?php endforeach // allday ?>
|
74 |
-
|
75 |
-
</td>
|
76 |
-
<?php endforeach // weekday ?>
|
77 |
-
</tr>
|
78 |
-
</thead>
|
79 |
-
<tbody>
|
80 |
-
<tr class="ai1ec-1day">
|
81 |
-
|
82 |
-
<td <?php if( $day['today'] ) echo 'class="ai1ec-today"' ?>>
|
83 |
-
<div class="ai1ec-grid-container"><?php for( $hour = 0; $hour < 24; $hour++ ) : ?>
|
84 |
-
|
85 |
-
<div class="ai1ec-hour-marker <?php if( $hour >= 8 && $hour < 18 ) echo 'ai1ec-business-hour' ?>" style="top: <?php echo $hour * 60 ?>px;">
|
86 |
-
<div><?php echo esc_html( date_i18n( $time_format, gmmktime( $hour, 0 ), true ) ) ?></div>
|
87 |
-
</div>
|
88 |
-
<?php for( $quarter = 1; $quarter < 4; $quarter++ ) : ?>
|
89 |
-
<div class="ai1ec-quarter-marker" style="top: <?php echo $hour * 60 + $quarter * 15 ?>px;"></div>
|
90 |
-
<?php endfor ?> <?php endfor ?>
|
91 |
-
<div class="ai1ec-now-marker" style="top: <?php echo $now_top ?>px;"></div>
|
92 |
-
</div>
|
93 |
-
<div class="ai1ec-day">
|
94 |
-
<?php foreach( $day['notallday'] as $notallday ): ?>
|
95 |
-
<?php extract( $notallday ) ?>
|
96 |
-
<a href="<?php echo esc_attr( get_permalink( $event->post_id ) ) . $event->instance_id ?>"
|
97 |
-
class="ai1ec-event-container
|
98 |
-
ai1ec-event-id-<?php echo $event->post_id ?>
|
99 |
-
ai1ec-event-instance-id-<?php echo $event->instance_id ?>
|
100 |
-
<?php if( $event->start_truncated ) echo 'ai1ec-start-truncated' ?>
|
101 |
-
<?php if( $event->end_truncated ) echo 'ai1ec-end-truncated' ?>"
|
102 |
-
style="top: <?php echo $top ?>px; height: <?php echo max( $height, 31 ) ?>px; left: <?php echo $indent * 16 + 50 ?>px; margin-right:10px; <?php echo $event->color_style ?> <?php if( $event->faded_color ) echo "border: 2px solid $event->faded_color !important;" ?> background: linear-gradient( top, #fff, <?php echo $event->faded_color ?> ) !important; background: -o-linear-gradient( top, #fff, <?php echo $event->faded_color ?> ) !important; background: -moz-linear-gradient( top, #fff, <?php echo $event->faded_color ?> ) !important; background: -webkit-gradient( linear, left top, left bottom, color-stop( 0, # ), color-stop( 1, <?php echo $event->faded_color ?> ) ) !important; background: -webkit-linear-gradient( top, #fff, <?php echo $event->faded_color ?> ) !important;">
|
103 |
-
|
104 |
-
<?php if( $event->start_truncated ) : ?>
|
105 |
-
<div class="ai1ec-start-truncator">◤</div>
|
106 |
-
<?php endif ?> <?php if( $event->end_truncated ) : ?>
|
107 |
-
<div class="ai1ec-end-truncator">◢</div>
|
108 |
-
<?php endif ?> <?php // Insert post ID for use by JavaScript filtering later ?>
|
109 |
-
<input type="hidden" class="ai1ec-post-id"
|
110 |
-
value="<?php echo $event->post_id ?>" />
|
111 |
-
|
112 |
-
<div class="ai1ec-event-popup">
|
113 |
-
<div class="ai1ec-event-summary"><?php if( $event->category_colors ): ?>
|
114 |
-
<div class="ai1ec-category-colors"><?php echo $event->category_colors ?></div>
|
115 |
-
<?php endif ?> <?php if( $event->post_excerpt ): ?> <strong><?php _e( 'Summary:', AI1EC_PLUGIN_NAME ) ?></strong>
|
116 |
-
<p><?php echo esc_html( $event->post_excerpt ) ?></p>
|
117 |
-
<?php endif ?>
|
118 |
-
<div class="ai1ec-read-more"><?php esc_html_e( 'click anywhere for details', AI1EC_PLUGIN_NAME ) ?></div>
|
119 |
-
</div>
|
120 |
-
<div class="ai1ec-event-popup-bg"><span class="ai1ec-event-time"><?php echo esc_html( $event->short_start_time ) ?></span>
|
121 |
-
<span class="ai1ec-event-title"><?php echo esc_html( apply_filters( 'the_title', $event->post->post_title ) ) ?></span>
|
122 |
-
</span></div>
|
123 |
-
</div>
|
124 |
-
<!-- .event-popup -->
|
125 |
-
|
126 |
-
<div
|
127 |
-
class="ai1ec-event <?php if( $event->post_id == $active_event ) echo 'ai1ec-active-event' ?>">
|
128 |
-
<span class="ai1ec-event-time"><?php echo esc_html( $event->short_start_time ) ?></span>
|
129 |
-
<span class="ai1ec-event-title"><?php echo esc_html( apply_filters( 'the_title', $event->post->post_title ) ) ?></span>
|
130 |
-
</div>
|
131 |
-
|
132 |
-
</a> <?php endforeach // events ?></div>
|
133 |
-
</td>
|
134 |
-
|
135 |
-
</tr>
|
136 |
-
</tbody>
|
137 |
-
</table>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
css/calendar.css
DELETED
@@ -1,1009 +0,0 @@
|
|
1 |
-
.ai1ec-container {
|
2 |
-
font-size: 13pt !important;
|
3 |
-
clear: both;
|
4 |
-
}
|
5 |
-
/* Some plugins mangle styling of standard HTML tags, fix them here */
|
6 |
-
.ai1ec-container small {
|
7 |
-
margin: 0 !important;
|
8 |
-
}
|
9 |
-
/* Some themes pollute table row backgrounds - this line undoes this: */
|
10 |
-
.ai1ec-container tr {
|
11 |
-
background: none !important;
|
12 |
-
}
|
13 |
-
|
14 |
-
/* Active buttons */
|
15 |
-
.ai1ec-action-month #ai1ec-view-month,
|
16 |
-
.ai1ec-action-oneday #ai1ec-view-oneday,
|
17 |
-
.ai1ec-action-week #ai1ec-view-week,
|
18 |
-
.ai1ec-action-agenda #ai1ec-view-agenda {
|
19 |
-
color: #000;
|
20 |
-
background: #ddd;
|
21 |
-
background: -o-linear-gradient( #ccc, #eee );
|
22 |
-
background: -ms-linear-gradient( #ccc, #eee );
|
23 |
-
background: -moz-linear-gradient( #ccc, #eee );
|
24 |
-
background: -webkit-gradient( linear, 0% 0%, 0% 100%, from(#ccc), to(#eee) );
|
25 |
-
background: -webkit-linear-gradient( #ccc, #eee );
|
26 |
-
}
|
27 |
-
|
28 |
-
/* View container */
|
29 |
-
#ai1ec-calendar-view-container {
|
30 |
-
position: relative;
|
31 |
-
clear: both;
|
32 |
-
margin-bottom: 0.2em;
|
33 |
-
}
|
34 |
-
table.ai1ec-calendar-toolbar {
|
35 |
-
width: 100% !important;
|
36 |
-
border: 0 !important;
|
37 |
-
margin: 0 !important;
|
38 |
-
}
|
39 |
-
.ai1ec-calendar-toolbar td {
|
40 |
-
text-align: center;
|
41 |
-
vertical-align: middle;
|
42 |
-
border: 0 !important;
|
43 |
-
padding: 0 !important;
|
44 |
-
white-space: nowrap;
|
45 |
-
background: none !important;
|
46 |
-
}
|
47 |
-
.ai1ec-calendar-toolbar td:last-child {
|
48 |
-
text-align: right;
|
49 |
-
}
|
50 |
-
.ai1ec-calendar-toolbar td:first-child {
|
51 |
-
text-align: left;
|
52 |
-
}
|
53 |
-
|
54 |
-
/* View tabs */
|
55 |
-
ul.ai1ec-view-tabs {
|
56 |
-
margin: 0 0 0.2em !important;
|
57 |
-
padding: 0 !important;
|
58 |
-
display: inline-block;
|
59 |
-
}
|
60 |
-
.ai1ec-view-tabs li {
|
61 |
-
list-style: none !important;
|
62 |
-
float: left;
|
63 |
-
margin: 0.1em 0 !important;
|
64 |
-
padding: 0 !important;
|
65 |
-
}
|
66 |
-
.ai1ec-view-tabs a {
|
67 |
-
line-height: 25px !important;
|
68 |
-
padding: 0.2em 0.5em;
|
69 |
-
}
|
70 |
-
.ai1ec-view-tabs a img {
|
71 |
-
border: 0 !important;
|
72 |
-
padding: 0 !important;
|
73 |
-
margin: 0 !important;
|
74 |
-
float: none !important;
|
75 |
-
position: static !important;
|
76 |
-
vertical-align: middle;
|
77 |
-
background: none !important;
|
78 |
-
}
|
79 |
-
|
80 |
-
/* View filters */
|
81 |
-
.ai1ec-filters-container {
|
82 |
-
display: inline-block;
|
83 |
-
}
|
84 |
-
.ai1ec-filters-container .ai1ec-button {
|
85 |
-
margin: 0;
|
86 |
-
}
|
87 |
-
.ai1ec-filter-selector-container {
|
88 |
-
position: relative;
|
89 |
-
display: inline-block;
|
90 |
-
text-align: left;
|
91 |
-
white-space: normal;
|
92 |
-
}
|
93 |
-
.ai1ec-filter-selector {
|
94 |
-
display: none;
|
95 |
-
position: absolute;
|
96 |
-
z-index: 10;
|
97 |
-
right: 0;
|
98 |
-
top: 100%;
|
99 |
-
overflow: auto;
|
100 |
-
max-width: 20em;
|
101 |
-
max-height: 30em;
|
102 |
-
background: #fff;
|
103 |
-
border: 1px solid #ddd;
|
104 |
-
box-shadow: 1px 5px 8px rgba(0,0,0,0.08);
|
105 |
-
-o-box-shadow: 1px 5px 8px rgba(0,0,0,0.08);
|
106 |
-
-ms-box-shadow: 1px 5px 8px rgba(0,0,0,0.08);
|
107 |
-
-moz-box-shadow: 1px 5px 8px rgba(0,0,0,0.08);
|
108 |
-
-webkit-box-shadow: 1px 5px 8px rgba(0,0,0,0.08);
|
109 |
-
padding: 0.1em;
|
110 |
-
}
|
111 |
-
.ai1ec-filter-selector ul {
|
112 |
-
margin: 0 !important;
|
113 |
-
padding: 0 !important;
|
114 |
-
}
|
115 |
-
.ai1ec-filter-selector li {
|
116 |
-
list-style: none;
|
117 |
-
}
|
118 |
-
.ai1ec-filter-selector .ai1ec-category,
|
119 |
-
.ai1ec-filter-selector .ai1ec-tag {
|
120 |
-
font-size: 8pt !important;
|
121 |
-
}
|
122 |
-
.ai1ec-clear-filters {
|
123 |
-
display: none;
|
124 |
-
font-size: 11pt !important;
|
125 |
-
font-weight: normal;
|
126 |
-
color: #7A86D9 !important;
|
127 |
-
cursor: pointer;
|
128 |
-
text-decoration: none !important;
|
129 |
-
}
|
130 |
-
.ai1ec-clear-filters:hover {
|
131 |
-
color: #000 !important;
|
132 |
-
}
|
133 |
-
|
134 |
-
/* Titles */
|
135 |
-
h2.ai1ec-calendar-title {
|
136 |
-
float: left;
|
137 |
-
font-size: 1.15em !important;
|
138 |
-
line-height: 1.3em !important;
|
139 |
-
margin: 0 0 0.2em !important;
|
140 |
-
}
|
141 |
-
|
142 |
-
/* Today button and others beside it */
|
143 |
-
.ai1ec-title-buttons {
|
144 |
-
margin: 0 0.5em;
|
145 |
-
}
|
146 |
-
.ai1ec-title-buttons .ai1ec-button {
|
147 |
-
font-size: 8pt !important;
|
148 |
-
margin: 0.3em 0.1em;
|
149 |
-
}
|
150 |
-
.ai1ec-today #ai1ec-today {
|
151 |
-
display: none;
|
152 |
-
}
|
153 |
-
|
154 |
-
/* View pagination */
|
155 |
-
ul.ai1ec-pagination {
|
156 |
-
margin: 0 0 0.3em !important;
|
157 |
-
padding: 0 !important;
|
158 |
-
float: right;
|
159 |
-
}
|
160 |
-
a.ai1ec-pagination {
|
161 |
-
margin: 0 0 0.3em !important;
|
162 |
-
}
|
163 |
-
.ai1ec-pagination li {
|
164 |
-
list-style: none !important;
|
165 |
-
padding: 0 !important;
|
166 |
-
float: left;
|
167 |
-
}
|
168 |
-
.ai1ec-action-month .ai1ec-pagination a {
|
169 |
-
width: 7em;
|
170 |
-
}
|
171 |
-
.ai1ec-action-week .ai1ec-pagination a,
|
172 |
-
.ai1ec-action-1day .ai1ec-pagination a {
|
173 |
-
width: 8em;
|
174 |
-
}
|
175 |
-
.ai1ec-action-agenda .ai1ec-pagination a {
|
176 |
-
float: right;
|
177 |
-
width: 9em;
|
178 |
-
}
|
179 |
-
#ai1ec-prev-year, #ai1ec-next-year {
|
180 |
-
width: 4em;
|
181 |
-
}
|
182 |
-
|
183 |
-
/* Month, week tables */
|
184 |
-
table.ai1ec-month-view,
|
185 |
-
.ai1ec-week-view table {
|
186 |
-
border-collapse: collapse;
|
187 |
-
border: 1px solid #ddd !important;
|
188 |
-
margin: 0 !important;
|
189 |
-
background: #fff;
|
190 |
-
table-layout: fixed !important;
|
191 |
-
clear: both;
|
192 |
-
width: 100% !important;
|
193 |
-
}
|
194 |
-
.ai1ec-week-view .tablescroll_wrapper {
|
195 |
-
position: relative;
|
196 |
-
border-bottom: 1px solid #ddd;
|
197 |
-
}
|
198 |
-
table.ai1ec-week-view-original {
|
199 |
-
visibility: hidden;
|
200 |
-
height: 400px;
|
201 |
-
}
|
202 |
-
table.ai1ec-week-view-original.tablescroll_body {
|
203 |
-
visibility: visible;
|
204 |
-
height: auto;
|
205 |
-
}
|
206 |
-
.ai1ec-week-view table.tablescroll_head,
|
207 |
-
.ai1ec-week-view table.tablescroll_head th {
|
208 |
-
border-bottom: none !important;
|
209 |
-
padding: 2.48px !important;
|
210 |
-
}
|
211 |
-
table.ai1ec-week-view-original.tablescroll_body,
|
212 |
-
table.ai1ec-week-view-original.tablescroll_body tr:first-child td {
|
213 |
-
border-top: none !important;
|
214 |
-
}
|
215 |
-
.ai1ec-month-view td,
|
216 |
-
.ai1ec-week-view td {
|
217 |
-
border: 1px solid #ddd !important;
|
218 |
-
vertical-align: top;
|
219 |
-
background: none !important;
|
220 |
-
}
|
221 |
-
.ai1ec-month-view td.ai1ec-empty {
|
222 |
-
background: #f8f8f8 !important;
|
223 |
-
}
|
224 |
-
.ai1ec-month-view th,
|
225 |
-
.ai1ec-week-view th {
|
226 |
-
border: none !important;
|
227 |
-
background: #f2f2f2 !important;
|
228 |
-
padding: 0.2em !important;
|
229 |
-
}
|
230 |
-
.ai1ec-month-view th,
|
231 |
-
.ai1ec-week-view th,
|
232 |
-
.ai1ec-week-view .ai1ec-hour-marker div,
|
233 |
-
.ai1ec-week-view .ai1ec-allday-label {
|
234 |
-
font: bold 9pt Tahoma, Geneva, sans-serif !important;
|
235 |
-
color: #999 !important;
|
236 |
-
text-shadow: 0 1px 0 #fff;
|
237 |
-
-o-text-shadow: 0 1px 0 #fff;
|
238 |
-
-ms-text-shadow: 0 1px 0 #fff;
|
239 |
-
-moz-text-shadow: 0 1px 0 #fff;
|
240 |
-
-webkit-text-shadow: 0 1px 0 #fff;
|
241 |
-
}
|
242 |
-
.ai1ec-month-view th {
|
243 |
-
text-align: center !important;
|
244 |
-
}
|
245 |
-
.ai1ec-week-view th {
|
246 |
-
text-align: left !important;
|
247 |
-
}
|
248 |
-
.ai1ec-week-view th .ai1ec-weekday-date {
|
249 |
-
font-size: 10.5pt !important;
|
250 |
-
font-weight: normal !important;
|
251 |
-
}
|
252 |
-
.ai1ec-week-view th .ai1ec-weekday-day {
|
253 |
-
font-size: 9pt !important;
|
254 |
-
font-weight: normal !important;
|
255 |
-
}
|
256 |
-
.ai1ec-month-view td,
|
257 |
-
.ai1ec-week-view td {
|
258 |
-
padding: 0 !important;
|
259 |
-
text-align: left;
|
260 |
-
}
|
261 |
-
.ai1ec-month-view .ai1ec-day,
|
262 |
-
.ai1ec-week-view .ai1ec-day,
|
263 |
-
.ai1ec-week-view .ai1ec-allday-events {
|
264 |
-
position: relative;
|
265 |
-
}
|
266 |
-
.ai1ec-month-view .ai1ec-day {
|
267 |
-
min-height: 5em;
|
268 |
-
}
|
269 |
-
.ai1ec-week-view .ai1ec-day {
|
270 |
-
height: 1440px;
|
271 |
-
}
|
272 |
-
.ai1ec-month-view .ai1ec-today,
|
273 |
-
.ai1ec-week-view .ai1ec-today {
|
274 |
-
background: #ffd !important;
|
275 |
-
background: rgba(255,255,128,0.3) !important;
|
276 |
-
}
|
277 |
-
.ai1ec-month-view .ai1ec-date {
|
278 |
-
text-align: right;
|
279 |
-
font-size: 10pt;
|
280 |
-
line-height: 12pt;
|
281 |
-
padding: 0 0.4em;
|
282 |
-
background: #eaf4ff;
|
283 |
-
font: 8pt Tahoma, Geneva, sans-serif;
|
284 |
-
color: #666;
|
285 |
-
text-shadow: 0 1px 0 #fff;
|
286 |
-
-o-text-shadow: 0 1px 0 #fff;
|
287 |
-
-ms-text-shadow: 0 1px 0 #fff;
|
288 |
-
-moz-text-shadow: 0 1px 0 #fff;
|
289 |
-
-webkit-text-shadow: 0 1px 0 #fff;
|
290 |
-
}
|
291 |
-
|
292 |
-
/* 1day tables */
|
293 |
-
table.ai1ec-1day-view, .ai1ec-1day-view table{
|
294 |
-
border-collapse: collapse;
|
295 |
-
border: 1px solid #ddd !important;
|
296 |
-
margin: 0 !important;
|
297 |
-
background: #fff;
|
298 |
-
table-layout: fixed !important;
|
299 |
-
clear: both;
|
300 |
-
width: 100% !important;
|
301 |
-
}
|
302 |
-
.ai1ec-1day-view .ai1ec-today {
|
303 |
-
color: #999 !important;
|
304 |
-
}
|
305 |
-
.ai1ec-1day-view .ai1ec-today th{
|
306 |
-
background: #ffd !important;
|
307 |
-
background: rgba(255,255,128,0.3) !important;
|
308 |
-
}
|
309 |
-
.ai1ec-1day-view .tablescroll_wrapper {
|
310 |
-
position: relative;
|
311 |
-
border-bottom: 1px solid #ddd;
|
312 |
-
}
|
313 |
-
table.ai1ec-1day-view-original {
|
314 |
-
visibility: hidden;
|
315 |
-
height: 400px;
|
316 |
-
}
|
317 |
-
table.ai1ec-1day-view-original.tablescroll_body {
|
318 |
-
visibility: visible;
|
319 |
-
height: auto;
|
320 |
-
}
|
321 |
-
.ai1ec-1day-view table.tablescroll_head,
|
322 |
-
.ai1ec-1day-view table.tablescroll_head th {
|
323 |
-
border-bottom: none !important;
|
324 |
-
padding: 2.48px !important;
|
325 |
-
}
|
326 |
-
table.ai1ec-1day-view-original.tablescroll_body,
|
327 |
-
table.ai1ec-1day-view-original.tablescroll_body tr:first-child td {
|
328 |
-
border-top: none !important;
|
329 |
-
}
|
330 |
-
.ai1ec-1day-view td {
|
331 |
-
border: 1px solid #ddd !important;
|
332 |
-
vertical-align: top;
|
333 |
-
background: none !important;
|
334 |
-
}
|
335 |
-
|
336 |
-
.ai1ec-1day-view th {
|
337 |
-
border: none !important;
|
338 |
-
padding: 0.2em !important;
|
339 |
-
background: #ffd !important;
|
340 |
-
background: rgba(255,255,128,0.3) !important;
|
341 |
-
}
|
342 |
-
.ai1ec-1day-view th,
|
343 |
-
.ai1ec-1day-view .ai1ec-hour-marker div,
|
344 |
-
.ai1ec-1day-view .ai1ec-allday-label {
|
345 |
-
font: bold 10pt Tahoma, Geneva, sans-serif !important;
|
346 |
-
color: #999 !important;
|
347 |
-
text-shadow: 0 1px 0 #fff;
|
348 |
-
-o-text-shadow: 0 1px 0 #fff;
|
349 |
-
-ms-text-shadow: 0 1px 0 #fff;
|
350 |
-
-moz-text-shadow: 0 1px 0 #fff;
|
351 |
-
-webkit-text-shadow: 0 1px 0 #fff;
|
352 |
-
}
|
353 |
-
.ai1ec-1day-view th {
|
354 |
-
text-align: center !important;
|
355 |
-
}
|
356 |
-
|
357 |
-
.ai1ec-1day-view th .ai1ec-weekday-date {
|
358 |
-
font-size: 10.5pt !important;
|
359 |
-
font-weight: normal !important;
|
360 |
-
}
|
361 |
-
.ai1ec-1day-view th .ai1ec-weekday-day {
|
362 |
-
font-size: 10.5pt !important;
|
363 |
-
font-weight: normal !important;
|
364 |
-
}
|
365 |
-
|
366 |
-
.ai1ec-1day-view td {
|
367 |
-
padding: 0 !important;
|
368 |
-
text-align: left;
|
369 |
-
}
|
370 |
-
.ai1ec-1day-view .ai1ec-day,
|
371 |
-
.ai1ec-1day-view .ai1ec-allday-events {
|
372 |
-
position: relative;
|
373 |
-
}
|
374 |
-
.ai1ec-1day-view .ai1ec-day {
|
375 |
-
height: 1440px;
|
376 |
-
}
|
377 |
-
|
378 |
-
/* Week/Day view now marker */
|
379 |
-
.ai1ec-week-view .ai1ec-grid-container,
|
380 |
-
.ai1ec-1day-view .ai1ec-grid-container {
|
381 |
-
position: absolute;
|
382 |
-
top: auto;
|
383 |
-
left: 0;
|
384 |
-
right: 0;
|
385 |
-
}
|
386 |
-
.ai1ec-week-view .ai1ec-now-marker,
|
387 |
-
.ai1ec-week-view .ai1ec-hour-marker,
|
388 |
-
.ai1ec-week-view .ai1ec-quarter-marker,
|
389 |
-
.ai1ec-1day-view .ai1ec-now-marker,
|
390 |
-
.ai1ec-1day-view .ai1ec-hour-marker,
|
391 |
-
.ai1ec-1day-view .ai1ec-quarter-marker {
|
392 |
-
position: absolute;
|
393 |
-
left: 0;
|
394 |
-
right: 0;
|
395 |
-
padding-right: 8px;
|
396 |
-
}
|
397 |
-
.ai1ec-week-view .ai1ec-hour-marker,
|
398 |
-
.ai1ec-1day-view .ai1ec-hour-marker {
|
399 |
-
border-top: 1px solid #e8e8e8;
|
400 |
-
border-top: 1px solid rgba(0,0,0,0.08);
|
401 |
-
height: 60px;
|
402 |
-
background: #f2f2f2 !important;
|
403 |
-
background: rgba(0,0,0,0.054) !important;
|
404 |
-
}
|
405 |
-
.ai1ec-week-view .ai1ec-hour-marker div,
|
406 |
-
.ai1ec-week-view .ai1ec-allday-label,
|
407 |
-
.ai1ec-1day-view .ai1ec-hour-marker div,
|
408 |
-
.ai1ec-1day-view .ai1ec-allday-label {
|
409 |
-
position: relative;
|
410 |
-
z-index: 2;
|
411 |
-
margin-left: 1px;
|
412 |
-
padding: 0 0.2em;
|
413 |
-
font-size: 8pt !important;
|
414 |
-
font-weight: normal !important;
|
415 |
-
background: #f2f2f2;
|
416 |
-
float: left;
|
417 |
-
border-radius: 0.3em;
|
418 |
-
-moz-border-radius: 0.3em;
|
419 |
-
-webkit-border-radius: 0.3em;
|
420 |
-
}
|
421 |
-
.ai1ec-week-view .ai1ec-allday-label,
|
422 |
-
.ai1ec-1day-view .ai1ec-allday-label {
|
423 |
-
margin-top: 1px;
|
424 |
-
}
|
425 |
-
.ai1ec-week-view .ai1ec-hour-marker.ai1ec-business-hour,
|
426 |
-
.ai1ec-1day-view .ai1ec-hour-marker.ai1ec-business-hour {
|
427 |
-
background: #fff !important;
|
428 |
-
background: transparent !important;
|
429 |
-
}
|
430 |
-
.ai1ec-week-view .ai1ec-quarter-marker,
|
431 |
-
.ai1ec-1day-view .ai1ec-quarter-marker {
|
432 |
-
border-top: 1px solid #f4f4f4;
|
433 |
-
border-top: 1px solid rgba(0,0,0,0.05);
|
434 |
-
}
|
435 |
-
.ai1ec-week-view .ai1ec-now-marker,
|
436 |
-
.ai1ec-1day-view .ai1ec-now-marker{
|
437 |
-
border-top: 1px solid #f2c539;
|
438 |
-
border-bottom: 1px solid rgba(0, 0, 0, 0.15);
|
439 |
-
z-index: 2;
|
440 |
-
}
|
441 |
-
/* Event summaries in month/week/day view, including popups */
|
442 |
-
.ai1ec-month-view a.ai1ec-event-container,
|
443 |
-
.ai1ec-week-view a.ai1ec-event-container,
|
444 |
-
.ai1ec-1day-view a.ai1ec-event-container {
|
445 |
-
font: 9pt Tahoma, Geneva, sans-serif !important;
|
446 |
-
text-decoration: none !important;
|
447 |
-
display: block;
|
448 |
-
border: none !important;
|
449 |
-
color: #568 !important;
|
450 |
-
}
|
451 |
-
.ai1ec-month-view a.ai1ec-event-container,
|
452 |
-
.ai1ec-week-view .ai1ec-allday-events a.ai1ec-event-container,
|
453 |
-
.ai1ec-1day-view .ai1ec-allday-events a.ai1ec-event-container {
|
454 |
-
position: relative;
|
455 |
-
}
|
456 |
-
.ai1ec-1day-view .ai1ec-allday-events a.ai1ec-event-container {
|
457 |
-
margin: 0 15px 0 50px;
|
458 |
-
}
|
459 |
-
.ai1ec-week-view .ai1ec-week a.ai1ec-event-container,
|
460 |
-
.ai1ec-1day-view .ai1ec-1day a.ai1ec-event-container {
|
461 |
-
position: absolute;
|
462 |
-
box-sizing: border-box;
|
463 |
-
-o-box-sizing: border-box;
|
464 |
-
-moz-box-sizing: border-box;
|
465 |
-
-webkit-box-sizing: border-box;
|
466 |
-
right: 0;
|
467 |
-
border-radius: 0.3em;
|
468 |
-
-moz-border-radius: 0.3em;
|
469 |
-
-webkit-border-radius: 0.3em;
|
470 |
-
box-shadow: 0 3px 6px rgba(0,0,0,0.2);
|
471 |
-
-moz-box-shadow: 0 3px 6px rgba(0,0,0,0.2);
|
472 |
-
-webkit-box-shadow: 0 3px 6px rgba(0,0,0,0.2);
|
473 |
-
border: 2px solid #ced3dd !important;
|
474 |
-
background: #fff !important;
|
475 |
-
background: linear-gradient( top, #fff, #ced3dd ) !important;
|
476 |
-
background: -o-linear-gradient( top, #fff, #ced3dd ) !important;
|
477 |
-
background: -moz-linear-gradient( top, #fff, #ced3dd ) !important;
|
478 |
-
background: -webkit-gradient( linear, left top, left bottom, color-stop( 0, #fff ), color-stop( 1, #ced3dd ) ) !important;
|
479 |
-
background: -webkit-linear-gradient( top, #fff, #ced3dd ) !important;
|
480 |
-
}
|
481 |
-
.ai1ec-month-view .ai1ec-event,
|
482 |
-
.ai1ec-1day-view .ai1ec-event,
|
483 |
-
.ai1ec-week-view .ai1ec-event {
|
484 |
-
border-radius: 0.3em;
|
485 |
-
-o-border-radius: 0.3em;
|
486 |
-
-moz-border-radius: 0.3em;
|
487 |
-
-webkit-border-radius: 0.3em;
|
488 |
-
margin: 1px 0 0;
|
489 |
-
padding: 0 3px 1px;
|
490 |
-
white-space: nowrap;
|
491 |
-
overflow: hidden;
|
492 |
-
max-height: 100%;
|
493 |
-
}
|
494 |
-
.ai1ec-month-view .ai1ec-allday .ai1ec-event,
|
495 |
-
.ai1ec-1day-view .ai1ec-allday .ai1ec-event,
|
496 |
-
.ai1ec-week-view .ai1ec-allday .ai1ec-event {
|
497 |
-
background: #568;
|
498 |
-
color: #fff !important;
|
499 |
-
}
|
500 |
-
.ai1ec-month-view .ai1ec-category-colors,
|
501 |
-
.ai1ec-1day-view .ai1ec-category-colors,
|
502 |
-
.ai1ec-week-view .ai1ec-category-colors {
|
503 |
-
float: right;
|
504 |
-
font-size: 1.2em;
|
505 |
-
margin-top: 1px;
|
506 |
-
}
|
507 |
-
.ai1ec-month-view .ai1ec-event-popup,
|
508 |
-
.ai1ec-month-view .ai1ec-event-summary,
|
509 |
-
.ai1ec-1day-view .ai1ec-event-popup,
|
510 |
-
.ai1ec-1day-view .ai1ec-event-summary,
|
511 |
-
.ai1ec-week-view .ai1ec-event-popup,
|
512 |
-
.ai1ec-week-view .ai1ec-event-summary {
|
513 |
-
border: 2px solid #d4c4b0;
|
514 |
-
box-shadow: 1px 5px 8px rgba(0,0,0,0.08);
|
515 |
-
-o-box-shadow: 1px 5px 8px rgba(0,0,0,0.08);
|
516 |
-
-ms-box-shadow: 1px 5px 8px rgba(0,0,0,0.08);
|
517 |
-
-moz-box-shadow: 1px 5px 8px rgba(0,0,0,0.08);
|
518 |
-
-webkit-box-shadow: 1px 5px 8px rgba(0,0,0,0.08);
|
519 |
-
background: #fff;
|
520 |
-
}
|
521 |
-
.ai1ec-month-view .ai1ec-event-popup,
|
522 |
-
.ai1ec-1day-view .ai1ec-event-popup,
|
523 |
-
.ai1ec-week-view .ai1ec-event-popup {
|
524 |
-
position: absolute;
|
525 |
-
z-index: 5;
|
526 |
-
display: none;
|
527 |
-
white-space: nowrap;
|
528 |
-
color: #000 !important;
|
529 |
-
top: -4px;
|
530 |
-
left: -2px;
|
531 |
-
min-width: 100%;
|
532 |
-
border-radius: 0 0.3em 0.3em 0;
|
533 |
-
-o-border-radius: 0 0.3em 0.3em 0;
|
534 |
-
-moz-border-radius: 0 0.3em 0.3em 0;
|
535 |
-
-webkit-border-radius: 0 0.3em 0.3em 0;
|
536 |
-
}
|
537 |
-
.ai1ec-1day-view .ai1ec-event-popup {
|
538 |
-
top: -3px;
|
539 |
-
min-width: 75%;
|
540 |
-
}
|
541 |
-
.ai1ec-week-view .ai1ec-week .ai1ec-event-popup {
|
542 |
-
top: -3px;
|
543 |
-
}
|
544 |
-
.ai1ec-month-view .ai1ec-event-popup.ai1ec-shifted-right,
|
545 |
-
.ai1ec-1day-view.ai1ec-event-popup.ai1ec-shifted-right,
|
546 |
-
.ai1ec-week-view .ai1ec-event-popup.ai1ec-shifted-right {
|
547 |
-
border-radius: 0.3em 0 0 0.3em;
|
548 |
-
-o-border-radius: 0.3em 0 0 0.3em;
|
549 |
-
-moz-border-radius: 0.3em 0 0 0.3em;
|
550 |
-
-webkit-border-radius: 0.3em 0 0 0.3em;
|
551 |
-
}
|
552 |
-
.ai1ec-month-view .ai1ec-event-popup-bg,
|
553 |
-
.ai1ec-1day-view .ai1ec-event-popup-bg,
|
554 |
-
.ai1ec-week-view .ai1ec-event-popup-bg {
|
555 |
-
position: relative;
|
556 |
-
left: -2px;
|
557 |
-
margin-right: -1px;
|
558 |
-
padding: 2px 2px 2px 5px;
|
559 |
-
background: #fff;
|
560 |
-
}
|
561 |
-
.ai1ec-month-view .ai1ec-shifted-right .ai1ec-event-popup-bg,
|
562 |
-
.ai1ec-1day-view .ai1ec-shifted-right .ai1ec-event-popup-bg,
|
563 |
-
.ai1ec-week-view .ai1ec-shifted-right .ai1ec-event-popup-bg {
|
564 |
-
left: 1px;
|
565 |
-
padding: 2px 5px 2px 2px;
|
566 |
-
}
|
567 |
-
.ai1ec-month-view .ai1ec-event-summary,
|
568 |
-
.ai1ec-month-view .ai1ec-event-summary p,
|
569 |
-
.ai1ec-1day-view .ai1ec-event-summary,
|
570 |
-
.ai1ec-1day-view .ai1ec-event-summary p,
|
571 |
-
.ai1ec-week-view .ai1ec-event-summary,
|
572 |
-
.ai1ec-week-view .ai1ec-event-summary p {
|
573 |
-
font-size: 0.95em !important;
|
574 |
-
}
|
575 |
-
.ai1ec-month-view .ai1ec-event-summary p,
|
576 |
-
.ai1ec-1day-view .ai1ec-event-summary p,
|
577 |
-
.ai1ec-week-view .ai1ec-event-summary p {
|
578 |
-
line-height: 1.4em !important;
|
579 |
-
}
|
580 |
-
.ai1ec-month-view .ai1ec-event-summary,
|
581 |
-
.ai1ec-1day-view .ai1ec-event-summary,
|
582 |
-
.ai1ec-week-view .ai1ec-event-summary {
|
583 |
-
position: absolute;
|
584 |
-
overflow: hidden;
|
585 |
-
top: -2px;
|
586 |
-
white-space: normal;
|
587 |
-
right: 100%;
|
588 |
-
width: 13em;
|
589 |
-
padding: 2px 4px 3px;
|
590 |
-
border-radius: 0.3em 0 0.3em 0.3em;
|
591 |
-
-o-border-radius: 0.3em 0 0.3em 0.3em;
|
592 |
-
-ms-border-radius: 0.3em 0 0.3em 0.3em;
|
593 |
-
-moz-border-radius: 0.3em 0 0.3em 0.3em;
|
594 |
-
-webkit-border-radius: 0.3em 0 0.3em 0.3em;
|
595 |
-
background: linear-gradient( #fff 1.5em, #fdfadc );
|
596 |
-
background: -o-linear-gradient( #fff 1.5em, #fdfadc );
|
597 |
-
background: -ms-linear-gradient( #fff 1.5em, #fdfadc );
|
598 |
-
background: -moz-linear-gradient( #fff 1.5em, #fdfadc );
|
599 |
-
background: -webkit-gradient( linear, 0% 1.5em, 0% 100%, from(#fff), to(#fdfadc) );
|
600 |
-
background: -webkit-linear-gradient( #fff 1.5em, #fdfadc );
|
601 |
-
color: #6d5e4a;
|
602 |
-
}
|
603 |
-
.ai1ec-month-view .ai1ec-shifted-right .ai1ec-event-summary,
|
604 |
-
.ai1ec-1day-view .ai1ec-shifted-right .ai1ec-event-summary,
|
605 |
-
.ai1ec-week-view .ai1ec-shifted-right .ai1ec-event-summary {
|
606 |
-
left: 100%;
|
607 |
-
border-radius: 0 0.3em 0.3em 0.3em;
|
608 |
-
-o-border-radius: 0 0.3em 0.3em 0.3em;
|
609 |
-
-moz-border-radius: 0 0.3em 0.3em 0.3em;
|
610 |
-
-webkit-border-radius: 0 0.3em 0.3em 0.3em;
|
611 |
-
}
|
612 |
-
.ai1ec-month-view .ai1ec-event-summary p,
|
613 |
-
.ai1ec-1day-view .ai1ec-event-summary p,
|
614 |
-
.ai1ec-week-view .ai1ec-event-summary p {
|
615 |
-
margin: 0 0 0.3em !important;
|
616 |
-
padding: 0 !important;
|
617 |
-
}
|
618 |
-
.ai1ec-month-view .ai1ec-event-time,
|
619 |
-
.ai1ec-1day-view .ai1ec-event-time,
|
620 |
-
.ai1ec-week-view .ai1ec-event-time {
|
621 |
-
font-size: 8pt;
|
622 |
-
font-weight: bold;
|
623 |
-
}
|
624 |
-
.ai1ec-1day-view .ai1ec-1day .ai1ec-event-title,
|
625 |
-
.ai1ec-week-view .ai1ec-week .ai1ec-event-title {
|
626 |
-
display: block;
|
627 |
-
white-space: normal;
|
628 |
-
font-size: 8pt !important;
|
629 |
-
}
|
630 |
-
.ai1ec-month-view .ai1ec-read-more,
|
631 |
-
.ai1ec-1day-view .ai1ec-read-more,
|
632 |
-
.ai1ec-week-view .ai1ec-read-more {
|
633 |
-
text-align: center;
|
634 |
-
font-size: 8pt;
|
635 |
-
color: #aaa;
|
636 |
-
color: rgba(0,0,0,0.4);
|
637 |
-
}
|
638 |
-
/* Month view date scrolling */
|
639 |
-
.ai1ec-month-view .ai1ec-obscured {
|
640 |
-
display: none !important;
|
641 |
-
}
|
642 |
-
.ai1ec-month-view a.ai1ec-scroll-up,
|
643 |
-
.ai1ec-month-view a.ai1ec-scroll-down {
|
644 |
-
display: block;
|
645 |
-
position: relative;
|
646 |
-
background: #fff no-repeat center center;
|
647 |
-
border: 1px solid #ccc;
|
648 |
-
border-radius: 0.2em;
|
649 |
-
-moz-border-radius: 0.2em;
|
650 |
-
-webkit-border-radius: 0.2em;
|
651 |
-
width: 15px;
|
652 |
-
height: 11px;
|
653 |
-
left: 50%;
|
654 |
-
margin-left: -8px;
|
655 |
-
}
|
656 |
-
.ai1ec-month-view a.ai1ec-scroll-up:hover,
|
657 |
-
.ai1ec-month-view a.ai1ec-scroll-down:hover {
|
658 |
-
background-color: #ccc;
|
659 |
-
}
|
660 |
-
.ai1ec-month-view a.ai1ec-scroll-up.ai1ec-disabled:hover,
|
661 |
-
.ai1ec-month-view a.ai1ec-scroll-down.ai1ec-disabled:hover {
|
662 |
-
background-color: transparent;
|
663 |
-
}
|
664 |
-
.ai1ec-month-view a.ai1ec-scroll-up {
|
665 |
-
background-image: url(../img/scroll-up.png);
|
666 |
-
margin-top: -13px;
|
667 |
-
margin-bottom: 2px;
|
668 |
-
}
|
669 |
-
.ai1ec-month-view a.ai1ec-scroll-down {
|
670 |
-
background-image: url(../img/scroll-down.png);
|
671 |
-
}
|
672 |
-
.ai1ec-month-view a.ai1ec-scroll-up.ai1ec-disabled,
|
673 |
-
.ai1ec-month-view a.ai1ec-scroll-down.ai1ec-disabled {
|
674 |
-
opacity: 0.2;
|
675 |
-
-moz-opacity: 0.2;
|
676 |
-
filter: alpha(opacity=2);
|
677 |
-
background-color: transparent;
|
678 |
-
border: none;
|
679 |
-
padding: 1px; /* To compensate for height lost by invisible border */
|
680 |
-
cursor: default;
|
681 |
-
}
|
682 |
-
|
683 |
-
/* Truncated events */
|
684 |
-
.ai1ec-1day-view .ai1ec-start-truncated .ai1ec-event-time,
|
685 |
-
.ai1ec-week-view .ai1ec-start-truncated .ai1ec-event-time {
|
686 |
-
display: none;
|
687 |
-
}
|
688 |
-
.ai1ec-1day-view-view .ai1ec-1day a.ai1ec-event-container.ai1ec-start-truncated,
|
689 |
-
.ai1ec-week-view .ai1ec-week a.ai1ec-event-container.ai1ec-start-truncated {
|
690 |
-
border-top-left-radius: 0;
|
691 |
-
border-top-right-radius: 0;
|
692 |
-
-moz-border-radius-topleft: 0;
|
693 |
-
-moz-border-radius-topright: 0;
|
694 |
-
-webkit-border-top-left-radius: 0;
|
695 |
-
-webkit-border-top-right-radius: 0;
|
696 |
-
}
|
697 |
-
.ai1ec-1day-view .ai1ec-1day .ai1ec-start-truncator,
|
698 |
-
.ai1ec-week-view .ai1ec-week .ai1ec-start-truncator {
|
699 |
-
position: absolute;
|
700 |
-
top: -2px;
|
701 |
-
left: -2px;
|
702 |
-
line-height: 1em;
|
703 |
-
font-size: 6pt;
|
704 |
-
}
|
705 |
-
.ai1ec-1day-view .ai1ec-1day a.ai1ec-event-container.ai1ec-end-truncated,
|
706 |
-
.ai1ec-week-view .ai1ec-week a.ai1ec-event-container.ai1ec-end-truncated {
|
707 |
-
border-bottom-left-radius: 0;
|
708 |
-
border-bottom-right-radius: 0;
|
709 |
-
-moz-border-radius-bottomleft: 0;
|
710 |
-
-moz-border-radius-bottomright: 0;
|
711 |
-
-webkit-border-bottom-left-radius: 0;
|
712 |
-
-webkit-border-bottom-right-radius: 0;
|
713 |
-
}
|
714 |
-
.ai1ec-1day-view .ai1ec-1day .ai1ec-end-truncator,
|
715 |
-
.ai1ec-week-view .ai1ec-week .ai1ec-end-truncator {
|
716 |
-
position: absolute;
|
717 |
-
bottom: -2px;
|
718 |
-
right: -2px;
|
719 |
-
line-height: 1em;
|
720 |
-
font-size: 6pt;
|
721 |
-
}
|
722 |
-
|
723 |
-
/* Agenda view */
|
724 |
-
.ai1ec-agenda-view {
|
725 |
-
clear: both;
|
726 |
-
overflow: hidden;
|
727 |
-
margin: 0 !important;
|
728 |
-
padding: 0 !important;
|
729 |
-
}
|
730 |
-
.ai1ec-agenda-view .ai1ec-no-results {
|
731 |
-
font-size: 10pt !important;
|
732 |
-
font-style: italic;
|
733 |
-
}
|
734 |
-
.ai1ec-agenda-view .ai1ec-date-events {
|
735 |
-
overflow: hidden;
|
736 |
-
margin: 0 0.75em 0 0 !important;
|
737 |
-
padding: 0 !important;
|
738 |
-
}
|
739 |
-
.ai1ec-agenda-view > li,
|
740 |
-
.ai1ec-agenda-view .ai1ec-date-events > li {
|
741 |
-
list-style: none !important;
|
742 |
-
}
|
743 |
-
.ai1ec-agenda-view .ai1ec-date {
|
744 |
-
overflow: hidden;
|
745 |
-
margin: 0 !important;
|
746 |
-
padding: 0 !important;
|
747 |
-
border-top: 1px solid #f2f2f2;
|
748 |
-
background: #f2f2f2 !important;
|
749 |
-
background: -o-linear-gradient( #f2f2f2 1em, rgba(255,255,255,0) ) !important;
|
750 |
-
background: -ms-linear-gradient( #f2f2f2 1em, rgba(255,255,255,0) ) !important;
|
751 |
-
background: -moz-linear-gradient( #f2f2f2 1em, rgba(255,255,255,0) ) !important;
|
752 |
-
background: -webkit-gradient( linear, 0 1em, 0 100%, from(#f2f2f2), to(rgba(255,255,255,0)) ) !important;
|
753 |
-
background: -webkit-linear-gradient( #f2f2f2 1em, rgba(255,255,255,0) ) !important;
|
754 |
-
}
|
755 |
-
.ai1ec-agenda-view .ai1ec-date.ai1ec-today {
|
756 |
-
border-top: 1px solid #ffd;
|
757 |
-
background: #ffd !important;
|
758 |
-
background: -o-linear-gradient( #f8f8ce 1em, rgba(255,255,255,0) ) !important;
|
759 |
-
background: -ms-linear-gradient( #f8f8ce 1em, rgba(255,255,255,0) ) !important;
|
760 |
-
background: -moz-linear-gradient( #f8f8ce 1em, rgba(255,255,255,0) ) !important;
|
761 |
-
background: -webkit-gradient( linear, 0 1em, 0 100%, from(#f8f8ce), to(rgba(255,255,255,0)) ) !important;
|
762 |
-
background: -webkit-linear-gradient( #f8f8ce 1em, rgba(255,255,255,0) ) !important;
|
763 |
-
background: -o-linear-gradient( #f8f8ce 1em, rgba(255,255,255,0) ) !important;
|
764 |
-
}
|
765 |
-
.ai1ec-agenda-view h3.ai1ec-date-title {
|
766 |
-
width: 4em;
|
767 |
-
float: left;
|
768 |
-
margin: 0 0.75em 0.5em !important;
|
769 |
-
font: 10pt/1.1em Tahoma, Geneva, sans-serif !important;
|
770 |
-
color: #444;
|
771 |
-
text-shadow: 0 1px 0 #fff;
|
772 |
-
-o-text-shadow: 0 1px 0 #fff;
|
773 |
-
-ms-text-shadow: 0 1px 0 #fff;
|
774 |
-
-moz-text-shadow: 0 1px 0 #fff;
|
775 |
-
-webkit-text-shadow: 0 1px 0 #fff;
|
776 |
-
line-height: 1.1em;
|
777 |
-
text-align: center;
|
778 |
-
border: 2px solid #7e9dbd;
|
779 |
-
border-radius: 0 0 5px 5px;
|
780 |
-
-o-border-radius: 0 0 0.5em 0.5em;
|
781 |
-
-moz-border-radius: 0 0 0.5em 0.5em;
|
782 |
-
-webkit-border-radius: 0 0 0.5em 0.5em;
|
783 |
-
box-shadow: 0 2px 2px rgba(0,0,0,0.08);
|
784 |
-
-o-box-shadow: 0 2px 2px rgba(0,0,0,0.08);
|
785 |
-
-ms-box-shadow: 0 2px 2px rgba(0,0,0,0.08);
|
786 |
-
-moz-box-shadow: 0 2px 2px rgba(0,0,0,0.08);
|
787 |
-
-webkit-box-shadow: 0 2px 2px rgba(0,0,0,0.08);
|
788 |
-
background: #fff;
|
789 |
-
background: -o-linear-gradient( #fff 1em, #eee );
|
790 |
-
background: -ms-linear-gradient( #fff 1em, #eee );
|
791 |
-
background: -moz-linear-gradient( #fff 1em, #eee );
|
792 |
-
background: -webkit-gradient( linear, 0% 1em, 0% 100%, from(#fff), to(#eee) );
|
793 |
-
background: -webkit-linear-gradient( #fff 1em, #eee );
|
794 |
-
}
|
795 |
-
.ai1ec-agenda-view .ai1ec-month {
|
796 |
-
text-shadow: 0 -1px 0 #000;
|
797 |
-
-o-text-shadow: 0 -1px 0 #000;
|
798 |
-
-ms-text-shadow: 0 -1px 0 #000;
|
799 |
-
-moz-text-shadow: 0 -1px 0 #000;
|
800 |
-
-webkit-text-shadow: 0 -1px 0 #000;
|
801 |
-
background: #7e9dbd;
|
802 |
-
font-size: 0.8em !important;
|
803 |
-
padding: 0.1em;
|
804 |
-
text-transform: uppercase;
|
805 |
-
letter-spacing: 0.2em;
|
806 |
-
color: #fff;
|
807 |
-
}
|
808 |
-
.ai1ec-agenda-view .ai1ec-day {
|
809 |
-
font-size: 2.2em !important;
|
810 |
-
padding: 0.3em 0 0.2em !important;
|
811 |
-
}
|
812 |
-
.ai1ec-agenda-view .ai1ec-weekday {
|
813 |
-
font-size: 0.8em !important;
|
814 |
-
line-height: 1.5em;
|
815 |
-
}
|
816 |
-
|
817 |
-
/* Agenda view events */
|
818 |
-
.ai1ec-agenda-view .ai1ec-event {
|
819 |
-
position: relative;
|
820 |
-
clear: right;
|
821 |
-
overflow: hidden;
|
822 |
-
font-size: 10pt;
|
823 |
-
text-decoration: none;
|
824 |
-
padding: 0.1em 0.3em !important;
|
825 |
-
margin: 0.5em 0 !important;
|
826 |
-
background: #fff !important;
|
827 |
-
border: 1px solid #ddd;
|
828 |
-
border-radius: 0.5em;
|
829 |
-
-o-border-radius: 0.5em;
|
830 |
-
-moz-border-radius: 0.5em;
|
831 |
-
-webkit-border-radius: 0.5em;
|
832 |
-
}
|
833 |
-
.ai1ec-agenda-view .ai1ec-event.ai1ec-expanded {
|
834 |
-
border: 2px solid #D4C4B0;
|
835 |
-
box-shadow: 1px 5px 8px rgba(0,0,0,0.08);
|
836 |
-
-o-box-shadow: 1px 5px 8px rgba(0,0,0,0.08);
|
837 |
-
-ms-box-shadow: 1px 5px 8px rgba(0,0,0,0.08);
|
838 |
-
-moz-box-shadow: 1px 5px 8px rgba(0,0,0,0.08);
|
839 |
-
-webkit-box-shadow: 1px 5px 8px rgba(0,0,0,0.08);
|
840 |
-
}
|
841 |
-
.ai1ec-agenda-view .ai1ec-event-click {
|
842 |
-
font-family: Tahoma, Geneva, sans-serif !important;
|
843 |
-
cursor: pointer;
|
844 |
-
line-height: 1.3em;
|
845 |
-
color: #568;
|
846 |
-
text-shadow: 0 1px 0 #fff;
|
847 |
-
-o-text-shadow: 0 1px 0 #fff;
|
848 |
-
-ms-text-shadow: 0 1px 0 #fff;
|
849 |
-
-moz-text-shadow: 0 1px 0 #fff;
|
850 |
-
-webkit-text-shadow: 0 1px 0 #fff;
|
851 |
-
}
|
852 |
-
.ai1ec-agenda-view .ai1ec-event-time {
|
853 |
-
float: left;
|
854 |
-
margin-right: 0.5em;
|
855 |
-
min-height: 1em;
|
856 |
-
font-weight: bold;
|
857 |
-
line-height: 1.3em;
|
858 |
-
}
|
859 |
-
.ai1ec-agenda-view .ai1ec-event-title {
|
860 |
-
margin: 0 0 0 8em;
|
861 |
-
font-size: 10pt !important;
|
862 |
-
font-weight: normal;
|
863 |
-
}
|
864 |
-
.ai1ec-agenda-view .ai1ec-event.ai1ec-allday {
|
865 |
-
padding: 0 !important;
|
866 |
-
}
|
867 |
-
.ai1ec-agenda-view .ai1ec-allday-label {
|
868 |
-
font-size: 8pt !important;
|
869 |
-
color: #b9c0ce;
|
870 |
-
padding-left: 0.2em;
|
871 |
-
}
|
872 |
-
.ai1ec-agenda-view .ai1ec-allday .ai1ec-event-click {
|
873 |
-
color: #fff;
|
874 |
-
background: #568;
|
875 |
-
padding: 0.1em 0.4em;
|
876 |
-
border-radius: 0.3em;
|
877 |
-
-o-border-radius: 0.3em;
|
878 |
-
-moz-border-radius: 0.3em;
|
879 |
-
-webkit-border-radius: 0.3em;
|
880 |
-
text-shadow: none;
|
881 |
-
-o-text-shadow: none;
|
882 |
-
-ms-text-shadow: none;
|
883 |
-
-moz-text-shadow: none;
|
884 |
-
-webkit-text-shadow: none;
|
885 |
-
}
|
886 |
-
.ai1ec-agenda-view .ai1ec-allday .ai1ec-event-time {
|
887 |
-
color: #fff;
|
888 |
-
}
|
889 |
-
.ai1ec-agenda-view .ai1ec-allday .ai1ec-event-title {
|
890 |
-
margin: 0;
|
891 |
-
}
|
892 |
-
.ai1ec-agenda-view .ai1ec-event-expand {
|
893 |
-
float: right;
|
894 |
-
margin-left: 0.5em;
|
895 |
-
visibility: hidden;
|
896 |
-
font-size: 9pt !important;
|
897 |
-
}
|
898 |
-
.ai1ec-agenda-view .ai1ec-event:hover,
|
899 |
-
.ai1ec-agenda-view .ai1ec-event.ai1ec-expanded:hover {
|
900 |
-
border-color: #aaa;
|
901 |
-
}
|
902 |
-
.ai1ec-agenda-view .ai1ec-event:hover .ai1ec-event-click {
|
903 |
-
color: #000;
|
904 |
-
}
|
905 |
-
.ai1ec-agenda-view .ai1ec-allday:hover .ai1ec-event-click {
|
906 |
-
color: #fff;
|
907 |
-
background: #3b475f;
|
908 |
-
}
|
909 |
-
.ai1ec-agenda-view .ai1ec-event-click:hover > .ai1ec-event-expand {
|
910 |
-
visibility: visible;
|
911 |
-
}
|
912 |
-
.ai1ec-agenda-view .ai1ec-category-colors {
|
913 |
-
float: left;
|
914 |
-
font-size: 0.9em;
|
915 |
-
margin: 0.2em 0.2em 0 -0.2em;
|
916 |
-
}
|
917 |
-
.ai1ec-agenda-view .ai1ec-category-colors .ai1ec-category-color {
|
918 |
-
border: 1px solid rgba(255,255,255,0.7);
|
919 |
-
}
|
920 |
-
|
921 |
-
/* Agenda view expanded events */
|
922 |
-
.ai1ec-agenda-view .ai1ec-event-summary {
|
923 |
-
display: none;
|
924 |
-
}
|
925 |
-
.ai1ec-agenda-view .ai1ec-event-summary .ai1ec-event-title {
|
926 |
-
margin: 0.1em 0;
|
927 |
-
font-size: 11pt !important;
|
928 |
-
line-height: 1.1em;
|
929 |
-
}
|
930 |
-
.ai1ec-agenda-view .ai1ec-event-summary .ai1ec-event-time {
|
931 |
-
width: auto;
|
932 |
-
float: none;
|
933 |
-
font-size: 9pt !important;
|
934 |
-
line-height: 1.5em;
|
935 |
-
}
|
936 |
-
.ai1ec-agenda-view .ai1ec-event-summary .ai1ec-event-click {
|
937 |
-
border-bottom: 1px solid #ddd;
|
938 |
-
}
|
939 |
-
.ai1ec-agenda-view .ai1ec-allday .ai1ec-event-summary .ai1ec-event-click {
|
940 |
-
border-bottom: 1px solid #ddd;
|
941 |
-
border-radius: 0.3em 0.3em 0 0;
|
942 |
-
-o-border-radius: 0.3em 0.3em 0 0;
|
943 |
-
-moz-border-radius: 0.3em 0.3em 0 0;
|
944 |
-
-webkit-border-radius: 0.3em 0.3em 0 0;
|
945 |
-
}
|
946 |
-
.ai1ec-agenda-view .ai1ec-categories,
|
947 |
-
.ai1ec-agenda-view .ai1ec-tags {
|
948 |
-
font-size: 8pt !important;
|
949 |
-
}
|
950 |
-
.ai1ec-agenda-view .ai1ec-event-description {
|
951 |
-
clear: both;
|
952 |
-
overflow: hidden;
|
953 |
-
padding: 0 0 3.6em;
|
954 |
-
max-height: 20em;
|
955 |
-
}
|
956 |
-
.ai1ec-agenda-view .ai1ec-event-description,
|
957 |
-
.ai1ec-agenda-view .ai1ec-event-description p {
|
958 |
-
font-size: 9pt !important;
|
959 |
-
line-height: 1.5em !important;
|
960 |
-
}
|
961 |
-
.ai1ec-agenda-view .ai1ec-event-description p {
|
962 |
-
margin: 0.5em 0 0.75em !important;
|
963 |
-
padding: 0 !important;
|
964 |
-
}
|
965 |
-
.ai1ec-agenda-view .ai1ec-allday .ai1ec-event-description {
|
966 |
-
position: relative;
|
967 |
-
overflow: hidden;
|
968 |
-
padding: 0 0.4em 3.5em;
|
969 |
-
}
|
970 |
-
.ai1ec-agenda-view .ai1ec-event-description .ai1ec-label {
|
971 |
-
font-size: 8pt !important;
|
972 |
-
font-weight: normal;
|
973 |
-
}
|
974 |
-
|
975 |
-
/* Agenda event overlay/read more */
|
976 |
-
.ai1ec-agenda-view .ai1ec-event-overlay {
|
977 |
-
position: absolute;
|
978 |
-
z-index: 5;
|
979 |
-
bottom: 0;
|
980 |
-
left: 0;
|
981 |
-
right: 0;
|
982 |
-
padding: 0.4em 0.5em 0.4em 0.2em;
|
983 |
-
border-radius: 0 0 0.5em 0.5em;
|
984 |
-
-o-border-radius: 0 0 0.5em 0.5em;
|
985 |
-
-moz-border-radius: 0 0 0.5em 0.5em;
|
986 |
-
-webkit-border-radius: 0 0 0.5em 0.5em;
|
987 |
-
background: rgba(255,255,255,0.75);
|
988 |
-
background: -o-linear-gradient( rgba(255,255,255,0.75), #FDFADC );
|
989 |
-
background: -ms-linear-gradient( rgba(255,255,255,0.75), #FDFADC );
|
990 |
-
background: -moz-linear-gradient( rgba(255,255,255,0.75), #FDFADC );
|
991 |
-
background: -webkit-gradient( linear, 0 0, 0 100%, from(rgba(255,255,255,0.75)), to(#FDFADC) );
|
992 |
-
background: -webkit-linear-gradient( rgba(255,255,255,0.75), #FDFADC );
|
993 |
-
}
|
994 |
-
.ai1ec-agenda-view .ai1ec-read-more {
|
995 |
-
float: right;
|
996 |
-
margin: 0.6em 0 0.2em;
|
997 |
-
}
|
998 |
-
|
999 |
-
/* Subscribe */
|
1000 |
-
.ai1ec-subscribe {
|
1001 |
-
clear: both;
|
1002 |
-
}
|
1003 |
-
.ai1ec-subscribe-filtered {
|
1004 |
-
display: none;
|
1005 |
-
}
|
1006 |
-
/* Category and Tags */
|
1007 |
-
.ai1ec-filter-selector-container:hover > .ai1ec-filter-selector{
|
1008 |
-
display: block;
|
1009 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
css/event.css
DELETED
@@ -1,202 +0,0 @@
|
|
1 |
-
/* General table attributes */
|
2 |
-
table.ai1ec-full-event {
|
3 |
-
border: none !important;
|
4 |
-
border-collapse: collapse !important;
|
5 |
-
width: 100%;
|
6 |
-
margin-bottom: 0.5em !important;
|
7 |
-
}
|
8 |
-
.ai1ec-full-event td {
|
9 |
-
font-size: 10pt !important;
|
10 |
-
}
|
11 |
-
.ai1ec-full-event th, .ai1ec-full-event td {
|
12 |
-
line-height: 14pt !important;
|
13 |
-
padding: 0.3em 0.5em !important;
|
14 |
-
border: none !important;
|
15 |
-
vertical-align: top;
|
16 |
-
}
|
17 |
-
.ai1ec-multi-event th, .ai1ec-multi-event td {
|
18 |
-
padding: 0.3em 0.5em !important;
|
19 |
-
}
|
20 |
-
.ai1ec-full-event th.ai1ec-empty, .ai1ec-full-event td.ai1ec-empty {
|
21 |
-
padding: 0 !important;
|
22 |
-
}
|
23 |
-
.ai1ec-full-event th {
|
24 |
-
width: 6em;
|
25 |
-
font-size: 9pt !important;
|
26 |
-
font-family: sans-serif !important;
|
27 |
-
font-weight: bold;
|
28 |
-
color: #888 !important;
|
29 |
-
text-align: right;
|
30 |
-
text-shadow: 0 1px 0 #fff;
|
31 |
-
-moz-text-shadow: 0 1px 0 #fff;
|
32 |
-
-webkit-text-shadow: 0 1px 0 #fff;
|
33 |
-
background: #d0d0d0;
|
34 |
-
background: linear-gradient( right, transparent, rgba(0,0,0,0.07) 1em, rgba(0,0,0,0.03) );
|
35 |
-
background: -o-linear-gradient( right, transparent, rgba(0,0,0,0.07) 1em, rgba(0,0,0,0.03) );
|
36 |
-
background: -ms-linear-gradient( right, transparent, rgba(0,0,0,0.07) 1em, rgba(0,0,0,0.03) );
|
37 |
-
background: -moz-linear-gradient( right, transparent, rgba(0,0,0,0.07) 1em, rgba(0,0,0,0.03) );
|
38 |
-
background: -webkit-gradient( linear, 0 0, 100% 0, from(transparent), to(rgba(0,0,0,0.07)) );
|
39 |
-
background: -webkit-linear-gradient( right, transparent, rgba(0,0,0,0.07) 1em, rgba(0,0,0,0.03) );
|
40 |
-
}
|
41 |
-
|
42 |
-
/* Event time(s) */
|
43 |
-
.ai1ec-full-event .ai1ec-time {
|
44 |
-
line-height: 16pt !important;
|
45 |
-
vertical-align: middle;
|
46 |
-
}
|
47 |
-
.ai1ec-multi-event .ai1ec-time {
|
48 |
-
line-height: 15pt !important;
|
49 |
-
}
|
50 |
-
.ai1ec-full-event td.ai1ec-time {
|
51 |
-
font-weight: bold;
|
52 |
-
font-size: 11pt !important;
|
53 |
-
}
|
54 |
-
.ai1ec-multi-event td.ai1ec-time {
|
55 |
-
font-size: 10pt !important;
|
56 |
-
}
|
57 |
-
.ai1ec-full-event .ai1ec-allday-label {
|
58 |
-
font-size: 10pt !important;
|
59 |
-
color: #bbb;
|
60 |
-
padding-left: 0.2em;
|
61 |
-
}
|
62 |
-
.ai1ec-multi-event .ai1ec-allday-label {
|
63 |
-
font-size: 9pt !important;
|
64 |
-
}
|
65 |
-
|
66 |
-
/* Calendar link */
|
67 |
-
.ai1ec-full-event .ai1ec-calendar-link {
|
68 |
-
float: right;
|
69 |
-
margin: -0.1em 0;
|
70 |
-
}
|
71 |
-
.ai1ec-multi-event .ai1ec-calendar-link {
|
72 |
-
font-size: 8pt !important;
|
73 |
-
}
|
74 |
-
|
75 |
-
/* Location & map */
|
76 |
-
.ai1ec-full-event td.ai1ec-location {
|
77 |
-
min-width: 30%;
|
78 |
-
}
|
79 |
-
.ai1ec-full-event td.ai1ec-map {
|
80 |
-
text-align: right;
|
81 |
-
}
|
82 |
-
.ai1ec-full-event td.ai1ec-map.ai1ec-has-map {
|
83 |
-
width: 55%;
|
84 |
-
text-align: left;
|
85 |
-
}
|
86 |
-
.ai1ec-full-event .ai1ec-gmap-container {
|
87 |
-
border: 1px solid #ddd;
|
88 |
-
margin-bottom: 0.3em;
|
89 |
-
position: relative;
|
90 |
-
}
|
91 |
-
.ai1ec-full-event #ai1ec-gmap-canvas {
|
92 |
-
min-width: 18em;
|
93 |
-
width: 100%;
|
94 |
-
height: 12em;
|
95 |
-
}
|
96 |
-
.ai1ec-full-event .ai1ec-gmap-link {
|
97 |
-
position: absolute;
|
98 |
-
margin: 0;
|
99 |
-
font-size: 0.8em !important;
|
100 |
-
bottom: 0;
|
101 |
-
right: 0;
|
102 |
-
}
|
103 |
-
.ai1ec-multi-event .ai1ec-gmap-link {
|
104 |
-
font-size: 8pt !important;
|
105 |
-
margin: -0.2em 0;
|
106 |
-
}
|
107 |
-
.ai1ec-full-event #ai1ec-gmap-canvas input {
|
108 |
-
margin: 0 !important;
|
109 |
-
}
|
110 |
-
.ai1ec-gmap-placeholder {
|
111 |
-
min-width: 18em;
|
112 |
-
width: 100%;
|
113 |
-
height: 12em;
|
114 |
-
border: 1px dashed #ddd;
|
115 |
-
text-align: center;
|
116 |
-
cursor: pointer;
|
117 |
-
color: #ddd;
|
118 |
-
margin-bottom: 0.3em;
|
119 |
-
}
|
120 |
-
.ai1ec-gmap-placeholder:hover {
|
121 |
-
border-color: #000;
|
122 |
-
color: #000;
|
123 |
-
}
|
124 |
-
.ai1ec-gmap-placeholder strong {
|
125 |
-
position: relative;
|
126 |
-
top: 45%;
|
127 |
-
}
|
128 |
-
.ai1ec-gmap-container-hidden {
|
129 |
-
position: absolute !important;
|
130 |
-
visibility: hidden;
|
131 |
-
}
|
132 |
-
|
133 |
-
/* Contact info */
|
134 |
-
.ai1ec-full-event .ai1ec-contact a {
|
135 |
-
white-space: nowrap;
|
136 |
-
}
|
137 |
-
|
138 |
-
/* Categories and tags */
|
139 |
-
.ai1ec-full-event td.ai1ec-tags, .ai1ec-full-event td.ai1ec-categories {
|
140 |
-
padding: 0.1em 0.2em !important;
|
141 |
-
}
|
142 |
-
.ai1ec-full-event .ai1ec-category {
|
143 |
-
float: left;
|
144 |
-
}
|
145 |
-
.ai1ec-multi-event .ai1ec-category {
|
146 |
-
font: 8pt Tahoma, Geneva, sans-serif !important;
|
147 |
-
}
|
148 |
-
.ai1ec-full-event .ai1ec-tag {
|
149 |
-
font-size: 0.9em !important;
|
150 |
-
}
|
151 |
-
|
152 |
-
/* Footer */
|
153 |
-
.ai1ec-event-footer {
|
154 |
-
clear: left;
|
155 |
-
font-size: 0.9em !important;
|
156 |
-
font-style: italic;
|
157 |
-
}
|
158 |
-
.ai1ec-ics-icon {
|
159 |
-
background: url(../img/ics-icon.png) no-repeat right;
|
160 |
-
padding-right: 15px;
|
161 |
-
}
|
162 |
-
|
163 |
-
/* Excerpts */
|
164 |
-
.ai1ec-excerpt {
|
165 |
-
margin-bottom: 0.5em;
|
166 |
-
font-size: 10pt !important;
|
167 |
-
line-height: 1.6em;
|
168 |
-
overflow: hidden;
|
169 |
-
}
|
170 |
-
.ai1ec-excerpt > div {
|
171 |
-
padding-left: 7.2em;
|
172 |
-
}
|
173 |
-
.ai1ec-excerpt label {
|
174 |
-
padding: 0 0.6em !important;
|
175 |
-
background: #d0d0d0;
|
176 |
-
background: linear-gradient( right, transparent, rgba(0,0,0,0.07) 1em, rgba(0,0,0,0.03) );
|
177 |
-
background: -o-linear-gradient( right, transparent, rgba(0,0,0,0.07) 1em, rgba(0,0,0,0.03) );
|
178 |
-
background: -ms-linear-gradient( right, transparent, rgba(0,0,0,0.07) 1em, rgba(0,0,0,0.03) );
|
179 |
-
background: -moz-linear-gradient( right, transparent, rgba(0,0,0,0.07) 1em, rgba(0,0,0,0.03) );
|
180 |
-
background: -webkit-gradient( linear, 0 0, 100% 0, from(transparent), to(rgba(0,0,0,0.07)) );
|
181 |
-
background: -webkit-linear-gradient( right, transparent, rgba(0,0,0,0.07) 1em, rgba(0,0,0,0.03) );
|
182 |
-
text-align: right;
|
183 |
-
text-shadow: 0 1px 0 #fff;
|
184 |
-
-moz-text-shadow: 0 1px 0 #fff;
|
185 |
-
-webkit-text-shadow: 0 1px 0 #fff;
|
186 |
-
clear: left;
|
187 |
-
float: left;
|
188 |
-
width: 6em;
|
189 |
-
margin-left: -7.2em;
|
190 |
-
}
|
191 |
-
.ai1ec-excerpt .ai1ec-time {
|
192 |
-
font-weight: bold;
|
193 |
-
}
|
194 |
-
.ai1ec-excerpt .ai1ec-event-link {
|
195 |
-
float: right;
|
196 |
-
font-size: 8pt !important;
|
197 |
-
}
|
198 |
-
.ai1ec-excerpt .ai1ec-allday-label {
|
199 |
-
font-size: 9pt !important;
|
200 |
-
color: #bbb;
|
201 |
-
padding-left: 0.2em;
|
202 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
css/general.css
DELETED
@@ -1,356 +0,0 @@
|
|
1 |
-
/* General button styling */
|
2 |
-
a.ai1ec-button {
|
3 |
-
cursor: pointer;
|
4 |
-
font: 10pt/1.1em Tahoma, Geneva, sans-serif !important;
|
5 |
-
text-decoration: none !important;
|
6 |
-
color: #666 !important;
|
7 |
-
text-shadow: 0 1px 0 #fff;
|
8 |
-
-moz-text-shadow: 0 1px 0 #fff;
|
9 |
-
-webkit-text-shadow: 0 1px 0 #fff;
|
10 |
-
padding: 0.4em 0.5em;
|
11 |
-
margin: 0.1em;
|
12 |
-
background: #eee;
|
13 |
-
background: -moz-linear-gradient( #f8f8f8, #ddd );
|
14 |
-
background: -webkit-gradient( linear, 0% 0%, 0% 100%, from(#f8f8f8), to(#ddd) );
|
15 |
-
background: -webkit-linear-gradient( #f8f8f8, #ddd );
|
16 |
-
background: -o-linear-gradient( #f8f8f8, #ddd );
|
17 |
-
box-shadow: 0 2px 2px rgba(0,0,0,0.08);
|
18 |
-
-moz-box-shadow: 0 2px 2px rgba(0,0,0,0.08);
|
19 |
-
-webkit-box-shadow: 0 2px 2px rgba(0,0,0,0.08);
|
20 |
-
border-radius: 0.4em;
|
21 |
-
-moz-border-radius: 0.4em;
|
22 |
-
-webkit-border-radius: 0.4em;
|
23 |
-
text-align: center;
|
24 |
-
border: 1px solid #ccc;
|
25 |
-
border-width: 1px;
|
26 |
-
display: inline-block;
|
27 |
-
white-space: nowrap;
|
28 |
-
}
|
29 |
-
a.ai1ec-button:hover {
|
30 |
-
color: #444 !important;
|
31 |
-
background: #ddd;
|
32 |
-
background: -moz-linear-gradient( #eee, #ccc );
|
33 |
-
background: -webkit-gradient( linear, 0% 0%, 0% 100%, from(#eee), to(#ccc) );
|
34 |
-
background: -webkit-linear-gradient( #eee, #ccc );
|
35 |
-
background: -o-linear-gradient( #eee, #ccc );
|
36 |
-
}
|
37 |
-
a.ai1ec-button.ai1ec-selected {
|
38 |
-
color: #000 !important;
|
39 |
-
border-color: #909CE0;
|
40 |
-
background: #DDE6F8;
|
41 |
-
background: -moz-linear-gradient( #eDf6Ff, #C5D4F3 );
|
42 |
-
background: -webkit-gradient( linear, 0% 0%, 0% 100%, from(#eDf6Ff), to(#C5D4F3) );
|
43 |
-
background: -webkit-linear-gradient( #eDf6Ff, #C5D4F3 );
|
44 |
-
background: -o-linear-gradient( #eDf6Ff, #C5D4F3 );
|
45 |
-
}
|
46 |
-
a.ai1ec-button.ai1ec-active {
|
47 |
-
color: #000 !important;
|
48 |
-
background: #ddd;
|
49 |
-
background: -moz-linear-gradient( #ccc, #eee );
|
50 |
-
background: -webkit-gradient( linear, 0% 0%, 0% 100%, from(#ccc), to(#eee) );
|
51 |
-
background: -webkit-linear-gradient( #ccc, #eee );
|
52 |
-
background: -o-linear-gradient( #ccc, #eee );
|
53 |
-
}
|
54 |
-
a.ai1ec-button.ai1ec-active.ai1ec-selected {
|
55 |
-
background: #DDE6F8;
|
56 |
-
background: -moz-linear-gradient( #C5D4F3, #eDf6Ff );
|
57 |
-
background: -webkit-gradient( linear, 0% 0%, 0% 100%, from(#C5D4F3), to(#eDf6Ff) );
|
58 |
-
background: -webkit-linear-gradient( #C5D4F3, #eDf6Ff );
|
59 |
-
background: -o-linear-gradient( #C5D4F3, #eDf6Ff );
|
60 |
-
}
|
61 |
-
li > a.ai1ec-button {
|
62 |
-
display: block;
|
63 |
-
margin: 0;
|
64 |
-
border-radius: 0;
|
65 |
-
-moz-border-radius: 0;
|
66 |
-
-webkit-border-radius: 0;
|
67 |
-
border-left-width: 0;
|
68 |
-
}
|
69 |
-
li:first-child > a.ai1ec-button {
|
70 |
-
border-radius: 0.4em 0 0 0.4em;
|
71 |
-
-moz-border-radius: 0.4em 0 0 0.4em;
|
72 |
-
-webkit-border-radius: 0.4em 0 0 0.4em;
|
73 |
-
border-left-width: 1px;
|
74 |
-
}
|
75 |
-
li:last-child > a.ai1ec-button {
|
76 |
-
border-radius: 0 0.4em 0.4em 0;
|
77 |
-
-moz-border-radius: 0 0.4em 0.4em 0;
|
78 |
-
-webkit-border-radius: 0 0.4em 0.4em 0;
|
79 |
-
}
|
80 |
-
li:first-child:last-child > a.ai1ec-button {
|
81 |
-
border-radius: 0.4em;
|
82 |
-
-moz-border-radius: 0.4em;
|
83 |
-
-webkit-border-radius: 0.4em;
|
84 |
-
}
|
85 |
-
|
86 |
-
/* General AJAX */
|
87 |
-
.ai1ec-loading {
|
88 |
-
position: absolute;
|
89 |
-
z-index: 9;
|
90 |
-
top: 0;
|
91 |
-
left: 0;
|
92 |
-
width: 100%;
|
93 |
-
height: 100%;
|
94 |
-
background: url( ../img/ajax-loader.gif ) no-repeat center center;
|
95 |
-
display: none;
|
96 |
-
}
|
97 |
-
|
98 |
-
/* Label styling */
|
99 |
-
label.ai1ec-label {
|
100 |
-
padding: 0 0.2em;
|
101 |
-
font-family: Tahoma, Geneva, sans-serif !important;
|
102 |
-
font-size: 9pt !important;
|
103 |
-
font-weight: bold;
|
104 |
-
color: #888 !important;
|
105 |
-
}
|
106 |
-
|
107 |
-
/* Categories */
|
108 |
-
.ai1ec-category {
|
109 |
-
cursor: pointer;
|
110 |
-
font: 0.9em Tahoma, Geneva, sans-serif !important;
|
111 |
-
border: 1px solid #dcdcdc;
|
112 |
-
text-shadow: 0 1px 0 #fff;
|
113 |
-
-moz-text-shadow: 0 1px 0 #fff;
|
114 |
-
-webkit-text-shadow: 0 1px 0 #fff;
|
115 |
-
padding: 2pt 3pt !important;
|
116 |
-
margin: 0.2em !important;
|
117 |
-
text-decoration: none !important;
|
118 |
-
text-transform: uppercase;
|
119 |
-
letter-spacing: 1pt;
|
120 |
-
white-space: nowrap;
|
121 |
-
color: #666 !important;
|
122 |
-
background: #f0f0f0;
|
123 |
-
border-radius: 0.3em;
|
124 |
-
-moz-border-radius: 0.3em;
|
125 |
-
-webkit-border-radius: 0.3em;
|
126 |
-
}
|
127 |
-
.ai1ec-category:hover {
|
128 |
-
color: #222 !important;
|
129 |
-
background: #dcdcdc;
|
130 |
-
}
|
131 |
-
.ai1ec-category.ai1ec-selected {
|
132 |
-
background: #C5D4F3;
|
133 |
-
border-color: #7A86D9;
|
134 |
-
}
|
135 |
-
|
136 |
-
/* Tags */
|
137 |
-
.ai1ec-tag {
|
138 |
-
color: #568 !important;
|
139 |
-
font-family: Tahoma, Geneva, sans-serif !important;
|
140 |
-
line-height: 1.3em !important;
|
141 |
-
cursor: pointer;
|
142 |
-
white-space: nowrap;
|
143 |
-
margin: 0.1em 0.2em;
|
144 |
-
padding: 0.1em 0.2em;
|
145 |
-
border-radius: 0.3em;
|
146 |
-
-moz-border-radius: 0.3em;
|
147 |
-
-webkit-border-radius: 0.3em;
|
148 |
-
display: inline-block;
|
149 |
-
}
|
150 |
-
.ai1ec-tag:hover {
|
151 |
-
color: #000 !important;
|
152 |
-
text-decoration: underline;
|
153 |
-
}
|
154 |
-
.ai1ec-tag.ai1ec-selected {
|
155 |
-
background: #CDDBF5;
|
156 |
-
}
|
157 |
-
|
158 |
-
/* Category color */
|
159 |
-
.ai1ec-category-color {
|
160 |
-
display: inline-block;
|
161 |
-
width: 0.9em;
|
162 |
-
height: 0.9em;
|
163 |
-
margin: 0 1px;
|
164 |
-
border-radius: 0.2em;
|
165 |
-
-o-border-radius: 0.2em;
|
166 |
-
-moz-border-radius: 0.2em;
|
167 |
-
-webkit-border-radius: 0.2em;
|
168 |
-
}
|
169 |
-
|
170 |
-
/* Subscribe buttons */
|
171 |
-
.ai1ec-subscribe-google img {
|
172 |
-
float: left;
|
173 |
-
width: 30px !important;
|
174 |
-
height: 32px !important;
|
175 |
-
margin: -10px 0.5em -8px 0 !important;
|
176 |
-
padding: 0 !important;
|
177 |
-
border: none !important;
|
178 |
-
background: none !important;
|
179 |
-
}
|
180 |
-
|
181 |
-
/* Widget views */
|
182 |
-
.ai1ec-agenda-widget-view div {
|
183 |
-
margin: 0;
|
184 |
-
}
|
185 |
-
.ai1ec-agenda-widget-view {
|
186 |
-
font-size: 0.8em !important;
|
187 |
-
overflow: hidden;
|
188 |
-
}
|
189 |
-
.ai1ec-agenda-widget-view .ai1ec-no-results {
|
190 |
-
font-style: italic;
|
191 |
-
font-size: 1.4em !important;
|
192 |
-
}
|
193 |
-
.ai1ec-agenda-widget-view > ol {
|
194 |
-
margin: 0 !important;
|
195 |
-
padding: 0 !important;
|
196 |
-
}
|
197 |
-
.ai1ec-agenda-widget-view li {
|
198 |
-
list-style: none !important;
|
199 |
-
border: none !important;
|
200 |
-
}
|
201 |
-
.ai1ec-agenda-widget-view .ai1ec-date-events {
|
202 |
-
overflow: hidden;
|
203 |
-
margin: 0 0.5em 0 0 !important;
|
204 |
-
padding: 0 !important;
|
205 |
-
}
|
206 |
-
.ai1ec-agenda-widget-view .ai1ec-date {
|
207 |
-
overflow: hidden;
|
208 |
-
margin: 0 !important;
|
209 |
-
padding: 0 !important;
|
210 |
-
border-top: 1px solid #f2f2f2;
|
211 |
-
border-bottom: 1px solid #fff;
|
212 |
-
background: #f8f8f8;
|
213 |
-
background: -o-linear-gradient( #f2f2f2 1em, #fff );
|
214 |
-
background: -ms-linear-gradient( #f2f2f2 1em, #fff );
|
215 |
-
background: -moz-linear-gradient( #f2f2f2 1em, #fff );
|
216 |
-
background: -webkit-gradient( linear, 0 1em, 0 100%, from(#f2f2f2), to(#fff) );
|
217 |
-
background: -webkit-linear-gradient( #f2f2f2 1em, #fff );
|
218 |
-
}
|
219 |
-
.ai1ec-agenda-widget-view .ai1ec-date.ai1ec-today {
|
220 |
-
border-top: 1px solid #eec;
|
221 |
-
border-bottom: 1px solid #fff;
|
222 |
-
background: #ffd;
|
223 |
-
background: -o-linear-gradient( #f8f8ce 1em, #fff );
|
224 |
-
background: -ms-linear-gradient( #f8f8ce 1em, #fff );
|
225 |
-
background: -moz-linear-gradient( #f8f8ce 1em, #fff );
|
226 |
-
background: -webkit-gradient( linear, 0 1em, 0 100%, from(#f8f8ce), to(#fff) );
|
227 |
-
background: -webkit-linear-gradient( #f8f8ce 1em, #fff );
|
228 |
-
background: -o-linear-gradient( #f8f8ce 1em, #fff );
|
229 |
-
}
|
230 |
-
.ai1ec-agenda-widget-view h3.ai1ec-date-title {
|
231 |
-
width: 3.5em;
|
232 |
-
float: left;
|
233 |
-
margin: 0 0.5em 0.5em !important;
|
234 |
-
font: 1em/1.1em Tahoma, Geneva, sans-serif !important;
|
235 |
-
color: #444;
|
236 |
-
text-shadow: 0 1px 0 #fff;
|
237 |
-
-o-text-shadow: 0 1px 0 #fff;
|
238 |
-
-ms-text-shadow: 0 1px 0 #fff;
|
239 |
-
-moz-text-shadow: 0 1px 0 #fff;
|
240 |
-
-webkit-text-shadow: 0 1px 0 #fff;
|
241 |
-
line-height: 1.1em;
|
242 |
-
text-align: center;
|
243 |
-
border: 2px solid #7e9dbd;
|
244 |
-
border-radius: 0 0 5px 5px;
|
245 |
-
-o-border-radius: 0 0 0.5em 0.5em;
|
246 |
-
-moz-border-radius: 0 0 0.5em 0.5em;
|
247 |
-
-webkit-border-radius: 0 0 0.5em 0.5em;
|
248 |
-
box-shadow: 0 2px 2px rgba(0,0,0,0.08);
|
249 |
-
-o-box-shadow: 0 2px 2px rgba(0,0,0,0.08);
|
250 |
-
-ms-box-shadow: 0 2px 2px rgba(0,0,0,0.08);
|
251 |
-
-moz-box-shadow: 0 2px 2px rgba(0,0,0,0.08);
|
252 |
-
-webkit-box-shadow: 0 2px 2px rgba(0,0,0,0.08);
|
253 |
-
background: #fff;
|
254 |
-
background: -o-linear-gradient( #fff 1em, #eee );
|
255 |
-
background: -ms-linear-gradient( #fff 1em, #eee );
|
256 |
-
background: -moz-linear-gradient( #fff 1em, #eee );
|
257 |
-
background: -webkit-gradient( linear, 0% 1em, 0% 100%, from(#fff), to(#eee) );
|
258 |
-
background: -webkit-linear-gradient( #fff 1em, #eee );
|
259 |
-
}
|
260 |
-
.ai1ec-agenda-widget-view .ai1ec-month {
|
261 |
-
text-shadow: 0 -1px 0 rgba(0,0,0,0.5);
|
262 |
-
-o-text-shadow: 0 -1px 0 rgba(0,0,0,0.5);
|
263 |
-
-ms-text-shadow: 0 -1px 0 rgba(0,0,0,0.5);
|
264 |
-
-moz-text-shadow: 0 -1px 0 rgba(0,0,0,0.5);
|
265 |
-
-webkit-text-shadow: 0 -1px 0 rgba(0,0,0,0.5);
|
266 |
-
background: #7e9dbd;
|
267 |
-
font-size: 0.9em !important;
|
268 |
-
padding: 0.1em 0 0.2em;
|
269 |
-
text-transform: uppercase;
|
270 |
-
letter-spacing: 0.2em;
|
271 |
-
color: #fff;
|
272 |
-
}
|
273 |
-
.ai1ec-agenda-widget-view .ai1ec-day {
|
274 |
-
font-size: 1.7em !important;
|
275 |
-
padding: 0.3em 0 0.2em !important;
|
276 |
-
}
|
277 |
-
.ai1ec-agenda-widget-view .ai1ec-weekday {
|
278 |
-
font-size: 0.9em !important;
|
279 |
-
line-height: 1.5em;
|
280 |
-
}
|
281 |
-
/* Agenda view events */
|
282 |
-
.ai1ec-agenda-widget-view .ai1ec-event {
|
283 |
-
font-family: Tahoma, Geneva, sans-serif !important;
|
284 |
-
position: relative;
|
285 |
-
clear: right;
|
286 |
-
overflow: hidden;
|
287 |
-
font-size: 1.2em;
|
288 |
-
margin: 0.5em 0 !important;
|
289 |
-
padding: 0 !important;
|
290 |
-
line-height: 1.3em;
|
291 |
-
}
|
292 |
-
.ai1ec-agenda-widget-view .ai1ec-event a {
|
293 |
-
display: block;
|
294 |
-
background: #fff;
|
295 |
-
border: 1px solid #ddd;
|
296 |
-
border-radius: 0.4em;
|
297 |
-
-o-border-radius: 0.4em;
|
298 |
-
-ms-border-radius: 0.4em;
|
299 |
-
-moz-border-radius: 0.4em;
|
300 |
-
-webkit-border-radius: 0.4em;
|
301 |
-
padding: 0.2em 0.4em !important;
|
302 |
-
text-decoration: none !important;
|
303 |
-
color: #568;
|
304 |
-
}
|
305 |
-
.ai1ec-agenda-widget-view .ai1ec-event a:hover {
|
306 |
-
border-color: #aaa;
|
307 |
-
text-decoration: none !important;
|
308 |
-
}
|
309 |
-
.ai1ec-agenda-widget-view .ai1ec-event-time {
|
310 |
-
font-weight: bold;
|
311 |
-
}
|
312 |
-
.ai1ec-agenda-widget-view .ai1ec-event-title {
|
313 |
-
font-weight: normal;
|
314 |
-
}
|
315 |
-
.ai1ec-agenda-widget-view .ai1ec-event.ai1ec-allday a {
|
316 |
-
background: #568;
|
317 |
-
border: none;
|
318 |
-
color: #fff;
|
319 |
-
}
|
320 |
-
.ai1ec-agenda-widget-view .ai1ec-event.ai1ec-allday a:hover {
|
321 |
-
border: none;
|
322 |
-
background: #3b475f;
|
323 |
-
}
|
324 |
-
.ai1ec-agenda-widget-view .ai1ec-allday-label {
|
325 |
-
font-size: 8pt !important;
|
326 |
-
color: #b9c0ce;
|
327 |
-
padding-left: 0.2em;
|
328 |
-
}
|
329 |
-
.ai1ec-agenda-widget-view .ai1ec-allday .ai1ec-event-time {
|
330 |
-
color: #fff;
|
331 |
-
}
|
332 |
-
.ai1ec-agenda-widget-view .ai1ec-category-colors {
|
333 |
-
font-size: 0.9em;
|
334 |
-
}
|
335 |
-
.ai1ec-agenda-widget-view .ai1ec-category-colors .ai1ec-category-color {
|
336 |
-
margin: 0 0 -0.1em;
|
337 |
-
border: 1px solid rgba(255,255,255,0.7);
|
338 |
-
}
|
339 |
-
/* Widget view buttons */
|
340 |
-
.ai1ec-agenda-widget-view .ai1ec-button {
|
341 |
-
font-size: 1em !important;
|
342 |
-
margin: 0.3em 0;
|
343 |
-
}
|
344 |
-
.ai1ec-agenda-widget-view .ai1ec-calendar-link {
|
345 |
-
font-size: 1.2em !important;
|
346 |
-
float: right;
|
347 |
-
}
|
348 |
-
.ai1ec-agenda-widget-view .ai1ec-subscribe-buttons {
|
349 |
-
float: left;
|
350 |
-
margin-top: 0.3em;
|
351 |
-
}
|
352 |
-
.ai1ec-agenda-widget-view .ai1ec-subscribe-google img {
|
353 |
-
width: 19px;
|
354 |
-
height: 20px;
|
355 |
-
margin: -5px 0.5em -5px 0;
|
356 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
css/settings.css
DELETED
@@ -1,185 +0,0 @@
|
|
1 |
-
#the-seed-studio-settings div.inside {
|
2 |
-
background: #fff;
|
3 |
-
margin: 0 !important;
|
4 |
-
padding: 6px 0 8px;
|
5 |
-
}
|
6 |
-
#the-seed-studio-settings a {
|
7 |
-
font-weight: bold;
|
8 |
-
}
|
9 |
-
.ai1ec_feed_h4 {
|
10 |
-
margin-bottom: 5px;
|
11 |
-
}
|
12 |
-
.column-1-ai1ec {
|
13 |
-
float: left;
|
14 |
-
width: 54%;
|
15 |
-
}
|
16 |
-
.column-2-ai1ec {
|
17 |
-
float: right;
|
18 |
-
width: 45%;
|
19 |
-
}
|
20 |
-
.column-3-ai1ec {
|
21 |
-
float: left;
|
22 |
-
width: 100%;
|
23 |
-
}
|
24 |
-
.ai1ec-plugin-branding {
|
25 |
-
padding: 0 20px 0 20px;
|
26 |
-
}
|
27 |
-
.ai1ec-plugin-logo {
|
28 |
-
position: relative;
|
29 |
-
margin-left: -15px;
|
30 |
-
}
|
31 |
-
|
32 |
-
.ai1ec-support-button {
|
33 |
-
float:right;
|
34 |
-
width:280px;
|
35 |
-
text-align: center;
|
36 |
-
margin: 1em 0 1em 1em;
|
37 |
-
}
|
38 |
-
.ai1ec-support-button a {
|
39 |
-
font-size: 24px;
|
40 |
-
font-weight: normal !important;
|
41 |
-
color:#fff;
|
42 |
-
text-decoration: none;
|
43 |
-
text-transform: uppercase;
|
44 |
-
text-align: center;
|
45 |
-
display: block;
|
46 |
-
padding: 10px 30px 10px 30px;
|
47 |
-
margin: 0 auto;
|
48 |
-
border-radius: 10px;
|
49 |
-
-o-border-radius: 10px;
|
50 |
-
-moz-border-radius: 10px;
|
51 |
-
-webkit-border-radius:10px;
|
52 |
-
text-shadow: -1px -1px 1px rgba(0,0,0,.2);
|
53 |
-
-o-text-shadow: -1px -1px 1px rgba(0,0,0,.2);
|
54 |
-
-moz-text-shadow: -1px -1px 1px rgba(0,0,0,.2);
|
55 |
-
-webkit-text-shadow: -1px -1px 1px rgba(0,0,0,.2);
|
56 |
-
box-shadow: 0 0.3em 0.3em rgba(0,0,0,0.2);
|
57 |
-
-o-box-shadow: 0 0.3em 0.3em rgba(0,0,0,0.2);
|
58 |
-
-moz-box-shadow: 0 0.3em 0.3em rgba(0,0,0,0.2);
|
59 |
-
-webkit-box-shadow: 0 0.3em 0.3em rgba(0,0,0,0.2);
|
60 |
-
border:1px solid #fff;
|
61 |
-
}
|
62 |
-
.ai1ec-support-button a:link, .ai1ec-support-button a:visited {
|
63 |
-
background: #88b633;
|
64 |
-
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#91bb35', endColorstr='#548a26');
|
65 |
-
background: linear-gradient(#91bb35, #548a26);
|
66 |
-
background: -o-linear-gradient(#91bb35, #548a26);
|
67 |
-
background: -moz-linear-gradient(#91bb35, #548a26);
|
68 |
-
background: -webkit-gradient(linear, left top, left bottom, from(#91bb35), to(#548a26));
|
69 |
-
background: -webkit-linear-gradient(#91bb35, #548a26);
|
70 |
-
}
|
71 |
-
|
72 |
-
.ai1ec-support-button a:hover {
|
73 |
-
color: #fff;
|
74 |
-
background: #88b633;
|
75 |
-
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#d2e7a2', endColorstr='#91bb35');
|
76 |
-
background: linear-gradient(#d2e7a2, #91bb35);
|
77 |
-
background: -o-linear-gradient(#d2e7a2, #91bb35);
|
78 |
-
background: -moz-linear-gradient(#d2e7a2, #91bb35);
|
79 |
-
background: -webkit-gradient(linear, left top, left bottom, from(#d2e7a2), to(#91bb35));
|
80 |
-
background: -webkit-linear-gradient(#d2e7a2, #91bb35);
|
81 |
-
}
|
82 |
-
|
83 |
-
.ai1ec-support-button a span {
|
84 |
-
display: block;
|
85 |
-
padding-top:2px;
|
86 |
-
font-size: .5em;
|
87 |
-
color:#e5f3ca;
|
88 |
-
text-align: center;
|
89 |
-
text-transform: lowercase;
|
90 |
-
}
|
91 |
-
|
92 |
-
.column-1-ai1ec #general-settings {
|
93 |
-
line-height: 1.7em;
|
94 |
-
}
|
95 |
-
.column-1-ai1ec #general-settings div.inside label {
|
96 |
-
float: left;
|
97 |
-
clear: left;
|
98 |
-
margin: 0.25em 0;
|
99 |
-
}
|
100 |
-
.column-1-ai1ec #general-settings .checkbox {
|
101 |
-
float: left;
|
102 |
-
margin: 0.5em 0.5em 0 0;
|
103 |
-
}
|
104 |
-
.column-1-ai1ec #general-settings div.description {
|
105 |
-
clear: left;
|
106 |
-
font-size: 0.95em;
|
107 |
-
line-height: 1.5em;
|
108 |
-
margin-bottom: 1em;
|
109 |
-
}
|
110 |
-
.column-1-ai1ec #general-settings label.textinput {
|
111 |
-
width: 230px;
|
112 |
-
}
|
113 |
-
.column-1-ai1ec #general-settings h2 {
|
114 |
-
margin-bottom: 0;
|
115 |
-
margin-top: 10px;
|
116 |
-
}
|
117 |
-
|
118 |
-
.ai1ec-follow-fan {
|
119 |
-
padding:10px 0 10px 0;
|
120 |
-
margin: 10px 0 0 0;
|
121 |
-
border-top: 1px solid #ccc;
|
122 |
-
border-bottom: 1px solid #ccc;
|
123 |
-
}
|
124 |
-
.ai1ec-facebook-like-top {
|
125 |
-
float: left;
|
126 |
-
}
|
127 |
-
|
128 |
-
/* ICS Feeds */
|
129 |
-
#ai1ec_feed_url,
|
130 |
-
.ai1ec-feed-url {
|
131 |
-
width: 100%;
|
132 |
-
}
|
133 |
-
.ai1ec-feed-category, .ai1ec-feed-tags {
|
134 |
-
float: left;
|
135 |
-
overflow: hidden;
|
136 |
-
line-height: 2em;
|
137 |
-
}
|
138 |
-
.ai1ec-feed-category strong, .ai1ec-feed-tags strong {
|
139 |
-
margin: 0 1em 0 0.2em;
|
140 |
-
}
|
141 |
-
#ai1ec_feed_category, #ai1ec_feed_tags {
|
142 |
-
width: 15em;
|
143 |
-
}
|
144 |
-
#ai1ec_feed_category {
|
145 |
-
margin-right: 0.5em;
|
146 |
-
}
|
147 |
-
.ai1ec-feed-container {
|
148 |
-
background: #eee;
|
149 |
-
border: 1px solid #ddd;
|
150 |
-
padding: 0.3em 0.5em;
|
151 |
-
border-radius: 0.5em;
|
152 |
-
-moz-border-radius: 0.5em;
|
153 |
-
-webkit-border-radius: 0.5em;
|
154 |
-
overflow: hidden;
|
155 |
-
position: relative;
|
156 |
-
margin: 1em 0 0;
|
157 |
-
}
|
158 |
-
.ai1ec-feed-container .ajax-loading {
|
159 |
-
clear: left;
|
160 |
-
display: block;
|
161 |
-
}
|
162 |
-
.ai1ec_feed_h4 {
|
163 |
-
margin: 0.5em 0;
|
164 |
-
}
|
165 |
-
#ai1ec_add_new_ics, .ai1ec_delete_ics {
|
166 |
-
clear: left;
|
167 |
-
}
|
168 |
-
#ai1ec_add_new_ics, .ai1ec_delete_ics, .ai1ec_update_ics, .ai1ec_flush_ics {
|
169 |
-
float: right;
|
170 |
-
}
|
171 |
-
#ai1ec_save_settings {
|
172 |
-
clear: left;
|
173 |
-
display: block;
|
174 |
-
}
|
175 |
-
|
176 |
-
.ai1ec-donate {
|
177 |
-
text-align: center;
|
178 |
-
}
|
179 |
-
#ai1ec-rss-news {
|
180 |
-
margin: 0;
|
181 |
-
padding: 0px 0px 0px 20px;
|
182 |
-
}
|
183 |
-
#ai1ec-rss-news > li {
|
184 |
-
list-style: disc;
|
185 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
img/agenda-view.png
DELETED
Binary file
|
img/blank.gif
DELETED
Binary file
|
img/month-view.png
DELETED
Binary file
|
img/oneday-view.png
DELETED
Binary file
|
img/scroll-down.png
DELETED
Binary file
|
img/scroll-up.png
DELETED
Binary file
|
img/week-view.png
DELETED
Binary file
|
language/all-in-one-event-calendar.pot
CHANGED
@@ -1,10 +1,10 @@
|
|
1 |
-
# Copyright (C) 2012 All-in-One
|
2 |
-
# This file is distributed under the same license as the All-in-One
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
-
"Project-Id-Version: All-in-One
|
6 |
"Report-Msgid-Bugs-To: http://wordpress.org/tag/all-in-one-event-calendar\n"
|
7 |
-
"POT-Creation-Date: 2012-
|
8 |
"MIME-Version: 1.0\n"
|
9 |
"Content-Type: text/plain; charset=UTF-8\n"
|
10 |
"Content-Transfer-Encoding: 8bit\n"
|
@@ -12,27 +12,58 @@ msgstr ""
|
|
12 |
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
13 |
"Language-Team: LANGUAGE <LL@li.org>\n"
|
14 |
|
15 |
-
#: app/controller/class-ai1ec-app-controller.php:
|
16 |
-
#: app/controller/class-ai1ec-app-controller.php:
|
17 |
-
msgid "
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
18 |
msgstr ""
|
19 |
|
20 |
#. translators: "%s" represents the week's starting date
|
21 |
-
#: app/controller/class-ai1ec-calendar-controller.php:
|
22 |
-
#: app/helper/class-ai1ec-calendar-helper.php:883
|
23 |
#: app/helper/class-ai1ec-calendar-helper.php:892
|
|
|
24 |
msgid "Week of %s"
|
25 |
msgstr ""
|
26 |
|
27 |
-
#: app/controller/class-ai1ec-calendar-controller.php:
|
28 |
msgid "F j"
|
29 |
msgstr ""
|
30 |
|
31 |
-
#: app/controller/class-ai1ec-calendar-controller.php:463
|
32 |
-
#: app/helper/class-ai1ec-settings-helper.php:158 app/view/calendar.php:33
|
33 |
-
msgid "Agenda"
|
34 |
-
msgstr ""
|
35 |
-
|
36 |
#: app/controller/class-ai1ec-events-controller.php:153
|
37 |
msgid "This feed is already being imported."
|
38 |
msgstr ""
|
@@ -41,289 +72,318 @@ msgstr ""
|
|
41 |
msgid "Please enter a valid iCalendar URL."
|
42 |
msgstr ""
|
43 |
|
44 |
-
#: app/controller/class-ai1ec-events-controller.php:
|
45 |
msgid "Publish"
|
46 |
msgstr ""
|
47 |
|
48 |
-
#: app/controller/class-ai1ec-events-controller.php:
|
49 |
-
#: app/view/feed_row.php:20
|
50 |
msgid "Update"
|
51 |
msgstr ""
|
52 |
|
53 |
-
#: app/controller/class-ai1ec-events-controller.php:
|
54 |
msgid "Submit for Review"
|
55 |
msgstr ""
|
56 |
|
57 |
-
#: app/controller/class-ai1ec-events-controller.php:
|
58 |
msgid "Event updated. <a href=\"%s\">View event</a>"
|
59 |
msgstr ""
|
60 |
|
61 |
-
#: app/controller/class-ai1ec-events-controller.php:
|
62 |
msgid "Custom field updated."
|
63 |
msgstr ""
|
64 |
|
65 |
-
#: app/controller/class-ai1ec-events-controller.php:
|
66 |
msgid "Custom field deleted."
|
67 |
msgstr ""
|
68 |
|
69 |
-
#: app/controller/class-ai1ec-events-controller.php:
|
70 |
msgid "Event updated."
|
71 |
msgstr ""
|
72 |
|
73 |
#. translators: %s: date and time of the revision
|
74 |
-
#: app/controller/class-ai1ec-events-controller.php:
|
75 |
msgid "Event restored to revision from %s"
|
76 |
msgstr ""
|
77 |
|
78 |
-
#: app/controller/class-ai1ec-events-controller.php:
|
79 |
msgid "Event published. <a href=\"%s\">View event</a>"
|
80 |
msgstr ""
|
81 |
|
82 |
-
#: app/controller/class-ai1ec-events-controller.php:
|
83 |
msgid "Event saved."
|
84 |
msgstr ""
|
85 |
|
86 |
-
#: app/controller/class-ai1ec-events-controller.php:
|
87 |
msgid "Event submitted. <a target=\"_blank\" href=\"%s\">Preview event</a>"
|
88 |
msgstr ""
|
89 |
|
90 |
-
#: app/controller/class-ai1ec-events-controller.php:
|
91 |
msgid ""
|
92 |
"Event scheduled for: <strong>%1$s</strong>. <a target=\"_blank\" href=\"%2$s"
|
93 |
"\">Preview event</a>"
|
94 |
msgstr ""
|
95 |
|
96 |
#. translators: Publish box date format, see http:php.net/date
|
97 |
-
#: app/controller/class-ai1ec-events-controller.php:
|
98 |
msgid "M j, Y @ G:i"
|
99 |
msgstr ""
|
100 |
|
101 |
-
#: app/controller/class-ai1ec-events-controller.php:
|
102 |
msgid "Event draft updated. <a target=\"_blank\" href=\"%s\">Preview event</a>"
|
103 |
msgstr ""
|
104 |
|
105 |
#: app/controller/class-ai1ec-importer-controller.php:91
|
106 |
-
msgid "The Events Calendar → All-in-One
|
107 |
msgstr ""
|
108 |
|
109 |
#: app/controller/class-ai1ec-importer-controller.php:92
|
110 |
msgid ""
|
111 |
"Imports events created using The Events Calendar plugin into the All-in-One "
|
112 |
-
"
|
113 |
msgstr ""
|
114 |
|
115 |
-
#: app/controller/class-ai1ec-settings-controller.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
116 |
msgid "Settings Updated."
|
117 |
msgstr ""
|
118 |
|
119 |
-
#: app/controller/class-ai1ec-settings-controller.php:
|
120 |
msgid "Flushed %d events"
|
121 |
msgstr ""
|
122 |
|
123 |
-
#: app/controller/class-ai1ec-settings-controller.php:
|
124 |
-
#: app/controller/class-ai1ec-settings-controller.php:
|
125 |
msgid "Invalid ICS feed ID"
|
126 |
msgstr ""
|
127 |
|
128 |
-
#: app/controller/class-ai1ec-settings-controller.php:
|
129 |
msgid "No events were found"
|
130 |
msgstr ""
|
131 |
|
132 |
-
#: app/controller/class-ai1ec-settings-controller.php:
|
133 |
msgid "Imported %d events"
|
134 |
msgstr ""
|
135 |
|
136 |
-
#: app/controller/class-ai1ec-settings-controller.php:
|
137 |
-
#: app/view/feed_row.php:22
|
138 |
msgid "Flush 1 event"
|
139 |
msgid_plural "Flush %s events"
|
140 |
msgstr[0] ""
|
141 |
msgstr[1] ""
|
142 |
|
143 |
-
#: app/controller/class-ai1ec-settings-controller.php:
|
144 |
msgctxt "meta box"
|
145 |
msgid "General Settings"
|
146 |
msgstr ""
|
147 |
|
148 |
-
#: app/controller/class-ai1ec-settings-controller.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
149 |
msgctxt "meta box"
|
150 |
-
msgid "
|
151 |
msgstr ""
|
152 |
|
153 |
-
#: app/controller/class-ai1ec-settings-controller.php:
|
154 |
msgctxt "meta box"
|
155 |
-
msgid "
|
156 |
msgstr ""
|
157 |
|
158 |
-
#: app/controller/class-ai1ec-settings-controller.php:
|
159 |
msgid "<a href=\"%s\">Settings</a>"
|
160 |
msgstr ""
|
161 |
|
162 |
-
#: app/controller/class-ai1ec-settings-controller.php:
|
163 |
msgid "<a href=\"%s\" target=\"_blank\">Donate</a>"
|
164 |
msgstr ""
|
165 |
|
166 |
-
#: app/controller/class-ai1ec-settings-controller.php:
|
167 |
msgid "<a href=\"%s\" target=\"_blank\">Get Support</a>"
|
168 |
msgstr ""
|
169 |
|
170 |
-
#: app/helper/class-ai1ec-app-helper.php:
|
171 |
msgctxt "Custom post type name"
|
172 |
msgid "Events"
|
173 |
msgstr ""
|
174 |
|
175 |
-
#: app/helper/class-ai1ec-app-helper.php:
|
176 |
msgctxt "Custom post type name (singular)"
|
177 |
msgid "Event"
|
178 |
msgstr ""
|
179 |
|
180 |
-
#: app/helper/class-ai1ec-app-helper.php:
|
181 |
msgid "Add New"
|
182 |
msgstr ""
|
183 |
|
184 |
-
#: app/helper/class-ai1ec-app-helper.php:
|
185 |
msgid "Add New Event"
|
186 |
msgstr ""
|
187 |
|
188 |
-
#: app/helper/class-ai1ec-app-helper.php:
|
189 |
msgid "Edit Event"
|
190 |
msgstr ""
|
191 |
|
192 |
-
#: app/helper/class-ai1ec-app-helper.php:
|
193 |
msgid "New Event"
|
194 |
msgstr ""
|
195 |
|
196 |
-
#: app/helper/class-ai1ec-app-helper.php:
|
197 |
msgid "View Event"
|
198 |
msgstr ""
|
199 |
|
200 |
-
#: app/helper/class-ai1ec-app-helper.php:
|
201 |
msgid "Search Events"
|
202 |
msgstr ""
|
203 |
|
204 |
-
#: app/helper/class-ai1ec-app-helper.php:
|
205 |
msgid "No Events found"
|
206 |
msgstr ""
|
207 |
|
208 |
-
#: app/helper/class-ai1ec-app-helper.php:
|
209 |
msgid "No Events found in Trash"
|
210 |
msgstr ""
|
211 |
|
212 |
-
#: app/helper/class-ai1ec-app-helper.php:
|
213 |
msgid "Parent Event"
|
214 |
msgstr ""
|
215 |
|
216 |
-
#: app/helper/class-ai1ec-app-helper.php:
|
217 |
msgid "Events"
|
218 |
msgstr ""
|
219 |
|
220 |
-
#: app/helper/class-ai1ec-app-helper.php:
|
221 |
msgctxt "Event categories taxonomy"
|
222 |
msgid "Event Categories"
|
223 |
msgstr ""
|
224 |
|
225 |
-
#: app/helper/class-ai1ec-app-helper.php:
|
226 |
msgctxt "Event categories taxonomy (singular)"
|
227 |
msgid "Event Category"
|
228 |
msgstr ""
|
229 |
|
230 |
-
#: app/helper/class-ai1ec-app-helper.php:
|
231 |
msgctxt "Event tags taxonomy"
|
232 |
msgid "Event Tags"
|
233 |
msgstr ""
|
234 |
|
235 |
-
#: app/helper/class-ai1ec-app-helper.php:
|
236 |
msgctxt "Event tags taxonomy (singular)"
|
237 |
msgid "Event Tag"
|
238 |
msgstr ""
|
239 |
|
240 |
-
#: app/helper/class-ai1ec-app-helper.php:
|
241 |
msgctxt "Event feeds taxonomy"
|
242 |
msgid "Event Feeds"
|
243 |
msgstr ""
|
244 |
|
245 |
-
#: app/helper/class-ai1ec-app-helper.php:
|
246 |
msgctxt "Event feed taxonomy (singular)"
|
247 |
msgid "Event Feed"
|
248 |
msgstr ""
|
249 |
|
250 |
-
#: app/helper/class-ai1ec-app-helper.php:
|
251 |
msgid "Show All "
|
252 |
msgstr ""
|
253 |
|
254 |
-
#: app/helper/class-ai1ec-app-helper.php:
|
255 |
msgid ""
|
256 |
"All Events <span class=\"update-plugins count-%d\" title=\"%d Pending Events"
|
257 |
"\"><span class=\"update-count\">%d</span></span>"
|
258 |
msgstr ""
|
259 |
|
260 |
-
#: app/helper/class-ai1ec-app-helper.php:
|
261 |
msgid "All Events"
|
262 |
msgstr ""
|
263 |
|
264 |
-
#: app/helper/class-ai1ec-app-helper.php:
|
265 |
msgid "Event Details"
|
266 |
msgstr ""
|
267 |
|
268 |
-
#: app/helper/class-ai1ec-app-helper.php:
|
269 |
msgid "Post Date"
|
270 |
msgstr ""
|
271 |
|
272 |
-
#: app/helper/class-ai1ec-app-helper.php:
|
273 |
msgid "Event date/time"
|
274 |
msgstr ""
|
275 |
|
276 |
-
#: app/helper/class-ai1ec-app-helper.php:
|
277 |
-
msgid ""
|
278 |
-
"%sTo set up the plugin: %s 1. Select an option in the <strong>Calendar page</"
|
279 |
-
"strong> dropdown list. %s 2. Select an option in the <strong>Timezone</"
|
280 |
-
"strong> dropdown list. %s 3. Click <strong>Update Settings</strong>. %s"
|
281 |
msgstr ""
|
282 |
|
283 |
-
#: app/helper/class-ai1ec-app-helper.php:
|
284 |
-
msgid ""
|
285 |
-
"To set up the plugin: Select an option in the <strong>Calendar page</strong> "
|
286 |
-
"dropdown list, the click <strong>Update Settings</strong>."
|
287 |
msgstr ""
|
288 |
|
289 |
-
#: app/helper/class-ai1ec-app-helper.php:
|
290 |
-
msgid ""
|
291 |
-
"To set up the plugin: Select an option in the <strong>Timezone</strong> "
|
292 |
-
"dropdown list, the click <strong>Update Settings</strong>."
|
293 |
msgstr ""
|
294 |
|
295 |
-
#: app/helper/class-ai1ec-app-helper.php:
|
296 |
msgid ""
|
297 |
"The plugin is installed, but has not been configured. <a href=\"%s\">Click "
|
298 |
"here to set it up now »</a>"
|
299 |
msgstr ""
|
300 |
|
301 |
-
#: app/helper/class-ai1ec-app-helper.php:
|
302 |
msgid ""
|
303 |
-
"The plugin is installed, but has not been configured. Please log in as
|
304 |
-
"
|
|
|
|
|
|
|
|
|
305 |
msgstr ""
|
306 |
|
307 |
-
#: app/helper/class-ai1ec-app-helper.php:
|
308 |
-
msgid "All-in-One
|
309 |
msgstr ""
|
310 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
311 |
#. translators: "%s" represents the week's starting date
|
312 |
-
#: app/helper/class-ai1ec-calendar-helper.php:
|
313 |
-
#: app/helper/class-ai1ec-calendar-helper.php:
|
314 |
msgid "j F Y"
|
315 |
msgstr ""
|
316 |
|
317 |
-
#: app/helper/class-ai1ec-calendar-helper.php:884
|
318 |
#: app/helper/class-ai1ec-calendar-helper.php:893
|
|
|
319 |
msgid "M j"
|
320 |
msgstr ""
|
321 |
|
322 |
-
#: app/helper/class-ai1ec-calendar-helper.php:
|
323 |
msgid "« Previous Events"
|
324 |
msgstr ""
|
325 |
|
326 |
-
#: app/helper/class-ai1ec-calendar-helper.php:
|
327 |
msgid "Next Events »"
|
328 |
msgstr ""
|
329 |
|
@@ -418,137 +478,142 @@ msgid "weekend day"
|
|
418 |
msgstr ""
|
419 |
|
420 |
#: app/helper/class-ai1ec-events-helper.php:607
|
421 |
-
#: app/helper/class-ai1ec-events-helper.php:
|
422 |
-
#: app/helper/class-ai1ec-events-helper.php:
|
423 |
-
#: app/helper/class-ai1ec-settings-helper.php:
|
|
|
424 |
msgid "Daily"
|
425 |
msgstr ""
|
426 |
|
427 |
#: app/helper/class-ai1ec-events-helper.php:608
|
428 |
-
#: app/helper/class-ai1ec-events-helper.php:
|
429 |
-
#: app/helper/class-ai1ec-events-helper.php:
|
|
|
430 |
msgid "Weekly"
|
431 |
msgstr ""
|
432 |
|
433 |
#: app/helper/class-ai1ec-events-helper.php:609
|
434 |
-
#: app/helper/class-ai1ec-events-helper.php:
|
435 |
-
#: app/helper/class-ai1ec-events-helper.php:
|
|
|
436 |
msgid "Monthly"
|
437 |
msgstr ""
|
438 |
|
439 |
#: app/helper/class-ai1ec-events-helper.php:610
|
440 |
-
#: app/helper/class-ai1ec-events-helper.php:
|
441 |
-
#: app/helper/class-ai1ec-events-helper.php:
|
|
|
442 |
msgid "Yearly"
|
443 |
msgstr ""
|
444 |
|
445 |
-
#: app/helper/class-ai1ec-events-helper.php:
|
446 |
msgid "day(s)"
|
447 |
msgstr ""
|
448 |
|
449 |
-
#: app/helper/class-ai1ec-events-helper.php:
|
450 |
msgid "week(s)"
|
451 |
msgstr ""
|
452 |
|
453 |
-
#: app/helper/class-ai1ec-events-helper.php:
|
454 |
msgid "month(s)"
|
455 |
msgstr ""
|
456 |
|
457 |
-
#: app/helper/class-ai1ec-events-helper.php:
|
458 |
msgid "year(s)"
|
459 |
msgstr ""
|
460 |
|
461 |
-
#: app/helper/class-ai1ec-events-helper.php:
|
462 |
msgid "Never"
|
463 |
msgstr ""
|
464 |
|
465 |
-
#: app/helper/class-ai1ec-events-helper.php:
|
466 |
msgid "After"
|
467 |
msgstr ""
|
468 |
|
469 |
-
#: app/helper/class-ai1ec-events-helper.php:
|
|
|
470 |
msgid "On date"
|
471 |
msgstr ""
|
472 |
|
473 |
-
#: app/helper/class-ai1ec-events-helper.php:
|
474 |
-
#: app/helper/class-ai1ec-events-helper.php:
|
475 |
-
#: app/helper/class-ai1ec-events-helper.php:
|
476 |
msgctxt "Recurrence editor - weekly tab"
|
477 |
msgid "on"
|
478 |
msgstr ""
|
479 |
|
480 |
-
#: app/helper/class-ai1ec-events-helper.php:
|
481 |
-
#: app/helper/class-ai1ec-events-helper.php:
|
482 |
-
#: app/helper/class-ai1ec-events-helper.php:
|
483 |
msgid "and"
|
484 |
msgstr ""
|
485 |
|
486 |
-
#: app/helper/class-ai1ec-events-helper.php:
|
487 |
-
#: app/helper/class-ai1ec-events-helper.php:
|
488 |
-
#: app/helper/class-ai1ec-events-helper.php:
|
489 |
-
#: app/helper/class-ai1ec-events-helper.php:
|
490 |
msgctxt "Recurrence editor - monthly tab"
|
491 |
msgid "on"
|
492 |
msgstr ""
|
493 |
|
494 |
-
#: app/helper/class-ai1ec-events-helper.php:
|
495 |
-
#: app/helper/class-ai1ec-events-helper.php:
|
496 |
-
#: app/helper/class-ai1ec-events-helper.php:
|
497 |
msgid "of the month"
|
498 |
msgstr ""
|
499 |
|
500 |
-
#: app/helper/class-ai1ec-events-helper.php:
|
501 |
-
#: app/helper/class-ai1ec-events-helper.php:
|
502 |
-
#: app/helper/class-ai1ec-events-helper.php:
|
503 |
msgctxt "Recurrence editor - yearly tab"
|
504 |
msgid "on"
|
505 |
msgstr ""
|
506 |
|
507 |
-
#: app/helper/class-ai1ec-events-helper.php:
|
508 |
msgid "Every other day"
|
509 |
msgstr ""
|
510 |
|
511 |
-
#: app/helper/class-ai1ec-events-helper.php:
|
512 |
msgid "Every %d days"
|
513 |
msgstr ""
|
514 |
|
515 |
-
#: app/helper/class-ai1ec-events-helper.php:
|
516 |
msgid "Every other week"
|
517 |
msgstr ""
|
518 |
|
519 |
-
#: app/helper/class-ai1ec-events-helper.php:
|
520 |
msgid "Every %d weeks"
|
521 |
msgstr ""
|
522 |
|
523 |
-
#: app/helper/class-ai1ec-events-helper.php:
|
524 |
msgid "Every other month"
|
525 |
msgstr ""
|
526 |
|
527 |
-
#: app/helper/class-ai1ec-events-helper.php:
|
528 |
msgid "Every %d months"
|
529 |
msgstr ""
|
530 |
|
531 |
-
#: app/helper/class-ai1ec-events-helper.php:
|
532 |
msgid "Every other year"
|
533 |
msgstr ""
|
534 |
|
535 |
-
#: app/helper/class-ai1ec-events-helper.php:
|
536 |
msgid "Every %d years"
|
537 |
msgstr ""
|
538 |
|
539 |
-
#: app/helper/class-ai1ec-events-helper.php:
|
540 |
msgid "until %s"
|
541 |
msgstr ""
|
542 |
|
543 |
-
#: app/helper/class-ai1ec-events-helper.php:
|
544 |
msgid "for %d occurrences"
|
545 |
msgstr ""
|
546 |
|
547 |
-
#: app/helper/class-ai1ec-events-helper.php:
|
548 |
msgid "forever"
|
549 |
msgstr ""
|
550 |
|
551 |
-
#: app/helper/class-ai1ec-events-helper.php:
|
552 |
msgid "times"
|
553 |
msgstr ""
|
554 |
|
@@ -556,738 +621,767 @@ msgstr ""
|
|
556 |
msgid "- Auto-Create New Page -"
|
557 |
msgstr ""
|
558 |
|
559 |
-
#: app/helper/class-ai1ec-settings-helper.php:
|
560 |
msgid "View \"%s\" »"
|
561 |
msgstr ""
|
562 |
|
563 |
-
#: app/helper/class-ai1ec-settings-helper.php:
|
564 |
-
#: app/view/calendar.php:19
|
565 |
-
msgid "Day"
|
566 |
-
msgstr ""
|
567 |
-
|
568 |
-
#: app/helper/class-ai1ec-settings-helper.php:152 app/view/calendar.php:11
|
569 |
-
#: app/view/calendar.php:12 app/view/calendar.php:32
|
570 |
-
msgid "Month"
|
571 |
-
msgstr ""
|
572 |
-
|
573 |
-
#: app/helper/class-ai1ec-settings-helper.php:155 app/view/calendar.php:25
|
574 |
-
#: app/view/calendar.php:26
|
575 |
-
msgid "Week"
|
576 |
-
msgstr ""
|
577 |
-
|
578 |
-
#: app/helper/class-ai1ec-settings-helper.php:207
|
579 |
msgid "Default (d/m/y)"
|
580 |
msgstr ""
|
581 |
|
582 |
-
#: app/helper/class-ai1ec-settings-helper.php:
|
583 |
msgid "US (m/d/y)"
|
584 |
msgstr ""
|
585 |
|
586 |
-
#: app/helper/class-ai1ec-settings-helper.php:
|
587 |
msgid "ISO 8601 (y-m-d)"
|
588 |
msgstr ""
|
589 |
|
590 |
-
#: app/helper/class-ai1ec-settings-helper.php:
|
591 |
msgid "Dotted (m.d.y)"
|
592 |
msgstr ""
|
593 |
|
594 |
-
#: app/helper/class-ai1ec-settings-helper.php:
|
595 |
msgid "Hourly"
|
596 |
msgstr ""
|
597 |
|
598 |
-
#: app/helper/class-ai1ec-settings-helper.php:
|
599 |
msgid "Twice Daily"
|
600 |
msgstr ""
|
601 |
|
602 |
-
#: app/
|
603 |
-
msgid "Calendar"
|
604 |
-
msgstr ""
|
605 |
-
|
606 |
-
#: app/model/class-ai1ec-event.php:496
|
607 |
msgid " (all-day)"
|
608 |
msgstr ""
|
609 |
|
610 |
-
#: app/view/
|
611 |
-
msgid "
|
612 |
-
msgstr ""
|
613 |
-
|
614 |
-
#: app/view/agenda-widget-form.php:6
|
615 |
-
msgid "Number of events to show:"
|
616 |
-
msgstr ""
|
617 |
-
|
618 |
-
#: app/view/agenda-widget-form.php:14
|
619 |
-
msgid "Events with these <strong>Categories</strong>"
|
620 |
-
msgstr ""
|
621 |
-
|
622 |
-
#: app/view/agenda-widget-form.php:23
|
623 |
-
msgid "No categories found."
|
624 |
-
msgstr ""
|
625 |
-
|
626 |
-
#: app/view/agenda-widget-form.php:30
|
627 |
-
msgid "<strong>Or</strong> events with these <strong>Tags</strong>"
|
628 |
-
msgstr ""
|
629 |
-
|
630 |
-
#: app/view/agenda-widget-form.php:39
|
631 |
-
msgid "No tags found."
|
632 |
-
msgstr ""
|
633 |
-
|
634 |
-
#: app/view/agenda-widget-form.php:46
|
635 |
-
msgid "<strong>Or</strong> any of these <strong>Events</strong>"
|
636 |
-
msgstr ""
|
637 |
-
|
638 |
-
#: app/view/agenda-widget-form.php:55
|
639 |
-
msgid "No events found."
|
640 |
-
msgstr ""
|
641 |
-
|
642 |
-
#: app/view/agenda-widget-form.php:62
|
643 |
-
msgid "Show <strong>View Calendar</strong> button"
|
644 |
-
msgstr ""
|
645 |
-
|
646 |
-
#: app/view/agenda-widget-form.php:65
|
647 |
-
msgid "Show <strong>Subscribe</strong> buttons"
|
648 |
-
msgstr ""
|
649 |
-
|
650 |
-
#: app/view/agenda-widget-form.php:68
|
651 |
-
msgid "Hide this widget on calendar page"
|
652 |
-
msgstr ""
|
653 |
-
|
654 |
-
#: app/view/agenda-widget.php:11
|
655 |
-
msgid "There are no upcoming events."
|
656 |
-
msgstr ""
|
657 |
-
|
658 |
-
#: app/view/agenda-widget.php:59
|
659 |
-
msgid "View Calendar »"
|
660 |
msgstr ""
|
661 |
|
662 |
-
#: app/view/
|
663 |
msgid ""
|
664 |
-
"
|
665 |
-
"
|
666 |
-
|
667 |
-
|
668 |
-
#: app/view/agenda-widget.php:68 app/view/calendar.php:118
|
669 |
-
msgid "✔ Subscribe"
|
670 |
-
msgstr ""
|
671 |
-
|
672 |
-
#: app/view/agenda-widget.php:72 app/view/calendar.php:123
|
673 |
-
msgid "Subscribe to this calendar in your Google Calendar"
|
674 |
-
msgstr ""
|
675 |
-
|
676 |
-
#: app/view/agenda-widget.php:74
|
677 |
-
msgid "Add to Google"
|
678 |
-
msgstr ""
|
679 |
-
|
680 |
-
#: app/view/agenda.php:5
|
681 |
-
msgid "+ Expand All"
|
682 |
-
msgstr ""
|
683 |
-
|
684 |
-
#: app/view/agenda.php:8
|
685 |
-
msgid "− Collapse All"
|
686 |
-
msgstr ""
|
687 |
-
|
688 |
-
#: app/view/agenda.php:12 app/view/month.php:4 app/view/oneday.php:4
|
689 |
-
#: app/view/week.php:4
|
690 |
-
msgid "Today"
|
691 |
-
msgstr ""
|
692 |
-
|
693 |
-
#: app/view/agenda.php:29
|
694 |
-
msgid "There are no upcoming events to display at this time."
|
695 |
-
msgstr ""
|
696 |
-
|
697 |
-
#: app/view/agenda.php:59 app/view/agenda.php:109 app/view/month.php:68
|
698 |
-
#: app/view/oneday.php:64 app/view/week.php:69
|
699 |
-
msgid "(all-day)"
|
700 |
-
msgstr ""
|
701 |
-
|
702 |
-
#: app/view/agenda.php:77
|
703 |
-
msgid "Read more »"
|
704 |
-
msgstr ""
|
705 |
-
|
706 |
-
#: app/view/agenda.php:81 app/view/event-multi.php:45
|
707 |
-
#: app/view/event-single.php:57
|
708 |
-
msgid "Categories:"
|
709 |
-
msgstr ""
|
710 |
-
|
711 |
-
#: app/view/agenda.php:87 app/view/event-multi.php:51
|
712 |
-
#: app/view/event-single.php:64
|
713 |
-
msgid "Tags:"
|
714 |
msgstr ""
|
715 |
|
716 |
-
#: app/view/box_event_contact.php:1
|
717 |
msgid "Organizer contact info"
|
718 |
msgstr ""
|
719 |
|
720 |
-
#: app/view/box_event_contact.php:7
|
721 |
msgid "Contact name:"
|
722 |
msgstr ""
|
723 |
|
724 |
-
#: app/view/box_event_contact.php:17
|
725 |
msgid "Phone:"
|
726 |
msgstr ""
|
727 |
|
728 |
-
#: app/view/box_event_contact.php:27
|
729 |
msgid "E-mail:"
|
730 |
msgstr ""
|
731 |
|
732 |
-
#: app/view/box_event_cost.php:1
|
733 |
msgid "Event cost"
|
734 |
msgstr ""
|
735 |
|
736 |
-
#: app/view/box_event_cost.php:7
|
737 |
msgid "Cost"
|
738 |
msgstr ""
|
739 |
|
740 |
-
#: app/view/box_event_location.php:1
|
741 |
msgid "Event location details"
|
742 |
msgstr ""
|
743 |
|
744 |
-
#: app/view/box_event_location.php:
|
745 |
msgid "Venue name:"
|
746 |
msgstr ""
|
747 |
|
748 |
-
#: app/view/box_event_location.php:
|
749 |
msgid "Address:"
|
750 |
msgstr ""
|
751 |
|
752 |
-
#: app/view/box_event_location.php:
|
753 |
msgid "Show Google Map:"
|
754 |
msgstr ""
|
755 |
|
756 |
-
#: app/view/box_eventbrite.php:1
|
757 |
msgid "Eventbrite Ticketing"
|
758 |
msgstr ""
|
759 |
|
760 |
-
#: app/view/box_eventbrite.php:7
|
761 |
msgid "Register this event with Eventbrite.com?"
|
762 |
msgstr ""
|
763 |
|
764 |
-
#: app/view/box_eventbrite.php:12
|
765 |
msgid "Yes"
|
766 |
msgstr ""
|
767 |
|
768 |
-
#: app/view/box_eventbrite.php:14
|
769 |
msgid "No"
|
770 |
msgstr ""
|
771 |
|
772 |
-
#: app/view/box_eventbrite.php:22
|
773 |
msgid "Set up your first ticket"
|
774 |
msgstr ""
|
775 |
|
776 |
-
#: app/view/box_eventbrite.php:24
|
777 |
msgid ""
|
778 |
"To create multiple tickets per event, submit this form, then follow the link "
|
779 |
"to Eventbrite."
|
780 |
msgstr ""
|
781 |
|
782 |
-
#: app/view/box_eventbrite.php:32
|
783 |
msgid "Name"
|
784 |
msgstr ""
|
785 |
|
786 |
-
#: app/view/box_eventbrite.php:42
|
787 |
msgid "Description"
|
788 |
msgstr ""
|
789 |
|
790 |
-
#: app/view/box_eventbrite.php:53
|
791 |
msgid "Type"
|
792 |
msgstr ""
|
793 |
|
794 |
-
#: app/view/box_eventbrite.php:58
|
795 |
msgid "Set Price"
|
796 |
msgstr ""
|
797 |
|
798 |
-
#: app/view/box_eventbrite.php:60
|
799 |
msgid "Donation Based"
|
800 |
msgstr ""
|
801 |
|
802 |
-
#: app/view/box_eventbrite.php:68
|
803 |
msgid ""
|
804 |
"The price for this event's first ticket will be taken from the Cost field "
|
805 |
"above."
|
806 |
msgstr ""
|
807 |
|
808 |
-
#: app/view/box_eventbrite.php:75
|
809 |
msgid "Quantity"
|
810 |
msgstr ""
|
811 |
|
812 |
-
#: app/view/box_eventbrite.php:85
|
813 |
msgid "Include Fee in Price"
|
814 |
msgstr ""
|
815 |
|
816 |
-
#: app/view/box_eventbrite.php:90
|
817 |
msgid "Add Service Fee on top of price"
|
818 |
msgstr ""
|
819 |
|
820 |
-
#: app/view/box_eventbrite.php:92
|
821 |
msgid "Include Service fee in price"
|
822 |
msgstr ""
|
823 |
|
824 |
-
#: app/view/box_eventbrite.php:98
|
825 |
msgid "Payment Options"
|
826 |
msgstr ""
|
827 |
|
828 |
-
#: app/view/box_eventbrite.php:103
|
829 |
msgid "Paypal"
|
830 |
msgstr ""
|
831 |
|
832 |
-
#: app/view/box_eventbrite.php:105
|
833 |
msgid "Google Checkout"
|
834 |
msgstr ""
|
835 |
|
836 |
-
#: app/view/box_eventbrite.php:107
|
837 |
msgid "Check"
|
838 |
msgstr ""
|
839 |
|
840 |
-
#: app/view/box_eventbrite.php:109
|
841 |
msgid "Cash"
|
842 |
msgstr ""
|
843 |
|
844 |
-
#: app/view/box_eventbrite.php:111
|
845 |
msgid "Send an Invoice"
|
846 |
msgstr ""
|
847 |
|
848 |
-
#: app/view/
|
849 |
-
msgid "
|
|
|
|
|
|
|
|
|
850 |
msgstr ""
|
851 |
|
852 |
-
#: app/view/
|
853 |
-
msgid "
|
854 |
msgstr ""
|
855 |
|
856 |
-
#: app/view/
|
857 |
-
msgid "
|
858 |
msgstr ""
|
859 |
|
860 |
-
#: app/view/
|
861 |
-
msgid "
|
862 |
msgstr ""
|
863 |
|
864 |
-
#: app/view/
|
865 |
-
msgid "
|
866 |
msgstr ""
|
867 |
|
868 |
-
#: app/view/
|
869 |
-
msgid ""
|
870 |
-
|
871 |
-
|
872 |
-
|
873 |
-
"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
874 |
msgstr ""
|
875 |
|
876 |
-
#: app/view/box_general_settings.php:
|
877 |
msgid "Week starts on"
|
878 |
msgstr ""
|
879 |
|
880 |
-
#: app/view/box_general_settings.php:
|
881 |
msgid "Agenda pages show at most"
|
882 |
msgstr ""
|
883 |
|
884 |
-
#: app/view/box_general_settings.php:
|
885 |
msgid "events"
|
886 |
msgstr ""
|
887 |
|
888 |
-
#: app/view/box_general_settings.php:
|
889 |
msgid "Keep all events <strong>expanded</strong> in the agenda view"
|
890 |
msgstr ""
|
891 |
|
892 |
-
#: app/view/box_general_settings.php:
|
893 |
msgid "<strong>Exclude</strong> events from search results"
|
894 |
msgstr ""
|
895 |
|
896 |
-
#: app/view/box_general_settings.php:
|
897 |
msgid ""
|
898 |
"Show <strong>Post Your Event</strong> button above the calendar to "
|
899 |
"privileged users"
|
900 |
msgstr ""
|
901 |
|
902 |
-
#: app/view/box_general_settings.php:
|
903 |
msgid ""
|
904 |
"Hide <strong>Subscribe</strong>/<strong>Add to Calendar</strong> buttons in "
|
905 |
"calendar and single event views"
|
906 |
msgstr ""
|
907 |
|
908 |
-
#: app/view/box_general_settings.php:
|
909 |
msgid "Hide <strong>Google Maps</strong> until clicked"
|
910 |
msgstr ""
|
911 |
|
912 |
-
#: app/view/box_general_settings.php:
|
913 |
-
msgid ""
|
914 |
-
"Use the configured <strong>region</strong> (WordPress locale) to bias the "
|
915 |
-
"address autocomplete function"
|
916 |
-
msgstr ""
|
917 |
-
|
918 |
-
#: app/view/box_general_settings.php:67
|
919 |
msgid "Include <strong>event categories</strong> in post category lists"
|
920 |
msgstr ""
|
921 |
|
922 |
-
#: app/view/box_general_settings.php:
|
923 |
msgid "Adding/Editing Events"
|
924 |
msgstr ""
|
925 |
|
926 |
-
#: app/view/box_general_settings.php:
|
927 |
msgid "Input dates in this format:"
|
928 |
msgstr ""
|
929 |
|
930 |
-
#: app/view/box_general_settings.php:
|
931 |
msgid "Use <strong>24h time</strong> in time pickers"
|
932 |
msgstr ""
|
933 |
|
934 |
-
#: app/view/box_general_settings.php:
|
935 |
-
msgid "
|
936 |
msgstr ""
|
937 |
|
938 |
-
#: app/view/box_general_settings.php:
|
939 |
-
msgid "
|
940 |
-
|
941 |
-
|
942 |
-
#: app/view/box_general_settings.php:93
|
943 |
-
msgid "Allow The Seed to collect statistics"
|
944 |
-
msgstr ""
|
945 |
-
|
946 |
-
#: app/view/box_ics_import_settings.php:2
|
947 |
-
msgid "Auto-refresh"
|
948 |
-
msgstr ""
|
949 |
-
|
950 |
-
#: app/view/box_ics_import_settings.php:8 app/view/feed_row.php:3
|
951 |
-
msgid "iCalendar/.ics Feed URL:"
|
952 |
msgstr ""
|
953 |
|
954 |
-
#: app/view/
|
955 |
-
msgid "Event
|
956 |
msgstr ""
|
957 |
|
958 |
-
#: app/view/
|
959 |
-
msgid "
|
960 |
msgstr ""
|
961 |
|
962 |
-
#: app/view/
|
963 |
-
msgid "
|
964 |
msgstr ""
|
965 |
|
966 |
-
#: app/view/box_repeat.php:14
|
967 |
msgid "End"
|
968 |
msgstr ""
|
969 |
|
970 |
-
#: app/view/box_repeat.php:21
|
971 |
msgid "Ending after"
|
972 |
msgstr ""
|
973 |
|
974 |
-
#: app/view/box_repeat.php:36
|
975 |
msgid "Apply"
|
976 |
msgstr ""
|
977 |
|
978 |
-
#: app/view/box_repeat.php:37
|
979 |
msgid "Cancel"
|
980 |
msgstr ""
|
981 |
|
982 |
-
|
983 |
-
|
984 |
-
#: app/view/box_the_seed_studio.php:4
|
985 |
-
msgid "The Seed Studio"
|
986 |
msgstr ""
|
987 |
|
988 |
-
#: app/view/box_the_seed_studio.php:7
|
989 |
msgid ""
|
990 |
-
"
|
991 |
-
"
|
992 |
msgstr ""
|
993 |
|
994 |
-
#: app/view/box_the_seed_studio.php:
|
995 |
-
msgid "Follow @
|
996 |
msgstr ""
|
997 |
|
998 |
-
#: app/view/box_the_seed_studio.php:
|
999 |
-
msgid "
|
|
|
|
|
1000 |
msgstr ""
|
1001 |
|
1002 |
-
#: app/view/box_the_seed_studio.php:
|
1003 |
-
msgid "
|
1004 |
msgstr ""
|
1005 |
|
1006 |
-
#: app/view/box_the_seed_studio.php:
|
1007 |
-
msgid "
|
1008 |
msgstr ""
|
1009 |
|
1010 |
-
#: app/view/box_the_seed_studio.php:
|
1011 |
-
msgid ""
|
1012 |
-
"You can also hire The Seed for support on a contract or per-hour basis for "
|
1013 |
-
"this plugin, for your website or for any of your Internet marketing needs "
|
1014 |
-
"(we can really help!)."
|
1015 |
msgstr ""
|
1016 |
|
1017 |
-
#: app/view/box_the_seed_studio.php:
|
1018 |
-
msgid ""
|
1019 |
-
"Plugin users: The Seed gives support priority to clients. For free support "
|
1020 |
-
"from other WordPress users, visit the plugin's forum."
|
1021 |
msgstr ""
|
1022 |
|
1023 |
-
#: app/view/box_the_seed_studio.php:
|
1024 |
-
msgid "
|
1025 |
msgstr ""
|
1026 |
|
1027 |
-
#: app/view/box_the_seed_studio.php:
|
1028 |
msgid ""
|
1029 |
-
"
|
1030 |
-
"license. All we ask is that you:"
|
1031 |
msgstr ""
|
1032 |
|
1033 |
-
#: app/view/box_the_seed_studio.php:
|
1034 |
msgid ""
|
1035 |
-
"
|
1036 |
-
"
|
1037 |
-
"
|
1038 |
-
|
1039 |
-
|
1040 |
-
#: app/view/box_the_seed_studio.php:39
|
1041 |
-
msgid "Link to the plugin page on our website"
|
1042 |
msgstr ""
|
1043 |
|
1044 |
-
#: app/view/box_the_seed_studio.php:
|
1045 |
-
msgid "
|
1046 |
msgstr ""
|
1047 |
|
1048 |
-
#: app/view/
|
1049 |
-
msgid "Follow us on Twitter"
|
1050 |
-
msgstr ""
|
1051 |
-
|
1052 |
-
#: app/view/box_the_seed_studio.php:46
|
1053 |
-
msgid "Latest from the Seed Network"
|
1054 |
-
msgstr ""
|
1055 |
-
|
1056 |
-
#: app/view/box_time_and_date.php:2
|
1057 |
msgid "Event date and time"
|
1058 |
msgstr ""
|
1059 |
|
1060 |
-
#: app/view/box_time_and_date.php:8
|
1061 |
msgid "All-day event"
|
1062 |
msgstr ""
|
1063 |
|
1064 |
-
#: app/view/box_time_and_date.php:18
|
1065 |
msgid "Start date / time"
|
1066 |
msgstr ""
|
1067 |
|
1068 |
-
#: app/view/box_time_and_date.php:31
|
1069 |
msgid "End date / time"
|
1070 |
msgstr ""
|
1071 |
|
1072 |
-
#: app/view/box_time_and_date.php:46
|
1073 |
msgid "Repeat"
|
1074 |
msgstr ""
|
1075 |
|
1076 |
-
#: app/view/box_time_and_date.php:60
|
1077 |
msgid "Exclude"
|
1078 |
msgstr ""
|
1079 |
|
1080 |
-
#: app/view/box_time_and_date.php:67
|
1081 |
msgid "Choose a rule for exclusion"
|
1082 |
msgstr ""
|
1083 |
|
1084 |
-
#: app/view/box_time_and_date.php:73
|
1085 |
msgid "Exclude dates"
|
1086 |
msgstr ""
|
1087 |
|
1088 |
-
#: app/view/box_time_and_date.php:80
|
1089 |
msgid "Select date range"
|
1090 |
msgstr ""
|
1091 |
|
1092 |
-
#: app/view/box_time_and_date.php:85
|
1093 |
msgid "Choose specific dates to exclude"
|
1094 |
msgstr ""
|
1095 |
|
1096 |
-
#: app/view/
|
1097 |
-
msgid "
|
1098 |
msgstr ""
|
1099 |
|
1100 |
-
#: app/view/
|
1101 |
-
msgid "
|
|
|
|
|
1102 |
msgstr ""
|
1103 |
|
1104 |
-
#: app/view/calendar.php:
|
1105 |
-
msgid "
|
1106 |
msgstr ""
|
1107 |
|
1108 |
-
#: app/view/
|
1109 |
-
msgid "
|
1110 |
msgstr ""
|
1111 |
|
1112 |
-
#: app/view/
|
1113 |
-
msgid "
|
1114 |
msgstr ""
|
1115 |
|
1116 |
-
#: app/view/
|
1117 |
-
msgid "
|
1118 |
msgstr ""
|
1119 |
|
1120 |
-
#: app/view/
|
1121 |
-
msgid "
|
1122 |
msgstr ""
|
1123 |
|
1124 |
-
#: app/view/
|
1125 |
-
msgid "
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1126 |
msgstr ""
|
1127 |
|
1128 |
-
#: app/view/
|
1129 |
-
|
|
|
|
|
|
|
|
|
1130 |
msgid "Upcoming Events"
|
1131 |
msgstr ""
|
1132 |
|
1133 |
-
#: app/view/class-ai1ec-agenda-widget.php:
|
1134 |
-
msgid "All-in-One
|
1135 |
msgstr ""
|
1136 |
|
1137 |
-
#: app/view/
|
1138 |
-
#: app/view/
|
1139 |
-
msgid "
|
1140 |
msgstr ""
|
1141 |
|
1142 |
-
#: app/view/
|
1143 |
-
#: app/view/
|
1144 |
-
msgid "
|
1145 |
msgstr ""
|
1146 |
|
1147 |
-
#: app/view/
|
1148 |
-
msgid "
|
1149 |
msgstr ""
|
1150 |
|
1151 |
-
#: app/view/
|
1152 |
-
msgid "
|
1153 |
msgstr ""
|
1154 |
|
1155 |
-
#: app/view/
|
1156 |
-
msgid "
|
1157 |
msgstr ""
|
1158 |
|
1159 |
-
#: app/view/
|
1160 |
-
|
|
|
|
|
1161 |
msgstr ""
|
1162 |
|
1163 |
-
#: app/view/
|
1164 |
-
msgid "
|
1165 |
msgstr ""
|
1166 |
|
1167 |
-
#: app/view/
|
1168 |
-
msgid "
|
1169 |
msgstr ""
|
1170 |
|
1171 |
-
#: app/view/
|
1172 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1173 |
msgstr ""
|
1174 |
|
1175 |
-
#:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1176 |
msgid ""
|
1177 |
-
"
|
1178 |
-
"
|
1179 |
msgstr ""
|
1180 |
|
1181 |
-
#:
|
1182 |
-
|
|
|
1183 |
msgstr ""
|
1184 |
|
1185 |
-
#:
|
1186 |
-
|
|
|
1187 |
msgstr ""
|
1188 |
|
1189 |
-
#:
|
1190 |
-
msgid "
|
1191 |
msgstr ""
|
1192 |
|
1193 |
-
#:
|
1194 |
-
|
|
|
1195 |
msgstr ""
|
1196 |
|
1197 |
-
#:
|
1198 |
-
msgid "
|
1199 |
msgstr ""
|
1200 |
|
1201 |
-
#:
|
1202 |
-
msgid "
|
1203 |
msgstr ""
|
1204 |
|
1205 |
-
#:
|
1206 |
-
msgid "
|
1207 |
msgstr ""
|
1208 |
|
1209 |
-
#:
|
1210 |
-
#:
|
1211 |
-
|
|
|
1212 |
msgstr ""
|
1213 |
|
1214 |
-
#:
|
1215 |
-
|
1216 |
-
msgid "Events in this category will be identified by this color"
|
1217 |
msgstr ""
|
1218 |
|
1219 |
-
#:
|
1220 |
-
|
|
|
1221 |
msgstr ""
|
1222 |
|
1223 |
-
#:
|
1224 |
-
|
|
|
1225 |
msgstr ""
|
1226 |
|
1227 |
-
#:
|
1228 |
-
msgid "
|
1229 |
msgstr ""
|
1230 |
|
1231 |
-
#:
|
1232 |
-
|
1233 |
-
msgid "Summary:"
|
1234 |
msgstr ""
|
1235 |
|
1236 |
-
#:
|
1237 |
-
|
1238 |
-
msgid "click anywhere for details"
|
1239 |
msgstr ""
|
1240 |
|
1241 |
-
#:
|
1242 |
-
msgid "
|
1243 |
msgstr ""
|
1244 |
|
1245 |
-
#:
|
1246 |
-
|
1247 |
-
#: app/view/row_yearly.php:3
|
1248 |
-
msgid "Every"
|
1249 |
msgstr ""
|
1250 |
|
1251 |
-
#:
|
1252 |
-
msgid "
|
1253 |
msgstr ""
|
1254 |
|
1255 |
-
#:
|
1256 |
-
|
|
|
|
|
1257 |
msgstr ""
|
1258 |
|
1259 |
-
#:
|
1260 |
-
|
1261 |
-
|
|
|
1262 |
msgstr ""
|
1263 |
|
1264 |
-
#:
|
1265 |
-
|
1266 |
-
msgid "In"
|
1267 |
msgstr ""
|
1268 |
|
1269 |
-
#:
|
1270 |
-
msgid "
|
1271 |
msgstr ""
|
1272 |
|
1273 |
-
#:
|
1274 |
-
msgid "
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1275 |
msgstr ""
|
1276 |
|
1277 |
#. Plugin Name of the plugin/theme
|
1278 |
-
msgid "All-in-One
|
1279 |
msgstr ""
|
1280 |
|
|
|
1281 |
#. Plugin URI of the plugin/theme
|
1282 |
-
|
|
|
|
|
1283 |
msgstr ""
|
1284 |
|
1285 |
#. Description of the plugin/theme
|
1286 |
msgid ""
|
1287 |
-
"
|
1288 |
"widget, color-coded categories, recurrence, and import/export of .ics feeds."
|
1289 |
msgstr ""
|
1290 |
|
1291 |
-
#. Author
|
1292 |
-
msgid "
|
1293 |
msgstr ""
|
1 |
+
# Copyright (C) 2012 All-in-One Calendar by Then.ly
|
2 |
+
# This file is distributed under the same license as the All-in-One Calendar by Then.ly package.
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
+
"Project-Id-Version: All-in-One Calendar by Then.ly 1.6\n"
|
6 |
"Report-Msgid-Bugs-To: http://wordpress.org/tag/all-in-one-event-calendar\n"
|
7 |
+
"POT-Creation-Date: 2012-05-09 22:49:47+00:00\n"
|
8 |
"MIME-Version: 1.0\n"
|
9 |
"Content-Type: text/plain; charset=UTF-8\n"
|
10 |
"Content-Transfer-Encoding: 8bit\n"
|
12 |
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
13 |
"Language-Team: LANGUAGE <LL@li.org>\n"
|
14 |
|
15 |
+
#: app/controller/class-ai1ec-app-controller.php:412
|
16 |
+
#: app/controller/class-ai1ec-app-controller.php:413
|
17 |
+
msgid "Calendar Feeds"
|
18 |
+
msgstr ""
|
19 |
+
|
20 |
+
#: app/controller/class-ai1ec-app-controller.php:428
|
21 |
+
#: app/controller/class-ai1ec-app-controller.php:429
|
22 |
+
#: app/helper/class-ai1ec-settings-helper.php:320
|
23 |
+
msgid "Calendar"
|
24 |
+
msgstr ""
|
25 |
+
|
26 |
+
#: app/controller/class-ai1ec-app-controller.php:443
|
27 |
+
#: app/controller/class-ai1ec-app-controller.php:444
|
28 |
+
msgid "Upgrade"
|
29 |
+
msgstr ""
|
30 |
+
|
31 |
+
#: app/controller/class-ai1ec-app-controller.php:631
|
32 |
+
msgid "You do not have sufficient permissions to update plugins for this site."
|
33 |
+
msgstr ""
|
34 |
+
|
35 |
+
#: app/controller/class-ai1ec-calendar-controller.php:220
|
36 |
+
#: app/helper/class-ai1ec-settings-helper.php:151
|
37 |
+
msgid "Month"
|
38 |
+
msgstr ""
|
39 |
+
|
40 |
+
#: app/controller/class-ai1ec-calendar-controller.php:221
|
41 |
+
#: app/helper/class-ai1ec-settings-helper.php:154
|
42 |
+
msgid "Week"
|
43 |
+
msgstr ""
|
44 |
+
|
45 |
+
#: app/controller/class-ai1ec-calendar-controller.php:222
|
46 |
+
#: app/helper/class-ai1ec-settings-helper.php:148
|
47 |
+
msgid "Day"
|
48 |
+
msgstr ""
|
49 |
+
|
50 |
+
#: app/controller/class-ai1ec-calendar-controller.php:223
|
51 |
+
#: app/controller/class-ai1ec-calendar-controller.php:477
|
52 |
+
#: app/helper/class-ai1ec-settings-helper.php:157
|
53 |
+
msgid "Agenda"
|
54 |
msgstr ""
|
55 |
|
56 |
#. translators: "%s" represents the week's starting date
|
57 |
+
#: app/controller/class-ai1ec-calendar-controller.php:420
|
|
|
58 |
#: app/helper/class-ai1ec-calendar-helper.php:892
|
59 |
+
#: app/helper/class-ai1ec-calendar-helper.php:901
|
60 |
msgid "Week of %s"
|
61 |
msgstr ""
|
62 |
|
63 |
+
#: app/controller/class-ai1ec-calendar-controller.php:420
|
64 |
msgid "F j"
|
65 |
msgstr ""
|
66 |
|
|
|
|
|
|
|
|
|
|
|
67 |
#: app/controller/class-ai1ec-events-controller.php:153
|
68 |
msgid "This feed is already being imported."
|
69 |
msgstr ""
|
72 |
msgid "Please enter a valid iCalendar URL."
|
73 |
msgstr ""
|
74 |
|
75 |
+
#: app/controller/class-ai1ec-events-controller.php:341
|
76 |
msgid "Publish"
|
77 |
msgstr ""
|
78 |
|
79 |
+
#: app/controller/class-ai1ec-events-controller.php:341
|
80 |
+
#: app/view/admin/feed_row.php:20
|
81 |
msgid "Update"
|
82 |
msgstr ""
|
83 |
|
84 |
+
#: app/controller/class-ai1ec-events-controller.php:343
|
85 |
msgid "Submit for Review"
|
86 |
msgstr ""
|
87 |
|
88 |
+
#: app/controller/class-ai1ec-events-controller.php:467
|
89 |
msgid "Event updated. <a href=\"%s\">View event</a>"
|
90 |
msgstr ""
|
91 |
|
92 |
+
#: app/controller/class-ai1ec-events-controller.php:468
|
93 |
msgid "Custom field updated."
|
94 |
msgstr ""
|
95 |
|
96 |
+
#: app/controller/class-ai1ec-events-controller.php:469
|
97 |
msgid "Custom field deleted."
|
98 |
msgstr ""
|
99 |
|
100 |
+
#: app/controller/class-ai1ec-events-controller.php:470
|
101 |
msgid "Event updated."
|
102 |
msgstr ""
|
103 |
|
104 |
#. translators: %s: date and time of the revision
|
105 |
+
#: app/controller/class-ai1ec-events-controller.php:472
|
106 |
msgid "Event restored to revision from %s"
|
107 |
msgstr ""
|
108 |
|
109 |
+
#: app/controller/class-ai1ec-events-controller.php:473
|
110 |
msgid "Event published. <a href=\"%s\">View event</a>"
|
111 |
msgstr ""
|
112 |
|
113 |
+
#: app/controller/class-ai1ec-events-controller.php:474
|
114 |
msgid "Event saved."
|
115 |
msgstr ""
|
116 |
|
117 |
+
#: app/controller/class-ai1ec-events-controller.php:475
|
118 |
msgid "Event submitted. <a target=\"_blank\" href=\"%s\">Preview event</a>"
|
119 |
msgstr ""
|
120 |
|
121 |
+
#: app/controller/class-ai1ec-events-controller.php:476
|
122 |
msgid ""
|
123 |
"Event scheduled for: <strong>%1$s</strong>. <a target=\"_blank\" href=\"%2$s"
|
124 |
"\">Preview event</a>"
|
125 |
msgstr ""
|
126 |
|
127 |
#. translators: Publish box date format, see http:php.net/date
|
128 |
+
#: app/controller/class-ai1ec-events-controller.php:478
|
129 |
msgid "M j, Y @ G:i"
|
130 |
msgstr ""
|
131 |
|
132 |
+
#: app/controller/class-ai1ec-events-controller.php:479
|
133 |
msgid "Event draft updated. <a target=\"_blank\" href=\"%s\">Preview event</a>"
|
134 |
msgstr ""
|
135 |
|
136 |
#: app/controller/class-ai1ec-importer-controller.php:91
|
137 |
+
msgid "The Events Calendar → All-in-One Calendar"
|
138 |
msgstr ""
|
139 |
|
140 |
#: app/controller/class-ai1ec-importer-controller.php:92
|
141 |
msgid ""
|
142 |
"Imports events created using The Events Calendar plugin into the All-in-One "
|
143 |
+
"Calendar"
|
144 |
msgstr ""
|
145 |
|
146 |
+
#: app/controller/class-ai1ec-settings-controller.php:60
|
147 |
+
msgid "All-in-One Calendar: Settings"
|
148 |
+
msgstr ""
|
149 |
+
|
150 |
+
#: app/controller/class-ai1ec-settings-controller.php:79
|
151 |
+
msgid "All-in-One Calendar: Calendar Feeds"
|
152 |
+
msgstr ""
|
153 |
+
|
154 |
+
#: app/controller/class-ai1ec-settings-controller.php:100
|
155 |
msgid "Settings Updated."
|
156 |
msgstr ""
|
157 |
|
158 |
+
#: app/controller/class-ai1ec-settings-controller.php:190
|
159 |
msgid "Flushed %d events"
|
160 |
msgstr ""
|
161 |
|
162 |
+
#: app/controller/class-ai1ec-settings-controller.php:196
|
163 |
+
#: app/controller/class-ai1ec-settings-controller.php:243
|
164 |
msgid "Invalid ICS feed ID"
|
165 |
msgstr ""
|
166 |
|
167 |
+
#: app/controller/class-ai1ec-settings-controller.php:230
|
168 |
msgid "No events were found"
|
169 |
msgstr ""
|
170 |
|
171 |
+
#: app/controller/class-ai1ec-settings-controller.php:235
|
172 |
msgid "Imported %d events"
|
173 |
msgstr ""
|
174 |
|
175 |
+
#: app/controller/class-ai1ec-settings-controller.php:236
|
176 |
+
#: app/view/admin/feed_row.php:22
|
177 |
msgid "Flush 1 event"
|
178 |
msgid_plural "Flush %s events"
|
179 |
msgstr[0] ""
|
180 |
msgstr[1] ""
|
181 |
|
182 |
+
#: app/controller/class-ai1ec-settings-controller.php:301
|
183 |
msgctxt "meta box"
|
184 |
msgid "General Settings"
|
185 |
msgstr ""
|
186 |
|
187 |
+
#: app/controller/class-ai1ec-settings-controller.php:310
|
188 |
+
msgctxt "meta box"
|
189 |
+
msgid "Advanced Settings"
|
190 |
+
msgstr ""
|
191 |
+
|
192 |
+
#: app/controller/class-ai1ec-settings-controller.php:319
|
193 |
+
#: app/controller/class-ai1ec-settings-controller.php:348
|
194 |
msgctxt "meta box"
|
195 |
+
msgid "Then.ly Support"
|
196 |
msgstr ""
|
197 |
|
198 |
+
#: app/controller/class-ai1ec-settings-controller.php:339
|
199 |
msgctxt "meta box"
|
200 |
+
msgid "Feed Subscriptions"
|
201 |
msgstr ""
|
202 |
|
203 |
+
#: app/controller/class-ai1ec-settings-controller.php:364
|
204 |
msgid "<a href=\"%s\">Settings</a>"
|
205 |
msgstr ""
|
206 |
|
207 |
+
#: app/controller/class-ai1ec-settings-controller.php:378
|
208 |
msgid "<a href=\"%s\" target=\"_blank\">Donate</a>"
|
209 |
msgstr ""
|
210 |
|
211 |
+
#: app/controller/class-ai1ec-settings-controller.php:379
|
212 |
msgid "<a href=\"%s\" target=\"_blank\">Get Support</a>"
|
213 |
msgstr ""
|
214 |
|
215 |
+
#: app/helper/class-ai1ec-app-helper.php:156
|
216 |
msgctxt "Custom post type name"
|
217 |
msgid "Events"
|
218 |
msgstr ""
|
219 |
|
220 |
+
#: app/helper/class-ai1ec-app-helper.php:157
|
221 |
msgctxt "Custom post type name (singular)"
|
222 |
msgid "Event"
|
223 |
msgstr ""
|
224 |
|
225 |
+
#: app/helper/class-ai1ec-app-helper.php:158
|
226 |
msgid "Add New"
|
227 |
msgstr ""
|
228 |
|
229 |
+
#: app/helper/class-ai1ec-app-helper.php:159
|
230 |
msgid "Add New Event"
|
231 |
msgstr ""
|
232 |
|
233 |
+
#: app/helper/class-ai1ec-app-helper.php:160
|
234 |
msgid "Edit Event"
|
235 |
msgstr ""
|
236 |
|
237 |
+
#: app/helper/class-ai1ec-app-helper.php:161
|
238 |
msgid "New Event"
|
239 |
msgstr ""
|
240 |
|
241 |
+
#: app/helper/class-ai1ec-app-helper.php:162
|
242 |
msgid "View Event"
|
243 |
msgstr ""
|
244 |
|
245 |
+
#: app/helper/class-ai1ec-app-helper.php:163
|
246 |
msgid "Search Events"
|
247 |
msgstr ""
|
248 |
|
249 |
+
#: app/helper/class-ai1ec-app-helper.php:164
|
250 |
msgid "No Events found"
|
251 |
msgstr ""
|
252 |
|
253 |
+
#: app/helper/class-ai1ec-app-helper.php:165
|
254 |
msgid "No Events found in Trash"
|
255 |
msgstr ""
|
256 |
|
257 |
+
#: app/helper/class-ai1ec-app-helper.php:166
|
258 |
msgid "Parent Event"
|
259 |
msgstr ""
|
260 |
|
261 |
+
#: app/helper/class-ai1ec-app-helper.php:167
|
262 |
msgid "Events"
|
263 |
msgstr ""
|
264 |
|
265 |
+
#: app/helper/class-ai1ec-app-helper.php:214
|
266 |
msgctxt "Event categories taxonomy"
|
267 |
msgid "Event Categories"
|
268 |
msgstr ""
|
269 |
|
270 |
+
#: app/helper/class-ai1ec-app-helper.php:215
|
271 |
msgctxt "Event categories taxonomy (singular)"
|
272 |
msgid "Event Category"
|
273 |
msgstr ""
|
274 |
|
275 |
+
#: app/helper/class-ai1ec-app-helper.php:222
|
276 |
msgctxt "Event tags taxonomy"
|
277 |
msgid "Event Tags"
|
278 |
msgstr ""
|
279 |
|
280 |
+
#: app/helper/class-ai1ec-app-helper.php:223
|
281 |
msgctxt "Event tags taxonomy (singular)"
|
282 |
msgid "Event Tag"
|
283 |
msgstr ""
|
284 |
|
285 |
+
#: app/helper/class-ai1ec-app-helper.php:230
|
286 |
msgctxt "Event feeds taxonomy"
|
287 |
msgid "Event Feeds"
|
288 |
msgstr ""
|
289 |
|
290 |
+
#: app/helper/class-ai1ec-app-helper.php:231
|
291 |
msgctxt "Event feed taxonomy (singular)"
|
292 |
msgid "Event Feed"
|
293 |
msgstr ""
|
294 |
|
295 |
+
#: app/helper/class-ai1ec-app-helper.php:319
|
296 |
msgid "Show All "
|
297 |
msgstr ""
|
298 |
|
299 |
+
#: app/helper/class-ai1ec-app-helper.php:352
|
300 |
msgid ""
|
301 |
"All Events <span class=\"update-plugins count-%d\" title=\"%d Pending Events"
|
302 |
"\"><span class=\"update-count\">%d</span></span>"
|
303 |
msgstr ""
|
304 |
|
305 |
+
#: app/helper/class-ai1ec-app-helper.php:358
|
306 |
msgid "All Events"
|
307 |
msgstr ""
|
308 |
|
309 |
+
#: app/helper/class-ai1ec-app-helper.php:436
|
310 |
msgid "Event Details"
|
311 |
msgstr ""
|
312 |
|
313 |
+
#: app/helper/class-ai1ec-app-helper.php:471
|
314 |
msgid "Post Date"
|
315 |
msgstr ""
|
316 |
|
317 |
+
#: app/helper/class-ai1ec-app-helper.php:472
|
318 |
msgid "Event date/time"
|
319 |
msgstr ""
|
320 |
|
321 |
+
#: app/helper/class-ai1ec-app-helper.php:734
|
322 |
+
msgid "Select an option in the <strong>Calendar page</strong> dropdown list."
|
|
|
|
|
|
|
323 |
msgstr ""
|
324 |
|
325 |
+
#: app/helper/class-ai1ec-app-helper.php:737
|
326 |
+
msgid "Select an option in the <strong>Timezone</strong> dropdown list."
|
|
|
|
|
327 |
msgstr ""
|
328 |
|
329 |
+
#: app/helper/class-ai1ec-app-helper.php:739
|
330 |
+
msgid "Click <strong>Update Settings</strong>."
|
|
|
|
|
331 |
msgstr ""
|
332 |
|
333 |
+
#: app/helper/class-ai1ec-app-helper.php:744
|
334 |
msgid ""
|
335 |
"The plugin is installed, but has not been configured. <a href=\"%s\">Click "
|
336 |
"here to set it up now »</a>"
|
337 |
msgstr ""
|
338 |
|
339 |
+
#: app/helper/class-ai1ec-app-helper.php:751
|
340 |
msgid ""
|
341 |
+
"The plugin is installed, but has not been configured. Please log in as an "
|
342 |
+
"Administrator to set it up."
|
343 |
+
msgstr ""
|
344 |
+
|
345 |
+
#: app/helper/class-ai1ec-app-helper.php:756
|
346 |
+
msgid "<p>To set up the plugin:</p>"
|
347 |
msgstr ""
|
348 |
|
349 |
+
#: app/helper/class-ai1ec-app-helper.php:764
|
350 |
+
msgid "All-in-One Calendar Notice"
|
351 |
msgstr ""
|
352 |
|
353 |
+
#: app/helper/class-ai1ec-app-helper.php:781
|
354 |
+
msgid "Event"
|
355 |
+
msgid_plural "Events"
|
356 |
+
msgstr[0] ""
|
357 |
+
msgstr[1] ""
|
358 |
+
|
359 |
+
#: app/helper/class-ai1ec-app-helper.php:793
|
360 |
+
msgid "Event Category"
|
361 |
+
msgid_plural "Event Categories"
|
362 |
+
msgstr[0] ""
|
363 |
+
msgstr[1] ""
|
364 |
+
|
365 |
+
#: app/helper/class-ai1ec-app-helper.php:805
|
366 |
+
msgid "Event Tag"
|
367 |
+
msgid_plural "Event Tags"
|
368 |
+
msgstr[0] ""
|
369 |
+
msgstr[1] ""
|
370 |
+
|
371 |
#. translators: "%s" represents the week's starting date
|
372 |
+
#: app/helper/class-ai1ec-calendar-helper.php:800
|
373 |
+
#: app/helper/class-ai1ec-calendar-helper.php:807
|
374 |
msgid "j F Y"
|
375 |
msgstr ""
|
376 |
|
|
|
377 |
#: app/helper/class-ai1ec-calendar-helper.php:893
|
378 |
+
#: app/helper/class-ai1ec-calendar-helper.php:902
|
379 |
msgid "M j"
|
380 |
msgstr ""
|
381 |
|
382 |
+
#: app/helper/class-ai1ec-calendar-helper.php:934
|
383 |
msgid "« Previous Events"
|
384 |
msgstr ""
|
385 |
|
386 |
+
#: app/helper/class-ai1ec-calendar-helper.php:941
|
387 |
msgid "Next Events »"
|
388 |
msgstr ""
|
389 |
|
478 |
msgstr ""
|
479 |
|
480 |
#: app/helper/class-ai1ec-events-helper.php:607
|
481 |
+
#: app/helper/class-ai1ec-events-helper.php:624
|
482 |
+
#: app/helper/class-ai1ec-events-helper.php:1707
|
483 |
+
#: app/helper/class-ai1ec-settings-helper.php:239
|
484 |
+
#: app/view/admin/box_repeat.php:2
|
485 |
msgid "Daily"
|
486 |
msgstr ""
|
487 |
|
488 |
#: app/helper/class-ai1ec-events-helper.php:608
|
489 |
+
#: app/helper/class-ai1ec-events-helper.php:625
|
490 |
+
#: app/helper/class-ai1ec-events-helper.php:1719
|
491 |
+
#: app/view/admin/box_repeat.php:3
|
492 |
msgid "Weekly"
|
493 |
msgstr ""
|
494 |
|
495 |
#: app/helper/class-ai1ec-events-helper.php:609
|
496 |
+
#: app/helper/class-ai1ec-events-helper.php:626
|
497 |
+
#: app/helper/class-ai1ec-events-helper.php:1731
|
498 |
+
#: app/view/admin/box_repeat.php:4
|
499 |
msgid "Monthly"
|
500 |
msgstr ""
|
501 |
|
502 |
#: app/helper/class-ai1ec-events-helper.php:610
|
503 |
+
#: app/helper/class-ai1ec-events-helper.php:627
|
504 |
+
#: app/helper/class-ai1ec-events-helper.php:1743
|
505 |
+
#: app/view/admin/box_repeat.php:5
|
506 |
msgid "Yearly"
|
507 |
msgstr ""
|
508 |
|
509 |
+
#: app/helper/class-ai1ec-events-helper.php:649
|
510 |
msgid "day(s)"
|
511 |
msgstr ""
|
512 |
|
513 |
+
#: app/helper/class-ai1ec-events-helper.php:678
|
514 |
msgid "week(s)"
|
515 |
msgstr ""
|
516 |
|
517 |
+
#: app/helper/class-ai1ec-events-helper.php:748
|
518 |
msgid "month(s)"
|
519 |
msgstr ""
|
520 |
|
521 |
+
#: app/helper/class-ai1ec-events-helper.php:771
|
522 |
msgid "year(s)"
|
523 |
msgstr ""
|
524 |
|
525 |
+
#: app/helper/class-ai1ec-events-helper.php:1391
|
526 |
msgid "Never"
|
527 |
msgstr ""
|
528 |
|
529 |
+
#: app/helper/class-ai1ec-events-helper.php:1392
|
530 |
msgid "After"
|
531 |
msgstr ""
|
532 |
|
533 |
+
#: app/helper/class-ai1ec-events-helper.php:1393
|
534 |
+
#: app/view/admin/box_repeat.php:28
|
535 |
msgid "On date"
|
536 |
msgstr ""
|
537 |
|
538 |
+
#: app/helper/class-ai1ec-events-helper.php:1586
|
539 |
+
#: app/helper/class-ai1ec-events-helper.php:1595
|
540 |
+
#: app/helper/class-ai1ec-events-helper.php:1603
|
541 |
msgctxt "Recurrence editor - weekly tab"
|
542 |
msgid "on"
|
543 |
msgstr ""
|
544 |
|
545 |
+
#: app/helper/class-ai1ec-events-helper.php:1591
|
546 |
+
#: app/helper/class-ai1ec-events-helper.php:1620
|
547 |
+
#: app/helper/class-ai1ec-events-helper.php:1658
|
548 |
msgid "and"
|
549 |
msgstr ""
|
550 |
|
551 |
+
#: app/helper/class-ai1ec-events-helper.php:1616
|
552 |
+
#: app/helper/class-ai1ec-events-helper.php:1623
|
553 |
+
#: app/helper/class-ai1ec-events-helper.php:1629
|
554 |
+
#: app/helper/class-ai1ec-events-helper.php:1640
|
555 |
msgctxt "Recurrence editor - monthly tab"
|
556 |
msgid "on"
|
557 |
msgstr ""
|
558 |
|
559 |
+
#: app/helper/class-ai1ec-events-helper.php:1616
|
560 |
+
#: app/helper/class-ai1ec-events-helper.php:1623
|
561 |
+
#: app/helper/class-ai1ec-events-helper.php:1629
|
562 |
msgid "of the month"
|
563 |
msgstr ""
|
564 |
|
565 |
+
#: app/helper/class-ai1ec-events-helper.php:1653
|
566 |
+
#: app/helper/class-ai1ec-events-helper.php:1661
|
567 |
+
#: app/helper/class-ai1ec-events-helper.php:1668
|
568 |
msgctxt "Recurrence editor - yearly tab"
|
569 |
msgid "on"
|
570 |
msgstr ""
|
571 |
|
572 |
+
#: app/helper/class-ai1ec-events-helper.php:1710
|
573 |
msgid "Every other day"
|
574 |
msgstr ""
|
575 |
|
576 |
+
#: app/helper/class-ai1ec-events-helper.php:1712
|
577 |
msgid "Every %d days"
|
578 |
msgstr ""
|
579 |
|
580 |
+
#: app/helper/class-ai1ec-events-helper.php:1722
|
581 |
msgid "Every other week"
|
582 |
msgstr ""
|
583 |
|
584 |
+
#: app/helper/class-ai1ec-events-helper.php:1724
|
585 |
msgid "Every %d weeks"
|
586 |
msgstr ""
|
587 |
|
588 |
+
#: app/helper/class-ai1ec-events-helper.php:1734
|
589 |
msgid "Every other month"
|
590 |
msgstr ""
|
591 |
|
592 |
+
#: app/helper/class-ai1ec-events-helper.php:1736
|
593 |
msgid "Every %d months"
|
594 |
msgstr ""
|
595 |
|
596 |
+
#: app/helper/class-ai1ec-events-helper.php:1746
|
597 |
msgid "Every other year"
|
598 |
msgstr ""
|
599 |
|
600 |
+
#: app/helper/class-ai1ec-events-helper.php:1748
|
601 |
msgid "Every %d years"
|
602 |
msgstr ""
|
603 |
|
604 |
+
#: app/helper/class-ai1ec-events-helper.php:1768
|
605 |
msgid "until %s"
|
606 |
msgstr ""
|
607 |
|
608 |
+
#: app/helper/class-ai1ec-events-helper.php:1771
|
609 |
msgid "for %d occurrences"
|
610 |
msgstr ""
|
611 |
|
612 |
+
#: app/helper/class-ai1ec-events-helper.php:1773
|
613 |
msgid "forever"
|
614 |
msgstr ""
|
615 |
|
616 |
+
#: app/helper/class-ai1ec-events-helper.php:1870
|
617 |
msgid "times"
|
618 |
msgstr ""
|
619 |
|
621 |
msgid "- Auto-Create New Page -"
|
622 |
msgstr ""
|
623 |
|
624 |
+
#: app/helper/class-ai1ec-settings-helper.php:106
|
625 |
msgid "View \"%s\" »"
|
626 |
msgstr ""
|
627 |
|
628 |
+
#: app/helper/class-ai1ec-settings-helper.php:206
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
629 |
msgid "Default (d/m/y)"
|
630 |
msgstr ""
|
631 |
|
632 |
+
#: app/helper/class-ai1ec-settings-helper.php:209
|
633 |
msgid "US (m/d/y)"
|
634 |
msgstr ""
|
635 |
|
636 |
+
#: app/helper/class-ai1ec-settings-helper.php:212
|
637 |
msgid "ISO 8601 (y-m-d)"
|
638 |
msgstr ""
|
639 |
|
640 |
+
#: app/helper/class-ai1ec-settings-helper.php:215
|
641 |
msgid "Dotted (m.d.y)"
|
642 |
msgstr ""
|
643 |
|
644 |
+
#: app/helper/class-ai1ec-settings-helper.php:233
|
645 |
msgid "Hourly"
|
646 |
msgstr ""
|
647 |
|
648 |
+
#: app/helper/class-ai1ec-settings-helper.php:236
|
649 |
msgid "Twice Daily"
|
650 |
msgstr ""
|
651 |
|
652 |
+
#: app/model/class-ai1ec-event.php:507
|
|
|
|
|
|
|
|
|
653 |
msgid " (all-day)"
|
654 |
msgstr ""
|
655 |
|
656 |
+
#: app/view/admin/box_advanced_settings.php:3
|
657 |
+
msgid "Contain calendar in this DOM element:"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
658 |
msgstr ""
|
659 |
|
660 |
+
#: app/view/admin/box_advanced_settings.php:5
|
661 |
msgid ""
|
662 |
+
"Optional. Provide a <a href=\"http://api.jquery.com/category/selectors/\" "
|
663 |
+
"target=\"_blank\">jQuery selector</a> that evaluates to a single DOM "
|
664 |
+
"element. Replaces any existing markup found within target. If left empty, "
|
665 |
+
"calendar is shown in normal page content container."
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
666 |
msgstr ""
|
667 |
|
668 |
+
#: app/view/admin/box_event_contact.php:1
|
669 |
msgid "Organizer contact info"
|
670 |
msgstr ""
|
671 |
|
672 |
+
#: app/view/admin/box_event_contact.php:7
|
673 |
msgid "Contact name:"
|
674 |
msgstr ""
|
675 |
|
676 |
+
#: app/view/admin/box_event_contact.php:17
|
677 |
msgid "Phone:"
|
678 |
msgstr ""
|
679 |
|
680 |
+
#: app/view/admin/box_event_contact.php:27
|
681 |
msgid "E-mail:"
|
682 |
msgstr ""
|
683 |
|
684 |
+
#: app/view/admin/box_event_cost.php:1
|
685 |
msgid "Event cost"
|
686 |
msgstr ""
|
687 |
|
688 |
+
#: app/view/admin/box_event_cost.php:7
|
689 |
msgid "Cost"
|
690 |
msgstr ""
|
691 |
|
692 |
+
#: app/view/admin/box_event_location.php:1
|
693 |
msgid "Event location details"
|
694 |
msgstr ""
|
695 |
|
696 |
+
#: app/view/admin/box_event_location.php:8
|
697 |
msgid "Venue name:"
|
698 |
msgstr ""
|
699 |
|
700 |
+
#: app/view/admin/box_event_location.php:18
|
701 |
msgid "Address:"
|
702 |
msgstr ""
|
703 |
|
704 |
+
#: app/view/admin/box_event_location.php:28
|
705 |
msgid "Show Google Map:"
|
706 |
msgstr ""
|
707 |
|
708 |
+
#: app/view/admin/box_eventbrite.php:1
|
709 |
msgid "Eventbrite Ticketing"
|
710 |
msgstr ""
|
711 |
|
712 |
+
#: app/view/admin/box_eventbrite.php:7
|
713 |
msgid "Register this event with Eventbrite.com?"
|
714 |
msgstr ""
|
715 |
|
716 |
+
#: app/view/admin/box_eventbrite.php:12
|
717 |
msgid "Yes"
|
718 |
msgstr ""
|
719 |
|
720 |
+
#: app/view/admin/box_eventbrite.php:14
|
721 |
msgid "No"
|
722 |
msgstr ""
|
723 |
|
724 |
+
#: app/view/admin/box_eventbrite.php:22
|
725 |
msgid "Set up your first ticket"
|
726 |
msgstr ""
|
727 |
|
728 |
+
#: app/view/admin/box_eventbrite.php:24
|
729 |
msgid ""
|
730 |
"To create multiple tickets per event, submit this form, then follow the link "
|
731 |
"to Eventbrite."
|
732 |
msgstr ""
|
733 |
|
734 |
+
#: app/view/admin/box_eventbrite.php:32
|
735 |
msgid "Name"
|
736 |
msgstr ""
|
737 |
|
738 |
+
#: app/view/admin/box_eventbrite.php:42
|
739 |
msgid "Description"
|
740 |
msgstr ""
|
741 |
|
742 |
+
#: app/view/admin/box_eventbrite.php:53
|
743 |
msgid "Type"
|
744 |
msgstr ""
|
745 |
|
746 |
+
#: app/view/admin/box_eventbrite.php:58
|
747 |
msgid "Set Price"
|
748 |
msgstr ""
|
749 |
|
750 |
+
#: app/view/admin/box_eventbrite.php:60
|
751 |
msgid "Donation Based"
|
752 |
msgstr ""
|
753 |
|
754 |
+
#: app/view/admin/box_eventbrite.php:68
|
755 |
msgid ""
|
756 |
"The price for this event's first ticket will be taken from the Cost field "
|
757 |
"above."
|
758 |
msgstr ""
|
759 |
|
760 |
+
#: app/view/admin/box_eventbrite.php:75
|
761 |
msgid "Quantity"
|
762 |
msgstr ""
|
763 |
|
764 |
+
#: app/view/admin/box_eventbrite.php:85
|
765 |
msgid "Include Fee in Price"
|
766 |
msgstr ""
|
767 |
|
768 |
+
#: app/view/admin/box_eventbrite.php:90
|
769 |
msgid "Add Service Fee on top of price"
|
770 |
msgstr ""
|
771 |
|
772 |
+
#: app/view/admin/box_eventbrite.php:92
|
773 |
msgid "Include Service fee in price"
|
774 |
msgstr ""
|
775 |
|
776 |
+
#: app/view/admin/box_eventbrite.php:98
|
777 |
msgid "Payment Options"
|
778 |
msgstr ""
|
779 |
|
780 |
+
#: app/view/admin/box_eventbrite.php:103
|
781 |
msgid "Paypal"
|
782 |
msgstr ""
|
783 |
|
784 |
+
#: app/view/admin/box_eventbrite.php:105
|
785 |
msgid "Google Checkout"
|
786 |
msgstr ""
|
787 |
|
788 |
+
#: app/view/admin/box_eventbrite.php:107
|
789 |
msgid "Check"
|
790 |
msgstr ""
|
791 |
|
792 |
+
#: app/view/admin/box_eventbrite.php:109
|
793 |
msgid "Cash"
|
794 |
msgstr ""
|
795 |
|
796 |
+
#: app/view/admin/box_eventbrite.php:111
|
797 |
msgid "Send an Invoice"
|
798 |
msgstr ""
|
799 |
|
800 |
+
#: app/view/admin/box_feeds.php:2
|
801 |
+
msgid ""
|
802 |
+
"Configure which other calendars your own calendar subscribes to.\n"
|
803 |
+
" You can add any calendar that provides an iCalendar (.ics) feed.\n"
|
804 |
+
" Enter the feed URL(s) below and the events from those feeds will be\n"
|
805 |
+
" imported periodically."
|
806 |
msgstr ""
|
807 |
|
808 |
+
#: app/view/admin/box_feeds.php:13
|
809 |
+
msgid "Check for new events"
|
810 |
msgstr ""
|
811 |
|
812 |
+
#: app/view/admin/box_feeds.php:19 app/view/admin/feed_row.php:3
|
813 |
+
msgid "iCalendar/.ics Feed URL:"
|
814 |
msgstr ""
|
815 |
|
816 |
+
#: app/view/admin/box_feeds.php:23
|
817 |
+
msgid "Event category"
|
818 |
msgstr ""
|
819 |
|
820 |
+
#: app/view/admin/box_feeds.php:29 app/view/admin/feed_row.php:15
|
821 |
+
msgid "Tag with"
|
822 |
msgstr ""
|
823 |
|
824 |
+
#: app/view/admin/box_feeds.php:33
|
825 |
+
msgid "+ Add new subscription"
|
826 |
+
msgstr ""
|
827 |
+
|
828 |
+
#: app/view/admin/box_general_settings.php:3
|
829 |
+
msgid "Viewing Events"
|
830 |
+
msgstr ""
|
831 |
+
|
832 |
+
#: app/view/admin/box_general_settings.php:5
|
833 |
+
msgid "Calendar page:"
|
834 |
+
msgstr ""
|
835 |
+
|
836 |
+
#: app/view/admin/box_general_settings.php:9
|
837 |
+
msgid "Default calendar view:"
|
838 |
+
msgstr ""
|
839 |
+
|
840 |
+
#: app/view/admin/box_general_settings.php:14
|
841 |
+
msgid "Timezone:"
|
842 |
msgstr ""
|
843 |
|
844 |
+
#: app/view/admin/box_general_settings.php:19
|
845 |
msgid "Week starts on"
|
846 |
msgstr ""
|
847 |
|
848 |
+
#: app/view/admin/box_general_settings.php:23
|
849 |
msgid "Agenda pages show at most"
|
850 |
msgstr ""
|
851 |
|
852 |
+
#: app/view/admin/box_general_settings.php:24
|
853 |
msgid "events"
|
854 |
msgstr ""
|
855 |
|
856 |
+
#: app/view/admin/box_general_settings.php:29
|
857 |
msgid "Keep all events <strong>expanded</strong> in the agenda view"
|
858 |
msgstr ""
|
859 |
|
860 |
+
#: app/view/admin/box_general_settings.php:35
|
861 |
msgid "<strong>Exclude</strong> events from search results"
|
862 |
msgstr ""
|
863 |
|
864 |
+
#: app/view/admin/box_general_settings.php:41
|
865 |
msgid ""
|
866 |
"Show <strong>Post Your Event</strong> button above the calendar to "
|
867 |
"privileged users"
|
868 |
msgstr ""
|
869 |
|
870 |
+
#: app/view/admin/box_general_settings.php:47
|
871 |
msgid ""
|
872 |
"Hide <strong>Subscribe</strong>/<strong>Add to Calendar</strong> buttons in "
|
873 |
"calendar and single event views"
|
874 |
msgstr ""
|
875 |
|
876 |
+
#: app/view/admin/box_general_settings.php:53
|
877 |
msgid "Hide <strong>Google Maps</strong> until clicked"
|
878 |
msgstr ""
|
879 |
|
880 |
+
#: app/view/admin/box_general_settings.php:59
|
|
|
|
|
|
|
|
|
|
|
|
|
881 |
msgid "Include <strong>event categories</strong> in post category lists"
|
882 |
msgstr ""
|
883 |
|
884 |
+
#: app/view/admin/box_general_settings.php:63
|
885 |
msgid "Adding/Editing Events"
|
886 |
msgstr ""
|
887 |
|
888 |
+
#: app/view/admin/box_general_settings.php:65
|
889 |
msgid "Input dates in this format:"
|
890 |
msgstr ""
|
891 |
|
892 |
+
#: app/view/admin/box_general_settings.php:71
|
893 |
msgid "Use <strong>24h time</strong> in time pickers"
|
894 |
msgstr ""
|
895 |
|
896 |
+
#: app/view/admin/box_general_settings.php:77
|
897 |
+
msgid "<strong>Disable address autocomplete</strong> function"
|
898 |
msgstr ""
|
899 |
|
900 |
+
#: app/view/admin/box_general_settings.php:83
|
901 |
+
msgid ""
|
902 |
+
"Use the configured <strong>region</strong> (WordPress locale) to bias the "
|
903 |
+
"address autocomplete function"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
904 |
msgstr ""
|
905 |
|
906 |
+
#: app/view/admin/box_general_settings.php:89
|
907 |
+
msgid "Display <strong>Publish</strong> at bottom of Edit Event form"
|
908 |
msgstr ""
|
909 |
|
910 |
+
#: app/view/admin/box_general_settings.php:93
|
911 |
+
msgid "Sharing Data"
|
912 |
msgstr ""
|
913 |
|
914 |
+
#: app/view/admin/box_general_settings.php:97
|
915 |
+
msgid "Allow The Seed to collect calendar statistics"
|
916 |
msgstr ""
|
917 |
|
918 |
+
#: app/view/admin/box_repeat.php:14
|
919 |
msgid "End"
|
920 |
msgstr ""
|
921 |
|
922 |
+
#: app/view/admin/box_repeat.php:21
|
923 |
msgid "Ending after"
|
924 |
msgstr ""
|
925 |
|
926 |
+
#: app/view/admin/box_repeat.php:36
|
927 |
msgid "Apply"
|
928 |
msgstr ""
|
929 |
|
930 |
+
#: app/view/admin/box_repeat.php:37
|
931 |
msgid "Cancel"
|
932 |
msgstr ""
|
933 |
|
934 |
+
#: app/view/admin/box_the_seed_studio.php:3
|
935 |
+
msgid "then.ly"
|
|
|
|
|
936 |
msgstr ""
|
937 |
|
938 |
+
#: app/view/admin/box_the_seed_studio.php:7
|
939 |
msgid ""
|
940 |
+
"Then.ly’s All-in-One Calendar is a revolutionary new way to find and share "
|
941 |
+
"events."
|
942 |
msgstr ""
|
943 |
|
944 |
+
#: app/view/admin/box_the_seed_studio.php:16
|
945 |
+
msgid "Follow @then_ly"
|
946 |
msgstr ""
|
947 |
|
948 |
+
#: app/view/admin/box_the_seed_studio.php:22
|
949 |
+
msgid ""
|
950 |
+
"Upgrade to the free Premium version and get access to exclusive features "
|
951 |
+
"such as:"
|
952 |
msgstr ""
|
953 |
|
954 |
+
#: app/view/admin/box_the_seed_studio.php:29
|
955 |
+
msgid "Calendar Themes"
|
956 |
msgstr ""
|
957 |
|
958 |
+
#: app/view/admin/box_the_seed_studio.php:30
|
959 |
+
msgid "Duplicate Events"
|
960 |
msgstr ""
|
961 |
|
962 |
+
#: app/view/admin/box_the_seed_studio.php:35
|
963 |
+
msgid "Location by Latitude/Longitude"
|
|
|
|
|
|
|
964 |
msgstr ""
|
965 |
|
966 |
+
#: app/view/admin/box_the_seed_studio.php:36
|
967 |
+
msgid "... and more!"
|
|
|
|
|
968 |
msgstr ""
|
969 |
|
970 |
+
#: app/view/admin/box_the_seed_studio.php:43
|
971 |
+
msgid "Upgrade to Premium for Free"
|
972 |
msgstr ""
|
973 |
|
974 |
+
#: app/view/admin/box_the_seed_studio.php:48
|
975 |
msgid ""
|
976 |
+
"Then.ly is dedicated to creating the best calendar software in the world."
|
|
|
977 |
msgstr ""
|
978 |
|
979 |
+
#: app/view/admin/box_the_seed_studio.php:52
|
980 |
msgid ""
|
981 |
+
"Please let us know if anything is not working the way you expect. While many "
|
982 |
+
"problems are caused by conflicts with other plugins, most problems can be "
|
983 |
+
"solved quickly. Visit our <a href=\"http://help.then.ly/\" target=\"_blank"
|
984 |
+
"\">Help Desk</a> to report bugs, request features, or learn how to get the "
|
985 |
+
"most out of this plugin."
|
|
|
|
|
986 |
msgstr ""
|
987 |
|
988 |
+
#: app/view/admin/box_the_seed_studio.php:56
|
989 |
+
msgid "Get Support"
|
990 |
msgstr ""
|
991 |
|
992 |
+
#: app/view/admin/box_time_and_date.php:2
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
993 |
msgid "Event date and time"
|
994 |
msgstr ""
|
995 |
|
996 |
+
#: app/view/admin/box_time_and_date.php:8
|
997 |
msgid "All-day event"
|
998 |
msgstr ""
|
999 |
|
1000 |
+
#: app/view/admin/box_time_and_date.php:18
|
1001 |
msgid "Start date / time"
|
1002 |
msgstr ""
|
1003 |
|
1004 |
+
#: app/view/admin/box_time_and_date.php:31
|
1005 |
msgid "End date / time"
|
1006 |
msgstr ""
|
1007 |
|
1008 |
+
#: app/view/admin/box_time_and_date.php:46
|
1009 |
msgid "Repeat"
|
1010 |
msgstr ""
|
1011 |
|
1012 |
+
#: app/view/admin/box_time_and_date.php:60
|
1013 |
msgid "Exclude"
|
1014 |
msgstr ""
|
1015 |
|
1016 |
+
#: app/view/admin/box_time_and_date.php:67
|
1017 |
msgid "Choose a rule for exclusion"
|
1018 |
msgstr ""
|
1019 |
|
1020 |
+
#: app/view/admin/box_time_and_date.php:73
|
1021 |
msgid "Exclude dates"
|
1022 |
msgstr ""
|
1023 |
|
1024 |
+
#: app/view/admin/box_time_and_date.php:80
|
1025 |
msgid "Select date range"
|
1026 |
msgstr ""
|
1027 |
|
1028 |
+
#: app/view/admin/box_time_and_date.php:85
|
1029 |
msgid "Choose specific dates to exclude"
|
1030 |
msgstr ""
|
1031 |
|
1032 |
+
#: app/view/admin/calendar_tasks.php:3
|
1033 |
+
msgid "Welcome"
|
1034 |
msgstr ""
|
1035 |
|
1036 |
+
#: app/view/admin/calendar_tasks.php:4
|
1037 |
+
msgid ""
|
1038 |
+
"to the All-in-One Calendar by <a href=\"http://then.ly/\" target=\"_blank"
|
1039 |
+
"\">Then.ly</a>"
|
1040 |
msgstr ""
|
1041 |
|
1042 |
+
#: app/view/admin/calendar_tasks.php:13 themes-ai1ec/vortex/calendar.php:30
|
1043 |
+
msgid "Post Your Event"
|
1044 |
msgstr ""
|
1045 |
|
1046 |
+
#: app/view/admin/calendar_tasks.php:16
|
1047 |
+
msgid "Add a new event to the calendar."
|
1048 |
msgstr ""
|
1049 |
|
1050 |
+
#: app/view/admin/calendar_tasks.php:24
|
1051 |
+
msgid "Manage Events"
|
1052 |
msgstr ""
|
1053 |
|
1054 |
+
#: app/view/admin/calendar_tasks.php:27
|
1055 |
+
msgid "View and edit all your events."
|
1056 |
msgstr ""
|
1057 |
|
1058 |
+
#: app/view/admin/calendar_tasks.php:39
|
1059 |
+
msgid "Manage Event Categories"
|
1060 |
msgstr ""
|
1061 |
|
1062 |
+
#: app/view/admin/calendar_tasks.php:42
|
1063 |
+
msgid "Organize and color-code your events."
|
1064 |
+
msgstr ""
|
1065 |
+
|
1066 |
+
#: app/view/admin/calendar_tasks.php:50
|
1067 |
+
msgid "Choose Your Theme"
|
1068 |
+
msgstr ""
|
1069 |
+
|
1070 |
+
#: app/view/admin/calendar_tasks.php:53
|
1071 |
+
msgid "Change the look and feel."
|
1072 |
+
msgstr ""
|
1073 |
+
|
1074 |
+
#: app/view/admin/calendar_tasks.php:63
|
1075 |
+
msgid "Manage Calendar Feeds"
|
1076 |
+
msgstr ""
|
1077 |
+
|
1078 |
+
#: app/view/admin/calendar_tasks.php:66
|
1079 |
+
msgid "Subscribe to other calendars."
|
1080 |
+
msgstr ""
|
1081 |
+
|
1082 |
+
#: app/view/admin/calendar_tasks.php:74
|
1083 |
+
msgid "Edit Calendar Settings"
|
1084 |
msgstr ""
|
1085 |
|
1086 |
+
#: app/view/admin/calendar_tasks.php:77
|
1087 |
+
msgid "Make this calendar your own."
|
1088 |
+
msgstr ""
|
1089 |
+
|
1090 |
+
#: app/view/admin/class-ai1ec-agenda-widget.php:15
|
1091 |
+
#: app/view/admin/class-ai1ec-agenda-widget.php:36
|
1092 |
msgid "Upcoming Events"
|
1093 |
msgstr ""
|
1094 |
|
1095 |
+
#: app/view/admin/class-ai1ec-agenda-widget.php:17
|
1096 |
+
msgid "All-in-One Calendar: Lists upcoming events in Agenda view"
|
1097 |
msgstr ""
|
1098 |
|
1099 |
+
#: app/view/admin/event_categories-color_picker.php:5
|
1100 |
+
#: app/view/admin/event_categories-color_picker.php:19
|
1101 |
+
msgid "Category Color"
|
1102 |
msgstr ""
|
1103 |
|
1104 |
+
#: app/view/admin/event_categories-color_picker.php:13
|
1105 |
+
#: app/view/admin/event_categories-color_picker.php:25
|
1106 |
+
msgid "Events in this category will be identified by this color"
|
1107 |
msgstr ""
|
1108 |
|
1109 |
+
#: app/view/admin/feed_row.php:9
|
1110 |
+
msgid "Event category:"
|
1111 |
msgstr ""
|
1112 |
|
1113 |
+
#: app/view/admin/feed_row.php:19
|
1114 |
+
msgid "× Delete"
|
1115 |
msgstr ""
|
1116 |
|
1117 |
+
#: app/view/admin/import.php:6
|
1118 |
+
msgid "Successfully imported events:"
|
1119 |
msgstr ""
|
1120 |
|
1121 |
+
#: app/view/admin/row_daily.php:3 app/view/admin/row_monthly.php:3
|
1122 |
+
#: app/view/admin/row_monthly.php:22 app/view/admin/row_weekly.php:3
|
1123 |
+
#: app/view/admin/row_yearly.php:3
|
1124 |
+
msgid "Every"
|
1125 |
msgstr ""
|
1126 |
|
1127 |
+
#: app/view/admin/row_monthly.php:9
|
1128 |
+
msgid "On day of the month"
|
1129 |
msgstr ""
|
1130 |
|
1131 |
+
#: app/view/admin/row_monthly.php:13
|
1132 |
+
msgid "On day of the week"
|
1133 |
msgstr ""
|
1134 |
|
1135 |
+
#: app/view/admin/row_weekly.php:6
|
1136 |
+
msgctxt "Recurrence editor - weekly tab"
|
1137 |
+
msgid "On"
|
1138 |
+
msgstr ""
|
1139 |
+
|
1140 |
+
#: app/view/admin/row_yearly.php:7
|
1141 |
+
msgctxt "Recurrence editor - yearly tab"
|
1142 |
+
msgid "In"
|
1143 |
+
msgstr ""
|
1144 |
+
|
1145 |
+
#: app/view/admin/settings.php:16
|
1146 |
+
msgid "Update Settings"
|
1147 |
+
msgstr ""
|
1148 |
+
|
1149 |
+
#: lib/class-ai1ec-updater.php:12
|
1150 |
+
msgid "The plugin is at the latest version."
|
1151 |
+
msgstr ""
|
1152 |
+
|
1153 |
+
#: lib/class-ai1ec-updater.php:13
|
1154 |
+
msgid "Update package not available."
|
1155 |
+
msgstr ""
|
1156 |
+
|
1157 |
+
#: lib/class-ai1ec-updater.php:14
|
1158 |
+
msgid "Downloading update from <span class=\"code\">%s</span>…"
|
1159 |
+
msgstr ""
|
1160 |
+
|
1161 |
+
#: lib/class-ai1ec-updater.php:15
|
1162 |
+
msgid "Unpacking the update…"
|
1163 |
+
msgstr ""
|
1164 |
+
|
1165 |
+
#: lib/class-ai1ec-updater.php:16
|
1166 |
+
msgid "Deactivating the plugin…"
|
1167 |
+
msgstr ""
|
1168 |
+
|
1169 |
+
#: lib/class-ai1ec-updater.php:17
|
1170 |
+
msgid "Removing the old version of the plugin…"
|
1171 |
+
msgstr ""
|
1172 |
+
|
1173 |
+
#: lib/class-ai1ec-updater.php:18
|
1174 |
+
msgid "Could not remove the old plugin."
|
1175 |
msgstr ""
|
1176 |
|
1177 |
+
#: lib/class-ai1ec-updater.php:19
|
1178 |
+
msgid "Plugin update failed."
|
1179 |
+
msgstr ""
|
1180 |
+
|
1181 |
+
#: lib/class-ai1ec-updater.php:20
|
1182 |
+
msgid "Plugin updated successfully."
|
1183 |
+
msgstr ""
|
1184 |
+
|
1185 |
+
#: themes-ai1ec/vortex/agenda-widget.php:11
|
1186 |
+
msgid "There are no upcoming events."
|
1187 |
+
msgstr ""
|
1188 |
+
|
1189 |
+
#: themes-ai1ec/vortex/agenda-widget.php:60
|
1190 |
+
msgid "View Calendar"
|
1191 |
+
msgstr ""
|
1192 |
+
|
1193 |
+
#: themes-ai1ec/vortex/agenda-widget.php:69
|
1194 |
+
#: themes-ai1ec/vortex/calendar.php:114
|
1195 |
msgid ""
|
1196 |
+
"Subscribe to this calendar using your favourite calendar program (iCal, "
|
1197 |
+
"Outlook, etc.)"
|
1198 |
msgstr ""
|
1199 |
|
1200 |
+
#: themes-ai1ec/vortex/agenda-widget.php:70
|
1201 |
+
#: themes-ai1ec/vortex/calendar.php:115
|
1202 |
+
msgid "✔ Subscribe"
|
1203 |
msgstr ""
|
1204 |
|
1205 |
+
#: themes-ai1ec/vortex/agenda-widget.php:74
|
1206 |
+
#: themes-ai1ec/vortex/calendar.php:120
|
1207 |
+
msgid "Subscribe to this calendar in your Google Calendar"
|
1208 |
msgstr ""
|
1209 |
|
1210 |
+
#: themes-ai1ec/vortex/agenda-widget.php:76
|
1211 |
+
msgid "Add to Google"
|
1212 |
msgstr ""
|
1213 |
|
1214 |
+
#: themes-ai1ec/vortex/agenda.php:6 themes-ai1ec/vortex/month.php:6
|
1215 |
+
#: themes-ai1ec/vortex/oneday.php:7 themes-ai1ec/vortex/week.php:6
|
1216 |
+
msgid "Today"
|
1217 |
msgstr ""
|
1218 |
|
1219 |
+
#: themes-ai1ec/vortex/agenda.php:12
|
1220 |
+
msgid "Expand All"
|
1221 |
msgstr ""
|
1222 |
|
1223 |
+
#: themes-ai1ec/vortex/agenda.php:15
|
1224 |
+
msgid "Collapse All"
|
1225 |
msgstr ""
|
1226 |
|
1227 |
+
#: themes-ai1ec/vortex/agenda.php:32
|
1228 |
+
msgid "There are no upcoming events to display at this time."
|
1229 |
msgstr ""
|
1230 |
|
1231 |
+
#: themes-ai1ec/vortex/agenda.php:62 themes-ai1ec/vortex/agenda.php:112
|
1232 |
+
#: themes-ai1ec/vortex/month.php:81 themes-ai1ec/vortex/oneday.php:71
|
1233 |
+
#: themes-ai1ec/vortex/week.php:70
|
1234 |
+
msgid "(all-day)"
|
1235 |
msgstr ""
|
1236 |
|
1237 |
+
#: themes-ai1ec/vortex/agenda.php:80
|
1238 |
+
msgid "Read more"
|
|
|
1239 |
msgstr ""
|
1240 |
|
1241 |
+
#: themes-ai1ec/vortex/agenda.php:84 themes-ai1ec/vortex/event-multi.php:45
|
1242 |
+
#: themes-ai1ec/vortex/event-single.php:57
|
1243 |
+
msgid "Categories:"
|
1244 |
msgstr ""
|
1245 |
|
1246 |
+
#: themes-ai1ec/vortex/agenda.php:90 themes-ai1ec/vortex/event-multi.php:51
|
1247 |
+
#: themes-ai1ec/vortex/event-single.php:64
|
1248 |
+
msgid "Tags:"
|
1249 |
msgstr ""
|
1250 |
|
1251 |
+
#: themes-ai1ec/vortex/calendar.php:38
|
1252 |
+
msgid "Clear Filters"
|
1253 |
msgstr ""
|
1254 |
|
1255 |
+
#: themes-ai1ec/vortex/calendar.php:39
|
1256 |
+
msgid "Filter:"
|
|
|
1257 |
msgstr ""
|
1258 |
|
1259 |
+
#: themes-ai1ec/vortex/calendar.php:46
|
1260 |
+
msgid "Categories"
|
|
|
1261 |
msgstr ""
|
1262 |
|
1263 |
+
#: themes-ai1ec/vortex/calendar.php:72
|
1264 |
+
msgid "Tags"
|
1265 |
msgstr ""
|
1266 |
|
1267 |
+
#: themes-ai1ec/vortex/calendar.php:116
|
1268 |
+
msgid "to this filtered calendar"
|
|
|
|
|
1269 |
msgstr ""
|
1270 |
|
1271 |
+
#: themes-ai1ec/vortex/calendar.php:122
|
1272 |
+
msgid "Subscribe in Google Calendar"
|
1273 |
msgstr ""
|
1274 |
|
1275 |
+
#: themes-ai1ec/vortex/event-excerpt.php:2
|
1276 |
+
#: themes-ai1ec/vortex/event-multi.php:4
|
1277 |
+
#: themes-ai1ec/vortex/event-single.php:5
|
1278 |
+
msgid "When:"
|
1279 |
msgstr ""
|
1280 |
|
1281 |
+
#: themes-ai1ec/vortex/event-excerpt.php:4
|
1282 |
+
#: themes-ai1ec/vortex/event-multi.php:20
|
1283 |
+
#: themes-ai1ec/vortex/event-single.php:25
|
1284 |
+
msgid "Where:"
|
1285 |
msgstr ""
|
1286 |
|
1287 |
+
#: themes-ai1ec/vortex/event-map.php:2
|
1288 |
+
msgid "Click to view map"
|
|
|
1289 |
msgstr ""
|
1290 |
|
1291 |
+
#: themes-ai1ec/vortex/event-map.php:9
|
1292 |
+
msgid "View Full-Size Map"
|
1293 |
msgstr ""
|
1294 |
|
1295 |
+
#: themes-ai1ec/vortex/event-multi.php:7
|
1296 |
+
msgid "View in Calendar »"
|
1297 |
+
msgstr ""
|
1298 |
+
|
1299 |
+
#: themes-ai1ec/vortex/event-multi.php:14
|
1300 |
+
#: themes-ai1ec/vortex/event-single.php:15
|
1301 |
+
msgid "Repeats:"
|
1302 |
+
msgstr ""
|
1303 |
+
|
1304 |
+
#: themes-ai1ec/vortex/event-multi.php:24
|
1305 |
+
msgid "View Map »"
|
1306 |
+
msgstr ""
|
1307 |
+
|
1308 |
+
#: themes-ai1ec/vortex/event-multi.php:33
|
1309 |
+
#: themes-ai1ec/vortex/event-single.php:45
|
1310 |
+
msgid "Cost:"
|
1311 |
+
msgstr ""
|
1312 |
+
|
1313 |
+
#: themes-ai1ec/vortex/event-multi.php:39
|
1314 |
+
#: themes-ai1ec/vortex/event-single.php:51
|
1315 |
+
msgid "Contact:"
|
1316 |
+
msgstr ""
|
1317 |
+
|
1318 |
+
#: themes-ai1ec/vortex/event-single-footer.php:4
|
1319 |
+
msgid ""
|
1320 |
+
"This post was replicated from another site's <a class=\"ai1ec-ics-icon\" "
|
1321 |
+
"href=\"%s\" title=\"iCalendar feed\">calendar feed</a>."
|
1322 |
+
msgstr ""
|
1323 |
+
|
1324 |
+
#: themes-ai1ec/vortex/event-single-footer.php:8
|
1325 |
+
msgid "View original post"
|
1326 |
+
msgstr ""
|
1327 |
+
|
1328 |
+
#: themes-ai1ec/vortex/event-single.php:8
|
1329 |
+
msgid "Back to Calendar"
|
1330 |
+
msgstr ""
|
1331 |
+
|
1332 |
+
#: themes-ai1ec/vortex/event-single.php:21
|
1333 |
+
msgid "Excluding:"
|
1334 |
+
msgstr ""
|
1335 |
+
|
1336 |
+
#: themes-ai1ec/vortex/event-single.php:32
|
1337 |
+
msgid "Add this event to your favourite calendar program (iCal, Outlook, etc.)"
|
1338 |
+
msgstr ""
|
1339 |
+
|
1340 |
+
#: themes-ai1ec/vortex/event-single.php:33
|
1341 |
+
msgid "✔ Add to Calendar"
|
1342 |
+
msgstr ""
|
1343 |
+
|
1344 |
+
#: themes-ai1ec/vortex/event-single.php:36
|
1345 |
+
msgid "Add this event to your Google Calendar"
|
1346 |
+
msgstr ""
|
1347 |
+
|
1348 |
+
#: themes-ai1ec/vortex/event-single.php:38
|
1349 |
+
msgid "Add to Google Calendar"
|
1350 |
+
msgstr ""
|
1351 |
+
|
1352 |
+
#: themes-ai1ec/vortex/month.php:63 themes-ai1ec/vortex/oneday.php:57
|
1353 |
+
#: themes-ai1ec/vortex/oneday.php:140 themes-ai1ec/vortex/week.php:56
|
1354 |
+
#: themes-ai1ec/vortex/week.php:142
|
1355 |
+
msgid "Summary:"
|
1356 |
+
msgstr ""
|
1357 |
+
|
1358 |
+
#: themes-ai1ec/vortex/month.php:66 themes-ai1ec/vortex/oneday.php:60
|
1359 |
+
#: themes-ai1ec/vortex/oneday.php:143 themes-ai1ec/vortex/week.php:59
|
1360 |
+
#: themes-ai1ec/vortex/week.php:145
|
1361 |
+
msgid "click anywhere for details"
|
1362 |
+
msgstr ""
|
1363 |
+
|
1364 |
+
#: themes-ai1ec/vortex/oneday.php:35 themes-ai1ec/vortex/week.php:34
|
1365 |
+
msgid "All-day"
|
1366 |
msgstr ""
|
1367 |
|
1368 |
#. Plugin Name of the plugin/theme
|
1369 |
+
msgid "All-in-One Calendar by Then.ly"
|
1370 |
msgstr ""
|
1371 |
|
1372 |
+
#. #-#-#-#-# plugin.pot (All-in-One Calendar by Then.ly 1.6) #-#-#-#-#
|
1373 |
#. Plugin URI of the plugin/theme
|
1374 |
+
#. #-#-#-#-# plugin.pot (All-in-One Calendar by Then.ly 1.6) #-#-#-#-#
|
1375 |
+
#. Author URI of the plugin/theme
|
1376 |
+
msgid "http://then.ly/"
|
1377 |
msgstr ""
|
1378 |
|
1379 |
#. Description of the plugin/theme
|
1380 |
msgid ""
|
1381 |
+
"A calendar system with month, week, day, agenda views, upcoming events "
|
1382 |
"widget, color-coded categories, recurrence, and import/export of .ics feeds."
|
1383 |
msgstr ""
|
1384 |
|
1385 |
+
#. Author of the plugin/theme
|
1386 |
+
msgid "Then.ly"
|
1387 |
msgstr ""
|
lib/class-ai1ec-updater.php
ADDED
@@ -0,0 +1,103 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
//
|
3 |
+
// class-ai1ec-updater.php
|
4 |
+
// all-in-one-event-calendar
|
5 |
+
//
|
6 |
+
// Created by The Seed Studio on 2012-05-09.
|
7 |
+
//
|
8 |
+
include_once ABSPATH . 'wp-admin/includes/class-wp-upgrader.php';
|
9 |
+
|
10 |
+
class Ai1ec_Updater extends WP_Upgrader {
|
11 |
+
function upgrade_strings() {
|
12 |
+
$this->strings['up_to_date'] = __('The plugin is at the latest version.');
|
13 |
+
$this->strings['no_package'] = __('Update package not available.');
|
14 |
+
$this->strings['downloading_package'] = __('Downloading update from <span class="code">%s</span>…');
|
15 |
+
$this->strings['unpack_package'] = __('Unpacking the update…');
|
16 |
+
$this->strings['deactivate_plugin'] = __('Deactivating the plugin…');
|
17 |
+
$this->strings['remove_old'] = __('Removing the old version of the plugin…');
|
18 |
+
$this->strings['remove_old_failed'] = __('Could not remove the old plugin.');
|
19 |
+
$this->strings['process_failed'] = __('Plugin update failed.');
|
20 |
+
$this->strings['process_success'] = __('Plugin updated successfully.');
|
21 |
+
}
|
22 |
+
function upgrade( $plugin ) {
|
23 |
+
|
24 |
+
$this->init();
|
25 |
+
$this->upgrade_strings();
|
26 |
+
|
27 |
+
add_filter('upgrader_pre_install', array(&$this, 'deactivate_plugin_before_upgrade'), 10, 2);
|
28 |
+
add_filter('upgrader_clear_destination', array(&$this, 'delete_old_plugin'), 10, 4);
|
29 |
+
|
30 |
+
$this->run(
|
31 |
+
array(
|
32 |
+
'package' => 'http://then.ly/assets/thenly-all-in-one-calendar-1.6.zip',
|
33 |
+
'destination' => WP_PLUGIN_DIR,
|
34 |
+
'clear_destination' => true,
|
35 |
+
'clear_working' => true,
|
36 |
+
'hook_extra' => array(
|
37 |
+
'plugin' => $plugin
|
38 |
+
)
|
39 |
+
)
|
40 |
+
);
|
41 |
+
|
42 |
+
// Cleanup our hooks, in case something else does a upgrade on this connection.
|
43 |
+
remove_filter( 'upgrader_pre_install', array( &$this, 'deactivate_plugin_before_upgrade' ) );
|
44 |
+
remove_filter( 'upgrader_clear_destination', array( &$this, 'delete_old_plugin') );
|
45 |
+
|
46 |
+
if( ! $this->result || is_wp_error( $this->result ) )
|
47 |
+
return $this->result;
|
48 |
+
|
49 |
+
// Force refresh of plugin update information
|
50 |
+
delete_site_transient( 'update_plugins' );
|
51 |
+
}
|
52 |
+
|
53 |
+
//Hooked to pre_install
|
54 |
+
function deactivate_plugin_before_upgrade( $return, $plugin ) {
|
55 |
+
|
56 |
+
if( is_wp_error( $return ) ) //Bypass.
|
57 |
+
return $return;
|
58 |
+
|
59 |
+
$plugin = isset( $plugin['plugin'] ) ? $plugin['plugin'] : '';
|
60 |
+
if( empty( $plugin ) )
|
61 |
+
return new WP_Error( 'bad_request', $this->strings['bad_request'] );
|
62 |
+
|
63 |
+
if( is_plugin_active( $plugin ) ) {
|
64 |
+
$this->skin->feedback( 'deactivate_plugin' );
|
65 |
+
//Deactivate the plugin silently, Prevent deactivation hooks from running.
|
66 |
+
deactivate_plugins( $plugin, true );
|
67 |
+
}
|
68 |
+
}
|
69 |
+
|
70 |
+
//Hooked to upgrade_clear_destination
|
71 |
+
function delete_old_plugin( $removed, $local_destination, $remote_destination, $plugin ) {
|
72 |
+
global $wp_filesystem;
|
73 |
+
|
74 |
+
if( is_wp_error( $removed ) )
|
75 |
+
return $removed; //Pass errors through.
|
76 |
+
|
77 |
+
$plugin = isset( $plugin['plugin'] ) ? $plugin['plugin'] : '';
|
78 |
+
if( empty( $plugin ) )
|
79 |
+
return new WP_Error( 'bad_request', $this->strings['bad_request'] );
|
80 |
+
|
81 |
+
$plugins_dir = $wp_filesystem->wp_plugins_dir();
|
82 |
+
$this_plugin_dir = trailingslashit( dirname( $plugins_dir . $plugin ) );
|
83 |
+
|
84 |
+
$ai1ec_themes = trailingslashit( AI1EC_THEMES_ROOT );
|
85 |
+
if( $wp_filesystem->exists( $ai1ec_themes ) ) {
|
86 |
+
$wp_filesystem->delete( $ai1ec_themes, true );
|
87 |
+
}
|
88 |
+
|
89 |
+
if( ! $wp_filesystem->exists( $this_plugin_dir ) ) //If its already vanished.
|
90 |
+
return $removed;
|
91 |
+
|
92 |
+
// If plugin is in its own directory, recursively delete the directory.
|
93 |
+
if( strpos( $plugin, '/') && $this_plugin_dir != $plugins_dir ) //base check on if plugin includes directory separator AND that its not the root plugin folder
|
94 |
+
$deleted = $wp_filesystem->delete( $this_plugin_dir, true );
|
95 |
+
else
|
96 |
+
$deleted = $wp_filesystem->delete( $plugins_dir . $plugin );
|
97 |
+
|
98 |
+
if( ! $deleted )
|
99 |
+
return new WP_Error( 'remove_old_failed', $this->strings['remove_old_failed'] );
|
100 |
+
|
101 |
+
return true;
|
102 |
+
}
|
103 |
+
}
|
lib/global-functions.php
CHANGED
@@ -17,37 +17,19 @@ function url_get_contents( $url ) {
|
|
17 |
// holds the output
|
18 |
$output = "";
|
19 |
|
20 |
-
//
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
-
|
26 |
-
|
27 |
-
//
|
28 |
-
|
29 |
-
curl_setopt ($c, CURLOPT_ENCODING, '' );
|
30 |
-
|
31 |
-
// Add support for HTTPS
|
32 |
-
if( strstr( $url, 'https' ) !== FALSE ) {
|
33 |
-
curl_setopt( $c, CURLOPT_SSLVERSION, 3 );
|
34 |
-
curl_setopt( $c, CURLOPT_SSL_VERIFYPEER, false );
|
35 |
-
curl_setopt( $c, CURLOPT_SSL_VERIFYHOST, 2 );
|
36 |
-
}
|
37 |
-
curl_setopt( $c, CURLOPT_COOKIESESSION, true );
|
38 |
-
curl_setopt( $c, CURLOPT_HEADER, false );
|
39 |
-
if( ! ini_get( 'safe_mode' ) ) {
|
40 |
-
curl_setopt( $c, CURLOPT_FOLLOWLOCATION, true );
|
41 |
-
}
|
42 |
-
// get the contents of the url
|
43 |
-
$output = curl_exec( $c );
|
44 |
-
|
45 |
-
curl_close( $c );
|
46 |
-
} else {
|
47 |
-
// if CURL is unavailable, use file_get_contents
|
48 |
-
$output = file_get_contents( $url );
|
49 |
}
|
50 |
|
|
|
|
|
51 |
// check if data is utf-8
|
52 |
if( ! SG_iCal_Parser::_ValidUtf8( $output ) ) {
|
53 |
// Encode the data in utf-8
|
17 |
// holds the output
|
18 |
$output = "";
|
19 |
|
20 |
+
// To make a remote call in wordpress it's better to use the wrapper functions instead
|
21 |
+
// of class methods. http://codex.wordpress.org/HTTP_API
|
22 |
+
// SSL Verification was disabled in the cUrl call
|
23 |
+
$result = wp_remote_get( $url, array( 'sslverify' => false ) );
|
24 |
+
// The wrapper functions return an WP_error if anything goes wrong.
|
25 |
+
if( is_wp_error( $result ) ) {
|
26 |
+
// We explicitly return false to notify an error. This is exactly the same behaviour we had before
|
27 |
+
// because both curl_exec() and file_get_contents() returned false on error
|
28 |
+
return FALSE;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
29 |
}
|
30 |
|
31 |
+
$output = $result['body'];
|
32 |
+
|
33 |
// check if data is utf-8
|
34 |
if( ! SG_iCal_Parser::_ValidUtf8( $output ) ) {
|
35 |
// Encode the data in utf-8
|
readme.txt
CHANGED
@@ -1,20 +1,20 @@
|
|
1 |
-
=== All-in-One
|
2 |
Contributors: theseed, hubrik, vtowel, yani.iliev
|
3 |
Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=9JJMUW48W2ED8
|
4 |
Tags: calendar, event, events, ics, ics calendar, ical-feed, ics feed, wordpress ics importer, wordpress ical importer, upcoming events, todo, notes, journal, freebusy, availability, web calendar, web events, webcal, google calendar, ical, iCalendar, all-in-one, ai1ec, google calendar sync, ical sync, events sync, holiday calendar, calendar 2011, events 2011, widget, events widget, upcoming events widget, calendar widget, agenda widget
|
5 |
Requires at least: 3.1.3
|
6 |
-
Tested up to: 3.3
|
7 |
-
Stable tag: 1.
|
8 |
|
9 |
An event calendar system with month, week, agenda views, upcoming events widget, color-coded categories, recurrence, and import/export of .ics feeds.
|
10 |
|
11 |
== Description ==
|
12 |
|
13 |
-
Welcome to the [All-in-One
|
14 |
|
15 |
Our new calendar system combines a clean visual design, solid architectural patterns and a powerful set of features to create the most advanced calendar system available for WordPress. Best of all: it’s completely free.
|
16 |
|
17 |
-
**New in version 1.
|
18 |
|
19 |
= Calendar Features For Users =
|
20 |
|
@@ -26,7 +26,7 @@ This plugin has many features we hope will prove useful to users, including:
|
|
26 |
* Embedded **Google Maps**
|
27 |
* **Color-coded** events based on category
|
28 |
* **Event-registration** ready
|
29 |
-
* **Month**, **week** and **agenda** views
|
30 |
* **Upcoming Events** widget
|
31 |
* Direct links to **filtered calendar views**
|
32 |
|
@@ -35,33 +35,32 @@ This plugin has many features we hope will prove useful to users, including:
|
|
35 |
* Import other calendars automatically to display in your calendar
|
36 |
* Categorize and tag imported calendar feeds automatically
|
37 |
* Events from [The Events Calendar](http://wordpress.org/extend/plugins/the-events-calendar/) plugin can also be easily imported
|
|
|
38 |
|
39 |
-
Importing and exporting iCalendar (.ics) feeds is one of the strongest features of the All-in-One
|
40 |
|
41 |
-
Why is this cool? It allows event creators to create one event and have it displayed on a few or thousands of calendars with no extra work. And it also allows calendar owners to populate their calendar from other calendar feeds without having to go through the hassle of creating new events. For example, a soccer league can send its game schedule to a community sports calendar, which, in turn, can send only featured games (from all the sports leagues it
|
42 |
|
43 |
= Additional Features =
|
44 |
|
45 |
-
The All-in-One
|
46 |
|
47 |
* Each event is SEO-optimized
|
48 |
* Each event links to the original calendar
|
49 |
* Your calendar can be embedded into a WordPress page without needing to create template files or modify the theme
|
50 |
|
51 |
-
= Video
|
52 |
-
|
53 |
-
http://www.youtube.com/watch?v=zZHpzfyukyU
|
54 |
|
55 |
= Helpful Links =
|
56 |
|
57 |
* [**Check out the DEMO »**](http://demo.theseednetwork.com/)
|
58 |
-
* [**Get help from
|
59 |
-
* [**Track the development process »**](http://trac.theseednetwork.com/roadmap)
|
60 |
-
* [**BUG reports only »**](http://trac.theseednetwork.com/newticket) ([registration](http://trac.theseednetwork.com/register) required)
|
61 |
-
* [**Get Premium Support »**](http://theseednetwork.com/get-supported) from [The Seed Studio](http://theseednetwork.com/)
|
62 |
|
63 |
== Frequently Asked Questions ==
|
64 |
|
|
|
|
|
65 |
= Shortcodes =
|
66 |
|
67 |
* Monthly view: **[ai1ec view="monthly"]**
|
@@ -83,6 +82,26 @@ http://www.youtube.com/watch?v=zZHpzfyukyU
|
|
83 |
* Filter by post ids (separate ids by comma): **[ai1ec post_id="1, 2"]**
|
84 |
|
85 |
== Changelog ==
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
86 |
= Version 1.5 =
|
87 |
* Added daily view
|
88 |
* Various bug fixes
|
@@ -255,14 +274,14 @@ http://www.youtube.com/watch?v=zZHpzfyukyU
|
|
255 |
|
256 |
To place the calendar in a DOM/HTML element besides the default page content container without modifying the theme:
|
257 |
|
258 |
-
1. Navigate to **
|
259 |
2. Enter a CSS or jQuery-style selector of the target element in the **Contain calendar in this DOM element** field.
|
260 |
-
3. Click **Update
|
261 |
|
262 |
== Screenshots ==
|
263 |
|
264 |
1. Add new event - part 1
|
265 |
-
2. Add new event -
|
266 |
3. Event categories
|
267 |
4. Event categories with color picker
|
268 |
5. Front-end: Month view of calendar
|
@@ -277,5 +296,8 @@ To place the calendar in a DOM/HTML element besides the default page content con
|
|
277 |
|
278 |
== Upgrade Notice ==
|
279 |
|
|
|
|
|
|
|
280 |
= 1.0.3 =
|
281 |
When upgrading to from below `1.0.3` you must reactivate the plugin.
|
1 |
+
=== All-in-One Calendar ===
|
2 |
Contributors: theseed, hubrik, vtowel, yani.iliev
|
3 |
Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=9JJMUW48W2ED8
|
4 |
Tags: calendar, event, events, ics, ics calendar, ical-feed, ics feed, wordpress ics importer, wordpress ical importer, upcoming events, todo, notes, journal, freebusy, availability, web calendar, web events, webcal, google calendar, ical, iCalendar, all-in-one, ai1ec, google calendar sync, ical sync, events sync, holiday calendar, calendar 2011, events 2011, widget, events widget, upcoming events widget, calendar widget, agenda widget
|
5 |
Requires at least: 3.1.3
|
6 |
+
Tested up to: 3.3.2
|
7 |
+
Stable tag: 1.6
|
8 |
|
9 |
An event calendar system with month, week, agenda views, upcoming events widget, color-coded categories, recurrence, and import/export of .ics feeds.
|
10 |
|
11 |
== Description ==
|
12 |
|
13 |
+
Welcome to the [All-in-One Calendar Plugin](http://then.ly/), from [Then.ly](http://then.ly/). The All-in-One Calendar is a new way to list your events in WordPress and easily share them with the rest of the world.
|
14 |
|
15 |
Our new calendar system combines a clean visual design, solid architectural patterns and a powerful set of features to create the most advanced calendar system available for WordPress. Best of all: it’s completely free.
|
16 |
|
17 |
+
**New in version 1.6:** Download the free Premium version at [then.ly](http://then./y) and choose from 3 custom designed themes for your Calendar, or develop your own!
|
18 |
|
19 |
= Calendar Features For Users =
|
20 |
|
26 |
* Embedded **Google Maps**
|
27 |
* **Color-coded** events based on category
|
28 |
* **Event-registration** ready
|
29 |
+
* **Month**, **week**, **day** and **agenda** views
|
30 |
* **Upcoming Events** widget
|
31 |
* Direct links to **filtered calendar views**
|
32 |
|
35 |
* Import other calendars automatically to display in your calendar
|
36 |
* Categorize and tag imported calendar feeds automatically
|
37 |
* Events from [The Events Calendar](http://wordpress.org/extend/plugins/the-events-calendar/) plugin can also be easily imported
|
38 |
+
* Create a Calendar administration role to allow for a dedicated calendar application
|
39 |
|
40 |
+
Importing and exporting iCalendar (.ics) feeds is one of the strongest features of the All-in-One Calendar system. Enter an event on one site and you can have it appear automatically in another website's calendar. You can even send events from a specific category or tag (or combination of categories and tags).
|
41 |
|
42 |
+
Why is this cool? It allows event creators to create one event and have it displayed on a few or thousands of calendars with no extra work. And it also allows calendar owners to populate their calendar from other calendar feeds without having to go through the hassle of creating new events. For example, a soccer league can send its game schedule to a community sports calendar, which, in turn, can send only featured games (from all the sports leagues it aggregates) to a community calendar, which features sports as just one category.
|
43 |
|
44 |
= Additional Features =
|
45 |
|
46 |
+
The All-in-One Calendar Plugin also has a few features that will prove useful for website and blog owners:
|
47 |
|
48 |
* Each event is SEO-optimized
|
49 |
* Each event links to the original calendar
|
50 |
* Your calendar can be embedded into a WordPress page without needing to create template files or modify the theme
|
51 |
|
52 |
+
= Video =
|
53 |
+
https://vimeo.com/41738066
|
|
|
54 |
|
55 |
= Helpful Links =
|
56 |
|
57 |
* [**Check out the DEMO »**](http://demo.theseednetwork.com/)
|
58 |
+
* [**Get help from our Help Desk »**](http://help.then.ly)
|
|
|
|
|
|
|
59 |
|
60 |
== Frequently Asked Questions ==
|
61 |
|
62 |
+
[**Get help from our Help Desk »**](http://help.then.ly)
|
63 |
+
|
64 |
= Shortcodes =
|
65 |
|
66 |
* Monthly view: **[ai1ec view="monthly"]**
|
82 |
* Filter by post ids (separate ids by comma): **[ai1ec post_id="1, 2"]**
|
83 |
|
84 |
== Changelog ==
|
85 |
+
|
86 |
+
= Version 1.6 Premium =
|
87 |
+
* Choose new Calendar Themes
|
88 |
+
* Duplicate Events
|
89 |
+
* Create Print View
|
90 |
+
* Add location details that allow latitude and longitude for areas poorly covered by Google Maps
|
91 |
+
* Turn on/off autocomplete for addresses
|
92 |
+
* See more intuitive views of multi-day events on weekly and monthly calendars
|
93 |
+
* Calendar administration role to allow for dedicated calendar application
|
94 |
+
* Security updates
|
95 |
+
* Bug fixes
|
96 |
+
|
97 |
+
= Version 1.6 =
|
98 |
+
* Create Print View
|
99 |
+
* Turn on/off autocomplete for addresses
|
100 |
+
* See more intuitive views of multi-day events on weekly and monthly calendars
|
101 |
+
* Security updates
|
102 |
+
* Bug Fixes
|
103 |
+
|
104 |
+
|
105 |
= Version 1.5 =
|
106 |
* Added daily view
|
107 |
* Various bug fixes
|
274 |
|
275 |
To place the calendar in a DOM/HTML element besides the default page content container without modifying the theme:
|
276 |
|
277 |
+
1. Navigate to **Settings** > **Calendar** in the WordPress Dashboard.
|
278 |
2. Enter a CSS or jQuery-style selector of the target element in the **Contain calendar in this DOM element** field.
|
279 |
+
3. Click **Update**.
|
280 |
|
281 |
== Screenshots ==
|
282 |
|
283 |
1. Add new event - part 1
|
284 |
+
2. Add new event - with recurrence
|
285 |
3. Event categories
|
286 |
4. Event categories with color picker
|
287 |
5. Front-end: Month view of calendar
|
296 |
|
297 |
== Upgrade Notice ==
|
298 |
|
299 |
+
= 1.6 Premium =
|
300 |
+
The All-in-One Calendar can only be upgrade to Premium from version 1.6 and above, or by downloading directly from
|
301 |
+
|
302 |
= 1.0.3 =
|
303 |
When upgrading to from below `1.0.3` you must reactivate the plugin.
|
screenshot-11.jpg
ADDED
Binary file
|
screenshot-2.jpg
ADDED
Binary file
|
themes-ai1ec/vortex/agenda-widget.php
ADDED
@@ -0,0 +1,85 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php echo $args['before_widget'] ?>
|
2 |
+
|
3 |
+
<?php if( $title ): ?>
|
4 |
+
<?php echo $before_title . $title . $after_title; ?>
|
5 |
+
<?php endif; ?>
|
6 |
+
|
7 |
+
<div class="thenly ai1ec-agenda-widget-view">
|
8 |
+
|
9 |
+
<?php if( ! $dates ): ?>
|
10 |
+
<p class="ai1ec-no-results">
|
11 |
+
<?php _e( 'There are no upcoming events.', AI1EC_PLUGIN_NAME ); ?>
|
12 |
+
</p>
|
13 |
+
<?php else: ?>
|
14 |
+
<ol>
|
15 |
+
<?php foreach( $dates as $timestamp => $date_info ): ?>
|
16 |
+
<li class="ai1ec-date <?php if( isset( $date_info['today'] ) && $date_info['today'] ) echo 'ai1ec-today'; ?>">
|
17 |
+
<h3 class="ai1ec-date-title">
|
18 |
+
<div class="ai1ec-month"><?php echo date_i18n( 'M', $timestamp, true ); ?></div>
|
19 |
+
<div class="ai1ec-day"><?php echo date_i18n( 'j', $timestamp, true ); ?></div>
|
20 |
+
<div class="ai1ec-weekday"><?php echo date_i18n( 'D', $timestamp, true ); ?></div>
|
21 |
+
</h3>
|
22 |
+
<ol class="ai1ec-date-events">
|
23 |
+
<?php foreach( $date_info['events'] as $category ): ?>
|
24 |
+
<?php foreach( $category as $event ): ?>
|
25 |
+
<li class="ai1ec-event
|
26 |
+
ai1ec-event-id-<?php echo $event->post_id; ?>
|
27 |
+
ai1ec-event-instance-id-<?php echo $event->instance_id; ?>
|
28 |
+
<?php if( $event->allday ) echo 'ai1ec-allday'; ?>">
|
29 |
+
|
30 |
+
<?php // Insert post ID for use by JavaScript filtering later ?>
|
31 |
+
<input type="hidden" class="ai1ec-post-id" value="<?php echo $event->post_id; ?>" />
|
32 |
+
|
33 |
+
<a href="<?php echo esc_attr( get_permalink( $event->post_id ) ) . $event->instance_id; ?>">
|
34 |
+
<?php if( $event->category_colors ): ?>
|
35 |
+
<span class="ai1ec-category-colors"><?php echo $event->category_colors; ?></span>
|
36 |
+
<?php endif; ?>
|
37 |
+
<?php if( ! $event->allday ): ?>
|
38 |
+
<span class="ai1ec-event-time">
|
39 |
+
<?php echo esc_html( $event->start_time ); ?></span>
|
40 |
+
</span>
|
41 |
+
<?php endif; ?>
|
42 |
+
<span class="ai1ec-event-title">
|
43 |
+
<?php echo esc_html( apply_filters( 'the_title', $event->post->post_title ) ); ?>
|
44 |
+
</span>
|
45 |
+
</a>
|
46 |
+
|
47 |
+
</li>
|
48 |
+
<?php endforeach; ?>
|
49 |
+
<?php endforeach; ?>
|
50 |
+
</ol>
|
51 |
+
</li>
|
52 |
+
<?php endforeach; ?>
|
53 |
+
</ol>
|
54 |
+
<?php endif; ?>
|
55 |
+
|
56 |
+
<?php if( $show_calendar_button || $show_subscribe_buttons ): ?>
|
57 |
+
<p>
|
58 |
+
<?php if( $show_calendar_button ): ?>
|
59 |
+
<a class="btn btn-mini pull-right ai1ec-calendar-link" href="<?php echo $calendar_url; ?>">
|
60 |
+
<?php _e( 'View Calendar', AI1EC_PLUGIN_NAME ); ?>
|
61 |
+
<i class="icon-arrow-right"></i>
|
62 |
+
</a>
|
63 |
+
<?php endif; ?>
|
64 |
+
|
65 |
+
<?php if( $show_subscribe_buttons ): ?>
|
66 |
+
<span class="ai1ec-subscribe-buttons pull-left">
|
67 |
+
<a class="btn btn-mini ai1ec-subscribe"
|
68 |
+
href="<?php echo $subscribe_url; ?>"
|
69 |
+
title="<?php _e( 'Subscribe to this calendar using your favourite calendar program (iCal, Outlook, etc.)', AI1EC_PLUGIN_NAME ); ?>" />
|
70 |
+
<?php _e( '✔ Subscribe', AI1EC_PLUGIN_NAME ); ?>
|
71 |
+
</a>
|
72 |
+
<a class="btn btn-mini ai1ec-subscribe-google" target="_blank"
|
73 |
+
href="http://www.google.com/calendar/render?cid=<?php echo urlencode( str_replace( 'webcal://', 'http://', $subscribe_url ) ); ?>"
|
74 |
+
title="<?php _e( 'Subscribe to this calendar in your Google Calendar', AI1EC_PLUGIN_NAME ); ?>" />
|
75 |
+
<img src="<?php echo $this->get_theme_img_url( 'google-calendar.png' ); ?>" />
|
76 |
+
<?php _e( 'Add to Google', AI1EC_PLUGIN_NAME ); ?>
|
77 |
+
</a>
|
78 |
+
</span>
|
79 |
+
<?php endif; ?>
|
80 |
+
</p>
|
81 |
+
<?php endif; ?>
|
82 |
+
|
83 |
+
</div>
|
84 |
+
|
85 |
+
<?php echo $args['after_widget']; ?>
|
{app/view → themes-ai1ec/vortex}/agenda.php
RENAMED
@@ -1,28 +1,31 @@
|
|
1 |
-
<h2 class="ai1ec-calendar-title"><?php echo esc_html( $title ) ?></h2>
|
2 |
-
<
|
|
|
|
|
|
|
|
|
|
|
|
|
3 |
<?php if( $dates ): ?>
|
4 |
-
<
|
5 |
-
|
6 |
-
|
7 |
-
|
8 |
-
|
9 |
-
|
10 |
-
><?php endif ?><a
|
11 |
-
id="ai1ec-today" class="ai1ec-load-view ai1ec-button" href="#action=ai1ec_agenda&ai1ec_post_ids=<?php echo $post_ids ?>">
|
12 |
-
<?php _e( 'Today', AI1EC_PLUGIN_NAME ) ?>
|
13 |
-
</a>
|
14 |
-
</span>
|
15 |
-
<ul class="ai1ec-pagination">
|
16 |
-
<?php foreach( $pagination_links as $link ): ?>
|
17 |
-
<li>
|
18 |
-
<a id="<?php echo $link['id'] ?>"
|
19 |
-
class="ai1ec-load-view ai1ec-button"
|
20 |
-
href="<?php echo esc_attr( $link['href'] ) ?>&ai1ec_post_ids=<?php echo $post_ids ?>">
|
21 |
-
<?php echo esc_html( $link['text'] ) ?>
|
22 |
</a>
|
23 |
-
</
|
24 |
-
<?php
|
25 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
26 |
<ol class="ai1ec-agenda-view">
|
27 |
<?php if( ! $dates ): ?>
|
28 |
<p class="ai1ec-no-results">
|
@@ -72,19 +75,19 @@
|
|
72 |
</div>
|
73 |
<div class="ai1ec-event-description">
|
74 |
<div class="ai1ec-event-overlay">
|
75 |
-
<a class="ai1ec-read-more
|
76 |
href="<?php echo esc_attr( get_permalink( $event->post_id ) . $event->instance_id ) ?>">
|
77 |
-
<?php _e( 'Read more
|
78 |
</a>
|
79 |
<?php if( $event->categories_html ): ?>
|
80 |
<div class="ai1ec-categories">
|
81 |
-
<
|
82 |
<?php echo $event->categories_html ?>
|
83 |
</div>
|
84 |
<?php endif ?>
|
85 |
<?php if( $event->tags_html ): ?>
|
86 |
<div class="ai1ec-tags">
|
87 |
-
<
|
88 |
<?php echo $event->tags_html ?>
|
89 |
</div>
|
90 |
<?php endif ?>
|
1 |
+
<h2 class="ai1ec-calendar-title"><?php echo esc_html( $title ); ?></h2>
|
2 |
+
<div class="ai1ec-title-buttons btn-toolbar">
|
3 |
+
<div class="btn-group">
|
4 |
+
<a id="ai1ec-today" class="ai1ec-load-view btn btn-mini"
|
5 |
+
href="#action=ai1ec_agenda&ai1ec_post_ids=<?php echo $post_ids; ?>">
|
6 |
+
<?php _e( 'Today', AI1EC_PLUGIN_NAME ); ?>
|
7 |
+
</a>
|
8 |
+
</div>
|
9 |
<?php if( $dates ): ?>
|
10 |
+
<div class="btn-group">
|
11 |
+
<a id="ai1ec-expand-all" class="btn btn-mini">
|
12 |
+
<i class="icon-plus-sign"></i> <?php _e( 'Expand All', AI1EC_PLUGIN_NAME ) ?>
|
13 |
+
</a><a
|
14 |
+
id="ai1ec-collapse-all" class="btn btn-mini">
|
15 |
+
<i class="icon-minus-sign"></i> <?php _e( 'Collapse All', AI1EC_PLUGIN_NAME ) ?>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
16 |
</a>
|
17 |
+
</div>
|
18 |
+
<?php endif; ?>
|
19 |
+
<div class="ai1ec-pagination btn-group pull-right">
|
20 |
+
<?php foreach( $pagination_links as $link ): ?>
|
21 |
+
<a id="<?php echo $link['id']; ?>"
|
22 |
+
class="ai1ec-load-view btn"
|
23 |
+
href="<?php echo esc_attr( $link['href'] ); ?>&ai1ec_post_ids=<?php echo $post_ids; ?>">
|
24 |
+
<?php echo esc_html( $link['text'] ); ?>
|
25 |
+
</a>
|
26 |
+
<?php endforeach; ?>
|
27 |
+
</div>
|
28 |
+
</div>
|
29 |
<ol class="ai1ec-agenda-view">
|
30 |
<?php if( ! $dates ): ?>
|
31 |
<p class="ai1ec-no-results">
|
75 |
</div>
|
76 |
<div class="ai1ec-event-description">
|
77 |
<div class="ai1ec-event-overlay">
|
78 |
+
<a class="ai1ec-read-more btn"
|
79 |
href="<?php echo esc_attr( get_permalink( $event->post_id ) . $event->instance_id ) ?>">
|
80 |
+
<?php _e( 'Read more', AI1EC_PLUGIN_NAME ) ?> <i class="icon-arrow-right"></i>
|
81 |
</a>
|
82 |
<?php if( $event->categories_html ): ?>
|
83 |
<div class="ai1ec-categories">
|
84 |
+
<span class="ai1ec-label"><?php _e( 'Categories:', AI1EC_PLUGIN_NAME ) ?></span>
|
85 |
<?php echo $event->categories_html ?>
|
86 |
</div>
|
87 |
<?php endif ?>
|
88 |
<?php if( $event->tags_html ): ?>
|
89 |
<div class="ai1ec-tags">
|
90 |
+
<span class="ai1ec-label"><?php _e( 'Tags:', AI1EC_PLUGIN_NAME ) ?></span>
|
91 |
<?php echo $event->tags_html ?>
|
92 |
</div>
|
93 |
<?php endif ?>
|
themes-ai1ec/vortex/calendar.php
ADDED
@@ -0,0 +1,125 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<!-- START All-in-One Calendar Plugin - Version <?php echo AI1EC_VERSION ?> -->
|
2 |
+
<table class="ai1ec-calendar-toolbar">
|
3 |
+
<tbody>
|
4 |
+
<tr>
|
5 |
+
|
6 |
+
<td>
|
7 |
+
<div id="ai1ec-view-dropdown" class="btn-group">
|
8 |
+
<a id="ai1ec-current-view" class="btn dropdown-toggle" data-toggle="dropdown" href="#">
|
9 |
+
<img src="<?php echo $this->get_theme_img_url( "$current_view-view.png" ); ?>" alt="<?php echo $view_names[$current_view]; ?>" />
|
10 |
+
<?php echo $view_names[$current_view]; ?>
|
11 |
+
<span class="caret"></span>
|
12 |
+
</a>
|
13 |
+
<ul class="dropdown-menu">
|
14 |
+
<?php foreach( $view_names as $key => $val ): ?>
|
15 |
+
<li>
|
16 |
+
<a id="ai1ec-view-<?php echo $key; ?>" class="ai1ec-load-view <?php echo $key; ?>"
|
17 |
+
href="#action=ai1ec_<?php echo $key; ?>&ai1ec_post_ids=<?php echo $selected_post_ids; ?>">
|
18 |
+
<img src="<?php echo $this->get_theme_img_url( "$key-view.png" ); ?>" alt="<?php echo $val; ?>" />
|
19 |
+
<?php echo $val; ?>
|
20 |
+
</a>
|
21 |
+
</li>
|
22 |
+
<?php endforeach; ?>
|
23 |
+
</ul>
|
24 |
+
</div>
|
25 |
+
</td>
|
26 |
+
|
27 |
+
<?php if( $create_event_url ): ?>
|
28 |
+
<td>
|
29 |
+
<a class="btn" href="<?php echo $create_event_url ?>">
|
30 |
+
<i class="icon-plus"></i> <?php _e( 'Post Your Event', AI1EC_PLUGIN_NAME ) ?>
|
31 |
+
</a>
|
32 |
+
</td>
|
33 |
+
<?php endif ?>
|
34 |
+
<td>
|
35 |
+
<?php if( $categories || $tags ): ?>
|
36 |
+
<div class="ai1ec-filters-container">
|
37 |
+
<span class="ai1ec-label">
|
38 |
+
<a class="ai1ec-clear-filters" rel="tooltip" title="<?php _e( 'Clear Filters', AI1EC_PLUGIN_NAME ) ?>"><i class="icon-remove"></i></a>
|
39 |
+
<?php _e( 'Filter:', AI1EC_PLUGIN_NAME ) ?>
|
40 |
+
</span>
|
41 |
+
|
42 |
+
<?php if( $categories ): ?>
|
43 |
+
<span class="ai1ec-filter-selector-container">
|
44 |
+
<a class="btn ai1ec-dropdown">
|
45 |
+
<i class="icon-folder-open"></i>
|
46 |
+
<?php _e( 'Categories', AI1EC_PLUGIN_NAME ) ?>
|
47 |
+
<span class="caret"></span>
|
48 |
+
</a>
|
49 |
+
<input class="ai1ec-selected-terms"
|
50 |
+
id="ai1ec-selected-categories"
|
51 |
+
type="hidden"
|
52 |
+
value="<?php echo $selected_cat_ids ?>" />
|
53 |
+
<div class="ai1ec-filter-selector ai1ec-category-filter-selector">
|
54 |
+
<ul>
|
55 |
+
<?php foreach( $categories as $cat ): ?>
|
56 |
+
<li class="ai1ec-category"
|
57 |
+
<?php if( $cat->description ) echo 'title="' . esc_attr( $cat->description ) . '"' ?>>
|
58 |
+
<?php echo $cat->color ?>
|
59 |
+
<?php echo esc_html( $cat->name ) ?>
|
60 |
+
<input class="ai1ec-term-ids" name="ai1ec-categories" type="hidden" value="<?php echo $cat->term_id ?>" />
|
61 |
+
</li>
|
62 |
+
<?php endforeach ?>
|
63 |
+
</ul>
|
64 |
+
</div>
|
65 |
+
</span>
|
66 |
+
<?php endif // $categories ?>
|
67 |
+
|
68 |
+
<?php if( $tags ): ?>
|
69 |
+
<span class="ai1ec-filter-selector-container">
|
70 |
+
<a class="btn ai1ec-dropdown">
|
71 |
+
<i class="icon-tags"></i>
|
72 |
+
<?php _e( 'Tags', AI1EC_PLUGIN_NAME ) ?>
|
73 |
+
<span class="caret"></span>
|
74 |
+
</a>
|
75 |
+
<input class="ai1ec-selected-terms"
|
76 |
+
id="ai1ec-selected-tags"
|
77 |
+
type="hidden"
|
78 |
+
value="<?php echo $selected_tag_ids ?>" />
|
79 |
+
<div class="ai1ec-filter-selector ai1ec-tag-filter-selector">
|
80 |
+
<ul>
|
81 |
+
<?php foreach( $tags as $tag ): ?>
|
82 |
+
<li class="ai1ec-tag"
|
83 |
+
<?php if( $tag->description ) echo 'title="' . esc_attr( $tag->description ) . '"' ?>
|
84 |
+
style="<?php echo $tag->count > 1 ? 'font-weight: bold;' : 'font-size: 10px !important;' ?>">
|
85 |
+
<?php echo esc_html( $tag->name ) . " ($tag->count)" ?>
|
86 |
+
<input class="ai1ec-term-ids" name="ai1ec-tags" type="hidden" value="<?php echo $tag->term_id ?>" />
|
87 |
+
</li>
|
88 |
+
<?php endforeach ?>
|
89 |
+
</ul>
|
90 |
+
<input class="ai1ec-selected-terms" id="ai1ec-selected-tags" type="hidden" />
|
91 |
+
</div>
|
92 |
+
</span>
|
93 |
+
<?php endif // $tags ?>
|
94 |
+
</div>
|
95 |
+
<?php endif // $categories || $tags ?>
|
96 |
+
<a id="ai1ec-print-button" href="#" class="btn">
|
97 |
+
<i class="icon-print"></i>
|
98 |
+
</a>
|
99 |
+
</td>
|
100 |
+
</tr>
|
101 |
+
</tbody>
|
102 |
+
</table>
|
103 |
+
|
104 |
+
<div id="ai1ec-calendar-view-container">
|
105 |
+
<div id="ai1ec-calendar-view-loading" class="ai1ec-loading"></div>
|
106 |
+
<div id="ai1ec-calendar-view">
|
107 |
+
<?php echo $view ?>
|
108 |
+
</div>
|
109 |
+
</div>
|
110 |
+
|
111 |
+
<?php if( $show_subscribe_buttons ): ?>
|
112 |
+
<a class="btn ai1ec-subscribe"
|
113 |
+
href="<?php echo AI1EC_EXPORT_URL ?>"
|
114 |
+
title="<?php _e( 'Subscribe to this calendar using your favourite calendar program (iCal, Outlook, etc.)', AI1EC_PLUGIN_NAME ) ?>" />
|
115 |
+
<?php _e( '✔ Subscribe', AI1EC_PLUGIN_NAME ) ?>
|
116 |
+
<span class="ai1ec-subscribe-filtered"><?php _e( 'to this filtered calendar', AI1EC_PLUGIN_NAME ) ?></span>
|
117 |
+
</a>
|
118 |
+
<a class="btn ai1ec-subscribe-google" target="_blank"
|
119 |
+
href="http://www.google.com/calendar/render?cid=<?php echo urlencode( str_replace( 'webcal://', 'http://', AI1EC_EXPORT_URL ) ) ?>"
|
120 |
+
title="<?php _e( 'Subscribe to this calendar in your Google Calendar', AI1EC_PLUGIN_NAME ) ?>" />
|
121 |
+
<img src="<?php echo $this->get_theme_img_url( 'google-calendar.png' ) ?>" />
|
122 |
+
<?php _e( 'Subscribe in Google Calendar', AI1EC_PLUGIN_NAME ) ?>
|
123 |
+
</a>
|
124 |
+
<?php endif ?>
|
125 |
+
<!-- END All-in-One Calendar Plugin -->
|
themes-ai1ec/vortex/css/calendar.css
ADDED
@@ -0,0 +1 @@
|
|
|
1 |
+
.clearfix{*zoom:1}.clearfix:before,.clearfix:after{display:table;content:""}.clearfix:after{clear:both}.hide-text{overflow:hidden;text-indent:100%;white-space:nowrap}.input-block-level{display:block;width:100%;min-height:28px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box}.ai1ec-container{clear:both}#ai1ec-calendar-view-container{position:relative;clear:both;margin-bottom:.2em}.ai1ec-calendar-toolbar{width:100%!important;border:0!important;margin:0!important}.ai1ec-calendar-toolbar td{background:none!important;border:0!important;padding:0!important;text-align:center;vertical-align:middle;white-space:nowrap;width:33%}.ai1ec-calendar-toolbar td:last-child{text-align:right}.ai1ec-calendar-toolbar td:first-child{text-align:left}.thenly #ai1ec-view-dropdown a.btn,.thenly #ai1ec-view-dropdown .dropdown-menu a{line-height:21px}.thenly #ai1ec-view-dropdown a.btn .caret{margin-top:9px}.thenly #ai1ec-view-dropdown a img{border:0!important;padding:0!important;margin:0!important;float:none!important;position:static!important;vertical-align:bottom;background:none!important}.ai1ec-filters-container{display:inline-block}.ai1ec-filter-selector-container{position:relative;display:inline-block;text-align:left;white-space:normal}.ai1ec-filter-selector{display:none;background:#fff;border:1px solid rgba(0,0,0,0.2);-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,0.2);-moz-box-shadow:0 5px 10px rgba(0,0,0,0.2);box-shadow:0 5px 10px rgba(0,0,0,0.2);padding:.1em;position:absolute;overflow:auto;max-width:20em;max-height:30em;right:0;top:100%;z-index:10}.ai1ec-filter-selector ul{margin:0!important;padding:0!important}.ai1ec-filter-selector li{list-style:none}.ai1ec-filter-selector .ai1ec-category,.ai1ec-filter-selector .ai1ec-tag{font-size:8pt!important}.ai1ec-filter-selector-container:hover>.ai1ec-filter-selector{display:block}.ai1ec-clear-filters{display:none;font-size:11pt!important;font-weight:normal;color:#507295!important;cursor:pointer;text-decoration:none!important}.ai1ec-clear-filters:hover{color:#354c63!important}h2.ai1ec-calendar-title{float:left;font-size:20px!important;line-height:1.3em!important;margin:0 .5em 0 0!important}.ai1ec-today #ai1ec-today{display:none}.ai1ec-action-month .ai1ec-pagination a{width:7em}.ai1ec-action-week .ai1ec-pagination a,.ai1ec-action-oneday .ai1ec-pagination a{width:8em}.ai1ec-action-agenda .ai1ec-pagination a{width:9em}#ai1ec-prev-year,#ai1ec-next-year{width:4em}table.ai1ec-month-view,.ai1ec-week-view table,.ai1ec-oneday-view table{border-collapse:collapse;border:1px solid #ddd!important;margin:0!important;background:#fff;table-layout:fixed!important;clear:both;width:100%!important}.ai1ec-week-view .tablescroll_wrapper,.ai1ec-oneday-view .tablescroll_wrapper{position:relative;border-bottom:1px solid #ddd}table.ai1ec-week-view-original,table.ai1ec-oneday-view-original{visibility:hidden;height:400px}table.ai1ec-week-view-original.tablescroll_body,table.ai1ec-oneday-view-original.tablescroll_body{visibility:visible;height:auto}.ai1ec-week-view table.tablescroll_head,.ai1ec-oneday-view table.tablescroll_head,.ai1ec-week-view table.tablescroll_head th,.ai1ec-oneday-view table.tablescroll_head th{border-bottom:none!important;padding:2.48px!important}table.ai1ec-week-view-original.tablescroll_body,table.ai1ec-oneday-view-original.tablescroll_body,table.ai1ec-week-view-original.tablescroll_body tr:first-child td,table.ai1ec-oneday-view-original.tablescroll_body tr:first-child td{border-top:none!important}.ai1ec-month-view td,.ai1ec-week-view td,.ai1ec-oneday-view td{border:1px solid #ddd!important;background:none!important;padding:0!important;text-align:left;vertical-align:top}.ai1ec-month-view th,.ai1ec-week-view th,.ai1ec-oneday-view th{border:none!important;background:#f5f5f5!important;padding:.2em!important}.ai1ec-month-view td.ai1ec-empty{background:#f5f5f5!important}.ai1ec-month-view th,.ai1ec-week-view th,.ai1ec-week-view .ai1ec-hour-marker div,.ai1ec-week-view .ai1ec-allday-label,.ai1ec-oneday-view th,.ai1ec-oneday-view .ai1ec-hour-marker div,.ai1ec-oneday-view .ai1ec-allday-label{color:#9e9e9e!important;text-shadow:0 1px 0 #fff}.ai1ec-month-view th,.ai1ec-oneday-view th{text-align:center!important}.ai1ec-week-view th{text-align:left!important}.ai1ec-week-view .ai1ec-day,.ai1ec-oneday-view .ai1ec-day{height:1440px}.ai1ec-week-view th .ai1ec-weekday-date,.ai1ec-oneday-view th .ai1ec-weekday-date{font-size:10.5pt!important;font-weight:normal!important}.ai1ec-week-view th .ai1ec-weekday-day{font-size:9pt!important;font-weight:normal!important}.ai1ec-month-view .ai1ec-day,.ai1ec-week-view .ai1ec-day,.ai1ec-week-view .ai1ec-allday-events,.ai1ec-oneday-view .ai1ec-day,.ai1ec-oneday-view .ai1ec-allday-events{position:relative}.ai1ec-month-view .ai1ec-day-stretcher{float:left;height:94px;width:0}.ai1ec-month-view .ai1ec-today,.ai1ec-week-view .ai1ec-today{background:#ffd!important}.ai1ec-month-view .ai1ec-date{background:#eaf4ff;color:#a1a7ad;font-size:10pt;line-height:13px;height:13px;margin-bottom:1px;padding:0 .4em;font-size:8pt;text-align:right;text-shadow:0 1px 0 #fff}.ai1ec-week-view .ai1ec-grid-container,.ai1ec-oneday-view .ai1ec-grid-container{position:absolute;top:auto;left:0;right:0}.ai1ec-week-view .ai1ec-now-marker,.ai1ec-oneday-view .ai1ec-now-marker,.ai1ec-week-view .ai1ec-hour-marker,.ai1ec-oneday-view .ai1ec-hour-marker,.ai1ec-week-view .ai1ec-quarter-marker,.ai1ec-oneday-view .ai1ec-quarter-marker{position:absolute;left:0;right:0;padding-right:8px}.ai1ec-week-view .ai1ec-hour-marker,.ai1ec-oneday-view .ai1ec-hour-marker{border-top:1px solid #ddd;border-top:1px solid rgba(221,221,221,0.7);height:60px;background:rgba(221,221,221,0.4)!important}.ai1ec-week-view .ai1ec-hour-marker.ai1ec-business-hour,.ai1ec-oneday-view .ai1ec-hour-marker.ai1ec-business-hour{background:none!important}.ai1ec-week-view .ai1ec-hour-marker div,.ai1ec-oneday-view .ai1ec-hour-marker div,.ai1ec-week-view .ai1ec-allday-label,.ai1ec-oneday-view .ai1ec-allday-label{position:relative;z-index:2;margin-left:1px;padding:0 .2em;font-size:8pt!important;font-weight:normal!important;background:#f5f5f5;float:left;-webkit-border-radius:.3em;-moz-border-radius:.3em;border-radius:.3em}.ai1ec-week-view .ai1ec-allday-label,.ai1ec-oneday-view .ai1ec-allday-label{margin-top:1px}.ai1ec-week-view .ai1ec-quarter-marker,.ai1ec-oneday-view .ai1ec-quarter-marker{border-top:1px solid #ddd;border-top:1px solid rgba(221,221,221,0.4)}.ai1ec-week-view .ai1ec-now-marker,.ai1ec-oneday-view .ai1ec-now-marker{border-top:1px solid #f2c539;border-bottom:1px solid rgba(0,0,0,0.15);z-index:2}.ai1ec-month-view a.ai1ec-event-container,.ai1ec-week-view a.ai1ec-event-container,.ai1ec-oneday-view a.ai1ec-event-container{border:none!important;color:#507295!important;display:block;font-size:9pt;text-decoration:none!important}.ai1ec-month-view .ai1ec-event,.ai1ec-week-view .ai1ec-event,.ai1ec-oneday-view .ai1ec-event{-webkit-border-radius:.3em;-moz-border-radius:.3em;border-radius:.3em;margin:1px 0 0;max-height:100%;overflow:hidden;padding:0 3px 1px;white-space:nowrap}.ai1ec-month-view .ai1ec-allday .ai1ec-event,.ai1ec-week-view .ai1ec-allday .ai1ec-event,.ai1ec-oneday-view .ai1ec-allday .ai1ec-event,.ai1ec-month-view .ai1ec-multiday .ai1ec-event,.ai1ec-week-view .ai1ec-multiday .ai1ec-event,.ai1ec-oneday-view .ai1ec-multiday .ai1ec-event{background-color:#507295;color:#fff!important}.ai1ec-month-view .ai1ec-category-colors,.ai1ec-week-view .ai1ec-category-colors,.ai1ec-oneday-view .ai1ec-category-colors{float:right;font-size:1.2em;margin-top:1px}.ai1ec-month-view .ai1ec-event-popup,.ai1ec-week-view .ai1ec-event-popup,.ai1ec-oneday-view .ai1ec-event-popup,.ai1ec-month-view .ai1ec-event-summary,.ai1ec-week-view .ai1ec-event-summary,.ai1ec-oneday-view .ai1ec-event-summary{border:2px solid #d4d4d4;-webkit-box-shadow:0 5px 10px rgba(0,0,0,0.2);-moz-box-shadow:0 5px 10px rgba(0,0,0,0.2);box-shadow:0 5px 10px rgba(0,0,0,0.2);background:#fff}.ai1ec-month-view .ai1ec-event-popup,.ai1ec-week-view .ai1ec-event-popup,.ai1ec-oneday-view .ai1ec-event-popup{position:absolute;z-index:5;display:none;white-space:nowrap;color:#333!important;top:-5px;left:-2px;min-width:100%;-webkit-border-radius:0 .3em .3em 0;-moz-border-radius:0 .3em .3em 0;border-radius:0 .3em .3em 0}.ai1ec-month-view .ai1ec-event-popup.ai1ec-shifted-right,.ai1ec-week-view .ai1ec-event-popup.ai1ec-shifted-right,.ai1ec-oneday-view .ai1ec-event-popup.ai1ec-shifted-right{-webkit-border-radius:.3em 0 0 .3em;-moz-border-radius:.3em 0 0 .3em;border-radius:.3em 0 0 .3em}.ai1ec-month-view .ai1ec-event-popup-bg,.ai1ec-week-view .ai1ec-event-popup-bg,.ai1ec-oneday-view .ai1ec-event-popup-bg{position:relative;left:-2px;margin-right:-1px;padding:2px 2px 2px 5px;background:#fff}.ai1ec-month-view .ai1ec-shifted-right .ai1ec-event-popup-bg,.ai1ec-week-view .ai1ec-shifted-right .ai1ec-event-popup-bg,.ai1ec-oneday-view .ai1ec-shifted-right .ai1ec-event-popup-bg{left:1px;padding:2px 5px 2px 2px}.ai1ec-month-view .ai1ec-event-summary,.ai1ec-week-view .ai1ec-event-summary,.ai1ec-oneday-view .ai1ec-event-summary,.ai1ec-month-view .ai1ec-event-summary p,.ai1ec-week-view .ai1ec-event-summary p,.ai1ec-oneday-view .ai1ec-event-summary p{font-size:.95em!important}.ai1ec-month-view .ai1ec-event-summary,.ai1ec-week-view .ai1ec-event-summary,.ai1ec-oneday-view .ai1ec-event-summary{-webkit-border-radius:.3em 0 .3em .3em;-moz-border-radius:.3em 0 .3em .3em;border-radius:.3em 0 .3em .3em;color:#333;background-color:#fefef9;background-image:-webkit-gradient(linear,0 0,0 100%,from(#fff),color-stop(1.5em,#fff),to(#fafae3));background-image:-webkit-linear-gradient(#fff,#fff 1.5em,#fafae3);background-image:-moz-linear-gradient(top,#fff,#fff 1.5em,#fafae3);background-image:-ms-linear-gradient(#fff,#fff 1.5em,#fafae3);background-image:-o-linear-gradient(#fff,#fff 1.5em,#fafae3);background-image:linear-gradient(#fff,#fff 1.5em,#fafae3);background-repeat:no-repeat;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff',endColorstr='#fafae3',GradientType=0);overflow:hidden;padding:2px 4px 3px;position:absolute;right:100%;top:-2px;white-space:normal;width:13em}.ai1ec-month-view .ai1ec-shifted-right .ai1ec-event-summary,.ai1ec-week-view .ai1ec-shifted-right .ai1ec-event-summary,.ai1ec-oneday-view .ai1ec-shifted-right .ai1ec-event-summary{left:100%;-webkit-border-radius:0 .3em .3em .3em;-moz-border-radius:0 .3em .3em .3em;border-radius:0 .3em .3em .3em}.ai1ec-month-view .ai1ec-event-summary p,.ai1ec-week-view .ai1ec-event-summary p,.ai1ec-oneday-view .ai1ec-event-summary p{margin:0 0 .3em!important;padding:0!important}.ai1ec-month-view .ai1ec-event-time,.ai1ec-week-view .ai1ec-event-time,.ai1ec-oneday-view .ai1ec-event-time{font-size:8pt;font-weight:bold}.ai1ec-month-view .ai1ec-read-more,.ai1ec-week-view .ai1ec-read-more,.ai1ec-oneday-view .ai1ec-read-more{text-align:center;font-size:8pt;color:#97978b}.ai1ec-month-view a.ai1ec-event-container,.ai1ec-week-view .ai1ec-allday-events a.ai1ec-event-container,.ai1ec-oneday-view .ai1ec-allday-events a.ai1ec-event-container{position:relative}.ai1ec-oneday-view a.ai1ec-event-container{margin-right:10px}.ai1ec-oneday-view .ai1ec-allday-events a.ai1ec-event-container{margin:0 15px 0 50px}.ai1ec-week-view .ai1ec-week a.ai1ec-event-container,.ai1ec-oneday-view .ai1ec-oneday a.ai1ec-event-container{border:2px solid #cbd5df!important;-webkit-border-radius:.3em;-moz-border-radius:.3em;border-radius:.3em;-webkit-box-shadow:0 3px 6px rgba(0,0,0,0.2);-moz-box-shadow:0 3px 6px rgba(0,0,0,0.2);box-shadow:0 3px 6px rgba(0,0,0,0.2);-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box;background-color:#eaeef2;background-image:-moz-linear-gradient(top,#fff,#cbd5df);background-image:-ms-linear-gradient(top,#fff,#cbd5df);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fff),to(#cbd5df));background-image:-webkit-linear-gradient(top,#fff,#cbd5df);background-image:-o-linear-gradient(top,#fff,#cbd5df);background-image:linear-gradient(top,#fff,#cbd5df);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff',endColorstr='#cbd5df',GradientType=0);background-color:#fff;position:absolute;right:0}.ai1ec-oneday-view .ai1ec-event-popup{top:-3px;min-width:0;right:13em}.ai1ec-week-view .ai1ec-week .ai1ec-event-popup{top:-3px}.ai1ec-oneday-view .ai1ec-oneday .ai1ec-event-title,.ai1ec-week-view .ai1ec-week .ai1ec-event-title{display:block;white-space:normal;font-size:8pt!important}.ai1ec-month-view .ai1ec-event{height:14px;line-height:14px;margin:0 0 1px}.ai1ec-month-view .ai1ec-multiday{position:absolute}.ai1ec-month-view .ai1ec-multiday-arrow1{background:#507295;border:7px solid #fff;border-left-color:#507295;border-right-width:0;height:1px;position:absolute;right:0;top:0;width:0}.ai1ec-month-view .ai1ec-multiday-arrow2{border:7px solid #507295;border-left-color:#fff;border-right-width:2px;height:1px;left:0;position:absolute;top:0;width:0}.ai1ec-month-view .ai1ec-multiday-bar{background:#507295;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;height:15px;left:0;position:absolute;top:0}.ai1ec-month-view .ai1ec-multiday-bar .ai1ec-event-title{margin-left:7px}.ai1ec-month-view .ai1ec-multiday-bar .ai1ec-event{margin:0}.ai1ec-month-view .ai1ec-multiday-bar .ai1ec-event-time{display:none}.ai1ec-month-view .ai1ec-event-dropdown{background:#FFF;border:1px solid #e7e7e7;border-top:0;left:-1px;position:absolute;top:78px;width:90px;z-index:1000}.ai1ec-month-view .ai1ec-obscured{display:none!important}.ai1ec-month-view a.ai1ec-scroll-up,.ai1ec-month-view a.ai1ec-scroll-down{border:1px solid #ddd;-webkit-border-radius:.2em;-moz-border-radius:.2em;border-radius:.2em;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box;display:block;left:50%;height:16px;line-height:14px;margin-left:-8px;position:relative;text-align:center;text-decoration:none!important;width:16px}.ai1ec-month-view a.ai1ec-scroll-up:hover,.ai1ec-month-view a.ai1ec-scroll-down:hover{background-color:#ddd}.ai1ec-month-view a.ai1ec-scroll-up.ai1ec-disabled,.ai1ec-month-view a.ai1ec-scroll-down.ai1ec-disabled{border:0;cursor:default;opacity:.2;filter:alpha(opacity=20);padding:1px}.ai1ec-month-view a.ai1ec-scroll-up.ai1ec-disabled:hover,.ai1ec-month-view a.ai1ec-scroll-down.ai1ec-disabled:hover{background-color:transparent}.ai1ec-month-view .ai1ec-event-popup .ai1ec-event-popup-allround{border-radius:.3em}.ai1ec-month-view .ai1ec-event-popup .ai1ec-event-popup-allround .ai1ec-event-popup-bg{left:0;margin-right:2px;padding:2px}.ai1ec-month-view .ai1ec-event-popup .ai1ec-event-popup-allround .ai1ec-event-summary{display:none}.ai1ec-oneday-view .ai1ec-start-truncated .ai1ec-event-time,.ai1ec-week-view .ai1ec-start-truncated .ai1ec-event-time{display:none}.ai1ec-oneday-view .ai1ec-oneday a.ai1ec-event-container.ai1ec-start-truncated,.ai1ec-week-view .ai1ec-week a.ai1ec-event-container.ai1ec-start-truncated{border-top-left-radius:0;border-top-right-radius:0;-moz-border-radius-topleft:0;-moz-border-radius-topright:0;-webkit-border-top-left-radius:0;-webkit-border-top-right-radius:0}.ai1ec-oneday-view .ai1ec-oneday a.ai1ec-event-container.ai1ec-end-truncated,.ai1ec-week-view .ai1ec-week a.ai1ec-event-container.ai1ec-end-truncated{border-bottom-left-radius:0;border-bottom-right-radius:0;-moz-border-radius-bottomleft:0;-moz-border-radius-bottomright:0;-webkit-border-bottom-left-radius:0;-webkit-border-bottom-right-radius:0}.ai1ec-oneday-view .ai1ec-oneday .ai1ec-start-truncator,.ai1ec-week-view .ai1ec-week .ai1ec-start-truncator,.ai1ec-oneday-view .ai1ec-oneday .ai1ec-end-truncator,.ai1ec-week-view .ai1ec-week .ai1ec-end-truncator{position:absolute;line-height:1em;font-size:6pt}.ai1ec-oneday-view .ai1ec-oneday .ai1ec-start-truncator,.ai1ec-week-view .ai1ec-week .ai1ec-start-truncator{top:-2px;left:-2px}.ai1ec-oneday-view .ai1ec-oneday .ai1ec-end-truncator,.ai1ec-week-view .ai1ec-week .ai1ec-end-truncator{bottom:-2px;right:-2px}.ai1ec-agenda-view{clear:both;overflow:hidden;margin:0!important;padding:0!important}.ai1ec-agenda-view .ai1ec-no-results{font-size:10pt!important;font-style:italic}.ai1ec-agenda-view .ai1ec-date-events{overflow:hidden;margin:0 .75em 0 0!important;padding:0!important}.ai1ec-agenda-view>li,.ai1ec-agenda-view .ai1ec-date-events>li{list-style:none!important}.ai1ec-agenda-view .ai1ec-date{border-top:1px solid #e5e5e5;background:rgba(242,242,242,0.8);background:-webkit-gradient(linear,0 0,0 100%,from(#f2f2f2),color-stop(1em,#f2f2f2),to(rgba(242,242,242,0)));background:-webkit-linear-gradient(#f2f2f2,#f2f2f2 1em,rgba(242,242,242,0));background:-moz-linear-gradient(top,#f2f2f2,#f2f2f2 1em,rgba(242,242,242,0));background:-ms-linear-gradient(#f2f2f2,#f2f2f2 1em,rgba(242,242,242,0));background:-o-linear-gradient(#f2f2f2,#f2f2f2 1em,rgba(242,242,242,0));background:linear-gradient(#f2f2f2,#f2f2f2 1em,rgba(242,242,242,0));background-repeat:no-repeat;margin:0!important;overflow:hidden;padding:0!important}.ai1ec-agenda-view .ai1ec-date.ai1ec-today{border-top:1px solid #f0f0aa;background:rgba(244,244,191,0.8);background:-webkit-gradient(linear,0 0,0 100%,from(#f4f4bf),color-stop(1em,#f4f4bf),to(rgba(244,244,191,0)));background:-webkit-linear-gradient(#f4f4bf,#f4f4bf 1em,rgba(244,244,191,0));background:-moz-linear-gradient(top,#f4f4bf,#f4f4bf 1em,rgba(244,244,191,0));background:-ms-linear-gradient(#f4f4bf,#f4f4bf 1em,rgba(244,244,191,0));background:-o-linear-gradient(#f4f4bf,#f4f4bf 1em,rgba(244,244,191,0));background:linear-gradient(#f4f4bf,#f4f4bf 1em,rgba(244,244,191,0));background-repeat:no-repeat}.ai1ec-agenda-view h3.ai1ec-date-title{border:2px solid #8ba5c0;-webkit-border-radius:0 0 5px 5px;-moz-border-radius:0 0 5px 5px;border-radius:0 0 5px 5px;-webkit-box-shadow:0 2px 2px rgba(0,0,0,0.08);-moz-box-shadow:0 2px 2px rgba(0,0,0,0.08);box-shadow:0 2px 2px rgba(0,0,0,0.08);color:#525252;float:left;font-size:10pt;font-weight:normal;background-color:#f9f9f9;background-image:-webkit-gradient(linear,0 0,0 100%,from(#fff),color-stop(1em,#fff),to(#e0e0e0));background-image:-webkit-linear-gradient(#fff,#fff 1em,#e0e0e0);background-image:-moz-linear-gradient(top,#fff,#fff 1em,#e0e0e0);background-image:-ms-linear-gradient(#fff,#fff 1em,#e0e0e0);background-image:-o-linear-gradient(#fff,#fff 1em,#e0e0e0);background-image:linear-gradient(#fff,#fff 1em,#e0e0e0);background-repeat:no-repeat;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff',endColorstr='#e0e0e0',GradientType=0);line-height:1.1em;margin:0 .75em .5em!important;text-align:center;text-shadow:0 1px 0 #fff;width:4em}.ai1ec-agenda-view .ai1ec-month{color:#fff;background:#8ba5c0;font-size:.8em!important;letter-spacing:.2em;padding:.1em;text-transform:uppercase;text-shadow:0 -1px 0 rgba(0,0,0,0.25)}.ai1ec-agenda-view .ai1ec-day{font-size:2.2em!important;padding:.3em 0 .2em!important}.ai1ec-agenda-view .ai1ec-weekday{font-size:.8em!important;line-height:1.5em}.ai1ec-agenda-view .ai1ec-event{position:relative;clear:right;overflow:hidden;font-size:10pt;text-decoration:none;padding:.1em .3em!important;margin:.5em 0!important;background:#fff!important;border:1px solid #d4d4d4;-webkit-border-radius:.5em;-moz-border-radius:.5em;border-radius:.5em}.ai1ec-agenda-view .ai1ec-event.ai1ec-expanded{border:2px solid #d4d4d4;-webkit-box-shadow:1px 5px 8px rgba(0,0,0,0.08);-moz-box-shadow:1px 5px 8px rgba(0,0,0,0.08);box-shadow:1px 5px 8px rgba(0,0,0,0.08)}.ai1ec-agenda-view .ai1ec-event .ai1ec-event-click{cursor:pointer;line-height:1.4em;color:#507295;text-shadow:0 1px 0 #fff}.ai1ec-agenda-view .ai1ec-event .ai1ec-event-click:hover>.ai1ec-event-expand{visibility:visible}.ai1ec-agenda-view .ai1ec-event .ai1ec-event-time{float:left;margin-right:.5em;min-height:1em;font-weight:bold;line-height:1.4em}.ai1ec-agenda-view .ai1ec-event .ai1ec-event-title{margin:0 0 0 8em;font-size:10pt;font-weight:normal}.ai1ec-agenda-view .ai1ec-event:hover,.ai1ec-agenda-view .ai1ec-event.ai1ec-expanded:hover{border-color:#aeaeae}.ai1ec-agenda-view .ai1ec-event:hover .ai1ec-event-click{color:#354c63}.ai1ec-agenda-view .ai1ec-event.ai1ec-allday{padding:0!important}.ai1ec-agenda-view .ai1ec-event.ai1ec-allday .ai1ec-event-click{color:#fff;background:#507295;padding:.1em .4em;-webkit-border-radius:.3em;-moz-border-radius:.3em;border-radius:.3em;text-shadow:none}.ai1ec-agenda-view .ai1ec-event.ai1ec-allday .ai1ec-event-time{color:#fff}.ai1ec-agenda-view .ai1ec-event.ai1ec-allday .ai1ec-event-title{margin:0}.ai1ec-agenda-view .ai1ec-event.ai1ec-allday:hover .ai1ec-event-click{color:#fff;background:#354c63}.ai1ec-agenda-view .ai1ec-allday-label{font-size:8pt;color:rgba(255,255,255,0.5);padding-left:.2em}.ai1ec-agenda-view .ai1ec-event-expand{float:right;margin-left:.5em;visibility:hidden;font-size:9pt}.ai1ec-agenda-view .ai1ec-category-colors{float:left;font-size:.9em;margin:.2em .2em -0.2em -0.1em}.ai1ec-agenda-view .ai1ec-category-colors .ai1ec-category-color{padding:1px}.ai1ec-agenda-view .ai1ec-event-summary{display:none}.ai1ec-agenda-view .ai1ec-event-summary .ai1ec-event-title{margin:.1em 0;font-size:11pt;line-height:1.1em}.ai1ec-agenda-view .ai1ec-event-summary .ai1ec-event-time{width:auto;float:none;font-size:9pt;line-height:1.5em}.ai1ec-agenda-view .ai1ec-event-summary .ai1ec-event-click{border-bottom:1px solid #ddd;margin-bottom:.4em;padding:.5em .25em}.ai1ec-agenda-view .ai1ec-allday .ai1ec-event-summary .ai1ec-event-click{border-bottom:0;-webkit-border-radius:.3em .3em 0 0;-moz-border-radius:.3em .3em 0 0;border-radius:.3em .3em 0 0;padding:.4em .6em}.ai1ec-agenda-view .ai1ec-categories,.ai1ec-agenda-view .ai1ec-tags{font-size:8pt}.ai1ec-agenda-view .ai1ec-event-description,.ai1ec-agenda-view .ai1ec-event-description p{font-size:9pt;line-height:1.5em}.ai1ec-agenda-view .ai1ec-event-description{clear:both;overflow:hidden;padding:0 .25em 3.6em;max-height:20em}.ai1ec-agenda-view .ai1ec-event-description p{margin:.5em 0 .75em!important;padding:0!important}.ai1ec-agenda-view .ai1ec-event-description .ai1ec-label{font-size:8pt}.ai1ec-agenda-view .ai1ec-allday .ai1ec-event-description{position:relative;overflow:hidden;padding:0 .65em 3.5em}.ai1ec-agenda-view .ai1ec-event-overlay{position:absolute;z-index:5;bottom:0;left:0;right:0;padding:.4em .5em;-webkit-border-radius:0 0 .5em .5em;-moz-border-radius:0 0 .5em .5em;border-radius:0 0 .5em .5em;background:rgba(252,252,240,0.85);background:-moz-linear-gradient(top,rgba(255,255,255,0.75),#fafae3);background:-ms-linear-gradient(top,rgba(255,255,255,0.75),#fafae3);background:-webkit-gradient(linear,0 0,0 100%,from(rgba(255,255,255,0.75)),to(#fafae3));background:-webkit-linear-gradient(top,rgba(255,255,255,0.75),#fafae3);background:-o-linear-gradient(top,rgba(255,255,255,0.75),#fafae3);background:linear-gradient(top,rgba(255,255,255,0.75),#fafae3);background-repeat:repeat-x}.ai1ec-agenda-view .ai1ec-read-more{float:right;margin:.6em 0 .2em}.ai1ec-subscribe{clear:both}.ai1ec-subscribe-filtered{display:none}i.icon-print{padding:0 7px}
|
themes-ai1ec/vortex/css/event.css
ADDED
@@ -0,0 +1 @@
|
|
|
1 |
+
.clearfix{*zoom:1}.clearfix:before,.clearfix:after{display:table;content:""}.clearfix:after{clear:both}.hide-text{overflow:hidden;text-indent:100%;white-space:nowrap}.input-block-level{display:block;width:100%;min-height:28px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box}.ai1ec-full-event{border:none!important;border-collapse:collapse!important;width:100%;margin-bottom:.5em!important}.ai1ec-full-event td{font-size:10pt!important}.ai1ec-full-event th,.ai1ec-full-event td{line-height:14pt!important;padding:.3em .5em!important;border:none!important;vertical-align:top}.ai1ec-full-event th.ai1ec-empty,.ai1ec-full-event td.ai1ec-empty{padding:0!important}.ai1ec-full-event th{color:#888!important;font-size:9pt!important;font-family:sans-serif!important;font-weight:bold;background:rgba(0,0,0,0.05600000000000001);background:-webkit-gradient(linear,0 0,100% 0,from(rgba(0,0,0,0.028000000000000004)),color-stop(90%,rgba(0,0,0,0.07)),to(rgba(0,0,0,0)));background:-webkit-linear-gradient(left,rgba(0,0,0,0.028000000000000004),rgba(0,0,0,0.07) 90%,rgba(0,0,0,0));background:-moz-linear-gradient(left,rgba(0,0,0,0.028000000000000004),rgba(0,0,0,0.07) 90%,rgba(0,0,0,0));background:-ms-linear-gradient(left,rgba(0,0,0,0.028000000000000004),rgba(0,0,0,0.07) 90%,rgba(0,0,0,0));background:-o-linear-gradient(left,rgba(0,0,0,0.028000000000000004),rgba(0,0,0,0.07) 90%,rgba(0,0,0,0));background:linear-gradient(left,rgba(0,0,0,0.028000000000000004),rgba(0,0,0,0.07) 90%,rgba(0,0,0,0));background-repeat:no-repeat;text-align:right;text-shadow:0 1px 0 #fff;width:6em}.ai1ec-multi-event th,.ai1ec-multi-event td{padding:.3em .5em!important}.ai1ec-full-event .ai1ec-time{line-height:16pt!important;vertical-align:middle}.ai1ec-full-event td.ai1ec-time{font-weight:bold;font-size:11pt!important}.ai1ec-full-event .ai1ec-allday-label{font-size:10pt!important;color:rgba(51,51,51,0.5);padding-left:.2em}.ai1ec-multi-event .ai1ec-time{line-height:15pt!important}.ai1ec-multi-event td.ai1ec-time{font-size:10pt!important}.ai1ec-multi-event .ai1ec-allday-label{font-size:9pt!important}.ai1ec-full-event td.ai1ec-location{min-width:30%}.ai1ec-full-event td.ai1ec-map{text-align:right}.ai1ec-full-event td.ai1ec-map.ai1ec-has-map{width:55%;text-align:left}.ai1ec-full-event .ai1ec-gmap-container{border:1px solid #ddd;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;margin-bottom:.3em;position:relative}.ai1ec-full-event #ai1ec-gmap-canvas{min-width:18em;width:100%;height:12em}.ai1ec-full-event .ai1ec-gmap-link{position:absolute;margin:0;font-size:.8em!important;bottom:-1px;right:-1px}.ai1ec-full-event #ai1ec-gmap-canvas input{margin:0!important}.ai1ec-multi-event .ai1ec-gmap-link{font-size:8pt!important;margin:-0.2em 0}.ai1ec-gmap-placeholder{-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;color:#507295;cursor:pointer;height:12em;border:1px dashed #ddd;min-width:18em;margin-bottom:.3em;text-align:center;width:100%}.ai1ec-gmap-placeholder:hover{border-color:#b7b7b7;color:#354c63}.ai1ec-gmap-placeholder strong{position:relative;top:45%}.ai1ec-gmap-container-hidden{position:absolute!important;visibility:hidden}.ai1ec-full-event .ai1ec-contact a{white-space:nowrap}.ai1ec-full-event td.ai1ec-tags,.ai1ec-full-event td.ai1ec-categories{padding:.1em .2em!important}.ai1ec-full-event .ai1ec-category{float:left}.ai1ec-multi-event .ai1ec-category{font-size:8pt!important}.ai1ec-event-footer{clear:left;font-size:.9em!important;font-style:italic}.ai1ec-ics-icon{background:url(../img/ics-icon.png) no-repeat right;padding-right:15px}.ai1ec-excerpt{margin-bottom:.5em;font-size:10pt!important;line-height:1.6em;overflow:hidden}.ai1ec-excerpt>div{padding-left:7.2em}.ai1ec-excerpt .ai1ec-label{clear:left;float:left;background:rgba(0,0,0,0.05600000000000001);background:-webkit-gradient(linear,0 0,100% 0,from(rgba(0,0,0,0.4)),color-stop(90%,rgba(0,0,0,0.07)),to(rgba(0,0,0,0)));background:-webkit-linear-gradient(left,rgba(0,0,0,0.4),rgba(0,0,0,0.07) 90%,rgba(0,0,0,0));background:-moz-linear-gradient(left,rgba(0,0,0,0.4),rgba(0,0,0,0.07) 90%,rgba(0,0,0,0));background:-ms-linear-gradient(left,rgba(0,0,0,0.4),rgba(0,0,0,0.07) 90%,rgba(0,0,0,0));background:-o-linear-gradient(left,rgba(0,0,0,0.4),rgba(0,0,0,0.07) 90%,rgba(0,0,0,0));background:linear-gradient(left,rgba(0,0,0,0.4),rgba(0,0,0,0.07) 90%,rgba(0,0,0,0));background-repeat:no-repeat;margin-left:-7.2em;padding:0 .6em!important;text-align:right;text-shadow:0 1px 0 #fff;width:6em}.ai1ec-excerpt .ai1ec-time{font-weight:bold}.ai1ec-excerpt .ai1ec-event-link{float:right;font-size:8pt!important}.ai1ec-excerpt .ai1ec-allday-label{font-size:9pt!important;color:#bbb;padding-left:.2em}
|
themes-ai1ec/vortex/css/general.css
ADDED
@@ -0,0 +1 @@
|
|
|
1 |
+
.clearfix{*zoom:1}.clearfix:before,.clearfix:after{display:table;content:""}.clearfix:after{clear:both}.hide-text{overflow:hidden;text-indent:100%;white-space:nowrap}.input-block-level{display:block;width:100%;min-height:28px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box}@font-face{font-family:'FontAwesome';src:url('../font/fontawesome-webfont.eot');src:url('../font/fontawesome-webfont.eot?#iefix') format('embedded-opentype'),url('../font/fontawesome-webfont.woff') format('woff'),url('../font/fontawesome-webfont.ttf') format('truetype'),url('../font/fontawesome-webfont.svgz#FontAwesomeRegular') format('svg'),url('../font/fontawesome-webfont.svg#FontAwesomeRegular') format('svg');font-weight:normal;font-style:normal}[class^="icon-"],[class*=" icon-"]{display:inline;width:auto;height:auto;line-height:inherit;vertical-align:baseline;background-image:none;background-position:0 0;background-repeat:repeat}li[class^="icon-"],li[class*=" icon-"]{display:block}[class^="icon-"]:before,[class*=" icon-"]:before{font-family:FontAwesome;font-weight:normal;font-style:normal;display:inline-block;text-decoration:inherit}a [class^="icon-"],a [class*=" icon-"]{display:inline-block;text-decoration:inherit}.icon-large:before{vertical-align:top;font-size:1.3333333333333333em}.btn [class^="icon-"],.btn [class*=" icon-"]{line-height:.9em}li [class^="icon-"],li [class*=" icon-"]{display:inline-block;width:1.25em;text-align:center}li .icon-large[class^="icon-"],li .icon-large[class*=" icon-"]{width:1.875em}li[class^="icon-"],li[class*=" icon-"]{margin-left:0;list-style-type:none}li[class^="icon-"]:before,li[class*=" icon-"]:before{text-indent:-2em;text-align:center}li[class^="icon-"].icon-large:before,li[class*=" icon-"].icon-large:before{text-indent:-1.3333333333333333em}.icon-glass:before{content:"\f000"}.icon-music:before{content:"\f001"}.icon-search:before{content:"\f002"}.icon-envelope:before{content:"\f003"}.icon-heart:before{content:"\f004"}.icon-star:before{content:"\f005"}.icon-star-empty:before{content:"\f006"}.icon-user:before{content:"\f007"}.icon-film:before{content:"\f008"}.icon-th-large:before{content:"\f009"}.icon-th:before{content:"\f00a"}.icon-th-list:before{content:"\f00b"}.icon-ok:before{content:"\f00c"}.icon-remove:before{content:"\f00d"}.icon-zoom-in:before{content:"\f00e"}.icon-zoom-out:before{content:"\f010"}.icon-off:before{content:"\f011"}.icon-signal:before{content:"\f012"}.icon-cog:before{content:"\f013"}.icon-trash:before{content:"\f014"}.icon-home:before{content:"\f015"}.icon-file:before{content:"\f016"}.icon-time:before{content:"\f017"}.icon-road:before{content:"\f018"}.icon-download-alt:before{content:"\f019"}.icon-download:before{content:"\f01a"}.icon-upload:before{content:"\f01b"}.icon-inbox:before{content:"\f01c"}.icon-play-circle:before{content:"\f01d"}.icon-repeat:before{content:"\f01e"}.icon-refresh:before{content:"\f021"}.icon-list-alt:before{content:"\f022"}.icon-lock:before{content:"\f023"}.icon-flag:before{content:"\f024"}.icon-headphones:before{content:"\f025"}.icon-volume-off:before{content:"\f026"}.icon-volume-down:before{content:"\f027"}.icon-volume-up:before{content:"\f028"}.icon-qrcode:before{content:"\f029"}.icon-barcode:before{content:"\f02a"}.icon-tag:before{content:"\f02b"}.icon-tags:before{content:"\f02c"}.icon-book:before{content:"\f02d"}.icon-bookmark:before{content:"\f02e"}.icon-print:before{content:"\f02f"}.icon-camera:before{content:"\f030"}.icon-font:before{content:"\f031"}.icon-bold:before{content:"\f032"}.icon-italic:before{content:"\f033"}.icon-text-height:before{content:"\f034"}.icon-text-width:before{content:"\f035"}.icon-align-left:before{content:"\f036"}.icon-align-center:before{content:"\f037"}.icon-align-right:before{content:"\f038"}.icon-align-justify:before{content:"\f039"}.icon-list:before{content:"\f03a"}.icon-indent-left:before{content:"\f03b"}.icon-indent-right:before{content:"\f03c"}.icon-facetime-video:before{content:"\f03d"}.icon-picture:before{content:"\f03e"}.icon-pencil:before{content:"\f040"}.icon-map-marker:before{content:"\f041"}.icon-adjust:before{content:"\f042"}.icon-tint:before{content:"\f043"}.icon-edit:before{content:"\f044"}.icon-share:before{content:"\f045"}.icon-check:before{content:"\f046"}.icon-move:before{content:"\f047"}.icon-step-backward:before{content:"\f048"}.icon-fast-backward:before{content:"\f049"}.icon-backward:before{content:"\f04a"}.icon-play:before{content:"\f04b"}.icon-pause:before{content:"\f04c"}.icon-stop:before{content:"\f04d"}.icon-forward:before{content:"\f04e"}.icon-fast-forward:before{content:"\f050"}.icon-step-forward:before{content:"\f051"}.icon-eject:before{content:"\f052"}.icon-chevron-left:before{content:"\f053"}.icon-chevron-right:before{content:"\f054"}.icon-plus-sign:before{content:"\f055"}.icon-minus-sign:before{content:"\f056"}.icon-remove-sign:before{content:"\f057"}.icon-ok-sign:before{content:"\f058"}.icon-question-sign:before{content:"\f059"}.icon-info-sign:before{content:"\f05a"}.icon-screenshot:before{content:"\f05b"}.icon-remove-circle:before{content:"\f05c"}.icon-ok-circle:before{content:"\f05d"}.icon-ban-circle:before{content:"\f05e"}.icon-arrow-left:before{content:"\f060"}.icon-arrow-right:before{content:"\f061"}.icon-arrow-up:before{content:"\f062"}.icon-arrow-down:before{content:"\f063"}.icon-share-alt:before{content:"\f064"}.icon-resize-full:before{content:"\f065"}.icon-resize-small:before{content:"\f066"}.icon-plus:before{content:"\f067"}.icon-minus:before{content:"\f068"}.icon-asterisk:before{content:"\f069"}.icon-exclamation-sign:before{content:"\f06a"}.icon-gift:before{content:"\f06b"}.icon-leaf:before{content:"\f06c"}.icon-fire:before{content:"\f06d"}.icon-eye-open:before{content:"\f06e"}.icon-eye-close:before{content:"\f070"}.icon-warning-sign:before{content:"\f071"}.icon-plane:before{content:"\f072"}.icon-calendar:before{content:"\f073"}.icon-random:before{content:"\f074"}.icon-comment:before{content:"\f075"}.icon-magnet:before{content:"\f076"}.icon-chevron-up:before{content:"\f077"}.icon-chevron-down:before{content:"\f078"}.icon-retweet:before{content:"\f079"}.icon-shopping-cart:before{content:"\f07a"}.icon-folder-close:before{content:"\f07b"}.icon-folder-open:before{content:"\f07c"}.icon-resize-vertical:before{content:"\f07d"}.icon-resize-horizontal:before{content:"\f07e"}.icon-bar-chart:before{content:"\f080"}.icon-twitter-sign:before{content:"\f081"}.icon-facebook-sign:before{content:"\f082"}.icon-camera-retro:before{content:"\f083"}.icon-key:before{content:"\f084"}.icon-cogs:before{content:"\f085"}.icon-comments:before{content:"\f086"}.icon-thumbs-up:before{content:"\f087"}.icon-thumbs-down:before{content:"\f088"}.icon-star-half:before{content:"\f089"}.icon-heart-empty:before{content:"\f08a"}.icon-signout:before{content:"\f08b"}.icon-linkedin-sign:before{content:"\f08c"}.icon-pushpin:before{content:"\f08d"}.icon-external-link:before{content:"\f08e"}.icon-signin:before{content:"\f090"}.icon-trophy:before{content:"\f091"}.icon-github-sign:before{content:"\f092"}.icon-upload-alt:before{content:"\f093"}.icon-lemon:before{content:"\f094"}.thenly{margin:0;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:13px;line-height:16px;color:#333;background-color:#fff}.thenly article,.thenly aside,.thenly details,.thenly figcaption,.thenly figure,.thenly footer,.thenly header,.thenly hgroup,.thenly nav,.thenly section{display:block}.thenly audio,.thenly canvas,.thenly video{display:inline-block;*display:inline;*zoom:1}.thenly audio:not([controls]){display:none}.thenly html{font-size:100%;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}.thenly a:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.thenly a:hover,.thenly a:active{outline:0}.thenly sub,.thenly sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}.thenly sup{top:-0.5em}.thenly sub{bottom:-0.25em}.thenly img{height:auto;border:0;-ms-interpolation-mode:bicubic;vertical-align:middle}.thenly button,.thenly input,.thenly select,.thenly textarea{margin:0;font-size:100%;vertical-align:middle}.thenly button,.thenly input{*overflow:visible;line-height:normal}.thenly button::-moz-focus-inner,.thenly input::-moz-focus-inner{padding:0;border:0}.thenly button,.thenly input[type="button"],.thenly input[type="reset"],.thenly input[type="submit"]{cursor:pointer;-webkit-appearance:button}.thenly input[type="search"]{-webkit-appearance:textfield;-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}.thenly input[type="search"]::-webkit-search-decoration,.thenly input[type="search"]::-webkit-search-cancel-button{-webkit-appearance:none}.thenly textarea{overflow:auto;vertical-align:top}.thenly body{margin:0;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:13px;line-height:16px;color:#333;background-color:#fff}.thenly a{color:#507295;text-decoration:none}.thenly a:hover{color:#354c63;text-decoration:underline}.thenly p{margin:0 0 8px;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:13px;line-height:16px}.thenly p small{font-size:11px;color:#999}.thenly .lead{margin-bottom:16px;font-size:20px;font-weight:200;line-height:24px}.thenly h1,.thenly h2,.thenly h3,.thenly h4,.thenly h5,.thenly h6{margin:0;font-family:Calibri,Nunito,'Helvetica Neue',Helvetica,Arial,sans-serif;font-weight:bold;color:#333;text-rendering:optimizelegibility}.thenly h1 small,.thenly h2 small,.thenly h3 small,.thenly h4 small,.thenly h5 small,.thenly h6 small{font-weight:normal;color:#999}.thenly h1{font-size:30px;line-height:32px}.thenly h1 small{font-size:18px}.thenly h2{font-size:24px;line-height:32px}.thenly h2 small{font-size:18px}.thenly h3{line-height:24px;font-size:18px}.thenly h3 small{font-size:14px}.thenly h4,.thenly h5,.thenly h6{line-height:16px}.thenly h4{font-size:14px}.thenly h4 small{font-size:12px}.thenly h5{font-size:12px}.thenly h6{font-size:11px;color:#999;text-transform:uppercase}.thenly .page-header{padding-bottom:15px;margin:16px 0;border-bottom:1px solid #eee}.thenly .page-header h1{line-height:1}.thenly ul,.thenly ol{padding:0;margin:0 0 8px 25px}.thenly ul ul,.thenly ul ol,.thenly ol ol,.thenly ol ul{margin-bottom:0}.thenly ul{list-style:disc}.thenly ol{list-style:decimal}.thenly li{line-height:16px}.thenly ul.unstyled,.thenly ol.unstyled{margin-left:0;list-style:none}.thenly dl{margin-bottom:16px}.thenly dt,.thenly dd{line-height:16px}.thenly dt{font-weight:bold;line-height:15px}.thenly dd{margin-left:8px}.thenly .dl-horizontal dt{float:left;clear:left;width:120px;text-align:right}.thenly .dl-horizontal dd{margin-left:130px}.thenly hr{margin:16px 0;border:0;border-top:1px solid #eee;border-bottom:1px solid #fff}.thenly strong{font-weight:bold}.thenly em{font-style:italic}.thenly .muted{color:#999}.thenly abbr[title]{border-bottom:1px dotted #ddd;cursor:help}.thenly abbr.initialism{font-size:90%;text-transform:uppercase}.thenly blockquote{padding:0 0 0 15px;margin:0 0 16px;border-left:5px solid #eee}.thenly blockquote p{margin-bottom:0;font-size:16px;font-weight:300;line-height:20px}.thenly blockquote small{display:block;line-height:16px;color:#999}.thenly blockquote small:before{content:'\2014 \00A0'}.thenly blockquote.pull-right{float:right;padding-left:0;padding-right:15px;border-left:0;border-right:5px solid #eee}.thenly blockquote.pull-right p,.thenly blockquote.pull-right small{text-align:right}.thenly q:before,.thenly q:after,.thenly blockquote:before,.thenly blockquote:after{content:""}.thenly address{display:block;margin-bottom:16px;line-height:16px;font-style:normal}.thenly small{font-size:100%}.thenly cite{font-style:normal}.thenly .dropdown{position:relative}.thenly .dropdown-toggle{*margin-bottom:-3px}.thenly .dropdown-toggle:active,.thenly .open .dropdown-toggle{outline:0}.thenly .caret{display:inline-block;width:0;height:0;vertical-align:top;border-left:4px solid transparent;border-right:4px solid transparent;border-top:4px solid #000;opacity:.3;filter:alpha(opacity=30);content:""}.thenly .dropdown .caret{margin-top:8px;margin-left:2px}.thenly .dropdown:hover .caret,.thenly .open.dropdown .caret{opacity:1;filter:alpha(opacity=100)}.thenly .dropdown-menu{position:absolute;top:100%;left:0;z-index:2000;float:left;display:none;min-width:160px;padding:4px 0;margin:0;list-style:none;background-color:#fff;border-color:#ccc;border-color:rgba(0,0,0,0.2);border-style:solid;border-width:1px;-webkit-border-radius:0 0 5px 5px;-moz-border-radius:0 0 5px 5px;border-radius:0 0 5px 5px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,0.2);-moz-box-shadow:0 5px 10px rgba(0,0,0,0.2);box-shadow:0 5px 10px rgba(0,0,0,0.2);-webkit-background-clip:padding-box;-moz-background-clip:padding;background-clip:padding-box;*border-right-width:2px;*border-bottom-width:2px}.thenly .dropdown-menu.pull-right{right:0;left:auto}.thenly .dropdown-menu .divider{height:1px;margin:7px 1px;overflow:hidden;background-color:#e5e5e5;border-bottom:1px solid #fff;*width:100%;*margin:-5px 0 5px}.thenly .dropdown-menu a{display:block;padding:3px 15px;clear:both;font-weight:normal;line-height:16px;color:#333;white-space:nowrap}.thenly .dropdown-menu li>a:hover,.thenly .dropdown-menu .active>a,.thenly .dropdown-menu .active>a:hover{color:#000;text-decoration:none;background-color:#e0efff}.thenly .dropdown.open{*z-index:2000}.thenly .dropdown.open .dropdown-toggle{color:#fff;background:#ccc;background:rgba(0,0,0,0.3)}.thenly .dropdown.open .dropdown-menu{display:block}.thenly .pull-right .dropdown-menu{left:auto;right:0}.thenly .dropup .caret,.thenly .navbar-fixed-bottom .dropdown .caret{border-top:0;border-bottom:4px solid #000;content:"\2191"}.thenly .dropup .dropdown-menu,.thenly .navbar-fixed-bottom .dropdown .dropdown-menu{top:auto;bottom:100%;margin-bottom:1px}.thenly .typeahead{margin-top:2px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.thenly .btn{display:inline-block;*display:inline;*zoom:1;padding:4px 10px 4px;margin-bottom:0;font-size:13px;line-height:16px;color:#333;text-align:center;text-shadow:0 1px 1px rgba(255,255,255,0.75);vertical-align:middle;background-color:#f5f5f5;background-image:-moz-linear-gradient(top,#fff,#e6e6e6);background-image:-ms-linear-gradient(top,#fff,#e6e6e6);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fff),to(#e6e6e6));background-image:-webkit-linear-gradient(top,#fff,#e6e6e6);background-image:-o-linear-gradient(top,#fff,#e6e6e6);background-image:linear-gradient(top,#fff,#e6e6e6);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff',endColorstr='#e6e6e6',GradientType=0);border-color:#e6e6e6 #e6e6e6 #bfbfbf;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:dximagetransform.microsoft.gradient(enabled=false);border:1px solid #ccc;border-bottom-color:#b3b3b3;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05);box-shadow:inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05);cursor:pointer;*margin-left:.3em}.thenly .btn:hover,.thenly .btn:active,.thenly .btn.active,.thenly .btn.disabled,.thenly .btn[disabled]{background-color:#e6e6e6}.thenly .btn:active,.thenly .btn.active{background-color:#ccc \9}.thenly .btn:first-child{*margin-left:0}.thenly .btn:hover{color:#333;text-decoration:none;background-color:#e6e6e6;background-position:0 -15px;-webkit-transition:background-position .1s linear;-moz-transition:background-position .1s linear;-ms-transition:background-position .1s linear;-o-transition:background-position .1s linear;transition:background-position .1s linear}.thenly .btn:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.thenly .btn.active,.thenly .btn:active{background-image:none;-webkit-box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05);box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05);background-color:#e6e6e6;background-color:#d9d9d9 \9;outline:0}.thenly .btn.disabled,.thenly .btn[disabled]{cursor:default;background-image:none;background-color:#e6e6e6;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.thenly .btn-large{padding:9px 14px;font-size:15px;line-height:normal;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.thenly .btn-large [class^="icon-"]{margin-top:1px}.thenly .btn-small{padding:5px 9px;font-size:11px;line-height:14px}.thenly .btn-small [class^="icon-"]{margin-top:-1px}.thenly .btn-mini{padding:2px 6px;font-size:11px;line-height:12px}.thenly .btn-primary,.thenly .btn-primary:hover,.thenly .btn-warning,.thenly .btn-warning:hover,.thenly .btn-danger,.thenly .btn-danger:hover,.thenly .btn-success,.thenly .btn-success:hover,.thenly .btn-info,.thenly .btn-info:hover,.thenly .btn-inverse,.thenly .btn-inverse:hover{text-shadow:0 -1px 0 rgba(0,0,0,0.25);color:#fff}.thenly .btn-primary.active,.thenly .btn-warning.active,.thenly .btn-danger.active,.thenly .btn-success.active,.thenly .btn-info.active,.thenly .btn-inverse.active{color:rgba(255,255,255,0.75)}.thenly .btn-primary{background-color:#5977a6;background-image:-moz-linear-gradient(top,#597fa6,#596ca6);background-image:-ms-linear-gradient(top,#597fa6,#596ca6);background-image:-webkit-gradient(linear,0 0,0 100%,from(#597fa6),to(#596ca6));background-image:-webkit-linear-gradient(top,#597fa6,#596ca6);background-image:-o-linear-gradient(top,#597fa6,#596ca6);background-image:linear-gradient(top,#597fa6,#596ca6);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#597fa6',endColorstr='#596ca6',GradientType=0);border-color:#596ca6 #596ca6 #3e4b74;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:dximagetransform.microsoft.gradient(enabled=false)}.thenly .btn-primary:hover,.thenly .btn-primary:active,.thenly .btn-primary.active,.thenly .btn-primary.disabled,.thenly .btn-primary[disabled]{background-color:#596ca6}.thenly .btn-primary:active,.thenly .btn-primary.active{background-color:#475684 \9}.thenly .btn-warning{background-color:#faa732;background-image:-moz-linear-gradient(top,#fbb450,#f89406);background-image:-ms-linear-gradient(top,#fbb450,#f89406);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fbb450),to(#f89406));background-image:-webkit-linear-gradient(top,#fbb450,#f89406);background-image:-o-linear-gradient(top,#fbb450,#f89406);background-image:linear-gradient(top,#fbb450,#f89406);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fbb450',endColorstr='#f89406',GradientType=0);border-color:#f89406 #f89406 #ad6704;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:dximagetransform.microsoft.gradient(enabled=false)}.thenly .btn-warning:hover,.thenly .btn-warning:active,.thenly .btn-warning.active,.thenly .btn-warning.disabled,.thenly .btn-warning[disabled]{background-color:#f89406}.thenly .btn-warning:active,.thenly .btn-warning.active{background-color:#c67605 \9}.thenly .btn-danger{background-color:#da4f49;background-image:-moz-linear-gradient(top,#ee5f5b,#bd362f);background-image:-ms-linear-gradient(top,#ee5f5b,#bd362f);background-image:-webkit-gradient(linear,0 0,0 100%,from(#ee5f5b),to(#bd362f));background-image:-webkit-linear-gradient(top,#ee5f5b,#bd362f);background-image:-o-linear-gradient(top,#ee5f5b,#bd362f);background-image:linear-gradient(top,#ee5f5b,#bd362f);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ee5f5b',endColorstr='#bd362f',GradientType=0);border-color:#bd362f #bd362f #802420;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:dximagetransform.microsoft.gradient(enabled=false)}.thenly .btn-danger:hover,.thenly .btn-danger:active,.thenly .btn-danger.active,.thenly .btn-danger.disabled,.thenly .btn-danger[disabled]{background-color:#bd362f}.thenly .btn-danger:active,.thenly .btn-danger.active{background-color:#942a25 \9}.thenly .btn-success{background-color:#5bb75b;background-image:-moz-linear-gradient(top,#62c462,#51a351);background-image:-ms-linear-gradient(top,#62c462,#51a351);background-image:-webkit-gradient(linear,0 0,0 100%,from(#62c462),to(#51a351));background-image:-webkit-linear-gradient(top,#62c462,#51a351);background-image:-o-linear-gradient(top,#62c462,#51a351);background-image:linear-gradient(top,#62c462,#51a351);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#62c462',endColorstr='#51a351',GradientType=0);border-color:#51a351 #51a351 #387038;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:dximagetransform.microsoft.gradient(enabled=false)}.thenly .btn-success:hover,.thenly .btn-success:active,.thenly .btn-success.active,.thenly .btn-success.disabled,.thenly .btn-success[disabled]{background-color:#51a351}.thenly .btn-success:active,.thenly .btn-success.active{background-color:#408140 \9}.thenly .btn-info{background-color:#e0efff;background-image:-moz-linear-gradient(top,#e0efff,#e0efff);background-image:-ms-linear-gradient(top,#e0efff,#e0efff);background-image:-webkit-gradient(linear,0 0,0 100%,from(#e0efff),to(#e0efff));background-image:-webkit-linear-gradient(top,#e0efff,#e0efff);background-image:-o-linear-gradient(top,#e0efff,#e0efff);background-image:linear-gradient(top,#e0efff,#e0efff);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#e0efff',endColorstr='#e0efff',GradientType=0);border-color:#e0efff #e0efff #94c8ff;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:dximagetransform.microsoft.gradient(enabled=false)}.thenly .btn-info:hover,.thenly .btn-info:active,.thenly .btn-info.active,.thenly .btn-info.disabled,.thenly .btn-info[disabled]{background-color:#e0efff}.thenly .btn-info:active,.thenly .btn-info.active{background-color:#add5ff \9}.thenly .btn-inverse{background-color:#414141;background-image:-moz-linear-gradient(top,#555,#222);background-image:-ms-linear-gradient(top,#555,#222);background-image:-webkit-gradient(linear,0 0,0 100%,from(#555),to(#222));background-image:-webkit-linear-gradient(top,#555,#222);background-image:-o-linear-gradient(top,#555,#222);background-image:linear-gradient(top,#555,#222);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#555555',endColorstr='#222222',GradientType=0);border-color:#222 #222 #000;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:dximagetransform.microsoft.gradient(enabled=false)}.thenly .btn-inverse:hover,.thenly .btn-inverse:active,.thenly .btn-inverse.active,.thenly .btn-inverse.disabled,.thenly .btn-inverse[disabled]{background-color:#222}.thenly .btn-inverse:active,.thenly .btn-inverse.active{background-color:#080808 \9}.thenly button.btn,.thenly input[type="submit"].btn{*padding-top:2px;*padding-bottom:2px}.thenly button.btn::-moz-focus-inner,.thenly input[type="submit"].btn::-moz-focus-inner{padding:0;border:0}.thenly button.btn.btn-large,.thenly input[type="submit"].btn.btn-large{*padding-top:7px;*padding-bottom:7px}.thenly button.btn.btn-small,.thenly input[type="submit"].btn.btn-small{*padding-top:3px;*padding-bottom:3px}.thenly button.btn.btn-mini,.thenly input[type="submit"].btn.btn-mini{*padding-top:1px;*padding-bottom:1px}.thenly .btn-group{position:relative;*zoom:1;*margin-left:.3em}.thenly .btn-group:before,.thenly .btn-group:after{display:table;content:""}.thenly .btn-group:after{clear:both}.thenly .btn-group:first-child{*margin-left:0}.thenly .btn-group+.btn-group{margin-left:5px}.thenly .btn-toolbar{margin-top:8px;margin-bottom:8px}.thenly .btn-toolbar .btn-group{display:inline-block;*display:inline;*zoom:1}.thenly .btn-group .btn{position:relative;float:left;margin-left:-1px;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.thenly .btn-group .btn:first-child{margin-left:0;-webkit-border-top-left-radius:4px;-moz-border-radius-topleft:4px;border-top-left-radius:4px;-webkit-border-bottom-left-radius:4px;-moz-border-radius-bottomleft:4px;border-bottom-left-radius:4px}.thenly .btn-group .btn:last-child,.thenly .btn-group .dropdown-toggle{-webkit-border-top-right-radius:4px;-moz-border-radius-topright:4px;border-top-right-radius:4px;-webkit-border-bottom-right-radius:4px;-moz-border-radius-bottomright:4px;border-bottom-right-radius:4px}.thenly .btn-group .btn.large:first-child{margin-left:0;-webkit-border-top-left-radius:6px;-moz-border-radius-topleft:6px;border-top-left-radius:6px;-webkit-border-bottom-left-radius:6px;-moz-border-radius-bottomleft:6px;border-bottom-left-radius:6px}.thenly .btn-group .btn.large:last-child,.thenly .btn-group .large.dropdown-toggle{-webkit-border-top-right-radius:6px;-moz-border-radius-topright:6px;border-top-right-radius:6px;-webkit-border-bottom-right-radius:6px;-moz-border-radius-bottomright:6px;border-bottom-right-radius:6px}.thenly .btn-group .btn:hover,.thenly .btn-group .btn:focus,.thenly .btn-group .btn:active,.thenly .btn-group .btn.active{z-index:2}.thenly .btn-group .dropdown-toggle:active,.thenly .btn-group.open .dropdown-toggle{outline:0}.thenly .btn-group .dropdown-toggle{padding-left:8px;padding-right:8px;-webkit-box-shadow:inset 1px 0 0 rgba(255,255,255,0.125),inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05);-moz-box-shadow:inset 1px 0 0 rgba(255,255,255,0.125),inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05);box-shadow:inset 1px 0 0 rgba(255,255,255,0.125),inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05);*padding-top:3px;*padding-bottom:3px}.thenly .btn-group .btn-mini.dropdown-toggle{padding-left:5px;padding-right:5px;*padding-top:1px;*padding-bottom:1px}.thenly .btn-group .btn-small.dropdown-toggle{*padding-top:4px;*padding-bottom:4px}.thenly .btn-group .btn-large.dropdown-toggle{padding-left:12px;padding-right:12px}.thenly .btn-group.open{*z-index:2000}.thenly .btn-group.open .dropdown-menu{display:block;margin-top:1px;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.thenly .btn-group.open .dropdown-toggle{background-image:none;-webkit-box-shadow:inset 0 1px 6px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 6px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05);box-shadow:inset 0 1px 6px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05)}.thenly .btn .caret{margin-top:7px;margin-left:0}.thenly .btn:hover .caret,.thenly .open.btn-group .caret{opacity:1;filter:alpha(opacity=100)}.thenly .btn-mini .caret{margin-top:5px}.thenly .btn-small .caret{margin-top:6px}.thenly .btn-large .caret{margin-top:6px;border-left:5px solid transparent;border-right:5px solid transparent;border-top:5px solid #000}.thenly .btn-primary .caret,.thenly .btn-warning .caret,.thenly .btn-danger .caret,.thenly .btn-info .caret,.thenly .btn-success .caret,.thenly .btn-inverse .caret{border-top-color:#fff;border-bottom-color:#fff;opacity:.75;filter:alpha(opacity=75)}.thenly .pull-right{float:right}.thenly .pull-left{float:left}.thenly .hide{display:none}.thenly .show{display:block}.thenly .invisible{visibility:hidden}.thenly .btn-info,.thenly .btn-info:hover,.thenly .btn-info:active,.thenly .btn-info.active,.thenly .btn-info.active:hover{color:#333;text-shadow:0 1px 1px rgba(255,255,255,0.75)}.thenly .btn-toolbar .btn.btn-mini{top:5px}.thenly ul.dropdown-menu li{list-style-type:none!important}.thenly small{margin:0!important}.thenly tr{background:none!important}.tooltip{position:absolute;z-index:2020;display:block;visibility:visible;padding:5px;font-size:11px;opacity:0;filter:alpha(opacity=0)}.tooltip.in{opacity:.8;filter:alpha(opacity=80)}.tooltip.top{margin-top:-2px}.tooltip.right{margin-left:2px}.tooltip.bottom{margin-top:2px}.tooltip.left{margin-left:-2px}.tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-left:5px solid transparent;border-right:5px solid transparent;border-top:5px solid #000}.tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-top:5px solid transparent;border-bottom:5px solid transparent;border-left:5px solid #000}.tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-left:5px solid transparent;border-right:5px solid transparent;border-bottom:5px solid #000}.tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-top:5px solid transparent;border-bottom:5px solid transparent;border-right:5px solid #000}.tooltip-inner{max-width:200px;padding:3px 8px;color:#fff;text-align:center;text-decoration:none;background-color:#000;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.tooltip-arrow{position:absolute;width:0;height:0}.ai1ec-loading{position:absolute;z-index:9;top:0;left:0;width:100%;height:100%;background:url(../img/ajax-loader.gif) no-repeat center center;display:none}.ai1ec-label{padding:0 .2em;font-size:9pt;font-weight:bold;color:#999!important}.ai1ec-category{cursor:pointer;font-size:.9em;border:1px solid #dcdcdc;text-shadow:0 1px 0 #fff;padding:2pt 3pt!important;margin:.2em!important;text-decoration:none!important;text-transform:uppercase;letter-spacing:1pt;white-space:nowrap;color:#7f7f7f!important;background:#f0f0f0;border-radius:.3em;-moz-border-radius:.3em;-webkit-border-radius:.3em}.ai1ec-category:hover{color:#333!important;background:#dcdcdc}.ai1ec-category.ai1ec-selected{background:#e0efff;border-color:#b7daff;color:#787e85!important}.ai1ec-category.ai1ec-selected:hover{background:#b7daff;color:#333!important}.ai1ec-category-color{-webkit-border-radius:.2em;-moz-border-radius:.2em;border-radius:.2em;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.25),inset 0 -1px 2px rgba(0,0,0,0.5);-moz-box-shadow:inset 0 1px 0 rgba(255,255,255,0.25),inset 0 -1px 2px rgba(0,0,0,0.5);box-shadow:inset 0 1px 0 rgba(255,255,255,0.25),inset 0 -1px 2px rgba(0,0,0,0.5);display:inline-block;height:.9em;margin:0 1px;width:.9em}.ai1ec-tag{color:#507295!important;line-height:1.3em;cursor:pointer;white-space:nowrap;margin:.1em .2em;padding:.1em .2em;-webkit-border-radius:.3em;-moz-border-radius:.3em;border-radius:.3em;display:inline-block}.ai1ec-tag:hover{color:#354c63!important;text-decoration:none}.ai1ec-tag.ai1ec-selected{background:#e0efff}.ai1ec-subscribe-google img{background:none!important;border:none!important;float:left;height:32px!important;margin:-8px .5em -10px 0!important;padding:0!important;width:30px!important}.ai1ec-agenda-widget-view{font-size:.8em!important;overflow:hidden}.ai1ec-agenda-widget-view div{margin:0}.ai1ec-agenda-widget-view .ai1ec-no-results{font-style:italic;font-size:1.4em!important}.ai1ec-agenda-widget-view>ol{margin:0!important;padding:0!important}.ai1ec-agenda-widget-view li{list-style:none!important;border:none!important}.ai1ec-agenda-widget-view .ai1ec-date-events{overflow:hidden;margin:0 .5em 0 0!important;padding:0!important}.ai1ec-agenda-widget-view .ai1ec-date{border-top:1px solid #e5e5e5!important;background:rgba(242,242,242,0.8);background:-webkit-gradient(linear,0 0,0 100%,from(#f2f2f2),color-stop(1em,#f2f2f2),to(rgba(242,242,242,0)));background:-webkit-linear-gradient(#f2f2f2,#f2f2f2 1em,rgba(242,242,242,0));background:-moz-linear-gradient(top,#f2f2f2,#f2f2f2 1em,rgba(242,242,242,0));background:-ms-linear-gradient(#f2f2f2,#f2f2f2 1em,rgba(242,242,242,0));background:-o-linear-gradient(#f2f2f2,#f2f2f2 1em,rgba(242,242,242,0));background:linear-gradient(#f2f2f2,#f2f2f2 1em,rgba(242,242,242,0));background-repeat:no-repeat;margin:0!important;overflow:hidden;padding:0!important}.ai1ec-agenda-widget-view .ai1ec-date.ai1ec-today{border-top:1px solid #f0f0aa!important;background:rgba(244,244,191,0.8);background:-webkit-gradient(linear,0 0,0 100%,from(#f4f4bf),color-stop(1em,#f4f4bf),to(rgba(244,244,191,0)));background:-webkit-linear-gradient(#f4f4bf,#f4f4bf 1em,rgba(244,244,191,0));background:-moz-linear-gradient(top,#f4f4bf,#f4f4bf 1em,rgba(244,244,191,0));background:-ms-linear-gradient(#f4f4bf,#f4f4bf 1em,rgba(244,244,191,0));background:-o-linear-gradient(#f4f4bf,#f4f4bf 1em,rgba(244,244,191,0));background:linear-gradient(#f4f4bf,#f4f4bf 1em,rgba(244,244,191,0));background-repeat:no-repeat}.ai1ec-agenda-widget-view h3.ai1ec-date-title{border:2px solid #8ba5c0;-webkit-border-radius:0 0 .5em .5em;-moz-border-radius:0 0 .5em .5em;border-radius:0 0 .5em .5em;-webkit-box-shadow:0 2px 2px rgba(0,0,0,0.08);-moz-box-shadow:0 2px 2px rgba(0,0,0,0.08);box-shadow:0 2px 2px rgba(0,0,0,0.08);color:#525252;float:left;font-size:1em;font-weight:normal;background-color:#f9f9f9;background-image:-webkit-gradient(linear,0 0,0 100%,from(#fff),color-stop(1em,#fff),to(#e0e0e0));background-image:-webkit-linear-gradient(#fff,#fff 1em,#e0e0e0);background-image:-moz-linear-gradient(top,#fff,#fff 1em,#e0e0e0);background-image:-ms-linear-gradient(#fff,#fff 1em,#e0e0e0);background-image:-o-linear-gradient(#fff,#fff 1em,#e0e0e0);background-image:linear-gradient(#fff,#fff 1em,#e0e0e0);background-repeat:no-repeat;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff',endColorstr='#e0e0e0',GradientType=0);line-height:1.1em;margin:0 .5em .5em!important;padding:0!important;text-align:center;text-shadow:0 1px 0 #fff;width:3.5em}.ai1ec-agenda-widget-view .ai1ec-month{text-shadow:0 -1px 0 rgba(0,0,0,0.25);background:#8ba5c0;font-size:.9em!important;padding:.1em 0 .2em;text-transform:uppercase;letter-spacing:.2em;color:#fff}.ai1ec-agenda-widget-view .ai1ec-day{font-size:1.7em!important;padding:.3em 0 .2em!important}.ai1ec-agenda-widget-view .ai1ec-weekday{font-size:.9em!important;line-height:1.5em}.ai1ec-agenda-widget-view .ai1ec-event{clear:right;font-size:1.2em;line-height:1.3em;margin:.5em 0!important;overflow:hidden;padding:0!important;position:relative}.ai1ec-agenda-widget-view .ai1ec-event a{color:#507295;display:block;background:#fff;border:1px solid #d4d4d4;-webkit-border-radius:.4em;-moz-border-radius:.4em;border-radius:.4em;padding:.2em .4em!important;text-decoration:none!important}.ai1ec-agenda-widget-view .ai1ec-event a:hover{border-color:#aeaeae;color:#354c63;text-decoration:none!important}.ai1ec-agenda-widget-view .ai1ec-event .ai1ec-event-time{font-weight:bold}.ai1ec-agenda-widget-view .ai1ec-event .ai1ec-event-title{font-weight:normal}.ai1ec-agenda-widget-view .ai1ec-event.ai1ec-allday a{background:#507295;border:1px solid transparent;color:#fff}.ai1ec-agenda-widget-view .ai1ec-event.ai1ec-allday a:hover{background:#354c63}.ai1ec-agenda-widget-view .ai1ec-event.ai1ec-allday a .ai1ec-event-time{color:#fff}.ai1ec-agenda-widget-view .ai1ec-event .ai1ec-category-colors{font-size:.9em}.ai1ec-agenda-widget-view .ai1ec-event .ai1ec-category-colors .ai1ec-category-color{margin:0 0 -0.1em;padding:1px}.ai1ec-agenda-widget-view .ai1ec-subscribe-google img{width:19px!important;height:20px!important;margin:-5px .5em -5px 0!important}
|
themes-ai1ec/vortex/css/print.css
ADDED
@@ -0,0 +1 @@
|
|
|
1 |
+
body{background:white;color:black;margin:0}#header,#navigation,#comments,#sidebar,#subcontent,#footer{display:none}#wpadminbar,footer{display:none}#page>header{display:none}#content{margin-top:-60px!important}*,.ai1ec-agenda-view .ai1ec-date{background:white!important;color:black!important}.thenly table.ai1ec-calendar-toolbar{display:none}.thenly .ai1ec-agenda-view .ai1ec-event.ai1ec-expanded{box-shadow:none;border:2px solid gray!important;background:none!important}.thenly .ai1ec-agenda-view h3.ai1ec-date-title{border:2px solid gray!important}.thenly ol.ai1ec-agenda-view h3.ai1ec-date-title{margin-top:.5em!important;border-radius:0}.thenly h3.ai1ec-date-title{width:5em;color:black}.thenly h3.ai1ec-date-title .ai1ec-month{display:inline;float:right;color:black}.thenly h3.ai1ec-date-title .ai1ec-day{padding:0!important;font-size:1em!important;color:black}.thenly h3.ai1ec-date-title .ai1ec-weekday{display:inline;float:left;color:black}.thenly div.ai1ec-event-click,.thenly div.ai1ec-categories{display:none}.thenly div.ai1ec-event-summary,.thenly div.ai1ec-event-summary div.ai1ec-event-click,.thenly div.ai1ec-event-description{display:block!important}.thenly ol.ai1ec-agenda-view div.ai1ec-event-summary div.ai1ec-event-title{display:inline}.thenly ol.ai1ec-agenda-view div.ai1ec-event-summary div.ai1ec-event-time{display:inline}.thenly a.ai1ec-button{display:none}.thenly ol.ai1ec-agenda-view div.ai1ec-event-description{padding:0!important}.thenly ol.ai1ec-agenda-view div.ai1ec-event-overlay{display:none}.thenly .entry-meta{display:none}.thenly #ai1ec-today,.thenly #ai1ec-expand-all,.thenly #ai1ec-collapse-all,.thenly #ai1ec-prev-page,.thenly #ai1ec-next-page{display:none}.thenly .ai1ec-subscribe,.thenly .ai1ec-subscribe-google{display:none}
|
themes-ai1ec/vortex/event-excerpt.php
ADDED
@@ -0,0 +1,6 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<div class="thenly ai1ec-excerpt">
|
2 |
+
<div class="ai1ec-time"><span class="ai1ec-label"><?php _e( 'When:', AI1EC_PLUGIN_NAME ) ?></span> <?php echo $event->timespan_html ?></div>
|
3 |
+
<?php if( $location ): ?>
|
4 |
+
<div class="ai1ec-location"><span class="ai1ec-label"><?php _e( 'Where:', AI1EC_PLUGIN_NAME ) ?></span> <?php echo $location ?></div>
|
5 |
+
<?php endif ?>
|
6 |
+
</div>
|
{app/view → themes-ai1ec/vortex}/event-map.php
RENAMED
@@ -1,11 +1,11 @@
|
|
1 |
<?php if( $hide_maps_until_clicked ) : ?>
|
2 |
-
<div class="ai1ec-gmap-placeholder"><strong
|
3 |
<?php endif; ?>
|
4 |
<div class="ai1ec-gmap-container<?php echo $hide_maps_until_clicked ? ' ai1ec-gmap-container-hidden' : '' ?>">
|
5 |
<div id="ai1ec-gmap-canvas"></div>
|
6 |
<input type="hidden" id="ai1ec-gmap-address" value="<?php echo esc_attr( $address ) ?>" />
|
7 |
-
<a class="ai1ec-gmap-link
|
8 |
href="<?php echo $gmap_url_link ?>" target="_blank">
|
9 |
-
<?php _e( 'View Full-Size Map
|
10 |
</a>
|
11 |
</div>
|
1 |
<?php if( $hide_maps_until_clicked ) : ?>
|
2 |
+
<div class="ai1ec-gmap-placeholder"><strong><i class="icon-map-marker"></i> <?php _e( 'Click to view map', AI1EC_PLUGIN_NAME ) ?></strong></div>
|
3 |
<?php endif; ?>
|
4 |
<div class="ai1ec-gmap-container<?php echo $hide_maps_until_clicked ? ' ai1ec-gmap-container-hidden' : '' ?>">
|
5 |
<div id="ai1ec-gmap-canvas"></div>
|
6 |
<input type="hidden" id="ai1ec-gmap-address" value="<?php echo esc_attr( $address ) ?>" />
|
7 |
+
<a class="ai1ec-gmap-link btn btn-mini"
|
8 |
href="<?php echo $gmap_url_link ?>" target="_blank">
|
9 |
+
<?php _e( 'View Full-Size Map', AI1EC_PLUGIN_NAME ) ?> <i class="icon-arrow-right"></i>
|
10 |
</a>
|
11 |
</div>
|
themes-ai1ec/vortex/event-multi.php
ADDED
@@ -0,0 +1,56 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<table class="thenly ai1ec-event ai1ec-multi-event ai1ec-event-id-<?php echo $event->post_id ?> <?php if( $event->multiday ) echo 'ai1ec-multiday' ?> <?php if( $event->allday ) echo 'ai1ec-allday' ?>">
|
2 |
+
<tbody>
|
3 |
+
<tr>
|
4 |
+
<th scope="row" class="ai1ec-time"><?php _e( 'When:', AI1EC_PLUGIN_NAME ); ?></th>
|
5 |
+
<td class="ai1ec-time">
|
6 |
+
<a class="ai1ec-calendar-link btn btn-mini pull-right" href="<?php echo $calendar_url; ?>">
|
7 |
+
<?php _e( 'View in Calendar »', AI1EC_PLUGIN_NAME ); ?>
|
8 |
+
</a>
|
9 |
+
<?php echo $event->timespan_html; ?>
|
10 |
+
</td>
|
11 |
+
</tr>
|
12 |
+
<?php if( $recurrence ): ?>
|
13 |
+
<tr>
|
14 |
+
<th scope="row" class="ai1ec-recurrence"><?php _e( 'Repeats:', AI1EC_PLUGIN_NAME ); ?></th>
|
15 |
+
<td class="ai1ec-recurrence" colspan="2"><?php echo $recurrence ?></td>
|
16 |
+
</tr>
|
17 |
+
<?php endif; ?>
|
18 |
+
<tr>
|
19 |
+
<?php if( $location ): ?>
|
20 |
+
<th scope="row" class="ai1ec-location"><?php _e( 'Where:', AI1EC_PLUGIN_NAME ); ?></th>
|
21 |
+
<td class="ai1ec-location">
|
22 |
+
<?php if( $event->show_map ): ?>
|
23 |
+
<a class="btn ai1ec-gmap-link" href="<?php the_permalink(); ?>#ai1ec-event">
|
24 |
+
<?php _e( 'View Map »', AI1EC_PLUGIN_NAME ); ?>
|
25 |
+
</a>
|
26 |
+
<?php endif; ?>
|
27 |
+
<?php echo $location; ?>
|
28 |
+
</td>
|
29 |
+
<?php endif; ?>
|
30 |
+
</tr>
|
31 |
+
<tr>
|
32 |
+
<?php if( $event->cost ): ?>
|
33 |
+
<th scope="row" class="ai1ec-cost"><?php _e( 'Cost:', AI1EC_PLUGIN_NAME ); ?></th>
|
34 |
+
<td class="ai1ec-cost"><?php echo esc_html( $event->cost ); ?></td>
|
35 |
+
<?php endif; ?>
|
36 |
+
</tr>
|
37 |
+
<tr>
|
38 |
+
<?php if( $contact ): ?>
|
39 |
+
<th scope="row" class="ai1ec-contact"><?php _e( 'Contact:', AI1EC_PLUGIN_NAME ); ?></th>
|
40 |
+
<td class="ai1ec-contact"><?php echo $contact; ?></td>
|
41 |
+
<?php endif; ?>
|
42 |
+
</tr>
|
43 |
+
<tr>
|
44 |
+
<?php if( $categories ): ?>
|
45 |
+
<th scope="row" class="ai1ec-categories"><?php _e( 'Categories:', AI1EC_PLUGIN_NAME ); ?></th>
|
46 |
+
<td class="ai1ec-categories"><?php echo $categories; ?></td>
|
47 |
+
<?php endif; ?>
|
48 |
+
</tr>
|
49 |
+
<tr>
|
50 |
+
<?php if( $tags ): ?>
|
51 |
+
<th scope="row" class="ai1ec-tags"><?php _e( 'Tags:', AI1EC_PLUGIN_NAME ); ?></th>
|
52 |
+
<td class="ai1ec-tags"><?php echo $tags; ?></td>
|
53 |
+
<?php endif; ?>
|
54 |
+
</tr>
|
55 |
+
</tbody>
|
56 |
+
</table>
|
{app/view → themes-ai1ec/vortex}/event-single-footer.php
RENAMED
@@ -5,7 +5,8 @@
|
|
5 |
esc_attr( str_replace( 'http://', 'webcal://', $event->ical_feed_url ) ) ) ?>
|
6 |
<?php if( $event->ical_source_url ): ?>
|
7 |
<a href="<?php echo esc_attr( $event->ical_source_url ) ?>" target="_blank">
|
8 |
-
<?php _e( 'View original post
|
|
|
9 |
</a>
|
10 |
<?php endif ?>
|
11 |
</p>
|
5 |
esc_attr( str_replace( 'http://', 'webcal://', $event->ical_feed_url ) ) ) ?>
|
6 |
<?php if( $event->ical_source_url ): ?>
|
7 |
<a href="<?php echo esc_attr( $event->ical_source_url ) ?>" target="_blank">
|
8 |
+
<?php _e( 'View original post', AI1EC_PLUGIN_NAME ) ?>
|
9 |
+
<i class="icon-external-link"></i>
|
10 |
</a>
|
11 |
<?php endif ?>
|
12 |
</p>
|
{app/view → themes-ai1ec/vortex}/event-single.php
RENAMED
@@ -1,11 +1,11 @@
|
|
1 |
<a name="ai1ec-event"></a>
|
2 |
-
<table class="ai1ec-full-event ai1ec-single-event ai1ec-event-id-<?php echo $event->post_id ?> <?php if( $event->allday ) echo 'ai1ec-allday' ?>">
|
3 |
<tbody>
|
4 |
<tr>
|
5 |
<th scope="row" class="ai1ec-time"><?php _e( 'When:', AI1EC_PLUGIN_NAME ) ?></th>
|
6 |
<td colspan="2" class="ai1ec-time">
|
7 |
-
<a class="ai1ec-
|
8 |
-
<?php _e( 'Back to Calendar
|
9 |
</a>
|
10 |
<?php echo $event->timespan_html ?>
|
11 |
</td>
|
@@ -27,14 +27,14 @@
|
|
27 |
<td rowspan="5" class="ai1ec-map <?php if( $map ) echo 'ai1ec-has-map' ?>">
|
28 |
<?php echo $map ?>
|
29 |
<?php if( $show_subscribe_buttons ) : ?>
|
30 |
-
<a class="
|
31 |
href="<?php echo esc_attr( $subscribe_url ) ?>"
|
32 |
title="<?php _e( 'Add this event to your favourite calendar program (iCal, Outlook, etc.)', AI1EC_PLUGIN_NAME ) ?>" />
|
33 |
<?php _e( '✔ Add to Calendar', AI1EC_PLUGIN_NAME ) ?></a>
|
34 |
-
<a class="
|
35 |
href="<?php echo esc_attr( $google_url ) ?>"
|
36 |
title="<?php _e( 'Add this event to your Google Calendar', AI1EC_PLUGIN_NAME ) ?>" />
|
37 |
-
<img src="<?php echo
|
38 |
<?php _e( 'Add to Google Calendar', AI1EC_PLUGIN_NAME ) ?>
|
39 |
</a>
|
40 |
<?php endif ?>
|
@@ -61,7 +61,7 @@
|
|
61 |
<tr>
|
62 |
<th scope="row" class="ai1ec-tags">
|
63 |
<?php if( $tags ): ?>
|
64 |
-
<?php _e( 'Tags:', AI1EC_PLUGIN_NAME ) ?>
|
65 |
<?php endif ?>
|
66 |
</th>
|
67 |
<td class="ai1ec-tags"><?php echo $tags ?></td>
|
1 |
<a name="ai1ec-event"></a>
|
2 |
+
<table class="thenly ai1ec-full-event ai1ec-single-event ai1ec-event-id-<?php echo $event->post_id ?> <?php if( $event->multiday ) echo 'ai1ec-multiday' ?> <?php if( $event->allday ) echo 'ai1ec-allday' ?>">
|
3 |
<tbody>
|
4 |
<tr>
|
5 |
<th scope="row" class="ai1ec-time"><?php _e( 'When:', AI1EC_PLUGIN_NAME ) ?></th>
|
6 |
<td colspan="2" class="ai1ec-time">
|
7 |
+
<a class="ai1ec-calendar-link btn pull-right" href="<?php echo $calendar_url ?>">
|
8 |
+
<i class="icon-arrow-left"></i> <?php _e( 'Back to Calendar', AI1EC_PLUGIN_NAME ) ?>
|
9 |
</a>
|
10 |
<?php echo $event->timespan_html ?>
|
11 |
</td>
|
27 |
<td rowspan="5" class="ai1ec-map <?php if( $map ) echo 'ai1ec-has-map' ?>">
|
28 |
<?php echo $map ?>
|
29 |
<?php if( $show_subscribe_buttons ) : ?>
|
30 |
+
<a class="btn btn-small ai1ec-subscribe"
|
31 |
href="<?php echo esc_attr( $subscribe_url ) ?>"
|
32 |
title="<?php _e( 'Add this event to your favourite calendar program (iCal, Outlook, etc.)', AI1EC_PLUGIN_NAME ) ?>" />
|
33 |
<?php _e( '✔ Add to Calendar', AI1EC_PLUGIN_NAME ) ?></a>
|
34 |
+
<a class="btn btn-small ai1ec-subscribe-google" target="_blank"
|
35 |
href="<?php echo esc_attr( $google_url ) ?>"
|
36 |
title="<?php _e( 'Add this event to your Google Calendar', AI1EC_PLUGIN_NAME ) ?>" />
|
37 |
+
<img src="<?php echo $this->get_theme_img_url( 'google-calendar.png' ) ?>" />
|
38 |
<?php _e( 'Add to Google Calendar', AI1EC_PLUGIN_NAME ) ?>
|
39 |
</a>
|
40 |
<?php endif ?>
|
61 |
<tr>
|
62 |
<th scope="row" class="ai1ec-tags">
|
63 |
<?php if( $tags ): ?>
|
64 |
+
<i class="icon-tags"></i> <?php _e( 'Tags:', AI1EC_PLUGIN_NAME ) ?>
|
65 |
<?php endif ?>
|
66 |
</th>
|
67 |
<td class="ai1ec-tags"><?php echo $tags ?></td>
|
themes-ai1ec/vortex/font/fontawesome-webfont.eot
ADDED
Binary file
|
themes-ai1ec/vortex/font/fontawesome-webfont.svg
ADDED
@@ -0,0 +1,175 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?xml version="1.0" standalone="no"?>
|
2 |
+
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
|
3 |
+
<svg xmlns="http://www.w3.org/2000/svg">
|
4 |
+
<metadata>
|
5 |
+
This is a custom SVG webfont generated by Font Squirrel.
|
6 |
+
Designer : Dave Gandy
|
7 |
+
Foundry : Fort Awesome
|
8 |
+
</metadata>
|
9 |
+
<defs>
|
10 |
+
<font id="FontAwesomeRegular" horiz-adv-x="900" >
|
11 |
+
<font-face units-per-em="1000" ascent="750" descent="-250" />
|
12 |
+
<missing-glyph horiz-adv-x="250" />
|
13 |
+
<glyph unicode="
" horiz-adv-x="250" />
|
14 |
+
<glyph horiz-adv-x="0" />
|
15 |
+
<glyph horiz-adv-x="0" />
|
16 |
+
<glyph unicode=" " horiz-adv-x="250" />
|
17 |
+
<glyph unicode="	" horiz-adv-x="250" />
|
18 |
+
<glyph unicode=" " horiz-adv-x="250" />
|
19 |
+
<glyph unicode=" " horiz-adv-x="375" />
|
20 |
+
<glyph unicode=" " horiz-adv-x="751" />
|
21 |
+
<glyph unicode=" " horiz-adv-x="375" />
|
22 |
+
<glyph unicode=" " horiz-adv-x="751" />
|
23 |
+
<glyph unicode=" " horiz-adv-x="250" />
|
24 |
+
<glyph unicode=" " horiz-adv-x="187" />
|
25 |
+
<glyph unicode=" " horiz-adv-x="125" />
|
26 |
+
<glyph unicode=" " horiz-adv-x="125" />
|
27 |
+
<glyph unicode=" " horiz-adv-x="93" />
|
28 |
+
<glyph unicode=" " horiz-adv-x="150" />
|
29 |
+
<glyph unicode=" " horiz-adv-x="41" />
|
30 |
+
<glyph unicode=" " horiz-adv-x="150" />
|
31 |
+
<glyph unicode=" " horiz-adv-x="187" />
|
32 |
+
<glyph unicode="" horiz-adv-x="500" d="M0 0v0v0v0v0z" />
|
33 |
+
<glyph unicode="" horiz-adv-x="750" d="M3 727q10 23 34 23h675q25 0 35 -23t-8 -41l-298 -298v-313h121q16 0 27 -11t11 -26q0 -16 -11 -27t-27 -11h-375q-15 0 -26 11t-11 27q0 15 11 26t26 11h122v313l-298 298q-18 18 -8 41z" />
|
34 |
+
<glyph unicode="" horiz-adv-x="688" d="M0 112q0 24 11 44.5t30 35.5t45 24t55 9q13 0 24.5 -2t22.5 -5v388l500 144v-525q0 -23 -11 -43.5t-30 -36t-45 -24.5t-55 -9t-54.5 9t-44.5 24.5t-30 36t-11 43.5t11 43.5t30 35.5t44.5 24t54.5 9q24 0 47 -6v248l-312 -90v-377q0 -23 -11 -43.5t-30 -35.5t-45 -24 t-55 -9t-55 9t-45 24t-30 35.5t-11 43.5z" />
|
35 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 437q0 65 24.5 122t67 99.5t99.5 67t122 24.5q64 0 121 -24.5t99.5 -67t67 -99.5t24.5 -122q0 -48 -13.5 -91t-38.5 -81l168 -167q9 -10 9 -23t-9 -22l-44 -44q-9 -9 -22 -9t-22 9l-168 168q-38 -25 -81 -38.5t-91 -13.5q-65 0 -122 24.5t-99.5 67t-67 99t-24.5 121.5z M125 437q0 -39 14.5 -73t40 -59.5t60 -40t73.5 -14.5t73 14.5t59.5 40t40 59.5t14.5 73t-14.5 73t-40 59.5t-59.5 40.5t-73 15t-73.5 -15t-60 -40.5t-40 -59.5t-14.5 -73zM194 437q0 25 9.5 46.5t25.5 37.5t37.5 25.5t46.5 9.5q10 0 16.5 -7t6.5 -17t-6.5 -16.5t-16.5 -6.5 q-30 0 -51 -21t-21 -51q0 -10 -6.5 -16.5t-16.5 -6.5t-17 6.5t-7 16.5z" />
|
36 |
+
<glyph unicode="" d="M0 56v587v32v19q0 23 16.5 39.5t39.5 16.5h19h750h19q23 0 39.5 -16.5t16.5 -39.5v-19v-30v-589q0 -23 -16.5 -39.5t-39.5 -16.5h-788q-23 0 -39.5 16.5t-16.5 39.5zM75 75h750v416q-15 -15 -28 -24q-29 -21 -61 -46t-64 -49q-19 -14 -36.5 -28t-32.5 -25q-3 -2 -6 -4.5 t-7 -5.5q-14 -11 -29.5 -22.5t-33.5 -22t-37.5 -17t-40.5 -6.5q-20 0 -39.5 6.5t-37 17t-33.5 22t-29 22.5q-4 3 -7 5.5t-6 4.5q-15 11 -32.5 25t-36.5 28q-32 24 -64 49t-61 46q-13 9 -28 24v-416zM75 643q0 -14 6 -30t16.5 -32t23 -30t26.5 -24q23 -17 49 -37l52 -38 q26 -20 50 -39t44 -34l22 -17q14 -11 28.5 -21t29 -17.5t27.5 -7.5h1h1q13 0 27.5 7.5t29 17.5t28.5 21l22 17q20 15 44 34t50 39l52 38q26 20 49 37q13 10 26 24t23.5 30t16.5 32t6 30v32h-750v-32z" />
|
37 |
+
<glyph unicode="" horiz-adv-x="846" d="M0 519q0 64 20 108t52.5 71.5t73.5 39.5t83 12q30 0 59 -10t54 -25t45.5 -32.5t35.5 -32.5q15 15 35.5 32.5t45.5 32.5t54 25t59 10q42 0 83 -12t73.5 -39.5t52.5 -71.5t20 -108q0 -44 -16.5 -83.5t-36 -69.5t-37 -48t-18.5 -19l-289 -288q-11 -11 -26 -11t-26 11 l-290 288q-1 1 -18 19t-36.5 48t-36 69.5t-16.5 83.5z" />
|
38 |
+
<glyph unicode="" horiz-adv-x="787" d="M0.5 465q4.5 13 25.5 16l238 35l106 215q10 20 23.5 20t22.5 -20l107 -215l237 -35q22 -3 26 -16t-11 -28l-172 -168l40 -236q4 -22 -7 -30t-30 3l-213 111l-212 -111q-20 -11 -31 -3t-7 30l41 236l-172 168q-16 15 -11.5 28z" />
|
39 |
+
<glyph unicode="" horiz-adv-x="787" d="M0.5 465q4.5 13 25.5 16l238 34l106 216q9 19 23 19t23 -19l107 -216l237 -34q22 -3 26 -16t-11 -28l-172 -168l40 -236q3 -16 -2 -24.5t-16 -8.5q-7 0 -19 5l-213 112l-212 -112q-12 -5 -19 -5q-11 0 -16 8.5t-3 24.5l41 236l-172 168q-16 15 -11.5 28zM136 421l100 -98 l29 -27l-7 -39l-24 -139l124 66l35 18l35 -18l124 -66l-23 139l-7 39l28 27l101 98l-139 20l-39 6l-18 35l-62 126l-62 -126l-17 -35l-39 -6z" />
|
40 |
+
<glyph unicode="" d="M0 34v7q11 19 19.5 40t17.5 42t19.5 40t25.5 34q7 7 15.5 13.5t19.5 10.5t23.5 5t25.5 3q37 6 77.5 12.5t78.5 12.5q4 17 7 34.5t8 33.5q-8 11 -16 21.5t-15.5 23t-13.5 28.5t-9 37q-2 11 -5 32.5t-6 44t-5.5 41t-2.5 22.5q0 25 10.5 56t33 58t58 45.5t84.5 18.5 t84.5 -18.5t58 -45.5t33 -58t10.5 -56q0 -4 -2.5 -22.5t-5.5 -41t-6 -44t-5 -32.5q-3 -21 -9 -37t-13.5 -28.5t-16 -23t-15.5 -21.5q5 -16 8 -33.5t7 -34.5q38 -6 78.5 -12.5t77.5 -12.5q13 -2 25.5 -3t23.5 -5t19.5 -10.5t15.5 -13.5q15 -15 25.5 -34t19.5 -40t17.5 -42 t19.5 -40v-7q-14 -8 -26.5 -18.5t-30.5 -15.5h-786q-18 5 -30.5 15.5t-26.5 18.5z" />
|
41 |
+
<glyph unicode="" d="M0 56v638q0 23 16.5 39.5t39.5 16.5h788q23 0 39.5 -16.5t16.5 -39.5v-638q0 -23 -16.5 -39.5t-39.5 -16.5h-788q-23 0 -39.5 16.5t-16.5 39.5zM56 75q0 -8 5.5 -13.5t13.5 -5.5h75q8 0 13.5 5.5t5.5 13.5v75q0 8 -5.5 13.5t-13.5 5.5h-75q-8 0 -13.5 -5.5t-5.5 -13.5 v-75zM56 250q0 -8 5.5 -13.5t13.5 -5.5h75q8 0 13.5 5.5t5.5 13.5v75q0 8 -5.5 13.5t-13.5 5.5h-75q-8 0 -13.5 -5.5t-5.5 -13.5v-75zM56 425q0 -8 5.5 -13.5t13.5 -5.5h75q8 0 13.5 5.5t5.5 13.5v75q0 8 -5.5 13.5t-13.5 5.5h-75q-8 0 -13.5 -5.5t-5.5 -13.5v-75zM56 600 q0 -8 5.5 -13.5t13.5 -5.5h75q8 0 13.5 5.5t5.5 13.5v75q0 8 -5.5 13.5t-13.5 5.5h-75q-8 0 -13.5 -5.5t-5.5 -13.5v-75zM225 75q0 -8 5.5 -13.5t13.5 -5.5h412q8 0 13.5 5.5t5.5 13.5v250q0 8 -5.5 13.5t-13.5 5.5h-412q-8 0 -13.5 -5.5t-5.5 -13.5v-250zM225 425 q0 -8 5.5 -13.5t13.5 -5.5h412q8 0 13.5 5.5t5.5 13.5v250q0 8 -5.5 13.5t-13.5 5.5h-412q-8 0 -13.5 -5.5t-5.5 -13.5v-250zM731 75q0 -8 5.5 -13.5t13.5 -5.5h75q8 0 13.5 5.5t5.5 13.5v75q0 8 -5.5 13.5t-13.5 5.5h-75q-8 0 -13.5 -5.5t-5.5 -13.5v-75zM731 250 q0 -8 5.5 -13.5t13.5 -5.5h75q8 0 13.5 5.5t5.5 13.5v75q0 8 -5.5 13.5t-13.5 5.5h-75q-8 0 -13.5 -5.5t-5.5 -13.5v-75zM731 425q0 -8 5.5 -13.5t13.5 -5.5h75q8 0 13.5 5.5t5.5 13.5v75q0 8 -5.5 13.5t-13.5 5.5h-75q-8 0 -13.5 -5.5t-5.5 -13.5v-75zM731 600 q0 -8 5.5 -13.5t13.5 -5.5h75q8 0 13.5 5.5t5.5 13.5v75q0 8 -5.5 13.5t-13.5 5.5h-75q-8 0 -13.5 -5.5t-5.5 -13.5v-75z" />
|
42 |
+
<glyph unicode="" d="M0 38v262q0 16 11 27t27 11h337q16 0 27 -11t11 -27v-262q0 -16 -11 -27t-27 -11h-337q-16 0 -27 11t-11 27zM0 450v263q0 15 11 26t27 11h337q16 0 27 -11t11 -26v-263q0 -16 -11 -26.5t-27 -10.5h-337q-16 0 -27 10.5t-11 26.5zM488 38v262q0 16 10.5 27t26.5 11h338 q15 0 26 -11t11 -27v-262q0 -16 -11 -27t-26 -11h-338q-16 0 -26.5 11t-10.5 27zM488 450v263q0 15 10.5 26t26.5 11h338q15 0 26 -11t11 -26v-263q0 -16 -11 -26.5t-26 -10.5h-338q-16 0 -26.5 10.5t-10.5 26.5z" />
|
43 |
+
<glyph unicode="" d="M0 38v132q0 16 11 26.5t27 10.5h175q15 0 26 -10.5t11 -26.5v-132q0 -16 -11 -27t-26 -11h-175q-16 0 -27 11t-11 27zM0 320v110q0 16 11 26.5t27 10.5h175q15 0 26 -10.5t11 -26.5v-110q0 -16 -11 -27t-26 -11h-175q-16 0 -27 11t-11 27zM0 580v133q0 15 11 26t27 11 h175q15 0 26 -11t11 -26v-133q0 -16 -11 -27t-26 -11h-175q-16 0 -27 11t-11 27zM325 38v132q0 16 11 26.5t27 10.5h175q15 0 26 -10.5t11 -26.5v-132q0 -16 -11 -27t-26 -11h-175q-16 0 -27 11t-11 27zM325 320v110q0 16 11 26.5t27 10.5h175q15 0 26 -10.5t11 -26.5v-110 q0 -16 -11 -27t-26 -11h-175q-16 0 -27 11t-11 27zM325 580v133q0 15 11 26t27 11h175q15 0 26 -11t11 -26v-133q0 -16 -11 -27t-26 -11h-175q-16 0 -27 11t-11 27zM650 38v132q0 16 11 26.5t27 10.5h175q15 0 26 -10.5t11 -26.5v-132q0 -16 -11 -27t-26 -11h-175 q-16 0 -27 11t-11 27zM650 320v110q0 16 11 26.5t27 10.5h175q15 0 26 -10.5t11 -26.5v-110q0 -16 -11 -27t-26 -11h-175q-16 0 -27 11t-11 27zM650 580v133q0 15 11 26t27 11h175q15 0 26 -11t11 -26v-133q0 -16 -11 -27t-26 -11h-175q-16 0 -27 11t-11 27z" />
|
44 |
+
<glyph unicode="" d="M0 38v132q0 16 11 26.5t27 10.5h145q15 0 26 -10.5t11 -26.5v-132q0 -16 -11 -27t-26 -11h-145q-16 0 -27 11t-11 27zM0 320v110q0 16 11 26.5t27 10.5h145q15 0 26 -10.5t11 -26.5v-110q0 -16 -11 -27t-26 -11h-145q-16 0 -27 11t-11 27zM0 580v133q0 15 11 26t27 11 h145q15 0 26 -11t11 -26v-133q0 -16 -11 -27t-26 -11h-145q-16 0 -27 11t-11 27zM295 38v132q0 16 11 26.5t27 10.5h530q15 0 26 -10.5t11 -26.5v-132q0 -16 -11 -27t-26 -11h-530q-16 0 -27 11t-11 27zM295 320v110q0 16 11 26.5t27 10.5h530q15 0 26 -10.5t11 -26.5v-110 q0 -16 -11 -27t-26 -11h-530q-16 0 -27 11t-11 27zM295 580v133q0 15 11 26t27 11h530q15 0 26 -11t11 -26v-133q0 -16 -11 -27t-26 -11h-530q-16 0 -27 11t-11 27z" />
|
45 |
+
<glyph unicode="" d="M0 312.5q0 16.5 11 27.5l85 85q11 11 27.5 11t27.5 -11l178 -178q11 -11 27.5 -11t27.5 11l364 364q11 11 27.5 11t27.5 -11l85 -85q11 -11 11 -27.5t-11 -27.5l-444 -444q-11 -11 -30.5 -19t-35.5 -8h-43q-17 0 -36.5 8t-30.5 19l-257 258q-11 11 -11 27.5z" />
|
46 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 94q0 19 14 33l248 249l-248 244q-14 14 -14 33t14 33l49 49q14 14 33 14t33 -14l246 -246l246 246q14 14 33 14t33 -14l49 -49q14 -14 14 -33t-14 -33l-248 -249l248 -244q14 -14 14 -32.5t-14 -32.5l-49 -50q-14 -14 -33 -14t-33 14l-246 247l-247 -247 q-14 -14 -32.5 -14t-32.5 14l-49 49q-14 14 -14 33z" />
|
47 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 437q0 65 24.5 122t67 99.5t99.5 67t122 24.5q64 0 121 -24.5t99.5 -67t67 -99.5t24.5 -122q0 -48 -13.5 -91t-38.5 -81l168 -167q9 -10 9 -23t-9 -22l-44 -44q-9 -9 -22 -9t-22 9l-168 168q-38 -25 -81 -38.5t-91 -13.5q-65 0 -122 24.5t-99.5 67t-67 99t-24.5 121.5z M125 437q0 -39 14.5 -73t40 -59.5t60 -40t73.5 -14.5t73 14.5t59.5 40t40 59.5t14.5 73t-14.5 73t-40 59.5t-59.5 40.5t-73 15t-73.5 -15t-60 -40.5t-40 -59.5t-14.5 -73zM188 422v31q0 7 4.5 11.5t10.5 4.5h78v78q0 6 4.5 10.5t11.5 4.5h31q7 0 11.5 -4.5t4.5 -10.5v-78h78 q16 0 16 -16v-31q0 -16 -16 -16h-78v-78q0 -16 -16 -16h-31q-16 0 -16 16v78h-78q-6 0 -10.5 4.5t-4.5 11.5z" />
|
48 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 437q0 65 24.5 122t67 99.5t99.5 67t122 24.5q64 0 121 -24.5t99.5 -67t67 -99.5t24.5 -122q0 -48 -13.5 -91t-38.5 -81l168 -167q9 -10 9 -23t-9 -22l-44 -44q-9 -9 -22 -9t-22 9l-168 168q-38 -25 -81 -38.5t-91 -13.5q-65 0 -122 24.5t-99.5 67t-67 99t-24.5 121.5z M125 437q0 -39 14.5 -73t40 -59.5t60 -40t73.5 -14.5t73 14.5t59.5 40t40 59.5t14.5 73t-14.5 73t-40 59.5t-59.5 40.5t-73 15t-73.5 -15t-60 -40.5t-40 -59.5t-14.5 -73zM188 422v31q0 7 4.5 11.5t10.5 4.5h219q16 0 16 -16v-31q0 -16 -16 -16h-219q-6 0 -10.5 4.5 t-4.5 11.5z" />
|
49 |
+
<glyph unicode="" horiz-adv-x="713" d="M0 356q0 89 41 166.5t115 128.5q6 3 14 3q7 -1 12 -8l42 -62q10 -16 -5 -26q-51 -35 -78.5 -88t-27.5 -114q0 -50 19 -94.5t52 -77.5t77.5 -52t94.5 -19q51 0 95.5 19t77.5 52t52 77.5t19 94.5q0 61 -28 114t-79 88q-6 3 -8 12q-1 6 3 14l43 62q5 6 12 7.5t14 -2.5 q73 -51 114.5 -128.5t41.5 -166.5q0 -74 -28 -138.5t-76.5 -113t-113.5 -76.5t-139 -28t-138.5 28t-113 76.5t-76.5 113t-28 138.5zM300 394v337q0 19 19 19h75q8 0 13.5 -5.5t5.5 -13.5v-337q0 -8 -5.5 -13.5t-13.5 -5.5h-75q-19 0 -19 19z" />
|
50 |
+
<glyph unicode="" d="M0 19v127q0 8 5.5 13.5t13.5 5.5h94q8 0 13 -5.5t5 -13.5v-127q0 -8 -5 -13.5t-13 -5.5h-94q-19 0 -19 19zM192 19v212q0 8 5.5 13.5t13.5 5.5h94q8 0 13 -5.5t5 -13.5v-212q0 -8 -5 -13.5t-13 -5.5h-94q-8 0 -13.5 5.5t-5.5 13.5zM384 19v330q0 8 5.5 13.5t13.5 5.5h94 q8 0 13.5 -5.5t5.5 -13.5v-330q0 -8 -5.5 -13.5t-13.5 -5.5h-94q-8 0 -13.5 5.5t-5.5 13.5zM577 19v486q0 8 5 13.5t13 5.5h94q8 0 13.5 -5.5t5.5 -13.5v-486q0 -8 -5.5 -13.5t-13.5 -5.5h-94q-8 0 -13 5.5t-5 13.5zM769 19v712q0 19 19 19h93q19 0 19 -19v-712 q0 -19 -19 -19h-93q-19 0 -19 19z" />
|
51 |
+
<glyph unicode="" horiz-adv-x="748" d="M0 320v111q0 7 7 9q19 5 39.5 8t40.5 5q4 0 8 0.5t9 1.5q5 14 10.5 27.5t12.5 27.5q-12 17 -26.5 36.5t-30.5 37.5q-5 5 0 12q19 23 40 44t44 40q5 5 12 0q11 -11 22.5 -20t23.5 -17q7 -5 14 -10.5t14 -10.5q26 14 55 23q3 28 6 51.5t8 45.5q2 8 9 8h111q9 0 9 -8 q4 -19 6.5 -38t5.5 -39l3 -20q14 -5 27.5 -10t26.5 -13q7 5 13 9.5t12 9.5q13 10 26 19t25 20q6 6 12 -1l11 -11q5 -5 11 -10q15 -14 30 -29.5t29 -32.5q4 -6 0 -12q-13 -15 -26 -32.5t-30 -40.5q15 -29 24 -58q12 -3 24.5 -4.5t25.5 -3.5q11 -2 23.5 -3.5t23.5 -3.5 q7 -2 7 -9v-111q0 -7 -7 -9q-18 -5 -38 -7.5t-40 -4.5q-5 -1 -9.5 -1.5t-9.5 -1.5q-5 -14 -10.5 -27.5t-12.5 -27.5q12 -17 26.5 -36.5t30.5 -37.5q5 -5 0 -12q-38 -47 -84 -84q-5 -5 -12 0q-11 11 -22.5 20t-23.5 17q-7 5 -14 10.5t-14 10.5q-26 -14 -55 -23 q-2 -23 -5.5 -48t-9.5 -49q-2 -8 -9 -8h-111q-7 0 -9 8q-3 19 -5.5 38t-5.5 39l-3 20q-14 5 -27.5 10t-26.5 13q-6 -5 -12.5 -9.5t-12.5 -9.5q-26 -18 -51 -39q-6 -6 -12 1q-5 5 -11 10.5t-11 10.5q-15 14 -30 29.5t-29 32.5q-5 6 0 12q15 18 29 37t27 36q-15 29 -24 58 q-12 3 -24.5 4.5t-24.5 3.5t-24.5 3.5t-23.5 3.5q-7 2 -7 9zM261 375q0 -24 9 -44.5t24.5 -35.5t36 -24t43.5 -9t43.5 9t35.5 24t24 35.5t9 44.5q0 23 -9 43.5t-24 35.5t-35.5 24t-43.5 9t-43.5 -9t-36 -24t-24.5 -35.5t-9 -43.5z" />
|
52 |
+
<glyph unicode="" horiz-adv-x="648" d="M0 582q0 8 0.5 16t0.5 17q11 6 32.5 10t47 7t52.5 5t49 3q-2 16 -1 32t7 33q1 4 6 11.5t18.5 15t40 13t71.5 5.5t71.5 -5.5t40 -13t18 -15.5t6.5 -12q6 -17 7 -32.5t-1 -31.5q22 -1 49 -3t53 -5t47 -7t32 -10q1 -9 1 -17v-16v-16q0 -8 -1 -17q-10 -6 -30.5 -10t-45.5 -7 t-51 -5t-48 -3t-37 -1.5t-16 -0.5l-95 -1h-13h-28q-19 0 -54 1q-2 0 -16.5 0.5t-36.5 1.5t-48 3t-51 5t-45.5 7t-30.5 10q0 9 -0.5 17t-0.5 16zM67 484q41 -5 84.5 -7.5t75.5 -3.5q9 -1 23 -1h74h73q14 0 23 1q33 1 76.5 3.5t84.5 7.5q-5 -76 -8 -154.5t-7 -154.5 q-1 -19 -1.5 -42.5t-2 -45.5t-6 -40.5t-14.5 -28.5q-12 -11 -42 -14.5t-58 -3.5h-236q-29 0 -58.5 3.5t-41.5 14.5q-10 10 -14.5 28.5t-6 40.5t-2 45.5t-1.5 42.5q-4 76 -7.5 154.5t-7.5 154.5zM147 383q1 -15 1 -28t1 -22q0 -11 1 -19q2 -34 3.5 -68t3.5 -67q1 -8 1 -17 v-20v-12q0 -6 0.5 -14t1.5 -19q1 -8 9.5 -14t13.5 -6q5 -1 10 -1t8 -1h11q5 0 5 19v286q0 8 -5.5 13.5t-13.5 5.5l-33 2q-8 0 -13 -5t-5 -13zM255.5 657q0.5 -6 1.5 -15q9 1 20 1h47l67 -1q1 9 1.5 15t-0.5 11q-11 3 -29.5 4.5t-38.5 1.5t-38.5 -1.5t-29.5 -4.5 q-1 -5 -0.5 -11zM292 94q0 -8 5 -13.5t13 -5.5h28q8 0 13.5 5.5t5.5 13.5v285q0 8 -11 13t-14 5h-15q-3 0 -14 -5t-11 -13v-285zM432 94q0 -19 4 -19h11q3 1 13 1.5t15 0.5q5 1 8.5 6.5t4.5 13.5q0 11 0.5 19t0.5 14q0 7 1 12v20q0 9 1 17q2 33 3 66.5t3 67.5q0 9 1 20 q1 9 1.5 22t1.5 28q0 8 -5 13t-13 5l-33 -2q-8 0 -13 -5.5t-5 -13.5v-286z" />
|
53 |
+
<glyph unicode="" d="M1 384.5q3 11.5 13 19.5l412 338q11 8 24 8t24 -8l126 -104v58q0 19 19 19h112q19 0 19 -19v-180l136 -112q10 -8 13 -19.5t-1 -22.5q-10 -24 -36 -24h-75v-300q0 -16 -10.5 -27t-26.5 -11h-206v225h-188v-225h-206q-16 0 -27 11t-11 27v300h-75q-25 0 -35 24 q-4 11 -1 22.5z" />
|
54 |
+
<glyph unicode="" horiz-adv-x="600" d="M0 56v638q0 23 16.5 39.5t39.5 16.5h219v-269q0 -23 16.5 -39.5t39.5 -16.5h269v-369q0 -23 -16.5 -39.5t-39.5 -16.5h-488q-23 0 -39.5 16.5t-16.5 39.5zM331 481v266h3l263 -263v-3h-266z" />
|
55 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 375q0 78 29.5 146t80.5 119t119 80.5t146 29.5t146 -29.5t119 -80.5t80.5 -119t29.5 -146t-29.5 -146t-80.5 -119t-119 -80.5t-146 -29.5t-146 29.5t-119 80.5t-80.5 119t-29.5 146zM113 375q0 -54 20.5 -102t56 -83.5t83.5 -56t102 -20.5t102 20.5t84 56t56.5 83.5 t20.5 102t-20.5 102t-56.5 84t-84 56.5t-102 20.5t-102 -20.5t-83.5 -56.5t-56 -84t-20.5 -102zM319 375v150q0 23 16.5 39.5t39.5 16.5t39.5 -16.5t16.5 -39.5v-127l90 -89q17 -17 17 -40t-17 -40q-8 -8 -18.5 -12t-21.5 -4t-21.5 4t-18.5 12l-106 106q-1 1 -1 2t-1 2 q-7 7 -10 14q-4 9 -4 22z" />
|
56 |
+
<glyph unicode="" d="M1 17l290 716q3 7 10.5 12t15.5 5h95l-4 -83h84l-4 83h95q8 0 15.5 -5t10.5 -12l290 -716q3 -7 -0.5 -12t-11.5 -5h-361l-13 250h-126l-13 -250h-361q-8 0 -11.5 5t-0.5 12zM394 389h112l-10 202h-92z" />
|
57 |
+
<glyph unicode="" d="M0 19v300q0 8 5.5 13.5t13.5 5.5h112q8 0 13.5 -5.5t5.5 -13.5v-169h600v169q0 8 5.5 13.5t13.5 5.5h112q8 0 13.5 -5.5t5.5 -13.5v-300q0 -19 -19 -19h-862q-19 0 -19 19zM169 461q3 8 19 8h150v244q0 15 10.5 26t26.5 11h150q16 0 27 -11t11 -26v-244h150q15 0 18 -8 t-8 -19l-246 -247q-11 -11 -27 -11t-27 11l-246 247q-11 11 -8 19z" />
|
58 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 375q0 78 29.5 146t80.5 119t119 80.5t146 29.5t146 -29.5t119 -80.5t80.5 -119t29.5 -146t-29.5 -146t-80.5 -119t-119 -80.5t-146 -29.5t-146 29.5t-119 80.5t-80.5 119t-29.5 146zM113 375q0 -54 20.5 -102t56 -83.5t83.5 -56t102 -20.5t102 20.5t84 56t56.5 83.5 t20.5 102t-20.5 102t-56.5 83.5t-84 56t-102 20.5t-102 -20.5t-83.5 -56t-56 -83.5t-20.5 -102zM206 349q4 10 24 10h79v185q0 8 5.5 13.5t13.5 5.5h94q8 0 13.5 -5.5t5.5 -13.5v-185h79q20 0 24 -10t-10 -24l-136 -136q-9 -9 -23 -9q-13 0 -23 9l-136 136q-14 14 -10 24z " />
|
59 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 375q0 78 29.5 146t80.5 119t119 80.5t146 29.5t146 -29.5t119 -80.5t80.5 -119t29.5 -146t-29.5 -146t-80.5 -119t-119 -80.5t-146 -29.5t-146 29.5t-119 80.5t-80.5 119t-29.5 146zM113 375q0 -54 20.5 -102t56 -83.5t83.5 -56t102 -20.5t102 20.5t84 56t56.5 83.5 t20.5 102t-20.5 102t-56.5 83.5t-84 56t-102 20.5t-102 -20.5t-83.5 -56t-56 -83.5t-20.5 -102zM206 401q-4 10 10 24l136 136q10 9 23 9q12 0 23 -9l136 -136q14 -14 10 -24t-24 -10h-79v-185q0 -8 -5.5 -13.5t-13.5 -5.5h-94q-8 0 -13.5 5.5t-5.5 13.5v185h-79 q-20 0 -24 10z" />
|
60 |
+
<glyph unicode="" d="M0 38v282q0 16 4.5 37t10.5 35l139 324q6 14 21.5 24t30.5 10h488q15 0 30.5 -10t21.5 -24l139 -324q6 -14 10.5 -35t4.5 -37v-282q0 -16 -11 -27t-26 -11h-825q-16 0 -27 11t-11 27zM116 339h189l56 -113h187l57 113h179q-1 2 -1 4.5t-1 4.5l-125 290h-414l-125 -291 q-1 -1 -1 -3.5t-1 -4.5z" />
|
61 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 375q0 78 29.5 146t80.5 119t119 80.5t146 29.5t146 -29.5t119 -80.5t80.5 -119t29.5 -146t-29.5 -146t-80.5 -119t-119 -80.5t-146 -29.5t-146 29.5t-119 80.5t-80.5 119t-29.5 146zM113 375q0 -54 20.5 -102t56 -83.5t83.5 -56t102 -20.5t102 20.5t84 56t56.5 83.5 t20.5 102t-20.5 102t-56.5 84t-84 56.5t-102 20.5t-102 -20.5t-83.5 -56.5t-56 -84t-20.5 -102zM258 220v310q0 9 8 14q8 4 15 0l269 -156q8 -3 8 -13t-8 -13l-269 -156q-4 -2 -8 -2q-3 0 -7 2q-8 5 -8 14z" />
|
62 |
+
<glyph unicode="" horiz-adv-x="747" d="M0 375q0 78 29.5 146t80.5 119t119 80.5t146 29.5q66 0 127.5 -23t112.5 -65l76 76q16 16 27 11.5t11 -27.5v-217q0 -15 -11 -26q-10 -10 -25 -10l-217 -1q-23 0 -27.5 11.5t11.5 27.5l75 75q-35 26 -75.5 41t-84.5 15q-54 0 -102 -20.5t-83.5 -56.5t-56 -84t-20.5 -102 t20.5 -102t56 -83.5t83.5 -56t102 -20.5q49 0 93.5 17t79.5 47.5t58 72t29 90.5q1 6 7 12q7 5 14 4l75 -10q8 -1 12.5 -7t3.5 -14q-9 -69 -42 -128.5t-83 -103t-113.5 -68.5t-133.5 -25q-78 0 -146 29.5t-119 80.5t-80.5 119t-29.5 146z" />
|
63 |
+
<glyph unicode="" d="M3 160l70 206q4 13 18 20q15 6 28 2l206 -70q21 -7 21.5 -19t-19.5 -22l-95 -47q24 -36 57.5 -63t75.5 -41q51 -18 103 -13.5t97.5 26.5t80.5 61t53 90q2 8 8.5 11t14.5 1l71 -24q17 -7 12 -24q-25 -74 -75 -129t-114.5 -86.5t-139 -37.5t-147.5 19q-63 21 -113.5 62 t-84.5 98l-97 -47q-20 -11 -29.5 -2.5t-1.5 29.5zM95 495q25 73 75 128.5t114.5 87.5t138.5 38t148 -19q63 -22 113 -63t85 -98l97 48q20 10 29.5 1.5t1.5 -29.5l-70 -205q-4 -14 -18 -21q-15 -6 -28 -2l-206 70q-21 7 -21.5 19t19.5 22l95 47q-24 36 -58 63t-76 41 q-51 18 -103 13.5t-97 -26.5t-80 -61t-53 -90q-2 -8 -9 -11t-14 -1l-71 25q-8 2 -11 9t-1 14z" />
|
64 |
+
<glyph unicode="" d="M0 56v638q0 23 16.5 39.5t39.5 16.5h788q23 0 39.5 -16.5t16.5 -39.5v-638q0 -23 -16.5 -39.5t-39.5 -16.5h-788q-23 0 -39.5 16.5t-16.5 39.5zM75 75h750v525h-750v-525zM150 169v37q0 19 19 19h75q8 0 13.5 -5.5t5.5 -13.5v-37q0 -8 -5.5 -13.5t-13.5 -5.5h-75 q-19 0 -19 19zM150 319v37q0 19 19 19h75q8 0 13.5 -5.5t5.5 -13.5v-37q0 -8 -5.5 -13.5t-13.5 -5.5h-75q-19 0 -19 19zM150 469v37q0 19 19 19h75q8 0 13.5 -5.5t5.5 -13.5v-37q0 -8 -5.5 -13.5t-13.5 -5.5h-75q-19 0 -19 19zM338 169v37q0 8 5 13.5t13 5.5h375 q19 0 19 -19v-37q0 -19 -19 -19h-375q-8 0 -13 5.5t-5 13.5zM338 319v37q0 8 5 13.5t13 5.5h375q19 0 19 -19v-37q0 -19 -19 -19h-375q-8 0 -13 5.5t-5 13.5zM338 469v37q0 8 5 13.5t13 5.5h375q19 0 19 -19v-37q0 -19 -19 -19h-375q-8 0 -13 5.5t-5 13.5z" />
|
65 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 56v300q0 23 16.5 40t39.5 17h57v85q0 52 20.5 98t56 80t83.5 54t102 20t102 -20t84 -54t56.5 -80t20.5 -98v-85h56q23 0 39.5 -17t16.5 -40v-300q0 -23 -16.5 -39.5t-39.5 -16.5h-638q-23 0 -39.5 16.5t-16.5 39.5zM225 413h300v85q0 29 -12 54.5t-32 44.5t-47.5 30 t-58.5 11t-58.5 -11t-47.5 -30t-32 -44.5t-12 -54.5v-85z" />
|
66 |
+
<glyph unicode="" d="M0 675q0 31 22 53t53 22t53 -22t22 -53q0 -20 -10 -36.5t-27 -27.5v-592q0 -8 -5.5 -13.5t-13.5 -5.5h-38q-8 0 -13 5.5t-5 13.5v592q-17 11 -27.5 27.5t-10.5 36.5zM150 203v364q0 16 9.5 32t23.5 24q51 27 92 42t70 22q34 8 61 9q33 0 60.5 -5.5t52.5 -14.5t48.5 -21 t48.5 -25q31 -14 71 -16q34 -2 80 7.5t101 42.5q14 8 23 3t9 -21v-365q0 -15 -9 -31.5t-23 -24.5q-55 -33 -101 -42.5t-80 -7.5q-40 2 -71 16q-25 13 -48.5 25t-48.5 21t-52.5 14.5t-60.5 5.5q-27 -1 -61 -9q-29 -7 -70 -22t-92 -43q-14 -8 -23.5 -2t-9.5 22z" />
|
67 |
+
<glyph unicode="" d="M0 356q0 54 18.5 104.5t50 94t75 79.5t93.5 62t104.5 40t108.5 14t108.5 -14t104.5 -40t93.5 -62t75 -79.5t50 -94t18.5 -104.5q0 -87 -36 -165l-13 -28l-81 -12q-13 -49 -52.5 -81t-92.5 -32v-19q0 -8 -5.5 -13.5t-13.5 -5.5h-38q-8 0 -13 5.5t-5 13.5v337q0 8 5 13.5 t13 5.5h38q8 0 13.5 -5.5t5.5 -13.5v-18q42 0 75.5 -21t53.5 -54l19 2q15 43 15 91q0 58 -31 109.5t-80 89.5t-109 60.5t-118 22.5t-118 -22.5t-108.5 -60.5t-79.5 -89.5t-31 -109.5q0 -46 14 -91l19 -2q20 33 53.5 54t75.5 21v18q0 8 5.5 13.5t13.5 5.5h38q8 0 13 -5.5 t5 -13.5v-337q0 -8 -5 -13.5t-13 -5.5h-38q-8 0 -13.5 5.5t-5.5 13.5v19q-53 0 -92.5 32t-52.5 81l-81 12l-13 28q-36 78 -36 165z" />
|
68 |
+
<glyph unicode="" horiz-adv-x="425" d="M0 286v178q0 8 5.5 13.5t13.5 5.5h196l153 153q23 23 39.5 16t16.5 -39v-476q0 -32 -16.5 -39t-39.5 16l-153 153h-196q-8 0 -13.5 5.5t-5.5 13.5z" />
|
69 |
+
<glyph unicode="" horiz-adv-x="600" d="M0 286v178q0 8 5.5 13.5t13.5 5.5h196l153 153q23 23 39.5 16t16.5 -39v-476q0 -32 -16.5 -39t-39.5 16l-153 153h-196q-8 0 -13.5 5.5t-5.5 13.5zM482 205q-4 15 4 29q39 67 39 141q0 73 -39 141q-8 14 -4 29t18 23t28.5 4t22.5 -18q49 -87 49 -179t-49 -179 q-11 -19 -33 -19q-8 0 -18 5q-14 8 -18 23z" />
|
70 |
+
<glyph unicode="" d="M0 286v178q0 8 5.5 13.5t13.5 5.5h196l153 153q23 23 39.5 16t16.5 -39v-476q0 -32 -16.5 -39t-39.5 16l-153 153h-196q-8 0 -13.5 5.5t-5.5 13.5zM482 205q-4 15 4 29q39 67 39 141q0 73 -39 141q-8 14 -4 29t18 23t28.5 4t22.5 -18q49 -87 49 -179t-49 -179 q-11 -19 -33 -19q-8 0 -18 5q-14 8 -18 23zM603 117q-3 15 5 29q67 105 67 229t-67 229q-8 14 -5 29t17 23t29 5t23 -17q38 -61 58 -129t20 -140t-20 -140t-58 -129q-5 -9 -14 -13.5t-18 -4.5q-11 0 -20 6q-14 8 -17 23zM723.5 30q-2.5 15 5.5 28q48 72 72 152t24 165 t-24 165t-72 152q-8 13 -5.5 28t16.5 24q13 8 28 5t24 -16q54 -81 81 -171.5t27 -186.5t-27 -186.5t-81 -171.5q-12 -17 -32 -17q-11 0 -20 6q-14 9 -16.5 24z" />
|
71 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 0v341h341v-341h-341zM0 409v341h341v-341h-341zM68 68h205v205h-205v-205zM68 477h205v205h-205v-205zM136 136v69h69v-69h-69zM136 545v68h69v-68h-69zM409 0v341h204v-68h69v68h68v-205h-205v68h-68v-204h-68zM409 409v341h341v-341h-341zM477 477h205v205h-205 v-205zM545 0v68h68v-68h-68zM545 545v68h68v-68h-68zM682 0v68h68v-68h-68z" />
|
72 |
+
<glyph unicode="" d="M0 0v750h75v-750h-75zM111 0v750h18v-750h-18zM174 0v750h57v-750h-57zM266 0v750h38v-750h-38zM349 0v750h37v-750h-37zM441 0v750h18v-750h-18zM495 0v750h75v-750h-75zM596 0v750h38v-750h-38zM688 0v750h19v-750h-19zM771 0v750h18v-750h-18zM825 0v750h75v-750h-75z " />
|
73 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 474v218q0 24 17 41t41 17h218q24 0 53 -12t46 -29l358 -358q17 -17 17 -41t-17 -41l-252 -252q-17 -17 -41 -17t-41 17l-358 358q-17 17 -29 46t-12 53zM94 600q0 -23 16.5 -39.5t39.5 -16.5t39.5 16.5t16.5 39.5t-16.5 39.5t-39.5 16.5t-39.5 -16.5t-16.5 -39.5z" />
|
74 |
+
<glyph unicode="" horiz-adv-x="898" d="M0 475v217q0 24 17 41t41 17h217q24 0 53.5 -11.5t45.5 -29.5l321 -358q16 -17 16.5 -41t-16.5 -41l-252 -251q-17 -17 -41 -17.5t-41 17.5l-320 358q-16 18 -28.5 46.5t-12.5 52.5zM94 600q0 -23 16.5 -39.5t39.5 -16.5t39.5 16.5t16.5 39.5t-16.5 39.5t-39.5 16.5 t-39.5 -16.5t-16.5 -39.5zM379 749h83q24 0 53.5 -12t45.5 -29l321 -358q16 -18 16.5 -41.5t-16.5 -40.5l-252 -251q-17 -17 -41 -17.5t-41 17.5l-6 7l246 245q17 17 16.5 41t-16.5 41l-320 358q-15 16 -40.5 27t-48.5 13z" />
|
75 |
+
<glyph unicode="" horiz-adv-x="835" d="M5 152q1 8 2 15.5t2 16.5q0 5 -2 10t-1 10q1 8 7.5 15.5t12.5 17.5q11 18 22 44t16 45q2 8 -0.5 15t-0.5 13q2 8 8 13.5t10 11.5q5 9 10.5 20.5t10.5 24t8 24.5t4 20t-1 16t0 14q3 8 10 13t12 12q5 6 10.5 17t11 24t9.5 25.5t5 22.5q1 6 -2 12t-1 13t9 14.5t13 15.5 q8 12 14 28.5t14.5 30t22.5 21t38 0.5l-1 -2q15 5 26 5h381q38 0 58 -28q20 -26 9 -63l-138 -442q-9 -31 -38 -52.5t-62 -21.5h-436q-5 0 -10 -1t-9 -6q-6 -10 0 -27q8 -21 29.5 -37t42.5 -16h462q14 0 28 10.5t18 23.5l151 482q2 8 2.5 14.5t-0.5 13.5q20 -7 30 -21 q20 -26 9 -63l-138 -442q-9 -32 -38 -53t-62 -21h-462q-20 0 -39 7t-36 19t-30 28.5t-20 35.5q-12 33 -1 62zM244 469q-5 -19 13 -19h300q8 0 15 5.5t9 13.5l12 37q2 8 -1.5 13.5t-11.5 5.5h-300q-8 0 -15.5 -5.5t-9.5 -13.5zM278 581q-2 -8 1.5 -13t11.5 -5h300q8 0 15 5 t10 13l11 38q2 8 -1.5 13.5t-11.5 5.5h-300q-8 0 -15 -5.5t-10 -13.5z" />
|
76 |
+
<glyph unicode="" horiz-adv-x="600" d="M0 54v641q0 17 9 30.5t25 20.5q5 2 10 3t11 1h490q5 0 10.5 -1t10.5 -3q16 -7 25 -20.5t9 -30.5v-641q0 -17 -9 -30.5t-25 -19.5q-15 -7 -31.5 -3.5t-27.5 15.5l-207 207l-207 -207q-11 -12 -27.5 -15.5t-31.5 3.5q-16 7 -25 20t-9 30z" />
|
77 |
+
<glyph unicode="" d="M0 19v169q0 23 9 43.5t24.5 35.5t36 24t43.5 9h675q23 0 43.5 -9t35.5 -24t24 -35.5t9 -43.5v-169q0 -19 -19 -19h-862q-19 0 -19 19zM131 94q0 -8 5.5 -13t13.5 -5h600q8 0 13.5 5t5.5 13v19q0 8 -5.5 13.5t-13.5 5.5h-600q-8 0 -13.5 -5.5t-5.5 -13.5v-19zM150 356v357 q0 15 11 26t27 11h318v-187q0 -24 16.5 -40.5t39.5 -16.5h188v-150h-600zM562 563v187l188 -187h-188z" />
|
78 |
+
<glyph unicode="" d="M0 56v525q0 23 16.5 40t39.5 17h179l28 61q9 21 32.5 36t46.5 15h216q23 0 46.5 -15t32.5 -36l28 -61h179q23 0 39.5 -17t16.5 -40v-525q0 -23 -16.5 -39.5t-39.5 -16.5h-788q-23 0 -39.5 16.5t-16.5 39.5zM216 319q0 -49 18.5 -91.5t50 -74.5t74.5 -50.5t91 -18.5 t91 18.5t74.5 50.5t50 74.5t18.5 91.5q0 48 -18.5 91t-50 74.5t-74.5 50t-91 18.5t-91 -18.5t-74.5 -50t-50 -74.5t-18.5 -91zM291 319q0 33 12.5 62t34 50.5t50.5 34t62 12.5t62 -12.5t50.5 -34t34 -50.5t12.5 -62t-12.5 -62t-34 -51t-50.5 -34.5t-62 -12.5t-62 12.5 t-50.5 34.5t-34 51t-12.5 62z" />
|
79 |
+
<glyph unicode="" horiz-adv-x="803" d="M0 0l1 39q5 2 14.5 4t23.5 4q45 9 53 16q8 5 24 33l114 300l135 354h36h26l5 -10l99 -235q16 -38 31 -74t29 -71t25.5 -63.5t20.5 -50.5q6 -14 14 -34t18 -46q11 -32 31 -73q12 -24 17 -28q10 -9 33 -12q12 -1 24 -4.5t26 -8.5q3 -18 3 -27v-5q0 -3 -1 -8q-21 0 -44 1 t-48 3q-26 2 -48.5 3t-42.5 1h-39q-16 0 -26 -1l-97 -5l-28 -1q0 10 0.5 19.5t1.5 18.5l63 13q28 7 33 12q6 4 6 13q0 7 -3 15l-23 56l-44 111l-218 1q-6 -14 -18 -47t-32 -87q-11 -31 -11 -41q0 -13 8 -21q7 -5 19.5 -8.5t30.5 -6.5q7 -2 41 -6v-29q0 -8 -1 -13 q-17 0 -59 2.5t-109 7.5l-24 -4q-21 -4 -40.5 -5.5t-39.5 -1.5h-10zM268 320q66 -1 105.5 -2t51.5 0l14 1q-9 25 -20 54.5t-25 63.5t-25 59.5t-19 42.5z" />
|
80 |
+
<glyph unicode="" horiz-adv-x="693" d="M0 0l1 46q13 3 33 6q19 3 34 6.5t27 8.5q4 7 6.5 13t3.5 12q3 16 4 39.5t1 54.5l-1 243q-1 19 -1.5 68t-2.5 130q-2 43 -6 53q-2 4 -6 5q-10 7 -34 8q-11 0 -56 6l-2 41l128 3l187 6h22q4 1 8 1h6q3 0 10.5 -0.5t19.5 -0.5h37q45 0 94 -13q9 -2 21 -6.5t26 -12.5 q31 -15 51 -37q22 -23 32 -51q5 -14 7.5 -28.5t2.5 -30.5q0 -35 -16 -63q-15 -28 -46 -51q-8 -6 -26.5 -15t-47.5 -23q87 -20 131 -71q45 -51 45 -115q0 -35 -14 -79q-11 -32 -35 -57q-32 -35 -69 -53q-38 -17 -100 -29q-34 -6 -97 -5l-97 2q-31 1 -67.5 -1t-79.5 -5 q-12 -1 -45.5 -2t-88.5 -3zM262 693q0 -6 0.5 -15.5t1.5 -21.5q1 -25 2 -58.5t0 -77.5v-48v-38q12 -2 25.5 -3t28.5 -1q86 0 130 32t44 110q0 55 -42 91q-41 37 -126 37q-26 0 -64 -7zM266 223l2 -132q0 -8 5 -21q36 -16 69 -16q64 0 107 20q40 19 60 55q9 18 14 40t5 49 q0 55 -21 88q-29 46 -69 61q-39 16 -122 16q-18 0 -30 -1.5t-20 -3.5v-70v-85z" />
|
81 |
+
<glyph unicode="" horiz-adv-x="515" d="M0 0l9 41q6 2 15.5 4.5t22.5 5.5q20 5 34.5 9.5t24.5 9.5q14 19 20 50l14 67l28 131l6 31q11 58 20 87t9 31l15 76l8 31l11 66l4 24v19q-22 11 -72 14q-7 0 -11.5 0.5t-8.5 0.5l10 51l159 -7q15 -1 24 -1h13q17 0 43.5 1t64.5 3q20 2 33.5 3t18.5 1q-1 -5 -1.5 -9.5 t-1.5 -9.5q-2 -5 -4 -11l-3 -14q-24 -8 -54 -15q-32 -8 -51 -15q-6 -16 -12 -43q-3 -12 -4.5 -22t-2.5 -18q-11 -49 -19.5 -86t-13.5 -63l-31 -152l-19 -77l-21 -115l-7 -22v-5q0 -3 1 -8q17 -4 31.5 -6.5t28.5 -4.5q2 0 10.5 -1t22.5 -3q-1 -9 -1.5 -16t-1.5 -13 q-1 -3 -2 -8t-3 -11q-4 0 -7 -0.5t-5 -0.5q-9 -1 -14 -1h-7h-5q-4 0 -9 2q-4 0 -22 2t-51 6l-99 1q-30 0 -88 -6q-19 -2 -31 -3t-18 -1z" />
|
82 |
+
<glyph unicode="" d="M0 562q7 18 17 54t22 90q4 16 6.5 26.5t4.5 15.5h28q2 -3 3 -5l2 -4q14 -28 20 -35q8 -2 63 -2q17 0 32.5 0.5t29.5 0.5l10 1l55 1l104 -1h141l27 5q5 4 13 26l2 6q1 3 3 8l21 1h5q3 0 8 -1q1 -19 0.5 -47.5t0.5 -67.5v-49v-28q0 -7 -0.5 -13.5t-1.5 -11.5 q-10 -4 -18 -5.5t-15 -3.5q-13 25 -26 63q-14 40 -18 45q-6 7 -13 10q-5 2 -30 2h-67h-15q-8 0 -17 -2q-3 -21 -3 -35l1 -74v-163l1 -175v-72q0 -35 5 -57q4 -2 10.5 -4t16.5 -4q2 0 10.5 -2t24.5 -6q13 -5 24 -9q2 -10 2 -16v-9v-5q0 -4 -1 -9h-17q-23 0 -43 1t-37 3 t-46.5 3t-72.5 1q-8 0 -28 -2t-53 -5q-14 -1 -22 -1.5t-12 -0.5q0 5 -0.5 8t-0.5 5l-1 12v5q9 15 39 24q46 13 66 24q2 5 3 12.5t2 15.5q2 33 3 86t0 125l-2 209q-1 44 -1 69.5t-2 35.5q0 4 -3 7q-2 3 -6 3q-8 2 -31 2h-62q-44 0 -58 -10q-20 -14 -59 -75q-11 -17 -17 -17 q-11 6 -17.5 11.5t-9.5 9.5zM675.5 112.5q2.5 6.5 15.5 6.5h59v512h-59q-13 0 -15.5 6.5t6.5 16.5l90 90q7 6 16 6q7 0 15 -6l90 -90q9 -10 6.5 -16.5t-16.5 -6.5h-58v-512h58q14 0 16.5 -6.5t-6.5 -15.5l-90 -91q-8 -6 -16 -6t-15 6l-90 91q-9 9 -6.5 15.5z" />
|
83 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 114q0 9 6 15l91 90q9 10 15.5 7t6.5 -16v-59h512v59q0 13 6.5 16t16.5 -7l90 -90q6 -6 6 -15t-6 -15l-90 -91q-10 -9 -16.5 -6.5t-6.5 16.5v58h-512v-58q0 -14 -6.5 -16.5t-15.5 6.5l-91 91q-6 6 -6 15zM0 602q7 14 16.5 42.5t21.5 71.5q3 13 5.5 21t4.5 13h27 q4 -6 5 -7q13 -23 18 -28q1 0 17.5 -0.5t38.5 -0.5h44h36h60l9 1h53h99h203l26 3q6 5 12 22q1 2 2 4.5t3 6.5h19h14v-92v-39v-22q0 -6 -0.5 -10.5t-1.5 -9.5q-16 -5 -31 -7q-12 18 -25 50q-13 29 -17 36q-6 5 -13 7q-3 1 -20.5 1.5t-41.5 0.5h-50h-48h-14q-8 0 -17 -1 q-1 -9 -1.5 -16t-0.5 -12l2 -217l-1 -58q0 -30 6 -45q6 -3 26 -6q2 0 10 -2t22 -5q7 -2 13 -3.5t11 -3.5q1 -8 1.5 -12.5t0.5 -6.5t-0.5 -5t-0.5 -7h-16q-46 0 -77 3q-32 3 -115 3q-7 0 -26 -1.5t-51 -3.5q-13 -1 -21 -1.5t-12 -0.5q0 8 -1 10v10v4q10 13 36 19q44 10 64 20 q2 4 3 9.5t2 12.5q0 9 0.5 34.5t0.5 58.5t-0.5 69.5t-1 68t-1 52.5t-0.5 23q0 4 -3 6q-1 1 -6 3q-7 1 -29 1h-60q-10 0 -30.5 -0.5t-41.5 -1t-38 -2t-20 -3.5q-20 -12 -57 -60q-10 -14 -16 -14q-11 5 -17 9.5t-9 7.5z" />
|
84 |
+
<glyph unicode="" d="M0 38v56q0 15 11 26t27 11h825q15 0 26 -11t11 -26v-56q0 -16 -11 -27t-26 -11h-825q-16 0 -27 11t-11 27zM0 244v56q0 16 11 27t27 11h525q15 0 26 -11t11 -27v-56q0 -16 -11 -27t-26 -11h-525q-16 0 -27 11t-11 27zM0 450v56q0 16 11 27t27 11h750q15 0 26 -11t11 -27 v-56q0 -16 -11 -26.5t-26 -10.5h-750q-16 0 -27 10.5t-11 26.5zM0 656v57q0 15 11 26t27 11h450q15 0 26 -11t11 -26v-57q0 -15 -11 -26t-26 -11h-450q-16 0 -27 11t-11 26z" />
|
85 |
+
<glyph unicode="" d="M0 38v56q0 15 11 26t27 11h825q15 0 26 -11t11 -26v-56q0 -16 -11 -27t-26 -11h-825q-16 0 -27 11t-11 27zM38 450v56q0 16 10.5 27t26.5 11h750q16 0 27 -11t11 -27v-56q0 -16 -11 -26.5t-27 -10.5h-750q-16 0 -26.5 10.5t-10.5 26.5zM150 244v56q0 16 11 27t27 11h525 q15 0 26 -11t11 -27v-56q0 -16 -11 -27t-26 -11h-525q-16 0 -27 11t-11 27zM188 656v57q0 15 10.5 26t26.5 11h450q16 0 27 -11t11 -26v-57q0 -15 -11 -26t-27 -11h-450q-16 0 -26.5 11t-10.5 26z" />
|
86 |
+
<glyph unicode="" d="M0 38v56q0 15 11 26t27 11h825q15 0 26 -11t11 -26v-56q0 -16 -11 -27t-26 -11h-825q-16 0 -27 11t-11 27zM75 450v56q0 16 11 27t27 11h750q15 0 26 -11t11 -27v-56q0 -16 -11 -26.5t-26 -10.5h-750q-16 0 -27 10.5t-11 26.5zM300 244v56q0 16 11 27t27 11h525 q15 0 26 -11t11 -27v-56q0 -16 -11 -27t-26 -11h-525q-16 0 -27 11t-11 27zM375 656v57q0 15 11 26t27 11h450q15 0 26 -11t11 -26v-57q0 -15 -11 -26t-26 -11h-450q-16 0 -27 11t-11 26z" />
|
87 |
+
<glyph unicode="" d="M0 38v56q0 15 11 26t27 11h825q15 0 26 -11t11 -26v-56q0 -16 -11 -27t-26 -11h-825q-16 0 -27 11t-11 27zM0 244v56q0 16 11 27t27 11h825q15 0 26 -11t11 -27v-56q0 -16 -11 -27t-26 -11h-825q-16 0 -27 11t-11 27zM0 450v56q0 16 11 27t27 11h825q15 0 26 -11t11 -27 v-56q0 -16 -11 -26.5t-26 -10.5h-825q-16 0 -27 10.5t-11 26.5zM0 656v57q0 15 11 26t27 11h825q15 0 26 -11t11 -26v-57q0 -15 -11 -26t-26 -11h-825q-16 0 -27 11t-11 26z" />
|
88 |
+
<glyph unicode="" d="M0 38v56q0 15 11 26t27 11h75q15 0 26 -11t11 -26v-56q0 -16 -11 -27t-26 -11h-75q-16 0 -27 11t-11 27zM0 244v56q0 16 11 27t27 11h75q15 0 26 -11t11 -27v-56q0 -16 -11 -27t-26 -11h-75q-16 0 -27 11t-11 27zM0 450v56q0 16 11 27t27 11h75q15 0 26 -11t11 -27v-56 q0 -16 -11 -26.5t-26 -10.5h-75q-16 0 -27 10.5t-11 26.5zM0 656v57q0 15 11 26t27 11h75q15 0 26 -11t11 -26v-57q0 -15 -11 -26t-26 -11h-75q-16 0 -27 11t-11 26zM225 38v56q0 15 11 26t27 11h600q15 0 26 -11t11 -26v-56q0 -16 -11 -27t-26 -11h-600q-16 0 -27 11 t-11 27zM225 244v56q0 16 11 27t27 11h600q15 0 26 -11t11 -27v-56q0 -16 -11 -27t-26 -11h-600q-16 0 -27 11t-11 27zM225 450v56q0 16 11 27t27 11h600q15 0 26 -11t11 -27v-56q0 -16 -11 -26.5t-26 -10.5h-600q-16 0 -27 10.5t-11 26.5zM225 656v57q0 15 11 26t27 11h600 q15 0 26 -11t11 -26v-57q0 -15 -11 -26t-26 -11h-600q-16 0 -27 11t-11 26z" />
|
89 |
+
<glyph unicode="" d="M0 369v37q0 19 19 19h104v75q0 15 8 18t19 -8l105 -105q8 -8 8 -18q0 -9 -8 -17l-105 -105q-11 -11 -19 -8t-8 19v74h-104q-19 0 -19 19zM300 19v712q0 19 19 19h37q19 0 19 -19v-712q0 -19 -19 -19h-37q-19 0 -19 19zM450 38v56q0 15 11 26t27 11h375q15 0 26 -11 t11 -26v-56q0 -16 -11 -27t-26 -11h-375q-16 0 -27 11t-11 27zM450 244v56q0 16 11 27t27 11h300q15 0 26 -11t11 -27v-56q0 -16 -11 -27t-26 -11h-300q-16 0 -27 11t-11 27zM450 450v56q0 16 11 27t27 11h337q16 0 27 -11t11 -27v-56q0 -16 -11 -26.5t-27 -10.5h-337 q-16 0 -27 10.5t-11 26.5zM450 656v57q0 15 11 26t27 11h262q16 0 27 -11t11 -26v-57q0 -15 -11 -26t-27 -11h-262q-16 0 -27 11t-11 26z" />
|
90 |
+
<glyph unicode="" d="M0 38v56q0 15 11 26t26 11h375q16 0 27 -11t11 -26v-56q0 -16 -11 -27t-27 -11h-375q-15 0 -26 11t-11 27zM0 244v56q0 16 11 27t26 11h300q16 0 27 -11t11 -27v-56q0 -16 -11 -27t-27 -11h-300q-15 0 -26 11t-11 27zM0 450v56q0 16 11 27t26 11h338q15 0 26 -11t11 -27 v-56q0 -16 -11 -26.5t-26 -10.5h-338q-15 0 -26 10.5t-11 26.5zM0 656v57q0 15 11 26t26 11h263q15 0 26 -11t11 -26v-57q0 -15 -11 -26t-26 -11h-263q-15 0 -26 11t-11 26zM525 19v712q0 19 19 19h37q8 0 13.5 -5.5t5.5 -13.5v-712q0 -8 -5.5 -13.5t-13.5 -5.5h-37 q-19 0 -19 19zM637 363q0 8 7 17l106 105q11 11 18.5 8t7.5 -19v-74h105q8 0 13.5 -5.5t5.5 -13.5v-37q0 -8 -5.5 -13.5t-13.5 -5.5h-105v-75q0 -15 -7.5 -18.5t-18.5 7.5l-106 106q-7 9 -7 18z" />
|
91 |
+
<glyph unicode="" d="M-2 113v525q0 23 9 43.5t24.5 35.5t36 24t43.5 9h375q23 0 43.5 -9t36 -24t24.5 -35.5t9 -43.5v-169l251 272q9 9 20 9q5 0 11 -2q18 -8 18 -28v-690q0 -20 -18 -28q-17 -7 -31 7l-251 272v-168q0 -23 -9 -43.5t-24.5 -36t-36 -24.5t-43.5 -9h-375q-23 0 -43.5 9 t-36 24.5t-24.5 36t-9 43.5z" />
|
92 |
+
<glyph unicode="" d="M0 56v638q0 23 16.5 39.5t39.5 16.5h788q23 0 39.5 -16.5t16.5 -39.5v-638q0 -23 -16.5 -39.5t-39.5 -16.5h-788q-23 0 -39.5 16.5t-16.5 39.5zM75 75h750v600h-750v-600zM150 150v51l135 176l92 -76l173 262l200 -207v-206h-600zM150 524q0 32 22 54t54 22q31 0 53 -22 t22 -54q0 -31 -22 -53t-53 -22q-32 0 -54 22t-22 53z" />
|
93 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 0l67 204l423 423l137 -137l-423 -423zM140 199q0 -6 5 -11q4 -4 11 -4q6 0 10 4l337 337q10 10 0 21q-5 5 -11 5t-10 -5l-337 -336q-5 -5 -5 -11zM538 675l58 58q17 17 41 17t41 -17l28 -27l27 -28q17 -17 17 -41t-17 -41l-58 -58z" />
|
94 |
+
<glyph unicode="" horiz-adv-x="530" d="M0 485q0 55 21 103t57 84t84 57t103 21t103 -21t84 -57t57 -84t21 -103q0 -40 -12 -75t-30 -67l-179 -311q-18 -32 -44 -32t-44 32l-179 311q-18 32 -30 67.5t-12 74.5zM134 485q0 -27 10 -51t28 -42t42 -28t51 -10t51 10t41.5 28t28 42t10.5 51t-10.5 51t-28 41.5 t-41.5 28t-51 10.5t-51 -10.5t-42 -28t-28 -41.5t-10 -51z" />
|
95 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 375q0 78 29.5 146t80.5 119t119 80.5t146 29.5t146 -29.5t119 -80.5t80.5 -119t29.5 -146t-29.5 -146t-80.5 -119t-119 -80.5t-146 -29.5t-146 29.5t-119 80.5t-80.5 119t-29.5 146zM113 375q0 -54 20.5 -102t56 -83.5t83.5 -56t102 -20.5v525q-54 0 -102 -20.5 t-83.5 -56.5t-56 -84t-20.5 -102z" />
|
96 |
+
<glyph unicode="" horiz-adv-x="531" d="M0 266q0 39 11 75t31 67q10 16 33 47t50.5 72.5t53.5 90.5t42 102q5 17 17.5 24.5t26.5 5.5q15 2 27.5 -5.5t17.5 -24.5q16 -53 42 -102t53.5 -90.5t50.5 -72.5t33 -47q20 -31 31 -67t11 -75q0 -55 -21 -103.5t-57 -84.5t-84.5 -57t-103.5 -21t-103 21t-84 57t-57 84.5 t-21 103.5zM116 207q0 -28 19.5 -47t47.5 -19q27 0 46.5 19t19.5 47q0 18 -10 36q-3 4 -9 11.5t-12.5 18t-13 23t-10.5 25.5q-4 9 -11 7q-9 2 -11 -7q-4 -13 -11 -25.5t-13.5 -23t-12.5 -18t-8 -11.5q-11 -17 -11 -36z" />
|
97 |
+
<glyph unicode="" d="M0 150v450q0 31 12 58.5t32 47.5t47.5 32t58.5 12h525q2 0 5 -0.5t5 -0.5l-93 -93h-442q-23 0 -39.5 -16.5t-16.5 -39.5v-450q0 -23 16.5 -39.5t39.5 -16.5h525q23 0 39.5 16.5t16.5 39.5v217l94 94v-311q0 -31 -12 -58t-32.5 -47.5t-47.5 -32.5t-58 -12h-525 q-31 0 -58.5 12t-47.5 32.5t-32 47.5t-12 58zM308 158l53 161l318 318l108 -108l-318 -318zM423 307q3 -4 8 -4t8 4l250 249q9 9 0 17t-17 0l-249 -249q-9 -9 0 -17zM733 691l45 46q14 14 33 14t32 -14l22 -22l22 -22q13 -14 13.5 -32.5t-13.5 -32.5l-46 -45z" />
|
98 |
+
<glyph unicode="" d="M0 150v450q0 31 12 58.5t32 47.5t47.5 32t58.5 12h408q-3 -15 -3 -31v-25q-80 -10 -151 -38h-254q-23 0 -39.5 -16.5t-16.5 -39.5v-450q0 -23 16.5 -39.5t39.5 -16.5h525q23 0 39.5 16.5t16.5 39.5v54q8 5 15.5 10.5t15.5 13.5l63 62v-140q0 -31 -12 -58t-32.5 -47.5 t-47.5 -32.5t-58 -12h-525q-31 0 -58.5 12t-47.5 32.5t-32 47.5t-12 58zM188 190v18q0 81 27.5 152.5t84.5 125t143.5 84.5t204.5 32v113q0 28 14 34t34 -14l191 -191q13 -12 13 -32q0 -19 -13 -31l-191 -191q-20 -20 -34 -14t-14 34v127q-101 0 -178 -21t-130 -57t-83 -85 t-38 -105q-2 -13 -15 -13q-12 0 -14 13q-2 11 -2 21z" />
|
99 |
+
<glyph unicode="" d="M0 150v450q0 31 12 58.5t32 47.5t47.5 32t58.5 12h525q13 0 25 -3l-91 -91h-459q-23 0 -39.5 -16.5t-16.5 -39.5v-450q0 -23 16.5 -39.5t39.5 -16.5h525q23 0 39.5 16.5t16.5 39.5v159l94 94v-253q0 -31 -12 -58t-32.5 -47.5t-47.5 -32.5t-58 -12h-525q-31 0 -58.5 12 t-47.5 32.5t-32 47.5t-12 58zM188 472q0 16 11 27l48 48q11 11 27 11t27 -11l166 -166l319 320q11 11 27.5 11t27.5 -11l48 -48q11 -11 11 -27t-11 -27l-347 -347l-48 -48q-11 -11 -27 -11t-27 11l-49 48l-192 193q-11 11 -11 27z" />
|
100 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 375q0 12 8 20l121 120q12 13 21 9t9 -21v-80h169v168h-81q-17 0 -21 9t9 21l120 121q8 8 20 8t20 -8l121 -121q12 -12 8.5 -21t-21.5 -9h-81v-168h169v80q0 17 9 21t21 -9l121 -120q8 -8 8 -20t-8 -20l-121 -120q-12 -13 -21 -9.5t-9 21.5v83h-169v-171h81 q18 0 21.5 -9t-8.5 -21l-121 -121q-8 -8 -20 -8t-20 8l-120 121q-13 12 -9 21t21 9h81v171h-169v-83q0 -17 -9 -21t-21 9l-121 120q-8 8 -8 20z" />
|
101 |
+
<glyph unicode="" horiz-adv-x="525" d="M0 37q0 -15 11 -26t26 -11h75q16 0 27 11t11 26v675q0 16 -11 27t-27 11h-75q-15 0 -26 -11t-11 -27v-675zM150 375q0 13 8 21l319 345q7 9 20 9q3 0 11 -2q17 -9 17 -29v-689q0 -20 -17 -28q-19 -7 -31 7l-319 344q-8 9 -8 22z" />
|
102 |
+
<glyph unicode="" d="M0 37q0 -15 11 -26t26 -11h75q16 0 27 11t11 26v675q0 16 -11 27t-27 11h-75q-15 0 -26 -11t-11 -27v-675zM150 375q0 13 8 21l319 345q7 9 20 9q3 0 11 -2q17 -9 17 -29v-689q0 -20 -17 -28q-19 -7 -31 7l-319 344q-8 9 -8 22zM525 375q0 13 8 21l319 345q7 9 20 9 q3 0 11 -2q17 -9 17 -29v-689q0 -20 -17 -28q-19 -7 -31 7l-319 344q-8 9 -8 22z" />
|
103 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 374.5q0 12.5 8 21.5l319 345q7 9 20 9q5 0 11 -3q17 -7 17 -28v-689q0 -20 -17 -28q-18 -8 -31 7l-319 344q-8 9 -8 21.5zM375 374.5q0 12.5 8 21.5l319 345q7 9 20 9q5 0 11 -3q17 -7 17 -28v-689q0 -20 -17 -28q-18 -8 -31 7l-319 344q-8 9 -8 21.5z" />
|
104 |
+
<glyph unicode="" horiz-adv-x="659" d="M0 34v682q0 19 17 29q18 11 34 0l591 -340q17 -12 17 -30t-17 -30l-591 -340q-8 -5 -17 -5t-17 5q-17 10 -17 29z" />
|
105 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 34v682q0 14 10 24t24 10h239q14 0 24 -10t10 -24v-682q0 -14 -10 -24t-24 -10h-239q-14 0 -24 10t-10 24zM443 34v682q0 14 10 24t24 10h239q14 0 24 -10t10 -24v-682q0 -14 -10 -24t-24 -10h-239q-14 0 -24 10t-10 24z" />
|
106 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 34v682q0 14 10 24t24 10h682q14 0 24 -10t10 -24v-682q0 -14 -10 -24t-24 -10h-682q-14 0 -24 10t-10 24z" />
|
107 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 30v690q0 19 17 28q19 7 31 -7l319 -344q8 -9 8 -22t-8 -22l-319 -344q-8 -9 -20 -9q-3 0 -11 2q-17 8 -17 28zM375 30v690q0 19 17 28q19 7 31 -7l319 -344q8 -9 8 -22t-8 -22l-319 -344q-8 -9 -20 -9q-3 0 -11 2q-17 8 -17 28z" />
|
108 |
+
<glyph unicode="" d="M0 30v690q0 19 17 28q19 7 31 -7l319 -344q8 -9 8 -22t-8 -22l-319 -344q-8 -9 -20 -9q-3 0 -11 2q-17 8 -17 28zM375 30v690q0 19 17 28q19 7 31 -7l319 -344q8 -9 8 -22t-8 -22l-319 -344q-8 -9 -20 -9q-3 0 -11 2q-17 8 -17 28zM750 37q0 -15 11 -26t26 -11h75 q16 0 27 11t11 26v675q0 16 -11 27t-27 11h-75q-15 0 -26 -11t-11 -27v-675z" />
|
109 |
+
<glyph unicode="" horiz-adv-x="525" d="M0 30v690q0 19 17 28q19 7 31 -7l319 -344q8 -9 8 -22t-8 -22l-319 -344q-8 -9 -20 -9q-3 0 -11 2q-17 8 -17 28zM375 37q0 -15 11 -26t26 -11h75q16 0 27 11t11 26v675q0 16 -11 27t-27 11h-75q-15 0 -26 -11t-11 -27v-675z" />
|
110 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 34v97q0 14 10 24t24 10h682q14 0 24 -10t10 -24v-97q0 -14 -10 -24t-24 -10h-682q-14 0 -24 10t-10 24zM3 290q-9 21 7 37l341 341q10 10 24 10t24 -10l341 -341q16 -16 7 -37q-8 -21 -31 -21h-682q-23 0 -31 21z" />
|
111 |
+
<glyph unicode="" horiz-adv-x="471" d="M0 373.5q0 18.5 14 32.5l328 329q14 14 33 14t33 -14l49 -49q14 -14 14 -33t-14 -33l-248 -249l248 -244q14 -14 14 -32.5t-14 -32.5l-49 -50q-14 -14 -33 -14t-33 14l-328 329q-14 14 -14 32.5z" />
|
112 |
+
<glyph unicode="" horiz-adv-x="471" d="M0 95q0 19 14 33l248 248l-248 245q-14 14 -14 32.5t14 32.5l49 50q14 14 33 14t33 -14l328 -329q14 -14 14 -33t-14 -33l-328 -328q-14 -14 -33 -14t-33 14l-49 49q-14 14 -14 33z" />
|
113 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 375q0 78 29.5 146t80.5 119t119 80.5t146 29.5t146 -29.5t119 -80.5t80.5 -119t29.5 -146t-29.5 -146t-80.5 -119t-119 -80.5t-146 -29.5t-146 29.5t-119 80.5t-80.5 119t-29.5 146zM159 338q0 -7 4.5 -11.5t10.5 -4.5h147v-161q0 -7 4.5 -11.5t10.5 -4.5h78 q6 0 10.5 4.5t4.5 11.5v161h147q6 0 10.5 4.5t4.5 11.5v74q0 6 -4.5 10.5t-10.5 4.5h-147v162q0 7 -4.5 11.5t-10.5 4.5h-78q-6 0 -10.5 -4.5t-4.5 -11.5v-162h-147q-6 0 -10.5 -4.5t-4.5 -10.5v-74z" />
|
114 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 375q0 78 29.5 146t80.5 119t119 80.5t146 29.5t146 -29.5t119 -80.5t80.5 -119t29.5 -146t-29.5 -146t-80.5 -119t-119 -80.5t-146 -29.5t-146 29.5t-119 80.5t-80.5 119t-29.5 146zM159 338q0 -7 4.5 -11.5t10.5 -4.5h402q6 0 10.5 4.5t4.5 11.5v74q0 6 -4.5 10.5 t-10.5 4.5h-402q-6 0 -10.5 -4.5t-4.5 -10.5v-74z" />
|
115 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 376q0 72 27.5 141t82.5 124t124 82t141 27t141 -27t124 -82t82.5 -124t27.5 -141t-27.5 -141t-82.5 -124t-124 -82.5t-141 -27.5t-141 27.5t-124 82.5t-82.5 124t-27.5 141zM185 240l55 -54q5 -5 11 -5t11 5l114 114l103 -104q5 -5 11 -5t11 5l53 53q11 11 0 22 l-104 103l115 115q11 11 0 22l-55 55q-11 11 -22 0l-114 -115l-104 104q-11 11 -22 0l-52 -53q-5 -5 -5 -11t5 -11l103 -103l-114 -115q-10 -10 0 -22z" />
|
116 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 375q0 78 29.5 146t80.5 119t119 80.5t146 29.5t146 -29.5t119 -80.5t80.5 -119t29.5 -146t-29.5 -146t-80.5 -119t-119 -80.5t-146 -29.5t-146 29.5t-119 80.5t-80.5 119t-29.5 146zM112 351.5q0 -9.5 7 -16.5l150 -150q7 -6 18 -11t21 -5h25q10 0 21 5t18 11l259 259 q7 7 7 16.5t-7 15.5l-50 50q-6 7 -15.5 7t-16.5 -7l-212 -213q-7 -7 -16.5 -7t-15.5 7l-104 104q-7 7 -16.5 7t-15.5 -7l-50 -49q-7 -7 -7 -16.5z" />
|
117 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 375q0 78 29.5 146t80.5 119t119 80.5t146 29.5t146 -29.5t119 -80.5t80.5 -119t29.5 -146t-29.5 -146t-80.5 -119t-119 -80.5t-146 -29.5t-146 29.5t-119 80.5t-80.5 119t-29.5 146zM250 531l44 -55q6 -4 10 -5q6 0 10 4q8 6 18 11q8 4 18.5 7.5t21.5 3.5 q20 0 33 -10.5t13 -26.5q0 -17 -11.5 -30.5t-28.5 -28.5q-11 -9 -22 -19.5t-20 -24t-15 -30t-6 -37.5v-30q0 -5 4.5 -9.5t9.5 -4.5h77q6 0 10 4.5t4 9.5v25q0 18 12 31t29 28q12 10 24 21.5t21.5 26.5t16 33t6.5 42q0 32 -13 57t-34.5 41.5t-48.5 25t-54 8.5 q-30 0 -53.5 -7.5t-40 -16.5t-25 -17t-9.5 -9q-9 -9 -1 -18zM315 132q0 -5 4.5 -9.5t9.5 -4.5h77q6 0 10 4.5t4 9.5v74q0 14 -14 14h-77q-5 0 -9.5 -4t-4.5 -10v-74z" />
|
118 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 375q0 78 29.5 146t80.5 119t119 80.5t146 29.5t146 -29.5t119 -80.5t80.5 -119t29.5 -146t-29.5 -146t-80.5 -119t-119 -80.5t-146 -29.5t-146 29.5t-119 80.5t-80.5 119t-29.5 146zM269 418q0 -14 14 -14h40v-192h-37q-5 0 -9.5 -4.5t-4.5 -9.5v-66q0 -5 4.5 -9.5 t9.5 -4.5h189q5 0 9.5 4.5t4.5 9.5v66q0 5 -4.5 9.5t-9.5 4.5h-36v271q0 6 -4.5 10t-9.5 4h-142q-14 0 -14 -14v-65zM322 555q0 -6 4.5 -10.5t10.5 -4.5h88q5 0 9.5 4.5t4.5 10.5v77q0 6 -4.5 10t-9.5 4h-88q-6 0 -10.5 -4t-4.5 -10v-77z" />
|
119 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 338v75q0 8 5.5 13t13.5 5h80q9 41 29 77.5t48.5 65t65 48.5t77.5 29v80q0 19 19 19h75q8 0 13 -5.5t5 -13.5v-80q41 -9 77.5 -29t65 -48.5t48.5 -65t29 -77.5h80q8 0 13.5 -5t5.5 -13v-75q0 -19 -19 -19h-80q-9 -41 -29 -77.5t-48.5 -65t-65 -48.5t-77.5 -29v-80 q0 -8 -5 -13.5t-13 -5.5h-75q-19 0 -19 19v80q-41 9 -77.5 29t-65 48.5t-48.5 65t-29 77.5h-80q-19 0 -19 19zM178 319q14 -52 51.5 -89.5t89.5 -51.5v85q0 8 5.5 13t13.5 5h75q8 0 13 -5t5 -13v-85q52 14 89.5 51.5t51.5 89.5h-84q-19 0 -19 19v75q0 8 5.5 13t13.5 5h84 q-14 52 -51.5 89.5t-89.5 51.5v-84q0 -8 -5 -13.5t-13 -5.5h-75q-19 0 -19 19v84q-52 -14 -89.5 -51.5t-51.5 -89.5h85q8 0 13 -5t5 -13v-75q0 -8 -5 -13.5t-13 -5.5h-85z" />
|
120 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 375q0 78 29.5 146t80.5 119t119 80.5t146 29.5t146 -29.5t119 -80.5t80.5 -119t29.5 -146t-29.5 -146t-80.5 -119t-119 -80.5t-146 -29.5t-146 29.5t-119 80.5t-80.5 119t-29.5 146zM113 375q0 -54 20.5 -102t56 -83.5t83.5 -56t102 -20.5t102 20.5t84 56t56.5 83.5 t20.5 102t-20.5 102t-56.5 84t-84 56.5t-102 20.5t-102 -20.5t-83.5 -56.5t-56 -84t-20.5 -102zM212 466q0 8 5 14l53 53q6 5 14 5t13 -5l78 -78l78 78q6 5 14 5t13 -5l53 -53q5 -6 5 -14t-5 -13l-78 -78l78 -78q12 -14 0 -27l-53 -53q-14 -12 -27 0l-78 78l-78 -78 q-5 -5 -13 -5t-14 5l-53 53q-12 13 0 27l79 78l-79 78q-5 5 -5 13z" />
|
121 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 375q0 78 29.5 146t80.5 119t119 80.5t146 29.5t146 -29.5t119 -80.5t80.5 -119t29.5 -146t-29.5 -146t-80.5 -119t-119 -80.5t-146 -29.5t-146 29.5t-119 80.5t-80.5 119t-29.5 146zM113 375q0 -54 20.5 -102t56 -83.5t83.5 -56t102 -20.5t102 20.5t84 56t56.5 83.5 t20.5 102t-20.5 102t-56.5 84t-84 56.5t-102 20.5t-102 -20.5t-83.5 -56.5t-56 -84t-20.5 -102zM156 352q0 8 5 13l53 53q5 5 13 5t14 -5l83 -84q13 -12 27 0l158 159q6 5 14 5t13 -5l53 -53q5 -5 5 -13t-5 -14l-192 -192q-6 -5 -15 -9t-17 -4h-55q-8 0 -17 4t-15 9 l-117 117q-5 6 -5 14z" />
|
122 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 375q0 78 29.5 146t80.5 119t119 80.5t146 29.5t146 -29.5t119 -80.5t80.5 -119t29.5 -146t-29.5 -146t-80.5 -119t-119 -80.5t-146 -29.5t-146 29.5t-119 80.5t-80.5 119t-29.5 146zM113 375q0 -39 10.5 -74.5t30.5 -66.5l362 362q-31 20 -66.5 31t-74.5 11 q-54 0 -102 -20.5t-83.5 -56.5t-56 -84t-20.5 -102zM234 154q31 -20 66.5 -30.5t74.5 -10.5q54 0 102 20.5t84 56t56.5 83.5t20.5 102q0 39 -11 74.5t-31 66.5z" />
|
123 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 375q0 19 14 33l328 329q14 14 33 14t33 -14l49 -49q14 -14 14 -33t-14 -33l-165 -165h411q20 0 33.5 -13.5t13.5 -33.5v-70q0 -19 -13.5 -32.5t-32.5 -13.5h-412l165 -165q14 -14 14 -33t-14 -33l-49 -49q-14 -14 -33 -14t-33 14l-328 328q-14 14 -14 33z" />
|
124 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 341v70q0 19 13.5 32.5t32.5 13.5h412l-165 165q-14 14 -14 33t14 33l49 49q14 14 33 14t33 -14l328 -329q14 -14 14 -32.5t-14 -32.5l-328 -329q-14 -14 -33 -14t-33 14l-49 49q-14 14 -14 33t14 33l165 165h-412q-19 0 -32.5 13.5t-13.5 33.5z" />
|
125 |
+
<glyph unicode="" horiz-adv-x="750" d="M-0.5 375q-0.5 19 13.5 33l329 328q14 14 33 14t33 -14l328 -328q14 -14 14 -33t-14 -33l-49 -49q-14 -14 -32.5 -14t-32.5 14l-166 165v-412q0 -19 -13.5 -32.5t-32.5 -13.5h-70q-20 0 -33 13.5t-13 32.5v412l-165 -165q-14 -14 -33 -14t-33 14l-49 49q-14 14 -14.5 33z " />
|
126 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 374q0 19 14 33l49 49q14 14 33 14t33 -14l165 -165v412q0 19 13.5 32.5t32.5 13.5h70q20 0 33 -13.5t13 -32.5v-412l166 165q14 14 32.5 14t32.5 -14l50 -49q14 -14 14 -33t-14 -33l-329 -328q-14 -14 -33 -14t-33 14l-328 328q-14 14 -14 33z" />
|
127 |
+
<glyph unicode="" d="M0 66q0 102 35 192t106.5 157.5t181 107t259.5 40.5v143q0 35 17.5 42.5t43.5 -17.5l240 -241q17 -16 17 -40q0 -23 -17 -40l-240 -241q-25 -25 -43 -17.5t-18 42.5v161q-128 -1 -225 -27.5t-164 -72t-105 -107t-48 -132.5q-2 -16 -18 -16h-1q-16 0 -18 16q-3 25 -3 50z " />
|
128 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 42v255q0 26 13 31.5t32 -12.5l81 -81l134 134q6 6 15 6t16 -6l78 -78q6 -7 6 -16t-6 -15l-134 -134l81 -81q19 -19 13 -32t-32 -13h-254q-18 0 -30 12q-13 13 -13 30zM375 475q0 9 6 15l134 134l-81 81q-19 19 -13 32t32 13h254q18 0 30 -12q13 -13 13 -30v-255 q0 -26 -13 -31.5t-32 12.5l-81 81l-134 -133q-6 -7 -15 -7t-16 7l-78 77q-6 7 -6 16z" />
|
129 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 99q0 9 6 16l134 133l-81 81q-19 19 -13 32t32 13h254q19 0 30 -12q13 -13 13 -30v-255q0 -26 -13 -31.5t-32 13.5l-81 81l-134 -134q-6 -7 -15 -7t-16 7l-78 78q-6 6 -6 15zM375 417v255q0 26 13 31.5t32 -13.5l81 -81l134 134q6 7 15 7t16 -7l78 -78q6 -6 6 -15 t-6 -16l-134 -133l81 -81q19 -19 13 -32t-32 -13h-254q-20 0 -30 12q-13 13 -13 30z" />
|
130 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 340v70q0 19 13.5 32.5t32.5 13.5h248v247q0 20 13 33.5t33 13.5h70q19 0 32.5 -13.5t13.5 -32.5v-248h248q19 0 32.5 -13.5t13.5 -32.5v-70q0 -19 -13.5 -32.5t-32.5 -13.5h-248v-247q0 -20 -13.5 -33.5t-32.5 -13.5h-70q-19 0 -32.5 13.5t-13.5 32.5v248h-247 q-20 0 -33.5 13t-13.5 33z" />
|
131 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 340v70q0 19 13.5 32.5t32.5 13.5h658q19 0 32.5 -13.5t13.5 -32.5v-70q0 -19 -13.5 -32.5t-32.5 -13.5h-657q-20 0 -33.5 13t-13.5 33z" />
|
132 |
+
<glyph unicode="" horiz-adv-x="697" d="M1 497q-5 18 5 35l35 61q10 17 28.5 21.5t35.5 -4.5l162 -94v187q0 20 13.5 33.5t33.5 13.5h69q20 0 33.5 -13.5t13.5 -32.5v-188l162 94q17 9 35.5 4.5t28.5 -21.5l34 -61q10 -17 5.5 -35t-21.5 -28l-163 -94l163 -94q17 -10 21.5 -28t-4.5 -35l-35 -61 q-10 -17 -28.5 -21.5t-35.5 4.5l-162 94v-187q0 -20 -13.5 -33.5t-33.5 -13.5h-69q-20 0 -33.5 13.5t-13.5 32.5v188l-162 -94q-17 -10 -35.5 -5t-28.5 22l-35 61q-9 17 -4.5 35t21.5 28l163 94l-163 94q-17 10 -22 28z" />
|
133 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 375q0 78 29.5 146t80.5 119t119 80.5t146 29.5t146 -29.5t119 -80.5t80.5 -119t29.5 -146t-29.5 -146t-80.5 -119t-119 -80.5t-146 -29.5t-146 29.5t-119 80.5t-80.5 119t-29.5 146zM316 613l6 -347q2 -14 15 -14h76q14 0 14 14l7 347q1 5 -4 10q-3 4 -10 4h-90 q-7 0 -10 -4q-4 -4 -4 -10zM319 125q0 -14 14 -14h85q5 0 9.5 4t4.5 10v82q0 6 -4.5 10t-9.5 4h-85q-14 0 -14 -14v-82z" />
|
134 |
+
<glyph unicode="" d="M0 281v188q0 8 5.5 13.5t13.5 5.5h258q-27 0 -51 10t-42 28t-28.5 42t-10.5 51t10.5 51t28.5 41.5t42 28t51 10.5q29 0 55 -11.5t43 -33.5l75 -97l75 97q17 22 43 33.5t55 11.5q27 0 51 -10.5t42 -28t28.5 -41.5t10.5 -51t-10.5 -51t-28.5 -42t-42 -28t-51 -10h258 q8 0 13.5 -5.5t5.5 -13.5v-188q0 -8 -5.5 -13t-13.5 -5h-56v-207q0 -23 -16.5 -39.5t-39.5 -16.5h-638q-23 0 -39.5 16.5t-16.5 39.5v207h-56q-8 0 -13.5 5t-5.5 13zM220 619q0 -23 17 -39.5t40 -16.5h113l-73 94q-5 5 -15 11.5t-25 6.5q-23 0 -40 -16.5t-17 -39.5zM356 105 q0 -15 11 -26t27 -11h112q16 0 27 11t11 26v383h-188v-383zM509 563h114q23 0 40 16.5t17 39.5t-17 39.5t-40 16.5q-15 0 -25 -6.5t-15 -11.5z" />
|
135 |
+
<glyph unicode="" d="M3 78q9 25 25.5 41.5t33.5 30.5q14 11 24 20.5t13 20.5q1 2 0 5t-5 11q-2 6 -5 13.5t-5 16.5q-12 75 6.5 139t56.5 114.5t91 86.5t111 56q38 14 83.5 16.5t95.5 3.5q28 0 59.5 1t60.5 5.5t53.5 13.5t39.5 25q10 10 18.5 19.5t18 16.5t20.5 11.5t27 4.5q23 0 33 -21 q62 -121 32 -283q-42 -228 -272 -347q-110 -57 -220 -57q-36 0 -72.5 6t-71.5 19q-11 4 -21.5 9.5t-21.5 10.5q-13 8 -26.5 14.5t-22.5 7.5q-5 -1 -11.5 -8t-13 -16.5t-12.5 -19t-10 -15.5q-6 -11 -12 -20t-11 -16q-11 -14 -29 -14h-2q-28 2 -39 17.5t-14 23.5q-13 18 -5 37 zM188.5 253.5q1.5 -15.5 13.5 -26.5q10 -9 24 -9q18 0 28 13q42 48 85.5 82t90.5 54.5t99.5 29t114.5 6.5q15 -2 26.5 9.5t12.5 26.5q0 16 -10.5 27.5t-26.5 11.5q-69 3 -130 -7t-116 -34t-104.5 -63t-97.5 -94q-11 -11 -9.5 -26.5z" />
|
136 |
+
<glyph unicode="" horiz-adv-x="675" d="M0 214q0 58 30.5 119.5t82.5 111.5q-11 -75 0.5 -120.5t30.5 -71.5q22 -30 53 -44q-24 105 -14 204q4 42 15.5 87.5t34 90t58.5 85.5t89 74q-23 -49 -22 -90t11 -71q11 -35 34 -64q16 -19 30.5 -37.5t25 -42.5t16.5 -56.5t6 -78.5q-9 20 -27 32t-41 12q-32 0 -53.5 -22 t-21.5 -53q0 -16 5.5 -30t17 -25t30 -17t44.5 -6q44 4 77 31q13 12 25.5 29.5t20.5 43t10 60t-5 80.5h-1q52 -50 82.5 -111.5t30.5 -119.5q0 -54 -26.5 -94t-72.5 -66.5t-107 -40t-131 -13.5t-131.5 13.5t-107.5 40t-72.5 66.5t-26.5 94z" />
|
137 |
+
<glyph unicode="" d="M0 352.5q0 21.5 12 40.5q38 61 87 109.5t105.5 82t118.5 51t127 17.5q66 0 128 -17.5t118 -50.5t105 -81.5t88 -110.5q11 -19 11 -40.5t-11 -39.5q-39 -62 -88 -110.5t-105 -81.5t-118 -50.5t-128 -17.5q-65 0 -127 17.5t-118.5 51t-105.5 82t-87 109.5q-12 18 -12 39.5z M75 353q32 -51 73 -93t89 -71t101.5 -45t111.5 -16t111.5 16t101.5 45t89 71t73 93q-39 63 -91.5 110.5t-115.5 76.5q25 -29 39 -65t14 -78q0 -47 -17.5 -87.5t-48.5 -71.5t-72 -48.5t-87 -17.5q-47 0 -87.5 17.5t-71.5 48.5t-48.5 71.5t-17.5 87.5q0 38 12.5 72.5 t33.5 62.5q-57 -29 -106 -74.5t-86 -104.5zM300 397q0 -11 8 -19.5t20 -8.5t20 8.5t8 19.5q0 38 26 64t64 26q12 0 20 8.5t8 19.5q0 12 -8 20t-20 8q-30 0 -57 -11.5t-46.5 -31t-31 -46.5t-11.5 -57z" />
|
138 |
+
<glyph unicode="" d="M0 374.5q0 21.5 12 40.5q38 61 87 109.5t105.5 82t118.5 51t127 17.5q26 0 51.5 -3.5t50.5 -8.5l43 77q4 7 12 9q6 3 14 -1l65 -37q7 -4 9.5 -11.5t-1.5 -14.5l-378 -675q-3 -7 -11 -9q-2 -1 -5 -1t-9 2l-66 37q-7 4 -9 11.5t2 14.5l32 56q-71 33 -131.5 87t-106.5 127 q-12 18 -12 39.5zM75 375q40 -64 93.5 -112t117.5 -77l28 51q-42 31 -67.5 78t-25.5 104q0 38 12.5 72.5t33.5 63.5q-57 -30 -106 -75t-86 -105zM300 419q0 -11 8 -19.5t20 -8.5t20 8.5t8 19.5q0 38 26 64t64 26q12 0 20 8.5t8 19.5q0 12 -8 20t-20 8q-30 0 -57 -11.5 t-46.5 -31t-31 -46.5t-11.5 -57zM453 75l43 78q102 12 186.5 70.5t142.5 151.5q-53 83 -128 138l37 67q45 -32 84 -73t71 -92q11 -19 11 -40.5t-11 -39.5q-78 -124 -191.5 -191.5t-244.5 -68.5zM528 210l139 249q2 -10 3 -19.5t1 -20.5q0 -36 -10.5 -68.5t-29.5 -59.5 t-45.5 -48t-57.5 -33z" />
|
139 |
+
<glyph unicode="" horiz-adv-x="850" d="M5 23.5q-14 23.5 6 56.5l368 637q18 33 46 33q26 0 46 -33l368 -637q19 -33 5.5 -56.5t-51.5 -23.5h-736q-38 0 -52 23.5zM160 113h530l-265 459zM370 434q0 6 4 10t9 4h84q5 0 9 -4t4 -10l-7 -182q0 -12 -13 -12h-70q-13 0 -13 12zM372 189q0 13 13 13h78q13 0 13 -13 l1 -49q0 -13 -13 -13h-78q-13 0 -13 13z" />
|
140 |
+
<glyph unicode="" d="M1 212l34 144q2 8 2 18t-2 18l-34 144q-2 8 2 13.5t12 5.5h45q8 0 17 -4.5t14 -10.5l85 -110q44 9 92 14t94 5h12l-61 283q-2 8 2.5 13t12.5 5h64q8 0 16 -4.5t12 -11.5l164 -285h157q29 0 58 -6.5t51.5 -17t36.5 -24t13 -27.5q1 -14 -13 -27.5t-36.5 -24t-51.5 -17 t-58 -6.5h-158l-163 -283q-4 -7 -12 -11.5t-16 -4.5h-64q-8 0 -12.5 5t-2.5 13l61 281h-12q-46 0 -94 5.5t-92 13.5l-85 -110q-12 -14 -31 -14h-45q-8 0 -12 5t-2 13z" />
|
141 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 56v549q0 23 16.5 39.5t39.5 16.5h36v-69q0 -28 19.5 -47.5t47.5 -19.5h15q28 0 48 19.5t20 47.5v69h58v-69q0 -28 19.5 -47.5t47.5 -19.5h16q28 0 47.5 19.5t19.5 47.5v69h58v-69q0 -28 20 -47.5t48 -19.5h15q28 0 47.5 19.5t19.5 47.5v69h36q23 0 39.5 -16.5 t16.5 -39.5v-549q0 -23 -16.5 -39.5t-39.5 -16.5h-638q-23 0 -39.5 16.5t-16.5 39.5zM75 75h600v398h-600v-398zM129 592v128q0 12 9 21t21 9h15q13 0 21.5 -9t8.5 -21v-128q0 -12 -8.5 -20.5t-21.5 -8.5h-15q-12 0 -21 8.5t-9 20.5zM177 158q0 36 20 58.5t43.5 39t43.5 32 t20 36.5q0 20 -11.5 29t-28.5 9q-11 0 -20.5 -4.5t-16.5 -11.5q-4 -4 -7 -8t-6 -9l-34 23q7 14 20 27q11 11 27.5 19t40.5 8q35 0 61 -20.5t26 -58.5q0 -21 -9 -36.5t-23 -28t-30 -22.5t-30 -20t-23.5 -21t-9.5 -25h92v34h42v-73h-185q-1 6 -1.5 12t-0.5 11zM338 592v128 q0 12 8.5 21t20.5 9h16q12 0 21 -9t9 -21v-128q0 -12 -9 -20.5t-21 -8.5h-16q-12 0 -20.5 8.5t-8.5 20.5zM397 330v71h187v-34l-117 -232h-51l107 212q3 8 6 11l3 4v1q-3 0 -5 -1h-13h-75v-32h-42zM546 592v128q0 12 8.5 21t21.5 9h15q12 0 21 -9t9 -21v-128q0 -12 -9 -20.5 t-21 -8.5h-15q-13 0 -21.5 8.5t-8.5 20.5z" />
|
142 |
+
<glyph unicode="" d="M0 122v75q0 19 19 19h107q25 0 48.5 15.5t45.5 41t44 58.5t44 68q27 43 56 85.5t62 75.5t72 53.5t88 20.5h99v90q0 20 12 24t29 -10l163 -135q11 -9 11 -23q0 -13 -11 -22l-163 -136q-17 -14 -29 -10t-12 24v86h-99q-26 0 -49 -15.5t-45.5 -41t-44.5 -58.5t-44 -68 q-27 -44 -55.5 -86t-61.5 -75t-72.5 -53.5t-87.5 -20.5h-107q-8 0 -13.5 5t-5.5 13zM0 541v75q0 8 5.5 13.5t13.5 5.5h107q52 0 93.5 -23.5t76.5 -61.5q-18 -25 -34 -49.5t-31 -47.5q-25 31 -50.5 50t-54.5 19h-107q-8 0 -13.5 5.5t-5.5 13.5zM417 190q17 24 33 48.5 t31 48.5q25 -31 50.5 -50t54.5 -19h99v94q0 20 12 24t29 -10l163 -136q11 -9 11 -22q0 -14 -11 -23l-163 -135q-17 -14 -29 -10t-12 24v82h-99q-53 0 -93.5 23t-75.5 61z" />
|
143 |
+
<glyph unicode="" d="M0 421q0 68 35.5 128t96.5 104.5t143 70.5t175 26t175 -26t143 -70.5t96.5 -104.5t35.5 -128t-35.5 -128t-96.5 -104.5t-143 -70.5t-175 -26q-44 0 -84 6q-42 -32 -90.5 -55t-103.5 -35l-24 -4q-12 -2 -25 -4q-16 -2 -20 14v1q-2 7 3 11l9 10q10 11 19.5 21.5t17 24.5 t14 32.5t11.5 45.5q-81 45 -129 112.5t-48 148.5z" />
|
144 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 311v139q0 8 5.5 13.5t13.5 5.5h187q8 0 13.5 -5.5t5.5 -13.5v-139q0 -13 11 -28t30.5 -28t47 -21.5t61.5 -8.5t61.5 8.5t47 21.5t30.5 28t11 28v139q0 8 5.5 13.5t13.5 5.5h187q8 0 13.5 -5.5t5.5 -13.5v-139q0 -65 -29.5 -121.5t-80.5 -98.5t-119 -66.5t-146 -24.5 t-146 24.5t-119 66.5t-80.5 98.5t-29.5 121.5zM0 544v187q0 19 19 19h187q19 0 19 -19v-187q0 -19 -19 -19h-187q-19 0 -19 19zM525 544v187q0 19 19 19h187q19 0 19 -19v-187q0 -19 -19 -19h-187q-19 0 -19 19z" />
|
145 |
+
<glyph unicode="" horiz-adv-x="750" d="M-0.5 173.5q-0.5 18.5 13.5 32.5l329 329q14 14 33 14t33 -14l328 -329q14 -14 14 -32.5t-14 -32.5l-49 -50q-14 -14 -33 -14t-33 14l-248 249l-244 -249q-14 -14 -33 -14t-33 14l-49 50q-14 14 -14.5 32.5z" />
|
146 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 448.5q0 18.5 14 32.5l49 50q14 14 33 14t33 -14l248 -249l244 249q14 14 33 14t33 -14l49 -50q14 -14 14.5 -32.5t-13.5 -32.5l-329 -329q-14 -14 -33 -14t-33 14l-328 329q-14 14 -14 32.5z" />
|
147 |
+
<glyph unicode="" d="M1 502.5q-6 14.5 13 34.5l181 199q12 14 30 14t30 -14l181 -199q19 -20 13 -34.5t-32 -14.5h-117v-319h81q4 -5 6.5 -9.5t7.5 -9.5l119 -131h-327q-15 0 -26 11t-11 26v432h-117q-26 0 -32 14.5zM386 731h326q16 0 27 -11t11 -26v-431h117q26 0 32 -15t-13 -35l-181 -199 q-12 -14 -30 -14t-30 14l-181 199q-19 20 -13 35t32 15h117v318h-81q-4 5 -6.5 9.5t-7.5 9.5z" />
|
148 |
+
<glyph unicode="" d="M0 694v37q0 19 19 19h113q8 0 18.5 -2t17.5 -4q3 -2 7 -7t7.5 -11.5t6 -13t3.5 -10.5l13 -61h658q17 0 28 -13t8 -29l-53 -282q-3 -12 -13 -20.5t-24 -8.5h-529l17 -82q2 -8 8.5 -13t14.5 -5h418q8 0 13.5 -5.5t5.5 -13.5v-38q0 -8 -5.5 -13t-13.5 -5h-80h-318h-51 q-8 0 -18 1.5t-17 4.5q-3 1 -7 6.5t-7.5 12t-6 13t-3.5 10.5l-105 496q-2 8 -8.5 13t-14.5 5h-83q-19 0 -19 19zM284 56q0 23 16.5 40t39.5 17q24 0 40.5 -17t16.5 -40t-16.5 -39.5t-40.5 -16.5q-23 0 -39.5 16.5t-16.5 39.5zM602 56q0 23 16.5 40t39.5 17t39.5 -17 t16.5 -40t-16.5 -39.5t-39.5 -16.5t-39.5 16.5t-16.5 39.5z" />
|
149 |
+
<glyph unicode="" d="M0 56v638q0 23 16.5 39.5t39.5 16.5h338q23 0 39.5 -16.5t16.5 -39.5t16.5 -39.5t39.5 -16.5h338q23 0 39.5 -17t16.5 -40v-525q0 -23 -16.5 -39.5t-39.5 -16.5h-788q-23 0 -39.5 16.5t-16.5 39.5z" />
|
150 |
+
<glyph unicode="" d="M0 185v509q0 23 16.5 39.5t39.5 16.5h338q23 0 39.5 -16.5t16.5 -39.5t16.5 -39.5t39.5 -16.5h216q23 0 39.5 -17t16.5 -40v-108h-600q-18 0 -35 -6t-32 -16.5t-26 -25t-17 -31.5zM21 0l120 371q3 11 15 19t23 8h721l-127 -370q-3 -11 -15 -19.5t-23 -8.5h-714z" />
|
151 |
+
<glyph unicode="" horiz-adv-x="375" d="M0.5 187q4.5 11 27.5 11h95v354h-95q-23 0 -27.5 10.5t11.5 26.5l150 151q10 10 26 10q15 0 25 -10l150 -151q16 -15 11.5 -26t-27.5 -11h-95v-354h95q23 0 27.5 -10.5t-11.5 -26.5l-150 -151q-10 -10 -26 -10q-15 0 -25 10l-150 151q-16 15 -11.5 26z" />
|
152 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 357q0 15 10 25l151 151q15 15 26 10.5t11 -26.5v-96h354v96q0 22 10.5 26.5t26.5 -11.5l151 -150q10 -10 10 -25t-10 -25l-151 -151q-15 -16 -26 -11t-11 27v96h-354v-96q0 -22 -10.5 -26.5t-26.5 11.5l-151 150q-10 10 -10 25z" />
|
153 |
+
<glyph unicode="" d="M0 56v638q0 23 17 39.5t40 16.5h787q23 0 39.5 -16.5t16.5 -39.5v-638q0 -23 -16.5 -39.5t-39.5 -16.5h-787q-23 0 -40 16.5t-17 39.5zM75 75h750v600h-750v-600zM150 129v177h99v-177h-99zM317 129v379h98v-379h-98zM485 129v289h99v-289h-99zM651 129v450h99v-450h-99z " />
|
154 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 94v562q0 19 7.5 36.5t20 30t29.5 20t36 7.5h563q39 0 66.5 -27.5t27.5 -66.5v-562q0 -20 -7.5 -37t-20 -29.5t-30 -20t-36.5 -7.5h-563q-19 0 -36 7.5t-29.5 20t-20 29.5t-7.5 37zM98 273q39 -54 97 -82.5t127 -28.5q47 0 90 13t78 36t60.5 55t37.5 70q40 3 63 28 q7 7 2 16q-4 9 -15 7h-2q11 11 15 22q4 10 -4 16q-7 7 -16 1q-4 -2 -14.5 -5t-22.5 -3q-2 0 -3.5 0.5t-3.5 0.5q0 1 -0.5 2t-0.5 2q-8 30 -28 54t-46 35q2 2 3 4t3 4q3 8 0 16q-1 3 -6 8t-17 4q-1 2 -3 4q-6 6 -12 4q-12 -2 -24 -6l-1 1q-7 4 -15 -1q-29 -18 -48 -49 t-33 -66q-17 15 -28 20q-30 17 -63 31t-75 30q-7 2 -12 -2q-5 -3 -7 -10q-1 -13 4 -28.5t19 -30.5q-12 -3 -10 -16q6 -33 33 -49l-6 -6q-7 -7 -2 -16q2 -6 13 -18.5t32 -18.5q-3 -6 -3 -11t1 -7q3 -16 19 -24q-18 -12 -38.5 -16.5t-41.5 -3t-40.5 10t-34.5 22.5q-4 4 -9.5 4 t-9.5 -4q-11 -9 -2 -19z" />
|
155 |
+
<glyph unicode="" horiz-adv-x="750" d="M1 94v562q0 19 7.5 36.5t20 30t29.5 20t36 7.5h563q39 0 66.5 -27.5t27.5 -66.5v-562q0 -20 -7.5 -37t-20 -29.5t-30 -20t-36.5 -7.5h-237v314h84q6 0 10.5 4t4.5 10l6 82q0 7 -4 12q-5 5 -11 5h-90v36q0 20 5 26.5t26 6.5q12 0 27 -2t29 -5q3 0 6.5 0.5t5.5 2.5 q5 3 7 11l11 79q2 14 -12 17q-44 12 -92 12q-147 0 -147 -143v-41h-50q-16 0 -16 -16v-82q0 -6 4.5 -10.5t11.5 -4.5h50v-314h-192q-19 0 -36 7.5t-29.5 20t-20 29.5t-7.5 37z" />
|
156 |
+
<glyph unicode="" d="M0 56v638q0 23 16.5 39.5t39.5 16.5h788q23 0 39.5 -16.5t16.5 -39.5v-638q0 -23 -16.5 -39.5t-39.5 -16.5h-788q-23 0 -39.5 16.5t-16.5 39.5zM75 78h750v56h-750v-56zM75 559h750v113h-467l-7 -45h-276v-68zM130 655h154v45h-154v-45zM272 346q0 -37 14 -69.5t38 -56.5 t56.5 -38t69.5 -14t69.5 14t56.5 38t38 56.5t14 69.5t-14 69.5t-38 56.5t-56.5 38t-69.5 14t-69.5 -14t-56.5 -38t-38 -56.5t-14 -69.5zM328 346q0 25 9.5 47.5t26 39t39 26t47.5 9.5t47.5 -9.5t39 -26t26 -39t9.5 -47.5t-9.5 -47.5t-26 -39t-39 -26t-47.5 -9.5t-47.5 9.5 t-39 26t-26 39t-9.5 47.5zM363 346q0 -8 6 -14t14 -6q9 0 15 6t6 14q0 20 13.5 33t32.5 13v1q9 0 15 6t6 14q0 9 -6 15t-15 6q-36 0 -61.5 -26t-25.5 -62z" />
|
157 |
+
<glyph unicode="" d="M0.5 391.5q-2.5 52.5 14 108.5t53.5 107q36 51 83.5 85t98 48t99.5 8t90 -35q36 -26 57 -63.5t27.5 -82.5t-1.5 -93.5t-32 -95.5l195 -139l47 65l-49 35q-7 5 -8.5 13t3.5 15l23 32q5 7 13 8.5t15 -3.5l163 -116q7 -5 8 -13t-4 -15l-23 -33q-5 -7 -13 -8.5t-15 3.5 l-48 35l-47 -65l116 -83q20 -14 24.5 -39t-10.5 -45q-14 -20 -38.5 -24t-44.5 10l-376 269q-37 -38 -80.5 -61.5t-88 -31.5t-87 -0.5t-78.5 33.5q-41 29 -62.5 74t-24 97.5zM109 374.5q3 -19.5 13.5 -37t27.5 -29.5t37 -16.5t39.5 -1t37 14t29.5 27.5q17 24 18 53t-12 54 q28 -5 55 5.5t45 35.5q12 17 16.5 37t1 39.5t-14 37t-27.5 29.5t-37 16.5t-39.5 1t-37 -14t-29.5 -27.5q-17 -25 -18.5 -54t12.5 -54q-28 5 -55 -5.5t-45 -35.5q-12 -17 -16 -36.5t-1 -39z" />
|
158 |
+
<glyph unicode="" d="M0 391v84q0 6 5 6q14 4 29.5 6t30.5 4q4 0 7 0.5t7 0.5q6 21 17 42q-9 14 -20 28t-23 28q-5 5 0 9q14 17 30 33.5t33 30.5q6 4 9 -1q8 -8 17 -14.5t18 -13.5l21 -15q21 11 42 17q2 21 4.5 39t6.5 35q0 5 6 5h84q7 0 7 -6q2 -14 4.5 -28.5t4.5 -29.5l2 -15q20 -6 41 -17 q8 7 19 14q10 8 19.5 15t18.5 15q6 4 9 -1q5 -4 9 -8l8 -8l22 -22q12 -12 23 -25q3 -5 0 -9q-10 -11 -20 -24.5t-23 -30.5q6 -11 10.5 -22t8.5 -22q8 -2 17.5 -3t19.5 -3l18 -2q9 -1 17 -3q6 -2 6 -7v-84q0 -5 -5 -7q-14 -3 -29.5 -5t-30.5 -4q-4 0 -14 -2q-6 -20 -17 -41 q9 -14 20 -28t23 -28q4 -5 0 -9q-14 -17 -30 -33.5t-33 -30.5q-6 -4 -9 1q-8 7 -17 14t-18 13q-5 5 -10.5 8.5t-10.5 7.5q-21 -11 -42 -17q-2 -17 -4 -36.5t-7 -37.5q-2 -5 -7 -5h-84q-6 0 -6 5q-3 14 -5 29l-4 30l-2 15q-20 6 -41 17q-5 -4 -9.5 -7t-9.5 -7 q-10 -8 -19.5 -15t-18.5 -15q-6 -4 -9 1q-5 4 -8 8l-9 8q-11 11 -22.5 22t-22.5 25q-4 4 0 8q12 14 22.5 28.5t19.5 27.5q-10 20 -18 44q-8 2 -17.5 3t-19.5 3l-18 2q-9 1 -18 3q-5 2 -5 7zM197 432q0 -35 25 -60t60 -25t60 25t25 60t-25 60t-60 25t-60 -25t-25 -60z M524 188q-2 6 4 8q11 4 21 8t21 8q1 5 1.5 9t2.5 9t3.5 8.5t3.5 8.5q-7 10 -13 19.5t-12 19.5q-3 5 2 8l62 56q4 4 9 1q9 -7 17.5 -14t17.5 -15q18 7 35 8q5 11 10.5 21t10.5 19q3 5 8 3l80 -25q5 -2 5 -8q-2 -11 -4 -21.5t-4 -21.5q8 -6 14 -13t11 -15q12 1 23 1.5t22 0.5 q5 0 7 -5l18 -83q2 -5 -4 -7q-11 -5 -21 -8.5t-21 -7.5q-1 -5 -1.5 -9t-2.5 -9t-3.5 -8.5t-3.5 -7.5q7 -10 13.5 -19.5t11.5 -19.5q2 -5 -2 -8l-62 -57q-4 -4 -9 0q-8 7 -17 14t-17 14q-20 -7 -37 -8q-5 -11 -10 -21t-10 -19q-3 -5 -8 -3l-80 25q-5 2 -5 8q2 11 3.5 22 t3.5 22q-14 12 -24 27q-12 -2 -23.5 -2.5t-22.5 0.5q-5 0 -7 5zM560 607q0 5 5 7q10 2 20 4.5t20 4.5q2 4 3 8t3 8t4.5 7t4.5 7q-5 10 -9 19.5t-8 18.5q-2 4 2 8l64 42q5 3 8 -1q8 -7 14.5 -14.5t13.5 -15.5q16 3 33 3q12 18 24 33q3 3 8 2l69 -34q5 -3 3 -8 q-2 -10 -5.5 -19t-6.5 -19q10 -13 18 -29q11 -1 21.5 -1.5t20.5 -2.5q5 -2 5 -6l5 -77q0 -4 -5 -6q-10 -2 -19.5 -4.5t-20.5 -4.5q-2 -4 -3 -7.5t-3 -7.5q-3 -7 -8 -14q5 -10 9 -19.5t8 -18.5q2 -5 -3 -8l-63 -42q-5 -3 -8 1q-13 12 -28 30q-8 -2 -16.5 -3t-17.5 0 q-6 -9 -12 -17.5t-12 -16.5q-3 -3 -8 -1l-69 34q-5 2 -3 7q3 10 6 19.5t7 19.5q-6 6 -10.5 13t-8.5 15q-11 1 -21.5 1.5t-20.5 2.5q-5 0 -5 6zM658 203q-7 -22 3.5 -42.5t33.5 -27.5q22 -8 42.5 2.5t27.5 33.5q8 22 -2.5 42.5t-33.5 28.5q-22 7 -42.5 -3.5t-28.5 -33.5z M681 564q7 -20 26 -30q20 -9 40 -2.5t29 25.5q10 20 3 40t-26 29q-19 10 -39 3t-30 -26t-3 -39z" />
|
159 |
+
<glyph unicode="" d="M0 483q0 55 29 103.5t78.5 85t116 57.5t142.5 21t142.5 -21t116 -57.5t78 -85t28.5 -103.5q0 -56 -28.5 -104.5t-78 -84.5t-116 -57t-142.5 -21q-18 0 -35 1.5t-34 3.5q-34 -26 -73 -45t-84 -29q-20 -5 -40 -6q-12 -2 -16 11v1q-2 5 1.5 9t7.5 8q17 17 30 37t21 64 q-66 36 -105 91t-39 121zM305 136q8 4 12 7q13 -2 25 -2h24q93 0 173 26.5t139.5 72.5t93.5 108.5t34 134.5q0 19 -3 39q45 -36 71 -81.5t26 -98.5q0 -66 -39 -120.5t-105 -91.5q8 -44 21 -63.5t30 -36.5q4 -5 7.5 -9t1.5 -9q-1 -6 -6 -9.5t-10 -2.5q-11 2 -20.5 3.5 t-19.5 3.5q-88 19 -157 73q-17 -2 -34 -3.5t-35 -1.5q-66 0 -123.5 16t-105.5 45z" />
|
160 |
+
<glyph unicode="" horiz-adv-x="783" d="M0.5 222q-1.5 56 2 112t12.5 105q45 3 94 3t90 -10q6 -38 10 -91t5.5 -110t0.5 -111t-5 -94q-18 -2 -41.5 -2.5t-49 0.5t-50 1.5t-44.5 0.5q-10 38 -16.5 89t-8 107zM91 101q0 -16 11 -27t27 -11t26.5 11t10.5 27q0 15 -10.5 26t-26.5 11t-27 -11t-11 -26zM240 412 q22 10 35.5 19.5t24.5 21t22.5 26t30.5 34.5q16 16 28.5 26.5t23 20t19 20t17.5 25.5q16 29 21 65t13 68q0 7 7 11q19 3 35 -3.5t28 -17.5t19.5 -26t10.5 -28q6 -33 -1.5 -59.5t-19 -50.5t-22 -46.5t-11.5 -47.5q21 -9 51.5 -9.5t63.5 1t64 1.5t52 -8.5t28.5 -29t-5.5 -59.5 q0 -2 -2.5 -5.5t-5 -8t-4.5 -8.5l-2 -3q11 -11 16 -23t5 -20q1 -39 -32 -68q10 -15 11 -31.5t-4 -31.5t-14.5 -26.5t-21.5 -17.5q6 -34 -6 -58t-35.5 -38.5t-56.5 -20.5t-69 -6t-72.5 5t-67.5 14q-20 6 -39 14t-38.5 15t-41 11t-45.5 0q2 39 2.5 85t-1 93.5t-4.5 92.5t-7 82 z" />
|
161 |
+
<glyph unicode="" horiz-adv-x="783" d="M1 452q-1 21 7.5 37.5t24.5 30.5q-9 15 -10 31.5t3.5 31.5t14 26.5t21.5 17.5q-6 34 6 58t35.5 38.5t56.5 20.5t69 6t72.5 -5t67.5 -14q20 -6 39 -14t38.5 -15t41 -10.5t45.5 0.5q-2 -39 -2.5 -85.5t1 -94t4 -92.5t7.5 -82q-22 -10 -35.5 -19.5t-24 -21t-22.5 -26 t-31 -33.5q-15 -17 -27.5 -27.5t-23 -20t-19.5 -19.5t-18 -26q-16 -29 -20.5 -65t-13.5 -68q0 -8 -7 -11q-20 -3 -35.5 3.5t-27.5 17.5t-19.5 25.5t-10.5 28.5q-6 33 1.5 59.5t19 50.5t22 47t11.5 48q-21 9 -51.5 9t-63.5 -1.5t-63.5 -1.5t-52 8.5t-29 29t5.5 59.5 q1 1 3.5 5.5t5 8.5t3.5 8l2 3q-11 11 -16 23t-5 20zM568 630q1 54 5 94q18 2 42 2.5t49.5 0t50 -1.5t44.5 -1q10 -38 16 -89t7.5 -106.5t-2 -112t-12.5 -105.5q-45 -3 -93.5 -3t-90.5 10q-6 38 -10 91t-5.5 110t-0.5 111zM617 650q0 -16 11 -27t27 -11q15 0 26 11t11 27 q0 15 -11 26t-26 11q-16 0 -27 -11t-11 -26z" />
|
162 |
+
<glyph unicode="" horiz-adv-x="393" d="M0.5 465q4.5 13 25.5 16l238 34l106 216q9 19 23 19v-633l-212 -112q-20 -10 -31 -2t-7 30l41 236l-172 168q-16 15 -11.5 28z" />
|
163 |
+
<glyph unicode="" horiz-adv-x="846" d="M0 519q0 64 20.5 108t53 71.5t73.5 39.5t82 12q30 0 59 -10t54 -25t45.5 -32.5t35.5 -32.5q15 15 36 32.5t46 32.5t53.5 25t58.5 10q42 0 83 -12t73.5 -39.5t52.5 -71.5t20 -108q0 -44 -16.5 -83.5t-36 -69.5t-37 -48t-18.5 -19l-288 -288q-13 -11 -27 -11q-15 0 -26 11 l-290 288q-1 1 -18 19t-36.5 48t-36 69.5t-16.5 83.5zM75 519q0 -32 13 -61.5t29 -53t29 -37.5l14 -14l263 -263l263 262q1 1 14 15t29 37.5t29 53t13 61.5q0 48 -14 78.5t-36.5 48t-50 23.5t-53.5 6q-25 0 -50.5 -12t-48 -29t-40 -34.5t-26.5 -28.5q-11 -14 -29 -14t-29 14 q-9 11 -26.5 28.5t-40 34.5t-48 29t-50.5 12q-26 0 -53.5 -6t-50 -23.5t-36.5 -48t-14 -78.5z" />
|
164 |
+
<glyph unicode="" horiz-adv-x="825" d="M0 150v450q0 31 12 58t32.5 47.5t47.5 32.5t58 12h225v-94h-225q-23 0 -39.5 -16.5t-16.5 -39.5v-450q0 -23 16.5 -39.5t39.5 -16.5h225v-94h-225q-31 0 -58 12t-47.5 32.5t-32.5 47.5t-12 58zM248 285v180q0 16 11 26.5t27 10.5h209v143q0 20 19 28q19 7 32 -7l270 -270 q9 -9 9 -21.5t-9 -20.5l-270 -270q-9 -9 -21 -9q-5 0 -11 2q-19 8 -19 28v142h-209q-16 0 -27 11t-11 27z" />
|
165 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 94v562q0 19 7.5 36.5t20 30t29.5 20t37 7.5h562q39 0 66.5 -27.5t27.5 -66.5v-562q0 -20 -7.5 -37t-20 -29.5t-30 -20t-36.5 -7.5h-562q-39 0 -66.5 27.5t-27.5 66.5zM101 582q0 -28 19.5 -47.5t46.5 -19.5q28 0 47.5 19.5t19.5 47.5q0 27 -19.5 46.5t-47.5 19.5 q-27 0 -46.5 -19.5t-19.5 -46.5zM104 117q0 -5 4.5 -9.5t9.5 -4.5h98q6 0 10 4.5t4 9.5v345q0 14 -14 14h-98q-5 0 -9.5 -4t-4.5 -10v-345zM283 117q0 -5 4.5 -9.5t9.5 -4.5h98q6 0 10 4.5t4 9.5v187q0 28 8 47q15 31 55 31q32 0 42 -19q7 -11 7 -35v-211q0 -5 4 -9.5 t10 -4.5h100q6 0 10 4.5t4 9.5v233q0 72 -42 104q-40 31 -103 31q-50 0 -85 -23q-4 -3 -13 -12v12q0 14 -14 14h-95q-5 0 -9.5 -4t-4.5 -10v-345z" />
|
166 |
+
<glyph unicode="" d="M1 461q4 38 21 80.5t47 82.5t65.5 68.5t71.5 43t68.5 14t56.5 -18.5q25 -18 34.5 -49.5t5.5 -70.5l141 -105q52 29 101.5 33.5t84.5 -21.5q25 -19 37.5 -50.5t11.5 -70.5t-14.5 -83.5t-39.5 -88.5l201 -193q5 -5 6 -12t-4 -12q-5 -8 -15 -8q-3 0 -9 2l-242 138 q-35 -37 -73.5 -63t-75.5 -38t-71 -9.5t-60 22.5q-35 26 -45 74.5t4 106.5l-141 106q-36 -15 -69 -15t-58 18q-24 18 -34 49.5t-6 69.5zM80 417.5q1 -7.5 8 -12.5q8 -7 22 -7q15 0 31.5 8t33.5 22t33.5 31.5t31.5 37.5q5 6 4 13.5t-8 12.5q-6 5 -13.5 4t-12.5 -8 q-37 -49 -65.5 -67.5t-34.5 -16.5q-6 5 -13.5 4t-12.5 -8q-5 -6 -4 -13.5zM219 368l170 -127q6 -4 11 -4q10 0 15 8q5 6 4 13.5t-7 12.5l-163 121q-15 -14 -30 -24zM393 141q-10 -16 4 -27q13 -10 33 -10q19 0 41 10t44.5 27t44.5 39t41 47q5 7 4 14.5t-8 12.5 q-6 5 -13.5 3.5t-12.5 -7.5q-24 -32 -48 -54.5t-45 -35.5t-36.5 -17t-22.5 2q-6 5 -13.5 3.5t-12.5 -7.5z" />
|
167 |
+
<glyph unicode="" d="M0 150v450q0 31 12 58.5t32 47.5t47.5 32t58.5 12h284q-1 -7 -2 -13.5t-1 -14.5v-43q0 -11 3 -23h-284q-23 0 -39.5 -16.5t-16.5 -39.5v-450q0 -23 16.5 -39.5t39.5 -16.5h525q23 0 39.5 16.5t16.5 39.5v166q20 -15 44 -24t50 -10v-132q0 -31 -12 -58t-32.5 -47.5 t-47.5 -32.5t-58 -12h-525q-31 0 -58.5 12t-47.5 32.5t-32 47.5t-12 58zM338 255q0 12 8 20l376 377h-131q-12 0 -20 8t-8 20v42q-1 11 7.5 19.5t20.5 8.5h281q11 0 19.5 -8.5t8.5 -19.5v-42v-239q0 -12 -8.5 -20.5t-19.5 -7.5h-42q-12 0 -20 8t-8 20v131l-377 -376 q-8 -8 -20 -8t-20 8l-39 39q-8 8 -8 20z" />
|
168 |
+
<glyph unicode="" horiz-adv-x="825" d="M0 285v180q0 16 11 26.5t27 10.5h209v143q0 20 18 28q19 7 33 -7l270 -270q8 -9 8 -21.5t-8 -20.5l-270 -270q-9 -9 -21 -9q-4 0 -12 2q-18 8 -18 28v142h-209q-16 0 -27 11t-11 27zM450 0v94h225q23 0 39.5 16.5t16.5 39.5v450q0 23 -16.5 39.5t-39.5 16.5h-225v94h225 q31 0 58 -12t47.5 -32t32.5 -47.5t12 -58.5v-450q0 -31 -12 -58t-32.5 -47.5t-47.5 -32.5t-58 -12h-225z" />
|
169 |
+
<glyph unicode="" horiz-adv-x="825" d="M0 509v91q0 16 11 26.5t27 10.5h158q-1 6 -1 13v11v2q0 26 2 43t7.5 26.5t15.5 13.5t27 4h331q16 0 26.5 -4t16 -13.5t7.5 -26.5t2 -43v-13q0 -6 -1 -13h158q16 0 27 -10.5t11 -26.5v-91q0 -31 -22 -64t-59.5 -62.5t-88 -52t-108.5 -31.5q-25 -5 -44.5 -20.5t-19.5 -34.5 q0 -17 8.5 -25t19 -15t19.5 -15.5t11 -25.5q2 -11 -1 -23q-2 -7 11.5 -11.5t33 -9t40 -11t31.5 -16.5q6 -5 9.5 -19.5t4.5 -31.5q1 -16 -3 -28.5t-14 -12.5h-481q-10 0 -14 12.5t-3 28.5q1 17 4.5 31.5t9.5 19.5q11 10 31 16.5t39.5 11t33.5 9t12 11.5t-2 12v11 q1 17 10.5 25.5t20.5 15.5t19.5 15t8.5 25q0 19 -19.5 34.5t-45.5 20.5q-57 10 -107.5 32.5t-88 51.5t-59.5 62t-22 64zM75 509q0 -10 11.5 -26.5t33 -34.5t52 -35t68.5 -29q-12 39 -21.5 85.5t-16.5 92.5h-127v-53zM585 384q38 12 68.5 29t52 35t33 34.5t11.5 26.5v53h-128 q-6 -46 -15.5 -92.5t-21.5 -85.5z" />
|
170 |
+
<glyph unicode="" horiz-adv-x="750" d="M0 94v562q0 19 7.5 36.5t20 30t29.5 20t37 7.5h562q39 0 66.5 -27.5t27.5 -66.5v-562q0 -20 -7.5 -37t-20 -29.5t-30 -20t-36.5 -7.5h-562q-39 0 -66.5 27.5t-27.5 66.5zM94 321q0 -44 11 -82.5t41.5 -67t85.5 -45t143 -16.5t142.5 16.5t85.5 45t42 67t11 82.5 q0 73 -46 127q4 16 5 36t-1.5 39t-7.5 36t-12 29h-14q-42 -2 -74 -22t-63 -37l-7 1q-8 0 -18.5 1t-22 1.5t-20.5 0.5q-18 0 -35 -1t-33 -3q-31 17 -63 37t-74 22h-14q-8 -12 -12.5 -29t-7 -36t-1.5 -39t5 -36q-46 -54 -46 -127zM183 289q15 60 84 67q13 2 27 1.5t30 -1.5 q7 0 25.5 -1t25.5 -1t25.5 1t25.5 1q16 1 30 1.5t26 -1.5q70 -7 85 -67q8 -33 -3 -61.5t-24 -41.5q-20 -20 -66 -32t-99 -12t-99 12t-66 32q-13 13 -24 41.5t-3 61.5zM242 265q0 -23 11 -39t27 -16t27 16t11 39t-11 38.5t-27 15.5t-27 -15.5t-11 -38.5zM432 265 q0 -23 11 -39t27 -16t27 16t11 39t-11 38.5t-27 15.5t-27 -15.5t-11 -38.5z" />
|
171 |
+
<glyph unicode="" d="M0 19v300q0 8 5.5 13.5t13.5 5.5h112q8 0 13.5 -5.5t5.5 -13.5v-169h600v169q0 8 5.5 13.5t13.5 5.5h112q8 0 13.5 -5.5t5.5 -13.5v-300q0 -19 -19 -19h-862q-19 0 -19 19zM169 473.5q-3 7.5 8 18.5l246 247q11 11 27 11t27 -11l247 -247q11 -11 7.5 -18.5t-18.5 -7.5 h-150v-244q0 -16 -11 -27t-27 -11h-150q-16 0 -26.5 11t-10.5 27v244h-150q-16 0 -19 7.5z" />
|
172 |
+
<glyph unicode="" horiz-adv-x="786" d="M1 251q-1 17 0.5 33.5t3.5 36.5q2 17 3.5 35t4.5 32q7 32 15 62.5t22 57.5q10 20 22 39.5t26 38.5q5 7 10.5 12t11.5 10l22 22q11 11 24 21t28 18t32 16q16 8 33 14.5t35 13.5q34 14 76 25l1 1q22 6 41.5 8.5t38.5 2.5q29 0 55 -4.5t52 -9.5q20 -4 41.5 -7.5t45.5 -3.5h1 q14 0 30.5 2.5t32.5 2.5q12 0 22 -3t16 -12q11 -15 12.5 -35t-0.5 -37t-4 -34.5t1 -35.5q2 -11 5.5 -19t7.5 -18q4 -9 5.5 -19.5t3.5 -20.5q9 -51 7.5 -95.5t-11.5 -83t-27.5 -72.5t-39.5 -65q-18 -24 -38.5 -47.5t-45 -44.5t-54 -38t-65.5 -29q-37 -13 -77.5 -16.5 t-77.5 -5.5h-15q-51 0 -95 8t-94 8h-2q-17 0 -37.5 -5t-40.5 -6h-1q-18 0 -32 8.5t-21 20.5q-10 17 -8.5 35.5t6.5 33.5t5 32.5t-2.5 37t-6 39.5t-4.5 40z" />
|
173 |
+
<glyph unicode="" horiz-adv-x="1000" />
|
174 |
+
</font>
|
175 |
+
</defs></svg>
|
themes-ai1ec/vortex/font/fontawesome-webfont.svgz
ADDED
Binary file
|
themes-ai1ec/vortex/font/fontawesome-webfont.ttf
ADDED
Binary file
|
themes-ai1ec/vortex/font/fontawesome-webfont.woff
ADDED
Binary file
|
themes-ai1ec/vortex/functions.php
ADDED
@@ -0,0 +1,19 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @file
|
4 |
+
*
|
5 |
+
* Attaches theme-specific JS.
|
6 |
+
*/
|
7 |
+
|
8 |
+
/**
|
9 |
+
* Load theme-specific JS.
|
10 |
+
*/
|
11 |
+
function ai1ec_vortex_scripts() {
|
12 |
+
$vortex_url = apply_filters(
|
13 |
+
'ai1ec_template_root_url',
|
14 |
+
apply_filters( 'ai1ec_template', 'vortex' )
|
15 |
+
);
|
16 |
+
|
17 |
+
wp_enqueue_script( 'ai1ec-vortex-general', "$vortex_url/js/general.min.js" );
|
18 |
+
}
|
19 |
+
add_action( 'wp_print_scripts', 'ai1ec_vortex_scripts' );
|
themes-ai1ec/vortex/img/agenda-view.png
ADDED
Binary file
|
themes-ai1ec/vortex/img/ajax-loader.gif
ADDED
Binary file
|
{img → themes-ai1ec/vortex/img}/google-calendar.png
RENAMED
File without changes
|
{img → themes-ai1ec/vortex/img}/ics-icon.png
RENAMED
File without changes
|
themes-ai1ec/vortex/img/month-view.png
ADDED
Binary file
|
themes-ai1ec/vortex/img/oneday-view.png
ADDED
Binary file
|
themes-ai1ec/vortex/img/week-view.png
ADDED
Binary file
|
themes-ai1ec/vortex/index.php
ADDED
File without changes
|
themes-ai1ec/vortex/js/bootstrap-dropdown.js
ADDED
@@ -0,0 +1,93 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/* ============================================================
|
2 |
+
* bootstrap-dropdown.js v2.0.2
|
3 |
+
* http://twitter.github.com/bootstrap/javascript.html#dropdowns
|
4 |
+
* ============================================================
|
5 |
+
* Copyright 2012 Twitter, Inc.
|
6 |
+
*
|
7 |
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
8 |
+
* you may not use this file except in compliance with the License.
|
9 |
+
* You may obtain a copy of the License at
|
10 |
+
*
|
11 |
+
* http://www.apache.org/licenses/LICENSE-2.0
|
12 |
+
*
|
13 |
+
* Unless required by applicable law or agreed to in writing, software
|
14 |
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
15 |
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
16 |
+
* See the License for the specific language governing permissions and
|
17 |
+
* limitations under the License.
|
18 |
+
* ============================================================ */
|
19 |
+
|
20 |
+
if ( ! jQuery.fn.dropdown ) {
|
21 |
+
!function( $ ){
|
22 |
+
|
23 |
+
"use strict"
|
24 |
+
|
25 |
+
/* DROPDOWN CLASS DEFINITION
|
26 |
+
* ========================= */
|
27 |
+
|
28 |
+
var toggle = '[data-toggle="dropdown"]'
|
29 |
+
, Dropdown = function ( element ) {
|
30 |
+
var $el = $(element).on('click.dropdown.data-api', this.toggle)
|
31 |
+
$('html').on('click.dropdown.data-api', function () {
|
32 |
+
$el.parent().removeClass('open')
|
33 |
+
})
|
34 |
+
}
|
35 |
+
|
36 |
+
Dropdown.prototype = {
|
37 |
+
|
38 |
+
constructor: Dropdown
|
39 |
+
|
40 |
+
, toggle: function ( e ) {
|
41 |
+
var $this = $(this)
|
42 |
+
, selector = $this.attr('data-target')
|
43 |
+
, $parent
|
44 |
+
, isActive
|
45 |
+
|
46 |
+
if (!selector) {
|
47 |
+
selector = $this.attr('href')
|
48 |
+
selector = selector && selector.replace(/.*(?=#[^\s]*$)/, '') //strip for ie7
|
49 |
+
}
|
50 |
+
|
51 |
+
$parent = $(selector)
|
52 |
+
$parent.length || ($parent = $this.parent())
|
53 |
+
|
54 |
+
isActive = $parent.hasClass('open')
|
55 |
+
|
56 |
+
clearMenus()
|
57 |
+
!isActive && $parent.toggleClass('open')
|
58 |
+
|
59 |
+
return false
|
60 |
+
}
|
61 |
+
|
62 |
+
}
|
63 |
+
|
64 |
+
function clearMenus() {
|
65 |
+
$(toggle).parent().removeClass('open')
|
66 |
+
}
|
67 |
+
|
68 |
+
|
69 |
+
/* DROPDOWN PLUGIN DEFINITION
|
70 |
+
* ========================== */
|
71 |
+
|
72 |
+
$.fn.dropdown = function ( option ) {
|
73 |
+
return this.each(function () {
|
74 |
+
var $this = $(this)
|
75 |
+
, data = $this.data('dropdown')
|
76 |
+
if (!data) $this.data('dropdown', (data = new Dropdown(this)))
|
77 |
+
if (typeof option == 'string') data[option].call($this)
|
78 |
+
})
|
79 |
+
}
|
80 |
+
|
81 |
+
$.fn.dropdown.Constructor = Dropdown
|
82 |
+
|
83 |
+
|
84 |
+
/* APPLY TO STANDARD DROPDOWN ELEMENTS
|
85 |
+
* =================================== */
|
86 |
+
|
87 |
+
$(function () {
|
88 |
+
$('html').on('click.dropdown.data-api', clearMenus)
|
89 |
+
$('body').on('click.dropdown.data-api', toggle, Dropdown.prototype.toggle)
|
90 |
+
})
|
91 |
+
|
92 |
+
}( window.jQuery );
|
93 |
+
}
|
themes-ai1ec/vortex/js/bootstrap-tooltip.js
ADDED
@@ -0,0 +1,272 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/* ===========================================================
|
2 |
+
* bootstrap-tooltip.js v2.0.2
|
3 |
+
* http://twitter.github.com/bootstrap/javascript.html#tooltips
|
4 |
+
* Inspired by the original jQuery.tipsy by Jason Frame
|
5 |
+
* ===========================================================
|
6 |
+
* Copyright 2012 Twitter, Inc.
|
7 |
+
*
|
8 |
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
9 |
+
* you may not use this file except in compliance with the License.
|
10 |
+
* You may obtain a copy of the License at
|
11 |
+
*
|
12 |
+
* http://www.apache.org/licenses/LICENSE-2.0
|
13 |
+
*
|
14 |
+
* Unless required by applicable law or agreed to in writing, software
|
15 |
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
16 |
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
17 |
+
* See the License for the specific language governing permissions and
|
18 |
+
* limitations under the License.
|
19 |
+
* ========================================================== */
|
20 |
+
|
21 |
+
if ( ! jQuery.fn.tooltip ) {
|
22 |
+
!function( $ ) {
|
23 |
+
|
24 |
+
"use strict"
|
25 |
+
|
26 |
+
/* TOOLTIP PUBLIC CLASS DEFINITION
|
27 |
+
* =============================== */
|
28 |
+
|
29 |
+
var Tooltip = function ( element, options ) {
|
30 |
+
this.init('tooltip', element, options)
|
31 |
+
}
|
32 |
+
|
33 |
+
Tooltip.prototype = {
|
34 |
+
|
35 |
+
constructor: Tooltip
|
36 |
+
|
37 |
+
, init: function ( type, element, options ) {
|
38 |
+
var eventIn
|
39 |
+
, eventOut
|
40 |
+
|
41 |
+
this.type = type
|
42 |
+
this.$element = $(element)
|
43 |
+
this.options = this.getOptions(options)
|
44 |
+
this.enabled = true
|
45 |
+
|
46 |
+
if (this.options.trigger != 'manual') {
|
47 |
+
eventIn = this.options.trigger == 'hover' ? 'mouseenter' : 'focus'
|
48 |
+
eventOut = this.options.trigger == 'hover' ? 'mouseleave' : 'blur'
|
49 |
+
this.$element.on(eventIn, this.options.selector, $.proxy(this.enter, this))
|
50 |
+
this.$element.on(eventOut, this.options.selector, $.proxy(this.leave, this))
|
51 |
+
}
|
52 |
+
|
53 |
+
this.options.selector ?
|
54 |
+
(this._options = $.extend({}, this.options, { trigger: 'manual', selector: '' })) :
|
55 |
+
this.fixTitle()
|
56 |
+
}
|
57 |
+
|
58 |
+
, getOptions: function ( options ) {
|
59 |
+
options = $.extend({}, $.fn[this.type].defaults, options, this.$element.data())
|
60 |
+
|
61 |
+
if (options.delay && typeof options.delay == 'number') {
|
62 |
+
options.delay = {
|
63 |
+
show: options.delay
|
64 |
+
, hide: options.delay
|
65 |
+
}
|
66 |
+
}
|
67 |
+
|
68 |
+
return options
|
69 |
+
}
|
70 |
+
|
71 |
+
, enter: function ( e ) {
|
72 |
+
var self = $(e.currentTarget)[this.type](this._options).data(this.type)
|
73 |
+
|
74 |
+
if (!self.options.delay || !self.options.delay.show) {
|
75 |
+
self.show()
|
76 |
+
} else {
|
77 |
+
self.hoverState = 'in'
|
78 |
+
setTimeout(function() {
|
79 |
+
if (self.hoverState == 'in') {
|
80 |
+
self.show()
|
81 |
+
}
|
82 |
+
}, self.options.delay.show)
|
83 |
+
}
|
84 |
+
}
|
85 |
+
|
86 |
+
, leave: function ( e ) {
|
87 |
+
var self = $(e.currentTarget)[this.type](this._options).data(this.type)
|
88 |
+
|
89 |
+
if (!self.options.delay || !self.options.delay.hide) {
|
90 |
+
self.hide()
|
91 |
+
} else {
|
92 |
+
self.hoverState = 'out'
|
93 |
+
setTimeout(function() {
|
94 |
+
if (self.hoverState == 'out') {
|
95 |
+
self.hide()
|
96 |
+
}
|
97 |
+
}, self.options.delay.hide)
|
98 |
+
}
|
99 |
+
}
|
100 |
+
|
101 |
+
, show: function () {
|
102 |
+
var $tip
|
103 |
+
, inside
|
104 |
+
, pos
|
105 |
+
, actualWidth
|
106 |
+
, actualHeight
|
107 |
+
, placement
|
108 |
+
, tp
|
109 |
+
|
110 |
+
if (this.hasContent() && this.enabled) {
|
111 |
+
$tip = this.tip()
|
112 |
+
this.setContent()
|
113 |
+
|
114 |
+
if (this.options.animation) {
|
115 |
+
$tip.addClass('fade')
|
116 |
+
}
|
117 |
+
|
118 |
+
placement = typeof this.options.placement == 'function' ?
|
119 |
+
this.options.placement.call(this, $tip[0], this.$element[0]) :
|
120 |
+
this.options.placement
|
121 |
+
|
122 |
+
inside = /in/.test(placement)
|
123 |
+
|
124 |
+
$tip
|
125 |
+
.remove()
|
126 |
+
.css({ top: 0, left: 0, display: 'block' })
|
127 |
+
.appendTo(inside ? this.$element : document.body)
|
128 |
+
|
129 |
+
pos = this.getPosition(inside)
|
130 |
+
|
131 |
+
actualWidth = $tip[0].offsetWidth
|
132 |
+
actualHeight = $tip[0].offsetHeight
|
133 |
+
|
134 |
+
switch (inside ? placement.split(' ')[1] : placement) {
|
135 |
+
case 'bottom':
|
136 |
+
tp = {top: pos.top + pos.height, left: pos.left + pos.width / 2 - actualWidth / 2}
|
137 |
+
break
|
138 |
+
case 'top':
|
139 |
+
tp = {top: pos.top - actualHeight, left: pos.left + pos.width / 2 - actualWidth / 2}
|
140 |
+
break
|
141 |
+
case 'left':
|
142 |
+
tp = {top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left - actualWidth}
|
143 |
+
break
|
144 |
+
case 'right':
|
145 |
+
tp = {top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left + pos.width}
|
146 |
+
break
|
147 |
+
}
|
148 |
+
|
149 |
+
$tip
|
150 |
+
.css(tp)
|
151 |
+
.addClass(placement)
|
152 |
+
.addClass('in')
|
153 |
+
}
|
154 |
+
}
|
155 |
+
|
156 |
+
, setContent: function () {
|
157 |
+
var $tip = this.tip()
|
158 |
+
$tip.find('.tooltip-inner').html(this.getTitle())
|
159 |
+
$tip.removeClass('fade in top bottom left right')
|
160 |
+
}
|
161 |
+
|
162 |
+
, hide: function () {
|
163 |
+
var that = this
|
164 |
+
, $tip = this.tip()
|
165 |
+
|
166 |
+
$tip.removeClass('in')
|
167 |
+
|
168 |
+
function removeWithAnimation() {
|
169 |
+
var timeout = setTimeout(function () {
|
170 |
+
$tip.off($.support.transition.end).remove()
|
171 |
+
}, 500)
|
172 |
+
|
173 |
+
$tip.one($.support.transition.end, function () {
|
174 |
+
clearTimeout(timeout)
|
175 |
+
$tip.remove()
|
176 |
+
})
|
177 |
+
}
|
178 |
+
|
179 |
+
$.support.transition && this.$tip.hasClass('fade') ?
|
180 |
+
removeWithAnimation() :
|
181 |
+
$tip.remove()
|
182 |
+
}
|
183 |
+
|
184 |
+
, fixTitle: function () {
|
185 |
+
var $e = this.$element
|
186 |
+
if ($e.attr('title') || typeof($e.attr('data-original-title')) != 'string') {
|
187 |
+
$e.attr('data-original-title', $e.attr('title') || '').removeAttr('title')
|
188 |
+
}
|
189 |
+
}
|
190 |
+
|
191 |
+
, hasContent: function () {
|
192 |
+
return this.getTitle()
|
193 |
+
}
|
194 |
+
|
195 |
+
, getPosition: function (inside) {
|
196 |
+
return $.extend({}, (inside ? {top: 0, left: 0} : this.$element.offset()), {
|
197 |
+
width: this.$element[0].offsetWidth
|
198 |
+
, height: this.$element[0].offsetHeight
|
199 |
+
})
|
200 |
+
}
|
201 |
+
|
202 |
+
, getTitle: function () {
|
203 |
+
var title
|
204 |
+
, $e = this.$element
|
205 |
+
, o = this.options
|
206 |
+
|
207 |
+
title = $e.attr('data-original-title')
|
208 |
+
|| (typeof o.title == 'function' ? o.title.call($e[0]) : o.title)
|
209 |
+
|
210 |
+
title = (title || '').toString().replace(/(^\s*|\s*$)/, "")
|
211 |
+
|
212 |
+
return title
|
213 |
+
}
|
214 |
+
|
215 |
+
, tip: function () {
|
216 |
+
return this.$tip = this.$tip || $(this.options.template)
|
217 |
+
}
|
218 |
+
|
219 |
+
, validate: function () {
|
220 |
+
if (!this.$element[0].parentNode) {
|
221 |
+
this.hide()
|
222 |
+
this.$element = null
|
223 |
+
this.options = null
|
224 |
+
}
|
225 |
+
}
|
226 |
+
|
227 |
+
, enable: function () {
|
228 |
+
this.enabled = true
|
229 |
+
}
|
230 |
+
|
231 |
+
, disable: function () {
|
232 |
+
this.enabled = false
|
233 |
+
}
|
234 |
+
|
235 |
+
, toggleEnabled: function () {
|
236 |
+
this.enabled = !this.enabled
|
237 |
+
}
|
238 |
+
|
239 |
+
, toggle: function () {
|
240 |
+
this[this.tip().hasClass('in') ? 'hide' : 'show']()
|
241 |
+
}
|
242 |
+
|
243 |
+
}
|
244 |
+
|
245 |
+
|
246 |
+
/* TOOLTIP PLUGIN DEFINITION
|
247 |
+
* ========================= */
|
248 |
+
|
249 |
+
$.fn.tooltip = function ( option ) {
|
250 |
+
return this.each(function () {
|
251 |
+
var $this = $(this)
|
252 |
+
, data = $this.data('tooltip')
|
253 |
+
, options = typeof option == 'object' && option
|
254 |
+
if (!data) $this.data('tooltip', (data = new Tooltip(this, options)))
|
255 |
+
if (typeof option == 'string') data[option]()
|
256 |
+
})
|
257 |
+
}
|
258 |
+
|
259 |
+
$.fn.tooltip.Constructor = Tooltip
|
260 |
+
|
261 |
+
$.fn.tooltip.defaults = {
|
262 |
+
animation: true
|
263 |
+
, delay: 0
|
264 |
+
, selector: false
|
265 |
+
, placement: 'top'
|
266 |
+
, trigger: 'hover'
|
267 |
+
, title: ''
|
268 |
+
, template: '<div class="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>'
|
269 |
+
}
|
270 |
+
|
271 |
+
}( window.jQuery );
|
272 |
+
}
|
themes-ai1ec/vortex/js/build-js.sh
ADDED
@@ -0,0 +1,10 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
#!/bin/bash
|
2 |
+
|
3 |
+
if which -s uglifyjs; then
|
4 |
+
cat bootstrap-*.js general.js | uglifyjs -nc > general.min.js
|
5 |
+
uglifyjs -nc calendar.js > calendar.min.js
|
6 |
+
uglifyjs -nc event.js > event.min.js
|
7 |
+
else
|
8 |
+
echo 'Error: uglifyjs not found. Install Node.js then: npm install -g uglify-js';
|
9 |
+
exit 1;
|
10 |
+
fi
|
{js → themes-ai1ec/vortex/js}/calendar.js
RENAMED
@@ -1,627 +1,860 @@
|
|
1 |
-
|
2 |
-
|
3 |
-
|
4 |
-
|
5 |
-
c
|
6 |
-
|
7 |
-
|
8 |
-
|
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 |
-
|
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 |
-
|
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 |
-
|
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 |
-
|
164 |
-
|
165 |
-
|
166 |
-
|
167 |
-
|
168 |
-
|
169 |
-
|
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 |
-
|
231 |
-
|
232 |
-
|
233 |
-
|
234 |
-
|
235 |
-
|
236 |
-
|
237 |
-
|
238 |
-
|
239 |
-
|
240 |
-
|
241 |
-
|
242 |
-
|
243 |
-
|
244 |
-
|
245 |
-
|
246 |
-
|
247 |
-
|
248 |
-
|
249 |
-
|
250 |
-
|
251 |
-
|
252 |
-
|
253 |
-
|
254 |
-
|
255 |
-
|
256 |
-
|
257 |
-
|
258 |
-
|
259 |
-
|
260 |
-
|
261 |
-
|
262 |
-
|
263 |
-
|
264 |
-
|
265 |
-
|
266 |
-
|
267 |
-
|
268 |
-
|
269 |
-
|
270 |
-
|
271 |
-
|
272 |
-
|
273 |
-
|
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 |
-
|
306 |
-
|
307 |
-
|
308 |
-
|
309 |
-
|
310 |
-
|
311 |
-
|
312 |
-
|
313 |
-
|
314 |
-
|
315 |
-
|
316 |
-
|
317 |
-
|
318 |
-
|
319 |
-
|
320 |
-
|
321 |
-
|
322 |
-
|
323 |
-
|
324 |
-
|
325 |
-
|
326 |
-
|
327 |
-
|
328 |
-
|
329 |
-
|
330 |
-
|
331 |
-
|
332 |
-
|
333 |
-
|
334 |
-
|
335 |
-
|
336 |
-
|
337 |
-
|
338 |
-
|
339 |
-
|
340 |
-
|
341 |
-
|
342 |
-
|
343 |
-
|
344 |
-
$
|
345 |
-
.
|
346 |
-
|
347 |
-
|
348 |
-
|
349 |
-
|
350 |
-
|
351 |
-
|
352 |
-
|
353 |
-
|
354 |
-
|
355 |
-
|
356 |
-
|
357 |
-
|
358 |
-
|
359 |
-
|
360 |
-
|
361 |
-
|
362 |
-
|
363 |
-
|
364 |
-
|
365 |
-
|
366 |
-
|
367 |
-
|
368 |
-
|
369 |
-
|
370 |
-
|
371 |
-
|
372 |
-
|
373 |
-
|
374 |
-
|
375 |
-
|
376 |
-
|
377 |
-
|
378 |
-
|
379 |
-
|
380 |
-
|
381 |
-
|
382 |
-
|
383 |
-
|
384 |
-
|
385 |
-
|
386 |
-
.
|
387 |
-
|
388 |
-
|
389 |
-
|
390 |
-
}
|
391 |
-
);
|
392 |
-
|
393 |
-
|
394 |
-
|
395 |
-
|
396 |
-
|
397 |
-
|
398 |
-
|
399 |
-
|
400 |
-
|
401 |
-
|
402 |
-
|
403 |
-
|
404 |
-
|
405 |
-
$('.ai1ec-
|
406 |
-
|
407 |
-
|
408 |
-
|
409 |
-
|
410 |
-
|
411 |
-
|
412 |
-
|
413 |
-
|
414 |
-
|
415 |
-
|
416 |
-
|
417 |
-
|
418 |
-
|
419 |
-
|
420 |
-
|
421 |
-
|
422 |
-
|
423 |
-
|
424 |
-
|
425 |
-
|
426 |
-
|
427 |
-
|
428 |
-
|
429 |
-
|
430 |
-
|
431 |
-
|
432 |
-
|
433 |
-
|
434 |
-
|
435 |
-
|
436 |
-
|
437 |
-
|
438 |
-
|
439 |
-
|
440 |
-
|
441 |
-
|
442 |
-
|
443 |
-
|
444 |
-
|
445 |
-
|
446 |
-
|
447 |
-
|
448 |
-
|
449 |
-
|
450 |
-
|
451 |
-
|
452 |
-
|
453 |
-
|
454 |
-
|
455 |
-
|
456 |
-
|
457 |
-
|
458 |
-
|
459 |
-
|
460 |
-
|
461 |
-
|
462 |
-
|
463 |
-
|
464 |
-
|
465 |
-
|
466 |
-
|
467 |
-
|
468 |
-
|
469 |
-
|
470 |
-
|
471 |
-
|
472 |
-
|
473 |
-
|
474 |
-
|
475 |
-
|
476 |
-
|
477 |
-
|
478 |
-
|
479 |
-
|
480 |
-
|
481 |
-
|
482 |
-
|
483 |
-
|
484 |
-
|
485 |
-
|
486 |
-
|
487 |
-
|
488 |
-
|
489 |
-
|
490 |
-
|
491 |
-
|
492 |
-
|
493 |
-
|
494 |
-
|
495 |
-
|
496 |
-
|
497 |
-
|
498 |
-
|
499 |
-
|
500 |
-
|
501 |
-
$
|
502 |
-
|
503 |
-
|
504 |
-
|
505 |
-
|
506 |
-
|
507 |
-
|
508 |
-
|
509 |
-
|
510 |
-
|
511 |
-
|
512 |
-
|
513 |
-
|
514 |
-
|
515 |
-
|
516 |
-
|
517 |
-
|
518 |
-
|
519 |
-
|
520 |
-
|
521 |
-
|
522 |
-
|
523 |
-
|
524 |
-
|
525 |
-
|
526 |
-
|
527 |
-
|
528 |
-
|
529 |
-
);
|
530 |
-
|
531 |
-
|
532 |
-
|
533 |
-
|
534 |
-
|
535 |
-
|
536 |
-
|
537 |
-
|
538 |
-
|
539 |
-
|
540 |
-
|
541 |
-
|
542 |
-
|
543 |
-
|
544 |
-
|
545 |
-
|
546 |
-
|
547 |
-
|
548 |
-
|
549 |
-
|
550 |
-
|
551 |
-
|
552 |
-
|
553 |
-
|
554 |
-
|
555 |
-
|
556 |
-
|
557 |
-
|
558 |
-
|
559 |
-
|
560 |
-
|
561 |
-
|
562 |
-
|
563 |
-
|
564 |
-
|
565 |
-
|
566 |
-
|
567 |
-
|
568 |
-
|
569 |
-
{
|
570 |
-
|
571 |
-
|
572 |
-
|
573 |
-
|
574 |
-
|
575 |
-
|
576 |
-
|
577 |
-
|
578 |
-
|
579 |
-
|
580 |
-
|
581 |
-
|
582 |
-
//
|
583 |
-
|
584 |
-
|
585 |
-
|
586 |
-
|
587 |
-
|
588 |
-
|
589 |
-
.
|
590 |
-
|
591 |
-
.
|
592 |
-
|
593 |
-
|
594 |
-
|
595 |
-
|
596 |
-
|
597 |
-
|
598 |
-
|
599 |
-
|
600 |
-
|
601 |
-
|
602 |
-
|
603 |
-
|
604 |
-
|
605 |
-
|
606 |
-
|
607 |
-
|
608 |
-
|
609 |
-
|
610 |
-
|
611 |
-
|
612 |
-
|
613 |
-
|
614 |
-
|
615 |
-
|
616 |
-
|
617 |
-
|
618 |
-
|
619 |
-
|
620 |
-
|
621 |
-
|
622 |
-
|
623 |
-
|
624 |
-
|
625 |
-
|
626 |
-
|
627 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/**
|
2 |
+
* Used to ensure that entities used in L10N strings are correct.
|
3 |
+
*/
|
4 |
+
function ai1ec_convert_entities( o ) {
|
5 |
+
var c, v;
|
6 |
+
|
7 |
+
c = function( s ) {
|
8 |
+
if( /&[^;]+;/.test( s ) ) {
|
9 |
+
var e = document.createElement( 'div' );
|
10 |
+
e.innerHTML = s;
|
11 |
+
return ! e.firstChild ? s : e.firstChild.nodeValue;
|
12 |
+
}
|
13 |
+
return s;
|
14 |
+
}
|
15 |
+
|
16 |
+
if( typeof o === 'string' ) {
|
17 |
+
return c( o );
|
18 |
+
} else if( typeof o === 'object' ) {
|
19 |
+
for( v in o ) {
|
20 |
+
if( typeof o[v] === 'string' ) {
|
21 |
+
o[v] = c( o[v] );
|
22 |
+
}
|
23 |
+
}
|
24 |
+
}
|
25 |
+
return o;
|
26 |
+
}
|
27 |
+
|
28 |
+
/**
|
29 |
+
* Get the URL withouth the hash portion.
|
30 |
+
*/
|
31 |
+
function get_hashless_url() {
|
32 |
+
// Get the full url.
|
33 |
+
var url = window.location.href;
|
34 |
+
// Get the hash.
|
35 |
+
var hash = window.location.hash;
|
36 |
+
// If the hash is present, use that, otherwise use the full length
|
37 |
+
var index_of_hash = url.indexOf( hash ) || url.length;
|
38 |
+
// Cut off the hash.
|
39 |
+
var hashless_url = url.substr( 0, index_of_hash );
|
40 |
+
return hashless_url;
|
41 |
+
}
|
42 |
+
|
43 |
+
jQuery( document ).ready( function( $ ) {
|
44 |
+
|
45 |
+
// =====================================
|
46 |
+
// = Calendar CSS selector replacement =
|
47 |
+
// =====================================
|
48 |
+
|
49 |
+
if( ai1ec_calendar.selector != undefined && ai1ec_calendar.selector != '' &&
|
50 |
+
$( ai1ec_calendar.selector ).length == 1 )
|
51 |
+
{
|
52 |
+
// Try to find an <h#> element containing the title
|
53 |
+
var $title = $( ":header:contains(" + ai1ec_calendar.title + "):first" );
|
54 |
+
// If none found, create one
|
55 |
+
if( ! $title.length ) {
|
56 |
+
$title = $( '<h1 class="page-title"></h1>' );
|
57 |
+
$title.text( ai1ec_calendar.title ); // Do it this way to automatically generate HTML entities
|
58 |
+
}
|
59 |
+
|
60 |
+
var $calendar = $( '#ai1ec-container' )
|
61 |
+
.detach()
|
62 |
+
.before( $title );
|
63 |
+
|
64 |
+
$( ai1ec_calendar.selector )
|
65 |
+
.empty()
|
66 |
+
.append( $calendar )
|
67 |
+
.hide()
|
68 |
+
.css( 'visibility', 'visible' )
|
69 |
+
.fadeIn( 'fast' );
|
70 |
+
}
|
71 |
+
|
72 |
+
// =================================
|
73 |
+
// = General script initialization =
|
74 |
+
// =================================
|
75 |
+
|
76 |
+
// Variable storing currently displayed view
|
77 |
+
var current_hash = '';
|
78 |
+
// An array caching the IDs of all event posts in the currently active view
|
79 |
+
var post_ids;
|
80 |
+
|
81 |
+
// Check whether appropriate classes have been added to <body> (some themes
|
82 |
+
// don't respect the WP body_class() function). If not, add them, or our app
|
83 |
+
// won't function properly.
|
84 |
+
var classes = $('body').attr( 'class' );
|
85 |
+
if( classes == undefined ) classes = '';
|
86 |
+
if( classes.match( /\s?\bai1ec-[\w-]+\b/ ) == null ) {
|
87 |
+
// Add action body class(es)
|
88 |
+
classes += ' ' + ai1ec_calendar.body_class;
|
89 |
+
$('body').attr( 'class', classes );
|
90 |
+
}
|
91 |
+
|
92 |
+
/**
|
93 |
+
* Function used to update view if user has clicked back/forward in the
|
94 |
+
* browser.
|
95 |
+
*/
|
96 |
+
function check_hash() {
|
97 |
+
var live_hash = document.location.hash;
|
98 |
+
var default_hash = ai1ec_convert_entities( ai1ec_calendar.default_hash );
|
99 |
+
// If current_hash doesn't match live hash, and the document's live hash
|
100 |
+
// isn't empty, or if it is, the current_hash isn't equivalent to empty
|
101 |
+
// (i.e., default hash), the page needs to be updated.
|
102 |
+
if( current_hash != live_hash &&
|
103 |
+
( live_hash != '' || current_hash != default_hash ) ) {
|
104 |
+
// If hash is empty, resort to original requested action
|
105 |
+
var hash = live_hash;
|
106 |
+
if( ! hash )
|
107 |
+
hash = default_hash;
|
108 |
+
load_view( hash );
|
109 |
+
}
|
110 |
+
}
|
111 |
+
|
112 |
+
// Monitor browser navigation between different URL #hash values
|
113 |
+
setInterval( check_hash, 300 );
|
114 |
+
|
115 |
+
/**
|
116 |
+
* Load a calendar view represented by the given hash value.
|
117 |
+
*/
|
118 |
+
function load_view( hash ) {
|
119 |
+
|
120 |
+
// Reveal loader behind view
|
121 |
+
$('#ai1ec-calendar-view-loading').fadeIn( 'fast' );
|
122 |
+
$('#ai1ec-calendar-view').fadeTo( 'fast', 0.3,
|
123 |
+
// After loader is visible, fetch new content
|
124 |
+
function() {
|
125 |
+
var query = hash.substring( 1 );
|
126 |
+
|
127 |
+
// Fetch AJAX result
|
128 |
+
$.post( ai1ec_calendar.ajaxurl, query, function( data )
|
129 |
+
{
|
130 |
+
// Replace action body class with new one
|
131 |
+
var classes = $('body').attr( 'class' );
|
132 |
+
classes = classes.replace( /\s?\bai1ec-[\w-]+\b/g, '' );
|
133 |
+
classes += ' ' + data.body_class;
|
134 |
+
$('body').attr( 'class', classes );
|
135 |
+
|
136 |
+
// Animate vertical height of container between HTML replacement
|
137 |
+
var $container = $('#ai1ec-calendar-view-container');
|
138 |
+
$container.height( $container.height() );
|
139 |
+
var new_height =
|
140 |
+
$('#ai1ec-calendar-view')
|
141 |
+
.html( data.html )
|
142 |
+
.height();
|
143 |
+
$container.animate( { height: new_height }, { complete: function() {
|
144 |
+
// Restore height to automatic upon animation completion for
|
145 |
+
// proper page layout.
|
146 |
+
$container.height( 'auto' );
|
147 |
+
} } );
|
148 |
+
|
149 |
+
// Hide loader
|
150 |
+
$('#ai1ec-calendar-view-loading').fadeOut( 'fast' );
|
151 |
+
$('#ai1ec-calendar-view').fadeTo( 'fast', 1.0 );
|
152 |
+
|
153 |
+
// Do any general view initialization after loading
|
154 |
+
initialize_view();
|
155 |
+
},
|
156 |
+
'json'
|
157 |
+
);
|
158 |
+
} );
|
159 |
+
|
160 |
+
// Update stored hash
|
161 |
+
current_hash = hash;
|
162 |
+
}
|
163 |
+
|
164 |
+
/**
|
165 |
+
* Show print button in Agenda view, hide otherwise. This is called at the end
|
166 |
+
* of initialize_view();
|
167 |
+
*/
|
168 |
+
function toggle_print_button() {
|
169 |
+
$('#ai1ec-print-button').toggle( $( '.ai1ec-agenda-view' ).length != 0 );
|
170 |
+
}
|
171 |
+
|
172 |
+
// Register navigation click handlers
|
173 |
+
$('a.ai1ec-load-view').live( 'click', function() {
|
174 |
+
// Load requested view
|
175 |
+
load_view( $(this).attr( 'href' ) );
|
176 |
+
} );
|
177 |
+
// Handle the click on the print.
|
178 |
+
$('#ai1ec-print-button').click( function( e ) {
|
179 |
+
e.preventDefault();
|
180 |
+
// Get the url withouth the hash.
|
181 |
+
var hashless_url = get_hashless_url();
|
182 |
+
// Add the extra parameter in the url, this will trigger the loading of the print CSS.
|
183 |
+
var url = hashless_url + "&print=true" + window.location.hash;
|
184 |
+
// Open a new page.
|
185 |
+
window.open( url, 'Print page' );
|
186 |
+
|
187 |
+
} )
|
188 |
+
|
189 |
+
// *** Month/week views ***
|
190 |
+
|
191 |
+
var popup_zIndex = 999;
|
192 |
+
|
193 |
+
/**
|
194 |
+
* Callback for mouseenter event on .ai1ec-event element
|
195 |
+
*/
|
196 |
+
function show_popup() {
|
197 |
+
var $popup = $(this).prev();
|
198 |
+
$popup.removeClass( 'ai1ec-event-popup-allround' );
|
199 |
+
|
200 |
+
if ( $( this.parentNode ).is( '.ai1ec-multiday' ) ) {
|
201 |
+
var className = '.' + this.parentNode.className.replace( ' ai1ec-multiday-bar', '' ).replace( /\s+/igm, '.' );
|
202 |
+
var bars = $( className );
|
203 |
+
|
204 |
+
bars.each( function( i ) {
|
205 |
+
var $p = $( '.ai1ec-event-popup', bars[i] );
|
206 |
+
if ( $popup[0] != $p[0] ) {
|
207 |
+
$p.addClass( "ai1ec-event-popup-allround" )
|
208 |
+
.css( 'visibility', 'visible' )
|
209 |
+
.fadeIn( 100);
|
210 |
+
}
|
211 |
+
});
|
212 |
+
}
|
213 |
+
|
214 |
+
// If not already done, position popup so that it does not exceed
|
215 |
+
// right/left bounds of container.
|
216 |
+
if( ! $popup.data( 'ai1ec_offset' ) ) {
|
217 |
+
// Keep popup hidden but positionable
|
218 |
+
$popup.css( 'visibility', 'hidden' ).show();
|
219 |
+
|
220 |
+
var $container = $('#ai1ec-calendar-view-container');
|
221 |
+
var popup_width = $popup.width();
|
222 |
+
var popup_offset = $popup.offset();
|
223 |
+
var container_offset = $container.offset();
|
224 |
+
var container_x2 = container_offset.left + $container.width();
|
225 |
+
var $summary = $( '.ai1ec-event-summary', $popup );
|
226 |
+
|
227 |
+
// Respect right-side bounds
|
228 |
+
if( popup_offset.left + popup_width > container_x2 )
|
229 |
+
$popup.offset( { left: container_x2 - popup_width, top: popup_offset.top } );
|
230 |
+
|
231 |
+
// Respect left-side bounds
|
232 |
+
if( $summary.offset().left < container_offset.left )
|
233 |
+
$popup.addClass( 'ai1ec-shifted-right' );
|
234 |
+
|
235 |
+
/* From Alex - find out if we still need this:
|
236 |
+
if ( $( this.parentNode ).hasClass("ai1ec-multiday") &&
|
237 |
+
$summary.offset().left + $summary.width() > container_x2) {
|
238 |
+
$popup.removeClass( 'ai1ec-shifted-right' );
|
239 |
+
}
|
240 |
+
*/
|
241 |
+
|
242 |
+
// Restore popup to 'display: none'.
|
243 |
+
$popup.hide().css( 'visibility', 'visible' );
|
244 |
+
// Flag the object so we don't calculate twice.
|
245 |
+
$popup.data( 'ai1ec_offset', true );
|
246 |
+
}
|
247 |
+
|
248 |
+
// Display popup.
|
249 |
+
$popup
|
250 |
+
.css({ 'z-index': ++popup_zIndex })
|
251 |
+
.fadeIn( 100,
|
252 |
+
// Don't handle special case in touch environment (unneeded, interferes)
|
253 |
+
Modernizr.touch
|
254 |
+
? null
|
255 |
+
: function() {
|
256 |
+
// Special case - check if the mouse cursor is still in the pop-up.
|
257 |
+
if( ! $(this).data( 'ai1ec_mouseinside' ) ) {
|
258 |
+
$(this).each( hide_popup );
|
259 |
+
}
|
260 |
+
}
|
261 |
+
);
|
262 |
+
|
263 |
+
// If in touch environment, hide any previously popped up events (required
|
264 |
+
// since we don't use mouseleave event for this in touch environments) and
|
265 |
+
// then return false from "click" handler to prevent following of link.
|
266 |
+
if( Modernizr.touch ) {
|
267 |
+
$('.ai1ec-month-view .ai1ec-event-popup, .ai1ec-week-view .ai1ec-event-popup')
|
268 |
+
.not( $popup )
|
269 |
+
.fadeOut( 100, function() { $(this).parent().css( { zIndex: 'auto' } ); } );
|
270 |
+
return false;
|
271 |
+
}
|
272 |
+
}
|
273 |
+
function hide_popup() {
|
274 |
+
var className = '.' + this.parentNode.className.replace( ' ai1ec-multiday-bar', '' ).replace( /\s+/igm, '.' );
|
275 |
+
var bars = $( className + ' .ai1ec-event-popup' );
|
276 |
+
$(bars)
|
277 |
+
.fadeOut( 100, function() { $(this).parent().css( { zIndex: 'auto' } ); } )
|
278 |
+
.data( 'ai1ec_mouseinside', false );
|
279 |
+
}
|
280 |
+
|
281 |
+
// Register popup click (for touch devices) or hover (for non-touch devices)
|
282 |
+
// handlers for month/week views
|
283 |
+
$('.ai1ec-month-view .ai1ec-event, .ai1ec-oneday-view .ai1ec-event, .ai1ec-week-view .ai1ec-event')
|
284 |
+
.live( Modernizr.touch ? 'click' : 'mouseenter', show_popup );
|
285 |
+
// Only hide popups on mouseleave for mouse-based devices (doesn't work
|
286 |
+
// properly in touch-based devices for some reason).
|
287 |
+
if( ! Modernizr.touch ) {
|
288 |
+
$('.ai1ec-month-view .ai1ec-event-popup, .ai1ec-oneday-view .ai1ec-event-popup, .ai1ec-week-view .ai1ec-event-popup')
|
289 |
+
.live( 'mouseleave', hide_popup )
|
290 |
+
.live( 'mousemove', function() {
|
291 |
+
// Track whether popup contains mouse cursor
|
292 |
+
$(this).data( 'ai1ec_mouseinside', true );
|
293 |
+
} );
|
294 |
+
}
|
295 |
+
// Hide any popups that were visible when the window lost focus
|
296 |
+
if( $('.ai1ec-month-view, .ai1ec-oneday-view, .ai1ec-week-view').length ) {
|
297 |
+
$(window).blur( function() {
|
298 |
+
$('.ai1ec-event-popup:visible').each( hide_popup );
|
299 |
+
} );
|
300 |
+
}
|
301 |
+
|
302 |
+
// ======================================
|
303 |
+
// = Week / Day view hover-raise effect =
|
304 |
+
// ======================================
|
305 |
+
$( '.ai1ec-oneday-view .ai1ec-oneday a.ai1ec-event-container, .ai1ec-week-view .ai1ec-week a.ai1ec-event-container' )
|
306 |
+
.live( 'mouseenter',
|
307 |
+
function() {
|
308 |
+
$(this).delay( 500 ).queue( function() { $(this).css( 'z-index', 5 ) } );
|
309 |
+
} )
|
310 |
+
.live( 'mouseleave',
|
311 |
+
function() {
|
312 |
+
$(this).clearQueue().css( 'z-index', 'auto' );
|
313 |
+
} );
|
314 |
+
|
315 |
+
/**
|
316 |
+
* Trims date boxes for which there are too many listed events.
|
317 |
+
*/
|
318 |
+
function truncate_month_view()
|
319 |
+
{
|
320 |
+
if( $( '.ai1ec-month-view' ).length )
|
321 |
+
{
|
322 |
+
// First undo any previous truncation
|
323 |
+
revert_dropdowns();
|
324 |
+
|
325 |
+
// Now set up truncation on any days with max visible events.
|
326 |
+
$( '.ai1ec-month-view .ai1ec-day' ).each( function()
|
327 |
+
{
|
328 |
+
var max_visible = 5;
|
329 |
+
var maxVisibleHeight = 5 * 16;
|
330 |
+
var addDropdownContainer = -1;
|
331 |
+
var $events = $( '.ai1ec-event-container:visible', this );
|
332 |
+
|
333 |
+
$events.each( function( i ) {
|
334 |
+
if ( this.offsetTop >= maxVisibleHeight && addDropdownContainer == -1 ) {
|
335 |
+
addDropdownContainer = ( i > 1 ? i - 1 : 0 );
|
336 |
+
}
|
337 |
+
|
338 |
+
});
|
339 |
+
|
340 |
+
if ( addDropdownContainer != -1 ) {
|
341 |
+
var container = document.createElement("div");
|
342 |
+
container.className = "ai1ec-event-dropdown";
|
343 |
+
|
344 |
+
$( container ).css({
|
345 |
+
top: $events[addDropdownContainer].offsetTop,
|
346 |
+
display: "none"
|
347 |
+
});
|
348 |
+
for ( var i = addDropdownContainer; i < $events.length; i++ ) {
|
349 |
+
// Need to reset styles for events in dropdown.
|
350 |
+
revert_multiday_bar( $events[i] )
|
351 |
+
|
352 |
+
// Add an arrow for multiday events.
|
353 |
+
if ( $( $events[i] ).hasClass( "ai1ec-multiday" ) ) {
|
354 |
+
$( $events[i] ).append( create_multiday_arrow( 1, $events[i].style.backgroundColor ) );
|
355 |
+
}
|
356 |
+
$( container ).append( $events[i] );
|
357 |
+
}
|
358 |
+
|
359 |
+
// Scroll down button, and register mousedown.
|
360 |
+
$scroll_down = $( '<a href="#" class="ai1ec-scroll-down"></a>' );
|
361 |
+
$scroll_down.bind( 'hover click', function () {
|
362 |
+
$( container ).fadeIn( 100 );
|
363 |
+
return false;
|
364 |
+
});
|
365 |
+
|
366 |
+
var $date = $( this ).find( ".ai1ec-date" );
|
367 |
+
if ( parseInt( $date.css( "marginBottom" ) ) > maxVisibleHeight ) {
|
368 |
+
$date.css({ marginBottom: maxVisibleHeight - 15 + "px" });
|
369 |
+
$( container ).css({
|
370 |
+
top: maxVisibleHeight + "px"
|
371 |
+
})
|
372 |
+
}
|
373 |
+
$( this ).append(container);
|
374 |
+
$( this ).append($scroll_down);
|
375 |
+
|
376 |
+
// Need additional button to close dropdown on touch devices
|
377 |
+
if ( Modernizr.touch ) {
|
378 |
+
// Scroll down button, and register mousedown
|
379 |
+
$scroll_up = $( '<a href="#" class="ai1ec-scroll-up"></a>' );
|
380 |
+
$scroll_up.bind("click", function () {
|
381 |
+
$( container ).fadeOut( 100 );
|
382 |
+
return false;
|
383 |
+
})
|
384 |
+
$( container ).append($scroll_up);
|
385 |
+
} else {
|
386 |
+
$( container ).bind( 'mouseleave' ,function() {
|
387 |
+
$( this ).fadeOut( 100 );
|
388 |
+
})
|
389 |
+
}
|
390 |
+
}
|
391 |
+
});
|
392 |
+
}
|
393 |
+
}
|
394 |
+
|
395 |
+
// *** Month view ***
|
396 |
+
|
397 |
+
/**
|
398 |
+
* Extends day bars for multiday intervals
|
399 |
+
*/
|
400 |
+
function extend_multiday_events() {
|
401 |
+
|
402 |
+
// First undo any previous multiday bars
|
403 |
+
revert_multiday_events();
|
404 |
+
|
405 |
+
var $days = $('.ai1ec-day');
|
406 |
+
$('.ai1ec-month-view .ai1ec-multiday:visible').each(function() {
|
407 |
+
var container = this.parentNode;
|
408 |
+
|
409 |
+
var elHeight = $(this).outerHeight( true );
|
410 |
+
var elWidth = $(container).width() + 1;
|
411 |
+
|
412 |
+
var $elTitle = $(".ai1ec-event-title", this).first();
|
413 |
+
|
414 |
+
var endDate = this.getAttribute("end-date");
|
415 |
+
var endDay = endDate.split(/ /)[2];
|
416 |
+
var endMonthYear = endDate.substr(0, endDate.lastIndexOf(" "));
|
417 |
+
|
418 |
+
var $startEl = $(".ai1ec-date", container);
|
419 |
+
var startDay = $startEl.html();
|
420 |
+
|
421 |
+
var nextMonthBar = false;
|
422 |
+
if (endMonthYear != $(".ai1ec-calendar-title").html()) {
|
423 |
+
endDay = $(".ai1ec-date", $days[$days.length-1]).html();
|
424 |
+
nextMonthBar = true;
|
425 |
+
}
|
426 |
+
|
427 |
+
var $evtContainer = $(this);
|
428 |
+
var bgColor = $( '.ai1ec-event', $evtContainer )[0].style.backgroundColor;
|
429 |
+
var curLine = 0;
|
430 |
+
var deltaDays = endDay - startDay + 1;
|
431 |
+
var daysLeft = deltaDays;
|
432 |
+
var lineWidth = 0;
|
433 |
+
|
434 |
+
$(this).css("width", 0);
|
435 |
+
|
436 |
+
$days.each( function(i) {
|
437 |
+
var $dayEl = $( ".ai1ec-date", this );
|
438 |
+
var $td = $( this.parentNode );
|
439 |
+
cellNum = $td.index();
|
440 |
+
|
441 |
+
if ( parseInt( $dayEl.html() ) >= startDay &&
|
442 |
+
parseInt( $dayEl.html() ) <= endDay ) {
|
443 |
+
|
444 |
+
if ( parseInt( $dayEl.html() ) == startDay ) {
|
445 |
+
marginSize = parseInt( $dayEl.css("marginBottom") ) + 16;
|
446 |
+
}
|
447 |
+
if ( cellNum != 0 ) {
|
448 |
+
lineWidth = $td.offset().left + $td.width() - $(container).offset().left;
|
449 |
+
} else {
|
450 |
+
if ( parseInt( $dayEl.html() ) > startDay && daysLeft != 0 ) {
|
451 |
+
var $block = $evtContainer.clone(false);
|
452 |
+
$dayEl.parent().append($block);
|
453 |
+
|
454 |
+
$block.addClass("ai1ec-multiday-bar");
|
455 |
+
|
456 |
+
$block
|
457 |
+
.css({
|
458 |
+
position: "absolute",
|
459 |
+
left: '1px',
|
460 |
+
top: parseInt($dayEl.css("marginBottom")) + 13, // line height is 16px - 3px of initial margin
|
461 |
+
backgroundColor: bgColor
|
462 |
+
});
|
463 |
+
|
464 |
+
var j = ( daysLeft > 7 ? i + 7 - 1 : i + daysLeft - 1 );
|
465 |
+
var w = ( $( $days[j] ).offset().left + $( $days[j] ).width() - $($days[j].parentNode.parentNode).offset().left);
|
466 |
+
|
467 |
+
$block.css( "width", w - 1 );
|
468 |
+
|
469 |
+
if ( daysLeft > 1 ) {
|
470 |
+
$block.append( create_multiday_arrow( 1, bgColor ));
|
471 |
+
}
|
472 |
+
|
473 |
+
$block.append( create_multiday_arrow( 2, bgColor ));
|
474 |
+
curLine++;
|
475 |
+
}
|
476 |
+
}
|
477 |
+
|
478 |
+
// Keep constant margin (number of bars) during the first row.
|
479 |
+
if ( curLine == 0 ) {
|
480 |
+
$dayEl.css({ "marginBottom": marginSize + "px" });
|
481 |
+
// But need to reset it and append margins from the begining for
|
482 |
+
// subsequent weeks.
|
483 |
+
} else {
|
484 |
+
$dayEl.css({ "marginBottom": "+=16px" });
|
485 |
+
}
|
486 |
+
// Adding "start arrow" to the end of multi-month bars.
|
487 |
+
if ( nextMonthBar ) {
|
488 |
+
$evtContainer.append( create_multiday_arrow( 1, bgColor ));
|
489 |
+
}
|
490 |
+
daysLeft--;
|
491 |
+
}
|
492 |
+
});
|
493 |
+
$(this).css({
|
494 |
+
position: "absolute",
|
495 |
+
top: $startEl.outerHeight( true ) - elHeight - 1 + "px",
|
496 |
+
left: '1px',
|
497 |
+
width: lineWidth + "px"
|
498 |
+
});
|
499 |
+
// Add an arrow to the initial bar for multi-week events.
|
500 |
+
if ( curLine > 0 ) {
|
501 |
+
$(this).append( create_multiday_arrow( 1, bgColor ) );
|
502 |
+
}
|
503 |
+
})
|
504 |
+
}
|
505 |
+
|
506 |
+
/**
|
507 |
+
* Creates arrow for multiday bars.
|
508 |
+
*/
|
509 |
+
function create_multiday_arrow( type, color ) {
|
510 |
+
var $arrow = $( '<div class="ai1ec-multiday-arrow' + type + '"></div>' );
|
511 |
+
if ( type == 1 ) {
|
512 |
+
$arrow.css({ borderLeftColor: color });
|
513 |
+
} else {
|
514 |
+
$arrow.css({ borderTopColor: color, borderRightColor: color, borderBottomColor: color });
|
515 |
+
}
|
516 |
+
return $arrow;
|
517 |
+
}
|
518 |
+
|
519 |
+
|
520 |
+
/**
|
521 |
+
* Reverts styling added for multiday bars. Needed to apply filters.
|
522 |
+
*/
|
523 |
+
function revert_multiday_events() {
|
524 |
+
$(".ai1ec-month-view .ai1ec-date").each(function() {
|
525 |
+
$(this).css({ marginBottom: "1px" });
|
526 |
+
});
|
527 |
+
|
528 |
+
$('.ai1ec-month-view .ai1ec-multiday-bar').remove();
|
529 |
+
$('.ai1ec-month-view .ai1ec-multiday-arrow1').remove();
|
530 |
+
$('.ai1ec-month-view .ai1ec-multiday-arrow2').remove();
|
531 |
+
|
532 |
+
$('.ai1ec-month-view .ai1ec-multiday').each( function () {
|
533 |
+
revert_multiday_bar(this);
|
534 |
+
});
|
535 |
+
}
|
536 |
+
|
537 |
+
function revert_multiday_bar(bar) {
|
538 |
+
$( bar ).css({
|
539 |
+
position: "relative",
|
540 |
+
left: "auto",
|
541 |
+
top: "auto",
|
542 |
+
width: "auto"
|
543 |
+
})
|
544 |
+
var weekBarsClassName = "."+bar.className.replace(/\s+/igm, ".") + ".ai1ec-multiday-bar"
|
545 |
+
$(weekBarsClassName).remove();
|
546 |
+
|
547 |
+
$( '.ai1ec-multiday-arrow1, ai1ec-multiday-arrow2', bar ).remove();
|
548 |
+
}
|
549 |
+
|
550 |
+
/**
|
551 |
+
* Reverts dropdowns added to day cells. Needed to apply filters.
|
552 |
+
*/
|
553 |
+
function revert_dropdowns() {
|
554 |
+
$(".ai1ec-month-view .ai1ec-event-dropdown").each( function() {
|
555 |
+
var container = this.parentNode;
|
556 |
+
$(this).find(".ai1ec-event-container").each( function () {
|
557 |
+
container.appendChild(this);
|
558 |
+
})
|
559 |
+
});
|
560 |
+
$(".ai1ec-month-view .ai1ec-event-dropdown").remove();
|
561 |
+
$(".ai1ec-month-view .ai1ec-scroll-down").remove();
|
562 |
+
}
|
563 |
+
|
564 |
+
// *** Agenda view ***
|
565 |
+
|
566 |
+
/**
|
567 |
+
* Callbacks for event expansion, collapse.
|
568 |
+
*/
|
569 |
+
function expand_event() {
|
570 |
+
$( this ) // ...-click block
|
571 |
+
.hide()
|
572 |
+
.parent() // event block
|
573 |
+
.addClass( 'ai1ec-expanded' )
|
574 |
+
.end()
|
575 |
+
.prev() // summary block
|
576 |
+
.show()
|
577 |
+
.find( '.ai1ec-event-description' ) // description block
|
578 |
+
.hide()
|
579 |
+
.slideDown( 'fast' );
|
580 |
+
}
|
581 |
+
function collapse_event() {
|
582 |
+
$(this) // inner ...-click block
|
583 |
+
.next() // description block
|
584 |
+
.slideUp( 'fast', function() {
|
585 |
+
$(this).parent() // summary block
|
586 |
+
.parent() // event block
|
587 |
+
.removeClass( 'ai1ec-expanded' )
|
588 |
+
.end()
|
589 |
+
.hide() // summary block again
|
590 |
+
.next() // original ...-click block
|
591 |
+
.show();
|
592 |
+
}
|
593 |
+
);
|
594 |
+
}
|
595 |
+
|
596 |
+
// Register click handlers for event title
|
597 |
+
$('.ai1ec-agenda-view .ai1ec-event > .ai1ec-event-click')
|
598 |
+
.live( 'click', expand_event );
|
599 |
+
$('.ai1ec-agenda-view .ai1ec-event-summary > .ai1ec-event-click')
|
600 |
+
.live( 'click', collapse_event );
|
601 |
+
|
602 |
+
// Register click handlers for expand/collapse all buttons
|
603 |
+
$('.ai1ec-action-agenda #ai1ec-expand-all').live( 'click', function() {
|
604 |
+
$('.ai1ec-event > .ai1ec-event-click:visible').click();
|
605 |
+
} );
|
606 |
+
$('.ai1ec-action-agenda #ai1ec-collapse-all').live( 'click', function() {
|
607 |
+
$('.ai1ec-event-summary > .ai1ec-event-click:visible').click();
|
608 |
+
} );
|
609 |
+
|
610 |
+
// *** All views ***
|
611 |
+
|
612 |
+
// ========================
|
613 |
+
// = Category/tag filters =
|
614 |
+
// ========================
|
615 |
+
|
616 |
+
element_selector(
|
617 |
+
'.ai1ec-category-filter-selector li',
|
618 |
+
'ai1ec-selected',
|
619 |
+
'ai1ec-categories',
|
620 |
+
'#ai1ec-selected-categories' );
|
621 |
+
element_selector(
|
622 |
+
'.ai1ec-tag-filter-selector li',
|
623 |
+
'ai1ec-selected',
|
624 |
+
'ai1ec-tags',
|
625 |
+
'#ai1ec-selected-tags' );
|
626 |
+
|
627 |
+
// ==================================
|
628 |
+
// = Category/tag filtering actions =
|
629 |
+
// ==================================
|
630 |
+
|
631 |
+
/**
|
632 |
+
* Checks if the date element in Agenda view contains visible events
|
633 |
+
*/
|
634 |
+
function has_visible_events( $el ) {
|
635 |
+
var ret = false;
|
636 |
+
$el.find( 'ol.ai1ec-date-events li.ai1ec-event' ).each( function() {
|
637 |
+
if( $( this ).css( 'display' ) != 'none' ) ret = true;
|
638 |
+
});
|
639 |
+
return ret;
|
640 |
+
}
|
641 |
+
|
642 |
+
/**
|
643 |
+
* Applies the active category/tag filters to the current view.
|
644 |
+
* (Shows/hides events as necessary.)
|
645 |
+
*/
|
646 |
+
function apply_filters() {
|
647 |
+
// Submit the selected term IDs via AJAX and filter the visible list of
|
648 |
+
// post IDs. Only include filter selectors that have a selection.
|
649 |
+
var selected_ids = new Array();
|
650 |
+
|
651 |
+
selected_cats =
|
652 |
+
$('.ai1ec-filters-container .ai1ec-dropdown.active + #ai1ec-selected-categories').val();
|
653 |
+
if( selected_cats ) {
|
654 |
+
selected_ids.push( selected_cats );
|
655 |
+
selected_cats = '&ai1ec_cat_ids=' + selected_cats;
|
656 |
+
} else {
|
657 |
+
selected_cats = '';
|
658 |
+
}
|
659 |
+
|
660 |
+
selected_tags =
|
661 |
+
$('.ai1ec-filters-container .ai1ec-dropdown.active + #ai1ec-selected-tags').val();
|
662 |
+
if( selected_tags ) {
|
663 |
+
selected_ids.push( selected_tags );
|
664 |
+
selected_tags = '&ai1ec_tag_ids=' + selected_tags;
|
665 |
+
} else {
|
666 |
+
selected_tags = '';
|
667 |
+
}
|
668 |
+
|
669 |
+
selected_ids = selected_ids.join();
|
670 |
+
|
671 |
+
// Modify export URL
|
672 |
+
var export_url = ai1ec_convert_entities( ai1ec_calendar.export_url );
|
673 |
+
if( selected_ids.length ) {
|
674 |
+
export_url += selected_cats + selected_tags;
|
675 |
+
$( '.ai1ec-subscribe-filtered' ).fadeIn( 'fast' );
|
676 |
+
} else {
|
677 |
+
$( '.ai1ec-subscribe-filtered' ).fadeOut( 'fast' );
|
678 |
+
}
|
679 |
+
$( '.ai1ec-subscribe' ).attr( 'href', export_url );
|
680 |
+
$( '.ai1ec-subscribe-google' ).attr( 'href',
|
681 |
+
'http://www.google.com/calendar/render?cid=' + escape( export_url.replace( 'webcal://', 'http://' ) ) );
|
682 |
+
|
683 |
+
var query = {
|
684 |
+
'action': 'ai1ec_term_filter',
|
685 |
+
'ai1ec_post_ids': post_ids,
|
686 |
+
'ai1ec_term_ids': selected_ids
|
687 |
+
};
|
688 |
+
|
689 |
+
// Delay loading animation so that it doesn't appear if the AJAX turnover
|
690 |
+
// is quick enough
|
691 |
+
var $loading = $('#ai1ec-calendar-view-loading')
|
692 |
+
.delay( 500 )
|
693 |
+
.fadeIn( 'fast' );
|
694 |
+
var $view = $('#ai1ec-calendar-view')
|
695 |
+
.delay( 500 )
|
696 |
+
.fadeTo( 'fast', 0.3 );
|
697 |
+
|
698 |
+
$.post( ai1ec_calendar.ajaxurl, query,
|
699 |
+
function( data ) {
|
700 |
+
// Cancel loading animation or fade out if faded in.
|
701 |
+
$loading.clearQueue().fadeOut( 'fast' );
|
702 |
+
$view.clearQueue().fadeTo( 'fast', 1.0 );
|
703 |
+
|
704 |
+
// Show events that should be displayed (or leave them visible).
|
705 |
+
var jq_selector = []; // Build our jQuery selector string.
|
706 |
+
$.each( data.matching_ids, function( i, val ) {
|
707 |
+
jq_selector.push( '#ai1ec-calendar-view .ai1ec-event-id-' + val );
|
708 |
+
} );
|
709 |
+
$( jq_selector.join() ).css( 'display', 'block' );
|
710 |
+
|
711 |
+
// Hide events that should be hidden (or leave them hidden).
|
712 |
+
jq_selector = []; // Build our jQuery selector string.
|
713 |
+
$.each( data.unmatching_ids, function( i, val ) {
|
714 |
+
jq_selector.push( '#ai1ec-calendar-view .ai1ec-event-id-' + val );
|
715 |
+
} );
|
716 |
+
$( jq_selector.join() ).css( 'display', 'none' );
|
717 |
+
|
718 |
+
// Agenda view only: Slide up dates for which there are no events, and
|
719 |
+
// slide down those for which there are
|
720 |
+
$( 'ol.ai1ec-agenda-view > li.ai1ec-date' ).each( function() {
|
721 |
+
if( has_visible_events( $(this) ) ) {
|
722 |
+
$( this ).slideDown( 'fast' );
|
723 |
+
}
|
724 |
+
else {
|
725 |
+
$( this ).slideUp( 'fast' );
|
726 |
+
}
|
727 |
+
} );
|
728 |
+
|
729 |
+
// If there are multiday events in this view, stretch them out.
|
730 |
+
if ( $('.ai1ec-month-view .ai1ec-multiday').length ) {
|
731 |
+
extend_multiday_events();
|
732 |
+
}
|
733 |
+
},
|
734 |
+
'json'
|
735 |
+
);
|
736 |
+
}
|
737 |
+
|
738 |
+
/**
|
739 |
+
* Updates the filter dropdowns and clear button based on whether filters
|
740 |
+
* are selected.
|
741 |
+
*/
|
742 |
+
function update_filter_selectors() {
|
743 |
+
// Highlight this dropdown as "selected" if and only if any of its terms
|
744 |
+
// have been selected.
|
745 |
+
$( '.ai1ec-filter-selector-container' ).each( function() {
|
746 |
+
if( $( 'li.ai1ec-selected', this ).length ) {
|
747 |
+
$( '.ai1ec-dropdown', this ).addClass( 'active btn-info' );
|
748 |
+
}
|
749 |
+
else {
|
750 |
+
$( '.ai1ec-dropdown', this ).removeClass( 'active btn-info' );
|
751 |
+
}
|
752 |
+
} );
|
753 |
+
|
754 |
+
if( $('.ai1ec-filters-container .ai1ec-selected').length ) {
|
755 |
+
$('.ai1ec-clear-filters').fadeIn( 'fast' );
|
756 |
+
}
|
757 |
+
else {
|
758 |
+
$('.ai1ec-clear-filters').fadeOut( 'fast' );
|
759 |
+
}
|
760 |
+
|
761 |
+
apply_filters();
|
762 |
+
}
|
763 |
+
|
764 |
+
$('.ai1ec-filter-selector li').click( update_filter_selectors );
|
765 |
+
|
766 |
+
$('.ai1ec-clear-filters').click( function() {
|
767 |
+
$('.ai1ec-filter-selector-container li').removeClass( 'ai1ec-selected' );
|
768 |
+
update_filter_selectors();
|
769 |
+
} );
|
770 |
+
|
771 |
+
/**
|
772 |
+
* function initialize_view
|
773 |
+
*
|
774 |
+
* General initialization function to execute whenever any view is loaded
|
775 |
+
* (this is also called at the end of load_view()).
|
776 |
+
*/
|
777 |
+
function initialize_view() {
|
778 |
+
// Make current view actively selected in view dropdown button.
|
779 |
+
var classes = $('body').attr( 'class' ).split( ' ' );
|
780 |
+
for ( i in classes ) {
|
781 |
+
// Extract current view from the body class.
|
782 |
+
var matches = /ai1ec-action-([\w]+)/.exec( classes[i] );
|
783 |
+
if ( matches != null ) break;
|
784 |
+
}
|
785 |
+
// Get the dropdown menu link of the active view.
|
786 |
+
var $selected_view = $( '#ai1ec-view-' + matches[1] );
|
787 |
+
// Replace contents of dropdown button with menu link, plus the caret.
|
788 |
+
$( '#ai1ec-current-view' )
|
789 |
+
.contents()
|
790 |
+
.remove()
|
791 |
+
.end()
|
792 |
+
.prepend( $selected_view.contents().clone() )
|
793 |
+
.append( '<span class="caret"></span>' );
|
794 |
+
// Deactivate all dropdown menu items.
|
795 |
+
$( '#ai1ec-view-dropdown .dropdown-menu li' ).removeClass( 'active' );
|
796 |
+
// Activate only currently selected dropdown menu item.
|
797 |
+
$selected_view.parent().addClass( 'active' );
|
798 |
+
|
799 |
+
// Cache the current list of post IDs
|
800 |
+
post_ids = new Array();
|
801 |
+
$( '.ai1ec-post-id' ).each( function() {
|
802 |
+
post_ids.push( this.value );
|
803 |
+
} );
|
804 |
+
post_ids = post_ids.join(); // Store IDs as comma-separated values
|
805 |
+
|
806 |
+
// Make week view table scrollable
|
807 |
+
$( 'table.ai1ec-week-view-original' ).tableScroll( { height: 400, containerClass: 'ai1ec-week-view' } );
|
808 |
+
$( 'table.ai1ec-oneday-view-original' ).tableScroll( { height: 400, containerClass: 'ai1ec-oneday-view' } );
|
809 |
+
|
810 |
+
// ===========================
|
811 |
+
// = Pop up the active event =
|
812 |
+
// ===========================
|
813 |
+
if( $( '.ai1ec-active-event:first' ).length ) {
|
814 |
+
// Pop up any active event in month/week view views
|
815 |
+
$( '.ai1ec-month-view .ai1ec-active-event:first, .ai1ec-oneday-view .ai1ec-active-event:first, .ai1ec-week-view .ai1ec-active-event:first' )
|
816 |
+
.each( function() {
|
817 |
+
$(this)
|
818 |
+
.each( show_popup )
|
819 |
+
.prev() // .ai1ec-popup
|
820 |
+
.data( 'ai1ec_mouseinside', true ); // To keep pop-up from vanishing
|
821 |
+
} );
|
822 |
+
// Expand any active event in agenda view
|
823 |
+
$( '.ai1ec-agenda-view .ai1ec-active-event:first > .ai1ec-event-click' ).each( expand_event );
|
824 |
+
// Bring the active event into focus
|
825 |
+
$.scrollTo( '.ai1ec-active-event:first', 1000,
|
826 |
+
{
|
827 |
+
offset: {
|
828 |
+
left: 0,
|
829 |
+
top: -window.innerHeight / 2 + 100
|
830 |
+
}
|
831 |
+
}
|
832 |
+
);
|
833 |
+
}
|
834 |
+
else if( $( '.ai1ec-week-view' ).length || $( '.ai1ec-oneday-view' ).length ) {
|
835 |
+
// If no active event, then in week view, scroll down to 6am.
|
836 |
+
$( '.ai1ec-oneday-view .tablescroll_wrapper, .ai1ec-week-view .tablescroll_wrapper' ).scrollTo( '.ai1ec-hour-marker:eq(6)' );
|
837 |
+
}
|
838 |
+
|
839 |
+
// Apply category/tag filters if any; hide all events by default, then fade
|
840 |
+
// in filtered ones.
|
841 |
+
if( $('.ai1ec-dropdown.active').length ) {
|
842 |
+
$('.ai1ec-month-view .ai1ec-event-container, .ai1ec-oneday-view .ai1ec-event-container, .ai1ec-week-view .ai1ec-event-container, .ai1ec-agenda-view .ai1ec-event').hide();
|
843 |
+
apply_filters();
|
844 |
+
}
|
845 |
+
|
846 |
+
// If in month view, extend multiday events.
|
847 |
+
if ( $('.ai1ec-month-view .ai1ec-multiday').length ) {
|
848 |
+
extend_multiday_events();
|
849 |
+
}
|
850 |
+
|
851 |
+
// Hide the print button if the current view is not supported for printing.
|
852 |
+
toggle_print_button();
|
853 |
+
}
|
854 |
+
|
855 |
+
// If there are preselected tag/cat IDs, update the filter UI.
|
856 |
+
if( $('#ai1ec-selected-categories').val() != '' ||
|
857 |
+
$('#ai1ec-selected-tags').val() != '' )
|
858 |
+
update_filter_selectors();
|
859 |
+
initialize_view();
|
860 |
+
} );
|
themes-ai1ec/vortex/js/calendar.min.js
ADDED
@@ -0,0 +1 @@
|
|
|
1 |
+
function ai1ec_convert_entities(a){var b,c;b=function(a){if(/&[^;]+;/.test(a)){var b=document.createElement("div");return b.innerHTML=a,b.firstChild?b.firstChild.nodeValue:a}return a};if(typeof a=="string")return b(a);if(typeof a=="object")for(c in a)typeof a[c]=="string"&&(a[c]=b(a[c]));return a}function get_hashless_url(){var a=window.location.href,b=window.location.hash,c=a.indexOf(b)||a.length,d=a.substr(0,c);return d}jQuery(document).ready(function(a){function g(){var a=document.location.hash,b=ai1ec_convert_entities(ai1ec_calendar.default_hash);if(d!=a&&(a!=""||d!=b)){var c=a;c||(c=b),h(c)}}function h(b){a("#ai1ec-calendar-view-loading").fadeIn("fast"),a("#ai1ec-calendar-view").fadeTo("fast",.3,function(){var c=b.substring(1);a.post(ai1ec_calendar.ajaxurl,c,function(b){var c=a("body").attr("class");c=c.replace(/\s?\bai1ec-[\w-]+\b/g,""),c+=" "+b.body_class,a("body").attr("class",c);var d=a("#ai1ec-calendar-view-container");d.height(d.height());var e=a("#ai1ec-calendar-view").html(b.html).height();d.animate({height:e},{complete:function(){d.height("auto")}}),a("#ai1ec-calendar-view-loading").fadeOut("fast"),a("#ai1ec-calendar-view").fadeTo("fast",1),y()},"json")}),d=b}function j(){a("#ai1ec-print-button").toggle(a(".ai1ec-agenda-view").length!=0)}function l(){var b=a(this).prev();b.removeClass("ai1ec-event-popup-allround");if(a(this.parentNode).is(".ai1ec-multiday")){var c="."+this.parentNode.className.replace(" ai1ec-multiday-bar","").replace(/\s+/igm,"."),d=a(c);d.each(function(c){var e=a(".ai1ec-event-popup",d[c]);b[0]!=e[0]&&e.addClass("ai1ec-event-popup-allround").css("visibility","visible").fadeIn(100)})}if(!b.data("ai1ec_offset")){b.css("visibility","hidden").show();var e=a("#ai1ec-calendar-view-container"),f=b.width(),g=b.offset(),h=e.offset(),i=h.left+e.width(),j=a(".ai1ec-event-summary",b);g.left+f>i&&b.offset({left:i-f,top:g.top}),j.offset().left<h.left&&b.addClass("ai1ec-shifted-right"),b.hide().css("visibility","visible"),b.data("ai1ec_offset",!0)}b.css({"z-index":++k}).fadeIn(100,Modernizr.touch?null:function(){a(this).data("ai1ec_mouseinside")||a(this).each(m)});if(Modernizr.touch)return a(".ai1ec-month-view .ai1ec-event-popup, .ai1ec-week-view .ai1ec-event-popup").not(b).fadeOut(100,function(){a(this).parent().css({zIndex:"auto"})}),!1}function m(){var b="."+this.parentNode.className.replace(" ai1ec-multiday-bar","").replace(/\s+/igm,"."),c=a(b+" .ai1ec-event-popup");a(c).fadeOut(100,function(){a(this).parent().css({zIndex:"auto"})}).data("ai1ec_mouseinside",!1)}function n(){a(".ai1ec-month-view").length&&(s(),a(".ai1ec-month-view .ai1ec-day").each(function(){var b=5,c=80,d=-1,e=a(".ai1ec-event-container:visible",this);e.each(function(a){this.offsetTop>=c&&d==-1&&(d=a>1?a-1:0)});if(d!=-1){var f=document.createElement("div");f.className="ai1ec-event-dropdown",a(f).css({top:e[d].offsetTop,display:"none"});for(var g=d;g<e.length;g++)r(e[g]),a(e[g]).hasClass("ai1ec-multiday")&&a(e[g]).append(p(1,e[g].style.backgroundColor)),a(f).append(e[g]);$scroll_down=a('<a href="#" class="ai1ec-scroll-down"></a>'),$scroll_down.bind("hover click",function(){return a(f).fadeIn(100),!1});var h=a(this).find(".ai1ec-date");parseInt(h.css("marginBottom"))>c&&(h.css({marginBottom:c-15+"px"}),a(f).css({top:c+"px"})),a(this).append(f),a(this).append($scroll_down),Modernizr.touch?($scroll_up=a('<a href="#" class="ai1ec-scroll-up"></a>'),$scroll_up.bind("click",function(){return a(f).fadeOut(100),!1}),a(f).append($scroll_up)):a(f).bind("mouseleave",function(){a(this).fadeOut(100)})}}))}function o(){q();var b=a(".ai1ec-day");a(".ai1ec-month-view .ai1ec-multiday:visible").each(function(){var c=this.parentNode,d=a(this).outerHeight(!0),e=a(c).width()+1,f=a(".ai1ec-event-title",this).first(),g=this.getAttribute("end-date"),h=g.split(/ /)[2],i=g.substr(0,g.lastIndexOf(" ")),j=a(".ai1ec-date",c),k=j.html(),l=!1;i!=a(".ai1ec-calendar-title").html()&&(h=a(".ai1ec-date",b[b.length-1]).html(),l=!0);var m=a(this),n=a(".ai1ec-event",m)[0].style.backgroundColor,o=0,q=h-k+1,r=q,s=0;a(this).css("width",0),b.each(function(d){var e=a(".ai1ec-date",this),f=a(this.parentNode);cellNum=f.index();if(parseInt(e.html())>=k&&parseInt(e.html())<=h){parseInt(e.html())==k&&(marginSize=parseInt(e.css("marginBottom"))+16);if(cellNum!=0)s=f.offset().left+f.width()-a(c).offset().left;else if(parseInt(e.html())>k&&r!=0){var g=m.clone(!1);e.parent().append(g),g.addClass("ai1ec-multiday-bar"),g.css({position:"absolute",left:"1px",top:parseInt(e.css("marginBottom"))+13,backgroundColor:n});var i=r>7?d+7-1:d+r-1,j=a(b[i]).offset().left+a(b[i]).width()-a(b[i].parentNode.parentNode).offset().left;g.css("width",j-1),r>1&&g.append(p(1,n)),g.append(p(2,n)),o++}o==0?e.css({marginBottom:marginSize+"px"}):e.css({marginBottom:"+=16px"}),l&&m.append(p(1,n)),r--}}),a(this).css({position:"absolute",top:j.outerHeight(!0)-d-1+"px",left:"1px",width:s+"px"}),o>0&&a(this).append(p(1,n))})}function p(b,c){var d=a('<div class="ai1ec-multiday-arrow'+b+'"></div>');return b==1?d.css({borderLeftColor:c}):d.css({borderTopColor:c,borderRightColor:c,borderBottomColor:c}),d}function q(){a(".ai1ec-month-view .ai1ec-date").each(function(){a(this).css({marginBottom:"1px"})}),a(".ai1ec-month-view .ai1ec-multiday-bar").remove(),a(".ai1ec-month-view .ai1ec-multiday-arrow1").remove(),a(".ai1ec-month-view .ai1ec-multiday-arrow2").remove(),a(".ai1ec-month-view .ai1ec-multiday").each(function(){r(this)})}function r(b){a(b).css({position:"relative",left:"auto",top:"auto",width:"auto"});var c="."+b.className.replace(/\s+/igm,".")+".ai1ec-multiday-bar";a(c).remove(),a(".ai1ec-multiday-arrow1, ai1ec-multiday-arrow2",b).remove()}function s(){a(".ai1ec-month-view .ai1ec-event-dropdown").each(function(){var b=this.parentNode;a(this).find(".ai1ec-event-container").each(function(){b.appendChild(this)})}),a(".ai1ec-month-view .ai1ec-event-dropdown").remove(),a(".ai1ec-month-view .ai1ec-scroll-down").remove()}function t(){a(this).hide().parent().addClass("ai1ec-expanded").end().prev().show().find(".ai1ec-event-description").hide().slideDown("fast")}function u(){a(this).next().slideUp("fast",function(){a(this).parent().parent().removeClass("ai1ec-expanded").end().hide().next().show()})}function v(b){var c=!1;return b.find("ol.ai1ec-date-events li.ai1ec-event").each(function(){a(this).css("display")!="none"&&(c=!0)}),c}function w(){var b=new Array;selected_cats=a(".ai1ec-filters-container .ai1ec-dropdown.active + #ai1ec-selected-categories").val(),selected_cats?(b.push(selected_cats),selected_cats="&ai1ec_cat_ids="+selected_cats):selected_cats="",selected_tags=a(".ai1ec-filters-container .ai1ec-dropdown.active + #ai1ec-selected-tags").val(),selected_tags?(b.push(selected_tags),selected_tags="&ai1ec_tag_ids="+selected_tags):selected_tags="",b=b.join();var c=ai1ec_convert_entities(ai1ec_calendar.export_url);b.length?(c+=selected_cats+selected_tags,a(".ai1ec-subscribe-filtered").fadeIn("fast")):a(".ai1ec-subscribe-filtered").fadeOut("fast"),a(".ai1ec-subscribe").attr("href",c),a(".ai1ec-subscribe-google").attr("href","http://www.google.com/calendar/render?cid="+escape(c.replace("webcal://","http://")));var d={action:"ai1ec_term_filter",ai1ec_post_ids:e,ai1ec_term_ids:b},f=a("#ai1ec-calendar-view-loading").delay(500).fadeIn("fast"),g=a("#ai1ec-calendar-view").delay(500).fadeTo("fast",.3);a.post(ai1ec_calendar.ajaxurl,d,function(b){f.clearQueue().fadeOut("fast"),g.clearQueue().fadeTo("fast",1);var c=[];a.each(b.matching_ids,function(a,b){c.push("#ai1ec-calendar-view .ai1ec-event-id-"+b)}),a(c.join()).css("display","block"),c=[],a.each(b.unmatching_ids,function(a,b){c.push("#ai1ec-calendar-view .ai1ec-event-id-"+b)}),a(c.join()).css("display","none"),a("ol.ai1ec-agenda-view > li.ai1ec-date").each(function(){v(a(this))?a(this).slideDown("fast"):a(this).slideUp("fast")}),a(".ai1ec-month-view .ai1ec-multiday").length&&o()},"json")}function x(){a(".ai1ec-filter-selector-container").each(function(){a("li.ai1ec-selected",this).length?a(".ai1ec-dropdown",this).addClass("active btn-info"):a(".ai1ec-dropdown",this).removeClass("active btn-info")}),a(".ai1ec-filters-container .ai1ec-selected").length?a(".ai1ec-clear-filters").fadeIn("fast"):a(".ai1ec-clear-filters").fadeOut("fast"),w()}function y(){var b=a("body").attr("class").split(" ");for(i in b){var c=/ai1ec-action-([\w]+)/.exec(b[i]);if(c!=null)break}var d=a("#ai1ec-view-"+c[1]);a("#ai1ec-current-view").contents().remove().end().prepend(d.contents().clone()).append('<span class="caret"></span>'),a("#ai1ec-view-dropdown .dropdown-menu li").removeClass("active"),d.parent().addClass("active"),e=new Array,a(".ai1ec-post-id").each(function(){e.push(this.value)}),e=e.join(),a("table.ai1ec-week-view-original").tableScroll({height:400,containerClass:"ai1ec-week-view"}),a("table.ai1ec-oneday-view-original").tableScroll({height:400,containerClass:"ai1ec-oneday-view"}),a(".ai1ec-active-event:first").length?(a(".ai1ec-month-view .ai1ec-active-event:first, .ai1ec-oneday-view .ai1ec-active-event:first, .ai1ec-week-view .ai1ec-active-event:first").each(function(){a(this).each(l).prev().data("ai1ec_mouseinside",!0)}),a(".ai1ec-agenda-view .ai1ec-active-event:first > .ai1ec-event-click").each(t),a.scrollTo(".ai1ec-active-event:first",1e3,{offset:{left:0,top:-window.innerHeight/2+100}})):(a(".ai1ec-week-view").length||a(".ai1ec-oneday-view").length)&&a(".ai1ec-oneday-view .tablescroll_wrapper, .ai1ec-week-view .tablescroll_wrapper").scrollTo(".ai1ec-hour-marker:eq(6)"),a(".ai1ec-dropdown.active").length&&(a(".ai1ec-month-view .ai1ec-event-container, .ai1ec-oneday-view .ai1ec-event-container, .ai1ec-week-view .ai1ec-event-container, .ai1ec-agenda-view .ai1ec-event").hide(),w()),a(".ai1ec-month-view .ai1ec-multiday").length&&o(),j()}if(ai1ec_calendar.selector!=undefined&&ai1ec_calendar.selector!=""&&a(ai1ec_calendar.selector).length==1){var b=a(":header:contains("+ai1ec_calendar.title+"):first");b.length||(b=a('<h1 class="page-title"></h1>'),b.text(ai1ec_calendar.title));var c=a("#ai1ec-container").detach().before(b);a(ai1ec_calendar.selector).empty().append(c).hide().css("visibility","visible").fadeIn("fast")}var d="",e,f=a("body").attr("class");f==undefined&&(f=""),f.match(/\s?\bai1ec-[\w-]+\b/)==null&&(f+=" "+ai1ec_calendar.body_class,a("body").attr("class",f)),setInterval(g,300),a("a.ai1ec-load-view").live("click",function(){h(a(this).attr("href"))}),a("#ai1ec-print-button").click(function(a){a.preventDefault();var b=get_hashless_url(),c=b+"&print=true"+window.location.hash;window.open(c,"Print page")});var k=999;a(".ai1ec-month-view .ai1ec-event, .ai1ec-oneday-view .ai1ec-event, .ai1ec-week-view .ai1ec-event").live(Modernizr.touch?"click":"mouseenter",l),Modernizr.touch||a(".ai1ec-month-view .ai1ec-event-popup, .ai1ec-oneday-view .ai1ec-event-popup, .ai1ec-week-view .ai1ec-event-popup").live("mouseleave",m).live("mousemove",function(){a(this).data("ai1ec_mouseinside",!0)}),a(".ai1ec-month-view, .ai1ec-oneday-view, .ai1ec-week-view").length&&a(window).blur(function(){a(".ai1ec-event-popup:visible").each(m)}),a(".ai1ec-oneday-view .ai1ec-oneday a.ai1ec-event-container, .ai1ec-week-view .ai1ec-week a.ai1ec-event-container").live("mouseenter",function(){a(this).delay(500).queue(function(){a(this).css("z-index",5)})}).live("mouseleave",function(){a(this).clearQueue().css("z-index","auto")}),a(".ai1ec-agenda-view .ai1ec-event > .ai1ec-event-click").live("click",t),a(".ai1ec-agenda-view .ai1ec-event-summary > .ai1ec-event-click").live("click",u),a(".ai1ec-action-agenda #ai1ec-expand-all").live("click",function(){a(".ai1ec-event > .ai1ec-event-click:visible").click()}),a(".ai1ec-action-agenda #ai1ec-collapse-all").live("click",function(){a(".ai1ec-event-summary > .ai1ec-event-click:visible").click()}),element_selector(".ai1ec-category-filter-selector li","ai1ec-selected","ai1ec-categories","#ai1ec-selected-categories"),element_selector(".ai1ec-tag-filter-selector li","ai1ec-selected","ai1ec-tags","#ai1ec-selected-tags"),a(".ai1ec-filter-selector li").click(x),a(".ai1ec-clear-filters").click(function(){a(".ai1ec-filter-selector-container li").removeClass("ai1ec-selected"),x()}),(a("#ai1ec-selected-categories").val()!=""||a("#ai1ec-selected-tags").val()!="")&&x(),y()});
|
{js → themes-ai1ec/vortex/js}/event.js
RENAMED
@@ -13,8 +13,8 @@ function ai1ec_load_map()
|
|
13 |
var geocoder = new google.maps.Geocoder();
|
14 |
|
15 |
geocoder.geocode(
|
16 |
-
{
|
17 |
-
'address': document.getElementById( 'ai1ec-gmap-address' ).value
|
18 |
},
|
19 |
function( results, status ) {
|
20 |
if( status == google.maps.GeocoderStatus.OK ) {
|
@@ -53,4 +53,4 @@ jQuery( function( $ ) {
|
|
53 |
map_el.removeClass( 'ai1ec-gmap-container-hidden' );
|
54 |
map_el.fadeIn();
|
55 |
});
|
56 |
-
});
|
13 |
var geocoder = new google.maps.Geocoder();
|
14 |
|
15 |
geocoder.geocode(
|
16 |
+
{
|
17 |
+
'address': document.getElementById( 'ai1ec-gmap-address' ).value
|
18 |
},
|
19 |
function( results, status ) {
|
20 |
if( status == google.maps.GeocoderStatus.OK ) {
|
53 |
map_el.removeClass( 'ai1ec-gmap-container-hidden' );
|
54 |
map_el.fadeIn();
|
55 |
});
|
56 |
+
});
|
themes-ai1ec/vortex/js/event.min.js
ADDED
@@ -0,0 +1 @@
|
|
|
1 |
+
function ai1ec_load_map(){var a={zoom:14,mapTypeId:google.maps.MapTypeId.ROADMAP},b=new google.maps.Map(document.getElementById("ai1ec-gmap-canvas"),a),c=new google.maps.Marker({map:b}),d=new google.maps.Geocoder;d.geocode({address:document.getElementById("ai1ec-gmap-address").value},function(a,d){d==google.maps.GeocoderStatus.OK&&(b.setCenter(a[0].geometry.location),c.setPosition(a[0].geometry.location))})}var orig_onload=window.onload;window.onload=function(){typeof orig_onload=="function"&&orig_onload();if(document.getElementById("ai1ec-gmap-canvas")){var a=document.createElement("script");a.type="text/javascript",a.src="http://maps.google.com/maps/api/js?sensor=false&callback=ai1ec_load_map&language="+ai1ec_event.language,document.body.appendChild(a)}},jQuery(function(a){a(".ai1ec-gmap-placeholder:first").click(function(){var b=a(".ai1ec-gmap-container-hidden:first");a(this).remove(),b.hide(),b.removeClass("ai1ec-gmap-container-hidden"),b.fadeIn()})});
|
themes-ai1ec/vortex/js/general.js
ADDED
@@ -0,0 +1,23 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/**
|
2 |
+
* @file
|
3 |
+
*
|
4 |
+
* General JavaScript to be loaded on all pages of a WordPress site on which
|
5 |
+
* AI1EC is active.
|
6 |
+
*/
|
7 |
+
|
8 |
+
jQuery( function( $ ) {
|
9 |
+
$( document ).delegate( '[rel="tooltip"]', 'hover.ai1ec', function() {
|
10 |
+
// Don't add tooltips to category colour squares already contained in
|
11 |
+
// descriptive category labels.
|
12 |
+
if( $( this ).is( '.ai1ec-category .ai1ec-category-color' ) ) {
|
13 |
+
return;
|
14 |
+
}
|
15 |
+
// Only register .tooltip() the first time it is hovered.
|
16 |
+
if( ! $( this ).data( 'tooltipped.ai1ec' ) ) {
|
17 |
+
$( this )
|
18 |
+
.tooltip()
|
19 |
+
.tooltip( 'show' )
|
20 |
+
.data( 'tooltipped.ai1ec', true );
|
21 |
+
}
|
22 |
+
} );
|
23 |
+
} );
|
themes-ai1ec/vortex/js/general.min.js
ADDED
@@ -0,0 +1 @@
|
|
|
1 |
+
jQuery.fn.dropdown||!function(a){function d(){a(b).parent().removeClass("open")}"use strict";var b='[data-toggle="dropdown"]',c=function(b){var c=a(b).on("click.dropdown.data-api",this.toggle);a("html").on("click.dropdown.data-api",function(){c.parent().removeClass("open")})};c.prototype={constructor:c,toggle:function(b){var c=a(this),e=c.attr("data-target"),f,g;return e||(e=c.attr("href"),e=e&&e.replace(/.*(?=#[^\s]*$)/,"")),f=a(e),f.length||(f=c.parent()),g=f.hasClass("open"),d(),!g&&f.toggleClass("open"),!1}},a.fn.dropdown=function(b){return this.each(function(){var d=a(this),e=d.data("dropdown");e||d.data("dropdown",e=new c(this)),typeof b=="string"&&e[b].call(d)})},a.fn.dropdown.Constructor=c,a(function(){a("html").on("click.dropdown.data-api",d),a("body").on("click.dropdown.data-api",b,c.prototype.toggle)})}(window.jQuery),jQuery.fn.tooltip||!function(a){"use strict";var b=function(a,b){this.init("tooltip",a,b)};b.prototype={constructor:b,init:function(b,c,d){var e,f;this.type=b,this.$element=a(c),this.options=this.getOptions(d),this.enabled=!0,this.options.trigger!="manual"&&(e=this.options.trigger=="hover"?"mouseenter":"focus",f=this.options.trigger=="hover"?"mouseleave":"blur",this.$element.on(e,this.options.selector,a.proxy(this.enter,this)),this.$element.on(f,this.options.selector,a.proxy(this.leave,this))),this.options.selector?this._options=a.extend({},this.options,{trigger:"manual",selector:""}):this.fixTitle()},getOptions:function(b){return b=a.extend({},a.fn[this.type].defaults,b,this.$element.data()),b.delay&&typeof b.delay=="number"&&(b.delay={show:b.delay,hide:b.delay}),b},enter:function(b){var c=a(b.currentTarget)[this.type](this._options).data(this.type);!c.options.delay||!c.options.delay.show?c.show():(c.hoverState="in",setTimeout(function(){c.hoverState=="in"&&c.show()},c.options.delay.show))},leave:function(b){var c=a(b.currentTarget)[this.type](this._options).data(this.type);!c.options.delay||!c.options.delay.hide?c.hide():(c.hoverState="out",setTimeout(function(){c.hoverState=="out"&&c.hide()},c.options.delay.hide))},show:function(){var a,b,c,d,e,f,g;if(this.hasContent()&&this.enabled){a=this.tip(),this.setContent(),this.options.animation&&a.addClass("fade"),f=typeof this.options.placement=="function"?this.options.placement.call(this,a[0],this.$element[0]):this.options.placement,b=/in/.test(f),a.remove().css({top:0,left:0,display:"block"}).appendTo(b?this.$element:document.body),c=this.getPosition(b),d=a[0].offsetWidth,e=a[0].offsetHeight;switch(b?f.split(" ")[1]:f){case"bottom":g={top:c.top+c.height,left:c.left+c.width/2-d/2};break;case"top":g={top:c.top-e,left:c.left+c.width/2-d/2};break;case"left":g={top:c.top+c.height/2-e/2,left:c.left-d};break;case"right":g={top:c.top+c.height/2-e/2,left:c.left+c.width}}a.css(g).addClass(f).addClass("in")}},setContent:function(){var a=this.tip();a.find(".tooltip-inner").html(this.getTitle()),a.removeClass("fade in top bottom left right")},hide:function(){function d(){var b=setTimeout(function(){c.off(a.support.transition.end).remove()},500);c.one(a.support.transition.end,function(){clearTimeout(b),c.remove()})}var b=this,c=this.tip();c.removeClass("in"),a.support.transition&&this.$tip.hasClass("fade")?d():c.remove()},fixTitle:function(){var a=this.$element;(a.attr("title")||typeof a.attr("data-original-title")!="string")&&a.attr("data-original-title",a.attr("title")||"").removeAttr("title")},hasContent:function(){return this.getTitle()},getPosition:function(b){return a.extend({},b?{top:0,left:0}:this.$element.offset(),{width:this.$element[0].offsetWidth,height:this.$element[0].offsetHeight})},getTitle:function(){var a,b=this.$element,c=this.options;return a=b.attr("data-original-title")||(typeof c.title=="function"?c.title.call(b[0]):c.title),a=(a||"").toString().replace(/(^\s*|\s*$)/,""),a},tip:function(){return this.$tip=this.$tip||a(this.options.template)},validate:function(){this.$element[0].parentNode||(this.hide(),this.$element=null,this.options=null)},enable:function(){this.enabled=!0},disable:function(){this.enabled=!1},toggleEnabled:function(){this.enabled=!this.enabled},toggle:function(){this[this.tip().hasClass("in")?"hide":"show"]()}},a.fn.tooltip=function(c){return this.each(function(){var d=a(this),e=d.data("tooltip"),f=typeof c=="object"&&c;e||d.data("tooltip",e=new b(this,f)),typeof c=="string"&&e[c]()})},a.fn.tooltip.Constructor=b,a.fn.tooltip.defaults={animation:!0,delay:0,selector:!1,placement:"top",trigger:"hover",title:"",template:'<div class="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>'}}(window.jQuery),jQuery(function(a){a(document).delegate('[rel="tooltip"]',"hover.ai1ec",function(){if(a(this).is(".ai1ec-category .ai1ec-category-color"))return;a(this).data("tooltipped.ai1ec")||a(this).tooltip().tooltip("show").data("tooltipped.ai1ec",!0)})});
|
{js → themes-ai1ec/vortex/js}/jquery.scrollTo-min.js
RENAMED
File without changes
|
{js → themes-ai1ec/vortex/js}/jquery.tablescroll.js
RENAMED
File without changes
|
{js → themes-ai1ec/vortex/js}/modernizr.custom.78720.js
RENAMED
File without changes
|
themes-ai1ec/vortex/less/build-css.sh
ADDED
@@ -0,0 +1,13 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
#!/bin/bash
|
2 |
+
|
3 |
+
LESSC="lessc --yui-compress --include-path=."
|
4 |
+
|
5 |
+
if which -s lessc; then
|
6 |
+
$LESSC general.less > ../css/general.css
|
7 |
+
$LESSC calendar.less > ../css/calendar.css
|
8 |
+
$LESSC event.less > ../css/event.css
|
9 |
+
$LESSC print.less > ../css/print.css
|
10 |
+
else
|
11 |
+
echo 'Error: lessc not found. Install Node.js then: npm install -g less';
|
12 |
+
exit 1;
|
13 |
+
fi
|
themes-ai1ec/vortex/less/button-groups.less
ADDED
@@ -0,0 +1,172 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
// BUTTON GROUPS
|
2 |
+
// -------------
|
3 |
+
|
4 |
+
|
5 |
+
// Make the div behave like a button
|
6 |
+
.btn-group {
|
7 |
+
position: relative;
|
8 |
+
.clearfix(); // clears the floated buttons
|
9 |
+
.ie7-restore-left-whitespace();
|
10 |
+
}
|
11 |
+
|
12 |
+
// Space out series of button groups
|
13 |
+
.btn-group + .btn-group {
|
14 |
+
margin-left: 5px;
|
15 |
+
}
|
16 |
+
|
17 |
+
// Optional: Group multiple button groups together for a toolbar
|
18 |
+
.btn-toolbar {
|
19 |
+
margin-top: @baseLineHeight / 2;
|
20 |
+
margin-bottom: @baseLineHeight / 2;
|
21 |
+
.btn-group {
|
22 |
+
display: inline-block;
|
23 |
+
.ie7-inline-block();
|
24 |
+
}
|
25 |
+
}
|
26 |
+
|
27 |
+
// Float them, remove border radius, then re-add to first and last elements
|
28 |
+
.btn-group .btn {
|
29 |
+
position: relative;
|
30 |
+
float: left;
|
31 |
+
margin-left: -1px;
|
32 |
+
.border-radius(0);
|
33 |
+
}
|
34 |
+
// Set corners individual because sometimes a single button can be in a .btn-group and we need :first-child and :last-child to both match
|
35 |
+
.btn-group .btn:first-child {
|
36 |
+
margin-left: 0;
|
37 |
+
-webkit-border-top-left-radius: 4px;
|
38 |
+
-moz-border-radius-topleft: 4px;
|
39 |
+
border-top-left-radius: 4px;
|
40 |
+
-webkit-border-bottom-left-radius: 4px;
|
41 |
+
-moz-border-radius-bottomleft: 4px;
|
42 |
+
border-bottom-left-radius: 4px;
|
43 |
+
}
|
44 |
+
.btn-group .btn:last-child,
|
45 |
+
.btn-group .dropdown-toggle {
|
46 |
+
-webkit-border-top-right-radius: 4px;
|
47 |
+
-moz-border-radius-topright: 4px;
|
48 |
+
border-top-right-radius: 4px;
|
49 |
+
-webkit-border-bottom-right-radius: 4px;
|
50 |
+
-moz-border-radius-bottomright: 4px;
|
51 |
+
border-bottom-right-radius: 4px;
|
52 |
+
}
|
53 |
+
// Reset corners for large buttons
|
54 |
+
.btn-group .btn.large:first-child {
|
55 |
+
margin-left: 0;
|
56 |
+
-webkit-border-top-left-radius: 6px;
|
57 |
+
-moz-border-radius-topleft: 6px;
|
58 |
+
border-top-left-radius: 6px;
|
59 |
+
-webkit-border-bottom-left-radius: 6px;
|
60 |
+
-moz-border-radius-bottomleft: 6px;
|
61 |
+
border-bottom-left-radius: 6px;
|
62 |
+
}
|
63 |
+
.btn-group .btn.large:last-child,
|
64 |
+
.btn-group .large.dropdown-toggle {
|
65 |
+
-webkit-border-top-right-radius: 6px;
|
66 |
+
-moz-border-radius-topright: 6px;
|
67 |
+
border-top-right-radius: 6px;
|
68 |
+
-webkit-border-bottom-right-radius: 6px;
|
69 |
+
-moz-border-radius-bottomright: 6px;
|
70 |
+
border-bottom-right-radius: 6px;
|
71 |
+
}
|
72 |
+
|
73 |
+
// On hover/focus/active, bring the proper btn to front
|
74 |
+
.btn-group .btn:hover,
|
75 |
+
.btn-group .btn:focus,
|
76 |
+
.btn-group .btn:active,
|
77 |
+
.btn-group .btn.active {
|
78 |
+
z-index: 2;
|
79 |
+
}
|
80 |
+
|
81 |
+
// On active and open, don't show outline
|
82 |
+
.btn-group .dropdown-toggle:active,
|
83 |
+
.btn-group.open .dropdown-toggle {
|
84 |
+
outline: 0;
|
85 |
+
}
|
86 |
+
|
87 |
+
|
88 |
+
|
89 |
+
// Split button dropdowns
|
90 |
+
// ----------------------
|
91 |
+
|
92 |
+
// Give the line between buttons some depth
|
93 |
+
.btn-group .dropdown-toggle {
|
94 |
+
padding-left: 8px;
|
95 |
+
padding-right: 8px;
|
96 |
+
@shadow: inset 1px 0 0 rgba(255,255,255,.125), inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05);
|
97 |
+
.box-shadow(@shadow);
|
98 |
+
*padding-top: 3px;
|
99 |
+
*padding-bottom: 3px;
|
100 |
+
}
|
101 |
+
.btn-group .btn-mini.dropdown-toggle {
|
102 |
+
padding-left: 5px;
|
103 |
+
padding-right: 5px;
|
104 |
+
*padding-top: 1px;
|
105 |
+
*padding-bottom: 1px;
|
106 |
+
}
|
107 |
+
.btn-group .btn-small.dropdown-toggle {
|
108 |
+
*padding-top: 4px;
|
109 |
+
*padding-bottom: 4px;
|
110 |
+
}
|
111 |
+
.btn-group .btn-large.dropdown-toggle {
|
112 |
+
padding-left: 12px;
|
113 |
+
padding-right: 12px;
|
114 |
+
}
|
115 |
+
|
116 |
+
.btn-group.open {
|
117 |
+
// IE7's z-index only goes to the nearest positioned ancestor, which would
|
118 |
+
// make the menu appear below buttons that appeared later on the page
|
119 |
+
*z-index: @zindexDropdown;
|
120 |
+
|
121 |
+
// Reposition menu on open and round all corners
|
122 |
+
.dropdown-menu {
|
123 |
+
display: block;
|
124 |
+
margin-top: 1px;
|
125 |
+
.border-radius(5px);
|
126 |
+
}
|
127 |
+
|
128 |
+
.dropdown-toggle {
|
129 |
+
background-image: none;
|
130 |
+
@shadow: inset 0 1px 6px rgba(0,0,0,.15), 0 1px 2px rgba(0,0,0,.05);
|
131 |
+
.box-shadow(@shadow);
|
132 |
+
}
|
133 |
+
}
|
134 |
+
|
135 |
+
// Reposition the caret
|
136 |
+
.btn .caret {
|
137 |
+
margin-top: 7px;
|
138 |
+
margin-left: 0;
|
139 |
+
}
|
140 |
+
.btn:hover .caret,
|
141 |
+
.open.btn-group .caret {
|
142 |
+
.opacity(100);
|
143 |
+
}
|
144 |
+
// Carets in other button sizes
|
145 |
+
.btn-mini .caret {
|
146 |
+
margin-top: 5px;
|
147 |
+
}
|
148 |
+
.btn-small .caret {
|
149 |
+
margin-top: 6px;
|
150 |
+
}
|
151 |
+
.btn-large .caret {
|
152 |
+
margin-top: 6px;
|
153 |
+
border-left: 5px solid transparent;
|
154 |
+
border-right: 5px solid transparent;
|
155 |
+
border-top: 5px solid @black;
|
156 |
+
}
|
157 |
+
|
158 |
+
|
159 |
+
// Account for other colors
|
160 |
+
.btn-primary,
|
161 |
+
.btn-warning,
|
162 |
+
.btn-danger,
|
163 |
+
.btn-info,
|
164 |
+
.btn-success,
|
165 |
+
.btn-inverse {
|
166 |
+
.caret {
|
167 |
+
border-top-color: @white;
|
168 |
+
border-bottom-color: @white;
|
169 |
+
.opacity(75);
|
170 |
+
}
|
171 |
+
}
|
172 |
+
|
themes-ai1ec/vortex/less/buttons.less
ADDED
@@ -0,0 +1,187 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
// BUTTON STYLES
|
2 |
+
// -------------
|
3 |
+
|
4 |
+
|
5 |
+
// Base styles
|
6 |
+
// --------------------------------------------------
|
7 |
+
|
8 |
+
// Core
|
9 |
+
.btn {
|
10 |
+
display: inline-block;
|
11 |
+
.ie7-inline-block();
|
12 |
+
padding: 4px 10px 4px;
|
13 |
+
margin-bottom: 0; // For input.btn
|
14 |
+
font-size: @baseFontSize;
|
15 |
+
line-height: @baseLineHeight;
|
16 |
+
color: @grayDark;
|
17 |
+
text-align: center;
|
18 |
+
text-shadow: 0 1px 1px rgba(255,255,255,.75);
|
19 |
+
vertical-align: middle;
|
20 |
+
.buttonBackground(@btnBackground, @btnBackgroundHighlight);
|
21 |
+
border: 1px solid @btnBorder;
|
22 |
+
border-bottom-color: darken(@btnBorder, 10%);
|
23 |
+
.border-radius(4px);
|
24 |
+
@shadow: inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05);
|
25 |
+
.box-shadow(@shadow);
|
26 |
+
cursor: pointer;
|
27 |
+
|
28 |
+
// Give IE7 some love
|
29 |
+
.ie7-restore-left-whitespace();
|
30 |
+
}
|
31 |
+
|
32 |
+
// Hover state
|
33 |
+
.btn:hover {
|
34 |
+
color: @grayDark;
|
35 |
+
text-decoration: none;
|
36 |
+
background-color: darken(@white, 10%);
|
37 |
+
background-position: 0 -15px;
|
38 |
+
|
39 |
+
// transition is only when going to hover, otherwise the background
|
40 |
+
// behind the gradient (there for IE<=9 fallback) gets mismatched
|
41 |
+
.transition(background-position .1s linear);
|
42 |
+
}
|
43 |
+
|
44 |
+
// Focus state for keyboard and accessibility
|
45 |
+
.btn:focus {
|
46 |
+
.tab-focus();
|
47 |
+
}
|
48 |
+
|
49 |
+
// Active state
|
50 |
+
.btn.active,
|
51 |
+
.btn:active {
|
52 |
+
background-image: none;
|
53 |
+
@shadow: inset 0 2px 4px rgba(0,0,0,.15), 0 1px 2px rgba(0,0,0,.05);
|
54 |
+
.box-shadow(@shadow);
|
55 |
+
background-color: darken(@white, 10%);
|
56 |
+
background-color: darken(@white, 15%) e("\9");
|
57 |
+
outline: 0;
|
58 |
+
}
|
59 |
+
|
60 |
+
// Disabled state
|
61 |
+
.btn.disabled,
|
62 |
+
.btn[disabled] {
|
63 |
+
cursor: default;
|
64 |
+
background-image: none;
|
65 |
+
background-color: darken(@white, 10%);
|
66 |
+
.opacity(65);
|
67 |
+
.box-shadow(none);
|
68 |
+
}
|
69 |
+
|
70 |
+
|
71 |
+
// Button Sizes
|
72 |
+
// --------------------------------------------------
|
73 |
+
|
74 |
+
// Large
|
75 |
+
.btn-large {
|
76 |
+
padding: 9px 14px;
|
77 |
+
font-size: @baseFontSize + 2px;
|
78 |
+
line-height: normal;
|
79 |
+
.border-radius(5px);
|
80 |
+
}
|
81 |
+
.btn-large [class^="icon-"] {
|
82 |
+
margin-top: 1px;
|
83 |
+
}
|
84 |
+
|
85 |
+
// Small
|
86 |
+
.btn-small {
|
87 |
+
padding: 5px 9px;
|
88 |
+
font-size: @baseFontSize - 2px;
|
89 |
+
line-height: @baseLineHeight - 2px;
|
90 |
+
}
|
91 |
+
.btn-small [class^="icon-"] {
|
92 |
+
margin-top: -1px;
|
93 |
+
}
|
94 |
+
|
95 |
+
// Mini
|
96 |
+
.btn-mini {
|
97 |
+
padding: 2px 6px;
|
98 |
+
font-size: @baseFontSize - 2px;
|
99 |
+
line-height: @baseLineHeight - 4px;
|
100 |
+
}
|
101 |
+
|
102 |
+
|
103 |
+
// Alternate buttons
|
104 |
+
// --------------------------------------------------
|
105 |
+
|
106 |
+
// Set text color
|
107 |
+
// -------------------------
|
108 |
+
.btn-primary,
|
109 |
+
.btn-primary:hover,
|
110 |
+
.btn-warning,
|
111 |
+
.btn-warning:hover,
|
112 |
+
.btn-danger,
|
113 |
+
.btn-danger:hover,
|
114 |
+
.btn-success,
|
115 |
+
.btn-success:hover,
|
116 |
+
.btn-info,
|
117 |
+
.btn-info:hover,
|
118 |
+
.btn-inverse,
|
119 |
+
.btn-inverse:hover {
|
120 |
+
text-shadow: 0 -1px 0 rgba(0,0,0,.25);
|
121 |
+
color: @white;
|
122 |
+
}
|
123 |
+
// Provide *some* extra contrast for those who can get it
|
124 |
+
.btn-primary.active,
|
125 |
+
.btn-warning.active,
|
126 |
+
.btn-danger.active,
|
127 |
+
.btn-success.active,
|
128 |
+
.btn-info.active,
|
129 |
+
.btn-inverse.active {
|
130 |
+
color: rgba(255,255,255,.75);
|
131 |
+
}
|
132 |
+
|
133 |
+
// Set the backgrounds
|
134 |
+
// -------------------------
|
135 |
+
.btn-primary {
|
136 |
+
.buttonBackground(@btnPrimaryBackground, @btnPrimaryBackgroundHighlight);
|
137 |
+
}
|
138 |
+
// Warning appears are orange
|
139 |
+
.btn-warning {
|
140 |
+
.buttonBackground(@btnWarningBackground, @btnWarningBackgroundHighlight);
|
141 |
+
}
|
142 |
+
// Danger and error appear as red
|
143 |
+
.btn-danger {
|
144 |
+
.buttonBackground(@btnDangerBackground, @btnDangerBackgroundHighlight);
|
145 |
+
}
|
146 |
+
// Success appears as green
|
147 |
+
.btn-success {
|
148 |
+
.buttonBackground(@btnSuccessBackground, @btnSuccessBackgroundHighlight);
|
149 |
+
}
|
150 |
+
// Info appears as a neutral blue
|
151 |
+
.btn-info {
|
152 |
+
.buttonBackground(@btnInfoBackground, @btnInfoBackgroundHighlight);
|
153 |
+
}
|
154 |
+
// Inverse appears as dark gray
|
155 |
+
.btn-inverse {
|
156 |
+
.buttonBackground(@btnInverseBackground, @btnInverseBackgroundHighlight);
|
157 |
+
}
|
158 |
+
|
159 |
+
|
160 |
+
// Cross-browser Jank
|
161 |
+
// --------------------------------------------------
|
162 |
+
|
163 |
+
button.btn,
|
164 |
+
input[type="submit"].btn {
|
165 |
+
|
166 |
+
// Firefox 3.6 only I believe
|
167 |
+
&::-moz-focus-inner {
|
168 |
+
padding: 0;
|
169 |
+
border: 0;
|
170 |
+
}
|
171 |
+
|
172 |
+
// IE7 has some default padding on button controls
|
173 |
+
*padding-top: 2px;
|
174 |
+
*padding-bottom: 2px;
|
175 |
+
&.btn-large {
|
176 |
+
*padding-top: 7px;
|
177 |
+
*padding-bottom: 7px;
|
178 |
+
}
|
179 |
+
&.btn-small {
|
180 |
+
*padding-top: 3px;
|
181 |
+
*padding-bottom: 3px;
|
182 |
+
}
|
183 |
+
&.btn-mini {
|
184 |
+
*padding-top: 1px;
|
185 |
+
*padding-bottom: 1px;
|
186 |
+
}
|
187 |
+
}
|
themes-ai1ec/vortex/less/calendar.less
ADDED
@@ -0,0 +1,837 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/**
|
2 |
+
* @file
|
3 |
+
*
|
4 |
+
* Used on the full calendar views page only (month, week, day, agenda, etc.).
|
5 |
+
*/
|
6 |
+
|
7 |
+
// ======================
|
8 |
+
// = Variables & mixins =
|
9 |
+
// ======================
|
10 |
+
// Based on Bootstrap. Modify variables.less for custom colors, font-sizes, etc.
|
11 |
+
@import "variables.less";
|
12 |
+
@import "mixins.less";
|
13 |
+
@import "mixins-custom.less";
|
14 |
+
|
15 |
+
// =================
|
16 |
+
// = Calendar page =
|
17 |
+
// =================
|
18 |
+
|
19 |
+
// General calendar page container.
|
20 |
+
.ai1ec-container {
|
21 |
+
clear: both;
|
22 |
+
}
|
23 |
+
|
24 |
+
// Calendar view container.
|
25 |
+
#ai1ec-calendar-view-container {
|
26 |
+
position: relative;
|
27 |
+
clear: both;
|
28 |
+
margin-bottom: 0.2em;
|
29 |
+
}
|
30 |
+
.ai1ec-calendar-toolbar {
|
31 |
+
width: 100% !important;
|
32 |
+
border: 0 !important;
|
33 |
+
margin: 0 !important;
|
34 |
+
td {
|
35 |
+
background: none !important;
|
36 |
+
border: 0 !important;
|
37 |
+
padding: 0 !important;
|
38 |
+
text-align: center;
|
39 |
+
vertical-align: middle;
|
40 |
+
white-space: nowrap;
|
41 |
+
width: 33%;
|
42 |
+
}
|
43 |
+
td:last-child {
|
44 |
+
text-align: right;
|
45 |
+
}
|
46 |
+
td:first-child {
|
47 |
+
text-align: left;
|
48 |
+
}
|
49 |
+
}
|
50 |
+
|
51 |
+
// View dropdown button.
|
52 |
+
.thenly #ai1ec-view-dropdown {
|
53 |
+
a.btn,
|
54 |
+
.dropdown-menu a {
|
55 |
+
line-height: 21px;
|
56 |
+
}
|
57 |
+
a.btn .caret {
|
58 |
+
margin-top: 9px;
|
59 |
+
}
|
60 |
+
a img {
|
61 |
+
border: 0 !important;
|
62 |
+
padding: 0 !important;
|
63 |
+
margin: 0 !important;
|
64 |
+
float: none !important;
|
65 |
+
position: static !important;
|
66 |
+
vertical-align: bottom;
|
67 |
+
background: none !important;
|
68 |
+
}
|
69 |
+
}
|
70 |
+
|
71 |
+
// View filters.
|
72 |
+
.ai1ec-filters-container {
|
73 |
+
display: inline-block;
|
74 |
+
}
|
75 |
+
.ai1ec-filter-selector-container {
|
76 |
+
position: relative;
|
77 |
+
display: inline-block;
|
78 |
+
text-align: left;
|
79 |
+
white-space: normal;
|
80 |
+
}
|
81 |
+
.ai1ec-filter-selector {
|
82 |
+
display: none;
|
83 |
+
background: @dropdownBackground;
|
84 |
+
border: 1px solid @dropdownBorder;
|
85 |
+
.border-radius(5px);
|
86 |
+
.box-shadow(0 5px 10px rgba(0,0,0,.2));
|
87 |
+
padding: 0.1em;
|
88 |
+
position: absolute;
|
89 |
+
overflow: auto;
|
90 |
+
max-width: 20em;
|
91 |
+
max-height: 30em;
|
92 |
+
right: 0;
|
93 |
+
top: 100%;
|
94 |
+
z-index: 10;
|
95 |
+
ul {
|
96 |
+
margin: 0 !important;
|
97 |
+
padding: 0 !important;
|
98 |
+
}
|
99 |
+
li {
|
100 |
+
list-style: none;
|
101 |
+
}
|
102 |
+
.ai1ec-category,
|
103 |
+
.ai1ec-tag {
|
104 |
+
font-size: 8pt !important;
|
105 |
+
}
|
106 |
+
}
|
107 |
+
.ai1ec-filter-selector-container:hover > .ai1ec-filter-selector {
|
108 |
+
display: block;
|
109 |
+
}
|
110 |
+
.ai1ec-clear-filters {
|
111 |
+
display: none;
|
112 |
+
font-size: 11pt !important;
|
113 |
+
font-weight: normal;
|
114 |
+
color: @linkColor !important;
|
115 |
+
cursor: pointer;
|
116 |
+
text-decoration: none !important;
|
117 |
+
&:hover {
|
118 |
+
color: @linkColorHover !important;
|
119 |
+
}
|
120 |
+
}
|
121 |
+
|
122 |
+
// Titles.
|
123 |
+
h2.ai1ec-calendar-title {
|
124 |
+
float: left;
|
125 |
+
font-size: 20px !important;
|
126 |
+
line-height: 1.3em !important;
|
127 |
+
margin: 0 0.5em 0 0 !important;
|
128 |
+
}
|
129 |
+
|
130 |
+
// Today button hidden on today's date.
|
131 |
+
.ai1ec-today #ai1ec-today {
|
132 |
+
display: none;
|
133 |
+
}
|
134 |
+
|
135 |
+
// View pagination buttons.
|
136 |
+
.ai1ec-action-month .ai1ec-pagination a {
|
137 |
+
width: 7em;
|
138 |
+
}
|
139 |
+
.ai1ec-action-week .ai1ec-pagination a,
|
140 |
+
.ai1ec-action-oneday .ai1ec-pagination a {
|
141 |
+
width: 8em;
|
142 |
+
}
|
143 |
+
.ai1ec-action-agenda .ai1ec-pagination a {
|
144 |
+
width: 9em;
|
145 |
+
}
|
146 |
+
#ai1ec-prev-year, #ai1ec-next-year {
|
147 |
+
width: 4em;
|
148 |
+
}
|
149 |
+
|
150 |
+
// Month, week, day tables.
|
151 |
+
table.ai1ec-month-view,
|
152 |
+
.ai1ec-week-view table,
|
153 |
+
.ai1ec-oneday-view table {
|
154 |
+
border-collapse: collapse;
|
155 |
+
border: 1px solid @tableBorder !important;
|
156 |
+
margin: 0 !important;
|
157 |
+
background: @tableBackground;
|
158 |
+
table-layout: fixed !important;
|
159 |
+
clear: both;
|
160 |
+
width: 100% !important;
|
161 |
+
}
|
162 |
+
.ai1ec-week-view .tablescroll_wrapper,
|
163 |
+
.ai1ec-oneday-view .tablescroll_wrapper {
|
164 |
+
position: relative;
|
165 |
+
border-bottom: 1px solid @tableBorder;
|
166 |
+
}
|
167 |
+
table.ai1ec-week-view-original,
|
168 |
+
table.ai1ec-oneday-view-original {
|
169 |
+
visibility: hidden;
|
170 |
+
height: 400px;
|
171 |
+
&.tablescroll_body {
|
172 |
+
visibility: visible;
|
173 |
+
height: auto;
|
174 |
+
}
|
175 |
+
}
|
176 |
+
.ai1ec-week-view,
|
177 |
+
.ai1ec-oneday-view {
|
178 |
+
table.tablescroll_head,
|
179 |
+
table.tablescroll_head th {
|
180 |
+
border-bottom: none !important;
|
181 |
+
padding: 2.48px !important;
|
182 |
+
}
|
183 |
+
}
|
184 |
+
table.ai1ec-week-view-original,
|
185 |
+
table.ai1ec-oneday-view-original {
|
186 |
+
&.tablescroll_body,
|
187 |
+
&.tablescroll_body tr:first-child td {
|
188 |
+
border-top: none !important;
|
189 |
+
}
|
190 |
+
}
|
191 |
+
.ai1ec-month-view,
|
192 |
+
.ai1ec-week-view,
|
193 |
+
.ai1ec-oneday-view {
|
194 |
+
td {
|
195 |
+
border: 1px solid @tableBorder !important;
|
196 |
+
background: none !important;
|
197 |
+
padding: 0 !important;
|
198 |
+
text-align: left;
|
199 |
+
vertical-align: top;
|
200 |
+
}
|
201 |
+
th {
|
202 |
+
border: none !important;
|
203 |
+
background: @tableLabelBackground !important;
|
204 |
+
padding: 0.2em !important;
|
205 |
+
}
|
206 |
+
}
|
207 |
+
.ai1ec-month-view td.ai1ec-empty {
|
208 |
+
background: @tableLabelBackground !important;
|
209 |
+
}
|
210 |
+
.ai1ec-month-view th,
|
211 |
+
.ai1ec-week-view th,
|
212 |
+
.ai1ec-week-view .ai1ec-hour-marker div,
|
213 |
+
.ai1ec-week-view .ai1ec-allday-label,
|
214 |
+
.ai1ec-oneday-view th,
|
215 |
+
.ai1ec-oneday-view .ai1ec-hour-marker div,
|
216 |
+
.ai1ec-oneday-view .ai1ec-allday-label {
|
217 |
+
color: @tableLabelText !important;
|
218 |
+
text-shadow: 0 1px 0 @textEmboss;
|
219 |
+
}
|
220 |
+
.ai1ec-month-view,
|
221 |
+
.ai1ec-oneday-view {
|
222 |
+
th {
|
223 |
+
text-align: center !important;
|
224 |
+
}
|
225 |
+
}
|
226 |
+
.ai1ec-week-view th {
|
227 |
+
text-align: left !important;
|
228 |
+
}
|
229 |
+
.ai1ec-week-view,
|
230 |
+
.ai1ec-oneday-view {
|
231 |
+
.ai1ec-day {
|
232 |
+
height: 1440px;
|
233 |
+
}
|
234 |
+
th .ai1ec-weekday-date {
|
235 |
+
font-size: 10.5pt !important;
|
236 |
+
font-weight: normal !important;
|
237 |
+
}
|
238 |
+
}
|
239 |
+
.ai1ec-week-view th .ai1ec-weekday-day {
|
240 |
+
font-size: 9pt !important;
|
241 |
+
font-weight: normal !important;
|
242 |
+
}
|
243 |
+
.ai1ec-month-view .ai1ec-day,
|
244 |
+
.ai1ec-week-view .ai1ec-day,
|
245 |
+
.ai1ec-week-view .ai1ec-allday-events,
|
246 |
+
.ai1ec-oneday-view .ai1ec-day,
|
247 |
+
.ai1ec-oneday-view .ai1ec-allday-events {
|
248 |
+
position: relative;
|
249 |
+
}
|
250 |
+
.ai1ec-month-view .ai1ec-day-stretcher {
|
251 |
+
float: left;
|
252 |
+
height: 94px;
|
253 |
+
width: 0;
|
254 |
+
}
|
255 |
+
.ai1ec-month-view,
|
256 |
+
.ai1ec-week-view {
|
257 |
+
.ai1ec-today {
|
258 |
+
background: @todayColor !important;
|
259 |
+
}
|
260 |
+
}
|
261 |
+
.ai1ec-month-view .ai1ec-date {
|
262 |
+
background: @monthViewDateBackground;
|
263 |
+
color: mix(@textColor, @monthViewDateBackground, 40%);
|
264 |
+
font-size: 10pt;
|
265 |
+
line-height: 13px;
|
266 |
+
height: 13px;
|
267 |
+
margin-bottom: 1px;
|
268 |
+
padding: 0 0.4em;
|
269 |
+
font-size: 8pt;
|
270 |
+
text-align: right;
|
271 |
+
text-shadow: 0 1px 0 @textEmboss;
|
272 |
+
}
|
273 |
+
|
274 |
+
// Week/day view time/"now" markers.
|
275 |
+
.ai1ec-week-view,
|
276 |
+
.ai1ec-oneday-view {
|
277 |
+
.ai1ec-grid-container {
|
278 |
+
position: absolute;
|
279 |
+
top: auto;
|
280 |
+
left: 0;
|
281 |
+
right: 0;
|
282 |
+
}
|
283 |
+
.ai1ec-now-marker,
|
284 |
+
.ai1ec-hour-marker,
|
285 |
+
.ai1ec-quarter-marker {
|
286 |
+
position: absolute;
|
287 |
+
left: 0;
|
288 |
+
right: 0;
|
289 |
+
padding-right: 8px;
|
290 |
+
}
|
291 |
+
.ai1ec-hour-marker {
|
292 |
+
border-top: 1px solid @tableBorder;
|
293 |
+
border-top: 1px solid fade(@tableBorder, 70%);
|
294 |
+
height: 60px;
|
295 |
+
background: fade(@tableBorder, 40%) !important;
|
296 |
+
&.ai1ec-business-hour {
|
297 |
+
background: none !important;
|
298 |
+
}
|
299 |
+
}
|
300 |
+
.ai1ec-hour-marker div,
|
301 |
+
.ai1ec-allday-label {
|
302 |
+
position: relative;
|
303 |
+
z-index: 2;
|
304 |
+
margin-left: 1px;
|
305 |
+
padding: 0 0.2em;
|
306 |
+
font-size: 8pt !important;
|
307 |
+
font-weight: normal !important;
|
308 |
+
background: @tableLabelBackground;
|
309 |
+
float: left;
|
310 |
+
.border-radius(0.3em);
|
311 |
+
}
|
312 |
+
.ai1ec-allday-label {
|
313 |
+
margin-top: 1px;
|
314 |
+
}
|
315 |
+
.ai1ec-quarter-marker {
|
316 |
+
border-top: 1px solid @tableBorder;
|
317 |
+
border-top: 1px solid fade(@tableBorder, 40%);
|
318 |
+
}
|
319 |
+
.ai1ec-now-marker {
|
320 |
+
border-top: 1px solid @dayViewNowMarkerColor;
|
321 |
+
border-bottom: 1px solid rgba(0, 0, 0, 0.15);
|
322 |
+
z-index: 2;
|
323 |
+
}
|
324 |
+
}
|
325 |
+
|
326 |
+
// Event summaries in month/week/day view, including popups.
|
327 |
+
.ai1ec-month-view,
|
328 |
+
.ai1ec-week-view,
|
329 |
+
.ai1ec-oneday-view {
|
330 |
+
a.ai1ec-event-container {
|
331 |
+
border: none !important;
|
332 |
+
color: @linkColor !important;
|
333 |
+
display: block;
|
334 |
+
font-size: 9pt;
|
335 |
+
text-decoration: none !important;
|
336 |
+
}
|
337 |
+
.ai1ec-event {
|
338 |
+
.border-radius(0.3em);
|
339 |
+
margin: 1px 0 0;
|
340 |
+
max-height: 100%;
|
341 |
+
overflow: hidden;
|
342 |
+
padding: 0 3px 1px;
|
343 |
+
white-space: nowrap;
|
344 |
+
}
|
345 |
+
.ai1ec-allday .ai1ec-event,
|
346 |
+
.ai1ec-multiday .ai1ec-event {
|
347 |
+
background-color: @linkColor;
|
348 |
+
color: @eventStubAllDayText !important;
|
349 |
+
}
|
350 |
+
.ai1ec-category-colors {
|
351 |
+
float: right;
|
352 |
+
font-size: 1.2em;
|
353 |
+
margin-top: 1px;
|
354 |
+
}
|
355 |
+
.ai1ec-event-popup,
|
356 |
+
.ai1ec-event-summary {
|
357 |
+
border: 2px solid @eventBorder;
|
358 |
+
.box-shadow(0 5px 10px rgba(0,0,0,.2));
|
359 |
+
background: @eventBackground;
|
360 |
+
}
|
361 |
+
.ai1ec-event-popup {
|
362 |
+
position: absolute;
|
363 |
+
z-index: 5;
|
364 |
+
display: none;
|
365 |
+
white-space: nowrap;
|
366 |
+
color: @eventText !important;
|
367 |
+
top: -5px;
|
368 |
+
left: -2px;
|
369 |
+
min-width: 100%;
|
370 |
+
.border-radius(0 0.3em 0.3em 0);
|
371 |
+
&.ai1ec-shifted-right {
|
372 |
+
.border-radius(0.3em 0 0 0.3em);
|
373 |
+
}
|
374 |
+
}
|
375 |
+
.ai1ec-event-popup-bg {
|
376 |
+
position: relative;
|
377 |
+
left: -2px;
|
378 |
+
margin-right: -1px;
|
379 |
+
padding: 2px 2px 2px 5px;
|
380 |
+
background: @eventBackground;
|
381 |
+
}
|
382 |
+
.ai1ec-shifted-right .ai1ec-event-popup-bg {
|
383 |
+
left: 1px;
|
384 |
+
padding: 2px 5px 2px 2px;
|
385 |
+
}
|
386 |
+
.ai1ec-event-summary,
|
387 |
+
.ai1ec-event-summary p {
|
388 |
+
font-size: 0.95em !important;
|
389 |
+
}
|
390 |
+
.ai1ec-event-summary {
|
391 |
+
.border-radius(0.3em 0 0.3em 0.3em);
|
392 |
+
color: @eventText;
|
393 |
+
#gradient > .vertical-three-colors(@eventBackground, @eventBackground, 1.5em, @eventBackgroundBottom); // !important needed, but not working here with lessc HEAD as of 2012-04-25
|
394 |
+
overflow: hidden;
|
395 |
+
padding: 2px 4px 3px;
|
396 |
+
position: absolute;
|
397 |
+
right: 100%;
|
398 |
+
top: -2px;
|
399 |
+
white-space: normal;
|
400 |
+
width: 13em;
|
401 |
+
}
|
402 |
+
.ai1ec-shifted-right .ai1ec-event-summary {
|
403 |
+
left: 100%;
|
404 |
+
.border-radius(0 0.3em 0.3em 0.3em);
|
405 |
+
}
|
406 |
+
.ai1ec-event-summary p {
|
407 |
+
margin: 0 0 0.3em !important;
|
408 |
+
padding: 0 !important;
|
409 |
+
}
|
410 |
+
.ai1ec-event-time {
|
411 |
+
font-size: 8pt;
|
412 |
+
font-weight: bold;
|
413 |
+
}
|
414 |
+
.ai1ec-read-more {
|
415 |
+
text-align: center;
|
416 |
+
font-size: 8pt;
|
417 |
+
color: mix(@eventText, @eventBackgroundBottom, 50%);
|
418 |
+
}
|
419 |
+
}
|
420 |
+
.ai1ec-month-view,
|
421 |
+
.ai1ec-week-view .ai1ec-allday-events,
|
422 |
+
.ai1ec-oneday-view .ai1ec-allday-events {
|
423 |
+
a.ai1ec-event-container {
|
424 |
+
position: relative;
|
425 |
+
}
|
426 |
+
}
|
427 |
+
.ai1ec-oneday-view {
|
428 |
+
a.ai1ec-event-container {
|
429 |
+
margin-right: 10px;
|
430 |
+
}
|
431 |
+
}
|
432 |
+
.ai1ec-oneday-view .ai1ec-allday-events a.ai1ec-event-container {
|
433 |
+
margin: 0 15px 0 50px;
|
434 |
+
}
|
435 |
+
.ai1ec-week-view .ai1ec-week,
|
436 |
+
.ai1ec-oneday-view .ai1ec-oneday {
|
437 |
+
a.ai1ec-event-container {
|
438 |
+
border: 2px solid mix(@eventDefaultColor, @eventBackground, 30%) !important;
|
439 |
+
.border-radius(0.3em);
|
440 |
+
.box-shadow(0 3px 6px rgba(0,0,0,0.2));
|
441 |
+
.box-sizing(border-box);
|
442 |
+
#gradient > .vertical(@eventBackground, mix(@eventDefaultColor, @eventBackground, 30%));
|
443 |
+
background-color: @eventBackground;
|
444 |
+
position: absolute;
|
445 |
+
right: 0;
|
446 |
+
}
|
447 |
+
}
|
448 |
+
.ai1ec-oneday-view .ai1ec-event-popup {
|
449 |
+
top: -3px;
|
450 |
+
min-width: 0;
|
451 |
+
right: 13em;
|
452 |
+
}
|
453 |
+
.ai1ec-week-view .ai1ec-week .ai1ec-event-popup {
|
454 |
+
top: -3px;
|
455 |
+
}
|
456 |
+
.ai1ec-oneday-view .ai1ec-oneday,
|
457 |
+
.ai1ec-week-view .ai1ec-week {
|
458 |
+
.ai1ec-event-title {
|
459 |
+
display: block;
|
460 |
+
white-space: normal;
|
461 |
+
font-size: 8pt !important;
|
462 |
+
}
|
463 |
+
}
|
464 |
+
|
465 |
+
// Month view multi-day bars and dropdowns.
|
466 |
+
.ai1ec-month-view {
|
467 |
+
.ai1ec-event {
|
468 |
+
height: 14px;
|
469 |
+
line-height: 14px;
|
470 |
+
margin: 0 0 1px;
|
471 |
+
}
|
472 |
+
.ai1ec-multiday {
|
473 |
+
position: absolute;
|
474 |
+
}
|
475 |
+
.ai1ec-multiday-arrow1 {
|
476 |
+
background: @eventDefaultColor;
|
477 |
+
border: 7px solid @bodyBackground;
|
478 |
+
border-left-color: @eventDefaultColor;
|
479 |
+
border-right-width: 0;
|
480 |
+
height: 1px;
|
481 |
+
position: absolute;
|
482 |
+
right: 0;
|
483 |
+
top: 0;
|
484 |
+
width: 0;
|
485 |
+
}
|
486 |
+
.ai1ec-multiday-arrow2 {
|
487 |
+
border: 7px solid @eventDefaultColor;
|
488 |
+
border-left-color: @bodyBackground;
|
489 |
+
border-right-width: 2px;
|
490 |
+
height: 1px;
|
491 |
+
left: 0;
|
492 |
+
position: absolute;
|
493 |
+
top: 0;
|
494 |
+
width: 0;
|
495 |
+
}
|
496 |
+
.ai1ec-multiday-bar {
|
497 |
+
background: @eventDefaultColor;
|
498 |
+
.border-radius(3px);
|
499 |
+
height: 15px;
|
500 |
+
left: 0;
|
501 |
+
position: absolute;
|
502 |
+
top: 0;
|
503 |
+
.ai1ec-event-title {
|
504 |
+
margin-left: 7px;
|
505 |
+
}
|
506 |
+
.ai1ec-event {
|
507 |
+
margin: 0;
|
508 |
+
}
|
509 |
+
.ai1ec-event-time {
|
510 |
+
display: none;
|
511 |
+
}
|
512 |
+
}
|
513 |
+
.ai1ec-event-dropdown {
|
514 |
+
background: #FFF;
|
515 |
+
border: 1px solid #E7E7E7;
|
516 |
+
border-top: 0;
|
517 |
+
left: -1px;
|
518 |
+
position: absolute;
|
519 |
+
top: 78px;
|
520 |
+
width: 90px;
|
521 |
+
z-index: 1000;
|
522 |
+
}
|
523 |
+
.ai1ec-obscured {
|
524 |
+
display: none !important;
|
525 |
+
}
|
526 |
+
a.ai1ec-scroll-up,
|
527 |
+
a.ai1ec-scroll-down {
|
528 |
+
border: 1px solid @tableBorder;
|
529 |
+
.border-radius(0.2em);
|
530 |
+
.box-sizing(border-box);
|
531 |
+
display: block;
|
532 |
+
left: 50%;
|
533 |
+
height: 16px;
|
534 |
+
line-height: 14px;
|
535 |
+
margin-left: -8px;
|
536 |
+
position: relative;
|
537 |
+
text-align: center;
|
538 |
+
text-decoration: none !important;
|
539 |
+
width: 16px;
|
540 |
+
&:hover {
|
541 |
+
background-color: @tableBorder;
|
542 |
+
}
|
543 |
+
&.ai1ec-disabled {
|
544 |
+
border: none;
|
545 |
+
cursor: default;
|
546 |
+
.opacity(20);
|
547 |
+
padding: 1px; // To compensate for height lost by invisible border.
|
548 |
+
&:hover {
|
549 |
+
background-color: transparent;
|
550 |
+
}
|
551 |
+
}
|
552 |
+
}
|
553 |
+
.ai1ec-event-popup .ai1ec-event-popup-allround {
|
554 |
+
border-radius: 0.3em;
|
555 |
+
.ai1ec-event-popup-bg {
|
556 |
+
left: 0;
|
557 |
+
margin-right: 2px;
|
558 |
+
padding: 2px;
|
559 |
+
}
|
560 |
+
.ai1ec-event-summary {
|
561 |
+
display: none;
|
562 |
+
}
|
563 |
+
}
|
564 |
+
}
|
565 |
+
|
566 |
+
// Truncated events.
|
567 |
+
.ai1ec-oneday-view,
|
568 |
+
.ai1ec-week-view {
|
569 |
+
.ai1ec-start-truncated .ai1ec-event-time {
|
570 |
+
display: none;
|
571 |
+
}
|
572 |
+
}
|
573 |
+
.ai1ec-oneday-view .ai1ec-oneday,
|
574 |
+
.ai1ec-week-view .ai1ec-week {
|
575 |
+
a.ai1ec-event-container {
|
576 |
+
&.ai1ec-start-truncated {
|
577 |
+
border-top-left-radius: 0;
|
578 |
+
border-top-right-radius: 0;
|
579 |
+
-moz-border-radius-topleft: 0;
|
580 |
+
-moz-border-radius-topright: 0;
|
581 |
+
-webkit-border-top-left-radius: 0;
|
582 |
+
-webkit-border-top-right-radius: 0;
|
583 |
+
}
|
584 |
+
&.ai1ec-end-truncated {
|
585 |
+
border-bottom-left-radius: 0;
|
586 |
+
border-bottom-right-radius: 0;
|
587 |
+
-moz-border-radius-bottomleft: 0;
|
588 |
+
-moz-border-radius-bottomright: 0;
|
589 |
+
-webkit-border-bottom-left-radius: 0;
|
590 |
+
-webkit-border-bottom-right-radius: 0;
|
591 |
+
}
|
592 |
+
}
|
593 |
+
.ai1ec-start-truncator,
|
594 |
+
.ai1ec-end-truncator {
|
595 |
+
position: absolute;
|
596 |
+
line-height: 1em;
|
597 |
+
font-size: 6pt;
|
598 |
+
}
|
599 |
+
.ai1ec-start-truncator {
|
600 |
+
top: -2px;
|
601 |
+
left: -2px;
|
602 |
+
}
|
603 |
+
.ai1ec-end-truncator {
|
604 |
+
bottom: -2px;
|
605 |
+
right: -2px;
|
606 |
+
}
|
607 |
+
}
|
608 |
+
|
609 |
+
// Agenda view.
|
610 |
+
.ai1ec-agenda-view {
|
611 |
+
clear: both;
|
612 |
+
overflow: hidden;
|
613 |
+
margin: 0 !important;
|
614 |
+
padding: 0 !important;
|
615 |
+
.ai1ec-no-results {
|
616 |
+
font-size: 10pt !important;
|
617 |
+
font-style: italic;
|
618 |
+
}
|
619 |
+
.ai1ec-date-events {
|
620 |
+
overflow: hidden;
|
621 |
+
margin: 0 0.75em 0 0 !important;
|
622 |
+
padding: 0 !important;
|
623 |
+
}
|
624 |
+
> li,
|
625 |
+
.ai1ec-date-events > li {
|
626 |
+
list-style: none !important;
|
627 |
+
}
|
628 |
+
.ai1ec-date {
|
629 |
+
border-top: 1px solid darken(@agendaDateBackground, 5%);
|
630 |
+
#gradient > .vertical-three-colors-replace(@agendaDateBackground, @agendaDateBackground, 1em, fade(@agendaDateBackground, 0%)); // !important needed, but not working here with lessc HEAD as of 2012-04-25
|
631 |
+
margin: 0 !important;
|
632 |
+
overflow: hidden;
|
633 |
+
padding: 0 !important;
|
634 |
+
}
|
635 |
+
.ai1ec-date.ai1ec-today {
|
636 |
+
border-top: 1px solid darken(@agendaTodayBackground, 5%);
|
637 |
+
#gradient > .vertical-three-colors-replace(@agendaTodayBackground, @agendaTodayBackground, 1em, fade(@agendaTodayBackground, 0%)); // !important needed, but not working here with lessc HEAD as of 2012-04-25
|
638 |
+
}
|
639 |
+
h3.ai1ec-date-title {
|
640 |
+
border: 2px solid @agendaDateTitleBorder;
|
641 |
+
.border-radius(0 0 5px 5px);
|
642 |
+
.box-shadow(0 2px 2px rgba(0,0,0,0.08));
|
643 |
+
color: mix(@textColor, @agendaDateTitleBackground, 85%);
|
644 |
+
float: left;
|
645 |
+
font-size: 10pt;
|
646 |
+
font-weight: normal;
|
647 |
+
#gradient > .vertical-three-colors(@agendaDateTitleBackground, @agendaDateTitleBackground, 1em, darken(@agendaDateTitleBackground, 12%));
|
648 |
+
line-height: 1.1em;
|
649 |
+
margin: 0 0.75em 0.5em !important;
|
650 |
+
text-align: center;
|
651 |
+
text-shadow: 0 1px 0 @textEmboss;
|
652 |
+
width: 4em;
|
653 |
+
}
|
654 |
+
.ai1ec-month {
|
655 |
+
color: @agendaDateTitleMonthText;
|
656 |
+
background: @agendaDateTitleBorder;
|
657 |
+
font-size: 0.8em !important;
|
658 |
+
letter-spacing: 0.2em;
|
659 |
+
padding: 0.1em;
|
660 |
+
text-transform: uppercase;
|
661 |
+
text-shadow: 0 -1px 0 rgba(0,0,0,0.25);
|
662 |
+
}
|
663 |
+
.ai1ec-day {
|
664 |
+
font-size: 2.2em !important;
|
665 |
+
padding: 0.3em 0 0.2em !important;
|
666 |
+
}
|
667 |
+
.ai1ec-weekday {
|
668 |
+
font-size: 0.8em !important;
|
669 |
+
line-height: 1.5em;
|
670 |
+
}
|
671 |
+
|
672 |
+
// Agenda view events.
|
673 |
+
.ai1ec-event {
|
674 |
+
position: relative;
|
675 |
+
clear: right;
|
676 |
+
overflow: hidden;
|
677 |
+
font-size: 10pt;
|
678 |
+
text-decoration: none;
|
679 |
+
padding: 0.1em 0.3em !important;
|
680 |
+
margin: 0.5em 0 !important;
|
681 |
+
background: @eventBackground !important;
|
682 |
+
border: 1px solid @eventBorder;
|
683 |
+
.border-radius(0.5em);
|
684 |
+
&.ai1ec-expanded {
|
685 |
+
border: 2px solid @eventBorder;
|
686 |
+
.box-shadow(1px 5px 8px rgba(0,0,0,0.08));
|
687 |
+
}
|
688 |
+
.ai1ec-event-click {
|
689 |
+
cursor: pointer;
|
690 |
+
line-height: 1.4em;
|
691 |
+
color: @eventDefaultColor;
|
692 |
+
text-shadow: 0 1px 0 @textEmboss;
|
693 |
+
&:hover > .ai1ec-event-expand {
|
694 |
+
visibility: visible;
|
695 |
+
}
|
696 |
+
}
|
697 |
+
.ai1ec-event-time {
|
698 |
+
float: left;
|
699 |
+
margin-right: 0.5em;
|
700 |
+
min-height: 1em;
|
701 |
+
font-weight: bold;
|
702 |
+
line-height: 1.4em;
|
703 |
+
}
|
704 |
+
.ai1ec-event-title {
|
705 |
+
margin: 0 0 0 8em;
|
706 |
+
font-size: 10pt;
|
707 |
+
font-weight: normal;
|
708 |
+
}
|
709 |
+
&:hover,
|
710 |
+
&.ai1ec-expanded:hover {
|
711 |
+
border-color: @eventBorderHover;
|
712 |
+
}
|
713 |
+
&:hover .ai1ec-event-click {
|
714 |
+
color: @eventDefaultColorHover;
|
715 |
+
}
|
716 |
+
&.ai1ec-allday {
|
717 |
+
padding: 0 !important;
|
718 |
+
.ai1ec-event-click {
|
719 |
+
color: @eventStubAllDayText;
|
720 |
+
background: @eventDefaultColor;
|
721 |
+
padding: 0.1em 0.4em;
|
722 |
+
.border-radius(0.3em);
|
723 |
+
text-shadow: none;
|
724 |
+
}
|
725 |
+
.ai1ec-event-time {
|
726 |
+
color: @eventStubAllDayText;
|
727 |
+
}
|
728 |
+
.ai1ec-event-title {
|
729 |
+
margin: 0;
|
730 |
+
}
|
731 |
+
&:hover .ai1ec-event-click {
|
732 |
+
color: @eventStubAllDayText;
|
733 |
+
background: @eventDefaultColorHover;
|
734 |
+
}
|
735 |
+
}
|
736 |
+
}
|
737 |
+
.ai1ec-allday-label {
|
738 |
+
font-size: 8pt;
|
739 |
+
color: fade(@eventStubAllDayText, 50%);
|
740 |
+
padding-left: 0.2em;
|
741 |
+
}
|
742 |
+
.ai1ec-event-expand {
|
743 |
+
float: right;
|
744 |
+
margin-left: 0.5em;
|
745 |
+
visibility: hidden;
|
746 |
+
font-size: 9pt;
|
747 |
+
}
|
748 |
+
.ai1ec-category-colors {
|
749 |
+
float: left;
|
750 |
+
font-size: 0.9em;
|
751 |
+
margin: 0.2em 0.2em -0.2em -0.1em;
|
752 |
+
.ai1ec-category-color {
|
753 |
+
padding: 1px;
|
754 |
+
}
|
755 |
+
}
|
756 |
+
|
757 |
+
// Agenda view expanded events.
|
758 |
+
.ai1ec-event-summary {
|
759 |
+
display: none;
|
760 |
+
.ai1ec-event-title {
|
761 |
+
margin: 0.1em 0;
|
762 |
+
font-size: 11pt;
|
763 |
+
line-height: 1.1em;
|
764 |
+
}
|
765 |
+
.ai1ec-event-time {
|
766 |
+
width: auto;
|
767 |
+
float: none;
|
768 |
+
font-size: 9pt;
|
769 |
+
line-height: 1.5em;
|
770 |
+
}
|
771 |
+
.ai1ec-event-click {
|
772 |
+
border-bottom: 1px solid @tableBorder;
|
773 |
+
margin-bottom: 0.4em;
|
774 |
+
padding: 0.5em 0.25em;
|
775 |
+
}
|
776 |
+
}
|
777 |
+
.ai1ec-allday .ai1ec-event-summary .ai1ec-event-click {
|
778 |
+
border-bottom: none;
|
779 |
+
.border-radius(0.3em 0.3em 0 0);
|
780 |
+
padding: 0.4em 0.6em;
|
781 |
+
}
|
782 |
+
.ai1ec-categories,
|
783 |
+
.ai1ec-tags {
|
784 |
+
font-size: 8pt;
|
785 |
+
}
|
786 |
+
.ai1ec-event-description,
|
787 |
+
.ai1ec-event-description p {
|
788 |
+
font-size: 9pt;
|
789 |
+
line-height: 1.5em;
|
790 |
+
}
|
791 |
+
.ai1ec-event-description {
|
792 |
+
clear: both;
|
793 |
+
overflow: hidden;
|
794 |
+
padding: 0 0.25em 3.6em;
|
795 |
+
max-height: 20em;
|
796 |
+
p {
|
797 |
+
margin: 0.5em 0 0.75em !important;
|
798 |
+
padding: 0 !important;
|
799 |
+
}
|
800 |
+
.ai1ec-label {
|
801 |
+
font-size: 8pt;
|
802 |
+
}
|
803 |
+
}
|
804 |
+
.ai1ec-allday .ai1ec-event-description {
|
805 |
+
position: relative;
|
806 |
+
overflow: hidden;
|
807 |
+
padding: 0 0.65em 3.5em;
|
808 |
+
}
|
809 |
+
|
810 |
+
// Agenda event overlay/read more.
|
811 |
+
.ai1ec-event-overlay {
|
812 |
+
position: absolute;
|
813 |
+
z-index: 5;
|
814 |
+
bottom: 0;
|
815 |
+
left: 0;
|
816 |
+
right: 0;
|
817 |
+
padding: 0.4em 0.5em;
|
818 |
+
.border-radius(0 0 0.5em 0.5em);
|
819 |
+
#gradient > .vertical-replace(fade(@eventBackground, 75%), @eventBackgroundBottom);
|
820 |
+
}
|
821 |
+
.ai1ec-read-more {
|
822 |
+
float: right;
|
823 |
+
margin: 0.6em 0 0.2em;
|
824 |
+
}
|
825 |
+
}
|
826 |
+
|
827 |
+
// Subscribe.
|
828 |
+
.ai1ec-subscribe {
|
829 |
+
clear: both;
|
830 |
+
}
|
831 |
+
.ai1ec-subscribe-filtered {
|
832 |
+
display: none;
|
833 |
+
}
|
834 |
+
// print icon
|
835 |
+
i.icon-print {
|
836 |
+
padding: 0 7px;
|
837 |
+
}
|
themes-ai1ec/vortex/less/dropdowns.less
ADDED
@@ -0,0 +1,148 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
// DROPDOWN MENUS
|
2 |
+
// --------------
|
3 |
+
|
4 |
+
// Use the .menu class on any <li> element within the topbar or ul.tabs and you'll get some superfancy dropdowns
|
5 |
+
.dropdown {
|
6 |
+
position: relative;
|
7 |
+
}
|
8 |
+
.dropdown-toggle {
|
9 |
+
// The caret makes the toggle a bit too tall in IE7
|
10 |
+
*margin-bottom: -3px;
|
11 |
+
}
|
12 |
+
.dropdown-toggle:active,
|
13 |
+
.open .dropdown-toggle {
|
14 |
+
outline: 0;
|
15 |
+
}
|
16 |
+
|
17 |
+
// Dropdown arrow/caret
|
18 |
+
// --------------------
|
19 |
+
.caret {
|
20 |
+
display: inline-block;
|
21 |
+
width: 0;
|
22 |
+
height: 0;
|
23 |
+
vertical-align: top;
|
24 |
+
border-left: 4px solid transparent;
|
25 |
+
border-right: 4px solid transparent;
|
26 |
+
border-top: 4px solid @black;
|
27 |
+
.opacity(30);
|
28 |
+
content: "";
|
29 |
+
}
|
30 |
+
|
31 |
+
// Place the caret
|
32 |
+
.dropdown .caret {
|
33 |
+
margin-top: 8px;
|
34 |
+
margin-left: 2px;
|
35 |
+
}
|
36 |
+
.dropdown:hover .caret,
|
37 |
+
.open.dropdown .caret {
|
38 |
+
.opacity(100);
|
39 |
+
}
|
40 |
+
|
41 |
+
// The dropdown menu (ul)
|
42 |
+
// ----------------------
|
43 |
+
.dropdown-menu {
|
44 |
+
position: absolute;
|
45 |
+
top: 100%;
|
46 |
+
left: 0;
|
47 |
+
z-index: @zindexDropdown;
|
48 |
+
float: left;
|
49 |
+
display: none; // none by default, but block on "open" of the menu
|
50 |
+
min-width: 160px;
|
51 |
+
padding: 4px 0;
|
52 |
+
margin: 0; // override default ul
|
53 |
+
list-style: none;
|
54 |
+
background-color: @dropdownBackground;
|
55 |
+
border-color: #ccc;
|
56 |
+
border-color: rgba(0,0,0,.2);
|
57 |
+
border-style: solid;
|
58 |
+
border-width: 1px;
|
59 |
+
.border-radius(0 0 5px 5px);
|
60 |
+
.box-shadow(0 5px 10px rgba(0,0,0,.2));
|
61 |
+
-webkit-background-clip: padding-box;
|
62 |
+
-moz-background-clip: padding;
|
63 |
+
background-clip: padding-box;
|
64 |
+
*border-right-width: 2px;
|
65 |
+
*border-bottom-width: 2px;
|
66 |
+
|
67 |
+
// Aligns the dropdown menu to right
|
68 |
+
&.pull-right {
|
69 |
+
right: 0;
|
70 |
+
left: auto;
|
71 |
+
}
|
72 |
+
|
73 |
+
// Dividers (basically an hr) within the dropdown
|
74 |
+
.divider {
|
75 |
+
.nav-divider();
|
76 |
+
}
|
77 |
+
|
78 |
+
// Links within the dropdown menu
|
79 |
+
a {
|
80 |
+
display: block;
|
81 |
+
padding: 3px 15px;
|
82 |
+
clear: both;
|
83 |
+
font-weight: normal;
|
84 |
+
line-height: @baseLineHeight;
|
85 |
+
color: @dropdownLinkColor;
|
86 |
+
white-space: nowrap;
|
87 |
+
}
|
88 |
+
}
|
89 |
+
|
90 |
+
// Hover state
|
91 |
+
// -----------
|
92 |
+
.dropdown-menu li > a:hover,
|
93 |
+
.dropdown-menu .active > a,
|
94 |
+
.dropdown-menu .active > a:hover {
|
95 |
+
color: @dropdownLinkColorHover;
|
96 |
+
text-decoration: none;
|
97 |
+
background-color: @dropdownLinkBackgroundHover;
|
98 |
+
}
|
99 |
+
|
100 |
+
// Open state for the dropdown
|
101 |
+
// ---------------------------
|
102 |
+
.dropdown.open {
|
103 |
+
// IE7's z-index only goes to the nearest positioned ancestor, which would
|
104 |
+
// make the menu appear below buttons that appeared later on the page
|
105 |
+
*z-index: @zindexDropdown;
|
106 |
+
|
107 |
+
.dropdown-toggle {
|
108 |
+
color: @white;
|
109 |
+
background: #ccc;
|
110 |
+
background: rgba(0,0,0,.3);
|
111 |
+
}
|
112 |
+
.dropdown-menu {
|
113 |
+
display: block;
|
114 |
+
}
|
115 |
+
}
|
116 |
+
|
117 |
+
// Right aligned dropdowns
|
118 |
+
.pull-right .dropdown-menu {
|
119 |
+
left: auto;
|
120 |
+
right: 0;
|
121 |
+
}
|
122 |
+
|
123 |
+
// Allow for dropdowns to go bottom up (aka, dropup-menu)
|
124 |
+
// ------------------------------------------------------
|
125 |
+
// Just add .dropup after the standard .dropdown class and you're set, bro.
|
126 |
+
// TODO: abstract this so that the navbar fixed styles are not placed here?
|
127 |
+
.dropup,
|
128 |
+
.navbar-fixed-bottom .dropdown {
|
129 |
+
// Reverse the caret
|
130 |
+
.caret {
|
131 |
+
border-top: 0;
|
132 |
+
border-bottom: 4px solid @black;
|
133 |
+
content: "\2191";
|
134 |
+
}
|
135 |
+
// Different positioning for bottom up menu
|
136 |
+
.dropdown-menu {
|
137 |
+
top: auto;
|
138 |
+
bottom: 100%;
|
139 |
+
margin-bottom: 1px;
|
140 |
+
}
|
141 |
+
}
|
142 |
+
|
143 |
+
// Typeahead
|
144 |
+
// ---------
|
145 |
+
.typeahead {
|
146 |
+
margin-top: 2px; // give it some space to breathe
|
147 |
+
.border-radius(4px);
|
148 |
+
}
|
themes-ai1ec/vortex/less/event.less
ADDED
@@ -0,0 +1,208 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/**
|
2 |
+
* @file
|
3 |
+
*
|
4 |
+
* Used for single and multiple event pages (not calendar views).
|
5 |
+
*/
|
6 |
+
|
7 |
+
// ======================
|
8 |
+
// = Variables & mixins =
|
9 |
+
// ======================
|
10 |
+
// Based on Bootstrap. Modify variables.less for custom colors, font-sizes, etc.
|
11 |
+
@import "variables.less";
|
12 |
+
@import "mixins.less";
|
13 |
+
@import "mixins-custom.less";
|
14 |
+
|
15 |
+
// ================
|
16 |
+
// = Events pages =
|
17 |
+
// ================
|
18 |
+
|
19 |
+
// Event header: General table attributes.
|
20 |
+
.ai1ec-full-event {
|
21 |
+
border: none !important;
|
22 |
+
border-collapse: collapse !important;
|
23 |
+
width: 100%;
|
24 |
+
margin-bottom: 0.5em !important;
|
25 |
+
td {
|
26 |
+
font-size: 10pt !important;
|
27 |
+
}
|
28 |
+
th,
|
29 |
+
td {
|
30 |
+
line-height: 14pt !important;
|
31 |
+
padding: 0.3em 0.5em !important;
|
32 |
+
border: none !important;
|
33 |
+
vertical-align: top;
|
34 |
+
}
|
35 |
+
th.ai1ec-empty,
|
36 |
+
td.ai1ec-empty {
|
37 |
+
padding: 0 !important;
|
38 |
+
}
|
39 |
+
th {
|
40 |
+
color: #888 !important;
|
41 |
+
font-size: 9pt !important;
|
42 |
+
font-family: sans-serif !important;
|
43 |
+
font-weight: bold;
|
44 |
+
#gradient > .horizontal-three-colors-replace(mix(@singleEventLabelBackground, fade(@singleEventLabelBackground, 0%), 40%), @singleEventLabelBackground, 90%, fade(@singleEventLabelBackground, 0%));
|
45 |
+
text-align: right;
|
46 |
+
text-shadow: 0 1px 0 @textEmboss;
|
47 |
+
width: 6em;
|
48 |
+
}
|
49 |
+
}
|
50 |
+
.ai1ec-multi-event {
|
51 |
+
th,
|
52 |
+
td {
|
53 |
+
padding: 0.3em 0.5em !important;
|
54 |
+
}
|
55 |
+
}
|
56 |
+
|
57 |
+
// Event time(s).
|
58 |
+
.ai1ec-full-event {
|
59 |
+
.ai1ec-time {
|
60 |
+
line-height: 16pt !important;
|
61 |
+
vertical-align: middle;
|
62 |
+
}
|
63 |
+
td.ai1ec-time {
|
64 |
+
font-weight: bold;
|
65 |
+
font-size: 11pt !important;
|
66 |
+
}
|
67 |
+
.ai1ec-allday-label {
|
68 |
+
font-size: 10pt !important;
|
69 |
+
color: fadeOut(@textColor, 50%);
|
70 |
+
padding-left: 0.2em;
|
71 |
+
}
|
72 |
+
}
|
73 |
+
.ai1ec-multi-event {
|
74 |
+
.ai1ec-time {
|
75 |
+
line-height: 15pt !important;
|
76 |
+
}
|
77 |
+
td.ai1ec-time {
|
78 |
+
font-size: 10pt !important;
|
79 |
+
}
|
80 |
+
.ai1ec-allday-label {
|
81 |
+
font-size: 9pt !important;
|
82 |
+
}
|
83 |
+
}
|
84 |
+
|
85 |
+
// Location & map.
|
86 |
+
.ai1ec-full-event {
|
87 |
+
td.ai1ec-location {
|
88 |
+
min-width: 30%;
|
89 |
+
}
|
90 |
+
td.ai1ec-map {
|
91 |
+
text-align: right;
|
92 |
+
}
|
93 |
+
td.ai1ec-map.ai1ec-has-map {
|
94 |
+
width: 55%;
|
95 |
+
text-align: left;
|
96 |
+
}
|
97 |
+
.ai1ec-gmap-container {
|
98 |
+
border: 1px solid @tableBorder;
|
99 |
+
.border-radius(4px);
|
100 |
+
margin-bottom: 0.3em;
|
101 |
+
position: relative;
|
102 |
+
}
|
103 |
+
#ai1ec-gmap-canvas {
|
104 |
+
min-width: 18em;
|
105 |
+
width: 100%;
|
106 |
+
height: 12em;
|
107 |
+
}
|
108 |
+
.ai1ec-gmap-link {
|
109 |
+
position: absolute;
|
110 |
+
margin: 0;
|
111 |
+
font-size: 0.8em !important;
|
112 |
+
bottom: -1px;
|
113 |
+
right: -1px;
|
114 |
+
}
|
115 |
+
#ai1ec-gmap-canvas input {
|
116 |
+
margin: 0 !important;
|
117 |
+
}
|
118 |
+
}
|
119 |
+
.ai1ec-multi-event .ai1ec-gmap-link {
|
120 |
+
font-size: 8pt !important;
|
121 |
+
margin: -0.2em 0;
|
122 |
+
}
|
123 |
+
.ai1ec-gmap-placeholder {
|
124 |
+
.border-radius(4px);
|
125 |
+
color: @linkColor;
|
126 |
+
cursor: pointer;
|
127 |
+
height: 12em;
|
128 |
+
border: 1px dashed @tableBorder;
|
129 |
+
min-width: 18em;
|
130 |
+
margin-bottom: 0.3em;
|
131 |
+
text-align: center;
|
132 |
+
width: 100%;
|
133 |
+
&:hover {
|
134 |
+
border-color: darken(@tableBorder, 15%);
|
135 |
+
color: @linkColorHover;
|
136 |
+
}
|
137 |
+
strong {
|
138 |
+
position: relative;
|
139 |
+
top: 45%;
|
140 |
+
}
|
141 |
+
}
|
142 |
+
.ai1ec-gmap-container-hidden {
|
143 |
+
position: absolute !important;
|
144 |
+
visibility: hidden;
|
145 |
+
}
|
146 |
+
|
147 |
+
// Contact info.
|
148 |
+
.ai1ec-full-event .ai1ec-contact a {
|
149 |
+
white-space: nowrap;
|
150 |
+
}
|
151 |
+
|
152 |
+
// Categories and tags.
|
153 |
+
.ai1ec-full-event {
|
154 |
+
td.ai1ec-tags,
|
155 |
+
td.ai1ec-categories {
|
156 |
+
padding: 0.1em 0.2em !important;
|
157 |
+
}
|
158 |
+
.ai1ec-category {
|
159 |
+
float: left;
|
160 |
+
}
|
161 |
+
}
|
162 |
+
.ai1ec-multi-event .ai1ec-category {
|
163 |
+
font-size: 8pt !important;
|
164 |
+
}
|
165 |
+
|
166 |
+
// Footer.
|
167 |
+
.ai1ec-event-footer {
|
168 |
+
clear: left;
|
169 |
+
font-size: 0.9em !important;
|
170 |
+
font-style: italic;
|
171 |
+
}
|
172 |
+
.ai1ec-ics-icon {
|
173 |
+
background: url(../img/ics-icon.png) no-repeat right;
|
174 |
+
padding-right: 15px;
|
175 |
+
}
|
176 |
+
|
177 |
+
// Excerpts.
|
178 |
+
.ai1ec-excerpt {
|
179 |
+
margin-bottom: 0.5em;
|
180 |
+
font-size: 10pt !important;
|
181 |
+
line-height: 1.6em;
|
182 |
+
overflow: hidden;
|
183 |
+
> div {
|
184 |
+
padding-left: 7.2em;
|
185 |
+
}
|
186 |
+
.ai1ec-label {
|
187 |
+
clear: left;
|
188 |
+
float: left;
|
189 |
+
#gradient > .horizontal-three-colors-replace(fade(@singleEventLabelBackground, 40%), @singleEventLabelBackground, 90%, fade(@singleEventLabelBackground, 0%));
|
190 |
+
margin-left: -7.2em;
|
191 |
+
padding: 0 0.6em !important;
|
192 |
+
text-align: right;
|
193 |
+
text-shadow: 0 1px 0 @textEmboss;
|
194 |
+
width: 6em;
|
195 |
+
}
|
196 |
+
.ai1ec-time {
|
197 |
+
font-weight: bold;
|
198 |
+
}
|
199 |
+
.ai1ec-event-link {
|
200 |
+
float: right;
|
201 |
+
font-size: 8pt !important;
|
202 |
+
}
|
203 |
+
.ai1ec-allday-label {
|
204 |
+
font-size: 9pt !important;
|
205 |
+
color: #bbb;
|
206 |
+
padding-left: 0.2em;
|
207 |
+
}
|
208 |
+
}
|
themes-ai1ec/vortex/less/font-awesome.less
ADDED
@@ -0,0 +1,264 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/* Font Awesome
|
2 |
+
the iconic font designed for use with Twitter Bootstrap
|
3 |
+
-------------------------------------------------------
|
4 |
+
The full suite of pictographic icons, examples, and documentation
|
5 |
+
can be found at: http://fortawesome.github.com/Font-Awesome/
|
6 |
+
|
7 |
+
License
|
8 |
+
-------------------------------------------------------
|
9 |
+
The Font Awesome webfont, CSS, and LESS files are licensed under CC BY 3.0:
|
10 |
+
http://creativecommons.org/licenses/by/3.0/ A mention of
|
11 |
+
'Font Awesome - http://fortawesome.github.com/Font-Awesome' in human-readable
|
12 |
+
source code is considered acceptable attribution (most common on the web).
|
13 |
+
If human readable source code is not available to the end user, a mention in
|
14 |
+
an 'About' or 'Credits' screen is considered acceptable (most common in desktop
|
15 |
+
or mobile software).
|
16 |
+
|
17 |
+
Contact
|
18 |
+
-------------------------------------------------------
|
19 |
+
Email: dave@davegandy.com
|
20 |
+
Twitter: http://twitter.com/fortaweso_me
|
21 |
+
Work: http://lemonwi.se co-founder
|
22 |
+
|
23 |
+
*/
|
24 |
+
|
25 |
+
@font-face {
|
26 |
+
font-family: 'FontAwesome';
|
27 |
+
src: url('../font/fontawesome-webfont.eot');
|
28 |
+
src: url('../font/fontawesome-webfont.eot?#iefix') format('embedded-opentype'),
|
29 |
+
url('../font/fontawesome-webfont.woff') format('woff'),
|
30 |
+
url('../font/fontawesome-webfont.ttf') format('truetype'),
|
31 |
+
url('../font/fontawesome-webfont.svgz#FontAwesomeRegular') format('svg'),
|
32 |
+
url('../font/fontawesome-webfont.svg#FontAwesomeRegular') format('svg');
|
33 |
+
font-weight: normal;
|
34 |
+
font-style: normal;
|
35 |
+
}
|
36 |
+
|
37 |
+
/* sprites.less reset */
|
38 |
+
[class^="icon-"],
|
39 |
+
[class*=" icon-"] {
|
40 |
+
display: inline;
|
41 |
+
width: auto;
|
42 |
+
height: auto;
|
43 |
+
line-height: inherit;
|
44 |
+
vertical-align: baseline;
|
45 |
+
background-image: none;
|
46 |
+
background-position: 0% 0%;
|
47 |
+
background-repeat: repeat;
|
48 |
+
}
|
49 |
+
li[class^="icon-"],
|
50 |
+
li[class*=" icon-"] {
|
51 |
+
display: block;
|
52 |
+
}
|
53 |
+
|
54 |
+
/* Font Awesome styles
|
55 |
+
------------------------------------------------------- */
|
56 |
+
[class^="icon-"]:before,
|
57 |
+
[class*=" icon-"]:before {
|
58 |
+
font-family: FontAwesome;
|
59 |
+
font-weight: normal;
|
60 |
+
font-style: normal;
|
61 |
+
display: inline-block;
|
62 |
+
text-decoration: inherit;
|
63 |
+
}
|
64 |
+
|
65 |
+
a [class^="icon-"],
|
66 |
+
a [class*=" icon-"] {
|
67 |
+
display: inline-block;
|
68 |
+
text-decoration: inherit;
|
69 |
+
}
|
70 |
+
|
71 |
+
/* makes the font 33% larger relative to the icon container */
|
72 |
+
.icon-large:before {
|
73 |
+
vertical-align: top;
|
74 |
+
font-size: 4/3em;
|
75 |
+
}
|
76 |
+
|
77 |
+
.btn {
|
78 |
+
[class^="icon-"],
|
79 |
+
[class*=" icon-"] {
|
80 |
+
/* keeps button heights with and without icons the same */
|
81 |
+
line-height: .9em;
|
82 |
+
}
|
83 |
+
}
|
84 |
+
|
85 |
+
li {
|
86 |
+
[class^="icon-"],
|
87 |
+
[class*=" icon-"] {
|
88 |
+
display: inline-block;
|
89 |
+
width: 1.25em;
|
90 |
+
text-align: center;
|
91 |
+
}
|
92 |
+
.icon-large[class^="icon-"],
|
93 |
+
.icon-large[class*=" icon-"] {
|
94 |
+
/* 1.5 increased font size for icon-large * 1.25 width */
|
95 |
+
width: 1.5*1.25em;
|
96 |
+
}
|
97 |
+
}
|
98 |
+
|
99 |
+
li[class^="icon-"],
|
100 |
+
li[class*=" icon-"] {
|
101 |
+
margin-left: 0;
|
102 |
+
list-style-type: none;
|
103 |
+
|
104 |
+
&:before {
|
105 |
+
text-indent: -2em;
|
106 |
+
text-align: center;
|
107 |
+
}
|
108 |
+
&.icon-large:before {
|
109 |
+
text-indent: -4/3em;
|
110 |
+
}
|
111 |
+
}
|
112 |
+
|
113 |
+
/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
|
114 |
+
readers do not read off random characters that represent icons */
|
115 |
+
.icon-glass:before { content: "\f000"; }
|
116 |
+
.icon-music:before { content: "\f001"; }
|
117 |
+
.icon-search:before { content: "\f002"; }
|
118 |
+
.icon-envelope:before { content: "\f003"; }
|
119 |
+
.icon-heart:before { content: "\f004"; }
|
120 |
+
.icon-star:before { content: "\f005"; }
|
121 |
+
.icon-star-empty:before { content: "\f006"; }
|
122 |
+
.icon-user:before { content: "\f007"; }
|
123 |
+
.icon-film:before { content: "\f008"; }
|
124 |
+
.icon-th-large:before { content: "\f009"; }
|
125 |
+
.icon-th:before { content: "\f00a"; }
|
126 |
+
.icon-th-list:before { content: "\f00b"; }
|
127 |
+
.icon-ok:before { content: "\f00c"; }
|
128 |
+
.icon-remove:before { content: "\f00d"; }
|
129 |
+
.icon-zoom-in:before { content: "\f00e"; }
|
130 |
+
|
131 |
+
.icon-zoom-out:before { content: "\f010"; }
|
132 |
+
.icon-off:before { content: "\f011"; }
|
133 |
+
.icon-signal:before { content: "\f012"; }
|
134 |
+
.icon-cog:before { content: "\f013"; }
|
135 |
+
.icon-trash:before { content: "\f014"; }
|
136 |
+
.icon-home:before { content: "\f015"; }
|
137 |
+
.icon-file:before { content: "\f016"; }
|
138 |
+
.icon-time:before { content: "\f017"; }
|
139 |
+
.icon-road:before { content: "\f018"; }
|
140 |
+
.icon-download-alt:before { content: "\f019"; }
|
141 |
+
.icon-download:before { content: "\f01a"; }
|
142 |
+
.icon-upload:before { content: "\f01b"; }
|
143 |
+
.icon-inbox:before { content: "\f01c"; }
|
144 |
+
.icon-play-circle:before { content: "\f01d"; }
|
145 |
+
.icon-repeat:before { content: "\f01e"; }
|
146 |
+
|
147 |
+
/* \f020 is not a valid unicode character. all shifted one down */
|
148 |
+
.icon-refresh:before { content: "\f021"; }
|
149 |
+
.icon-list-alt:before { content: "\f022"; }
|
150 |
+
.icon-lock:before { content: "\f023"; }
|
151 |
+
.icon-flag:before { content: "\f024"; }
|
152 |
+
.icon-headphones:before { content: "\f025"; }
|
153 |
+
.icon-volume-off:before { content: "\f026"; }
|
154 |
+
.icon-volume-down:before { content: "\f027"; }
|
155 |
+
.icon-volume-up:before { content: "\f028"; }
|
156 |
+
.icon-qrcode:before { content: "\f029"; }
|
157 |
+
.icon-barcode:before { content: "\f02a"; }
|
158 |
+
.icon-tag:before { content: "\f02b"; }
|
159 |
+
.icon-tags:before { content: "\f02c"; }
|
160 |
+
.icon-book:before { content: "\f02d"; }
|
161 |
+
.icon-bookmark:before { content: "\f02e"; }
|
162 |
+
.icon-print:before { content: "\f02f"; }
|
163 |
+
|
164 |
+
.icon-camera:before { content: "\f030"; }
|
165 |
+
.icon-font:before { content: "\f031"; }
|
166 |
+
.icon-bold:before { content: "\f032"; }
|
167 |
+
.icon-italic:before { content: "\f033"; }
|
168 |
+
.icon-text-height:before { content: "\f034"; }
|
169 |
+
.icon-text-width:before { content: "\f035"; }
|
170 |
+
.icon-align-left:before { content: "\f036"; }
|
171 |
+
.icon-align-center:before { content: "\f037"; }
|
172 |
+
.icon-align-right:before { content: "\f038"; }
|
173 |
+
.icon-align-justify:before { content: "\f039"; }
|
174 |
+
.icon-list:before { content: "\f03a"; }
|
175 |
+
.icon-indent-left:before { content: "\f03b"; }
|
176 |
+
.icon-indent-right:before { content: "\f03c"; }
|
177 |
+
.icon-facetime-video:before { content: "\f03d"; }
|
178 |
+
.icon-picture:before { content: "\f03e"; }
|
179 |
+
|
180 |
+
.icon-pencil:before { content: "\f040"; }
|
181 |
+
.icon-map-marker:before { content: "\f041"; }
|
182 |
+
.icon-adjust:before { content: "\f042"; }
|
183 |
+
.icon-tint:before { content: "\f043"; }
|
184 |
+
.icon-edit:before { content: "\f044"; }
|
185 |
+
.icon-share:before { content: "\f045"; }
|
186 |
+
.icon-check:before { content: "\f046"; }
|
187 |
+
.icon-move:before { content: "\f047"; }
|
188 |
+
.icon-step-backward:before { content: "\f048"; }
|
189 |
+
.icon-fast-backward:before { content: "\f049"; }
|
190 |
+
.icon-backward:before { content: "\f04a"; }
|
191 |
+
.icon-play:before { content: "\f04b"; }
|
192 |
+
.icon-pause:before { content: "\f04c"; }
|
193 |
+
.icon-stop:before { content: "\f04d"; }
|
194 |
+
.icon-forward:before { content: "\f04e"; }
|
195 |
+
|
196 |
+
.icon-fast-forward:before { content: "\f050"; }
|
197 |
+
.icon-step-forward:before { content: "\f051"; }
|
198 |
+
.icon-eject:before { content: "\f052"; }
|
199 |
+
.icon-chevron-left:before { content: "\f053"; }
|
200 |
+
.icon-chevron-right:before { content: "\f054"; }
|
201 |
+
.icon-plus-sign:before { content: "\f055"; }
|
202 |
+
.icon-minus-sign:before { content: "\f056"; }
|
203 |
+
.icon-remove-sign:before { content: "\f057"; }
|
204 |
+
.icon-ok-sign:before { content: "\f058"; }
|
205 |
+
.icon-question-sign:before { content: "\f059"; }
|
206 |
+
.icon-info-sign:before { content: "\f05a"; }
|
207 |
+
.icon-screenshot:before { content: "\f05b"; }
|
208 |
+
.icon-remove-circle:before { content: "\f05c"; }
|
209 |
+
.icon-ok-circle:before { content: "\f05d"; }
|
210 |
+
.icon-ban-circle:before { content: "\f05e"; }
|
211 |
+
|
212 |
+
.icon-arrow-left:before { content: "\f060"; }
|
213 |
+
.icon-arrow-right:before { content: "\f061"; }
|
214 |
+
.icon-arrow-up:before { content: "\f062"; }
|
215 |
+
.icon-arrow-down:before { content: "\f063"; }
|
216 |
+
.icon-share-alt:before { content: "\f064"; }
|
217 |
+
.icon-resize-full:before { content: "\f065"; }
|
218 |
+
.icon-resize-small:before { content: "\f066"; }
|
219 |
+
.icon-plus:before { content: "\f067"; }
|
220 |
+
.icon-minus:before { content: "\f068"; }
|
221 |
+
.icon-asterisk:before { content: "\f069"; }
|
222 |
+
.icon-exclamation-sign:before { content: "\f06a"; }
|
223 |
+
.icon-gift:before { content: "\f06b"; }
|
224 |
+
.icon-leaf:before { content: "\f06c"; }
|
225 |
+
.icon-fire:before { content: "\f06d"; }
|
226 |
+
.icon-eye-open:before { content: "\f06e"; }
|
227 |
+
|
228 |
+
.icon-eye-close:before { content: "\f070"; }
|
229 |
+
.icon-warning-sign:before { content: "\f071"; }
|
230 |
+
.icon-plane:before { content: "\f072"; }
|
231 |
+
.icon-calendar:before { content: "\f073"; }
|
232 |
+
.icon-random:before { content: "\f074"; }
|
233 |
+
.icon-comment:before { content: "\f075"; }
|
234 |
+
.icon-magnet:before { content: "\f076"; }
|
235 |
+
.icon-chevron-up:before { content: "\f077"; }
|
236 |
+
.icon-chevron-down:before { content: "\f078"; }
|
237 |
+
.icon-retweet:before { content: "\f079"; }
|
238 |
+
.icon-shopping-cart:before { content: "\f07a"; }
|
239 |
+
.icon-folder-close:before { content: "\f07b"; }
|
240 |
+
.icon-folder-open:before { content: "\f07c"; }
|
241 |
+
.icon-resize-vertical:before { content: "\f07d"; }
|
242 |
+
.icon-resize-horizontal:before { content: "\f07e"; }
|
243 |
+
|
244 |
+
.icon-bar-chart:before { content: "\f080"; }
|
245 |
+
.icon-twitter-sign:before { content: "\f081"; }
|
246 |
+
.icon-facebook-sign:before { content: "\f082"; }
|
247 |
+
.icon-camera-retro:before { content: "\f083"; }
|
248 |
+
.icon-key:before { content: "\f084"; }
|
249 |
+
.icon-cogs:before { content: "\f085"; }
|
250 |
+
.icon-comments:before { content: "\f086"; }
|
251 |
+
.icon-thumbs-up:before { content: "\f087"; }
|
252 |
+
.icon-thumbs-down:before { content: "\f088"; }
|
253 |
+
.icon-star-half:before { content: "\f089"; }
|
254 |
+
.icon-heart-empty:before { content: "\f08a"; }
|
255 |
+
.icon-signout:before { content: "\f08b"; }
|
256 |
+
.icon-linkedin-sign:before { content: "\f08c"; }
|
257 |
+
.icon-pushpin:before { content: "\f08d"; }
|
258 |
+
.icon-external-link:before { content: "\f08e"; }
|
259 |
+
|
260 |
+
.icon-signin:before { content: "\f090"; }
|
261 |
+
.icon-trophy:before { content: "\f091"; }
|
262 |
+
.icon-github-sign:before { content: "\f092"; }
|
263 |
+
.icon-upload-alt:before { content: "\f093"; }
|
264 |
+
.icon-lemon:before { content: "\f094"; }
|
themes-ai1ec/vortex/less/general.less
ADDED
@@ -0,0 +1,313 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/**
|
2 |
+
* @file
|
3 |
+
*
|
4 |
+
* CSS declarations for all parts of a WordPress site in which the All-in-One
|
5 |
+
* Calendar plugin is active. Mostly the bare minimum required for proper
|
6 |
+
* styling of widgets.
|
7 |
+
*/
|
8 |
+
|
9 |
+
// ======================
|
10 |
+
// = Variables & mixins =
|
11 |
+
// ======================
|
12 |
+
// Based on Bootstrap. Modify variables.less for custom colors, font-sizes, etc.
|
13 |
+
@import "variables.less";
|
14 |
+
@import "mixins.less";
|
15 |
+
@import "mixins-custom.less";
|
16 |
+
|
17 |
+
// ================
|
18 |
+
// = Custom fonts =
|
19 |
+
// ================
|
20 |
+
@import "font-awesome.less";
|
21 |
+
|
22 |
+
// ========================
|
23 |
+
// = Bootstrap components =
|
24 |
+
// ========================
|
25 |
+
// We prefix these with .thenly so that non-calendar parts of site remain
|
26 |
+
// unaffected by Bootstrap.
|
27 |
+
.thenly {
|
28 |
+
// CSS Reset
|
29 |
+
@import "reset.less";
|
30 |
+
|
31 |
+
// Page structure & base CSS.
|
32 |
+
@import "scaffolding.less";
|
33 |
+
@import "type.less";
|
34 |
+
|
35 |
+
// Components.
|
36 |
+
@import "dropdowns.less";
|
37 |
+
@import "buttons.less";
|
38 |
+
@import "button-groups.less";
|
39 |
+
|
40 |
+
// Utility classes.
|
41 |
+
@import "utilities.less";
|
42 |
+
|
43 |
+
// =========================
|
44 |
+
// = Bootstrap adjustments =
|
45 |
+
// =========================
|
46 |
+
|
47 |
+
// Copied from scaffolding body reset; needed to apply to .thenly, not body.
|
48 |
+
margin: 0;
|
49 |
+
font-family: @baseFontFamily;
|
50 |
+
font-size: @baseFontSize;
|
51 |
+
line-height: @baseLineHeight;
|
52 |
+
color: @textColor;
|
53 |
+
background-color: @bodyBackground;
|
54 |
+
|
55 |
+
// Tweaks to info-styled buttons.
|
56 |
+
.btn-info,
|
57 |
+
.btn-info:hover,
|
58 |
+
.btn-info:active,
|
59 |
+
.btn-info.active,
|
60 |
+
.btn-info.active:hover {
|
61 |
+
color: @textColor;
|
62 |
+
text-shadow: 0 1px 1px rgba(255,255,255,.75);
|
63 |
+
}
|
64 |
+
|
65 |
+
// Align mini toolbar buttons properly.
|
66 |
+
.btn-toolbar .btn.btn-mini {
|
67 |
+
top: 5px;
|
68 |
+
}
|
69 |
+
|
70 |
+
// Reset some elements that are aggressively styled by poorly written themes.
|
71 |
+
ul.dropdown-menu li {
|
72 |
+
list-style-type: none !important;
|
73 |
+
}
|
74 |
+
small {
|
75 |
+
margin: 0 !important;
|
76 |
+
}
|
77 |
+
tr {
|
78 |
+
background: none !important;
|
79 |
+
}
|
80 |
+
}
|
81 |
+
|
82 |
+
// Tooltip styling needs to be outside of .thenly since tooltips are created
|
83 |
+
// dynamically in the document root (which is not within the .thenly container).
|
84 |
+
@import "tooltip.less";
|
85 |
+
|
86 |
+
// ==============================
|
87 |
+
// = AI1EC General declarations =
|
88 |
+
// ==============================
|
89 |
+
|
90 |
+
// General AJAX.
|
91 |
+
.ai1ec-loading {
|
92 |
+
position: absolute;
|
93 |
+
z-index: 9;
|
94 |
+
top: 0;
|
95 |
+
left: 0;
|
96 |
+
width: 100%;
|
97 |
+
height: 100%;
|
98 |
+
background: url(../img/ajax-loader.gif) no-repeat center center;
|
99 |
+
display: none;
|
100 |
+
}
|
101 |
+
|
102 |
+
// Label styling.
|
103 |
+
.ai1ec-label {
|
104 |
+
padding: 0 0.2em;
|
105 |
+
font-size: 9pt;
|
106 |
+
font-weight: bold;
|
107 |
+
color: @labelColor !important;
|
108 |
+
}
|
109 |
+
|
110 |
+
// ==============
|
111 |
+
// = Categories =
|
112 |
+
// ==============
|
113 |
+
.ai1ec-category {
|
114 |
+
cursor: pointer;
|
115 |
+
font-size: 0.9em;
|
116 |
+
border: 1px solid @categoryBorder;
|
117 |
+
text-shadow: 0 1px 0 @textEmboss;
|
118 |
+
padding: 2pt 3pt !important;
|
119 |
+
margin: 0.2em !important;
|
120 |
+
text-decoration: none !important;
|
121 |
+
text-transform: uppercase;
|
122 |
+
letter-spacing: 1pt;
|
123 |
+
white-space: nowrap;
|
124 |
+
color: mix(@textColor, @categoryBackground, 60%) !important;
|
125 |
+
background: @categoryBackground;
|
126 |
+
border-radius: 0.3em;
|
127 |
+
-moz-border-radius: 0.3em;
|
128 |
+
-webkit-border-radius: 0.3em;
|
129 |
+
&:hover {
|
130 |
+
color: @textColor !important;
|
131 |
+
background: @categoryBackgroundHover;
|
132 |
+
}
|
133 |
+
&.ai1ec-selected {
|
134 |
+
background: @categoryActiveBackground;
|
135 |
+
border-color: @categoryActiveBorder;
|
136 |
+
color: mix(@textColor, @categoryActiveBackground, 60%) !important;
|
137 |
+
&:hover {
|
138 |
+
background: @categoryActiveBackgroundHover;
|
139 |
+
color: @textColor !important;
|
140 |
+
}
|
141 |
+
}
|
142 |
+
}
|
143 |
+
|
144 |
+
// Category colors.
|
145 |
+
.ai1ec-category-color {
|
146 |
+
.border-radius(0.2em);
|
147 |
+
.box-shadow(~"inset 0 1px 0 rgba(255,255,255,0.25), inset 0 -1px 2px rgba(0,0,0,0.5)");
|
148 |
+
display: inline-block;
|
149 |
+
height: 0.9em;
|
150 |
+
margin: 0 1px;
|
151 |
+
width: 0.9em;
|
152 |
+
}
|
153 |
+
|
154 |
+
// ========
|
155 |
+
// = Tags =
|
156 |
+
// ========
|
157 |
+
.ai1ec-tag {
|
158 |
+
color: @linkColor !important;
|
159 |
+
line-height: 1.3em;
|
160 |
+
cursor: pointer;
|
161 |
+
white-space: nowrap;
|
162 |
+
margin: 0.1em 0.2em;
|
163 |
+
padding: 0.1em 0.2em;
|
164 |
+
.border-radius(0.3em);
|
165 |
+
display: inline-block;
|
166 |
+
&:hover {
|
167 |
+
color: @linkColorHover !important;
|
168 |
+
text-decoration: none;
|
169 |
+
}
|
170 |
+
&.ai1ec-selected {
|
171 |
+
background: @tagActiveBackground;
|
172 |
+
}
|
173 |
+
}
|
174 |
+
|
175 |
+
// =====================
|
176 |
+
// = Subscribe buttons =
|
177 |
+
// =====================
|
178 |
+
.ai1ec-subscribe-google img {
|
179 |
+
background: none !important;
|
180 |
+
border: none !important;
|
181 |
+
float: left;
|
182 |
+
height: 32px !important;
|
183 |
+
margin: -8px 0.5em -10px 0 !important;
|
184 |
+
padding: 0 !important;
|
185 |
+
width: 30px !important;
|
186 |
+
}
|
187 |
+
|
188 |
+
// ======================
|
189 |
+
// = Agenda widget view =
|
190 |
+
// ======================
|
191 |
+
.ai1ec-agenda-widget-view {
|
192 |
+
font-size: 0.8em !important;
|
193 |
+
overflow: hidden;
|
194 |
+
div {
|
195 |
+
margin: 0;
|
196 |
+
}
|
197 |
+
.ai1ec-no-results {
|
198 |
+
font-style: italic;
|
199 |
+
font-size: 1.4em !important;
|
200 |
+
}
|
201 |
+
> ol {
|
202 |
+
margin: 0 !important;
|
203 |
+
padding: 0 !important;
|
204 |
+
}
|
205 |
+
li {
|
206 |
+
list-style: none !important;
|
207 |
+
border: none !important;
|
208 |
+
}
|
209 |
+
.ai1ec-date-events {
|
210 |
+
overflow: hidden;
|
211 |
+
margin: 0 0.5em 0 0 !important;
|
212 |
+
padding: 0 !important;
|
213 |
+
}
|
214 |
+
.ai1ec-date {
|
215 |
+
border-top: 1px solid darken(@agendaDateBackground, 5%) !important;
|
216 |
+
#gradient > .vertical-three-colors-replace(@agendaDateBackground, @agendaDateBackground, 1em, fade(@agendaDateBackground, 0%));
|
217 |
+
margin: 0 !important;
|
218 |
+
overflow: hidden;
|
219 |
+
padding: 0 !important;
|
220 |
+
}
|
221 |
+
.ai1ec-date.ai1ec-today {
|
222 |
+
border-top: 1px solid darken(@agendaTodayBackground, 5%) !important;
|
223 |
+
#gradient > .vertical-three-colors-replace(@agendaTodayBackground, @agendaTodayBackground, 1em, fade(@agendaTodayBackground, 0%));
|
224 |
+
}
|
225 |
+
h3.ai1ec-date-title {
|
226 |
+
border: 2px solid @agendaDateTitleBorder;
|
227 |
+
.border-radius(0 0 0.5em 0.5em);
|
228 |
+
.box-shadow(0 2px 2px rgba(0,0,0,0.08));
|
229 |
+
color: mix(@textColor, @agendaDateTitleBackground, 85%);
|
230 |
+
float: left;
|
231 |
+
font-size: 1em;
|
232 |
+
font-weight: normal;
|
233 |
+
#gradient > .vertical-three-colors(@agendaDateTitleBackground, @agendaDateTitleBackground, 1em, darken(@agendaDateTitleBackground, 12%));
|
234 |
+
line-height: 1.1em;
|
235 |
+
margin: 0 0.5em 0.5em !important;
|
236 |
+
padding: 0 !important;
|
237 |
+
text-align: center;
|
238 |
+
text-shadow: 0 1px 0 @textEmboss;
|
239 |
+
width: 3.5em;
|
240 |
+
}
|
241 |
+
.ai1ec-month {
|
242 |
+
text-shadow: 0 -1px 0 rgba(0,0,0,0.25);
|
243 |
+
background: @agendaDateTitleBorder;
|
244 |
+
font-size: 0.9em !important;
|
245 |
+
padding: 0.1em 0 0.2em;
|
246 |
+
text-transform: uppercase;
|
247 |
+
letter-spacing: 0.2em;
|
248 |
+
color: @agendaDateTitleMonthText;
|
249 |
+
}
|
250 |
+
.ai1ec-day {
|
251 |
+
font-size: 1.7em !important;
|
252 |
+
padding: 0.3em 0 0.2em !important;
|
253 |
+
}
|
254 |
+
.ai1ec-weekday {
|
255 |
+
font-size: 0.9em !important;
|
256 |
+
line-height: 1.5em;
|
257 |
+
}
|
258 |
+
|
259 |
+
// Agenda widget view events.
|
260 |
+
.ai1ec-event {
|
261 |
+
clear: right;
|
262 |
+
font-size: 1.2em;
|
263 |
+
line-height: 1.3em;
|
264 |
+
margin: 0.5em 0 !important;
|
265 |
+
overflow: hidden;
|
266 |
+
padding: 0 !important;
|
267 |
+
position: relative;
|
268 |
+
a {
|
269 |
+
color: @eventDefaultColor;
|
270 |
+
display: block;
|
271 |
+
background: @eventBackground;
|
272 |
+
border: 1px solid @eventBorder;
|
273 |
+
.border-radius(0.4em);
|
274 |
+
padding: 0.2em 0.4em !important;
|
275 |
+
text-decoration: none !important;
|
276 |
+
&:hover {
|
277 |
+
border-color: @eventBorderHover;
|
278 |
+
color: @eventDefaultColorHover;
|
279 |
+
text-decoration: none !important;
|
280 |
+
}
|
281 |
+
}
|
282 |
+
.ai1ec-event-time {
|
283 |
+
font-weight: bold;
|
284 |
+
}
|
285 |
+
.ai1ec-event-title {
|
286 |
+
font-weight: normal;
|
287 |
+
}
|
288 |
+
&.ai1ec-allday a {
|
289 |
+
background: @eventDefaultColor;
|
290 |
+
border: 1px solid transparent;
|
291 |
+
color: @eventStubAllDayText;
|
292 |
+
&:hover {
|
293 |
+
background: @eventDefaultColorHover;
|
294 |
+
}
|
295 |
+
.ai1ec-event-time {
|
296 |
+
color: @eventStubAllDayText;
|
297 |
+
}
|
298 |
+
}
|
299 |
+
.ai1ec-category-colors {
|
300 |
+
font-size: 0.9em;
|
301 |
+
.ai1ec-category-color {
|
302 |
+
margin: 0 0 -0.1em;
|
303 |
+
padding: 1px;
|
304 |
+
}
|
305 |
+
}
|
306 |
+
}
|
307 |
+
// Widget view buttons.
|
308 |
+
.ai1ec-subscribe-google img {
|
309 |
+
width: 19px !important;
|
310 |
+
height: 20px !important;
|
311 |
+
margin: -5px 0.5em -5px 0 !important;
|
312 |
+
}
|
313 |
+
}
|
themes-ai1ec/vortex/less/grid.less
ADDED
@@ -0,0 +1,5 @@
|
|
|
|
|
|
|
|
|
|
|
1 |
+
// Fixed (940px)
|
2 |
+
#grid > .core(@gridColumnWidth, @gridGutterWidth);
|
3 |
+
|
4 |
+
// Fluid (940px)
|
5 |
+
#grid > .fluid(@fluidGridColumnWidth, @fluidGridGutterWidth);
|
themes-ai1ec/vortex/less/mixins-custom.less
ADDED
@@ -0,0 +1,65 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/**
|
2 |
+
* @file
|
3 |
+
*
|
4 |
+
* Custom mixins where Bootstrap mixins fall short.
|
5 |
+
*/
|
6 |
+
|
7 |
+
// Gradients.
|
8 |
+
#gradient {
|
9 |
+
// Horizontal 3-color gradient.
|
10 |
+
.horizontal-three-colors(@startColor: #00b3ee, @midColor: #7a43b6, @colorStop: 50%, @endColor: #c3325f) {
|
11 |
+
background-color: mix(@midColor, @endColor, 80%);
|
12 |
+
background-image: -webkit-gradient(linear, 0 0, 100% 0, from(@startColor), color-stop(@colorStop, @midColor), to(@endColor));
|
13 |
+
background-image: -webkit-linear-gradient(left, @startColor, @midColor @colorStop, @endColor);
|
14 |
+
background-image: -moz-linear-gradient(left, @startColor, @midColor @colorStop, @endColor);
|
15 |
+
background-image: -ms-linear-gradient(left, @startColor, @midColor @colorStop, @endColor);
|
16 |
+
background-image: -o-linear-gradient(left, @startColor, @midColor @colorStop, @endColor);
|
17 |
+
background-image: linear-gradient(left, @startColor, @midColor @colorStop, @endColor);
|
18 |
+
background-repeat: no-repeat;
|
19 |
+
filter: e(%("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)",@startColor,@endColor)); // IE9 and down, gets no color-stop at all for proper fallback
|
20 |
+
}
|
21 |
+
|
22 |
+
// Use these for the following behaviour:
|
23 |
+
// If browser supports the gradient syntax it will *replace the background
|
24 |
+
// color* behind it, and is *especially important for translucent gradients*.
|
25 |
+
.horizontal-replace(@startColor: #555, @endColor: #333) {
|
26 |
+
background: @endColor;
|
27 |
+
background: -moz-linear-gradient(left, @startColor, @endColor); // FF 3.6+
|
28 |
+
background: -ms-linear-gradient(left, @startColor, @endColor); // IE10
|
29 |
+
background: -webkit-gradient(linear, 0 0, 100% 0, from(@startColor), to(@endColor)); // Safari 4+, Chrome 2+
|
30 |
+
background: -webkit-linear-gradient(left, @startColor, @endColor); // Safari 5.1+, Chrome 10+
|
31 |
+
background: -o-linear-gradient(left, @startColor, @endColor); // Opera 11.10
|
32 |
+
background: linear-gradient(left, @startColor, @endColor); // Le standard
|
33 |
+
background-repeat: repeat-x;
|
34 |
+
}
|
35 |
+
.vertical-replace(@startColor: #555, @endColor: #333) {
|
36 |
+
background: mix(@startColor, @endColor, 60%);
|
37 |
+
background: -moz-linear-gradient(top, @startColor, @endColor); // FF 3.6+
|
38 |
+
background: -ms-linear-gradient(top, @startColor, @endColor); // IE10
|
39 |
+
background: -webkit-gradient(linear, 0 0, 0 100%, from(@startColor), to(@endColor)); // Safari 4+, Chrome 2+
|
40 |
+
background: -webkit-linear-gradient(top, @startColor, @endColor); // Safari 5.1+, Chrome 10+
|
41 |
+
background: -o-linear-gradient(top, @startColor, @endColor); // Opera 11.10
|
42 |
+
background: linear-gradient(top, @startColor, @endColor); // The standard
|
43 |
+
background-repeat: repeat-x;
|
44 |
+
}
|
45 |
+
.vertical-three-colors-replace(@startColor: #00b3ee, @midColor: #7a43b6, @colorStop: 50%, @endColor: #c3325f) {
|
46 |
+
background: mix(@midColor, @endColor, 80%);
|
47 |
+
background: -webkit-gradient(linear, 0 0, 0 100%, from(@startColor), color-stop(@colorStop, @midColor), to(@endColor));
|
48 |
+
background: -webkit-linear-gradient(@startColor, @midColor @colorStop, @endColor);
|
49 |
+
background: -moz-linear-gradient(top, @startColor, @midColor @colorStop, @endColor);
|
50 |
+
background: -ms-linear-gradient(@startColor, @midColor @colorStop, @endColor);
|
51 |
+
background: -o-linear-gradient(@startColor, @midColor @colorStop, @endColor);
|
52 |
+
background: linear-gradient(@startColor, @midColor @colorStop, @endColor);
|
53 |
+
background-repeat: no-repeat;
|
54 |
+
}
|
55 |
+
.horizontal-three-colors-replace(@startColor: #00b3ee, @midColor: #7a43b6, @colorStop: 50%, @endColor: #c3325f) {
|
56 |
+
background: mix(@midColor, @endColor, 80%);
|
57 |
+
background: -webkit-gradient(linear, 0 0, 100% 0, from(@startColor), color-stop(@colorStop, @midColor), to(@endColor));
|
58 |
+
background: -webkit-linear-gradient(left, @startColor, @midColor @colorStop, @endColor);
|
59 |
+
background: -moz-linear-gradient(left, @startColor, @midColor @colorStop, @endColor);
|
60 |
+
background: -ms-linear-gradient(left, @startColor, @midColor @colorStop, @endColor);
|
61 |
+
background: -o-linear-gradient(left, @startColor, @midColor @colorStop, @endColor);
|
62 |
+
background: linear-gradient(left, @startColor, @midColor @colorStop, @endColor);
|
63 |
+
background-repeat: no-repeat;
|
64 |
+
}
|
65 |
+
}
|
themes-ai1ec/vortex/less/mixins.less
ADDED
@@ -0,0 +1,614 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
// Mixins.less
|
2 |
+
// Snippets of reusable CSS to develop faster and keep code readable
|
3 |
+
// -----------------------------------------------------------------
|
4 |
+
|
5 |
+
|
6 |
+
// UTILITY MIXINS
|
7 |
+
// --------------------------------------------------
|
8 |
+
|
9 |
+
// Clearfix
|
10 |
+
// --------
|
11 |
+
// For clearing floats like a boss h5bp.com/q
|
12 |
+
.clearfix {
|
13 |
+
*zoom: 1;
|
14 |
+
&:before,
|
15 |
+
&:after {
|
16 |
+
display: table;
|
17 |
+
content: "";
|
18 |
+
}
|
19 |
+
&:after {
|
20 |
+
clear: both;
|
21 |
+
}
|
22 |
+
}
|
23 |
+
|
24 |
+
// Webkit-style focus
|
25 |
+
// ------------------
|
26 |
+
.tab-focus() {
|
27 |
+
// Default
|
28 |
+
outline: thin dotted #333;
|
29 |
+
// Webkit
|
30 |
+
outline: 5px auto -webkit-focus-ring-color;
|
31 |
+
outline-offset: -2px;
|
32 |
+
}
|
33 |
+
|
34 |
+
// Center-align a block level element
|
35 |
+
// ----------------------------------
|
36 |
+
.center-block() {
|
37 |
+
display: block;
|
38 |
+
margin-left: auto;
|
39 |
+
margin-right: auto;
|
40 |
+
}
|
41 |
+
|
42 |
+
// IE7 inline-block
|
43 |
+
// ----------------
|
44 |
+
.ie7-inline-block() {
|
45 |
+
*display: inline; /* IE7 inline-block hack */
|
46 |
+
*zoom: 1;
|
47 |
+
}
|
48 |
+
|
49 |
+
// IE7 likes to collapse whitespace on either side of the inline-block elements.
|
50 |
+
// Ems because we're attempting to match the width of a space character. Left
|
51 |
+
// version is for form buttons, which typically come after other elements, and
|
52 |
+
// right version is for icons, which come before. Applying both is ok, but it will
|
53 |
+
// mean that space between those elements will be .6em (~2 space characters) in IE7,
|
54 |
+
// instead of the 1 space in other browsers.
|
55 |
+
.ie7-restore-left-whitespace() {
|
56 |
+
*margin-left: .3em;
|
57 |
+
|
58 |
+
&:first-child {
|
59 |
+
*margin-left: 0;
|
60 |
+
}
|
61 |
+
}
|
62 |
+
|
63 |
+
.ie7-restore-right-whitespace() {
|
64 |
+
*margin-right: .3em;
|
65 |
+
|
66 |
+
&:last-child {
|
67 |
+
*margin-left: 0;
|
68 |
+
}
|
69 |
+
}
|
70 |
+
|
71 |
+
// Sizing shortcuts
|
72 |
+
// -------------------------
|
73 |
+
.size(@height: 5px, @width: 5px) {
|
74 |
+
width: @width;
|
75 |
+
height: @height;
|
76 |
+
}
|
77 |
+
.square(@size: 5px) {
|
78 |
+
.size(@size, @size);
|
79 |
+
}
|
80 |
+
|
81 |
+
// Placeholder text
|
82 |
+
// -------------------------
|
83 |
+
.placeholder(@color: @placeholderText) {
|
84 |
+
:-moz-placeholder {
|
85 |
+
color: @color;
|
86 |
+
}
|
87 |
+
::-webkit-input-placeholder {
|
88 |
+
color: @color;
|
89 |
+
}
|
90 |
+
}
|
91 |
+
|
92 |
+
// Text overflow
|
93 |
+
// -------------------------
|
94 |
+
// Requires inline-block or block for proper styling
|
95 |
+
.text-overflow() {
|
96 |
+
overflow: hidden;
|
97 |
+
text-overflow: ellipsis;
|
98 |
+
white-space: nowrap;
|
99 |
+
}
|
100 |
+
|
101 |
+
// New image replacement
|
102 |
+
// -------------------------
|
103 |
+
// Source: http://www.zeldman.com/2012/03/01/replacing-the-9999px-hack-new-image-replacement/
|
104 |
+
.hide-text {
|
105 |
+
overflow: hidden;
|
106 |
+
text-indent: 100%;
|
107 |
+
white-space: nowrap;
|
108 |
+
}
|
109 |
+
|
110 |
+
|
111 |
+
// FONTS
|
112 |
+
// --------------------------------------------------
|
113 |
+
|
114 |
+
#font {
|
115 |
+
#family {
|
116 |
+
.serif() {
|
117 |
+
font-family: Georgia, "Times New Roman", Times, serif;
|
118 |
+
}
|
119 |
+
.sans-serif() {
|
120 |
+
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
|
121 |
+
}
|
122 |
+
.monospace() {
|
123 |
+
font-family: Menlo, Monaco, "Courier New", monospace;
|
124 |
+
}
|
125 |
+
}
|
126 |
+
.shorthand(@size: @baseFontSize, @weight: normal, @lineHeight: @baseLineHeight) {
|
127 |
+
font-size: @size;
|
128 |
+
font-weight: @weight;
|
129 |
+
line-height: @lineHeight;
|
130 |
+
}
|
131 |
+
.serif(@size: @baseFontSize, @weight: normal, @lineHeight: @baseLineHeight) {
|
132 |
+
#font > #family > .serif;
|
133 |
+
#font > .shorthand(@size, @weight, @lineHeight);
|
134 |
+
}
|
135 |
+
.sans-serif(@size: @baseFontSize, @weight: normal, @lineHeight: @baseLineHeight) {
|
136 |
+
#font > #family > .sans-serif;
|
137 |
+
#font > .shorthand(@size, @weight, @lineHeight);
|
138 |
+
}
|
139 |
+
.monospace(@size: @baseFontSize, @weight: normal, @lineHeight: @baseLineHeight) {
|
140 |
+
#font > #family > .monospace;
|
141 |
+
#font > .shorthand(@size, @weight, @lineHeight);
|
142 |
+
}
|
143 |
+
}
|
144 |
+
|
145 |
+
|
146 |
+
// FORMS
|
147 |
+
// --------------------------------------------------
|
148 |
+
|
149 |
+
// Block level inputs
|
150 |
+
.input-block-level {
|
151 |
+
display: block;
|
152 |
+
width: 100%;
|
153 |
+
min-height: 28px; /* Make inputs at least the height of their button counterpart */
|
154 |
+
/* Makes inputs behave like true block-level elements */
|
155 |
+
.box-sizing(border-box);
|
156 |
+
}
|
157 |
+
|
158 |
+
|
159 |
+
// Mixin for form field states
|
160 |
+
.formFieldState(@textColor: #555, @borderColor: #ccc, @backgroundColor: #f5f5f5) {
|
161 |
+
// Set the text color
|
162 |
+
> label,
|
163 |
+
.help-block,
|
164 |
+
.help-inline {
|
165 |
+
color: @textColor;
|
166 |
+
}
|
167 |
+
// Style inputs accordingly
|
168 |
+
input,
|
169 |
+
select,
|
170 |
+
textarea {
|
171 |
+
color: @textColor;
|
172 |
+
border-color: @borderColor;
|
173 |
+
&:focus {
|
174 |
+
border-color: darken(@borderColor, 10%);
|
175 |
+
.box-shadow(0 0 6px lighten(@borderColor, 20%));
|
176 |
+
}
|
177 |
+
}
|
178 |
+
// Give a small background color for input-prepend/-append
|
179 |
+
.input-prepend .add-on,
|
180 |
+
.input-append .add-on {
|
181 |
+
color: @textColor;
|
182 |
+
background-color: @backgroundColor;
|
183 |
+
border-color: @textColor;
|
184 |
+
}
|
185 |
+
}
|
186 |
+
|
187 |
+
|
188 |
+
|
189 |
+
// CSS3 PROPERTIES
|
190 |
+
// --------------------------------------------------
|
191 |
+
|
192 |
+
// Border Radius
|
193 |
+
.border-radius(@radius: 5px) {
|
194 |
+
-webkit-border-radius: @radius;
|
195 |
+
-moz-border-radius: @radius;
|
196 |
+
border-radius: @radius;
|
197 |
+
}
|
198 |
+
|
199 |
+
// Drop shadows
|
200 |
+
.box-shadow(@shadow: 0 1px 3px rgba(0,0,0,.25)) {
|
201 |
+
-webkit-box-shadow: @shadow;
|
202 |
+
-moz-box-shadow: @shadow;
|
203 |
+
box-shadow: @shadow;
|
204 |
+
}
|
205 |
+
|
206 |
+
// Transitions
|
207 |
+
.transition(@transition) {
|
208 |
+
-webkit-transition: @transition;
|
209 |
+
-moz-transition: @transition;
|
210 |
+
-ms-transition: @transition;
|
211 |
+
-o-transition: @transition;
|
212 |
+
transition: @transition;
|
213 |
+
}
|
214 |
+
|
215 |
+
// Transformations
|
216 |
+
.rotate(@degrees) {
|
217 |
+
-webkit-transform: rotate(@degrees);
|
218 |
+
-moz-transform: rotate(@degrees);
|
219 |
+
-ms-transform: rotate(@degrees);
|
220 |
+
-o-transform: rotate(@degrees);
|
221 |
+
transform: rotate(@degrees);
|
222 |
+
}
|
223 |
+
.scale(@ratio) {
|
224 |
+
-webkit-transform: scale(@ratio);
|
225 |
+
-moz-transform: scale(@ratio);
|
226 |
+
-ms-transform: scale(@ratio);
|
227 |
+
-o-transform: scale(@ratio);
|
228 |
+
transform: scale(@ratio);
|
229 |
+
}
|
230 |
+
.translate(@x: 0, @y: 0) {
|
231 |
+
-webkit-transform: translate(@x, @y);
|
232 |
+
-moz-transform: translate(@x, @y);
|
233 |
+
-ms-transform: translate(@x, @y);
|
234 |
+
-o-transform: translate(@x, @y);
|
235 |
+
transform: translate(@x, @y);
|
236 |
+
}
|
237 |
+
.skew(@x: 0, @y: 0) {
|
238 |
+
-webkit-transform: skew(@x, @y);
|
239 |
+
-moz-transform: skew(@x, @y);
|
240 |
+
-ms-transform: skew(@x, @y);
|
241 |
+
-o-transform: skew(@x, @y);
|
242 |
+
transform: skew(@x, @y);
|
243 |
+
}
|
244 |
+
.translate3d(@x: 0, @y: 0, @z: 0) {
|
245 |
+
-webkit-transform: translate(@x, @y, @z);
|
246 |
+
-moz-transform: translate(@x, @y, @z);
|
247 |
+
-ms-transform: translate(@x, @y, @z);
|
248 |
+
-o-transform: translate(@x, @y, @z);
|
249 |
+
transform: translate(@x, @y, @z);
|
250 |
+
}
|
251 |
+
|
252 |
+
// Background clipping
|
253 |
+
// Heads up: FF 3.6 and under need "padding" instead of "padding-box"
|
254 |
+
.background-clip(@clip) {
|
255 |
+
-webkit-background-clip: @clip;
|
256 |
+
-moz-background-clip: @clip;
|
257 |
+
background-clip: @clip;
|
258 |
+
}
|
259 |
+
|
260 |
+
// Background sizing
|
261 |
+
.background-size(@size){
|
262 |
+
-webkit-background-size: @size;
|
263 |
+
-moz-background-size: @size;
|
264 |
+
-o-background-size: @size;
|
265 |
+
background-size: @size;
|
266 |
+
}
|
267 |
+
|
268 |
+
|
269 |
+
// Box sizing
|
270 |
+
.box-sizing(@boxmodel) {
|
271 |
+
-webkit-box-sizing: @boxmodel;
|
272 |
+
-moz-box-sizing: @boxmodel;
|
273 |
+
-ms-box-sizing: @boxmodel;
|
274 |
+
box-sizing: @boxmodel;
|
275 |
+
}
|
276 |
+
|
277 |
+
// User select
|
278 |
+
// For selecting text on the page
|
279 |
+
.user-select(@select) {
|
280 |
+
-webkit-user-select: @select;
|
281 |
+
-moz-user-select: @select;
|
282 |
+
-o-user-select: @select;
|
283 |
+
user-select: @select;
|
284 |
+
}
|
285 |
+
|
286 |
+
// Resize anything
|
287 |
+
.resizable(@direction: both) {
|
288 |
+
resize: @direction; // Options: horizontal, vertical, both
|
289 |
+
overflow: auto; // Safari fix
|
290 |
+
}
|
291 |
+
|
292 |
+
// CSS3 Content Columns
|
293 |
+
.content-columns(@columnCount, @columnGap: @gridColumnGutter) {
|
294 |
+
-webkit-column-count: @columnCount;
|
295 |
+
-moz-column-count: @columnCount;
|
296 |
+
column-count: @columnCount;
|
297 |
+
-webkit-column-gap: @columnGap;
|
298 |
+
-moz-column-gap: @columnGap;
|
299 |
+
column-gap: @columnGap;
|
300 |
+
}
|
301 |
+
|
302 |
+
// Opacity
|
303 |
+
.opacity(@opacity: 100) {
|
304 |
+
opacity: @opacity / 100;
|
305 |
+
filter: ~"alpha(opacity=@{opacity})";
|
306 |
+
}
|
307 |
+
|
308 |
+
|
309 |
+
|
310 |
+
// BACKGROUNDS
|
311 |
+
// --------------------------------------------------
|
312 |
+
|
313 |
+
// Add an alphatransparency value to any background or border color (via Elyse Holladay)
|
314 |
+
#translucent {
|
315 |
+
.background(@color: @white, @alpha: 1) {
|
316 |
+
background-color: hsla(hue(@color), saturation(@color), lightness(@color), @alpha);
|
317 |
+
}
|
318 |
+
.border(@color: @white, @alpha: 1) {
|
319 |
+
border-color: hsla(hue(@color), saturation(@color), lightness(@color), @alpha);
|
320 |
+
.background-clip(padding-box);
|
321 |
+
}
|
322 |
+
}
|
323 |
+
|
324 |
+
// Gradient Bar Colors for buttons and alerts
|
325 |
+
.gradientBar(@primaryColor, @secondaryColor) {
|
326 |
+
#gradient > .vertical(@primaryColor, @secondaryColor);
|
327 |
+
border-color: @secondaryColor @secondaryColor darken(@secondaryColor, 15%);
|
328 |
+
border-color: rgba(0,0,0,.1) rgba(0,0,0,.1) fadein(rgba(0,0,0,.1), 15%);
|
329 |
+
}
|
330 |
+
|
331 |
+
// Gradients
|
332 |
+
#gradient {
|
333 |
+
.horizontal(@startColor: #555, @endColor: #333) {
|
334 |
+
background-color: @endColor;
|
335 |
+
background-image: -moz-linear-gradient(left, @startColor, @endColor); // FF 3.6+
|
336 |
+
background-image: -ms-linear-gradient(left, @startColor, @endColor); // IE10
|
337 |
+
background-image: -webkit-gradient(linear, 0 0, 100% 0, from(@startColor), to(@endColor)); // Safari 4+, Chrome 2+
|
338 |
+
background-image: -webkit-linear-gradient(left, @startColor, @endColor); // Safari 5.1+, Chrome 10+
|
339 |
+
background-image: -o-linear-gradient(left, @startColor, @endColor); // Opera 11.10
|
340 |
+
background-image: linear-gradient(left, @startColor, @endColor); // Le standard
|
341 |
+
background-repeat: repeat-x;
|
342 |
+
filter: e(%("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)",@startColor,@endColor)); // IE9 and down
|
343 |
+
}
|
344 |
+
.vertical(@startColor: #555, @endColor: #333) {
|
345 |
+
background-color: mix(@startColor, @endColor, 60%);
|
346 |
+
background-image: -moz-linear-gradient(top, @startColor, @endColor); // FF 3.6+
|
347 |
+
background-image: -ms-linear-gradient(top, @startColor, @endColor); // IE10
|
348 |
+
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(@startColor), to(@endColor)); // Safari 4+, Chrome 2+
|
349 |
+
background-image: -webkit-linear-gradient(top, @startColor, @endColor); // Safari 5.1+, Chrome 10+
|
350 |
+
background-image: -o-linear-gradient(top, @startColor, @endColor); // Opera 11.10
|
351 |
+
background-image: linear-gradient(top, @startColor, @endColor); // The standard
|
352 |
+
background-repeat: repeat-x;
|
353 |
+
filter: e(%("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)",@startColor,@endColor)); // IE9 and down
|
354 |
+
}
|
355 |
+
.directional(@startColor: #555, @endColor: #333, @deg: 45deg) {
|
356 |
+
background-color: @endColor;
|
357 |
+
background-repeat: repeat-x;
|
358 |
+
background-image: -moz-linear-gradient(@deg, @startColor, @endColor); // FF 3.6+
|
359 |
+
background-image: -ms-linear-gradient(@deg, @startColor, @endColor); // IE10
|
360 |
+
background-image: -webkit-linear-gradient(@deg, @startColor, @endColor); // Safari 5.1+, Chrome 10+
|
361 |
+
background-image: -o-linear-gradient(@deg, @startColor, @endColor); // Opera 11.10
|
362 |
+
background-image: linear-gradient(@deg, @startColor, @endColor); // The standard
|
363 |
+
}
|
364 |
+
.vertical-three-colors(@startColor: #00b3ee, @midColor: #7a43b6, @colorStop: 50%, @endColor: #c3325f) {
|
365 |
+
background-color: mix(@midColor, @endColor, 80%);
|
366 |
+
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(@startColor), color-stop(@colorStop, @midColor), to(@endColor));
|
367 |
+
background-image: -webkit-linear-gradient(@startColor, @midColor @colorStop, @endColor);
|
368 |
+
background-image: -moz-linear-gradient(top, @startColor, @midColor @colorStop, @endColor);
|
369 |
+
background-image: -ms-linear-gradient(@startColor, @midColor @colorStop, @endColor);
|
370 |
+
background-image: -o-linear-gradient(@startColor, @midColor @colorStop, @endColor);
|
371 |
+
background-image: linear-gradient(@startColor, @midColor @colorStop, @endColor);
|
372 |
+
background-repeat: no-repeat;
|
373 |
+
filter: e(%("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)",@startColor,@endColor)); // IE9 and down, gets no color-stop at all for proper fallback
|
374 |
+
}
|
375 |
+
.radial(@innerColor: #555, @outerColor: #333) {
|
376 |
+
background-color: @outerColor;
|
377 |
+
background-image: -webkit-gradient(radial, center center, 0, center center, 460, from(@innerColor), to(@outerColor));
|
378 |
+
background-image: -webkit-radial-gradient(circle, @innerColor, @outerColor);
|
379 |
+
background-image: -moz-radial-gradient(circle, @innerColor, @outerColor);
|
380 |
+
background-image: -ms-radial-gradient(circle, @innerColor, @outerColor);
|
381 |
+
background-image: -o-radial-gradient(circle, @innerColor, @outerColor);
|
382 |
+
background-repeat: no-repeat;
|
383 |
+
}
|
384 |
+
.striped(@color, @angle: -45deg) {
|
385 |
+
background-color: @color;
|
386 |
+
background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(.25, rgba(255,255,255,.15)), color-stop(.25, transparent), color-stop(.5, transparent), color-stop(.5, rgba(255,255,255,.15)), color-stop(.75, rgba(255,255,255,.15)), color-stop(.75, transparent), to(transparent));
|
387 |
+
background-image: -webkit-linear-gradient(@angle, rgba(255,255,255,.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,.15) 50%, rgba(255,255,255,.15) 75%, transparent 75%, transparent);
|
388 |
+
background-image: -moz-linear-gradient(@angle, rgba(255,255,255,.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,.15) 50%, rgba(255,255,255,.15) 75%, transparent 75%, transparent);
|
389 |
+
background-image: -ms-linear-gradient(@angle, rgba(255,255,255,.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,.15) 50%, rgba(255,255,255,.15) 75%, transparent 75%, transparent);
|
390 |
+
background-image: -o-linear-gradient(@angle, rgba(255,255,255,.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,.15) 50%, rgba(255,255,255,.15) 75%, transparent 75%, transparent);
|
391 |
+
background-image: linear-gradient(@angle, rgba(255,255,255,.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,.15) 50%, rgba(255,255,255,.15) 75%, transparent 75%, transparent);
|
392 |
+
}
|
393 |
+
}
|
394 |
+
// Reset filters for IE
|
395 |
+
.reset-filter() {
|
396 |
+
filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
|
397 |
+
}
|
398 |
+
|
399 |
+
|
400 |
+
|
401 |
+
// COMPONENT MIXINS
|
402 |
+
// --------------------------------------------------
|
403 |
+
|
404 |
+
// Horizontal dividers
|
405 |
+
// -------------------------
|
406 |
+
// Dividers (basically an hr) within dropdowns and nav lists
|
407 |
+
.nav-divider() {
|
408 |
+
height: 1px;
|
409 |
+
margin: ((@baseLineHeight / 2) - 1) 1px; // 8px 1px
|
410 |
+
overflow: hidden;
|
411 |
+
background-color: #e5e5e5;
|
412 |
+
border-bottom: 1px solid @white;
|
413 |
+
|
414 |
+
// IE7 needs a set width since we gave a height. Restricting just
|
415 |
+
// to IE7 to keep the 1px left/right space in other browsers.
|
416 |
+
// It is unclear where IE is getting the extra space that we need
|
417 |
+
// to negative-margin away, but so it goes.
|
418 |
+
*width: 100%;
|
419 |
+
*margin: -5px 0 5px;
|
420 |
+
}
|
421 |
+
|
422 |
+
// Button backgrounds
|
423 |
+
// ------------------
|
424 |
+
.buttonBackground(@startColor, @endColor) {
|
425 |
+
// gradientBar will set the background to a pleasing blend of these, to support IE<=9
|
426 |
+
.gradientBar(@startColor, @endColor);
|
427 |
+
.reset-filter();
|
428 |
+
|
429 |
+
// in these cases the gradient won't cover the background, so we override
|
430 |
+
&:hover, &:active, &.active, &.disabled, &[disabled] {
|
431 |
+
background-color: @endColor;
|
432 |
+
}
|
433 |
+
|
434 |
+
// IE 7 + 8 can't handle box-shadow to show active, so we darken a bit ourselves
|
435 |
+
&:active,
|
436 |
+
&.active {
|
437 |
+
background-color: darken(@endColor, 10%) e("\9");
|
438 |
+
}
|
439 |
+
}
|
440 |
+
|
441 |
+
// Navbar vertical align
|
442 |
+
// -------------------------
|
443 |
+
// Vertically center elements in the navbar.
|
444 |
+
// Example: an element has a height of 30px, so write out `.navbarVerticalAlign(30px);` to calculate the appropriate top margin.
|
445 |
+
.navbarVerticalAlign(@elementHeight) {
|
446 |
+
margin-top: (@navbarHeight - @elementHeight) / 2;
|
447 |
+
}
|
448 |
+
|
449 |
+
// Popover arrows
|
450 |
+
// -------------------------
|
451 |
+
// For tipsies and popovers
|
452 |
+
#popoverArrow {
|
453 |
+
.top(@arrowWidth: 5px, @color: @black) {
|
454 |
+
bottom: 0;
|
455 |
+
left: 50%;
|
456 |
+
margin-left: -@arrowWidth;
|
457 |
+
border-left: @arrowWidth solid transparent;
|
458 |
+
border-right: @arrowWidth solid transparent;
|
459 |
+
border-top: @arrowWidth solid @color;
|
460 |
+
}
|
461 |
+
.left(@arrowWidth: 5px, @color: @black) {
|
462 |
+
top: 50%;
|
463 |
+
right: 0;
|
464 |
+
margin-top: -@arrowWidth;
|
465 |
+
border-top: @arrowWidth solid transparent;
|
466 |
+
border-bottom: @arrowWidth solid transparent;
|
467 |
+
border-left: @arrowWidth solid @color;
|
468 |
+
}
|
469 |
+
.bottom(@arrowWidth: 5px, @color: @black) {
|
470 |
+
top: 0;
|
471 |
+
left: 50%;
|
472 |
+
margin-left: -@arrowWidth;
|
473 |
+
border-left: @arrowWidth solid transparent;
|
474 |
+
border-right: @arrowWidth solid transparent;
|
475 |
+
border-bottom: @arrowWidth solid @color;
|
476 |
+
}
|
477 |
+
.right(@arrowWidth: 5px, @color: @black) {
|
478 |
+
top: 50%;
|
479 |
+
left: 0;
|
480 |
+
margin-top: -@arrowWidth;
|
481 |
+
border-top: @arrowWidth solid transparent;
|
482 |
+
border-bottom: @arrowWidth solid transparent;
|
483 |
+
border-right: @arrowWidth solid @color;
|
484 |
+
}
|
485 |
+
}
|
486 |
+
|
487 |
+
// Grid System
|
488 |
+
// -----------
|
489 |
+
|
490 |
+
// Centered container element
|
491 |
+
.container-fixed() {
|
492 |
+
margin-left: auto;
|
493 |
+
margin-right: auto;
|
494 |
+
.clearfix();
|
495 |
+
}
|
496 |
+
|
497 |
+
// Table columns
|
498 |
+
.tableColumns(@columnSpan: 1) {
|
499 |
+
float: none; // undo default grid column styles
|
500 |
+
width: ((@gridColumnWidth) * @columnSpan) + (@gridGutterWidth * (@columnSpan - 1)) - 16; // 16 is total padding on left and right of table cells
|
501 |
+
margin-left: 0; // undo default grid column styles
|
502 |
+
}
|
503 |
+
|
504 |
+
// Make a Grid
|
505 |
+
// Use .makeRow and .makeColumn to assign semantic layouts grid system behavior
|
506 |
+
.makeRow() {
|
507 |
+
margin-left: @gridGutterWidth * -1;
|
508 |
+
.clearfix();
|
509 |
+
}
|
510 |
+
.makeColumn(@columns: 1) {
|
511 |
+
float: left;
|
512 |
+
margin-left: @gridGutterWidth;
|
513 |
+
width: (@gridColumnWidth * @columns) + (@gridGutterWidth * (@columns - 1));
|
514 |
+
}
|
515 |
+
|
516 |
+
// The Grid
|
517 |
+
#grid {
|
518 |
+
|
519 |
+
.core (@gridColumnWidth, @gridGutterWidth) {
|
520 |
+
|
521 |
+
.spanX (@index) when (@index > 0) {
|
522 |
+
(~".span@{index}") { .span(@index); }
|
523 |
+
.spanX(@index - 1);
|
524 |
+
}
|
525 |
+
.spanX (0) {}
|
526 |
+
|
527 |
+
.offsetX (@index) when (@index > 0) {
|
528 |
+
(~".offset@{index}") { .offset(@index); }
|
529 |
+
.offsetX(@index - 1);
|
530 |
+
}
|
531 |
+
.offsetX (0) {}
|
532 |
+
|
533 |
+
.offset (@columns) {
|
534 |
+
margin-left: (@gridColumnWidth * @columns) + (@gridGutterWidth * (@columns - 1)) + (@gridGutterWidth * 2);
|
535 |
+
}
|
536 |
+
|
537 |
+
.span (@columns) {
|
538 |
+
width: (@gridColumnWidth * @columns) + (@gridGutterWidth * (@columns - 1));
|
539 |
+
}
|
540 |
+
|
541 |
+
.row {
|
542 |
+
margin-left: @gridGutterWidth * -1;
|
543 |
+
.clearfix();
|
544 |
+
}
|
545 |
+
|
546 |
+
[class*="span"] {
|
547 |
+
float: left;
|
548 |
+
margin-left: @gridGutterWidth;
|
549 |
+
}
|
550 |
+
|
551 |
+
// Set the container width, and override it for fixed navbars in media queries
|
552 |
+
.container,
|
553 |
+
.navbar-fixed-top .container,
|
554 |
+
.navbar-fixed-bottom .container { .span(@gridColumns); }
|
555 |
+
|
556 |
+
// generate .spanX and .offsetX
|
557 |
+
.spanX (@gridColumns);
|
558 |
+
.offsetX (@gridColumns);
|
559 |
+
|
560 |
+
}
|
561 |
+
|
562 |
+
.fluid (@fluidGridColumnWidth, @fluidGridGutterWidth) {
|
563 |
+
|
564 |
+
.spanX (@index) when (@index > 0) {
|
565 |
+
(~"> .span@{index}") { .span(@index); }
|
566 |
+
.spanX(@index - 1);
|
567 |
+
}
|
568 |
+
.spanX (0) {}
|
569 |
+
|
570 |
+
.span (@columns) {
|
571 |
+
width: (@fluidGridColumnWidth * @columns) + (@fluidGridGutterWidth * (@columns - 1));
|
572 |
+
}
|
573 |
+
|
574 |
+
.row-fluid {
|
575 |
+
width: 100%;
|
576 |
+
.clearfix();
|
577 |
+
> [class*="span"] {
|
578 |
+
float: left;
|
579 |
+
margin-left: @fluidGridGutterWidth;
|
580 |
+
}
|
581 |
+
> [class*="span"]:first-child {
|
582 |
+
margin-left: 0;
|
583 |
+
}
|
584 |
+
|
585 |
+
// generate .spanX
|
586 |
+
.spanX (@gridColumns);
|
587 |
+
}
|
588 |
+
|
589 |
+
}
|
590 |
+
|
591 |
+
.input(@gridColumnWidth, @gridGutterWidth) {
|
592 |
+
|
593 |
+
.spanX (@index) when (@index > 0) {
|
594 |
+
(~"input.span@{index}, textarea.span@{index}, .uneditable-input.span@{index}") { .span(@index); }
|
595 |
+
.spanX(@index - 1);
|
596 |
+
}
|
597 |
+
.spanX (0) {}
|
598 |
+
|
599 |
+
.span(@columns) {
|
600 |
+
width: ((@gridColumnWidth) * @columns) + (@gridGutterWidth * (@columns - 1)) - 10;
|
601 |
+
}
|
602 |
+
|
603 |
+
input,
|
604 |
+
textarea,
|
605 |
+
.uneditable-input {
|
606 |
+
margin-left: 0; // override margin-left from core grid system
|
607 |
+
}
|
608 |
+
|
609 |
+
// generate .spanX
|
610 |
+
.spanX (@gridColumns);
|
611 |
+
|
612 |
+
}
|
613 |
+
|
614 |
+
}
|
themes-ai1ec/vortex/less/navs.less
ADDED
@@ -0,0 +1,363 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
// NAVIGATIONS
|
2 |
+
// -----------
|
3 |
+
|
4 |
+
|
5 |
+
|
6 |
+
// BASE CLASS
|
7 |
+
// ----------
|
8 |
+
|
9 |
+
.nav {
|
10 |
+
margin-left: 0;
|
11 |
+
margin-bottom: @baseLineHeight;
|
12 |
+
list-style: none;
|
13 |
+
}
|
14 |
+
|
15 |
+
// Make links block level
|
16 |
+
.nav > li > a {
|
17 |
+
display: block;
|
18 |
+
}
|
19 |
+
.nav > li > a:hover {
|
20 |
+
text-decoration: none;
|
21 |
+
background-color: @grayLighter;
|
22 |
+
}
|
23 |
+
|
24 |
+
// Nav headers (for dropdowns and lists)
|
25 |
+
.nav .nav-header {
|
26 |
+
display: block;
|
27 |
+
padding: 3px 15px;
|
28 |
+
font-size: 11px;
|
29 |
+
font-weight: bold;
|
30 |
+
line-height: @baseLineHeight;
|
31 |
+
color: @grayLight;
|
32 |
+
text-shadow: 0 1px 0 rgba(255,255,255,.5);
|
33 |
+
text-transform: uppercase;
|
34 |
+
}
|
35 |
+
// Space them out when they follow another list item (link)
|
36 |
+
.nav li + .nav-header {
|
37 |
+
margin-top: 9px;
|
38 |
+
}
|
39 |
+
|
40 |
+
|
41 |
+
// NAV LIST
|
42 |
+
// --------
|
43 |
+
|
44 |
+
.nav-list {
|
45 |
+
padding-left: 15px;
|
46 |
+
padding-right: 15px;
|
47 |
+
margin-bottom: 0;
|
48 |
+
}
|
49 |
+
.nav-list > li > a,
|
50 |
+
.nav-list .nav-header {
|
51 |
+
margin-left: -15px;
|
52 |
+
margin-right: -15px;
|
53 |
+
text-shadow: 0 1px 0 rgba(255,255,255,.5);
|
54 |
+
}
|
55 |
+
.nav-list > li > a {
|
56 |
+
padding: 3px 15px;
|
57 |
+
}
|
58 |
+
.nav-list > .active > a,
|
59 |
+
.nav-list > .active > a:hover {
|
60 |
+
color: @white;
|
61 |
+
text-shadow: 0 -1px 0 rgba(0,0,0,.2);
|
62 |
+
background-color: @linkColor;
|
63 |
+
}
|
64 |
+
.nav-list [class^="icon-"] {
|
65 |
+
margin-right: 2px;
|
66 |
+
}
|
67 |
+
// Dividers (basically an hr) within the dropdown
|
68 |
+
.nav-list .divider {
|
69 |
+
.nav-divider();
|
70 |
+
}
|
71 |
+
|
72 |
+
|
73 |
+
|
74 |
+
// TABS AND PILLS
|
75 |
+
// -------------
|
76 |
+
|
77 |
+
// Common styles
|
78 |
+
.nav-tabs,
|
79 |
+
.nav-pills {
|
80 |
+
.clearfix();
|
81 |
+
}
|
82 |
+
.nav-tabs > li,
|
83 |
+
.nav-pills > li {
|
84 |
+
float: left;
|
85 |
+
}
|
86 |
+
.nav-tabs > li > a,
|
87 |
+
.nav-pills > li > a {
|
88 |
+
padding-right: 12px;
|
89 |
+
padding-left: 12px;
|
90 |
+
margin-right: 2px;
|
91 |
+
line-height: 14px; // keeps the overall height an even number
|
92 |
+
}
|
93 |
+
|
94 |
+
// TABS
|
95 |
+
// ----
|
96 |
+
|
97 |
+
// Give the tabs something to sit on
|
98 |
+
.nav-tabs {
|
99 |
+
border-bottom: 1px solid #ddd;
|
100 |
+
}
|
101 |
+
|
102 |
+
// Make the list-items overlay the bottom border
|
103 |
+
.nav-tabs > li {
|
104 |
+
margin-bottom: -1px;
|
105 |
+
}
|
106 |
+
|
107 |
+
// Actual tabs (as links)
|
108 |
+
.nav-tabs > li > a {
|
109 |
+
padding-top: 8px;
|
110 |
+
padding-bottom: 8px;
|
111 |
+
line-height: @baseLineHeight;
|
112 |
+
border: 1px solid transparent;
|
113 |
+
.border-radius(4px 4px 0 0);
|
114 |
+
&:hover {
|
115 |
+
border-color: @grayLighter @grayLighter #ddd;
|
116 |
+
}
|
117 |
+
}
|
118 |
+
// Active state, and it's :hover to override normal :hover
|
119 |
+
.nav-tabs > .active > a,
|
120 |
+
.nav-tabs > .active > a:hover {
|
121 |
+
color: @gray;
|
122 |
+
background-color: @white;
|
123 |
+
border: 1px solid #ddd;
|
124 |
+
border-bottom-color: transparent;
|
125 |
+
cursor: default;
|
126 |
+
}
|
127 |
+
|
128 |
+
// PILLS
|
129 |
+
// -----
|
130 |
+
|
131 |
+
// Links rendered as pills
|
132 |
+
.nav-pills > li > a {
|
133 |
+
padding-top: 8px;
|
134 |
+
padding-bottom: 8px;
|
135 |
+
margin-top: 2px;
|
136 |
+
margin-bottom: 2px;
|
137 |
+
.border-radius(5px);
|
138 |
+
}
|
139 |
+
|
140 |
+
// Active state
|
141 |
+
.nav-pills > .active > a,
|
142 |
+
.nav-pills > .active > a:hover {
|
143 |
+
color: @white;
|
144 |
+
background-color: @linkColor;
|
145 |
+
}
|
146 |
+
|
147 |
+
|
148 |
+
|
149 |
+
// STACKED NAV
|
150 |
+
// -----------
|
151 |
+
|
152 |
+
// Stacked tabs and pills
|
153 |
+
.nav-stacked > li {
|
154 |
+
float: none;
|
155 |
+
}
|
156 |
+
.nav-stacked > li > a {
|
157 |
+
margin-right: 0; // no need for the gap between nav items
|
158 |
+
}
|
159 |
+
|
160 |
+
// Tabs
|
161 |
+
.nav-tabs.nav-stacked {
|
162 |
+
border-bottom: 0;
|
163 |
+
}
|
164 |
+
.nav-tabs.nav-stacked > li > a {
|
165 |
+
border: 1px solid #ddd;
|
166 |
+
.border-radius(0);
|
167 |
+
}
|
168 |
+
.nav-tabs.nav-stacked > li:first-child > a {
|
169 |
+
.border-radius(4px 4px 0 0);
|
170 |
+
}
|
171 |
+
.nav-tabs.nav-stacked > li:last-child > a {
|
172 |
+
.border-radius(0 0 4px 4px);
|
173 |
+
}
|
174 |
+
.nav-tabs.nav-stacked > li > a:hover {
|
175 |
+
border-color: #ddd;
|
176 |
+
z-index: 2;
|
177 |
+
}
|
178 |
+
|
179 |
+
// Pills
|
180 |
+
.nav-pills.nav-stacked > li > a {
|
181 |
+
margin-bottom: 3px;
|
182 |
+
}
|
183 |
+
.nav-pills.nav-stacked > li:last-child > a {
|
184 |
+
margin-bottom: 1px; // decrease margin to match sizing of stacked tabs
|
185 |
+
}
|
186 |
+
|
187 |
+
|
188 |
+
|
189 |
+
// DROPDOWNS
|
190 |
+
// ---------
|
191 |
+
|
192 |
+
// Position the menu
|
193 |
+
.nav-tabs .dropdown-menu,
|
194 |
+
.nav-pills .dropdown-menu {
|
195 |
+
margin-top: 1px;
|
196 |
+
border-width: 1px;
|
197 |
+
}
|
198 |
+
.nav-pills .dropdown-menu {
|
199 |
+
.border-radius(4px);
|
200 |
+
}
|
201 |
+
|
202 |
+
// Default dropdown links
|
203 |
+
// -------------------------
|
204 |
+
// Make carets use linkColor to start
|
205 |
+
.nav-tabs .dropdown-toggle .caret,
|
206 |
+
.nav-pills .dropdown-toggle .caret {
|
207 |
+
border-top-color: @linkColor;
|
208 |
+
border-bottom-color: @linkColor;
|
209 |
+
margin-top: 6px;
|
210 |
+
}
|
211 |
+
.nav-tabs .dropdown-toggle:hover .caret,
|
212 |
+
.nav-pills .dropdown-toggle:hover .caret {
|
213 |
+
border-top-color: @linkColorHover;
|
214 |
+
border-bottom-color: @linkColorHover;
|
215 |
+
}
|
216 |
+
|
217 |
+
// Active dropdown links
|
218 |
+
// -------------------------
|
219 |
+
.nav-tabs .active .dropdown-toggle .caret,
|
220 |
+
.nav-pills .active .dropdown-toggle .caret {
|
221 |
+
border-top-color: @grayDark;
|
222 |
+
border-bottom-color: @grayDark;
|
223 |
+
}
|
224 |
+
|
225 |
+
// Active:hover dropdown links
|
226 |
+
// -------------------------
|
227 |
+
.nav > .dropdown.active > a:hover {
|
228 |
+
color: @black;
|
229 |
+
cursor: pointer;
|
230 |
+
}
|
231 |
+
|
232 |
+
// Open dropdowns
|
233 |
+
// -------------------------
|
234 |
+
.nav-tabs .open .dropdown-toggle,
|
235 |
+
.nav-pills .open .dropdown-toggle,
|
236 |
+
.nav > .open.active > a:hover {
|
237 |
+
color: @white;
|
238 |
+
background-color: @grayLight;
|
239 |
+
border-color: @grayLight;
|
240 |
+
}
|
241 |
+
.nav .open .caret,
|
242 |
+
.nav .open.active .caret,
|
243 |
+
.nav .open a:hover .caret {
|
244 |
+
border-top-color: @white;
|
245 |
+
border-bottom-color: @white;
|
246 |
+
.opacity(100);
|
247 |
+
}
|
248 |
+
|
249 |
+
// Dropdowns in stacked tabs
|
250 |
+
.tabs-stacked .open > a:hover {
|
251 |
+
border-color: @grayLight;
|
252 |
+
}
|
253 |
+
|
254 |
+
|
255 |
+
|
256 |
+
// TABBABLE
|
257 |
+
// --------
|
258 |
+
|
259 |
+
|
260 |
+
// COMMON STYLES
|
261 |
+
// -------------
|
262 |
+
|
263 |
+
// Clear any floats
|
264 |
+
.tabbable {
|
265 |
+
.clearfix();
|
266 |
+
}
|
267 |
+
.tab-content {
|
268 |
+
display: table; // prevent content from running below tabs
|
269 |
+
width: 100%;
|
270 |
+
}
|
271 |
+
|
272 |
+
// Remove border on bottom, left, right
|
273 |
+
.tabs-below .nav-tabs,
|
274 |
+
.tabs-right .nav-tabs,
|
275 |
+
.tabs-left .nav-tabs {
|
276 |
+
border-bottom: 0;
|
277 |
+
}
|
278 |
+
|
279 |
+
// Show/hide tabbable areas
|
280 |
+
.tab-content > .tab-pane,
|
281 |
+
.pill-content > .pill-pane {
|
282 |
+
display: none;
|
283 |
+
}
|
284 |
+
.tab-content > .active,
|
285 |
+
.pill-content > .active {
|
286 |
+
display: block;
|
287 |
+
}
|
288 |
+
|
289 |
+
|
290 |
+
// BOTTOM
|
291 |
+
// ------
|
292 |
+
|
293 |
+
.tabs-below .nav-tabs {
|
294 |
+
border-top: 1px solid #ddd;
|
295 |
+
}
|
296 |
+
.tabs-below .nav-tabs > li {
|
297 |
+
margin-top: -1px;
|
298 |
+
margin-bottom: 0;
|
299 |
+
}
|
300 |
+
.tabs-below .nav-tabs > li > a {
|
301 |
+
.border-radius(0 0 4px 4px);
|
302 |
+
&:hover {
|
303 |
+
border-bottom-color: transparent;
|
304 |
+
border-top-color: #ddd;
|
305 |
+
}
|
306 |
+
}
|
307 |
+
.tabs-below .nav-tabs .active > a,
|
308 |
+
.tabs-below .nav-tabs .active > a:hover {
|
309 |
+
border-color: transparent #ddd #ddd #ddd;
|
310 |
+
}
|
311 |
+
|
312 |
+
// LEFT & RIGHT
|
313 |
+
// ------------
|
314 |
+
|
315 |
+
// Common styles
|
316 |
+
.tabs-left .nav-tabs > li,
|
317 |
+
.tabs-right .nav-tabs > li {
|
318 |
+
float: none;
|
319 |
+
}
|
320 |
+
.tabs-left .nav-tabs > li > a,
|
321 |
+
.tabs-right .nav-tabs > li > a {
|
322 |
+
min-width: 74px;
|
323 |
+
margin-right: 0;
|
324 |
+
margin-bottom: 3px;
|
325 |
+
}
|
326 |
+
|
327 |
+
// Tabs on the left
|
328 |
+
.tabs-left .nav-tabs {
|
329 |
+
float: left;
|
330 |
+
margin-right: 19px;
|
331 |
+
border-right: 1px solid #ddd;
|
332 |
+
}
|
333 |
+
.tabs-left .nav-tabs > li > a {
|
334 |
+
margin-right: -1px;
|
335 |
+
.border-radius(4px 0 0 4px);
|
336 |
+
}
|
337 |
+
.tabs-left .nav-tabs > li > a:hover {
|
338 |
+
border-color: @grayLighter #ddd @grayLighter @grayLighter;
|
339 |
+
}
|
340 |
+
.tabs-left .nav-tabs .active > a,
|
341 |
+
.tabs-left .nav-tabs .active > a:hover {
|
342 |
+
border-color: #ddd transparent #ddd #ddd;
|
343 |
+
*border-right-color: @white;
|
344 |
+
}
|
345 |
+
|
346 |
+
// Tabs on the right
|
347 |
+
.tabs-right .nav-tabs {
|
348 |
+
float: right;
|
349 |
+
margin-left: 19px;
|
350 |
+
border-left: 1px solid #ddd;
|
351 |
+
}
|
352 |
+
.tabs-right .nav-tabs > li > a {
|
353 |
+
margin-left: -1px;
|
354 |
+
.border-radius(0 4px 4px 0);
|
355 |
+
}
|
356 |
+
.tabs-right .nav-tabs > li > a:hover {
|
357 |
+
border-color: @grayLighter @grayLighter @grayLighter #ddd;
|
358 |
+
}
|
359 |
+
.tabs-right .nav-tabs .active > a,
|
360 |
+
.tabs-right .nav-tabs .active > a:hover {
|
361 |
+
border-color: #ddd #ddd #ddd transparent;
|
362 |
+
*border-left-color: @white;
|
363 |
+
}
|
themes-ai1ec/vortex/less/print.less
ADDED
@@ -0,0 +1,30 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
body { background:white; color:black; margin:0 }
|
2 |
+
#header, #navigation, #comments, #sidebar, #subcontent, #footer { display: none; }
|
3 |
+
#wpadminbar, footer { display: none; }
|
4 |
+
#page > header { display: none; }
|
5 |
+
#content { margin-top: -60px !important; }
|
6 |
+
*, .ai1ec-agenda-view .ai1ec-date { background: white !important; color: black !important; }
|
7 |
+
.thenly {
|
8 |
+
table.ai1ec-calendar-toolbar { display: none; }
|
9 |
+
.ai1ec-agenda-view .ai1ec-event.ai1ec-expanded { box-shadow: none; border: 2px solid gray !important; background: none !important }
|
10 |
+
.ai1ec-agenda-view h3.ai1ec-date-title { border: 2px solid gray !important; }
|
11 |
+
.ai1ec-agenda-view .ai1ec-event.ai1ec-expanded { }
|
12 |
+
ol.ai1ec-agenda-view h3.ai1ec-date-title { margin-top: 0.5em !important; border-radius: 0; }
|
13 |
+
h3.ai1ec-date-title { width: 5em; color: black; }
|
14 |
+
h3.ai1ec-date-title .ai1ec-month { display: inline; float: right; color: black; }
|
15 |
+
h3.ai1ec-date-title .ai1ec-day { padding: 0 !important; font-size: 1em !important; color: black; }
|
16 |
+
h3.ai1ec-date-title .ai1ec-weekday { display: inline; float: left; color: black; }
|
17 |
+
|
18 |
+
/* Agenda event description */
|
19 |
+
div.ai1ec-event-click, div.ai1ec-categories { display: none; }
|
20 |
+
div.ai1ec-event-summary, div.ai1ec-event-summary div.ai1ec-event-click, div.ai1ec-event-description { display: block !important; }
|
21 |
+
ol.ai1ec-agenda-view div.ai1ec-event-summary div.ai1ec-event-title { display: inline; }
|
22 |
+
ol.ai1ec-agenda-view div.ai1ec-event-summary div.ai1ec-event-time { display: inline; }
|
23 |
+
a.ai1ec-button { display: none; }
|
24 |
+
ol.ai1ec-agenda-view div.ai1ec-event-description { padding: 0 !important; }
|
25 |
+
ol.ai1ec-agenda-view div.ai1ec-event-overlay { display: none; }
|
26 |
+
.entry-meta { display: none; }
|
27 |
+
/* Hide the buttons */
|
28 |
+
#ai1ec-today, #ai1ec-expand-all, #ai1ec-collapse-all, #ai1ec-prev-page, #ai1ec-next-page { display: none; }
|
29 |
+
.ai1ec-subscribe, .ai1ec-subscribe-google { display: none; }
|
30 |
+
}
|
themes-ai1ec/vortex/less/reset.less
ADDED
@@ -0,0 +1,126 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
// Reset.less
|
2 |
+
// Adapted from Normalize.css http://github.com/necolas/normalize.css
|
3 |
+
// ------------------------------------------------------------------------
|
4 |
+
|
5 |
+
// Display in IE6-9 and FF3
|
6 |
+
// -------------------------
|
7 |
+
|
8 |
+
article,
|
9 |
+
aside,
|
10 |
+
details,
|
11 |
+
figcaption,
|
12 |
+
figure,
|
13 |
+
footer,
|
14 |
+
header,
|
15 |
+
hgroup,
|
16 |
+
nav,
|
17 |
+
section {
|
18 |
+
display: block;
|
19 |
+
}
|
20 |
+
|
21 |
+
// Display block in IE6-9 and FF3
|
22 |
+
// -------------------------
|
23 |
+
|
24 |
+
audio,
|
25 |
+
canvas,
|
26 |
+
video {
|
27 |
+
display: inline-block;
|
28 |
+
*display: inline;
|
29 |
+
*zoom: 1;
|
30 |
+
}
|
31 |
+
|
32 |
+
// Prevents modern browsers from displaying 'audio' without controls
|
33 |
+
// -------------------------
|
34 |
+
|
35 |
+
audio:not([controls]) {
|
36 |
+
display: none;
|
37 |
+
}
|
38 |
+
|
39 |
+
// Base settings
|
40 |
+
// -------------------------
|
41 |
+
|
42 |
+
html {
|
43 |
+
font-size: 100%;
|
44 |
+
-webkit-text-size-adjust: 100%;
|
45 |
+
-ms-text-size-adjust: 100%;
|
46 |
+
}
|
47 |
+
// Focus states
|
48 |
+
a:focus {
|
49 |
+
.tab-focus();
|
50 |
+
}
|
51 |
+
// Hover & Active
|
52 |
+
a:hover,
|
53 |
+
a:active {
|
54 |
+
outline: 0;
|
55 |
+
}
|
56 |
+
|
57 |
+
// Prevents sub and sup affecting line-height in all browsers
|
58 |
+
// -------------------------
|
59 |
+
|
60 |
+
sub,
|
61 |
+
sup {
|
62 |
+
position: relative;
|
63 |
+
font-size: 75%;
|
64 |
+
line-height: 0;
|
65 |
+
vertical-align: baseline;
|
66 |
+
}
|
67 |
+
sup {
|
68 |
+
top: -0.5em;
|
69 |
+
}
|
70 |
+
sub {
|
71 |
+
bottom: -0.25em;
|
72 |
+
}
|
73 |
+
|
74 |
+
// Img border in a's and image quality
|
75 |
+
// -------------------------
|
76 |
+
|
77 |
+
img {
|
78 |
+
height: auto;
|
79 |
+
border: 0;
|
80 |
+
-ms-interpolation-mode: bicubic;
|
81 |
+
vertical-align: middle;
|
82 |
+
}
|
83 |
+
|
84 |
+
// Forms
|
85 |
+
// -------------------------
|
86 |
+
|
87 |
+
// Font size in all browsers, margin changes, misc consistency
|
88 |
+
button,
|
89 |
+
input,
|
90 |
+
select,
|
91 |
+
textarea {
|
92 |
+
margin: 0;
|
93 |
+
font-size: 100%;
|
94 |
+
vertical-align: middle;
|
95 |
+
}
|
96 |
+
button,
|
97 |
+
input {
|
98 |
+
*overflow: visible; // Inner spacing ie IE6/7
|
99 |
+
line-height: normal; // FF3/4 have !important on line-height in UA stylesheet
|
100 |
+
}
|
101 |
+
button::-moz-focus-inner,
|
102 |
+
input::-moz-focus-inner { // Inner padding and border oddities in FF3/4
|
103 |
+
padding: 0;
|
104 |
+
border: 0;
|
105 |
+
}
|
106 |
+
button,
|
107 |
+
input[type="button"],
|
108 |
+
input[type="reset"],
|
109 |
+
input[type="submit"] {
|
110 |
+
cursor: pointer; // Cursors on all buttons applied consistently
|
111 |
+
-webkit-appearance: button; // Style clickable inputs in iOS
|
112 |
+
}
|
113 |
+
input[type="search"] { // Appearance in Safari/Chrome
|
114 |
+
-webkit-appearance: textfield;
|
115 |
+
-webkit-box-sizing: content-box;
|
116 |
+
-moz-box-sizing: content-box;
|
117 |
+
box-sizing: content-box;
|
118 |
+
}
|
119 |
+
input[type="search"]::-webkit-search-decoration,
|
120 |
+
input[type="search"]::-webkit-search-cancel-button {
|
121 |
+
-webkit-appearance: none; // Inner-padding issues in Chrome OSX, Safari 5
|
122 |
+
}
|
123 |
+
textarea {
|
124 |
+
overflow: auto; // Remove vertical scrollbar in IE6-9
|
125 |
+
vertical-align: top; // Readability and alignment cross-browser
|
126 |
+
}
|
themes-ai1ec/vortex/less/scaffolding.less
ADDED
@@ -0,0 +1,29 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
// Scaffolding
|
2 |
+
// Basic and global styles for generating a grid system, structural layout, and page templates
|
3 |
+
// -------------------------------------------------------------------------------------------
|
4 |
+
|
5 |
+
|
6 |
+
// Body reset
|
7 |
+
// ----------
|
8 |
+
|
9 |
+
body {
|
10 |
+
margin: 0;
|
11 |
+
font-family: @baseFontFamily;
|
12 |
+
font-size: @baseFontSize;
|
13 |
+
line-height: @baseLineHeight;
|
14 |
+
color: @textColor;
|
15 |
+
background-color: @bodyBackground;
|
16 |
+
}
|
17 |
+
|
18 |
+
|
19 |
+
// Links
|
20 |
+
// -----
|
21 |
+
|
22 |
+
a {
|
23 |
+
color: @linkColor;
|
24 |
+
text-decoration: none;
|
25 |
+
}
|
26 |
+
a:hover {
|
27 |
+
color: @linkColorHover;
|
28 |
+
text-decoration: underline;
|
29 |
+
}
|
themes-ai1ec/vortex/less/tooltip.less
ADDED
@@ -0,0 +1,35 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
// TOOLTIP
|
2 |
+
// ------=
|
3 |
+
|
4 |
+
.tooltip {
|
5 |
+
position: absolute;
|
6 |
+
z-index: @zindexTooltip;
|
7 |
+
display: block;
|
8 |
+
visibility: visible;
|
9 |
+
padding: 5px;
|
10 |
+
font-size: 11px;
|
11 |
+
.opacity(0);
|
12 |
+
&.in { .opacity(80); }
|
13 |
+
&.top { margin-top: -2px; }
|
14 |
+
&.right { margin-left: 2px; }
|
15 |
+
&.bottom { margin-top: 2px; }
|
16 |
+
&.left { margin-left: -2px; }
|
17 |
+
&.top .tooltip-arrow { #popoverArrow > .top(); }
|
18 |
+
&.left .tooltip-arrow { #popoverArrow > .left(); }
|
19 |
+
&.bottom .tooltip-arrow { #popoverArrow > .bottom(); }
|
20 |
+
&.right .tooltip-arrow { #popoverArrow > .right(); }
|
21 |
+
}
|
22 |
+
.tooltip-inner {
|
23 |
+
max-width: 200px;
|
24 |
+
padding: 3px 8px;
|
25 |
+
color: @white;
|
26 |
+
text-align: center;
|
27 |
+
text-decoration: none;
|
28 |
+
background-color: @black;
|
29 |
+
.border-radius(4px);
|
30 |
+
}
|
31 |
+
.tooltip-arrow {
|
32 |
+
position: absolute;
|
33 |
+
width: 0;
|
34 |
+
height: 0;
|
35 |
+
}
|
themes-ai1ec/vortex/less/type.less
ADDED
@@ -0,0 +1,234 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
// Typography.less
|
2 |
+
// Headings, body text, lists, code, and more for a versatile and durable typography system
|
3 |
+
// ----------------------------------------------------------------------------------------
|
4 |
+
|
5 |
+
|
6 |
+
// BODY TEXT
|
7 |
+
// ---------
|
8 |
+
|
9 |
+
p {
|
10 |
+
margin: 0 0 @baseLineHeight / 2;
|
11 |
+
font-family: @baseFontFamily;
|
12 |
+
font-size: @baseFontSize;
|
13 |
+
line-height: @baseLineHeight;
|
14 |
+
small {
|
15 |
+
font-size: @baseFontSize - 2;
|
16 |
+
color: @grayLight;
|
17 |
+
}
|
18 |
+
}
|
19 |
+
.lead {
|
20 |
+
margin-bottom: @baseLineHeight;
|
21 |
+
font-size: 20px;
|
22 |
+
font-weight: 200;
|
23 |
+
line-height: @baseLineHeight * 1.5;
|
24 |
+
}
|
25 |
+
|
26 |
+
// HEADINGS
|
27 |
+
// --------
|
28 |
+
|
29 |
+
h1, h2, h3, h4, h5, h6 {
|
30 |
+
margin: 0;
|
31 |
+
font-family: @headingsFontFamily;
|
32 |
+
font-weight: @headingsFontWeight;
|
33 |
+
color: @headingsColor;
|
34 |
+
text-rendering: optimizelegibility; // Fix the character spacing for headings
|
35 |
+
small {
|
36 |
+
font-weight: normal;
|
37 |
+
color: @grayLight;
|
38 |
+
}
|
39 |
+
}
|
40 |
+
h1 {
|
41 |
+
font-size: 30px;
|
42 |
+
line-height: @baseLineHeight * 2;
|
43 |
+
small {
|
44 |
+
font-size: 18px;
|
45 |
+
}
|
46 |
+
}
|
47 |
+
h2 {
|
48 |
+
font-size: 24px;
|
49 |
+
line-height: @baseLineHeight * 2;
|
50 |
+
small {
|
51 |
+
font-size: 18px;
|
52 |
+
}
|
53 |
+
}
|
54 |
+
h3 {
|
55 |
+
line-height: @baseLineHeight * 1.5;
|
56 |
+
font-size: 18px;
|
57 |
+
small {
|
58 |
+
font-size: 14px;
|
59 |
+
}
|
60 |
+
}
|
61 |
+
h4, h5, h6 {
|
62 |
+
line-height: @baseLineHeight;
|
63 |
+
}
|
64 |
+
h4 {
|
65 |
+
font-size: 14px;
|
66 |
+
small {
|
67 |
+
font-size: 12px;
|
68 |
+
}
|
69 |
+
}
|
70 |
+
h5 {
|
71 |
+
font-size: 12px;
|
72 |
+
}
|
73 |
+
h6 {
|
74 |
+
font-size: 11px;
|
75 |
+
color: @grayLight;
|
76 |
+
text-transform: uppercase;
|
77 |
+
}
|
78 |
+
|
79 |
+
// Page header
|
80 |
+
.page-header {
|
81 |
+
padding-bottom: @baseLineHeight - 1;
|
82 |
+
margin: @baseLineHeight 0;
|
83 |
+
border-bottom: 1px solid @grayLighter;
|
84 |
+
}
|
85 |
+
.page-header h1 {
|
86 |
+
line-height: 1;
|
87 |
+
}
|
88 |
+
|
89 |
+
|
90 |
+
|
91 |
+
// LISTS
|
92 |
+
// -----
|
93 |
+
|
94 |
+
// Unordered and Ordered lists
|
95 |
+
ul, ol {
|
96 |
+
padding: 0;
|
97 |
+
margin: 0 0 @baseLineHeight / 2 25px;
|
98 |
+
}
|
99 |
+
ul ul,
|
100 |
+
ul ol,
|
101 |
+
ol ol,
|
102 |
+
ol ul {
|
103 |
+
margin-bottom: 0;
|
104 |
+
}
|
105 |
+
ul {
|
106 |
+
list-style: disc;
|
107 |
+
}
|
108 |
+
ol {
|
109 |
+
list-style: decimal;
|
110 |
+
}
|
111 |
+
li {
|
112 |
+
line-height: @baseLineHeight;
|
113 |
+
}
|
114 |
+
ul.unstyled,
|
115 |
+
ol.unstyled {
|
116 |
+
margin-left: 0;
|
117 |
+
list-style: none;
|
118 |
+
}
|
119 |
+
|
120 |
+
// Description Lists
|
121 |
+
dl {
|
122 |
+
margin-bottom: @baseLineHeight;
|
123 |
+
}
|
124 |
+
dt,
|
125 |
+
dd {
|
126 |
+
line-height: @baseLineHeight;
|
127 |
+
}
|
128 |
+
dt {
|
129 |
+
font-weight: bold;
|
130 |
+
line-height: @baseLineHeight - 1; // fix jank Helvetica Neue font bug
|
131 |
+
}
|
132 |
+
dd {
|
133 |
+
margin-left: @baseLineHeight / 2;
|
134 |
+
}
|
135 |
+
// Horizontal layout (like forms)
|
136 |
+
.dl-horizontal {
|
137 |
+
dt {
|
138 |
+
float: left;
|
139 |
+
clear: left;
|
140 |
+
width: 120px;
|
141 |
+
text-align: right;
|
142 |
+
}
|
143 |
+
dd {
|
144 |
+
margin-left: 130px;
|
145 |
+
}
|
146 |
+
}
|
147 |
+
|
148 |
+
// MISC
|
149 |
+
// ----
|
150 |
+
|
151 |
+
// Horizontal rules
|
152 |
+
hr {
|
153 |
+
margin: @baseLineHeight 0;
|
154 |
+
border: 0;
|
155 |
+
border-top: 1px solid @hrBorder;
|
156 |
+
border-bottom: 1px solid @white;
|
157 |
+
}
|
158 |
+
|
159 |
+
// Emphasis
|
160 |
+
strong {
|
161 |
+
font-weight: bold;
|
162 |
+
}
|
163 |
+
em {
|
164 |
+
font-style: italic;
|
165 |
+
}
|
166 |
+
.muted {
|
167 |
+
color: @grayLight;
|
168 |
+
}
|
169 |
+
|
170 |
+
// Abbreviations and acronyms
|
171 |
+
abbr[title] {
|
172 |
+
border-bottom: 1px dotted #ddd;
|
173 |
+
cursor: help;
|
174 |
+
}
|
175 |
+
abbr.initialism {
|
176 |
+
font-size: 90%;
|
177 |
+
text-transform: uppercase;
|
178 |
+
}
|
179 |
+
|
180 |
+
// Blockquotes
|
181 |
+
blockquote {
|
182 |
+
padding: 0 0 0 15px;
|
183 |
+
margin: 0 0 @baseLineHeight;
|
184 |
+
border-left: 5px solid @grayLighter;
|
185 |
+
p {
|
186 |
+
margin-bottom: 0;
|
187 |
+
#font > .shorthand(16px,300,@baseLineHeight * 1.25);
|
188 |
+
}
|
189 |
+
small {
|
190 |
+
display: block;
|
191 |
+
line-height: @baseLineHeight;
|
192 |
+
color: @grayLight;
|
193 |
+
&:before {
|
194 |
+
content: '\2014 \00A0';
|
195 |
+
}
|
196 |
+
}
|
197 |
+
|
198 |
+
// Float right with text-align: right
|
199 |
+
&.pull-right {
|
200 |
+
float: right;
|
201 |
+
padding-left: 0;
|
202 |
+
padding-right: 15px;
|
203 |
+
border-left: 0;
|
204 |
+
border-right: 5px solid @grayLighter;
|
205 |
+
p,
|
206 |
+
small {
|
207 |
+
text-align: right;
|
208 |
+
}
|
209 |
+
}
|
210 |
+
}
|
211 |
+
|
212 |
+
// Quotes
|
213 |
+
q:before,
|
214 |
+
q:after,
|
215 |
+
blockquote:before,
|
216 |
+
blockquote:after {
|
217 |
+
content: "";
|
218 |
+
}
|
219 |
+
|
220 |
+
// Addresses
|
221 |
+
address {
|
222 |
+
display: block;
|
223 |
+
margin-bottom: @baseLineHeight;
|
224 |
+
line-height: @baseLineHeight;
|
225 |
+
font-style: normal;
|
226 |
+
}
|
227 |
+
|
228 |
+
// Misc
|
229 |
+
small {
|
230 |
+
font-size: 100%;
|
231 |
+
}
|
232 |
+
cite {
|
233 |
+
font-style: normal;
|
234 |
+
}
|
themes-ai1ec/vortex/less/utilities.less
ADDED
@@ -0,0 +1,23 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
// UTILITY CLASSES
|
2 |
+
// ---------------
|
3 |
+
|
4 |
+
// Quick floats
|
5 |
+
.pull-right {
|
6 |
+
float: right;
|
7 |
+
}
|
8 |
+
.pull-left {
|
9 |
+
float: left;
|
10 |
+
}
|
11 |
+
|
12 |
+
// Toggling content
|
13 |
+
.hide {
|
14 |
+
display: none;
|
15 |
+
}
|
16 |
+
.show {
|
17 |
+
display: block;
|
18 |
+
}
|
19 |
+
|
20 |
+
// Visibility
|
21 |
+
.invisible {
|
22 |
+
visibility: hidden;
|
23 |
+
}
|
themes-ai1ec/vortex/less/variables.less
ADDED
@@ -0,0 +1,235 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/**
|
2 |
+
* @file
|
3 |
+
*
|
4 |
+
* This is adapted from Twitter Bootstrap. Change these variables to modify the
|
5 |
+
* look of the calendar.
|
6 |
+
*/
|
7 |
+
|
8 |
+
|
9 |
+
// GLOBAL VALUES
|
10 |
+
// --------------------------------------------------
|
11 |
+
|
12 |
+
|
13 |
+
// Grays
|
14 |
+
// -------------------------
|
15 |
+
@black: #000;
|
16 |
+
@grayDarkest: #111;
|
17 |
+
@grayDarker: #222;
|
18 |
+
@grayDark: #333;
|
19 |
+
@gray: #555;
|
20 |
+
@grayLight: #999;
|
21 |
+
@grayLighter: #eee;
|
22 |
+
@grayLightest: #f0f0f0;
|
23 |
+
@white: #fff;
|
24 |
+
|
25 |
+
|
26 |
+
// Accent colors
|
27 |
+
// -------------------------
|
28 |
+
@blue: #049cdb;
|
29 |
+
@blueDark: #0064cd;
|
30 |
+
@blueLight: #E0EFFF;
|
31 |
+
@green: #49c157;
|
32 |
+
@red: #9d261d;
|
33 |
+
@yellow: #ffc40d;
|
34 |
+
@yellowLight: #ffd;
|
35 |
+
@orange: #f89406;
|
36 |
+
@pink: #c3325f;
|
37 |
+
@purple: #7a43b6;
|
38 |
+
|
39 |
+
|
40 |
+
// Scaffolding
|
41 |
+
// -------------------------
|
42 |
+
@bodyBackground: @white;
|
43 |
+
@textColor: @grayDark;
|
44 |
+
@textEmboss: @white;
|
45 |
+
|
46 |
+
// Links
|
47 |
+
// -------------------------
|
48 |
+
@linkColor: #507295;
|
49 |
+
@linkColorHover: darken(@linkColor, 15%);
|
50 |
+
|
51 |
+
|
52 |
+
// Typography
|
53 |
+
// -------------------------
|
54 |
+
@baseFontSize: 13px;
|
55 |
+
@baseFontFamily: "Helvetica Neue", Helvetica, Arial, sans-serif;
|
56 |
+
@baseLineHeight: 16px;
|
57 |
+
@altFontFamily: Georgia, "Times New Roman", Times, serif;
|
58 |
+
|
59 |
+
@headingsFontFamily: Calibri, Nunito, 'Helvetica Neue', Helvetica, Arial, sans-serif;
|
60 |
+
@headingsFontWeight: bold;
|
61 |
+
@headingsColor: @grayDark;
|
62 |
+
|
63 |
+
|
64 |
+
// Tables
|
65 |
+
// -------------------------
|
66 |
+
@tableBackground: @bodyBackground; // overall background-color
|
67 |
+
@tableBackgroundAccent: #f9f9f9; // for striping
|
68 |
+
@tableBackgroundHover: #f5f5f5; // for hover
|
69 |
+
@tableBorder: #ddd; // table and cell border
|
70 |
+
@tableLabelBackground: #f5f5f5;
|
71 |
+
@tableLabelText: mix(@textColor, @tableLabelBackground, 45%);
|
72 |
+
|
73 |
+
// Buttons
|
74 |
+
// -------------------------
|
75 |
+
@btnBackground: @white;
|
76 |
+
@btnBackgroundHighlight: darken(@btnBackground, 10%);
|
77 |
+
@btnBorder: darken(@btnBackground, 20%);
|
78 |
+
|
79 |
+
@btnPrimaryBackground: lighten(@linkColor, 5%);
|
80 |
+
@btnPrimaryBackgroundHighlight: spin(@btnPrimaryBackground, 15%);
|
81 |
+
|
82 |
+
@btnInfoBackground: @blueLight;
|
83 |
+
@btnInfoBackgroundHighlight: @blueLight;
|
84 |
+
|
85 |
+
@btnSuccessBackground: #62c462;
|
86 |
+
@btnSuccessBackgroundHighlight: #51a351;
|
87 |
+
|
88 |
+
@btnWarningBackground: lighten(@orange, 15%);
|
89 |
+
@btnWarningBackgroundHighlight: @orange;
|
90 |
+
|
91 |
+
@btnDangerBackground: #ee5f5b;
|
92 |
+
@btnDangerBackgroundHighlight: #bd362f;
|
93 |
+
|
94 |
+
@btnInverseBackground: @gray;
|
95 |
+
@btnInverseBackgroundHighlight: @grayDarker;
|
96 |
+
|
97 |
+
|
98 |
+
// Forms
|
99 |
+
// -------------------------
|
100 |
+
@inputBackground: @bodyBackground;
|
101 |
+
@inputBorder: #ccc;
|
102 |
+
@inputDisabledBackground: @grayLighter;
|
103 |
+
@labelColor: @grayLight;
|
104 |
+
|
105 |
+
|
106 |
+
// Dropdowns
|
107 |
+
// -------------------------
|
108 |
+
@dropdownBackground: @bodyBackground;
|
109 |
+
@dropdownBorder: rgba(0,0,0,.2);
|
110 |
+
@dropdownLinkColor: @textColor;
|
111 |
+
@dropdownLinkColorHover: @black;
|
112 |
+
@dropdownLinkBackgroundHover: @blueLight;
|
113 |
+
|
114 |
+
|
115 |
+
|
116 |
+
// COMPONENT VARIABLES
|
117 |
+
// --------------------------------------------------
|
118 |
+
|
119 |
+
// Z-index master list
|
120 |
+
// -------------------------
|
121 |
+
// Used for a bird's eye view of components dependent on the z-axis
|
122 |
+
// Try to avoid customizing these :)
|
123 |
+
@zindexDropdown: 2000;
|
124 |
+
@zindexPopover: 2010;
|
125 |
+
@zindexTooltip: 2020;
|
126 |
+
@zindexFixedNavbar: 2030;
|
127 |
+
@zindexModalBackdrop: 2040;
|
128 |
+
@zindexModal: 2050;
|
129 |
+
|
130 |
+
|
131 |
+
// Input placeholder text color
|
132 |
+
// -------------------------
|
133 |
+
@placeholderText: @grayLight;
|
134 |
+
|
135 |
+
|
136 |
+
// Hr border color
|
137 |
+
// -------------------------
|
138 |
+
@hrBorder: @grayLighter;
|
139 |
+
|
140 |
+
/* Not used...
|
141 |
+
// Navbar
|
142 |
+
// -------------------------
|
143 |
+
@navbarHeight: 40px;
|
144 |
+
@navbarBackground: @grayDarker;
|
145 |
+
@navbarBackgroundHighlight: @grayDark;
|
146 |
+
|
147 |
+
@navbarText: @grayLight;
|
148 |
+
@navbarLinkColor: @grayLight;
|
149 |
+
@navbarLinkColorHover: @white;
|
150 |
+
@navbarLinkColorActive: @navbarLinkColorHover;
|
151 |
+
@navbarLinkBackgroundHover: transparent;
|
152 |
+
@navbarLinkBackgroundActive: @navbarBackground;
|
153 |
+
|
154 |
+
@navbarSearchBackground: lighten(@navbarBackground, 25%);
|
155 |
+
@navbarSearchBackgroundFocus: @white;
|
156 |
+
@navbarSearchBorder: darken(@navbarSearchBackground, 30%);
|
157 |
+
@navbarSearchPlaceholderColor: #ccc;
|
158 |
+
|
159 |
+
|
160 |
+
// Hero unit
|
161 |
+
// -------------------------
|
162 |
+
@heroUnitBackground: @grayLighter;
|
163 |
+
@heroUnitHeadingColor: inherit;
|
164 |
+
@heroUnitLeadColor: inherit;
|
165 |
+
*/
|
166 |
+
|
167 |
+
// Form states and alerts
|
168 |
+
// -------------------------
|
169 |
+
@warningText: #c09853;
|
170 |
+
@warningBackground: #fcf8e3;
|
171 |
+
@warningBorder: darken(spin(@warningBackground, -10), 3%);
|
172 |
+
|
173 |
+
@errorText: #b94a48;
|
174 |
+
@errorBackground: #f2dede;
|
175 |
+
@errorBorder: darken(spin(@errorBackground, -10), 3%);
|
176 |
+
|
177 |
+
@successText: #468847;
|
178 |
+
@successBackground: #dff0d8;
|
179 |
+
@successBorder: darken(spin(@successBackground, -10), 5%);
|
180 |
+
|
181 |
+
@infoText: #3a87ad;
|
182 |
+
@infoBackground: #d9edf7;
|
183 |
+
@infoBorder: darken(spin(@infoBackground, -10), 7%);
|
184 |
+
|
185 |
+
|
186 |
+
// GRID
|
187 |
+
// --------------------------------------------------
|
188 |
+
|
189 |
+
// Default 940px grid
|
190 |
+
// -------------------------
|
191 |
+
@gridColumns: 12;
|
192 |
+
@gridColumnWidth: 60px;
|
193 |
+
@gridGutterWidth: 20px;
|
194 |
+
@gridRowWidth: (@gridColumns * @gridColumnWidth) + (@gridGutterWidth * (@gridColumns - 1));
|
195 |
+
|
196 |
+
|
197 |
+
// Fluid grid
|
198 |
+
// -------------------------
|
199 |
+
@fluidGridColumnWidth: 6.382978723%;
|
200 |
+
@fluidGridGutterWidth: 2.127659574%;
|
201 |
+
|
202 |
+
|
203 |
+
// ======================
|
204 |
+
// = Calendar constants =
|
205 |
+
// ======================
|
206 |
+
|
207 |
+
@categoryBackground: @grayLightest;
|
208 |
+
@categoryBackgroundHover: darken(@categoryBackground, 8%);
|
209 |
+
@categoryBorder: @categoryBackgroundHover;
|
210 |
+
@categoryActiveBackground: @blueLight;
|
211 |
+
@categoryActiveBackgroundHover: darken(@categoryActiveBackground, 8%);
|
212 |
+
@categoryActiveBorder: @categoryActiveBackgroundHover;
|
213 |
+
@tagActiveBackground: @categoryActiveBackground;
|
214 |
+
@todayColor: @yellowLight;
|
215 |
+
|
216 |
+
@eventDefaultColor: @linkColor;
|
217 |
+
@eventDefaultColorHover: @linkColorHover;
|
218 |
+
@eventStubAllDayText: @white;
|
219 |
+
|
220 |
+
@eventBorder: #D4D4D4;
|
221 |
+
@eventBorderHover: darken(@eventBorder, 15%);
|
222 |
+
@eventBackground: @bodyBackground;
|
223 |
+
@eventBackgroundBottom: #FAFAE3;
|
224 |
+
@eventText: @textColor;
|
225 |
+
|
226 |
+
@monthViewDateBackground: lighten(@blueLight, 2%);
|
227 |
+
|
228 |
+
@dayViewNowMarkerColor: #f2c539;
|
229 |
+
@singleEventLabelBackground: rgba(0,0,0,0.07);
|
230 |
+
|
231 |
+
@agendaDateTitleBorder: lighten(@linkColor, 20%);
|
232 |
+
@agendaDateTitleBackground: @bodyBackground;
|
233 |
+
@agendaDateTitleMonthText: @bodyBackground;
|
234 |
+
@agendaDateBackground: #f2f2f2;
|
235 |
+
@agendaTodayBackground: darken(desaturate(@todayColor, 30%), 8%);
|
{app/view → themes-ai1ec/vortex}/month.php
RENAMED
@@ -1,26 +1,27 @@
|
|
1 |
-
<h2 class="ai1ec-calendar-title"><?php echo esc_html( $title ) ?></h2>
|
2 |
-
<
|
3 |
-
|
4 |
-
|
5 |
-
|
6 |
-
|
7 |
-
|
8 |
-
|
9 |
-
|
10 |
-
|
11 |
-
|
12 |
-
|
13 |
-
|
14 |
-
|
15 |
-
|
16 |
-
|
17 |
-
</
|
|
|
18 |
<table class="ai1ec-month-view">
|
19 |
<thead>
|
20 |
<tr>
|
21 |
<?php foreach( $weekdays as $weekday ): ?>
|
22 |
<th class="ai1ec-weekday"><?php echo $weekday; ?></th>
|
23 |
-
<?php endforeach // weekday ?>
|
24 |
</tr>
|
25 |
</thead>
|
26 |
<tbody>
|
@@ -29,14 +30,26 @@
|
|
29 |
<?php foreach( $week as $day ): ?>
|
30 |
<?php if( $day['date'] ): ?>
|
31 |
<td <?php if( $day['today'] ) echo 'class="ai1ec-today"' ?>>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
32 |
<div class="ai1ec-day">
|
33 |
<div class="ai1ec-date"><?php echo $day['date'] ?></div>
|
34 |
<?php foreach( $day['events'] as $event ): ?>
|
35 |
<a href="<?php echo esc_attr( get_permalink( $event->post_id ) ) . $event->instance_id ?>"
|
|
|
36 |
class="ai1ec-event-container
|
37 |
ai1ec-event-id-<?php echo $event->post_id ?>
|
38 |
ai1ec-event-instance-id-<?php echo $event->instance_id ?>
|
39 |
-
<?php if( $event->allday ) echo 'ai1ec-allday' ?>
|
|
|
40 |
|
41 |
<?php // Insert post ID for use by JavaScript filtering later ?>
|
42 |
<input type="hidden" class="ai1ec-post-id" value="<?php echo $event->post_id ?>" />
|
1 |
+
<h2 class="ai1ec-calendar-title"><?php echo esc_html( $title ); ?></h2>
|
2 |
+
<div class="ai1ec-title-buttons btn-toolbar">
|
3 |
+
<div class="btn-group">
|
4 |
+
<a id="ai1ec-today" class="ai1ec-load-view btn btn-mini"
|
5 |
+
href="#action=ai1ec_month&ai1ec_post_ids=<?php echo $post_ids; ?>">
|
6 |
+
<?php _e( 'Today', AI1EC_PLUGIN_NAME ); ?>
|
7 |
+
</a>
|
8 |
+
</div>
|
9 |
+
<div class="ai1ec-pagination btn-group pull-right">
|
10 |
+
<?php foreach( $pagination_links as $link ): ?>
|
11 |
+
<a id="<?php echo $link['id']; ?>"
|
12 |
+
class="ai1ec-load-view btn"
|
13 |
+
href="<?php echo esc_attr( $link['href'] ); ?>&ai1ec_post_ids=<?php echo $post_ids; ?>">
|
14 |
+
<?php echo esc_html( $link['text'] ); ?>
|
15 |
+
</a>
|
16 |
+
<?php endforeach; ?>
|
17 |
+
</div>
|
18 |
+
</div>
|
19 |
<table class="ai1ec-month-view">
|
20 |
<thead>
|
21 |
<tr>
|
22 |
<?php foreach( $weekdays as $weekday ): ?>
|
23 |
<th class="ai1ec-weekday"><?php echo $weekday; ?></th>
|
24 |
+
<?php endforeach; // weekday ?>
|
25 |
</tr>
|
26 |
</thead>
|
27 |
<tbody>
|
30 |
<?php foreach( $week as $day ): ?>
|
31 |
<?php if( $day['date'] ): ?>
|
32 |
<td <?php if( $day['today'] ) echo 'class="ai1ec-today"' ?>>
|
33 |
+
|
34 |
+
<?php
|
35 |
+
// TODO: This div should not be needed, but with multi-day
|
36 |
+
// event bars it is required until a better method of arranging
|
37 |
+
// events is contrived:
|
38 |
+
if( ! $week['added_stretcher'] ): ?>
|
39 |
+
<div class="ai1ec-day-stretcher"></div>
|
40 |
+
<?php $week['added_stretcher'] = TRUE; ?>
|
41 |
+
<?php endif; ?>
|
42 |
+
|
43 |
<div class="ai1ec-day">
|
44 |
<div class="ai1ec-date"><?php echo $day['date'] ?></div>
|
45 |
<?php foreach( $day['events'] as $event ): ?>
|
46 |
<a href="<?php echo esc_attr( get_permalink( $event->post_id ) ) . $event->instance_id ?>"
|
47 |
+
<?php if( $event->multiday ) echo 'end-date="' . $event->multiday_end_date . '"'; ?>
|
48 |
class="ai1ec-event-container
|
49 |
ai1ec-event-id-<?php echo $event->post_id ?>
|
50 |
ai1ec-event-instance-id-<?php echo $event->instance_id ?>
|
51 |
+
<?php if( $event->allday ) echo 'ai1ec-allday' ?>
|
52 |
+
<?php if( $event->multiday ) echo 'ai1ec-multiday' ?>">
|
53 |
|
54 |
<?php // Insert post ID for use by JavaScript filtering later ?>
|
55 |
<input type="hidden" class="ai1ec-post-id" value="<?php echo $event->post_id ?>" />
|
themes-ai1ec/vortex/oneday.php
ADDED
@@ -0,0 +1,165 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<h2 class="ai1ec-calendar-title"><?php echo esc_html( $title ); ?></h2>
|
2 |
+
|
3 |
+
<div class="ai1ec-title-buttons btn-toolbar">
|
4 |
+
<div class="btn-group">
|
5 |
+
<a id="ai1ec-today" class="ai1ec-load-view btn btn-mini"
|
6 |
+
href="#action=ai1ec_oneday&ai1ec_post_ids=<?php echo $post_ids; ?>">
|
7 |
+
<?php _e( 'Today', AI1EC_PLUGIN_NAME ); ?>
|
8 |
+
</a>
|
9 |
+
</div>
|
10 |
+
<div class="ai1ec-pagination btn-group pull-right">
|
11 |
+
<?php foreach( $pagination_links as $link ) : ?>
|
12 |
+
<a id="<?php echo $link['id']; ?>"
|
13 |
+
class="ai1ec-load-view btn"
|
14 |
+
href="<?php echo esc_attr( $link['href'] ); ?>&ai1ec_post_ids=<?php echo $post_ids; ?>">
|
15 |
+
<?php echo esc_html( $link['text'] ); ?>
|
16 |
+
</a>
|
17 |
+
<?php endforeach; ?>
|
18 |
+
</div>
|
19 |
+
</div>
|
20 |
+
|
21 |
+
<table class="ai1ec-oneday-view-original">
|
22 |
+
<thead>
|
23 |
+
<tr>
|
24 |
+
<?php foreach( $cell_array as $date => $day ): ?>
|
25 |
+
<th class="ai1ec-weekday <?php if( $day['today'] ) echo 'ai1ec-today' ?>">
|
26 |
+
<span class="ai1ec-weekday-date"><?php echo date_i18n( 'l', $date, true )?> </span>
|
27 |
+
</th>
|
28 |
+
<?php endforeach; // weekday ?>
|
29 |
+
</tr>
|
30 |
+
<tr>
|
31 |
+
<?php foreach( $cell_array as $day ) : ?>
|
32 |
+
<td class="ai1ec-allday-events <?php if( $day['today'] ) echo 'ai1ec-today' ?>">
|
33 |
+
|
34 |
+
<?php if( ! $done_allday_label ) : ?>
|
35 |
+
<div class="ai1ec-allday-label"><?php _e( 'All-day', AI1EC_PLUGIN_NAME ) ?></div>
|
36 |
+
<?php $done_allday_label = true ?>
|
37 |
+
<?php endif ?>
|
38 |
+
|
39 |
+
<?php foreach( $day['allday'] as $event ) : ?>
|
40 |
+
<a href="<?php echo esc_attr( get_permalink( $event->post_id ) ) . $event->instance_id ?>"
|
41 |
+
class="ai1ec-event-container
|
42 |
+
ai1ec-event-id-<?php echo $event->post_id ?>
|
43 |
+
ai1ec-event-instance-id-<?php echo $event->instance_id ?>
|
44 |
+
ai1ec-allday
|
45 |
+
<?php if( $event->start_truncated ) echo 'ai1ec-start-truncated' ?>
|
46 |
+
<?php if( $event->end_truncated ) echo 'ai1ec-end-truncated' ?>">
|
47 |
+
|
48 |
+
<?php // Insert post ID for use by JavaScript filtering later ?>
|
49 |
+
<input type="hidden" class="ai1ec-post-id" value="<?php echo $event->post_id ?>" />
|
50 |
+
|
51 |
+
<div class="ai1ec-event-popup">
|
52 |
+
<div class="ai1ec-event-summary">
|
53 |
+
<?php if( $event->category_colors ): ?>
|
54 |
+
<div class="ai1ec-category-colors"><?php echo $event->category_colors ?></div>
|
55 |
+
<?php endif ?>
|
56 |
+
<?php if( $event->post_excerpt ): ?>
|
57 |
+
<strong><?php _e( 'Summary:', AI1EC_PLUGIN_NAME ) ?></strong>
|
58 |
+
<p><?php echo esc_html( $event->post_excerpt ) ?></p>
|
59 |
+
<?php endif ?>
|
60 |
+
<div class="ai1ec-read-more"><?php esc_html_e( 'click anywhere for details', AI1EC_PLUGIN_NAME ) ?></div>
|
61 |
+
</div>
|
62 |
+
<div class="ai1ec-event-popup-bg">
|
63 |
+
<span class="ai1ec-event-title">
|
64 |
+
<?php if( function_exists( 'mb_strimwidth' ) ) : ?>
|
65 |
+
<?php echo esc_html( mb_strimwidth( apply_filters( 'the_title', $event->post->post_title ), 0, 35, '...' ) ) ?></span>
|
66 |
+
<?php else : ?>
|
67 |
+
<?php $read_more = strlen( apply_filters( 'the_title', $event->post->post_title ) ) > 35 ? '...' : '' ?>
|
68 |
+
<?php echo esc_html( substr( apply_filters( 'the_title', $event->post->post_title ), 0, 35 ) . $read_more ); ?>
|
69 |
+
<?php endif; ?>
|
70 |
+
</span>
|
71 |
+
<small><?php esc_html_e( '(all-day)', AI1EC_PLUGIN_NAME ) ?></small>
|
72 |
+
</div>
|
73 |
+
</div><!-- .event-popup -->
|
74 |
+
|
75 |
+
<div class="ai1ec-event <?php if( $event->post_id == $active_event ) echo 'ai1ec-active-event' ?>" style="<?php echo $event->color_style ?>">
|
76 |
+
<span class="ai1ec-event-title"><?php echo esc_html( apply_filters( 'the_title', $event->post->post_title ) ) ?></span>
|
77 |
+
</div>
|
78 |
+
|
79 |
+
</a>
|
80 |
+
<?php endforeach; // allday ?>
|
81 |
+
|
82 |
+
</td>
|
83 |
+
<?php endforeach; // weekday ?>
|
84 |
+
</tr>
|
85 |
+
</thead>
|
86 |
+
<tbody>
|
87 |
+
<tr class="ai1ec-oneday">
|
88 |
+
<td <?php if( $day['today'] ) echo 'class="ai1ec-today"'; ?>>
|
89 |
+
|
90 |
+
<div class="ai1ec-grid-container">
|
91 |
+
<?php for( $hour = 0; $hour < 24; $hour++ ) : ?>
|
92 |
+
<div class="ai1ec-hour-marker <?php if( $hour >= 8 && $hour < 18 ) echo 'ai1ec-business-hour'; ?>" style="top: <?php echo $hour * 60; ?>px;">
|
93 |
+
<div><?php echo esc_html( date_i18n( $time_format, gmmktime( $hour, 0 ), true ) ); ?></div>
|
94 |
+
</div>
|
95 |
+
<?php for( $quarter = 1; $quarter < 4; $quarter++ ) : ?>
|
96 |
+
<div class="ai1ec-quarter-marker" style="top: <?php echo $hour * 60 + $quarter * 15 ?>px;"></div>
|
97 |
+
<?php endfor; ?>
|
98 |
+
<?php endfor; ?>
|
99 |
+
<div class="ai1ec-now-marker" style="top: <?php echo $now_top ?>px;"></div>
|
100 |
+
</div>
|
101 |
+
|
102 |
+
<div class="ai1ec-day">
|
103 |
+
<?php foreach( $day['notallday'] as $notallday ) : ?>
|
104 |
+
<?php extract( $notallday ); ?>
|
105 |
+
<a href="<?php echo esc_attr( get_permalink( $event->post_id ) ) . $event->instance_id; ?>"
|
106 |
+
class="ai1ec-event-container
|
107 |
+
ai1ec-event-id-<?php echo $event->post_id; ?>
|
108 |
+
ai1ec-event-instance-id-<?php echo $event->instance_id; ?>
|
109 |
+
<?php if( $event->start_truncated ) echo 'ai1ec-start-truncated'; ?>
|
110 |
+
<?php if( $event->end_truncated ) echo 'ai1ec-end-truncated'; ?>"
|
111 |
+
style="top: <?php echo $top; ?>px;
|
112 |
+
height: <?php echo max( $height, 31 ); ?>px;
|
113 |
+
left: <?php echo $indent * 16 + 50; ?>px;
|
114 |
+
<?php echo $event->color_style; ?>
|
115 |
+
<?php if( $event->faded_color ) : ?>
|
116 |
+
border: 2px solid <?php echo $event->faded_color; ?> !important;
|
117 |
+
border-color: <?php echo $event->rgba_color; ?> !important;
|
118 |
+
background-image: -webkit-gradient( linear, left top, left bottom, color-stop( 1, transparent ), color-stop( 1, <?php echo $event->rgba_color; ?> ) );
|
119 |
+
background-image: -webkit-linear-gradient( top, transparent, <?php echo $event->rgba_color; ?> );
|
120 |
+
background-image: -moz-linear-gradient( top, transparent, <?php echo $event->rgba_color; ?> );
|
121 |
+
background-image: -ms-linear-gradient( top, transparent, <?php echo $event->rgba_color; ?> );
|
122 |
+
background-image: -o-linear-gradient( top, transparent, <?php echo $event->rgba_color; ?> );
|
123 |
+
background-image: linear-gradient( top, transparent, <?php echo $event->rgba_color; ?> );
|
124 |
+
<?php endif; ?>
|
125 |
+
">
|
126 |
+
|
127 |
+
<?php if( $event->start_truncated ) : ?>
|
128 |
+
<div class="ai1ec-start-truncator">◤</div>
|
129 |
+
<?php endif ?>
|
130 |
+
<?php if( $event->end_truncated ) : ?>
|
131 |
+
<div class="ai1ec-end-truncator">◢</div>
|
132 |
+
<?php endif ?> <?php // Insert post ID for use by JavaScript filtering later ?>
|
133 |
+
<input type="hidden" class="ai1ec-post-id" value="<?php echo $event->post_id; ?>" />
|
134 |
+
|
135 |
+
<div class="ai1ec-event-popup">
|
136 |
+
<div class="ai1ec-event-summary"><?php if( $event->category_colors ): ?>
|
137 |
+
<div class="ai1ec-category-colors"><?php echo $event->category_colors; ?></div>
|
138 |
+
<?php endif; ?>
|
139 |
+
<?php if( $event->post_excerpt ): ?>
|
140 |
+
<strong><?php _e( 'Summary:', AI1EC_PLUGIN_NAME ); ?></strong>
|
141 |
+
<p><?php echo esc_html( $event->post_excerpt ); ?></p>
|
142 |
+
<?php endif; ?>
|
143 |
+
<div class="ai1ec-read-more"><?php esc_html_e( 'click anywhere for details', AI1EC_PLUGIN_NAME ); ?></div>
|
144 |
+
</div>
|
145 |
+
<div class="ai1ec-event-popup-bg">
|
146 |
+
<span class="ai1ec-event-time"><?php echo esc_html( $event->short_start_time ); ?></span>
|
147 |
+
<span class="ai1ec-event-title">
|
148 |
+
<?php echo esc_html( apply_filters( 'the_title', $event->post->post_title ) ); ?>
|
149 |
+
</span>
|
150 |
+
</div>
|
151 |
+
</div>
|
152 |
+
<!-- .event-popup -->
|
153 |
+
|
154 |
+
<div class="ai1ec-event <?php if( $event->post_id == $active_event ) echo 'ai1ec-active-event' ?>">
|
155 |
+
<span class="ai1ec-event-time"><?php echo esc_html( $event->short_start_time ); ?></span>
|
156 |
+
<span class="ai1ec-event-title"><?php echo esc_html( apply_filters( 'the_title', $event->post->post_title ) ); ?></span>
|
157 |
+
</div>
|
158 |
+
|
159 |
+
</a>
|
160 |
+
<?php endforeach; // events ?>
|
161 |
+
</div>
|
162 |
+
</td>
|
163 |
+
</tr>
|
164 |
+
</tbody>
|
165 |
+
</table>
|
themes-ai1ec/vortex/screenshot.png
ADDED
Binary file
|
themes-ai1ec/vortex/style.css
ADDED
@@ -0,0 +1,9 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/**
|
2 |
+
* Theme Name: Vortex
|
3 |
+
* Theme URI: http://then.ly/
|
4 |
+
* Author: Then.ly
|
5 |
+
* Author URI: http://then.ly/
|
6 |
+
* Description: The default All-in-One Calendar theme.
|
7 |
+
* Version: 1.0
|
8 |
+
* Tags: light, white, gray, blue
|
9 |
+
*/
|
{app/view → themes-ai1ec/vortex}/week.php
RENAMED
@@ -1,20 +1,21 @@
|
|
1 |
-
<h2 class="ai1ec-calendar-title"><?php echo esc_html( $title ) ?></h2>
|
2 |
-
<
|
3 |
-
|
4 |
-
|
5 |
-
|
6 |
-
|
7 |
-
|
8 |
-
|
9 |
-
|
10 |
-
|
11 |
-
|
12 |
-
|
13 |
-
|
14 |
-
|
15 |
-
|
16 |
-
|
17 |
-
</
|
|
|
18 |
<table class="ai1ec-week-view-original">
|
19 |
<thead>
|
20 |
<tr>
|
@@ -106,11 +107,25 @@
|
|
106 |
<?php extract( $notallday ) ?>
|
107 |
<a href="<?php echo esc_attr( get_permalink( $event->post_id ) ) . $event->instance_id ?>"
|
108 |
class="ai1ec-event-container
|
109 |
-
ai1ec-event-id-<?php echo $event->post_id ?>
|
110 |
-
ai1ec-event-instance-id-<?php echo $event->instance_id ?>
|
111 |
-
<?php if( $event->start_truncated ) echo 'ai1ec-start-truncated' ?>
|
112 |
-
<?php if( $event->end_truncated ) echo 'ai1ec-end-truncated' ?>"
|
113 |
-
style="top: <?php echo $top ?>px;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
114 |
|
115 |
<?php if( $event->start_truncated ) : ?><div class="ai1ec-start-truncator">◤</div><?php endif ?>
|
116 |
<?php if( $event->end_truncated ) : ?><div class="ai1ec-end-truncator">◢</div><?php endif ?>
|
1 |
+
<h2 class="ai1ec-calendar-title"><?php echo esc_html( $title ); ?></h2>
|
2 |
+
<div class="ai1ec-title-buttons btn-toolbar">
|
3 |
+
<div class="btn-group">
|
4 |
+
<a id="ai1ec-today" class="ai1ec-load-view btn btn-mini"
|
5 |
+
href="#action=ai1ec_week&ai1ec_post_ids=<?php echo $post_ids; ?>">
|
6 |
+
<?php _e( 'Today', AI1EC_PLUGIN_NAME ); ?>
|
7 |
+
</a>
|
8 |
+
</div>
|
9 |
+
<div class="ai1ec-pagination btn-group pull-right">
|
10 |
+
<?php foreach( $pagination_links as $link ) : ?>
|
11 |
+
<a id="<?php echo $link['id']; ?>"
|
12 |
+
class="ai1ec-load-view btn"
|
13 |
+
href="<?php echo esc_attr( $link['href'] ); ?>&ai1ec_post_ids=<?php echo $post_ids; ?>">
|
14 |
+
<?php echo esc_html( $link['text'] ) ?>
|
15 |
+
</a>
|
16 |
+
<?php endforeach; ?>
|
17 |
+
</div>
|
18 |
+
</div>
|
19 |
<table class="ai1ec-week-view-original">
|
20 |
<thead>
|
21 |
<tr>
|
107 |
<?php extract( $notallday ) ?>
|
108 |
<a href="<?php echo esc_attr( get_permalink( $event->post_id ) ) . $event->instance_id ?>"
|
109 |
class="ai1ec-event-container
|
110 |
+
ai1ec-event-id-<?php echo $event->post_id; ?>
|
111 |
+
ai1ec-event-instance-id-<?php echo $event->instance_id; ?>
|
112 |
+
<?php if( $event->start_truncated ) echo 'ai1ec-start-truncated'; ?>
|
113 |
+
<?php if( $event->end_truncated ) echo 'ai1ec-end-truncated'; ?>"
|
114 |
+
style="top: <?php echo $top ?>px;
|
115 |
+
height: <?php echo max( $height, 31 ); ?>px;
|
116 |
+
left: <?php echo $indent * 8 ?>px;
|
117 |
+
<?php echo $event->color_style; ?>
|
118 |
+
<?php if( $event->faded_color ) : ?>
|
119 |
+
border: 2px solid <?php echo $event->faded_color; ?> !important;
|
120 |
+
border-color: <?php echo $event->rgba_color; ?> !important;
|
121 |
+
background-image: -webkit-gradient( linear, left top, left bottom, color-stop( 1, transparent ), color-stop( 1, <?php echo $event->rgba_color; ?> ) );
|
122 |
+
background-image: -webkit-linear-gradient( top, transparent, <?php echo $event->rgba_color; ?> );
|
123 |
+
background-image: -moz-linear-gradient( top, transparent, <?php echo $event->rgba_color; ?> );
|
124 |
+
background-image: -ms-linear-gradient( top, transparent, <?php echo $event->rgba_color; ?> );
|
125 |
+
background-image: -o-linear-gradient( top, transparent, <?php echo $event->rgba_color; ?> );
|
126 |
+
background-image: linear-gradient( top, transparent, <?php echo $event->rgba_color; ?> );
|
127 |
+
<?php endif; ?>
|
128 |
+
">
|
129 |
|
130 |
<?php if( $event->start_truncated ) : ?><div class="ai1ec-start-truncator">◤</div><?php endif ?>
|
131 |
<?php if( $event->end_truncated ) : ?><div class="ai1ec-end-truncator">◢</div><?php endif ?>
|