WordPress Download Manager - Version 3.0.4

Version Description

  • Compatibility update for WordPress 5.3
  • Fixed a CSS issue wit the UI settings
Download this release

Release Info

Developer codename065
Plugin Icon 128x128 WordPress Download Manager
Version 3.0.4
Comparing to
See all releases

Code changes from version 2.9.99 to 3.0.4

Files changed (61) hide show
  1. admin/menus/class.Packages.php +7 -5
  2. admin/menus/class.Settings.php +1 -2
  3. admin/menus/class.Stats.php +6 -1
  4. admin/menus/class.Templates.php +18 -11
  5. admin/tpls/email-template-editor.php +1 -1
  6. admin/tpls/emails-template.php +1 -0
  7. admin/tpls/metaboxes/attach-file.php +8 -3
  8. admin/tpls/settings/basic.php +2 -2
  9. admin/tpls/settings/user-interface.php +2 -2
  10. admin/tpls/stats.php +3 -3
  11. admin/tpls/stats/history.php +31 -26
  12. admin/tpls/templates.php +1 -0
  13. admin/tpls/welcome.php +8 -8
  14. assets/bootstrap/css/bootstrap-theme.css +8 -8
  15. assets/bootstrap/css/bootstrap-theme.min.css +8 -8
  16. assets/bootstrap/css/bootstrap.css +33 -376
  17. assets/bootstrap/css/bootstrap.min.css +2 -5908
  18. assets/css/admin-styles.css +197 -261
  19. assets/css/simplebar.css +190 -0
  20. assets/file-type-icons/folder.png +0 -0
  21. assets/images/asset-comments.png +0 -0
  22. assets/images/file-cog.svg +13 -0
  23. assets/images/folder-o.svg +3 -0
  24. assets/images/folder.svg +4 -0
  25. assets/images/share-links.png +0 -0
  26. assets/images/spinner-bars.svg +49 -0
  27. assets/images/wpdm-welcome.png +0 -0
  28. assets/js/simplebar.js +4454 -0
  29. assets/js/vue.min.js +6 -0
  30. download-manager.php +35 -18
  31. languages/download-manager-es_ES.mo +0 -0
  32. languages/download-manager-es_ES.po +293 -119
  33. languages/download-manager-it_IT.mo +0 -0
  34. languages/download-manager-it_IT.po +429 -352
  35. languages/download-manager.mo +0 -0
  36. languages/download-manager.po +256 -120
  37. libs/class.Apply.php +85 -22
  38. libs/class.Asset.php +182 -0
  39. libs/class.AssetManager.php +483 -0
  40. libs/class.Crypt.php +14 -13
  41. libs/class.FileSystem.php +2 -1
  42. libs/class.Package.php +6 -4
  43. libs/class.PackageLocks.php +2 -2
  44. libs/class.ShortCodes.php +97 -27
  45. libs/class.Template.php +34 -14
  46. libs/class.UserDashboard.php +2 -5
  47. modules/strings.php +25 -0
  48. readme.txt +48 -5
  49. tpls/already-logged-in.php +16 -11
  50. tpls/asset-manager-ui.php +1461 -0
  51. tpls/link-templates/link-template-default-old.php +2 -2
  52. tpls/lock-options-iframe.php +2 -2
  53. tpls/lost-password-form.php +64 -0
  54. tpls/reset-password-form.php +79 -0
  55. tpls/wpdm-all-downloads.php +2 -0
  56. tpls/wpdm-asset.php +29 -0
  57. tpls/wpdm-login-form.php +112 -218
  58. tpls/wpdm-reg-form.php +138 -80
  59. wpdm-core.php +5 -0
  60. wpdm-functions.php +78 -103
  61. wpdm-start-download.php +2 -1
admin/menus/class.Packages.php CHANGED
@@ -72,7 +72,7 @@ class Packages
72
 
73
 
74
  function uploadFile(){
75
- check_ajax_referer('wpdm_admin_upload_file');
76
  if(!current_user_can('upload_files')) die('-2');
77
 
78
  $name = isset($_FILES['package_file']['name']) && !isset($_REQUEST["chunks"])?$_FILES['package_file']['name']:$_REQUEST['name'];
@@ -96,11 +96,12 @@ class Packages
96
  $filename = sanitize_file_name($filename);
97
 
98
  if(isset($_REQUEST["chunks"])) $this->chunkUploadFile(UPLOAD_DIR.$filename);
99
- else
100
- move_uploaded_file($_FILES['package_file']['tmp_name'],UPLOAD_DIR.$filename);
101
- $filename = apply_filters("wpdm_after_upload_file", $filename);
 
102
  //@unlink($status['file']);
103
- echo "|||".$filename."|||";
104
  exit;
105
  }
106
 
@@ -130,6 +131,7 @@ class Packages
130
  if (!$chunks || $chunk == $chunks - 1) {
131
  // Strip the temp .part suffix off
132
  rename("{$destFilePath}.part", $destFilePath);
 
133
  }
134
  }
135
 
72
 
73
 
74
  function uploadFile(){
75
+ check_ajax_referer(NONCE_KEY);
76
  if(!current_user_can('upload_files')) die('-2');
77
 
78
  $name = isset($_FILES['package_file']['name']) && !isset($_REQUEST["chunks"])?$_FILES['package_file']['name']:$_REQUEST['name'];
96
  $filename = sanitize_file_name($filename);
97
 
98
  if(isset($_REQUEST["chunks"])) $this->chunkUploadFile(UPLOAD_DIR.$filename);
99
+ else {
100
+ move_uploaded_file($_FILES['package_file']['tmp_name'], UPLOAD_DIR . $filename);
101
+ do_action("wpdm_after_upload_file", UPLOAD_DIR . $filename);
102
+ }
103
  //@unlink($status['file']);
104
+ echo "|||".$filename."|||".wpdm_file_size(UPLOAD_DIR.$filename)."|||";
105
  exit;
106
  }
107
 
131
  if (!$chunks || $chunk == $chunks - 1) {
132
  // Strip the temp .part suffix off
133
  rename("{$destFilePath}.part", $destFilePath);
134
+ do_action("wpdm_after_upload_file", $destFilePath);
135
  }
136
  }
137
 
admin/menus/class.Settings.php CHANGED
@@ -257,8 +257,7 @@ class Settings
257
 
258
  foreach($_POST as $k => $v){
259
  if(strpos("__".$k, '_wpdm_')){
260
- $v = wpdm_escs($v);
261
- update_option($k, $v);
262
  }
263
  }
264
  die('Settings Saved Successfully!');
257
 
258
  foreach($_POST as $k => $v){
259
  if(strpos("__".$k, '_wpdm_')){
260
+ update_option($k, wpdm_sanitize_array($v));
 
261
  }
262
  }
263
  die('Settings Saved Successfully!');
admin/menus/class.Stats.php CHANGED
@@ -28,7 +28,12 @@ class Stats
28
  function Export(){
29
  if(wpdm_query_var('page') == 'wpdm-stats' && wpdm_query_var('task') == 'export'){
30
  global $wpdb;
31
- $data = $wpdb->get_results("select s.*, p.post_title as file from {$wpdb->prefix}ahm_download_stats s, {$wpdb->prefix}posts p where p.ID = s.pid order by id DESC");
 
 
 
 
 
32
  FileSystem::downloadHeaders("download-stats.csv");
33
  echo "File,User ID,Order ID,Date,Timestamp,IP\r\n";
34
  foreach ($data as $d){
28
  function Export(){
29
  if(wpdm_query_var('page') == 'wpdm-stats' && wpdm_query_var('task') == 'export'){
30
  global $wpdb;
31
+ $adcond = array();
32
+ if(wpdm_query_var('pid', 'int') > 0) $adcond[] = "pid = ".wpdm_query_var('pid', 'int');
33
+ if(wpdm_query_var('uid', 'int') > 0) $adcond[] = "uid = ".wpdm_query_var('uid', 'int');
34
+ if(wpdm_query_var('ip') > 0) $adcond[] = "ip = '".wpdm_query_var('ip')."'";
35
+ $adcond = (count($adcond) > 0) ? " and ".implode(" and ", $adcond) : "";
36
+ $data = $wpdb->get_results("select s.*, p.post_title as file from {$wpdb->prefix}ahm_download_stats s, {$wpdb->prefix}posts p where p.ID = s.pid {$adcond} order by id DESC");
37
  FileSystem::downloadHeaders("download-stats.csv");
38
  echo "File,User ID,Order ID,Date,Timestamp,IP\r\n";
39
  foreach ($data as $d){
admin/menus/class.Templates.php CHANGED
@@ -24,7 +24,7 @@ class Templates
24
  function UI(){
25
  $ttype = isset($_GET['_type']) ? esc_attr($_GET['_type']) : 'link';
26
 
27
- if (isset($_GET['task']) && $_GET['task'] == 'EditEmailTemplate')
28
  \WPDM\admin\menus\Templates::EmailEditor();
29
  else
30
  \WPDM\admin\menus\Templates::Show();
@@ -96,14 +96,18 @@ class Templates
96
  }
97
 
98
  if (isset($_POST['email_template'])) {
99
- $email_template = wpdm_query_var('email_template', array('validate' => array('subject' => '', 'message' => 'escs', 'from_name' => '', 'from_email' => '')));
100
- update_option("__wpdm_etpl_".wpdm_query_var('id'), $email_template);
101
- if(wpdm_is_ajax()){
102
- die('ok');
 
 
 
 
 
103
  }
104
- header("location: edit.php?post_type=wpdmpro&&page=templates&_type=$ttype");
105
- die();
106
  }
 
107
  }
108
 
109
  /**
@@ -220,10 +224,13 @@ class Templates
220
  }
221
 
222
  function saveEmailSetting(){
223
- update_option('__wpdm_email_template', wpdm_query_var('__wpdm_email_template'));
224
- $email_settings = wpdm_query_var('__wpdm_email_setting', array('validate' => array('logo' => 'url', 'banner' => 'url', 'youtube' => 'url', 'twitter' => 'url', 'facebook' => 'url', 'footer_text' => 'txts')));
225
- update_option('__wpdm_email_setting', $email_settings);
226
- die("Done!");
 
 
 
227
  }
228
 
229
  function updateTemplateStatus(){
24
  function UI(){
25
  $ttype = isset($_GET['_type']) ? esc_attr($_GET['_type']) : 'link';
26
 
27
+ if (wpdm_query_var('task') === 'EditEmailTemplate')
28
  \WPDM\admin\menus\Templates::EmailEditor();
29
  else
30
  \WPDM\admin\menus\Templates::Show();
96
  }
97
 
98
  if (isset($_POST['email_template'])) {
99
+ if(current_user_can(WPDM_ADMIN_CAP) && wp_verify_nonce(wpdm_query_var('__wpdm_nonce'), NONCE_KEY)) {
100
+ check_ajax_referer(NONCE_KEY, '__wpdm_nonce');
101
+ $email_template = wpdm_query_var('email_template', array('validate' => array('subject' => '', 'message' => 'escs', 'from_name' => '', 'from_email' => '')));
102
+ update_option("__wpdm_etpl_" . wpdm_query_var('id'), $email_template);
103
+ if (wpdm_is_ajax()) {
104
+ die('ok');
105
+ }
106
+ header("location: edit.php?post_type=wpdmpro&&page=templates&_type=$ttype");
107
+ die();
108
  }
 
 
109
  }
110
+
111
  }
112
 
113
  /**
224
  }
225
 
226
  function saveEmailSetting(){
227
+ if(current_user_can(WPDM_ADMIN_CAP) && wp_verify_nonce(wpdm_query_var('__wpdm_nonce'), NONCE_KEY)) {
228
+ check_ajax_referer(NONCE_KEY, '__wpdm_nonce');
229
+ update_option('__wpdm_email_template', wpdm_query_var('__wpdm_email_template'));
230
+ $email_settings = wpdm_query_var('__wpdm_email_setting', array('validate' => array('logo' => 'url', 'banner' => 'url', 'youtube' => 'url', 'twitter' => 'url', 'facebook' => 'url', 'footer_text' => 'txts')));
231
+ update_option('__wpdm_email_setting', $email_settings);
232
+ die("Done!");
233
+ }
234
  }
235
 
236
  function updateTemplateStatus(){
admin/tpls/email-template-editor.php CHANGED
@@ -36,7 +36,7 @@ $info = \WPDM\Email::info($id);
36
  <div class="col-md-8">
37
 
38
  <form action="" method="post" id="email-editor-form">
39
-
40
 
41
  <input type="hidden" name="id" value="<?php echo $id; ?>" />
42
  <input type="text" name="email_template[subject]" required="required" title="<?php echo __( "Email Subject" , "download-manager" ); ?>" placeholder="<?php echo __( "Email Subject" , "download-manager" ); ?>" x-moz-errormessage="<?php echo __( "Email Subject" , "download-manager" ); ?>" value="<?php echo $tpl['subject']; ?>" class="form-control input-lg">
36
  <div class="col-md-8">
37
 
38
  <form action="" method="post" id="email-editor-form">
39
+ <?php wp_nonce_field(NONCE_KEY, '__wpdm_nonce') ?>
40
 
41
  <input type="hidden" name="id" value="<?php echo $id; ?>" />
42
  <input type="text" name="email_template[subject]" required="required" title="<?php echo __( "Email Subject" , "download-manager" ); ?>" placeholder="<?php echo __( "Email Subject" , "download-manager" ); ?>" x-moz-errormessage="<?php echo __( "Email Subject" , "download-manager" ); ?>" value="<?php echo $tpl['subject']; ?>" class="form-control input-lg">
admin/tpls/emails-template.php CHANGED
@@ -28,6 +28,7 @@
28
 
29
 
30
  <form method="post" action="" id="posts-filter" style="padding: 20px;">
 
31
  <input name="task" value="save-etpl" type="hidden" />
32
  <div style="margin-bottom: 10px;padding-bottom: 10px;border-bottom: 1px solid #eeeeee;">
33
  <b>Load Template:</b>
28
 
29
 
30
  <form method="post" action="" id="posts-filter" style="padding: 20px;">
31
+ <?php wp_nonce_field(NONCE_KEY, '__wpdm_nonce') ?>
32
  <input name="task" value="save-etpl" type="hidden" />
33
  <div style="margin-bottom: 10px;padding-bottom: 10px;border-bottom: 1px solid #eeeeee;">
34
  <b>Load Template:</b>
admin/tpls/metaboxes/attach-file.php CHANGED
@@ -25,8 +25,13 @@
25
  }
26
 
27
  ?>
 
 
 
 
 
 
28
 
29
- <div style="position: relative;"><strong><?php echo basename($afile); ?></strong><br/><?php echo $filesize; ?> <a href='#' id="dcf" title="Delete Current File" style="position: absolute;right:0;top:0;height:32px;"><img src="<?php echo plugins_url('/download-manager/assets/images/error.png'); ?>" /></a></div>
30
  <?php } else echo "<span style='font-weight:bold;color:#ddd'>". __('No file uploaded yet!', 'download-manager')."</span>"; ?>
31
  <div style="clear: both;"></div>
32
  </div>
@@ -71,7 +76,7 @@
71
  'urlstream_upload' => true,
72
  // additional post data to send to our ajax hook
73
  'multipart_params' => array(
74
- '_ajax_nonce' => wp_create_nonce('wpdm_admin_upload_file'),
75
  'action' => 'wpdm_admin_upload_file', // the ajax action name
76
  ),
77
  );
@@ -149,7 +154,7 @@
149
  else {
150
  var data = response.split("|||");
151
  jQuery('#wpdmfile').val(data[1]);
152
- jQuery('#cfl').html('<div><strong>' + data[1] + '</strong> <a href="#" id="dcf" title="<?php _e('Delete Current File', 'download-manager');?>" style="position: absolute;right:0;top:0;height:32px;"><img src="<?php echo plugins_url('/download-manager/assets/images/error.png'); ?>" /></a>').slideDown();
153
  }
154
  });
155
  });
25
  }
26
 
27
  ?>
28
+ <div class="media">
29
+ <a href="#" id="dcf" title="Delete Current File" class="pull-right" style="font-size:24px">
30
+ <i class="fa fa-trash color-red"></i>
31
+ </a>
32
+ <div class="media-body"><strong><?php echo basename($afile); ?></strong><br><?php echo wpdm_file_size($afile); ?></div>
33
+ </div>
34
 
 
35
  <?php } else echo "<span style='font-weight:bold;color:#ddd'>". __('No file uploaded yet!', 'download-manager')."</span>"; ?>
36
  <div style="clear: both;"></div>
37
  </div>
76
  'urlstream_upload' => true,
77
  // additional post data to send to our ajax hook
78
  'multipart_params' => array(
79
+ '_ajax_nonce' => wp_create_nonce(NONCE_KEY),
80
  'action' => 'wpdm_admin_upload_file', // the ajax action name
81
  ),
82
  );
154
  else {
155
  var data = response.split("|||");
156
  jQuery('#wpdmfile').val(data[1]);
157
+ jQuery('#cfl').html('<div class="media"><a href="#" class="pull-right ttip" id="dcf" title="<?php _e('Delete Current File', 'download-manager');?>" style="font-size: 24px"><i class="fa fa-trash color-red"></i></a><div class="media-body"><strong>' + data[1] + '</strong><br/>'+data[2]+' </div></div>').slideDown();
158
  }
159
  });
160
  });
admin/tpls/settings/basic.php CHANGED
@@ -54,9 +54,9 @@
54
  <div class="form-group">
55
  <label><?php echo __('Server File Browser Base Dir:','download-manager'); ?></label>
56
  <div class="input-group">
57
- <input type=text class="form-control" id="_wpdm_file_browser_root" name="_wpdm_file_browser_root" value="<?php echo htmlspecialchars(stripslashes_deep(get_option('_wpdm_file_browser_root',ABSPATH))); ?>" />
58
  <span class="input-group-btn">
59
- <button class="btn btn-secondary ttip" title="<?php _e('Reset Base Dir'); ?>" type="button" onclick="jQuery('#_wpdm_file_browser_root').val('<?php echo rtrim(ABSPATH,'/'); ?>');"><i class="fas fa-redo"></i></button>
60
  </span>
61
  </div>
62
  </div>
54
  <div class="form-group">
55
  <label><?php echo __('Server File Browser Base Dir:','download-manager'); ?></label>
56
  <div class="input-group">
57
+ <input type=text class="form-control" id="_wpdm_file_browser_root" name="_wpdm_file_browser_root" value="<?php echo htmlspecialchars(stripslashes_deep(get_option('_wpdm_file_browser_root', str_replace("\\", "/", ABSPATH)))); ?>" />
58
  <span class="input-group-btn">
59
+ <button class="btn btn-secondary ttip" title="<?php _e('Reset Base Dir'); ?>" type="button" onclick="jQuery('#_wpdm_file_browser_root').val('<?php echo rtrim(str_replace("\\", "/", ABSPATH),'/'); ?>');"><i class="fas fa-redo"></i></button>
60
  </span>
61
  </div>
62
  </div>
admin/tpls/settings/user-interface.php CHANGED
@@ -162,10 +162,10 @@ $ui_button_sc = get_option('__wpdm_ui_download_button_sc');
162
  text-align: center;
163
  }
164
  .wp-picker-container .wp-color-result.button{
165
- width: 24px;
166
  float: right;
167
  padding: 2px !important;
168
- height: 24px;
169
  margin: 0 !important;
170
  border: 0 !important;
171
  border-radius: 500px;
162
  text-align: center;
163
  }
164
  .wp-picker-container .wp-color-result.button{
165
+ width: 28px;
166
  float: right;
167
  padding: 2px !important;
168
+ height: 28px;
169
  margin: 0 !important;
170
  border: 0 !important;
171
  border-radius: 500px;
admin/tpls/stats.php CHANGED
@@ -3,9 +3,9 @@
3
 
4
  <div class="panel panel-default" id="wpdm-wrapper-panel">
5
  <div class="panel-heading">
6
- <button type="button" id="cdh" class="btn btn-default btn-sm pull-right" style="font-weight: 600;margin-left: 10px;"><i class="sinc fas fa-sync color-purple"></i><?php _e("Clear History",'download-manager'); ?></button>
7
- <a class="btn btn-default btn-sm pull-right" href="edit.php?post_type=wpdmpro&page=wpdm-stats&task=export" style="font-weight: 600"><i class="sinc fa fa-download color-green"></i><?php _e("Export History",'download-manager'); ?></a>
8
- <b><i class="fa fa-bar-chart-o color-purple"></i> &nbsp; <?php echo __('Download History','download-manager'); ?></b>
9
 
10
  </div>
11
 
3
 
4
  <div class="panel panel-default" id="wpdm-wrapper-panel">
5
  <div class="panel-heading">
6
+ <button type="button" id="cdh" class="btn btn-danger btn-sm pull-right" style="font-weight: 600;margin-left: 10px;"><i class="sinc fas fa-trash"></i><?php _e("Clear History",'download-manager'); ?></button>
7
+ <a class="btn btn-secondary btn-sm pull-right" href="edit.php?post_type=wpdmpro&page=wpdm-stats&task=export<?php echo wpdm_query_var('pid', 'int')?'&pid='.wpdm_query_var('pid', 'int'):''; ?><?php echo wpdm_query_var('uid', 'int')?'&uid='.wpdm_query_var('uid', 'int'):''; ?><?php echo wpdm_query_var('ip')?'&ip='.wpdm_query_var('ip'):''; ?>" style="font-weight: 600"><i class="sinc fa fa-file-export"></i><?php _e("Export History",'download-manager'); ?></a>
8
+ <b><i class="fa fa-history color-purple"></i> &nbsp; <a href="edit.php?post_type=wpdmpro&page=wpdm-stats"><?php echo __('Download History','download-manager'); ?></a></b>
9
 
10
  </div>
11
 
admin/tpls/stats/history.php CHANGED
@@ -1,4 +1,4 @@
1
- <div class="panel panel-default dashboard-panel">
2
 
3
  <table class="table">
4
  <thead>
@@ -30,30 +30,35 @@
30
  ?>
31
 
32
  </tbody>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
33
  </table>
34
- <div class="panel-footer">
35
- <?php
36
 
37
- isset($_GET['pgd']) && $_GET['pgd'] > 1 ? $current = (int)$_GET['pgd'] : $current = 1;
38
- $pagination = array(
39
- 'base' => @add_query_arg('pgd','%#%'),
40
- 'format' => '',
41
- 'total' => ceil($wpdb->get_var("select count(*) from {$wpdb->prefix}ahm_download_stats")/$items_per_page),
42
- 'current' => $current,
43
- 'show_all' => false,
44
- 'type' => 'list',
45
- 'prev_next' => True,
46
- 'prev_text' => '<i class="icon icon-angle-left"></i> Previous',
47
- 'next_text' => 'Next <i class="icon icon-angle-right"></i>',
48
- );
49
-
50
- //if( $wp_rewrite->using_permalinks() && !is_search())
51
- // $pagination['base'] = user_trailingslashit( trailingslashit( remove_query_arg('s',get_pagenum_link(1) ) ) . 'paged=%#%', 'paged');
52
-
53
- if( !empty($wp_query->query_vars['s']) )
54
- $pagination['add_args'] = array('s'=>get_query_var('s'));
55
-
56
- echo '<div class="text-center">' . str_replace('<ul class=\'page-numbers\'>','<ul class="pagination pagination-centered page-numbers" style="margin: 0">', paginate_links($pagination)) . '</div>';
57
- ?>
58
- </div>
59
- </div>
1
+
2
 
3
  <table class="table">
4
  <thead>
30
  ?>
31
 
32
  </tbody>
33
+ <tfoot>
34
+ <tr>
35
+ <th colspan="3">
36
+ <?php
37
+ isset($_GET['pgd']) && $_GET['pgd'] > 1 ? $current = (int)$_GET['pgd'] : $current = 1;
38
+ $pagination = array(
39
+ 'base' => @add_query_arg('pgd','%#%'),
40
+ 'format' => '',
41
+ 'total' => ceil($wpdb->get_var("select count(*) from {$wpdb->prefix}ahm_download_stats")/$items_per_page),
42
+ 'current' => $current,
43
+ 'show_all' => false,
44
+ 'type' => 'list',
45
+ 'prev_next' => True,
46
+ 'prev_text' => '<i class="icon icon-angle-left"></i> Previous',
47
+ 'next_text' => 'Next <i class="icon icon-angle-right"></i>',
48
+ );
49
+
50
+ //if( $wp_rewrite->using_permalinks() && !is_search())
51
+ // $pagination['base'] = user_trailingslashit( trailingslashit( remove_query_arg('s',get_pagenum_link(1) ) ) . 'paged=%#%', 'paged');
52
+
53
+ if( !empty($wp_query->query_vars['s']) )
54
+ $pagination['add_args'] = array('s'=>get_query_var('s'));
55
+
56
+ echo '<div class="text-center">' . str_replace('<ul class=\'page-numbers\'>','<ul class="pagination pagination-centered page-numbers" style="margin: 0">', paginate_links($pagination)) . '</div>';
57
+ ?>
58
+ </th>
59
+ </tr>
60
+ </tfoot>
61
  </table>
 
 
62
 
63
+
64
+
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
admin/tpls/templates.php CHANGED
@@ -94,6 +94,7 @@
94
 
95
  <?php if($ttype == 'email'){ ?>
96
  <form method="post" id="emlstform">
 
97
  <div class="panel panel-default">
98
  <div class="panel-heading">Email Settings</div>
99
  <div class="panel-body">
94
 
95
  <?php if($ttype == 'email'){ ?>
96
  <form method="post" id="emlstform">
97
+ <?php wp_nonce_field(NONCE_KEY, '__wpdm_nonce') ?>
98
  <div class="panel panel-default">
99
  <div class="panel-heading">Email Settings</div>
100
  <div class="panel-body">
admin/tpls/welcome.php CHANGED
@@ -231,13 +231,13 @@
231
  <div class="container-fluid" style="margin-top: 10px;max-width: 1200px">
232
  <div class="row">
233
  <div class="col-md-12">
234
- <div class="well text-center">
235
  <img src="<?php echo WPDM_BASE_URL; ?>assets/images/wpdm-welcome.png" style="max-width: 100%" />
236
  </div>
237
 
238
  </div>
239
  <?php //if(!function_exists('wpdm_tinymce')){ ?>
240
- <div class="col-md-12 lead text-center">Lets install following add-ons to make your WordPress Download Manager more awesome<br/></div>
241
  <div class="col-md-4">
242
  <div class="panel panel-default">
243
  <div style="min-height: 130px;height: 130px;overflow: hidden" class="panel-body">
@@ -324,24 +324,24 @@
324
 
325
  <div class="col-md-12 lead">
326
  <h3>What's New?</h3>
327
- What new with WordPress Download Manager Pro v2.9:
328
  </div>
329
 
330
  <div class="col-md-4 r">
331
 
332
- <b>Download History</b>
333
- Now you also can see who downloaded which file with their IP address
334
 
335
  </div>
336
  <div class="col-md-4 r">
337
- <b>Developer Friendly</b>
338
- Reorganized total codebase to make it more developer friendly
339
 
340
  </div>
341
  <div class="col-md-4 r">
342
 
343
  <b>More Features</b>
344
- Improved admin UI and front-end short-code templates, one click updates for wpdm add-ons
345
  </div>
346
 
347
 
231
  <div class="container-fluid" style="margin-top: 10px;max-width: 1200px">
232
  <div class="row">
233
  <div class="col-md-12">
234
+ <div class="well text-center" style="padding: 30px 95px">
235
  <img src="<?php echo WPDM_BASE_URL; ?>assets/images/wpdm-welcome.png" style="max-width: 100%" />
236
  </div>
237
 
238
  </div>
239
  <?php //if(!function_exists('wpdm_tinymce')){ ?>
240
+ <div class="col-md-12 lead text-center">Let's install the following add-ons to make your WordPress Download Manager more awesome<br/></div>
241
  <div class="col-md-4">
242
  <div class="panel panel-default">
243
  <div style="min-height: 130px;height: 130px;overflow: hidden" class="panel-body">
324
 
325
  <div class="col-md-12 lead">
326
  <h3>What's New?</h3>
327
+ What new with WordPress Download Manager v3.0:
328
  </div>
329
 
330
  <div class="col-md-4 r">
331
 
332
+ <b>Asset Manager</b>
333
+ Added awesome asset management option, get control over all files.Upload, edit, delete or update directly from wp admin.
334
 
335
  </div>
336
  <div class="col-md-4 r">
337
+ <b>Asset Shortcode</b>
338
+ Embed any asset/file easily and securely in any page/post using a simple shortcode generated by asset manager.
339
 
340
  </div>
341
  <div class="col-md-4 r">
342
 
343
  <b>More Features</b>
344
+ Improved admin UI and front-end short-code templates, one click updates for wpdm add-ons, improved gutenberg compatibility.
345
  </div>
346
 
347
 
assets/bootstrap/css/bootstrap-theme.css CHANGED
@@ -1,4 +1,4 @@
1
- @import url(https://fonts.googleapis.com/css?family=Montserrat:400,700|Source+Sans+Pro:600,300,300italic);
2
  /*!
3
  * Eden v1.0.0
4
  * Homepage: http://scripteden.com
@@ -700,19 +700,19 @@
700
  .w3eden .btn {
701
  border: 0;
702
  }
703
- .w3eden .btn-default,
704
  .w3eden .flat-default,
705
  .w3eden .flat-default.btn-bordered:hover {
706
  background-color: #bdc3c7;
707
  color: #ffffff;
708
  }
709
- .w3eden .btn-default:hover:not(.no-hover),
710
  .w3eden .flat-default:hover:not(.no-hover),
711
  .w3eden .flat-default.btn-bordered {
712
  background-color: #cbd1d5;
713
  color: #ffffff;
714
  }
715
- .w3eden .btn-default:active:not(.no-hover),
716
  .w3eden .flat-default:active:not(.no-hover),
717
  .w3eden .flat-default.btn-bordered {
718
  background-color: #a5abaf;
@@ -815,20 +815,20 @@
815
  background-color: #d54a3a;
816
  color: #ffffff;
817
  }
818
- .w3eden .btn-inverse,
819
  .w3eden .flat-inverse,
820
  .w3eden .flat-inverse.btn-bordered:hover {
821
  background-color: #34495e;
822
  color: #ffffff !important;
823
  }
824
- .w3eden .btn-inverse:hover:not(.no-hover),
825
  .w3eden .flat-inverse:hover:not(.no-hover),
826
  .w3eden .flat-inverse.btn-bordered {
827
  background-color: #435f75;
828
  color: #ffffff !important;
829
  }
830
- .w3eden .btn-inverse:focus,
831
- .w3eden .btn-inverse:active,
832
  .w3eden .flat-inverse:active,
833
  .w3eden .flat-inverse.btn-bordered:hover {
834
  background-color: #17222e;
1
+ @import url(http://fonts.googleapis.com/css?family=Montserrat:400,700|Source+Sans+Pro:600,300,300italic);
2
  /*!
3
  * Eden v1.0.0
4
  * Homepage: http://scripteden.com
700
  .w3eden .btn {
701
  border: 0;
702
  }
703
+ .w3eden .btn-secondary,
704
  .w3eden .flat-default,
705
  .w3eden .flat-default.btn-bordered:hover {
706
  background-color: #bdc3c7;
707
  color: #ffffff;
708
  }
709
+ .w3eden .btn-secondary:hover:not(.no-hover),
710
  .w3eden .flat-default:hover:not(.no-hover),
711
  .w3eden .flat-default.btn-bordered {
712
  background-color: #cbd1d5;
713
  color: #ffffff;
714
  }
715
+ .w3eden .btn-secondary:active:not(.no-hover),
716
  .w3eden .flat-default:active:not(.no-hover),
717
  .w3eden .flat-default.btn-bordered {
718
  background-color: #a5abaf;
815
  background-color: #d54a3a;
816
  color: #ffffff;
817
  }
818
+ .w3eden .btn-secondary,
819
  .w3eden .flat-inverse,
820
  .w3eden .flat-inverse.btn-bordered:hover {
821
  background-color: #34495e;
822
  color: #ffffff !important;
823
  }
824
+ .w3eden .btn-secondary:hover:not(.no-hover),
825
  .w3eden .flat-inverse:hover:not(.no-hover),
826
  .w3eden .flat-inverse.btn-bordered {
827
  background-color: #435f75;
828
  color: #ffffff !important;
829
  }
830
+ .w3eden .btn-secondary:focus,
831
+ .w3eden .btn-secondary:active,
832
  .w3eden .flat-inverse:active,
833
  .w3eden .flat-inverse.btn-bordered:hover {
834
  background-color: #17222e;
assets/bootstrap/css/bootstrap-theme.min.css CHANGED
@@ -9,7 +9,7 @@
9
  .w3eden .btn:focus{
10
  outline: none !important;
11
  }
12
- .w3eden .btn-default,
13
  .w3eden .btn-primary,
14
  .w3eden .btn-success,
15
  .w3eden .btn-info,
@@ -19,13 +19,13 @@
19
  -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
20
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
21
  }
22
- .w3eden .btn-default:active,
23
  .w3eden .btn-primary:active,
24
  .w3eden .btn-success:active,
25
  .w3eden .btn-info:active,
26
  .w3eden .btn-warning:active,
27
  .w3eden .btn-danger:active,
28
- .w3eden .btn-default.active,
29
  .w3eden .btn-primary.active,
30
  .w3eden .btn-success.active,
31
  .w3eden .btn-info.active,
@@ -38,7 +38,7 @@
38
  .w3eden .btn.active {
39
  background-image: none;
40
  }
41
- .w3eden .btn-default {
42
  text-shadow: 0 1px 0 #fff;
43
  background-image: -webkit-gradient(linear, left 0, left 100%, from(#ffffff), to(#e0e0e0));
44
  background-image: -webkit-linear-gradient(top, #ffffff 0, #e0e0e0 100%);
@@ -50,13 +50,13 @@
50
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe0e0e0', GradientType=0);
51
  filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
52
  }
53
- .w3eden .btn-default:hover,
54
- .w3eden .btn-default:focus {
55
  background-color: #e0e0e0;
56
  background-position: 0 -15px;
57
  }
58
- .w3eden .btn-default:active,
59
- .w3eden .btn-default.active {
60
  background-color: #e0e0e0;
61
  border-color: #dbdbdb;
62
  }
9
  .w3eden .btn:focus{
10
  outline: none !important;
11
  }
12
+ .w3eden .btn-secondary,
13
  .w3eden .btn-primary,
14
  .w3eden .btn-success,
15
  .w3eden .btn-info,
19
  -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
20
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
21
  }
22
+ .w3eden .btn-secondary:active,
23
  .w3eden .btn-primary:active,
24
  .w3eden .btn-success:active,
25
  .w3eden .btn-info:active,
26
  .w3eden .btn-warning:active,
27
  .w3eden .btn-danger:active,
28
+ .w3eden .btn-secondary.active,
29
  .w3eden .btn-primary.active,
30
  .w3eden .btn-success.active,
31
  .w3eden .btn-info.active,
38
  .w3eden .btn.active {
39
  background-image: none;
40
  }
41
+ .w3eden .btn-secondary {
42
  text-shadow: 0 1px 0 #fff;
43
  background-image: -webkit-gradient(linear, left 0, left 100%, from(#ffffff), to(#e0e0e0));
44
  background-image: -webkit-linear-gradient(top, #ffffff 0, #e0e0e0 100%);
50
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe0e0e0', GradientType=0);
51
  filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
52
  }
53
+ .w3eden .btn-secondary:hover,
54
+ .w3eden .btn-secondary:focus {
55
  background-color: #e0e0e0;
56
  background-position: 0 -15px;
57
  }
58
+ .w3eden .btn-secondary:active,
59
+ .w3eden .btn-secondary.active {
60
  background-color: #e0e0e0;
61
  border-color: #dbdbdb;
62
  }
assets/bootstrap/css/bootstrap.css CHANGED
@@ -688,35 +688,6 @@
688
  .w3eden blockquote small:before {
689
  content: '\2014 \00A0';
690
  }
691
- .w3eden .blockquote-reverse,
692
- .w3eden blockquote.pull-right {
693
- padding-right: 15px;
694
- padding-left: 0;
695
- text-align: right;
696
- border-right: 5px solid #eee;
697
- border-left: 0;
698
- }
699
- .w3eden .blockquote-reverse .small:before,
700
- .w3eden .blockquote-reverse footer:before,
701
- .w3eden .blockquote-reverse small:before,
702
- .w3eden blockquote.pull-right .small:before,
703
- .w3eden blockquote.pull-right footer:before,
704
- .w3eden blockquote.pull-right small:before {
705
- content: '';
706
- }
707
- .w3eden .blockquote-reverse .small:after,
708
- .w3eden .blockquote-reverse footer:after,
709
- .w3eden .blockquote-reverse small:after,
710
- .w3eden blockquote.pull-right .small:after,
711
- .w3eden blockquote.pull-right footer:after,
712
- .w3eden blockquote.pull-right small:after {
713
- content: '\00A0 \2014';
714
- }
715
- .w3eden address {
716
- margin-bottom: 20px;
717
- font-style: normal;
718
- line-height: 1.42857143;
719
- }
720
  .w3eden code,
721
  .w3eden kbd,
722
  .w3eden pre,
@@ -1073,84 +1044,7 @@
1073
  .w3eden .col-sm-1 {
1074
  width: 8.33333333%;
1075
  }
1076
- .w3eden .col-sm-pull-12 {
1077
- right: 100%;
1078
- }
1079
- .w3eden .col-sm-pull-11 {
1080
- right: 91.66666667%;
1081
- }
1082
- .w3eden .col-sm-pull-10 {
1083
- right: 83.33333333%;
1084
- }
1085
- .w3eden .col-sm-pull-9 {
1086
- right: 75%;
1087
- }
1088
- .w3eden .col-sm-pull-8 {
1089
- right: 66.66666667%;
1090
- }
1091
- .w3eden .col-sm-pull-7 {
1092
- right: 58.33333333%;
1093
- }
1094
- .w3eden .col-sm-pull-6 {
1095
- right: 50%;
1096
- }
1097
- .w3eden .col-sm-pull-5 {
1098
- right: 41.66666667%;
1099
- }
1100
- .w3eden .col-sm-pull-4 {
1101
- right: 33.33333333%;
1102
- }
1103
- .w3eden .col-sm-pull-3 {
1104
- right: 25%;
1105
- }
1106
- .w3eden .col-sm-pull-2 {
1107
- right: 16.66666667%;
1108
- }
1109
- .w3eden .col-sm-pull-1 {
1110
- right: 8.33333333%;
1111
- }
1112
- .w3eden .col-sm-pull-0 {
1113
- right: auto;
1114
- }
1115
- .w3eden .col-sm-push-12 {
1116
- left: 100%;
1117
- }
1118
- .w3eden .col-sm-push-11 {
1119
- left: 91.66666667%;
1120
- }
1121
- .w3eden .col-sm-push-10 {
1122
- left: 83.33333333%;
1123
- }
1124
- .w3eden .col-sm-push-9 {
1125
- left: 75%;
1126
- }
1127
- .w3eden .col-sm-push-8 {
1128
- left: 66.66666667%;
1129
- }
1130
- .w3eden .col-sm-push-7 {
1131
- left: 58.33333333%;
1132
- }
1133
- .w3eden .col-sm-push-6 {
1134
- left: 50%;
1135
- }
1136
- .w3eden .col-sm-push-5 {
1137
- left: 41.66666667%;
1138
- }
1139
- .w3eden .col-sm-push-4 {
1140
- left: 33.33333333%;
1141
- }
1142
- .w3eden .col-sm-push-3 {
1143
- left: 25%;
1144
- }
1145
- .w3eden .col-sm-push-2 {
1146
- left: 16.66666667%;
1147
- }
1148
- .w3eden .col-sm-push-1 {
1149
- left: 8.33333333%;
1150
- }
1151
- .w3eden .col-sm-push-0 {
1152
- left: auto;
1153
- }
1154
  .w3eden .col-sm-offset-12 {
1155
  margin-left: 100%;
1156
  }
@@ -1242,84 +1136,7 @@
1242
  .w3eden .col-md-1 {
1243
  width: 8.33333333%;
1244
  }
1245
- .w3eden .col-md-pull-12 {
1246
- right: 100%;
1247
- }
1248
- .w3eden .col-md-pull-11 {
1249
- right: 91.66666667%;
1250
- }
1251
- .w3eden .col-md-pull-10 {
1252
- right: 83.33333333%;
1253
- }
1254
- .w3eden .col-md-pull-9 {
1255
- right: 75%;
1256
- }
1257
- .w3eden .col-md-pull-8 {
1258
- right: 66.66666667%;
1259
- }
1260
- .w3eden .col-md-pull-7 {
1261
- right: 58.33333333%;
1262
- }
1263
- .w3eden .col-md-pull-6 {
1264
- right: 50%;
1265
- }
1266
- .w3eden .col-md-pull-5 {
1267
- right: 41.66666667%;
1268
- }
1269
- .w3eden .col-md-pull-4 {
1270
- right: 33.33333333%;
1271
- }
1272
- .w3eden .col-md-pull-3 {
1273
- right: 25%;
1274
- }
1275
- .w3eden .col-md-pull-2 {
1276
- right: 16.66666667%;
1277
- }
1278
- .w3eden .col-md-pull-1 {
1279
- right: 8.33333333%;
1280
- }
1281
- .w3eden .col-md-pull-0 {
1282
- right: auto;
1283
- }
1284
- .w3eden .col-md-push-12 {
1285
- left: 100%;
1286
- }
1287
- .w3eden .col-md-push-11 {
1288
- left: 91.66666667%;
1289
- }
1290
- .w3eden .col-md-push-10 {
1291
- left: 83.33333333%;
1292
- }
1293
- .w3eden .col-md-push-9 {
1294
- left: 75%;
1295
- }
1296
- .w3eden .col-md-push-8 {
1297
- left: 66.66666667%;
1298
- }
1299
- .w3eden .col-md-push-7 {
1300
- left: 58.33333333%;
1301
- }
1302
- .w3eden .col-md-push-6 {
1303
- left: 50%;
1304
- }
1305
- .w3eden .col-md-push-5 {
1306
- left: 41.66666667%;
1307
- }
1308
- .w3eden .col-md-push-4 {
1309
- left: 33.33333333%;
1310
- }
1311
- .w3eden .col-md-push-3 {
1312
- left: 25%;
1313
- }
1314
- .w3eden .col-md-push-2 {
1315
- left: 16.66666667%;
1316
- }
1317
- .w3eden .col-md-push-1 {
1318
- left: 8.33333333%;
1319
- }
1320
- .w3eden .col-md-push-0 {
1321
- left: auto;
1322
- }
1323
  .w3eden .col-md-offset-12 {
1324
  margin-left: 100%;
1325
  }
@@ -1411,84 +1228,7 @@
1411
  .w3eden .col-lg-1 {
1412
  width: 8.33333333%;
1413
  }
1414
- .w3eden .col-lg-pull-12 {
1415
- right: 100%;
1416
- }
1417
- .w3eden .col-lg-pull-11 {
1418
- right: 91.66666667%;
1419
- }
1420
- .w3eden .col-lg-pull-10 {
1421
- right: 83.33333333%;
1422
- }
1423
- .w3eden .col-lg-pull-9 {
1424
- right: 75%;
1425
- }
1426
- .w3eden .col-lg-pull-8 {
1427
- right: 66.66666667%;
1428
- }
1429
- .w3eden .col-lg-pull-7 {
1430
- right: 58.33333333%;
1431
- }
1432
- .w3eden .col-lg-pull-6 {
1433
- right: 50%;
1434
- }
1435
- .w3eden .col-lg-pull-5 {
1436
- right: 41.66666667%;
1437
- }
1438
- .w3eden .col-lg-pull-4 {
1439
- right: 33.33333333%;
1440
- }
1441
- .w3eden .col-lg-pull-3 {
1442
- right: 25%;
1443
- }
1444
- .w3eden .col-lg-pull-2 {
1445
- right: 16.66666667%;
1446
- }
1447
- .w3eden .col-lg-pull-1 {
1448
- right: 8.33333333%;
1449
- }
1450
- .w3eden .col-lg-pull-0 {
1451
- right: auto;
1452
- }
1453
- .w3eden .col-lg-push-12 {
1454
- left: 100%;
1455
- }
1456
- .w3eden .col-lg-push-11 {
1457
- left: 91.66666667%;
1458
- }
1459
- .w3eden .col-lg-push-10 {
1460
- left: 83.33333333%;
1461
- }
1462
- .w3eden .col-lg-push-9 {
1463
- left: 75%;
1464
- }
1465
- .w3eden .col-lg-push-8 {
1466
- left: 66.66666667%;
1467
- }
1468
- .w3eden .col-lg-push-7 {
1469
- left: 58.33333333%;
1470
- }
1471
- .w3eden .col-lg-push-6 {
1472
- left: 50%;
1473
- }
1474
- .w3eden .col-lg-push-5 {
1475
- left: 41.66666667%;
1476
- }
1477
- .w3eden .col-lg-push-4 {
1478
- left: 33.33333333%;
1479
- }
1480
- .w3eden .col-lg-push-3 {
1481
- left: 25%;
1482
- }
1483
- .w3eden .col-lg-push-2 {
1484
- left: 16.66666667%;
1485
- }
1486
- .w3eden .col-lg-push-1 {
1487
- left: 8.33333333%;
1488
- }
1489
- .w3eden .col-lg-push-0 {
1490
- left: auto;
1491
- }
1492
  .w3eden .col-lg-offset-12 {
1493
  margin-left: 100%;
1494
  }
@@ -1636,90 +1376,7 @@
1636
  .w3eden .table-hover > tbody > tr > th.active:hover {
1637
  background-color: #e8e8e8;
1638
  }
1639
- .w3eden .table > tbody > tr.success > td,
1640
- .w3eden .table > tbody > tr.success > th,
1641
- .w3eden .table > tbody > tr > td.success,
1642
- .w3eden .table > tbody > tr > th.success,
1643
- .w3eden .table > tfoot > tr.success > td,
1644
- .w3eden .table > tfoot > tr.success > th,
1645
- .w3eden .table > tfoot > tr > td.success,
1646
- .w3eden .table > tfoot > tr > th.success,
1647
- .w3eden .table > thead > tr.success > td,
1648
- .w3eden .table > thead > tr.success > th,
1649
- .w3eden .table > thead > tr > td.success,
1650
- .w3eden .table > thead > tr > th.success {
1651
- background-color: #dff0d8;
1652
- }
1653
- .w3eden .table-hover > tbody > tr.success:hover > td,
1654
- .w3eden .table-hover > tbody > tr.success:hover > th,
1655
- .w3eden .table-hover > tbody > tr:hover > .success,
1656
- .w3eden .table-hover > tbody > tr > td.success:hover,
1657
- .w3eden .table-hover > tbody > tr > th.success:hover {
1658
- background-color: #d0e9c6;
1659
- }
1660
- .w3eden .table > tbody > tr.info > td,
1661
- .w3eden .table > tbody > tr.info > th,
1662
- .w3eden .table > tbody > tr > td.info,
1663
- .w3eden .table > tbody > tr > th.info,
1664
- .w3eden .table > tfoot > tr.info > td,
1665
- .w3eden .table > tfoot > tr.info > th,
1666
- .w3eden .table > tfoot > tr > td.info,
1667
- .w3eden .table > tfoot > tr > th.info,
1668
- .w3eden .table > thead > tr.info > td,
1669
- .w3eden .table > thead > tr.info > th,
1670
- .w3eden .table > thead > tr > td.info,
1671
- .w3eden .table > thead > tr > th.info {
1672
- background-color: #d9edf7;
1673
- }
1674
- .w3eden .table-hover > tbody > tr.info:hover > td,
1675
- .w3eden .table-hover > tbody > tr.info:hover > th,
1676
- .w3eden .table-hover > tbody > tr:hover > .info,
1677
- .w3eden .table-hover > tbody > tr > td.info:hover,
1678
- .w3eden .table-hover > tbody > tr > th.info:hover {
1679
- background-color: #c4e3f3;
1680
- }
1681
- .w3eden .table > tbody > tr.warning > td,
1682
- .w3eden .table > tbody > tr.warning > th,
1683
- .w3eden .table > tbody > tr > td.warning,
1684
- .w3eden .table > tbody > tr > th.warning,
1685
- .w3eden .table > tfoot > tr.warning > td,
1686
- .w3eden .table > tfoot > tr.warning > th,
1687
- .w3eden .table > tfoot > tr > td.warning,
1688
- .w3eden .table > tfoot > tr > th.warning,
1689
- .w3eden .table > thead > tr.warning > td,
1690
- .w3eden .table > thead > tr.warning > th,
1691
- .w3eden .table > thead > tr > td.warning,
1692
- .w3eden .table > thead > tr > th.warning {
1693
- background-color: #fcf8e3;
1694
- }
1695
- .w3eden .table-hover > tbody > tr.warning:hover > td,
1696
- .w3eden .table-hover > tbody > tr.warning:hover > th,
1697
- .w3eden .table-hover > tbody > tr:hover > .warning,
1698
- .w3eden .table-hover > tbody > tr > td.warning:hover,
1699
- .w3eden .table-hover > tbody > tr > th.warning:hover {
1700
- background-color: #faf2cc;
1701
- }
1702
- .w3eden .table > tbody > tr.danger > td,
1703
- .w3eden .table > tbody > tr.danger > th,
1704
- .w3eden .table > tbody > tr > td.danger,
1705
- .w3eden .table > tbody > tr > th.danger,
1706
- .w3eden .table > tfoot > tr.danger > td,
1707
- .w3eden .table > tfoot > tr.danger > th,
1708
- .w3eden .table > tfoot > tr > td.danger,
1709
- .w3eden .table > tfoot > tr > th.danger,
1710
- .w3eden .table > thead > tr.danger > td,
1711
- .w3eden .table > thead > tr.danger > th,
1712
- .w3eden .table > thead > tr > td.danger,
1713
- .w3eden .table > thead > tr > th.danger {
1714
- background-color: #f2dede;
1715
- }
1716
- .w3eden .table-hover > tbody > tr.danger:hover > td,
1717
- .w3eden .table-hover > tbody > tr.danger:hover > th,
1718
- .w3eden .table-hover > tbody > tr:hover > .danger,
1719
- .w3eden .table-hover > tbody > tr > td.danger:hover,
1720
- .w3eden .table-hover > tbody > tr > th.danger:hover {
1721
- background-color: #ebcccc;
1722
- }
1723
  .w3eden .table-responsive {
1724
  min-height: .01%;
1725
  overflow-x: auto;
@@ -2329,48 +1986,48 @@
2329
  box-shadow: none;
2330
  opacity: 0.65;
2331
  }
2332
- .w3eden .btn-default {
2333
  color: #333;
2334
  background-color: #fff;
2335
  border-color: #cccccc;
2336
  }
2337
- .w3eden .btn-default.active,
2338
- .w3eden .btn-default.focus,
2339
- .w3eden .btn-default:active,
2340
- .w3eden .btn-default:focus,
2341
- .w3eden .btn-default:hover,
2342
- .w3eden .open > .dropdown-toggle.btn-default {
2343
  color: #333;
2344
  background-color: #e6e6e6;
2345
  border-color: #adadad;
2346
  }
2347
- .w3eden .btn-default.active,
2348
- .w3eden .btn-default:active,
2349
- .w3eden .open > .dropdown-toggle.btn-default {
2350
  background-image: none;
2351
  }
2352
- .w3eden .btn-default.disabled,
2353
- .w3eden .btn-default.disabled.active,
2354
- .w3eden .btn-default.disabled.focus,
2355
- .w3eden .btn-default.disabled:active,
2356
- .w3eden .btn-default.disabled:focus,
2357
- .w3eden .btn-default.disabled:hover,
2358
- .w3eden .btn-default[disabled],
2359
- .w3eden .btn-default[disabled].active,
2360
- .w3eden .btn-default[disabled].focus,
2361
- .w3eden .btn-default[disabled]:active,
2362
- .w3eden .btn-default[disabled]:focus,
2363
- .w3eden .btn-default[disabled]:hover,
2364
- .w3eden fieldset[disabled] .btn-default,
2365
- .w3eden fieldset[disabled] .btn-default.active,
2366
- .w3eden fieldset[disabled] .btn-default.focus,
2367
- .w3eden fieldset[disabled] .btn-default:active,
2368
- .w3eden fieldset[disabled] .btn-default:focus,
2369
- .w3eden fieldset[disabled] .btn-default:hover {
2370
  background-color: #fff;
2371
  border-color: #cccccc;
2372
  }
2373
- .w3eden .btn-default .badge {
2374
  color: #fff;
2375
  background-color: #333333;
2376
  }
688
  .w3eden blockquote small:before {
689
  content: '\2014 \00A0';
690
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
691
  .w3eden code,
692
  .w3eden kbd,
693
  .w3eden pre,
1044
  .w3eden .col-sm-1 {
1045
  width: 8.33333333%;
1046
  }
1047
+
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1048
  .w3eden .col-sm-offset-12 {
1049
  margin-left: 100%;
1050
  }
1136
  .w3eden .col-md-1 {
1137
  width: 8.33333333%;
1138
  }
1139
+
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1140
  .w3eden .col-md-offset-12 {
1141
  margin-left: 100%;
1142
  }
1228
  .w3eden .col-lg-1 {
1229
  width: 8.33333333%;
1230
  }
1231
+
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1232
  .w3eden .col-lg-offset-12 {
1233
  margin-left: 100%;
1234
  }
1376
  .w3eden .table-hover > tbody > tr > th.active:hover {
1377
  background-color: #e8e8e8;
1378
  }
1379
+
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1380
  .w3eden .table-responsive {
1381
  min-height: .01%;
1382
  overflow-x: auto;
1986
  box-shadow: none;
1987
  opacity: 0.65;
1988
  }
1989
+ .w3eden .btn-secondary {
1990
  color: #333;
1991
  background-color: #fff;
1992
  border-color: #cccccc;
1993
  }
1994
+ .w3eden .btn-secondary.active,
1995
+ .w3eden .btn-secondary.focus,
1996
+ .w3eden .btn-secondary:active,
1997
+ .w3eden .btn-secondary:focus,
1998
+ .w3eden .btn-secondary:hover,
1999
+ .w3eden .open > .dropdown-toggle.btn-secondary {
2000
  color: #333;
2001
  background-color: #e6e6e6;
2002
  border-color: #adadad;
2003
  }
2004
+ .w3eden .btn-secondary.active,
2005
+ .w3eden .btn-secondary:active,
2006
+ .w3eden .open > .dropdown-toggle.btn-secondary {
2007
  background-image: none;
2008
  }
2009
+ .w3eden .btn-secondary.disabled,
2010
+ .w3eden .btn-secondary.disabled.active,
2011
+ .w3eden .btn-secondary.disabled.focus,
2012
+ .w3eden .btn-secondary.disabled:active,
2013
+ .w3eden .btn-secondary.disabled:focus,
2014
+ .w3eden .btn-secondary.disabled:hover,
2015
+ .w3eden .btn-secondary[disabled],
2016
+ .w3eden .btn-secondary[disabled].active,
2017
+ .w3eden .btn-secondary[disabled].focus,
2018
+ .w3eden .btn-secondary[disabled]:active,
2019
+ .w3eden .btn-secondary[disabled]:focus,
2020
+ .w3eden .btn-secondary[disabled]:hover,
2021
+ .w3eden fieldset[disabled] .btn-secondary,
2022
+ .w3eden fieldset[disabled] .btn-secondary.active,
2023
+ .w3eden fieldset[disabled] .btn-secondary.focus,
2024
+ .w3eden fieldset[disabled] .btn-secondary:active,
2025
+ .w3eden fieldset[disabled] .btn-secondary:focus,
2026
+ .w3eden fieldset[disabled] .btn-secondary:hover {
2027
  background-color: #fff;
2028
  border-color: #cccccc;
2029
  }
2030
+ .w3eden .btn-secondary .badge {
2031
  color: #fff;
2032
  background-color: #333333;
2033
  }
assets/bootstrap/css/bootstrap.min.css CHANGED
@@ -1,5912 +1,6 @@
1
-
2
  /*!
3
  * Bootstrap v3.3.4 (http://getbootstrap.com)
4
  * Copyright 2011-2015 Twitter, Inc.
5
  * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
6
- */
7
- /*! normalize.css v3.0.2 | MIT License | git.io/normalize */
8
- /*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */
9
-
10
- .w3eden html {
11
- font-family: sans-serif;
12
- -webkit-text-size-adjust: 100%;
13
- -ms-text-size-adjust: 100%;
14
- }
15
- .w3eden body {
16
- margin: 0;
17
- }
18
- .w3eden article,
19
- .w3eden aside,
20
- .w3eden details,
21
- .w3eden figcaption,
22
- .w3eden figure,
23
- .w3eden footer,
24
- .w3eden header,
25
- .w3eden hgroup,
26
- .w3eden main,
27
- .w3eden menu,
28
- .w3eden nav,
29
- .w3eden section,
30
- .w3eden summary {
31
- display: block;
32
- }
33
- .w3eden audio,
34
- .w3eden canvas,
35
- .w3eden progress,
36
- .w3eden video {
37
- display: inline-block;
38
- vertical-align: baseline;
39
- }
40
- .w3eden audio:not([controls]) {
41
- display: none;
42
- height: 0;
43
- }
44
- .w3eden [hidden],
45
- .w3eden template {
46
- display: none;
47
- }
48
- .w3eden a {
49
- background-color: transparent;
50
- }
51
- .w3eden a:active,
52
- .w3eden a:hover {
53
- outline: 0;
54
- }
55
- .w3eden abbr[title] {
56
- border-bottom: 1px dotted;
57
- }
58
- .w3eden b,
59
- .w3eden strong {
60
- font-weight: 700;
61
- }
62
- .w3eden dfn {
63
- font-style: italic;
64
- }
65
- .w3eden h1 {
66
- margin: .67em 0;
67
- font-size: 2em;
68
- }
69
- .w3eden mark {
70
- color: #000;
71
- background: #ffff00;
72
- }
73
- .w3eden small {
74
- font-size: 80%;
75
- }
76
- .w3eden sub,
77
- .w3eden sup {
78
- position: relative;
79
- font-size: 75%;
80
- line-height: 0;
81
- vertical-align: baseline;
82
- }
83
- .w3eden sup {
84
- top: -0.5em;
85
- }
86
- .w3eden sub {
87
- bottom: -0.25em;
88
- }
89
- .w3eden img {
90
- border: 0;
91
- }
92
- .w3eden svg:not(:root) {
93
- overflow: hidden;
94
- }
95
- .w3eden figure {
96
- margin: 1em 40px;
97
- }
98
- .w3eden hr {
99
- height: 0;
100
- -webkit-box-sizing: content-box;
101
- -moz-box-sizing: content-box;
102
- box-sizing: content-box;
103
- }
104
- .w3eden pre {
105
- overflow: auto;
106
- }
107
- .w3eden code,
108
- .w3eden kbd,
109
- .w3eden pre,
110
- .w3eden samp {
111
- font-family: monospace,monospace;
112
- font-size: 1em;
113
- }
114
- .w3eden button,
115
- .w3eden input,
116
- .w3eden optgroup,
117
- .w3eden select,
118
- .w3eden textarea {
119
- margin: 0;
120
- font: inherit;
121
- color: inherit;
122
- }
123
- .w3eden button {
124
- overflow: visible;
125
- }
126
- .w3eden button,
127
- .w3eden select {
128
- text-transform: none;
129
- }
130
- .w3eden button,
131
- .w3eden html input[type=button],
132
- .w3eden input[type=reset],
133
- .w3eden input[type=submit] {
134
- -webkit-appearance: button;
135
- cursor: pointer;
136
- }
137
- .w3eden button[disabled],
138
- .w3eden html input[disabled] {
139
- cursor: default;
140
- }
141
- .w3eden button::-moz-focus-inner,
142
- .w3eden input::-moz-focus-inner {
143
- padding: 0;
144
- border: 0;
145
- }
146
- .w3eden input {
147
- line-height: normal;
148
- }
149
- .w3eden input[type=checkbox],
150
- .w3eden input[type=radio] {
151
- -webkit-box-sizing: border-box;
152
- -moz-box-sizing: border-box;
153
- box-sizing: border-box;
154
- padding: 0;
155
- }
156
- .w3eden input[type=number]::-webkit-inner-spin-button,
157
- .w3eden input[type=number]::-webkit-outer-spin-button {
158
- height: auto;
159
- }
160
- .w3eden input[type=search] {
161
- -webkit-box-sizing: content-box;
162
- -moz-box-sizing: content-box;
163
- box-sizing: content-box;
164
- -webkit-appearance: textfield;
165
- }
166
- .w3eden input[type=search]::-webkit-search-cancel-button,
167
- .w3eden input[type=search]::-webkit-search-decoration {
168
- -webkit-appearance: none;
169
- }
170
- .w3eden fieldset {
171
- padding: .35em .625em .75em;
172
- margin: 0 2px;
173
- border: 1px solid #c0c0c0;
174
- }
175
- .w3eden legend {
176
- padding: 0;
177
- border: 0;
178
- }
179
- .w3eden textarea {
180
- overflow: auto;
181
- }
182
- .w3eden optgroup {
183
- font-weight: 700;
184
- }
185
- .w3eden table {
186
- border-spacing: 0;
187
- border-collapse: collapse;
188
- }
189
- .w3eden td,
190
- .w3eden th {
191
- padding: 0;
192
- }
193
- @media print {
194
- .w3eden *,
195
- .w3eden :after,
196
- .w3eden :before {
197
- color: #000!important;
198
- text-shadow: none!important;
199
- background: 0 0!important;
200
- -webkit-box-shadow: none!important;
201
- box-shadow: none !important;
202
- }
203
- .w3eden a,
204
- .w3eden a:visited {
205
- text-decoration: underline;
206
- }
207
- .w3eden a[href]:after {
208
- content: " (" attr(href) ")";
209
- }
210
- .w3eden abbr[title]:after {
211
- content: " (" attr(title) ")";
212
- }
213
- .w3eden a[href^="javascript:"]:after,
214
- .w3eden a[href^="#"]:after {
215
- content: "";
216
- }
217
- .w3eden blockquote,
218
- .w3eden pre {
219
- border: 1px solid #999;
220
- page-break-inside: avoid;
221
- }
222
- .w3eden thead {
223
- display: table-header-group;
224
- }
225
- .w3eden img,
226
- .w3eden tr {
227
- page-break-inside: avoid;
228
- }
229
- .w3eden img {
230
- max-width: 100% !important;
231
- }
232
- .w3eden h2,
233
- .w3eden h3,
234
- .w3eden p {
235
- orphans: 3;
236
- widows: 3;
237
- }
238
- .w3eden h2,
239
- .w3eden h3 {
240
- page-break-after: avoid;
241
- }
242
- .w3eden select {
243
- background: #ffffff !important;
244
- }
245
- .w3eden .navbar {
246
- display: none;
247
- }
248
- .w3eden .btn > .caret,
249
- .w3eden .dropup > .btn > .caret {
250
- border-top-color: #000000 !important;
251
- }
252
- .w3eden .label {
253
- border: 1px solid #000000;
254
- }
255
- .w3eden .table {
256
- border-collapse: collapse !important;
257
- }
258
- .w3eden .table td,
259
- .w3eden .table th {
260
- background-color: #ffffff !important;
261
- }
262
- .w3eden .table-bordered td,
263
- .w3eden .table-bordered th {
264
- border: 1px solid #dddddd !important;
265
- }
266
- }
267
-
268
- .w3eden * {
269
- -webkit-box-sizing: border-box;
270
- -moz-box-sizing: border-box;
271
- box-sizing: border-box;
272
- }
273
- .w3eden :after,
274
- .w3eden :before {
275
- -webkit-box-sizing: border-box;
276
- -moz-box-sizing: border-box;
277
- box-sizing: border-box;
278
- }
279
- .w3eden html {
280
- font-size: 10px;
281
- -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
282
- }
283
- .w3eden body {
284
- font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
285
- font-size: 14px;
286
- line-height: 1.42857143;
287
- color: #333;
288
- background-color: #ffffff;
289
- }
290
- .w3eden button,
291
- .w3eden input,
292
- .w3eden select,
293
- .w3eden textarea {
294
- font-family: inherit;
295
- font-size: inherit;
296
- line-height: inherit;
297
- }
298
- .w3eden a {
299
- color: #337ab7;
300
- text-decoration: none;
301
- }
302
- .w3eden a:focus,
303
- .w3eden a:hover {
304
- color: #23527c;
305
- text-decoration: underline;
306
- }
307
- .w3eden a:focus {
308
- outline: thin dotted;
309
- outline: 5px auto -webkit-focus-ring-color;
310
- outline-offset: -2px;
311
- }
312
- .w3eden figure {
313
- margin: 0;
314
- }
315
- .w3eden img {
316
- vertical-align: middle;
317
- }
318
- .w3eden .carousel-inner > .item > a > img,
319
- .w3eden .carousel-inner > .item > img,
320
- .w3eden .img-responsive,
321
- .w3eden .thumbnail a > img,
322
- .w3eden .thumbnail > img {
323
- display: block;
324
- max-width: 100%;
325
- height: auto;
326
- }
327
- .w3eden .img-rounded {
328
- border-radius: 6px;
329
- }
330
- .w3eden .img-thumbnail {
331
- display: inline-block;
332
- max-width: 100%;
333
- height: auto;
334
- padding: 4px;
335
- line-height: 1.42857143;
336
- background-color: #fff;
337
- border: 1px solid #ddd;
338
- border-radius: 4px;
339
- -webkit-transition: all 0.2s ease-in-out;
340
- -o-transition: all 0.2s ease-in-out;
341
- transition: all 0.2s ease-in-out;
342
- }
343
- .w3eden .img-circle {
344
- border-radius: 50%;
345
- }
346
- .w3eden hr {
347
- margin-top: 20px;
348
- margin-bottom: 20px;
349
- border: 0;
350
- border-top: 1px solid #eeeeee;
351
- }
352
- .w3eden .sr-only {
353
- position: absolute;
354
- width: 1px;
355
- height: 1px;
356
- padding: 0;
357
- margin: -1px;
358
- overflow: hidden;
359
- clip: rect(0, 0, 0, 0);
360
- border: 0;
361
- }
362
- .w3eden .sr-only-focusable:active,
363
- .w3eden .sr-only-focusable:focus {
364
- position: static;
365
- width: auto;
366
- height: auto;
367
- margin: 0;
368
- overflow: visible;
369
- clip: auto;
370
- }
371
- .w3eden [role=button] {
372
- cursor: pointer;
373
- }
374
- .w3eden .h1,
375
- .w3eden .h2,
376
- .w3eden .h3,
377
- .w3eden .h4,
378
- .w3eden .h5,
379
- .w3eden .h6,
380
- .w3eden h1,
381
- .w3eden h2,
382
- .w3eden h3,
383
- .w3eden h4,
384
- .w3eden h5,
385
- .w3eden h6 {
386
- font-family: inherit;
387
- font-weight: 500;
388
- line-height: 1.1;
389
- color: inherit;
390
- }
391
- .w3eden .h1 .small,
392
- .w3eden .h1 small,
393
- .w3eden .h2 .small,
394
- .w3eden .h2 small,
395
- .w3eden .h3 .small,
396
- .w3eden .h3 small,
397
- .w3eden .h4 .small,
398
- .w3eden .h4 small,
399
- .w3eden .h5 .small,
400
- .w3eden .h5 small,
401
- .w3eden .h6 .small,
402
- .w3eden .h6 small,
403
- .w3eden h1 .small,
404
- .w3eden h1 small,
405
- .w3eden h2 .small,
406
- .w3eden h2 small,
407
- .w3eden h3 .small,
408
- .w3eden h3 small,
409
- .w3eden h4 .small,
410
- .w3eden h4 small,
411
- .w3eden h5 .small,
412
- .w3eden h5 small,
413
- .w3eden h6 .small,
414
- .w3eden h6 small {
415
- font-weight: 400;
416
- line-height: 1;
417
- color: #777777;
418
- }
419
- .w3eden .h1,
420
- .w3eden .h2,
421
- .w3eden .h3,
422
- .w3eden h1,
423
- .w3eden h2,
424
- .w3eden h3 {
425
- margin-top: 20px;
426
- margin-bottom: 10px;
427
- }
428
- .w3eden .h1 .small,
429
- .w3eden .h1 small,
430
- .w3eden .h2 .small,
431
- .w3eden .h2 small,
432
- .w3eden .h3 .small,
433
- .w3eden .h3 small,
434
- .w3eden h1 .small,
435
- .w3eden h1 small,
436
- .w3eden h2 .small,
437
- .w3eden h2 small,
438
- .w3eden h3 .small,
439
- .w3eden h3 small {
440
- font-size: 65%;
441
- }
442
- .w3eden .h4,
443
- .w3eden .h5,
444
- .w3eden .h6,
445
- .w3eden h4,
446
- .w3eden h5,
447
- .w3eden h6 {
448
- margin-top: 10px;
449
- margin-bottom: 10px;
450
- }
451
- .w3eden .h4 .small,
452
- .w3eden .h4 small,
453
- .w3eden .h5 .small,
454
- .w3eden .h5 small,
455
- .w3eden .h6 .small,
456
- .w3eden .h6 small,
457
- .w3eden h4 .small,
458
- .w3eden h4 small,
459
- .w3eden h5 .small,
460
- .w3eden h5 small,
461
- .w3eden h6 .small,
462
- .w3eden h6 small {
463
- font-size: 75%;
464
- }
465
- .w3eden .h1,
466
- .w3eden h1 {
467
- font-size: 36px;
468
- }
469
- .w3eden .h2,
470
- .w3eden h2 {
471
- font-size: 30px;
472
- }
473
- .w3eden .h3,
474
- .w3eden h3 {
475
- font-size: 24px;
476
- }
477
- .w3eden .h4,
478
- .w3eden h4 {
479
- font-size: 18px;
480
- }
481
- .w3eden .h5,
482
- .w3eden h5 {
483
- font-size: 14px;
484
- }
485
- .w3eden .h6,
486
- .w3eden h6 {
487
- font-size: 12px;
488
- }
489
- .w3eden p {
490
- margin: 0 0 10px;
491
- }
492
- .w3eden .lead {
493
- margin-bottom: 20px;
494
- font-size: 16px;
495
- font-weight: 300;
496
- line-height: 1.4;
497
- }
498
- @media (min-width: 768px) {
499
- .w3eden .lead {
500
- font-size: 21px;
501
- }
502
- }
503
- .w3eden .small,
504
- .w3eden small {
505
- font-size: 85%;
506
- }
507
- .w3eden .mark,
508
- .w3eden mark {
509
- padding: .2em;
510
- background-color: #fcf8e3;
511
- }
512
- .w3eden .text-left {
513
- text-align: left;
514
- }
515
- .w3eden .text-right {
516
- text-align: right;
517
- }
518
- .w3eden .text-center {
519
- text-align: center;
520
- }
521
- .w3eden .text-justify {
522
- text-align: justify;
523
- }
524
- .w3eden .text-nowrap {
525
- white-space: nowrap;
526
- }
527
- .w3eden .text-lowercase {
528
- text-transform: lowercase;
529
- }
530
- .w3eden .text-uppercase {
531
- text-transform: uppercase;
532
- }
533
- .w3eden .text-capitalize {
534
- text-transform: capitalize;
535
- }
536
- .w3eden .text-muted {
537
- color: #777777;
538
- }
539
- .w3eden .text-primary {
540
- color: #337ab7;
541
- }
542
- .w3eden a.text-primary:hover {
543
- color: #286090;
544
- }
545
- .w3eden .text-success {
546
- color: #3c763d;
547
- }
548
- .w3eden a.text-success:hover {
549
- color: #2b542c;
550
- }
551
- .w3eden .text-info {
552
- color: #31708f;
553
- }
554
- .w3eden a.text-info:hover {
555
- color: #245269;
556
- }
557
- .w3eden .text-warning {
558
- color: #8a6d3b;
559
- }
560
- .w3eden a.text-warning:hover {
561
- color: #66512c;
562
- }
563
- .w3eden .text-danger {
564
- color: #a94442;
565
- }
566
- .w3eden a.text-danger:hover {
567
- color: #843534;
568
- }
569
- .w3eden .bg-primary {
570
- color: #fff;
571
- background-color: #337ab7;
572
- }
573
- .w3eden a.bg-primary:hover {
574
- background-color: #286090;
575
- }
576
- .w3eden .bg-success {
577
- background-color: #dff0d8;
578
- }
579
- .w3eden a.bg-success:hover {
580
- background-color: #c1e2b3;
581
- }
582
- .w3eden .bg-info {
583
- background-color: #d9edf7;
584
- }
585
- .w3eden a.bg-info:hover {
586
- background-color: #afd9ee;
587
- }
588
- .w3eden .bg-warning {
589
- background-color: #fcf8e3;
590
- }
591
- .w3eden a.bg-warning:hover {
592
- background-color: #f7ecb5;
593
- }
594
- .w3eden .bg-danger {
595
- background-color: #f2dede;
596
- }
597
- .w3eden a.bg-danger:hover {
598
- background-color: #e4b9b9;
599
- }
600
- .w3eden .page-header {
601
- padding-bottom: 9px;
602
- margin: 40px 0 20px;
603
- border-bottom: 1px solid #eeeeee;
604
- }
605
- .w3eden ol,
606
- .w3eden ul {
607
- margin-top: 0;
608
- margin-bottom: 10px;
609
- }
610
- .w3eden ol ol,
611
- .w3eden ol ul,
612
- .w3eden ul ol,
613
- .w3eden ul ul {
614
- margin-bottom: 0;
615
- }
616
- .w3eden .list-unstyled {
617
- padding-left: 0;
618
- list-style: none;
619
- }
620
- .w3eden .list-inline {
621
- padding-left: 0;
622
- margin-left: -5px;
623
- list-style: none;
624
- }
625
- .w3eden .list-inline > li {
626
- display: inline-block;
627
- padding-right: 5px;
628
- padding-left: 5px;
629
- }
630
- .w3eden dl {
631
- margin-top: 0;
632
- margin-bottom: 20px;
633
- }
634
- .w3eden dd,
635
- .w3eden dt {
636
- line-height: 1.42857143;
637
- }
638
- .w3eden dt {
639
- font-weight: 700;
640
- }
641
- .w3eden dd {
642
- margin-left: 0;
643
- }
644
- @media (min-width: 768px) {
645
- .w3eden .dl-horizontal dt {
646
- float: left;
647
- width: 160px;
648
- overflow: hidden;
649
- clear: left;
650
- text-align: right;
651
- text-overflow: ellipsis;
652
- white-space: nowrap;
653
- }
654
- .w3eden .dl-horizontal dd {
655
- margin-left: 180px;
656
- }
657
- }
658
- .w3eden abbr[data-original-title],
659
- .w3eden abbr[title] {
660
- cursor: help;
661
- border-bottom: 1px dotted #777777;
662
- }
663
- .w3eden .initialism {
664
- font-size: 90%;
665
- text-transform: uppercase;
666
- }
667
- .w3eden blockquote {
668
- padding: 10px 20px;
669
- margin: 0 0 20px;
670
- font-size: 17.5px;
671
- border-left: 5px solid #eeeeee;
672
- }
673
- .w3eden blockquote ol:last-child,
674
- .w3eden blockquote p:last-child,
675
- .w3eden blockquote ul:last-child {
676
- margin-bottom: 0;
677
- }
678
- .w3eden blockquote .small,
679
- .w3eden blockquote footer,
680
- .w3eden blockquote small {
681
- display: block;
682
- font-size: 80%;
683
- line-height: 1.42857143;
684
- color: #777777;
685
- }
686
- .w3eden blockquote .small:before,
687
- .w3eden blockquote footer:before,
688
- .w3eden blockquote small:before {
689
- content: '\2014 \00A0';
690
- }
691
- .w3eden .blockquote-reverse,
692
- .w3eden blockquote.pull-right {
693
- padding-right: 15px;
694
- padding-left: 0;
695
- text-align: right;
696
- border-right: 5px solid #eee;
697
- border-left: 0;
698
- }
699
- .w3eden .blockquote-reverse .small:before,
700
- .w3eden .blockquote-reverse footer:before,
701
- .w3eden .blockquote-reverse small:before,
702
- .w3eden blockquote.pull-right .small:before,
703
- .w3eden blockquote.pull-right footer:before,
704
- .w3eden blockquote.pull-right small:before {
705
- content: '';
706
- }
707
- .w3eden .blockquote-reverse .small:after,
708
- .w3eden .blockquote-reverse footer:after,
709
- .w3eden .blockquote-reverse small:after,
710
- .w3eden blockquote.pull-right .small:after,
711
- .w3eden blockquote.pull-right footer:after,
712
- .w3eden blockquote.pull-right small:after {
713
- content: '\00A0 \2014';
714
- }
715
- .w3eden address {
716
- margin-bottom: 20px;
717
- font-style: normal;
718
- line-height: 1.42857143;
719
- }
720
- .w3eden code,
721
- .w3eden kbd,
722
- .w3eden pre,
723
- .w3eden samp {
724
- font-family: Menlo, Monaco, Consolas, "Courier New", monospace;
725
- }
726
- .w3eden code {
727
- padding: 2px 4px;
728
- font-size: 90%;
729
- color: #c7254e;
730
- background-color: #f9f2f4;
731
- border-radius: 4px;
732
- }
733
- .w3eden kbd {
734
- padding: 2px 4px;
735
- font-size: 90%;
736
- color: #fff;
737
- background-color: #333;
738
- border-radius: 3px;
739
- -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.25);
740
- box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.25);
741
- }
742
- .w3eden kbd kbd {
743
- padding: 0;
744
- font-size: 100%;
745
- font-weight: 700;
746
- -webkit-box-shadow: none;
747
- box-shadow: none;
748
- }
749
- .w3eden pre {
750
- display: block;
751
- padding: 9.5px;
752
- margin: 0 0 10px;
753
- font-size: 13px;
754
- line-height: 1.42857143;
755
- color: #333;
756
- word-break: break-all;
757
- word-wrap: break-word;
758
- background-color: #f5f5f5;
759
- border: 1px solid #ccc;
760
- border-radius: 4px;
761
- }
762
- .w3eden pre code {
763
- padding: 0;
764
- font-size: inherit;
765
- color: inherit;
766
- white-space: pre-wrap;
767
- background-color: transparent;
768
- border-radius: 0;
769
- }
770
- .w3eden .pre-scrollable {
771
- max-height: 340px;
772
- overflow-y: scroll;
773
- }
774
- .w3eden .container {
775
- padding-right: 15px;
776
- padding-left: 15px;
777
- margin-right: auto;
778
- margin-left: auto;
779
- }
780
- @media (min-width: 768px) {
781
- .w3eden .container {
782
- width: 750px;
783
- }
784
- }
785
- @media (min-width: 992px) {
786
- .w3eden .container {
787
- width: 970px;
788
- }
789
- }
790
- @media (min-width: 1200px) {
791
- .w3eden .container {
792
- width: 1170px;
793
- }
794
- }
795
- .w3eden .container-fluid {
796
- padding-right: 15px;
797
- padding-left: 15px;
798
- margin-right: auto;
799
- margin-left: auto;
800
- }
801
- .w3eden .row {
802
- margin-right: -15px;
803
- margin-left: -15px;
804
- }
805
- .w3eden .col-lg-1,
806
- .w3eden .col-lg-10,
807
- .w3eden .col-lg-11,
808
- .w3eden .col-lg-12,
809
- .w3eden .col-lg-2,
810
- .w3eden .col-lg-3,
811
- .w3eden .col-lg-4,
812
- .w3eden .col-lg-5,
813
- .w3eden .col-lg-6,
814
- .w3eden .col-lg-7,
815
- .w3eden .col-lg-8,
816
- .w3eden .col-lg-9,
817
- .w3eden .col-md-1,
818
- .w3eden .col-md-10,
819
- .w3eden .col-md-11,
820
- .w3eden .col-md-12,
821
- .w3eden .col-md-2,
822
- .w3eden .col-md-3,
823
- .w3eden .col-md-4,
824
- .w3eden .col-md-5,
825
- .w3eden .col-md-6,
826
- .w3eden .col-md-7,
827
- .w3eden .col-md-8,
828
- .w3eden .col-md-9,
829
- .w3eden .col-sm-1,
830
- .w3eden .col-sm-10,
831
- .w3eden .col-sm-11,
832
- .w3eden .col-sm-12,
833
- .w3eden .col-sm-2,
834
- .w3eden .col-sm-3,
835
- .w3eden .col-sm-4,
836
- .w3eden .col-sm-5,
837
- .w3eden .col-sm-6,
838
- .w3eden .col-sm-7,
839
- .w3eden .col-sm-8,
840
- .w3eden .col-sm-9,
841
- .w3eden .col-xs-1,
842
- .w3eden .col-xs-10,
843
- .w3eden .col-xs-11,
844
- .w3eden .col-xs-12,
845
- .w3eden .col-xs-2,
846
- .w3eden .col-xs-3,
847
- .w3eden .col-xs-4,
848
- .w3eden .col-xs-5,
849
- .w3eden .col-xs-6,
850
- .w3eden .col-xs-7,
851
- .w3eden .col-xs-8,
852
- .w3eden .col-xs-9 {
853
- position: relative;
854
- min-height: 1px;
855
- padding-right: 15px;
856
- padding-left: 15px;
857
- }
858
- .w3eden .col-xs-1,
859
- .w3eden .col-xs-10,
860
- .w3eden .col-xs-11,
861
- .w3eden .col-xs-12,
862
- .w3eden .col-xs-2,
863
- .w3eden .col-xs-3,
864
- .w3eden .col-xs-4,
865
- .w3eden .col-xs-5,
866
- .w3eden .col-xs-6,
867
- .w3eden .col-xs-7,
868
- .w3eden .col-xs-8,
869
- .w3eden .col-xs-9 {
870
- float: left;
871
- }
872
- .w3eden .col-xs-12 {
873
- width: 100%;
874
- }
875
- .w3eden .col-xs-11 {
876
- width: 91.66666667%;
877
- }
878
- .w3eden .col-xs-10 {
879
- width: 83.33333333%;
880
- }
881
- .w3eden .col-xs-9 {
882
- width: 75%;
883
- }
884
- .w3eden .col-xs-8 {
885
- width: 66.66666667%;
886
- }
887
- .w3eden .col-xs-7 {
888
- width: 58.33333333%;
889
- }
890
- .w3eden .col-xs-6 {
891
- width: 50%;
892
- }
893
- .w3eden .col-xs-5 {
894
- width: 41.66666667%;
895
- }
896
- .w3eden .col-xs-4 {
897
- width: 33.33333333%;
898
- }
899
- .w3eden .col-xs-3 {
900
- width: 25%;
901
- }
902
- .w3eden .col-xs-2 {
903
- width: 16.66666667%;
904
- }
905
- .w3eden .col-xs-1 {
906
- width: 8.33333333%;
907
- }
908
- .w3eden .col-xs-pull-12 {
909
- right: 100%;
910
- }
911
- .w3eden .col-xs-pull-11 {
912
- right: 91.66666667%;
913
- }
914
- .w3eden .col-xs-pull-10 {
915
- right: 83.33333333%;
916
- }
917
- .w3eden .col-xs-pull-9 {
918
- right: 75%;
919
- }
920
- .w3eden .col-xs-pull-8 {
921
- right: 66.66666667%;
922
- }
923
- .w3eden .col-xs-pull-7 {
924
- right: 58.33333333%;
925
- }
926
- .w3eden .col-xs-pull-6 {
927
- right: 50%;
928
- }
929
- .w3eden .col-xs-pull-5 {
930
- right: 41.66666667%;
931
- }
932
- .w3eden .col-xs-pull-4 {
933
- right: 33.33333333%;
934
- }
935
- .w3eden .col-xs-pull-3 {
936
- right: 25%;
937
- }
938
- .w3eden .col-xs-pull-2 {
939
- right: 16.66666667%;
940
- }
941
- .w3eden .col-xs-pull-1 {
942
- right: 8.33333333%;
943
- }
944
- .w3eden .col-xs-pull-0 {
945
- right: auto;
946
- }
947
- .w3eden .col-xs-push-12 {
948
- left: 100%;
949
- }
950
- .w3eden .col-xs-push-11 {
951
- left: 91.66666667%;
952
- }
953
- .w3eden .col-xs-push-10 {
954
- left: 83.33333333%;
955
- }
956
- .w3eden .col-xs-push-9 {
957
- left: 75%;
958
- }
959
- .w3eden .col-xs-push-8 {
960
- left: 66.66666667%;
961
- }
962
- .w3eden .col-xs-push-7 {
963
- left: 58.33333333%;
964
- }
965
- .w3eden .col-xs-push-6 {
966
- left: 50%;
967
- }
968
- .w3eden .col-xs-push-5 {
969
- left: 41.66666667%;
970
- }
971
- .w3eden .col-xs-push-4 {
972
- left: 33.33333333%;
973
- }
974
- .w3eden .col-xs-push-3 {
975
- left: 25%;
976
- }
977
- .w3eden .col-xs-push-2 {
978
- left: 16.66666667%;
979
- }
980
- .w3eden .col-xs-push-1 {
981
- left: 8.33333333%;
982
- }
983
- .w3eden .col-xs-push-0 {
984
- left: auto;
985
- }
986
- .w3eden .col-xs-offset-12 {
987
- margin-left: 100%;
988
- }
989
- .w3eden .col-xs-offset-11 {
990
- margin-left: 91.66666667%;
991
- }
992
- .w3eden .col-xs-offset-10 {
993
- margin-left: 83.33333333%;
994
- }
995
- .w3eden .col-xs-offset-9 {
996
- margin-left: 75%;
997
- }
998
- .w3eden .col-xs-offset-8 {
999
- margin-left: 66.66666667%;
1000
- }
1001
- .w3eden .col-xs-offset-7 {
1002
- margin-left: 58.33333333%;
1003
- }
1004
- .w3eden .col-xs-offset-6 {
1005
- margin-left: 50%;
1006
- }
1007
- .w3eden .col-xs-offset-5 {
1008
- margin-left: 41.66666667%;
1009
- }
1010
- .w3eden .col-xs-offset-4 {
1011
- margin-left: 33.33333333%;
1012
- }
1013
- .w3eden .col-xs-offset-3 {
1014
- margin-left: 25%;
1015
- }
1016
- .w3eden .col-xs-offset-2 {
1017
- margin-left: 16.66666667%;
1018
- }
1019
- .w3eden .col-xs-offset-1 {
1020
- margin-left: 8.33333333%;
1021
- }
1022
- .w3eden .col-xs-offset-0 {
1023
- margin-left: 0;
1024
- }
1025
- @media (min-width: 768px) {
1026
- .w3eden .col-sm-1,
1027
- .w3eden .col-sm-10,
1028
- .w3eden .col-sm-11,
1029
- .w3eden .col-sm-12,
1030
- .w3eden .col-sm-2,
1031
- .w3eden .col-sm-3,
1032
- .w3eden .col-sm-4,
1033
- .w3eden .col-sm-5,
1034
- .w3eden .col-sm-6,
1035
- .w3eden .col-sm-7,
1036
- .w3eden .col-sm-8,
1037
- .w3eden .col-sm-9 {
1038
- float: left;
1039
- }
1040
- .w3eden .col-sm-12 {
1041
- width: 100%;
1042
- }
1043
- .w3eden .col-sm-11 {
1044
- width: 91.66666667%;
1045
- }
1046
- .w3eden .col-sm-10 {
1047
- width: 83.33333333%;
1048
- }
1049
- .w3eden .col-sm-9 {
1050
- width: 75%;
1051
- }
1052
- .w3eden .col-sm-8 {
1053
- width: 66.66666667%;
1054
- }
1055
- .w3eden .col-sm-7 {
1056
- width: 58.33333333%;
1057
- }
1058
- .w3eden .col-sm-6 {
1059
- width: 50%;
1060
- }
1061
- .w3eden .col-sm-5 {
1062
- width: 41.66666667%;
1063
- }
1064
- .w3eden .col-sm-4 {
1065
- width: 33.33333333%;
1066
- }
1067
- .w3eden .col-sm-3 {
1068
- width: 25%;
1069
- }
1070
- .w3eden .col-sm-2 {
1071
- width: 16.66666667%;
1072
- }
1073
- .w3eden .col-sm-1 {
1074
- width: 8.33333333%;
1075
- }
1076
- .w3eden .col-sm-pull-12 {
1077
- right: 100%;
1078
- }
1079
- .w3eden .col-sm-pull-11 {
1080
- right: 91.66666667%;
1081
- }
1082
- .w3eden .col-sm-pull-10 {
1083
- right: 83.33333333%;
1084
- }
1085
- .w3eden .col-sm-pull-9 {
1086
- right: 75%;
1087
- }
1088
- .w3eden .col-sm-pull-8 {
1089
- right: 66.66666667%;
1090
- }
1091
- .w3eden .col-sm-pull-7 {
1092
- right: 58.33333333%;
1093
- }
1094
- .w3eden .col-sm-pull-6 {
1095
- right: 50%;
1096
- }
1097
- .w3eden .col-sm-pull-5 {
1098
- right: 41.66666667%;
1099
- }
1100
- .w3eden .col-sm-pull-4 {
1101
- right: 33.33333333%;
1102
- }
1103
- .w3eden .col-sm-pull-3 {
1104
- right: 25%;
1105
- }
1106
- .w3eden .col-sm-pull-2 {
1107
- right: 16.66666667%;
1108
- }
1109
- .w3eden .col-sm-pull-1 {
1110
- right: 8.33333333%;
1111
- }
1112
- .w3eden .col-sm-pull-0 {
1113
- right: auto;
1114
- }
1115
- .w3eden .col-sm-push-12 {
1116
- left: 100%;
1117
- }
1118
- .w3eden .col-sm-push-11 {
1119
- left: 91.66666667%;
1120
- }
1121
- .w3eden .col-sm-push-10 {
1122
- left: 83.33333333%;
1123
- }
1124
- .w3eden .col-sm-push-9 {
1125
- left: 75%;
1126
- }
1127
- .w3eden .col-sm-push-8 {
1128
- left: 66.66666667%;
1129
- }
1130
- .w3eden .col-sm-push-7 {
1131
- left: 58.33333333%;
1132
- }
1133
- .w3eden .col-sm-push-6 {
1134
- left: 50%;
1135
- }
1136
- .w3eden .col-sm-push-5 {
1137
- left: 41.66666667%;
1138
- }
1139
- .w3eden .col-sm-push-4 {
1140
- left: 33.33333333%;
1141
- }
1142
- .w3eden .col-sm-push-3 {
1143
- left: 25%;
1144
- }
1145
- .w3eden .col-sm-push-2 {
1146
- left: 16.66666667%;
1147
- }
1148
- .w3eden .col-sm-push-1 {
1149
- left: 8.33333333%;
1150
- }
1151
- .w3eden .col-sm-push-0 {
1152
- left: auto;
1153
- }
1154
- .w3eden .col-sm-offset-12 {
1155
- margin-left: 100%;
1156
- }
1157
- .w3eden .col-sm-offset-11 {
1158
- margin-left: 91.66666667%;
1159
- }
1160
- .w3eden .col-sm-offset-10 {
1161
- margin-left: 83.33333333%;
1162
- }
1163
- .w3eden .col-sm-offset-9 {
1164
- margin-left: 75%;
1165
- }
1166
- .w3eden .col-sm-offset-8 {
1167
- margin-left: 66.66666667%;
1168
- }
1169
- .w3eden .col-sm-offset-7 {
1170
- margin-left: 58.33333333%;
1171
- }
1172
- .w3eden .col-sm-offset-6 {
1173
- margin-left: 50%;
1174
- }
1175
- .w3eden .col-sm-offset-5 {
1176
- margin-left: 41.66666667%;
1177
- }
1178
- .w3eden .col-sm-offset-4 {
1179
- margin-left: 33.33333333%;
1180
- }
1181
- .w3eden .col-sm-offset-3 {
1182
- margin-left: 25%;
1183
- }
1184
- .w3eden .col-sm-offset-2 {
1185
- margin-left: 16.66666667%;
1186
- }
1187
- .w3eden .col-sm-offset-1 {
1188
- margin-left: 8.33333333%;
1189
- }
1190
- .w3eden .col-sm-offset-0 {
1191
- margin-left: 0;
1192
- }
1193
- }
1194
- @media (min-width: 992px) {
1195
- .w3eden .col-md-1,
1196
- .w3eden .col-md-10,
1197
- .w3eden .col-md-11,
1198
- .w3eden .col-md-12,
1199
- .w3eden .col-md-2,
1200
- .w3eden .col-md-3,
1201
- .w3eden .col-md-4,
1202
- .w3eden .col-md-5,
1203
- .w3eden .col-md-6,
1204
- .w3eden .col-md-7,
1205
- .w3eden .col-md-8,
1206
- .w3eden .col-md-9 {
1207
- float: left;
1208
- }
1209
- .w3eden .col-md-12 {
1210
- width: 100%;
1211
- }
1212
- .w3eden .col-md-11 {
1213
- width: 91.66666667%;
1214
- }
1215
- .w3eden .col-md-10 {
1216
- width: 83.33333333%;
1217
- }
1218
- .w3eden .col-md-9 {
1219
- width: 75%;
1220
- }
1221
- .w3eden .col-md-8 {
1222
- width: 66.66666667%;
1223
- }
1224
- .w3eden .col-md-7 {
1225
- width: 58.33333333%;
1226
- }
1227
- .w3eden .col-md-6 {
1228
- width: 50%;
1229
- }
1230
- .w3eden .col-md-5 {
1231
- width: 41.66666667%;
1232
- }
1233
- .w3eden .col-md-4 {
1234
- width: 33.33333333%;
1235
- }
1236
- .w3eden .col-md-3 {
1237
- width: 25%;
1238
- }
1239
- .w3eden .col-md-2 {
1240
- width: 16.66666667%;
1241
- }
1242
- .w3eden .col-md-1 {
1243
- width: 8.33333333%;
1244
- }
1245
- .w3eden .col-md-pull-12 {
1246
- right: 100%;
1247
- }
1248
- .w3eden .col-md-pull-11 {
1249
- right: 91.66666667%;
1250
- }
1251
- .w3eden .col-md-pull-10 {
1252
- right: 83.33333333%;
1253
- }
1254
- .w3eden .col-md-pull-9 {
1255
- right: 75%;
1256
- }
1257
- .w3eden .col-md-pull-8 {
1258
- right: 66.66666667%;
1259
- }
1260
- .w3eden .col-md-pull-7 {
1261
- right: 58.33333333%;
1262
- }
1263
- .w3eden .col-md-pull-6 {
1264
- right: 50%;
1265
- }
1266
- .w3eden .col-md-pull-5 {
1267
- right: 41.66666667%;
1268
- }
1269
- .w3eden .col-md-pull-4 {
1270
- right: 33.33333333%;
1271
- }
1272
- .w3eden .col-md-pull-3 {
1273
- right: 25%;
1274
- }
1275
- .w3eden .col-md-pull-2 {
1276
- right: 16.66666667%;
1277
- }
1278
- .w3eden .col-md-pull-1 {
1279
- right: 8.33333333%;
1280
- }
1281
- .w3eden .col-md-pull-0 {
1282
- right: auto;
1283
- }
1284
- .w3eden .col-md-push-12 {
1285
- left: 100%;
1286
- }
1287
- .w3eden .col-md-push-11 {
1288
- left: 91.66666667%;
1289
- }
1290
- .w3eden .col-md-push-10 {
1291
- left: 83.33333333%;
1292
- }
1293
- .w3eden .col-md-push-9 {
1294
- left: 75%;
1295
- }
1296
- .w3eden .col-md-push-8 {
1297
- left: 66.66666667%;
1298
- }
1299
- .w3eden .col-md-push-7 {
1300
- left: 58.33333333%;
1301
- }
1302
- .w3eden .col-md-push-6 {
1303
- left: 50%;
1304
- }
1305
- .w3eden .col-md-push-5 {
1306
- left: 41.66666667%;
1307
- }
1308
- .w3eden .col-md-push-4 {
1309
- left: 33.33333333%;
1310
- }
1311
- .w3eden .col-md-push-3 {
1312
- left: 25%;
1313
- }
1314
- .w3eden .col-md-push-2 {
1315
- left: 16.66666667%;
1316
- }
1317
- .w3eden .col-md-push-1 {
1318
- left: 8.33333333%;
1319
- }
1320
- .w3eden .col-md-push-0 {
1321
- left: auto;
1322
- }
1323
- .w3eden .col-md-offset-12 {
1324
- margin-left: 100%;
1325
- }
1326
- .w3eden .col-md-offset-11 {
1327
- margin-left: 91.66666667%;
1328
- }
1329
- .w3eden .col-md-offset-10 {
1330
- margin-left: 83.33333333%;
1331
- }
1332
- .w3eden .col-md-offset-9 {
1333
- margin-left: 75%;
1334
- }
1335
- .w3eden .col-md-offset-8 {
1336
- margin-left: 66.66666667%;
1337
- }
1338
- .w3eden .col-md-offset-7 {
1339
- margin-left: 58.33333333%;
1340
- }
1341
- .w3eden .col-md-offset-6 {
1342
- margin-left: 50%;
1343
- }
1344
- .w3eden .col-md-offset-5 {
1345
- margin-left: 41.66666667%;
1346
- }
1347
- .w3eden .col-md-offset-4 {
1348
- margin-left: 33.33333333%;
1349
- }
1350
- .w3eden .col-md-offset-3 {
1351
- margin-left: 25%;
1352
- }
1353
- .w3eden .col-md-offset-2 {
1354
- margin-left: 16.66666667%;
1355
- }
1356
- .w3eden .col-md-offset-1 {
1357
- margin-left: 8.33333333%;
1358
- }
1359
- .w3eden .col-md-offset-0 {
1360
- margin-left: 0;
1361
- }
1362
- }
1363
- @media (min-width: 1200px) {
1364
- .w3eden .col-lg-1,
1365
- .w3eden .col-lg-10,
1366
- .w3eden .col-lg-11,
1367
- .w3eden .col-lg-12,
1368
- .w3eden .col-lg-2,
1369
- .w3eden .col-lg-3,
1370
- .w3eden .col-lg-4,
1371
- .w3eden .col-lg-5,
1372
- .w3eden .col-lg-6,
1373
- .w3eden .col-lg-7,
1374
- .w3eden .col-lg-8,
1375
- .w3eden .col-lg-9 {
1376
- float: left;
1377
- }
1378
- .w3eden .col-lg-12 {
1379
- width: 100%;
1380
- }
1381
- .w3eden .col-lg-11 {
1382
- width: 91.66666667%;
1383
- }
1384
- .w3eden .col-lg-10 {
1385
- width: 83.33333333%;
1386
- }
1387
- .w3eden .col-lg-9 {
1388
- width: 75%;
1389
- }
1390
- .w3eden .col-lg-8 {
1391
- width: 66.66666667%;
1392
- }
1393
- .w3eden .col-lg-7 {
1394
- width: 58.33333333%;
1395
- }
1396
- .w3eden .col-lg-6 {
1397
- width: 50%;
1398
- }
1399
- .w3eden .col-lg-5 {
1400
- width: 41.66666667%;
1401
- }
1402
- .w3eden .col-lg-4 {
1403
- width: 33.33333333%;
1404
- }
1405
- .w3eden .col-lg-3 {
1406
- width: 25%;
1407
- }
1408
- .w3eden .col-lg-2 {
1409
- width: 16.66666667%;
1410
- }
1411
- .w3eden .col-lg-1 {
1412
- width: 8.33333333%;
1413
- }
1414
- .w3eden .col-lg-pull-12 {
1415
- right: 100%;
1416
- }
1417
- .w3eden .col-lg-pull-11 {
1418
- right: 91.66666667%;
1419
- }
1420
- .w3eden .col-lg-pull-10 {
1421
- right: 83.33333333%;
1422
- }
1423
- .w3eden .col-lg-pull-9 {
1424
- right: 75%;
1425
- }
1426
- .w3eden .col-lg-pull-8 {
1427
- right: 66.66666667%;
1428
- }
1429
- .w3eden .col-lg-pull-7 {
1430
- right: 58.33333333%;
1431
- }
1432
- .w3eden .col-lg-pull-6 {
1433
- right: 50%;
1434
- }
1435
- .w3eden .col-lg-pull-5 {
1436
- right: 41.66666667%;
1437
- }
1438
- .w3eden .col-lg-pull-4 {
1439
- right: 33.33333333%;
1440
- }
1441
- .w3eden .col-lg-pull-3 {
1442
- right: 25%;
1443
- }
1444
- .w3eden .col-lg-pull-2 {
1445
- right: 16.66666667%;
1446
- }
1447
- .w3eden .col-lg-pull-1 {
1448
- right: 8.33333333%;
1449
- }
1450
- .w3eden .col-lg-pull-0 {
1451
- right: auto;
1452
- }
1453
- .w3eden .col-lg-push-12 {
1454
- left: 100%;
1455
- }
1456
- .w3eden .col-lg-push-11 {
1457
- left: 91.66666667%;
1458
- }
1459
- .w3eden .col-lg-push-10 {
1460
- left: 83.33333333%;
1461
- }
1462
- .w3eden .col-lg-push-9 {
1463
- left: 75%;
1464
- }
1465
- .w3eden .col-lg-push-8 {
1466
- left: 66.66666667%;
1467
- }
1468
- .w3eden .col-lg-push-7 {
1469
- left: 58.33333333%;
1470
- }
1471
- .w3eden .col-lg-push-6 {
1472
- left: 50%;
1473
- }
1474
- .w3eden .col-lg-push-5 {
1475
- left: 41.66666667%;
1476
- }
1477
- .w3eden .col-lg-push-4 {
1478
- left: 33.33333333%;
1479
- }
1480
- .w3eden .col-lg-push-3 {
1481
- left: 25%;
1482
- }
1483
- .w3eden .col-lg-push-2 {
1484
- left: 16.66666667%;
1485
- }
1486
- .w3eden .col-lg-push-1 {
1487
- left: 8.33333333%;
1488
- }
1489
- .w3eden .col-lg-push-0 {
1490
- left: auto;
1491
- }
1492
- .w3eden .col-lg-offset-12 {
1493
- margin-left: 100%;
1494
- }
1495
- .w3eden .col-lg-offset-11 {
1496
- margin-left: 91.66666667%;
1497
- }
1498
- .w3eden .col-lg-offset-10 {
1499
- margin-left: 83.33333333%;
1500
- }
1501
- .w3eden .col-lg-offset-9 {
1502
- margin-left: 75%;
1503
- }
1504
- .w3eden .col-lg-offset-8 {
1505
- margin-left: 66.66666667%;
1506
- }
1507
- .w3eden .col-lg-offset-7 {
1508
- margin-left: 58.33333333%;
1509
- }
1510
- .w3eden .col-lg-offset-6 {
1511
- margin-left: 50%;
1512
- }
1513
- .w3eden .col-lg-offset-5 {
1514
- margin-left: 41.66666667%;
1515
- }
1516
- .w3eden .col-lg-offset-4 {
1517
- margin-left: 33.33333333%;
1518
- }
1519
- .w3eden .col-lg-offset-3 {
1520
- margin-left: 25%;
1521
- }
1522
- .w3eden .col-lg-offset-2 {
1523
- margin-left: 16.66666667%;
1524
- }
1525
- .w3eden .col-lg-offset-1 {
1526
- margin-left: 8.33333333%;
1527
- }
1528
- .w3eden .col-lg-offset-0 {
1529
- margin-left: 0;
1530
- }
1531
- }
1532
- .w3eden table {
1533
- background-color: transparent;
1534
- }
1535
- .w3eden caption {
1536
- padding-top: 8px;
1537
- padding-bottom: 8px;
1538
- color: #777;
1539
- text-align: left;
1540
- }
1541
- .w3eden th {
1542
- text-align: left;
1543
- }
1544
- .w3eden .table {
1545
- width: 100%;
1546
- max-width: 100%;
1547
- margin-bottom: 20px;
1548
- }
1549
- .w3eden .table > tbody > tr > td,
1550
- .w3eden .table > tbody > tr > th,
1551
- .w3eden .table > tfoot > tr > td,
1552
- .w3eden .table > tfoot > tr > th,
1553
- .w3eden .table > thead > tr > td,
1554
- .w3eden .table > thead > tr > th {
1555
- padding: 8px;
1556
- line-height: 1.42857143;
1557
- vertical-align: top;
1558
- border-top: 1px solid #dddddd;
1559
- }
1560
- .w3eden .table > thead > tr > th {
1561
- vertical-align: bottom;
1562
- border-bottom: 2px solid #dddddd;
1563
- }
1564
- .w3eden .table > caption + thead > tr:first-child > td,
1565
- .w3eden .table > caption + thead > tr:first-child > th,
1566
- .w3eden .table > colgroup + thead > tr:first-child > td,
1567
- .w3eden .table > colgroup + thead > tr:first-child > th,
1568
- .w3eden .table > thead:first-child > tr:first-child > td,
1569
- .w3eden .table > thead:first-child > tr:first-child > th {
1570
- border-top: 0;
1571
- }
1572
- .w3eden .table > tbody + tbody {
1573
- border-top: 2px solid #dddddd;
1574
- }
1575
- .w3eden .table .table {
1576
- background-color: #ffffff;
1577
- }
1578
- .w3eden .table-condensed > tbody > tr > td,
1579
- .w3eden .table-condensed > tbody > tr > th,
1580
- .w3eden .table-condensed > tfoot > tr > td,
1581
- .w3eden .table-condensed > tfoot > tr > th,
1582
- .w3eden .table-condensed > thead > tr > td,
1583
- .w3eden .table-condensed > thead > tr > th {
1584
- padding: 5px;
1585
- }
1586
- .w3eden .table-bordered {
1587
- border: 1px solid #dddddd;
1588
- }
1589
- .w3eden .table-bordered > tbody > tr > td,
1590
- .w3eden .table-bordered > tbody > tr > th,
1591
- .w3eden .table-bordered > tfoot > tr > td,
1592
- .w3eden .table-bordered > tfoot > tr > th,
1593
- .w3eden .table-bordered > thead > tr > td,
1594
- .w3eden .table-bordered > thead > tr > th {
1595
- border: 1px solid #dddddd;
1596
- }
1597
- .w3eden .table-bordered > thead > tr > td,
1598
- .w3eden .table-bordered > thead > tr > th {
1599
- border-bottom-width: 2px;
1600
- }
1601
- .w3eden .table-striped > tbody > tr:nth-of-type(odd) {
1602
- background-color: #f9f9f9;
1603
- }
1604
- .w3eden .table-hover > tbody > tr:hover {
1605
- background-color: #f5f5f5;
1606
- }
1607
- .w3eden table col[class*=col-] {
1608
- position: static;
1609
- display: table-column;
1610
- float: none;
1611
- }
1612
- .w3eden table td[class*=col-],
1613
- .w3eden table th[class*=col-] {
1614
- position: static;
1615
- display: table-cell;
1616
- float: none;
1617
- }
1618
- .w3eden .table > tbody > tr.active > td,
1619
- .w3eden .table > tbody > tr.active > th,
1620
- .w3eden .table > tbody > tr > td.active,
1621
- .w3eden .table > tbody > tr > th.active,
1622
- .w3eden .table > tfoot > tr.active > td,
1623
- .w3eden .table > tfoot > tr.active > th,
1624
- .w3eden .table > tfoot > tr > td.active,
1625
- .w3eden .table > tfoot > tr > th.active,
1626
- .w3eden .table > thead > tr.active > td,
1627
- .w3eden .table > thead > tr.active > th,
1628
- .w3eden .table > thead > tr > td.active,
1629
- .w3eden .table > thead > tr > th.active {
1630
- background-color: #f5f5f5;
1631
- }
1632
- .w3eden .table-hover > tbody > tr.active:hover > td,
1633
- .w3eden .table-hover > tbody > tr.active:hover > th,
1634
- .w3eden .table-hover > tbody > tr:hover > .active,
1635
- .w3eden .table-hover > tbody > tr > td.active:hover,
1636
- .w3eden .table-hover > tbody > tr > th.active:hover {
1637
- background-color: #e8e8e8;
1638
- }
1639
- .w3eden .table > tbody > tr.success > td,
1640
- .w3eden .table > tbody > tr.success > th,
1641
- .w3eden .table > tbody > tr > td.success,
1642
- .w3eden .table > tbody > tr > th.success,
1643
- .w3eden .table > tfoot > tr.success > td,
1644
- .w3eden .table > tfoot > tr.success > th,
1645
- .w3eden .table > tfoot > tr > td.success,
1646
- .w3eden .table > tfoot > tr > th.success,
1647
- .w3eden .table > thead > tr.success > td,
1648
- .w3eden .table > thead > tr.success > th,
1649
- .w3eden .table > thead > tr > td.success,
1650
- .w3eden .table > thead > tr > th.success {
1651
- background-color: #dff0d8;
1652
- }
1653
- .w3eden .table-hover > tbody > tr.success:hover > td,
1654
- .w3eden .table-hover > tbody > tr.success:hover > th,
1655
- .w3eden .table-hover > tbody > tr:hover > .success,
1656
- .w3eden .table-hover > tbody > tr > td.success:hover,
1657
- .w3eden .table-hover > tbody > tr > th.success:hover {
1658
- background-color: #d0e9c6;
1659
- }
1660
- .w3eden .table > tbody > tr.info > td,
1661
- .w3eden .table > tbody > tr.info > th,
1662
- .w3eden .table > tbody > tr > td.info,
1663
- .w3eden .table > tbody > tr > th.info,
1664
- .w3eden .table > tfoot > tr.info > td,
1665
- .w3eden .table > tfoot > tr.info > th,
1666
- .w3eden .table > tfoot > tr > td.info,
1667
- .w3eden .table > tfoot > tr > th.info,
1668
- .w3eden .table > thead > tr.info > td,
1669
- .w3eden .table > thead > tr.info > th,
1670
- .w3eden .table > thead > tr > td.info,
1671
- .w3eden .table > thead > tr > th.info {
1672
- background-color: #d9edf7;
1673
- }
1674
- .w3eden .table-hover > tbody > tr.info:hover > td,
1675
- .w3eden .table-hover > tbody > tr.info:hover > th,
1676
- .w3eden .table-hover > tbody > tr:hover > .info,
1677
- .w3eden .table-hover > tbody > tr > td.info:hover,
1678
- .w3eden .table-hover > tbody > tr > th.info:hover {
1679
- background-color: #c4e3f3;
1680
- }
1681
- .w3eden .table > tbody > tr.warning > td,
1682
- .w3eden .table > tbody > tr.warning > th,
1683
- .w3eden .table > tbody > tr > td.warning,
1684
- .w3eden .table > tbody > tr > th.warning,
1685
- .w3eden .table > tfoot > tr.warning > td,
1686
- .w3eden .table > tfoot > tr.warning > th,
1687
- .w3eden .table > tfoot > tr > td.warning,
1688
- .w3eden .table > tfoot > tr > th.warning,
1689
- .w3eden .table > thead > tr.warning > td,
1690
- .w3eden .table > thead > tr.warning > th,
1691
- .w3eden .table > thead > tr > td.warning,
1692
- .w3eden .table > thead > tr > th.warning {
1693
- background-color: #fcf8e3;
1694
- }
1695
- .w3eden .table-hover > tbody > tr.warning:hover > td,
1696
- .w3eden .table-hover > tbody > tr.warning:hover > th,
1697
- .w3eden .table-hover > tbody > tr:hover > .warning,
1698
- .w3eden .table-hover > tbody > tr > td.warning:hover,
1699
- .w3eden .table-hover > tbody > tr > th.warning:hover {
1700
- background-color: #faf2cc;
1701
- }
1702
- .w3eden .table > tbody > tr.danger > td,
1703
- .w3eden .table > tbody > tr.danger > th,
1704
- .w3eden .table > tbody > tr > td.danger,
1705
- .w3eden .table > tbody > tr > th.danger,
1706
- .w3eden .table > tfoot > tr.danger > td,
1707
- .w3eden .table > tfoot > tr.danger > th,
1708
- .w3eden .table > tfoot > tr > td.danger,
1709
- .w3eden .table > tfoot > tr > th.danger,
1710
- .w3eden .table > thead > tr.danger > td,
1711
- .w3eden .table > thead > tr.danger > th,
1712
- .w3eden .table > thead > tr > td.danger,
1713
- .w3eden .table > thead > tr > th.danger {
1714
- background-color: #f2dede;
1715
- }
1716
- .w3eden .table-hover > tbody > tr.danger:hover > td,
1717
- .w3eden .table-hover > tbody > tr.danger:hover > th,
1718
- .w3eden .table-hover > tbody > tr:hover > .danger,
1719
- .w3eden .table-hover > tbody > tr > td.danger:hover,
1720
- .w3eden .table-hover > tbody > tr > th.danger:hover {
1721
- background-color: #ebcccc;
1722
- }
1723
- .w3eden .table-responsive {
1724
- min-height: .01%;
1725
- overflow-x: auto;
1726
- }
1727
- @media screen and (max-width: 767px) {
1728
- .w3eden .table-responsive {
1729
- width: 100%;
1730
- margin-bottom: 15px;
1731
- overflow-y: hidden;
1732
- -ms-overflow-style: -ms-autohiding-scrollbar;
1733
- border: 1px solid #dddddd;
1734
- }
1735
- .w3eden .table-responsive > .table {
1736
- margin-bottom: 0;
1737
- }
1738
- .w3eden .table-responsive > .table > tbody > tr > td,
1739
- .w3eden .table-responsive > .table > tbody > tr > th,
1740
- .w3eden .table-responsive > .table > tfoot > tr > td,
1741
- .w3eden .table-responsive > .table > tfoot > tr > th,
1742
- .w3eden .table-responsive > .table > thead > tr > td,
1743
- .w3eden .table-responsive > .table > thead > tr > th {
1744
- white-space: nowrap;
1745
- }
1746
- .w3eden .table-responsive > .table-bordered {
1747
- border: 0;
1748
- }
1749
- .w3eden .table-responsive > .table-bordered > tbody > tr > td:first-child,
1750
- .w3eden .table-responsive > .table-bordered > tbody > tr > th:first-child,
1751
- .w3eden .table-responsive > .table-bordered > tfoot > tr > td:first-child,
1752
- .w3eden .table-responsive > .table-bordered > tfoot > tr > th:first-child,
1753
- .w3eden .table-responsive > .table-bordered > thead > tr > td:first-child,
1754
- .w3eden .table-responsive > .table-bordered > thead > tr > th:first-child {
1755
- border-left: 0;
1756
- }
1757
- .w3eden .table-responsive > .table-bordered > tbody > tr > td:last-child,
1758
- .w3eden .table-responsive > .table-bordered > tbody > tr > th:last-child,
1759
- .w3eden .table-responsive > .table-bordered > tfoot > tr > td:last-child,
1760
- .w3eden .table-responsive > .table-bordered > tfoot > tr > th:last-child,
1761
- .w3eden .table-responsive > .table-bordered > thead > tr > td:last-child,
1762
- .w3eden .table-responsive > .table-bordered > thead > tr > th:last-child {
1763
- border-right: 0;
1764
- }
1765
- .w3eden .table-responsive > .table-bordered > tbody > tr:last-child > td,
1766
- .w3eden .table-responsive > .table-bordered > tbody > tr:last-child > th,
1767
- .w3eden .table-responsive > .table-bordered > tfoot > tr:last-child > td,
1768
- .w3eden .table-responsive > .table-bordered > tfoot > tr:last-child > th {
1769
- border-bottom: 0;
1770
- }
1771
- }
1772
- .w3eden fieldset {
1773
- min-width: 0;
1774
- padding: 0;
1775
- margin: 0;
1776
- border: 0;
1777
- }
1778
- .w3eden legend {
1779
- display: block;
1780
- width: 100%;
1781
- padding: 0;
1782
- margin-bottom: 20px;
1783
- font-size: 21px;
1784
- line-height: inherit;
1785
- color: #333;
1786
- border: 0;
1787
- border-bottom: 1px solid #e5e5e5;
1788
- }
1789
- .w3eden label {
1790
- display: inline-block;
1791
- max-width: 100%;
1792
- margin-bottom: 5px;
1793
- font-weight: 700;
1794
- }
1795
- .w3eden input[type=search] {
1796
- -webkit-box-sizing: border-box;
1797
- -moz-box-sizing: border-box;
1798
- box-sizing: border-box;
1799
- }
1800
- .w3eden input[type=checkbox],
1801
- .w3eden input[type=radio] {
1802
- margin: 4px 0 0;
1803
- margin-top: 1px \9;
1804
- line-height: normal;
1805
- }
1806
- .w3eden input[type=file] {
1807
- display: block;
1808
- }
1809
- .w3eden input[type=range] {
1810
- display: block;
1811
- width: 100%;
1812
- }
1813
- .w3eden select[multiple],
1814
- .w3eden select[size] {
1815
- height: auto;
1816
- }
1817
- .w3eden input[type=file]:focus,
1818
- .w3eden input[type=checkbox]:focus,
1819
- .w3eden input[type=radio]:focus {
1820
- outline: thin dotted;
1821
- outline: 5px auto -webkit-focus-ring-color;
1822
- outline-offset: -2px;
1823
- }
1824
- .w3eden output {
1825
- display: block;
1826
- padding-top: 7px;
1827
- font-size: 14px;
1828
- line-height: 1.42857143;
1829
- color: #555555;
1830
- }
1831
- .w3eden .form-control {
1832
- display: block;
1833
- width: 100%;
1834
- height: 34px;
1835
- padding: 6px 12px;
1836
- font-size: 14px;
1837
- line-height: 1.42857143;
1838
- color: #555;
1839
- background-color: #fff;
1840
- background-image: none;
1841
- border: 1px solid #d5d5d5;
1842
- border-radius: 3px;
1843
- /*
1844
- -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.055);
1845
- box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.055);
1846
- -webkit-transition: border-color ease-in-out 0.15s, -webkit-box-shadow ease-in-out 0.15s;
1847
- -o-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
1848
- */
1849
- box-shadow: none;
1850
- transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
1851
- }
1852
- .w3eden .form-control:focus {
1853
- border-color: #66afe9;
1854
- outline: 0;
1855
- -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 3px rgba(102, 175, 233, 0.6);
1856
- box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 3px rgba(102, 175, 233, 0.6);
1857
- }
1858
- .w3eden .form-control::-moz-placeholder {
1859
- color: #999;
1860
- opacity: 1;
1861
- }
1862
- .w3eden .form-control:-ms-input-placeholder {
1863
- color: #999999;
1864
- }
1865
- .w3eden .form-control::-webkit-input-placeholder {
1866
- color: #999999;
1867
- }
1868
- .w3eden .form-control[disabled],
1869
- .w3eden .form-control[readonly],
1870
- .w3eden fieldset[disabled] .form-control {
1871
- background-color: #eee;
1872
- opacity: 1;
1873
- }
1874
- .w3eden .form-control[disabled],
1875
- .w3eden fieldset[disabled] .form-control {
1876
- cursor: not-allowed;
1877
- }
1878
- .w3eden textarea.form-control {
1879
- height: auto;
1880
- }
1881
- .w3eden input[type=search] {
1882
- -webkit-appearance: none;
1883
- }
1884
- @media screen and (-webkit-min-device-pixel-ratio: 0) {
1885
- .w3eden input[type=date],
1886
- .w3eden input[type=time],
1887
- .w3eden input[type=datetime-local],
1888
- .w3eden input[type=month] {
1889
- line-height: 34px;
1890
- }
1891
- .w3eden .input-group-sm input[type=date],
1892
- .w3eden .input-group-sm input[type=time],
1893
- .w3eden .input-group-sm input[type=datetime-local],
1894
- .w3eden .input-group-sm input[type=month],
1895
- .w3eden input[type=date].input-sm,
1896
- .w3eden input[type=time].input-sm,
1897
- .w3eden input[type=datetime-local].input-sm,
1898
- .w3eden input[type=month].input-sm {
1899
- line-height: 30px;
1900
- }
1901
- .w3eden .input-group-lg input[type=date],
1902
- .w3eden .input-group-lg input[type=time],
1903
- .w3eden .input-group-lg input[type=datetime-local],
1904
- .w3eden .input-group-lg input[type=month],
1905
- .w3eden input[type=date].input-lg,
1906
- .w3eden input[type=time].input-lg,
1907
- .w3eden input[type=datetime-local].input-lg,
1908
- .w3eden input[type=month].input-lg {
1909
- line-height: 46px;
1910
- }
1911
- }
1912
- .w3eden .form-group {
1913
- margin-bottom: 15px;
1914
- }
1915
- .w3eden .checkbox,
1916
- .w3eden .radio {
1917
- position: relative;
1918
- display: block;
1919
- margin-top: 10px;
1920
- margin-bottom: 10px;
1921
- }
1922
- .w3eden .checkbox label,
1923
- .w3eden .radio label {
1924
- min-height: 20px;
1925
- padding-left: 20px;
1926
- margin-bottom: 0;
1927
- font-weight: 400;
1928
- cursor: pointer;
1929
- }
1930
- .w3eden .checkbox input[type=checkbox],
1931
- .w3eden .checkbox-inline input[type=checkbox],
1932
- .w3eden .radio input[type=radio],
1933
- .w3eden .radio-inline input[type=radio] {
1934
- position: absolute;
1935
- margin-top: 4px \9;
1936
- margin-left: -20px;
1937
- }
1938
- .w3eden .checkbox + .checkbox,
1939
- .w3eden .radio + .radio {
1940
- margin-top: -5px;
1941
- }
1942
- .w3eden .checkbox-inline,
1943
- .w3eden .radio-inline {
1944
- position: relative;
1945
- display: inline-block;
1946
- padding-left: 20px;
1947
- margin-bottom: 0;
1948
- font-weight: 400;
1949
- vertical-align: middle;
1950
- cursor: pointer;
1951
- }
1952
- .w3eden .checkbox-inline + .checkbox-inline,
1953
- .w3eden .radio-inline + .radio-inline {
1954
- margin-top: 0;
1955
- margin-left: 10px;
1956
- }
1957
- .w3eden fieldset[disabled] input[type=checkbox],
1958
- .w3eden fieldset[disabled] input[type=radio],
1959
- .w3eden input[type=checkbox].disabled,
1960
- .w3eden input[type=checkbox][disabled],
1961
- .w3eden input[type=radio].disabled,
1962
- .w3eden input[type=radio][disabled] {
1963
- cursor: not-allowed;
1964
- }
1965
- .w3eden .checkbox-inline.disabled,
1966
- .w3eden .radio-inline.disabled,
1967
- .w3eden fieldset[disabled] .checkbox-inline,
1968
- .w3eden fieldset[disabled] .radio-inline {
1969
- cursor: not-allowed;
1970
- }
1971
- .w3eden .checkbox.disabled label,
1972
- .w3eden .radio.disabled label,
1973
- .w3eden fieldset[disabled] .checkbox label,
1974
- .w3eden fieldset[disabled] .radio label {
1975
- cursor: not-allowed;
1976
- }
1977
- .w3eden .form-control-static {
1978
- min-height: 34px;
1979
- padding-top: 7px;
1980
- padding-bottom: 7px;
1981
- margin-bottom: 0;
1982
- }
1983
- .w3eden .form-control-static.input-lg,
1984
- .w3eden .form-control-static.input-sm {
1985
- padding-right: 0;
1986
- padding-left: 0;
1987
- }
1988
- .w3eden .input-sm {
1989
- height: 30px;
1990
- padding: 5px 10px;
1991
- font-size: 12px;
1992
- line-height: 1.5;
1993
- border-radius: 3px;
1994
- }
1995
- .w3eden select.input-sm {
1996
- height: 30px;
1997
- line-height: 30px;
1998
- }
1999
- .w3eden select[multiple].input-sm,
2000
- .w3eden textarea.input-sm {
2001
- height: auto;
2002
- }
2003
- .w3eden .form-group-sm .form-control {
2004
- height: 30px;
2005
- padding: 5px 10px;
2006
- font-size: 12px;
2007
- line-height: 1.5;
2008
- border-radius: 3px;
2009
- }
2010
- .w3eden select.form-group-sm .form-control {
2011
- height: 30px;
2012
- line-height: 30px;
2013
- }
2014
- .w3eden select[multiple].form-group-sm .form-control,
2015
- .w3eden textarea.form-group-sm .form-control {
2016
- height: auto;
2017
- }
2018
- .w3eden .form-group-sm .form-control-static {
2019
- height: 30px;
2020
- min-height: 32px;
2021
- padding: 5px 10px;
2022
- font-size: 12px;
2023
- line-height: 1.5;
2024
- }
2025
- .w3eden .input-lg {
2026
- height: 46px;
2027
- padding: 10px 16px;
2028
- font-size: 18px;
2029
- line-height: 1.3333333;
2030
- border-radius: 6px;
2031
- }
2032
- .w3eden select.input-lg {
2033
- height: 46px;
2034
- line-height: 46px;
2035
- }
2036
- .w3eden select[multiple].input-lg,
2037
- .w3eden textarea.input-lg {
2038
- height: auto;
2039
- }
2040
- .w3eden .form-group-lg .form-control {
2041
- height: 46px;
2042
- padding: 10px 16px;
2043
- font-size: 18px;
2044
- line-height: 1.3333333;
2045
- border-radius: 6px;
2046
- }
2047
- .w3eden select.form-group-lg .form-control {
2048
- height: 46px;
2049
- line-height: 46px;
2050
- }
2051
- .w3eden select[multiple].form-group-lg .form-control,
2052
- .w3eden textarea.form-group-lg .form-control {
2053
- height: auto;
2054
- }
2055
- .w3eden .form-group-lg .form-control-static {
2056
- height: 46px;
2057
- min-height: 38px;
2058
- padding: 10px 16px;
2059
- font-size: 18px;
2060
- line-height: 1.3333333;
2061
- }
2062
- .w3eden .has-feedback {
2063
- position: relative;
2064
- }
2065
- .w3eden .has-feedback .form-control {
2066
- padding-right: 42.5px;
2067
- }
2068
- .w3eden .form-control-feedback {
2069
- position: absolute;
2070
- top: 0;
2071
- right: 0;
2072
- z-index: 2;
2073
- display: block;
2074
- width: 34px;
2075
- height: 34px;
2076
- line-height: 34px;
2077
- text-align: center;
2078
- pointer-events: none;
2079
- }
2080
- .w3eden .input-lg + .form-control-feedback {
2081
- width: 46px;
2082
- height: 46px;
2083
- line-height: 46px;
2084
- }
2085
- .w3eden .input-sm + .form-control-feedback {
2086
- width: 30px;
2087
- height: 30px;
2088
- line-height: 30px;
2089
- }
2090
- .w3eden .has-success .checkbox,
2091
- .w3eden .has-success .checkbox-inline,
2092
- .w3eden .has-success .control-label,
2093
- .w3eden .has-success .help-block,
2094
- .w3eden .has-success .radio,
2095
- .w3eden .has-success .radio-inline,
2096
- .w3eden .has-success.checkbox label,
2097
- .w3eden .has-success.checkbox-inline label,
2098
- .w3eden .has-success.radio label,
2099
- .w3eden .has-success.radio-inline label {
2100
- color: #3c763d;
2101
- }
2102
- .w3eden .has-success .form-control {
2103
- border-color: #3c763d;
2104
- -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
2105
- box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
2106
- }
2107
- .w3eden .has-success .form-control:focus {
2108
- border-color: #2b542c;
2109
- -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;
2110
- box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;
2111
- }
2112
- .w3eden .has-success .input-group-addon {
2113
- color: #3c763d;
2114
- background-color: #dff0d8;
2115
- border-color: #3c763d;
2116
- }
2117
- .w3eden .has-success .form-control-feedback {
2118
- color: #3c763d;
2119
- }
2120
- .w3eden .has-warning .checkbox,
2121
- .w3eden .has-warning .checkbox-inline,
2122
- .w3eden .has-warning .control-label,
2123
- .w3eden .has-warning .help-block,
2124
- .w3eden .has-warning .radio,
2125
- .w3eden .has-warning .radio-inline,
2126
- .w3eden .has-warning.checkbox label,
2127
- .w3eden .has-warning.checkbox-inline label,
2128
- .w3eden .has-warning.radio label,
2129
- .w3eden .has-warning.radio-inline label {
2130
- color: #8a6d3b;
2131
- }
2132
- .w3eden .has-warning .form-control {
2133
- border-color: #8a6d3b;
2134
- -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
2135
- box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
2136
- }
2137
- .w3eden .has-warning .form-control:focus {
2138
- border-color: #66512c;
2139
- -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;
2140
- box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;
2141
- }
2142
- .w3eden .has-warning .input-group-addon {
2143
- color: #8a6d3b;
2144
- background-color: #fcf8e3;
2145
- border-color: #8a6d3b;
2146
- }
2147
- .w3eden .has-warning .form-control-feedback {
2148
- color: #8a6d3b;
2149
- }
2150
- .w3eden .has-error .checkbox,
2151
- .w3eden .has-error .checkbox-inline,
2152
- .w3eden .has-error .control-label,
2153
- .w3eden .has-error .help-block,
2154
- .w3eden .has-error .radio,
2155
- .w3eden .has-error .radio-inline,
2156
- .w3eden .has-error.checkbox label,
2157
- .w3eden .has-error.checkbox-inline label,
2158
- .w3eden .has-error.radio label,
2159
- .w3eden .has-error.radio-inline label {
2160
- color: #a94442;
2161
- }
2162
- .w3eden .has-error .form-control {
2163
- border-color: #a94442;
2164
- -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
2165
- box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
2166
- }
2167
- .w3eden .has-error .form-control:focus {
2168
- border-color: #843534;
2169
- -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;
2170
- box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;
2171
- }
2172
- .w3eden .has-error .input-group-addon {
2173
- color: #a94442;
2174
- background-color: #f2dede;
2175
- border-color: #a94442;
2176
- }
2177
- .w3eden .has-error .form-control-feedback {
2178
- color: #a94442;
2179
- }
2180
- .w3eden .has-feedback label ~ .form-control-feedback {
2181
- top: 25px;
2182
- }
2183
- .w3eden .has-feedback label.sr-only ~ .form-control-feedback {
2184
- top: 0;
2185
- }
2186
- .w3eden .help-block {
2187
- display: block;
2188
- margin-top: 5px;
2189
- margin-bottom: 10px;
2190
- color: #737373;
2191
- }
2192
- @media (min-width: 768px) {
2193
- .w3eden .form-inline .form-group {
2194
- display: inline-block;
2195
- margin-bottom: 0;
2196
- vertical-align: middle;
2197
- }
2198
- .w3eden .form-inline .form-control {
2199
- display: inline-block;
2200
- width: auto;
2201
- vertical-align: middle;
2202
- }
2203
- .w3eden .form-inline .form-control-static {
2204
- display: inline-block;
2205
- }
2206
- .w3eden .form-inline .input-group {
2207
- display: inline-table;
2208
- vertical-align: middle;
2209
- }
2210
- .w3eden .form-inline .input-group .form-control,
2211
- .w3eden .form-inline .input-group .input-group-addon,
2212
- .w3eden .form-inline .input-group .input-group-btn {
2213
- width: auto;
2214
- }
2215
- .w3eden .form-inline .input-group > .form-control {
2216
- width: 100%;
2217
- }
2218
- .w3eden .form-inline .control-label {
2219
- margin-bottom: 0;
2220
- vertical-align: middle;
2221
- }
2222
- .w3eden .form-inline .checkbox,
2223
- .w3eden .form-inline .radio {
2224
- display: inline-block;
2225
- margin-top: 0;
2226
- margin-bottom: 0;
2227
- vertical-align: middle;
2228
- }
2229
- .w3eden .form-inline .checkbox label,
2230
- .w3eden .form-inline .radio label {
2231
- padding-left: 0;
2232
- }
2233
- .w3eden .form-inline .checkbox input[type=checkbox],
2234
- .w3eden .form-inline .radio input[type=radio] {
2235
- position: relative;
2236
- margin-left: 0;
2237
- }
2238
- .w3eden .form-inline .has-feedback .form-control-feedback {
2239
- top: 0;
2240
- }
2241
- }
2242
- .w3eden .form-horizontal .checkbox,
2243
- .w3eden .form-horizontal .checkbox-inline,
2244
- .w3eden .form-horizontal .radio,
2245
- .w3eden .form-horizontal .radio-inline {
2246
- padding-top: 7px;
2247
- margin-top: 0;
2248
- margin-bottom: 0;
2249
- }
2250
- .w3eden .form-horizontal .checkbox,
2251
- .w3eden .form-horizontal .radio {
2252
- min-height: 27px;
2253
- }
2254
- .w3eden .form-horizontal .form-group {
2255
- margin-right: -15px;
2256
- margin-left: -15px;
2257
- }
2258
- @media (min-width: 768px) {
2259
- .w3eden .form-horizontal .control-label {
2260
- padding-top: 7px;
2261
- margin-bottom: 0;
2262
- text-align: right;
2263
- }
2264
- }
2265
- .w3eden .form-horizontal .has-feedback .form-control-feedback {
2266
- right: 15px;
2267
- }
2268
- @media (min-width: 768px) {
2269
- .w3eden .form-horizontal .form-group-lg .control-label {
2270
- padding-top: 14.33px;
2271
- }
2272
- }
2273
- @media (min-width: 768px) {
2274
- .w3eden .form-horizontal .form-group-sm .control-label {
2275
- padding-top: 6px;
2276
- }
2277
- }
2278
- .w3eden .btn {
2279
- display: inline-block;
2280
- padding: 6px 12px;
2281
- margin-bottom: 0;
2282
- font-size: 14px;
2283
- font-weight: 400;
2284
- line-height: 1.42857143;
2285
- text-align: center;
2286
- white-space: nowrap;
2287
- vertical-align: middle;
2288
- -ms-touch-action: manipulation;
2289
- touch-action: manipulation;
2290
- cursor: pointer;
2291
- -webkit-user-select: none;
2292
- -moz-user-select: none;
2293
- -ms-user-select: none;
2294
- user-select: none;
2295
- background-image: none;
2296
- border: 1px solid transparent;
2297
- border-radius: 3px;
2298
- }
2299
- .w3eden .btn.active.focus,
2300
- .w3eden .btn.active:focus,
2301
- .w3eden .btn.focus,
2302
- .w3eden .btn:active.focus,
2303
- .w3eden .btn:active:focus,
2304
- .w3eden .btn:focus {
2305
- outline: thin dotted;
2306
- outline: 5px auto -webkit-focus-ring-color;
2307
- outline-offset: -2px;
2308
- }
2309
- .w3eden .btn.focus,
2310
- .w3eden .btn:focus,
2311
- .w3eden .btn:hover {
2312
- color: #333;
2313
- text-decoration: none;
2314
- }
2315
- .w3eden .btn.active,
2316
- .w3eden .btn:active {
2317
- background-image: none;
2318
- outline: 0;
2319
- -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
2320
- box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
2321
- }
2322
- .w3eden .btn.disabled,
2323
- .w3eden .btn[disabled],
2324
- .w3eden fieldset[disabled] .btn {
2325
- pointer-events: none;
2326
- cursor: not-allowed;
2327
- filter: alpha(opacity=65);
2328
- -webkit-box-shadow: none;
2329
- box-shadow: none;
2330
- opacity: 0.65;
2331
- }
2332
- .w3eden .btn-default {
2333
- color: #333;
2334
- background-color: #fff;
2335
- border-color: #cccccc;
2336
- }
2337
- .w3eden .btn-default.active,
2338
- .w3eden .btn-default.focus,
2339
- .w3eden .btn-default:active,
2340
- .w3eden .btn-default:focus,
2341
- .w3eden .btn-default:hover,
2342
- .w3eden .open > .dropdown-toggle.btn-default {
2343
- color: #333;
2344
- background-color: #e6e6e6;
2345
- border-color: #adadad;
2346
- }
2347
- .w3eden .btn-default.active,
2348
- .w3eden .btn-default:active,
2349
- .w3eden .open > .dropdown-toggle.btn-default {
2350
- background-image: none;
2351
- }
2352
- .w3eden .btn-default.disabled,
2353
- .w3eden .btn-default.disabled.active,
2354
- .w3eden .btn-default.disabled.focus,
2355
- .w3eden .btn-default.disabled:active,
2356
- .w3eden .btn-default.disabled:focus,
2357
- .w3eden .btn-default.disabled:hover,
2358
- .w3eden .btn-default[disabled],
2359
- .w3eden .btn-default[disabled].active,
2360
- .w3eden .btn-default[disabled].focus,
2361
- .w3eden .btn-default[disabled]:active,
2362
- .w3eden .btn-default[disabled]:focus,
2363
- .w3eden .btn-default[disabled]:hover,
2364
- .w3eden fieldset[disabled] .btn-default,
2365
- .w3eden fieldset[disabled] .btn-default.active,
2366
- .w3eden fieldset[disabled] .btn-default.focus,
2367
- .w3eden fieldset[disabled] .btn-default:active,
2368
- .w3eden fieldset[disabled] .btn-default:focus,
2369
- .w3eden fieldset[disabled] .btn-default:hover {
2370
- background-color: #fff;
2371
- border-color: #cccccc;
2372
- }
2373
- .w3eden .btn-default .badge {
2374
- color: #fff;
2375
- background-color: #333333;
2376
- }
2377
- .w3eden .btn-primary {
2378
- color: #fff;
2379
- background-color: #337ab7;
2380
- border-color: #2e6da4;
2381
- }
2382
- .w3eden .btn-primary.active,
2383
- .w3eden .btn-primary.focus,
2384
- .w3eden .btn-primary:active,
2385
- .w3eden .btn-primary:focus,
2386
- .w3eden .btn-primary:hover,
2387
- .w3eden .open > .dropdown-toggle.btn-primary {
2388
- color: #fff;
2389
- background-color: #286090;
2390
- border-color: #204d74;
2391
- }
2392
- .w3eden .btn-primary.active,
2393
- .w3eden .btn-primary:active,
2394
- .w3eden .open > .dropdown-toggle.btn-primary {
2395
- background-image: none;
2396
- }
2397
- .w3eden .btn-primary.disabled,
2398
- .w3eden .btn-primary.disabled.active,
2399
- .w3eden .btn-primary.disabled.focus,
2400
- .w3eden .btn-primary.disabled:active,
2401
- .w3eden .btn-primary.disabled:focus,
2402
- .w3eden .btn-primary.disabled:hover,
2403
- .w3eden .btn-primary[disabled],
2404
- .w3eden .btn-primary[disabled].active,
2405
- .w3eden .btn-primary[disabled].focus,
2406
- .w3eden .btn-primary[disabled]:active,
2407
- .w3eden .btn-primary[disabled]:focus,
2408
- .w3eden .btn-primary[disabled]:hover,
2409
- .w3eden fieldset[disabled] .btn-primary,
2410
- .w3eden fieldset[disabled] .btn-primary.active,
2411
- .w3eden fieldset[disabled] .btn-primary.focus,
2412
- .w3eden fieldset[disabled] .btn-primary:active,
2413
- .w3eden fieldset[disabled] .btn-primary:focus,
2414
- .w3eden fieldset[disabled] .btn-primary:hover {
2415
- background-color: #337ab7;
2416
- border-color: #2e6da4;
2417
- }
2418
- .w3eden .btn-primary .badge {
2419
- color: #337ab7;
2420
- background-color: #ffffff;
2421
- }
2422
- .w3eden .btn-success {
2423
- color: #fff;
2424
- background-color: #5cb85c;
2425
- border-color: #4cae4c;
2426
- }
2427
- .w3eden .btn-success.active,
2428
- .w3eden .btn-success.focus,
2429
- .w3eden .btn-success:active,
2430
- .w3eden .btn-success:focus,
2431
- .w3eden .btn-success:hover,
2432
- .w3eden .open > .dropdown-toggle.btn-success {
2433
- color: #fff;
2434
- background-color: #449d44;
2435
- border-color: #398439;
2436
- }
2437
- .w3eden .btn-success.active,
2438
- .w3eden .btn-success:active,
2439
- .w3eden .open > .dropdown-toggle.btn-success {
2440
- background-image: none;
2441
- }
2442
- .w3eden .btn-success.disabled,
2443
- .w3eden .btn-success.disabled.active,
2444
- .w3eden .btn-success.disabled.focus,
2445
- .w3eden .btn-success.disabled:active,
2446
- .w3eden .btn-success.disabled:focus,
2447
- .w3eden .btn-success.disabled:hover,
2448
- .w3eden .btn-success[disabled],
2449
- .w3eden .btn-success[disabled].active,
2450
- .w3eden .btn-success[disabled].focus,
2451
- .w3eden .btn-success[disabled]:active,
2452
- .w3eden .btn-success[disabled]:focus,
2453
- .w3eden .btn-success[disabled]:hover,
2454
- .w3eden fieldset[disabled] .btn-success,
2455
- .w3eden fieldset[disabled] .btn-success.active,
2456
- .w3eden fieldset[disabled] .btn-success.focus,
2457
- .w3eden fieldset[disabled] .btn-success:active,
2458
- .w3eden fieldset[disabled] .btn-success:focus,
2459
- .w3eden fieldset[disabled] .btn-success:hover {
2460
- background-color: #5cb85c;
2461
- border-color: #4cae4c;
2462
- }
2463
- .w3eden .btn-success .badge {
2464
- color: #5cb85c;
2465
- background-color: #ffffff;
2466
- }
2467
- .w3eden .btn-info {
2468
- color: #fff;
2469
- background-color: #5bc0de;
2470
- border-color: #46b8da;
2471
- }
2472
- .w3eden .btn-info.active,
2473
- .w3eden .btn-info.focus,
2474
- .w3eden .btn-info:active,
2475
- .w3eden .btn-info:focus,
2476
- .w3eden .btn-info:hover,
2477
- .w3eden .open > .dropdown-toggle.btn-info {
2478
- color: #fff;
2479
- background-color: #31b0d5;
2480
- border-color: #269abc;
2481
- }
2482
- .w3eden .btn-info.active,
2483
- .w3eden .btn-info:active,
2484
- .w3eden .open > .dropdown-toggle.btn-info {
2485
- background-image: none;
2486
- }
2487
- .w3eden .btn-info.disabled,
2488
- .w3eden .btn-info.disabled.active,
2489
- .w3eden .btn-info.disabled.focus,
2490
- .w3eden .btn-info.disabled:active,
2491
- .w3eden .btn-info.disabled:focus,
2492
- .w3eden .btn-info.disabled:hover,
2493
- .w3eden .btn-info[disabled],
2494
- .w3eden .btn-info[disabled].active,
2495
- .w3eden .btn-info[disabled].focus,
2496
- .w3eden .btn-info[disabled]:active,
2497
- .w3eden .btn-info[disabled]:focus,
2498
- .w3eden .btn-info[disabled]:hover,
2499
- .w3eden fieldset[disabled] .btn-info,
2500
- .w3eden fieldset[disabled] .btn-info.active,
2501
- .w3eden fieldset[disabled] .btn-info.focus,
2502
- .w3eden fieldset[disabled] .btn-info:active,
2503
- .w3eden fieldset[disabled] .btn-info:focus,
2504
- .w3eden fieldset[disabled] .btn-info:hover {
2505
- background-color: #5bc0de;
2506
- border-color: #46b8da;
2507
- }
2508
- .w3eden .btn-info .badge {
2509
- color: #5bc0de;
2510
- background-color: #ffffff;
2511
- }
2512
- .w3eden .btn-warning {
2513
- color: #fff;
2514
- background-color: #f0ad4e;
2515
- border-color: #eea236;
2516
- }
2517
- .w3eden .btn-warning.active,
2518
- .w3eden .btn-warning.focus,
2519
- .w3eden .btn-warning:active,
2520
- .w3eden .btn-warning:focus,
2521
- .w3eden .btn-warning:hover,
2522
- .w3eden .open > .dropdown-toggle.btn-warning {
2523
- color: #fff;
2524
- background-color: #ec971f;
2525
- border-color: #d58512;
2526
- }
2527
- .w3eden .btn-warning.active,
2528
- .w3eden .btn-warning:active,
2529
- .w3eden .open > .dropdown-toggle.btn-warning {
2530
- background-image: none;
2531
- }
2532
- .w3eden .btn-warning.disabled,
2533
- .w3eden .btn-warning.disabled.active,
2534
- .w3eden .btn-warning.disabled.focus,
2535
- .w3eden .btn-warning.disabled:active,
2536
- .w3eden .btn-warning.disabled:focus,
2537
- .w3eden .btn-warning.disabled:hover,
2538
- .w3eden .btn-warning[disabled],
2539
- .w3eden .btn-warning[disabled].active,
2540
- .w3eden .btn-warning[disabled].focus,
2541
- .w3eden .btn-warning[disabled]:active,
2542
- .w3eden .btn-warning[disabled]:focus,
2543
- .w3eden .btn-warning[disabled]:hover,
2544
- .w3eden fieldset[disabled] .btn-warning,
2545
- .w3eden fieldset[disabled] .btn-warning.active,
2546
- .w3eden fieldset[disabled] .btn-warning.focus,
2547
- .w3eden fieldset[disabled] .btn-warning:active,
2548
- .w3eden fieldset[disabled] .btn-warning:focus,
2549
- .w3eden fieldset[disabled] .btn-warning:hover {
2550
- background-color: #f0ad4e;
2551
- border-color: #eea236;
2552
- }
2553
- .w3eden .btn-warning .badge {
2554
- color: #f0ad4e;
2555
- background-color: #ffffff;
2556
- }
2557
- .w3eden .btn-danger {
2558
- color: #fff;
2559
- background-color: #d9534f;
2560
- border-color: #d43f3a;
2561
- }
2562
- .w3eden .btn-danger.active,
2563
- .w3eden .btn-danger.focus,
2564
- .w3eden .btn-danger:active,
2565
- .w3eden .btn-danger:focus,
2566
- .w3eden .btn-danger:hover,
2567
- .w3eden .open > .dropdown-toggle.btn-danger {
2568
- color: #fff;
2569
- background-color: #c9302c;
2570
- border-color: #ac2925;
2571
- }
2572
- .w3eden .btn-danger.active,
2573
- .w3eden .btn-danger:active,
2574
- .w3eden .open > .dropdown-toggle.btn-danger {
2575
- background-image: none;
2576
- }
2577
- .w3eden .btn-danger.disabled,
2578
- .w3eden .btn-danger.disabled.active,
2579
- .w3eden .btn-danger.disabled.focus,
2580
- .w3eden .btn-danger.disabled:active,
2581
- .w3eden .btn-danger.disabled:focus,
2582
- .w3eden .btn-danger.disabled:hover,
2583
- .w3eden .btn-danger[disabled],
2584
- .w3eden .btn-danger[disabled].active,
2585
- .w3eden .btn-danger[disabled].focus,
2586
- .w3eden .btn-danger[disabled]:active,
2587
- .w3eden .btn-danger[disabled]:focus,
2588
- .w3eden .btn-danger[disabled]:hover,
2589
- .w3eden fieldset[disabled] .btn-danger,
2590
- .w3eden fieldset[disabled] .btn-danger.active,
2591
- .w3eden fieldset[disabled] .btn-danger.focus,
2592
- .w3eden fieldset[disabled] .btn-danger:active,
2593
- .w3eden fieldset[disabled] .btn-danger:focus,
2594
- .w3eden fieldset[disabled] .btn-danger:hover {
2595
- background-color: #d9534f;
2596
- border-color: #d43f3a;
2597
- }
2598
- .w3eden .btn-danger .badge {
2599
- color: #d9534f;
2600
- background-color: #ffffff;
2601
- }
2602
- .w3eden .btn-link {
2603
- font-weight: 400;
2604
- color: #337ab7;
2605
- border-radius: 0;
2606
- }
2607
- .w3eden .btn-link,
2608
- .w3eden .btn-link.active,
2609
- .w3eden .btn-link:active,
2610
- .w3eden .btn-link[disabled],
2611
- .w3eden fieldset[disabled] .btn-link {
2612
- background-color: transparent;
2613
- -webkit-box-shadow: none;
2614
- box-shadow: none;
2615
- }
2616
- .w3eden .btn-link,
2617
- .w3eden .btn-link:active,
2618
- .w3eden .btn-link:focus,
2619
- .w3eden .btn-link:hover {
2620
- border-color: transparent;
2621
- }
2622
- .w3eden .btn-link:focus,
2623
- .w3eden .btn-link:hover {
2624
- color: #23527c;
2625
- text-decoration: underline;
2626
- background-color: transparent;
2627
- }
2628
- .w3eden .btn-link[disabled]:focus,
2629
- .w3eden .btn-link[disabled]:hover,
2630
- .w3eden fieldset[disabled] .btn-link:focus,
2631
- .w3eden fieldset[disabled] .btn-link:hover {
2632
- color: #777;
2633
- text-decoration: none;
2634
- }
2635
- .w3eden .btn-group-lg > .btn,
2636
- .w3eden .btn-lg {
2637
- padding: 10px 16px;
2638
- font-size: 18px;
2639
- line-height: 1.3333333;
2640
- border-radius: 6px;
2641
- }
2642
- .w3eden .btn-group-sm > .btn,
2643
- .w3eden .btn-sm {
2644
- padding: 5px 10px;
2645
- font-size: 12px;
2646
- line-height: 1.5;
2647
- border-radius: 3px;
2648
- }
2649
- .w3eden .btn-group-xs > .btn,
2650
- .w3eden .btn-xs {
2651
- padding: 1px 5px;
2652
- font-size: 12px;
2653
- line-height: 1.5;
2654
- border-radius: 3px;
2655
- }
2656
- .w3eden .btn-block {
2657
- display: block;
2658
- width: 100%;
2659
- }
2660
- .w3eden .btn-block + .btn-block {
2661
- margin-top: 5px;
2662
- }
2663
- .w3eden input[type=button].btn-block,
2664
- .w3eden input[type=reset].btn-block,
2665
- .w3eden input[type=submit].btn-block {
2666
- width: 100%;
2667
- }
2668
- .w3eden .fade {
2669
- opacity: 0;
2670
- -webkit-transition: opacity .15s linear;
2671
- -o-transition: opacity .15s linear;
2672
- transition: opacity 0.15s linear;
2673
- }
2674
- .w3eden .fade.in {
2675
- opacity: 1;
2676
- }
2677
- .w3eden .collapse {
2678
- display: none;
2679
- }
2680
- .w3eden .collapse.in {
2681
- display: block;
2682
- }
2683
- .w3eden tr.collapse.in {
2684
- display: table-row;
2685
- }
2686
- .w3eden tbody.collapse.in {
2687
- display: table-row-group;
2688
- }
2689
- .w3eden .collapsing {
2690
- position: relative;
2691
- height: 0;
2692
- overflow: hidden;
2693
- -webkit-transition-timing-function: ease;
2694
- -o-transition-timing-function: ease;
2695
- transition-timing-function: ease;
2696
- -webkit-transition-duration: .35s;
2697
- -o-transition-duration: .35s;
2698
- transition-duration: .35s;
2699
- -webkit-transition-property: height,visibility;
2700
- -o-transition-property: height,visibility;
2701
- transition-property: height, visibility;
2702
- }
2703
- .w3eden .caret {
2704
- display: inline-block;
2705
- width: 0;
2706
- height: 0;
2707
- margin-left: 2px;
2708
- vertical-align: middle;
2709
- border-top: 4px dashed;
2710
- border-right: 4px solid transparent;
2711
- border-left: 4px solid transparent;
2712
- }
2713
- .w3eden .dropdown,
2714
- .w3eden .dropup {
2715
- position: relative;
2716
- }
2717
- .w3eden .dropdown-toggle:focus {
2718
- outline: 0;
2719
- }
2720
- .w3eden .dropdown-menu {
2721
- position: absolute;
2722
- top: 100%;
2723
- left: 0;
2724
- z-index: 1000;
2725
- display: none;
2726
- float: left;
2727
- min-width: 160px;
2728
- padding: 5px 0;
2729
- margin: 2px 0 0;
2730
- font-size: 14px;
2731
- text-align: left;
2732
- list-style: none;
2733
- background-color: #fff;
2734
- -webkit-background-clip: padding-box;
2735
- background-clip: padding-box;
2736
- border: 1px solid #ccc;
2737
- border: 1px solid rgba(0, 0, 0, 0.15);
2738
- border-radius: 4px;
2739
- -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
2740
- box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
2741
- }
2742
- .w3eden .dropdown-menu.pull-right {
2743
- right: 0;
2744
- left: auto;
2745
- }
2746
- .w3eden .dropdown-menu .divider {
2747
- height: 1px;
2748
- margin: 9px 0;
2749
- overflow: hidden;
2750
- background-color: #e5e5e5;
2751
- }
2752
- .w3eden .dropdown-menu > li > a {
2753
- display: block;
2754
- padding: 3px 20px;
2755
- clear: both;
2756
- font-weight: 400;
2757
- line-height: 1.42857143;
2758
- color: #333;
2759
- white-space: nowrap;
2760
- }
2761
- .w3eden .dropdown-menu > li > a:focus,
2762
- .w3eden .dropdown-menu > li > a:hover {
2763
- color: #262626;
2764
- text-decoration: none;
2765
- background-color: #f5f5f5;
2766
- }
2767
- .w3eden .dropdown-menu > .active > a,
2768
- .w3eden .dropdown-menu > .active > a:focus,
2769
- .w3eden .dropdown-menu > .active > a:hover {
2770
- color: #fff;
2771
- text-decoration: none;
2772
- background-color: #337ab7;
2773
- outline: 0;
2774
- }
2775
- .w3eden .dropdown-menu > .disabled > a,
2776
- .w3eden .dropdown-menu > .disabled > a:focus,
2777
- .w3eden .dropdown-menu > .disabled > a:hover {
2778
- color: #777777;
2779
- }
2780
- .w3eden .dropdown-menu > .disabled > a:focus,
2781
- .w3eden .dropdown-menu > .disabled > a:hover {
2782
- text-decoration: none;
2783
- cursor: not-allowed;
2784
- background-color: transparent;
2785
- background-image: none;
2786
- filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
2787
- }
2788
- .w3eden .open > .dropdown-menu {
2789
- display: block;
2790
- }
2791
- .w3eden .open > a {
2792
- outline: 0;
2793
- }
2794
- .w3eden .dropdown-menu-right {
2795
- right: 0;
2796
- left: auto;
2797
- }
2798
- .w3eden .dropdown-menu-left {
2799
- right: auto;
2800
- left: 0;
2801
- }
2802
- .w3eden .dropdown-header {
2803
- display: block;
2804
- padding: 3px 20px;
2805
- font-size: 12px;
2806
- line-height: 1.42857143;
2807
- color: #777;
2808
- white-space: nowrap;
2809
- }
2810
- .w3eden .dropdown-backdrop {
2811
- position: fixed;
2812
- top: 0;
2813
- right: 0;
2814
- bottom: 0;
2815
- left: 0;
2816
- z-index: 990;
2817
- }
2818
- .w3eden .pull-right > .dropdown-menu {
2819
- right: 0;
2820
- left: auto;
2821
- }
2822
- .w3eden .dropup .caret,
2823
- .w3eden .navbar-fixed-bottom .dropdown .caret {
2824
- content: "";
2825
- border-top: 0;
2826
- border-bottom: 4px solid;
2827
- }
2828
- .w3eden .dropup .dropdown-menu,
2829
- .w3eden .navbar-fixed-bottom .dropdown .dropdown-menu {
2830
- top: auto;
2831
- bottom: 100%;
2832
- margin-bottom: 2px;
2833
- }
2834
- @media (min-width: 768px) {
2835
- .w3eden .navbar-right .dropdown-menu {
2836
- right: 0;
2837
- left: auto;
2838
- }
2839
- .w3eden .navbar-right .dropdown-menu-left {
2840
- right: auto;
2841
- left: 0;
2842
- }
2843
- }
2844
- .w3eden .btn-group,
2845
- .w3eden .btn-group-vertical {
2846
- position: relative;
2847
- display: inline-block;
2848
- vertical-align: middle;
2849
- }
2850
- .w3eden .btn-group-vertical > .btn,
2851
- .w3eden .btn-group > .btn {
2852
- position: relative;
2853
- float: left;
2854
- }
2855
- .w3eden .btn-group-vertical > .btn.active,
2856
- .w3eden .btn-group-vertical > .btn:active,
2857
- .w3eden .btn-group-vertical > .btn:focus,
2858
- .w3eden .btn-group-vertical > .btn:hover,
2859
- .w3eden .btn-group > .btn.active,
2860
- .w3eden .btn-group > .btn:active,
2861
- .w3eden .btn-group > .btn:focus,
2862
- .w3eden .btn-group > .btn:hover {
2863
- z-index: 2;
2864
- }
2865
- .w3eden .btn-group .btn + .btn,
2866
- .w3eden .btn-group .btn + .btn-group,
2867
- .w3eden .btn-group .btn-group + .btn,
2868
- .w3eden .btn-group .btn-group + .btn-group {
2869
- margin-left: -1px;
2870
- }
2871
- .w3eden .btn-toolbar {
2872
- margin-left: -5px;
2873
- }
2874
- .w3eden .btn-toolbar .btn-group,
2875
- .w3eden .btn-toolbar .input-group {
2876
- float: left;
2877
- }
2878
- .w3eden .btn-toolbar > .btn,
2879
- .w3eden .btn-toolbar > .btn-group,
2880
- .w3eden .btn-toolbar > .input-group {
2881
- margin-left: 5px;
2882
- }
2883
- .w3eden .btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) {
2884
- border-radius: 0;
2885
- }
2886
- .w3eden .btn-group > .btn:first-child {
2887
- margin-left: 0;
2888
- }
2889
- .w3eden .btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle) {
2890
- border-top-right-radius: 0;
2891
- border-bottom-right-radius: 0;
2892
- }
2893
- .w3eden .btn-group > .btn:last-child:not(:first-child),
2894
- .w3eden .btn-group > .dropdown-toggle:not(:first-child) {
2895
- border-top-left-radius: 0;
2896
- border-bottom-left-radius: 0;
2897
- }
2898
- .w3eden .btn-group > .btn-group {
2899
- float: left;
2900
- }
2901
- .w3eden .btn-group > .btn-group:not(:first-child):not(:last-child) > .btn {
2902
- border-radius: 0;
2903
- }
2904
- .w3eden .btn-group > .btn-group:first-child:not(:last-child) > .btn:last-child,
2905
- .w3eden .btn-group > .btn-group:first-child:not(:last-child) > .dropdown-toggle {
2906
- border-top-right-radius: 0;
2907
- border-bottom-right-radius: 0;
2908
- }
2909
- .w3eden .btn-group > .btn-group:last-child:not(:first-child) > .btn:first-child {
2910
- border-top-left-radius: 0;
2911
- border-bottom-left-radius: 0;
2912
- }
2913
- .w3eden .btn-group .dropdown-toggle:active,
2914
- .w3eden .btn-group.open .dropdown-toggle {
2915
- outline: 0;
2916
- }
2917
- .w3eden .btn-group > .btn + .dropdown-toggle {
2918
- padding-right: 8px;
2919
- padding-left: 8px;
2920
- }
2921
- .w3eden .btn-group > .btn-lg + .dropdown-toggle {
2922
- padding-right: 12px;
2923
- padding-left: 12px;
2924
- }
2925
- .w3eden .btn-group.open .dropdown-toggle {
2926
- -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
2927
- box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
2928
- }
2929
- .w3eden .btn-group.open .dropdown-toggle.btn-link {
2930
- -webkit-box-shadow: none;
2931
- box-shadow: none;
2932
- }
2933
- .w3eden .btn .caret {
2934
- margin-left: 0;
2935
- }
2936
- .w3eden .btn-lg .caret {
2937
- border-width: 5px 5px 0;
2938
- border-bottom-width: 0;
2939
- }
2940
- .w3eden .dropup .btn-lg .caret {
2941
- border-width: 0 5px 5px;
2942
- }
2943
- .w3eden .btn-group-vertical > .btn,
2944
- .w3eden .btn-group-vertical > .btn-group,
2945
- .w3eden .btn-group-vertical > .btn-group > .btn {
2946
- display: block;
2947
- float: none;
2948
- width: 100%;
2949
- max-width: 100%;
2950
- }
2951
- .w3eden .btn-group-vertical > .btn-group > .btn {
2952
- float: none;
2953
- }
2954
- .w3eden .btn-group-vertical > .btn + .btn,
2955
- .w3eden .btn-group-vertical > .btn + .btn-group,
2956
- .w3eden .btn-group-vertical > .btn-group + .btn,
2957
- .w3eden .btn-group-vertical > .btn-group + .btn-group {
2958
- margin-top: -1px;
2959
- margin-left: 0;
2960
- }
2961
- .w3eden .btn-group-vertical > .btn:not(:first-child):not(:last-child) {
2962
- border-radius: 0;
2963
- }
2964
- .w3eden .btn-group-vertical > .btn:first-child:not(:last-child) {
2965
- border-top-right-radius: 4px;
2966
- border-bottom-right-radius: 0;
2967
- border-bottom-left-radius: 0;
2968
- }
2969
- .w3eden .btn-group-vertical > .btn:last-child:not(:first-child) {
2970
- border-top-left-radius: 0;
2971
- border-top-right-radius: 0;
2972
- border-bottom-left-radius: 4px;
2973
- }
2974
- .w3eden .btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn {
2975
- border-radius: 0;
2976
- }
2977
- .w3eden .btn-group-vertical > .btn-group:first-child:not(:last-child) > .btn:last-child,
2978
- .w3eden .btn-group-vertical > .btn-group:first-child:not(:last-child) > .dropdown-toggle {
2979
- border-bottom-right-radius: 0;
2980
- border-bottom-left-radius: 0;
2981
- }
2982
- .w3eden .btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child {
2983
- border-top-left-radius: 0;
2984
- border-top-right-radius: 0;
2985
- }
2986
- .w3eden .btn-group-justified {
2987
- display: table;
2988
- width: 100%;
2989
- table-layout: fixed;
2990
- border-collapse: separate;
2991
- }
2992
- .w3eden .btn-group-justified > .btn,
2993
- .w3eden .btn-group-justified > .btn-group {
2994
- display: table-cell;
2995
- float: none;
2996
- width: 1%;
2997
- }
2998
- .w3eden .btn-group-justified > .btn-group .btn {
2999
- width: 100%;
3000
- }
3001
- .w3eden .btn-group-justified > .btn-group .dropdown-menu {
3002
- left: auto;
3003
- }
3004
- .w3eden [data-toggle=buttons] > .btn input[type=checkbox],
3005
- .w3eden [data-toggle=buttons] > .btn input[type=radio],
3006
- .w3eden [data-toggle=buttons] > .btn-group > .btn input[type=checkbox],
3007
- .w3eden [data-toggle=buttons] > .btn-group > .btn input[type=radio] {
3008
- position: absolute;
3009
- clip: rect(0, 0, 0, 0);
3010
- pointer-events: none;
3011
- }
3012
- .w3eden .input-group {
3013
- position: relative;
3014
- display: table;
3015
- border-collapse: separate;
3016
- }
3017
- .w3eden .input-group[class*=col-] {
3018
- float: none;
3019
- padding-right: 0;
3020
- padding-left: 0;
3021
- }
3022
- .w3eden .input-group .form-control {
3023
- position: relative;
3024
- z-index: 2;
3025
- float: left;
3026
- width: 100%;
3027
- margin-bottom: 0;
3028
- }
3029
- .w3eden .input-group-lg > .form-control,
3030
- .w3eden .input-group-lg > .input-group-addon,
3031
- .w3eden .input-group-lg > .input-group-btn > .btn {
3032
- height: 46px;
3033
- padding: 10px 16px;
3034
- font-size: 18px;
3035
- line-height: 1.3333333;
3036
- border-radius: 6px;
3037
- }
3038
- .w3eden select.input-group-lg > .form-control,
3039
- .w3eden select.input-group-lg > .input-group-addon,
3040
- .w3eden select.input-group-lg > .input-group-btn > .btn {
3041
- height: 46px;
3042
- line-height: 46px;
3043
- }
3044
- .w3eden select[multiple].input-group-lg > .form-control,
3045
- .w3eden select[multiple].input-group-lg > .input-group-addon,
3046
- .w3eden select[multiple].input-group-lg > .input-group-btn > .btn,
3047
- .w3eden textarea.input-group-lg > .form-control,
3048
- .w3eden textarea.input-group-lg > .input-group-addon,
3049
- .w3eden textarea.input-group-lg > .input-group-btn > .btn {
3050
- height: auto;
3051
- }
3052
- .w3eden .input-group-sm > .form-control,
3053
- .w3eden .input-group-sm > .input-group-addon,
3054
- .w3eden .input-group-sm > .input-group-btn > .btn {
3055
- height: 30px;
3056
- padding: 5px 10px;
3057
- font-size: 12px;
3058
- line-height: 1.5;
3059
- border-radius: 3px;
3060
- }
3061
- .w3eden select.input-group-sm > .form-control,
3062
- .w3eden select.input-group-sm > .input-group-addon,
3063
- .w3eden select.input-group-sm > .input-group-btn > .btn {
3064
- height: 30px;
3065
- line-height: 30px;
3066
- }
3067
- .w3eden select[multiple].input-group-sm > .form-control,
3068
- .w3eden select[multiple].input-group-sm > .input-group-addon,
3069
- .w3eden select[multiple].input-group-sm > .input-group-btn > .btn,
3070
- .w3eden textarea.input-group-sm > .form-control,
3071
- .w3eden textarea.input-group-sm > .input-group-addon,
3072
- .w3eden textarea.input-group-sm > .input-group-btn > .btn {
3073
- height: auto;
3074
- }
3075
- .w3eden .input-group .form-control,
3076
- .w3eden .input-group-addon,
3077
- .w3eden .input-group-btn {
3078
- display: table-cell;
3079
- }
3080
- .w3eden .input-group .form-control:not(:first-child):not(:last-child),
3081
- .w3eden .input-group-addon:not(:first-child):not(:last-child),
3082
- .w3eden .input-group-btn:not(:first-child):not(:last-child) {
3083
- border-radius: 0;
3084
- }
3085
- .w3eden .input-group-addon,
3086
- .w3eden .input-group-btn {
3087
- width: 1%;
3088
- white-space: nowrap;
3089
- vertical-align: middle;
3090
- }
3091
- .w3eden .input-group-addon {
3092
- padding: 6px 12px;
3093
- font-size: 14px;
3094
- font-weight: 400;
3095
- line-height: 1;
3096
- color: #555;
3097
- text-align: center;
3098
- background-color: #eee;
3099
- border: 1px solid #ccc;
3100
- border-radius: 3px;
3101
- }
3102
- .w3eden .input-group-addon.input-sm {
3103
- padding: 5px 10px;
3104
- font-size: 12px;
3105
- border-radius: 3px;
3106
- }
3107
- .w3eden .input-group-addon.input-lg {
3108
- padding: 10px 16px;
3109
- font-size: 18px;
3110
- border-radius: 6px;
3111
- }
3112
- .w3eden .input-group-addon input[type=checkbox],
3113
- .w3eden .input-group-addon input[type=radio] {
3114
- margin-top: 0;
3115
- }
3116
- .w3eden .input-group .form-control:first-child,
3117
- .w3eden .input-group-addon:first-child,
3118
- .w3eden .input-group-btn:first-child > .btn,
3119
- .w3eden .input-group-btn:first-child > .btn-group > .btn,
3120
- .w3eden .input-group-btn:first-child > .dropdown-toggle,
3121
- .w3eden .input-group-btn:last-child > .btn-group:not(:last-child) > .btn,
3122
- .w3eden .input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle) {
3123
- border-top-right-radius: 0;
3124
- border-bottom-right-radius: 0;
3125
- }
3126
- .w3eden .input-group-addon:first-child {
3127
- border-right: 0;
3128
- }
3129
- .w3eden .input-group .form-control:last-child,
3130
- .w3eden .input-group-addon:last-child,
3131
- .w3eden .input-group-btn:first-child > .btn-group:not(:first-child) > .btn,
3132
- .w3eden .input-group-btn:first-child > .btn:not(:first-child),
3133
- .w3eden .input-group-btn:last-child > .btn,
3134
- .w3eden .input-group-btn:last-child > .btn-group > .btn,
3135
- .w3eden .input-group-btn:last-child > .dropdown-toggle {
3136
- border-top-left-radius: 0;
3137
- border-bottom-left-radius: 0;
3138
- }
3139
- .w3eden .input-group-addon:last-child {
3140
- border-left: 0;
3141
- }
3142
- .w3eden .input-group-btn {
3143
- position: relative;
3144
- white-space: nowrap;
3145
- }
3146
- .w3eden .input-group-btn > .btn {
3147
- position: relative;
3148
- }
3149
- .w3eden .input-group-btn > .btn + .btn {
3150
- margin-left: -1px;
3151
- }
3152
- .w3eden .input-group-btn > .btn:active,
3153
- .w3eden .input-group-btn > .btn:focus,
3154
- .w3eden .input-group-btn > .btn:hover {
3155
- z-index: 2;
3156
- }
3157
- .w3eden .input-group-btn:first-child > .btn,
3158
- .w3eden .input-group-btn:first-child > .btn-group {
3159
- margin-right: -1px;
3160
- }
3161
- .w3eden .input-group-btn:last-child > .btn,
3162
- .w3eden .input-group-btn:last-child > .btn-group {
3163
- margin-left: -1px;
3164
- }
3165
- .w3eden .nav {
3166
- padding-left: 0;
3167
- margin-bottom: 0;
3168
- list-style: none;
3169
- }
3170
- .w3eden .nav > li {
3171
- position: relative;
3172
- display: block;
3173
- }
3174
- .w3eden .nav > li > a {
3175
- position: relative;
3176
- display: block;
3177
- padding: 10px 15px;
3178
- }
3179
- .w3eden .nav > li > a:focus,
3180
- .w3eden .nav > li > a:hover {
3181
- text-decoration: none;
3182
- background-color: #eeeeee;
3183
- }
3184
- .w3eden .nav > li.disabled > a {
3185
- color: #777777;
3186
- }
3187
- .w3eden .nav > li.disabled > a:focus,
3188
- .w3eden .nav > li.disabled > a:hover {
3189
- color: #777;
3190
- text-decoration: none;
3191
- cursor: not-allowed;
3192
- background-color: transparent;
3193
- }
3194
- .w3eden .nav .open > a,
3195
- .w3eden .nav .open > a:focus,
3196
- .w3eden .nav .open > a:hover {
3197
- background-color: #eee;
3198
- border-color: #337ab7;
3199
- }
3200
- .w3eden .nav .nav-divider {
3201
- height: 1px;
3202
- margin: 9px 0;
3203
- overflow: hidden;
3204
- background-color: #e5e5e5;
3205
- }
3206
- .w3eden .nav > li > a > img {
3207
- max-width: none;
3208
- }
3209
- .w3eden .nav-tabs {
3210
- border-bottom: 1px solid #dddddd;
3211
- }
3212
- .w3eden .nav-tabs > li {
3213
- float: left;
3214
- margin-bottom: -1px;
3215
- }
3216
- .w3eden .nav-tabs > li > a {
3217
- margin-right: 2px;
3218
- line-height: 1.42857143;
3219
- border: 1px solid transparent;
3220
- border-radius: 4px 4px 0 0;
3221
- }
3222
- .w3eden .nav-tabs > li > a:hover {
3223
- border-color: #eeeeee #eeeeee #dddddd;
3224
- }
3225
- .w3eden .nav-tabs > li.active > a,
3226
- .w3eden .nav-tabs > li.active > a:focus,
3227
- .w3eden .nav-tabs > li.active > a:hover {
3228
- color: #555;
3229
- cursor: default;
3230
- background-color: #fff;
3231
- border: 1px solid #ddd;
3232
- border-bottom-color: transparent;
3233
- }
3234
- .w3eden .nav-tabs.nav-justified {
3235
- width: 100%;
3236
- border-bottom: 0;
3237
- }
3238
- .w3eden .nav-tabs.nav-justified > li {
3239
- float: none;
3240
- }
3241
- .w3eden .nav-tabs.nav-justified > li > a {
3242
- margin-bottom: 5px;
3243
- text-align: center;
3244
- }
3245
- .w3eden .nav-tabs.nav-justified > .dropdown .dropdown-menu {
3246
- top: auto;
3247
- left: auto;
3248
- }
3249
- @media (min-width: 768px) {
3250
- .w3eden .nav-tabs.nav-justified > li {
3251
- display: table-cell;
3252
- width: 1%;
3253
- }
3254
- .w3eden .nav-tabs.nav-justified > li > a {
3255
- margin-bottom: 0;
3256
- }
3257
- }
3258
- .w3eden .nav-tabs.nav-justified > li > a {
3259
- margin-right: 0;
3260
- border-radius: 4px;
3261
- }
3262
- .w3eden .nav-tabs.nav-justified > .active > a,
3263
- .w3eden .nav-tabs.nav-justified > .active > a:focus,
3264
- .w3eden .nav-tabs.nav-justified > .active > a:hover {
3265
- border: 1px solid #dddddd;
3266
- }
3267
- @media (min-width: 768px) {
3268
- .w3eden .nav-tabs.nav-justified > li > a {
3269
- border-bottom: 1px solid #ddd;
3270
- border-radius: 4px 4px 0 0;
3271
- }
3272
- .w3eden .nav-tabs.nav-justified > .active > a,
3273
- .w3eden .nav-tabs.nav-justified > .active > a:focus,
3274
- .w3eden .nav-tabs.nav-justified > .active > a:hover {
3275
- border-bottom-color: #ffffff;
3276
- }
3277
- }
3278
- .w3eden .nav-pills > li {
3279
- float: left;
3280
- }
3281
- .w3eden .nav-pills > li > a {
3282
- border-radius: 4px;
3283
- }
3284
- .w3eden .nav-pills > li + li {
3285
- margin-left: 2px;
3286
- }
3287
- .w3eden .nav-pills > li.active > a,
3288
- .w3eden .nav-pills > li.active > a:focus,
3289
- .w3eden .nav-pills > li.active > a:hover {
3290
- color: #fff;
3291
- background-color: #337ab7;
3292
- }
3293
- .w3eden .nav-stacked > li {
3294
- float: none;
3295
- }
3296
- .w3eden .nav-stacked > li + li {
3297
- margin-top: 2px;
3298
- margin-left: 0;
3299
- }
3300
- .w3eden .nav-justified {
3301
- width: 100%;
3302
- }
3303
- .w3eden .nav-justified > li {
3304
- float: none;
3305
- }
3306
- .w3eden .nav-justified > li > a {
3307
- margin-bottom: 5px;
3308
- text-align: center;
3309
- }
3310
- .w3eden .nav-justified > .dropdown .dropdown-menu {
3311
- top: auto;
3312
- left: auto;
3313
- }
3314
- @media (min-width: 768px) {
3315
- .w3eden .nav-justified > li {
3316
- display: table-cell;
3317
- width: 1%;
3318
- }
3319
- .w3eden .nav-justified > li > a {
3320
- margin-bottom: 0;
3321
- }
3322
- }
3323
- .w3eden .nav-tabs-justified {
3324
- border-bottom: 0;
3325
- }
3326
- .w3eden .nav-tabs-justified > li > a {
3327
- margin-right: 0;
3328
- border-radius: 4px;
3329
- }
3330
- .w3eden .nav-tabs-justified > .active > a,
3331
- .w3eden .nav-tabs-justified > .active > a:focus,
3332
- .w3eden .nav-tabs-justified > .active > a:hover {
3333
- border: 1px solid #dddddd;
3334
- }
3335
- @media (min-width: 768px) {
3336
- .w3eden .nav-tabs-justified > li > a {
3337
- border-bottom: 1px solid #ddd;
3338
- border-radius: 4px 4px 0 0;
3339
- }
3340
- .w3eden .nav-tabs-justified > .active > a,
3341
- .w3eden .nav-tabs-justified > .active > a:focus,
3342
- .w3eden .nav-tabs-justified > .active > a:hover {
3343
- border-bottom-color: #ffffff;
3344
- }
3345
- }
3346
- .w3eden .tab-content > .tab-pane {
3347
- display: none;
3348
- }
3349
- .w3eden .tab-content > .active {
3350
- display: block;
3351
- }
3352
- .w3eden .nav-tabs .dropdown-menu {
3353
- margin-top: -1px;
3354
- border-top-left-radius: 0;
3355
- border-top-right-radius: 0;
3356
- }
3357
- .w3eden .navbar {
3358
- position: relative;
3359
- min-height: 50px;
3360
- margin-bottom: 20px;
3361
- border: 1px solid transparent;
3362
- }
3363
- @media (min-width: 768px) {
3364
- .w3eden .navbar {
3365
- border-radius: 4px;
3366
- }
3367
- }
3368
- @media (min-width: 768px) {
3369
- .w3eden .navbar-header {
3370
- float: left;
3371
- }
3372
- }
3373
- .w3eden .navbar-collapse {
3374
- padding-right: 15px;
3375
- padding-left: 15px;
3376
- overflow-x: visible;
3377
- -webkit-overflow-scrolling: touch;
3378
- border-top: 1px solid transparent;
3379
- -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1);
3380
- box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1);
3381
- }
3382
- .w3eden .navbar-collapse.in {
3383
- overflow-y: auto;
3384
- }
3385
- @media (min-width: 768px) {
3386
- .w3eden .navbar-collapse {
3387
- width: auto;
3388
- border-top: 0;
3389
- -webkit-box-shadow: none;
3390
- box-shadow: none;
3391
- }
3392
- .w3eden .navbar-collapse.collapse {
3393
- display: block!important;
3394
- height: auto!important;
3395
- padding-bottom: 0;
3396
- overflow: visible !important;
3397
- }
3398
- .w3eden .navbar-collapse.in {
3399
- overflow-y: visible;
3400
- }
3401
- .w3eden .navbar-fixed-bottom .navbar-collapse,
3402
- .w3eden .navbar-fixed-top .navbar-collapse,
3403
- .w3eden .navbar-static-top .navbar-collapse {
3404
- padding-right: 0;
3405
- padding-left: 0;
3406
- }
3407
- }
3408
- .w3eden .navbar-fixed-bottom .navbar-collapse,
3409
- .w3eden .navbar-fixed-top .navbar-collapse {
3410
- max-height: 340px;
3411
- }
3412
- @media (max-device-width: 480px) and (orientation: landscape) {
3413
- .w3eden .navbar-fixed-bottom .navbar-collapse,
3414
- .w3eden .navbar-fixed-top .navbar-collapse {
3415
- max-height: 200px;
3416
- }
3417
- }
3418
- .w3eden .container-fluid > .navbar-collapse,
3419
- .w3eden .container-fluid > .navbar-header,
3420
- .w3eden .container > .navbar-collapse,
3421
- .w3eden .container > .navbar-header {
3422
- margin-right: -15px;
3423
- margin-left: -15px;
3424
- }
3425
- @media (min-width: 768px) {
3426
- .w3eden .container-fluid > .navbar-collapse,
3427
- .w3eden .container-fluid > .navbar-header,
3428
- .w3eden .container > .navbar-collapse,
3429
- .w3eden .container > .navbar-header {
3430
- margin-right: 0;
3431
- margin-left: 0;
3432
- }
3433
- }
3434
- .w3eden .navbar-static-top {
3435
- z-index: 1000;
3436
- border-width: 0 0 1px;
3437
- }
3438
- @media (min-width: 768px) {
3439
- .w3eden .navbar-static-top {
3440
- border-radius: 0;
3441
- }
3442
- }
3443
- .w3eden .navbar-fixed-bottom,
3444
- .w3eden .navbar-fixed-top {
3445
- position: fixed;
3446
- right: 0;
3447
- left: 0;
3448
- z-index: 1030;
3449
- }
3450
- @media (min-width: 768px) {
3451
- .w3eden .navbar-fixed-bottom,
3452
- .w3eden .navbar-fixed-top {
3453
- border-radius: 0;
3454
- }
3455
- }
3456
- .w3eden .navbar-fixed-top {
3457
- top: 0;
3458
- border-width: 0 0 1px;
3459
- }
3460
- .w3eden .navbar-fixed-bottom {
3461
- bottom: 0;
3462
- margin-bottom: 0;
3463
- border-width: 1px 0 0;
3464
- }
3465
- .w3eden .navbar-brand {
3466
- float: left;
3467
- height: 50px;
3468
- padding: 15px 15px;
3469
- font-size: 18px;
3470
- line-height: 20px;
3471
- }
3472
- .w3eden .navbar-brand:focus,
3473
- .w3eden .navbar-brand:hover {
3474
- text-decoration: none;
3475
- }
3476
- .w3eden .navbar-brand > img {
3477
- display: block;
3478
- }
3479
- @media (min-width: 768px) {
3480
- .w3eden .navbar > .container .navbar-brand,
3481
- .w3eden .navbar > .container-fluid .navbar-brand {
3482
- margin-left: -15px;
3483
- }
3484
- }
3485
- .w3eden .navbar-toggle {
3486
- position: relative;
3487
- float: right;
3488
- padding: 9px 10px;
3489
- margin-top: 8px;
3490
- margin-right: 15px;
3491
- margin-bottom: 8px;
3492
- background-color: transparent;
3493
- background-image: none;
3494
- border: 1px solid transparent;
3495
- border-radius: 4px;
3496
- }
3497
- .w3eden .navbar-toggle:focus {
3498
- outline: 0;
3499
- }
3500
- .w3eden .navbar-toggle .icon-bar {
3501
- display: block;
3502
- width: 22px;
3503
- height: 2px;
3504
- border-radius: 1px;
3505
- }
3506
- .w3eden .navbar-toggle .icon-bar + .icon-bar {
3507
- margin-top: 4px;
3508
- }
3509
- @media (min-width: 768px) {
3510
- .w3eden .navbar-toggle {
3511
- display: none;
3512
- }
3513
- }
3514
- .w3eden .navbar-nav {
3515
- margin: 7.5px -15px;
3516
- }
3517
- .w3eden .navbar-nav > li > a {
3518
- padding-top: 10px;
3519
- padding-bottom: 10px;
3520
- line-height: 20px;
3521
- }
3522
- @media (max-width: 767px) {
3523
- .w3eden .navbar-nav .open .dropdown-menu {
3524
- position: static;
3525
- float: none;
3526
- width: auto;
3527
- margin-top: 0;
3528
- background-color: transparent;
3529
- border: 0;
3530
- -webkit-box-shadow: none;
3531
- box-shadow: none;
3532
- }
3533
- .w3eden .navbar-nav .open .dropdown-menu .dropdown-header,
3534
- .w3eden .navbar-nav .open .dropdown-menu > li > a {
3535
- padding: 5px 15px 5px 25px;
3536
- }
3537
- .w3eden .navbar-nav .open .dropdown-menu > li > a {
3538
- line-height: 20px;
3539
- }
3540
- .w3eden .navbar-nav .open .dropdown-menu > li > a:focus,
3541
- .w3eden .navbar-nav .open .dropdown-menu > li > a:hover {
3542
- background-image: none;
3543
- }
3544
- }
3545
- @media (min-width: 768px) {
3546
- .w3eden .navbar-nav {
3547
- float: left;
3548
- margin: 0;
3549
- }
3550
- .w3eden .navbar-nav > li {
3551
- float: left;
3552
- }
3553
- .w3eden .navbar-nav > li > a {
3554
- padding-top: 15px;
3555
- padding-bottom: 15px;
3556
- }
3557
- }
3558
- .w3eden .navbar-form {
3559
- padding: 10px 15px;
3560
- margin-top: 8px;
3561
- margin-right: -15px;
3562
- margin-bottom: 8px;
3563
- margin-left: -15px;
3564
- border-top: 1px solid transparent;
3565
- border-bottom: 1px solid transparent;
3566
- -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);
3567
- box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);
3568
- }
3569
- @media (min-width: 768px) {
3570
- .w3eden .navbar-form .form-group {
3571
- display: inline-block;
3572
- margin-bottom: 0;
3573
- vertical-align: middle;
3574
- }
3575
- .w3eden .navbar-form .form-control {
3576
- display: inline-block;
3577
- width: auto;
3578
- vertical-align: middle;
3579
- }
3580
- .w3eden .navbar-form .form-control-static {
3581
- display: inline-block;
3582
- }
3583
- .w3eden .navbar-form .input-group {
3584
- display: inline-table;
3585
- vertical-align: middle;
3586
- }
3587
- .w3eden .navbar-form .input-group .form-control,
3588
- .w3eden .navbar-form .input-group .input-group-addon,
3589
- .w3eden .navbar-form .input-group .input-group-btn {
3590
- width: auto;
3591
- }
3592
- .w3eden .navbar-form .input-group > .form-control {
3593
- width: 100%;
3594
- }
3595
- .w3eden .navbar-form .control-label {
3596
- margin-bottom: 0;
3597
- vertical-align: middle;
3598
- }
3599
- .w3eden .navbar-form .checkbox,
3600
- .w3eden .navbar-form .radio {
3601
- display: inline-block;
3602
- margin-top: 0;
3603
- margin-bottom: 0;
3604
- vertical-align: middle;
3605
- }
3606
- .w3eden .navbar-form .checkbox label,
3607
- .w3eden .navbar-form .radio label {
3608
- padding-left: 0;
3609
- }
3610
- .w3eden .navbar-form .checkbox input[type=checkbox],
3611
- .w3eden .navbar-form .radio input[type=radio] {
3612
- position: relative;
3613
- margin-left: 0;
3614
- }
3615
- .w3eden .navbar-form .has-feedback .form-control-feedback {
3616
- top: 0;
3617
- }
3618
- }
3619
- @media (max-width: 767px) {
3620
- .w3eden .navbar-form .form-group {
3621
- margin-bottom: 5px;
3622
- }
3623
- .w3eden .navbar-form .form-group:last-child {
3624
- margin-bottom: 0;
3625
- }
3626
- }
3627
- @media (min-width: 768px) {
3628
- .w3eden .navbar-form {
3629
- width: auto;
3630
- padding-top: 0;
3631
- padding-bottom: 0;
3632
- margin-right: 0;
3633
- margin-left: 0;
3634
- border: 0;
3635
- -webkit-box-shadow: none;
3636
- box-shadow: none;
3637
- }
3638
- }
3639
- .w3eden .navbar-nav > li > .dropdown-menu {
3640
- margin-top: 0;
3641
- border-top-left-radius: 0;
3642
- border-top-right-radius: 0;
3643
- }
3644
- .w3eden .navbar-fixed-bottom .navbar-nav > li > .dropdown-menu {
3645
- margin-bottom: 0;
3646
- border-top-left-radius: 4px;
3647
- border-top-right-radius: 4px;
3648
- border-bottom-right-radius: 0;
3649
- border-bottom-left-radius: 0;
3650
- }
3651
- .w3eden .navbar-btn {
3652
- margin-top: 8px;
3653
- margin-bottom: 8px;
3654
- }
3655
- .w3eden .navbar-btn.btn-sm {
3656
- margin-top: 10px;
3657
- margin-bottom: 10px;
3658
- }
3659
- .w3eden .navbar-btn.btn-xs {
3660
- margin-top: 14px;
3661
- margin-bottom: 14px;
3662
- }
3663
- .w3eden .navbar-text {
3664
- margin-top: 15px;
3665
- margin-bottom: 15px;
3666
- }
3667
- @media (min-width: 768px) {
3668
- .w3eden .navbar-text {
3669
- float: left;
3670
- margin-right: 15px;
3671
- margin-left: 15px;
3672
- }
3673
- }
3674
- @media (min-width: 768px) {
3675
- .w3eden .navbar-left {
3676
- float: left !important;
3677
- }
3678
- .w3eden .navbar-right {
3679
- float: right!important;
3680
- margin-right: -15px;
3681
- }
3682
- .w3eden .navbar-right ~ .navbar-right {
3683
- margin-right: 0;
3684
- }
3685
- }
3686
- .w3eden .navbar-default {
3687
- background-color: #f8f8f8;
3688
- border-color: #e7e7e7;
3689
- }
3690
- .w3eden .navbar-default .navbar-brand {
3691
- color: #777777;
3692
- }
3693
- .w3eden .navbar-default .navbar-brand:focus,
3694
- .w3eden .navbar-default .navbar-brand:hover {
3695
- color: #5e5e5e;
3696
- background-color: transparent;
3697
- }
3698
- .w3eden .navbar-default .navbar-text {
3699
- color: #777777;
3700
- }
3701
- .w3eden .navbar-default .navbar-nav > li > a {
3702
- color: #777777;
3703
- }
3704
- .w3eden .navbar-default .navbar-nav > li > a:focus,
3705
- .w3eden .navbar-default .navbar-nav > li > a:hover {
3706
- color: #333;
3707
- background-color: transparent;
3708
- }
3709
- .w3eden .navbar-default .navbar-nav > .active > a,
3710
- .w3eden .navbar-default .navbar-nav > .active > a:focus,
3711
- .w3eden .navbar-default .navbar-nav > .active > a:hover {
3712
- color: #555;
3713
- background-color: #e7e7e7;
3714
- }
3715
- .w3eden .navbar-default .navbar-nav > .disabled > a,
3716
- .w3eden .navbar-default .navbar-nav > .disabled > a:focus,
3717
- .w3eden .navbar-default .navbar-nav > .disabled > a:hover {
3718
- color: #ccc;
3719
- background-color: transparent;
3720
- }
3721
- .w3eden .navbar-default .navbar-toggle {
3722
- border-color: #dddddd;
3723
- }
3724
- .w3eden .navbar-default .navbar-toggle:focus,
3725
- .w3eden .navbar-default .navbar-toggle:hover {
3726
- background-color: #dddddd;
3727
- }
3728
- .w3eden .navbar-default .navbar-toggle .icon-bar {
3729
- background-color: #888888;
3730
- }
3731
- .w3eden .navbar-default .navbar-collapse,
3732
- .w3eden .navbar-default .navbar-form {
3733
- border-color: #e7e7e7;
3734
- }
3735
- .w3eden .navbar-default .navbar-nav > .open > a,
3736
- .w3eden .navbar-default .navbar-nav > .open > a:focus,
3737
- .w3eden .navbar-default .navbar-nav > .open > a:hover {
3738
- color: #555;
3739
- background-color: #e7e7e7;
3740
- }
3741
- @media (max-width: 767px) {
3742
- .w3eden .navbar-default .navbar-nav .open .dropdown-menu > li > a {
3743
- color: #777777;
3744
- }
3745
- .w3eden .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus,
3746
- .w3eden .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover {
3747
- color: #333;
3748
- background-color: transparent;
3749
- }
3750
- .w3eden .navbar-default .navbar-nav .open .dropdown-menu > .active > a,
3751
- .w3eden .navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus,
3752
- .w3eden .navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover {
3753
- color: #555;
3754
- background-color: #e7e7e7;
3755
- }
3756
- .w3eden .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a,
3757
- .w3eden .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:focus,
3758
- .w3eden .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:hover {
3759
- color: #ccc;
3760
- background-color: transparent;
3761
- }
3762
- }
3763
- .w3eden .navbar-default .navbar-link {
3764
- color: #777777;
3765
- }
3766
- .w3eden .navbar-default .navbar-link:hover {
3767
- color: #333333;
3768
- }
3769
- .w3eden .navbar-default .btn-link {
3770
- color: #777777;
3771
- }
3772
- .w3eden .navbar-default .btn-link:focus,
3773
- .w3eden .navbar-default .btn-link:hover {
3774
- color: #333333;
3775
- }
3776
- .w3eden .navbar-default .btn-link[disabled]:focus,
3777
- .w3eden .navbar-default .btn-link[disabled]:hover,
3778
- .w3eden fieldset[disabled] .navbar-default .btn-link:focus,
3779
- .w3eden fieldset[disabled] .navbar-default .btn-link:hover {
3780
- color: #cccccc;
3781
- }
3782
- .w3eden .navbar-inverse {
3783
- background-color: #222;
3784
- border-color: #080808;
3785
- }
3786
- .w3eden .navbar-inverse .navbar-brand {
3787
- color: #9d9d9d;
3788
- }
3789
- .w3eden .navbar-inverse .navbar-brand:focus,
3790
- .w3eden .navbar-inverse .navbar-brand:hover {
3791
- color: #fff;
3792
- background-color: transparent;
3793
- }
3794
- .w3eden .navbar-inverse .navbar-text {
3795
- color: #9d9d9d;
3796
- }
3797
- .w3eden .navbar-inverse .navbar-nav > li > a {
3798
- color: #9d9d9d;
3799
- }
3800
- .w3eden .navbar-inverse .navbar-nav > li > a:focus,
3801
- .w3eden .navbar-inverse .navbar-nav > li > a:hover {
3802
- color: #fff;
3803
- background-color: transparent;
3804
- }
3805
- .w3eden .navbar-inverse .navbar-nav > .active > a,
3806
- .w3eden .navbar-inverse .navbar-nav > .active > a:focus,
3807
- .w3eden .navbar-inverse .navbar-nav > .active > a:hover {
3808
- color: #fff;
3809
- background-color: #080808;
3810
- }
3811
- .w3eden .navbar-inverse .navbar-nav > .disabled > a,
3812
- .w3eden .navbar-inverse .navbar-nav > .disabled > a:focus,
3813
- .w3eden .navbar-inverse .navbar-nav > .disabled > a:hover {
3814
- color: #444;
3815
- background-color: transparent;
3816
- }
3817
- .w3eden .navbar-inverse .navbar-toggle {
3818
- border-color: #333333;
3819
- }
3820
- .w3eden .navbar-inverse .navbar-toggle:focus,
3821
- .w3eden .navbar-inverse .navbar-toggle:hover {
3822
- background-color: #333333;
3823
- }
3824
- .w3eden .navbar-inverse .navbar-toggle .icon-bar {
3825
- background-color: #ffffff;
3826
- }
3827
- .w3eden .navbar-inverse .navbar-collapse,
3828
- .w3eden .navbar-inverse .navbar-form {
3829
- border-color: #101010;
3830
- }
3831
- .w3eden .navbar-inverse .navbar-nav > .open > a,
3832
- .w3eden .navbar-inverse .navbar-nav > .open > a:focus,
3833
- .w3eden .navbar-inverse .navbar-nav > .open > a:hover {
3834
- color: #fff;
3835
- background-color: #080808;
3836
- }
3837
- @media (max-width: 767px) {
3838
- .w3eden .navbar-inverse .navbar-nav .open .dropdown-menu > .dropdown-header {
3839
- border-color: #080808;
3840
- }
3841
- .w3eden .navbar-inverse .navbar-nav .open .dropdown-menu .divider {
3842
- background-color: #080808;
3843
- }
3844
- .w3eden .navbar-inverse .navbar-nav .open .dropdown-menu > li > a {
3845
- color: #9d9d9d;
3846
- }
3847
- .w3eden .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:focus,
3848
- .w3eden .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:hover {
3849
- color: #fff;
3850
- background-color: transparent;
3851
- }
3852
- .w3eden .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a,
3853
- .w3eden .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:focus,
3854
- .w3eden .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:hover {
3855
- color: #fff;
3856
- background-color: #080808;
3857
- }
3858
- .w3eden .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a,
3859
- .w3eden .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:focus,
3860
- .w3eden .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:hover {
3861
- color: #444;
3862
- background-color: transparent;
3863
- }
3864
- }
3865
- .w3eden .navbar-inverse .navbar-link {
3866
- color: #9d9d9d;
3867
- }
3868
- .w3eden .navbar-inverse .navbar-link:hover {
3869
- color: #ffffff;
3870
- }
3871
- .w3eden .navbar-inverse .btn-link {
3872
- color: #9d9d9d;
3873
- }
3874
- .w3eden .navbar-inverse .btn-link:focus,
3875
- .w3eden .navbar-inverse .btn-link:hover {
3876
- color: #ffffff;
3877
- }
3878
- .w3eden .navbar-inverse .btn-link[disabled]:focus,
3879
- .w3eden .navbar-inverse .btn-link[disabled]:hover,
3880
- .w3eden fieldset[disabled] .navbar-inverse .btn-link:focus,
3881
- .w3eden fieldset[disabled] .navbar-inverse .btn-link:hover {
3882
- color: #444444;
3883
- }
3884
- .w3eden .breadcrumb {
3885
- padding: 8px 15px;
3886
- margin-bottom: 20px;
3887
- list-style: none;
3888
- background-color: #f5f5f5;
3889
- border-radius: 4px;
3890
- }
3891
- .w3eden .breadcrumb > li {
3892
- display: inline-block;
3893
- }
3894
- .w3eden .breadcrumb > li + li:before {
3895
- padding: 0 5px;
3896
- color: #ccc;
3897
- content: "/\00a0";
3898
- }
3899
- .w3eden .breadcrumb > .active {
3900
- color: #777777;
3901
- }
3902
- .w3eden .pagination {
3903
- display: inline-block;
3904
- padding-left: 0;
3905
- margin: 20px 0;
3906
- border-radius: 4px;
3907
- }
3908
- .w3eden .pagination > li {
3909
- display: inline;
3910
- }
3911
- .w3eden .pagination > li > a,
3912
- .w3eden .pagination > li > span {
3913
- position: relative;
3914
- float: left;
3915
- padding: 6px 12px;
3916
- margin-left: -1px;
3917
- line-height: 1.42857143;
3918
- color: #337ab7;
3919
- text-decoration: none;
3920
- background-color: #fff;
3921
- border: 1px solid #dddddd;
3922
- }
3923
- .w3eden .pagination > li:first-child > a,
3924
- .w3eden .pagination > li:first-child > span {
3925
- margin-left: 0;
3926
- border-top-left-radius: 4px;
3927
- border-bottom-left-radius: 4px;
3928
- }
3929
- .w3eden .pagination > li:last-child > a,
3930
- .w3eden .pagination > li:last-child > span {
3931
- border-top-right-radius: 4px;
3932
- border-bottom-right-radius: 4px;
3933
- }
3934
- .w3eden .pagination > li > a:focus,
3935
- .w3eden .pagination > li > a:hover,
3936
- .w3eden .pagination > li > span:focus,
3937
- .w3eden .pagination > li > span:hover {
3938
- color: #23527c;
3939
- background-color: #eee;
3940
- border-color: #dddddd;
3941
- }
3942
- .w3eden .pagination > .active > a,
3943
- .w3eden .pagination > .active > a:focus,
3944
- .w3eden .pagination > .active > a:hover,
3945
- .w3eden .pagination > .active > span,
3946
- .w3eden .pagination > .active > span:focus,
3947
- .w3eden .pagination > .active > span:hover {
3948
- z-index: 2;
3949
- color: #fff;
3950
- cursor: default;
3951
- background-color: #337ab7;
3952
- border-color: #337ab7;
3953
- }
3954
- .w3eden .pagination > .disabled > a,
3955
- .w3eden .pagination > .disabled > a:focus,
3956
- .w3eden .pagination > .disabled > a:hover,
3957
- .w3eden .pagination > .disabled > span,
3958
- .w3eden .pagination > .disabled > span:focus,
3959
- .w3eden .pagination > .disabled > span:hover {
3960
- color: #777;
3961
- cursor: not-allowed;
3962
- background-color: #fff;
3963
- border-color: #dddddd;
3964
- }
3965
- .w3eden .pagination-lg > li > a,
3966
- .w3eden .pagination-lg > li > span {
3967
- padding: 10px 16px;
3968
- font-size: 18px;
3969
- }
3970
- .w3eden .pagination-lg > li:first-child > a,
3971
- .w3eden .pagination-lg > li:first-child > span {
3972
- border-top-left-radius: 6px;
3973
- border-bottom-left-radius: 6px;
3974
- }
3975
- .w3eden .pagination-lg > li:last-child > a,
3976
- .w3eden .pagination-lg > li:last-child > span {
3977
- border-top-right-radius: 6px;
3978
- border-bottom-right-radius: 6px;
3979
- }
3980
- .w3eden .pagination-sm > li > a,
3981
- .w3eden .pagination-sm > li > span {
3982
- padding: 5px 10px;
3983
- font-size: 12px;
3984
- }
3985
- .w3eden .pagination-sm > li:first-child > a,
3986
- .w3eden .pagination-sm > li:first-child > span {
3987
- border-top-left-radius: 3px;
3988
- border-bottom-left-radius: 3px;
3989
- }
3990
- .w3eden .pagination-sm > li:last-child > a,
3991
- .w3eden .pagination-sm > li:last-child > span {
3992
- border-top-right-radius: 3px;
3993
- border-bottom-right-radius: 3px;
3994
- }
3995
- .w3eden .pager {
3996
- padding-left: 0;
3997
- margin: 20px 0;
3998
- text-align: center;
3999
- list-style: none;
4000
- }
4001
- .w3eden .pager li {
4002
- display: inline;
4003
- }
4004
- .w3eden .pager li > a,
4005
- .w3eden .pager li > span {
4006
- display: inline-block;
4007
- padding: 5px 14px;
4008
- background-color: #fff;
4009
- border: 1px solid #ddd;
4010
- border-radius: 15px;
4011
- }
4012
- .w3eden .pager li > a:focus,
4013
- .w3eden .pager li > a:hover {
4014
- text-decoration: none;
4015
- background-color: #eeeeee;
4016
- }
4017
- .w3eden .pager .next > a,
4018
- .w3eden .pager .next > span {
4019
- float: right;
4020
- }
4021
- .w3eden .pager .previous > a,
4022
- .w3eden .pager .previous > span {
4023
- float: left;
4024
- }
4025
- .w3eden .pager .disabled > a,
4026
- .w3eden .pager .disabled > a:focus,
4027
- .w3eden .pager .disabled > a:hover,
4028
- .w3eden .pager .disabled > span {
4029
- color: #777;
4030
- cursor: not-allowed;
4031
- background-color: #ffffff;
4032
- }
4033
- .w3eden .label {
4034
- display: inline;
4035
- padding: .2em .6em .3em;
4036
- font-size: 75%;
4037
- font-weight: 700;
4038
- line-height: 1;
4039
- color: #fff;
4040
- text-align: center;
4041
- white-space: nowrap;
4042
- vertical-align: baseline;
4043
- border-radius: 0.25em;
4044
- }
4045
- .w3eden a.label:focus,
4046
- .w3eden a.label:hover {
4047
- color: #fff;
4048
- text-decoration: none;
4049
- cursor: pointer;
4050
- }
4051
- .w3eden .label:empty {
4052
- display: none;
4053
- }
4054
- .w3eden .btn .label {
4055
- position: relative;
4056
- top: -1px;
4057
- }
4058
- .w3eden .label-default {
4059
- background-color: #777777;
4060
- }
4061
- .w3eden .label-default[href]:focus,
4062
- .w3eden .label-default[href]:hover {
4063
- background-color: #5e5e5e;
4064
- }
4065
- .w3eden .label-primary {
4066
- background-color: #337ab7;
4067
- }
4068
- .w3eden .label-primary[href]:focus,
4069
- .w3eden .label-primary[href]:hover {
4070
- background-color: #286090;
4071
- }
4072
- .w3eden .label-success {
4073
- background-color: #5cb85c;
4074
- }
4075
- .w3eden .label-success[href]:focus,
4076
- .w3eden .label-success[href]:hover {
4077
- background-color: #449d44;
4078
- }
4079
- .w3eden .label-info {
4080
- background-color: #5bc0de;
4081
- }
4082
- .w3eden .label-info[href]:focus,
4083
- .w3eden .label-info[href]:hover {
4084
- background-color: #31b0d5;
4085
- }
4086
- .w3eden .label-warning {
4087
- background-color: #f0ad4e;
4088
- }
4089
- .w3eden .label-warning[href]:focus,
4090
- .w3eden .label-warning[href]:hover {
4091
- background-color: #ec971f;
4092
- }
4093
- .w3eden .label-danger {
4094
- background-color: #d9534f;
4095
- }
4096
- .w3eden .label-danger[href]:focus,
4097
- .w3eden .label-danger[href]:hover {
4098
- background-color: #c9302c;
4099
- }
4100
- .w3eden .badge {
4101
- display: inline-block;
4102
- min-width: 10px;
4103
- padding: 3px 7px;
4104
- font-size: 12px;
4105
- font-weight: 700;
4106
- line-height: 1;
4107
- color: #fff;
4108
- text-align: center;
4109
- white-space: nowrap;
4110
- vertical-align: baseline;
4111
- background-color: #777;
4112
- border-radius: 10px;
4113
- }
4114
- .w3eden .badge:empty {
4115
- display: none;
4116
- }
4117
- .w3eden .btn .badge {
4118
- position: relative;
4119
- top: -1px;
4120
- }
4121
- .w3eden .btn-group-xs > .btn .badge,
4122
- .w3eden .btn-xs .badge {
4123
- top: 0;
4124
- padding: 1px 5px;
4125
- }
4126
- .w3eden a.badge:focus,
4127
- .w3eden a.badge:hover {
4128
- color: #fff;
4129
- text-decoration: none;
4130
- cursor: pointer;
4131
- }
4132
- .w3eden .list-group-item.active > .badge,
4133
- .w3eden .nav-pills > .active > a > .badge {
4134
- color: #337ab7;
4135
- background-color: #ffffff;
4136
- }
4137
- .w3eden .list-group-item > .badge {
4138
- float: right;
4139
- }
4140
- .w3eden .list-group-item > .badge + .badge {
4141
- margin-right: 5px;
4142
- }
4143
- .w3eden .nav-pills > li > a > .badge {
4144
- margin-left: 3px;
4145
- }
4146
- .w3eden .jumbotron {
4147
- padding: 30px 15px;
4148
- margin-bottom: 30px;
4149
- color: inherit;
4150
- background-color: #eeeeee;
4151
- }
4152
- .w3eden .jumbotron .h1,
4153
- .w3eden .jumbotron h1 {
4154
- color: inherit;
4155
- }
4156
- .w3eden .jumbotron p {
4157
- margin-bottom: 15px;
4158
- font-size: 21px;
4159
- font-weight: 200;
4160
- }
4161
- .w3eden .jumbotron > hr {
4162
- border-top-color: #d5d5d5;
4163
- }
4164
- .w3eden .container .jumbotron,
4165
- .w3eden .container-fluid .jumbotron {
4166
- border-radius: 6px;
4167
- }
4168
- .w3eden .jumbotron .container {
4169
- max-width: 100%;
4170
- }
4171
- @media screen and (min-width: 768px) {
4172
- .w3eden .jumbotron {
4173
- padding: 48px 0;
4174
- }
4175
- .w3eden .container .jumbotron,
4176
- .w3eden .container-fluid .jumbotron {
4177
- padding-right: 60px;
4178
- padding-left: 60px;
4179
- }
4180
- .w3eden .jumbotron .h1,
4181
- .w3eden .jumbotron h1 {
4182
- font-size: 63px;
4183
- }
4184
- }
4185
- .w3eden .thumbnail {
4186
- display: block;
4187
- padding: 4px;
4188
- margin-bottom: 20px;
4189
- line-height: 1.42857143;
4190
- background-color: #fff;
4191
- border: 1px solid #ddd;
4192
- border-radius: 4px;
4193
- -webkit-transition: border 0.2s ease-in-out;
4194
- -o-transition: border 0.2s ease-in-out;
4195
- transition: border 0.2s ease-in-out;
4196
- }
4197
- .w3eden .thumbnail a > img,
4198
- .w3eden .thumbnail > img {
4199
- margin-right: auto;
4200
- margin-left: auto;
4201
- }
4202
- .w3eden a.thumbnail.active,
4203
- .w3eden a.thumbnail:focus,
4204
- .w3eden a.thumbnail:hover {
4205
- border-color: #337ab7;
4206
- }
4207
- .w3eden .thumbnail .caption {
4208
- padding: 9px;
4209
- color: #333333;
4210
- }
4211
- .w3eden .alert {
4212
- padding: 15px;
4213
- margin-bottom: 20px;
4214
- border: 1px solid transparent;
4215
- border-radius: 4px;
4216
- }
4217
- .w3eden .alert h4 {
4218
- margin-top: 0;
4219
- color: inherit;
4220
- }
4221
- .w3eden .alert .alert-link {
4222
- font-weight: 700;
4223
- }
4224
- .w3eden .alert > p,
4225
- .w3eden .alert > ul {
4226
- margin-bottom: 0;
4227
- }
4228
- .w3eden .alert > p + p {
4229
- margin-top: 5px;
4230
- }
4231
- .w3eden .alert-dismissable,
4232
- .w3eden .alert-dismissible {
4233
- padding-right: 35px;
4234
- }
4235
- .w3eden .alert-dismissable .close,
4236
- .w3eden .alert-dismissible .close {
4237
- position: relative;
4238
- top: -2px;
4239
- right: -21px;
4240
- color: inherit;
4241
- }
4242
- .w3eden .alert-success {
4243
- color: #3c763d;
4244
- background-color: #dff0d8;
4245
- border-color: #d6e9c6;
4246
- }
4247
- .w3eden .alert-success hr {
4248
- border-top-color: #c9e2b3;
4249
- }
4250
- .w3eden .alert-success .alert-link {
4251
- color: #2b542c;
4252
- }
4253
- .w3eden .alert-info {
4254
- color: #31708f;
4255
- background-color: #d9edf7;
4256
- border-color: #bce8f1;
4257
- }
4258
- .w3eden .alert-info hr {
4259
- border-top-color: #a6e1ec;
4260
- }
4261
- .w3eden .alert-info .alert-link {
4262
- color: #245269;
4263
- }
4264
- .w3eden .alert-warning {
4265
- color: #8a6d3b;
4266
- background-color: #fcf8e3;
4267
- border-color: #faebcc;
4268
- }
4269
- .w3eden .alert-warning hr {
4270
- border-top-color: #f7e1b5;
4271
- }
4272
- .w3eden .alert-warning .alert-link {
4273
- color: #66512c;
4274
- }
4275
- .w3eden .alert-danger {
4276
- color: #a94442;
4277
- background-color: #f2dede;
4278
- border-color: #ebccd1;
4279
- }
4280
- .w3eden .alert-danger hr {
4281
- border-top-color: #e4b9c0;
4282
- }
4283
- .w3eden .alert-danger .alert-link {
4284
- color: #843534;
4285
- }
4286
- @-webkit-keyframes progress-bar-stripes {
4287
- from {
4288
- background-position: 40px 0;
4289
- }
4290
- to {
4291
- background-position: 0 0;
4292
- }
4293
- }
4294
- @-o-keyframes progress-bar-stripes {
4295
- from {
4296
- background-position: 40px 0;
4297
- }
4298
- to {
4299
- background-position: 0 0;
4300
- }
4301
- }
4302
- @keyframes progress-bar-stripes {
4303
- from {
4304
- background-position: 40px 0;
4305
- }
4306
- to {
4307
- background-position: 0 0;
4308
- }
4309
- }
4310
- .w3eden .progress {
4311
- height: 20px;
4312
- margin-bottom: 20px;
4313
- overflow: hidden;
4314
- background-color: #f5f5f5;
4315
- border-radius: 4px;
4316
- -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
4317
- box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
4318
- }
4319
- .w3eden .progress-bar {
4320
- float: left;
4321
- width: 0;
4322
- height: 100%;
4323
- font-size: 12px;
4324
- line-height: 20px;
4325
- color: #fff;
4326
- text-align: center;
4327
- background-color: #337ab7;
4328
- -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
4329
- box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
4330
- -webkit-transition: width .6s ease;
4331
- -o-transition: width .6s ease;
4332
- transition: width 0.6s ease;
4333
- }
4334
- .w3eden .progress-bar-striped,
4335
- .w3eden .progress-striped .progress-bar {
4336
- background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
4337
- background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
4338
- background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
4339
- -webkit-background-size: 40px 40px;
4340
- background-size: 40px 40px;
4341
- }
4342
- .w3eden .progress-bar.active,
4343
- .w3eden .progress.active .progress-bar {
4344
- -webkit-animation: progress-bar-stripes 2s linear infinite;
4345
- -o-animation: progress-bar-stripes 2s linear infinite;
4346
- animation: progress-bar-stripes 2s linear infinite;
4347
- }
4348
- .w3eden .progress-bar-success {
4349
- background-color: #5cb85c;
4350
- }
4351
- .w3eden .progress-striped .progress-bar-success {
4352
- background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
4353
- background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
4354
- background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
4355
- }
4356
- .w3eden .progress-bar-info {
4357
- background-color: #5bc0de;
4358
- }
4359
- .w3eden .progress-striped .progress-bar-info {
4360
- background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
4361
- background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
4362
- background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
4363
- }
4364
- .w3eden .progress-bar-warning {
4365
- background-color: #f0ad4e;
4366
- }
4367
- .w3eden .progress-striped .progress-bar-warning {
4368
- background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
4369
- background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
4370
- background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
4371
- }
4372
- .w3eden .progress-bar-danger {
4373
- background-color: #d9534f;
4374
- }
4375
- .w3eden .progress-striped .progress-bar-danger {
4376
- background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
4377
- background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
4378
- background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
4379
- }
4380
- .w3eden .media {
4381
- margin-top: 15px;
4382
- }
4383
- .w3eden .media:first-child {
4384
- margin-top: 0;
4385
- }
4386
- .w3eden .media,
4387
- .w3eden .media-body {
4388
- overflow: hidden;
4389
- zoom: 1;
4390
- }
4391
- .w3eden .media-body {
4392
- width: 10000px;
4393
- }
4394
- .w3eden .media-object {
4395
- display: block;
4396
- }
4397
- .w3eden .media-right,
4398
- .w3eden .media > .pull-right {
4399
- padding-left: 10px;
4400
- }
4401
- .w3eden .media-left,
4402
- .w3eden .media > .pull-left {
4403
- padding-right: 10px;
4404
- }
4405
- .w3eden .media-body,
4406
- .w3eden .media-left,
4407
- .w3eden .media-right {
4408
- display: table-cell;
4409
- vertical-align: top;
4410
- }
4411
- .w3eden .media-middle {
4412
- vertical-align: middle;
4413
- }
4414
- .w3eden .media-bottom {
4415
- vertical-align: bottom;
4416
- }
4417
- .w3eden .media-heading {
4418
- margin-top: 0;
4419
- margin-bottom: 5px;
4420
- }
4421
- .w3eden .media-list {
4422
- padding-left: 0;
4423
- list-style: none;
4424
- }
4425
- .w3eden .list-group {
4426
- padding-left: 0;
4427
- margin-bottom: 20px;
4428
- }
4429
- .w3eden .list-group-item {
4430
- position: relative;
4431
- display: block;
4432
- padding: 10px 15px;
4433
- margin-bottom: -1px;
4434
- background-color: #fff;
4435
- border: 1px solid #dddddd;
4436
- }
4437
- .w3eden .list-group-item:first-child {
4438
- border-top-left-radius: 4px;
4439
- border-top-right-radius: 4px;
4440
- }
4441
- .w3eden .list-group-item:last-child {
4442
- margin-bottom: 0;
4443
- border-bottom-right-radius: 4px;
4444
- border-bottom-left-radius: 4px;
4445
- }
4446
- .w3eden a.list-group-item {
4447
- color: #555555;
4448
- }
4449
- .w3eden a.list-group-item .list-group-item-heading {
4450
- color: #333333;
4451
- }
4452
- .w3eden a.list-group-item:focus,
4453
- .w3eden a.list-group-item:hover {
4454
- color: #555;
4455
- text-decoration: none;
4456
- background-color: #f5f5f5;
4457
- }
4458
- .w3eden .list-group-item.disabled,
4459
- .w3eden .list-group-item.disabled:focus,
4460
- .w3eden .list-group-item.disabled:hover {
4461
- color: #777;
4462
- cursor: not-allowed;
4463
- background-color: #eeeeee;
4464
- }
4465
- .w3eden .list-group-item.disabled .list-group-item-heading,
4466
- .w3eden .list-group-item.disabled:focus .list-group-item-heading,
4467
- .w3eden .list-group-item.disabled:hover .list-group-item-heading {
4468
- color: inherit;
4469
- }
4470
- .w3eden .list-group-item.disabled .list-group-item-text,
4471
- .w3eden .list-group-item.disabled:focus .list-group-item-text,
4472
- .w3eden .list-group-item.disabled:hover .list-group-item-text {
4473
- color: #777777;
4474
- }
4475
- .w3eden .list-group-item.active,
4476
- .w3eden .list-group-item.active:focus,
4477
- .w3eden .list-group-item.active:hover {
4478
- z-index: 2;
4479
- color: #fff;
4480
- background-color: #337ab7;
4481
- border-color: #337ab7;
4482
- }
4483
- .w3eden .list-group-item.active .list-group-item-heading,
4484
- .w3eden .list-group-item.active .list-group-item-heading > .small,
4485
- .w3eden .list-group-item.active .list-group-item-heading > small,
4486
- .w3eden .list-group-item.active:focus .list-group-item-heading,
4487
- .w3eden .list-group-item.active:focus .list-group-item-heading > .small,
4488
- .w3eden .list-group-item.active:focus .list-group-item-heading > small,
4489
- .w3eden .list-group-item.active:hover .list-group-item-heading,
4490
- .w3eden .list-group-item.active:hover .list-group-item-heading > .small,
4491
- .w3eden .list-group-item.active:hover .list-group-item-heading > small {
4492
- color: inherit;
4493
- }
4494
- .w3eden .list-group-item.active .list-group-item-text,
4495
- .w3eden .list-group-item.active:focus .list-group-item-text,
4496
- .w3eden .list-group-item.active:hover .list-group-item-text {
4497
- color: #c7ddef;
4498
- }
4499
- .w3eden .list-group-item-success {
4500
- color: #3c763d;
4501
- background-color: #dff0d8;
4502
- }
4503
- .w3eden a.list-group-item-success {
4504
- color: #3c763d;
4505
- }
4506
- .w3eden a.list-group-item-success .list-group-item-heading {
4507
- color: inherit;
4508
- }
4509
- .w3eden a.list-group-item-success:focus,
4510
- .w3eden a.list-group-item-success:hover {
4511
- color: #3c763d;
4512
- background-color: #d0e9c6;
4513
- }
4514
- .w3eden a.list-group-item-success.active,
4515
- .w3eden a.list-group-item-success.active:focus,
4516
- .w3eden a.list-group-item-success.active:hover {
4517
- color: #fff;
4518
- background-color: #3c763d;
4519
- border-color: #3c763d;
4520
- }
4521
- .w3eden .list-group-item-info {
4522
- color: #31708f;
4523
- background-color: #d9edf7;
4524
- }
4525
- .w3eden a.list-group-item-info {
4526
- color: #31708f;
4527
- }
4528
- .w3eden a.list-group-item-info .list-group-item-heading {
4529
- color: inherit;
4530
- }
4531
- .w3eden a.list-group-item-info:focus,
4532
- .w3eden a.list-group-item-info:hover {
4533
- color: #31708f;
4534
- background-color: #c4e3f3;
4535
- }
4536
- .w3eden a.list-group-item-info.active,
4537
- .w3eden a.list-group-item-info.active:focus,
4538
- .w3eden a.list-group-item-info.active:hover {
4539
- color: #fff;
4540
- background-color: #31708f;
4541
- border-color: #31708f;
4542
- }
4543
- .w3eden .list-group-item-warning {
4544
- color: #8a6d3b;
4545
- background-color: #fcf8e3;
4546
- }
4547
- .w3eden a.list-group-item-warning {
4548
- color: #8a6d3b;
4549
- }
4550
- .w3eden a.list-group-item-warning .list-group-item-heading {
4551
- color: inherit;
4552
- }
4553
- .w3eden a.list-group-item-warning:focus,
4554
- .w3eden a.list-group-item-warning:hover {
4555
- color: #8a6d3b;
4556
- background-color: #faf2cc;
4557
- }
4558
- .w3eden a.list-group-item-warning.active,
4559
- .w3eden a.list-group-item-warning.active:focus,
4560
- .w3eden a.list-group-item-warning.active:hover {
4561
- color: #fff;
4562
- background-color: #8a6d3b;
4563
- border-color: #8a6d3b;
4564
- }
4565
- .w3eden .list-group-item-danger {
4566
- color: #a94442;
4567
- background-color: #f2dede;
4568
- }
4569
- .w3eden a.list-group-item-danger {
4570
- color: #a94442;
4571
- }
4572
- .w3eden a.list-group-item-danger .list-group-item-heading {
4573
- color: inherit;
4574
- }
4575
- .w3eden a.list-group-item-danger:focus,
4576
- .w3eden a.list-group-item-danger:hover {
4577
- color: #a94442;
4578
- background-color: #ebcccc;
4579
- }
4580
- .w3eden a.list-group-item-danger.active,
4581
- .w3eden a.list-group-item-danger.active:focus,
4582
- .w3eden a.list-group-item-danger.active:hover {
4583
- color: #fff;
4584
- background-color: #a94442;
4585
- border-color: #a94442;
4586
- }
4587
- .w3eden .list-group-item-heading {
4588
- margin-top: 0;
4589
- margin-bottom: 5px;
4590
- }
4591
- .w3eden .list-group-item-text {
4592
- margin-bottom: 0;
4593
- line-height: 1.3;
4594
- }
4595
- .w3eden .panel {
4596
- margin-bottom: 20px;
4597
- background-color: #fff;
4598
- border: 1px solid transparent;
4599
- border-radius: 4px;
4600
- -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
4601
- box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
4602
- }
4603
- .w3eden .panel-body {
4604
- padding: 15px;
4605
- }
4606
- .w3eden .panel-heading {
4607
- padding: 10px 15px;
4608
- border-bottom: 1px solid transparent;
4609
- border-top-left-radius: 3px;
4610
- border-top-right-radius: 3px;
4611
- }
4612
- .w3eden .panel-heading > .dropdown .dropdown-toggle {
4613
- color: inherit;
4614
- }
4615
- .w3eden .panel-title {
4616
- margin-top: 0;
4617
- margin-bottom: 0;
4618
- font-size: 16px;
4619
- color: inherit;
4620
- }
4621
- .w3eden .panel-title > .small,
4622
- .w3eden .panel-title > .small > a,
4623
- .w3eden .panel-title > a,
4624
- .w3eden .panel-title > small,
4625
- .w3eden .panel-title > small > a {
4626
- color: inherit;
4627
- }
4628
- .w3eden .panel-footer {
4629
- padding: 10px 15px;
4630
- background-color: #f5f5f5;
4631
- border-top: 1px solid #ddd;
4632
- border-bottom-right-radius: 3px;
4633
- border-bottom-left-radius: 3px;
4634
- }
4635
- .w3eden .panel > .list-group,
4636
- .w3eden .panel > .panel-collapse > .list-group {
4637
- margin-bottom: 0;
4638
- }
4639
- .w3eden .panel > .list-group .list-group-item,
4640
- .w3eden .panel > .panel-collapse > .list-group .list-group-item {
4641
- border-width: 1px 0;
4642
- border-radius: 0;
4643
- }
4644
- .w3eden .panel > .list-group:first-child .list-group-item:first-child,
4645
- .w3eden .panel > .panel-collapse > .list-group:first-child .list-group-item:first-child {
4646
- border-top: 0;
4647
- border-top-left-radius: 3px;
4648
- border-top-right-radius: 3px;
4649
- }
4650
- .w3eden .panel > .list-group:last-child .list-group-item:last-child,
4651
- .w3eden .panel > .panel-collapse > .list-group:last-child .list-group-item:last-child {
4652
- border-bottom: 0;
4653
- border-bottom-right-radius: 3px;
4654
- border-bottom-left-radius: 3px;
4655
- }
4656
- .w3eden .panel-heading + .list-group .list-group-item:first-child {
4657
- border-top-width: 0;
4658
- }
4659
- .w3eden .list-group + .panel-footer {
4660
- border-top-width: 0;
4661
- }
4662
- .w3eden .panel > .panel-collapse > .table,
4663
- .w3eden .panel > .table,
4664
- .w3eden .panel > .table-responsive > .table {
4665
- margin-bottom: 0;
4666
- }
4667
- .w3eden .panel > .panel-collapse > .table caption,
4668
- .w3eden .panel > .table caption,
4669
- .w3eden .panel > .table-responsive > .table caption {
4670
- padding-right: 15px;
4671
- padding-left: 15px;
4672
- }
4673
- .w3eden .panel > .table-responsive:first-child > .table:first-child,
4674
- .w3eden .panel > .table:first-child {
4675
- border-top-left-radius: 3px;
4676
- border-top-right-radius: 3px;
4677
- }
4678
- .w3eden .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child,
4679
- .w3eden .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child,
4680
- .w3eden .panel > .table:first-child > tbody:first-child > tr:first-child,
4681
- .w3eden .panel > .table:first-child > thead:first-child > tr:first-child {
4682
- border-top-left-radius: 3px;
4683
- border-top-right-radius: 3px;
4684
- }
4685
- .w3eden .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:first-child,
4686
- .w3eden .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:first-child,
4687
- .w3eden .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:first-child,
4688
- .w3eden .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:first-child,
4689
- .w3eden .panel > .table:first-child > tbody:first-child > tr:first-child td:first-child,
4690
- .w3eden .panel > .table:first-child > tbody:first-child > tr:first-child th:first-child,
4691
- .w3eden .panel > .table:first-child > thead:first-child > tr:first-child td:first-child,
4692
- .w3eden .panel > .table:first-child > thead:first-child > tr:first-child th:first-child {
4693
- border-top-left-radius: 3px;
4694
- }
4695
- .w3eden .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:last-child,
4696
- .w3eden .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:last-child,
4697
- .w3eden .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:last-child,
4698
- .w3eden .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:last-child,
4699
- .w3eden .panel > .table:first-child > tbody:first-child > tr:first-child td:last-child,
4700
- .w3eden .panel > .table:first-child > tbody:first-child > tr:first-child th:last-child,
4701
- .w3eden .panel > .table:first-child > thead:first-child > tr:first-child td:last-child,
4702
- .w3eden .panel > .table:first-child > thead:first-child > tr:first-child th:last-child {
4703
- border-top-right-radius: 3px;
4704
- }
4705
- .w3eden .panel > .table-responsive:last-child > .table:last-child,
4706
- .w3eden .panel > .table:last-child {
4707
- border-bottom-right-radius: 3px;
4708
- border-bottom-left-radius: 3px;
4709
- }
4710
- .w3eden .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child,
4711
- .w3eden .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child,
4712
- .w3eden .panel > .table:last-child > tbody:last-child > tr:last-child,
4713
- .w3eden .panel > .table:last-child > tfoot:last-child > tr:last-child {
4714
- border-bottom-right-radius: 3px;
4715
- border-bottom-left-radius: 3px;
4716
- }
4717
- .w3eden .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:first-child,
4718
- .w3eden .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:first-child,
4719
- .w3eden .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:first-child,
4720
- .w3eden .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:first-child,
4721
- .w3eden .panel > .table:last-child > tbody:last-child > tr:last-child td:first-child,
4722
- .w3eden .panel > .table:last-child > tbody:last-child > tr:last-child th:first-child,
4723
- .w3eden .panel > .table:last-child > tfoot:last-child > tr:last-child td:first-child,
4724
- .w3eden .panel > .table:last-child > tfoot:last-child > tr:last-child th:first-child {
4725
- border-bottom-left-radius: 3px;
4726
- }
4727
- .w3eden .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:last-child,
4728
- .w3eden .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:last-child,
4729
- .w3eden .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:last-child,
4730
- .w3eden .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:last-child,
4731
- .w3eden .panel > .table:last-child > tbody:last-child > tr:last-child td:last-child,
4732
- .w3eden .panel > .table:last-child > tbody:last-child > tr:last-child th:last-child,
4733
- .w3eden .panel > .table:last-child > tfoot:last-child > tr:last-child td:last-child,
4734
- .w3eden .panel > .table:last-child > tfoot:last-child > tr:last-child th:last-child {
4735
- border-bottom-right-radius: 3px;
4736
- }
4737
- .w3eden .panel > .panel-body + .table,
4738
- .w3eden .panel > .panel-body + .table-responsive,
4739
- .w3eden .panel > .table + .panel-body,
4740
- .w3eden .panel > .table-responsive + .panel-body {
4741
- border-top: 1px solid #dddddd;
4742
- }
4743
- .w3eden .panel > .table > tbody:first-child > tr:first-child td,
4744
- .w3eden .panel > .table > tbody:first-child > tr:first-child th {
4745
- border-top: 0;
4746
- }
4747
- .w3eden .panel > .table-bordered,
4748
- .w3eden .panel > .table-responsive > .table-bordered {
4749
- border: 0;
4750
- }
4751
- .w3eden .panel > .table-bordered > tbody > tr > td:first-child,
4752
- .w3eden .panel > .table-bordered > tbody > tr > th:first-child,
4753
- .w3eden .panel > .table-bordered > tfoot > tr > td:first-child,
4754
- .w3eden .panel > .table-bordered > tfoot > tr > th:first-child,
4755
- .w3eden .panel > .table-bordered > thead > tr > td:first-child,
4756
- .w3eden .panel > .table-bordered > thead > tr > th:first-child,
4757
- .w3eden .panel > .table-responsive > .table-bordered > tbody > tr > td:first-child,
4758
- .w3eden .panel > .table-responsive > .table-bordered > tbody > tr > th:first-child,
4759
- .w3eden .panel > .table-responsive > .table-bordered > tfoot > tr > td:first-child,
4760
- .w3eden .panel > .table-responsive > .table-bordered > tfoot > tr > th:first-child,
4761
- .w3eden .panel > .table-responsive > .table-bordered > thead > tr > td:first-child,
4762
- .w3eden .panel > .table-responsive > .table-bordered > thead > tr > th:first-child {
4763
- border-left: 0;
4764
- }
4765
- .w3eden .panel > .table-bordered > tbody > tr > td:last-child,
4766
- .w3eden .panel > .table-bordered > tbody > tr > th:last-child,
4767
- .w3eden .panel > .table-bordered > tfoot > tr > td:last-child,
4768
- .w3eden .panel > .table-bordered > tfoot > tr > th:last-child,
4769
- .w3eden .panel > .table-bordered > thead > tr > td:last-child,
4770
- .w3eden .panel > .table-bordered > thead > tr > th:last-child,
4771
- .w3eden .panel > .table-responsive > .table-bordered > tbody > tr > td:last-child,
4772
- .w3eden .panel > .table-responsive > .table-bordered > tbody > tr > th:last-child,
4773
- .w3eden .panel > .table-responsive > .table-bordered > tfoot > tr > td:last-child,
4774
- .w3eden .panel > .table-responsive > .table-bordered > tfoot > tr > th:last-child,
4775
- .w3eden .panel > .table-responsive > .table-bordered > thead > tr > td:last-child,
4776
- .w3eden .panel > .table-responsive > .table-bordered > thead > tr > th:last-child {
4777
- border-right: 0;
4778
- }
4779
- .w3eden .panel > .table-bordered > tbody > tr:first-child > td,
4780
- .w3eden .panel > .table-bordered > tbody > tr:first-child > th,
4781
- .w3eden .panel > .table-bordered > thead > tr:first-child > td,
4782
- .w3eden .panel > .table-bordered > thead > tr:first-child > th,
4783
- .w3eden .panel > .table-responsive > .table-bordered > tbody > tr:first-child > td,
4784
- .w3eden .panel > .table-responsive > .table-bordered > tbody > tr:first-child > th,
4785
- .w3eden .panel > .table-responsive > .table-bordered > thead > tr:first-child > td,
4786
- .w3eden .panel > .table-responsive > .table-bordered > thead > tr:first-child > th {
4787
- border-bottom: 0;
4788
- }
4789
- .w3eden .panel > .table-bordered > tbody > tr:last-child > td,
4790
- .w3eden .panel > .table-bordered > tbody > tr:last-child > th,
4791
- .w3eden .panel > .table-bordered > tfoot > tr:last-child > td,
4792
- .w3eden .panel > .table-bordered > tfoot > tr:last-child > th,
4793
- .w3eden .panel > .table-responsive > .table-bordered > tbody > tr:last-child > td,
4794
- .w3eden .panel > .table-responsive > .table-bordered > tbody > tr:last-child > th,
4795
- .w3eden .panel > .table-responsive > .table-bordered > tfoot > tr:last-child > td,
4796
- .w3eden .panel > .table-responsive > .table-bordered > tfoot > tr:last-child > th {
4797
- border-bottom: 0;
4798
- }
4799
- .w3eden .panel > .table-responsive {
4800
- margin-bottom: 0;
4801
- border: 0;
4802
- }
4803
- .w3eden .panel-group {
4804
- margin-bottom: 20px;
4805
- }
4806
- .w3eden .panel-group .panel {
4807
- margin-bottom: 0;
4808
- border-radius: 4px;
4809
- }
4810
- .w3eden .panel-group .panel + .panel {
4811
- margin-top: 5px;
4812
- }
4813
- .w3eden .panel-group .panel-heading {
4814
- border-bottom: 0;
4815
- }
4816
- .w3eden .panel-group .panel-heading + .panel-collapse > .list-group,
4817
- .w3eden .panel-group .panel-heading + .panel-collapse > .panel-body {
4818
- border-top: 1px solid #dddddd;
4819
- }
4820
- .w3eden .panel-group .panel-footer {
4821
- border-top: 0;
4822
- }
4823
- .w3eden .panel-group .panel-footer + .panel-collapse .panel-body {
4824
- border-bottom: 1px solid #dddddd;
4825
- }
4826
- .w3eden .panel-default {
4827
- border-color: #dddddd;
4828
- }
4829
- .w3eden .panel-default > .panel-heading {
4830
- color: #333;
4831
- background-color: #f5f5f5;
4832
- border-color: #dddddd;
4833
- }
4834
- .w3eden .panel-default > .panel-heading + .panel-collapse > .panel-body {
4835
- border-top-color: #dddddd;
4836
- }
4837
- .w3eden .panel-default > .panel-heading .badge {
4838
- color: #f5f5f5;
4839
- background-color: #333333;
4840
- }
4841
- .w3eden .panel-default > .panel-footer + .panel-collapse > .panel-body {
4842
- border-bottom-color: #dddddd;
4843
- }
4844
- .w3eden .panel-primary {
4845
- border-color: #337ab7;
4846
- }
4847
- .w3eden .panel-primary > .panel-heading {
4848
- color: #fff;
4849
- background-color: #337ab7;
4850
- border-color: #337ab7;
4851
- }
4852
- .w3eden .panel-primary > .panel-heading + .panel-collapse > .panel-body {
4853
- border-top-color: #337ab7;
4854
- }
4855
- .w3eden .panel-primary > .panel-heading .badge {
4856
- color: #337ab7;
4857
- background-color: #ffffff;
4858
- }
4859
- .w3eden .panel-primary > .panel-footer + .panel-collapse > .panel-body {
4860
- border-bottom-color: #337ab7;
4861
- }
4862
- .w3eden .panel-success {
4863
- border-color: #d6e9c6;
4864
- }
4865
- .w3eden .panel-success > .panel-heading {
4866
- color: #3c763d;
4867
- background-color: #dff0d8;
4868
- border-color: #d6e9c6;
4869
- }
4870
- .w3eden .panel-success > .panel-heading + .panel-collapse > .panel-body {
4871
- border-top-color: #d6e9c6;
4872
- }
4873
- .w3eden .panel-success > .panel-heading .badge {
4874
- color: #dff0d8;
4875
- background-color: #3c763d;
4876
- }
4877
- .w3eden .panel-success > .panel-footer + .panel-collapse > .panel-body {
4878
- border-bottom-color: #d6e9c6;
4879
- }
4880
- .w3eden .panel-info {
4881
- border-color: #bce8f1;
4882
- }
4883
- .w3eden .panel-info > .panel-heading {
4884
- color: #31708f;
4885
- background-color: #d9edf7;
4886
- border-color: #bce8f1;
4887
- }
4888
- .w3eden .panel-info > .panel-heading + .panel-collapse > .panel-body {
4889
- border-top-color: #bce8f1;
4890
- }
4891
- .w3eden .panel-info > .panel-heading .badge {
4892
- color: #d9edf7;
4893
- background-color: #31708f;
4894
- }
4895
- .w3eden .panel-info > .panel-footer + .panel-collapse > .panel-body {
4896
- border-bottom-color: #bce8f1;
4897
- }
4898
- .w3eden .panel-warning {
4899
- border-color: #faebcc;
4900
- }
4901
- .w3eden .panel-warning > .panel-heading {
4902
- color: #8a6d3b;
4903
- background-color: #fcf8e3;
4904
- border-color: #faebcc;
4905
- }
4906
- .w3eden .panel-warning > .panel-heading + .panel-collapse > .panel-body {
4907
- border-top-color: #faebcc;
4908
- }
4909
- .w3eden .panel-warning > .panel-heading .badge {
4910
- color: #fcf8e3;
4911
- background-color: #8a6d3b;
4912
- }
4913
- .w3eden .panel-warning > .panel-footer + .panel-collapse > .panel-body {
4914
- border-bottom-color: #faebcc;
4915
- }
4916
- .w3eden .panel-danger {
4917
- border-color: #ebccd1;
4918
- }
4919
- .w3eden .panel-danger > .panel-heading {
4920
- color: #a94442;
4921
- background-color: #f2dede;
4922
- border-color: #ebccd1;
4923
- }
4924
- .w3eden .panel-danger > .panel-heading + .panel-collapse > .panel-body {
4925
- border-top-color: #ebccd1;
4926
- }
4927
- .w3eden .panel-danger > .panel-heading .badge {
4928
- color: #f2dede;
4929
- background-color: #a94442;
4930
- }
4931
- .w3eden .panel-danger > .panel-footer + .panel-collapse > .panel-body {
4932
- border-bottom-color: #ebccd1;
4933
- }
4934
- .w3eden .embed-responsive {
4935
- position: relative;
4936
- display: block;
4937
- height: 0;
4938
- padding: 0;
4939
- overflow: hidden;
4940
- }
4941
- .w3eden .embed-responsive .embed-responsive-item,
4942
- .w3eden .embed-responsive embed,
4943
- .w3eden .embed-responsive iframe,
4944
- .w3eden .embed-responsive object,
4945
- .w3eden .embed-responsive video {
4946
- position: absolute;
4947
- top: 0;
4948
- bottom: 0;
4949
- left: 0;
4950
- width: 100%;
4951
- height: 100%;
4952
- border: 0;
4953
- }
4954
- .w3eden .embed-responsive-16by9 {
4955
- padding-bottom: 56.25%;
4956
- }
4957
- .w3eden .embed-responsive-4by3 {
4958
- padding-bottom: 75%;
4959
- }
4960
- .w3eden .well {
4961
- min-height: 20px;
4962
- padding: 19px;
4963
- margin-bottom: 20px;
4964
- background-color: #f5f5f5;
4965
- border: 1px solid #e3e3e3;
4966
- border-radius: 4px;
4967
- -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
4968
- box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
4969
- }
4970
- .w3eden .well blockquote {
4971
- border-color: #ddd;
4972
- border-color: rgba(0, 0, 0, 0.15);
4973
- }
4974
- .w3eden .well-lg {
4975
- padding: 24px;
4976
- border-radius: 6px;
4977
- }
4978
- .w3eden .well-sm {
4979
- padding: 9px;
4980
- border-radius: 3px;
4981
- }
4982
- .w3eden .close {
4983
- float: right;
4984
- font-size: 21px;
4985
- font-weight: 700;
4986
- line-height: 1;
4987
- color: #000;
4988
- text-shadow: 0 1px 0 #fff;
4989
- filter: alpha(opacity=20);
4990
- opacity: 0.2;
4991
- }
4992
- .w3eden .close:focus,
4993
- .w3eden .close:hover {
4994
- color: #000;
4995
- text-decoration: none;
4996
- cursor: pointer;
4997
- filter: alpha(opacity=50);
4998
- opacity: 0.5;
4999
- }
5000
- .w3eden button.close {
5001
- -webkit-appearance: none;
5002
- padding: 0;
5003
- cursor: pointer;
5004
- background: 0 0;
5005
- border: 0;
5006
- }
5007
- .w3eden .modal-open {
5008
- overflow: hidden;
5009
- }
5010
- .w3eden .modal {
5011
- position: fixed;
5012
- top: 0;
5013
- right: 0;
5014
- bottom: 0;
5015
- left: 0;
5016
- z-index: 1050;
5017
- display: none;
5018
- overflow: hidden;
5019
- -webkit-overflow-scrolling: touch;
5020
- outline: 0;
5021
- }
5022
- .w3eden .modal.fade .modal-dialog {
5023
- -webkit-transition: -webkit-transform 0.3s ease-out;
5024
- -o-transition: -o-transform 0.3s ease-out;
5025
- transition: transform 0.3s ease-out;
5026
- -webkit-transform: translate(0, -25%);
5027
- -ms-transform: translate(0, -25%);
5028
- -o-transform: translate(0, -25%);
5029
- transform: translate(0, -25%);
5030
- }
5031
- .w3eden .modal.in .modal-dialog {
5032
- -webkit-transform: translate(0, 0);
5033
- -ms-transform: translate(0, 0);
5034
- -o-transform: translate(0, 0);
5035
- transform: translate(0, 0);
5036
- }
5037
- .w3eden .modal-open .modal {
5038
- overflow-x: hidden;
5039
- overflow-y: auto;
5040
- }
5041
- .w3eden .modal-dialog {
5042
- position: relative;
5043
- width: auto;
5044
- margin: 10px;
5045
- }
5046
- .w3eden .modal-content {
5047
- position: relative;
5048
- background-color: #fff;
5049
- -webkit-background-clip: padding-box;
5050
- background-clip: padding-box;
5051
- border: 1px solid #999;
5052
- border: 1px solid rgba(0, 0, 0, 0.2);
5053
- border-radius: 6px;
5054
- outline: 0;
5055
- -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
5056
- box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
5057
- }
5058
- .modal-backdrop {
5059
- position: fixed;
5060
- top: 0;
5061
- right: 0;
5062
- bottom: 0;
5063
- left: 0;
5064
- z-index: 1040;
5065
- background-color: #000000;
5066
- }
5067
- .modal-backdrop.fade {
5068
- filter: alpha(opacity=0);
5069
- opacity: 0;
5070
- }
5071
- .modal-backdrop.in {
5072
- filter: alpha(opacity=50);
5073
- opacity: 0.5;
5074
- }
5075
- .w3eden .modal-header {
5076
- min-height: 16.43px;
5077
- padding: 15px;
5078
- border-bottom: 1px solid #e5e5e5;
5079
- }
5080
- .w3eden .modal-header .close {
5081
- margin-top: -2px;
5082
- }
5083
- .w3eden .modal-title {
5084
- margin: 0;
5085
- line-height: 1.42857143;
5086
- }
5087
- .w3eden .modal-body {
5088
- position: relative;
5089
- padding: 15px;
5090
- }
5091
- .w3eden .modal-footer {
5092
- padding: 15px;
5093
- text-align: right;
5094
- border-top: 1px solid #e5e5e5;
5095
-
5096
- }
5097
- .w3eden .modal-footer .btn + .btn {
5098
- margin-bottom: 0;
5099
- margin-left: 5px;
5100
- }
5101
- .w3eden .modal-footer .btn-group .btn + .btn {
5102
- margin-left: -1px;
5103
- }
5104
- .w3eden .modal-footer .btn-block + .btn-block {
5105
- margin-left: 0;
5106
- }
5107
- .w3eden .modal-scrollbar-measure {
5108
- position: absolute;
5109
- top: -9999px;
5110
- width: 50px;
5111
- height: 50px;
5112
- overflow: scroll;
5113
- }
5114
- @media (min-width: 768px) {
5115
- .w3eden .modal-dialog {
5116
- width: 600px;
5117
- margin: 100px auto;
5118
- }
5119
- .w3eden .modal-content {
5120
- -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
5121
- box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
5122
- }
5123
- .w3eden .modal-sm {
5124
- width: 300px;
5125
- }
5126
- }
5127
- @media (min-width: 992px) {
5128
- .w3eden .modal-lg {
5129
- width: 900px;
5130
- }
5131
- }
5132
- .w3eden .tooltip {
5133
- position: absolute;
5134
- z-index: 1070;
5135
- display: block;
5136
- font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
5137
- font-size: 12px;
5138
- font-weight: 400;
5139
- line-height: 1.4;
5140
- filter: alpha(opacity=0);
5141
- opacity: 0;
5142
- }
5143
- .w3eden .tooltip.in {
5144
- filter: alpha(opacity=90);
5145
- opacity: 0.9;
5146
- }
5147
- .w3eden .tooltip.top {
5148
- padding: 5px 0;
5149
- margin-top: -3px;
5150
- }
5151
- .w3eden .tooltip.right {
5152
- padding: 0 5px;
5153
- margin-left: 3px;
5154
- }
5155
- .w3eden .tooltip.bottom {
5156
- padding: 5px 0;
5157
- margin-top: 3px;
5158
- }
5159
- .w3eden .tooltip.left {
5160
- padding: 0 5px;
5161
- margin-left: -3px;
5162
- }
5163
- .w3eden .tooltip-inner {
5164
- max-width: 200px;
5165
- padding: 6px 12px;
5166
- color: #fff;
5167
- text-align: center;
5168
- text-decoration: none;
5169
- background-color: #000;
5170
- border-radius: 2px;
5171
- }
5172
- .w3eden .tooltip-arrow {
5173
- position: absolute;
5174
- width: 0;
5175
- height: 0;
5176
- border-color: transparent;
5177
- border-style: solid;
5178
- }
5179
- .w3eden .tooltip.top .tooltip-arrow {
5180
- bottom: 0;
5181
- left: 50%;
5182
- margin-left: -5px;
5183
- border-width: 5px 5px 0;
5184
- border-top-color: #000000;
5185
- }
5186
- .w3eden .tooltip.top-left .tooltip-arrow {
5187
- right: 5px;
5188
- bottom: 0;
5189
- margin-bottom: -5px;
5190
- border-width: 5px 5px 0;
5191
- border-top-color: #000000;
5192
- }
5193
- .w3eden .tooltip.top-right .tooltip-arrow {
5194
- bottom: 0;
5195
- left: 5px;
5196
- margin-bottom: -5px;
5197
- border-width: 5px 5px 0;
5198
- border-top-color: #000000;
5199
- }
5200
- .w3eden .tooltip.right .tooltip-arrow {
5201
- top: 50%;
5202
- left: 0;
5203
- margin-top: -5px;
5204
- border-width: 5px 5px 5px 0;
5205
- border-right-color: #000000;
5206
- }
5207
- .w3eden .tooltip.left .tooltip-arrow {
5208
- top: 50%;
5209
- right: 0;
5210
- margin-top: -5px;
5211
- border-width: 5px 0 5px 5px;
5212
- border-left-color: #000000;
5213
- }
5214
- .w3eden .tooltip.bottom .tooltip-arrow {
5215
- top: 0;
5216
- left: 50%;
5217
- margin-left: -5px;
5218
- border-width: 0 5px 5px;
5219
- border-bottom-color: #000000;
5220
- }
5221
- .w3eden .tooltip.bottom-left .tooltip-arrow {
5222
- top: 0;
5223
- right: 5px;
5224
- margin-top: -5px;
5225
- border-width: 0 5px 5px;
5226
- border-bottom-color: #000000;
5227
- }
5228
- .w3eden .tooltip.bottom-right .tooltip-arrow {
5229
- top: 0;
5230
- left: 5px;
5231
- margin-top: -5px;
5232
- border-width: 0 5px 5px;
5233
- border-bottom-color: #000000;
5234
- }
5235
- .w3eden .popover {
5236
- position: absolute;
5237
- top: 0;
5238
- left: 0;
5239
- z-index: 1060;
5240
- display: none;
5241
- max-width: 276px;
5242
- padding: 1px;
5243
- font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
5244
- font-size: 14px;
5245
- font-weight: 400;
5246
- line-height: 1.42857143;
5247
- text-align: left;
5248
- white-space: normal;
5249
- background-color: #fff;
5250
- -webkit-background-clip: padding-box;
5251
- background-clip: padding-box;
5252
- border: 1px solid #ccc;
5253
- border: 1px solid rgba(0, 0, 0, 0.2);
5254
- border-radius: 6px;
5255
- -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
5256
- box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
5257
- }
5258
- .w3eden .popover.top {
5259
- margin-top: -10px;
5260
- }
5261
- .w3eden .popover.right {
5262
- margin-left: 10px;
5263
- }
5264
- .w3eden .popover.bottom {
5265
- margin-top: 10px;
5266
- }
5267
- .w3eden .popover.left {
5268
- margin-left: -10px;
5269
- }
5270
- .w3eden .popover-title {
5271
- padding: 8px 14px;
5272
- margin: 0;
5273
- font-size: 14px;
5274
- background-color: #f7f7f7;
5275
- border-bottom: 1px solid #ebebeb;
5276
- border-radius: 5px 5px 0 0;
5277
- }
5278
- .w3eden .popover-content {
5279
- padding: 9px 14px;
5280
- }
5281
- .w3eden .popover > .arrow,
5282
- .w3eden .popover > .arrow:after {
5283
- position: absolute;
5284
- display: block;
5285
- width: 0;
5286
- height: 0;
5287
- border-color: transparent;
5288
- border-style: solid;
5289
- }
5290
- .w3eden .popover > .arrow {
5291
- border-width: 11px;
5292
- }
5293
- .w3eden .popover > .arrow:after {
5294
- content: "";
5295
- border-width: 10px;
5296
- }
5297
- .w3eden .popover.top > .arrow {
5298
- bottom: -11px;
5299
- left: 50%;
5300
- margin-left: -11px;
5301
- border-top-color: #999;
5302
- border-top-color: rgba(0, 0, 0, 0.25);
5303
- border-bottom-width: 0;
5304
- }
5305
- .w3eden .popover.top > .arrow:after {
5306
- bottom: 1px;
5307
- margin-left: -10px;
5308
- content: " ";
5309
- border-top-color: #fff;
5310
- border-bottom-width: 0;
5311
- }
5312
- .w3eden .popover.right > .arrow {
5313
- top: 50%;
5314
- left: -11px;
5315
- margin-top: -11px;
5316
- border-right-color: #999;
5317
- border-right-color: rgba(0, 0, 0, 0.25);
5318
- border-left-width: 0;
5319
- }
5320
- .w3eden .popover.right > .arrow:after {
5321
- bottom: -10px;
5322
- left: 1px;
5323
- content: " ";
5324
- border-right-color: #fff;
5325
- border-left-width: 0;
5326
- }
5327
- .w3eden .popover.bottom > .arrow {
5328
- top: -11px;
5329
- left: 50%;
5330
- margin-left: -11px;
5331
- border-top-width: 0;
5332
- border-bottom-color: #999;
5333
- border-bottom-color: rgba(0, 0, 0, 0.25);
5334
- }
5335
- .w3eden .popover.bottom > .arrow:after {
5336
- top: 1px;
5337
- margin-left: -10px;
5338
- content: " ";
5339
- border-top-width: 0;
5340
- border-bottom-color: #ffffff;
5341
- }
5342
- .w3eden .popover.left > .arrow {
5343
- top: 50%;
5344
- right: -11px;
5345
- margin-top: -11px;
5346
- border-right-width: 0;
5347
- border-left-color: #999;
5348
- border-left-color: rgba(0, 0, 0, 0.25);
5349
- }
5350
- .w3eden .popover.left > .arrow:after {
5351
- right: 1px;
5352
- bottom: -10px;
5353
- content: " ";
5354
- border-right-width: 0;
5355
- border-left-color: #ffffff;
5356
- }
5357
- .w3eden .carousel {
5358
- position: relative;
5359
- }
5360
- .w3eden .carousel-inner {
5361
- position: relative;
5362
- width: 100%;
5363
- overflow: hidden;
5364
- }
5365
- .w3eden .carousel-inner > .item {
5366
- position: relative;
5367
- display: none;
5368
- -webkit-transition: 0.6s ease-in-out left;
5369
- -o-transition: 0.6s ease-in-out left;
5370
- transition: 0.6s ease-in-out left;
5371
- }
5372
- .w3eden .carousel-inner > .item > a > img,
5373
- .w3eden .carousel-inner > .item > img {
5374
- line-height: 1;
5375
- }
5376
- @media all and (transform-3d), (-webkit-transform-3d) {
5377
- .w3eden .carousel-inner > .item {
5378
- -webkit-transition: -webkit-transform 0.6s ease-in-out;
5379
- -o-transition: -o-transform 0.6s ease-in-out;
5380
- transition: transform 0.6s ease-in-out;
5381
- -webkit-backface-visibility: hidden;
5382
- backface-visibility: hidden;
5383
- -webkit-perspective: 1000;
5384
- perspective: 1000;
5385
- }
5386
- .w3eden .carousel-inner > .item.active.right,
5387
- .w3eden .carousel-inner > .item.next {
5388
- left: 0;
5389
- -webkit-transform: translate3d(100%, 0, 0);
5390
- transform: translate3d(100%, 0, 0);
5391
- }
5392
- .w3eden .carousel-inner > .item.active.left,
5393
- .w3eden .carousel-inner > .item.prev {
5394
- left: 0;
5395
- -webkit-transform: translate3d(-100%, 0, 0);
5396
- transform: translate3d(-100%, 0, 0);
5397
- }
5398
- .w3eden .carousel-inner > .item.active,
5399
- .w3eden .carousel-inner > .item.next.left,
5400
- .w3eden .carousel-inner > .item.prev.right {
5401
- left: 0;
5402
- -webkit-transform: translate3d(0, 0, 0);
5403
- transform: translate3d(0, 0, 0);
5404
- }
5405
- }
5406
- .w3eden .carousel-inner > .active,
5407
- .w3eden .carousel-inner > .next,
5408
- .w3eden .carousel-inner > .prev {
5409
- display: block;
5410
- }
5411
- .w3eden .carousel-inner > .active {
5412
- left: 0;
5413
- }
5414
- .w3eden .carousel-inner > .next,
5415
- .w3eden .carousel-inner > .prev {
5416
- position: absolute;
5417
- top: 0;
5418
- width: 100%;
5419
- }
5420
- .w3eden .carousel-inner > .next {
5421
- left: 100%;
5422
- }
5423
- .w3eden .carousel-inner > .prev {
5424
- left: -100%;
5425
- }
5426
- .w3eden .carousel-inner > .next.left,
5427
- .w3eden .carousel-inner > .prev.right {
5428
- left: 0;
5429
- }
5430
- .w3eden .carousel-inner > .active.left {
5431
- left: -100%;
5432
- }
5433
- .w3eden .carousel-inner > .active.right {
5434
- left: 100%;
5435
- }
5436
- .w3eden .carousel-control {
5437
- position: absolute;
5438
- top: 0;
5439
- bottom: 0;
5440
- left: 0;
5441
- width: 15%;
5442
- font-size: 20px;
5443
- color: #fff;
5444
- text-align: center;
5445
- text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
5446
- filter: alpha(opacity=50);
5447
- opacity: 0.5;
5448
- }
5449
- .w3eden .carousel-control.left {
5450
- background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.5) 0, rgba(0, 0, 0, 0.0001) 100%);
5451
- background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.5) 0, rgba(0, 0, 0, 0.0001) 100%);
5452
- background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0.0001)));
5453
- background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5) 0, rgba(0, 0, 0, 0.0001) 100%);
5454
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1);
5455
- background-repeat: repeat-x;
5456
- }
5457
- .w3eden .carousel-control.right {
5458
- right: 0;
5459
- left: auto;
5460
- background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0, rgba(0, 0, 0, 0.5) 100%);
5461
- background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0, rgba(0, 0, 0, 0.5) 100%);
5462
- background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.0001)), to(rgba(0, 0, 0, 0.5)));
5463
- background-image: linear-gradient(to right, rgba(0, 0, 0, 0.0001) 0, rgba(0, 0, 0, 0.5) 100%);
5464
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1);
5465
- background-repeat: repeat-x;
5466
- }
5467
- .w3eden .carousel-control:focus,
5468
- .w3eden .carousel-control:hover {
5469
- color: #fff;
5470
- text-decoration: none;
5471
- filter: alpha(opacity=90);
5472
- outline: 0;
5473
- opacity: 0.9;
5474
- }
5475
- .w3eden .carousel-control .glyphicon-chevron-left,
5476
- .w3eden .carousel-control .glyphicon-chevron-right,
5477
- .w3eden .carousel-control .icon-next,
5478
- .w3eden .carousel-control .icon-prev {
5479
- position: absolute;
5480
- top: 50%;
5481
- z-index: 5;
5482
- display: inline-block;
5483
- }
5484
- .w3eden .carousel-control .glyphicon-chevron-left,
5485
- .w3eden .carousel-control .icon-prev {
5486
- left: 50%;
5487
- margin-left: -10px;
5488
- }
5489
- .w3eden .carousel-control .glyphicon-chevron-right,
5490
- .w3eden .carousel-control .icon-next {
5491
- right: 50%;
5492
- margin-right: -10px;
5493
- }
5494
- .w3eden .carousel-control .icon-next,
5495
- .w3eden .carousel-control .icon-prev {
5496
- width: 20px;
5497
- height: 20px;
5498
- margin-top: -10px;
5499
- font-family: serif;
5500
- line-height: 1;
5501
- }
5502
- .w3eden .carousel-control .icon-prev:before {
5503
- content: '\2039';
5504
- }
5505
- .w3eden .carousel-control .icon-next:before {
5506
- content: '\203a';
5507
- }
5508
- .w3eden .carousel-indicators {
5509
- position: absolute;
5510
- bottom: 10px;
5511
- left: 50%;
5512
- z-index: 15;
5513
- width: 60%;
5514
- padding-left: 0;
5515
- margin-left: -30%;
5516
- text-align: center;
5517
- list-style: none;
5518
- }
5519
- .w3eden .carousel-indicators li {
5520
- display: inline-block;
5521
- width: 10px;
5522
- height: 10px;
5523
- margin: 1px;
5524
- text-indent: -999px;
5525
- cursor: pointer;
5526
- background-color: #000 \9;
5527
- background-color: rgba(0, 0, 0, 0);
5528
- border: 1px solid #fff;
5529
- border-radius: 10px;
5530
- }
5531
- .w3eden .carousel-indicators .active {
5532
- width: 12px;
5533
- height: 12px;
5534
- margin: 0;
5535
- background-color: #ffffff;
5536
- }
5537
- .w3eden .carousel-caption {
5538
- position: absolute;
5539
- right: 15%;
5540
- bottom: 20px;
5541
- left: 15%;
5542
- z-index: 10;
5543
- padding-top: 20px;
5544
- padding-bottom: 20px;
5545
- color: #fff;
5546
- text-align: center;
5547
- text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
5548
- }
5549
- .w3eden .carousel-caption .btn {
5550
- text-shadow: none;
5551
- }
5552
- @media screen and (min-width: 768px) {
5553
- .w3eden .carousel-control .glyphicon-chevron-left,
5554
- .w3eden .carousel-control .glyphicon-chevron-right,
5555
- .w3eden .carousel-control .icon-next,
5556
- .w3eden .carousel-control .icon-prev {
5557
- width: 30px;
5558
- height: 30px;
5559
- margin-top: -15px;
5560
- font-size: 30px;
5561
- }
5562
- .w3eden .carousel-control .glyphicon-chevron-left,
5563
- .w3eden .carousel-control .icon-prev {
5564
- margin-left: -15px;
5565
- }
5566
- .w3eden .carousel-control .glyphicon-chevron-right,
5567
- .w3eden .carousel-control .icon-next {
5568
- margin-right: -15px;
5569
- }
5570
- .w3eden .carousel-caption {
5571
- right: 20%;
5572
- left: 20%;
5573
- padding-bottom: 30px;
5574
- }
5575
- .w3eden .carousel-indicators {
5576
- bottom: 20px;
5577
- }
5578
- }
5579
- .w3eden .btn-group-vertical > .btn-group:after,
5580
- .w3eden .btn-group-vertical > .btn-group:before,
5581
- .w3eden .btn-toolbar:after,
5582
- .w3eden .btn-toolbar:before,
5583
- .w3eden .clearfix:after,
5584
- .w3eden .clearfix:before,
5585
- .w3eden .container-fluid:after,
5586
- .w3eden .container-fluid:before,
5587
- .w3eden .container:after,
5588
- .w3eden .container:before,
5589
- .w3eden .dl-horizontal dd:after,
5590
- .w3eden .dl-horizontal dd:before,
5591
- .w3eden .form-horizontal .form-group:after,
5592
- .w3eden .form-horizontal .form-group:before,
5593
- .w3eden .modal-footer:after,
5594
- .w3eden .modal-footer:before,
5595
- .w3eden .nav:after,
5596
- .w3eden .nav:before,
5597
- .w3eden .navbar-collapse:after,
5598
- .w3eden .navbar-collapse:before,
5599
- .w3eden .navbar-header:after,
5600
- .w3eden .navbar-header:before,
5601
- .w3eden .navbar:after,
5602
- .w3eden .navbar:before,
5603
- .w3eden .pager:after,
5604
- .w3eden .pager:before,
5605
- .w3eden .panel-body:after,
5606
- .w3eden .panel-body:before,
5607
- .w3eden .row:after,
5608
- .w3eden .row:before {
5609
- display: table;
5610
- content: " ";
5611
- }
5612
- .w3eden .btn-group-vertical > .btn-group:after,
5613
- .w3eden .btn-toolbar:after,
5614
- .w3eden .clearfix:after,
5615
- .w3eden .container-fluid:after,
5616
- .w3eden .container:after,
5617
- .w3eden .dl-horizontal dd:after,
5618
- .w3eden .form-horizontal .form-group:after,
5619
- .w3eden .modal-footer:after,
5620
- .w3eden .nav:after,
5621
- .w3eden .navbar-collapse:after,
5622
- .w3eden .navbar-header:after,
5623
- .w3eden .navbar:after,
5624
- .w3eden .pager:after,
5625
- .w3eden .panel-body:after,
5626
- .w3eden .row:after {
5627
- clear: both;
5628
- }
5629
- .w3eden .center-block {
5630
- display: block;
5631
- margin-right: auto;
5632
- margin-left: auto;
5633
- }
5634
- .w3eden .pull-right {
5635
- float: right !important;
5636
- }
5637
- .w3eden .pull-left {
5638
- float: left !important;
5639
- }
5640
- .w3eden .hide {
5641
- display: none !important;
5642
- }
5643
- .w3eden .show {
5644
- display: block !important;
5645
- }
5646
- .w3eden .invisible {
5647
- visibility: hidden;
5648
- }
5649
- .w3eden .text-hide {
5650
- font: 0/0 a;
5651
- color: transparent;
5652
- text-shadow: none;
5653
- background-color: transparent;
5654
- border: 0;
5655
- }
5656
- .w3eden .hidden {
5657
- display: none !important;
5658
- }
5659
- .w3eden .affix {
5660
- position: fixed;
5661
- }
5662
- @-ms-viewport {
5663
- width: device-width;
5664
- }
5665
- .w3eden .visible-lg,
5666
- .w3eden .visible-md,
5667
- .w3eden .visible-sm,
5668
- .w3eden .visible-xs {
5669
- display: none !important;
5670
- }
5671
- .w3eden .visible-lg-block,
5672
- .w3eden .visible-lg-inline,
5673
- .w3eden .visible-lg-inline-block,
5674
- .w3eden .visible-md-block,
5675
- .w3eden .visible-md-inline,
5676
- .w3eden .visible-md-inline-block,
5677
- .w3eden .visible-sm-block,
5678
- .w3eden .visible-sm-inline,
5679
- .w3eden .visible-sm-inline-block,
5680
- .w3eden .visible-xs-block,
5681
- .w3eden .visible-xs-inline,
5682
- .w3eden .visible-xs-inline-block {
5683
- display: none !important;
5684
- }
5685
- @media (max-width: 767px) {
5686
- .w3eden .visible-xs {
5687
- display: block !important;
5688
- }
5689
- .w3eden table.visible-xs {
5690
- display: table;
5691
- }
5692
- .w3eden tr.visible-xs {
5693
- display: table-row !important;
5694
- }
5695
- .w3eden td.visible-xs,
5696
- .w3eden th.visible-xs {
5697
- display: table-cell !important;
5698
- }
5699
- }
5700
- @media (max-width: 767px) {
5701
- .w3eden .visible-xs-block {
5702
- display: block !important;
5703
- }
5704
- }
5705
- @media (max-width: 767px) {
5706
- .w3eden .visible-xs-inline {
5707
- display: inline !important;
5708
- }
5709
- }
5710
- @media (max-width: 767px) {
5711
- .w3eden .visible-xs-inline-block {
5712
- display: inline-block !important;
5713
- }
5714
- }
5715
- @media (min-width: 768px) and (max-width: 991px) {
5716
- .w3eden .visible-sm {
5717
- display: block !important;
5718
- }
5719
- .w3eden table.visible-sm {
5720
- display: table;
5721
- }
5722
- .w3eden tr.visible-sm {
5723
- display: table-row !important;
5724
- }
5725
- .w3eden td.visible-sm,
5726
- .w3eden th.visible-sm {
5727
- display: table-cell !important;
5728
- }
5729
- }
5730
- @media (min-width: 768px) and (max-width: 991px) {
5731
- .w3eden .visible-sm-block {
5732
- display: block !important;
5733
- }
5734
- }
5735
- @media (min-width: 768px) and (max-width: 991px) {
5736
- .w3eden .visible-sm-inline {
5737
- display: inline !important;
5738
- }
5739
- }
5740
- @media (min-width: 768px) and (max-width: 991px) {
5741
- .w3eden .visible-sm-inline-block {
5742
- display: inline-block !important;
5743
- }
5744
- }
5745
- @media (min-width: 992px) and (max-width: 1199px) {
5746
- .w3eden .visible-md {
5747
- display: block !important;
5748
- }
5749
- .w3eden table.visible-md {
5750
- display: table;
5751
- }
5752
- .w3eden tr.visible-md {
5753
- display: table-row !important;
5754
- }
5755
- .w3eden td.visible-md,
5756
- .w3eden th.visible-md {
5757
- display: table-cell !important;
5758
- }
5759
- }
5760
- @media (min-width: 992px) and (max-width: 1199px) {
5761
- .w3eden .visible-md-block {
5762
- display: block !important;
5763
- }
5764
- }
5765
- @media (min-width: 992px) and (max-width: 1199px) {
5766
- .w3eden .visible-md-inline {
5767
- display: inline !important;
5768
- }
5769
- }
5770
- @media (min-width: 992px) and (max-width: 1199px) {
5771
- .w3eden .visible-md-inline-block {
5772
- display: inline-block !important;
5773
- }
5774
- }
5775
- @media (min-width: 1200px) {
5776
- .w3eden .visible-lg {
5777
- display: block !important;
5778
- }
5779
- .w3eden table.visible-lg {
5780
- display: table;
5781
- }
5782
- .w3eden tr.visible-lg {
5783
- display: table-row !important;
5784
- }
5785
- .w3eden td.visible-lg,
5786
- .w3eden th.visible-lg {
5787
- display: table-cell !important;
5788
- }
5789
- }
5790
- @media (min-width: 1200px) {
5791
- .w3eden .visible-lg-block {
5792
- display: block !important;
5793
- }
5794
- }
5795
- @media (min-width: 1200px) {
5796
- .w3eden .visible-lg-inline {
5797
- display: inline !important;
5798
- }
5799
- }
5800
- @media (min-width: 1200px) {
5801
- .w3eden .visible-lg-inline-block {
5802
- display: inline-block !important;
5803
- }
5804
- }
5805
- @media (max-width: 767px) {
5806
- .w3eden .hidden-xs {
5807
- display: none !important;
5808
- }
5809
- }
5810
- @media (min-width: 768px) and (max-width: 991px) {
5811
- .w3eden .hidden-sm {
5812
- display: none !important;
5813
- }
5814
- }
5815
- @media (min-width: 992px) and (max-width: 1199px) {
5816
- .w3eden .hidden-md {
5817
- display: none !important;
5818
- }
5819
- }
5820
- @media (min-width: 1200px) {
5821
- .w3eden .hidden-lg {
5822
- display: none !important;
5823
- }
5824
- }
5825
- .w3eden .visible-print {
5826
- display: none !important;
5827
- }
5828
- @media print {
5829
- .w3eden .visible-print {
5830
- display: block !important;
5831
- }
5832
- .w3eden table.visible-print {
5833
- display: table;
5834
- }
5835
- .w3eden tr.visible-print {
5836
- display: table-row !important;
5837
- }
5838
- .w3eden td.visible-print,
5839
- .w3eden th.visible-print {
5840
- display: table-cell !important;
5841
- }
5842
- }
5843
- .w3eden .visible-print-block {
5844
- display: none !important;
5845
- }
5846
- @media print {
5847
- .w3eden .visible-print-block {
5848
- display: block !important;
5849
- }
5850
- }
5851
- .w3eden .visible-print-inline {
5852
- display: none !important;
5853
- }
5854
- @media print {
5855
- .w3eden .visible-print-inline {
5856
- display: inline !important;
5857
- }
5858
- }
5859
- .w3eden .visible-print-inline-block {
5860
- display: none !important;
5861
- }
5862
- @media print {
5863
- .w3eden .visible-print-inline-block {
5864
- display: inline-block !important;
5865
- }
5866
- }
5867
- @media print {
5868
- .w3eden .hidden-print {
5869
- display: none !important;
5870
- }
5871
- }
5872
-
5873
- .w3eden .btn{
5874
- background-image:-webkit-gradient(linear,left top,left bottom,from(rgba(0,0,0,0)),to(rgba(0,0,0,.05)));background-image:-webkit-linear-gradient(rgba(0,0,0,0),rgba(0,0,0,.05));background-image:linear-gradient(rgba(0,0,0,0),rgba(0,0,0,.05));
5875
-
5876
- /* border: 0;padding: 7px 13px; */
5877
- }
5878
- .w3eden .panel th{
5879
- background-color: #eeeeee !important;
5880
- border-bottom-width: 1px !important;
5881
-
5882
- }
5883
- .w3eden .btn{ border-radius: 0.2em; }
5884
- .w3eden .nav-pills a{
5885
- border-radius: 0.2em;
5886
- box-shadow: none !important;
5887
- font-size: 9pt !important;
5888
- }
5889
- .w3eden .panel-heading{
5890
- font-weight: 700;
5891
- }
5892
- .w3eden blockquote.alert{
5893
- font-size: 14px;
5894
- font-weight: 300;
5895
- font-style: italic;
5896
- border-radius: 2px !important;
5897
- }
5898
- .w3eden .btn-group .btn:first-child:not(:last-child),
5899
- .w3eden .input-group .form-control:first-child:not(:last-child){ border-top-right-radius: 0; border-bottom-right-radius: 0; border-bottom-left-radius: 0.2em; border-top-left-radius: 0.2em; }
5900
- .w3eden .btn-group .btn:last-child:not(:first-child){ border-top-left-radius: 0; border-bottom-left-radius: 0; border-top-right-radius: 0.2em; border-bottom-right-radius: 0.2em; }
5901
- .w3eden .btn span.left-icon{
5902
- float: left;
5903
- background: none repeat scroll 0 0 rgba(0, 0, 0, 0.16);
5904
- border-bottom-left-radius: 3px;
5905
- border-right: 1px solid rgba(0, 0, 0, 0.12);
5906
- border-top-left-radius: 3px;
5907
- margin-left: -17px;
5908
- margin-top: -8.5px;
5909
- padding: 8.5px 12px;
5910
- position: relative;
5911
- width: 40px;
5912
- }
 
1
  /*!
2
  * Bootstrap v3.3.4 (http://getbootstrap.com)
3
  * Copyright 2011-2015 Twitter, Inc.
4
  * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
5
+ *//*! normalize.css v3.0.2 | MIT License | git.io/normalize *//*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */
6
+ .w3eden .text-left,.w3eden caption,.w3eden th{text-align:left}.w3eden .btn-group>.btn-group,.w3eden .btn-toolbar .btn-group,.w3eden .btn-toolbar .input-group,.w3eden .col-xs-1,.w3eden .col-xs-10,.w3eden .col-xs-11,.w3eden .col-xs-12,.w3eden .col-xs-2,.w3eden .col-xs-3,.w3eden .col-xs-4,.w3eden .col-xs-5,.w3eden .col-xs-6,.w3eden .col-xs-7,.w3eden .col-xs-8,.w3eden .col-xs-9,.w3eden .dropdown-menu{float:left}.w3eden html{font-family:sans-serif;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}.w3eden body{margin:0}.w3eden article,.w3eden aside,.w3eden details,.w3eden figcaption,.w3eden figure,.w3eden footer,.w3eden header,.w3eden hgroup,.w3eden main,.w3eden menu,.w3eden nav,.w3eden section,.w3eden summary{display:block}.w3eden audio,.w3eden canvas,.w3eden progress,.w3eden video{display:inline-block;vertical-align:baseline}.w3eden audio:not([controls]){display:none;height:0}.w3eden [hidden],.w3eden template{display:none}.w3eden a{background-color:transparent}.w3eden a:active,.w3eden a:hover{outline:0}.w3eden b,.w3eden strong{font-weight:700}.w3eden dfn{font-style:italic}.w3eden h1{margin:.67em 0}.w3eden mark{color:#000;background:#ff0}.w3eden sub,.w3eden sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}.w3eden sup{top:-.5em}.w3eden sub{bottom:-.25em}.w3eden img{border:0;vertical-align:middle}.w3eden svg:not(:root){overflow:hidden}.w3eden hr{height:0;-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}.w3eden pre{overflow:auto}.w3eden code,.w3eden kbd,.w3eden pre,.w3eden samp{font-size:1em}.w3eden button,.w3eden input,.w3eden optgroup,.w3eden select,.w3eden textarea{margin:0;font:inherit;color:inherit}.w3eden button{overflow:visible}.w3eden button,.w3eden select{text-transform:none}.w3eden button,.w3eden html input[type=button],.w3eden input[type=reset],.w3eden input[type=submit]{-webkit-appearance:button;cursor:pointer}.w3eden button[disabled],.w3eden html input[disabled]{cursor:default}.w3eden button::-moz-focus-inner,.w3eden input::-moz-focus-inner{padding:0;border:0}.w3eden input[type=checkbox],.w3eden input[type=radio]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;padding:0}.w3eden input[type=number]::-webkit-inner-spin-button,.w3eden input[type=number]::-webkit-outer-spin-button{height:auto}.w3eden input[type=search]::-webkit-search-cancel-button,.w3eden input[type=search]::-webkit-search-decoration{-webkit-appearance:none}.w3eden textarea{overflow:auto}.w3eden optgroup{font-weight:700}.w3eden table{border-spacing:0;border-collapse:collapse}.w3eden td,.w3eden th{padding:0}@media print{.w3eden *,.w3eden :after,.w3eden :before{color:#000!important;text-shadow:none!important;background:0 0!important;-webkit-box-shadow:none!important;box-shadow:none!important}.w3eden a,.w3eden a:visited{text-decoration:underline}.w3eden a[href]:after{content:" (" attr(href) ")"}.w3eden abbr[title]:after{content:" (" attr(title) ")"}.w3eden a[href^="javascript:"]:after,.w3eden a[href^="#"]:after{content:""}.w3eden blockquote,.w3eden pre{border:1px solid #999;page-break-inside:avoid}.w3eden thead{display:table-header-group}.w3eden img,.w3eden tr{page-break-inside:avoid}.w3eden img{max-width:100%!important}.w3eden h2,.w3eden h3,.w3eden p{orphans:3;widows:3}.w3eden h2,.w3eden h3{page-break-after:avoid}.w3eden select{background:#fff!important}.w3eden .navbar{display:none}.w3eden .btn>.caret,.w3eden .dropup>.btn>.caret{border-top-color:#000!important}.w3eden .label{border:1px solid #000}.w3eden .table{border-collapse:collapse!important}.w3eden .table td,.w3eden .table th{background-color:#fff!important}.w3eden .table-bordered td,.w3eden .table-bordered th{border:1px solid #ddd!important}}.w3eden .btn,.w3eden .btn-danger.active,.w3eden .btn-danger:active,.w3eden .btn-info.active,.w3eden .btn-info:active,.w3eden .btn-primary.active,.w3eden .btn-primary:active,.w3eden .btn-secondary.active,.w3eden .btn-secondary:active,.w3eden .btn-warning.active,.w3eden .btn-warning:active,.w3eden .btn.active,.w3eden .btn:active,.w3eden .dropdown-menu>.disabled>a:focus,.w3eden .dropdown-menu>.disabled>a:hover,.w3eden .form-control,.w3eden .navbar-toggle,.w3eden .open>.dropdown-toggle.btn-danger,.w3eden .open>.dropdown-toggle.btn-info,.w3eden .open>.dropdown-toggle.btn-primary,.w3eden .open>.dropdown-toggle.btn-secondary,.w3eden .open>.dropdown-toggle.btn-warning{background-image:none}.w3eden *,.w3eden :after,.w3eden :before{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.w3eden html{font-size:10px;-webkit-tap-highlight-color:transparent}.w3eden body{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:1.42857143;color:#333;background-color:#fff}.w3eden button,.w3eden input,.w3eden select,.w3eden textarea{font-family:inherit;font-size:inherit;line-height:inherit}.w3eden a{color:#337ab7;text-decoration:none}.w3eden a:focus,.w3eden a:hover{color:#23527c;text-decoration:underline}.w3eden a:focus{outline:dotted thin;outline:-webkit-focus-ring-color auto 5px;outline-offset:-2px}.w3eden figure{margin:0}.w3eden .carousel-inner>.item>a>img,.w3eden .carousel-inner>.item>img,.w3eden .img-responsive,.w3eden .thumbnail a>img,.w3eden .thumbnail>img{display:block;max-width:100%;height:auto}.w3eden .img-rounded{border-radius:6px}.w3eden .img-thumbnail{display:inline-block;max-width:100%;height:auto;padding:4px;line-height:1.42857143;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.w3eden .img-circle{border-radius:50%}.w3eden hr{margin-top:20px;margin-bottom:20px;border:0;border-top:1px solid #eee}.w3eden .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.w3eden .sr-only-focusable:active,.w3eden .sr-only-focusable:focus{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto}.w3eden [role=button]{cursor:pointer}.w3eden .h1,.w3eden .h2,.w3eden .h3,.w3eden .h4,.w3eden .h5,.w3eden .h6,.w3eden h1,.w3eden h2,.w3eden h3,.w3eden h4,.w3eden h5,.w3eden h6{font-family:inherit;font-weight:500;line-height:1.1;color:inherit}.w3eden .h1 .small,.w3eden .h1 small,.w3eden .h2 .small,.w3eden .h2 small,.w3eden .h3 .small,.w3eden .h3 small,.w3eden .h4 .small,.w3eden .h4 small,.w3eden .h5 .small,.w3eden .h5 small,.w3eden .h6 .small,.w3eden .h6 small,.w3eden h1 .small,.w3eden h1 small,.w3eden h2 .small,.w3eden h2 small,.w3eden h3 .small,.w3eden h3 small,.w3eden h4 .small,.w3eden h4 small,.w3eden h5 .small,.w3eden h5 small,.w3eden h6 .small,.w3eden h6 small{font-weight:400;line-height:1;color:#777}.w3eden .h1,.w3eden .h2,.w3eden .h3,.w3eden h1,.w3eden h2,.w3eden h3{margin-top:20px;margin-bottom:10px}.w3eden .h1 .small,.w3eden .h1 small,.w3eden .h2 .small,.w3eden .h2 small,.w3eden .h3 .small,.w3eden .h3 small,.w3eden h1 .small,.w3eden h1 small,.w3eden h2 .small,.w3eden h2 small,.w3eden h3 .small,.w3eden h3 small{font-size:65%}.w3eden .h4,.w3eden .h5,.w3eden .h6,.w3eden h4,.w3eden h5,.w3eden h6{margin-top:10px;margin-bottom:10px}.w3eden .h4 .small,.w3eden .h4 small,.w3eden .h5 .small,.w3eden .h5 small,.w3eden .h6 .small,.w3eden .h6 small,.w3eden h4 .small,.w3eden h4 small,.w3eden h5 .small,.w3eden h5 small,.w3eden h6 .small,.w3eden h6 small{font-size:75%}.w3eden .h1,.w3eden h1{font-size:36px}.w3eden .h2,.w3eden h2{font-size:30px}.w3eden .h3,.w3eden h3{font-size:24px}.w3eden .h4,.w3eden h4{font-size:18px}.w3eden .h5,.w3eden h5{font-size:14px}.w3eden .h6,.w3eden h6{font-size:12px}.w3eden p{margin:0 0 10px}.w3eden .lead{margin-bottom:20px;font-size:16px;font-weight:300;line-height:1.4}.w3eden dt,.w3eden kbd kbd,.w3eden label{font-weight:700}@media (min-width:768px){.w3eden .lead{font-size:21px}}.w3eden .small,.w3eden small{font-size:85%}.w3eden .mark,.w3eden mark{padding:.2em;background-color:#fcf8e3}.w3eden .list-inline,.w3eden .list-unstyled{padding-left:0;list-style:none}.w3eden .text-right{text-align:right}.w3eden .text-center{text-align:center}.w3eden .text-justify{text-align:justify}.w3eden .text-nowrap{white-space:nowrap}.w3eden .text-lowercase{text-transform:lowercase}.w3eden .text-uppercase{text-transform:uppercase}.w3eden .text-capitalize{text-transform:capitalize}.w3eden .text-muted{color:#777}.w3eden .text-primary{color:#337ab7}.w3eden a.text-primary:hover{color:#286090}.w3eden .text-success{color:#3c763d}.w3eden a.text-success:hover{color:#2b542c}.w3eden .text-info{color:#31708f}.w3eden a.text-info:hover{color:#245269}.w3eden .text-warning{color:#8a6d3b}.w3eden a.text-warning:hover{color:#66512c}.w3eden .text-danger{color:#a94442}.w3eden a.text-danger:hover{color:#843534}.w3eden .bg-primary{color:#fff;background-color:#337ab7}.w3eden a.bg-primary:hover{background-color:#286090}.w3eden .bg-success{background-color:#dff0d8}.w3eden a.bg-success:hover{background-color:#c1e2b3}.w3eden .bg-info{background-color:#d9edf7}.w3eden a.bg-info:hover{background-color:#afd9ee}.w3eden .bg-warning{background-color:#fcf8e3}.w3eden a.bg-warning:hover{background-color:#f7ecb5}.w3eden .bg-danger{background-color:#f2dede}.w3eden a.bg-danger:hover{background-color:#e4b9b9}.w3eden .page-header{padding-bottom:9px;margin:40px 0 20px;border-bottom:1px solid #eee}.w3eden ol,.w3eden ul{margin-top:0;margin-bottom:10px}.w3eden ol ol,.w3eden ol ul,.w3eden ul ol,.w3eden ul ul{margin-bottom:0}.w3eden .list-inline{margin-left:-5px}.w3eden .list-inline>li{display:inline-block;padding-right:5px;padding-left:5px}.w3eden dl{margin-top:0;margin-bottom:20px}.w3eden dd,.w3eden dt{line-height:1.42857143}.w3eden dd{margin-left:0}@media (min-width:768px){.w3eden .dl-horizontal dt{float:left;width:160px;overflow:hidden;clear:left;text-align:right;text-overflow:ellipsis;white-space:nowrap}.w3eden .dl-horizontal dd{margin-left:180px}.w3eden .container{width:750px}}.w3eden abbr[data-original-title],.w3eden abbr[title]{cursor:help;border-bottom:1px dotted #777}.w3eden .initialism{font-size:90%;text-transform:uppercase}.w3eden blockquote{padding:10px 20px;margin:0 0 20px;font-size:17.5px;border-left:5px solid #eee}.w3eden blockquote ol:last-child,.w3eden blockquote p:last-child,.w3eden blockquote ul:last-child{margin-bottom:0}.w3eden blockquote .small,.w3eden blockquote footer,.w3eden blockquote small{display:block;font-size:80%;line-height:1.42857143;color:#777}.w3eden code,.w3eden kbd{padding:2px 4px;font-size:90%}.w3eden blockquote .small:before,.w3eden blockquote footer:before,.w3eden blockquote small:before{content:'\2014 \00A0'}.w3eden code,.w3eden kbd,.w3eden pre,.w3eden samp{font-family:Menlo,Monaco,Consolas,"Courier New",monospace}.w3eden code{color:#c7254e;background-color:#f9f2f4;border-radius:4px}.w3eden kbd{color:#fff;background-color:#333;border-radius:3px;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,.25);box-shadow:inset 0 -1px 0 rgba(0,0,0,.25)}.w3eden kbd kbd{padding:0;font-size:100%;-webkit-box-shadow:none;box-shadow:none}.w3eden pre{display:block;padding:9.5px;margin:0 0 10px;font-size:13px;line-height:1.42857143;color:#333;word-break:break-all;word-wrap:break-word;background-color:#f5f5f5;border:1px solid #ccc;border-radius:4px}.w3eden .container,.w3eden .container-fluid{margin-right:auto;margin-left:auto;padding-right:15px;padding-left:15px}.w3eden pre code,.w3eden table{background-color:transparent}.w3eden pre code{padding:0;font-size:inherit;color:inherit;white-space:pre-wrap;border-radius:0}.w3eden .pre-scrollable{max-height:340px;overflow-y:scroll}@media (min-width:992px){.w3eden .container{width:970px}}@media (min-width:1200px){.w3eden .container{width:1170px}}.w3eden .row{margin-right:-15px;margin-left:-15px}.w3eden .col-lg-1,.w3eden .col-lg-10,.w3eden .col-lg-11,.w3eden .col-lg-12,.w3eden .col-lg-2,.w3eden .col-lg-3,.w3eden .col-lg-4,.w3eden .col-lg-5,.w3eden .col-lg-6,.w3eden .col-lg-7,.w3eden .col-lg-8,.w3eden .col-lg-9,.w3eden .col-md-1,.w3eden .col-md-10,.w3eden .col-md-11,.w3eden .col-md-12,.w3eden .col-md-2,.w3eden .col-md-3,.w3eden .col-md-4,.w3eden .col-md-5,.w3eden .col-md-6,.w3eden .col-md-7,.w3eden .col-md-8,.w3eden .col-md-9,.w3eden .col-sm-1,.w3eden .col-sm-10,.w3eden .col-sm-11,.w3eden .col-sm-12,.w3eden .col-sm-2,.w3eden .col-sm-3,.w3eden .col-sm-4,.w3eden .col-sm-5,.w3eden .col-sm-6,.w3eden .col-sm-7,.w3eden .col-sm-8,.w3eden .col-sm-9,.w3eden .col-xs-1,.w3eden .col-xs-10,.w3eden .col-xs-11,.w3eden .col-xs-12,.w3eden .col-xs-2,.w3eden .col-xs-3,.w3eden .col-xs-4,.w3eden .col-xs-5,.w3eden .col-xs-6,.w3eden .col-xs-7,.w3eden .col-xs-8,.w3eden .col-xs-9{position:relative;min-height:1px;padding-right:15px;padding-left:15px}.w3eden .col-xs-12{width:100%}.w3eden .col-xs-11{width:91.66666667%}.w3eden .col-xs-10{width:83.33333333%}.w3eden .col-xs-9{width:75%}.w3eden .col-xs-8{width:66.66666667%}.w3eden .col-xs-7{width:58.33333333%}.w3eden .col-xs-6{width:50%}.w3eden .col-xs-5{width:41.66666667%}.w3eden .col-xs-4{width:33.33333333%}.w3eden .col-xs-3{width:25%}.w3eden .col-xs-2{width:16.66666667%}.w3eden .col-xs-1{width:8.33333333%}.w3eden .col-xs-pull-12{right:100%}.w3eden .col-xs-pull-11{right:91.66666667%}.w3eden .col-xs-pull-10{right:83.33333333%}.w3eden .col-xs-pull-9{right:75%}.w3eden .col-xs-pull-8{right:66.66666667%}.w3eden .col-xs-pull-7{right:58.33333333%}.w3eden .col-xs-pull-6{right:50%}.w3eden .col-xs-pull-5{right:41.66666667%}.w3eden .col-xs-pull-4{right:33.33333333%}.w3eden .col-xs-pull-3{right:25%}.w3eden .col-xs-pull-2{right:16.66666667%}.w3eden .col-xs-pull-1{right:8.33333333%}.w3eden .col-xs-pull-0{right:auto}.w3eden .col-xs-push-12{left:100%}.w3eden .col-xs-push-11{left:91.66666667%}.w3eden .col-xs-push-10{left:83.33333333%}.w3eden .col-xs-push-9{left:75%}.w3eden .col-xs-push-8{left:66.66666667%}.w3eden .col-xs-push-7{left:58.33333333%}.w3eden .col-xs-push-6{left:50%}.w3eden .col-xs-push-5{left:41.66666667%}.w3eden .col-xs-push-4{left:33.33333333%}.w3eden .col-xs-push-3{left:25%}.w3eden .col-xs-push-2{left:16.66666667%}.w3eden .col-xs-push-1{left:8.33333333%}.w3eden .col-xs-push-0{left:auto}.w3eden .col-xs-offset-12{margin-left:100%}.w3eden .col-xs-offset-11{margin-left:91.66666667%}.w3eden .col-xs-offset-10{margin-left:83.33333333%}.w3eden .col-xs-offset-9{margin-left:75%}.w3eden .col-xs-offset-8{margin-left:66.66666667%}.w3eden .col-xs-offset-7{margin-left:58.33333333%}.w3eden .col-xs-offset-6{margin-left:50%}.w3eden .col-xs-offset-5{margin-left:41.66666667%}.w3eden .col-xs-offset-4{margin-left:33.33333333%}.w3eden .col-xs-offset-3{margin-left:25%}.w3eden .col-xs-offset-2{margin-left:16.66666667%}.w3eden .col-xs-offset-1{margin-left:8.33333333%}.w3eden .col-xs-offset-0{margin-left:0}@media (min-width:768px){.w3eden .col-sm-1,.w3eden .col-sm-10,.w3eden .col-sm-11,.w3eden .col-sm-12,.w3eden .col-sm-2,.w3eden .col-sm-3,.w3eden .col-sm-4,.w3eden .col-sm-5,.w3eden .col-sm-6,.w3eden .col-sm-7,.w3eden .col-sm-8,.w3eden .col-sm-9{float:left}.w3eden .col-sm-12{width:100%}.w3eden .col-sm-11{width:91.66666667%}.w3eden .col-sm-10{width:83.33333333%}.w3eden .col-sm-9{width:75%}.w3eden .col-sm-8{width:66.66666667%}.w3eden .col-sm-7{width:58.33333333%}.w3eden .col-sm-6{width:50%}.w3eden .col-sm-5{width:41.66666667%}.w3eden .col-sm-4{width:33.33333333%}.w3eden .col-sm-3{width:25%}.w3eden .col-sm-2{width:16.66666667%}.w3eden .col-sm-1{width:8.33333333%}.w3eden .col-sm-offset-12{margin-left:100%}.w3eden .col-sm-offset-11{margin-left:91.66666667%}.w3eden .col-sm-offset-10{margin-left:83.33333333%}.w3eden .col-sm-offset-9{margin-left:75%}.w3eden .col-sm-offset-8{margin-left:66.66666667%}.w3eden .col-sm-offset-7{margin-left:58.33333333%}.w3eden .col-sm-offset-6{margin-left:50%}.w3eden .col-sm-offset-5{margin-left:41.66666667%}.w3eden .col-sm-offset-4{margin-left:33.33333333%}.w3eden .col-sm-offset-3{margin-left:25%}.w3eden .col-sm-offset-2{margin-left:16.66666667%}.w3eden .col-sm-offset-1{margin-left:8.33333333%}.w3eden .col-sm-offset-0{margin-left:0}}@media (min-width:992px){.w3eden .col-md-1,.w3eden .col-md-10,.w3eden .col-md-11,.w3eden .col-md-12,.w3eden .col-md-2,.w3eden .col-md-3,.w3eden .col-md-4,.w3eden .col-md-5,.w3eden .col-md-6,.w3eden .col-md-7,.w3eden .col-md-8,.w3eden .col-md-9{float:left}.w3eden .col-md-12{width:100%}.w3eden .col-md-11{width:91.66666667%}.w3eden .col-md-10{width:83.33333333%}.w3eden .col-md-9{width:75%}.w3eden .col-md-8{width:66.66666667%}.w3eden .col-md-7{width:58.33333333%}.w3eden .col-md-6{width:50%}.w3eden .col-md-5{width:41.66666667%}.w3eden .col-md-4{width:33.33333333%}.w3eden .col-md-3{width:25%}.w3eden .col-md-2{width:16.66666667%}.w3eden .col-md-1{width:8.33333333%}.w3eden .col-md-offset-12{margin-left:100%}.w3eden .col-md-offset-11{margin-left:91.66666667%}.w3eden .col-md-offset-10{margin-left:83.33333333%}.w3eden .col-md-offset-9{margin-left:75%}.w3eden .col-md-offset-8{margin-left:66.66666667%}.w3eden .col-md-offset-7{margin-left:58.33333333%}.w3eden .col-md-offset-6{margin-left:50%}.w3eden .col-md-offset-5{margin-left:41.66666667%}.w3eden .col-md-offset-4{margin-left:33.33333333%}.w3eden .col-md-offset-3{margin-left:25%}.w3eden .col-md-offset-2{margin-left:16.66666667%}.w3eden .col-md-offset-1{margin-left:8.33333333%}.w3eden .col-md-offset-0{margin-left:0}}@media (min-width:1200px){.w3eden .col-lg-1,.w3eden .col-lg-10,.w3eden .col-lg-11,.w3eden .col-lg-12,.w3eden .col-lg-2,.w3eden .col-lg-3,.w3eden .col-lg-4,.w3eden .col-lg-5,.w3eden .col-lg-6,.w3eden .col-lg-7,.w3eden .col-lg-8,.w3eden .col-lg-9{float:left}.w3eden .col-lg-12{width:100%}.w3eden .col-lg-11{width:91.66666667%}.w3eden .col-lg-10{width:83.33333333%}.w3eden .col-lg-9{width:75%}.w3eden .col-lg-8{width:66.66666667%}.w3eden .col-lg-7{width:58.33333333%}.w3eden .col-lg-6{width:50%}.w3eden .col-lg-5{width:41.66666667%}.w3eden .col-lg-4{width:33.33333333%}.w3eden .col-lg-3{width:25%}.w3eden .col-lg-2{width:16.66666667%}.w3eden .col-lg-1{width:8.33333333%}.w3eden .col-lg-offset-12{margin-left:100%}.w3eden .col-lg-offset-11{margin-left:91.66666667%}.w3eden .col-lg-offset-10{margin-left:83.33333333%}.w3eden .col-lg-offset-9{margin-left:75%}.w3eden .col-lg-offset-8{margin-left:66.66666667%}.w3eden .col-lg-offset-7{margin-left:58.33333333%}.w3eden .col-lg-offset-6{margin-left:50%}.w3eden .col-lg-offset-5{margin-left:41.66666667%}.w3eden .col-lg-offset-4{margin-left:33.33333333%}.w3eden .col-lg-offset-3{margin-left:25%}.w3eden .col-lg-offset-2{margin-left:16.66666667%}.w3eden .col-lg-offset-1{margin-left:8.33333333%}.w3eden .col-lg-offset-0{margin-left:0}}.w3eden caption{padding-top:8px;padding-bottom:8px;color:#777}.w3eden .table{width:100%;max-width:100%;margin-bottom:20px}.w3eden .table>tbody>tr>td,.w3eden .table>tbody>tr>th,.w3eden .table>tfoot>tr>td,.w3eden .table>tfoot>tr>th,.w3eden .table>thead>tr>td,.w3eden .table>thead>tr>th{padding:8px;line-height:1.42857143;vertical-align:top;border-top:1px solid #ddd}.w3eden .table>thead>tr>th{vertical-align:bottom;border-bottom:2px solid #ddd}.w3eden .table>caption+thead>tr:first-child>td,.w3eden .table>caption+thead>tr:first-child>th,.w3eden .table>colgroup+thead>tr:first-child>td,.w3eden .table>colgroup+thead>tr:first-child>th,.w3eden .table>thead:first-child>tr:first-child>td,.w3eden .table>thead:first-child>tr:first-child>th{border-top:0}.w3eden .table>tbody+tbody{border-top:2px solid #ddd}.w3eden .table .table{background-color:#fff}.w3eden .table-condensed>tbody>tr>td,.w3eden .table-condensed>tbody>tr>th,.w3eden .table-condensed>tfoot>tr>td,.w3eden .table-condensed>tfoot>tr>th,.w3eden .table-condensed>thead>tr>td,.w3eden .table-condensed>thead>tr>th{padding:5px}.w3eden .table-bordered,.w3eden .table-bordered>tbody>tr>td,.w3eden .table-bordered>tbody>tr>th,.w3eden .table-bordered>tfoot>tr>td,.w3eden .table-bordered>tfoot>tr>th,.w3eden .table-bordered>thead>tr>td,.w3eden .table-bordered>thead>tr>th{border:1px solid #ddd}.w3eden .table-bordered>thead>tr>td,.w3eden .table-bordered>thead>tr>th{border-bottom-width:2px}.w3eden .table-striped>tbody>tr:nth-of-type(odd){background-color:#f9f9f9}.w3eden .table-hover>tbody>tr:hover,.w3eden .table>tbody>tr.active>td,.w3eden .table>tbody>tr.active>th,.w3eden .table>tbody>tr>td.active,.w3eden .table>tbody>tr>th.active,.w3eden .table>tfoot>tr.active>td,.w3eden .table>tfoot>tr.active>th,.w3eden .table>tfoot>tr>td.active,.w3eden .table>tfoot>tr>th.active,.w3eden .table>thead>tr.active>td,.w3eden .table>thead>tr.active>th,.w3eden .table>thead>tr>td.active,.w3eden .table>thead>tr>th.active{background-color:#f5f5f5}.w3eden table col[class*=col-]{position:static;display:table-column;float:none}.w3eden table td[class*=col-],.w3eden table th[class*=col-]{position:static;display:table-cell;float:none}.w3eden .table-hover>tbody>tr.active:hover>td,.w3eden .table-hover>tbody>tr.active:hover>th,.w3eden .table-hover>tbody>tr:hover>.active,.w3eden .table-hover>tbody>tr>td.active:hover,.w3eden .table-hover>tbody>tr>th.active:hover{background-color:#e8e8e8}.w3eden .table-responsive{min-height:.01%;overflow-x:auto}@media screen and (max-width:767px){.w3eden .table-responsive{width:100%;margin-bottom:15px;overflow-y:hidden;-ms-overflow-style:-ms-autohiding-scrollbar;border:1px solid #ddd}.w3eden .table-responsive>.table{margin-bottom:0}.w3eden .table-responsive>.table>tbody>tr>td,.w3eden .table-responsive>.table>tbody>tr>th,.w3eden .table-responsive>.table>tfoot>tr>td,.w3eden .table-responsive>.table>tfoot>tr>th,.w3eden .table-responsive>.table>thead>tr>td,.w3eden .table-responsive>.table>thead>tr>th{white-space:nowrap}.w3eden .table-responsive>.table-bordered{border:0}.w3eden .table-responsive>.table-bordered>tbody>tr>td:first-child,.w3eden .table-responsive>.table-bordered>tbody>tr>th:first-child,.w3eden .table-responsive>.table-bordered>tfoot>tr>td:first-child,.w3eden .table-responsive>.table-bordered>tfoot>tr>th:first-child,.w3eden .table-responsive>.table-bordered>thead>tr>td:first-child,.w3eden .table-responsive>.table-bordered>thead>tr>th:first-child{border-left:0}.w3eden .table-responsive>.table-bordered>tbody>tr>td:last-child,.w3eden .table-responsive>.table-bordered>tbody>tr>th:last-child,.w3eden .table-responsive>.table-bordered>tfoot>tr>td:last-child,.w3eden .table-responsive>.table-bordered>tfoot>tr>th:last-child,.w3eden .table-responsive>.table-bordered>thead>tr>td:last-child,.w3eden .table-responsive>.table-bordered>thead>tr>th:last-child{border-right:0}.w3eden .table-responsive>.table-bordered>tbody>tr:last-child>td,.w3eden .table-responsive>.table-bordered>tbody>tr:last-child>th,.w3eden .table-responsive>.table-bordered>tfoot>tr:last-child>td,.w3eden .table-responsive>.table-bordered>tfoot>tr:last-child>th{border-bottom:0}}.w3eden fieldset{min-width:0;padding:0;margin:0;border:0}.w3eden legend{display:block;width:100%;padding:0;margin-bottom:20px;font-size:21px;line-height:inherit;color:#333;border:0;border-bottom:1px solid #e5e5e5}.w3eden label{display:inline-block;max-width:100%;margin-bottom:5px}.w3eden input[type=search]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-appearance:none}.w3eden input[type=checkbox],.w3eden input[type=radio]{margin:4px 0 0;margin-top:1px\9;line-height:normal}.w3eden .form-control,.w3eden output{font-size:14px;line-height:1.42857143;color:#555;display:block}.w3eden input[type=file]{display:block}.w3eden input[type=range]{display:block;width:100%}.w3eden select[multiple],.w3eden select[size]{height:auto}.w3eden input[type=checkbox]:focus,.w3eden input[type=file]:focus,.w3eden input[type=radio]:focus{outline:dotted thin;outline:-webkit-focus-ring-color auto 5px;outline-offset:-2px}.w3eden output{padding-top:7px}.w3eden .form-control{width:100%;height:34px;padding:6px 12px;background-color:#fff;border:1px solid #d5d5d5;border-radius:3px;box-shadow:none;transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s}.w3eden .form-control:focus{border-color:#66afe9;outline:0;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 3px rgba(102,175,233,.6);box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 3px rgba(102,175,233,.6)}.w3eden .form-control::-moz-placeholder{color:#999;opacity:1}.w3eden .form-control:-ms-input-placeholder{color:#999}.w3eden .form-control::-webkit-input-placeholder{color:#999}.w3eden .has-success .checkbox,.w3eden .has-success .checkbox-inline,.w3eden .has-success .control-label,.w3eden .has-success .form-control-feedback,.w3eden .has-success .help-block,.w3eden .has-success .radio,.w3eden .has-success .radio-inline,.w3eden .has-success.checkbox label,.w3eden .has-success.checkbox-inline label,.w3eden .has-success.radio label,.w3eden .has-success.radio-inline label{color:#3c763d}.w3eden .form-control[disabled],.w3eden .form-control[readonly],.w3eden fieldset[disabled] .form-control{background-color:#eee;opacity:1}.w3eden .form-control[disabled],.w3eden fieldset[disabled] .form-control{cursor:not-allowed}.w3eden textarea.form-control{height:auto}@media screen and (-webkit-min-device-pixel-ratio:0){.w3eden input[type=date],.w3eden input[type=datetime-local],.w3eden input[type=month],.w3eden input[type=time]{line-height:34px}.w3eden .input-group-sm input[type=date],.w3eden .input-group-sm input[type=datetime-local],.w3eden .input-group-sm input[type=month],.w3eden .input-group-sm input[type=time],.w3eden input[type=date].input-sm,.w3eden input[type=datetime-local].input-sm,.w3eden input[type=month].input-sm,.w3eden input[type=time].input-sm{line-height:30px}.w3eden .input-group-lg input[type=date],.w3eden .input-group-lg input[type=datetime-local],.w3eden .input-group-lg input[type=month],.w3eden .input-group-lg input[type=time],.w3eden input[type=date].input-lg,.w3eden input[type=datetime-local].input-lg,.w3eden input[type=month].input-lg,.w3eden input[type=time].input-lg{line-height:46px}}.w3eden .form-group{margin-bottom:15px}.w3eden .checkbox,.w3eden .radio{position:relative;display:block;margin-top:10px;margin-bottom:10px}.w3eden .checkbox label,.w3eden .radio label{min-height:20px;padding-left:20px;margin-bottom:0;font-weight:400;cursor:pointer}.w3eden .checkbox input[type=checkbox],.w3eden .checkbox-inline input[type=checkbox],.w3eden .radio input[type=radio],.w3eden .radio-inline input[type=radio]{position:absolute;margin-top:4px\9;margin-left:-20px}.w3eden .checkbox+.checkbox,.w3eden .radio+.radio{margin-top:-5px}.w3eden .checkbox-inline,.w3eden .radio-inline{position:relative;display:inline-block;padding-left:20px;margin-bottom:0;font-weight:400;vertical-align:middle;cursor:pointer}.w3eden .checkbox-inline+.checkbox-inline,.w3eden .radio-inline+.radio-inline{margin-top:0;margin-left:10px}.w3eden .checkbox-inline.disabled,.w3eden .checkbox.disabled label,.w3eden .radio-inline.disabled,.w3eden .radio.disabled label,.w3eden fieldset[disabled] .checkbox label,.w3eden fieldset[disabled] .checkbox-inline,.w3eden fieldset[disabled] .radio label,.w3eden fieldset[disabled] .radio-inline,.w3eden fieldset[disabled] input[type=checkbox],.w3eden fieldset[disabled] input[type=radio],.w3eden input[type=checkbox].disabled,.w3eden input[type=checkbox][disabled],.w3eden input[type=radio].disabled,.w3eden input[type=radio][disabled]{cursor:not-allowed}.w3eden .form-control-static{min-height:34px;padding-top:7px;padding-bottom:7px;margin-bottom:0}.w3eden .form-control-static.input-lg,.w3eden .form-control-static.input-sm{padding-right:0;padding-left:0}.w3eden .input-sm{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.w3eden select.input-sm{height:30px;line-height:30px}.w3eden select[multiple].input-sm,.w3eden textarea.input-sm{height:auto}.w3eden .form-group-sm .form-control{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.w3eden select.form-group-sm .form-control{height:30px;line-height:30px}.w3eden select[multiple].form-group-sm .form-control,.w3eden textarea.form-group-sm .form-control{height:auto}.w3eden .form-group-sm .form-control-static{height:30px;min-height:32px;padding:5px 10px;font-size:12px;line-height:1.5}.w3eden .input-lg{height:46px;padding:10px 16px;font-size:18px;line-height:1.3333333;border-radius:6px}.w3eden select.input-lg{height:46px;line-height:46px}.w3eden select[multiple].input-lg,.w3eden textarea.input-lg{height:auto}.w3eden .form-group-lg .form-control{height:46px;padding:10px 16px;font-size:18px;line-height:1.3333333;border-radius:6px}.w3eden select.form-group-lg .form-control{height:46px;line-height:46px}.w3eden select[multiple].form-group-lg .form-control,.w3eden textarea.form-group-lg .form-control{height:auto}.w3eden .form-group-lg .form-control-static{height:46px;min-height:38px;padding:10px 16px;font-size:18px;line-height:1.3333333}.w3eden .has-feedback{position:relative}.w3eden .has-feedback .form-control{padding-right:42.5px}.w3eden .form-control-feedback{position:absolute;top:0;right:0;z-index:2;display:block;width:34px;height:34px;line-height:34px;text-align:center;pointer-events:none}.w3eden .input-lg+.form-control-feedback{width:46px;height:46px;line-height:46px}.w3eden .input-sm+.form-control-feedback{width:30px;height:30px;line-height:30px}.w3eden .has-success .form-control{border-color:#3c763d;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.w3eden .has-success .form-control:focus{border-color:#2b542c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #67b168;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #67b168}.w3eden .has-success .input-group-addon{color:#3c763d;background-color:#dff0d8;border-color:#3c763d}.w3eden .has-warning .checkbox,.w3eden .has-warning .checkbox-inline,.w3eden .has-warning .control-label,.w3eden .has-warning .form-control-feedback,.w3eden .has-warning .help-block,.w3eden .has-warning .radio,.w3eden .has-warning .radio-inline,.w3eden .has-warning.checkbox label,.w3eden .has-warning.checkbox-inline label,.w3eden .has-warning.radio label,.w3eden .has-warning.radio-inline label{color:#8a6d3b}.w3eden .has-warning .form-control{border-color:#8a6d3b;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.w3eden .has-warning .form-control:focus{border-color:#66512c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #c0a16b;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #c0a16b}.w3eden .has-warning .input-group-addon{color:#8a6d3b;background-color:#fcf8e3;border-color:#8a6d3b}.w3eden .has-error .checkbox,.w3eden .has-error .checkbox-inline,.w3eden .has-error .control-label,.w3eden .has-error .form-control-feedback,.w3eden .has-error .help-block,.w3eden .has-error .radio,.w3eden .has-error .radio-inline,.w3eden .has-error.checkbox label,.w3eden .has-error.checkbox-inline label,.w3eden .has-error.radio label,.w3eden .has-error.radio-inline label{color:#a94442}.w3eden .has-error .form-control{border-color:#a94442;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.w3eden .has-error .form-control:focus{border-color:#843534;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #ce8483;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #ce8483}.w3eden .has-error .input-group-addon{color:#a94442;background-color:#f2dede;border-color:#a94442}.w3eden .has-feedback label~.form-control-feedback{top:25px}.w3eden .has-feedback label.sr-only~.form-control-feedback{top:0}.w3eden .help-block{display:block;margin-top:5px;margin-bottom:10px;color:#737373}@media (min-width:768px){.w3eden .form-inline .form-control-static,.w3eden .form-inline .form-group{display:inline-block}.w3eden .form-inline .control-label,.w3eden .form-inline .form-group{margin-bottom:0;vertical-align:middle}.w3eden .form-inline .form-control{display:inline-block;width:auto;vertical-align:middle}.w3eden .form-inline .input-group{display:inline-table;vertical-align:middle}.w3eden .form-inline .input-group .form-control,.w3eden .form-inline .input-group .input-group-addon,.w3eden .form-inline .input-group .input-group-btn{width:auto}.w3eden .form-inline .input-group>.form-control{width:100%}.w3eden .form-inline .checkbox,.w3eden .form-inline .radio{display:inline-block;margin-top:0;margin-bottom:0;vertical-align:middle}.w3eden .form-inline .checkbox label,.w3eden .form-inline .radio label{padding-left:0}.w3eden .form-inline .checkbox input[type=checkbox],.w3eden .form-inline .radio input[type=radio]{position:relative;margin-left:0}.w3eden .form-inline .has-feedback .form-control-feedback{top:0}.w3eden .form-horizontal .control-label{padding-top:7px;margin-bottom:0;text-align:right}}.w3eden .form-horizontal .checkbox,.w3eden .form-horizontal .checkbox-inline,.w3eden .form-horizontal .radio,.w3eden .form-horizontal .radio-inline{padding-top:7px;margin-top:0;margin-bottom:0}.w3eden .form-horizontal .checkbox,.w3eden .form-horizontal .radio{min-height:27px}.w3eden .form-horizontal .form-group{margin-right:-15px;margin-left:-15px}.w3eden .form-horizontal .has-feedback .form-control-feedback{right:15px}@media (min-width:768px){.w3eden .form-horizontal .form-group-lg .control-label{padding-top:14.33px}.w3eden .form-horizontal .form-group-sm .control-label{padding-top:6px}}.w3eden .btn{display:inline-block;padding:6px 12px;margin-bottom:0;font-size:14px;font-weight:400;line-height:1.42857143;text-align:center;white-space:nowrap;vertical-align:middle;-ms-touch-action:manipulation;touch-action:manipulation;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;border:1px solid transparent}.w3eden .btn.active.focus,.w3eden .btn.active:focus,.w3eden .btn.focus,.w3eden .btn:active.focus,.w3eden .btn:active:focus,.w3eden .btn:focus{outline:dotted thin;outline:-webkit-focus-ring-color auto 5px;outline-offset:-2px}.w3eden .btn.focus,.w3eden .btn:focus,.w3eden .btn:hover{color:#333;text-decoration:none}.w3eden .btn.active,.w3eden .btn:active{outline:0;-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.w3eden .btn.disabled,.w3eden .btn[disabled],.w3eden fieldset[disabled] .btn{pointer-events:none;cursor:not-allowed;filter:alpha(opacity=65);-webkit-box-shadow:none;box-shadow:none;opacity:.65}.w3eden .btn-secondary{color:#333;background-color:#fff;border-color:#ccc}.w3eden .btn-secondary.active,.w3eden .btn-secondary.focus,.w3eden .btn-secondary:active,.w3eden .btn-secondary:focus,.w3eden .btn-secondary:hover,.w3eden .open>.dropdown-toggle.btn-secondary{color:#333;background-color:#e6e6e6;border-color:#adadad}.w3eden .btn-secondary.disabled,.w3eden .btn-secondary.disabled.active,.w3eden .btn-secondary.disabled.focus,.w3eden .btn-secondary.disabled:active,.w3eden .btn-secondary.disabled:focus,.w3eden .btn-secondary.disabled:hover,.w3eden .btn-secondary[disabled],.w3eden .btn-secondary[disabled].active,.w3eden .btn-secondary[disabled].focus,.w3eden .btn-secondary[disabled]:active,.w3eden .btn-secondary[disabled]:focus,.w3eden .btn-secondary[disabled]:hover,.w3eden fieldset[disabled] .btn-secondary,.w3eden fieldset[disabled] .btn-secondary.active,.w3eden fieldset[disabled] .btn-secondary.focus,.w3eden fieldset[disabled] .btn-secondary:active,.w3eden fieldset[disabled] .btn-secondary:focus,.w3eden fieldset[disabled] .btn-secondary:hover{background-color:#fff;border-color:#ccc}.w3eden .btn-secondary .badge{color:#fff;background-color:#333}.w3eden .btn-primary{color:#fff;background-color:#337ab7;border-color:#2e6da4}.w3eden .btn-primary.active,.w3eden .btn-primary.focus,.w3eden .btn-primary:active,.w3eden .btn-primary:focus,.w3eden .btn-primary:hover,.w3eden .open>.dropdown-toggle.btn-primary{color:#fff;background-color:#286090;border-color:#204d74}.w3eden .btn-primary.disabled,.w3eden .btn-primary.disabled.active,.w3eden .btn-primary.disabled.focus,.w3eden .btn-primary.disabled:active,.w3eden .btn-primary.disabled:focus,.w3eden .btn-primary.disabled:hover,.w3eden .btn-primary[disabled],.w3eden .btn-primary[disabled].active,.w3eden .btn-primary[disabled].focus,.w3eden .btn-primary[disabled]:active,.w3eden .btn-primary[disabled]:focus,.w3eden .btn-primary[disabled]:hover,.w3eden fieldset[disabled] .btn-primary,.w3eden fieldset[disabled] .btn-primary.active,.w3eden fieldset[disabled] .btn-primary.focus,.w3eden fieldset[disabled] .btn-primary:active,.w3eden fieldset[disabled] .btn-primary:focus,.w3eden fieldset[disabled] .btn-primary:hover{background-color:#337ab7;border-color:#2e6da4}.w3eden .btn-primary .badge{color:#337ab7;background-color:#fff}.w3eden .btn-success{color:#fff;background-color:#5cb85c;border-color:#4cae4c}.w3eden .btn-success.active,.w3eden .btn-success.focus,.w3eden .btn-success:active,.w3eden .btn-success:focus,.w3eden .btn-success:hover,.w3eden .open>.dropdown-toggle.btn-success{color:#fff;background-color:#449d44;border-color:#398439}.w3eden .btn-success.active,.w3eden .btn-success:active,.w3eden .open>.dropdown-toggle.btn-success{background-image:none}.w3eden .btn-success.disabled,.w3eden .btn-success.disabled.active,.w3eden .btn-success.disabled.focus,.w3eden .btn-success.disabled:active,.w3eden .btn-success.disabled:focus,.w3eden .btn-success.disabled:hover,.w3eden .btn-success[disabled],.w3eden .btn-success[disabled].active,.w3eden .btn-success[disabled].focus,.w3eden .btn-success[disabled]:active,.w3eden .btn-success[disabled]:focus,.w3eden .btn-success[disabled]:hover,.w3eden fieldset[disabled] .btn-success,.w3eden fieldset[disabled] .btn-success.active,.w3eden fieldset[disabled] .btn-success.focus,.w3eden fieldset[disabled] .btn-success:active,.w3eden fieldset[disabled] .btn-success:focus,.w3eden fieldset[disabled] .btn-success:hover{background-color:#5cb85c;border-color:#4cae4c}.w3eden .btn-success .badge{color:#5cb85c;background-color:#fff}.w3eden .btn-info{color:#fff;background-color:#5bc0de;border-color:#46b8da}.w3eden .btn-info.active,.w3eden .btn-info.focus,.w3eden .btn-info:active,.w3eden .btn-info:focus,.w3eden .btn-info:hover,.w3eden .open>.dropdown-toggle.btn-info{color:#fff;background-color:#31b0d5;border-color:#269abc}.w3eden .btn-info.disabled,.w3eden .btn-info.disabled.active,.w3eden .btn-info.disabled.focus,.w3eden .btn-info.disabled:active,.w3eden .btn-info.disabled:focus,.w3eden .btn-info.disabled:hover,.w3eden .btn-info[disabled],.w3eden .btn-info[disabled].active,.w3eden .btn-info[disabled].focus,.w3eden .btn-info[disabled]:active,.w3eden .btn-info[disabled]:focus,.w3eden .btn-info[disabled]:hover,.w3eden fieldset[disabled] .btn-info,.w3eden fieldset[disabled] .btn-info.active,.w3eden fieldset[disabled] .btn-info.focus,.w3eden fieldset[disabled] .btn-info:active,.w3eden fieldset[disabled] .btn-info:focus,.w3eden fieldset[disabled] .btn-info:hover{background-color:#5bc0de;border-color:#46b8da}.w3eden .btn-info .badge{color:#5bc0de;background-color:#fff}.w3eden .btn-warning{color:#fff;background-color:#f0ad4e;border-color:#eea236}.w3eden .btn-warning.active,.w3eden .btn-warning.focus,.w3eden .btn-warning:active,.w3eden .btn-warning:focus,.w3eden .btn-warning:hover,.w3eden .open>.dropdown-toggle.btn-warning{color:#fff;background-color:#ec971f;border-color:#d58512}.w3eden .btn-warning.disabled,.w3eden .btn-warning.disabled.active,.w3eden .btn-warning.disabled.focus,.w3eden .btn-warning.disabled:active,.w3eden .btn-warning.disabled:focus,.w3eden .btn-warning.disabled:hover,.w3eden .btn-warning[disabled],.w3eden .btn-warning[disabled].active,.w3eden .btn-warning[disabled].focus,.w3eden .btn-warning[disabled]:active,.w3eden .btn-warning[disabled]:focus,.w3eden .btn-warning[disabled]:hover,.w3eden fieldset[disabled] .btn-warning,.w3eden fieldset[disabled] .btn-warning.active,.w3eden fieldset[disabled] .btn-warning.focus,.w3eden fieldset[disabled] .btn-warning:active,.w3eden fieldset[disabled] .btn-warning:focus,.w3eden fieldset[disabled] .btn-warning:hover{background-color:#f0ad4e;border-color:#eea236}.w3eden .btn-warning .badge{color:#f0ad4e;background-color:#fff}.w3eden .btn-danger{color:#fff;background-color:#d9534f;border-color:#d43f3a}.w3eden .btn-danger.active,.w3eden .btn-danger.focus,.w3eden .btn-danger:active,.w3eden .btn-danger:focus,.w3eden .btn-danger:hover,.w3eden .open>.dropdown-toggle.btn-danger{color:#fff;background-color:#c9302c;border-color:#ac2925}.w3eden .btn-danger.disabled,.w3eden .btn-danger.disabled.active,.w3eden .btn-danger.disabled.focus,.w3eden .btn-danger.disabled:active,.w3eden .btn-danger.disabled:focus,.w3eden .btn-danger.disabled:hover,.w3eden .btn-danger[disabled],.w3eden .btn-danger[disabled].active,.w3eden .btn-danger[disabled].focus,.w3eden .btn-danger[disabled]:active,.w3eden .btn-danger[disabled]:focus,.w3eden .btn-danger[disabled]:hover,.w3eden fieldset[disabled] .btn-danger,.w3eden fieldset[disabled] .btn-danger.active,.w3eden fieldset[disabled] .btn-danger.focus,.w3eden fieldset[disabled] .btn-danger:active,.w3eden fieldset[disabled] .btn-danger:focus,.w3eden fieldset[disabled] .btn-danger:hover{background-color:#d9534f;border-color:#d43f3a}.w3eden .btn-danger .badge{color:#d9534f;background-color:#fff}.w3eden .btn-link{font-weight:400;color:#337ab7;border-radius:0}.w3eden .btn-link,.w3eden .btn-link.active,.w3eden .btn-link:active,.w3eden .btn-link[disabled],.w3eden fieldset[disabled] .btn-link{background-color:transparent;-webkit-box-shadow:none;box-shadow:none}.w3eden .btn-link,.w3eden .btn-link:active,.w3eden .btn-link:focus,.w3eden .btn-link:hover{border-color:transparent}.w3eden .btn-link:focus,.w3eden .btn-link:hover{color:#23527c;text-decoration:underline;background-color:transparent}.w3eden .btn-link[disabled]:focus,.w3eden .btn-link[disabled]:hover,.w3eden fieldset[disabled] .btn-link:focus,.w3eden fieldset[disabled] .btn-link:hover{color:#777;text-decoration:none}.w3eden .btn-group-lg>.btn,.w3eden .btn-lg{padding:10px 16px;font-size:18px;line-height:1.3333333;border-radius:6px}.w3eden .btn-group-sm>.btn,.w3eden .btn-sm{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.w3eden .btn-group-xs>.btn,.w3eden .btn-xs{padding:1px 5px;font-size:12px;line-height:1.5;border-radius:3px}.w3eden .btn-block{display:block;width:100%}.w3eden .btn-block+.btn-block{margin-top:5px}.w3eden input[type=button].btn-block,.w3eden input[type=reset].btn-block,.w3eden input[type=submit].btn-block{width:100%}.w3eden .fade{opacity:0;-webkit-transition:opacity .15s linear;-o-transition:opacity .15s linear;transition:opacity .15s linear}.w3eden .fade.in{opacity:1}.w3eden .collapse{display:none}.w3eden .collapse.in{display:block}.w3eden tr.collapse.in{display:table-row}.w3eden tbody.collapse.in{display:table-row-group}.w3eden .collapsing{position:relative;height:0;overflow:hidden;-webkit-transition-timing-function:ease;-o-transition-timing-function:ease;transition-timing-function:ease;-webkit-transition-duration:.35s;-o-transition-duration:.35s;transition-duration:.35s;-webkit-transition-property:height,visibility;-o-transition-property:height,visibility;transition-property:height,visibility}.w3eden .caret{display:inline-block;width:0;height:0;margin-left:2px;vertical-align:middle;border-top:4px dashed;border-right:4px solid transparent;border-left:4px solid transparent}.w3eden .dropdown,.w3eden .dropup{position:relative}.w3eden .dropdown-toggle:focus{outline:0}.w3eden .dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;min-width:160px;padding:5px 0;margin:2px 0 0;font-size:14px;text-align:left;list-style:none;background-color:#fff;-webkit-background-clip:padding-box;background-clip:padding-box;border:1px solid #ccc;border:1px solid rgba(0,0,0,.15);border-radius:4px;-webkit-box-shadow:0 6px 12px rgba(0,0,0,.175);box-shadow:0 6px 12px rgba(0,0,0,.175)}.w3eden .dropdown-menu-right,.w3eden .dropdown-menu.pull-right{right:0;left:auto}.w3eden .dropdown-header,.w3eden .dropdown-menu>li>a{display:block;padding:3px 20px;line-height:1.42857143;white-space:nowrap}.w3eden .btn-group-vertical>.btn:not(:first-child):not(:last-child),.w3eden .btn-group>.btn-group:not(:first-child):not(:last-child)>.btn,.w3eden .btn-group>.btn:not(:first-child):not(:last-child):not(.dropdown-toggle){border-radius:0}.w3eden .dropdown-menu .divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.w3eden .dropdown-menu>li>a{clear:both;font-weight:400;color:#333}.w3eden .dropdown-menu>li>a:focus,.w3eden .dropdown-menu>li>a:hover{color:#262626;text-decoration:none;background-color:#f5f5f5}.w3eden .dropdown-menu>.active>a,.w3eden .dropdown-menu>.active>a:focus,.w3eden .dropdown-menu>.active>a:hover{color:#fff;text-decoration:none;background-color:#337ab7;outline:0}.w3eden .dropdown-menu>.disabled>a,.w3eden .dropdown-menu>.disabled>a:focus,.w3eden .dropdown-menu>.disabled>a:hover{color:#777}.w3eden .dropdown-menu>.disabled>a:focus,.w3eden .dropdown-menu>.disabled>a:hover{text-decoration:none;cursor:not-allowed;background-color:transparent;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.w3eden .open>.dropdown-menu{display:block}.w3eden .open>a{outline:0}.w3eden .dropdown-menu-left{right:auto;left:0}.w3eden .dropdown-header{font-size:12px;color:#777}.w3eden .dropdown-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:990}.w3eden .nav-justified>.dropdown .dropdown-menu,.w3eden .nav-tabs.nav-justified>.dropdown .dropdown-menu{top:auto;left:auto}.w3eden .btn-group-vertical>.btn.active,.w3eden .btn-group-vertical>.btn:active,.w3eden .btn-group-vertical>.btn:focus,.w3eden .btn-group-vertical>.btn:hover,.w3eden .btn-group>.btn.active,.w3eden .btn-group>.btn:active,.w3eden .btn-group>.btn:focus,.w3eden .btn-group>.btn:hover,.w3eden .input-group-btn>.btn:active,.w3eden .input-group-btn>.btn:focus,.w3eden .input-group-btn>.btn:hover{z-index:2}.w3eden .pull-right>.dropdown-menu{right:0;left:auto}.w3eden .dropup .caret,.w3eden .navbar-fixed-bottom .dropdown .caret{content:"";border-top:0;border-bottom:4px solid}.w3eden .dropup .dropdown-menu,.w3eden .navbar-fixed-bottom .dropdown .dropdown-menu{top:auto;bottom:100%;margin-bottom:2px}@media (min-width:768px){.w3eden .navbar-right .dropdown-menu{right:0;left:auto}.w3eden .navbar-right .dropdown-menu-left{right:auto;left:0}}.w3eden .btn-group,.w3eden .btn-group-vertical{position:relative;display:inline-block;vertical-align:middle}.w3eden .btn-group-vertical>.btn,.w3eden .btn-group>.btn{position:relative;float:left}.w3eden .btn-group .btn+.btn,.w3eden .btn-group .btn+.btn-group,.w3eden .btn-group .btn-group+.btn,.w3eden .btn-group .btn-group+.btn-group{margin-left:-1px}.w3eden .btn-toolbar{margin-left:-5px}.w3eden .btn-toolbar>.btn,.w3eden .btn-toolbar>.btn-group,.w3eden .btn-toolbar>.input-group{margin-left:5px}.w3eden .btn .caret,.w3eden .btn-group>.btn:first-child{margin-left:0}.w3eden .btn-group>.btn:first-child:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.w3eden .btn-group>.btn:last-child:not(:first-child),.w3eden .btn-group>.dropdown-toggle:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.w3eden .btn-group>.btn-group:first-child:not(:last-child)>.btn:last-child,.w3eden .btn-group>.btn-group:first-child:not(:last-child)>.dropdown-toggle{border-top-right-radius:0;border-bottom-right-radius:0}.w3eden .btn-group>.btn-group:last-child:not(:first-child)>.btn:first-child{border-top-left-radius:0;border-bottom-left-radius:0}.w3eden .btn-group .dropdown-toggle:active,.w3eden .btn-group.open .dropdown-toggle{outline:0}.w3eden .btn-group>.btn+.dropdown-toggle{padding-right:8px;padding-left:8px}.w3eden .btn-group>.btn-lg+.dropdown-toggle{padding-right:12px;padding-left:12px}.w3eden .btn-group.open .dropdown-toggle{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.w3eden .btn-group.open .dropdown-toggle.btn-link{-webkit-box-shadow:none;box-shadow:none}.w3eden .btn-lg .caret{border-width:5px 5px 0}.w3eden .dropup .btn-lg .caret{border-width:0 5px 5px}.w3eden .btn-group-vertical>.btn,.w3eden .btn-group-vertical>.btn-group,.w3eden .btn-group-vertical>.btn-group>.btn{display:block;float:none;width:100%;max-width:100%}.w3eden .btn-group-vertical>.btn-group>.btn{float:none}.w3eden .btn-group-vertical>.btn+.btn,.w3eden .btn-group-vertical>.btn+.btn-group,.w3eden .btn-group-vertical>.btn-group+.btn,.w3eden .btn-group-vertical>.btn-group+.btn-group{margin-top:-1px;margin-left:0}.w3eden .input-group-btn:last-child>.btn,.w3eden .input-group-btn:last-child>.btn-group,.w3eden .input-group-btn>.btn+.btn{margin-left:-1px}.w3eden .btn-group-vertical>.btn:first-child:not(:last-child){border-top-right-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.w3eden .btn-group-vertical>.btn:last-child:not(:first-child){border-top-left-radius:0;border-top-right-radius:0;border-bottom-left-radius:4px}.w3eden .btn-group-vertical>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.w3eden .btn-group-vertical>.btn-group:first-child:not(:last-child)>.btn:last-child,.w3eden .btn-group-vertical>.btn-group:first-child:not(:last-child)>.dropdown-toggle{border-bottom-right-radius:0;border-bottom-left-radius:0}.w3eden .btn-group-vertical>.btn-group:last-child:not(:first-child)>.btn:first-child{border-top-left-radius:0;border-top-right-radius:0}.w3eden .btn-group-justified{display:table;width:100%;table-layout:fixed;border-collapse:separate}.w3eden .btn-group-justified>.btn,.w3eden .btn-group-justified>.btn-group{display:table-cell;float:none;width:1%}.w3eden .btn-group-justified>.btn-group .btn{width:100%}.w3eden .btn-group-justified>.btn-group .dropdown-menu{left:auto}.w3eden [data-toggle=buttons]>.btn input[type=checkbox],.w3eden [data-toggle=buttons]>.btn input[type=radio],.w3eden [data-toggle=buttons]>.btn-group>.btn input[type=checkbox],.w3eden [data-toggle=buttons]>.btn-group>.btn input[type=radio]{position:absolute;clip:rect(0,0,0,0);pointer-events:none}.w3eden .input-group{position:relative;display:table;border-collapse:separate}.w3eden .input-group[class*=col-]{float:none;padding-right:0;padding-left:0}.w3eden .input-group .form-control{position:relative;z-index:2;float:left;width:100%;margin-bottom:0}.w3eden .input-group-lg>.form-control,.w3eden .input-group-lg>.input-group-addon,.w3eden .input-group-lg>.input-group-btn>.btn{height:46px;padding:10px 16px;font-size:18px;line-height:1.3333333;border-radius:6px}.w3eden select.input-group-lg>.form-control,.w3eden select.input-group-lg>.input-group-addon,.w3eden select.input-group-lg>.input-group-btn>.btn{height:46px;line-height:46px}.w3eden select[multiple].input-group-lg>.form-control,.w3eden select[multiple].input-group-lg>.input-group-addon,.w3eden select[multiple].input-group-lg>.input-group-btn>.btn,.w3eden textarea.input-group-lg>.form-control,.w3eden textarea.input-group-lg>.input-group-addon,.w3eden textarea.input-group-lg>.input-group-btn>.btn{height:auto}.w3eden .input-group-sm>.form-control,.w3eden .input-group-sm>.input-group-addon,.w3eden .input-group-sm>.input-group-btn>.btn{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.w3eden select.input-group-sm>.form-control,.w3eden select.input-group-sm>.input-group-addon,.w3eden select.input-group-sm>.input-group-btn>.btn{height:30px;line-height:30px}.w3eden select[multiple].input-group-sm>.form-control,.w3eden select[multiple].input-group-sm>.input-group-addon,.w3eden select[multiple].input-group-sm>.input-group-btn>.btn,.w3eden textarea.input-group-sm>.form-control,.w3eden textarea.input-group-sm>.input-group-addon,.w3eden textarea.input-group-sm>.input-group-btn>.btn{height:auto}.w3eden .input-group .form-control,.w3eden .input-group-addon,.w3eden .input-group-btn{display:table-cell}.w3eden .nav>li,.w3eden .nav>li>a{display:block;position:relative}.w3eden .input-group .form-control:not(:first-child):not(:last-child),.w3eden .input-group-addon:not(:first-child):not(:last-child),.w3eden .input-group-btn:not(:first-child):not(:last-child){border-radius:0}.w3eden .input-group-addon,.w3eden .input-group-btn{width:1%;white-space:nowrap;vertical-align:middle}.w3eden .input-group-addon{padding:6px 12px;font-size:14px;font-weight:400;line-height:1;color:#555;text-align:center;background-color:#eee;border:1px solid #ccc;border-radius:3px}.w3eden .input-group-addon.input-sm{padding:5px 10px;font-size:12px;border-radius:3px}.w3eden .input-group-addon.input-lg{padding:10px 16px;font-size:18px;border-radius:6px}.w3eden .input-group-addon input[type=checkbox],.w3eden .input-group-addon input[type=radio]{margin-top:0}.w3eden .input-group .form-control:first-child,.w3eden .input-group-addon:first-child,.w3eden .input-group-btn:first-child>.btn,.w3eden .input-group-btn:first-child>.btn-group>.btn,.w3eden .input-group-btn:first-child>.dropdown-toggle,.w3eden .input-group-btn:last-child>.btn-group:not(:last-child)>.btn,.w3eden .input-group-btn:last-child>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.w3eden .input-group-addon:first-child{border-right:0}.w3eden .input-group .form-control:last-child,.w3eden .input-group-addon:last-child,.w3eden .input-group-btn:first-child>.btn-group:not(:first-child)>.btn,.w3eden .input-group-btn:first-child>.btn:not(:first-child),.w3eden .input-group-btn:last-child>.btn,.w3eden .input-group-btn:last-child>.btn-group>.btn,.w3eden .input-group-btn:last-child>.dropdown-toggle{border-top-left-radius:0;border-bottom-left-radius:0}.w3eden .input-group-addon:last-child{border-left:0}.w3eden .input-group-btn{position:relative;white-space:nowrap}.w3eden .input-group-btn>.btn{position:relative}.w3eden .input-group-btn:first-child>.btn,.w3eden .input-group-btn:first-child>.btn-group{margin-right:-1px}.w3eden .nav{padding-left:0;margin-bottom:0;list-style:none}.w3eden .nav>li>a{padding:10px 15px}.w3eden .nav>li>a:focus,.w3eden .nav>li>a:hover{text-decoration:none;background-color:#eee}.w3eden .nav>li.disabled>a{color:#777}.w3eden .nav>li.disabled>a:focus,.w3eden .nav>li.disabled>a:hover{color:#777;text-decoration:none;cursor:not-allowed;background-color:transparent}.w3eden .nav .open>a,.w3eden .nav .open>a:focus,.w3eden .nav .open>a:hover{background-color:#eee;border-color:#337ab7}.w3eden .nav .nav-divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.w3eden .nav>li>a>img{max-width:none}.w3eden .nav-tabs{border-bottom:1px solid #ddd}.w3eden .nav-tabs>li{float:left;margin-bottom:-1px}.w3eden .nav-tabs>li>a{margin-right:2px;line-height:1.42857143;border:1px solid transparent;border-radius:4px 4px 0 0}.w3eden .nav-tabs>li>a:hover{border-color:#eee #eee #ddd}.w3eden .nav-tabs>li.active>a,.w3eden .nav-tabs>li.active>a:focus,.w3eden .nav-tabs>li.active>a:hover{color:#555;cursor:default;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent}.w3eden .nav-tabs.nav-justified{width:100%;border-bottom:0}.w3eden .nav-tabs.nav-justified>li{float:none}.w3eden .nav-tabs.nav-justified>li>a{margin-bottom:5px;text-align:center;margin-right:0;border-radius:4px}.w3eden .nav-tabs.nav-justified>.active>a,.w3eden .nav-tabs.nav-justified>.active>a:focus,.w3eden .nav-tabs.nav-justified>.active>a:hover{border:1px solid #ddd}@media (min-width:768px){.w3eden .nav-tabs.nav-justified>li{display:table-cell;width:1%}.w3eden .nav-tabs.nav-justified>li>a{margin-bottom:0;border-bottom:1px solid #ddd;border-radius:4px 4px 0 0}.w3eden .nav-tabs.nav-justified>.active>a,.w3eden .nav-tabs.nav-justified>.active>a:focus,.w3eden .nav-tabs.nav-justified>.active>a:hover{border-bottom-color:#fff}}.w3eden .nav-pills>li{float:left}.w3eden .nav-justified>li,.w3eden .nav-stacked>li{float:none}.w3eden .nav-pills>li>a{border-radius:4px}.w3eden .nav-pills>li+li{margin-left:2px}.w3eden .nav-pills>li.active>a,.w3eden .nav-pills>li.active>a:focus,.w3eden .nav-pills>li.active>a:hover{color:#fff;background-color:#337ab7}.w3eden .nav-stacked>li+li{margin-top:2px;margin-left:0}.w3eden .nav-justified{width:100%}.w3eden .nav-justified>li>a{margin-bottom:5px;text-align:center}.w3eden .nav-tabs-justified{border-bottom:0}.w3eden .nav-tabs-justified>li>a{margin-right:0;border-radius:4px}.w3eden .nav-tabs-justified>.active>a,.w3eden .nav-tabs-justified>.active>a:focus,.w3eden .nav-tabs-justified>.active>a:hover{border:1px solid #ddd}@media (min-width:768px){.w3eden .nav-justified>li{display:table-cell;width:1%}.w3eden .nav-justified>li>a{margin-bottom:0}.w3eden .nav-tabs-justified>li>a{border-bottom:1px solid #ddd;border-radius:4px 4px 0 0}.w3eden .nav-tabs-justified>.active>a,.w3eden .nav-tabs-justified>.active>a:focus,.w3eden .nav-tabs-justified>.active>a:hover{border-bottom-color:#fff}}.w3eden .tab-content>.tab-pane{display:none}.w3eden .tab-content>.active{display:block}.w3eden .nav-tabs .dropdown-menu{margin-top:-1px;border-top-left-radius:0;border-top-right-radius:0}.w3eden .navbar{position:relative;min-height:50px;margin-bottom:20px;border:1px solid transparent}.w3eden .navbar-collapse{padding-right:15px;padding-left:15px;overflow-x:visible;-webkit-overflow-scrolling:touch;border-top:1px solid transparent;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.1);box-shadow:inset 0 1px 0 rgba(255,255,255,.1)}.w3eden .navbar-collapse.in{overflow-y:auto}.w3eden .navbar-fixed-bottom .navbar-collapse,.w3eden .navbar-fixed-top .navbar-collapse{max-height:340px}@media (max-device-width:480px) and (orientation:landscape){.w3eden .navbar-fixed-bottom .navbar-collapse,.w3eden .navbar-fixed-top .navbar-collapse{max-height:200px}}.w3eden .container-fluid>.navbar-collapse,.w3eden .container-fluid>.navbar-header,.w3eden .container>.navbar-collapse,.w3eden .container>.navbar-header{margin-right:-15px;margin-left:-15px}@media (min-width:768px){.w3eden .navbar{border-radius:4px}.w3eden .navbar-header{float:left}.w3eden .navbar-collapse{width:auto;border-top:0;-webkit-box-shadow:none;box-shadow:none}.w3eden .navbar-collapse.collapse{display:block!important;height:auto!important;padding-bottom:0;overflow:visible!important}.w3eden .navbar-collapse.in{overflow-y:visible}.w3eden .navbar-fixed-bottom .navbar-collapse,.w3eden .navbar-fixed-top .navbar-collapse,.w3eden .navbar-static-top .navbar-collapse{padding-right:0;padding-left:0}.w3eden .container-fluid>.navbar-collapse,.w3eden .container-fluid>.navbar-header,.w3eden .container>.navbar-collapse,.w3eden .container>.navbar-header{margin-right:0;margin-left:0}.w3eden .navbar-static-top{border-radius:0}}.w3eden .navbar-static-top{z-index:1000;border-width:0 0 1px}.w3eden .navbar-fixed-bottom,.w3eden .navbar-fixed-top{position:fixed;right:0;left:0;z-index:1030}.w3eden .navbar-fixed-top{top:0;border-width:0 0 1px}.w3eden .navbar-fixed-bottom{bottom:0;margin-bottom:0;border-width:1px 0 0}.w3eden .navbar-brand{float:left;height:50px;padding:15px;font-size:18px;line-height:20px}.w3eden .navbar-brand:focus,.w3eden .navbar-brand:hover{text-decoration:none}.w3eden .navbar-brand>img{display:block}@media (min-width:768px){.w3eden .navbar-fixed-bottom,.w3eden .navbar-fixed-top{border-radius:0}.w3eden .navbar>.container .navbar-brand,.w3eden .navbar>.container-fluid .navbar-brand{margin-left:-15px}}.w3eden .navbar-toggle{position:relative;float:right;padding:9px 10px;margin-top:8px;margin-right:15px;margin-bottom:8px;background-color:transparent;border:1px solid transparent;border-radius:4px}.w3eden .navbar-toggle:focus{outline:0}.w3eden .navbar-toggle .icon-bar{display:block;width:22px;height:2px;border-radius:1px}.w3eden .navbar-toggle .icon-bar+.icon-bar{margin-top:4px}.w3eden .navbar-nav{margin:7.5px -15px}.w3eden .navbar-nav>li>a{padding-top:10px;padding-bottom:10px;line-height:20px}@media (max-width:767px){.w3eden .navbar-nav .open .dropdown-menu{position:static;float:none;width:auto;margin-top:0;background-color:transparent;border:0;-webkit-box-shadow:none;box-shadow:none}.w3eden .navbar-nav .open .dropdown-menu .dropdown-header,.w3eden .navbar-nav .open .dropdown-menu>li>a{padding:5px 15px 5px 25px}.w3eden .navbar-nav .open .dropdown-menu>li>a{line-height:20px}.w3eden .navbar-nav .open .dropdown-menu>li>a:focus,.w3eden .navbar-nav .open .dropdown-menu>li>a:hover{background-image:none}}.w3eden .progress-bar-striped,.w3eden .progress-striped .progress-bar,.w3eden .progress-striped .progress-bar-success{background-image:-webkit-linear-gradient(45deg,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);background-image:-o-linear-gradient(45deg,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)}@media (min-width:768px){.w3eden .navbar-toggle{display:none}.w3eden .navbar-nav{float:left;margin:0}.w3eden .navbar-nav>li{float:left}.w3eden .navbar-nav>li>a{padding-top:15px;padding-bottom:15px}}.w3eden .navbar-form{padding:10px 15px;border-top:1px solid transparent;border-bottom:1px solid transparent;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 1px 0 rgba(255,255,255,.1);box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 1px 0 rgba(255,255,255,.1);margin:8px -15px}@media (min-width:768px){.w3eden .navbar-form .form-control-static,.w3eden .navbar-form .form-group{display:inline-block}.w3eden .navbar-form .control-label,.w3eden .navbar-form .form-group{margin-bottom:0;vertical-align:middle}.w3eden .navbar-form .form-control{display:inline-block;width:auto;vertical-align:middle}.w3eden .navbar-form .input-group{display:inline-table;vertical-align:middle}.w3eden .navbar-form .input-group .form-control,.w3eden .navbar-form .input-group .input-group-addon,.w3eden .navbar-form .input-group .input-group-btn{width:auto}.w3eden .navbar-form .input-group>.form-control{width:100%}.w3eden .navbar-form .checkbox,.w3eden .navbar-form .radio{display:inline-block;margin-top:0;margin-bottom:0;vertical-align:middle}.w3eden .navbar-form .checkbox label,.w3eden .navbar-form .radio label{padding-left:0}.w3eden .navbar-form .checkbox input[type=checkbox],.w3eden .navbar-form .radio input[type=radio]{position:relative;margin-left:0}.w3eden .navbar-form .has-feedback .form-control-feedback{top:0}.w3eden .navbar-form{width:auto;padding-top:0;padding-bottom:0;margin-right:0;margin-left:0;border:0;-webkit-box-shadow:none;box-shadow:none}}.w3eden .breadcrumb>li,.w3eden .pagination{display:inline-block}.w3eden .btn .badge,.w3eden .btn .label{top:-1px;position:relative}@media (max-width:767px){.w3eden .navbar-form .form-group{margin-bottom:5px}.w3eden .navbar-form .form-group:last-child{margin-bottom:0}}.w3eden .navbar-nav>li>.dropdown-menu{margin-top:0;border-top-left-radius:0;border-top-right-radius:0}.w3eden .navbar-fixed-bottom .navbar-nav>li>.dropdown-menu{margin-bottom:0;border-radius:4px 4px 0 0}.w3eden .navbar-btn{margin-top:8px;margin-bottom:8px}.w3eden .navbar-btn.btn-sm{margin-top:10px;margin-bottom:10px}.w3eden .navbar-btn.btn-xs{margin-top:14px;margin-bottom:14px}.w3eden .navbar-text{margin-top:15px;margin-bottom:15px}@media (min-width:768px){.w3eden .navbar-text{float:left;margin-right:15px;margin-left:15px}.w3eden .navbar-left{float:left!important}.w3eden .navbar-right{float:right!important;margin-right:-15px}.w3eden .navbar-right~.navbar-right{margin-right:0}}.w3eden .navbar-default{background-color:#f8f8f8;border-color:#e7e7e7}.w3eden .navbar-default .navbar-brand{color:#777}.w3eden .navbar-default .navbar-brand:focus,.w3eden .navbar-default .navbar-brand:hover{color:#5e5e5e;background-color:transparent}.w3eden .navbar-default .navbar-nav>li>a,.w3eden .navbar-default .navbar-text{color:#777}.w3eden .navbar-default .navbar-nav>li>a:focus,.w3eden .navbar-default .navbar-nav>li>a:hover{color:#333;background-color:transparent}.w3eden .navbar-default .navbar-nav>.active>a,.w3eden .navbar-default .navbar-nav>.active>a:focus,.w3eden .navbar-default .navbar-nav>.active>a:hover{color:#555;background-color:#e7e7e7}.w3eden .navbar-default .navbar-nav>.disabled>a,.w3eden .navbar-default .navbar-nav>.disabled>a:focus,.w3eden .navbar-default .navbar-nav>.disabled>a:hover{color:#ccc;background-color:transparent}.w3eden .navbar-default .navbar-toggle{border-color:#ddd}.w3eden .navbar-default .navbar-toggle:focus,.w3eden .navbar-default .navbar-toggle:hover{background-color:#ddd}.w3eden .navbar-default .navbar-toggle .icon-bar{background-color:#888}.w3eden .navbar-default .navbar-collapse,.w3eden .navbar-default .navbar-form{border-color:#e7e7e7}.w3eden .navbar-default .navbar-nav>.open>a,.w3eden .navbar-default .navbar-nav>.open>a:focus,.w3eden .navbar-default .navbar-nav>.open>a:hover{color:#555;background-color:#e7e7e7}@media (max-width:767px){.w3eden .navbar-default .navbar-nav .open .dropdown-menu>li>a{color:#777}.w3eden .navbar-default .navbar-nav .open .dropdown-menu>li>a:focus,.w3eden .navbar-default .navbar-nav .open .dropdown-menu>li>a:hover{color:#333;background-color:transparent}.w3eden .navbar-default .navbar-nav .open .dropdown-menu>.active>a,.w3eden .navbar-default .navbar-nav .open .dropdown-menu>.active>a:focus,.w3eden .navbar-default .navbar-nav .open .dropdown-menu>.active>a:hover{color:#555;background-color:#e7e7e7}.w3eden .navbar-default .navbar-nav .open .dropdown-menu>.disabled>a,.w3eden .navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:focus,.w3eden .navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:hover{color:#ccc;background-color:transparent}}.w3eden .navbar-default .navbar-link{color:#777}.w3eden .navbar-default .navbar-link:hover{color:#333}.w3eden .navbar-default .btn-link{color:#777}.w3eden .navbar-default .btn-link:focus,.w3eden .navbar-default .btn-link:hover{color:#333}.w3eden .navbar-default .btn-link[disabled]:focus,.w3eden .navbar-default .btn-link[disabled]:hover,.w3eden fieldset[disabled] .navbar-default .btn-link:focus,.w3eden fieldset[disabled] .navbar-default .btn-link:hover{color:#ccc}.w3eden .navbar-inverse{background-color:#222;border-color:#080808}.w3eden .navbar-inverse .navbar-brand{color:#9d9d9d}.w3eden .navbar-inverse .navbar-brand:focus,.w3eden .navbar-inverse .navbar-brand:hover{color:#fff;background-color:transparent}.w3eden .navbar-inverse .navbar-nav>li>a,.w3eden .navbar-inverse .navbar-text{color:#9d9d9d}.w3eden .navbar-inverse .navbar-nav>li>a:focus,.w3eden .navbar-inverse .navbar-nav>li>a:hover{color:#fff;background-color:transparent}.w3eden .navbar-inverse .navbar-nav>.active>a,.w3eden .navbar-inverse .navbar-nav>.active>a:focus,.w3eden .navbar-inverse .navbar-nav>.active>a:hover{color:#fff;background-color:#080808}.w3eden .navbar-inverse .navbar-nav>.disabled>a,.w3eden .navbar-inverse .navbar-nav>.disabled>a:focus,.w3eden .navbar-inverse .navbar-nav>.disabled>a:hover{color:#444;background-color:transparent}.w3eden .navbar-inverse .navbar-toggle{border-color:#333}.w3eden .navbar-inverse .navbar-toggle:focus,.w3eden .navbar-inverse .navbar-toggle:hover{background-color:#333}.w3eden .navbar-inverse .navbar-toggle .icon-bar{background-color:#fff}.w3eden .navbar-inverse .navbar-collapse,.w3eden .navbar-inverse .navbar-form{border-color:#101010}.w3eden .navbar-inverse .navbar-nav>.open>a,.w3eden .navbar-inverse .navbar-nav>.open>a:focus,.w3eden .navbar-inverse .navbar-nav>.open>a:hover{color:#fff;background-color:#080808}@media (max-width:767px){.w3eden .navbar-inverse .navbar-nav .open .dropdown-menu>.dropdown-header{border-color:#080808}.w3eden .navbar-inverse .navbar-nav .open .dropdown-menu .divider{background-color:#080808}.w3eden .navbar-inverse .navbar-nav .open .dropdown-menu>li>a{color:#9d9d9d}.w3eden .navbar-inverse .navbar-nav .open .dropdown-menu>li>a:focus,.w3eden .navbar-inverse .navbar-nav .open .dropdown-menu>li>a:hover{color:#fff;background-color:transparent}.w3eden .navbar-inverse .navbar-nav .open .dropdown-menu>.active>a,.w3eden .navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:focus,.w3eden .navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:hover{color:#fff;background-color:#080808}.w3eden .navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a,.w3eden .navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:focus,.w3eden .navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:hover{color:#444;background-color:transparent}}.w3eden .navbar-inverse .navbar-link{color:#9d9d9d}.w3eden .navbar-inverse .navbar-link:hover{color:#fff}.w3eden .navbar-inverse .btn-link{color:#9d9d9d}.w3eden .navbar-inverse .btn-link:focus,.w3eden .navbar-inverse .btn-link:hover{color:#fff}.w3eden .navbar-inverse .btn-link[disabled]:focus,.w3eden .navbar-inverse .btn-link[disabled]:hover,.w3eden fieldset[disabled] .navbar-inverse .btn-link:focus,.w3eden fieldset[disabled] .navbar-inverse .btn-link:hover{color:#444}.w3eden .breadcrumb{padding:8px 15px;margin-bottom:20px;list-style:none;background-color:#f5f5f5;border-radius:4px}.w3eden .breadcrumb>li+li:before{padding:0 5px;color:#ccc;content:"/\00a0"}.w3eden .breadcrumb>.active{color:#777}.w3eden .pagination{padding-left:0;margin:20px 0;border-radius:4px}.w3eden .pager li,.w3eden .pagination>li{display:inline}.w3eden .pagination>li>a,.w3eden .pagination>li>span{position:relative;float:left;padding:6px 12px;margin-left:-1px;line-height:1.42857143;color:#337ab7;text-decoration:none;background-color:#fff;border:1px solid #ddd}.w3eden .badge,.w3eden .label{font-weight:700;line-height:1;white-space:nowrap;vertical-align:baseline;text-align:center}.w3eden .pagination>li:first-child>a,.w3eden .pagination>li:first-child>span{margin-left:0;border-top-left-radius:4px;border-bottom-left-radius:4px}.w3eden .pagination>li:last-child>a,.w3eden .pagination>li:last-child>span{border-top-right-radius:4px;border-bottom-right-radius:4px}.w3eden .pagination>li>a:focus,.w3eden .pagination>li>a:hover,.w3eden .pagination>li>span:focus,.w3eden .pagination>li>span:hover{color:#23527c;background-color:#eee;border-color:#ddd}.w3eden .pagination>.active>a,.w3eden .pagination>.active>a:focus,.w3eden .pagination>.active>a:hover,.w3eden .pagination>.active>span,.w3eden .pagination>.active>span:focus,.w3eden .pagination>.active>span:hover{z-index:2;color:#fff;cursor:default;background-color:#337ab7;border-color:#337ab7}.w3eden .pagination>.disabled>a,.w3eden .pagination>.disabled>a:focus,.w3eden .pagination>.disabled>a:hover,.w3eden .pagination>.disabled>span,.w3eden .pagination>.disabled>span:focus,.w3eden .pagination>.disabled>span:hover{color:#777;cursor:not-allowed;background-color:#fff;border-color:#ddd}.w3eden .pagination-lg>li>a,.w3eden .pagination-lg>li>span{padding:10px 16px;font-size:18px}.w3eden .pagination-lg>li:first-child>a,.w3eden .pagination-lg>li:first-child>span{border-top-left-radius:6px;border-bottom-left-radius:6px}.w3eden .pagination-lg>li:last-child>a,.w3eden .pagination-lg>li:last-child>span{border-top-right-radius:6px;border-bottom-right-radius:6px}.w3eden .pagination-sm>li>a,.w3eden .pagination-sm>li>span{padding:5px 10px;font-size:12px}.w3eden .pagination-sm>li:first-child>a,.w3eden .pagination-sm>li:first-child>span{border-top-left-radius:3px;border-bottom-left-radius:3px}.w3eden .pagination-sm>li:last-child>a,.w3eden .pagination-sm>li:last-child>span{border-top-right-radius:3px;border-bottom-right-radius:3px}.w3eden .pager{padding-left:0;margin:20px 0;text-align:center;list-style:none}.w3eden .pager li>a,.w3eden .pager li>span{display:inline-block;padding:5px 14px;background-color:#fff;border:1px solid #ddd;border-radius:15px}.w3eden .pager li>a:focus,.w3eden .pager li>a:hover{text-decoration:none;background-color:#eee}.w3eden .pager .next>a,.w3eden .pager .next>span{float:right}.w3eden .pager .previous>a,.w3eden .pager .previous>span{float:left}.w3eden .pager .disabled>a,.w3eden .pager .disabled>a:focus,.w3eden .pager .disabled>a:hover,.w3eden .pager .disabled>span{color:#777;cursor:not-allowed;background-color:#fff}.w3eden a.badge:focus,.w3eden a.badge:hover,.w3eden a.label:focus,.w3eden a.label:hover{color:#fff;cursor:pointer;text-decoration:none}.w3eden .label{display:inline;padding:.2em .6em .3em;font-size:75%;color:#fff;border-radius:.25em}.w3eden .label:empty{display:none}.w3eden .label-default{background-color:#777}.w3eden .label-default[href]:focus,.w3eden .label-default[href]:hover{background-color:#5e5e5e}.w3eden .label-primary{background-color:#337ab7}.w3eden .label-primary[href]:focus,.w3eden .label-primary[href]:hover{background-color:#286090}.w3eden .label-success{background-color:#5cb85c}.w3eden .label-success[href]:focus,.w3eden .label-success[href]:hover{background-color:#449d44}.w3eden .label-info{background-color:#5bc0de}.w3eden .label-info[href]:focus,.w3eden .label-info[href]:hover{background-color:#31b0d5}.w3eden .label-warning{background-color:#f0ad4e}.w3eden .label-warning[href]:focus,.w3eden .label-warning[href]:hover{background-color:#ec971f}.w3eden .label-danger{background-color:#d9534f}.w3eden .label-danger[href]:focus,.w3eden .label-danger[href]:hover{background-color:#c9302c}.w3eden .badge{display:inline-block;min-width:10px;padding:3px 7px;font-size:12px;color:#fff;background-color:#777;border-radius:10px}.w3eden .badge:empty{display:none}.w3eden .btn-group-xs>.btn .badge,.w3eden .btn-xs .badge{top:0;padding:1px 5px}.w3eden .list-group-item.active>.badge,.w3eden .nav-pills>.active>a>.badge{color:#337ab7;background-color:#fff}.w3eden .list-group-item>.badge{float:right}.w3eden .list-group-item>.badge+.badge{margin-right:5px}.w3eden .nav-pills>li>a>.badge{margin-left:3px}.w3eden .jumbotron{padding:30px 15px;margin-bottom:30px;color:inherit;background-color:#eee}.w3eden .jumbotron .h1,.w3eden .jumbotron h1{color:inherit}.w3eden .jumbotron p{margin-bottom:15px;font-size:21px;font-weight:200}.w3eden .alert .alert-link,.w3eden .close{font-weight:700}.w3eden .jumbotron>hr{border-top-color:#d5d5d5}.w3eden .container .jumbotron,.w3eden .container-fluid .jumbotron{border-radius:6px}.w3eden .jumbotron .container{max-width:100%}@media screen and (min-width:768px){.w3eden .jumbotron{padding:48px 0}.w3eden .container .jumbotron,.w3eden .container-fluid .jumbotron{padding-right:60px;padding-left:60px}.w3eden .jumbotron .h1,.w3eden .jumbotron h1{font-size:63px}}.w3eden .thumbnail{display:block;padding:4px;margin-bottom:20px;line-height:1.42857143;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:border .2s ease-in-out;-o-transition:border .2s ease-in-out;transition:border .2s ease-in-out}.w3eden .thumbnail a>img,.w3eden .thumbnail>img{margin-right:auto;margin-left:auto}.w3eden a.thumbnail.active,.w3eden a.thumbnail:focus,.w3eden a.thumbnail:hover{border-color:#337ab7}.w3eden .thumbnail .caption{padding:9px;color:#333}.w3eden .alert{padding:15px;margin-bottom:20px;border:1px solid transparent;border-radius:4px}.w3eden .alert h4{margin-top:0;color:inherit}.w3eden .alert>p,.w3eden .alert>ul{margin-bottom:0}.w3eden .alert>p+p{margin-top:5px}.w3eden .alert-dismissable,.w3eden .alert-dismissible{padding-right:35px}.w3eden .alert-dismissable .close,.w3eden .alert-dismissible .close{position:relative;top:-2px;right:-21px;color:inherit}.w3eden .alert-success{color:#3c763d;background-color:#dff0d8;border-color:#d6e9c6}.w3eden .alert-success hr{border-top-color:#c9e2b3}.w3eden .alert-success .alert-link{color:#2b542c}.w3eden .alert-info{color:#31708f;background-color:#d9edf7;border-color:#bce8f1}.w3eden .alert-info hr{border-top-color:#a6e1ec}.w3eden .alert-info .alert-link{color:#245269}.w3eden .alert-warning{color:#8a6d3b;background-color:#fcf8e3;border-color:#faebcc}.w3eden .alert-warning hr{border-top-color:#f7e1b5}.w3eden .alert-warning .alert-link{color:#66512c}.w3eden .alert-danger{color:#a94442;background-color:#f2dede;border-color:#ebccd1}.w3eden .alert-danger hr{border-top-color:#e4b9c0}.w3eden .alert-danger .alert-link{color:#843534}@-webkit-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-o-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}.w3eden .progress{height:20px;margin-bottom:20px;overflow:hidden;background-color:#f5f5f5;border-radius:4px;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);box-shadow:inset 0 1px 2px rgba(0,0,0,.1)}.w3eden .progress-bar{float:left;width:0;height:100%;font-size:12px;line-height:20px;color:#fff;text-align:center;background-color:#337ab7;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);-webkit-transition:width .6s ease;-o-transition:width .6s ease;transition:width .6s ease}.w3eden .progress-bar-striped,.w3eden .progress-striped .progress-bar{background-image:linear-gradient(45deg,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);-webkit-background-size:40px 40px;background-size:40px 40px}.w3eden .progress-bar.active,.w3eden .progress.active .progress-bar{-webkit-animation:progress-bar-stripes 2s linear infinite;-o-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.w3eden .progress-bar-success{background-color:#5cb85c}.w3eden .progress-striped .progress-bar-success{background-image:linear-gradient(45deg,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)}.w3eden .progress-striped .progress-bar-info,.w3eden .progress-striped .progress-bar-warning{background-image:-webkit-linear-gradient(45deg,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);background-image:-o-linear-gradient(45deg,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)}.w3eden .progress-bar-info{background-color:#5bc0de}.w3eden .progress-striped .progress-bar-info{background-image:linear-gradient(45deg,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)}.w3eden .progress-bar-warning{background-color:#f0ad4e}.w3eden .progress-striped .progress-bar-warning{background-image:linear-gradient(45deg,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)}.w3eden .progress-bar-danger{background-color:#d9534f}.w3eden .progress-striped .progress-bar-danger{background-image:-webkit-linear-gradient(45deg,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);background-image:-o-linear-gradient(45deg,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);background-image:linear-gradient(45deg,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)}.w3eden .media{margin-top:15px}.w3eden .media:first-child{margin-top:0}.w3eden .media,.w3eden .media-body{overflow:hidden;zoom:1}.w3eden .media-body{width:10000px}.w3eden .media-object{display:block}.w3eden .media-right,.w3eden .media>.pull-right{padding-left:10px}.w3eden .media-left,.w3eden .media>.pull-left{padding-right:10px}.w3eden .media-body,.w3eden .media-left,.w3eden .media-right{display:table-cell;vertical-align:top}.w3eden .media-middle{vertical-align:middle}.w3eden .media-bottom{vertical-align:bottom}.w3eden .media-heading{margin-top:0;margin-bottom:5px}.w3eden .media-list{padding-left:0;list-style:none}.w3eden .list-group{padding-left:0;margin-bottom:20px}.w3eden .list-group-item{position:relative;display:block;padding:10px 15px;margin-bottom:-1px;background-color:#fff;border:1px solid #ddd}.w3eden .list-group-item:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.w3eden .list-group-item:last-child{margin-bottom:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.w3eden a.list-group-item{color:#555}.w3eden a.list-group-item .list-group-item-heading{color:#333}.w3eden a.list-group-item:focus,.w3eden a.list-group-item:hover{color:#555;text-decoration:none;background-color:#f5f5f5}.w3eden .list-group-item.disabled,.w3eden .list-group-item.disabled:focus,.w3eden .list-group-item.disabled:hover{color:#777;cursor:not-allowed;background-color:#eee}.w3eden .list-group-item.disabled .list-group-item-heading,.w3eden .list-group-item.disabled:focus .list-group-item-heading,.w3eden .list-group-item.disabled:hover .list-group-item-heading{color:inherit}.w3eden .list-group-item.disabled .list-group-item-text,.w3eden .list-group-item.disabled:focus .list-group-item-text,.w3eden .list-group-item.disabled:hover .list-group-item-text{color:#777}.w3eden .list-group-item.active,.w3eden .list-group-item.active:focus,.w3eden .list-group-item.active:hover{z-index:2;color:#fff;background-color:#337ab7;border-color:#337ab7}.w3eden .list-group-item.active .list-group-item-heading,.w3eden .list-group-item.active .list-group-item-heading>.small,.w3eden .list-group-item.active .list-group-item-heading>small,.w3eden .list-group-item.active:focus .list-group-item-heading,.w3eden .list-group-item.active:focus .list-group-item-heading>.small,.w3eden .list-group-item.active:focus .list-group-item-heading>small,.w3eden .list-group-item.active:hover .list-group-item-heading,.w3eden .list-group-item.active:hover .list-group-item-heading>.small,.w3eden .list-group-item.active:hover .list-group-item-heading>small{color:inherit}.w3eden .list-group-item.active .list-group-item-text,.w3eden .list-group-item.active:focus .list-group-item-text,.w3eden .list-group-item.active:hover .list-group-item-text{color:#c7ddef}.w3eden .list-group-item-success{color:#3c763d;background-color:#dff0d8}.w3eden a.list-group-item-success{color:#3c763d}.w3eden a.list-group-item-success .list-group-item-heading{color:inherit}.w3eden a.list-group-item-success:focus,.w3eden a.list-group-item-success:hover{color:#3c763d;background-color:#d0e9c6}.w3eden a.list-group-item-success.active,.w3eden a.list-group-item-success.active:focus,.w3eden a.list-group-item-success.active:hover{color:#fff;background-color:#3c763d;border-color:#3c763d}.w3eden .list-group-item-info{color:#31708f;background-color:#d9edf7}.w3eden a.list-group-item-info{color:#31708f}.w3eden a.list-group-item-info .list-group-item-heading{color:inherit}.w3eden a.list-group-item-info:focus,.w3eden a.list-group-item-info:hover{color:#31708f;background-color:#c4e3f3}.w3eden a.list-group-item-info.active,.w3eden a.list-group-item-info.active:focus,.w3eden a.list-group-item-info.active:hover{color:#fff;background-color:#31708f;border-color:#31708f}.w3eden .list-group-item-warning{color:#8a6d3b;background-color:#fcf8e3}.w3eden a.list-group-item-warning{color:#8a6d3b}.w3eden a.list-group-item-warning .list-group-item-heading{color:inherit}.w3eden a.list-group-item-warning:focus,.w3eden a.list-group-item-warning:hover{color:#8a6d3b;background-color:#faf2cc}.w3eden a.list-group-item-warning.active,.w3eden a.list-group-item-warning.active:focus,.w3eden a.list-group-item-warning.active:hover{color:#fff;background-color:#8a6d3b;border-color:#8a6d3b}.w3eden .list-group-item-danger{color:#a94442;background-color:#f2dede}.w3eden a.list-group-item-danger{color:#a94442}.w3eden a.list-group-item-danger .list-group-item-heading{color:inherit}.w3eden a.list-group-item-danger:focus,.w3eden a.list-group-item-danger:hover{color:#a94442;background-color:#ebcccc}.w3eden a.list-group-item-danger.active,.w3eden a.list-group-item-danger.active:focus,.w3eden a.list-group-item-danger.active:hover{color:#fff;background-color:#a94442;border-color:#a94442}.w3eden .panel-heading>.dropdown .dropdown-toggle,.w3eden .panel-title>.small,.w3eden .panel-title>.small>a,.w3eden .panel-title>a,.w3eden .panel-title>small,.w3eden .panel-title>small>a{color:inherit}.w3eden .list-group-item-heading{margin-top:0;margin-bottom:5px}.w3eden .list-group-item-text{margin-bottom:0;line-height:1.3}.w3eden .panel{margin-bottom:20px;background-color:#fff;border:1px solid transparent;border-radius:4px;-webkit-box-shadow:0 1px 1px rgba(0,0,0,.05);box-shadow:0 1px 1px rgba(0,0,0,.05)}.w3eden .panel-title,.w3eden .panel>.list-group,.w3eden .panel>.panel-collapse>.list-group,.w3eden .panel>.panel-collapse>.table,.w3eden .panel>.table,.w3eden .panel>.table-responsive>.table{margin-bottom:0}.w3eden .panel-body{padding:15px}.w3eden .panel-heading{padding:10px 15px;border-bottom:1px solid transparent;border-top-left-radius:3px;border-top-right-radius:3px}.w3eden .panel-title{margin-top:0;font-size:16px;color:inherit}.w3eden .panel-footer{padding:10px 15px;background-color:#f5f5f5;border-top:1px solid #ddd;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.w3eden .panel>.list-group .list-group-item,.w3eden .panel>.panel-collapse>.list-group .list-group-item{border-width:1px 0;border-radius:0}.w3eden .panel-group .panel-heading,.w3eden .panel>.table-bordered>tbody>tr:first-child>td,.w3eden .panel>.table-bordered>tbody>tr:first-child>th,.w3eden .panel>.table-bordered>tbody>tr:last-child>td,.w3eden .panel>.table-bordered>tbody>tr:last-child>th,.w3eden .panel>.table-bordered>tfoot>tr:last-child>td,.w3eden .panel>.table-bordered>tfoot>tr:last-child>th,.w3eden .panel>.table-bordered>thead>tr:first-child>td,.w3eden .panel>.table-bordered>thead>tr:first-child>th,.w3eden .panel>.table-responsive>.table-bordered>tbody>tr:first-child>td,.w3eden .panel>.table-responsive>.table-bordered>tbody>tr:first-child>th,.w3eden .panel>.table-responsive>.table-bordered>tbody>tr:last-child>td,.w3eden .panel>.table-responsive>.table-bordered>tbody>tr:last-child>th,.w3eden .panel>.table-responsive>.table-bordered>tfoot>tr:last-child>td,.w3eden .panel>.table-responsive>.table-bordered>tfoot>tr:last-child>th,.w3eden .panel>.table-responsive>.table-bordered>thead>tr:first-child>td,.w3eden .panel>.table-responsive>.table-bordered>thead>tr:first-child>th{border-bottom:0}.w3eden .panel>.list-group:first-child .list-group-item:first-child,.w3eden .panel>.panel-collapse>.list-group:first-child .list-group-item:first-child{border-top:0;border-top-left-radius:3px;border-top-right-radius:3px}.w3eden .panel>.list-group:last-child .list-group-item:last-child,.w3eden .panel>.panel-collapse>.list-group:last-child .list-group-item:last-child{border-bottom:0;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.w3eden .list-group+.panel-footer,.w3eden .panel-heading+.list-group .list-group-item:first-child{border-top-width:0}.w3eden .panel>.panel-collapse>.table caption,.w3eden .panel>.table caption,.w3eden .panel>.table-responsive>.table caption{padding-right:15px;padding-left:15px}.w3eden .panel>.table-responsive:first-child>.table:first-child,.w3eden .panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child,.w3eden .panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child,.w3eden .panel>.table:first-child,.w3eden .panel>.table:first-child>tbody:first-child>tr:first-child,.w3eden .panel>.table:first-child>thead:first-child>tr:first-child{border-top-left-radius:3px;border-top-right-radius:3px}.w3eden .panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:first-child,.w3eden .panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:first-child,.w3eden .panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:first-child,.w3eden .panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:first-child,.w3eden .panel>.table:first-child>tbody:first-child>tr:first-child td:first-child,.w3eden .panel>.table:first-child>tbody:first-child>tr:first-child th:first-child,.w3eden .panel>.table:first-child>thead:first-child>tr:first-child td:first-child,.w3eden .panel>.table:first-child>thead:first-child>tr:first-child th:first-child{border-top-left-radius:3px}.w3eden .panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:last-child,.w3eden .panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:last-child,.w3eden .panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:last-child,.w3eden .panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:last-child,.w3eden .panel>.table:first-child>tbody:first-child>tr:first-child td:last-child,.w3eden .panel>.table:first-child>tbody:first-child>tr:first-child th:last-child,.w3eden .panel>.table:first-child>thead:first-child>tr:first-child td:last-child,.w3eden .panel>.table:first-child>thead:first-child>tr:first-child th:last-child{border-top-right-radius:3px}.w3eden .panel>.table-responsive:last-child>.table:last-child,.w3eden .panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child,.w3eden .panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child,.w3eden .panel>.table:last-child,.w3eden .panel>.table:last-child>tbody:last-child>tr:last-child,.w3eden .panel>.table:last-child>tfoot:last-child>tr:last-child{border-bottom-right-radius:3px;border-bottom-left-radius:3px}.w3eden .panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:first-child,.w3eden .panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:first-child,.w3eden .panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.w3eden .panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:first-child,.w3eden .panel>.table:last-child>tbody:last-child>tr:last-child td:first-child,.w3eden .panel>.table:last-child>tbody:last-child>tr:last-child th:first-child,.w3eden .panel>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.w3eden .panel>.table:last-child>tfoot:last-child>tr:last-child th:first-child{border-bottom-left-radius:3px}.w3eden .panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:last-child,.w3eden .panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:last-child,.w3eden .panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.w3eden .panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:last-child,.w3eden .panel>.table:last-child>tbody:last-child>tr:last-child td:last-child,.w3eden .panel>.table:last-child>tbody:last-child>tr:last-child th:last-child,.w3eden .panel>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.w3eden .panel>.table:last-child>tfoot:last-child>tr:last-child th:last-child{border-bottom-right-radius:3px}.w3eden .panel>.panel-body+.table,.w3eden .panel>.panel-body+.table-responsive,.w3eden .panel>.table+.panel-body,.w3eden .panel>.table-responsive+.panel-body{border-top:1px solid #ddd}.w3eden .panel>.table>tbody:first-child>tr:first-child td,.w3eden .panel>.table>tbody:first-child>tr:first-child th{border-top:0}.w3eden .panel>.table-bordered,.w3eden .panel>.table-responsive>.table-bordered{border:0}.w3eden .panel>.table-bordered>tbody>tr>td:first-child,.w3eden .panel>.table-bordered>tbody>tr>th:first-child,.w3eden .panel>.table-bordered>tfoot>tr>td:first-child,.w3eden .panel>.table-bordered>tfoot>tr>th:first-child,.w3eden .panel>.table-bordered>thead>tr>td:first-child,.w3eden .panel>.table-bordered>thead>tr>th:first-child,.w3eden .panel>.table-responsive>.table-bordered>tbody>tr>td:first-child,.w3eden .panel>.table-responsive>.table-bordered>tbody>tr>th:first-child,.w3eden .panel>.table-responsive>.table-bordered>tfoot>tr>td:first-child,.w3eden .panel>.table-responsive>.table-bordered>tfoot>tr>th:first-child,.w3eden .panel>.table-responsive>.table-bordered>thead>tr>td:first-child,.w3eden .panel>.table-responsive>.table-bordered>thead>tr>th:first-child{border-left:0}.w3eden .panel>.table-bordered>tbody>tr>td:last-child,.w3eden .panel>.table-bordered>tbody>tr>th:last-child,.w3eden .panel>.table-bordered>tfoot>tr>td:last-child,.w3eden .panel>.table-bordered>tfoot>tr>th:last-child,.w3eden .panel>.table-bordered>thead>tr>td:last-child,.w3eden .panel>.table-bordered>thead>tr>th:last-child,.w3eden .panel>.table-responsive>.table-bordered>tbody>tr>td:last-child,.w3eden .panel>.table-responsive>.table-bordered>tbody>tr>th:last-child,.w3eden .panel>.table-responsive>.table-bordered>tfoot>tr>td:last-child,.w3eden .panel>.table-responsive>.table-bordered>tfoot>tr>th:last-child,.w3eden .panel>.table-responsive>.table-bordered>thead>tr>td:last-child,.w3eden .panel>.table-responsive>.table-bordered>thead>tr>th:last-child{border-right:0}.w3eden .panel>.table-responsive{margin-bottom:0;border:0}.w3eden .panel-group{margin-bottom:20px}.w3eden .panel-group .panel{margin-bottom:0;border-radius:4px}.w3eden .panel-group .panel+.panel{margin-top:5px}.w3eden .panel-group .panel-heading+.panel-collapse>.list-group,.w3eden .panel-group .panel-heading+.panel-collapse>.panel-body{border-top:1px solid #ddd}.w3eden .panel-group .panel-footer{border-top:0}.w3eden .panel-group .panel-footer+.panel-collapse .panel-body{border-bottom:1px solid #ddd}.w3eden .panel-default{border-color:#ddd}.w3eden .panel-default>.panel-heading{color:#333;background-color:#f5f5f5;border-color:#ddd}.w3eden .panel-default>.panel-heading+.panel-collapse>.panel-body{border-top-color:#ddd}.w3eden .panel-default>.panel-heading .badge{color:#f5f5f5;background-color:#333}.w3eden .panel-default>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#ddd}.w3eden .panel-primary{border-color:#337ab7}.w3eden .panel-primary>.panel-heading{color:#fff;background-color:#337ab7;border-color:#337ab7}.w3eden .panel-primary>.panel-heading+.panel-collapse>.panel-body{border-top-color:#337ab7}.w3eden .panel-primary>.panel-heading .badge{color:#337ab7;background-color:#fff}.w3eden .panel-primary>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#337ab7}.w3eden .panel-success{border-color:#d6e9c6}.w3eden .panel-success>.panel-heading{color:#3c763d;background-color:#dff0d8;border-color:#d6e9c6}.w3eden .panel-success>.panel-heading+.panel-collapse>.panel-body{border-top-color:#d6e9c6}.w3eden .panel-success>.panel-heading .badge{color:#dff0d8;background-color:#3c763d}.w3eden .panel-success>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#d6e9c6}.w3eden .panel-info{border-color:#bce8f1}.w3eden .panel-info>.panel-heading{color:#31708f;background-color:#d9edf7;border-color:#bce8f1}.w3eden .panel-info>.panel-heading+.panel-collapse>.panel-body{border-top-color:#bce8f1}.w3eden .panel-info>.panel-heading .badge{color:#d9edf7;background-color:#31708f}.w3eden .panel-info>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#bce8f1}.w3eden .panel-warning{border-color:#faebcc}.w3eden .panel-warning>.panel-heading{color:#8a6d3b;background-color:#fcf8e3;border-color:#faebcc}.w3eden .panel-warning>.panel-heading+.panel-collapse>.panel-body{border-top-color:#faebcc}.w3eden .panel-warning>.panel-heading .badge{color:#fcf8e3;background-color:#8a6d3b}.w3eden .panel-warning>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#faebcc}.w3eden .panel-danger{border-color:#ebccd1}.w3eden .panel-danger>.panel-heading{color:#a94442;background-color:#f2dede;border-color:#ebccd1}.w3eden .panel-danger>.panel-heading+.panel-collapse>.panel-body{border-top-color:#ebccd1}.w3eden .panel-danger>.panel-heading .badge{color:#f2dede;background-color:#a94442}.w3eden .panel-danger>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#ebccd1}.w3eden .embed-responsive{position:relative;display:block;height:0;padding:0;overflow:hidden}.w3eden .embed-responsive .embed-responsive-item,.w3eden .embed-responsive embed,.w3eden .embed-responsive iframe,.w3eden .embed-responsive object,.w3eden .embed-responsive video{position:absolute;top:0;bottom:0;left:0;width:100%;height:100%;border:0}.w3eden .embed-responsive-16by9{padding-bottom:56.25%}.w3eden .embed-responsive-4by3{padding-bottom:75%}.w3eden .well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.05);box-shadow:inset 0 1px 1px rgba(0,0,0,.05)}.w3eden .well blockquote{border-color:#ddd;border-color:rgba(0,0,0,.15)}.w3eden .well-lg{padding:24px;border-radius:6px}.w3eden .well-sm{padding:9px;border-radius:3px}.w3eden .close{float:right;font-size:21px;line-height:1;color:#000;text-shadow:0 1px 0 #fff;filter:alpha(opacity=20);opacity:.2}.w3eden .popover,.w3eden .tooltip{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:400}.w3eden .carousel-caption,.w3eden .carousel-control{text-shadow:0 1px 2px rgba(0,0,0,.6);text-align:center}.w3eden .close:focus,.w3eden .close:hover{color:#000;text-decoration:none;cursor:pointer;filter:alpha(opacity=50);opacity:.5}.w3eden button.close{-webkit-appearance:none;padding:0;cursor:pointer;background:0 0;border:0}.w3eden .modal-open{overflow:hidden}.w3eden .modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1050;display:none;overflow:hidden;-webkit-overflow-scrolling:touch;outline:0}.w3eden .modal.fade .modal-dialog{-webkit-transition:-webkit-transform .3s ease-out;-o-transition:-o-transform .3s ease-out;transition:transform .3s ease-out;-webkit-transform:translate(0,-25%);-ms-transform:translate(0,-25%);-o-transform:translate(0,-25%);transform:translate(0,-25%)}.w3eden .modal.in .modal-dialog{-webkit-transform:translate(0,0);-ms-transform:translate(0,0);-o-transform:translate(0,0);transform:translate(0,0)}.w3eden .modal-open .modal{overflow-x:hidden;overflow-y:auto}.w3eden .modal-dialog{position:relative;width:auto;margin:10px}.w3eden .modal-content{position:relative;background-color:#fff;-webkit-background-clip:padding-box;background-clip:padding-box;border:1px solid #999;border:1px solid rgba(0,0,0,.2);border-radius:6px;outline:0;-webkit-box-shadow:0 3px 9px rgba(0,0,0,.5);box-shadow:0 3px 9px rgba(0,0,0,.5)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;background-color:#000}.modal-backdrop.fade{filter:alpha(opacity=0);opacity:0}.modal-backdrop.in{filter:alpha(opacity=50);opacity:.5}.w3eden .modal-header{min-height:16.43px;padding:15px;border-bottom:1px solid #e5e5e5}.w3eden .modal-header .close{margin-top:-2px}.w3eden .modal-title{margin:0;line-height:1.42857143}.w3eden .modal-body{position:relative;padding:15px}.w3eden .modal-footer{padding:15px;text-align:right;border-top:1px solid #e5e5e5}.w3eden .modal-footer .btn+.btn{margin-bottom:0;margin-left:5px}.w3eden .modal-footer .btn-group .btn+.btn{margin-left:-1px}.w3eden .modal-footer .btn-block+.btn-block{margin-left:0}.w3eden .modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@media (min-width:768px){.w3eden .modal-dialog{width:600px;margin:100px auto}.w3eden .modal-content{-webkit-box-shadow:0 5px 15px rgba(0,0,0,.5);box-shadow:0 5px 15px rgba(0,0,0,.5)}.w3eden .modal-sm{width:300px}}@media (min-width:992px){.w3eden .modal-lg{width:900px}}.w3eden .tooltip{position:absolute;z-index:1070;display:block;font-size:12px;line-height:1.4;filter:alpha(opacity=0);opacity:0}.w3eden .tooltip.in{filter:alpha(opacity=90);opacity:.9}.w3eden .tooltip.top{padding:5px 0;margin-top:-3px}.w3eden .tooltip.right{padding:0 5px;margin-left:3px}.w3eden .tooltip.bottom{padding:5px 0;margin-top:3px}.w3eden .tooltip.left{padding:0 5px;margin-left:-3px}.w3eden .tooltip-inner{max-width:200px;padding:6px 12px;color:#fff;text-align:center;text-decoration:none;background-color:#000;border-radius:2px}.w3eden .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.w3eden .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#000}.w3eden .tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#000}.w3eden .tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#000}.w3eden .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#000}.w3eden .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#000}.w3eden .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#000}.w3eden .tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#000}.w3eden .tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#000}.w3eden .popover{position:absolute;top:0;left:0;z-index:1060;display:none;max-width:276px;padding:1px;font-size:14px;line-height:1.42857143;text-align:left;white-space:normal;background-color:#fff;-webkit-background-clip:padding-box;background-clip:padding-box;border:1px solid #ccc;border:1px solid rgba(0,0,0,.2);border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,.2);box-shadow:0 5px 10px rgba(0,0,0,.2)}.w3eden .popover.top{margin-top:-10px}.w3eden .popover.right{margin-left:10px}.w3eden .popover.bottom{margin-top:10px}.w3eden .popover.left{margin-left:-10px}.w3eden .popover-title{padding:8px 14px;margin:0;font-size:14px;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-radius:5px 5px 0 0}.w3eden .popover-content{padding:9px 14px}.w3eden .popover>.arrow,.w3eden .popover>.arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.w3eden .popover>.arrow{border-width:11px}.w3eden .popover>.arrow:after{content:"";border-width:10px}.w3eden .popover.top>.arrow{bottom:-11px;left:50%;margin-left:-11px;border-top-color:#999;border-top-color:rgba(0,0,0,.25);border-bottom-width:0}.w3eden .popover.top>.arrow:after{bottom:1px;margin-left:-10px;content:" ";border-top-color:#fff;border-bottom-width:0}.w3eden .popover.right>.arrow{top:50%;left:-11px;margin-top:-11px;border-right-color:#999;border-right-color:rgba(0,0,0,.25);border-left-width:0}.w3eden .popover.right>.arrow:after{bottom:-10px;left:1px;content:" ";border-right-color:#fff;border-left-width:0}.w3eden .popover.bottom>.arrow{top:-11px;left:50%;margin-left:-11px;border-top-width:0;border-bottom-color:#999;border-bottom-color:rgba(0,0,0,.25)}.w3eden .popover.bottom>.arrow:after{top:1px;margin-left:-10px;content:" ";border-top-width:0;border-bottom-color:#fff}.w3eden .popover.left>.arrow{top:50%;right:-11px;margin-top:-11px;border-right-width:0;border-left-color:#999;border-left-color:rgba(0,0,0,.25)}.w3eden .popover.left>.arrow:after{right:1px;bottom:-10px;content:" ";border-right-width:0;border-left-color:#fff}.w3eden .carousel{position:relative}.w3eden .carousel-inner{position:relative;width:100%;overflow:hidden}.w3eden .carousel-inner>.item{position:relative;display:none;-webkit-transition:.6s ease-in-out left;-o-transition:.6s ease-in-out left;transition:.6s ease-in-out left}.w3eden .carousel-inner>.item>a>img,.w3eden .carousel-inner>.item>img{line-height:1}@media all and (transform-3d),(-webkit-transform-3d){.w3eden .carousel-inner>.item{-webkit-transition:-webkit-transform .6s ease-in-out;-o-transition:-o-transform .6s ease-in-out;transition:transform .6s ease-in-out;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-perspective:1000;perspective:1000}.w3eden .carousel-inner>.item.active.right,.w3eden .carousel-inner>.item.next{left:0;-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}.w3eden .carousel-inner>.item.active.left,.w3eden .carousel-inner>.item.prev{left:0;-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}.w3eden .carousel-inner>.item.active,.w3eden .carousel-inner>.item.next.left,.w3eden .carousel-inner>.item.prev.right{left:0;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}}.w3eden .carousel-inner>.active,.w3eden .carousel-inner>.next,.w3eden .carousel-inner>.prev{display:block}.w3eden .carousel-inner>.active{left:0}.w3eden .carousel-inner>.next,.w3eden .carousel-inner>.prev{position:absolute;top:0;width:100%}.w3eden .carousel-inner>.next{left:100%}.w3eden .carousel-inner>.prev{left:-100%}.w3eden .carousel-inner>.next.left,.w3eden .carousel-inner>.prev.right{left:0}.w3eden .carousel-inner>.active.left{left:-100%}.w3eden .carousel-inner>.active.right{left:100%}.w3eden .carousel-control{position:absolute;top:0;bottom:0;left:0;width:15%;font-size:20px;color:#fff;filter:alpha(opacity=50);opacity:.5}.w3eden .carousel-control.left{background-image:-webkit-linear-gradient(left,rgba(0,0,0,.5) 0,rgba(0,0,0,.0001) 100%);background-image:-o-linear-gradient(left,rgba(0,0,0,.5) 0,rgba(0,0,0,.0001) 100%);background-image:-webkit-gradient(linear,left top,right top,from(rgba(0,0,0,.5)),to(rgba(0,0,0,.0001)));background-image:linear-gradient(to right,rgba(0,0,0,.5) 0,rgba(0,0,0,.0001) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1);background-repeat:repeat-x}.w3eden .carousel-control.right{right:0;left:auto;background-image:-webkit-linear-gradient(left,rgba(0,0,0,.0001) 0,rgba(0,0,0,.5) 100%);background-image:-o-linear-gradient(left,rgba(0,0,0,.0001) 0,rgba(0,0,0,.5) 100%);background-image:-webkit-gradient(linear,left top,right top,from(rgba(0,0,0,.0001)),to(rgba(0,0,0,.5)));background-image:linear-gradient(to right,rgba(0,0,0,.0001) 0,rgba(0,0,0,.5) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1);background-repeat:repeat-x}.w3eden .carousel-control:focus,.w3eden .carousel-control:hover{color:#fff;text-decoration:none;filter:alpha(opacity=90);outline:0;opacity:.9}.w3eden .carousel-control .glyphicon-chevron-left,.w3eden .carousel-control .glyphicon-chevron-right,.w3eden .carousel-control .icon-next,.w3eden .carousel-control .icon-prev{position:absolute;top:50%;z-index:5;display:inline-block}.w3eden .carousel-control .glyphicon-chevron-left,.w3eden .carousel-control .icon-prev{left:50%;margin-left:-10px}.w3eden .carousel-control .glyphicon-chevron-right,.w3eden .carousel-control .icon-next{right:50%;margin-right:-10px}.w3eden .carousel-control .icon-next,.w3eden .carousel-control .icon-prev{width:20px;height:20px;margin-top:-10px;font-family:serif;line-height:1}.w3eden .carousel-control .icon-prev:before{content:'\2039'}.w3eden .carousel-control .icon-next:before{content:'\203a'}.w3eden .carousel-indicators{position:absolute;bottom:10px;left:50%;z-index:15;width:60%;padding-left:0;margin-left:-30%;text-align:center;list-style:none}.w3eden .carousel-indicators li{display:inline-block;width:10px;height:10px;margin:1px;text-indent:-999px;cursor:pointer;background-color:#000\9;background-color:rgba(0,0,0,0);border:1px solid #fff;border-radius:10px}.w3eden .carousel-indicators .active{width:12px;height:12px;margin:0;background-color:#fff}.w3eden .carousel-caption{position:absolute;right:15%;bottom:20px;left:15%;z-index:10;padding-top:20px;padding-bottom:20px;color:#fff}.w3eden .carousel-caption .btn{text-shadow:none}@media screen and (min-width:768px){.w3eden .carousel-control .glyphicon-chevron-left,.w3eden .carousel-control .glyphicon-chevron-right,.w3eden .carousel-control .icon-next,.w3eden .carousel-control .icon-prev{width:30px;height:30px;margin-top:-15px;font-size:30px}.w3eden .carousel-control .glyphicon-chevron-left,.w3eden .carousel-control .icon-prev{margin-left:-15px}.w3eden .carousel-control .glyphicon-chevron-right,.w3eden .carousel-control .icon-next{margin-right:-15px}.w3eden .carousel-caption{right:20%;left:20%;padding-bottom:30px}.w3eden .carousel-indicators{bottom:20px}}.w3eden .btn-group-vertical>.btn-group:after,.w3eden .btn-group-vertical>.btn-group:before,.w3eden .btn-toolbar:after,.w3eden .btn-toolbar:before,.w3eden .clearfix:after,.w3eden .clearfix:before,.w3eden .container-fluid:after,.w3eden .container-fluid:before,.w3eden .container:after,.w3eden .container:before,.w3eden .dl-horizontal dd:after,.w3eden .dl-horizontal dd:before,.w3eden .form-horizontal .form-group:after,.w3eden .form-horizontal .form-group:before,.w3eden .modal-footer:after,.w3eden .modal-footer:before,.w3eden .nav:after,.w3eden .nav:before,.w3eden .navbar-collapse:after,.w3eden .navbar-collapse:before,.w3eden .navbar-header:after,.w3eden .navbar-header:before,.w3eden .navbar:after,.w3eden .navbar:before,.w3eden .pager:after,.w3eden .pager:before,.w3eden .panel-body:after,.w3eden .panel-body:before,.w3eden .row:after,.w3eden .row:before{display:table;content:" "}.w3eden .btn-group-vertical>.btn-group:after,.w3eden .btn-toolbar:after,.w3eden .clearfix:after,.w3eden .container-fluid:after,.w3eden .container:after,.w3eden .dl-horizontal dd:after,.w3eden .form-horizontal .form-group:after,.w3eden .modal-footer:after,.w3eden .nav:after,.w3eden .navbar-collapse:after,.w3eden .navbar-header:after,.w3eden .navbar:after,.w3eden .pager:after,.w3eden .panel-body:after,.w3eden .row:after{clear:both}.w3eden .center-block{display:block;margin-right:auto;margin-left:auto}.w3eden .pull-right{float:right!important}.w3eden .pull-left{float:left!important}.w3eden .hide{display:none!important}.w3eden .show{display:block!important}.w3eden .hidden,.w3eden .visible-lg,.w3eden .visible-lg-block,.w3eden .visible-lg-inline,.w3eden .visible-lg-inline-block,.w3eden .visible-md,.w3eden .visible-md-block,.w3eden .visible-md-inline,.w3eden .visible-md-inline-block,.w3eden .visible-sm,.w3eden .visible-sm-block,.w3eden .visible-sm-inline,.w3eden .visible-sm-inline-block,.w3eden .visible-xs,.w3eden .visible-xs-block,.w3eden .visible-xs-inline,.w3eden .visible-xs-inline-block{display:none!important}.w3eden .invisible{visibility:hidden}.w3eden .text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.w3eden .affix{position:fixed}@-ms-viewport{width:device-width}@media (max-width:767px){.w3eden .visible-xs{display:block!important}.w3eden table.visible-xs{display:table}.w3eden tr.visible-xs{display:table-row!important}.w3eden td.visible-xs,.w3eden th.visible-xs{display:table-cell!important}.w3eden .visible-xs-block{display:block!important}.w3eden .visible-xs-inline{display:inline!important}.w3eden .visible-xs-inline-block{display:inline-block!important}}@media (min-width:768px) and (max-width:991px){.w3eden .visible-sm{display:block!important}.w3eden table.visible-sm{display:table}.w3eden tr.visible-sm{display:table-row!important}.w3eden td.visible-sm,.w3eden th.visible-sm{display:table-cell!important}.w3eden .visible-sm-block{display:block!important}.w3eden .visible-sm-inline{display:inline!important}.w3eden .visible-sm-inline-block{display:inline-block!important}}@media (min-width:992px) and (max-width:1199px){.w3eden .visible-md{display:block!important}.w3eden table.visible-md{display:table}.w3eden tr.visible-md{display:table-row!important}.w3eden td.visible-md,.w3eden th.visible-md{display:table-cell!important}.w3eden .visible-md-block{display:block!important}.w3eden .visible-md-inline{display:inline!important}.w3eden .visible-md-inline-block{display:inline-block!important}}@media (min-width:1200px){.w3eden .visible-lg{display:block!important}.w3eden table.visible-lg{display:table}.w3eden tr.visible-lg{display:table-row!important}.w3eden td.visible-lg,.w3eden th.visible-lg{display:table-cell!important}.w3eden .visible-lg-block{display:block!important}.w3eden .visible-lg-inline{display:inline!important}.w3eden .visible-lg-inline-block{display:inline-block!important}.w3eden .hidden-lg{display:none!important}}@media (max-width:767px){.w3eden .hidden-xs{display:none!important}}@media (min-width:768px) and (max-width:991px){.w3eden .hidden-sm{display:none!important}}@media (min-width:992px) and (max-width:1199px){.w3eden .hidden-md{display:none!important}}.w3eden .visible-print{display:none!important}@media print{.w3eden .visible-print{display:block!important}.w3eden table.visible-print{display:table}.w3eden tr.visible-print{display:table-row!important}.w3eden td.visible-print,.w3eden th.visible-print{display:table-cell!important}}.w3eden .visible-print-block{display:none!important}@media print{.w3eden .visible-print-block{display:block!important}}.w3eden .visible-print-inline{display:none!important}@media print{.w3eden .visible-print-inline{display:inline!important}}.w3eden .visible-print-inline-block{display:none!important}@media print{.w3eden .visible-print-inline-block{display:inline-block!important}.w3eden .hidden-print{display:none!important}}.w3eden .btn{background-image:-webkit-gradient(linear,left top,left bottom,from(rgba(0,0,0,0)),to(rgba(0,0,0,.05)));background-image:-webkit-linear-gradient(rgba(0,0,0,0),rgba(0,0,0,.05));background-image:linear-gradient(rgba(0,0,0,0),rgba(0,0,0,.05));border-radius:.2em}.w3eden .panel th{background-color:#eee!important;border-bottom-width:1px!important}.w3eden .nav-pills a{border-radius:.2em;box-shadow:none!important;font-size:9pt!important}.w3eden .panel-heading{font-weight:700}.w3eden blockquote.alert{font-size:14px;font-weight:300;font-style:italic;border-radius:2px!important}.w3eden .btn-group .btn:first-child:not(:last-child),.w3eden .input-group .form-control:first-child:not(:last-child){border-radius:.2em 0 0 .2em}.w3eden .btn-group .btn:last-child:not(:first-child){border-radius:0 .2em .2em 0}.w3eden .btn span.left-icon{float:left;background:rgba(0,0,0,.16);border-bottom-left-radius:3px;border-right:1px solid rgba(0,0,0,.12);border-top-left-radius:3px;margin-left:-17px;margin-top:-8.5px;padding:8.5px 12px;position:relative;width:40px}
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
assets/css/admin-styles.css CHANGED
@@ -1,4 +1,6 @@
1
  .w3eden h3{ margin: 0; font-size: 10pt; }
 
 
2
  #wpdm-attached-files .w3eden .panel-heading .btn{
3
  font-size: 9px;
4
  }
@@ -91,13 +93,13 @@ a:focus, a:active{ box-shadow: none !important; }
91
 
92
  .w3eden .alert.alert-info{
93
  position: relative;
94
- border: 1px solid #54ADF7 !important;
95
- background: rgba(84, 173, 247, 0.08) !important;
96
  border-radius: 3px;
97
  line-height: 1.5;
98
  }
99
  .w3eden .alert.alert-info, .alert.alert-info *{
100
- color: #54ADF7 !important;
101
  }
102
 
103
  .w3eden .alert.alert-info a{
@@ -106,7 +108,7 @@ a:focus, a:active{ box-shadow: none !important; }
106
  }
107
 
108
  .w3eden .alert.alert-success:before {
109
- background: #63B76C none repeat scroll 0 0;
110
  border-bottom-left-radius: 3px;
111
  border-top-left-radius: 3px;
112
  color: #fff;
@@ -127,7 +129,7 @@ a:focus, a:active{ box-shadow: none !important; }
127
  border: 0 !important;
128
  }
129
  .w3eden .alert.alert-success, .alert.alert-success *{
130
- color: #63B76C !important;
131
  }
132
 
133
  .w3eden.wpdm-accordion .panel-heading{
@@ -336,29 +338,27 @@ a:focus, a:active{ box-shadow: none !important; }
336
  }
337
 
338
  .w3eden .panel-primary {
339
- border-color: #2080D3;
340
  }
341
 
342
 
343
- .w3eden .panel-primary > .panel-heading{
344
- background-image: linear-gradient(to left, #0891ff 0px, #0681e4 100%) !important;
 
345
  }
346
 
347
  .w3eden .nav-pills li.active a{
348
- background-image: linear-gradient(to left, #0891ff 0px, #0681e4 100%) !important;
349
- }
350
- .w3eden .panel-default > .panel-heading {
351
- background-image: linear-gradient(to bottom, #F5F5F5 0px, #E1E1E1 100%);
352
- background-repeat: repeat-x;
353
- border-bottom-color: #cccccc !important;
354
  }
355
 
356
  .w3eden ul#navigation {
357
  border-bottom: 1px solid #999999;
358
  }
359
 
360
- #wpdm-wrapper-panel-settings #tabs a{
361
- border-radius: 3px !important;
 
362
  }
363
 
364
  .w3eden .form-control:focus{
@@ -420,35 +420,35 @@ a:focus, a:active{ box-shadow: none !important; }
420
  border: 1px solid #ddd;
421
  }
422
  #wpdm-wrapper-panel .settings-tabs li.active a{
423
- border: 1px solid #0681e4;
424
- box-shadow: 0 0 5px rgba(0, 141, 255, 0.3) !important;
425
  }
426
 
427
  #wpdm-wrapper-panel .settings-tabs li:not(.active) a .fas,
428
  #wpdm-wrapper-panel .settings-tabs li:not(.active) a .far,
429
  #wpdm-wrapper-panel .settings-tabs li:not(.active) a .fab,
430
  #wpdm-wrapper-panel .settings-tabs li:not(.active) a .fa {
431
- color: #1191f9;
432
  }
433
  #wpdm-wrapper-panel .settings-tabs li:not(.active) a .fas.fa-user-shield{
434
- color: #e20b43;
435
  }
436
 
437
  #wpdm-wrapper-panel .settings-tabs li:not(.active) a#privacy{
438
- color: #e20b43;
439
  }
440
 
441
  .w3eden #wpdm-wrapper-panel .nav-pills li.active a#privacy {
442
- border: 1px solid #e20b43;
443
- background-image: linear-gradient(to left, #ff4d08 0px, #ae210b 100%) !important;
444
  }
445
 
446
  .w3eden .panel.panel-danger{
447
- border: 1px solid #e20b43;
448
  }
449
  .w3eden .panel.panel-danger .panel-heading{
450
- background-image: linear-gradient(to left, #ff4d08 0px, #ae210b 100%) !important;
451
- border-bottom: 1px solid #e20b43;
452
  color: #ffffff;
453
  }
454
 
@@ -639,8 +639,8 @@ a:focus, a:active{ box-shadow: none !important; }
639
  appearance: none;
640
  -webkit-appearance: none;
641
  -moz-appearance: none;
642
- background: #ffffff url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/PjwhRE9DVFlQRSBzdmcgIFBVQkxJQyAnLS8vVzNDLy9EVEQgU1ZHIDEuMS8vRU4nICAnaHR0cDovL3d3dy53My5vcmcvR3JhcGhpY3MvU1ZHLzEuMS9EVEQvc3ZnMTEuZHRkJz48c3ZnIGhlaWdodD0iNTEycHgiIGlkPSJMYXllcl8xIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCA1MTIgNTEyOyIgdmVyc2lvbj0iMS4xIiB2aWV3Qm94PSIwIDAgNTEyIDUxMiIgd2lkdGg9IjUxMnB4IiB4bWw6c3BhY2U9InByZXNlcnZlIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj48cG9seWdvbiBwb2ludHM9IjM5Ni42LDE2MCA0MTYsMTgwLjcgMjU2LDM1MiA5NiwxODAuNyAxMTUuMywxNjAgMjU2LDMxMC41ICIvPjwvc3ZnPg==") calc(100% - 10px) center no-repeat !important;
643
- background-size: 16px !important;
644
  padding-right: 10px !important;
645
  cursor: pointer;
646
  }
@@ -658,7 +658,6 @@ a:focus, a:active{ box-shadow: none !important; }
658
  font-size: 13px;
659
  padding: 7.5px 16px;
660
  border-radius: 2px;
661
- font-family: Montserrat, "Segoe UI", sans-serif;
662
  }
663
  .w3eden .btn.btn-link{
664
  border: 0 !important;
@@ -685,28 +684,28 @@ a:focus, a:active{ box-shadow: none !important; }
685
  .w3eden .btn.btn-secondary,
686
  .w3eden .flat-default,
687
  .w3eden .flat-default.btn-bordered:hover {
688
- background-color: #81888c;
689
- border-color: #81888c;
690
  color: #ffffff;
691
  }
692
  .w3eden .btn.btn-secondary:hover:not(.no-hover),
693
  .w3eden .flat-default:hover:not(.no-hover),
694
  .w3eden .flat-default.btn-bordered {
695
  background-color: #a3acb1;
696
- border-color: #81888c;
697
  color: #ffffff;
698
  }
699
  .w3eden .btn.btn-secondary:active:not(.no-hover),
700
  .w3eden .flat-default:active:not(.no-hover),
701
  .w3eden .flat-default.btn-bordered {
702
- background-color: #a5abaf;
703
  border-color: #8f9598;
704
  color: #ffffff;
705
  }
706
  .w3eden .btn,
707
  .w3eden .navbar .navbar-nav > a.btn {
708
  border-width: 2px;
709
- font-weight: 800;
710
  letter-spacing: 1px;
711
  font-size: 0.8571em;
712
  line-height: 1.1em;
@@ -747,57 +746,7 @@ a:focus, a:active{ box-shadow: none !important; }
747
  .w3eden .navbar .navbar-nav > a.btn:hover {
748
  box-shadow: 0 3px 8px 0 rgba(0, 0, 0, 0.17);
749
  }
750
- .w3eden .btn.disabled,
751
- .w3eden .btn.disabled:hover,
752
- .w3eden .btn.disabled:focus,
753
- .w3eden .btn.disabled.focus,
754
- .w3eden .btn.disabled:active,
755
- .w3eden .btn.disabled.active,
756
- .w3eden .btn:disabled,
757
- .w3eden .btn:disabled:hover,
758
- .w3eden .btn:disabled:focus,
759
- .w3eden .btn:disabled.focus,
760
- .w3eden .btn:disabled:active,
761
- .w3eden .btn:disabled.active,
762
- .w3eden .btn[disabled],
763
- .w3eden .btn[disabled]:hover,
764
- .w3eden .btn[disabled]:focus,
765
- .w3eden .btn[disabled].focus,
766
- .w3eden .btn[disabled]:active,
767
- .w3eden .btn[disabled].active,
768
- .w3eden fieldset[disabled] .btn,
769
- .w3eden fieldset[disabled] .btn:hover,
770
- .w3eden fieldset[disabled] .btn:focus,
771
- .w3eden fieldset[disabled] .btn.focus,
772
- .w3eden fieldset[disabled] .btn:active,
773
- .w3eden fieldset[disabled] .btn.active,
774
- .w3eden .navbar .navbar-nav > a.btn.disabled,
775
- .w3eden .navbar .navbar-nav > a.btn.disabled:hover,
776
- .w3eden .navbar .navbar-nav > a.btn.disabled:focus,
777
- .w3eden .navbar .navbar-nav > a.btn.disabled.focus,
778
- .w3eden .navbar .navbar-nav > a.btn.disabled:active,
779
- .w3eden .navbar .navbar-nav > a.btn.disabled.active,
780
- .w3eden .navbar .navbar-nav > a.btn:disabled,
781
- .w3eden .navbar .navbar-nav > a.btn:disabled:hover,
782
- .w3eden .navbar .navbar-nav > a.btn:disabled:focus,
783
- .w3eden .navbar .navbar-nav > a.btn:disabled.focus,
784
- .w3eden .navbar .navbar-nav > a.btn:disabled:active,
785
- .w3eden .navbar .navbar-nav > a.btn:disabled.active,
786
- .w3eden .navbar .navbar-nav > a.btn[disabled],
787
- .w3eden .navbar .navbar-nav > a.btn[disabled]:hover,
788
- .w3eden .navbar .navbar-nav > a.btn[disabled]:focus,
789
- .w3eden .navbar .navbar-nav > a.btn[disabled].focus,
790
- .w3eden .navbar .navbar-nav > a.btn[disabled]:active,
791
- .w3eden .navbar .navbar-nav > a.btn[disabled].active,
792
- .w3eden fieldset[disabled] .navbar .navbar-nav > a.btn,
793
- .w3eden fieldset[disabled] .navbar .navbar-nav > a.btn:hover,
794
- .w3eden fieldset[disabled] .navbar .navbar-nav > a.btn:focus,
795
- .w3eden fieldset[disabled] .navbar .navbar-nav > a.btn.focus,
796
- .w3eden fieldset[disabled] .navbar .navbar-nav > a.btn:active,
797
- .w3eden fieldset[disabled] .navbar .navbar-nav > a.btn.active {
798
- background-color: #888;
799
- border-color: #888;
800
- }
801
  .w3eden .btn.btn-simple,
802
  .w3eden .navbar .navbar-nav > a.btn.btn-simple {
803
  color: #888;
@@ -917,7 +866,7 @@ a:focus, a:active{ box-shadow: none !important; }
917
  .w3eden .show > .btn-primary.dropdown-toggle,
918
  .w3eden .show > .btn-primary.dropdown-toggle:focus,
919
  .w3eden .show > .btn-primary.dropdown-toggle:hover {
920
- background-color: var(--color-primary-hover);
921
  color: #FFFFFF;
922
  box-shadow: none;
923
  }
@@ -948,32 +897,32 @@ a:focus, a:active{ box-shadow: none !important; }
948
  .w3eden fieldset[disabled] .btn-primary.focus,
949
  .w3eden fieldset[disabled] .btn-primary:active,
950
  .w3eden fieldset[disabled] .btn-primary.active {
951
- background-color: rgba(74, 142, 255, 0.65);
952
- border-color: #4a8eff;
953
  }
954
  .w3eden .btn-simple {
955
  background-image: none !important;
956
  }
957
  .w3eden .btn-primary.btn-simple {
958
- color: #4a8eff;
959
- border-color: #4a8eff;
960
  }
961
  .w3eden .btn-primary.btn-simple:hover,
962
  .w3eden .btn-primary.btn-simple:focus,
963
  .w3eden .btn-primary.btn-simple:active {
964
  background-color: transparent;
965
- color: #5ca6ff;
966
- border-color: #5ca6ff;
967
  box-shadow: none;
968
  }
969
  .w3eden .btn-primary.btn-link {
970
- color: #4a8eff;
971
  }
972
  .w3eden .btn-primary.btn-link:hover,
973
  .w3eden .btn-primary.btn-link:focus,
974
  .w3eden .btn-primary.btn-link:active {
975
  background-color: transparent;
976
- color: #386aff;
977
  text-decoration: none;
978
  box-shadow: none;
979
  }
@@ -1023,29 +972,29 @@ a:focus, a:active{ box-shadow: none !important; }
1023
  .w3eden fieldset[disabled] .btn-success.focus,
1024
  .w3eden fieldset[disabled] .btn-success:active,
1025
  .w3eden fieldset[disabled] .btn-success.active {
1026
- background-color: #18ce0f;
1027
- border-color: #18ce0f;
1028
  }
1029
  .w3eden .btn-success.btn-simple {
1030
- color: #18ce0f;
1031
- border-color: #18ce0f;
1032
  }
1033
  .w3eden .btn-success.btn-simple:hover,
1034
  .w3eden .btn-success.btn-simple:focus,
1035
  .w3eden .btn-success.btn-simple:active {
1036
  background-color: transparent;
1037
- color: #1beb11;
1038
- border-color: #1beb11;
1039
  box-shadow: none;
1040
  }
1041
  .w3eden .btn-success.btn-link {
1042
- color: #18ce0f;
1043
  }
1044
  .w3eden .btn-success.btn-link:hover,
1045
  .w3eden .btn-success.btn-link:focus,
1046
  .w3eden .btn-success.btn-link:active {
1047
  background-color: transparent;
1048
- color: #1beb11;
1049
  text-decoration: none;
1050
  box-shadow: none;
1051
  }
@@ -1095,29 +1044,29 @@ a:focus, a:active{ box-shadow: none !important; }
1095
  .w3eden fieldset[disabled] .btn-info.focus,
1096
  .w3eden fieldset[disabled] .btn-info:active,
1097
  .w3eden fieldset[disabled] .btn-info.active {
1098
- background-color: #2CA8FF;
1099
- border-color: #2CA8FF;
1100
  }
1101
  .w3eden .btn-info.btn-simple {
1102
- color: #2CA8FF;
1103
- border-color: #2CA8FF;
1104
  }
1105
  .w3eden .btn-info.btn-simple:hover,
1106
  .w3eden .btn-info.btn-simple:focus,
1107
  .w3eden .btn-info.btn-simple:active {
1108
  background-color: transparent;
1109
- color: #4bb5ff;
1110
- border-color: #4bb5ff;
1111
  box-shadow: none;
1112
  }
1113
  .w3eden .btn-info.btn-link {
1114
- color: #2CA8FF;
1115
  }
1116
  .w3eden .btn-info.btn-link:hover,
1117
  .w3eden .btn-info.btn-link:focus,
1118
  .w3eden .btn-info.btn-link:active {
1119
  background-color: transparent;
1120
- color: #4bb5ff;
1121
  text-decoration: none;
1122
  box-shadow: none;
1123
  }
@@ -1167,34 +1116,34 @@ a:focus, a:active{ box-shadow: none !important; }
1167
  .w3eden fieldset[disabled] .btn-warning.focus,
1168
  .w3eden fieldset[disabled] .btn-warning:active,
1169
  .w3eden fieldset[disabled] .btn-warning.active {
1170
- background-color: #FFB236;
1171
- border-color: #FFB236;
1172
  }
1173
  .w3eden .btn-warning.btn-simple {
1174
- color: #FFB236;
1175
- border-color: #FFB236;
1176
  }
1177
  .w3eden .btn-warning.btn-simple:hover,
1178
  .w3eden .btn-warning.btn-simple:focus,
1179
  .w3eden .btn-warning.btn-simple:active {
1180
  background-color: transparent;
1181
- color: #ffbe55;
1182
- border-color: #ffbe55;
1183
  box-shadow: none;
1184
  }
1185
  .w3eden .btn-warning.btn-link {
1186
- color: #FFB236;
1187
  }
1188
  .w3eden .btn-warning.btn-link:hover,
1189
  .w3eden .btn-warning.btn-link:focus,
1190
  .w3eden .btn-warning.btn-link:active {
1191
  background-color: transparent;
1192
- color: #ffbe55;
1193
  text-decoration: none;
1194
  box-shadow: none;
1195
  }
1196
  .w3eden .btn-danger {
1197
- background-color: #FF3636;
1198
  color: #FFFFFF;
1199
  }
1200
  .w3eden .btn-danger:hover,
@@ -1208,7 +1157,7 @@ a:focus, a:active{ box-shadow: none !important; }
1208
  .w3eden .show > .btn-danger.dropdown-toggle,
1209
  .w3eden .show > .btn-danger.dropdown-toggle:focus,
1210
  .w3eden .show > .btn-danger.dropdown-toggle:hover {
1211
- background-color: #ff5555;
1212
  color: #FFFFFF;
1213
  box-shadow: none;
1214
  }
@@ -1239,165 +1188,33 @@ a:focus, a:active{ box-shadow: none !important; }
1239
  .w3eden fieldset[disabled] .btn-danger.focus,
1240
  .w3eden fieldset[disabled] .btn-danger:active,
1241
  .w3eden fieldset[disabled] .btn-danger.active {
1242
- background-color: #FF3636;
1243
- border-color: #FF3636;
1244
  }
1245
  .w3eden .btn-danger.btn-simple {
1246
- color: #FF3636;
1247
- border-color: #FF3636;
1248
  }
1249
  .w3eden .btn-danger.btn-simple:hover,
1250
  .w3eden .btn-danger.btn-simple:focus,
1251
  .w3eden .btn-danger.btn-simple:active {
1252
  background-color: transparent;
1253
- color: #ff5555;
1254
- border-color: #ff5555;
1255
  box-shadow: none;
1256
  }
1257
  .w3eden .btn-danger.btn-link {
1258
- color: #FF3636;
1259
  }
1260
  .w3eden .btn-danger.btn-link:hover,
1261
  .w3eden .btn-danger.btn-link:focus,
1262
  .w3eden .btn-danger.btn-link:active {
1263
  background-color: transparent;
1264
- color: #ff5555;
1265
- text-decoration: none;
1266
- box-shadow: none;
1267
- }
1268
- .w3eden .btn-neutral {
1269
- background-color: #FFFFFF;
1270
- color: #f96332;
1271
- }
1272
- .w3eden .btn-neutral:hover,
1273
- .w3eden .btn-neutral:focus,
1274
- .w3eden .btn-neutral:active,
1275
- .w3eden .btn-neutral.active,
1276
- .w3eden .btn-neutral:active:focus,
1277
- .w3eden .btn-neutral:active:hover,
1278
- .w3eden .btn-neutral.active:focus,
1279
- .w3eden .btn-neutral.active:hover,
1280
- .w3eden .show > .btn-neutral.dropdown-toggle,
1281
- .w3eden .show > .btn-neutral.dropdown-toggle:focus,
1282
- .w3eden .show > .btn-neutral.dropdown-toggle:hover {
1283
- background-color: #FFFFFF;
1284
- color: #FFFFFF;
1285
- box-shadow: none;
1286
- }
1287
- .w3eden .btn-neutral:hover {
1288
- box-shadow: 0 3px 8px 0 rgba(0, 0, 0, 0.17);
1289
- }
1290
- .w3eden .btn-neutral.disabled,
1291
- .w3eden .btn-neutral.disabled:hover,
1292
- .w3eden .btn-neutral.disabled:focus,
1293
- .w3eden .btn-neutral.disabled.focus,
1294
- .w3eden .btn-neutral.disabled:active,
1295
- .w3eden .btn-neutral.disabled.active,
1296
- .w3eden .btn-neutral:disabled,
1297
- .w3eden .btn-neutral:disabled:hover,
1298
- .w3eden .btn-neutral:disabled:focus,
1299
- .w3eden .btn-neutral:disabled.focus,
1300
- .w3eden .btn-neutral:disabled:active,
1301
- .w3eden .btn-neutral:disabled.active,
1302
- .w3eden .btn-neutral[disabled],
1303
- .w3eden .btn-neutral[disabled]:hover,
1304
- .w3eden .btn-neutral[disabled]:focus,
1305
- .w3eden .btn-neutral[disabled].focus,
1306
- .w3eden .btn-neutral[disabled]:active,
1307
- .w3eden .btn-neutral[disabled].active,
1308
- .w3eden fieldset[disabled] .btn-neutral,
1309
- .w3eden fieldset[disabled] .btn-neutral:hover,
1310
- .w3eden fieldset[disabled] .btn-neutral:focus,
1311
- .w3eden fieldset[disabled] .btn-neutral.focus,
1312
- .w3eden fieldset[disabled] .btn-neutral:active,
1313
- .w3eden fieldset[disabled] .btn-neutral.active {
1314
- background-color: #FFFFFF;
1315
- border-color: #FFFFFF;
1316
- }
1317
- .w3eden .btn-neutral.btn-danger {
1318
- color: #FF3636;
1319
- }
1320
- .w3eden .btn-neutral.btn-danger:hover,
1321
- .w3eden .btn-neutral.btn-danger:focus,
1322
- .w3eden .btn-neutral.btn-danger:active {
1323
- color: #ff5555;
1324
- }
1325
- .w3eden .btn-neutral.btn-info {
1326
- color: #2CA8FF;
1327
- }
1328
- .w3eden .btn-neutral.btn-info:hover,
1329
- .w3eden .btn-neutral.btn-info:focus,
1330
- .w3eden .btn-neutral.btn-info:active {
1331
- color: #4bb5ff;
1332
- }
1333
- .w3eden .btn-neutral.btn-warning {
1334
- color: #FFB236;
1335
- }
1336
- .w3eden .btn-neutral.btn-warning:hover,
1337
- .w3eden .btn-neutral.btn-warning:focus,
1338
- .w3eden .btn-neutral.btn-warning:active {
1339
- color: #ffbe55;
1340
- }
1341
- .w3eden .btn-neutral.btn-success {
1342
- color: #18ce0f;
1343
- }
1344
- .w3eden .btn-neutral.btn-success:hover,
1345
- .w3eden .btn-neutral.btn-success:focus,
1346
- .w3eden .btn-neutral.btn-success:active {
1347
- color: #1beb11;
1348
- }
1349
- .w3eden .btn-neutral.btn-default {
1350
- color: #888;
1351
- }
1352
- .w3eden .btn-neutral.btn-default:hover,
1353
- .w3eden .btn-neutral.btn-default:focus,
1354
- .w3eden .btn-neutral.btn-default:active {
1355
- color: #979797;
1356
- }
1357
- .w3eden .btn-neutral.active,
1358
- .w3eden .btn-neutral:active,
1359
- .w3eden .btn-neutral:active:focus,
1360
- .w3eden .btn-neutral:active:hover,
1361
- .w3eden .btn-neutral.active:focus,
1362
- .w3eden .btn-neutral.active:hover,
1363
- .w3eden .show > .btn-neutral.dropdown-toggle,
1364
- .w3eden .show > .btn-neutral.dropdown-toggle:focus,
1365
- .w3eden .show > .btn-neutral.dropdown-toggle:hover {
1366
- background-color: #FFFFFF;
1367
- color: #fa7a50;
1368
- box-shadow: none;
1369
- }
1370
- .w3eden .btn-neutral:hover,
1371
- .w3eden .btn-neutral:focus {
1372
- color: #fa7a50;
1373
- }
1374
- .w3eden .btn-neutral:hover:not(.nav-link),
1375
- .w3eden .btn-neutral:focus:not(.nav-link) {
1376
- box-shadow: none;
1377
- }
1378
- .w3eden .btn-neutral.btn-simple {
1379
- color: #FFFFFF;
1380
- border-color: #FFFFFF;
1381
- }
1382
- .w3eden .btn-neutral.btn-simple:hover,
1383
- .w3eden .btn-neutral.btn-simple:focus,
1384
- .w3eden .btn-neutral.btn-simple:active {
1385
- background-color: transparent;
1386
- color: #FFFFFF;
1387
- border-color: #FFFFFF;
1388
- box-shadow: none;
1389
- }
1390
- .w3eden .btn-neutral.btn-link {
1391
- color: #FFFFFF;
1392
- }
1393
- .w3eden .btn-neutral.btn-link:hover,
1394
- .w3eden .btn-neutral.btn-link:focus,
1395
- .w3eden .btn-neutral.btn-link:active {
1396
- background-color: transparent;
1397
- color: #FFFFFF;
1398
  text-decoration: none;
1399
  box-shadow: none;
1400
  }
 
1401
  .w3eden .btn:disabled,
1402
  .w3eden .btn[disabled],
1403
  .w3eden .btn.disabled {
@@ -1736,3 +1553,122 @@ body.wpdm-iframe-modal-open{
1736
  }
1737
  /** wpdm iframe modal ends **/
1738
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  .w3eden h3{ margin: 0; font-size: 10pt; }
2
+
3
+
4
  #wpdm-attached-files .w3eden .panel-heading .btn{
5
  font-size: 9px;
6
  }
93
 
94
  .w3eden .alert.alert-info{
95
  position: relative;
96
+ border: 1px solid var(--color-info) !important;
97
+ background: rgba(var(--color-info-rgb), 0.08) !important;
98
  border-radius: 3px;
99
  line-height: 1.5;
100
  }
101
  .w3eden .alert.alert-info, .alert.alert-info *{
102
+ color: var(--color-info) !important;
103
  }
104
 
105
  .w3eden .alert.alert-info a{
108
  }
109
 
110
  .w3eden .alert.alert-success:before {
111
+ background: var(--color-success) none repeat scroll 0 0;
112
  border-bottom-left-radius: 3px;
113
  border-top-left-radius: 3px;
114
  color: #fff;
129
  border: 0 !important;
130
  }
131
  .w3eden .alert.alert-success, .alert.alert-success *{
132
+ color: var(--color-success) !important;
133
  }
134
 
135
  .w3eden.wpdm-accordion .panel-heading{
338
  }
339
 
340
  .w3eden .panel-primary {
341
+ border-color: var(--color-primary);
342
  }
343
 
344
 
345
+ .w3eden div.panel-primary > div.panel-heading{
346
+ background-color: var(--color-primary) !important;
347
+ border-color: var(--color-primary) !important;
348
  }
349
 
350
  .w3eden .nav-pills li.active a{
351
+ background-color: var(--color-primary) !important;
352
+ color: #ffffff !important;
 
 
 
 
353
  }
354
 
355
  .w3eden ul#navigation {
356
  border-bottom: 1px solid #999999;
357
  }
358
 
359
+ #wpdm-wrapper-panel #tabs.nav-pills a{
360
+ border-radius: 100px !important;
361
+ color: var(--color-primary);
362
  }
363
 
364
  .w3eden .form-control:focus{
420
  border: 1px solid #ddd;
421
  }
422
  #wpdm-wrapper-panel .settings-tabs li.active a{
423
+ border: 1px solid var(--color-primary);
424
+ box-shadow: 0 0 5px rgba(255, 255, 255, 1) !important;
425
  }
426
 
427
  #wpdm-wrapper-panel .settings-tabs li:not(.active) a .fas,
428
  #wpdm-wrapper-panel .settings-tabs li:not(.active) a .far,
429
  #wpdm-wrapper-panel .settings-tabs li:not(.active) a .fab,
430
  #wpdm-wrapper-panel .settings-tabs li:not(.active) a .fa {
431
+ color: var(--color-primary);
432
  }
433
  #wpdm-wrapper-panel .settings-tabs li:not(.active) a .fas.fa-user-shield{
434
+ color: var(--color-danger);
435
  }
436
 
437
  #wpdm-wrapper-panel .settings-tabs li:not(.active) a#privacy{
438
+ color: var(--color-danger);
439
  }
440
 
441
  .w3eden #wpdm-wrapper-panel .nav-pills li.active a#privacy {
442
+ border: 1px solid var(--color-danger);
443
+ background-color: var(--color-danger) !important;
444
  }
445
 
446
  .w3eden .panel.panel-danger{
447
+ border: 1px solid var(--color-danger);
448
  }
449
  .w3eden .panel.panel-danger .panel-heading{
450
+ background-color: var(--color-danger) !important;
451
+ border-bottom: 1px solid var(--color-danger);
452
  color: #ffffff;
453
  }
454
 
639
  appearance: none;
640
  -webkit-appearance: none;
641
  -moz-appearance: none;
642
+ background: #ffffff url("../images/sort.svg") calc(100% - 10px) center no-repeat !important;
643
+ background-size: 15px !important;
644
  padding-right: 10px !important;
645
  cursor: pointer;
646
  }
658
  font-size: 13px;
659
  padding: 7.5px 16px;
660
  border-radius: 2px;
 
661
  }
662
  .w3eden .btn.btn-link{
663
  border: 0 !important;
684
  .w3eden .btn.btn-secondary,
685
  .w3eden .flat-default,
686
  .w3eden .flat-default.btn-bordered:hover {
687
+ background-color: var(--color-secondary);
688
+ border-color: var(--color-secondary);
689
  color: #ffffff;
690
  }
691
  .w3eden .btn.btn-secondary:hover:not(.no-hover),
692
  .w3eden .flat-default:hover:not(.no-hover),
693
  .w3eden .flat-default.btn-bordered {
694
  background-color: #a3acb1;
695
+ border-color: var(--color-secondary);
696
  color: #ffffff;
697
  }
698
  .w3eden .btn.btn-secondary:active:not(.no-hover),
699
  .w3eden .flat-default:active:not(.no-hover),
700
  .w3eden .flat-default.btn-bordered {
701
+ background-color: var(--color-secondary-hover);
702
  border-color: #8f9598;
703
  color: #ffffff;
704
  }
705
  .w3eden .btn,
706
  .w3eden .navbar .navbar-nav > a.btn {
707
  border-width: 2px;
708
+ font-weight: 600;
709
  letter-spacing: 1px;
710
  font-size: 0.8571em;
711
  line-height: 1.1em;
746
  .w3eden .navbar .navbar-nav > a.btn:hover {
747
  box-shadow: 0 3px 8px 0 rgba(0, 0, 0, 0.17);
748
  }
749
+
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
750
  .w3eden .btn.btn-simple,
751
  .w3eden .navbar .navbar-nav > a.btn.btn-simple {
752
  color: #888;
866
  .w3eden .show > .btn-primary.dropdown-toggle,
867
  .w3eden .show > .btn-primary.dropdown-toggle:focus,
868
  .w3eden .show > .btn-primary.dropdown-toggle:hover {
869
+ background-color: var(--color-primary);
870
  color: #FFFFFF;
871
  box-shadow: none;
872
  }
897
  .w3eden fieldset[disabled] .btn-primary.focus,
898
  .w3eden fieldset[disabled] .btn-primary:active,
899
  .w3eden fieldset[disabled] .btn-primary.active {
900
+ background-color: var(--color-primary);
901
+ border-color: var(--color-primary);
902
  }
903
  .w3eden .btn-simple {
904
  background-image: none !important;
905
  }
906
  .w3eden .btn-primary.btn-simple {
907
+ color: var(--color-primary);
908
+ border-color: var(--color-primary);
909
  }
910
  .w3eden .btn-primary.btn-simple:hover,
911
  .w3eden .btn-primary.btn-simple:focus,
912
  .w3eden .btn-primary.btn-simple:active {
913
  background-color: transparent;
914
+ color: var(--color-primary);
915
+ border-color: var(--color-primary);
916
  box-shadow: none;
917
  }
918
  .w3eden .btn-primary.btn-link {
919
+ color: var(--color-primary);
920
  }
921
  .w3eden .btn-primary.btn-link:hover,
922
  .w3eden .btn-primary.btn-link:focus,
923
  .w3eden .btn-primary.btn-link:active {
924
  background-color: transparent;
925
+ color: var(--color-primary);
926
  text-decoration: none;
927
  box-shadow: none;
928
  }
972
  .w3eden fieldset[disabled] .btn-success.focus,
973
  .w3eden fieldset[disabled] .btn-success:active,
974
  .w3eden fieldset[disabled] .btn-success.active {
975
+ background-color: var(--color-success);
976
+ border-color: var(--color-success);
977
  }
978
  .w3eden .btn-success.btn-simple {
979
+ color: var(--color-success);
980
+ border-color: var(--color-success);
981
  }
982
  .w3eden .btn-success.btn-simple:hover,
983
  .w3eden .btn-success.btn-simple:focus,
984
  .w3eden .btn-success.btn-simple:active {
985
  background-color: transparent;
986
+ color: var(--color-success-hover);
987
+ border-color: var(--color-success-hover);
988
  box-shadow: none;
989
  }
990
  .w3eden .btn-success.btn-link {
991
+ color: var(--color-success);
992
  }
993
  .w3eden .btn-success.btn-link:hover,
994
  .w3eden .btn-success.btn-link:focus,
995
  .w3eden .btn-success.btn-link:active {
996
  background-color: transparent;
997
+ color: var(--color-success-hover);
998
  text-decoration: none;
999
  box-shadow: none;
1000
  }
1044
  .w3eden fieldset[disabled] .btn-info.focus,
1045
  .w3eden fieldset[disabled] .btn-info:active,
1046
  .w3eden fieldset[disabled] .btn-info.active {
1047
+ background-color: var(--color-info);
1048
+ border-color: var(--color-info);
1049
  }
1050
  .w3eden .btn-info.btn-simple {
1051
+ color: var(--color-info);
1052
+ border-color: var(--color-info);
1053
  }
1054
  .w3eden .btn-info.btn-simple:hover,
1055
  .w3eden .btn-info.btn-simple:focus,
1056
  .w3eden .btn-info.btn-simple:active {
1057
  background-color: transparent;
1058
+ color: var(--color-info-hover);
1059
+ border-color: var(--color-info-hover);
1060
  box-shadow: none;
1061
  }
1062
  .w3eden .btn-info.btn-link {
1063
+ color: var(--color-info);
1064
  }
1065
  .w3eden .btn-info.btn-link:hover,
1066
  .w3eden .btn-info.btn-link:focus,
1067
  .w3eden .btn-info.btn-link:active {
1068
  background-color: transparent;
1069
+ color: var(--color-info-hover);
1070
  text-decoration: none;
1071
  box-shadow: none;
1072
  }
1116
  .w3eden fieldset[disabled] .btn-warning.focus,
1117
  .w3eden fieldset[disabled] .btn-warning:active,
1118
  .w3eden fieldset[disabled] .btn-warning.active {
1119
+ background-color: var(--color-warning);
1120
+ border-color: var(--color-warning);
1121
  }
1122
  .w3eden .btn-warning.btn-simple {
1123
+ color: var(--color-warning);
1124
+ border-color: var(--color-warning);
1125
  }
1126
  .w3eden .btn-warning.btn-simple:hover,
1127
  .w3eden .btn-warning.btn-simple:focus,
1128
  .w3eden .btn-warning.btn-simple:active {
1129
  background-color: transparent;
1130
+ color: var(--color-warning-hover);
1131
+ border-color: var(--color-warning-hover);
1132
  box-shadow: none;
1133
  }
1134
  .w3eden .btn-warning.btn-link {
1135
+ color: var(--color-warning);
1136
  }
1137
  .w3eden .btn-warning.btn-link:hover,
1138
  .w3eden .btn-warning.btn-link:focus,
1139
  .w3eden .btn-warning.btn-link:active {
1140
  background-color: transparent;
1141
+ color: var(--color-warning-hover);
1142
  text-decoration: none;
1143
  box-shadow: none;
1144
  }
1145
  .w3eden .btn-danger {
1146
+ background-color: var(--color-danger);
1147
  color: #FFFFFF;
1148
  }
1149
  .w3eden .btn-danger:hover,
1157
  .w3eden .show > .btn-danger.dropdown-toggle,
1158
  .w3eden .show > .btn-danger.dropdown-toggle:focus,
1159
  .w3eden .show > .btn-danger.dropdown-toggle:hover {
1160
+ background-color: var(--color-danger-hover);
1161
  color: #FFFFFF;
1162
  box-shadow: none;
1163
  }
1188
  .w3eden fieldset[disabled] .btn-danger.focus,
1189
  .w3eden fieldset[disabled] .btn-danger:active,
1190
  .w3eden fieldset[disabled] .btn-danger.active {
1191
+ background-color: var(--color-danger);
1192
+ border-color: var(--color-danger);
1193
  }
1194
  .w3eden .btn-danger.btn-simple {
1195
+ color: var(--color-danger);
1196
+ border-color: var(--color-danger);
1197
  }
1198
  .w3eden .btn-danger.btn-simple:hover,
1199
  .w3eden .btn-danger.btn-simple:focus,
1200
  .w3eden .btn-danger.btn-simple:active {
1201
  background-color: transparent;
1202
+ color: var(--color-danger-hover);
1203
+ border-color: var(--color-danger-hover);
1204
  box-shadow: none;
1205
  }
1206
  .w3eden .btn-danger.btn-link {
1207
+ color: var(--color-danger);
1208
  }
1209
  .w3eden .btn-danger.btn-link:hover,
1210
  .w3eden .btn-danger.btn-link:focus,
1211
  .w3eden .btn-danger.btn-link:active {
1212
  background-color: transparent;
1213
+ color: var(--color-danger-hover);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1214
  text-decoration: none;
1215
  box-shadow: none;
1216
  }
1217
+
1218
  .w3eden .btn:disabled,
1219
  .w3eden .btn[disabled],
1220
  .w3eden .btn.disabled {
1553
  }
1554
  /** wpdm iframe modal ends **/
1555
 
1556
+ /** Block UI **/
1557
+
1558
+ .w3eden .blockui{
1559
+ position: relative;
1560
+ }
1561
+ .w3eden .blockui:before{
1562
+ content: "";
1563
+ position: absolute;
1564
+ width: 100%;
1565
+ height: 100%;
1566
+ left: 0;
1567
+ top: 0;
1568
+ z-index: 9999;
1569
+ background: rgba(255, 255, 255, 0.4) url("../images/spinner-bars.svg") center center no-repeat;
1570
+ background-size: 48px;
1571
+ -webkit-transition: ease-in-out 400ms;
1572
+ -moz-transition: ease-in-out 400ms;
1573
+ -ms-transition: ease-in-out 400ms;
1574
+ -o-transition: ease-in-out 400ms;
1575
+ transition: ease-in-out 400ms;
1576
+ }
1577
+ /** Block UI ends **/
1578
+
1579
+ /** WPDM Notify **/
1580
+
1581
+ #wpdm-floatify-top-right,
1582
+ #wpdm-notify-top-right{
1583
+ position: fixed;
1584
+ top:30px;
1585
+ right: 30px;
1586
+ z-index: 999999 !important;
1587
+ }
1588
+ .wpdm-floatify{
1589
+ margin-bottom: 10px;
1590
+ -webkit-transition: all 300ms ease-in-out;
1591
+ -moz-transition: all 300ms ease-in-out;
1592
+ -ms-transition: all 300ms ease-in-out;
1593
+ -o-transition: all 300ms ease-in-out;
1594
+ transition: all 300ms ease-in-out;
1595
+ font-size: 9pt;
1596
+ letter-spacing: 0.5px;
1597
+ }
1598
+ .wpdm-notify{
1599
+ padding: 20px 20px 20px 50px;
1600
+ border-radius: 5px;
1601
+ float: right;
1602
+ clear: both;
1603
+ background: #ffffff url("../images/info.svg") 15px center no-repeat;
1604
+ background-size: 24px !important;
1605
+ box-shadow: 0 0 15px rgba(0, 0, 0, 0.1);
1606
+ margin-bottom: 10px;
1607
+ -webkit-transition: ease-in-out 300ms;
1608
+ -moz-transition: ease-in-out 300ms;
1609
+ -ms-transition: ease-in-out 300ms;
1610
+ -o-transition: ease-in-out 300ms;
1611
+ transition: ease-in-out 300ms;
1612
+ cursor: pointer;
1613
+ font-size: 9pt;
1614
+ letter-spacing: 0.5px;
1615
+ }
1616
+
1617
+ .wpdm-hide-right{
1618
+ display: none;
1619
+ position: absolute;
1620
+ }
1621
+
1622
+ .wpdm-notify .wpdm-notify-title{
1623
+ display: block;
1624
+ margin-bottom: 5px;
1625
+ }
1626
+
1627
+ .wpdm-notify-info{
1628
+ border-left: 3px solid var(--color-info);
1629
+ color: var(--color-info);
1630
+ }
1631
+
1632
+ .wpdm-notify-success{
1633
+ background: #ffffff url("../images/success.svg") 15px center no-repeat !important;
1634
+ background-size: 24px !important;
1635
+ border-left: 3px solid var(--color-success);
1636
+ color: var(--color-success);
1637
+ }
1638
+
1639
+ .wpdm-notify-error{
1640
+ background: #ffffff url("../images/error.svg") 15px center no-repeat !important;
1641
+ background-size: 24px !important;
1642
+ border-left: 3px solid var(--color-danger);
1643
+ color: var(--color-danger);
1644
+ }
1645
+
1646
+ /** WPDM Notify end **/
1647
+
1648
+ .w3eden .panel{
1649
+ box-shadow: 0 0 3px rgba(0,0,0,0.05);
1650
+ }
1651
+ .w3eden .panel.panel-default .panel-heading{
1652
+ background-image: none;
1653
+ border-bottom-color: #e7e7e7 !important;
1654
+ box-shadow: inset 0 3px 6px rgba(0,0,0,0.03) !important;
1655
+ }
1656
+
1657
+ .w3eden .txtsc{
1658
+ display: inline-block !important;padding: 0 3px;border: 0;box-shadow: none;color: var(--color-info);background: rgba(var(--color-info-rgb),0.1);border-radius: 2px;text-align: center;font-size: 12px;font-family: monospace;width: min-content;
1659
+ }
1660
+ .c-pointer{
1661
+ cursor: pointer;
1662
+ }
1663
+ .txtellipsis{
1664
+ display: block;
1665
+ white-space: nowrap;
1666
+ overflow: hidden;
1667
+ text-overflow: ellipsis;
1668
+ }
1669
+
1670
+ .page-numbers.current {
1671
+ font-weight: bold;
1672
+ color: #575555 !important;
1673
+ background: rgba(0,0,0,0.01) !important;
1674
+ }
assets/css/simplebar.css ADDED
@@ -0,0 +1,190 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ [data-simplebar] {
2
+ position: relative;
3
+ flex-direction: column;
4
+ flex-wrap: wrap;
5
+ justify-content: flex-start;
6
+ align-content: flex-start;
7
+ align-items: flex-start;
8
+ }
9
+
10
+ .simplebar-wrapper {
11
+ overflow: hidden;
12
+ width: inherit;
13
+ height: inherit;
14
+ max-width: inherit;
15
+ max-height: inherit;
16
+ }
17
+
18
+ .simplebar-mask {
19
+ direction: inherit;
20
+ position: absolute;
21
+ overflow: hidden;
22
+ padding: 0;
23
+ margin: 0;
24
+ left: 0;
25
+ top: 0;
26
+ bottom: 0;
27
+ right: 0;
28
+ width: auto !important;
29
+ height: auto !important;
30
+ z-index: 0;
31
+ }
32
+
33
+ .simplebar-offset {
34
+ direction: inherit !important;
35
+ box-sizing: inherit !important;
36
+ resize: none !important;
37
+ position: absolute;
38
+ top: 0;
39
+ left: 0;
40
+ bottom: 0;
41
+ right: 0;
42
+ padding: 0;
43
+ margin: 0;
44
+ -webkit-overflow-scrolling: touch;
45
+ }
46
+
47
+ .simplebar-content-wrapper {
48
+ direction: inherit;
49
+ box-sizing: border-box !important;
50
+ position: relative;
51
+ display: block;
52
+ height: 100%; /* Required for horizontal native scrollbar to not appear if parent is taller than natural height */
53
+ width: auto;
54
+ visibility: visible;
55
+ overflow: auto; /* Scroll on this element otherwise element can't have a padding applied properly */
56
+ max-width: 100%; /* Not required for horizontal scroll to trigger */
57
+ max-height: 100%; /* Needed for vertical scroll to trigger */
58
+ }
59
+
60
+ .simplebar-content:before,
61
+ .simplebar-content:after {
62
+ content: ' ';
63
+ display: table;
64
+ }
65
+
66
+ .simplebar-placeholder {
67
+ max-height: 100%;
68
+ max-width: 100%;
69
+ width: 100%;
70
+ pointer-events: none;
71
+ }
72
+
73
+ .simplebar-height-auto-observer-wrapper {
74
+ box-sizing: inherit !important;
75
+ height: 100%;
76
+ width: 100%;
77
+ max-width: 1px;
78
+ position: relative;
79
+ float: left;
80
+ max-height: 1px;
81
+ overflow: hidden;
82
+ z-index: -1;
83
+ padding: 0;
84
+ margin: 0;
85
+ pointer-events: none;
86
+ flex-grow: inherit;
87
+ flex-shrink: 0;
88
+ flex-basis: 0;
89
+ }
90
+
91
+ .simplebar-height-auto-observer {
92
+ box-sizing: inherit;
93
+ display: block;
94
+ opacity: 0;
95
+ position: absolute;
96
+ top: 0;
97
+ left: 0;
98
+ height: 1000%;
99
+ width: 1000%;
100
+ min-height: 1px;
101
+ min-width: 1px;
102
+ overflow: hidden;
103
+ pointer-events: none;
104
+ z-index: -1;
105
+ }
106
+
107
+ .simplebar-track {
108
+ z-index: 1;
109
+ position: absolute;
110
+ right: 0;
111
+ bottom: 0;
112
+ pointer-events: none;
113
+ overflow: hidden;
114
+ }
115
+
116
+ [data-simplebar].simplebar-dragging .simplebar-track {
117
+ pointer-events: all;
118
+ }
119
+
120
+ .simplebar-scrollbar {
121
+ position: absolute;
122
+ right: 2px;
123
+ width: 7px;
124
+ min-height: 10px;
125
+ }
126
+
127
+ .simplebar-scrollbar:before {
128
+ position: absolute;
129
+ content: '';
130
+ background: black;
131
+ border-radius: 7px;
132
+ left: 0;
133
+ right: 0;
134
+ opacity: 0;
135
+ transition: opacity 0.2s linear;
136
+ }
137
+
138
+ .simplebar-track .simplebar-scrollbar.simplebar-visible:before {
139
+ /* When hovered, remove all transitions from drag handle */
140
+ opacity: 0.5;
141
+ transition: opacity 0s linear;
142
+ }
143
+
144
+ .simplebar-track.simplebar-vertical {
145
+ top: 0;
146
+ width: 11px;
147
+ }
148
+
149
+ .simplebar-track.simplebar-vertical .simplebar-scrollbar:before {
150
+ top: 2px;
151
+ bottom: 2px;
152
+ }
153
+
154
+ .simplebar-track.simplebar-horizontal {
155
+ left: 0;
156
+ height: 11px;
157
+ }
158
+
159
+ .simplebar-track.simplebar-horizontal .simplebar-scrollbar:before {
160
+ height: 100%;
161
+ left: 2px;
162
+ right: 2px;
163
+ }
164
+
165
+ .simplebar-track.simplebar-horizontal .simplebar-scrollbar {
166
+ right: auto;
167
+ left: 0;
168
+ top: 2px;
169
+ height: 7px;
170
+ min-height: 0;
171
+ min-width: 10px;
172
+ width: auto;
173
+ }
174
+
175
+ /* Rtl support */
176
+ [data-simplebar-direction='rtl'] .simplebar-track.simplebar-vertical {
177
+ right: auto;
178
+ left: 0;
179
+ }
180
+
181
+ .hs-dummy-scrollbar-size {
182
+ direction: rtl;
183
+ position: fixed;
184
+ opacity: 0;
185
+ visibility: hidden;
186
+ height: 500px;
187
+ width: 500px;
188
+ overflow-y: hidden;
189
+ overflow-x: scroll;
190
+ }
assets/file-type-icons/folder.png CHANGED
Binary file
assets/images/asset-comments.png ADDED
Binary file
assets/images/file-cog.svg ADDED
@@ -0,0 +1,13 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0" ?><!DOCTYPE svg PUBLIC '-//W3C//DTD SVG 1.1//EN'
2
+ 'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'>
3
+ <svg height="48px" id="Слой_1" style="enable-background:new 0 0 48 48;" version="1.1" viewBox="0 0 48 48" width="48px"
4
+ xml:space="preserve" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><g><g><g>
5
+ <path d="M43.7,23.3c0.2-0.7,0.3-1.5,0.3-2.3c0-5-4-9-9-9c-1.2,0-2.4,0.2-3.5,0.7C30.1,8.2,25.9,5,21,5 c-6.1,0-11,4.9-11,11c0,0.4,0,0.7,0.1,1.1C9.7,17,9.4,17,9,17c-5,0-9,4-9,9s4,9,9,9h4v-2H9c-3.9,0-7-3.1-7-7s3.1-7,7-7 c0.7,0,1.3,0.1,2,0.3l1.7,0.5l-0.4-1.7C12.1,17.4,12,16.7,12,16c0-5,4-9,9-9c4.3,0,8.1,3.1,8.8,7.4l0.3,1.4l1.2-0.8 c1.1-0.7,2.4-1,3.6-1c3.9,0,7,3.1,7,7c0,0.9-0.2,1.8-0.5,2.7L41,24.9l1.4,0.1c2.1,0.2,3.7,1.9,3.7,4c0,2.2-1.8,4-4,4h-7v2h7 c3.3,0,6-2.7,6-6C48,26.3,46.2,24,43.7,23.3z" style="fill:#303033;"/>
6
+ <path
7
+ d="M30,25H18c-1.7,0-3,1.3-3,3v12c0,1.7,1.3,3,3,3h12c1.7,0,3-1.3,3-3V28C33,26.3,31.7,25,30,25z M31,40c0,0.6-0.4,1-1,1H18c-0.6,0-1-0.4-1-1V28c0-0.6,0.4-1,1-1h12c0.6,0,1,0.4,1,1V40z"
8
+ style="fill:#303033;"/><rect height="2" style="fill:#303033;" width="10" x="19" y="29"/><rect height="2"
9
+ style="fill:#303033;"
10
+ width="10" x="19"
11
+ y="33"/><rect
12
+ height="2" style="fill:#303033;" width="10" x="19" y="37"/></g><path d="M14,16c0-3.9,3.1-7,7-7v7H14z"
13
+ style="fill:#7D50F9;"/></g></g></svg>
assets/images/folder-o.svg ADDED
@@ -0,0 +1,3 @@
 
 
 
1
+ <svg aria-hidden="true" focusable="false" data-prefix="fad" data-icon="folder-open" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512" class="svg-inline--fa fa-folder-open fa-w-18 fa-fw fa-2x">
2
+ <g class="fa-group"><path fill="#aac7ec" d="M69.08 271.63L0 390.05V112a48 48 0 0 1 48-48h160l64 64h160a48 48 0 0 1 48 48v48H152a96.31 96.31 0 0 0-82.92 47.63z" class="fa-secondary"></path>
3
+ <path fill="#85a2c6" d="M152 256h400a24 24 0 0 1 20.73 36.09l-72.46 124.16A64 64 0 0 1 445 448H45a24 24 0 0 1-20.73-36.09l72.45-124.16A64 64 0 0 1 152 256z" class="fa-primary"></path></g></svg>
assets/images/folder.svg ADDED
@@ -0,0 +1,4 @@
 
 
 
 
1
+ <svg aria-hidden="true" focusable="false" data-prefix="fad" data-icon="folder" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" class="svg-inline--fa fa-folder fa-w-16 fa-fw fa-2x">
2
+ <g class="fa-group"><path d="M272 128H48a48 48 0 0 0-48 48v-64a48 48 0 0 1 48-48h160z" class="fa-secondary" fill="#aac7ec"/>
3
+ <path d="M512 176v224a48 48 0 0 1-48 48H48a48 48 0 0 1-48-48V176a48 48 0 0 1 48-48h416a48 48 0 0 1 48 48z" class="fa-primary" fill="#85a2c6"/></g>
4
+ </svg>
assets/images/share-links.png ADDED
Binary file
assets/images/spinner-bars.svg ADDED
@@ -0,0 +1,49 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <svg class="lds-spinner" width="200px" height="200px" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 100 100" preserveAspectRatio="xMidYMid" style="background: none;"><g transform="rotate(0 50 50)">
2
+ <rect x="47" y="7" rx="9.4" ry="1.4000000000000001" width="6" height="22" fill="#1acb2e">
3
+ <animate attributeName="opacity" values="1;0" keyTimes="0;1" dur="1s" begin="-0.9166666666666666s" repeatCount="indefinite"></animate>
4
+ </rect>
5
+ </g><g transform="rotate(30 50 50)">
6
+ <rect x="47" y="7" rx="9.4" ry="1.4000000000000001" width="6" height="22" fill="#1acb2e">
7
+ <animate attributeName="opacity" values="1;0" keyTimes="0;1" dur="1s" begin="-0.8333333333333334s" repeatCount="indefinite"></animate>
8
+ </rect>
9
+ </g><g transform="rotate(60 50 50)">
10
+ <rect x="47" y="7" rx="9.4" ry="1.4000000000000001" width="6" height="22" fill="#1acb2e">
11
+ <animate attributeName="opacity" values="1;0" keyTimes="0;1" dur="1s" begin="-0.75s" repeatCount="indefinite"></animate>
12
+ </rect>
13
+ </g><g transform="rotate(90 50 50)">
14
+ <rect x="47" y="7" rx="9.4" ry="1.4000000000000001" width="6" height="22" fill="#1acb2e">
15
+ <animate attributeName="opacity" values="1;0" keyTimes="0;1" dur="1s" begin="-0.6666666666666666s" repeatCount="indefinite"></animate>
16
+ </rect>
17
+ </g><g transform="rotate(120 50 50)">
18
+ <rect x="47" y="7" rx="9.4" ry="1.4000000000000001" width="6" height="22" fill="#1acb2e">
19
+ <animate attributeName="opacity" values="1;0" keyTimes="0;1" dur="1s" begin="-0.5833333333333334s" repeatCount="indefinite"></animate>
20
+ </rect>
21
+ </g><g transform="rotate(150 50 50)">
22
+ <rect x="47" y="7" rx="9.4" ry="1.4000000000000001" width="6" height="22" fill="#1acb2e">
23
+ <animate attributeName="opacity" values="1;0" keyTimes="0;1" dur="1s" begin="-0.5s" repeatCount="indefinite"></animate>
24
+ </rect>
25
+ </g><g transform="rotate(180 50 50)">
26
+ <rect x="47" y="7" rx="9.4" ry="1.4000000000000001" width="6" height="22" fill="#1acb2e">
27
+ <animate attributeName="opacity" values="1;0" keyTimes="0;1" dur="1s" begin="-0.4166666666666667s" repeatCount="indefinite"></animate>
28
+ </rect>
29
+ </g><g transform="rotate(210 50 50)">
30
+ <rect x="47" y="7" rx="9.4" ry="1.4000000000000001" width="6" height="22" fill="#1acb2e">
31
+ <animate attributeName="opacity" values="1;0" keyTimes="0;1" dur="1s" begin="-0.3333333333333333s" repeatCount="indefinite"></animate>
32
+ </rect>
33
+ </g><g transform="rotate(240 50 50)">
34
+ <rect x="47" y="7" rx="9.4" ry="1.4000000000000001" width="6" height="22" fill="#1acb2e">
35
+ <animate attributeName="opacity" values="1;0" keyTimes="0;1" dur="1s" begin="-0.25s" repeatCount="indefinite"></animate>
36
+ </rect>
37
+ </g><g transform="rotate(270 50 50)">
38
+ <rect x="47" y="7" rx="9.4" ry="1.4000000000000001" width="6" height="22" fill="#1acb2e">
39
+ <animate attributeName="opacity" values="1;0" keyTimes="0;1" dur="1s" begin="-0.16666666666666666s" repeatCount="indefinite"></animate>
40
+ </rect>
41
+ </g><g transform="rotate(300 50 50)">
42
+ <rect x="47" y="7" rx="9.4" ry="1.4000000000000001" width="6" height="22" fill="#1acb2e">
43
+ <animate attributeName="opacity" values="1;0" keyTimes="0;1" dur="1s" begin="-0.08333333333333333s" repeatCount="indefinite"></animate>
44
+ </rect>
45
+ </g><g transform="rotate(330 50 50)">
46
+ <rect x="47" y="7" rx="9.4" ry="1.4000000000000001" width="6" height="22" fill="#1acb2e">
47
+ <animate attributeName="opacity" values="1;0" keyTimes="0;1" dur="1s" begin="0s" repeatCount="indefinite"></animate>
48
+ </rect>
49
+ </g></svg>
assets/images/wpdm-welcome.png CHANGED
Binary file
assets/js/simplebar.js ADDED
@@ -0,0 +1,4454 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /**
2
+ * SimpleBar.js - v4.1.0
3
+ * Scrollbars, simpler.
4
+ * https://grsmto.github.io/simplebar/
5
+ *
6
+ * Made by Adrien Denat from a fork by Jonathan Nicol
7
+ * Under MIT License
8
+ */
9
+
10
+ (function (global, factory) {
11
+ typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
12
+ typeof define === 'function' && define.amd ? define(factory) :
13
+ (global = global || self, global.SimpleBar = factory());
14
+ }(this, function () { 'use strict';
15
+
16
+ var aFunction = function (it) {
17
+ if (typeof it != 'function') {
18
+ throw TypeError(String(it) + ' is not a function');
19
+ } return it;
20
+ };
21
+
22
+ // optional / simple context binding
23
+ var bindContext = function (fn, that, length) {
24
+ aFunction(fn);
25
+ if (that === undefined) return fn;
26
+ switch (length) {
27
+ case 0: return function () {
28
+ return fn.call(that);
29
+ };
30
+ case 1: return function (a) {
31
+ return fn.call(that, a);
32
+ };
33
+ case 2: return function (a, b) {
34
+ return fn.call(that, a, b);
35
+ };
36
+ case 3: return function (a, b, c) {
37
+ return fn.call(that, a, b, c);
38
+ };
39
+ }
40
+ return function (/* ...args */) {
41
+ return fn.apply(that, arguments);
42
+ };
43
+ };
44
+
45
+ var fails = function (exec) {
46
+ try {
47
+ return !!exec();
48
+ } catch (error) {
49
+ return true;
50
+ }
51
+ };
52
+
53
+ var toString = {}.toString;
54
+
55
+ var classofRaw = function (it) {
56
+ return toString.call(it).slice(8, -1);
57
+ };
58
+
59
+ // fallback for non-array-like ES3 and non-enumerable old V8 strings
60
+
61
+
62
+ var split = ''.split;
63
+
64
+ var indexedObject = fails(function () {
65
+ // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346
66
+ // eslint-disable-next-line no-prototype-builtins
67
+ return !Object('z').propertyIsEnumerable(0);
68
+ }) ? function (it) {
69
+ return classofRaw(it) == 'String' ? split.call(it, '') : Object(it);
70
+ } : Object;
71
+
72
+ // `RequireObjectCoercible` abstract operation
73
+ // https://tc39.github.io/ecma262/#sec-requireobjectcoercible
74
+ var requireObjectCoercible = function (it) {
75
+ if (it == undefined) throw TypeError("Can't call method on " + it);
76
+ return it;
77
+ };
78
+
79
+ // `ToObject` abstract operation
80
+ // https://tc39.github.io/ecma262/#sec-toobject
81
+ var toObject = function (argument) {
82
+ return Object(requireObjectCoercible(argument));
83
+ };
84
+
85
+ var ceil = Math.ceil;
86
+ var floor = Math.floor;
87
+
88
+ // `ToInteger` abstract operation
89
+ // https://tc39.github.io/ecma262/#sec-tointeger
90
+ var toInteger = function (argument) {
91
+ return isNaN(argument = +argument) ? 0 : (argument > 0 ? floor : ceil)(argument);
92
+ };
93
+
94
+ var min = Math.min;
95
+
96
+ // `ToLength` abstract operation
97
+ // https://tc39.github.io/ecma262/#sec-tolength
98
+ var toLength = function (argument) {
99
+ return argument > 0 ? min(toInteger(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991
100
+ };
101
+
102
+ var isObject = function (it) {
103
+ return typeof it === 'object' ? it !== null : typeof it === 'function';
104
+ };
105
+
106
+ // `IsArray` abstract operation
107
+ // https://tc39.github.io/ecma262/#sec-isarray
108
+ var isArray = Array.isArray || function isArray(arg) {
109
+ return classofRaw(arg) == 'Array';
110
+ };
111
+
112
+ var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
113
+
114
+ function createCommonjsModule(fn, module) {
115
+ return module = { exports: {} }, fn(module, module.exports), module.exports;
116
+ }
117
+
118
+ // https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
119
+ var global$1 = typeof window == 'object' && window && window.Math == Math ? window
120
+ : typeof self == 'object' && self && self.Math == Math ? self
121
+ // eslint-disable-next-line no-new-func
122
+ : Function('return this')();
123
+
124
+ // Thank's IE8 for his funny defineProperty
125
+ var descriptors = !fails(function () {
126
+ return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;
127
+ });
128
+
129
+ var document$1 = global$1.document;
130
+ // typeof document.createElement is 'object' in old IE
131
+ var exist = isObject(document$1) && isObject(document$1.createElement);
132
+
133
+ var documentCreateElement = function (it) {
134
+ return exist ? document$1.createElement(it) : {};
135
+ };
136
+
137
+ // Thank's IE8 for his funny defineProperty
138
+ var ie8DomDefine = !descriptors && !fails(function () {
139
+ return Object.defineProperty(documentCreateElement('div'), 'a', {
140
+ get: function () { return 7; }
141
+ }).a != 7;
142
+ });
143
+
144
+ var anObject = function (it) {
145
+ if (!isObject(it)) {
146
+ throw TypeError(String(it) + ' is not an object');
147
+ } return it;
148
+ };
149
+
150
+ // 7.1.1 ToPrimitive(input [, PreferredType])
151
+
152
+ // instead of the ES6 spec version, we didn't implement @@toPrimitive case
153
+ // and the second argument - flag - preferred type is a string
154
+ var toPrimitive = function (it, S) {
155
+ if (!isObject(it)) return it;
156
+ var fn, val;
157
+ if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
158
+ if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val;
159
+ if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
160
+ throw TypeError("Can't convert object to primitive value");
161
+ };
162
+
163
+ var nativeDefineProperty = Object.defineProperty;
164
+
165
+ var f = descriptors ? nativeDefineProperty : function defineProperty(O, P, Attributes) {
166
+ anObject(O);
167
+ P = toPrimitive(P, true);
168
+ anObject(Attributes);
169
+ if (ie8DomDefine) try {
170
+ return nativeDefineProperty(O, P, Attributes);
171
+ } catch (error) { /* empty */ }
172
+ if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported');
173
+ if ('value' in Attributes) O[P] = Attributes.value;
174
+ return O;
175
+ };
176
+
177
+ var objectDefineProperty = {
178
+ f: f
179
+ };
180
+
181
+ var createPropertyDescriptor = function (bitmap, value) {
182
+ return {
183
+ enumerable: !(bitmap & 1),
184
+ configurable: !(bitmap & 2),
185
+ writable: !(bitmap & 4),
186
+ value: value
187
+ };
188
+ };
189
+
190
+ var hide = descriptors ? function (object, key, value) {
191
+ return objectDefineProperty.f(object, key, createPropertyDescriptor(1, value));
192
+ } : function (object, key, value) {
193
+ object[key] = value;
194
+ return object;
195
+ };
196
+
197
+ var setGlobal = function (key, value) {
198
+ try {
199
+ hide(global$1, key, value);
200
+ } catch (error) {
201
+ global$1[key] = value;
202
+ } return value;
203
+ };
204
+
205
+ var shared = createCommonjsModule(function (module) {
206
+ var SHARED = '__core-js_shared__';
207
+ var store = global$1[SHARED] || setGlobal(SHARED, {});
208
+
209
+ (module.exports = function (key, value) {
210
+ return store[key] || (store[key] = value !== undefined ? value : {});
211
+ })('versions', []).push({
212
+ version: '3.0.1',
213
+ mode: 'global',
214
+ copyright: '© 2019 Denis Pushkarev (zloirock.ru)'
215
+ });
216
+ });
217
+
218
+ var id = 0;
219
+ var postfix = Math.random();
220
+
221
+ var uid = function (key) {
222
+ return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + postfix).toString(36));
223
+ };
224
+
225
+ // Chrome 38 Symbol has incorrect toString conversion
226
+ var nativeSymbol = !fails(function () {
227
+ // eslint-disable-next-line no-undef
228
+ return !String(Symbol());
229
+ });
230
+
231
+ var store = shared('wks');
232
+
233
+ var Symbol$1 = global$1.Symbol;
234
+
235
+
236
+ var wellKnownSymbol = function (name) {
237
+ return store[name] || (store[name] = nativeSymbol && Symbol$1[name]
238
+ || (nativeSymbol ? Symbol$1 : uid)('Symbol.' + name));
239
+ };
240
+
241
+ var SPECIES = wellKnownSymbol('species');
242
+
243
+ // `ArraySpeciesCreate` abstract operation
244
+ // https://tc39.github.io/ecma262/#sec-arrayspeciescreate
245
+ var arraySpeciesCreate = function (originalArray, length) {
246
+ var C;
247
+ if (isArray(originalArray)) {
248
+ C = originalArray.constructor;
249
+ // cross-realm fallback
250
+ if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;
251
+ else if (isObject(C)) {
252
+ C = C[SPECIES];
253
+ if (C === null) C = undefined;
254
+ }
255
+ } return new (C === undefined ? Array : C)(length === 0 ? 0 : length);
256
+ };
257
+
258
+ // `Array.prototype.{ forEach, map, filter, some, every, find, findIndex }` methods implementation
259
+ // 0 -> Array#forEach
260
+ // https://tc39.github.io/ecma262/#sec-array.prototype.foreach
261
+ // 1 -> Array#map
262
+ // https://tc39.github.io/ecma262/#sec-array.prototype.map
263
+ // 2 -> Array#filter
264
+ // https://tc39.github.io/ecma262/#sec-array.prototype.filter
265
+ // 3 -> Array#some
266
+ // https://tc39.github.io/ecma262/#sec-array.prototype.some
267
+ // 4 -> Array#every
268
+ // https://tc39.github.io/ecma262/#sec-array.prototype.every
269
+ // 5 -> Array#find
270
+ // https://tc39.github.io/ecma262/#sec-array.prototype.find
271
+ // 6 -> Array#findIndex
272
+ // https://tc39.github.io/ecma262/#sec-array.prototype.findIndex
273
+ var arrayMethods = function (TYPE, specificCreate) {
274
+ var IS_MAP = TYPE == 1;
275
+ var IS_FILTER = TYPE == 2;
276
+ var IS_SOME = TYPE == 3;
277
+ var IS_EVERY = TYPE == 4;
278
+ var IS_FIND_INDEX = TYPE == 6;
279
+ var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;
280
+ var create = specificCreate || arraySpeciesCreate;
281
+ return function ($this, callbackfn, that) {
282
+ var O = toObject($this);
283
+ var self = indexedObject(O);
284
+ var boundFunction = bindContext(callbackfn, that, 3);
285
+ var length = toLength(self.length);
286
+ var index = 0;
287
+ var target = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined;
288
+ var value, result;
289
+ for (;length > index; index++) if (NO_HOLES || index in self) {
290
+ value = self[index];
291
+ result = boundFunction(value, index, O);
292
+ if (TYPE) {
293
+ if (IS_MAP) target[index] = result; // map
294
+ else if (result) switch (TYPE) {
295
+ case 3: return true; // some
296
+ case 5: return value; // find
297
+ case 6: return index; // findIndex
298
+ case 2: target.push(value); // filter
299
+ } else if (IS_EVERY) return false; // every
300
+ }
301
+ }
302
+ return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : target;
303
+ };
304
+ };
305
+
306
+ var SPECIES$1 = wellKnownSymbol('species');
307
+
308
+ var arrayMethodHasSpeciesSupport = function (METHOD_NAME) {
309
+ return !fails(function () {
310
+ var array = [];
311
+ var constructor = array.constructor = {};
312
+ constructor[SPECIES$1] = function () {
313
+ return { foo: 1 };
314
+ };
315
+ return array[METHOD_NAME](Boolean).foo !== 1;
316
+ });
317
+ };
318
+
319
+ var nativePropertyIsEnumerable = {}.propertyIsEnumerable;
320
+ var nativeGetOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
321
+
322
+ // Nashorn ~ JDK8 bug
323
+ var NASHORN_BUG = nativeGetOwnPropertyDescriptor && !nativePropertyIsEnumerable.call({ 1: 2 }, 1);
324
+
325
+ var f$1 = NASHORN_BUG ? function propertyIsEnumerable(V) {
326
+ var descriptor = nativeGetOwnPropertyDescriptor(this, V);
327
+ return !!descriptor && descriptor.enumerable;
328
+ } : nativePropertyIsEnumerable;
329
+
330
+ var objectPropertyIsEnumerable = {
331
+ f: f$1
332
+ };
333
+
334
+ // toObject with fallback for non-array-like ES3 strings
335
+
336
+
337
+
338
+ var toIndexedObject = function (it) {
339
+ return indexedObject(requireObjectCoercible(it));
340
+ };
341
+
342
+ var hasOwnProperty = {}.hasOwnProperty;
343
+
344
+ var has = function (it, key) {
345
+ return hasOwnProperty.call(it, key);
346
+ };
347
+
348
+ var nativeGetOwnPropertyDescriptor$1 = Object.getOwnPropertyDescriptor;
349
+
350
+ var f$2 = descriptors ? nativeGetOwnPropertyDescriptor$1 : function getOwnPropertyDescriptor(O, P) {
351
+ O = toIndexedObject(O);
352
+ P = toPrimitive(P, true);
353
+ if (ie8DomDefine) try {
354
+ return nativeGetOwnPropertyDescriptor$1(O, P);
355
+ } catch (error) { /* empty */ }
356
+ if (has(O, P)) return createPropertyDescriptor(!objectPropertyIsEnumerable.f.call(O, P), O[P]);
357
+ };
358
+
359
+ var objectGetOwnPropertyDescriptor = {
360
+ f: f$2
361
+ };
362
+
363
+ var functionToString = shared('native-function-to-string', Function.toString);
364
+
365
+ var WeakMap$1 = global$1.WeakMap;
366
+
367
+ var nativeWeakMap = typeof WeakMap$1 === 'function' && /native code/.test(functionToString.call(WeakMap$1));
368
+
369
+ var shared$1 = shared('keys');
370
+
371
+
372
+ var sharedKey = function (key) {
373
+ return shared$1[key] || (shared$1[key] = uid(key));
374
+ };
375
+
376
+ var hiddenKeys = {};
377
+
378
+ var WeakMap$2 = global$1.WeakMap;
379
+ var set, get, has$1;
380
+
381
+ var enforce = function (it) {
382
+ return has$1(it) ? get(it) : set(it, {});
383
+ };
384
+
385
+ var getterFor = function (TYPE) {
386
+ return function (it) {
387
+ var state;
388
+ if (!isObject(it) || (state = get(it)).type !== TYPE) {
389
+ throw TypeError('Incompatible receiver, ' + TYPE + ' required');
390
+ } return state;
391
+ };
392
+ };
393
+
394
+ if (nativeWeakMap) {
395
+ var store$1 = new WeakMap$2();
396
+ var wmget = store$1.get;
397
+ var wmhas = store$1.has;
398
+ var wmset = store$1.set;
399
+ set = function (it, metadata) {
400
+ wmset.call(store$1, it, metadata);
401
+ return metadata;
402
+ };
403
+ get = function (it) {
404
+ return wmget.call(store$1, it) || {};
405
+ };
406
+ has$1 = function (it) {
407
+ return wmhas.call(store$1, it);
408
+ };
409
+ } else {
410
+ var STATE = sharedKey('state');
411
+ hiddenKeys[STATE] = true;
412
+ set = function (it, metadata) {
413
+ hide(it, STATE, metadata);
414
+ return metadata;
415
+ };
416
+ get = function (it) {
417
+ return has(it, STATE) ? it[STATE] : {};
418
+ };
419
+ has$1 = function (it) {
420
+ return has(it, STATE);
421
+ };
422
+ }
423
+
424
+ var internalState = {
425
+ set: set,
426
+ get: get,
427
+ has: has$1,
428
+ enforce: enforce,
429
+ getterFor: getterFor
430
+ };
431
+
432
+ var redefine = createCommonjsModule(function (module) {
433
+ var getInternalState = internalState.get;
434
+ var enforceInternalState = internalState.enforce;
435
+ var TEMPLATE = String(functionToString).split('toString');
436
+
437
+ shared('inspectSource', function (it) {
438
+ return functionToString.call(it);
439
+ });
440
+
441
+ (module.exports = function (O, key, value, options) {
442
+ var unsafe = options ? !!options.unsafe : false;
443
+ var simple = options ? !!options.enumerable : false;
444
+ var noTargetGet = options ? !!options.noTargetGet : false;
445
+ if (typeof value == 'function') {
446
+ if (typeof key == 'string' && !has(value, 'name')) hide(value, 'name', key);
447
+ enforceInternalState(value).source = TEMPLATE.join(typeof key == 'string' ? key : '');
448
+ }
449
+ if (O === global$1) {
450
+ if (simple) O[key] = value;
451
+ else setGlobal(key, value);
452
+ return;
453
+ } else if (!unsafe) {
454
+ delete O[key];
455
+ } else if (!noTargetGet && O[key]) {
456
+ simple = true;
457
+ }
458
+ if (simple) O[key] = value;
459
+ else hide(O, key, value);
460
+ // add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative
461
+ })(Function.prototype, 'toString', function toString() {
462
+ return typeof this == 'function' && getInternalState(this).source || functionToString.call(this);
463
+ });
464
+ });
465
+
466
+ var max = Math.max;
467
+ var min$1 = Math.min;
468
+
469
+ // Helper for a popular repeating case of the spec:
470
+ // Let integer be ? ToInteger(index).
471
+ // If integer < 0, let result be max((length + integer), 0); else let result be min(length, length).
472
+ var toAbsoluteIndex = function (index, length) {
473
+ var integer = toInteger(index);
474
+ return integer < 0 ? max(integer + length, 0) : min$1(integer, length);
475
+ };
476
+
477
+ // `Array.prototype.{ indexOf, includes }` methods implementation
478
+ // false -> Array#indexOf
479
+ // https://tc39.github.io/ecma262/#sec-array.prototype.indexof
480
+ // true -> Array#includes
481
+ // https://tc39.github.io/ecma262/#sec-array.prototype.includes
482
+ var arrayIncludes = function (IS_INCLUDES) {
483
+ return function ($this, el, fromIndex) {
484
+ var O = toIndexedObject($this);
485
+ var length = toLength(O.length);
486
+ var index = toAbsoluteIndex(fromIndex, length);
487
+ var value;
488
+ // Array#includes uses SameValueZero equality algorithm
489
+ // eslint-disable-next-line no-self-compare
490
+ if (IS_INCLUDES && el != el) while (length > index) {
491
+ value = O[index++];
492
+ // eslint-disable-next-line no-self-compare
493
+ if (value != value) return true;
494
+ // Array#indexOf ignores holes, Array#includes - not
495
+ } else for (;length > index; index++) if (IS_INCLUDES || index in O) {
496
+ if (O[index] === el) return IS_INCLUDES || index || 0;
497
+ } return !IS_INCLUDES && -1;
498
+ };
499
+ };
500
+
501
+ var arrayIndexOf = arrayIncludes(false);
502
+
503
+
504
+ var objectKeysInternal = function (object, names) {
505
+ var O = toIndexedObject(object);
506
+ var i = 0;
507
+ var result = [];
508
+ var key;
509
+ for (key in O) !has(hiddenKeys, key) && has(O, key) && result.push(key);
510
+ // Don't enum bug & hidden keys
511
+ while (names.length > i) if (has(O, key = names[i++])) {
512
+ ~arrayIndexOf(result, key) || result.push(key);
513
+ }
514
+ return result;
515
+ };
516
+
517
+ // IE8- don't enum bug keys
518
+ var enumBugKeys = [
519
+ 'constructor',
520
+ 'hasOwnProperty',
521
+ 'isPrototypeOf',
522
+ 'propertyIsEnumerable',
523
+ 'toLocaleString',
524
+ 'toString',
525
+ 'valueOf'
526
+ ];
527
+
528
+ // 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O)
529
+
530
+ var hiddenKeys$1 = enumBugKeys.concat('length', 'prototype');
531
+
532
+ var f$3 = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {
533
+ return objectKeysInternal(O, hiddenKeys$1);
534
+ };
535
+
536
+ var objectGetOwnPropertyNames = {
537
+ f: f$3
538
+ };
539
+
540
+ var f$4 = Object.getOwnPropertySymbols;
541
+
542
+ var objectGetOwnPropertySymbols = {
543
+ f: f$4
544
+ };
545
+
546
+ var Reflect = global$1.Reflect;
547
+
548
+ // all object keys, includes non-enumerable and symbols
549
+ var ownKeys = Reflect && Reflect.ownKeys || function ownKeys(it) {
550
+ var keys = objectGetOwnPropertyNames.f(anObject(it));
551
+ var getOwnPropertySymbols = objectGetOwnPropertySymbols.f;
552
+ return getOwnPropertySymbols ? keys.concat(getOwnPropertySymbols(it)) : keys;
553
+ };
554
+
555
+ var copyConstructorProperties = function (target, source) {
556
+ var keys = ownKeys(source);
557
+ var defineProperty = objectDefineProperty.f;
558
+ var getOwnPropertyDescriptor = objectGetOwnPropertyDescriptor.f;
559
+ for (var i = 0; i < keys.length; i++) {
560
+ var key = keys[i];
561
+ if (!has(target, key)) defineProperty(target, key, getOwnPropertyDescriptor(source, key));
562
+ }
563
+ };
564
+
565
+ var replacement = /#|\.prototype\./;
566
+
567
+ var isForced = function (feature, detection) {
568
+ var value = data[normalize(feature)];
569
+ return value == POLYFILL ? true
570
+ : value == NATIVE ? false
571
+ : typeof detection == 'function' ? fails(detection)
572
+ : !!detection;
573
+ };
574
+
575
+ var normalize = isForced.normalize = function (string) {
576
+ return String(string).replace(replacement, '.').toLowerCase();
577
+ };
578
+
579
+ var data = isForced.data = {};
580
+ var NATIVE = isForced.NATIVE = 'N';
581
+ var POLYFILL = isForced.POLYFILL = 'P';
582
+
583
+ var isForced_1 = isForced;
584
+
585
+ var getOwnPropertyDescriptor = objectGetOwnPropertyDescriptor.f;
586
+
587
+
588
+
589
+
590
+
591
+
592
+ /*
593
+ options.target - name of the target object
594
+ options.global - target is the global object
595
+ options.stat - export as static methods of target
596
+ options.proto - export as prototype methods of target
597
+ options.real - real prototype method for the `pure` version
598
+ options.forced - export even if the native feature is available
599
+ options.bind - bind methods to the target, required for the `pure` version
600
+ options.wrap - wrap constructors to preventing global pollution, required for the `pure` version
601
+ options.unsafe - use the simple assignment of property instead of delete + defineProperty
602
+ options.sham - add a flag to not completely full polyfills
603
+ options.enumerable - export as enumerable property
604
+ options.noTargetGet - prevent calling a getter on target
605
+ */
606
+ var _export = function (options, source) {
607
+ var TARGET = options.target;
608
+ var GLOBAL = options.global;
609
+ var STATIC = options.stat;
610
+ var FORCED, target, key, targetProperty, sourceProperty, descriptor;
611
+ if (GLOBAL) {
612
+ target = global$1;
613
+ } else if (STATIC) {
614
+ target = global$1[TARGET] || setGlobal(TARGET, {});
615
+ } else {
616
+ target = (global$1[TARGET] || {}).prototype;
617
+ }
618
+ if (target) for (key in source) {
619
+ sourceProperty = source[key];
620
+ if (options.noTargetGet) {
621
+ descriptor = getOwnPropertyDescriptor(target, key);
622
+ targetProperty = descriptor && descriptor.value;
623
+ } else targetProperty = target[key];
624
+ FORCED = isForced_1(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);
625
+ // contained in target
626
+ if (!FORCED && targetProperty !== undefined) {
627
+ if (typeof sourceProperty === typeof targetProperty) continue;
628
+ copyConstructorProperties(sourceProperty, targetProperty);
629
+ }
630
+ // add a flag to not completely full polyfills
631
+ if (options.sham || (targetProperty && targetProperty.sham)) {
632
+ hide(sourceProperty, 'sham', true);
633
+ }
634
+ // extend global
635
+ redefine(target, key, sourceProperty, options);
636
+ }
637
+ };
638
+
639
+ var internalFilter = arrayMethods(2);
640
+
641
+ var SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('filter');
642
+
643
+ // `Array.prototype.filter` method
644
+ // https://tc39.github.io/ecma262/#sec-array.prototype.filter
645
+ // with adding support of @@species
646
+ _export({ target: 'Array', proto: true, forced: !SPECIES_SUPPORT }, {
647
+ filter: function filter(callbackfn /* , thisArg */) {
648
+ return internalFilter(this, callbackfn, arguments[1]);
649
+ }
650
+ });
651
+
652
+ var sloppyArrayMethod = function (METHOD_NAME, argument) {
653
+ var method = [][METHOD_NAME];
654
+ return !method || !fails(function () {
655
+ // eslint-disable-next-line no-useless-call,no-throw-literal
656
+ method.call(null, argument || function () { throw 1; }, 1);
657
+ });
658
+ };
659
+
660
+ var nativeForEach = [].forEach;
661
+ var internalForEach = arrayMethods(0);
662
+
663
+ var SLOPPY_METHOD = sloppyArrayMethod('forEach');
664
+
665
+ // `Array.prototype.forEach` method implementation
666
+ // https://tc39.github.io/ecma262/#sec-array.prototype.foreach
667
+ var arrayForEach = SLOPPY_METHOD ? function forEach(callbackfn /* , thisArg */) {
668
+ return internalForEach(this, callbackfn, arguments[1]);
669
+ } : nativeForEach;
670
+
671
+ // `Array.prototype.forEach` method
672
+ // https://tc39.github.io/ecma262/#sec-array.prototype.foreach
673
+ _export({ target: 'Array', proto: true, forced: [].forEach != arrayForEach }, { forEach: arrayForEach });
674
+
675
+ // `Array.prototype.{ reduce, reduceRight }` methods implementation
676
+ // https://tc39.github.io/ecma262/#sec-array.prototype.reduce
677
+ // https://tc39.github.io/ecma262/#sec-array.prototype.reduceright
678
+ var arrayReduce = function (that, callbackfn, argumentsLength, memo, isRight) {
679
+ aFunction(callbackfn);
680
+ var O = toObject(that);
681
+ var self = indexedObject(O);
682
+ var length = toLength(O.length);
683
+ var index = isRight ? length - 1 : 0;
684
+ var i = isRight ? -1 : 1;
685
+ if (argumentsLength < 2) while (true) {
686
+ if (index in self) {
687
+ memo = self[index];
688
+ index += i;
689
+ break;
690
+ }
691
+ index += i;
692
+ if (isRight ? index < 0 : length <= index) {
693
+ throw TypeError('Reduce of empty array with no initial value');
694
+ }
695
+ }
696
+ for (;isRight ? index >= 0 : length > index; index += i) if (index in self) {
697
+ memo = callbackfn(memo, self[index], index, O);
698
+ }
699
+ return memo;
700
+ };
701
+
702
+ var SLOPPY_METHOD$1 = sloppyArrayMethod('reduce');
703
+
704
+ // `Array.prototype.reduce` method
705
+ // https://tc39.github.io/ecma262/#sec-array.prototype.reduce
706
+ _export({ target: 'Array', proto: true, forced: SLOPPY_METHOD$1 }, {
707
+ reduce: function reduce(callbackfn /* , initialValue */) {
708
+ return arrayReduce(this, callbackfn, arguments.length, arguments[1], false);
709
+ }
710
+ });
711
+
712
+ var defineProperty = objectDefineProperty.f;
713
+ var FunctionPrototype = Function.prototype;
714
+ var FunctionPrototypeToString = FunctionPrototype.toString;
715
+ var nameRE = /^\s*function ([^ (]*)/;
716
+ var NAME = 'name';
717
+
718
+ // Function instances `.name` property
719
+ // https://tc39.github.io/ecma262/#sec-function-instances-name
720
+ if (descriptors && !(NAME in FunctionPrototype)) {
721
+ defineProperty(FunctionPrototype, NAME, {
722
+ configurable: true,
723
+ get: function () {
724
+ try {
725
+ return FunctionPrototypeToString.call(this).match(nameRE)[1];
726
+ } catch (error) {
727
+ return '';
728
+ }
729
+ }
730
+ });
731
+ }
732
+
733
+ // 19.1.2.14 / 15.2.3.14 Object.keys(O)
734
+
735
+
736
+
737
+ var objectKeys = Object.keys || function keys(O) {
738
+ return objectKeysInternal(O, enumBugKeys);
739
+ };
740
+
741
+ // 19.1.2.1 Object.assign(target, source, ...)
742
+
743
+
744
+
745
+
746
+
747
+ var nativeAssign = Object.assign;
748
+
749
+ // should work with symbols and should have deterministic property order (V8 bug)
750
+ var objectAssign = !nativeAssign || fails(function () {
751
+ var A = {};
752
+ var B = {};
753
+ // eslint-disable-next-line no-undef
754
+ var symbol = Symbol();
755
+ var alphabet = 'abcdefghijklmnopqrst';
756
+ A[symbol] = 7;
757
+ alphabet.split('').forEach(function (chr) { B[chr] = chr; });
758
+ return nativeAssign({}, A)[symbol] != 7 || objectKeys(nativeAssign({}, B)).join('') != alphabet;
759
+ }) ? function assign(target, source) { // eslint-disable-line no-unused-vars
760
+ var T = toObject(target);
761
+ var argumentsLength = arguments.length;
762
+ var index = 1;
763
+ var getOwnPropertySymbols = objectGetOwnPropertySymbols.f;
764
+ var propertyIsEnumerable = objectPropertyIsEnumerable.f;
765
+ while (argumentsLength > index) {
766
+ var S = indexedObject(arguments[index++]);
767
+ var keys = getOwnPropertySymbols ? objectKeys(S).concat(getOwnPropertySymbols(S)) : objectKeys(S);
768
+ var length = keys.length;
769
+ var j = 0;
770
+ var key;
771
+ while (length > j) if (propertyIsEnumerable.call(S, key = keys[j++])) T[key] = S[key];
772
+ } return T;
773
+ } : nativeAssign;
774
+
775
+ // `Object.assign` method
776
+ // https://tc39.github.io/ecma262/#sec-object.assign
777
+ _export({ target: 'Object', stat: true, forced: Object.assign !== objectAssign }, { assign: objectAssign });
778
+
779
+ // a string of all valid unicode whitespaces
780
+ // eslint-disable-next-line max-len
781
+ var whitespaces = '\u0009\u000A\u000B\u000C\u000D\u0020\u00A0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF';
782
+
783
+ var whitespace = '[' + whitespaces + ']';
784
+ var ltrim = RegExp('^' + whitespace + whitespace + '*');
785
+ var rtrim = RegExp(whitespace + whitespace + '*$');
786
+
787
+ // 1 -> String#trimStart
788
+ // 2 -> String#trimEnd
789
+ // 3 -> String#trim
790
+ var stringTrim = function (string, TYPE) {
791
+ string = String(requireObjectCoercible(string));
792
+ if (TYPE & 1) string = string.replace(ltrim, '');
793
+ if (TYPE & 2) string = string.replace(rtrim, '');
794
+ return string;
795
+ };
796
+
797
+ var nativeParseInt = global$1.parseInt;
798
+
799
+
800
+ var hex = /^[-+]?0[xX]/;
801
+ var FORCED = nativeParseInt(whitespaces + '08') !== 8 || nativeParseInt(whitespaces + '0x16') !== 22;
802
+
803
+ var _parseInt = FORCED ? function parseInt(str, radix) {
804
+ var string = stringTrim(String(str), 3);
805
+ return nativeParseInt(string, (radix >>> 0) || (hex.test(string) ? 16 : 10));
806
+ } : nativeParseInt;
807
+
808
+ // `parseInt` method
809
+ // https://tc39.github.io/ecma262/#sec-parseint-string-radix
810
+ _export({ global: true, forced: parseInt != _parseInt }, {
811
+ parseInt: _parseInt
812
+ });
813
+
814
+ // `RegExp.prototype.flags` getter implementation
815
+ // https://tc39.github.io/ecma262/#sec-get-regexp.prototype.flags
816
+ var regexpFlags = function () {
817
+ var that = anObject(this);
818
+ var result = '';
819
+ if (that.global) result += 'g';
820
+ if (that.ignoreCase) result += 'i';
821
+ if (that.multiline) result += 'm';
822
+ if (that.unicode) result += 'u';
823
+ if (that.sticky) result += 'y';
824
+ return result;
825
+ };
826
+
827
+ var nativeExec = RegExp.prototype.exec;
828
+ // This always refers to the native implementation, because the
829
+ // String#replace polyfill uses ./fix-regexp-well-known-symbol-logic.js,
830
+ // which loads this file before patching the method.
831
+ var nativeReplace = String.prototype.replace;
832
+
833
+ var patchedExec = nativeExec;
834
+
835
+ var UPDATES_LAST_INDEX_WRONG = (function () {
836
+ var re1 = /a/;
837
+ var re2 = /b*/g;
838
+ nativeExec.call(re1, 'a');
839
+ nativeExec.call(re2, 'a');
840
+ return re1.lastIndex !== 0 || re2.lastIndex !== 0;
841
+ })();
842
+
843
+ // nonparticipating capturing group, copied from es5-shim's String#split patch.
844
+ var NPCG_INCLUDED = /()??/.exec('')[1] !== undefined;
845
+
846
+ var PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED;
847
+
848
+ if (PATCH) {
849
+ patchedExec = function exec(str) {
850
+ var re = this;
851
+ var lastIndex, reCopy, match, i;
852
+
853
+ if (NPCG_INCLUDED) {
854
+ reCopy = new RegExp('^' + re.source + '$(?!\\s)', regexpFlags.call(re));
855
+ }
856
+ if (UPDATES_LAST_INDEX_WRONG) lastIndex = re.lastIndex;
857
+
858
+ match = nativeExec.call(re, str);
859
+
860
+ if (UPDATES_LAST_INDEX_WRONG && match) {
861
+ re.lastIndex = re.global ? match.index + match[0].length : lastIndex;
862
+ }
863
+ if (NPCG_INCLUDED && match && match.length > 1) {
864
+ // Fix browsers whose `exec` methods don't consistently return `undefined`
865
+ // for NPCG, like IE8. NOTE: This doesn' work for /(.?)?/
866
+ nativeReplace.call(match[0], reCopy, function () {
867
+ for (i = 1; i < arguments.length - 2; i++) {
868
+ if (arguments[i] === undefined) match[i] = undefined;
869
+ }
870
+ });
871
+ }
872
+
873
+ return match;
874
+ };
875
+ }
876
+
877
+ var regexpExec = patchedExec;
878
+
879
+ _export({ target: 'RegExp', proto: true, forced: /./.exec !== regexpExec }, {
880
+ exec: regexpExec
881
+ });
882
+
883
+ // CONVERT_TO_STRING: true -> String#at
884
+ // CONVERT_TO_STRING: false -> String#codePointAt
885
+ var stringAt = function (that, pos, CONVERT_TO_STRING) {
886
+ var S = String(requireObjectCoercible(that));
887
+ var position = toInteger(pos);
888
+ var size = S.length;
889
+ var first, second;
890
+ if (position < 0 || position >= size) return CONVERT_TO_STRING ? '' : undefined;
891
+ first = S.charCodeAt(position);
892
+ return first < 0xD800 || first > 0xDBFF || position + 1 === size
893
+ || (second = S.charCodeAt(position + 1)) < 0xDC00 || second > 0xDFFF
894
+ ? CONVERT_TO_STRING ? S.charAt(position) : first
895
+ : CONVERT_TO_STRING ? S.slice(position, position + 2) : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000;
896
+ };
897
+
898
+ // `AdvanceStringIndex` abstract operation
899
+ // https://tc39.github.io/ecma262/#sec-advancestringindex
900
+ var advanceStringIndex = function (S, index, unicode) {
901
+ return index + (unicode ? stringAt(S, index, true).length : 1);
902
+ };
903
+
904
+ // `RegExpExec` abstract operation
905
+ // https://tc39.github.io/ecma262/#sec-regexpexec
906
+ var regexpExecAbstract = function (R, S) {
907
+ var exec = R.exec;
908
+ if (typeof exec === 'function') {
909
+ var result = exec.call(R, S);
910
+ if (typeof result !== 'object') {
911
+ throw TypeError('RegExp exec method returned something other than an Object or null');
912
+ }
913
+ return result;
914
+ }
915
+
916
+ if (classofRaw(R) !== 'RegExp') {
917
+ throw TypeError('RegExp#exec called on incompatible receiver');
918
+ }
919
+
920
+ return regexpExec.call(R, S);
921
+ };
922
+
923
+ var SPECIES$2 = wellKnownSymbol('species');
924
+
925
+ var REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () {
926
+ // #replace needs built-in support for named groups.
927
+ // #match works fine because it just return the exec results, even if it has
928
+ // a "grops" property.
929
+ var re = /./;
930
+ re.exec = function () {
931
+ var result = [];
932
+ result.groups = { a: '7' };
933
+ return result;
934
+ };
935
+ return ''.replace(re, '$<a>') !== '7';
936
+ });
937
+
938
+ // Chrome 51 has a buggy "split" implementation when RegExp#exec !== nativeExec
939
+ // Weex JS has frozen built-in prototypes, so use try / catch wrapper
940
+ var SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = !fails(function () {
941
+ var re = /(?:)/;
942
+ var originalExec = re.exec;
943
+ re.exec = function () { return originalExec.apply(this, arguments); };
944
+ var result = 'ab'.split(re);
945
+ return result.length !== 2 || result[0] !== 'a' || result[1] !== 'b';
946
+ });
947
+
948
+ var fixRegexpWellKnownSymbolLogic = function (KEY, length, exec, sham) {
949
+ var SYMBOL = wellKnownSymbol(KEY);
950
+
951
+ var DELEGATES_TO_SYMBOL = !fails(function () {
952
+ // String methods call symbol-named RegEp methods
953
+ var O = {};
954
+ O[SYMBOL] = function () { return 7; };
955
+ return ''[KEY](O) != 7;
956
+ });
957
+
958
+ var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL && !fails(function () {
959
+ // Symbol-named RegExp methods call .exec
960
+ var execCalled = false;
961
+ var re = /a/;
962
+ re.exec = function () { execCalled = true; return null; };
963
+
964
+ if (KEY === 'split') {
965
+ // RegExp[@@split] doesn't call the regex's exec method, but first creates
966
+ // a new one. We need to return the patched regex when creating the new one.
967
+ re.constructor = {};
968
+ re.constructor[SPECIES$2] = function () { return re; };
969
+ }
970
+
971
+ re[SYMBOL]('');
972
+ return !execCalled;
973
+ });
974
+
975
+ if (
976
+ !DELEGATES_TO_SYMBOL ||
977
+ !DELEGATES_TO_EXEC ||
978
+ (KEY === 'replace' && !REPLACE_SUPPORTS_NAMED_GROUPS) ||
979
+ (KEY === 'split' && !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC)
980
+ ) {
981
+ var nativeRegExpMethod = /./[SYMBOL];
982
+ var methods = exec(SYMBOL, ''[KEY], function (nativeMethod, regexp, str, arg2, forceStringMethod) {
983
+ if (regexp.exec === regexpExec) {
984
+ if (DELEGATES_TO_SYMBOL && !forceStringMethod) {
985
+ // The native String method already delegates to @@method (this
986
+ // polyfilled function), leasing to infinite recursion.
987
+ // We avoid it by directly calling the native @@method method.
988
+ return { done: true, value: nativeRegExpMethod.call(regexp, str, arg2) };
989
+ }
990
+ return { done: true, value: nativeMethod.call(str, regexp, arg2) };
991
+ }
992
+ return { done: false };
993
+ });
994
+ var stringMethod = methods[0];
995
+ var regexMethod = methods[1];
996
+
997
+ redefine(String.prototype, KEY, stringMethod);
998
+ redefine(RegExp.prototype, SYMBOL, length == 2
999
+ // 21.2.5.8 RegExp.prototype[@@replace](string, replaceValue)
1000
+ // 21.2.5.11 RegExp.prototype[@@split](string, limit)
1001
+ ? function (string, arg) { return regexMethod.call(string, this, arg); }
1002
+ // 21.2.5.6 RegExp.prototype[@@match](string)
1003
+ // 21.2.5.9 RegExp.prototype[@@search](string)
1004
+ : function (string) { return regexMethod.call(string, this); }
1005
+ );
1006
+ if (sham) hide(RegExp.prototype[SYMBOL], 'sham', true);
1007
+ }
1008
+ };
1009
+
1010
+ // @@match logic
1011
+ fixRegexpWellKnownSymbolLogic(
1012
+ 'match',
1013
+ 1,
1014
+ function (MATCH, nativeMatch, maybeCallNative) {
1015
+ return [
1016
+ // `String.prototype.match` method
1017
+ // https://tc39.github.io/ecma262/#sec-string.prototype.match
1018
+ function match(regexp) {
1019
+ var O = requireObjectCoercible(this);
1020
+ var matcher = regexp == undefined ? undefined : regexp[MATCH];
1021
+ return matcher !== undefined ? matcher.call(regexp, O) : new RegExp(regexp)[MATCH](String(O));
1022
+ },
1023
+ // `RegExp.prototype[@@match]` method
1024
+ // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@match
1025
+ function (regexp) {
1026
+ var res = maybeCallNative(nativeMatch, regexp, this);
1027
+ if (res.done) return res.value;
1028
+
1029
+ var rx = anObject(regexp);
1030
+ var S = String(this);
1031
+
1032
+ if (!rx.global) return regexpExecAbstract(rx, S);
1033
+
1034
+ var fullUnicode = rx.unicode;
1035
+ rx.lastIndex = 0;
1036
+ var A = [];
1037
+ var n = 0;
1038
+ var result;
1039
+ while ((result = regexpExecAbstract(rx, S)) !== null) {
1040
+ var matchStr = String(result[0]);
1041
+ A[n] = matchStr;
1042
+ if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);
1043
+ n++;
1044
+ }
1045
+ return n === 0 ? null : A;
1046
+ }
1047
+ ];
1048
+ }
1049
+ );
1050
+
1051
+ var max$1 = Math.max;
1052
+ var min$2 = Math.min;
1053
+ var floor$1 = Math.floor;
1054
+ var SUBSTITUTION_SYMBOLS = /\$([$&`']|\d\d?|<[^>]*>)/g;
1055
+ var SUBSTITUTION_SYMBOLS_NO_NAMED = /\$([$&`']|\d\d?)/g;
1056
+
1057
+ var maybeToString = function (it) {
1058
+ return it === undefined ? it : String(it);
1059
+ };
1060
+
1061
+ // @@replace logic
1062
+ fixRegexpWellKnownSymbolLogic(
1063
+ 'replace',
1064
+ 2,
1065
+ function (REPLACE, nativeReplace, maybeCallNative) {
1066
+ return [
1067
+ // `String.prototype.replace` method
1068
+ // https://tc39.github.io/ecma262/#sec-string.prototype.replace
1069
+ function replace(searchValue, replaceValue) {
1070
+ var O = requireObjectCoercible(this);
1071
+ var replacer = searchValue == undefined ? undefined : searchValue[REPLACE];
1072
+ return replacer !== undefined
1073
+ ? replacer.call(searchValue, O, replaceValue)
1074
+ : nativeReplace.call(String(O), searchValue, replaceValue);
1075
+ },
1076
+ // `RegExp.prototype[@@replace]` method
1077
+ // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@replace
1078
+ function (regexp, replaceValue) {
1079
+ var res = maybeCallNative(nativeReplace, regexp, this, replaceValue);
1080
+ if (res.done) return res.value;
1081
+
1082
+ var rx = anObject(regexp);
1083
+ var S = String(this);
1084
+
1085
+ var functionalReplace = typeof replaceValue === 'function';
1086
+ if (!functionalReplace) replaceValue = String(replaceValue);
1087
+
1088
+ var global = rx.global;
1089
+ if (global) {
1090
+ var fullUnicode = rx.unicode;
1091
+ rx.lastIndex = 0;
1092
+ }
1093
+ var results = [];
1094
+ while (true) {
1095
+ var result = regexpExecAbstract(rx, S);
1096
+ if (result === null) break;
1097
+
1098
+ results.push(result);
1099
+ if (!global) break;
1100
+
1101
+ var matchStr = String(result[0]);
1102
+ if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);
1103
+ }
1104
+
1105
+ var accumulatedResult = '';
1106
+ var nextSourcePosition = 0;
1107
+ for (var i = 0; i < results.length; i++) {
1108
+ result = results[i];
1109
+
1110
+ var matched = String(result[0]);
1111
+ var position = max$1(min$2(toInteger(result.index), S.length), 0);
1112
+ var captures = [];
1113
+ // NOTE: This is equivalent to
1114
+ // captures = result.slice(1).map(maybeToString)
1115
+ // but for some reason `nativeSlice.call(result, 1, result.length)` (called in
1116
+ // the slice polyfill when slicing native arrays) "doesn't work" in safari 9 and
1117
+ // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it.
1118
+ for (var j = 1; j < result.length; j++) captures.push(maybeToString(result[j]));
1119
+ var namedCaptures = result.groups;
1120
+ if (functionalReplace) {
1121
+ var replacerArgs = [matched].concat(captures, position, S);
1122
+ if (namedCaptures !== undefined) replacerArgs.push(namedCaptures);
1123
+ var replacement = String(replaceValue.apply(undefined, replacerArgs));
1124
+ } else {
1125
+ replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue);
1126
+ }
1127
+ if (position >= nextSourcePosition) {
1128
+ accumulatedResult += S.slice(nextSourcePosition, position) + replacement;
1129
+ nextSourcePosition = position + matched.length;
1130
+ }
1131
+ }
1132
+ return accumulatedResult + S.slice(nextSourcePosition);
1133
+ }
1134
+ ];
1135
+
1136
+ // https://tc39.github.io/ecma262/#sec-getsubstitution
1137
+ function getSubstitution(matched, str, position, captures, namedCaptures, replacement) {
1138
+ var tailPos = position + matched.length;
1139
+ var m = captures.length;
1140
+ var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED;
1141
+ if (namedCaptures !== undefined) {
1142
+ namedCaptures = toObject(namedCaptures);
1143
+ symbols = SUBSTITUTION_SYMBOLS;
1144
+ }
1145
+ return nativeReplace.call(replacement, symbols, function (match, ch) {
1146
+ var capture;
1147
+ switch (ch.charAt(0)) {
1148
+ case '$': return '$';
1149
+ case '&': return matched;
1150
+ case '`': return str.slice(0, position);
1151
+ case "'": return str.slice(tailPos);
1152
+ case '<':
1153
+ capture = namedCaptures[ch.slice(1, -1)];
1154
+ break;
1155
+ default: // \d\d?
1156
+ var n = +ch;
1157
+ if (n === 0) return match;
1158
+ if (n > m) {
1159
+ var f = floor$1(n / 10);
1160
+ if (f === 0) return match;
1161
+ if (f <= m) return captures[f - 1] === undefined ? ch.charAt(1) : captures[f - 1] + ch.charAt(1);
1162
+ return match;
1163
+ }
1164
+ capture = captures[n - 1];
1165
+ }
1166
+ return capture === undefined ? '' : capture;
1167
+ });
1168
+ }
1169
+ }
1170
+ );
1171
+
1172
+ // iterable DOM collections
1173
+ // flag - `iterable` interface - 'entries', 'keys', 'values', 'forEach' methods
1174
+ var domIterables = {
1175
+ CSSRuleList: 0,
1176
+ CSSStyleDeclaration: 0,
1177
+ CSSValueList: 0,
1178
+ ClientRectList: 0,
1179
+ DOMRectList: 0,
1180
+ DOMStringList: 0,
1181
+ DOMTokenList: 1,
1182
+ DataTransferItemList: 0,
1183
+ FileList: 0,
1184
+ HTMLAllCollection: 0,
1185
+ HTMLCollection: 0,
1186
+ HTMLFormElement: 0,
1187
+ HTMLSelectElement: 0,
1188
+ MediaList: 0,
1189
+ MimeTypeArray: 0,
1190
+ NamedNodeMap: 0,
1191
+ NodeList: 1,
1192
+ PaintRequestList: 0,
1193
+ Plugin: 0,
1194
+ PluginArray: 0,
1195
+ SVGLengthList: 0,
1196
+ SVGNumberList: 0,
1197
+ SVGPathSegList: 0,
1198
+ SVGPointList: 0,
1199
+ SVGStringList: 0,
1200
+ SVGTransformList: 0,
1201
+ SourceBufferList: 0,
1202
+ StyleSheetList: 0,
1203
+ TextTrackCueList: 0,
1204
+ TextTrackList: 0,
1205
+ TouchList: 0
1206
+ };
1207
+
1208
+ for (var COLLECTION_NAME in domIterables) {
1209
+ var Collection = global$1[COLLECTION_NAME];
1210
+ var CollectionPrototype = Collection && Collection.prototype;
1211
+ // some Chrome versions have non-configurable methods on DOMTokenList
1212
+ if (CollectionPrototype && CollectionPrototype.forEach !== arrayForEach) try {
1213
+ hide(CollectionPrototype, 'forEach', arrayForEach);
1214
+ } catch (error) {
1215
+ CollectionPrototype.forEach = arrayForEach;
1216
+ }
1217
+ }
1218
+
1219
+ /**
1220
+ * lodash (Custom Build) <https://lodash.com/>
1221
+ * Build: `lodash modularize exports="npm" -o ./`
1222
+ * Copyright jQuery Foundation and other contributors <https://jquery.org/>
1223
+ * Released under MIT license <https://lodash.com/license>
1224
+ * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
1225
+ * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
1226
+ */
1227
+
1228
+ /** Used as the `TypeError` message for "Functions" methods. */
1229
+ var FUNC_ERROR_TEXT = 'Expected a function';
1230
+
1231
+ /** Used as references for various `Number` constants. */
1232
+ var NAN = 0 / 0;
1233
+
1234
+ /** `Object#toString` result references. */
1235
+ var symbolTag = '[object Symbol]';
1236
+
1237
+ /** Used to match leading and trailing whitespace. */
1238
+ var reTrim = /^\s+|\s+$/g;
1239
+
1240
+ /** Used to detect bad signed hexadecimal string values. */
1241
+ var reIsBadHex = /^[-+]0x[0-9a-f]+$/i;
1242
+
1243
+ /** Used to detect binary string values. */
1244
+ var reIsBinary = /^0b[01]+$/i;
1245
+
1246
+ /** Used to detect octal string values. */
1247
+ var reIsOctal = /^0o[0-7]+$/i;
1248
+
1249
+ /** Built-in method references without a dependency on `root`. */
1250
+ var freeParseInt = parseInt;
1251
+
1252
+ /** Detect free variable `global` from Node.js. */
1253
+ var freeGlobal = typeof commonjsGlobal == 'object' && commonjsGlobal && commonjsGlobal.Object === Object && commonjsGlobal;
1254
+
1255
+ /** Detect free variable `self`. */
1256
+ var freeSelf = typeof self == 'object' && self && self.Object === Object && self;
1257
+
1258
+ /** Used as a reference to the global object. */
1259
+ var root = freeGlobal || freeSelf || Function('return this')();
1260
+
1261
+ /** Used for built-in method references. */
1262
+ var objectProto = Object.prototype;
1263
+
1264
+ /**
1265
+ * Used to resolve the
1266
+ * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)
1267
+ * of values.
1268
+ */
1269
+ var objectToString = objectProto.toString;
1270
+
1271
+ /* Built-in method references for those with the same name as other `lodash` methods. */
1272
+ var nativeMax = Math.max,
1273
+ nativeMin = Math.min;
1274
+
1275
+ /**
1276
+ * Gets the timestamp of the number of milliseconds that have elapsed since
1277
+ * the Unix epoch (1 January 1970 00:00:00 UTC).
1278
+ *
1279
+ * @static
1280
+ * @memberOf _
1281
+ * @since 2.4.0
1282
+ * @category Date
1283
+ * @returns {number} Returns the timestamp.
1284
+ * @example
1285
+ *
1286
+ * _.defer(function(stamp) {
1287
+ * console.log(_.now() - stamp);
1288
+ * }, _.now());
1289
+ * // => Logs the number of milliseconds it took for the deferred invocation.
1290
+ */
1291
+ var now = function() {
1292
+ return root.Date.now();
1293
+ };
1294
+
1295
+ /**
1296
+ * Creates a debounced function that delays invoking `func` until after `wait`
1297
+ * milliseconds have elapsed since the last time the debounced function was
1298
+ * invoked. The debounced function comes with a `cancel` method to cancel
1299
+ * delayed `func` invocations and a `flush` method to immediately invoke them.
1300
+ * Provide `options` to indicate whether `func` should be invoked on the
1301
+ * leading and/or trailing edge of the `wait` timeout. The `func` is invoked
1302
+ * with the last arguments provided to the debounced function. Subsequent
1303
+ * calls to the debounced function return the result of the last `func`
1304
+ * invocation.
1305
+ *
1306
+ * **Note:** If `leading` and `trailing` options are `true`, `func` is
1307
+ * invoked on the trailing edge of the timeout only if the debounced function
1308
+ * is invoked more than once during the `wait` timeout.
1309
+ *
1310
+ * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred
1311
+ * until to the next tick, similar to `setTimeout` with a timeout of `0`.
1312
+ *
1313
+ * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)
1314
+ * for details over the differences between `_.debounce` and `_.throttle`.
1315
+ *
1316
+ * @static
1317
+ * @memberOf _
1318
+ * @since 0.1.0
1319
+ * @category Function
1320
+ * @param {Function} func The function to debounce.
1321
+ * @param {number} [wait=0] The number of milliseconds to delay.
1322
+ * @param {Object} [options={}] The options object.
1323
+ * @param {boolean} [options.leading=false]
1324
+ * Specify invoking on the leading edge of the timeout.
1325
+ * @param {number} [options.maxWait]
1326
+ * The maximum time `func` is allowed to be delayed before it's invoked.
1327
+ * @param {boolean} [options.trailing=true]
1328
+ * Specify invoking on the trailing edge of the timeout.
1329
+ * @returns {Function} Returns the new debounced function.
1330
+ * @example
1331
+ *
1332
+ * // Avoid costly calculations while the window size is in flux.
1333
+ * jQuery(window).on('resize', _.debounce(calculateLayout, 150));
1334
+ *
1335
+ * // Invoke `sendMail` when clicked, debouncing subsequent calls.
1336
+ * jQuery(element).on('click', _.debounce(sendMail, 300, {
1337
+ * 'leading': true,
1338
+ * 'trailing': false
1339
+ * }));
1340
+ *
1341
+ * // Ensure `batchLog` is invoked once after 1 second of debounced calls.
1342
+ * var debounced = _.debounce(batchLog, 250, { 'maxWait': 1000 });
1343
+ * var source = new EventSource('/stream');
1344
+ * jQuery(source).on('message', debounced);
1345
+ *
1346
+ * // Cancel the trailing debounced invocation.
1347
+ * jQuery(window).on('popstate', debounced.cancel);
1348
+ */
1349
+ function debounce(func, wait, options) {
1350
+ var lastArgs,
1351
+ lastThis,
1352
+ maxWait,
1353
+ result,
1354
+ timerId,
1355
+ lastCallTime,
1356
+ lastInvokeTime = 0,
1357
+ leading = false,
1358
+ maxing = false,
1359
+ trailing = true;
1360
+
1361
+ if (typeof func != 'function') {
1362
+ throw new TypeError(FUNC_ERROR_TEXT);
1363
+ }
1364
+ wait = toNumber(wait) || 0;
1365
+ if (isObject$1(options)) {
1366
+ leading = !!options.leading;
1367
+ maxing = 'maxWait' in options;
1368
+ maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait;
1369
+ trailing = 'trailing' in options ? !!options.trailing : trailing;
1370
+ }
1371
+
1372
+ function invokeFunc(time) {
1373
+ var args = lastArgs,
1374
+ thisArg = lastThis;
1375
+
1376
+ lastArgs = lastThis = undefined;
1377
+ lastInvokeTime = time;
1378
+ result = func.apply(thisArg, args);
1379
+ return result;
1380
+ }
1381
+
1382
+ function leadingEdge(time) {
1383
+ // Reset any `maxWait` timer.
1384
+ lastInvokeTime = time;
1385
+ // Start the timer for the trailing edge.
1386
+ timerId = setTimeout(timerExpired, wait);
1387
+ // Invoke the leading edge.
1388
+ return leading ? invokeFunc(time) : result;
1389
+ }
1390
+
1391
+ function remainingWait(time) {
1392
+ var timeSinceLastCall = time - lastCallTime,
1393
+ timeSinceLastInvoke = time - lastInvokeTime,
1394
+ result = wait - timeSinceLastCall;
1395
+
1396
+ return maxing ? nativeMin(result, maxWait - timeSinceLastInvoke) : result;
1397
+ }
1398
+
1399
+ function shouldInvoke(time) {
1400
+ var timeSinceLastCall = time - lastCallTime,
1401
+ timeSinceLastInvoke = time - lastInvokeTime;
1402
+
1403
+ // Either this is the first call, activity has stopped and we're at the
1404
+ // trailing edge, the system time has gone backwards and we're treating
1405
+ // it as the trailing edge, or we've hit the `maxWait` limit.
1406
+ return (lastCallTime === undefined || (timeSinceLastCall >= wait) ||
1407
+ (timeSinceLastCall < 0) || (maxing && timeSinceLastInvoke >= maxWait));
1408
+ }
1409
+
1410
+ function timerExpired() {
1411
+ var time = now();
1412
+ if (shouldInvoke(time)) {
1413
+ return trailingEdge(time);
1414
+ }
1415
+ // Restart the timer.
1416
+ timerId = setTimeout(timerExpired, remainingWait(time));
1417
+ }
1418
+
1419
+ function trailingEdge(time) {
1420
+ timerId = undefined;
1421
+
1422
+ // Only invoke if we have `lastArgs` which means `func` has been
1423
+ // debounced at least once.
1424
+ if (trailing && lastArgs) {
1425
+ return invokeFunc(time);
1426
+ }
1427
+ lastArgs = lastThis = undefined;
1428
+ return result;
1429
+ }
1430
+
1431
+ function cancel() {
1432
+ if (timerId !== undefined) {
1433
+ clearTimeout(timerId);
1434
+ }
1435
+ lastInvokeTime = 0;
1436
+ lastArgs = lastCallTime = lastThis = timerId = undefined;
1437
+ }
1438
+
1439
+ function flush() {
1440
+ return timerId === undefined ? result : trailingEdge(now());
1441
+ }
1442
+
1443
+ function debounced() {
1444
+ var time = now(),
1445
+ isInvoking = shouldInvoke(time);
1446
+
1447
+ lastArgs = arguments;
1448
+ lastThis = this;
1449
+ lastCallTime = time;
1450
+
1451
+ if (isInvoking) {
1452
+ if (timerId === undefined) {
1453
+ return leadingEdge(lastCallTime);
1454
+ }
1455
+ if (maxing) {
1456
+ // Handle invocations in a tight loop.
1457
+ timerId = setTimeout(timerExpired, wait);
1458
+ return invokeFunc(lastCallTime);
1459
+ }
1460
+ }
1461
+ if (timerId === undefined) {
1462
+ timerId = setTimeout(timerExpired, wait);
1463
+ }
1464
+ return result;
1465
+ }
1466
+ debounced.cancel = cancel;
1467
+ debounced.flush = flush;
1468
+ return debounced;
1469
+ }
1470
+
1471
+ /**
1472
+ * Creates a throttled function that only invokes `func` at most once per
1473
+ * every `wait` milliseconds. The throttled function comes with a `cancel`
1474
+ * method to cancel delayed `func` invocations and a `flush` method to
1475
+ * immediately invoke them. Provide `options` to indicate whether `func`
1476
+ * should be invoked on the leading and/or trailing edge of the `wait`
1477
+ * timeout. The `func` is invoked with the last arguments provided to the
1478
+ * throttled function. Subsequent calls to the throttled function return the
1479
+ * result of the last `func` invocation.
1480
+ *
1481
+ * **Note:** If `leading` and `trailing` options are `true`, `func` is
1482
+ * invoked on the trailing edge of the timeout only if the throttled function
1483
+ * is invoked more than once during the `wait` timeout.
1484
+ *
1485
+ * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred
1486
+ * until to the next tick, similar to `setTimeout` with a timeout of `0`.
1487
+ *
1488
+ * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)
1489
+ * for details over the differences between `_.throttle` and `_.debounce`.
1490
+ *
1491
+ * @static
1492
+ * @memberOf _
1493
+ * @since 0.1.0
1494
+ * @category Function
1495
+ * @param {Function} func The function to throttle.
1496
+ * @param {number} [wait=0] The number of milliseconds to throttle invocations to.
1497
+ * @param {Object} [options={}] The options object.
1498
+ * @param {boolean} [options.leading=true]
1499
+ * Specify invoking on the leading edge of the timeout.
1500
+ * @param {boolean} [options.trailing=true]
1501
+ * Specify invoking on the trailing edge of the timeout.
1502
+ * @returns {Function} Returns the new throttled function.
1503
+ * @example
1504
+ *
1505
+ * // Avoid excessively updating the position while scrolling.
1506
+ * jQuery(window).on('scroll', _.throttle(updatePosition, 100));
1507
+ *
1508
+ * // Invoke `renewToken` when the click event is fired, but not more than once every 5 minutes.
1509
+ * var throttled = _.throttle(renewToken, 300000, { 'trailing': false });
1510
+ * jQuery(element).on('click', throttled);
1511
+ *
1512
+ * // Cancel the trailing throttled invocation.
1513
+ * jQuery(window).on('popstate', throttled.cancel);
1514
+ */
1515
+ function throttle(func, wait, options) {
1516
+ var leading = true,
1517
+ trailing = true;
1518
+
1519
+ if (typeof func != 'function') {
1520
+ throw new TypeError(FUNC_ERROR_TEXT);
1521
+ }
1522
+ if (isObject$1(options)) {
1523
+ leading = 'leading' in options ? !!options.leading : leading;
1524
+ trailing = 'trailing' in options ? !!options.trailing : trailing;
1525
+ }
1526
+ return debounce(func, wait, {
1527
+ 'leading': leading,
1528
+ 'maxWait': wait,
1529
+ 'trailing': trailing
1530
+ });
1531
+ }
1532
+
1533
+ /**
1534
+ * Checks if `value` is the
1535
+ * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)
1536
+ * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)
1537
+ *
1538
+ * @static
1539
+ * @memberOf _
1540
+ * @since 0.1.0
1541
+ * @category Lang
1542
+ * @param {*} value The value to check.
1543
+ * @returns {boolean} Returns `true` if `value` is an object, else `false`.
1544
+ * @example
1545
+ *
1546
+ * _.isObject({});
1547
+ * // => true
1548
+ *
1549
+ * _.isObject([1, 2, 3]);
1550
+ * // => true
1551
+ *
1552
+ * _.isObject(_.noop);
1553
+ * // => true
1554
+ *
1555
+ * _.isObject(null);
1556
+ * // => false
1557
+ */
1558
+ function isObject$1(value) {
1559
+ var type = typeof value;
1560
+ return !!value && (type == 'object' || type == 'function');
1561
+ }
1562
+
1563
+ /**
1564
+ * Checks if `value` is object-like. A value is object-like if it's not `null`
1565
+ * and has a `typeof` result of "object".
1566
+ *
1567
+ * @static
1568
+ * @memberOf _
1569
+ * @since 4.0.0
1570
+ * @category Lang
1571
+ * @param {*} value The value to check.
1572
+ * @returns {boolean} Returns `true` if `value` is object-like, else `false`.
1573
+ * @example
1574
+ *
1575
+ * _.isObjectLike({});
1576
+ * // => true
1577
+ *
1578
+ * _.isObjectLike([1, 2, 3]);
1579
+ * // => true
1580
+ *
1581
+ * _.isObjectLike(_.noop);
1582
+ * // => false
1583
+ *
1584
+ * _.isObjectLike(null);
1585
+ * // => false
1586
+ */
1587
+ function isObjectLike(value) {
1588
+ return !!value && typeof value == 'object';
1589
+ }
1590
+
1591
+ /**
1592
+ * Checks if `value` is classified as a `Symbol` primitive or object.
1593
+ *
1594
+ * @static
1595
+ * @memberOf _
1596
+ * @since 4.0.0
1597
+ * @category Lang
1598
+ * @param {*} value The value to check.
1599
+ * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.
1600
+ * @example
1601
+ *
1602
+ * _.isSymbol(Symbol.iterator);
1603
+ * // => true
1604
+ *
1605
+ * _.isSymbol('abc');
1606
+ * // => false
1607
+ */
1608
+ function isSymbol(value) {
1609
+ return typeof value == 'symbol' ||
1610
+ (isObjectLike(value) && objectToString.call(value) == symbolTag);
1611
+ }
1612
+
1613
+ /**
1614
+ * Converts `value` to a number.
1615
+ *
1616
+ * @static
1617
+ * @memberOf _
1618
+ * @since 4.0.0
1619
+ * @category Lang
1620
+ * @param {*} value The value to process.
1621
+ * @returns {number} Returns the number.
1622
+ * @example
1623
+ *
1624
+ * _.toNumber(3.2);
1625
+ * // => 3.2
1626
+ *
1627
+ * _.toNumber(Number.MIN_VALUE);
1628
+ * // => 5e-324
1629
+ *
1630
+ * _.toNumber(Infinity);
1631
+ * // => Infinity
1632
+ *
1633
+ * _.toNumber('3.2');
1634
+ * // => 3.2
1635
+ */
1636
+ function toNumber(value) {
1637
+ if (typeof value == 'number') {
1638
+ return value;
1639
+ }
1640
+ if (isSymbol(value)) {
1641
+ return NAN;
1642
+ }
1643
+ if (isObject$1(value)) {
1644
+ var other = typeof value.valueOf == 'function' ? value.valueOf() : value;
1645
+ value = isObject$1(other) ? (other + '') : other;
1646
+ }
1647
+ if (typeof value != 'string') {
1648
+ return value === 0 ? value : +value;
1649
+ }
1650
+ value = value.replace(reTrim, '');
1651
+ var isBinary = reIsBinary.test(value);
1652
+ return (isBinary || reIsOctal.test(value))
1653
+ ? freeParseInt(value.slice(2), isBinary ? 2 : 8)
1654
+ : (reIsBadHex.test(value) ? NAN : +value);
1655
+ }
1656
+
1657
+ var lodash_throttle = throttle;
1658
+
1659
+ /**
1660
+ * lodash (Custom Build) <https://lodash.com/>
1661
+ * Build: `lodash modularize exports="npm" -o ./`
1662
+ * Copyright jQuery Foundation and other contributors <https://jquery.org/>
1663
+ * Released under MIT license <https://lodash.com/license>
1664
+ * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
1665
+ * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
1666
+ */
1667
+
1668
+ /** Used as the `TypeError` message for "Functions" methods. */
1669
+ var FUNC_ERROR_TEXT$1 = 'Expected a function';
1670
+
1671
+ /** Used as references for various `Number` constants. */
1672
+ var NAN$1 = 0 / 0;
1673
+
1674
+ /** `Object#toString` result references. */
1675
+ var symbolTag$1 = '[object Symbol]';
1676
+
1677
+ /** Used to match leading and trailing whitespace. */
1678
+ var reTrim$1 = /^\s+|\s+$/g;
1679
+
1680
+ /** Used to detect bad signed hexadecimal string values. */
1681
+ var reIsBadHex$1 = /^[-+]0x[0-9a-f]+$/i;
1682
+
1683
+ /** Used to detect binary string values. */
1684
+ var reIsBinary$1 = /^0b[01]+$/i;
1685
+
1686
+ /** Used to detect octal string values. */
1687
+ var reIsOctal$1 = /^0o[0-7]+$/i;
1688
+
1689
+ /** Built-in method references without a dependency on `root`. */
1690
+ var freeParseInt$1 = parseInt;
1691
+
1692
+ /** Detect free variable `global` from Node.js. */
1693
+ var freeGlobal$1 = typeof commonjsGlobal == 'object' && commonjsGlobal && commonjsGlobal.Object === Object && commonjsGlobal;
1694
+
1695
+ /** Detect free variable `self`. */
1696
+ var freeSelf$1 = typeof self == 'object' && self && self.Object === Object && self;
1697
+
1698
+ /** Used as a reference to the global object. */
1699
+ var root$1 = freeGlobal$1 || freeSelf$1 || Function('return this')();
1700
+
1701
+ /** Used for built-in method references. */
1702
+ var objectProto$1 = Object.prototype;
1703
+
1704
+ /**
1705
+ * Used to resolve the
1706
+ * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)
1707
+ * of values.
1708
+ */
1709
+ var objectToString$1 = objectProto$1.toString;
1710
+
1711
+ /* Built-in method references for those with the same name as other `lodash` methods. */
1712
+ var nativeMax$1 = Math.max,
1713
+ nativeMin$1 = Math.min;
1714
+
1715
+ /**
1716
+ * Gets the timestamp of the number of milliseconds that have elapsed since
1717
+ * the Unix epoch (1 January 1970 00:00:00 UTC).
1718
+ *
1719
+ * @static
1720
+ * @memberOf _
1721
+ * @since 2.4.0
1722
+ * @category Date
1723
+ * @returns {number} Returns the timestamp.
1724
+ * @example
1725
+ *
1726
+ * _.defer(function(stamp) {
1727
+ * console.log(_.now() - stamp);
1728
+ * }, _.now());
1729
+ * // => Logs the number of milliseconds it took for the deferred invocation.
1730
+ */
1731
+ var now$1 = function() {
1732
+ return root$1.Date.now();
1733
+ };
1734
+
1735
+ /**
1736
+ * Creates a debounced function that delays invoking `func` until after `wait`
1737
+ * milliseconds have elapsed since the last time the debounced function was
1738
+ * invoked. The debounced function comes with a `cancel` method to cancel
1739
+ * delayed `func` invocations and a `flush` method to immediately invoke them.
1740
+ * Provide `options` to indicate whether `func` should be invoked on the
1741
+ * leading and/or trailing edge of the `wait` timeout. The `func` is invoked
1742
+ * with the last arguments provided to the debounced function. Subsequent
1743
+ * calls to the debounced function return the result of the last `func`
1744
+ * invocation.
1745
+ *
1746
+ * **Note:** If `leading` and `trailing` options are `true`, `func` is
1747
+ * invoked on the trailing edge of the timeout only if the debounced function
1748
+ * is invoked more than once during the `wait` timeout.
1749
+ *
1750
+ * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred
1751
+ * until to the next tick, similar to `setTimeout` with a timeout of `0`.
1752
+ *
1753
+ * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)
1754
+ * for details over the differences between `_.debounce` and `_.throttle`.
1755
+ *
1756
+ * @static
1757
+ * @memberOf _
1758
+ * @since 0.1.0
1759
+ * @category Function
1760
+ * @param {Function} func The function to debounce.
1761
+ * @param {number} [wait=0] The number of milliseconds to delay.
1762
+ * @param {Object} [options={}] The options object.
1763
+ * @param {boolean} [options.leading=false]
1764
+ * Specify invoking on the leading edge of the timeout.
1765
+ * @param {number} [options.maxWait]
1766
+ * The maximum time `func` is allowed to be delayed before it's invoked.
1767
+ * @param {boolean} [options.trailing=true]
1768
+ * Specify invoking on the trailing edge of the timeout.
1769
+ * @returns {Function} Returns the new debounced function.
1770
+ * @example
1771
+ *
1772
+ * // Avoid costly calculations while the window size is in flux.
1773
+ * jQuery(window).on('resize', _.debounce(calculateLayout, 150));
1774
+ *
1775
+ * // Invoke `sendMail` when clicked, debouncing subsequent calls.
1776
+ * jQuery(element).on('click', _.debounce(sendMail, 300, {
1777
+ * 'leading': true,
1778
+ * 'trailing': false
1779
+ * }));
1780
+ *
1781
+ * // Ensure `batchLog` is invoked once after 1 second of debounced calls.
1782
+ * var debounced = _.debounce(batchLog, 250, { 'maxWait': 1000 });
1783
+ * var source = new EventSource('/stream');
1784
+ * jQuery(source).on('message', debounced);
1785
+ *
1786
+ * // Cancel the trailing debounced invocation.
1787
+ * jQuery(window).on('popstate', debounced.cancel);
1788
+ */
1789
+ function debounce$1(func, wait, options) {
1790
+ var lastArgs,
1791
+ lastThis,
1792
+ maxWait,
1793
+ result,
1794
+ timerId,
1795
+ lastCallTime,
1796
+ lastInvokeTime = 0,
1797
+ leading = false,
1798
+ maxing = false,
1799
+ trailing = true;
1800
+
1801
+ if (typeof func != 'function') {
1802
+ throw new TypeError(FUNC_ERROR_TEXT$1);
1803
+ }
1804
+ wait = toNumber$1(wait) || 0;
1805
+ if (isObject$2(options)) {
1806
+ leading = !!options.leading;
1807
+ maxing = 'maxWait' in options;
1808
+ maxWait = maxing ? nativeMax$1(toNumber$1(options.maxWait) || 0, wait) : maxWait;
1809
+ trailing = 'trailing' in options ? !!options.trailing : trailing;
1810
+ }
1811
+
1812
+ function invokeFunc(time) {
1813
+ var args = lastArgs,
1814
+ thisArg = lastThis;
1815
+
1816
+ lastArgs = lastThis = undefined;
1817
+ lastInvokeTime = time;
1818
+ result = func.apply(thisArg, args);
1819
+ return result;
1820
+ }
1821
+
1822
+ function leadingEdge(time) {
1823
+ // Reset any `maxWait` timer.
1824
+ lastInvokeTime = time;
1825
+ // Start the timer for the trailing edge.
1826
+ timerId = setTimeout(timerExpired, wait);
1827
+ // Invoke the leading edge.
1828
+ return leading ? invokeFunc(time) : result;
1829
+ }
1830
+
1831
+ function remainingWait(time) {
1832
+ var timeSinceLastCall = time - lastCallTime,
1833
+ timeSinceLastInvoke = time - lastInvokeTime,
1834
+ result = wait - timeSinceLastCall;
1835
+
1836
+ return maxing ? nativeMin$1(result, maxWait - timeSinceLastInvoke) : result;
1837
+ }
1838
+
1839
+ function shouldInvoke(time) {
1840
+ var timeSinceLastCall = time - lastCallTime,
1841
+ timeSinceLastInvoke = time - lastInvokeTime;
1842
+
1843
+ // Either this is the first call, activity has stopped and we're at the
1844
+ // trailing edge, the system time has gone backwards and we're treating
1845
+ // it as the trailing edge, or we've hit the `maxWait` limit.
1846
+ return (lastCallTime === undefined || (timeSinceLastCall >= wait) ||
1847
+ (timeSinceLastCall < 0) || (maxing && timeSinceLastInvoke >= maxWait));
1848
+ }
1849
+
1850
+ function timerExpired() {
1851
+ var time = now$1();
1852
+ if (shouldInvoke(time)) {
1853
+ return trailingEdge(time);
1854
+ }
1855
+ // Restart the timer.
1856
+ timerId = setTimeout(timerExpired, remainingWait(time));
1857
+ }
1858
+
1859
+ function trailingEdge(time) {
1860
+ timerId = undefined;
1861
+
1862
+ // Only invoke if we have `lastArgs` which means `func` has been
1863
+ // debounced at least once.
1864
+ if (trailing && lastArgs) {
1865
+ return invokeFunc(time);
1866
+ }
1867
+ lastArgs = lastThis = undefined;
1868
+ return result;
1869
+ }
1870
+
1871
+ function cancel() {
1872
+ if (timerId !== undefined) {
1873
+ clearTimeout(timerId);
1874
+ }
1875
+ lastInvokeTime = 0;
1876
+ lastArgs = lastCallTime = lastThis = timerId = undefined;
1877
+ }
1878
+
1879
+ function flush() {
1880
+ return timerId === undefined ? result : trailingEdge(now$1());
1881
+ }
1882
+
1883
+ function debounced() {
1884
+ var time = now$1(),
1885
+ isInvoking = shouldInvoke(time);
1886
+
1887
+ lastArgs = arguments;
1888
+ lastThis = this;
1889
+ lastCallTime = time;
1890
+
1891
+ if (isInvoking) {
1892
+ if (timerId === undefined) {
1893
+ return leadingEdge(lastCallTime);
1894
+ }
1895
+ if (maxing) {
1896
+ // Handle invocations in a tight loop.
1897
+ timerId = setTimeout(timerExpired, wait);
1898
+ return invokeFunc(lastCallTime);
1899
+ }
1900
+ }
1901
+ if (timerId === undefined) {
1902
+ timerId = setTimeout(timerExpired, wait);
1903
+ }
1904
+ return result;
1905
+ }
1906
+ debounced.cancel = cancel;
1907
+ debounced.flush = flush;
1908
+ return debounced;
1909
+ }
1910
+
1911
+ /**
1912
+ * Checks if `value` is the
1913
+ * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)
1914
+ * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)
1915
+ *
1916
+ * @static
1917
+ * @memberOf _
1918
+ * @since 0.1.0
1919
+ * @category Lang
1920
+ * @param {*} value The value to check.
1921
+ * @returns {boolean} Returns `true` if `value` is an object, else `false`.
1922
+ * @example
1923
+ *
1924
+ * _.isObject({});
1925
+ * // => true
1926
+ *
1927
+ * _.isObject([1, 2, 3]);
1928
+ * // => true
1929
+ *
1930
+ * _.isObject(_.noop);
1931
+ * // => true
1932
+ *
1933
+ * _.isObject(null);
1934
+ * // => false
1935
+ */
1936
+ function isObject$2(value) {
1937
+ var type = typeof value;
1938
+ return !!value && (type == 'object' || type == 'function');
1939
+ }
1940
+
1941
+ /**
1942
+ * Checks if `value` is object-like. A value is object-like if it's not `null`
1943
+ * and has a `typeof` result of "object".
1944
+ *
1945
+ * @static
1946
+ * @memberOf _
1947
+ * @since 4.0.0
1948
+ * @category Lang
1949
+ * @param {*} value The value to check.
1950
+ * @returns {boolean} Returns `true` if `value` is object-like, else `false`.
1951
+ * @example
1952
+ *
1953
+ * _.isObjectLike({});
1954
+ * // => true
1955
+ *
1956
+ * _.isObjectLike([1, 2, 3]);
1957
+ * // => true
1958
+ *
1959
+ * _.isObjectLike(_.noop);
1960
+ * // => false
1961
+ *
1962
+ * _.isObjectLike(null);
1963
+ * // => false
1964
+ */
1965
+ function isObjectLike$1(value) {
1966
+ return !!value && typeof value == 'object';
1967
+ }
1968
+
1969
+ /**
1970
+ * Checks if `value` is classified as a `Symbol` primitive or object.
1971
+ *
1972
+ * @static
1973
+ * @memberOf _
1974
+ * @since 4.0.0
1975
+ * @category Lang
1976
+ * @param {*} value The value to check.
1977
+ * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.
1978
+ * @example
1979
+ *
1980
+ * _.isSymbol(Symbol.iterator);
1981
+ * // => true
1982
+ *
1983
+ * _.isSymbol('abc');
1984
+ * // => false
1985
+ */
1986
+ function isSymbol$1(value) {
1987
+ return typeof value == 'symbol' ||
1988
+ (isObjectLike$1(value) && objectToString$1.call(value) == symbolTag$1);
1989
+ }
1990
+
1991
+ /**
1992
+ * Converts `value` to a number.
1993
+ *
1994
+ * @static
1995
+ * @memberOf _
1996
+ * @since 4.0.0
1997
+ * @category Lang
1998
+ * @param {*} value The value to process.
1999
+ * @returns {number} Returns the number.
2000
+ * @example
2001
+ *
2002
+ * _.toNumber(3.2);
2003
+ * // => 3.2
2004
+ *
2005
+ * _.toNumber(Number.MIN_VALUE);
2006
+ * // => 5e-324
2007
+ *
2008
+ * _.toNumber(Infinity);
2009
+ * // => Infinity
2010
+ *
2011
+ * _.toNumber('3.2');
2012
+ * // => 3.2
2013
+ */
2014
+ function toNumber$1(value) {
2015
+ if (typeof value == 'number') {
2016
+ return value;
2017
+ }
2018
+ if (isSymbol$1(value)) {
2019
+ return NAN$1;
2020
+ }
2021
+ if (isObject$2(value)) {
2022
+ var other = typeof value.valueOf == 'function' ? value.valueOf() : value;
2023
+ value = isObject$2(other) ? (other + '') : other;
2024
+ }
2025
+ if (typeof value != 'string') {
2026
+ return value === 0 ? value : +value;
2027
+ }
2028
+ value = value.replace(reTrim$1, '');
2029
+ var isBinary = reIsBinary$1.test(value);
2030
+ return (isBinary || reIsOctal$1.test(value))
2031
+ ? freeParseInt$1(value.slice(2), isBinary ? 2 : 8)
2032
+ : (reIsBadHex$1.test(value) ? NAN$1 : +value);
2033
+ }
2034
+
2035
+ var lodash_debounce = debounce$1;
2036
+
2037
+ /**
2038
+ * lodash (Custom Build) <https://lodash.com/>
2039
+ * Build: `lodash modularize exports="npm" -o ./`
2040
+ * Copyright jQuery Foundation and other contributors <https://jquery.org/>
2041
+ * Released under MIT license <https://lodash.com/license>
2042
+ * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
2043
+ * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
2044
+ */
2045
+
2046
+ /** Used as the `TypeError` message for "Functions" methods. */
2047
+ var FUNC_ERROR_TEXT$2 = 'Expected a function';
2048
+
2049
+ /** Used to stand-in for `undefined` hash values. */
2050
+ var HASH_UNDEFINED = '__lodash_hash_undefined__';
2051
+
2052
+ /** `Object#toString` result references. */
2053
+ var funcTag = '[object Function]',
2054
+ genTag = '[object GeneratorFunction]';
2055
+
2056
+ /**
2057
+ * Used to match `RegExp`
2058
+ * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns).
2059
+ */
2060
+ var reRegExpChar = /[\\^$.*+?()[\]{}|]/g;
2061
+
2062
+ /** Used to detect host constructors (Safari). */
2063
+ var reIsHostCtor = /^\[object .+?Constructor\]$/;
2064
+
2065
+ /** Detect free variable `global` from Node.js. */
2066
+ var freeGlobal$2 = typeof commonjsGlobal == 'object' && commonjsGlobal && commonjsGlobal.Object === Object && commonjsGlobal;
2067
+
2068
+ /** Detect free variable `self`. */
2069
+ var freeSelf$2 = typeof self == 'object' && self && self.Object === Object && self;
2070
+
2071
+ /** Used as a reference to the global object. */
2072
+ var root$2 = freeGlobal$2 || freeSelf$2 || Function('return this')();
2073
+
2074
+ /**
2075
+ * Gets the value at `key` of `object`.
2076
+ *
2077
+ * @private
2078
+ * @param {Object} [object] The object to query.
2079
+ * @param {string} key The key of the property to get.
2080
+ * @returns {*} Returns the property value.
2081
+ */
2082
+ function getValue(object, key) {
2083
+ return object == null ? undefined : object[key];
2084
+ }
2085
+
2086
+ /**
2087
+ * Checks if `value` is a host object in IE < 9.
2088
+ *
2089
+ * @private
2090
+ * @param {*} value The value to check.
2091
+ * @returns {boolean} Returns `true` if `value` is a host object, else `false`.
2092
+ */
2093
+ function isHostObject(value) {
2094
+ // Many host objects are `Object` objects that can coerce to strings
2095
+ // despite having improperly defined `toString` methods.
2096
+ var result = false;
2097
+ if (value != null && typeof value.toString != 'function') {
2098
+ try {
2099
+ result = !!(value + '');
2100
+ } catch (e) {}
2101
+ }
2102
+ return result;
2103
+ }
2104
+
2105
+ /** Used for built-in method references. */
2106
+ var arrayProto = Array.prototype,
2107
+ funcProto = Function.prototype,
2108
+ objectProto$2 = Object.prototype;
2109
+
2110
+ /** Used to detect overreaching core-js shims. */
2111
+ var coreJsData = root$2['__core-js_shared__'];
2112
+
2113
+ /** Used to detect methods masquerading as native. */
2114
+ var maskSrcKey = (function() {
2115
+ var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || '');
2116
+ return uid ? ('Symbol(src)_1.' + uid) : '';
2117
+ }());
2118
+
2119
+ /** Used to resolve the decompiled source of functions. */
2120
+ var funcToString = funcProto.toString;
2121
+
2122
+ /** Used to check objects for own properties. */
2123
+ var hasOwnProperty$1 = objectProto$2.hasOwnProperty;
2124
+
2125
+ /**
2126
+ * Used to resolve the
2127
+ * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)
2128
+ * of values.
2129
+ */
2130
+ var objectToString$2 = objectProto$2.toString;
2131
+
2132
+ /** Used to detect if a method is native. */
2133
+ var reIsNative = RegExp('^' +
2134
+ funcToString.call(hasOwnProperty$1).replace(reRegExpChar, '\\$&')
2135
+ .replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, '$1.*?') + '$'
2136
+ );
2137
+
2138
+ /** Built-in value references. */
2139
+ var splice = arrayProto.splice;
2140
+
2141
+ /* Built-in method references that are verified to be native. */
2142
+ var Map$1 = getNative(root$2, 'Map'),
2143
+ nativeCreate = getNative(Object, 'create');
2144
+
2145
+ /**
2146
+ * Creates a hash object.
2147
+ *
2148
+ * @private
2149
+ * @constructor
2150
+ * @param {Array} [entries] The key-value pairs to cache.
2151
+ */
2152
+ function Hash(entries) {
2153
+ var index = -1,
2154
+ length = entries ? entries.length : 0;
2155
+
2156
+ this.clear();
2157
+ while (++index < length) {
2158
+ var entry = entries[index];
2159
+ this.set(entry[0], entry[1]);
2160
+ }
2161
+ }
2162
+
2163
+ /**
2164
+ * Removes all key-value entries from the hash.
2165
+ *
2166
+ * @private
2167
+ * @name clear
2168
+ * @memberOf Hash
2169
+ */
2170
+ function hashClear() {
2171
+ this.__data__ = nativeCreate ? nativeCreate(null) : {};
2172
+ }
2173
+
2174
+ /**
2175
+ * Removes `key` and its value from the hash.
2176
+ *
2177
+ * @private
2178
+ * @name delete
2179
+ * @memberOf Hash
2180
+ * @param {Object} hash The hash to modify.
2181
+ * @param {string} key The key of the value to remove.
2182
+ * @returns {boolean} Returns `true` if the entry was removed, else `false`.
2183
+ */
2184
+ function hashDelete(key) {
2185
+ return this.has(key) && delete this.__data__[key];
2186
+ }
2187
+
2188
+ /**
2189
+ * Gets the hash value for `key`.
2190
+ *
2191
+ * @private
2192
+ * @name get
2193
+ * @memberOf Hash
2194
+ * @param {string} key The key of the value to get.
2195
+ * @returns {*} Returns the entry value.
2196
+ */
2197
+ function hashGet(key) {
2198
+ var data = this.__data__;
2199
+ if (nativeCreate) {
2200
+ var result = data[key];
2201
+ return result === HASH_UNDEFINED ? undefined : result;
2202
+ }
2203
+ return hasOwnProperty$1.call(data, key) ? data[key] : undefined;
2204
+ }
2205
+
2206
+ /**
2207
+ * Checks if a hash value for `key` exists.
2208
+ *
2209
+ * @private
2210
+ * @name has
2211
+ * @memberOf Hash
2212
+ * @param {string} key The key of the entry to check.
2213
+ * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
2214
+ */
2215
+ function hashHas(key) {
2216
+ var data = this.__data__;
2217
+ return nativeCreate ? data[key] !== undefined : hasOwnProperty$1.call(data, key);
2218
+ }
2219
+
2220
+ /**
2221
+ * Sets the hash `key` to `value`.
2222
+ *
2223
+ * @private
2224
+ * @name set
2225
+ * @memberOf Hash
2226
+ * @param {string} key The key of the value to set.
2227
+ * @param {*} value The value to set.
2228
+ * @returns {Object} Returns the hash instance.
2229
+ */
2230
+ function hashSet(key, value) {
2231
+ var data = this.__data__;
2232
+ data[key] = (nativeCreate && value === undefined) ? HASH_UNDEFINED : value;
2233
+ return this;
2234
+ }
2235
+
2236
+ // Add methods to `Hash`.
2237
+ Hash.prototype.clear = hashClear;
2238
+ Hash.prototype['delete'] = hashDelete;
2239
+ Hash.prototype.get = hashGet;
2240
+ Hash.prototype.has = hashHas;
2241
+ Hash.prototype.set = hashSet;
2242
+
2243
+ /**
2244
+ * Creates an list cache object.
2245
+ *
2246
+ * @private
2247
+ * @constructor
2248
+ * @param {Array} [entries] The key-value pairs to cache.
2249
+ */
2250
+ function ListCache(entries) {
2251
+ var index = -1,
2252
+ length = entries ? entries.length : 0;
2253
+
2254
+ this.clear();
2255
+ while (++index < length) {
2256
+ var entry = entries[index];
2257
+ this.set(entry[0], entry[1]);
2258
+ }
2259
+ }
2260
+
2261
+ /**
2262
+ * Removes all key-value entries from the list cache.
2263
+ *
2264
+ * @private
2265
+ * @name clear
2266
+ * @memberOf ListCache
2267
+ */
2268
+ function listCacheClear() {
2269
+ this.__data__ = [];
2270
+ }
2271
+
2272
+ /**
2273
+ * Removes `key` and its value from the list cache.
2274
+ *
2275
+ * @private
2276
+ * @name delete
2277
+ * @memberOf ListCache
2278
+ * @param {string} key The key of the value to remove.
2279
+ * @returns {boolean} Returns `true` if the entry was removed, else `false`.
2280
+ */
2281
+ function listCacheDelete(key) {
2282
+ var data = this.__data__,
2283
+ index = assocIndexOf(data, key);
2284
+
2285
+ if (index < 0) {
2286
+ return false;
2287
+ }
2288
+ var lastIndex = data.length - 1;
2289
+ if (index == lastIndex) {
2290
+ data.pop();
2291
+ } else {
2292
+ splice.call(data, index, 1);
2293
+ }
2294
+ return true;
2295
+ }
2296
+
2297
+ /**
2298
+ * Gets the list cache value for `key`.
2299
+ *
2300
+ * @private
2301
+ * @name get
2302
+ * @memberOf ListCache
2303
+ * @param {string} key The key of the value to get.
2304
+ * @returns {*} Returns the entry value.
2305
+ */
2306
+ function listCacheGet(key) {
2307
+ var data = this.__data__,
2308
+ index = assocIndexOf(data, key);
2309
+
2310
+ return index < 0 ? undefined : data[index][1];
2311
+ }
2312
+
2313
+ /**
2314
+ * Checks if a list cache value for `key` exists.
2315
+ *
2316
+ * @private
2317
+ * @name has
2318
+ * @memberOf ListCache
2319
+ * @param {string} key The key of the entry to check.
2320
+ * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
2321
+ */
2322
+ function listCacheHas(key) {
2323
+ return assocIndexOf(this.__data__, key) > -1;
2324
+ }
2325
+
2326
+ /**
2327
+ * Sets the list cache `key` to `value`.
2328
+ *
2329
+ * @private
2330
+ * @name set
2331
+ * @memberOf ListCache
2332
+ * @param {string} key The key of the value to set.
2333
+ * @param {*} value The value to set.
2334
+ * @returns {Object} Returns the list cache instance.
2335
+ */
2336
+ function listCacheSet(key, value) {
2337
+ var data = this.__data__,
2338
+ index = assocIndexOf(data, key);
2339
+
2340
+ if (index < 0) {
2341
+ data.push([key, value]);
2342
+ } else {
2343
+ data[index][1] = value;
2344
+ }
2345
+ return this;
2346
+ }
2347
+
2348
+ // Add methods to `ListCache`.
2349
+ ListCache.prototype.clear = listCacheClear;
2350
+ ListCache.prototype['delete'] = listCacheDelete;
2351
+ ListCache.prototype.get = listCacheGet;
2352
+ ListCache.prototype.has = listCacheHas;
2353
+ ListCache.prototype.set = listCacheSet;
2354
+
2355
+ /**
2356
+ * Creates a map cache object to store key-value pairs.
2357
+ *
2358
+ * @private
2359
+ * @constructor
2360
+ * @param {Array} [entries] The key-value pairs to cache.
2361
+ */
2362
+ function MapCache(entries) {
2363
+ var index = -1,
2364
+ length = entries ? entries.length : 0;
2365
+
2366
+ this.clear();
2367
+ while (++index < length) {
2368
+ var entry = entries[index];
2369
+ this.set(entry[0], entry[1]);
2370
+ }
2371
+ }
2372
+
2373
+ /**
2374
+ * Removes all key-value entries from the map.
2375
+ *
2376
+ * @private
2377
+ * @name clear
2378
+ * @memberOf MapCache
2379
+ */
2380
+ function mapCacheClear() {
2381
+ this.__data__ = {
2382
+ 'hash': new Hash,
2383
+ 'map': new (Map$1 || ListCache),
2384
+ 'string': new Hash
2385
+ };
2386
+ }
2387
+
2388
+ /**
2389
+ * Removes `key` and its value from the map.
2390
+ *
2391
+ * @private
2392
+ * @name delete
2393
+ * @memberOf MapCache
2394
+ * @param {string} key The key of the value to remove.
2395
+ * @returns {boolean} Returns `true` if the entry was removed, else `false`.
2396
+ */
2397
+ function mapCacheDelete(key) {
2398
+ return getMapData(this, key)['delete'](key);
2399
+ }
2400
+
2401
+ /**
2402
+ * Gets the map value for `key`.
2403
+ *
2404
+ * @private
2405
+ * @name get
2406
+ * @memberOf MapCache
2407
+ * @param {string} key The key of the value to get.
2408
+ * @returns {*} Returns the entry value.
2409
+ */
2410
+ function mapCacheGet(key) {
2411
+ return getMapData(this, key).get(key);
2412
+ }
2413
+
2414
+ /**
2415
+ * Checks if a map value for `key` exists.
2416
+ *
2417
+ * @private
2418
+ * @name has
2419
+ * @memberOf MapCache
2420
+ * @param {string} key The key of the entry to check.
2421
+ * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
2422
+ */
2423
+ function mapCacheHas(key) {
2424
+ return getMapData(this, key).has(key);
2425
+ }
2426
+
2427
+ /**
2428
+ * Sets the map `key` to `value`.
2429
+ *
2430
+ * @private
2431
+ * @name set
2432
+ * @memberOf MapCache
2433
+ * @param {string} key The key of the value to set.
2434
+ * @param {*} value The value to set.
2435
+ * @returns {Object} Returns the map cache instance.
2436
+ */
2437
+ function mapCacheSet(key, value) {
2438
+ getMapData(this, key).set(key, value);
2439
+ return this;
2440
+ }
2441
+
2442
+ // Add methods to `MapCache`.
2443
+ MapCache.prototype.clear = mapCacheClear;
2444
+ MapCache.prototype['delete'] = mapCacheDelete;
2445
+ MapCache.prototype.get = mapCacheGet;
2446
+ MapCache.prototype.has = mapCacheHas;
2447
+ MapCache.prototype.set = mapCacheSet;
2448
+
2449
+ /**
2450
+ * Gets the index at which the `key` is found in `array` of key-value pairs.
2451
+ *
2452
+ * @private
2453
+ * @param {Array} array The array to inspect.
2454
+ * @param {*} key The key to search for.
2455
+ * @returns {number} Returns the index of the matched value, else `-1`.
2456
+ */
2457
+ function assocIndexOf(array, key) {
2458
+ var length = array.length;
2459
+ while (length--) {
2460
+ if (eq(array[length][0], key)) {
2461
+ return length;
2462
+ }
2463
+ }
2464
+ return -1;
2465
+ }
2466
+
2467
+ /**
2468
+ * The base implementation of `_.isNative` without bad shim checks.
2469
+ *
2470
+ * @private
2471
+ * @param {*} value The value to check.
2472
+ * @returns {boolean} Returns `true` if `value` is a native function,
2473
+ * else `false`.
2474
+ */
2475
+ function baseIsNative(value) {
2476
+ if (!isObject$3(value) || isMasked(value)) {
2477
+ return false;
2478
+ }
2479
+ var pattern = (isFunction(value) || isHostObject(value)) ? reIsNative : reIsHostCtor;
2480
+ return pattern.test(toSource(value));
2481
+ }
2482
+
2483
+ /**
2484
+ * Gets the data for `map`.
2485
+ *
2486
+ * @private
2487
+ * @param {Object} map The map to query.
2488
+ * @param {string} key The reference key.
2489
+ * @returns {*} Returns the map data.
2490
+ */
2491
+ function getMapData(map, key) {
2492
+ var data = map.__data__;
2493
+ return isKeyable(key)
2494
+ ? data[typeof key == 'string' ? 'string' : 'hash']
2495
+ : data.map;
2496
+ }
2497
+
2498
+ /**
2499
+ * Gets the native function at `key` of `object`.
2500
+ *
2501
+ * @private
2502
+ * @param {Object} object The object to query.
2503
+ * @param {string} key The key of the method to get.
2504
+ * @returns {*} Returns the function if it's native, else `undefined`.
2505
+ */
2506
+ function getNative(object, key) {
2507
+ var value = getValue(object, key);
2508
+ return baseIsNative(value) ? value : undefined;
2509
+ }
2510
+
2511
+ /**
2512
+ * Checks if `value` is suitable for use as unique object key.
2513
+ *
2514
+ * @private
2515
+ * @param {*} value The value to check.
2516
+ * @returns {boolean} Returns `true` if `value` is suitable, else `false`.
2517
+ */
2518
+ function isKeyable(value) {
2519
+ var type = typeof value;
2520
+ return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean')
2521
+ ? (value !== '__proto__')
2522
+ : (value === null);
2523
+ }
2524
+
2525
+ /**
2526
+ * Checks if `func` has its source masked.
2527
+ *
2528
+ * @private
2529
+ * @param {Function} func The function to check.
2530
+ * @returns {boolean} Returns `true` if `func` is masked, else `false`.
2531
+ */
2532
+ function isMasked(func) {
2533
+ return !!maskSrcKey && (maskSrcKey in func);
2534
+ }
2535
+
2536
+ /**
2537
+ * Converts `func` to its source code.
2538
+ *
2539
+ * @private
2540
+ * @param {Function} func The function to process.
2541
+ * @returns {string} Returns the source code.
2542
+ */
2543
+ function toSource(func) {
2544
+ if (func != null) {
2545
+ try {
2546
+ return funcToString.call(func);
2547
+ } catch (e) {}
2548
+ try {
2549
+ return (func + '');
2550
+ } catch (e) {}
2551
+ }
2552
+ return '';
2553
+ }
2554
+
2555
+ /**
2556
+ * Creates a function that memoizes the result of `func`. If `resolver` is
2557
+ * provided, it determines the cache key for storing the result based on the
2558
+ * arguments provided to the memoized function. By default, the first argument
2559
+ * provided to the memoized function is used as the map cache key. The `func`
2560
+ * is invoked with the `this` binding of the memoized function.
2561
+ *
2562
+ * **Note:** The cache is exposed as the `cache` property on the memoized
2563
+ * function. Its creation may be customized by replacing the `_.memoize.Cache`
2564
+ * constructor with one whose instances implement the
2565
+ * [`Map`](http://ecma-international.org/ecma-262/7.0/#sec-properties-of-the-map-prototype-object)
2566
+ * method interface of `delete`, `get`, `has`, and `set`.
2567
+ *
2568
+ * @static
2569
+ * @memberOf _
2570
+ * @since 0.1.0
2571
+ * @category Function
2572
+ * @param {Function} func The function to have its output memoized.
2573
+ * @param {Function} [resolver] The function to resolve the cache key.
2574
+ * @returns {Function} Returns the new memoized function.
2575
+ * @example
2576
+ *
2577
+ * var object = { 'a': 1, 'b': 2 };
2578
+ * var other = { 'c': 3, 'd': 4 };
2579
+ *
2580
+ * var values = _.memoize(_.values);
2581
+ * values(object);
2582
+ * // => [1, 2]
2583
+ *
2584
+ * values(other);
2585
+ * // => [3, 4]
2586
+ *
2587
+ * object.a = 2;
2588
+ * values(object);
2589
+ * // => [1, 2]
2590
+ *
2591
+ * // Modify the result cache.
2592
+ * values.cache.set(object, ['a', 'b']);
2593
+ * values(object);
2594
+ * // => ['a', 'b']
2595
+ *
2596
+ * // Replace `_.memoize.Cache`.
2597
+ * _.memoize.Cache = WeakMap;
2598
+ */
2599
+ function memoize(func, resolver) {
2600
+ if (typeof func != 'function' || (resolver && typeof resolver != 'function')) {
2601
+ throw new TypeError(FUNC_ERROR_TEXT$2);
2602
+ }
2603
+ var memoized = function() {
2604
+ var args = arguments,
2605
+ key = resolver ? resolver.apply(this, args) : args[0],
2606
+ cache = memoized.cache;
2607
+
2608
+ if (cache.has(key)) {
2609
+ return cache.get(key);
2610
+ }
2611
+ var result = func.apply(this, args);
2612
+ memoized.cache = cache.set(key, result);
2613
+ return result;
2614
+ };
2615
+ memoized.cache = new (memoize.Cache || MapCache);
2616
+ return memoized;
2617
+ }
2618
+
2619
+ // Assign cache to `_.memoize`.
2620
+ memoize.Cache = MapCache;
2621
+
2622
+ /**
2623
+ * Performs a
2624
+ * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)
2625
+ * comparison between two values to determine if they are equivalent.
2626
+ *
2627
+ * @static
2628
+ * @memberOf _
2629
+ * @since 4.0.0
2630
+ * @category Lang
2631
+ * @param {*} value The value to compare.
2632
+ * @param {*} other The other value to compare.
2633
+ * @returns {boolean} Returns `true` if the values are equivalent, else `false`.
2634
+ * @example
2635
+ *
2636
+ * var object = { 'a': 1 };
2637
+ * var other = { 'a': 1 };
2638
+ *
2639
+ * _.eq(object, object);
2640
+ * // => true
2641
+ *
2642
+ * _.eq(object, other);
2643
+ * // => false
2644
+ *
2645
+ * _.eq('a', 'a');
2646
+ * // => true
2647
+ *
2648
+ * _.eq('a', Object('a'));
2649
+ * // => false
2650
+ *
2651
+ * _.eq(NaN, NaN);
2652
+ * // => true
2653
+ */
2654
+ function eq(value, other) {
2655
+ return value === other || (value !== value && other !== other);
2656
+ }
2657
+
2658
+ /**
2659
+ * Checks if `value` is classified as a `Function` object.
2660
+ *
2661
+ * @static
2662
+ * @memberOf _
2663
+ * @since 0.1.0
2664
+ * @category Lang
2665
+ * @param {*} value The value to check.
2666
+ * @returns {boolean} Returns `true` if `value` is a function, else `false`.
2667
+ * @example
2668
+ *
2669
+ * _.isFunction(_);
2670
+ * // => true
2671
+ *
2672
+ * _.isFunction(/abc/);
2673
+ * // => false
2674
+ */
2675
+ function isFunction(value) {
2676
+ // The use of `Object#toString` avoids issues with the `typeof` operator
2677
+ // in Safari 8-9 which returns 'object' for typed array and other constructors.
2678
+ var tag = isObject$3(value) ? objectToString$2.call(value) : '';
2679
+ return tag == funcTag || tag == genTag;
2680
+ }
2681
+
2682
+ /**
2683
+ * Checks if `value` is the
2684
+ * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)
2685
+ * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)
2686
+ *
2687
+ * @static
2688
+ * @memberOf _
2689
+ * @since 0.1.0
2690
+ * @category Lang
2691
+ * @param {*} value The value to check.
2692
+ * @returns {boolean} Returns `true` if `value` is an object, else `false`.
2693
+ * @example
2694
+ *
2695
+ * _.isObject({});
2696
+ * // => true
2697
+ *
2698
+ * _.isObject([1, 2, 3]);
2699
+ * // => true
2700
+ *
2701
+ * _.isObject(_.noop);
2702
+ * // => true
2703
+ *
2704
+ * _.isObject(null);
2705
+ * // => false
2706
+ */
2707
+ function isObject$3(value) {
2708
+ var type = typeof value;
2709
+ return !!value && (type == 'object' || type == 'function');
2710
+ }
2711
+
2712
+ var lodash_memoize = memoize;
2713
+
2714
+ /**
2715
+ * A collection of shims that provide minimal functionality of the ES6 collections.
2716
+ *
2717
+ * These implementations are not meant to be used outside of the ResizeObserver
2718
+ * modules as they cover only a limited range of use cases.
2719
+ */
2720
+ /* eslint-disable require-jsdoc, valid-jsdoc */
2721
+ var MapShim = (function () {
2722
+ if (typeof Map !== 'undefined') {
2723
+ return Map;
2724
+ }
2725
+ /**
2726
+ * Returns index in provided array that matches the specified key.
2727
+ *
2728
+ * @param {Array<Array>} arr
2729
+ * @param {*} key
2730
+ * @returns {number}
2731
+ */
2732
+ function getIndex(arr, key) {
2733
+ var result = -1;
2734
+ arr.some(function (entry, index) {
2735
+ if (entry[0] === key) {
2736
+ result = index;
2737
+ return true;
2738
+ }
2739
+ return false;
2740
+ });
2741
+ return result;
2742
+ }
2743
+ return /** @class */ (function () {
2744
+ function class_1() {
2745
+ this.__entries__ = [];
2746
+ }
2747
+ Object.defineProperty(class_1.prototype, "size", {
2748
+ /**
2749
+ * @returns {boolean}
2750
+ */
2751
+ get: function () {
2752
+ return this.__entries__.length;
2753
+ },
2754
+ enumerable: true,
2755
+ configurable: true
2756
+ });
2757
+ /**
2758
+ * @param {*} key
2759
+ * @returns {*}
2760
+ */
2761
+ class_1.prototype.get = function (key) {
2762
+ var index = getIndex(this.__entries__, key);
2763
+ var entry = this.__entries__[index];
2764
+ return entry && entry[1];
2765
+ };
2766
+ /**
2767
+ * @param {*} key
2768
+ * @param {*} value
2769
+ * @returns {void}
2770
+ */
2771
+ class_1.prototype.set = function (key, value) {
2772
+ var index = getIndex(this.__entries__, key);
2773
+ if (~index) {
2774
+ this.__entries__[index][1] = value;
2775
+ }
2776
+ else {
2777
+ this.__entries__.push([key, value]);
2778
+ }
2779
+ };
2780
+ /**
2781
+ * @param {*} key
2782
+ * @returns {void}
2783
+ */
2784
+ class_1.prototype.delete = function (key) {
2785
+ var entries = this.__entries__;
2786
+ var index = getIndex(entries, key);
2787
+ if (~index) {
2788
+ entries.splice(index, 1);
2789
+ }
2790
+ };
2791
+ /**
2792
+ * @param {*} key
2793
+ * @returns {void}
2794
+ */
2795
+ class_1.prototype.has = function (key) {
2796
+ return !!~getIndex(this.__entries__, key);
2797
+ };
2798
+ /**
2799
+ * @returns {void}
2800
+ */
2801
+ class_1.prototype.clear = function () {
2802
+ this.__entries__.splice(0);
2803
+ };
2804
+ /**
2805
+ * @param {Function} callback
2806
+ * @param {*} [ctx=null]
2807
+ * @returns {void}
2808
+ */
2809
+ class_1.prototype.forEach = function (callback, ctx) {
2810
+ if (ctx === void 0) { ctx = null; }
2811
+ for (var _i = 0, _a = this.__entries__; _i < _a.length; _i++) {
2812
+ var entry = _a[_i];
2813
+ callback.call(ctx, entry[1], entry[0]);
2814
+ }
2815
+ };
2816
+ return class_1;
2817
+ }());
2818
+ })();
2819
+
2820
+ /**
2821
+ * Detects whether window and document objects are available in current environment.
2822
+ */
2823
+ var isBrowser = typeof window !== 'undefined' && typeof document !== 'undefined' && window.document === document;
2824
+
2825
+ // Returns global object of a current environment.
2826
+ var global$1$1 = (function () {
2827
+ if (typeof global !== 'undefined' && global.Math === Math) {
2828
+ return global;
2829
+ }
2830
+ if (typeof self !== 'undefined' && self.Math === Math) {
2831
+ return self;
2832
+ }
2833
+ if (typeof window !== 'undefined' && window.Math === Math) {
2834
+ return window;
2835
+ }
2836
+ // eslint-disable-next-line no-new-func
2837
+ return Function('return this')();
2838
+ })();
2839
+
2840
+ /**
2841
+ * A shim for the requestAnimationFrame which falls back to the setTimeout if
2842
+ * first one is not supported.
2843
+ *
2844
+ * @returns {number} Requests' identifier.
2845
+ */
2846
+ var requestAnimationFrame$1 = (function () {
2847
+ if (typeof requestAnimationFrame === 'function') {
2848
+ // It's required to use a bounded function because IE sometimes throws
2849
+ // an "Invalid calling object" error if rAF is invoked without the global
2850
+ // object on the left hand side.
2851
+ return requestAnimationFrame.bind(global$1$1);
2852
+ }
2853
+ return function (callback) { return setTimeout(function () { return callback(Date.now()); }, 1000 / 60); };
2854
+ })();
2855
+
2856
+ // Defines minimum timeout before adding a trailing call.
2857
+ var trailingTimeout = 2;
2858
+ /**
2859
+ * Creates a wrapper function which ensures that provided callback will be
2860
+ * invoked only once during the specified delay period.
2861
+ *
2862
+ * @param {Function} callback - Function to be invoked after the delay period.
2863
+ * @param {number} delay - Delay after which to invoke callback.
2864
+ * @returns {Function}
2865
+ */
2866
+ function throttle$1 (callback, delay) {
2867
+ var leadingCall = false, trailingCall = false, lastCallTime = 0;
2868
+ /**
2869
+ * Invokes the original callback function and schedules new invocation if
2870
+ * the "proxy" was called during current request.
2871
+ *
2872
+ * @returns {void}
2873
+ */
2874
+ function resolvePending() {
2875
+ if (leadingCall) {
2876
+ leadingCall = false;
2877
+ callback();
2878
+ }
2879
+ if (trailingCall) {
2880
+ proxy();
2881
+ }
2882
+ }
2883
+ /**
2884
+ * Callback invoked after the specified delay. It will further postpone
2885
+ * invocation of the original function delegating it to the
2886
+ * requestAnimationFrame.
2887
+ *
2888
+ * @returns {void}
2889
+ */
2890
+ function timeoutCallback() {
2891
+ requestAnimationFrame$1(resolvePending);
2892
+ }
2893
+ /**
2894
+ * Schedules invocation of the original function.
2895
+ *
2896
+ * @returns {void}
2897
+ */
2898
+ function proxy() {
2899
+ var timeStamp = Date.now();
2900
+ if (leadingCall) {
2901
+ // Reject immediately following calls.
2902
+ if (timeStamp - lastCallTime < trailingTimeout) {
2903
+ return;
2904
+ }
2905
+ // Schedule new call to be in invoked when the pending one is resolved.
2906
+ // This is important for "transitions" which never actually start
2907
+ // immediately so there is a chance that we might miss one if change
2908
+ // happens amids the pending invocation.
2909
+ trailingCall = true;
2910
+ }
2911
+ else {
2912
+ leadingCall = true;
2913
+ trailingCall = false;
2914
+ setTimeout(timeoutCallback, delay);
2915
+ }
2916
+ lastCallTime = timeStamp;
2917
+ }
2918
+ return proxy;
2919
+ }
2920
+
2921
+ // Minimum delay before invoking the update of observers.
2922
+ var REFRESH_DELAY = 20;
2923
+ // A list of substrings of CSS properties used to find transition events that
2924
+ // might affect dimensions of observed elements.
2925
+ var transitionKeys = ['top', 'right', 'bottom', 'left', 'width', 'height', 'size', 'weight'];
2926
+ // Check if MutationObserver is available.
2927
+ var mutationObserverSupported = typeof MutationObserver !== 'undefined';
2928
+ /**
2929
+ * Singleton controller class which handles updates of ResizeObserver instances.
2930
+ */
2931
+ var ResizeObserverController = /** @class */ (function () {
2932
+ /**
2933
+ * Creates a new instance of ResizeObserverController.
2934
+ *
2935
+ * @private
2936
+ */
2937
+ function ResizeObserverController() {
2938
+ /**
2939
+ * Indicates whether DOM listeners have been added.
2940
+ *
2941
+ * @private {boolean}
2942
+ */
2943
+ this.connected_ = false;
2944
+ /**
2945
+ * Tells that controller has subscribed for Mutation Events.
2946
+ *
2947
+ * @private {boolean}
2948
+ */
2949
+ this.mutationEventsAdded_ = false;
2950
+ /**
2951
+ * Keeps reference to the instance of MutationObserver.
2952
+ *
2953
+ * @private {MutationObserver}
2954
+ */
2955
+ this.mutationsObserver_ = null;
2956
+ /**
2957
+ * A list of connected observers.
2958
+ *
2959
+ * @private {Array<ResizeObserverSPI>}
2960
+ */
2961
+ this.observers_ = [];
2962
+ this.onTransitionEnd_ = this.onTransitionEnd_.bind(this);
2963
+ this.refresh = throttle$1(this.refresh.bind(this), REFRESH_DELAY);
2964
+ }
2965
+ /**
2966
+ * Adds observer to observers list.
2967
+ *
2968
+ * @param {ResizeObserverSPI} observer - Observer to be added.
2969
+ * @returns {void}
2970
+ */
2971
+ ResizeObserverController.prototype.addObserver = function (observer) {
2972
+ if (!~this.observers_.indexOf(observer)) {
2973
+ this.observers_.push(observer);
2974
+ }
2975
+ // Add listeners if they haven't been added yet.
2976
+ if (!this.connected_) {
2977
+ this.connect_();
2978
+ }
2979
+ };
2980
+ /**
2981
+ * Removes observer from observers list.
2982
+ *
2983
+ * @param {ResizeObserverSPI} observer - Observer to be removed.
2984
+ * @returns {void}
2985
+ */
2986
+ ResizeObserverController.prototype.removeObserver = function (observer) {
2987
+ var observers = this.observers_;
2988
+ var index = observers.indexOf(observer);
2989
+ // Remove observer if it's present in registry.
2990
+ if (~index) {
2991
+ observers.splice(index, 1);
2992
+ }
2993
+ // Remove listeners if controller has no connected observers.
2994
+ if (!observers.length && this.connected_) {
2995
+ this.disconnect_();
2996
+ }
2997
+ };
2998
+ /**
2999
+ * Invokes the update of observers. It will continue running updates insofar
3000
+ * it detects changes.
3001
+ *
3002
+ * @returns {void}
3003
+ */
3004
+ ResizeObserverController.prototype.refresh = function () {
3005
+ var changesDetected = this.updateObservers_();
3006
+ // Continue running updates if changes have been detected as there might
3007
+ // be future ones caused by CSS transitions.
3008
+ if (changesDetected) {
3009
+ this.refresh();
3010
+ }
3011
+ };
3012
+ /**
3013
+ * Updates every observer from observers list and notifies them of queued
3014
+ * entries.
3015
+ *
3016
+ * @private
3017
+ * @returns {boolean} Returns "true" if any observer has detected changes in
3018
+ * dimensions of it's elements.
3019
+ */
3020
+ ResizeObserverController.prototype.updateObservers_ = function () {
3021
+ // Collect observers that have active observations.
3022
+ var activeObservers = this.observers_.filter(function (observer) {
3023
+ return observer.gatherActive(), observer.hasActive();
3024
+ });
3025
+ // Deliver notifications in a separate cycle in order to avoid any
3026
+ // collisions between observers, e.g. when multiple instances of
3027
+ // ResizeObserver are tracking the same element and the callback of one
3028
+ // of them changes content dimensions of the observed target. Sometimes
3029
+ // this may result in notifications being blocked for the rest of observers.
3030
+ activeObservers.forEach(function (observer) { return observer.broadcastActive(); });
3031
+ return activeObservers.length > 0;
3032
+ };
3033
+ /**
3034
+ * Initializes DOM listeners.
3035
+ *
3036
+ * @private
3037
+ * @returns {void}
3038
+ */
3039
+ ResizeObserverController.prototype.connect_ = function () {
3040
+ // Do nothing if running in a non-browser environment or if listeners
3041
+ // have been already added.
3042
+ if (!isBrowser || this.connected_) {
3043
+ return;
3044
+ }
3045
+ // Subscription to the "Transitionend" event is used as a workaround for
3046
+ // delayed transitions. This way it's possible to capture at least the
3047
+ // final state of an element.
3048
+ document.addEventListener('transitionend', this.onTransitionEnd_);
3049
+ window.addEventListener('resize', this.refresh);
3050
+ if (mutationObserverSupported) {
3051
+ this.mutationsObserver_ = new MutationObserver(this.refresh);
3052
+ this.mutationsObserver_.observe(document, {
3053
+ attributes: true,
3054
+ childList: true,
3055
+ characterData: true,
3056
+ subtree: true
3057
+ });
3058
+ }
3059
+ else {
3060
+ document.addEventListener('DOMSubtreeModified', this.refresh);
3061
+ this.mutationEventsAdded_ = true;
3062
+ }
3063
+ this.connected_ = true;
3064
+ };
3065
+ /**
3066
+ * Removes DOM listeners.
3067
+ *
3068
+ * @private
3069
+ * @returns {void}
3070
+ */
3071
+ ResizeObserverController.prototype.disconnect_ = function () {
3072
+ // Do nothing if running in a non-browser environment or if listeners
3073
+ // have been already removed.
3074
+ if (!isBrowser || !this.connected_) {
3075
+ return;
3076
+ }
3077
+ document.removeEventListener('transitionend', this.onTransitionEnd_);
3078
+ window.removeEventListener('resize', this.refresh);
3079
+ if (this.mutationsObserver_) {
3080
+ this.mutationsObserver_.disconnect();
3081
+ }
3082
+ if (this.mutationEventsAdded_) {
3083
+ document.removeEventListener('DOMSubtreeModified', this.refresh);
3084
+ }
3085
+ this.mutationsObserver_ = null;
3086
+ this.mutationEventsAdded_ = false;
3087
+ this.connected_ = false;
3088
+ };
3089
+ /**
3090
+ * "Transitionend" event handler.
3091
+ *
3092
+ * @private
3093
+ * @param {TransitionEvent} event
3094
+ * @returns {void}
3095
+ */
3096
+ ResizeObserverController.prototype.onTransitionEnd_ = function (_a) {
3097
+ var _b = _a.propertyName, propertyName = _b === void 0 ? '' : _b;
3098
+ // Detect whether transition may affect dimensions of an element.
3099
+ var isReflowProperty = transitionKeys.some(function (key) {
3100
+ return !!~propertyName.indexOf(key);
3101
+ });
3102
+ if (isReflowProperty) {
3103
+ this.refresh();
3104
+ }
3105
+ };
3106
+ /**
3107
+ * Returns instance of the ResizeObserverController.
3108
+ *
3109
+ * @returns {ResizeObserverController}
3110
+ */
3111
+ ResizeObserverController.getInstance = function () {
3112
+ if (!this.instance_) {
3113
+ this.instance_ = new ResizeObserverController();
3114
+ }
3115
+ return this.instance_;
3116
+ };
3117
+ /**
3118
+ * Holds reference to the controller's instance.
3119
+ *
3120
+ * @private {ResizeObserverController}
3121
+ */
3122
+ ResizeObserverController.instance_ = null;
3123
+ return ResizeObserverController;
3124
+ }());
3125
+
3126
+ /**
3127
+ * Defines non-writable/enumerable properties of the provided target object.
3128
+ *
3129
+ * @param {Object} target - Object for which to define properties.
3130
+ * @param {Object} props - Properties to be defined.
3131
+ * @returns {Object} Target object.
3132
+ */
3133
+ var defineConfigurable = (function (target, props) {
3134
+ for (var _i = 0, _a = Object.keys(props); _i < _a.length; _i++) {
3135
+ var key = _a[_i];
3136
+ Object.defineProperty(target, key, {
3137
+ value: props[key],
3138
+ enumerable: false,
3139
+ writable: false,
3140
+ configurable: true
3141
+ });
3142
+ }
3143
+ return target;
3144
+ });
3145
+
3146
+ /**
3147
+ * Returns the global object associated with provided element.
3148
+ *
3149
+ * @param {Object} target
3150
+ * @returns {Object}
3151
+ */
3152
+ var getWindowOf = (function (target) {
3153
+ // Assume that the element is an instance of Node, which means that it
3154
+ // has the "ownerDocument" property from which we can retrieve a
3155
+ // corresponding global object.
3156
+ var ownerGlobal = target && target.ownerDocument && target.ownerDocument.defaultView;
3157
+ // Return the local global object if it's not possible extract one from
3158
+ // provided element.
3159
+ return ownerGlobal || global$1$1;
3160
+ });
3161
+
3162
+ // Placeholder of an empty content rectangle.
3163
+ var emptyRect = createRectInit(0, 0, 0, 0);
3164
+ /**
3165
+ * Converts provided string to a number.
3166
+ *
3167
+ * @param {number|string} value
3168
+ * @returns {number}
3169
+ */
3170
+ function toFloat(value) {
3171
+ return parseFloat(value) || 0;
3172
+ }
3173
+ /**
3174
+ * Extracts borders size from provided styles.
3175
+ *
3176
+ * @param {CSSStyleDeclaration} styles
3177
+ * @param {...string} positions - Borders positions (top, right, ...)
3178
+ * @returns {number}
3179
+ */
3180
+ function getBordersSize(styles) {
3181
+ var positions = [];
3182
+ for (var _i = 1; _i < arguments.length; _i++) {
3183
+ positions[_i - 1] = arguments[_i];
3184
+ }
3185
+ return positions.reduce(function (size, position) {
3186
+ var value = styles['border-' + position + '-width'];
3187
+ return size + toFloat(value);
3188
+ }, 0);
3189
+ }
3190
+ /**
3191
+ * Extracts paddings sizes from provided styles.
3192
+ *
3193
+ * @param {CSSStyleDeclaration} styles
3194
+ * @returns {Object} Paddings box.
3195
+ */
3196
+ function getPaddings(styles) {
3197
+ var positions = ['top', 'right', 'bottom', 'left'];
3198
+ var paddings = {};
3199
+ for (var _i = 0, positions_1 = positions; _i < positions_1.length; _i++) {
3200
+ var position = positions_1[_i];
3201
+ var value = styles['padding-' + position];
3202
+ paddings[position] = toFloat(value);
3203
+ }
3204
+ return paddings;
3205
+ }
3206
+ /**
3207
+ * Calculates content rectangle of provided SVG element.
3208
+ *
3209
+ * @param {SVGGraphicsElement} target - Element content rectangle of which needs
3210
+ * to be calculated.
3211
+ * @returns {DOMRectInit}
3212
+ */
3213
+ function getSVGContentRect(target) {
3214
+ var bbox = target.getBBox();
3215
+ return createRectInit(0, 0, bbox.width, bbox.height);
3216
+ }
3217
+ /**
3218
+ * Calculates content rectangle of provided HTMLElement.
3219
+ *
3220
+ * @param {HTMLElement} target - Element for which to calculate the content rectangle.
3221
+ * @returns {DOMRectInit}
3222
+ */
3223
+ function getHTMLElementContentRect(target) {
3224
+ // Client width & height properties can't be
3225
+ // used exclusively as they provide rounded values.
3226
+ var clientWidth = target.clientWidth, clientHeight = target.clientHeight;
3227
+ // By this condition we can catch all non-replaced inline, hidden and
3228
+ // detached elements. Though elements with width & height properties less
3229
+ // than 0.5 will be discarded as well.
3230
+ //
3231
+ // Without it we would need to implement separate methods for each of
3232
+ // those cases and it's not possible to perform a precise and performance
3233
+ // effective test for hidden elements. E.g. even jQuery's ':visible' filter
3234
+ // gives wrong results for elements with width & height less than 0.5.
3235
+ if (!clientWidth && !clientHeight) {
3236
+ return emptyRect;
3237
+ }
3238
+ var styles = getWindowOf(target).getComputedStyle(target);
3239
+ var paddings = getPaddings(styles);
3240
+ var horizPad = paddings.left + paddings.right;
3241
+ var vertPad = paddings.top + paddings.bottom;
3242
+ // Computed styles of width & height are being used because they are the
3243
+ // only dimensions available to JS that contain non-rounded values. It could
3244
+ // be possible to utilize the getBoundingClientRect if only it's data wasn't
3245
+ // affected by CSS transformations let alone paddings, borders and scroll bars.
3246
+ var width = toFloat(styles.width), height = toFloat(styles.height);
3247
+ // Width & height include paddings and borders when the 'border-box' box
3248
+ // model is applied (except for IE).
3249
+ if (styles.boxSizing === 'border-box') {
3250
+ // Following conditions are required to handle Internet Explorer which
3251
+ // doesn't include paddings and borders to computed CSS dimensions.
3252
+ //
3253
+ // We can say that if CSS dimensions + paddings are equal to the "client"
3254
+ // properties then it's either IE, and thus we don't need to subtract
3255
+ // anything, or an element merely doesn't have paddings/borders styles.
3256
+ if (Math.round(width + horizPad) !== clientWidth) {
3257
+ width -= getBordersSize(styles, 'left', 'right') + horizPad;
3258
+ }
3259
+ if (Math.round(height + vertPad) !== clientHeight) {
3260
+ height -= getBordersSize(styles, 'top', 'bottom') + vertPad;
3261
+ }
3262
+ }
3263
+ // Following steps can't be applied to the document's root element as its
3264
+ // client[Width/Height] properties represent viewport area of the window.
3265
+ // Besides, it's as well not necessary as the <html> itself neither has
3266
+ // rendered scroll bars nor it can be clipped.
3267
+ if (!isDocumentElement(target)) {
3268
+ // In some browsers (only in Firefox, actually) CSS width & height
3269
+ // include scroll bars size which can be removed at this step as scroll
3270
+ // bars are the only difference between rounded dimensions + paddings
3271
+ // and "client" properties, though that is not always true in Chrome.
3272
+ var vertScrollbar = Math.round(width + horizPad) - clientWidth;
3273
+ var horizScrollbar = Math.round(height + vertPad) - clientHeight;
3274
+ // Chrome has a rather weird rounding of "client" properties.
3275
+ // E.g. for an element with content width of 314.2px it sometimes gives
3276
+ // the client width of 315px and for the width of 314.7px it may give
3277
+ // 314px. And it doesn't happen all the time. So just ignore this delta
3278
+ // as a non-relevant.
3279
+ if (Math.abs(vertScrollbar) !== 1) {
3280
+ width -= vertScrollbar;
3281
+ }
3282
+ if (Math.abs(horizScrollbar) !== 1) {
3283
+ height -= horizScrollbar;
3284
+ }
3285
+ }
3286
+ return createRectInit(paddings.left, paddings.top, width, height);
3287
+ }
3288
+ /**
3289
+ * Checks whether provided element is an instance of the SVGGraphicsElement.
3290
+ *
3291
+ * @param {Element} target - Element to be checked.
3292
+ * @returns {boolean}
3293
+ */
3294
+ var isSVGGraphicsElement = (function () {
3295
+ // Some browsers, namely IE and Edge, don't have the SVGGraphicsElement
3296
+ // interface.
3297
+ if (typeof SVGGraphicsElement !== 'undefined') {
3298
+ return function (target) { return target instanceof getWindowOf(target).SVGGraphicsElement; };
3299
+ }
3300
+ // If it's so, then check that element is at least an instance of the
3301
+ // SVGElement and that it has the "getBBox" method.
3302
+ // eslint-disable-next-line no-extra-parens
3303
+ return function (target) { return (target instanceof getWindowOf(target).SVGElement &&
3304
+ typeof target.getBBox === 'function'); };
3305
+ })();
3306
+ /**
3307
+ * Checks whether provided element is a document element (<html>).
3308
+ *
3309
+ * @param {Element} target - Element to be checked.
3310
+ * @returns {boolean}
3311
+ */
3312
+ function isDocumentElement(target) {
3313
+ return target === getWindowOf(target).document.documentElement;
3314
+ }
3315
+ /**
3316
+ * Calculates an appropriate content rectangle for provided html or svg element.
3317
+ *
3318
+ * @param {Element} target - Element content rectangle of which needs to be calculated.
3319
+ * @returns {DOMRectInit}
3320
+ */
3321
+ function getContentRect(target) {
3322
+ if (!isBrowser) {
3323
+ return emptyRect;
3324
+ }
3325
+ if (isSVGGraphicsElement(target)) {
3326
+ return getSVGContentRect(target);
3327
+ }
3328
+ return getHTMLElementContentRect(target);
3329
+ }
3330
+ /**
3331
+ * Creates rectangle with an interface of the DOMRectReadOnly.
3332
+ * Spec: https://drafts.fxtf.org/geometry/#domrectreadonly
3333
+ *
3334
+ * @param {DOMRectInit} rectInit - Object with rectangle's x/y coordinates and dimensions.
3335
+ * @returns {DOMRectReadOnly}
3336
+ */
3337
+ function createReadOnlyRect(_a) {
3338
+ var x = _a.x, y = _a.y, width = _a.width, height = _a.height;
3339
+ // If DOMRectReadOnly is available use it as a prototype for the rectangle.
3340
+ var Constr = typeof DOMRectReadOnly !== 'undefined' ? DOMRectReadOnly : Object;
3341
+ var rect = Object.create(Constr.prototype);
3342
+ // Rectangle's properties are not writable and non-enumerable.
3343
+ defineConfigurable(rect, {
3344
+ x: x, y: y, width: width, height: height,
3345
+ top: y,
3346
+ right: x + width,
3347
+ bottom: height + y,
3348
+ left: x
3349
+ });
3350
+ return rect;
3351
+ }
3352
+ /**
3353
+ * Creates DOMRectInit object based on the provided dimensions and the x/y coordinates.
3354
+ * Spec: https://drafts.fxtf.org/geometry/#dictdef-domrectinit
3355
+ *
3356
+ * @param {number} x - X coordinate.
3357
+ * @param {number} y - Y coordinate.
3358
+ * @param {number} width - Rectangle's width.
3359
+ * @param {number} height - Rectangle's height.
3360
+ * @returns {DOMRectInit}
3361
+ */
3362
+ function createRectInit(x, y, width, height) {
3363
+ return { x: x, y: y, width: width, height: height };
3364
+ }
3365
+
3366
+ /**
3367
+ * Class that is responsible for computations of the content rectangle of
3368
+ * provided DOM element and for keeping track of it's changes.
3369
+ */
3370
+ var ResizeObservation = /** @class */ (function () {
3371
+ /**
3372
+ * Creates an instance of ResizeObservation.
3373
+ *
3374
+ * @param {Element} target - Element to be observed.
3375
+ */
3376
+ function ResizeObservation(target) {
3377
+ /**
3378
+ * Broadcasted width of content rectangle.
3379
+ *
3380
+ * @type {number}
3381
+ */
3382
+ this.broadcastWidth = 0;
3383
+ /**
3384
+ * Broadcasted height of content rectangle.
3385
+ *
3386
+ * @type {number}
3387
+ */
3388
+ this.broadcastHeight = 0;
3389
+ /**
3390
+ * Reference to the last observed content rectangle.
3391
+ *
3392
+ * @private {DOMRectInit}
3393
+ */
3394
+ this.contentRect_ = createRectInit(0, 0, 0, 0);
3395
+ this.target = target;
3396
+ }
3397
+ /**
3398
+ * Updates content rectangle and tells whether it's width or height properties
3399
+ * have changed since the last broadcast.
3400
+ *
3401
+ * @returns {boolean}
3402
+ */
3403
+ ResizeObservation.prototype.isActive = function () {
3404
+ var rect = getContentRect(this.target);
3405
+ this.contentRect_ = rect;
3406
+ return (rect.width !== this.broadcastWidth ||
3407
+ rect.height !== this.broadcastHeight);
3408
+ };
3409
+ /**
3410
+ * Updates 'broadcastWidth' and 'broadcastHeight' properties with a data
3411
+ * from the corresponding properties of the last observed content rectangle.
3412
+ *
3413
+ * @returns {DOMRectInit} Last observed content rectangle.
3414
+ */
3415
+ ResizeObservation.prototype.broadcastRect = function () {
3416
+ var rect = this.contentRect_;
3417
+ this.broadcastWidth = rect.width;
3418
+ this.broadcastHeight = rect.height;
3419
+ return rect;
3420
+ };
3421
+ return ResizeObservation;
3422
+ }());
3423
+
3424
+ var ResizeObserverEntry = /** @class */ (function () {
3425
+ /**
3426
+ * Creates an instance of ResizeObserverEntry.
3427
+ *
3428
+ * @param {Element} target - Element that is being observed.
3429
+ * @param {DOMRectInit} rectInit - Data of the element's content rectangle.
3430
+ */
3431
+ function ResizeObserverEntry(target, rectInit) {
3432
+ var contentRect = createReadOnlyRect(rectInit);
3433
+ // According to the specification following properties are not writable
3434
+ // and are also not enumerable in the native implementation.
3435
+ //
3436
+ // Property accessors are not being used as they'd require to define a
3437
+ // private WeakMap storage which may cause memory leaks in browsers that
3438
+ // don't support this type of collections.
3439
+ defineConfigurable(this, { target: target, contentRect: contentRect });
3440
+ }
3441
+ return ResizeObserverEntry;
3442
+ }());
3443
+
3444
+ var ResizeObserverSPI = /** @class */ (function () {
3445
+ /**
3446
+ * Creates a new instance of ResizeObserver.
3447
+ *
3448
+ * @param {ResizeObserverCallback} callback - Callback function that is invoked
3449
+ * when one of the observed elements changes it's content dimensions.
3450
+ * @param {ResizeObserverController} controller - Controller instance which
3451
+ * is responsible for the updates of observer.
3452
+ * @param {ResizeObserver} callbackCtx - Reference to the public
3453
+ * ResizeObserver instance which will be passed to callback function.
3454
+ */
3455
+ function ResizeObserverSPI(callback, controller, callbackCtx) {
3456
+ /**
3457
+ * Collection of resize observations that have detected changes in dimensions
3458
+ * of elements.
3459
+ *
3460
+ * @private {Array<ResizeObservation>}
3461
+ */
3462
+ this.activeObservations_ = [];
3463
+ /**
3464
+ * Registry of the ResizeObservation instances.
3465
+ *
3466
+ * @private {Map<Element, ResizeObservation>}
3467
+ */
3468
+ this.observations_ = new MapShim();
3469
+ if (typeof callback !== 'function') {
3470
+ throw new TypeError('The callback provided as parameter 1 is not a function.');
3471
+ }
3472
+ this.callback_ = callback;
3473
+ this.controller_ = controller;
3474
+ this.callbackCtx_ = callbackCtx;
3475
+ }
3476
+ /**
3477
+ * Starts observing provided element.
3478
+ *
3479
+ * @param {Element} target - Element to be observed.
3480
+ * @returns {void}
3481
+ */
3482
+ ResizeObserverSPI.prototype.observe = function (target) {
3483
+ if (!arguments.length) {
3484
+ throw new TypeError('1 argument required, but only 0 present.');
3485
+ }
3486
+ // Do nothing if current environment doesn't have the Element interface.
3487
+ if (typeof Element === 'undefined' || !(Element instanceof Object)) {
3488
+ return;
3489
+ }
3490
+ if (!(target instanceof getWindowOf(target).Element)) {
3491
+ throw new TypeError('parameter 1 is not of type "Element".');
3492
+ }
3493
+ var observations = this.observations_;
3494
+ // Do nothing if element is already being observed.
3495
+ if (observations.has(target)) {
3496
+ return;
3497
+ }
3498
+ observations.set(target, new ResizeObservation(target));
3499
+ this.controller_.addObserver(this);
3500
+ // Force the update of observations.
3501
+ this.controller_.refresh();
3502
+ };
3503
+ /**
3504
+ * Stops observing provided element.
3505
+ *
3506
+ * @param {Element} target - Element to stop observing.
3507
+ * @returns {void}
3508
+ */
3509
+ ResizeObserverSPI.prototype.unobserve = function (target) {
3510
+ if (!arguments.length) {
3511
+ throw new TypeError('1 argument required, but only 0 present.');
3512
+ }
3513
+ // Do nothing if current environment doesn't have the Element interface.
3514
+ if (typeof Element === 'undefined' || !(Element instanceof Object)) {
3515
+ return;
3516
+ }
3517
+ if (!(target instanceof getWindowOf(target).Element)) {
3518
+ throw new TypeError('parameter 1 is not of type "Element".');
3519
+ }
3520
+ var observations = this.observations_;
3521
+ // Do nothing if element is not being observed.
3522
+ if (!observations.has(target)) {
3523
+ return;
3524
+ }
3525
+ observations.delete(target);
3526
+ if (!observations.size) {
3527
+ this.controller_.removeObserver(this);
3528
+ }
3529
+ };
3530
+ /**
3531
+ * Stops observing all elements.
3532
+ *
3533
+ * @returns {void}
3534
+ */
3535
+ ResizeObserverSPI.prototype.disconnect = function () {
3536
+ this.clearActive();
3537
+ this.observations_.clear();
3538
+ this.controller_.removeObserver(this);
3539
+ };
3540
+ /**
3541
+ * Collects observation instances the associated element of which has changed
3542
+ * it's content rectangle.
3543
+ *
3544
+ * @returns {void}
3545
+ */
3546
+ ResizeObserverSPI.prototype.gatherActive = function () {
3547
+ var _this = this;
3548
+ this.clearActive();
3549
+ this.observations_.forEach(function (observation) {
3550
+ if (observation.isActive()) {
3551
+ _this.activeObservations_.push(observation);
3552
+ }
3553
+ });
3554
+ };
3555
+ /**
3556
+ * Invokes initial callback function with a list of ResizeObserverEntry
3557
+ * instances collected from active resize observations.
3558
+ *
3559
+ * @returns {void}
3560
+ */
3561
+ ResizeObserverSPI.prototype.broadcastActive = function () {
3562
+ // Do nothing if observer doesn't have active observations.
3563
+ if (!this.hasActive()) {
3564
+ return;
3565
+ }
3566
+ var ctx = this.callbackCtx_;
3567
+ // Create ResizeObserverEntry instance for every active observation.
3568
+ var entries = this.activeObservations_.map(function (observation) {
3569
+ return new ResizeObserverEntry(observation.target, observation.broadcastRect());
3570
+ });
3571
+ this.callback_.call(ctx, entries, ctx);
3572
+ this.clearActive();
3573
+ };
3574
+ /**
3575
+ * Clears the collection of active observations.
3576
+ *
3577
+ * @returns {void}
3578
+ */
3579
+ ResizeObserverSPI.prototype.clearActive = function () {
3580
+ this.activeObservations_.splice(0);
3581
+ };
3582
+ /**
3583
+ * Tells whether observer has active observations.
3584
+ *
3585
+ * @returns {boolean}
3586
+ */
3587
+ ResizeObserverSPI.prototype.hasActive = function () {
3588
+ return this.activeObservations_.length > 0;
3589
+ };
3590
+ return ResizeObserverSPI;
3591
+ }());
3592
+
3593
+ // Registry of internal observers. If WeakMap is not available use current shim
3594
+ // for the Map collection as it has all required methods and because WeakMap
3595
+ // can't be fully polyfilled anyway.
3596
+ var observers = typeof WeakMap !== 'undefined' ? new WeakMap() : new MapShim();
3597
+ /**
3598
+ * ResizeObserver API. Encapsulates the ResizeObserver SPI implementation
3599
+ * exposing only those methods and properties that are defined in the spec.
3600
+ */
3601
+ var ResizeObserver = /** @class */ (function () {
3602
+ /**
3603
+ * Creates a new instance of ResizeObserver.
3604
+ *
3605
+ * @param {ResizeObserverCallback} callback - Callback that is invoked when
3606
+ * dimensions of the observed elements change.
3607
+ */
3608
+ function ResizeObserver(callback) {
3609
+ if (!(this instanceof ResizeObserver)) {
3610
+ throw new TypeError('Cannot call a class as a function.');
3611
+ }
3612
+ if (!arguments.length) {
3613
+ throw new TypeError('1 argument required, but only 0 present.');
3614
+ }
3615
+ var controller = ResizeObserverController.getInstance();
3616
+ var observer = new ResizeObserverSPI(callback, controller, this);
3617
+ observers.set(this, observer);
3618
+ }
3619
+ return ResizeObserver;
3620
+ }());
3621
+ // Expose public methods of ResizeObserver.
3622
+ [
3623
+ 'observe',
3624
+ 'unobserve',
3625
+ 'disconnect'
3626
+ ].forEach(function (method) {
3627
+ ResizeObserver.prototype[method] = function () {
3628
+ var _a;
3629
+ return (_a = observers.get(this))[method].apply(_a, arguments);
3630
+ };
3631
+ });
3632
+
3633
+ var index = (function () {
3634
+ // Export existing implementation if available.
3635
+ if (typeof global$1$1.ResizeObserver !== 'undefined') {
3636
+ return global$1$1.ResizeObserver;
3637
+ }
3638
+ return ResizeObserver;
3639
+ })();
3640
+
3641
+ var canUseDOM = !!(
3642
+ typeof window !== 'undefined' &&
3643
+ window.document &&
3644
+ window.document.createElement
3645
+ );
3646
+
3647
+ var canUseDom = canUseDOM;
3648
+
3649
+ function scrollbarWidth() {
3650
+ if (typeof document === 'undefined') {
3651
+ return 0;
3652
+ }
3653
+
3654
+ var body = document.body;
3655
+ var box = document.createElement('div');
3656
+ var boxStyle = box.style;
3657
+ boxStyle.position = 'fixed';
3658
+ boxStyle.left = 0;
3659
+ boxStyle.visibility = 'hidden';
3660
+ boxStyle.overflowY = 'scroll';
3661
+ body.appendChild(box);
3662
+ var width = box.getBoundingClientRect().right;
3663
+ body.removeChild(box);
3664
+ return width;
3665
+ }
3666
+
3667
+ var SimpleBar =
3668
+ /*#__PURE__*/
3669
+ function () {
3670
+ function SimpleBar(element, options) {
3671
+ var _this = this;
3672
+
3673
+ this.onScroll = function () {
3674
+ if (!_this.scrollXTicking) {
3675
+ window.requestAnimationFrame(_this.scrollX);
3676
+ _this.scrollXTicking = true;
3677
+ }
3678
+
3679
+ if (!_this.scrollYTicking) {
3680
+ window.requestAnimationFrame(_this.scrollY);
3681
+ _this.scrollYTicking = true;
3682
+ }
3683
+ };
3684
+
3685
+ this.scrollX = function () {
3686
+ if (_this.axis.x.isOverflowing) {
3687
+ _this.showScrollbar('x');
3688
+
3689
+ _this.positionScrollbar('x');
3690
+ }
3691
+
3692
+ _this.scrollXTicking = false;
3693
+ };
3694
+
3695
+ this.scrollY = function () {
3696
+ if (_this.axis.y.isOverflowing) {
3697
+ _this.showScrollbar('y');
3698
+
3699
+ _this.positionScrollbar('y');
3700
+ }
3701
+
3702
+ _this.scrollYTicking = false;
3703
+ };
3704
+
3705
+ this.onMouseEnter = function () {
3706
+ _this.showScrollbar('x');
3707
+
3708
+ _this.showScrollbar('y');
3709
+ };
3710
+
3711
+ this.onMouseMove = function (e) {
3712
+ _this.mouseX = e.clientX;
3713
+ _this.mouseY = e.clientY;
3714
+
3715
+ if (_this.axis.x.isOverflowing || _this.axis.x.forceVisible) {
3716
+ _this.onMouseMoveForAxis('x');
3717
+ }
3718
+
3719
+ if (_this.axis.y.isOverflowing || _this.axis.y.forceVisible) {
3720
+ _this.onMouseMoveForAxis('y');
3721
+ }
3722
+ };
3723
+
3724
+ this.onMouseLeave = function () {
3725
+ _this.onMouseMove.cancel();
3726
+
3727
+ if (_this.axis.x.isOverflowing || _this.axis.x.forceVisible) {
3728
+ _this.onMouseLeaveForAxis('x');
3729
+ }
3730
+
3731
+ if (_this.axis.y.isOverflowing || _this.axis.y.forceVisible) {
3732
+ _this.onMouseLeaveForAxis('y');
3733
+ }
3734
+
3735
+ _this.mouseX = -1;
3736
+ _this.mouseY = -1;
3737
+ };
3738
+
3739
+ this.onWindowResize = function () {
3740
+ // Recalculate scrollbarWidth in case it's a zoom
3741
+ _this.scrollbarWidth = scrollbarWidth();
3742
+
3743
+ _this.hideNativeScrollbar();
3744
+ };
3745
+
3746
+ this.hideScrollbars = function () {
3747
+ _this.axis.x.track.rect = _this.axis.x.track.el.getBoundingClientRect();
3748
+ _this.axis.y.track.rect = _this.axis.y.track.el.getBoundingClientRect();
3749
+
3750
+ if (!_this.isWithinBounds(_this.axis.y.track.rect)) {
3751
+ _this.axis.y.scrollbar.el.classList.remove(_this.classNames.visible);
3752
+
3753
+ _this.axis.y.isVisible = false;
3754
+ }
3755
+
3756
+ if (!_this.isWithinBounds(_this.axis.x.track.rect)) {
3757
+ _this.axis.x.scrollbar.el.classList.remove(_this.classNames.visible);
3758
+
3759
+ _this.axis.x.isVisible = false;
3760
+ }
3761
+ };
3762
+
3763
+ this.onPointerEvent = function (e) {
3764
+ var isWithinBoundsY, isWithinBoundsX;
3765
+ _this.axis.x.scrollbar.rect = _this.axis.x.scrollbar.el.getBoundingClientRect();
3766
+ _this.axis.y.scrollbar.rect = _this.axis.y.scrollbar.el.getBoundingClientRect();
3767
+
3768
+ if (_this.axis.x.isOverflowing || _this.axis.x.forceVisible) {
3769
+ isWithinBoundsX = _this.isWithinBounds(_this.axis.x.scrollbar.rect);
3770
+ }
3771
+
3772
+ if (_this.axis.y.isOverflowing || _this.axis.y.forceVisible) {
3773
+ isWithinBoundsY = _this.isWithinBounds(_this.axis.y.scrollbar.rect);
3774
+ } // If any pointer event is called on the scrollbar
3775
+
3776
+
3777
+ if (isWithinBoundsY || isWithinBoundsX) {
3778
+ // Preventing the event's default action stops text being
3779
+ // selectable during the drag.
3780
+ e.preventDefault(); // Prevent event leaking
3781
+
3782
+ e.stopPropagation();
3783
+
3784
+ if (e.type === 'mousedown') {
3785
+ if (isWithinBoundsY) {
3786
+ _this.onDragStart(e, 'y');
3787
+ }
3788
+
3789
+ if (isWithinBoundsX) {
3790
+ _this.onDragStart(e, 'x');
3791
+ }
3792
+ }
3793
+ }
3794
+ };
3795
+
3796
+ this.drag = function (e) {
3797
+ var eventOffset;
3798
+ var track = _this.axis[_this.draggedAxis].track;
3799
+ var trackSize = track.rect[_this.axis[_this.draggedAxis].sizeAttr];
3800
+ var scrollbar = _this.axis[_this.draggedAxis].scrollbar;
3801
+ e.preventDefault();
3802
+ e.stopPropagation();
3803
+
3804
+ if (_this.draggedAxis === 'y') {
3805
+ eventOffset = e.pageY;
3806
+ } else {
3807
+ eventOffset = e.pageX;
3808
+ } // Calculate how far the user's mouse is from the top/left of the scrollbar (minus the dragOffset).
3809
+
3810
+
3811
+ var dragPos = eventOffset - track.rect[_this.axis[_this.draggedAxis].offsetAttr] - _this.axis[_this.draggedAxis].dragOffset; // Convert the mouse position into a percentage of the scrollbar height/width.
3812
+
3813
+ var dragPerc = dragPos / track.rect[_this.axis[_this.draggedAxis].sizeAttr]; // Scroll the content by the same percentage.
3814
+
3815
+ var scrollPos = dragPerc * _this.contentWrapperEl[_this.axis[_this.draggedAxis].scrollSizeAttr]; // Fix browsers inconsistency on RTL
3816
+
3817
+ if (_this.draggedAxis === 'x') {
3818
+ scrollPos = _this.isRtl && SimpleBar.getRtlHelpers().isRtlScrollbarInverted ? scrollPos - (trackSize + scrollbar.size) : scrollPos;
3819
+ scrollPos = _this.isRtl && SimpleBar.getRtlHelpers().isRtlScrollingInverted ? -scrollPos : scrollPos;
3820
+ }
3821
+
3822
+ _this.contentWrapperEl[_this.axis[_this.draggedAxis].scrollOffsetAttr] = scrollPos;
3823
+ };
3824
+
3825
+ this.onEndDrag = function (e) {
3826
+ e.preventDefault();
3827
+ e.stopPropagation();
3828
+
3829
+ _this.el.classList.remove(_this.classNames.dragging);
3830
+
3831
+ document.removeEventListener('mousemove', _this.drag, true);
3832
+ document.removeEventListener('mouseup', _this.onEndDrag, true);
3833
+ _this.removePreventClickId = window.setTimeout(function () {
3834
+ // Remove these asynchronously so we still suppress click events
3835
+ // generated simultaneously with mouseup.
3836
+ document.removeEventListener('click', _this.preventClick, true);
3837
+ document.removeEventListener('dblclick', _this.preventClick, true);
3838
+ _this.removePreventClickId = null;
3839
+ });
3840
+ };
3841
+
3842
+ this.preventClick = function (e) {
3843
+ e.preventDefault();
3844
+ e.stopPropagation();
3845
+ };
3846
+
3847
+ this.el = element;
3848
+ this.flashTimeout;
3849
+ this.contentEl;
3850
+ this.contentWrapperEl;
3851
+ this.offsetEl;
3852
+ this.maskEl;
3853
+ this.globalObserver;
3854
+ this.mutationObserver;
3855
+ this.resizeObserver;
3856
+ this.scrollbarWidth;
3857
+ this.minScrollbarWidth = 20;
3858
+ this.options = Object.assign({}, SimpleBar.defaultOptions, options);
3859
+ this.classNames = Object.assign({}, SimpleBar.defaultOptions.classNames, this.options.classNames);
3860
+ this.isRtl;
3861
+ this.axis = {
3862
+ x: {
3863
+ scrollOffsetAttr: 'scrollLeft',
3864
+ sizeAttr: 'width',
3865
+ scrollSizeAttr: 'scrollWidth',
3866
+ offsetAttr: 'left',
3867
+ overflowAttr: 'overflowX',
3868
+ dragOffset: 0,
3869
+ isOverflowing: true,
3870
+ isVisible: false,
3871
+ forceVisible: false,
3872
+ track: {},
3873
+ scrollbar: {}
3874
+ },
3875
+ y: {
3876
+ scrollOffsetAttr: 'scrollTop',
3877
+ sizeAttr: 'height',
3878
+ scrollSizeAttr: 'scrollHeight',
3879
+ offsetAttr: 'top',
3880
+ overflowAttr: 'overflowY',
3881
+ dragOffset: 0,
3882
+ isOverflowing: true,
3883
+ isVisible: false,
3884
+ forceVisible: false,
3885
+ track: {},
3886
+ scrollbar: {}
3887
+ }
3888
+ };
3889
+ this.removePreventClickId = null; // Don't re-instantiate over an existing one
3890
+
3891
+ if (this.el.SimpleBar) {
3892
+ return;
3893
+ }
3894
+
3895
+ this.recalculate = lodash_throttle(this.recalculate.bind(this), 64);
3896
+ this.onMouseMove = lodash_throttle(this.onMouseMove.bind(this), 64);
3897
+ this.hideScrollbars = lodash_debounce(this.hideScrollbars.bind(this), this.options.timeout);
3898
+ this.onWindowResize = lodash_debounce(this.onWindowResize.bind(this), 64, {
3899
+ leading: true
3900
+ });
3901
+ SimpleBar.getRtlHelpers = lodash_memoize(SimpleBar.getRtlHelpers);
3902
+ this.init();
3903
+ }
3904
+ /**
3905
+ * Static properties
3906
+ */
3907
+
3908
+ /**
3909
+ * Helper to fix browsers inconsistency on RTL:
3910
+ * - Firefox inverts the scrollbar initial position
3911
+ * - IE11 inverts both scrollbar position and scrolling offset
3912
+ * Directly inspired by @KingSora's OverlayScrollbars https://github.com/KingSora/OverlayScrollbars/blob/master/js/OverlayScrollbars.js#L1634
3913
+ */
3914
+
3915
+
3916
+ SimpleBar.getRtlHelpers = function getRtlHelpers() {
3917
+ var dummyDiv = document.createElement('div');
3918
+ dummyDiv.innerHTML = '<div class="hs-dummy-scrollbar-size"><div style="height: 200%; width: 200%; margin: 10px 0;"></div></div>';
3919
+ var scrollbarDummyEl = dummyDiv.firstElementChild;
3920
+ document.body.appendChild(scrollbarDummyEl);
3921
+ var dummyContainerChild = scrollbarDummyEl.firstElementChild;
3922
+ scrollbarDummyEl.scrollLeft = 0;
3923
+ var dummyContainerOffset = SimpleBar.getOffset(scrollbarDummyEl);
3924
+ var dummyContainerChildOffset = SimpleBar.getOffset(dummyContainerChild);
3925
+ scrollbarDummyEl.scrollLeft = 999;
3926
+ var dummyContainerScrollOffsetAfterScroll = SimpleBar.getOffset(dummyContainerChild);
3927
+ return {
3928
+ // determines if the scrolling is responding with negative values
3929
+ isRtlScrollingInverted: dummyContainerOffset.left !== dummyContainerChildOffset.left && dummyContainerChildOffset.left - dummyContainerScrollOffsetAfterScroll.left !== 0,
3930
+ // determines if the origin scrollbar position is inverted or not (positioned on left or right)
3931
+ isRtlScrollbarInverted: dummyContainerOffset.left !== dummyContainerChildOffset.left
3932
+ };
3933
+ };
3934
+
3935
+ SimpleBar.initHtmlApi = function initHtmlApi() {
3936
+ this.initDOMLoadedElements = this.initDOMLoadedElements.bind(this); // MutationObserver is IE11+
3937
+
3938
+ if (typeof MutationObserver !== 'undefined') {
3939
+ // Mutation observer to observe dynamically added elements
3940
+ this.globalObserver = new MutationObserver(function (mutations) {
3941
+ mutations.forEach(function (mutation) {
3942
+ Array.prototype.forEach.call(mutation.addedNodes, function (addedNode) {
3943
+ if (addedNode.nodeType === 1) {
3944
+ if (addedNode.hasAttribute('data-simplebar')) {
3945
+ !addedNode.SimpleBar && new SimpleBar(addedNode, SimpleBar.getElOptions(addedNode));
3946
+ } else {
3947
+ Array.prototype.forEach.call(addedNode.querySelectorAll('[data-simplebar]'), function (el) {
3948
+ !el.SimpleBar && new SimpleBar(el, SimpleBar.getElOptions(el));
3949
+ });
3950
+ }
3951
+ }
3952
+ });
3953
+ Array.prototype.forEach.call(mutation.removedNodes, function (removedNode) {
3954
+ if (removedNode.nodeType === 1) {
3955
+ if (removedNode.hasAttribute('data-simplebar')) {
3956
+ removedNode.SimpleBar && removedNode.SimpleBar.unMount();
3957
+ } else {
3958
+ Array.prototype.forEach.call(removedNode.querySelectorAll('[data-simplebar]'), function (el) {
3959
+ el.SimpleBar && el.SimpleBar.unMount();
3960
+ });
3961
+ }
3962
+ }
3963
+ });
3964
+ });
3965
+ });
3966
+ this.globalObserver.observe(document, {
3967
+ childList: true,
3968
+ subtree: true
3969
+ });
3970
+ } // Taken from jQuery `ready` function
3971
+ // Instantiate elements already present on the page
3972
+
3973
+
3974
+ if (document.readyState === 'complete' || document.readyState !== 'loading' && !document.documentElement.doScroll) {
3975
+ // Handle it asynchronously to allow scripts the opportunity to delay init
3976
+ window.setTimeout(this.initDOMLoadedElements);
3977
+ } else {
3978
+ document.addEventListener('DOMContentLoaded', this.initDOMLoadedElements);
3979
+ window.addEventListener('load', this.initDOMLoadedElements);
3980
+ }
3981
+ } // Helper function to retrieve options from element attributes
3982
+ ;
3983
+
3984
+ SimpleBar.getElOptions = function getElOptions(el) {
3985
+ var options = Array.prototype.reduce.call(el.attributes, function (acc, attribute) {
3986
+ var option = attribute.name.match(/data-simplebar-(.+)/);
3987
+
3988
+ if (option) {
3989
+ var key = option[1].replace(/\W+(.)/g, function (x, chr) {
3990
+ return chr.toUpperCase();
3991
+ });
3992
+
3993
+ switch (attribute.value) {
3994
+ case 'true':
3995
+ acc[key] = true;
3996
+ break;
3997
+
3998
+ case 'false':
3999
+ acc[key] = false;
4000
+ break;
4001
+
4002
+ case undefined:
4003
+ acc[key] = true;
4004
+ break;
4005
+
4006
+ default:
4007
+ acc[key] = attribute.value;
4008
+ }
4009
+ }
4010
+
4011
+ return acc;
4012
+ }, {});
4013
+ return options;
4014
+ };
4015
+
4016
+ SimpleBar.removeObserver = function removeObserver() {
4017
+ this.globalObserver.disconnect();
4018
+ };
4019
+
4020
+ SimpleBar.initDOMLoadedElements = function initDOMLoadedElements() {
4021
+ document.removeEventListener('DOMContentLoaded', this.initDOMLoadedElements);
4022
+ window.removeEventListener('load', this.initDOMLoadedElements);
4023
+ Array.prototype.forEach.call(document.querySelectorAll('[data-simplebar]'), function (el) {
4024
+ if (!el.SimpleBar) new SimpleBar(el, SimpleBar.getElOptions(el));
4025
+ });
4026
+ };
4027
+
4028
+ SimpleBar.getOffset = function getOffset(el) {
4029
+ var rect = el.getBoundingClientRect();
4030
+ return {
4031
+ top: rect.top + (window.pageYOffset || document.documentElement.scrollTop),
4032
+ left: rect.left + (window.pageXOffset || document.documentElement.scrollLeft)
4033
+ };
4034
+ };
4035
+
4036
+ var _proto = SimpleBar.prototype;
4037
+
4038
+ _proto.init = function init() {
4039
+ // Save a reference to the instance, so we know this DOM node has already been instancied
4040
+ this.el.SimpleBar = this; // We stop here on server-side
4041
+
4042
+ if (canUseDom) {
4043
+ this.initDOM();
4044
+ this.scrollbarWidth = scrollbarWidth();
4045
+ this.recalculate();
4046
+ this.initListeners();
4047
+ }
4048
+ };
4049
+
4050
+ _proto.initDOM = function initDOM() {
4051
+ var _this2 = this;
4052
+
4053
+ // make sure this element doesn't have the elements yet
4054
+ if (Array.prototype.filter.call(this.el.children, function (child) {
4055
+ return child.classList.contains(_this2.classNames.wrapper);
4056
+ }).length) {
4057
+ // assume that element has his DOM already initiated
4058
+ this.wrapperEl = this.el.querySelector("." + this.classNames.wrapper);
4059
+ this.contentWrapperEl = this.el.querySelector("." + this.classNames.contentWrapper);
4060
+ this.offsetEl = this.el.querySelector("." + this.classNames.offset);
4061
+ this.maskEl = this.el.querySelector("." + this.classNames.mask);
4062
+ this.contentEl = this.el.querySelector("." + this.classNames.contentEl);
4063
+ this.placeholderEl = this.el.querySelector("." + this.classNames.placeholder);
4064
+ this.heightAutoObserverWrapperEl = this.el.querySelector("." + this.classNames.heightAutoObserverWrapperEl);
4065
+ this.heightAutoObserverEl = this.el.querySelector("." + this.classNames.heightAutoObserverEl);
4066
+ this.axis.x.track.el = this.el.querySelector("." + this.classNames.track + "." + this.classNames.horizontal);
4067
+ this.axis.y.track.el = this.el.querySelector("." + this.classNames.track + "." + this.classNames.vertical);
4068
+ } else {
4069
+ // Prepare DOM
4070
+ this.wrapperEl = document.createElement('div');
4071
+ this.contentWrapperEl = document.createElement('div');
4072
+ this.offsetEl = document.createElement('div');
4073
+ this.maskEl = document.createElement('div');
4074
+ this.contentEl = document.createElement('div');
4075
+ this.placeholderEl = document.createElement('div');
4076
+ this.heightAutoObserverWrapperEl = document.createElement('div');
4077
+ this.heightAutoObserverEl = document.createElement('div');
4078
+ this.wrapperEl.classList.add(this.classNames.wrapper);
4079
+ this.contentWrapperEl.classList.add(this.classNames.contentWrapper);
4080
+ this.offsetEl.classList.add(this.classNames.offset);
4081
+ this.maskEl.classList.add(this.classNames.mask);
4082
+ this.contentEl.classList.add(this.classNames.contentEl);
4083
+ this.placeholderEl.classList.add(this.classNames.placeholder);
4084
+ this.heightAutoObserverWrapperEl.classList.add(this.classNames.heightAutoObserverWrapperEl);
4085
+ this.heightAutoObserverEl.classList.add(this.classNames.heightAutoObserverEl);
4086
+
4087
+ while (this.el.firstChild) {
4088
+ this.contentEl.appendChild(this.el.firstChild);
4089
+ }
4090
+
4091
+ this.contentWrapperEl.appendChild(this.contentEl);
4092
+ this.offsetEl.appendChild(this.contentWrapperEl);
4093
+ this.maskEl.appendChild(this.offsetEl);
4094
+ this.heightAutoObserverWrapperEl.appendChild(this.heightAutoObserverEl);
4095
+ this.wrapperEl.appendChild(this.heightAutoObserverWrapperEl);
4096
+ this.wrapperEl.appendChild(this.maskEl);
4097
+ this.wrapperEl.appendChild(this.placeholderEl);
4098
+ this.el.appendChild(this.wrapperEl);
4099
+ }
4100
+
4101
+ if (!this.axis.x.track.el || !this.axis.y.track.el) {
4102
+ var track = document.createElement('div');
4103
+ var scrollbar = document.createElement('div');
4104
+ track.classList.add(this.classNames.track);
4105
+ scrollbar.classList.add(this.classNames.scrollbar);
4106
+ track.appendChild(scrollbar);
4107
+ this.axis.x.track.el = track.cloneNode(true);
4108
+ this.axis.x.track.el.classList.add(this.classNames.horizontal);
4109
+ this.axis.y.track.el = track.cloneNode(true);
4110
+ this.axis.y.track.el.classList.add(this.classNames.vertical);
4111
+ this.el.appendChild(this.axis.x.track.el);
4112
+ this.el.appendChild(this.axis.y.track.el);
4113
+ }
4114
+
4115
+ this.axis.x.scrollbar.el = this.axis.x.track.el.querySelector("." + this.classNames.scrollbar);
4116
+ this.axis.y.scrollbar.el = this.axis.y.track.el.querySelector("." + this.classNames.scrollbar);
4117
+
4118
+ if (!this.options.autoHide) {
4119
+ this.axis.x.scrollbar.el.classList.add(this.classNames.visible);
4120
+ this.axis.y.scrollbar.el.classList.add(this.classNames.visible);
4121
+ }
4122
+
4123
+ this.el.setAttribute('data-simplebar', 'init');
4124
+ };
4125
+
4126
+ _proto.initListeners = function initListeners() {
4127
+ var _this3 = this;
4128
+
4129
+ // Event listeners
4130
+ if (this.options.autoHide) {
4131
+ this.el.addEventListener('mouseenter', this.onMouseEnter);
4132
+ }
4133
+
4134
+ ['mousedown', 'click', 'dblclick', 'touchstart', 'touchend', 'touchmove'].forEach(function (e) {
4135
+ _this3.el.addEventListener(e, _this3.onPointerEvent, true);
4136
+ });
4137
+ this.el.addEventListener('mousemove', this.onMouseMove);
4138
+ this.el.addEventListener('mouseleave', this.onMouseLeave);
4139
+ this.contentWrapperEl.addEventListener('scroll', this.onScroll); // Browser zoom triggers a window resize
4140
+
4141
+ window.addEventListener('resize', this.onWindowResize);
4142
+ this.resizeObserver = new index(this.recalculate);
4143
+ this.resizeObserver.observe(this.el);
4144
+ this.resizeObserver.observe(this.contentEl);
4145
+ };
4146
+
4147
+ _proto.recalculate = function recalculate() {
4148
+ var isHeightAuto = this.heightAutoObserverEl.offsetHeight <= 1;
4149
+ var isWidthAuto = this.heightAutoObserverEl.offsetWidth <= 1;
4150
+ this.elStyles = window.getComputedStyle(this.el);
4151
+ this.isRtl = this.elStyles.direction === 'rtl';
4152
+ this.contentEl.style.padding = this.elStyles.paddingTop + " " + this.elStyles.paddingRight + " " + this.elStyles.paddingBottom + " " + this.elStyles.paddingLeft;
4153
+ this.wrapperEl.style.margin = "-" + this.elStyles.paddingTop + " -" + this.elStyles.paddingRight + " -" + this.elStyles.paddingBottom + " -" + this.elStyles.paddingLeft;
4154
+ this.contentWrapperEl.style.height = isHeightAuto ? 'auto' : '100%'; // Determine placeholder size
4155
+
4156
+ this.placeholderEl.style.width = isWidthAuto ? this.contentEl.offsetWidth + "px" : 'auto';
4157
+ this.placeholderEl.style.height = this.contentEl.scrollHeight + "px"; // Set isOverflowing to false if scrollbar is not necessary (content is shorter than offset)
4158
+
4159
+ this.axis.x.isOverflowing = this.contentWrapperEl.scrollWidth > this.contentWrapperEl.offsetWidth;
4160
+ this.axis.y.isOverflowing = this.contentWrapperEl.scrollHeight > this.contentWrapperEl.offsetHeight; // Set isOverflowing to false if user explicitely set hidden overflow
4161
+
4162
+ this.axis.x.isOverflowing = this.elStyles.overflowX === 'hidden' ? false : this.axis.x.isOverflowing;
4163
+ this.axis.y.isOverflowing = this.elStyles.overflowY === 'hidden' ? false : this.axis.y.isOverflowing;
4164
+ this.axis.x.forceVisible = this.options.forceVisible === 'x' || this.options.forceVisible === true;
4165
+ this.axis.y.forceVisible = this.options.forceVisible === 'y' || this.options.forceVisible === true;
4166
+ this.hideNativeScrollbar();
4167
+ this.axis.x.track.rect = this.axis.x.track.el.getBoundingClientRect();
4168
+ this.axis.y.track.rect = this.axis.y.track.el.getBoundingClientRect();
4169
+ this.axis.x.scrollbar.size = this.getScrollbarSize('x');
4170
+ this.axis.y.scrollbar.size = this.getScrollbarSize('y');
4171
+ this.axis.x.scrollbar.el.style.width = this.axis.x.scrollbar.size + "px";
4172
+ this.axis.y.scrollbar.el.style.height = this.axis.y.scrollbar.size + "px";
4173
+ this.positionScrollbar('x');
4174
+ this.positionScrollbar('y');
4175
+ this.toggleTrackVisibility('x');
4176
+ this.toggleTrackVisibility('y');
4177
+ }
4178
+ /**
4179
+ * Calculate scrollbar size
4180
+ */
4181
+ ;
4182
+
4183
+ _proto.getScrollbarSize = function getScrollbarSize(axis) {
4184
+ if (axis === void 0) {
4185
+ axis = 'y';
4186
+ }
4187
+
4188
+ var contentSize = this.scrollbarWidth ? this.contentWrapperEl[this.axis[axis].scrollSizeAttr] : this.contentWrapperEl[this.axis[axis].scrollSizeAttr] - this.minScrollbarWidth;
4189
+ var trackSize = this.axis[axis].track.rect[this.axis[axis].sizeAttr];
4190
+ var scrollbarSize;
4191
+
4192
+ if (!this.axis[axis].isOverflowing) {
4193
+ return;
4194
+ }
4195
+
4196
+ var scrollbarRatio = trackSize / contentSize; // Calculate new height/position of drag handle.
4197
+
4198
+ scrollbarSize = Math.max(~~(scrollbarRatio * trackSize), this.options.scrollbarMinSize);
4199
+
4200
+ if (this.options.scrollbarMaxSize) {
4201
+ scrollbarSize = Math.min(scrollbarSize, this.options.scrollbarMaxSize);
4202
+ }
4203
+
4204
+ return scrollbarSize;
4205
+ };
4206
+
4207
+ _proto.positionScrollbar = function positionScrollbar(axis) {
4208
+ if (axis === void 0) {
4209
+ axis = 'y';
4210
+ }
4211
+
4212
+ var contentSize = this.contentWrapperEl[this.axis[axis].scrollSizeAttr];
4213
+ var trackSize = this.axis[axis].track.rect[this.axis[axis].sizeAttr];
4214
+ var hostSize = parseInt(this.elStyles[this.axis[axis].sizeAttr], 10);
4215
+ var scrollbar = this.axis[axis].scrollbar;
4216
+ var scrollOffset = this.contentWrapperEl[this.axis[axis].scrollOffsetAttr];
4217
+ scrollOffset = axis === 'x' && this.isRtl && SimpleBar.getRtlHelpers().isRtlScrollingInverted ? -scrollOffset : scrollOffset;
4218
+ var scrollPourcent = scrollOffset / (contentSize - hostSize);
4219
+ var handleOffset = ~~((trackSize - scrollbar.size) * scrollPourcent);
4220
+ handleOffset = axis === 'x' && this.isRtl && SimpleBar.getRtlHelpers().isRtlScrollbarInverted ? handleOffset + (trackSize - scrollbar.size) : handleOffset;
4221
+ scrollbar.el.style.transform = axis === 'x' ? "translate3d(" + handleOffset + "px, 0, 0)" : "translate3d(0, " + handleOffset + "px, 0)";
4222
+ };
4223
+
4224
+ _proto.toggleTrackVisibility = function toggleTrackVisibility(axis) {
4225
+ if (axis === void 0) {
4226
+ axis = 'y';
4227
+ }
4228
+
4229
+ var track = this.axis[axis].track.el;
4230
+ var scrollbar = this.axis[axis].scrollbar.el;
4231
+
4232
+ if (this.axis[axis].isOverflowing || this.axis[axis].forceVisible) {
4233
+ track.style.visibility = 'visible';
4234
+ this.contentWrapperEl.style[this.axis[axis].overflowAttr] = 'scroll';
4235
+ } else {
4236
+ track.style.visibility = 'hidden';
4237
+ this.contentWrapperEl.style[this.axis[axis].overflowAttr] = 'hidden';
4238
+ } // Even if forceVisible is enabled, scrollbar itself should be hidden
4239
+
4240
+
4241
+ if (this.axis[axis].isOverflowing) {
4242
+ scrollbar.style.display = 'block';
4243
+ } else {
4244
+ scrollbar.style.display = 'none';
4245
+ }
4246
+ };
4247
+
4248
+ _proto.hideNativeScrollbar = function hideNativeScrollbar() {
4249
+ this.offsetEl.style[this.isRtl ? 'left' : 'right'] = this.axis.y.isOverflowing || this.axis.y.forceVisible ? "-" + (this.scrollbarWidth || this.minScrollbarWidth) + "px" : 0;
4250
+ this.offsetEl.style.bottom = this.axis.x.isOverflowing || this.axis.x.forceVisible ? "-" + (this.scrollbarWidth || this.minScrollbarWidth) + "px" : 0; // If floating scrollbar
4251
+
4252
+ if (!this.scrollbarWidth) {
4253
+ var paddingDirection = [this.isRtl ? 'paddingLeft' : 'paddingRight'];
4254
+ this.contentWrapperEl.style[paddingDirection] = this.axis.y.isOverflowing || this.axis.y.forceVisible ? this.minScrollbarWidth + "px" : 0;
4255
+ this.contentWrapperEl.style.paddingBottom = this.axis.x.isOverflowing || this.axis.x.forceVisible ? this.minScrollbarWidth + "px" : 0;
4256
+ }
4257
+ }
4258
+ /**
4259
+ * On scroll event handling
4260
+ */
4261
+ ;
4262
+
4263
+ _proto.onMouseMoveForAxis = function onMouseMoveForAxis(axis) {
4264
+ if (axis === void 0) {
4265
+ axis = 'y';
4266
+ }
4267
+
4268
+ this.axis[axis].track.rect = this.axis[axis].track.el.getBoundingClientRect();
4269
+ this.axis[axis].scrollbar.rect = this.axis[axis].scrollbar.el.getBoundingClientRect();
4270
+ var isWithinScrollbarBoundsX = this.isWithinBounds(this.axis[axis].scrollbar.rect);
4271
+
4272
+ if (isWithinScrollbarBoundsX) {
4273
+ this.axis[axis].scrollbar.el.classList.add(this.classNames.hover);
4274
+ } else {
4275
+ this.axis[axis].scrollbar.el.classList.remove(this.classNames.hover);
4276
+ }
4277
+
4278
+ if (this.isWithinBounds(this.axis[axis].track.rect)) {
4279
+ this.showScrollbar(axis);
4280
+ this.axis[axis].track.el.classList.add(this.classNames.hover);
4281
+ } else {
4282
+ this.axis[axis].track.el.classList.remove(this.classNames.hover);
4283
+ }
4284
+ };
4285
+
4286
+ _proto.onMouseLeaveForAxis = function onMouseLeaveForAxis(axis) {
4287
+ if (axis === void 0) {
4288
+ axis = 'y';
4289
+ }
4290
+
4291
+ this.axis[axis].track.el.classList.remove(this.classNames.hover);
4292
+ this.axis[axis].scrollbar.el.classList.remove(this.classNames.hover);
4293
+ };
4294
+
4295
+ /**
4296
+ * Show scrollbar
4297
+ */
4298
+ _proto.showScrollbar = function showScrollbar(axis) {
4299
+ if (axis === void 0) {
4300
+ axis = 'y';
4301
+ }
4302
+
4303
+ var scrollbar = this.axis[axis].scrollbar.el;
4304
+
4305
+ if (!this.axis[axis].isVisible) {
4306
+ scrollbar.classList.add(this.classNames.visible);
4307
+ this.axis[axis].isVisible = true;
4308
+ }
4309
+
4310
+ if (this.options.autoHide) {
4311
+ this.hideScrollbars();
4312
+ }
4313
+ }
4314
+ /**
4315
+ * Hide Scrollbar
4316
+ */
4317
+ ;
4318
+
4319
+ /**
4320
+ * on scrollbar handle drag movement starts
4321
+ */
4322
+ _proto.onDragStart = function onDragStart(e, axis) {
4323
+ if (axis === void 0) {
4324
+ axis = 'y';
4325
+ }
4326
+
4327
+ var scrollbar = this.axis[axis].scrollbar.el; // Measure how far the user's mouse is from the top of the scrollbar drag handle.
4328
+
4329
+ var eventOffset = axis === 'y' ? e.pageY : e.pageX;
4330
+ this.axis[axis].dragOffset = eventOffset - scrollbar.getBoundingClientRect()[this.axis[axis].offsetAttr];
4331
+ this.draggedAxis = axis;
4332
+ this.el.classList.add(this.classNames.dragging);
4333
+ document.addEventListener('mousemove', this.drag, true);
4334
+ document.addEventListener('mouseup', this.onEndDrag, true);
4335
+
4336
+ if (this.removePreventClickId === null) {
4337
+ document.addEventListener('click', this.preventClick, true);
4338
+ document.addEventListener('dblclick', this.preventClick, true);
4339
+ } else {
4340
+ window.clearTimeout(this.removePreventClickId);
4341
+ this.removePreventClickId = null;
4342
+ }
4343
+ }
4344
+ /**
4345
+ * Drag scrollbar handle
4346
+ */
4347
+ ;
4348
+
4349
+ /**
4350
+ * Getter for content element
4351
+ */
4352
+ _proto.getContentElement = function getContentElement() {
4353
+ return this.contentEl;
4354
+ }
4355
+ /**
4356
+ * Getter for original scrolling element
4357
+ */
4358
+ ;
4359
+
4360
+ _proto.getScrollElement = function getScrollElement() {
4361
+ return this.contentWrapperEl;
4362
+ };
4363
+
4364
+ _proto.removeListeners = function removeListeners() {
4365
+ var _this4 = this;
4366
+
4367
+ // Event listeners
4368
+ if (this.options.autoHide) {
4369
+ this.el.removeEventListener('mouseenter', this.onMouseEnter);
4370
+ }
4371
+
4372
+ ['mousedown', 'click', 'dblclick', 'touchstart', 'touchend', 'touchmove'].forEach(function (e) {
4373
+ _this4.el.removeEventListener(e, _this4.onPointerEvent);
4374
+ });
4375
+ this.el.removeEventListener('mousemove', this.onMouseMove);
4376
+ this.el.removeEventListener('mouseleave', this.onMouseLeave);
4377
+ this.contentWrapperEl.removeEventListener('scroll', this.onScroll);
4378
+ window.removeEventListener('resize', this.onWindowResize);
4379
+ this.mutationObserver && this.mutationObserver.disconnect();
4380
+ this.resizeObserver.disconnect(); // Cancel all debounced functions
4381
+
4382
+ this.recalculate.cancel();
4383
+ this.onMouseMove.cancel();
4384
+ this.hideScrollbars.cancel();
4385
+ this.onWindowResize.cancel();
4386
+ }
4387
+ /**
4388
+ * UnMount mutation observer and delete SimpleBar instance from DOM element
4389
+ */
4390
+ ;
4391
+
4392
+ _proto.unMount = function unMount() {
4393
+ this.removeListeners();
4394
+ this.el.SimpleBar = null;
4395
+ }
4396
+ /**
4397
+ * Recursively walks up the parent nodes looking for this.el
4398
+ */
4399
+ ;
4400
+
4401
+ _proto.isChildNode = function isChildNode(el) {
4402
+ if (el === null) return false;
4403
+ if (el === this.el) return true;
4404
+ return this.isChildNode(el.parentNode);
4405
+ }
4406
+ /**
4407
+ * Check if mouse is within bounds
4408
+ */
4409
+ ;
4410
+
4411
+ _proto.isWithinBounds = function isWithinBounds(bbox) {
4412
+ return this.mouseX >= bbox.left && this.mouseX <= bbox.left + bbox.width && this.mouseY >= bbox.top && this.mouseY <= bbox.top + bbox.height;
4413
+ };
4414
+
4415
+ return SimpleBar;
4416
+ }();
4417
+ /**
4418
+ * HTML API
4419
+ * Called only in a browser env.
4420
+ */
4421
+
4422
+
4423
+ SimpleBar.defaultOptions = {
4424
+ autoHide: true,
4425
+ forceVisible: false,
4426
+ classNames: {
4427
+ contentEl: 'simplebar-content',
4428
+ contentWrapper: 'simplebar-content-wrapper',
4429
+ offset: 'simplebar-offset',
4430
+ mask: 'simplebar-mask',
4431
+ wrapper: 'simplebar-wrapper',
4432
+ placeholder: 'simplebar-placeholder',
4433
+ scrollbar: 'simplebar-scrollbar',
4434
+ track: 'simplebar-track',
4435
+ heightAutoObserverWrapperEl: 'simplebar-height-auto-observer-wrapper',
4436
+ heightAutoObserverEl: 'simplebar-height-auto-observer',
4437
+ visible: 'simplebar-visible',
4438
+ horizontal: 'simplebar-horizontal',
4439
+ vertical: 'simplebar-vertical',
4440
+ hover: 'simplebar-hover',
4441
+ dragging: 'simplebar-dragging'
4442
+ },
4443
+ scrollbarMinSize: 25,
4444
+ scrollbarMaxSize: 0,
4445
+ timeout: 1000
4446
+ };
4447
+
4448
+ if (canUseDom) {
4449
+ SimpleBar.initHtmlApi();
4450
+ }
4451
+
4452
+ return SimpleBar;
4453
+
4454
+ }));
assets/js/vue.min.js ADDED
@@ -0,0 +1,6 @@
 
 
 
 
 
 
1
+ /*!
2
+ * Vue.js v2.6.10
3
+ * (c) 2014-2019 Evan You
4
+ * Released under the MIT License.
5
+ */
6
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e=e||self).Vue=t()}(this,function(){"use strict";var e=Object.freeze({});function t(e){return null==e}function n(e){return null!=e}function r(e){return!0===e}function i(e){return"string"==typeof e||"number"==typeof e||"symbol"==typeof e||"boolean"==typeof e}function o(e){return null!==e&&"object"==typeof e}var a=Object.prototype.toString;function s(e){return"[object Object]"===a.call(e)}function c(e){var t=parseFloat(String(e));return t>=0&&Math.floor(t)===t&&isFinite(e)}function u(e){return n(e)&&"function"==typeof e.then&&"function"==typeof e.catch}function l(e){return null==e?"":Array.isArray(e)||s(e)&&e.toString===a?JSON.stringify(e,null,2):String(e)}function f(e){var t=parseFloat(e);return isNaN(t)?e:t}function p(e,t){for(var n=Object.create(null),r=e.split(","),i=0;i<r.length;i++)n[r[i]]=!0;return t?function(e){return n[e.toLowerCase()]}:function(e){return n[e]}}var d=p("slot,component",!0),v=p("key,ref,slot,slot-scope,is");function h(e,t){if(e.length){var n=e.indexOf(t);if(n>-1)return e.splice(n,1)}}var m=Object.prototype.hasOwnProperty;function y(e,t){return m.call(e,t)}function g(e){var t=Object.create(null);return function(n){return t[n]||(t[n]=e(n))}}var _=/-(\w)/g,b=g(function(e){return e.replace(_,function(e,t){return t?t.toUpperCase():""})}),$=g(function(e){return e.charAt(0).toUpperCase()+e.slice(1)}),w=/\B([A-Z])/g,C=g(function(e){return e.replace(w,"-$1").toLowerCase()});var x=Function.prototype.bind?function(e,t){return e.bind(t)}:function(e,t){function n(n){var r=arguments.length;return r?r>1?e.apply(t,arguments):e.call(t,n):e.call(t)}return n._length=e.length,n};function k(e,t){t=t||0;for(var n=e.length-t,r=new Array(n);n--;)r[n]=e[n+t];return r}function A(e,t){for(var n in t)e[n]=t[n];return e}function O(e){for(var t={},n=0;n<e.length;n++)e[n]&&A(t,e[n]);return t}function S(e,t,n){}var T=function(e,t,n){return!1},E=function(e){return e};function N(e,t){if(e===t)return!0;var n=o(e),r=o(t);if(!n||!r)return!n&&!r&&String(e)===String(t);try{var i=Array.isArray(e),a=Array.isArray(t);if(i&&a)return e.length===t.length&&e.every(function(e,n){return N(e,t[n])});if(e instanceof Date&&t instanceof Date)return e.getTime()===t.getTime();if(i||a)return!1;var s=Object.keys(e),c=Object.keys(t);return s.length===c.length&&s.every(function(n){return N(e[n],t[n])})}catch(e){return!1}}function j(e,t){for(var n=0;n<e.length;n++)if(N(e[n],t))return n;return-1}function D(e){var t=!1;return function(){t||(t=!0,e.apply(this,arguments))}}var L="data-server-rendered",M=["component","directive","filter"],I=["beforeCreate","created","beforeMount","mounted","beforeUpdate","updated","beforeDestroy","destroyed","activated","deactivated","errorCaptured","serverPrefetch"],F={optionMergeStrategies:Object.create(null),silent:!1,productionTip:!1,devtools:!1,performance:!1,errorHandler:null,warnHandler:null,ignoredElements:[],keyCodes:Object.create(null),isReservedTag:T,isReservedAttr:T,isUnknownElement:T,getTagNamespace:S,parsePlatformTagName:E,mustUseProp:T,async:!0,_lifecycleHooks:I},P=/a-zA-Z\u00B7\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u037D\u037F-\u1FFF\u200C-\u200D\u203F-\u2040\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD/;function R(e,t,n,r){Object.defineProperty(e,t,{value:n,enumerable:!!r,writable:!0,configurable:!0})}var H=new RegExp("[^"+P.source+".$_\\d]");var B,U="__proto__"in{},z="undefined"!=typeof window,V="undefined"!=typeof WXEnvironment&&!!WXEnvironment.platform,K=V&&WXEnvironment.platform.toLowerCase(),J=z&&window.navigator.userAgent.toLowerCase(),q=J&&/msie|trident/.test(J),W=J&&J.indexOf("msie 9.0")>0,Z=J&&J.indexOf("edge/")>0,G=(J&&J.indexOf("android"),J&&/iphone|ipad|ipod|ios/.test(J)||"ios"===K),X=(J&&/chrome\/\d+/.test(J),J&&/phantomjs/.test(J),J&&J.match(/firefox\/(\d+)/)),Y={}.watch,Q=!1;if(z)try{var ee={};Object.defineProperty(ee,"passive",{get:function(){Q=!0}}),window.addEventListener("test-passive",null,ee)}catch(e){}var te=function(){return void 0===B&&(B=!z&&!V&&"undefined"!=typeof global&&(global.process&&"server"===global.process.env.VUE_ENV)),B},ne=z&&window.__VUE_DEVTOOLS_GLOBAL_HOOK__;function re(e){return"function"==typeof e&&/native code/.test(e.toString())}var ie,oe="undefined"!=typeof Symbol&&re(Symbol)&&"undefined"!=typeof Reflect&&re(Reflect.ownKeys);ie="undefined"!=typeof Set&&re(Set)?Set:function(){function e(){this.set=Object.create(null)}return e.prototype.has=function(e){return!0===this.set[e]},e.prototype.add=function(e){this.set[e]=!0},e.prototype.clear=function(){this.set=Object.create(null)},e}();var ae=S,se=0,ce=function(){this.id=se++,this.subs=[]};ce.prototype.addSub=function(e){this.subs.push(e)},ce.prototype.removeSub=function(e){h(this.subs,e)},ce.prototype.depend=function(){ce.target&&ce.target.addDep(this)},ce.prototype.notify=function(){for(var e=this.subs.slice(),t=0,n=e.length;t<n;t++)e[t].update()},ce.target=null;var ue=[];function le(e){ue.push(e),ce.target=e}function fe(){ue.pop(),ce.target=ue[ue.length-1]}var pe=function(e,t,n,r,i,o,a,s){this.tag=e,this.data=t,this.children=n,this.text=r,this.elm=i,this.ns=void 0,this.context=o,this.fnContext=void 0,this.fnOptions=void 0,this.fnScopeId=void 0,this.key=t&&t.key,this.componentOptions=a,this.componentInstance=void 0,this.parent=void 0,this.raw=!1,this.isStatic=!1,this.isRootInsert=!0,this.isComment=!1,this.isCloned=!1,this.isOnce=!1,this.asyncFactory=s,this.asyncMeta=void 0,this.isAsyncPlaceholder=!1},de={child:{configurable:!0}};de.child.get=function(){return this.componentInstance},Object.defineProperties(pe.prototype,de);var ve=function(e){void 0===e&&(e="");var t=new pe;return t.text=e,t.isComment=!0,t};function he(e){return new pe(void 0,void 0,void 0,String(e))}function me(e){var t=new pe(e.tag,e.data,e.children&&e.children.slice(),e.text,e.elm,e.context,e.componentOptions,e.asyncFactory);return t.ns=e.ns,t.isStatic=e.isStatic,t.key=e.key,t.isComment=e.isComment,t.fnContext=e.fnContext,t.fnOptions=e.fnOptions,t.fnScopeId=e.fnScopeId,t.asyncMeta=e.asyncMeta,t.isCloned=!0,t}var ye=Array.prototype,ge=Object.create(ye);["push","pop","shift","unshift","splice","sort","reverse"].forEach(function(e){var t=ye[e];R(ge,e,function(){for(var n=[],r=arguments.length;r--;)n[r]=arguments[r];var i,o=t.apply(this,n),a=this.__ob__;switch(e){case"push":case"unshift":i=n;break;case"splice":i=n.slice(2)}return i&&a.observeArray(i),a.dep.notify(),o})});var _e=Object.getOwnPropertyNames(ge),be=!0;function $e(e){be=e}var we=function(e){var t;this.value=e,this.dep=new ce,this.vmCount=0,R(e,"__ob__",this),Array.isArray(e)?(U?(t=ge,e.__proto__=t):function(e,t,n){for(var r=0,i=n.length;r<i;r++){var o=n[r];R(e,o,t[o])}}(e,ge,_e),this.observeArray(e)):this.walk(e)};function Ce(e,t){var n;if(o(e)&&!(e instanceof pe))return y(e,"__ob__")&&e.__ob__ instanceof we?n=e.__ob__:be&&!te()&&(Array.isArray(e)||s(e))&&Object.isExtensible(e)&&!e._isVue&&(n=new we(e)),t&&n&&n.vmCount++,n}function xe(e,t,n,r,i){var o=new ce,a=Object.getOwnPropertyDescriptor(e,t);if(!a||!1!==a.configurable){var s=a&&a.get,c=a&&a.set;s&&!c||2!==arguments.length||(n=e[t]);var u=!i&&Ce(n);Object.defineProperty(e,t,{enumerable:!0,configurable:!0,get:function(){var t=s?s.call(e):n;return ce.target&&(o.depend(),u&&(u.dep.depend(),Array.isArray(t)&&function e(t){for(var n=void 0,r=0,i=t.length;r<i;r++)(n=t[r])&&n.__ob__&&n.__ob__.dep.depend(),Array.isArray(n)&&e(n)}(t))),t},set:function(t){var r=s?s.call(e):n;t===r||t!=t&&r!=r||s&&!c||(c?c.call(e,t):n=t,u=!i&&Ce(t),o.notify())}})}}function ke(e,t,n){if(Array.isArray(e)&&c(t))return e.length=Math.max(e.length,t),e.splice(t,1,n),n;if(t in e&&!(t in Object.prototype))return e[t]=n,n;var r=e.__ob__;return e._isVue||r&&r.vmCount?n:r?(xe(r.value,t,n),r.dep.notify(),n):(e[t]=n,n)}function Ae(e,t){if(Array.isArray(e)&&c(t))e.splice(t,1);else{var n=e.__ob__;e._isVue||n&&n.vmCount||y(e,t)&&(delete e[t],n&&n.dep.notify())}}we.prototype.walk=function(e){for(var t=Object.keys(e),n=0;n<t.length;n++)xe(e,t[n])},we.prototype.observeArray=function(e){for(var t=0,n=e.length;t<n;t++)Ce(e[t])};var Oe=F.optionMergeStrategies;function Se(e,t){if(!t)return e;for(var n,r,i,o=oe?Reflect.ownKeys(t):Object.keys(t),a=0;a<o.length;a++)"__ob__"!==(n=o[a])&&(r=e[n],i=t[n],y(e,n)?r!==i&&s(r)&&s(i)&&Se(r,i):ke(e,n,i));return e}function Te(e,t,n){return n?function(){var r="function"==typeof t?t.call(n,n):t,i="function"==typeof e?e.call(n,n):e;return r?Se(r,i):i}:t?e?function(){return Se("function"==typeof t?t.call(this,this):t,"function"==typeof e?e.call(this,this):e)}:t:e}function Ee(e,t){var n=t?e?e.concat(t):Array.isArray(t)?t:[t]:e;return n?function(e){for(var t=[],n=0;n<e.length;n++)-1===t.indexOf(e[n])&&t.push(e[n]);return t}(n):n}function Ne(e,t,n,r){var i=Object.create(e||null);return t?A(i,t):i}Oe.data=function(e,t,n){return n?Te(e,t,n):t&&"function"!=typeof t?e:Te(e,t)},I.forEach(function(e){Oe[e]=Ee}),M.forEach(function(e){Oe[e+"s"]=Ne}),Oe.watch=function(e,t,n,r){if(e===Y&&(e=void 0),t===Y&&(t=void 0),!t)return Object.create(e||null);if(!e)return t;var i={};for(var o in A(i,e),t){var a=i[o],s=t[o];a&&!Array.isArray(a)&&(a=[a]),i[o]=a?a.concat(s):Array.isArray(s)?s:[s]}return i},Oe.props=Oe.methods=Oe.inject=Oe.computed=function(e,t,n,r){if(!e)return t;var i=Object.create(null);return A(i,e),t&&A(i,t),i},Oe.provide=Te;var je=function(e,t){return void 0===t?e:t};function De(e,t,n){if("function"==typeof t&&(t=t.options),function(e,t){var n=e.props;if(n){var r,i,o={};if(Array.isArray(n))for(r=n.length;r--;)"string"==typeof(i=n[r])&&(o[b(i)]={type:null});else if(s(n))for(var a in n)i=n[a],o[b(a)]=s(i)?i:{type:i};e.props=o}}(t),function(e,t){var n=e.inject;if(n){var r=e.inject={};if(Array.isArray(n))for(var i=0;i<n.length;i++)r[n[i]]={from:n[i]};else if(s(n))for(var o in n){var a=n[o];r[o]=s(a)?A({from:o},a):{from:a}}}}(t),function(e){var t=e.directives;if(t)for(var n in t){var r=t[n];"function"==typeof r&&(t[n]={bind:r,update:r})}}(t),!t._base&&(t.extends&&(e=De(e,t.extends,n)),t.mixins))for(var r=0,i=t.mixins.length;r<i;r++)e=De(e,t.mixins[r],n);var o,a={};for(o in e)c(o);for(o in t)y(e,o)||c(o);function c(r){var i=Oe[r]||je;a[r]=i(e[r],t[r],n,r)}return a}function Le(e,t,n,r){if("string"==typeof n){var i=e[t];if(y(i,n))return i[n];var o=b(n);if(y(i,o))return i[o];var a=$(o);return y(i,a)?i[a]:i[n]||i[o]||i[a]}}function Me(e,t,n,r){var i=t[e],o=!y(n,e),a=n[e],s=Pe(Boolean,i.type);if(s>-1)if(o&&!y(i,"default"))a=!1;else if(""===a||a===C(e)){var c=Pe(String,i.type);(c<0||s<c)&&(a=!0)}if(void 0===a){a=function(e,t,n){if(!y(t,"default"))return;var r=t.default;if(e&&e.$options.propsData&&void 0===e.$options.propsData[n]&&void 0!==e._props[n])return e._props[n];return"function"==typeof r&&"Function"!==Ie(t.type)?r.call(e):r}(r,i,e);var u=be;$e(!0),Ce(a),$e(u)}return a}function Ie(e){var t=e&&e.toString().match(/^\s*function (\w+)/);return t?t[1]:""}function Fe(e,t){return Ie(e)===Ie(t)}function Pe(e,t){if(!Array.isArray(t))return Fe(t,e)?0:-1;for(var n=0,r=t.length;n<r;n++)if(Fe(t[n],e))return n;return-1}function Re(e,t,n){le();try{if(t)for(var r=t;r=r.$parent;){var i=r.$options.errorCaptured;if(i)for(var o=0;o<i.length;o++)try{if(!1===i[o].call(r,e,t,n))return}catch(e){Be(e,r,"errorCaptured hook")}}Be(e,t,n)}finally{fe()}}function He(e,t,n,r,i){var o;try{(o=n?e.apply(t,n):e.call(t))&&!o._isVue&&u(o)&&!o._handled&&(o.catch(function(e){return Re(e,r,i+" (Promise/async)")}),o._handled=!0)}catch(e){Re(e,r,i)}return o}function Be(e,t,n){if(F.errorHandler)try{return F.errorHandler.call(null,e,t,n)}catch(t){t!==e&&Ue(t,null,"config.errorHandler")}Ue(e,t,n)}function Ue(e,t,n){if(!z&&!V||"undefined"==typeof console)throw e;console.error(e)}var ze,Ve=!1,Ke=[],Je=!1;function qe(){Je=!1;var e=Ke.slice(0);Ke.length=0;for(var t=0;t<e.length;t++)e[t]()}if("undefined"!=typeof Promise&&re(Promise)){var We=Promise.resolve();ze=function(){We.then(qe),G&&setTimeout(S)},Ve=!0}else if(q||"undefined"==typeof MutationObserver||!re(MutationObserver)&&"[object MutationObserverConstructor]"!==MutationObserver.toString())ze="undefined"!=typeof setImmediate&&re(setImmediate)?function(){setImmediate(qe)}:function(){setTimeout(qe,0)};else{var Ze=1,Ge=new MutationObserver(qe),Xe=document.createTextNode(String(Ze));Ge.observe(Xe,{characterData:!0}),ze=function(){Ze=(Ze+1)%2,Xe.data=String(Ze)},Ve=!0}function Ye(e,t){var n;if(Ke.push(function(){if(e)try{e.call(t)}catch(e){Re(e,t,"nextTick")}else n&&n(t)}),Je||(Je=!0,ze()),!e&&"undefined"!=typeof Promise)return new Promise(function(e){n=e})}var Qe=new ie;function et(e){!function e(t,n){var r,i;var a=Array.isArray(t);if(!a&&!o(t)||Object.isFrozen(t)||t instanceof pe)return;if(t.__ob__){var s=t.__ob__.dep.id;if(n.has(s))return;n.add(s)}if(a)for(r=t.length;r--;)e(t[r],n);else for(i=Object.keys(t),r=i.length;r--;)e(t[i[r]],n)}(e,Qe),Qe.clear()}var tt=g(function(e){var t="&"===e.charAt(0),n="~"===(e=t?e.slice(1):e).charAt(0),r="!"===(e=n?e.slice(1):e).charAt(0);return{name:e=r?e.slice(1):e,once:n,capture:r,passive:t}});function nt(e,t){function n(){var e=arguments,r=n.fns;if(!Array.isArray(r))return He(r,null,arguments,t,"v-on handler");for(var i=r.slice(),o=0;o<i.length;o++)He(i[o],null,e,t,"v-on handler")}return n.fns=e,n}function rt(e,n,i,o,a,s){var c,u,l,f;for(c in e)u=e[c],l=n[c],f=tt(c),t(u)||(t(l)?(t(u.fns)&&(u=e[c]=nt(u,s)),r(f.once)&&(u=e[c]=a(f.name,u,f.capture)),i(f.name,u,f.capture,f.passive,f.params)):u!==l&&(l.fns=u,e[c]=l));for(c in n)t(e[c])&&o((f=tt(c)).name,n[c],f.capture)}function it(e,i,o){var a;e instanceof pe&&(e=e.data.hook||(e.data.hook={}));var s=e[i];function c(){o.apply(this,arguments),h(a.fns,c)}t(s)?a=nt([c]):n(s.fns)&&r(s.merged)?(a=s).fns.push(c):a=nt([s,c]),a.merged=!0,e[i]=a}function ot(e,t,r,i,o){if(n(t)){if(y(t,r))return e[r]=t[r],o||delete t[r],!0;if(y(t,i))return e[r]=t[i],o||delete t[i],!0}return!1}function at(e){return i(e)?[he(e)]:Array.isArray(e)?function e(o,a){var s=[];var c,u,l,f;for(c=0;c<o.length;c++)t(u=o[c])||"boolean"==typeof u||(l=s.length-1,f=s[l],Array.isArray(u)?u.length>0&&(st((u=e(u,(a||"")+"_"+c))[0])&&st(f)&&(s[l]=he(f.text+u[0].text),u.shift()),s.push.apply(s,u)):i(u)?st(f)?s[l]=he(f.text+u):""!==u&&s.push(he(u)):st(u)&&st(f)?s[l]=he(f.text+u.text):(r(o._isVList)&&n(u.tag)&&t(u.key)&&n(a)&&(u.key="__vlist"+a+"_"+c+"__"),s.push(u)));return s}(e):void 0}function st(e){return n(e)&&n(e.text)&&!1===e.isComment}function ct(e,t){if(e){for(var n=Object.create(null),r=oe?Reflect.ownKeys(e):Object.keys(e),i=0;i<r.length;i++){var o=r[i];if("__ob__"!==o){for(var a=e[o].from,s=t;s;){if(s._provided&&y(s._provided,a)){n[o]=s._provided[a];break}s=s.$parent}if(!s&&"default"in e[o]){var c=e[o].default;n[o]="function"==typeof c?c.call(t):c}}}return n}}function ut(e,t){if(!e||!e.length)return{};for(var n={},r=0,i=e.length;r<i;r++){var o=e[r],a=o.data;if(a&&a.attrs&&a.attrs.slot&&delete a.attrs.slot,o.context!==t&&o.fnContext!==t||!a||null==a.slot)(n.default||(n.default=[])).push(o);else{var s=a.slot,c=n[s]||(n[s]=[]);"template"===o.tag?c.push.apply(c,o.children||[]):c.push(o)}}for(var u in n)n[u].every(lt)&&delete n[u];return n}function lt(e){return e.isComment&&!e.asyncFactory||" "===e.text}function ft(t,n,r){var i,o=Object.keys(n).length>0,a=t?!!t.$stable:!o,s=t&&t.$key;if(t){if(t._normalized)return t._normalized;if(a&&r&&r!==e&&s===r.$key&&!o&&!r.$hasNormal)return r;for(var c in i={},t)t[c]&&"$"!==c[0]&&(i[c]=pt(n,c,t[c]))}else i={};for(var u in n)u in i||(i[u]=dt(n,u));return t&&Object.isExtensible(t)&&(t._normalized=i),R(i,"$stable",a),R(i,"$key",s),R(i,"$hasNormal",o),i}function pt(e,t,n){var r=function(){var e=arguments.length?n.apply(null,arguments):n({});return(e=e&&"object"==typeof e&&!Array.isArray(e)?[e]:at(e))&&(0===e.length||1===e.length&&e[0].isComment)?void 0:e};return n.proxy&&Object.defineProperty(e,t,{get:r,enumerable:!0,configurable:!0}),r}function dt(e,t){return function(){return e[t]}}function vt(e,t){var r,i,a,s,c;if(Array.isArray(e)||"string"==typeof e)for(r=new Array(e.length),i=0,a=e.length;i<a;i++)r[i]=t(e[i],i);else if("number"==typeof e)for(r=new Array(e),i=0;i<e;i++)r[i]=t(i+1,i);else if(o(e))if(oe&&e[Symbol.iterator]){r=[];for(var u=e[Symbol.iterator](),l=u.next();!l.done;)r.push(t(l.value,r.length)),l=u.next()}else for(s=Object.keys(e),r=new Array(s.length),i=0,a=s.length;i<a;i++)c=s[i],r[i]=t(e[c],c,i);return n(r)||(r=[]),r._isVList=!0,r}function ht(e,t,n,r){var i,o=this.$scopedSlots[e];o?(n=n||{},r&&(n=A(A({},r),n)),i=o(n)||t):i=this.$slots[e]||t;var a=n&&n.slot;return a?this.$createElement("template",{slot:a},i):i}function mt(e){return Le(this.$options,"filters",e)||E}function yt(e,t){return Array.isArray(e)?-1===e.indexOf(t):e!==t}function gt(e,t,n,r,i){var o=F.keyCodes[t]||n;return i&&r&&!F.keyCodes[t]?yt(i,r):o?yt(o,e):r?C(r)!==t:void 0}function _t(e,t,n,r,i){if(n)if(o(n)){var a;Array.isArray(n)&&(n=O(n));var s=function(o){if("class"===o||"style"===o||v(o))a=e;else{var s=e.attrs&&e.attrs.type;a=r||F.mustUseProp(t,s,o)?e.domProps||(e.domProps={}):e.attrs||(e.attrs={})}var c=b(o),u=C(o);c in a||u in a||(a[o]=n[o],i&&((e.on||(e.on={}))["update:"+o]=function(e){n[o]=e}))};for(var c in n)s(c)}else;return e}function bt(e,t){var n=this._staticTrees||(this._staticTrees=[]),r=n[e];return r&&!t?r:(wt(r=n[e]=this.$options.staticRenderFns[e].call(this._renderProxy,null,this),"__static__"+e,!1),r)}function $t(e,t,n){return wt(e,"__once__"+t+(n?"_"+n:""),!0),e}function wt(e,t,n){if(Array.isArray(e))for(var r=0;r<e.length;r++)e[r]&&"string"!=typeof e[r]&&Ct(e[r],t+"_"+r,n);else Ct(e,t,n)}function Ct(e,t,n){e.isStatic=!0,e.key=t,e.isOnce=n}function xt(e,t){if(t)if(s(t)){var n=e.on=e.on?A({},e.on):{};for(var r in t){var i=n[r],o=t[r];n[r]=i?[].concat(i,o):o}}else;return e}function kt(e,t,n,r){t=t||{$stable:!n};for(var i=0;i<e.length;i++){var o=e[i];Array.isArray(o)?kt(o,t,n):o&&(o.proxy&&(o.fn.proxy=!0),t[o.key]=o.fn)}return r&&(t.$key=r),t}function At(e,t){for(var n=0;n<t.length;n+=2){var r=t[n];"string"==typeof r&&r&&(e[t[n]]=t[n+1])}return e}function Ot(e,t){return"string"==typeof e?t+e:e}function St(e){e._o=$t,e._n=f,e._s=l,e._l=vt,e._t=ht,e._q=N,e._i=j,e._m=bt,e._f=mt,e._k=gt,e._b=_t,e._v=he,e._e=ve,e._u=kt,e._g=xt,e._d=At,e._p=Ot}function Tt(t,n,i,o,a){var s,c=this,u=a.options;y(o,"_uid")?(s=Object.create(o))._original=o:(s=o,o=o._original);var l=r(u._compiled),f=!l;this.data=t,this.props=n,this.children=i,this.parent=o,this.listeners=t.on||e,this.injections=ct(u.inject,o),this.slots=function(){return c.$slots||ft(t.scopedSlots,c.$slots=ut(i,o)),c.$slots},Object.defineProperty(this,"scopedSlots",{enumerable:!0,get:function(){return ft(t.scopedSlots,this.slots())}}),l&&(this.$options=u,this.$slots=this.slots(),this.$scopedSlots=ft(t.scopedSlots,this.$slots)),u._scopeId?this._c=function(e,t,n,r){var i=Pt(s,e,t,n,r,f);return i&&!Array.isArray(i)&&(i.fnScopeId=u._scopeId,i.fnContext=o),i}:this._c=function(e,t,n,r){return Pt(s,e,t,n,r,f)}}function Et(e,t,n,r,i){var o=me(e);return o.fnContext=n,o.fnOptions=r,t.slot&&((o.data||(o.data={})).slot=t.slot),o}function Nt(e,t){for(var n in t)e[b(n)]=t[n]}St(Tt.prototype);var jt={init:function(e,t){if(e.componentInstance&&!e.componentInstance._isDestroyed&&e.data.keepAlive){var r=e;jt.prepatch(r,r)}else{(e.componentInstance=function(e,t){var r={_isComponent:!0,_parentVnode:e,parent:t},i=e.data.inlineTemplate;n(i)&&(r.render=i.render,r.staticRenderFns=i.staticRenderFns);return new e.componentOptions.Ctor(r)}(e,Wt)).$mount(t?e.elm:void 0,t)}},prepatch:function(t,n){var r=n.componentOptions;!function(t,n,r,i,o){var a=i.data.scopedSlots,s=t.$scopedSlots,c=!!(a&&!a.$stable||s!==e&&!s.$stable||a&&t.$scopedSlots.$key!==a.$key),u=!!(o||t.$options._renderChildren||c);t.$options._parentVnode=i,t.$vnode=i,t._vnode&&(t._vnode.parent=i);if(t.$options._renderChildren=o,t.$attrs=i.data.attrs||e,t.$listeners=r||e,n&&t.$options.props){$e(!1);for(var l=t._props,f=t.$options._propKeys||[],p=0;p<f.length;p++){var d=f[p],v=t.$options.props;l[d]=Me(d,v,n,t)}$e(!0),t.$options.propsData=n}r=r||e;var h=t.$options._parentListeners;t.$options._parentListeners=r,qt(t,r,h),u&&(t.$slots=ut(o,i.context),t.$forceUpdate())}(n.componentInstance=t.componentInstance,r.propsData,r.listeners,n,r.children)},insert:function(e){var t,n=e.context,r=e.componentInstance;r._isMounted||(r._isMounted=!0,Yt(r,"mounted")),e.data.keepAlive&&(n._isMounted?((t=r)._inactive=!1,en.push(t)):Xt(r,!0))},destroy:function(e){var t=e.componentInstance;t._isDestroyed||(e.data.keepAlive?function e(t,n){if(n&&(t._directInactive=!0,Gt(t)))return;if(!t._inactive){t._inactive=!0;for(var r=0;r<t.$children.length;r++)e(t.$children[r]);Yt(t,"deactivated")}}(t,!0):t.$destroy())}},Dt=Object.keys(jt);function Lt(i,a,s,c,l){if(!t(i)){var f=s.$options._base;if(o(i)&&(i=f.extend(i)),"function"==typeof i){var p;if(t(i.cid)&&void 0===(i=function(e,i){if(r(e.error)&&n(e.errorComp))return e.errorComp;if(n(e.resolved))return e.resolved;var a=Ht;a&&n(e.owners)&&-1===e.owners.indexOf(a)&&e.owners.push(a);if(r(e.loading)&&n(e.loadingComp))return e.loadingComp;if(a&&!n(e.owners)){var s=e.owners=[a],c=!0,l=null,f=null;a.$on("hook:destroyed",function(){return h(s,a)});var p=function(e){for(var t=0,n=s.length;t<n;t++)s[t].$forceUpdate();e&&(s.length=0,null!==l&&(clearTimeout(l),l=null),null!==f&&(clearTimeout(f),f=null))},d=D(function(t){e.resolved=Bt(t,i),c?s.length=0:p(!0)}),v=D(function(t){n(e.errorComp)&&(e.error=!0,p(!0))}),m=e(d,v);return o(m)&&(u(m)?t(e.resolved)&&m.then(d,v):u(m.component)&&(m.component.then(d,v),n(m.error)&&(e.errorComp=Bt(m.error,i)),n(m.loading)&&(e.loadingComp=Bt(m.loading,i),0===m.delay?e.loading=!0:l=setTimeout(function(){l=null,t(e.resolved)&&t(e.error)&&(e.loading=!0,p(!1))},m.delay||200)),n(m.timeout)&&(f=setTimeout(function(){f=null,t(e.resolved)&&v(null)},m.timeout)))),c=!1,e.loading?e.loadingComp:e.resolved}}(p=i,f)))return function(e,t,n,r,i){var o=ve();return o.asyncFactory=e,o.asyncMeta={data:t,context:n,children:r,tag:i},o}(p,a,s,c,l);a=a||{},$n(i),n(a.model)&&function(e,t){var r=e.model&&e.model.prop||"value",i=e.model&&e.model.event||"input";(t.attrs||(t.attrs={}))[r]=t.model.value;var o=t.on||(t.on={}),a=o[i],s=t.model.callback;n(a)?(Array.isArray(a)?-1===a.indexOf(s):a!==s)&&(o[i]=[s].concat(a)):o[i]=s}(i.options,a);var d=function(e,r,i){var o=r.options.props;if(!t(o)){var a={},s=e.attrs,c=e.props;if(n(s)||n(c))for(var u in o){var l=C(u);ot(a,c,u,l,!0)||ot(a,s,u,l,!1)}return a}}(a,i);if(r(i.options.functional))return function(t,r,i,o,a){var s=t.options,c={},u=s.props;if(n(u))for(var l in u)c[l]=Me(l,u,r||e);else n(i.attrs)&&Nt(c,i.attrs),n(i.props)&&Nt(c,i.props);var f=new Tt(i,c,a,o,t),p=s.render.call(null,f._c,f);if(p instanceof pe)return Et(p,i,f.parent,s);if(Array.isArray(p)){for(var d=at(p)||[],v=new Array(d.length),h=0;h<d.length;h++)v[h]=Et(d[h],i,f.parent,s);return v}}(i,d,a,s,c);var v=a.on;if(a.on=a.nativeOn,r(i.options.abstract)){var m=a.slot;a={},m&&(a.slot=m)}!function(e){for(var t=e.hook||(e.hook={}),n=0;n<Dt.length;n++){var r=Dt[n],i=t[r],o=jt[r];i===o||i&&i._merged||(t[r]=i?Mt(o,i):o)}}(a);var y=i.options.name||l;return new pe("vue-component-"+i.cid+(y?"-"+y:""),a,void 0,void 0,void 0,s,{Ctor:i,propsData:d,listeners:v,tag:l,children:c},p)}}}function Mt(e,t){var n=function(n,r){e(n,r),t(n,r)};return n._merged=!0,n}var It=1,Ft=2;function Pt(e,a,s,c,u,l){return(Array.isArray(s)||i(s))&&(u=c,c=s,s=void 0),r(l)&&(u=Ft),function(e,i,a,s,c){if(n(a)&&n(a.__ob__))return ve();n(a)&&n(a.is)&&(i=a.is);if(!i)return ve();Array.isArray(s)&&"function"==typeof s[0]&&((a=a||{}).scopedSlots={default:s[0]},s.length=0);c===Ft?s=at(s):c===It&&(s=function(e){for(var t=0;t<e.length;t++)if(Array.isArray(e[t]))return Array.prototype.concat.apply([],e);return e}(s));var u,l;if("string"==typeof i){var f;l=e.$vnode&&e.$vnode.ns||F.getTagNamespace(i),u=F.isReservedTag(i)?new pe(F.parsePlatformTagName(i),a,s,void 0,void 0,e):a&&a.pre||!n(f=Le(e.$options,"components",i))?new pe(i,a,s,void 0,void 0,e):Lt(f,a,e,s,i)}else u=Lt(i,a,e,s);return Array.isArray(u)?u:n(u)?(n(l)&&function e(i,o,a){i.ns=o;"foreignObject"===i.tag&&(o=void 0,a=!0);if(n(i.children))for(var s=0,c=i.children.length;s<c;s++){var u=i.children[s];n(u.tag)&&(t(u.ns)||r(a)&&"svg"!==u.tag)&&e(u,o,a)}}(u,l),n(a)&&function(e){o(e.style)&&et(e.style);o(e.class)&&et(e.class)}(a),u):ve()}(e,a,s,c,u)}var Rt,Ht=null;function Bt(e,t){return(e.__esModule||oe&&"Module"===e[Symbol.toStringTag])&&(e=e.default),o(e)?t.extend(e):e}function Ut(e){return e.isComment&&e.asyncFactory}function zt(e){if(Array.isArray(e))for(var t=0;t<e.length;t++){var r=e[t];if(n(r)&&(n(r.componentOptions)||Ut(r)))return r}}function Vt(e,t){Rt.$on(e,t)}function Kt(e,t){Rt.$off(e,t)}function Jt(e,t){var n=Rt;return function r(){null!==t.apply(null,arguments)&&n.$off(e,r)}}function qt(e,t,n){Rt=e,rt(t,n||{},Vt,Kt,Jt,e),Rt=void 0}var Wt=null;function Zt(e){var t=Wt;return Wt=e,function(){Wt=t}}function Gt(e){for(;e&&(e=e.$parent);)if(e._inactive)return!0;return!1}function Xt(e,t){if(t){if(e._directInactive=!1,Gt(e))return}else if(e._directInactive)return;if(e._inactive||null===e._inactive){e._inactive=!1;for(var n=0;n<e.$children.length;n++)Xt(e.$children[n]);Yt(e,"activated")}}function Yt(e,t){le();var n=e.$options[t],r=t+" hook";if(n)for(var i=0,o=n.length;i<o;i++)He(n[i],e,null,e,r);e._hasHookEvent&&e.$emit("hook:"+t),fe()}var Qt=[],en=[],tn={},nn=!1,rn=!1,on=0;var an=0,sn=Date.now;if(z&&!q){var cn=window.performance;cn&&"function"==typeof cn.now&&sn()>document.createEvent("Event").timeStamp&&(sn=function(){return cn.now()})}function un(){var e,t;for(an=sn(),rn=!0,Qt.sort(function(e,t){return e.id-t.id}),on=0;on<Qt.length;on++)(e=Qt[on]).before&&e.before(),t=e.id,tn[t]=null,e.run();var n=en.slice(),r=Qt.slice();on=Qt.length=en.length=0,tn={},nn=rn=!1,function(e){for(var t=0;t<e.length;t++)e[t]._inactive=!0,Xt(e[t],!0)}(n),function(e){var t=e.length;for(;t--;){var n=e[t],r=n.vm;r._watcher===n&&r._isMounted&&!r._isDestroyed&&Yt(r,"updated")}}(r),ne&&F.devtools&&ne.emit("flush")}var ln=0,fn=function(e,t,n,r,i){this.vm=e,i&&(e._watcher=this),e._watchers.push(this),r?(this.deep=!!r.deep,this.user=!!r.user,this.lazy=!!r.lazy,this.sync=!!r.sync,this.before=r.before):this.deep=this.user=this.lazy=this.sync=!1,this.cb=n,this.id=++ln,this.active=!0,this.dirty=this.lazy,this.deps=[],this.newDeps=[],this.depIds=new ie,this.newDepIds=new ie,this.expression="","function"==typeof t?this.getter=t:(this.getter=function(e){if(!H.test(e)){var t=e.split(".");return function(e){for(var n=0;n<t.length;n++){if(!e)return;e=e[t[n]]}return e}}}(t),this.getter||(this.getter=S)),this.value=this.lazy?void 0:this.get()};fn.prototype.get=function(){var e;le(this);var t=this.vm;try{e=this.getter.call(t,t)}catch(e){if(!this.user)throw e;Re(e,t,'getter for watcher "'+this.expression+'"')}finally{this.deep&&et(e),fe(),this.cleanupDeps()}return e},fn.prototype.addDep=function(e){var t=e.id;this.newDepIds.has(t)||(this.newDepIds.add(t),this.newDeps.push(e),this.depIds.has(t)||e.addSub(this))},fn.prototype.cleanupDeps=function(){for(var e=this.deps.length;e--;){var t=this.deps[e];this.newDepIds.has(t.id)||t.removeSub(this)}var n=this.depIds;this.depIds=this.newDepIds,this.newDepIds=n,this.newDepIds.clear(),n=this.deps,this.deps=this.newDeps,this.newDeps=n,this.newDeps.length=0},fn.prototype.update=function(){this.lazy?this.dirty=!0:this.sync?this.run():function(e){var t=e.id;if(null==tn[t]){if(tn[t]=!0,rn){for(var n=Qt.length-1;n>on&&Qt[n].id>e.id;)n--;Qt.splice(n+1,0,e)}else Qt.push(e);nn||(nn=!0,Ye(un))}}(this)},fn.prototype.run=function(){if(this.active){var e=this.get();if(e!==this.value||o(e)||this.deep){var t=this.value;if(this.value=e,this.user)try{this.cb.call(this.vm,e,t)}catch(e){Re(e,this.vm,'callback for watcher "'+this.expression+'"')}else this.cb.call(this.vm,e,t)}}},fn.prototype.evaluate=function(){this.value=this.get(),this.dirty=!1},fn.prototype.depend=function(){for(var e=this.deps.length;e--;)this.deps[e].depend()},fn.prototype.teardown=function(){if(this.active){this.vm._isBeingDestroyed||h(this.vm._watchers,this);for(var e=this.deps.length;e--;)this.deps[e].removeSub(this);this.active=!1}};var pn={enumerable:!0,configurable:!0,get:S,set:S};function dn(e,t,n){pn.get=function(){return this[t][n]},pn.set=function(e){this[t][n]=e},Object.defineProperty(e,n,pn)}function vn(e){e._watchers=[];var t=e.$options;t.props&&function(e,t){var n=e.$options.propsData||{},r=e._props={},i=e.$options._propKeys=[];e.$parent&&$e(!1);var o=function(o){i.push(o);var a=Me(o,t,n,e);xe(r,o,a),o in e||dn(e,"_props",o)};for(var a in t)o(a);$e(!0)}(e,t.props),t.methods&&function(e,t){e.$options.props;for(var n in t)e[n]="function"!=typeof t[n]?S:x(t[n],e)}(e,t.methods),t.data?function(e){var t=e.$options.data;s(t=e._data="function"==typeof t?function(e,t){le();try{return e.call(t,t)}catch(e){return Re(e,t,"data()"),{}}finally{fe()}}(t,e):t||{})||(t={});var n=Object.keys(t),r=e.$options.props,i=(e.$options.methods,n.length);for(;i--;){var o=n[i];r&&y(r,o)||(a=void 0,36!==(a=(o+"").charCodeAt(0))&&95!==a&&dn(e,"_data",o))}var a;Ce(t,!0)}(e):Ce(e._data={},!0),t.computed&&function(e,t){var n=e._computedWatchers=Object.create(null),r=te();for(var i in t){var o=t[i],a="function"==typeof o?o:o.get;r||(n[i]=new fn(e,a||S,S,hn)),i in e||mn(e,i,o)}}(e,t.computed),t.watch&&t.watch!==Y&&function(e,t){for(var n in t){var r=t[n];if(Array.isArray(r))for(var i=0;i<r.length;i++)_n(e,n,r[i]);else _n(e,n,r)}}(e,t.watch)}var hn={lazy:!0};function mn(e,t,n){var r=!te();"function"==typeof n?(pn.get=r?yn(t):gn(n),pn.set=S):(pn.get=n.get?r&&!1!==n.cache?yn(t):gn(n.get):S,pn.set=n.set||S),Object.defineProperty(e,t,pn)}function yn(e){return function(){var t=this._computedWatchers&&this._computedWatchers[e];if(t)return t.dirty&&t.evaluate(),ce.target&&t.depend(),t.value}}function gn(e){return function(){return e.call(this,this)}}function _n(e,t,n,r){return s(n)&&(r=n,n=n.handler),"string"==typeof n&&(n=e[n]),e.$watch(t,n,r)}var bn=0;function $n(e){var t=e.options;if(e.super){var n=$n(e.super);if(n!==e.superOptions){e.superOptions=n;var r=function(e){var t,n=e.options,r=e.sealedOptions;for(var i in n)n[i]!==r[i]&&(t||(t={}),t[i]=n[i]);return t}(e);r&&A(e.extendOptions,r),(t=e.options=De(n,e.extendOptions)).name&&(t.components[t.name]=e)}}return t}function wn(e){this._init(e)}function Cn(e){e.cid=0;var t=1;e.extend=function(e){e=e||{};var n=this,r=n.cid,i=e._Ctor||(e._Ctor={});if(i[r])return i[r];var o=e.name||n.options.name,a=function(e){this._init(e)};return(a.prototype=Object.create(n.prototype)).constructor=a,a.cid=t++,a.options=De(n.options,e),a.super=n,a.options.props&&function(e){var t=e.options.props;for(var n in t)dn(e.prototype,"_props",n)}(a),a.options.computed&&function(e){var t=e.options.computed;for(var n in t)mn(e.prototype,n,t[n])}(a),a.extend=n.extend,a.mixin=n.mixin,a.use=n.use,M.forEach(function(e){a[e]=n[e]}),o&&(a.options.components[o]=a),a.superOptions=n.options,a.extendOptions=e,a.sealedOptions=A({},a.options),i[r]=a,a}}function xn(e){return e&&(e.Ctor.options.name||e.tag)}function kn(e,t){return Array.isArray(e)?e.indexOf(t)>-1:"string"==typeof e?e.split(",").indexOf(t)>-1:(n=e,"[object RegExp]"===a.call(n)&&e.test(t));var n}function An(e,t){var n=e.cache,r=e.keys,i=e._vnode;for(var o in n){var a=n[o];if(a){var s=xn(a.componentOptions);s&&!t(s)&&On(n,o,r,i)}}}function On(e,t,n,r){var i=e[t];!i||r&&i.tag===r.tag||i.componentInstance.$destroy(),e[t]=null,h(n,t)}!function(t){t.prototype._init=function(t){var n=this;n._uid=bn++,n._isVue=!0,t&&t._isComponent?function(e,t){var n=e.$options=Object.create(e.constructor.options),r=t._parentVnode;n.parent=t.parent,n._parentVnode=r;var i=r.componentOptions;n.propsData=i.propsData,n._parentListeners=i.listeners,n._renderChildren=i.children,n._componentTag=i.tag,t.render&&(n.render=t.render,n.staticRenderFns=t.staticRenderFns)}(n,t):n.$options=De($n(n.constructor),t||{},n),n._renderProxy=n,n._self=n,function(e){var t=e.$options,n=t.parent;if(n&&!t.abstract){for(;n.$options.abstract&&n.$parent;)n=n.$parent;n.$children.push(e)}e.$parent=n,e.$root=n?n.$root:e,e.$children=[],e.$refs={},e._watcher=null,e._inactive=null,e._directInactive=!1,e._isMounted=!1,e._isDestroyed=!1,e._isBeingDestroyed=!1}(n),function(e){e._events=Object.create(null),e._hasHookEvent=!1;var t=e.$options._parentListeners;t&&qt(e,t)}(n),function(t){t._vnode=null,t._staticTrees=null;var n=t.$options,r=t.$vnode=n._parentVnode,i=r&&r.context;t.$slots=ut(n._renderChildren,i),t.$scopedSlots=e,t._c=function(e,n,r,i){return Pt(t,e,n,r,i,!1)},t.$createElement=function(e,n,r,i){return Pt(t,e,n,r,i,!0)};var o=r&&r.data;xe(t,"$attrs",o&&o.attrs||e,null,!0),xe(t,"$listeners",n._parentListeners||e,null,!0)}(n),Yt(n,"beforeCreate"),function(e){var t=ct(e.$options.inject,e);t&&($e(!1),Object.keys(t).forEach(function(n){xe(e,n,t[n])}),$e(!0))}(n),vn(n),function(e){var t=e.$options.provide;t&&(e._provided="function"==typeof t?t.call(e):t)}(n),Yt(n,"created"),n.$options.el&&n.$mount(n.$options.el)}}(wn),function(e){var t={get:function(){return this._data}},n={get:function(){return this._props}};Object.defineProperty(e.prototype,"$data",t),Object.defineProperty(e.prototype,"$props",n),e.prototype.$set=ke,e.prototype.$delete=Ae,e.prototype.$watch=function(e,t,n){if(s(t))return _n(this,e,t,n);(n=n||{}).user=!0;var r=new fn(this,e,t,n);if(n.immediate)try{t.call(this,r.value)}catch(e){Re(e,this,'callback for immediate watcher "'+r.expression+'"')}return function(){r.teardown()}}}(wn),function(e){var t=/^hook:/;e.prototype.$on=function(e,n){var r=this;if(Array.isArray(e))for(var i=0,o=e.length;i<o;i++)r.$on(e[i],n);else(r._events[e]||(r._events[e]=[])).push(n),t.test(e)&&(r._hasHookEvent=!0);return r},e.prototype.$once=function(e,t){var n=this;function r(){n.$off(e,r),t.apply(n,arguments)}return r.fn=t,n.$on(e,r),n},e.prototype.$off=function(e,t){var n=this;if(!arguments.length)return n._events=Object.create(null),n;if(Array.isArray(e)){for(var r=0,i=e.length;r<i;r++)n.$off(e[r],t);return n}var o,a=n._events[e];if(!a)return n;if(!t)return n._events[e]=null,n;for(var s=a.length;s--;)if((o=a[s])===t||o.fn===t){a.splice(s,1);break}return n},e.prototype.$emit=function(e){var t=this._events[e];if(t){t=t.length>1?k(t):t;for(var n=k(arguments,1),r='event handler for "'+e+'"',i=0,o=t.length;i<o;i++)He(t[i],this,n,this,r)}return this}}(wn),function(e){e.prototype._update=function(e,t){var n=this,r=n.$el,i=n._vnode,o=Zt(n);n._vnode=e,n.$el=i?n.__patch__(i,e):n.__patch__(n.$el,e,t,!1),o(),r&&(r.__vue__=null),n.$el&&(n.$el.__vue__=n),n.$vnode&&n.$parent&&n.$vnode===n.$parent._vnode&&(n.$parent.$el=n.$el)},e.prototype.$forceUpdate=function(){this._watcher&&this._watcher.update()},e.prototype.$destroy=function(){var e=this;if(!e._isBeingDestroyed){Yt(e,"beforeDestroy"),e._isBeingDestroyed=!0;var t=e.$parent;!t||t._isBeingDestroyed||e.$options.abstract||h(t.$children,e),e._watcher&&e._watcher.teardown();for(var n=e._watchers.length;n--;)e._watchers[n].teardown();e._data.__ob__&&e._data.__ob__.vmCount--,e._isDestroyed=!0,e.__patch__(e._vnode,null),Yt(e,"destroyed"),e.$off(),e.$el&&(e.$el.__vue__=null),e.$vnode&&(e.$vnode.parent=null)}}}(wn),function(e){St(e.prototype),e.prototype.$nextTick=function(e){return Ye(e,this)},e.prototype._render=function(){var e,t=this,n=t.$options,r=n.render,i=n._parentVnode;i&&(t.$scopedSlots=ft(i.data.scopedSlots,t.$slots,t.$scopedSlots)),t.$vnode=i;try{Ht=t,e=r.call(t._renderProxy,t.$createElement)}catch(n){Re(n,t,"render"),e=t._vnode}finally{Ht=null}return Array.isArray(e)&&1===e.length&&(e=e[0]),e instanceof pe||(e=ve()),e.parent=i,e}}(wn);var Sn=[String,RegExp,Array],Tn={KeepAlive:{name:"keep-alive",abstract:!0,props:{include:Sn,exclude:Sn,max:[String,Number]},created:function(){this.cache=Object.create(null),this.keys=[]},destroyed:function(){for(var e in this.cache)On(this.cache,e,this.keys)},mounted:function(){var e=this;this.$watch("include",function(t){An(e,function(e){return kn(t,e)})}),this.$watch("exclude",function(t){An(e,function(e){return!kn(t,e)})})},render:function(){var e=this.$slots.default,t=zt(e),n=t&&t.componentOptions;if(n){var r=xn(n),i=this.include,o=this.exclude;if(i&&(!r||!kn(i,r))||o&&r&&kn(o,r))return t;var a=this.cache,s=this.keys,c=null==t.key?n.Ctor.cid+(n.tag?"::"+n.tag:""):t.key;a[c]?(t.componentInstance=a[c].componentInstance,h(s,c),s.push(c)):(a[c]=t,s.push(c),this.max&&s.length>parseInt(this.max)&&On(a,s[0],s,this._vnode)),t.data.keepAlive=!0}return t||e&&e[0]}}};!function(e){var t={get:function(){return F}};Object.defineProperty(e,"config",t),e.util={warn:ae,extend:A,mergeOptions:De,defineReactive:xe},e.set=ke,e.delete=Ae,e.nextTick=Ye,e.observable=function(e){return Ce(e),e},e.options=Object.create(null),M.forEach(function(t){e.options[t+"s"]=Object.create(null)}),e.options._base=e,A(e.options.components,Tn),function(e){e.use=function(e){var t=this._installedPlugins||(this._installedPlugins=[]);if(t.indexOf(e)>-1)return this;var n=k(arguments,1);return n.unshift(this),"function"==typeof e.install?e.install.apply(e,n):"function"==typeof e&&e.apply(null,n),t.push(e),this}}(e),function(e){e.mixin=function(e){return this.options=De(this.options,e),this}}(e),Cn(e),function(e){M.forEach(function(t){e[t]=function(e,n){return n?("component"===t&&s(n)&&(n.name=n.name||e,n=this.options._base.extend(n)),"directive"===t&&"function"==typeof n&&(n={bind:n,update:n}),this.options[t+"s"][e]=n,n):this.options[t+"s"][e]}})}(e)}(wn),Object.defineProperty(wn.prototype,"$isServer",{get:te}),Object.defineProperty(wn.prototype,"$ssrContext",{get:function(){return this.$vnode&&this.$vnode.ssrContext}}),Object.defineProperty(wn,"FunctionalRenderContext",{value:Tt}),wn.version="2.6.10";var En=p("style,class"),Nn=p("input,textarea,option,select,progress"),jn=function(e,t,n){return"value"===n&&Nn(e)&&"button"!==t||"selected"===n&&"option"===e||"checked"===n&&"input"===e||"muted"===n&&"video"===e},Dn=p("contenteditable,draggable,spellcheck"),Ln=p("events,caret,typing,plaintext-only"),Mn=function(e,t){return Hn(t)||"false"===t?"false":"contenteditable"===e&&Ln(t)?t:"true"},In=p("allowfullscreen,async,autofocus,autoplay,checked,compact,controls,declare,default,defaultchecked,defaultmuted,defaultselected,defer,disabled,enabled,formnovalidate,hidden,indeterminate,inert,ismap,itemscope,loop,multiple,muted,nohref,noresize,noshade,novalidate,nowrap,open,pauseonexit,readonly,required,reversed,scoped,seamless,selected,sortable,translate,truespeed,typemustmatch,visible"),Fn="http://www.w3.org/1999/xlink",Pn=function(e){return":"===e.charAt(5)&&"xlink"===e.slice(0,5)},Rn=function(e){return Pn(e)?e.slice(6,e.length):""},Hn=function(e){return null==e||!1===e};function Bn(e){for(var t=e.data,r=e,i=e;n(i.componentInstance);)(i=i.componentInstance._vnode)&&i.data&&(t=Un(i.data,t));for(;n(r=r.parent);)r&&r.data&&(t=Un(t,r.data));return function(e,t){if(n(e)||n(t))return zn(e,Vn(t));return""}(t.staticClass,t.class)}function Un(e,t){return{staticClass:zn(e.staticClass,t.staticClass),class:n(e.class)?[e.class,t.class]:t.class}}function zn(e,t){return e?t?e+" "+t:e:t||""}function Vn(e){return Array.isArray(e)?function(e){for(var t,r="",i=0,o=e.length;i<o;i++)n(t=Vn(e[i]))&&""!==t&&(r&&(r+=" "),r+=t);return r}(e):o(e)?function(e){var t="";for(var n in e)e[n]&&(t&&(t+=" "),t+=n);return t}(e):"string"==typeof e?e:""}var Kn={svg:"http://www.w3.org/2000/svg",math:"http://www.w3.org/1998/Math/MathML"},Jn=p("html,body,base,head,link,meta,style,title,address,article,aside,footer,header,h1,h2,h3,h4,h5,h6,hgroup,nav,section,div,dd,dl,dt,figcaption,figure,picture,hr,img,li,main,ol,p,pre,ul,a,b,abbr,bdi,bdo,br,cite,code,data,dfn,em,i,kbd,mark,q,rp,rt,rtc,ruby,s,samp,small,span,strong,sub,sup,time,u,var,wbr,area,audio,map,track,video,embed,object,param,source,canvas,script,noscript,del,ins,caption,col,colgroup,table,thead,tbody,td,th,tr,button,datalist,fieldset,form,input,label,legend,meter,optgroup,option,output,progress,select,textarea,details,dialog,menu,menuitem,summary,content,element,shadow,template,blockquote,iframe,tfoot"),qn=p("svg,animate,circle,clippath,cursor,defs,desc,ellipse,filter,font-face,foreignObject,g,glyph,image,line,marker,mask,missing-glyph,path,pattern,polygon,polyline,rect,switch,symbol,text,textpath,tspan,use,view",!0),Wn=function(e){return Jn(e)||qn(e)};function Zn(e){return qn(e)?"svg":"math"===e?"math":void 0}var Gn=Object.create(null);var Xn=p("text,number,password,search,email,tel,url");function Yn(e){if("string"==typeof e){var t=document.querySelector(e);return t||document.createElement("div")}return e}var Qn=Object.freeze({createElement:function(e,t){var n=document.createElement(e);return"select"!==e?n:(t.data&&t.data.attrs&&void 0!==t.data.attrs.multiple&&n.setAttribute("multiple","multiple"),n)},createElementNS:function(e,t){return document.createElementNS(Kn[e],t)},createTextNode:function(e){return document.createTextNode(e)},createComment:function(e){return document.createComment(e)},insertBefore:function(e,t,n){e.insertBefore(t,n)},removeChild:function(e,t){e.removeChild(t)},appendChild:function(e,t){e.appendChild(t)},parentNode:function(e){return e.parentNode},nextSibling:function(e){return e.nextSibling},tagName:function(e){return e.tagName},setTextContent:function(e,t){e.textContent=t},setStyleScope:function(e,t){e.setAttribute(t,"")}}),er={create:function(e,t){tr(t)},update:function(e,t){e.data.ref!==t.data.ref&&(tr(e,!0),tr(t))},destroy:function(e){tr(e,!0)}};function tr(e,t){var r=e.data.ref;if(n(r)){var i=e.context,o=e.componentInstance||e.elm,a=i.$refs;t?Array.isArray(a[r])?h(a[r],o):a[r]===o&&(a[r]=void 0):e.data.refInFor?Array.isArray(a[r])?a[r].indexOf(o)<0&&a[r].push(o):a[r]=[o]:a[r]=o}}var nr=new pe("",{},[]),rr=["create","activate","update","remove","destroy"];function ir(e,i){return e.key===i.key&&(e.tag===i.tag&&e.isComment===i.isComment&&n(e.data)===n(i.data)&&function(e,t){if("input"!==e.tag)return!0;var r,i=n(r=e.data)&&n(r=r.attrs)&&r.type,o=n(r=t.data)&&n(r=r.attrs)&&r.type;return i===o||Xn(i)&&Xn(o)}(e,i)||r(e.isAsyncPlaceholder)&&e.asyncFactory===i.asyncFactory&&t(i.asyncFactory.error))}function or(e,t,r){var i,o,a={};for(i=t;i<=r;++i)n(o=e[i].key)&&(a[o]=i);return a}var ar={create:sr,update:sr,destroy:function(e){sr(e,nr)}};function sr(e,t){(e.data.directives||t.data.directives)&&function(e,t){var n,r,i,o=e===nr,a=t===nr,s=ur(e.data.directives,e.context),c=ur(t.data.directives,t.context),u=[],l=[];for(n in c)r=s[n],i=c[n],r?(i.oldValue=r.value,i.oldArg=r.arg,fr(i,"update",t,e),i.def&&i.def.componentUpdated&&l.push(i)):(fr(i,"bind",t,e),i.def&&i.def.inserted&&u.push(i));if(u.length){var f=function(){for(var n=0;n<u.length;n++)fr(u[n],"inserted",t,e)};o?it(t,"insert",f):f()}l.length&&it(t,"postpatch",function(){for(var n=0;n<l.length;n++)fr(l[n],"componentUpdated",t,e)});if(!o)for(n in s)c[n]||fr(s[n],"unbind",e,e,a)}(e,t)}var cr=Object.create(null);function ur(e,t){var n,r,i=Object.create(null);if(!e)return i;for(n=0;n<e.length;n++)(r=e[n]).modifiers||(r.modifiers=cr),i[lr(r)]=r,r.def=Le(t.$options,"directives",r.name);return i}function lr(e){return e.rawName||e.name+"."+Object.keys(e.modifiers||{}).join(".")}function fr(e,t,n,r,i){var o=e.def&&e.def[t];if(o)try{o(n.elm,e,n,r,i)}catch(r){Re(r,n.context,"directive "+e.name+" "+t+" hook")}}var pr=[er,ar];function dr(e,r){var i=r.componentOptions;if(!(n(i)&&!1===i.Ctor.options.inheritAttrs||t(e.data.attrs)&&t(r.data.attrs))){var o,a,s=r.elm,c=e.data.attrs||{},u=r.data.attrs||{};for(o in n(u.__ob__)&&(u=r.data.attrs=A({},u)),u)a=u[o],c[o]!==a&&vr(s,o,a);for(o in(q||Z)&&u.value!==c.value&&vr(s,"value",u.value),c)t(u[o])&&(Pn(o)?s.removeAttributeNS(Fn,Rn(o)):Dn(o)||s.removeAttribute(o))}}function vr(e,t,n){e.tagName.indexOf("-")>-1?hr(e,t,n):In(t)?Hn(n)?e.removeAttribute(t):(n="allowfullscreen"===t&&"EMBED"===e.tagName?"true":t,e.setAttribute(t,n)):Dn(t)?e.setAttribute(t,Mn(t,n)):Pn(t)?Hn(n)?e.removeAttributeNS(Fn,Rn(t)):e.setAttributeNS(Fn,t,n):hr(e,t,n)}function hr(e,t,n){if(Hn(n))e.removeAttribute(t);else{if(q&&!W&&"TEXTAREA"===e.tagName&&"placeholder"===t&&""!==n&&!e.__ieph){var r=function(t){t.stopImmediatePropagation(),e.removeEventListener("input",r)};e.addEventListener("input",r),e.__ieph=!0}e.setAttribute(t,n)}}var mr={create:dr,update:dr};function yr(e,r){var i=r.elm,o=r.data,a=e.data;if(!(t(o.staticClass)&&t(o.class)&&(t(a)||t(a.staticClass)&&t(a.class)))){var s=Bn(r),c=i._transitionClasses;n(c)&&(s=zn(s,Vn(c))),s!==i._prevClass&&(i.setAttribute("class",s),i._prevClass=s)}}var gr,_r,br,$r,wr,Cr,xr={create:yr,update:yr},kr=/[\w).+\-_$\]]/;function Ar(e){var t,n,r,i,o,a=!1,s=!1,c=!1,u=!1,l=0,f=0,p=0,d=0;for(r=0;r<e.length;r++)if(n=t,t=e.charCodeAt(r),a)39===t&&92!==n&&(a=!1);else if(s)34===t&&92!==n&&(s=!1);else if(c)96===t&&92!==n&&(c=!1);else if(u)47===t&&92!==n&&(u=!1);else if(124!==t||124===e.charCodeAt(r+1)||124===e.charCodeAt(r-1)||l||f||p){switch(t){case 34:s=!0;break;case 39:a=!0;break;case 96:c=!0;break;case 40:p++;break;case 41:p--;break;case 91:f++;break;case 93:f--;break;case 123:l++;break;case 125:l--}if(47===t){for(var v=r-1,h=void 0;v>=0&&" "===(h=e.charAt(v));v--);h&&kr.test(h)||(u=!0)}}else void 0===i?(d=r+1,i=e.slice(0,r).trim()):m();function m(){(o||(o=[])).push(e.slice(d,r).trim()),d=r+1}if(void 0===i?i=e.slice(0,r).trim():0!==d&&m(),o)for(r=0;r<o.length;r++)i=Or(i,o[r]);return i}function Or(e,t){var n=t.indexOf("(");if(n<0)return'_f("'+t+'")('+e+")";var r=t.slice(0,n),i=t.slice(n+1);return'_f("'+r+'")('+e+(")"!==i?","+i:i)}function Sr(e,t){console.error("[Vue compiler]: "+e)}function Tr(e,t){return e?e.map(function(e){return e[t]}).filter(function(e){return e}):[]}function Er(e,t,n,r,i){(e.props||(e.props=[])).push(Rr({name:t,value:n,dynamic:i},r)),e.plain=!1}function Nr(e,t,n,r,i){(i?e.dynamicAttrs||(e.dynamicAttrs=[]):e.attrs||(e.attrs=[])).push(Rr({name:t,value:n,dynamic:i},r)),e.plain=!1}function jr(e,t,n,r){e.attrsMap[t]=n,e.attrsList.push(Rr({name:t,value:n},r))}function Dr(e,t,n,r,i,o,a,s){(e.directives||(e.directives=[])).push(Rr({name:t,rawName:n,value:r,arg:i,isDynamicArg:o,modifiers:a},s)),e.plain=!1}function Lr(e,t,n){return n?"_p("+t+',"'+e+'")':e+t}function Mr(t,n,r,i,o,a,s,c){var u;(i=i||e).right?c?n="("+n+")==='click'?'contextmenu':("+n+")":"click"===n&&(n="contextmenu",delete i.right):i.middle&&(c?n="("+n+")==='click'?'mouseup':("+n+")":"click"===n&&(n="mouseup")),i.capture&&(delete i.capture,n=Lr("!",n,c)),i.once&&(delete i.once,n=Lr("~",n,c)),i.passive&&(delete i.passive,n=Lr("&",n,c)),i.native?(delete i.native,u=t.nativeEvents||(t.nativeEvents={})):u=t.events||(t.events={});var l=Rr({value:r.trim(),dynamic:c},s);i!==e&&(l.modifiers=i);var f=u[n];Array.isArray(f)?o?f.unshift(l):f.push(l):u[n]=f?o?[l,f]:[f,l]:l,t.plain=!1}function Ir(e,t,n){var r=Fr(e,":"+t)||Fr(e,"v-bind:"+t);if(null!=r)return Ar(r);if(!1!==n){var i=Fr(e,t);if(null!=i)return JSON.stringify(i)}}function Fr(e,t,n){var r;if(null!=(r=e.attrsMap[t]))for(var i=e.attrsList,o=0,a=i.length;o<a;o++)if(i[o].name===t){i.splice(o,1);break}return n&&delete e.attrsMap[t],r}function Pr(e,t){for(var n=e.attrsList,r=0,i=n.length;r<i;r++){var o=n[r];if(t.test(o.name))return n.splice(r,1),o}}function Rr(e,t){return t&&(null!=t.start&&(e.start=t.start),null!=t.end&&(e.end=t.end)),e}function Hr(e,t,n){var r=n||{},i=r.number,o="$$v";r.trim&&(o="(typeof $$v === 'string'? $$v.trim(): $$v)"),i&&(o="_n("+o+")");var a=Br(t,o);e.model={value:"("+t+")",expression:JSON.stringify(t),callback:"function ($$v) {"+a+"}"}}function Br(e,t){var n=function(e){if(e=e.trim(),gr=e.length,e.indexOf("[")<0||e.lastIndexOf("]")<gr-1)return($r=e.lastIndexOf("."))>-1?{exp:e.slice(0,$r),key:'"'+e.slice($r+1)+'"'}:{exp:e,key:null};_r=e,$r=wr=Cr=0;for(;!zr();)Vr(br=Ur())?Jr(br):91===br&&Kr(br);return{exp:e.slice(0,wr),key:e.slice(wr+1,Cr)}}(e);return null===n.key?e+"="+t:"$set("+n.exp+", "+n.key+", "+t+")"}function Ur(){return _r.charCodeAt(++$r)}function zr(){return $r>=gr}function Vr(e){return 34===e||39===e}function Kr(e){var t=1;for(wr=$r;!zr();)if(Vr(e=Ur()))Jr(e);else if(91===e&&t++,93===e&&t--,0===t){Cr=$r;break}}function Jr(e){for(var t=e;!zr()&&(e=Ur())!==t;);}var qr,Wr="__r",Zr="__c";function Gr(e,t,n){var r=qr;return function i(){null!==t.apply(null,arguments)&&Qr(e,i,n,r)}}var Xr=Ve&&!(X&&Number(X[1])<=53);function Yr(e,t,n,r){if(Xr){var i=an,o=t;t=o._wrapper=function(e){if(e.target===e.currentTarget||e.timeStamp>=i||e.timeStamp<=0||e.target.ownerDocument!==document)return o.apply(this,arguments)}}qr.addEventListener(e,t,Q?{capture:n,passive:r}:n)}function Qr(e,t,n,r){(r||qr).removeEventListener(e,t._wrapper||t,n)}function ei(e,r){if(!t(e.data.on)||!t(r.data.on)){var i=r.data.on||{},o=e.data.on||{};qr=r.elm,function(e){if(n(e[Wr])){var t=q?"change":"input";e[t]=[].concat(e[Wr],e[t]||[]),delete e[Wr]}n(e[Zr])&&(e.change=[].concat(e[Zr],e.change||[]),delete e[Zr])}(i),rt(i,o,Yr,Qr,Gr,r.context),qr=void 0}}var ti,ni={create:ei,update:ei};function ri(e,r){if(!t(e.data.domProps)||!t(r.data.domProps)){var i,o,a=r.elm,s=e.data.domProps||{},c=r.data.domProps||{};for(i in n(c.__ob__)&&(c=r.data.domProps=A({},c)),s)i in c||(a[i]="");for(i in c){if(o=c[i],"textContent"===i||"innerHTML"===i){if(r.children&&(r.children.length=0),o===s[i])continue;1===a.childNodes.length&&a.removeChild(a.childNodes[0])}if("value"===i&&"PROGRESS"!==a.tagName){a._value=o;var u=t(o)?"":String(o);ii(a,u)&&(a.value=u)}else if("innerHTML"===i&&qn(a.tagName)&&t(a.innerHTML)){(ti=ti||document.createElement("div")).innerHTML="<svg>"+o+"</svg>";for(var l=ti.firstChild;a.firstChild;)a.removeChild(a.firstChild);for(;l.firstChild;)a.appendChild(l.firstChild)}else if(o!==s[i])try{a[i]=o}catch(e){}}}}function ii(e,t){return!e.composing&&("OPTION"===e.tagName||function(e,t){var n=!0;try{n=document.activeElement!==e}catch(e){}return n&&e.value!==t}(e,t)||function(e,t){var r=e.value,i=e._vModifiers;if(n(i)){if(i.number)return f(r)!==f(t);if(i.trim)return r.trim()!==t.trim()}return r!==t}(e,t))}var oi={create:ri,update:ri},ai=g(function(e){var t={},n=/:(.+)/;return e.split(/;(?![^(]*\))/g).forEach(function(e){if(e){var r=e.split(n);r.length>1&&(t[r[0].trim()]=r[1].trim())}}),t});function si(e){var t=ci(e.style);return e.staticStyle?A(e.staticStyle,t):t}function ci(e){return Array.isArray(e)?O(e):"string"==typeof e?ai(e):e}var ui,li=/^--/,fi=/\s*!important$/,pi=function(e,t,n){if(li.test(t))e.style.setProperty(t,n);else if(fi.test(n))e.style.setProperty(C(t),n.replace(fi,""),"important");else{var r=vi(t);if(Array.isArray(n))for(var i=0,o=n.length;i<o;i++)e.style[r]=n[i];else e.style[r]=n}},di=["Webkit","Moz","ms"],vi=g(function(e){if(ui=ui||document.createElement("div").style,"filter"!==(e=b(e))&&e in ui)return e;for(var t=e.charAt(0).toUpperCase()+e.slice(1),n=0;n<di.length;n++){var r=di[n]+t;if(r in ui)return r}});function hi(e,r){var i=r.data,o=e.data;if(!(t(i.staticStyle)&&t(i.style)&&t(o.staticStyle)&&t(o.style))){var a,s,c=r.elm,u=o.staticStyle,l=o.normalizedStyle||o.style||{},f=u||l,p=ci(r.data.style)||{};r.data.normalizedStyle=n(p.__ob__)?A({},p):p;var d=function(e,t){var n,r={};if(t)for(var i=e;i.componentInstance;)(i=i.componentInstance._vnode)&&i.data&&(n=si(i.data))&&A(r,n);(n=si(e.data))&&A(r,n);for(var o=e;o=o.parent;)o.data&&(n=si(o.data))&&A(r,n);return r}(r,!0);for(s in f)t(d[s])&&pi(c,s,"");for(s in d)(a=d[s])!==f[s]&&pi(c,s,null==a?"":a)}}var mi={create:hi,update:hi},yi=/\s+/;function gi(e,t){if(t&&(t=t.trim()))if(e.classList)t.indexOf(" ")>-1?t.split(yi).forEach(function(t){return e.classList.add(t)}):e.classList.add(t);else{var n=" "+(e.getAttribute("class")||"")+" ";n.indexOf(" "+t+" ")<0&&e.setAttribute("class",(n+t).trim())}}function _i(e,t){if(t&&(t=t.trim()))if(e.classList)t.indexOf(" ")>-1?t.split(yi).forEach(function(t){return e.classList.remove(t)}):e.classList.remove(t),e.classList.length||e.removeAttribute("class");else{for(var n=" "+(e.getAttribute("class")||"")+" ",r=" "+t+" ";n.indexOf(r)>=0;)n=n.replace(r," ");(n=n.trim())?e.setAttribute("class",n):e.removeAttribute("class")}}function bi(e){if(e){if("object"==typeof e){var t={};return!1!==e.css&&A(t,$i(e.name||"v")),A(t,e),t}return"string"==typeof e?$i(e):void 0}}var $i=g(function(e){return{enterClass:e+"-enter",enterToClass:e+"-enter-to",enterActiveClass:e+"-enter-active",leaveClass:e+"-leave",leaveToClass:e+"-leave-to",leaveActiveClass:e+"-leave-active"}}),wi=z&&!W,Ci="transition",xi="animation",ki="transition",Ai="transitionend",Oi="animation",Si="animationend";wi&&(void 0===window.ontransitionend&&void 0!==window.onwebkittransitionend&&(ki="WebkitTransition",Ai="webkitTransitionEnd"),void 0===window.onanimationend&&void 0!==window.onwebkitanimationend&&(Oi="WebkitAnimation",Si="webkitAnimationEnd"));var Ti=z?window.requestAnimationFrame?window.requestAnimationFrame.bind(window):setTimeout:function(e){return e()};function Ei(e){Ti(function(){Ti(e)})}function Ni(e,t){var n=e._transitionClasses||(e._transitionClasses=[]);n.indexOf(t)<0&&(n.push(t),gi(e,t))}function ji(e,t){e._transitionClasses&&h(e._transitionClasses,t),_i(e,t)}function Di(e,t,n){var r=Mi(e,t),i=r.type,o=r.timeout,a=r.propCount;if(!i)return n();var s=i===Ci?Ai:Si,c=0,u=function(){e.removeEventListener(s,l),n()},l=function(t){t.target===e&&++c>=a&&u()};setTimeout(function(){c<a&&u()},o+1),e.addEventListener(s,l)}var Li=/\b(transform|all)(,|$)/;function Mi(e,t){var n,r=window.getComputedStyle(e),i=(r[ki+"Delay"]||"").split(", "),o=(r[ki+"Duration"]||"").split(", "),a=Ii(i,o),s=(r[Oi+"Delay"]||"").split(", "),c=(r[Oi+"Duration"]||"").split(", "),u=Ii(s,c),l=0,f=0;return t===Ci?a>0&&(n=Ci,l=a,f=o.length):t===xi?u>0&&(n=xi,l=u,f=c.length):f=(n=(l=Math.max(a,u))>0?a>u?Ci:xi:null)?n===Ci?o.length:c.length:0,{type:n,timeout:l,propCount:f,hasTransform:n===Ci&&Li.test(r[ki+"Property"])}}function Ii(e,t){for(;e.length<t.length;)e=e.concat(e);return Math.max.apply(null,t.map(function(t,n){return Fi(t)+Fi(e[n])}))}function Fi(e){return 1e3*Number(e.slice(0,-1).replace(",","."))}function Pi(e,r){var i=e.elm;n(i._leaveCb)&&(i._leaveCb.cancelled=!0,i._leaveCb());var a=bi(e.data.transition);if(!t(a)&&!n(i._enterCb)&&1===i.nodeType){for(var s=a.css,c=a.type,u=a.enterClass,l=a.enterToClass,p=a.enterActiveClass,d=a.appearClass,v=a.appearToClass,h=a.appearActiveClass,m=a.beforeEnter,y=a.enter,g=a.afterEnter,_=a.enterCancelled,b=a.beforeAppear,$=a.appear,w=a.afterAppear,C=a.appearCancelled,x=a.duration,k=Wt,A=Wt.$vnode;A&&A.parent;)k=A.context,A=A.parent;var O=!k._isMounted||!e.isRootInsert;if(!O||$||""===$){var S=O&&d?d:u,T=O&&h?h:p,E=O&&v?v:l,N=O&&b||m,j=O&&"function"==typeof $?$:y,L=O&&w||g,M=O&&C||_,I=f(o(x)?x.enter:x),F=!1!==s&&!W,P=Bi(j),R=i._enterCb=D(function(){F&&(ji(i,E),ji(i,T)),R.cancelled?(F&&ji(i,S),M&&M(i)):L&&L(i),i._enterCb=null});e.data.show||it(e,"insert",function(){var t=i.parentNode,n=t&&t._pending&&t._pending[e.key];n&&n.tag===e.tag&&n.elm._leaveCb&&n.elm._leaveCb(),j&&j(i,R)}),N&&N(i),F&&(Ni(i,S),Ni(i,T),Ei(function(){ji(i,S),R.cancelled||(Ni(i,E),P||(Hi(I)?setTimeout(R,I):Di(i,c,R)))})),e.data.show&&(r&&r(),j&&j(i,R)),F||P||R()}}}function Ri(e,r){var i=e.elm;n(i._enterCb)&&(i._enterCb.cancelled=!0,i._enterCb());var a=bi(e.data.transition);if(t(a)||1!==i.nodeType)return r();if(!n(i._leaveCb)){var s=a.css,c=a.type,u=a.leaveClass,l=a.leaveToClass,p=a.leaveActiveClass,d=a.beforeLeave,v=a.leave,h=a.afterLeave,m=a.leaveCancelled,y=a.delayLeave,g=a.duration,_=!1!==s&&!W,b=Bi(v),$=f(o(g)?g.leave:g),w=i._leaveCb=D(function(){i.parentNode&&i.parentNode._pending&&(i.parentNode._pending[e.key]=null),_&&(ji(i,l),ji(i,p)),w.cancelled?(_&&ji(i,u),m&&m(i)):(r(),h&&h(i)),i._leaveCb=null});y?y(C):C()}function C(){w.cancelled||(!e.data.show&&i.parentNode&&((i.parentNode._pending||(i.parentNode._pending={}))[e.key]=e),d&&d(i),_&&(Ni(i,u),Ni(i,p),Ei(function(){ji(i,u),w.cancelled||(Ni(i,l),b||(Hi($)?setTimeout(w,$):Di(i,c,w)))})),v&&v(i,w),_||b||w())}}function Hi(e){return"number"==typeof e&&!isNaN(e)}function Bi(e){if(t(e))return!1;var r=e.fns;return n(r)?Bi(Array.isArray(r)?r[0]:r):(e._length||e.length)>1}function Ui(e,t){!0!==t.data.show&&Pi(t)}var zi=function(e){var o,a,s={},c=e.modules,u=e.nodeOps;for(o=0;o<rr.length;++o)for(s[rr[o]]=[],a=0;a<c.length;++a)n(c[a][rr[o]])&&s[rr[o]].push(c[a][rr[o]]);function l(e){var t=u.parentNode(e);n(t)&&u.removeChild(t,e)}function f(e,t,i,o,a,c,l){if(n(e.elm)&&n(c)&&(e=c[l]=me(e)),e.isRootInsert=!a,!function(e,t,i,o){var a=e.data;if(n(a)){var c=n(e.componentInstance)&&a.keepAlive;if(n(a=a.hook)&&n(a=a.init)&&a(e,!1),n(e.componentInstance))return d(e,t),v(i,e.elm,o),r(c)&&function(e,t,r,i){for(var o,a=e;a.componentInstance;)if(a=a.componentInstance._vnode,n(o=a.data)&&n(o=o.transition)){for(o=0;o<s.activate.length;++o)s.activate[o](nr,a);t.push(a);break}v(r,e.elm,i)}(e,t,i,o),!0}}(e,t,i,o)){var f=e.data,p=e.children,m=e.tag;n(m)?(e.elm=e.ns?u.createElementNS(e.ns,m):u.createElement(m,e),g(e),h(e,p,t),n(f)&&y(e,t),v(i,e.elm,o)):r(e.isComment)?(e.elm=u.createComment(e.text),v(i,e.elm,o)):(e.elm=u.createTextNode(e.text),v(i,e.elm,o))}}function d(e,t){n(e.data.pendingInsert)&&(t.push.apply(t,e.data.pendingInsert),e.data.pendingInsert=null),e.elm=e.componentInstance.$el,m(e)?(y(e,t),g(e)):(tr(e),t.push(e))}function v(e,t,r){n(e)&&(n(r)?u.parentNode(r)===e&&u.insertBefore(e,t,r):u.appendChild(e,t))}function h(e,t,n){if(Array.isArray(t))for(var r=0;r<t.length;++r)f(t[r],n,e.elm,null,!0,t,r);else i(e.text)&&u.appendChild(e.elm,u.createTextNode(String(e.text)))}function m(e){for(;e.componentInstance;)e=e.componentInstance._vnode;return n(e.tag)}function y(e,t){for(var r=0;r<s.create.length;++r)s.create[r](nr,e);n(o=e.data.hook)&&(n(o.create)&&o.create(nr,e),n(o.insert)&&t.push(e))}function g(e){var t;if(n(t=e.fnScopeId))u.setStyleScope(e.elm,t);else for(var r=e;r;)n(t=r.context)&&n(t=t.$options._scopeId)&&u.setStyleScope(e.elm,t),r=r.parent;n(t=Wt)&&t!==e.context&&t!==e.fnContext&&n(t=t.$options._scopeId)&&u.setStyleScope(e.elm,t)}function _(e,t,n,r,i,o){for(;r<=i;++r)f(n[r],o,e,t,!1,n,r)}function b(e){var t,r,i=e.data;if(n(i))for(n(t=i.hook)&&n(t=t.destroy)&&t(e),t=0;t<s.destroy.length;++t)s.destroy[t](e);if(n(t=e.children))for(r=0;r<e.children.length;++r)b(e.children[r])}function $(e,t,r,i){for(;r<=i;++r){var o=t[r];n(o)&&(n(o.tag)?(w(o),b(o)):l(o.elm))}}function w(e,t){if(n(t)||n(e.data)){var r,i=s.remove.length+1;for(n(t)?t.listeners+=i:t=function(e,t){function n(){0==--n.listeners&&l(e)}return n.listeners=t,n}(e.elm,i),n(r=e.componentInstance)&&n(r=r._vnode)&&n(r.data)&&w(r,t),r=0;r<s.remove.length;++r)s.remove[r](e,t);n(r=e.data.hook)&&n(r=r.remove)?r(e,t):t()}else l(e.elm)}function C(e,t,r,i){for(var o=r;o<i;o++){var a=t[o];if(n(a)&&ir(e,a))return o}}function x(e,i,o,a,c,l){if(e!==i){n(i.elm)&&n(a)&&(i=a[c]=me(i));var p=i.elm=e.elm;if(r(e.isAsyncPlaceholder))n(i.asyncFactory.resolved)?O(e.elm,i,o):i.isAsyncPlaceholder=!0;else if(r(i.isStatic)&&r(e.isStatic)&&i.key===e.key&&(r(i.isCloned)||r(i.isOnce)))i.componentInstance=e.componentInstance;else{var d,v=i.data;n(v)&&n(d=v.hook)&&n(d=d.prepatch)&&d(e,i);var h=e.children,y=i.children;if(n(v)&&m(i)){for(d=0;d<s.update.length;++d)s.update[d](e,i);n(d=v.hook)&&n(d=d.update)&&d(e,i)}t(i.text)?n(h)&&n(y)?h!==y&&function(e,r,i,o,a){for(var s,c,l,p=0,d=0,v=r.length-1,h=r[0],m=r[v],y=i.length-1,g=i[0],b=i[y],w=!a;p<=v&&d<=y;)t(h)?h=r[++p]:t(m)?m=r[--v]:ir(h,g)?(x(h,g,o,i,d),h=r[++p],g=i[++d]):ir(m,b)?(x(m,b,o,i,y),m=r[--v],b=i[--y]):ir(h,b)?(x(h,b,o,i,y),w&&u.insertBefore(e,h.elm,u.nextSibling(m.elm)),h=r[++p],b=i[--y]):ir(m,g)?(x(m,g,o,i,d),w&&u.insertBefore(e,m.elm,h.elm),m=r[--v],g=i[++d]):(t(s)&&(s=or(r,p,v)),t(c=n(g.key)?s[g.key]:C(g,r,p,v))?f(g,o,e,h.elm,!1,i,d):ir(l=r[c],g)?(x(l,g,o,i,d),r[c]=void 0,w&&u.insertBefore(e,l.elm,h.elm)):f(g,o,e,h.elm,!1,i,d),g=i[++d]);p>v?_(e,t(i[y+1])?null:i[y+1].elm,i,d,y,o):d>y&&$(0,r,p,v)}(p,h,y,o,l):n(y)?(n(e.text)&&u.setTextContent(p,""),_(p,null,y,0,y.length-1,o)):n(h)?$(0,h,0,h.length-1):n(e.text)&&u.setTextContent(p,""):e.text!==i.text&&u.setTextContent(p,i.text),n(v)&&n(d=v.hook)&&n(d=d.postpatch)&&d(e,i)}}}function k(e,t,i){if(r(i)&&n(e.parent))e.parent.data.pendingInsert=t;else for(var o=0;o<t.length;++o)t[o].data.hook.insert(t[o])}var A=p("attrs,class,staticClass,staticStyle,key");function O(e,t,i,o){var a,s=t.tag,c=t.data,u=t.children;if(o=o||c&&c.pre,t.elm=e,r(t.isComment)&&n(t.asyncFactory))return t.isAsyncPlaceholder=!0,!0;if(n(c)&&(n(a=c.hook)&&n(a=a.init)&&a(t,!0),n(a=t.componentInstance)))return d(t,i),!0;if(n(s)){if(n(u))if(e.hasChildNodes())if(n(a=c)&&n(a=a.domProps)&&n(a=a.innerHTML)){if(a!==e.innerHTML)return!1}else{for(var l=!0,f=e.firstChild,p=0;p<u.length;p++){if(!f||!O(f,u[p],i,o)){l=!1;break}f=f.nextSibling}if(!l||f)return!1}else h(t,u,i);if(n(c)){var v=!1;for(var m in c)if(!A(m)){v=!0,y(t,i);break}!v&&c.class&&et(c.class)}}else e.data!==t.text&&(e.data=t.text);return!0}return function(e,i,o,a){if(!t(i)){var c,l=!1,p=[];if(t(e))l=!0,f(i,p);else{var d=n(e.nodeType);if(!d&&ir(e,i))x(e,i,p,null,null,a);else{if(d){if(1===e.nodeType&&e.hasAttribute(L)&&(e.removeAttribute(L),o=!0),r(o)&&O(e,i,p))return k(i,p,!0),e;c=e,e=new pe(u.tagName(c).toLowerCase(),{},[],void 0,c)}var v=e.elm,h=u.parentNode(v);if(f(i,p,v._leaveCb?null:h,u.nextSibling(v)),n(i.parent))for(var y=i.parent,g=m(i);y;){for(var _=0;_<s.destroy.length;++_)s.destroy[_](y);if(y.elm=i.elm,g){for(var w=0;w<s.create.length;++w)s.create[w](nr,y);var C=y.data.hook.insert;if(C.merged)for(var A=1;A<C.fns.length;A++)C.fns[A]()}else tr(y);y=y.parent}n(h)?$(0,[e],0,0):n(e.tag)&&b(e)}}return k(i,p,l),i.elm}n(e)&&b(e)}}({nodeOps:Qn,modules:[mr,xr,ni,oi,mi,z?{create:Ui,activate:Ui,remove:function(e,t){!0!==e.data.show?Ri(e,t):t()}}:{}].concat(pr)});W&&document.addEventListener("selectionchange",function(){var e=document.activeElement;e&&e.vmodel&&Xi(e,"input")});var Vi={inserted:function(e,t,n,r){"select"===n.tag?(r.elm&&!r.elm._vOptions?it(n,"postpatch",function(){Vi.componentUpdated(e,t,n)}):Ki(e,t,n.context),e._vOptions=[].map.call(e.options,Wi)):("textarea"===n.tag||Xn(e.type))&&(e._vModifiers=t.modifiers,t.modifiers.lazy||(e.addEventListener("compositionstart",Zi),e.addEventListener("compositionend",Gi),e.addEventListener("change",Gi),W&&(e.vmodel=!0)))},componentUpdated:function(e,t,n){if("select"===n.tag){Ki(e,t,n.context);var r=e._vOptions,i=e._vOptions=[].map.call(e.options,Wi);if(i.some(function(e,t){return!N(e,r[t])}))(e.multiple?t.value.some(function(e){return qi(e,i)}):t.value!==t.oldValue&&qi(t.value,i))&&Xi(e,"change")}}};function Ki(e,t,n){Ji(e,t,n),(q||Z)&&setTimeout(function(){Ji(e,t,n)},0)}function Ji(e,t,n){var r=t.value,i=e.multiple;if(!i||Array.isArray(r)){for(var o,a,s=0,c=e.options.length;s<c;s++)if(a=e.options[s],i)o=j(r,Wi(a))>-1,a.selected!==o&&(a.selected=o);else if(N(Wi(a),r))return void(e.selectedIndex!==s&&(e.selectedIndex=s));i||(e.selectedIndex=-1)}}function qi(e,t){return t.every(function(t){return!N(t,e)})}function Wi(e){return"_value"in e?e._value:e.value}function Zi(e){e.target.composing=!0}function Gi(e){e.target.composing&&(e.target.composing=!1,Xi(e.target,"input"))}function Xi(e,t){var n=document.createEvent("HTMLEvents");n.initEvent(t,!0,!0),e.dispatchEvent(n)}function Yi(e){return!e.componentInstance||e.data&&e.data.transition?e:Yi(e.componentInstance._vnode)}var Qi={model:Vi,show:{bind:function(e,t,n){var r=t.value,i=(n=Yi(n)).data&&n.data.transition,o=e.__vOriginalDisplay="none"===e.style.display?"":e.style.display;r&&i?(n.data.show=!0,Pi(n,function(){e.style.display=o})):e.style.display=r?o:"none"},update:function(e,t,n){var r=t.value;!r!=!t.oldValue&&((n=Yi(n)).data&&n.data.transition?(n.data.show=!0,r?Pi(n,function(){e.style.display=e.__vOriginalDisplay}):Ri(n,function(){e.style.display="none"})):e.style.display=r?e.__vOriginalDisplay:"none")},unbind:function(e,t,n,r,i){i||(e.style.display=e.__vOriginalDisplay)}}},eo={name:String,appear:Boolean,css:Boolean,mode:String,type:String,enterClass:String,leaveClass:String,enterToClass:String,leaveToClass:String,enterActiveClass:String,leaveActiveClass:String,appearClass:String,appearActiveClass:String,appearToClass:String,duration:[Number,String,Object]};function to(e){var t=e&&e.componentOptions;return t&&t.Ctor.options.abstract?to(zt(t.children)):e}function no(e){var t={},n=e.$options;for(var r in n.propsData)t[r]=e[r];var i=n._parentListeners;for(var o in i)t[b(o)]=i[o];return t}function ro(e,t){if(/\d-keep-alive$/.test(t.tag))return e("keep-alive",{props:t.componentOptions.propsData})}var io=function(e){return e.tag||Ut(e)},oo=function(e){return"show"===e.name},ao={name:"transition",props:eo,abstract:!0,render:function(e){var t=this,n=this.$slots.default;if(n&&(n=n.filter(io)).length){var r=this.mode,o=n[0];if(function(e){for(;e=e.parent;)if(e.data.transition)return!0}(this.$vnode))return o;var a=to(o);if(!a)return o;if(this._leaving)return ro(e,o);var s="__transition-"+this._uid+"-";a.key=null==a.key?a.isComment?s+"comment":s+a.tag:i(a.key)?0===String(a.key).indexOf(s)?a.key:s+a.key:a.key;var c=(a.data||(a.data={})).transition=no(this),u=this._vnode,l=to(u);if(a.data.directives&&a.data.directives.some(oo)&&(a.data.show=!0),l&&l.data&&!function(e,t){return t.key===e.key&&t.tag===e.tag}(a,l)&&!Ut(l)&&(!l.componentInstance||!l.componentInstance._vnode.isComment)){var f=l.data.transition=A({},c);if("out-in"===r)return this._leaving=!0,it(f,"afterLeave",function(){t._leaving=!1,t.$forceUpdate()}),ro(e,o);if("in-out"===r){if(Ut(a))return u;var p,d=function(){p()};it(c,"afterEnter",d),it(c,"enterCancelled",d),it(f,"delayLeave",function(e){p=e})}}return o}}},so=A({tag:String,moveClass:String},eo);function co(e){e.elm._moveCb&&e.elm._moveCb(),e.elm._enterCb&&e.elm._enterCb()}function uo(e){e.data.newPos=e.elm.getBoundingClientRect()}function lo(e){var t=e.data.pos,n=e.data.newPos,r=t.left-n.left,i=t.top-n.top;if(r||i){e.data.moved=!0;var o=e.elm.style;o.transform=o.WebkitTransform="translate("+r+"px,"+i+"px)",o.transitionDuration="0s"}}delete so.mode;var fo={Transition:ao,TransitionGroup:{props:so,beforeMount:function(){var e=this,t=this._update;this._update=function(n,r){var i=Zt(e);e.__patch__(e._vnode,e.kept,!1,!0),e._vnode=e.kept,i(),t.call(e,n,r)}},render:function(e){for(var t=this.tag||this.$vnode.data.tag||"span",n=Object.create(null),r=this.prevChildren=this.children,i=this.$slots.default||[],o=this.children=[],a=no(this),s=0;s<i.length;s++){var c=i[s];c.tag&&null!=c.key&&0!==String(c.key).indexOf("__vlist")&&(o.push(c),n[c.key]=c,(c.data||(c.data={})).transition=a)}if(r){for(var u=[],l=[],f=0;f<r.length;f++){var p=r[f];p.data.transition=a,p.data.pos=p.elm.getBoundingClientRect(),n[p.key]?u.push(p):l.push(p)}this.kept=e(t,null,u),this.removed=l}return e(t,null,o)},updated:function(){var e=this.prevChildren,t=this.moveClass||(this.name||"v")+"-move";e.length&&this.hasMove(e[0].elm,t)&&(e.forEach(co),e.forEach(uo),e.forEach(lo),this._reflow=document.body.offsetHeight,e.forEach(function(e){if(e.data.moved){var n=e.elm,r=n.style;Ni(n,t),r.transform=r.WebkitTransform=r.transitionDuration="",n.addEventListener(Ai,n._moveCb=function e(r){r&&r.target!==n||r&&!/transform$/.test(r.propertyName)||(n.removeEventListener(Ai,e),n._moveCb=null,ji(n,t))})}}))},methods:{hasMove:function(e,t){if(!wi)return!1;if(this._hasMove)return this._hasMove;var n=e.cloneNode();e._transitionClasses&&e._transitionClasses.forEach(function(e){_i(n,e)}),gi(n,t),n.style.display="none",this.$el.appendChild(n);var r=Mi(n);return this.$el.removeChild(n),this._hasMove=r.hasTransform}}}};wn.config.mustUseProp=jn,wn.config.isReservedTag=Wn,wn.config.isReservedAttr=En,wn.config.getTagNamespace=Zn,wn.config.isUnknownElement=function(e){if(!z)return!0;if(Wn(e))return!1;if(e=e.toLowerCase(),null!=Gn[e])return Gn[e];var t=document.createElement(e);return e.indexOf("-")>-1?Gn[e]=t.constructor===window.HTMLUnknownElement||t.constructor===window.HTMLElement:Gn[e]=/HTMLUnknownElement/.test(t.toString())},A(wn.options.directives,Qi),A(wn.options.components,fo),wn.prototype.__patch__=z?zi:S,wn.prototype.$mount=function(e,t){return function(e,t,n){var r;return e.$el=t,e.$options.render||(e.$options.render=ve),Yt(e,"beforeMount"),r=function(){e._update(e._render(),n)},new fn(e,r,S,{before:function(){e._isMounted&&!e._isDestroyed&&Yt(e,"beforeUpdate")}},!0),n=!1,null==e.$vnode&&(e._isMounted=!0,Yt(e,"mounted")),e}(this,e=e&&z?Yn(e):void 0,t)},z&&setTimeout(function(){F.devtools&&ne&&ne.emit("init",wn)},0);var po=/\{\{((?:.|\r?\n)+?)\}\}/g,vo=/[-.*+?^${}()|[\]\/\\]/g,ho=g(function(e){var t=e[0].replace(vo,"\\$&"),n=e[1].replace(vo,"\\$&");return new RegExp(t+"((?:.|\\n)+?)"+n,"g")});var mo={staticKeys:["staticClass"],transformNode:function(e,t){t.warn;var n=Fr(e,"class");n&&(e.staticClass=JSON.stringify(n));var r=Ir(e,"class",!1);r&&(e.classBinding=r)},genData:function(e){var t="";return e.staticClass&&(t+="staticClass:"+e.staticClass+","),e.classBinding&&(t+="class:"+e.classBinding+","),t}};var yo,go={staticKeys:["staticStyle"],transformNode:function(e,t){t.warn;var n=Fr(e,"style");n&&(e.staticStyle=JSON.stringify(ai(n)));var r=Ir(e,"style",!1);r&&(e.styleBinding=r)},genData:function(e){var t="";return e.staticStyle&&(t+="staticStyle:"+e.staticStyle+","),e.styleBinding&&(t+="style:("+e.styleBinding+"),"),t}},_o=function(e){return(yo=yo||document.createElement("div")).innerHTML=e,yo.textContent},bo=p("area,base,br,col,embed,frame,hr,img,input,isindex,keygen,link,meta,param,source,track,wbr"),$o=p("colgroup,dd,dt,li,options,p,td,tfoot,th,thead,tr,source"),wo=p("address,article,aside,base,blockquote,body,caption,col,colgroup,dd,details,dialog,div,dl,dt,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,head,header,hgroup,hr,html,legend,li,menuitem,meta,optgroup,option,param,rp,rt,source,style,summary,tbody,td,tfoot,th,thead,title,tr,track"),Co=/^\s*([^\s"'<>\/=]+)(?:\s*(=)\s*(?:"([^"]*)"+|'([^']*)'+|([^\s"'=<>`]+)))?/,xo=/^\s*((?:v-[\w-]+:|@|:|#)\[[^=]+\][^\s"'<>\/=]*)(?:\s*(=)\s*(?:"([^"]*)"+|'([^']*)'+|([^\s"'=<>`]+)))?/,ko="[a-zA-Z_][\\-\\.0-9_a-zA-Z"+P.source+"]*",Ao="((?:"+ko+"\\:)?"+ko+")",Oo=new RegExp("^<"+Ao),So=/^\s*(\/?)>/,To=new RegExp("^<\\/"+Ao+"[^>]*>"),Eo=/^<!DOCTYPE [^>]+>/i,No=/^<!\--/,jo=/^<!\[/,Do=p("script,style,textarea",!0),Lo={},Mo={"&lt;":"<","&gt;":">","&quot;":'"',"&amp;":"&","&#10;":"\n","&#9;":"\t","&#39;":"'"},Io=/&(?:lt|gt|quot|amp|#39);/g,Fo=/&(?:lt|gt|quot|amp|#39|#10|#9);/g,Po=p("pre,textarea",!0),Ro=function(e,t){return e&&Po(e)&&"\n"===t[0]};function Ho(e,t){var n=t?Fo:Io;return e.replace(n,function(e){return Mo[e]})}var Bo,Uo,zo,Vo,Ko,Jo,qo,Wo,Zo=/^@|^v-on:/,Go=/^v-|^@|^:/,Xo=/([\s\S]*?)\s+(?:in|of)\s+([\s\S]*)/,Yo=/,([^,\}\]]*)(?:,([^,\}\]]*))?$/,Qo=/^\(|\)$/g,ea=/^\[.*\]$/,ta=/:(.*)$/,na=/^:|^\.|^v-bind:/,ra=/\.[^.\]]+(?=[^\]]*$)/g,ia=/^v-slot(:|$)|^#/,oa=/[\r\n]/,aa=/\s+/g,sa=g(_o),ca="_empty_";function ua(e,t,n){return{type:1,tag:e,attrsList:t,attrsMap:ma(t),rawAttrsMap:{},parent:n,children:[]}}function la(e,t){Bo=t.warn||Sr,Jo=t.isPreTag||T,qo=t.mustUseProp||T,Wo=t.getTagNamespace||T;t.isReservedTag;zo=Tr(t.modules,"transformNode"),Vo=Tr(t.modules,"preTransformNode"),Ko=Tr(t.modules,"postTransformNode"),Uo=t.delimiters;var n,r,i=[],o=!1!==t.preserveWhitespace,a=t.whitespace,s=!1,c=!1;function u(e){if(l(e),s||e.processed||(e=fa(e,t)),i.length||e===n||n.if&&(e.elseif||e.else)&&da(n,{exp:e.elseif,block:e}),r&&!e.forbidden)if(e.elseif||e.else)a=e,(u=function(e){var t=e.length;for(;t--;){if(1===e[t].type)return e[t];e.pop()}}(r.children))&&u.if&&da(u,{exp:a.elseif,block:a});else{if(e.slotScope){var o=e.slotTarget||'"default"';(r.scopedSlots||(r.scopedSlots={}))[o]=e}r.children.push(e),e.parent=r}var a,u;e.children=e.children.filter(function(e){return!e.slotScope}),l(e),e.pre&&(s=!1),Jo(e.tag)&&(c=!1);for(var f=0;f<Ko.length;f++)Ko[f](e,t)}function l(e){if(!c)for(var t;(t=e.children[e.children.length-1])&&3===t.type&&" "===t.text;)e.children.pop()}return function(e,t){for(var n,r,i=[],o=t.expectHTML,a=t.isUnaryTag||T,s=t.canBeLeftOpenTag||T,c=0;e;){if(n=e,r&&Do(r)){var u=0,l=r.toLowerCase(),f=Lo[l]||(Lo[l]=new RegExp("([\\s\\S]*?)(</"+l+"[^>]*>)","i")),p=e.replace(f,function(e,n,r){return u=r.length,Do(l)||"noscript"===l||(n=n.replace(/<!\--([\s\S]*?)-->/g,"$1").replace(/<!\[CDATA\[([\s\S]*?)]]>/g,"$1")),Ro(l,n)&&(n=n.slice(1)),t.chars&&t.chars(n),""});c+=e.length-p.length,e=p,A(l,c-u,c)}else{var d=e.indexOf("<");if(0===d){if(No.test(e)){var v=e.indexOf("--\x3e");if(v>=0){t.shouldKeepComment&&t.comment(e.substring(4,v),c,c+v+3),C(v+3);continue}}if(jo.test(e)){var h=e.indexOf("]>");if(h>=0){C(h+2);continue}}var m=e.match(Eo);if(m){C(m[0].length);continue}var y=e.match(To);if(y){var g=c;C(y[0].length),A(y[1],g,c);continue}var _=x();if(_){k(_),Ro(_.tagName,e)&&C(1);continue}}var b=void 0,$=void 0,w=void 0;if(d>=0){for($=e.slice(d);!(To.test($)||Oo.test($)||No.test($)||jo.test($)||(w=$.indexOf("<",1))<0);)d+=w,$=e.slice(d);b=e.substring(0,d)}d<0&&(b=e),b&&C(b.length),t.chars&&b&&t.chars(b,c-b.length,c)}if(e===n){t.chars&&t.chars(e);break}}function C(t){c+=t,e=e.substring(t)}function x(){var t=e.match(Oo);if(t){var n,r,i={tagName:t[1],attrs:[],start:c};for(C(t[0].length);!(n=e.match(So))&&(r=e.match(xo)||e.match(Co));)r.start=c,C(r[0].length),r.end=c,i.attrs.push(r);if(n)return i.unarySlash=n[1],C(n[0].length),i.end=c,i}}function k(e){var n=e.tagName,c=e.unarySlash;o&&("p"===r&&wo(n)&&A(r),s(n)&&r===n&&A(n));for(var u=a(n)||!!c,l=e.attrs.length,f=new Array(l),p=0;p<l;p++){var d=e.attrs[p],v=d[3]||d[4]||d[5]||"",h="a"===n&&"href"===d[1]?t.shouldDecodeNewlinesForHref:t.shouldDecodeNewlines;f[p]={name:d[1],value:Ho(v,h)}}u||(i.push({tag:n,lowerCasedTag:n.toLowerCase(),attrs:f,start:e.start,end:e.end}),r=n),t.start&&t.start(n,f,u,e.start,e.end)}function A(e,n,o){var a,s;if(null==n&&(n=c),null==o&&(o=c),e)for(s=e.toLowerCase(),a=i.length-1;a>=0&&i[a].lowerCasedTag!==s;a--);else a=0;if(a>=0){for(var u=i.length-1;u>=a;u--)t.end&&t.end(i[u].tag,n,o);i.length=a,r=a&&i[a-1].tag}else"br"===s?t.start&&t.start(e,[],!0,n,o):"p"===s&&(t.start&&t.start(e,[],!1,n,o),t.end&&t.end(e,n,o))}A()}(e,{warn:Bo,expectHTML:t.expectHTML,isUnaryTag:t.isUnaryTag,canBeLeftOpenTag:t.canBeLeftOpenTag,shouldDecodeNewlines:t.shouldDecodeNewlines,shouldDecodeNewlinesForHref:t.shouldDecodeNewlinesForHref,shouldKeepComment:t.comments,outputSourceRange:t.outputSourceRange,start:function(e,o,a,l,f){var p=r&&r.ns||Wo(e);q&&"svg"===p&&(o=function(e){for(var t=[],n=0;n<e.length;n++){var r=e[n];ya.test(r.name)||(r.name=r.name.replace(ga,""),t.push(r))}return t}(o));var d,v=ua(e,o,r);p&&(v.ns=p),"style"!==(d=v).tag&&("script"!==d.tag||d.attrsMap.type&&"text/javascript"!==d.attrsMap.type)||te()||(v.forbidden=!0);for(var h=0;h<Vo.length;h++)v=Vo[h](v,t)||v;s||(!function(e){null!=Fr(e,"v-pre")&&(e.pre=!0)}(v),v.pre&&(s=!0)),Jo(v.tag)&&(c=!0),s?function(e){var t=e.attrsList,n=t.length;if(n)for(var r=e.attrs=new Array(n),i=0;i<n;i++)r[i]={name:t[i].name,value:JSON.stringify(t[i].value)},null!=t[i].start&&(r[i].start=t[i].start,r[i].end=t[i].end);else e.pre||(e.plain=!0)}(v):v.processed||(pa(v),function(e){var t=Fr(e,"v-if");if(t)e.if=t,da(e,{exp:t,block:e});else{null!=Fr(e,"v-else")&&(e.else=!0);var n=Fr(e,"v-else-if");n&&(e.elseif=n)}}(v),function(e){null!=Fr(e,"v-once")&&(e.once=!0)}(v)),n||(n=v),a?u(v):(r=v,i.push(v))},end:function(e,t,n){var o=i[i.length-1];i.length-=1,r=i[i.length-1],u(o)},chars:function(e,t,n){if(r&&(!q||"textarea"!==r.tag||r.attrsMap.placeholder!==e)){var i,u,l,f=r.children;if(e=c||e.trim()?"script"===(i=r).tag||"style"===i.tag?e:sa(e):f.length?a?"condense"===a&&oa.test(e)?"":" ":o?" ":"":"")c||"condense"!==a||(e=e.replace(aa," ")),!s&&" "!==e&&(u=function(e,t){var n=t?ho(t):po;if(n.test(e)){for(var r,i,o,a=[],s=[],c=n.lastIndex=0;r=n.exec(e);){(i=r.index)>c&&(s.push(o=e.slice(c,i)),a.push(JSON.stringify(o)));var u=Ar(r[1].trim());a.push("_s("+u+")"),s.push({"@binding":u}),c=i+r[0].length}return c<e.length&&(s.push(o=e.slice(c)),a.push(JSON.stringify(o))),{expression:a.join("+"),tokens:s}}}(e,Uo))?l={type:2,expression:u.expression,tokens:u.tokens,text:e}:" "===e&&f.length&&" "===f[f.length-1].text||(l={type:3,text:e}),l&&f.push(l)}},comment:function(e,t,n){if(r){var i={type:3,text:e,isComment:!0};r.children.push(i)}}}),n}function fa(e,t){var n,r;(r=Ir(n=e,"key"))&&(n.key=r),e.plain=!e.key&&!e.scopedSlots&&!e.attrsList.length,function(e){var t=Ir(e,"ref");t&&(e.ref=t,e.refInFor=function(e){var t=e;for(;t;){if(void 0!==t.for)return!0;t=t.parent}return!1}(e))}(e),function(e){var t;"template"===e.tag?(t=Fr(e,"scope"),e.slotScope=t||Fr(e,"slot-scope")):(t=Fr(e,"slot-scope"))&&(e.slotScope=t);var n=Ir(e,"slot");n&&(e.slotTarget='""'===n?'"default"':n,e.slotTargetDynamic=!(!e.attrsMap[":slot"]&&!e.attrsMap["v-bind:slot"]),"template"===e.tag||e.slotScope||Nr(e,"slot",n,function(e,t){return e.rawAttrsMap[":"+t]||e.rawAttrsMap["v-bind:"+t]||e.rawAttrsMap[t]}(e,"slot")));if("template"===e.tag){var r=Pr(e,ia);if(r){var i=va(r),o=i.name,a=i.dynamic;e.slotTarget=o,e.slotTargetDynamic=a,e.slotScope=r.value||ca}}else{var s=Pr(e,ia);if(s){var c=e.scopedSlots||(e.scopedSlots={}),u=va(s),l=u.name,f=u.dynamic,p=c[l]=ua("template",[],e);p.slotTarget=l,p.slotTargetDynamic=f,p.children=e.children.filter(function(e){if(!e.slotScope)return e.parent=p,!0}),p.slotScope=s.value||ca,e.children=[],e.plain=!1}}}(e),function(e){"slot"===e.tag&&(e.slotName=Ir(e,"name"))}(e),function(e){var t;(t=Ir(e,"is"))&&(e.component=t);null!=Fr(e,"inline-template")&&(e.inlineTemplate=!0)}(e);for(var i=0;i<zo.length;i++)e=zo[i](e,t)||e;return function(e){var t,n,r,i,o,a,s,c,u=e.attrsList;for(t=0,n=u.length;t<n;t++)if(r=i=u[t].name,o=u[t].value,Go.test(r))if(e.hasBindings=!0,(a=ha(r.replace(Go,"")))&&(r=r.replace(ra,"")),na.test(r))r=r.replace(na,""),o=Ar(o),(c=ea.test(r))&&(r=r.slice(1,-1)),a&&(a.prop&&!c&&"innerHtml"===(r=b(r))&&(r="innerHTML"),a.camel&&!c&&(r=b(r)),a.sync&&(s=Br(o,"$event"),c?Mr(e,'"update:"+('+r+")",s,null,!1,0,u[t],!0):(Mr(e,"update:"+b(r),s,null,!1,0,u[t]),C(r)!==b(r)&&Mr(e,"update:"+C(r),s,null,!1,0,u[t])))),a&&a.prop||!e.component&&qo(e.tag,e.attrsMap.type,r)?Er(e,r,o,u[t],c):Nr(e,r,o,u[t],c);else if(Zo.test(r))r=r.replace(Zo,""),(c=ea.test(r))&&(r=r.slice(1,-1)),Mr(e,r,o,a,!1,0,u[t],c);else{var l=(r=r.replace(Go,"")).match(ta),f=l&&l[1];c=!1,f&&(r=r.slice(0,-(f.length+1)),ea.test(f)&&(f=f.slice(1,-1),c=!0)),Dr(e,r,i,o,f,c,a,u[t])}else Nr(e,r,JSON.stringify(o),u[t]),!e.component&&"muted"===r&&qo(e.tag,e.attrsMap.type,r)&&Er(e,r,"true",u[t])}(e),e}function pa(e){var t;if(t=Fr(e,"v-for")){var n=function(e){var t=e.match(Xo);if(!t)return;var n={};n.for=t[2].trim();var r=t[1].trim().replace(Qo,""),i=r.match(Yo);i?(n.alias=r.replace(Yo,"").trim(),n.iterator1=i[1].trim(),i[2]&&(n.iterator2=i[2].trim())):n.alias=r;return n}(t);n&&A(e,n)}}function da(e,t){e.ifConditions||(e.ifConditions=[]),e.ifConditions.push(t)}function va(e){var t=e.name.replace(ia,"");return t||"#"!==e.name[0]&&(t="default"),ea.test(t)?{name:t.slice(1,-1),dynamic:!0}:{name:'"'+t+'"',dynamic:!1}}function ha(e){var t=e.match(ra);if(t){var n={};return t.forEach(function(e){n[e.slice(1)]=!0}),n}}function ma(e){for(var t={},n=0,r=e.length;n<r;n++)t[e[n].name]=e[n].value;return t}var ya=/^xmlns:NS\d+/,ga=/^NS\d+:/;function _a(e){return ua(e.tag,e.attrsList.slice(),e.parent)}var ba=[mo,go,{preTransformNode:function(e,t){if("input"===e.tag){var n,r=e.attrsMap;if(!r["v-model"])return;if((r[":type"]||r["v-bind:type"])&&(n=Ir(e,"type")),r.type||n||!r["v-bind"]||(n="("+r["v-bind"]+").type"),n){var i=Fr(e,"v-if",!0),o=i?"&&("+i+")":"",a=null!=Fr(e,"v-else",!0),s=Fr(e,"v-else-if",!0),c=_a(e);pa(c),jr(c,"type","checkbox"),fa(c,t),c.processed=!0,c.if="("+n+")==='checkbox'"+o,da(c,{exp:c.if,block:c});var u=_a(e);Fr(u,"v-for",!0),jr(u,"type","radio"),fa(u,t),da(c,{exp:"("+n+")==='radio'"+o,block:u});var l=_a(e);return Fr(l,"v-for",!0),jr(l,":type",n),fa(l,t),da(c,{exp:i,block:l}),a?c.else=!0:s&&(c.elseif=s),c}}}}];var $a,wa,Ca={expectHTML:!0,modules:ba,directives:{model:function(e,t,n){var r=t.value,i=t.modifiers,o=e.tag,a=e.attrsMap.type;if(e.component)return Hr(e,r,i),!1;if("select"===o)!function(e,t,n){var r='var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = "_value" in o ? o._value : o.value;return '+(n&&n.number?"_n(val)":"val")+"});";r=r+" "+Br(t,"$event.target.multiple ? $$selectedVal : $$selectedVal[0]"),Mr(e,"change",r,null,!0)}(e,r,i);else if("input"===o&&"checkbox"===a)!function(e,t,n){var r=n&&n.number,i=Ir(e,"value")||"null",o=Ir(e,"true-value")||"true",a=Ir(e,"false-value")||"false";Er(e,"checked","Array.isArray("+t+")?_i("+t+","+i+")>-1"+("true"===o?":("+t+")":":_q("+t+","+o+")")),Mr(e,"change","var $$a="+t+",$$el=$event.target,$$c=$$el.checked?("+o+"):("+a+");if(Array.isArray($$a)){var $$v="+(r?"_n("+i+")":i)+",$$i=_i($$a,$$v);if($$el.checked){$$i<0&&("+Br(t,"$$a.concat([$$v])")+")}else{$$i>-1&&("+Br(t,"$$a.slice(0,$$i).concat($$a.slice($$i+1))")+")}}else{"+Br(t,"$$c")+"}",null,!0)}(e,r,i);else if("input"===o&&"radio"===a)!function(e,t,n){var r=n&&n.number,i=Ir(e,"value")||"null";Er(e,"checked","_q("+t+","+(i=r?"_n("+i+")":i)+")"),Mr(e,"change",Br(t,i),null,!0)}(e,r,i);else if("input"===o||"textarea"===o)!function(e,t,n){var r=e.attrsMap.type,i=n||{},o=i.lazy,a=i.number,s=i.trim,c=!o&&"range"!==r,u=o?"change":"range"===r?Wr:"input",l="$event.target.value";s&&(l="$event.target.value.trim()"),a&&(l="_n("+l+")");var f=Br(t,l);c&&(f="if($event.target.composing)return;"+f),Er(e,"value","("+t+")"),Mr(e,u,f,null,!0),(s||a)&&Mr(e,"blur","$forceUpdate()")}(e,r,i);else if(!F.isReservedTag(o))return Hr(e,r,i),!1;return!0},text:function(e,t){t.value&&Er(e,"textContent","_s("+t.value+")",t)},html:function(e,t){t.value&&Er(e,"innerHTML","_s("+t.value+")",t)}},isPreTag:function(e){return"pre"===e},isUnaryTag:bo,mustUseProp:jn,canBeLeftOpenTag:$o,isReservedTag:Wn,getTagNamespace:Zn,staticKeys:function(e){return e.reduce(function(e,t){return e.concat(t.staticKeys||[])},[]).join(",")}(ba)},xa=g(function(e){return p("type,tag,attrsList,attrsMap,plain,parent,children,attrs,start,end,rawAttrsMap"+(e?","+e:""))});function ka(e,t){e&&($a=xa(t.staticKeys||""),wa=t.isReservedTag||T,function e(t){t.static=function(e){if(2===e.type)return!1;if(3===e.type)return!0;return!(!e.pre&&(e.hasBindings||e.if||e.for||d(e.tag)||!wa(e.tag)||function(e){for(;e.parent;){if("template"!==(e=e.parent).tag)return!1;if(e.for)return!0}return!1}(e)||!Object.keys(e).every($a)))}(t);if(1===t.type){if(!wa(t.tag)&&"slot"!==t.tag&&null==t.attrsMap["inline-template"])return;for(var n=0,r=t.children.length;n<r;n++){var i=t.children[n];e(i),i.static||(t.static=!1)}if(t.ifConditions)for(var o=1,a=t.ifConditions.length;o<a;o++){var s=t.ifConditions[o].block;e(s),s.static||(t.static=!1)}}}(e),function e(t,n){if(1===t.type){if((t.static||t.once)&&(t.staticInFor=n),t.static&&t.children.length&&(1!==t.children.length||3!==t.children[0].type))return void(t.staticRoot=!0);if(t.staticRoot=!1,t.children)for(var r=0,i=t.children.length;r<i;r++)e(t.children[r],n||!!t.for);if(t.ifConditions)for(var o=1,a=t.ifConditions.length;o<a;o++)e(t.ifConditions[o].block,n)}}(e,!1))}var Aa=/^([\w$_]+|\([^)]*?\))\s*=>|^function\s*(?:[\w$]+)?\s*\(/,Oa=/\([^)]*?\);*$/,Sa=/^[A-Za-z_$][\w$]*(?:\.[A-Za-z_$][\w$]*|\['[^']*?']|\["[^"]*?"]|\[\d+]|\[[A-Za-z_$][\w$]*])*$/,Ta={esc:27,tab:9,enter:13,space:32,up:38,left:37,right:39,down:40,delete:[8,46]},Ea={esc:["Esc","Escape"],tab:"Tab",enter:"Enter",space:[" ","Spacebar"],up:["Up","ArrowUp"],left:["Left","ArrowLeft"],right:["Right","ArrowRight"],down:["Down","ArrowDown"],delete:["Backspace","Delete","Del"]},Na=function(e){return"if("+e+")return null;"},ja={stop:"$event.stopPropagation();",prevent:"$event.preventDefault();",self:Na("$event.target !== $event.currentTarget"),ctrl:Na("!$event.ctrlKey"),shift:Na("!$event.shiftKey"),alt:Na("!$event.altKey"),meta:Na("!$event.metaKey"),left:Na("'button' in $event && $event.button !== 0"),middle:Na("'button' in $event && $event.button !== 1"),right:Na("'button' in $event && $event.button !== 2")};function Da(e,t){var n=t?"nativeOn:":"on:",r="",i="";for(var o in e){var a=La(e[o]);e[o]&&e[o].dynamic?i+=o+","+a+",":r+='"'+o+'":'+a+","}return r="{"+r.slice(0,-1)+"}",i?n+"_d("+r+",["+i.slice(0,-1)+"])":n+r}function La(e){if(!e)return"function(){}";if(Array.isArray(e))return"["+e.map(function(e){return La(e)}).join(",")+"]";var t=Sa.test(e.value),n=Aa.test(e.value),r=Sa.test(e.value.replace(Oa,""));if(e.modifiers){var i="",o="",a=[];for(var s in e.modifiers)if(ja[s])o+=ja[s],Ta[s]&&a.push(s);else if("exact"===s){var c=e.modifiers;o+=Na(["ctrl","shift","alt","meta"].filter(function(e){return!c[e]}).map(function(e){return"$event."+e+"Key"}).join("||"))}else a.push(s);return a.length&&(i+=function(e){return"if(!$event.type.indexOf('key')&&"+e.map(Ma).join("&&")+")return null;"}(a)),o&&(i+=o),"function($event){"+i+(t?"return "+e.value+"($event)":n?"return ("+e.value+")($event)":r?"return "+e.value:e.value)+"}"}return t||n?e.value:"function($event){"+(r?"return "+e.value:e.value)+"}"}function Ma(e){var t=parseInt(e,10);if(t)return"$event.keyCode!=="+t;var n=Ta[e],r=Ea[e];return"_k($event.keyCode,"+JSON.stringify(e)+","+JSON.stringify(n)+",$event.key,"+JSON.stringify(r)+")"}var Ia={on:function(e,t){e.wrapListeners=function(e){return"_g("+e+","+t.value+")"}},bind:function(e,t){e.wrapData=function(n){return"_b("+n+",'"+e.tag+"',"+t.value+","+(t.modifiers&&t.modifiers.prop?"true":"false")+(t.modifiers&&t.modifiers.sync?",true":"")+")"}},cloak:S},Fa=function(e){this.options=e,this.warn=e.warn||Sr,this.transforms=Tr(e.modules,"transformCode"),this.dataGenFns=Tr(e.modules,"genData"),this.directives=A(A({},Ia),e.directives);var t=e.isReservedTag||T;this.maybeComponent=function(e){return!!e.component||!t(e.tag)},this.onceId=0,this.staticRenderFns=[],this.pre=!1};function Pa(e,t){var n=new Fa(t);return{render:"with(this){return "+(e?Ra(e,n):'_c("div")')+"}",staticRenderFns:n.staticRenderFns}}function Ra(e,t){if(e.parent&&(e.pre=e.pre||e.parent.pre),e.staticRoot&&!e.staticProcessed)return Ha(e,t);if(e.once&&!e.onceProcessed)return Ba(e,t);if(e.for&&!e.forProcessed)return za(e,t);if(e.if&&!e.ifProcessed)return Ua(e,t);if("template"!==e.tag||e.slotTarget||t.pre){if("slot"===e.tag)return function(e,t){var n=e.slotName||'"default"',r=qa(e,t),i="_t("+n+(r?","+r:""),o=e.attrs||e.dynamicAttrs?Ga((e.attrs||[]).concat(e.dynamicAttrs||[]).map(function(e){return{name:b(e.name),value:e.value,dynamic:e.dynamic}})):null,a=e.attrsMap["v-bind"];!o&&!a||r||(i+=",null");o&&(i+=","+o);a&&(i+=(o?"":",null")+","+a);return i+")"}(e,t);var n;if(e.component)n=function(e,t,n){var r=t.inlineTemplate?null:qa(t,n,!0);return"_c("+e+","+Va(t,n)+(r?","+r:"")+")"}(e.component,e,t);else{var r;(!e.plain||e.pre&&t.maybeComponent(e))&&(r=Va(e,t));var i=e.inlineTemplate?null:qa(e,t,!0);n="_c('"+e.tag+"'"+(r?","+r:"")+(i?","+i:"")+")"}for(var o=0;o<t.transforms.length;o++)n=t.transforms[o](e,n);return n}return qa(e,t)||"void 0"}function Ha(e,t){e.staticProcessed=!0;var n=t.pre;return e.pre&&(t.pre=e.pre),t.staticRenderFns.push("with(this){return "+Ra(e,t)+"}"),t.pre=n,"_m("+(t.staticRenderFns.length-1)+(e.staticInFor?",true":"")+")"}function Ba(e,t){if(e.onceProcessed=!0,e.if&&!e.ifProcessed)return Ua(e,t);if(e.staticInFor){for(var n="",r=e.parent;r;){if(r.for){n=r.key;break}r=r.parent}return n?"_o("+Ra(e,t)+","+t.onceId+++","+n+")":Ra(e,t)}return Ha(e,t)}function Ua(e,t,n,r){return e.ifProcessed=!0,function e(t,n,r,i){if(!t.length)return i||"_e()";var o=t.shift();return o.exp?"("+o.exp+")?"+a(o.block)+":"+e(t,n,r,i):""+a(o.block);function a(e){return r?r(e,n):e.once?Ba(e,n):Ra(e,n)}}(e.ifConditions.slice(),t,n,r)}function za(e,t,n,r){var i=e.for,o=e.alias,a=e.iterator1?","+e.iterator1:"",s=e.iterator2?","+e.iterator2:"";return e.forProcessed=!0,(r||"_l")+"(("+i+"),function("+o+a+s+"){return "+(n||Ra)(e,t)+"})"}function Va(e,t){var n="{",r=function(e,t){var n=e.directives;if(!n)return;var r,i,o,a,s="directives:[",c=!1;for(r=0,i=n.length;r<i;r++){o=n[r],a=!0;var u=t.directives[o.name];u&&(a=!!u(e,o,t.warn)),a&&(c=!0,s+='{name:"'+o.name+'",rawName:"'+o.rawName+'"'+(o.value?",value:("+o.value+"),expression:"+JSON.stringify(o.value):"")+(o.arg?",arg:"+(o.isDynamicArg?o.arg:'"'+o.arg+'"'):"")+(o.modifiers?",modifiers:"+JSON.stringify(o.modifiers):"")+"},")}if(c)return s.slice(0,-1)+"]"}(e,t);r&&(n+=r+","),e.key&&(n+="key:"+e.key+","),e.ref&&(n+="ref:"+e.ref+","),e.refInFor&&(n+="refInFor:true,"),e.pre&&(n+="pre:true,"),e.component&&(n+='tag:"'+e.tag+'",');for(var i=0;i<t.dataGenFns.length;i++)n+=t.dataGenFns[i](e);if(e.attrs&&(n+="attrs:"+Ga(e.attrs)+","),e.props&&(n+="domProps:"+Ga(e.props)+","),e.events&&(n+=Da(e.events,!1)+","),e.nativeEvents&&(n+=Da(e.nativeEvents,!0)+","),e.slotTarget&&!e.slotScope&&(n+="slot:"+e.slotTarget+","),e.scopedSlots&&(n+=function(e,t,n){var r=e.for||Object.keys(t).some(function(e){var n=t[e];return n.slotTargetDynamic||n.if||n.for||Ka(n)}),i=!!e.if;if(!r)for(var o=e.parent;o;){if(o.slotScope&&o.slotScope!==ca||o.for){r=!0;break}o.if&&(i=!0),o=o.parent}var a=Object.keys(t).map(function(e){return Ja(t[e],n)}).join(",");return"scopedSlots:_u(["+a+"]"+(r?",null,true":"")+(!r&&i?",null,false,"+function(e){var t=5381,n=e.length;for(;n;)t=33*t^e.charCodeAt(--n);return t>>>0}(a):"")+")"}(e,e.scopedSlots,t)+","),e.model&&(n+="model:{value:"+e.model.value+",callback:"+e.model.callback+",expression:"+e.model.expression+"},"),e.inlineTemplate){var o=function(e,t){var n=e.children[0];if(n&&1===n.type){var r=Pa(n,t.options);return"inlineTemplate:{render:function(){"+r.render+"},staticRenderFns:["+r.staticRenderFns.map(function(e){return"function(){"+e+"}"}).join(",")+"]}"}}(e,t);o&&(n+=o+",")}return n=n.replace(/,$/,"")+"}",e.dynamicAttrs&&(n="_b("+n+',"'+e.tag+'",'+Ga(e.dynamicAttrs)+")"),e.wrapData&&(n=e.wrapData(n)),e.wrapListeners&&(n=e.wrapListeners(n)),n}function Ka(e){return 1===e.type&&("slot"===e.tag||e.children.some(Ka))}function Ja(e,t){var n=e.attrsMap["slot-scope"];if(e.if&&!e.ifProcessed&&!n)return Ua(e,t,Ja,"null");if(e.for&&!e.forProcessed)return za(e,t,Ja);var r=e.slotScope===ca?"":String(e.slotScope),i="function("+r+"){return "+("template"===e.tag?e.if&&n?"("+e.if+")?"+(qa(e,t)||"undefined")+":undefined":qa(e,t)||"undefined":Ra(e,t))+"}",o=r?"":",proxy:true";return"{key:"+(e.slotTarget||'"default"')+",fn:"+i+o+"}"}function qa(e,t,n,r,i){var o=e.children;if(o.length){var a=o[0];if(1===o.length&&a.for&&"template"!==a.tag&&"slot"!==a.tag){var s=n?t.maybeComponent(a)?",1":",0":"";return""+(r||Ra)(a,t)+s}var c=n?function(e,t){for(var n=0,r=0;r<e.length;r++){var i=e[r];if(1===i.type){if(Wa(i)||i.ifConditions&&i.ifConditions.some(function(e){return Wa(e.block)})){n=2;break}(t(i)||i.ifConditions&&i.ifConditions.some(function(e){return t(e.block)}))&&(n=1)}}return n}(o,t.maybeComponent):0,u=i||Za;return"["+o.map(function(e){return u(e,t)}).join(",")+"]"+(c?","+c:"")}}function Wa(e){return void 0!==e.for||"template"===e.tag||"slot"===e.tag}function Za(e,t){return 1===e.type?Ra(e,t):3===e.type&&e.isComment?(r=e,"_e("+JSON.stringify(r.text)+")"):"_v("+(2===(n=e).type?n.expression:Xa(JSON.stringify(n.text)))+")";var n,r}function Ga(e){for(var t="",n="",r=0;r<e.length;r++){var i=e[r],o=Xa(i.value);i.dynamic?n+=i.name+","+o+",":t+='"'+i.name+'":'+o+","}return t="{"+t.slice(0,-1)+"}",n?"_d("+t+",["+n.slice(0,-1)+"])":t}function Xa(e){return e.replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}new RegExp("\\b"+"do,if,for,let,new,try,var,case,else,with,await,break,catch,class,const,super,throw,while,yield,delete,export,import,return,switch,default,extends,finally,continue,debugger,function,arguments".split(",").join("\\b|\\b")+"\\b");function Ya(e,t){try{return new Function(e)}catch(n){return t.push({err:n,code:e}),S}}function Qa(e){var t=Object.create(null);return function(n,r,i){(r=A({},r)).warn;delete r.warn;var o=r.delimiters?String(r.delimiters)+n:n;if(t[o])return t[o];var a=e(n,r),s={},c=[];return s.render=Ya(a.render,c),s.staticRenderFns=a.staticRenderFns.map(function(e){return Ya(e,c)}),t[o]=s}}var es,ts,ns=(es=function(e,t){var n=la(e.trim(),t);!1!==t.optimize&&ka(n,t);var r=Pa(n,t);return{ast:n,render:r.render,staticRenderFns:r.staticRenderFns}},function(e){function t(t,n){var r=Object.create(e),i=[],o=[];if(n)for(var a in n.modules&&(r.modules=(e.modules||[]).concat(n.modules)),n.directives&&(r.directives=A(Object.create(e.directives||null),n.directives)),n)"modules"!==a&&"directives"!==a&&(r[a]=n[a]);r.warn=function(e,t,n){(n?o:i).push(e)};var s=es(t.trim(),r);return s.errors=i,s.tips=o,s}return{compile:t,compileToFunctions:Qa(t)}})(Ca),rs=(ns.compile,ns.compileToFunctions);function is(e){return(ts=ts||document.createElement("div")).innerHTML=e?'<a href="\n"/>':'<div a="\n"/>',ts.innerHTML.indexOf("&#10;")>0}var os=!!z&&is(!1),as=!!z&&is(!0),ss=g(function(e){var t=Yn(e);return t&&t.innerHTML}),cs=wn.prototype.$mount;return wn.prototype.$mount=function(e,t){if((e=e&&Yn(e))===document.body||e===document.documentElement)return this;var n=this.$options;if(!n.render){var r=n.template;if(r)if("string"==typeof r)"#"===r.charAt(0)&&(r=ss(r));else{if(!r.nodeType)return this;r=r.innerHTML}else e&&(r=function(e){if(e.outerHTML)return e.outerHTML;var t=document.createElement("div");return t.appendChild(e.cloneNode(!0)),t.innerHTML}(e));if(r){var i=rs(r,{outputSourceRange:!1,shouldDecodeNewlines:os,shouldDecodeNewlinesForHref:as,delimiters:n.delimiters,comments:n.comments},this),o=i.render,a=i.staticRenderFns;n.render=o,n.staticRenderFns=a}}return cs.call(this,e,t)},wn.compile=rs,wn});
download-manager.php CHANGED
@@ -2,9 +2,9 @@
2
  /*
3
  Plugin Name: Download Manager
4
  Plugin URI: https://www.wpdownloadmanager.com/purchases/
5
- Description: Manage, Protect and Track File Downloads from your WordPress site
6
  Author: W3 Eden
7
- Version: 2.9.99
8
  Author URI: https://www.wpdownloadmanager.com/
9
  Text Domain: download-manager
10
  Domain Path: /languages
@@ -68,10 +68,11 @@ ini_set('upload_tmp_dir',UPLOAD_DIR.'/cache/');
68
  class WordPressDownloadManager{
69
 
70
  var $apply;
 
71
 
72
  function __construct(){
73
 
74
- define('WPDM_Version','2.9.99');
75
 
76
  register_activation_hook(__FILE__, array($this, 'Install'));
77
 
@@ -89,11 +90,12 @@ class WordPressDownloadManager{
89
  include_once(dirname(__FILE__) . "/wpdm-functions.php");
90
 
91
  include(dirname(__FILE__)."/wpdm-core.php");
 
92
 
93
  new \WPDM\UserDashboard();
94
  $this->apply = new \WPDM\libs\Apply();
95
  new \WPDM\admin\WordPressDownloadManagerAdmin();
96
- new \WPDM\libs\ShortCodes();
97
 
98
  //do_action("wpdm_addon_init", WPDM_Version);
99
 
@@ -130,6 +132,17 @@ class WordPressDownloadManager{
130
  PRIMARY KEY (`id`)
131
  )";
132
 
 
 
 
 
 
 
 
 
 
 
 
133
 
134
  require_once(ABSPATH . 'wp-admin/includes/upgrade.php');
135
  foreach($sqls as $sql){
@@ -281,19 +294,6 @@ class WordPressDownloadManager{
281
  wp_enqueue_script('jquery');
282
  wp_enqueue_script('jquery-form');
283
 
284
- wp_localize_script('jquery', 'wpdm_url', array(
285
- 'home' => esc_url_raw(home_url('/')),
286
- 'site' => esc_url_raw(site_url('/')),
287
- 'ajax' => esc_url_raw(admin_url('/admin-ajax.php'))
288
- ));
289
-
290
- $wpdm_asset = array(
291
- 'spinner' => '<i class="fas fa-sun fa-spin"></i>'
292
- );
293
- $this->asset = $wpdm_asset;
294
- $wpdm_asset = apply_filters("wpdm_js_vars", $wpdm_asset);
295
- wp_localize_script('jquery', 'wpdm_asset', $wpdm_asset);
296
-
297
  $wpdmss = maybe_unserialize(get_option('__wpdm_disable_scripts', array()));
298
 
299
  //if((is_object($post) && has_shortcode($post->post_content,'wpdm_frontend')) || get_post_type()=='wpdmpro' )
@@ -330,7 +330,24 @@ class WordPressDownloadManager{
330
  wp_enqueue_script('wpdm-bootstrap' );
331
  }
332
 
333
- wp_enqueue_script('frontjs', WPDM_BASE_URL . 'assets/js/front.js', array('jquery'));
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
334
 
335
  wp_enqueue_script('jquery-choosen', WPDM_BASE_URL . 'assets/js/chosen.jquery.min.js', array('jquery'));
336
  //wp_enqueue_style('choosen-css', plugins_url('/download-manager/assets/css/chosen.css'), 999999);
2
  /*
3
  Plugin Name: Download Manager
4
  Plugin URI: https://www.wpdownloadmanager.com/purchases/
5
+ Description: Manage, Protect and Track file downloads, and sell digital products from your WordPress site. A complete digital asset management solution.
6
  Author: W3 Eden
7
+ Version: 3.0.4
8
  Author URI: https://www.wpdownloadmanager.com/
9
  Text Domain: download-manager
10
  Domain Path: /languages
68
  class WordPressDownloadManager{
69
 
70
  var $apply;
71
+ public $shortCode;
72
 
73
  function __construct(){
74
 
75
+ define('WPDM_Version','3.0.4');
76
 
77
  register_activation_hook(__FILE__, array($this, 'Install'));
78
 
90
  include_once(dirname(__FILE__) . "/wpdm-functions.php");
91
 
92
  include(dirname(__FILE__)."/wpdm-core.php");
93
+ include(dirname(__FILE__)."/libs/class.AssetManager.php");
94
 
95
  new \WPDM\UserDashboard();
96
  $this->apply = new \WPDM\libs\Apply();
97
  new \WPDM\admin\WordPressDownloadManagerAdmin();
98
+ $this->shortCode = new \WPDM\libs\ShortCodes();
99
 
100
  //do_action("wpdm_addon_init", WPDM_Version);
101
 
132
  PRIMARY KEY (`id`)
133
  )";
134
 
135
+ $sqls[] = "CREATE TABLE IF NOT EXISTS `{$wpdb->prefix}ahm_assets` (
136
+ `ID` bigint(20) NOT NULL AUTO_INCREMENT,
137
+ `path` text NOT NULL,
138
+ `owner` int(11) NOT NULL,
139
+ `activities` text NOT NULL,
140
+ `comments` text NOT NULL,
141
+ `access` text NOT NULL,
142
+ `metadata` text NOT NULL,
143
+ PRIMARY KEY (`ID`)
144
+ )";
145
+
146
 
147
  require_once(ABSPATH . 'wp-admin/includes/upgrade.php');
148
  foreach($sqls as $sql){
294
  wp_enqueue_script('jquery');
295
  wp_enqueue_script('jquery-form');
296
 
 
 
 
 
 
 
 
 
 
 
 
 
 
297
  $wpdmss = maybe_unserialize(get_option('__wpdm_disable_scripts', array()));
298
 
299
  //if((is_object($post) && has_shortcode($post->post_content,'wpdm_frontend')) || get_post_type()=='wpdmpro' )
330
  wp_enqueue_script('wpdm-bootstrap' );
331
  }
332
 
333
+ wp_register_script('frontjs', plugins_url('/download-manager/assets/js/front.js'), array('jquery'));
334
+
335
+ $wpdm_asset = array(
336
+ 'spinner' => '<i class="fas fa-sun fa-spin"></i>'
337
+ );
338
+ $this->asset = $wpdm_asset;
339
+ $wpdm_asset = apply_filters("wpdm_js_vars", $wpdm_asset);
340
+
341
+
342
+ wp_localize_script('frontjs', 'wpdm_url', array(
343
+ 'home' => esc_url_raw(home_url('/')),
344
+ 'site' => esc_url_raw(site_url('/')),
345
+ 'ajax' => esc_url_raw(admin_url('/admin-ajax.php'))
346
+ ));
347
+
348
+ wp_localize_script('frontjs', 'wpdm_asset', $wpdm_asset);
349
+
350
+ wp_enqueue_script('frontjs');
351
 
352
  wp_enqueue_script('jquery-choosen', WPDM_BASE_URL . 'assets/js/chosen.jquery.min.js', array('jquery'));
353
  //wp_enqueue_style('choosen-css', plugins_url('/download-manager/assets/css/chosen.css'), 999999);
languages/download-manager-es_ES.mo CHANGED
Binary file
languages/download-manager-es_ES.po CHANGED
@@ -1,7 +1,7 @@
1
  msgid ""
2
  msgstr ""
3
  "Project-Id-Version: Download Manager\n"
4
- "POT-Creation-Date: 2019-06-23 17:47+0600\n"
5
  "PO-Revision-Date: \n"
6
  "Last-Translator: \n"
7
  "Language-Team: \n"
@@ -63,11 +63,11 @@ msgstr ""
63
  "categoría"
64
 
65
  #: admin/menus/class.Categories.php:110 admin/menus/class.Categories.php:215
66
- #: admin/tpls/metaboxes/package-settings.php:67
67
  msgid "All Visitors"
68
  msgstr "Todos los visitantes"
69
 
70
- #: admin/menus/class.Packages.php:194
71
  msgid "Direct Download"
72
  msgstr "Descarga directa"
73
 
@@ -79,15 +79,15 @@ msgstr "Configuraciones &lsaquo; Gestor de descargas"
79
  msgid "Settings"
80
  msgstr "Ajustes"
81
 
82
- #: admin/menus/class.Settings.php:114 admin/menus/class.Settings.php:142
83
- #: admin/menus/class.Settings.php:161 admin/menus/class.Settings.php:217
84
- #: admin/menus/class.Settings.php:233
85
  msgid "Security token is expired! Refresh the page and try again."
86
  msgstr ""
87
  "¡ El token de seguridad ha caducado! Actualice la página e inténtelo de "
88
  "nuevo."
89
 
90
- #: admin/menus/class.Settings.php:305
91
  msgid "Privacy Settings Saved Successfully"
92
  msgstr "Configuración de privacidad guardada correctamente"
93
 
@@ -112,7 +112,7 @@ msgstr "Configuraciones &lsaquo; Gestor de descargas"
112
  msgid "Templates"
113
  msgstr "Plantilla de página:"
114
 
115
- #: admin/menus/class.Templates.php:138
116
  msgid ""
117
  "No package found! Please create at least 1 package to see template preview"
118
  msgstr ""
@@ -192,9 +192,9 @@ msgstr "nombre del producto"
192
  msgid "From Email"
193
  msgstr "Email"
194
 
195
- #: admin/tpls/email-template-editor.php:93 admin/tpls/templates.php:184
196
- #: admin/tpls/templates.php:342 tpls/user-dashboard/edit-profile.php:51
197
- #: tpls/wpdm-edit-user-profile.php:51
198
  #, fuzzy
199
  #| msgid "Save Settings"
200
  msgid "Save Changes"
@@ -230,7 +230,7 @@ msgstr ""
230
  msgid "Emails"
231
  msgstr "Email"
232
 
233
- #: admin/tpls/emails-template.php:23 admin/tpls/templates.php:104
234
  #, fuzzy
235
  #| msgid "General Email Template"
236
  msgid "Email Template"
@@ -240,49 +240,50 @@ msgstr "Plantilla general de correo electrónico"
240
  msgid "attached file is missing/deleted"
241
  msgstr "el archivo adjunto falta o se ha borrado"
242
 
243
- #: admin/tpls/metaboxes/attach-file.php:30
244
  msgid "No file uploaded yet!"
245
  msgstr "Aún no se ha subido ningún archivo!"
246
 
247
- #: admin/tpls/metaboxes/attach-file.php:36
248
  msgid "Upload"
249
  msgstr "Subir"
250
 
251
- #: admin/tpls/metaboxes/attach-file.php:38 libs/class.FileList.php:305
252
  msgid "Browse"
253
  msgstr "Buscar"
254
 
255
- #: admin/tpls/metaboxes/attach-file.php:40
256
  msgid "URL"
257
  msgstr "URL"
258
 
259
- #: admin/tpls/metaboxes/attach-file.php:47
260
  #, fuzzy
261
  #| msgid "Drop files here"
262
  msgid "Drop file here"
263
  msgstr "Soltar archivos aquí"
264
 
265
- #: admin/tpls/metaboxes/attach-file.php:69 wpdm-functions.php:1403
 
266
  msgid "Allowed Files"
267
  msgstr "Archivos permitidos"
268
 
269
- #: admin/tpls/metaboxes/attach-file.php:146
270
  msgid "Invalid File Type!"
271
  msgstr "¡Tipo de archivo invalido!"
272
 
273
- #: admin/tpls/metaboxes/attach-file.php:148
274
  msgid "Unauthorized Access!"
275
  msgstr "¡Acceso no autorizado!"
276
 
277
- #: admin/tpls/metaboxes/attach-file.php:152
278
  msgid "Delete Current File"
279
  msgstr "Eliminar archivo actual"
280
 
281
- #: admin/tpls/metaboxes/attach-file.php:196 admin/tpls/templates.php:364
282
  msgid "Are you sure?"
283
  msgstr "¿Estás seguro?"
284
 
285
- #: admin/tpls/metaboxes/attach-file.php:198
286
  msgid ""
287
  "<div class=\"w3eden\"><div class=\"text-danger\"><i class=\"fa fa-check-"
288
  "circle\"></i> Removed!</div></div>"
@@ -466,10 +467,10 @@ msgstr "Último (v)"
466
  #: libs/class.Package.php:646 libs/class.Package.php:671
467
  #: libs/class.Package.php:738 libs/class.Package.php:821
468
  #: libs/class.Package.php:847 libs/class.Package.php:874
469
- #: libs/class.Package.php:1244 libs/class.PackageLocks.php:59
470
  #: libs/class.PackageLocks.php:96 tpls/lock-options-iframe.php:243
471
- #: tpls/wpdm-all-downloads.php:158 wpdm-functions.php:103
472
- #: wpdm-functions.php:128 wpdm-functions.php:194
473
  msgid "Download"
474
  msgstr "Descargar"
475
 
@@ -896,133 +897,133 @@ msgstr ""
896
  msgid "Edit"
897
  msgstr "Editar archivo"
898
 
899
- #: admin/tpls/templates.php:121 admin/tpls/templates.php:122
900
  #, fuzzy
901
  #| msgid "Icon URL"
902
  msgid "Logo URL"
903
  msgstr "URL del icono"
904
 
905
- #: admin/tpls/templates.php:125 admin/tpls/templates.php:126
906
  msgid "Banner/Background Image URL"
907
  msgstr ""
908
 
909
- #: admin/tpls/templates.php:137
910
  msgid "Footer Text"
911
  msgstr ""
912
 
913
- #: admin/tpls/templates.php:141
914
  msgid "Facebook Page URL"
915
  msgstr ""
916
 
917
- #: admin/tpls/templates.php:145
918
  #, fuzzy
919
  #| msgid "Edit Profile"
920
  msgid "Twitter Profile URL"
921
  msgstr "Editar perfil"
922
 
923
- #: admin/tpls/templates.php:149
924
  msgid "Youtube Profile URL"
925
  msgstr ""
926
 
927
- #: admin/tpls/templates.php:199
928
  msgid "Template Preview"
929
  msgstr ""
930
 
931
- #: admin/tpls/templates.php:205
932
  msgid ""
933
  "This is a preview, original template color scheme may look little different, "
934
  "but structure will be same"
935
  msgstr ""
936
 
937
- #: admin/tpls/templates.php:338
938
  #, fuzzy
939
  #| msgid "Loading..."
940
  msgid "Saving..."
941
  msgstr "Cargando..."
942
 
943
- #: download-manager.php:160 download-manager.php:172 wpdm-functions.php:787
944
- #: wpdm-functions.php:806
945
  msgid "Downloads"
946
  msgstr "Descargas"
947
 
948
- #: download-manager.php:161 libs/class.FileList.php:67
949
  msgid "File"
950
  msgstr "Expediente"
951
 
952
- #: download-manager.php:162
953
  msgid "Add New"
954
  msgstr "Añadir nuevo"
955
 
956
- #: download-manager.php:163
957
  msgid "Add New File"
958
  msgstr "Agregar nuevo archivo"
959
 
960
- #: download-manager.php:164
961
  msgid "Edit File"
962
  msgstr "Editar archivo"
963
 
964
- #: download-manager.php:165
965
  msgid "New File"
966
  msgstr "Archivo nuevo"
967
 
968
- #: download-manager.php:166
969
  msgid "All Files"
970
  msgstr "Todos los archivos"
971
 
972
- #: download-manager.php:167
973
  msgid "View File"
974
  msgstr "Ver archivo"
975
 
976
- #: download-manager.php:168
977
  msgid "Search Files"
978
  msgstr "Buscar archivos"
979
 
980
- #: download-manager.php:169
981
  msgid "No File Found"
982
  msgstr "Archivo no encontrado"
983
 
984
- #: download-manager.php:170
985
  msgid "No Files found in Trash"
986
  msgstr "No se encontraron archivos en la Papelera"
987
 
988
- #: download-manager.php:201 download-manager.php:211
989
- #: tpls/wpdm-all-downloads.php:156
990
  msgid "Categories"
991
  msgstr "Categorías"
992
 
993
- #: download-manager.php:202
994
  msgid "Category"
995
  msgstr "Categoría"
996
 
997
- #: download-manager.php:203
998
  msgid "Search Categories"
999
  msgstr "Buscar Categorías"
1000
 
1001
- #: download-manager.php:204
1002
  msgid "All Categories"
1003
  msgstr "Todas las categorias"
1004
 
1005
- #: download-manager.php:205
1006
  msgid "Parent Category"
1007
  msgstr "Categoría padre"
1008
 
1009
- #: download-manager.php:206
1010
  msgid "Parent Category:"
1011
  msgstr "Categoría padre:"
1012
 
1013
- #: download-manager.php:207
1014
  msgid "Edit Category"
1015
  msgstr "Editar categoria"
1016
 
1017
- #: download-manager.php:208
1018
  msgid "Update Category"
1019
  msgstr "Actualizar categoría"
1020
 
1021
- #: download-manager.php:209
1022
  msgid "Add New Category"
1023
  msgstr "Añadir nueva categoria"
1024
 
1025
- #: download-manager.php:210
1026
  msgid "New Category Name"
1027
  msgstr "Nombre de la nueva categoría"
1028
 
@@ -1119,6 +1120,93 @@ msgstr "Enlace de descarga no válido."
1119
  msgid "Price"
1120
  msgstr "Precio"
1121
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1122
  #: libs/class.Email.php:20
1123
  msgid "General Email Template"
1124
  msgstr "Plantilla general de correo electrónico"
@@ -1193,7 +1281,7 @@ msgid "Thumbnail"
1193
  msgstr "Miniatura"
1194
 
1195
  #: libs/class.Package.php:164 libs/class.Package.php:655
1196
- #: libs/class.Package.php:856 wpdm-functions.php:112 wpdm-start-download.php:23
1197
  msgid "Download Limit Exceeded"
1198
  msgstr "Límite de descarga excedido"
1199
 
@@ -1252,7 +1340,7 @@ msgid "Enter Correct Password to Download"
1252
  msgstr "Introduzca la contraseña correcta para descargar"
1253
 
1254
  #: libs/class.PackageLocks.php:32 libs/class.PackageLocks.php:48
1255
- #: tpls/wpdm-all-downloads.php:119
1256
  msgid "Processing..."
1257
  msgstr "Procesando..."
1258
 
@@ -1264,13 +1352,13 @@ msgstr "Introducir la contraseña"
1264
  msgid "Submit"
1265
  msgstr "Enviar"
1266
 
1267
- #: libs/class.Pagination.php:50 tpls/wpdm-all-downloads.php:125
1268
- #: tpls/wpdm-all-downloads.php:331 wpdm-functions.php:1791
1269
  msgid "Previous"
1270
  msgstr "Anterior"
1271
 
1272
- #: libs/class.Pagination.php:51 tpls/wpdm-all-downloads.php:124
1273
- #: tpls/wpdm-all-downloads.php:332 wpdm-functions.php:1792
1274
  msgid "Next"
1275
  msgstr "Siguiente"
1276
 
@@ -1302,6 +1390,68 @@ msgstr "¡No permitido!"
1302
  msgid "Add file(s) from server"
1303
  msgstr "Añadir archivo (s) desde el servidor"
1304
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1305
  #: modules/widgets.php:35
1306
  msgid "WPDM Affiliate ID:"
1307
  msgstr "ID de afiliado de WPDM:"
@@ -1331,14 +1481,10 @@ msgstr "Descargas totales"
1331
  msgid "Total Views"
1332
  msgstr "Vistas totales"
1333
 
1334
- #: modules/widgets.php:360 modules/widgets.php:444 wpdm-functions.php:807
1335
  msgid "Publish Date"
1336
  msgstr "Fecha de publicación"
1337
 
1338
- #: modules/widgets.php:361
1339
- msgid "Last Updated"
1340
- msgstr "Última actualización"
1341
-
1342
  #: modules/widgets.php:362
1343
  msgid "Size"
1344
  msgstr "Tamaño"
@@ -1347,22 +1493,14 @@ msgstr "Tamaño"
1347
  msgid "Fields to Show:"
1348
  msgstr "Campos para mostrar:"
1349
 
1350
- #: modules/widgets.php:442
1351
- msgid "Download Count"
1352
- msgstr "Descargar Conde"
1353
-
1354
  #: modules/widgets.php:443
1355
  msgid "View Count"
1356
  msgstr "Conteo de visitas"
1357
 
1358
- #: modules/widgets.php:445 wpdm-functions.php:808
1359
  msgid "Update Date"
1360
  msgstr "Fecha de actualización"
1361
 
1362
- #: modules/widgets.php:446
1363
- msgid "File Size"
1364
- msgstr "Tamaño del archivo"
1365
-
1366
  #: modules/widgets.php:447
1367
  msgid "Download Link"
1368
  msgstr "Enlace de descarga"
@@ -1391,6 +1529,44 @@ msgstr "Ya se ha autentificado."
1391
  msgid "Dashboard"
1392
  msgstr "Página del tablero"
1393
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1394
  #: tpls/lock-options-iframe.php:243
1395
  msgid "Buy"
1396
  msgstr "Comprar"
@@ -1483,86 +1659,88 @@ msgstr "Descargas Recomendadas"
1483
  msgid "Last 5 Downloads"
1484
  msgstr "Últimas 5 descargas"
1485
 
1486
- #: tpls/wpdm-all-downloads.php:110
1487
  msgid "Display _MENU_ downloads per page"
1488
  msgstr "Mostrar _MENU_ descargas por página"
1489
 
1490
- #: tpls/wpdm-all-downloads.php:111
1491
  msgid "Nothing _START_ to - sorry"
1492
  msgstr "Nada _START_ para - lo siento"
1493
 
1494
- #: tpls/wpdm-all-downloads.php:112
1495
  msgid "Showing _START_ to _END_ of _TOTAL_ downloads"
1496
  msgstr "Mostrando _START_ a _END_ de _TOTAL_ descargas"
1497
 
1498
- #: tpls/wpdm-all-downloads.php:113
1499
  msgid "No downloads available"
1500
  msgstr "No hay descargas disponibles"
1501
 
1502
- #: tpls/wpdm-all-downloads.php:114
1503
  msgid "(filtered from _MAX_ total downloads)"
1504
  msgstr "(filtrado de _MAX_ descargas totales)"
1505
 
1506
- #: tpls/wpdm-all-downloads.php:115
1507
  msgid "No data available in table"
1508
  msgstr "No hay datos disponibles en la tabla"
1509
 
1510
- #: tpls/wpdm-all-downloads.php:118
1511
  msgid "Loading..."
1512
  msgstr "Cargando..."
1513
 
1514
- #: tpls/wpdm-all-downloads.php:120
1515
  msgid "Search:"
1516
  msgstr "Buscar:"
1517
 
1518
- #: tpls/wpdm-all-downloads.php:122
1519
  msgid "First"
1520
  msgstr "primero"
1521
 
1522
- #: tpls/wpdm-all-downloads.php:123
1523
  msgid "Last"
1524
  msgstr "Último"
1525
 
1526
- #: tpls/wpdm-all-downloads.php:128
1527
  msgid "activate to sort column ascending"
1528
  msgstr "activar para ordenar la columna ascendente"
1529
 
1530
- #: tpls/wpdm-all-downloads.php:129
1531
  msgid "activate to sort column descending"
1532
  msgstr "activar para ordenar la columna descendente"
1533
 
1534
- #: tpls/wpdm-all-downloads.php:133
1535
  msgid "All"
1536
  msgstr "Todos"
1537
 
1538
- #: tpls/wpdm-all-downloads.php:157
1539
- msgid "Create Date"
1540
- msgstr "Fecha de Creación"
1541
-
1542
- #: tpls/wpdm-all-downloads.php:258
1543
  msgid "file(s)"
1544
  msgstr "archivo (s)"
1545
 
1546
- #: tpls/wpdm-all-downloads.php:264
1547
  msgid "downloads"
1548
  msgstr "descargas"
1549
 
1550
- #: tpls/wpdm-all-downloads.php:264
1551
  msgid "download"
1552
  msgstr "descargar"
1553
 
1554
- #: tpls/wpdm-all-downloads.php:270
1555
  msgid "views"
1556
  msgstr "puntos de vista"
1557
 
1558
- #: tpls/wpdm-all-downloads.php:270
1559
  msgid "view"
1560
  msgstr "ver"
1561
 
1562
- #: tpls/wpdm-all-downloads.php:310
1563
  msgid "No Packages Found"
1564
  msgstr "No se encontraron paquetes"
1565
 
 
 
 
 
 
 
1566
  #: tpls/wpdm-generate-password.php:17
1567
  msgid "Select Options"
1568
  msgstr "Seleccione opciones"
@@ -1654,10 +1832,6 @@ msgstr ""
1654
  msgid "Reset Password"
1655
  msgstr "Contraseñas generadas"
1656
 
1657
- #: tpls/wpdm-login-form.php:159
1658
- msgid "Home"
1659
- msgstr ""
1660
-
1661
  #: tpls/wpdm-login-form.php:161
1662
  #, fuzzy
1663
  #| msgid "Register Page"
@@ -1791,45 +1965,45 @@ msgstr "¡Contraseña incorrecta! Inténtalo de nuevo."
1791
  msgid "Password usages limit exceeded"
1792
  msgstr "Límite de uso de contraseña excedido"
1793
 
1794
- #: wpdm-functions.php:787
1795
  msgid "Sub-Categories"
1796
  msgstr "Subcategorias"
1797
 
1798
- #: wpdm-functions.php:805
1799
  msgid "Title"
1800
  msgstr "Título"
1801
 
1802
- #: wpdm-functions.php:809
1803
  msgid "Asc"
1804
  msgstr "Asc"
1805
 
1806
- #: wpdm-functions.php:810
1807
  msgid "Desc"
1808
  msgstr "Desc"
1809
 
1810
- #: wpdm-functions.php:811
1811
  msgid "Search"
1812
  msgstr "Buscar"
1813
 
1814
- #: wpdm-functions.php:812
1815
  msgid "Order"
1816
  msgstr "Orden"
1817
 
1818
- #: wpdm-functions.php:813
1819
  msgid "Order By"
1820
  msgstr "Ordenar por"
1821
 
1822
- #: wpdm-functions.php:1360
1823
  #, fuzzy
1824
  #| msgid "Select category"
1825
  msgid "Select Image"
1826
  msgstr "Selecciona una categoría"
1827
 
1828
- #: wpdm-functions.php:1385 wpdm-functions.php:1479
1829
  msgid "SELECT IMAGE"
1830
  msgstr ""
1831
 
1832
- #: wpdm-functions.php:1460
1833
  #, fuzzy
1834
  #| msgid "Upload"
1835
  msgid "Uploading"
@@ -1839,19 +2013,19 @@ msgstr "Subir"
1839
  msgid "Your IP address is blocked!"
1840
  msgstr "Su dirección IP está bloqueada!"
1841
 
1842
- #: wpdm-start-download.php:21
1843
  msgid "Package is not available!"
1844
  msgstr "¡El paquete no está disponible!"
1845
 
1846
- #: wpdm-start-download.php:49
1847
  msgid "Sorry! Download is not available yet."
1848
  msgstr "¡Lo siento! La descarga no está disponible todavía."
1849
 
1850
- #: wpdm-start-download.php:66
1851
  msgid "Please activate \"zlib\" in your server"
1852
  msgstr "Por favor active \"zlib\" en su servidor"
1853
 
1854
- #: wpdm-start-download.php:102
1855
  msgid "No file found!"
1856
  msgstr "¡Archivo no encontrado!"
1857
 
1
  msgid ""
2
  msgstr ""
3
  "Project-Id-Version: Download Manager\n"
4
+ "POT-Creation-Date: 2019-09-23 09:52+0600\n"
5
  "PO-Revision-Date: \n"
6
  "Last-Translator: \n"
7
  "Language-Team: \n"
63
  "categoría"
64
 
65
  #: admin/menus/class.Categories.php:110 admin/menus/class.Categories.php:215
66
+ #: admin/tpls/metaboxes/package-settings.php:67 tpls/asset-manager-ui.php:825
67
  msgid "All Visitors"
68
  msgstr "Todos los visitantes"
69
 
70
+ #: admin/menus/class.Packages.php:201
71
  msgid "Direct Download"
72
  msgstr "Descarga directa"
73
 
79
  msgid "Settings"
80
  msgstr "Ajustes"
81
 
82
+ #: admin/menus/class.Settings.php:137 admin/menus/class.Settings.php:165
83
+ #: admin/menus/class.Settings.php:184 admin/menus/class.Settings.php:240
84
+ #: admin/menus/class.Settings.php:256
85
  msgid "Security token is expired! Refresh the page and try again."
86
  msgstr ""
87
  "¡ El token de seguridad ha caducado! Actualice la página e inténtelo de "
88
  "nuevo."
89
 
90
+ #: admin/menus/class.Settings.php:327
91
  msgid "Privacy Settings Saved Successfully"
92
  msgstr "Configuración de privacidad guardada correctamente"
93
 
112
  msgid "Templates"
113
  msgstr "Plantilla de página:"
114
 
115
+ #: admin/menus/class.Templates.php:142
116
  msgid ""
117
  "No package found! Please create at least 1 package to see template preview"
118
  msgstr ""
192
  msgid "From Email"
193
  msgstr "Email"
194
 
195
+ #: admin/tpls/email-template-editor.php:93 admin/tpls/templates.php:185
196
+ #: admin/tpls/templates.php:343 tpls/asset-manager-ui.php:550
197
+ #: tpls/user-dashboard/edit-profile.php:51 tpls/wpdm-edit-user-profile.php:51
198
  #, fuzzy
199
  #| msgid "Save Settings"
200
  msgid "Save Changes"
230
  msgid "Emails"
231
  msgstr "Email"
232
 
233
+ #: admin/tpls/emails-template.php:23 admin/tpls/templates.php:105
234
  #, fuzzy
235
  #| msgid "General Email Template"
236
  msgid "Email Template"
240
  msgid "attached file is missing/deleted"
241
  msgstr "el archivo adjunto falta o se ha borrado"
242
 
243
+ #: admin/tpls/metaboxes/attach-file.php:35
244
  msgid "No file uploaded yet!"
245
  msgstr "Aún no se ha subido ningún archivo!"
246
 
247
+ #: admin/tpls/metaboxes/attach-file.php:41
248
  msgid "Upload"
249
  msgstr "Subir"
250
 
251
+ #: admin/tpls/metaboxes/attach-file.php:43 libs/class.FileList.php:305
252
  msgid "Browse"
253
  msgstr "Buscar"
254
 
255
+ #: admin/tpls/metaboxes/attach-file.php:45
256
  msgid "URL"
257
  msgstr "URL"
258
 
259
+ #: admin/tpls/metaboxes/attach-file.php:52
260
  #, fuzzy
261
  #| msgid "Drop files here"
262
  msgid "Drop file here"
263
  msgstr "Soltar archivos aquí"
264
 
265
+ #: admin/tpls/metaboxes/attach-file.php:74 tpls/asset-manager-ui.php:738
266
+ #: wpdm-functions.php:1379
267
  msgid "Allowed Files"
268
  msgstr "Archivos permitidos"
269
 
270
+ #: admin/tpls/metaboxes/attach-file.php:151
271
  msgid "Invalid File Type!"
272
  msgstr "¡Tipo de archivo invalido!"
273
 
274
+ #: admin/tpls/metaboxes/attach-file.php:153
275
  msgid "Unauthorized Access!"
276
  msgstr "¡Acceso no autorizado!"
277
 
278
+ #: admin/tpls/metaboxes/attach-file.php:157
279
  msgid "Delete Current File"
280
  msgstr "Eliminar archivo actual"
281
 
282
+ #: admin/tpls/metaboxes/attach-file.php:201 admin/tpls/templates.php:365
283
  msgid "Are you sure?"
284
  msgstr "¿Estás seguro?"
285
 
286
+ #: admin/tpls/metaboxes/attach-file.php:203
287
  msgid ""
288
  "<div class=\"w3eden\"><div class=\"text-danger\"><i class=\"fa fa-check-"
289
  "circle\"></i> Removed!</div></div>"
467
  #: libs/class.Package.php:646 libs/class.Package.php:671
468
  #: libs/class.Package.php:738 libs/class.Package.php:821
469
  #: libs/class.Package.php:847 libs/class.Package.php:874
470
+ #: libs/class.Package.php:1246 libs/class.PackageLocks.php:59
471
  #: libs/class.PackageLocks.php:96 tpls/lock-options-iframe.php:243
472
+ #: tpls/wpdm-all-downloads.php:160 tpls/wpdm-asset.php:21
473
+ #: wpdm-functions.php:103 wpdm-functions.php:128 wpdm-functions.php:194
474
  msgid "Download"
475
  msgstr "Descargar"
476
 
897
  msgid "Edit"
898
  msgstr "Editar archivo"
899
 
900
+ #: admin/tpls/templates.php:122 admin/tpls/templates.php:123
901
  #, fuzzy
902
  #| msgid "Icon URL"
903
  msgid "Logo URL"
904
  msgstr "URL del icono"
905
 
906
+ #: admin/tpls/templates.php:126 admin/tpls/templates.php:127
907
  msgid "Banner/Background Image URL"
908
  msgstr ""
909
 
910
+ #: admin/tpls/templates.php:138
911
  msgid "Footer Text"
912
  msgstr ""
913
 
914
+ #: admin/tpls/templates.php:142
915
  msgid "Facebook Page URL"
916
  msgstr ""
917
 
918
+ #: admin/tpls/templates.php:146
919
  #, fuzzy
920
  #| msgid "Edit Profile"
921
  msgid "Twitter Profile URL"
922
  msgstr "Editar perfil"
923
 
924
+ #: admin/tpls/templates.php:150
925
  msgid "Youtube Profile URL"
926
  msgstr ""
927
 
928
+ #: admin/tpls/templates.php:200
929
  msgid "Template Preview"
930
  msgstr ""
931
 
932
+ #: admin/tpls/templates.php:206
933
  msgid ""
934
  "This is a preview, original template color scheme may look little different, "
935
  "but structure will be same"
936
  msgstr ""
937
 
938
+ #: admin/tpls/templates.php:339
939
  #, fuzzy
940
  #| msgid "Loading..."
941
  msgid "Saving..."
942
  msgstr "Cargando..."
943
 
944
+ #: download-manager.php:173 download-manager.php:185 wpdm-functions.php:763
945
+ #: wpdm-functions.php:782
946
  msgid "Downloads"
947
  msgstr "Descargas"
948
 
949
+ #: download-manager.php:174 libs/class.FileList.php:67
950
  msgid "File"
951
  msgstr "Expediente"
952
 
953
+ #: download-manager.php:175
954
  msgid "Add New"
955
  msgstr "Añadir nuevo"
956
 
957
+ #: download-manager.php:176
958
  msgid "Add New File"
959
  msgstr "Agregar nuevo archivo"
960
 
961
+ #: download-manager.php:177
962
  msgid "Edit File"
963
  msgstr "Editar archivo"
964
 
965
+ #: download-manager.php:178
966
  msgid "New File"
967
  msgstr "Archivo nuevo"
968
 
969
+ #: download-manager.php:179
970
  msgid "All Files"
971
  msgstr "Todos los archivos"
972
 
973
+ #: download-manager.php:180
974
  msgid "View File"
975
  msgstr "Ver archivo"
976
 
977
+ #: download-manager.php:181
978
  msgid "Search Files"
979
  msgstr "Buscar archivos"
980
 
981
+ #: download-manager.php:182
982
  msgid "No File Found"
983
  msgstr "Archivo no encontrado"
984
 
985
+ #: download-manager.php:183
986
  msgid "No Files found in Trash"
987
  msgstr "No se encontraron archivos en la Papelera"
988
 
989
+ #: download-manager.php:214 download-manager.php:224
990
+ #: tpls/wpdm-all-downloads.php:158
991
  msgid "Categories"
992
  msgstr "Categorías"
993
 
994
+ #: download-manager.php:215
995
  msgid "Category"
996
  msgstr "Categoría"
997
 
998
+ #: download-manager.php:216
999
  msgid "Search Categories"
1000
  msgstr "Buscar Categorías"
1001
 
1002
+ #: download-manager.php:217
1003
  msgid "All Categories"
1004
  msgstr "Todas las categorias"
1005
 
1006
+ #: download-manager.php:218
1007
  msgid "Parent Category"
1008
  msgstr "Categoría padre"
1009
 
1010
+ #: download-manager.php:219
1011
  msgid "Parent Category:"
1012
  msgstr "Categoría padre:"
1013
 
1014
+ #: download-manager.php:220
1015
  msgid "Edit Category"
1016
  msgstr "Editar categoria"
1017
 
1018
+ #: download-manager.php:221
1019
  msgid "Update Category"
1020
  msgstr "Actualizar categoría"
1021
 
1022
+ #: download-manager.php:222
1023
  msgid "Add New Category"
1024
  msgstr "Añadir nueva categoria"
1025
 
1026
+ #: download-manager.php:223
1027
  msgid "New Category Name"
1028
  msgstr "Nombre de la nueva categoría"
1029
 
1120
  msgid "Price"
1121
  msgstr "Precio"
1122
 
1123
+ #: libs/class.AssetManager.php:114
1124
+ #, fuzzy
1125
+ #| msgid "Download link is expired or not valid. Please get new download link."
1126
+ msgid ""
1127
+ "Download link is expired! Go back and Refresh the page to regenerate "
1128
+ "download link"
1129
+ msgstr ""
1130
+ "El enlace de descarga ha caducado o no es válido. Por favor, obtenga el "
1131
+ "nuevo enlace de descarga."
1132
+
1133
+ #: libs/class.AssetManager.php:136
1134
+ msgid "Asset Manager"
1135
+ msgstr ""
1136
+
1137
+ #: libs/class.AssetManager.php:141 libs/class.AssetManager.php:155
1138
+ #: libs/class.AssetManager.php:171 libs/class.AssetManager.php:173
1139
+ #: libs/class.AssetManager.php:237 libs/class.AssetManager.php:239
1140
+ #: libs/class.AssetManager.php:255 libs/class.AssetManager.php:257
1141
+ #: libs/class.AssetManager.php:296 libs/class.AssetManager.php:313
1142
+ #: libs/class.AssetManager.php:315 libs/class.AssetManager.php:332
1143
+ #: libs/class.AssetManager.php:334 libs/class.AssetManager.php:348
1144
+ #: libs/class.AssetManager.php:350 libs/class.AssetManager.php:370
1145
+ #: libs/class.AssetManager.php:372
1146
+ msgid "Error! Session Expired. Try refreshing page."
1147
+ msgstr ""
1148
+
1149
+ #: libs/class.AssetManager.php:143 libs/class.AssetManager.php:157
1150
+ #: libs/class.AssetManager.php:298
1151
+ #, fuzzy
1152
+ #| msgid "Unauthorized Access!"
1153
+ msgid "Error! Unauthorized Access."
1154
+ msgstr "¡Acceso no autorizado!"
1155
+
1156
+ #: libs/class.AssetManager.php:147 libs/class.AssetManager.php:160
1157
+ #: libs/class.AssetManager.php:178 libs/class.AssetManager.php:243
1158
+ #: libs/class.AssetManager.php:260 libs/class.AssetManager.php:301
1159
+ #: libs/class.AssetManager.php:306 libs/class.AssetManager.php:320
1160
+ #: libs/class.AssetManager.php:468
1161
+ msgid "Error! Unauthorized Path."
1162
+ msgstr ""
1163
+
1164
+ #: libs/class.AssetManager.php:210 tpls/wpdm-login-form.php:159
1165
+ msgid "Home"
1166
+ msgstr ""
1167
+
1168
+ #: libs/class.AssetManager.php:357 libs/class.AssetManager.php:380
1169
+ #, fuzzy
1170
+ #| msgid "Page Template:"
1171
+ msgid "Invalid source path"
1172
+ msgstr "Plantilla de página:"
1173
+
1174
+ #: libs/class.AssetManager.php:358 libs/class.AssetManager.php:381
1175
+ msgid "Invalid destination path"
1176
+ msgstr ""
1177
+
1178
+ #: libs/class.AssetManager.php:366
1179
+ #, fuzzy
1180
+ #| msgid "Privacy Settings Saved Successfully"
1181
+ msgid "File moved successfully"
1182
+ msgstr "Configuración de privacidad guardada correctamente"
1183
+
1184
+ #: libs/class.AssetManager.php:384
1185
+ msgid "File copied successfully"
1186
+ msgstr ""
1187
+
1188
+ #: libs/class.AssetManager.php:427 libs/class.AssetManager.php:434
1189
+ msgid "Asset not found!"
1190
+ msgstr ""
1191
+
1192
+ #: libs/class.AssetManager.php:469
1193
+ msgid "Error! Invalid Destination Path."
1194
+ msgstr ""
1195
+
1196
+ #: libs/class.AssetManager.php:470
1197
+ #, fuzzy
1198
+ #| msgid "Please activate \"zlib\" in your server"
1199
+ msgid "Please activate \"zlib\" in your server to perform zip operations"
1200
+ msgstr "Por favor active \"zlib\" en su servidor"
1201
+
1202
+ #: libs/class.AssetManager.php:475
1203
+ msgid "Unzipped successfully."
1204
+ msgstr ""
1205
+
1206
+ #: libs/class.AssetManager.php:477
1207
+ msgid "Error! Couldn't open the zip file."
1208
+ msgstr ""
1209
+
1210
  #: libs/class.Email.php:20
1211
  msgid "General Email Template"
1212
  msgstr "Plantilla general de correo electrónico"
1281
  msgstr "Miniatura"
1282
 
1283
  #: libs/class.Package.php:164 libs/class.Package.php:655
1284
+ #: libs/class.Package.php:856 wpdm-functions.php:112 wpdm-start-download.php:24
1285
  msgid "Download Limit Exceeded"
1286
  msgstr "Límite de descarga excedido"
1287
 
1340
  msgstr "Introduzca la contraseña correcta para descargar"
1341
 
1342
  #: libs/class.PackageLocks.php:32 libs/class.PackageLocks.php:48
1343
+ #: tpls/wpdm-all-downloads.php:121
1344
  msgid "Processing..."
1345
  msgstr "Procesando..."
1346
 
1352
  msgid "Submit"
1353
  msgstr "Enviar"
1354
 
1355
+ #: libs/class.Pagination.php:50 tpls/wpdm-all-downloads.php:127
1356
+ #: tpls/wpdm-all-downloads.php:333 wpdm-functions.php:1767
1357
  msgid "Previous"
1358
  msgstr "Anterior"
1359
 
1360
+ #: libs/class.Pagination.php:51 tpls/wpdm-all-downloads.php:126
1361
+ #: tpls/wpdm-all-downloads.php:334 wpdm-functions.php:1768
1362
  msgid "Next"
1363
  msgstr "Siguiente"
1364
 
1390
  msgid "Add file(s) from server"
1391
  msgstr "Añadir archivo (s) desde el servidor"
1392
 
1393
+ #: modules/strings.php:10 modules/widgets.php:442
1394
+ msgid "Download Count"
1395
+ msgstr "Descargar Conde"
1396
+
1397
+ #: modules/strings.php:11
1398
+ #, fuzzy
1399
+ #| msgid "Version:"
1400
+ msgid "Version"
1401
+ msgstr "Versión:"
1402
+
1403
+ #: modules/strings.php:12 modules/strings.php:22
1404
+ msgid "Stock"
1405
+ msgstr ""
1406
+
1407
+ #: modules/strings.php:13 modules/widgets.php:446
1408
+ msgid "File Size"
1409
+ msgstr "Tamaño del archivo"
1410
+
1411
+ #: modules/strings.php:14
1412
+ #, fuzzy
1413
+ #| msgid "Invalid File Type!"
1414
+ msgid "File Type"
1415
+ msgstr "¡Tipo de archivo invalido!"
1416
+
1417
+ #: modules/strings.php:15
1418
+ #, fuzzy
1419
+ #| msgid "View Count"
1420
+ msgid "File Count"
1421
+ msgstr "Conteo de visitas"
1422
+
1423
+ #: modules/strings.php:16 tpls/wpdm-all-downloads.php:159
1424
+ msgid "Create Date"
1425
+ msgstr "Fecha de Creación"
1426
+
1427
+ #: modules/strings.php:17 modules/widgets.php:361
1428
+ msgid "Last Updated"
1429
+ msgstr "Última actualización"
1430
+
1431
+ #: modules/strings.php:18
1432
+ #, fuzzy
1433
+ #| msgid "Version:"
1434
+ msgid "Description"
1435
+ msgstr "Versión:"
1436
+
1437
+ #: modules/strings.php:19
1438
+ #, fuzzy
1439
+ #| msgid "Package Name"
1440
+ msgid "Package Info"
1441
+ msgstr "Nombre del paquete"
1442
+
1443
+ #: modules/strings.php:20
1444
+ #, fuzzy
1445
+ #| msgid "Attach File"
1446
+ msgid "Attached Files"
1447
+ msgstr "Adjuntar archivo"
1448
+
1449
+ #: modules/strings.php:21
1450
+ #, fuzzy
1451
+ #| msgid "Total Views"
1452
+ msgid "Total Files"
1453
+ msgstr "Vistas totales"
1454
+
1455
  #: modules/widgets.php:35
1456
  msgid "WPDM Affiliate ID:"
1457
  msgstr "ID de afiliado de WPDM:"
1481
  msgid "Total Views"
1482
  msgstr "Vistas totales"
1483
 
1484
+ #: modules/widgets.php:360 modules/widgets.php:444 wpdm-functions.php:783
1485
  msgid "Publish Date"
1486
  msgstr "Fecha de publicación"
1487
 
 
 
 
 
1488
  #: modules/widgets.php:362
1489
  msgid "Size"
1490
  msgstr "Tamaño"
1493
  msgid "Fields to Show:"
1494
  msgstr "Campos para mostrar:"
1495
 
 
 
 
 
1496
  #: modules/widgets.php:443
1497
  msgid "View Count"
1498
  msgstr "Conteo de visitas"
1499
 
1500
+ #: modules/widgets.php:445 wpdm-functions.php:784
1501
  msgid "Update Date"
1502
  msgstr "Fecha de actualización"
1503
 
 
 
 
 
1504
  #: modules/widgets.php:447
1505
  msgid "Download Link"
1506
  msgstr "Enlace de descarga"
1529
  msgid "Dashboard"
1530
  msgstr "Página del tablero"
1531
 
1532
+ #: tpls/asset-manager-ui.php:500
1533
+ #, fuzzy
1534
+ #| msgid "New File"
1535
+ msgid "New Folder"
1536
+ msgstr "Archivo nuevo"
1537
+
1538
+ #: tpls/asset-manager-ui.php:502 tpls/asset-manager-ui.php:706
1539
+ #, fuzzy
1540
+ #| msgid "Upload"
1541
+ msgid "Upload File"
1542
+ msgstr "Subir"
1543
+
1544
+ #: tpls/asset-manager-ui.php:508
1545
+ msgid "Digital Asset Manager"
1546
+ msgstr ""
1547
+
1548
+ #: tpls/asset-manager-ui.php:611
1549
+ #, fuzzy
1550
+ #| msgid "Dashboard Page"
1551
+ msgid "Copy Shortcode"
1552
+ msgstr "Página del tablero"
1553
+
1554
+ #: tpls/asset-manager-ui.php:713
1555
+ #, fuzzy
1556
+ #| msgid "Drop files here"
1557
+ msgid "Drop files here"
1558
+ msgstr "Soltar archivos aquí"
1559
+
1560
+ #: tpls/asset-manager-ui.php:820
1561
+ msgid "Authorized User Groups:"
1562
+ msgstr ""
1563
+
1564
+ #: tpls/asset-manager-ui.php:842
1565
+ #, fuzzy
1566
+ #| msgid "Unauthorized Access!"
1567
+ msgid "Authorized Users:"
1568
+ msgstr "¡Acceso no autorizado!"
1569
+
1570
  #: tpls/lock-options-iframe.php:243
1571
  msgid "Buy"
1572
  msgstr "Comprar"
1659
  msgid "Last 5 Downloads"
1660
  msgstr "Últimas 5 descargas"
1661
 
1662
+ #: tpls/wpdm-all-downloads.php:112
1663
  msgid "Display _MENU_ downloads per page"
1664
  msgstr "Mostrar _MENU_ descargas por página"
1665
 
1666
+ #: tpls/wpdm-all-downloads.php:113
1667
  msgid "Nothing _START_ to - sorry"
1668
  msgstr "Nada _START_ para - lo siento"
1669
 
1670
+ #: tpls/wpdm-all-downloads.php:114
1671
  msgid "Showing _START_ to _END_ of _TOTAL_ downloads"
1672
  msgstr "Mostrando _START_ a _END_ de _TOTAL_ descargas"
1673
 
1674
+ #: tpls/wpdm-all-downloads.php:115
1675
  msgid "No downloads available"
1676
  msgstr "No hay descargas disponibles"
1677
 
1678
+ #: tpls/wpdm-all-downloads.php:116
1679
  msgid "(filtered from _MAX_ total downloads)"
1680
  msgstr "(filtrado de _MAX_ descargas totales)"
1681
 
1682
+ #: tpls/wpdm-all-downloads.php:117
1683
  msgid "No data available in table"
1684
  msgstr "No hay datos disponibles en la tabla"
1685
 
1686
+ #: tpls/wpdm-all-downloads.php:120
1687
  msgid "Loading..."
1688
  msgstr "Cargando..."
1689
 
1690
+ #: tpls/wpdm-all-downloads.php:122
1691
  msgid "Search:"
1692
  msgstr "Buscar:"
1693
 
1694
+ #: tpls/wpdm-all-downloads.php:124
1695
  msgid "First"
1696
  msgstr "primero"
1697
 
1698
+ #: tpls/wpdm-all-downloads.php:125
1699
  msgid "Last"
1700
  msgstr "Último"
1701
 
1702
+ #: tpls/wpdm-all-downloads.php:130
1703
  msgid "activate to sort column ascending"
1704
  msgstr "activar para ordenar la columna ascendente"
1705
 
1706
+ #: tpls/wpdm-all-downloads.php:131
1707
  msgid "activate to sort column descending"
1708
  msgstr "activar para ordenar la columna descendente"
1709
 
1710
+ #: tpls/wpdm-all-downloads.php:135
1711
  msgid "All"
1712
  msgstr "Todos"
1713
 
1714
+ #: tpls/wpdm-all-downloads.php:260
 
 
 
 
1715
  msgid "file(s)"
1716
  msgstr "archivo (s)"
1717
 
1718
+ #: tpls/wpdm-all-downloads.php:266
1719
  msgid "downloads"
1720
  msgstr "descargas"
1721
 
1722
+ #: tpls/wpdm-all-downloads.php:266
1723
  msgid "download"
1724
  msgstr "descargar"
1725
 
1726
+ #: tpls/wpdm-all-downloads.php:272
1727
  msgid "views"
1728
  msgstr "puntos de vista"
1729
 
1730
+ #: tpls/wpdm-all-downloads.php:272
1731
  msgid "view"
1732
  msgstr "ver"
1733
 
1734
+ #: tpls/wpdm-all-downloads.php:312
1735
  msgid "No Packages Found"
1736
  msgstr "No se encontraron paquetes"
1737
 
1738
+ #: tpls/wpdm-asset.php:23
1739
+ #, fuzzy
1740
+ #| msgid "Direct Download"
1741
+ msgid "Login to Download"
1742
+ msgstr "Descarga directa"
1743
+
1744
  #: tpls/wpdm-generate-password.php:17
1745
  msgid "Select Options"
1746
  msgstr "Seleccione opciones"
1832
  msgid "Reset Password"
1833
  msgstr "Contraseñas generadas"
1834
 
 
 
 
 
1835
  #: tpls/wpdm-login-form.php:161
1836
  #, fuzzy
1837
  #| msgid "Register Page"
1965
  msgid "Password usages limit exceeded"
1966
  msgstr "Límite de uso de contraseña excedido"
1967
 
1968
+ #: wpdm-functions.php:763
1969
  msgid "Sub-Categories"
1970
  msgstr "Subcategorias"
1971
 
1972
+ #: wpdm-functions.php:781
1973
  msgid "Title"
1974
  msgstr "Título"
1975
 
1976
+ #: wpdm-functions.php:785
1977
  msgid "Asc"
1978
  msgstr "Asc"
1979
 
1980
+ #: wpdm-functions.php:786
1981
  msgid "Desc"
1982
  msgstr "Desc"
1983
 
1984
+ #: wpdm-functions.php:787
1985
  msgid "Search"
1986
  msgstr "Buscar"
1987
 
1988
+ #: wpdm-functions.php:788
1989
  msgid "Order"
1990
  msgstr "Orden"
1991
 
1992
+ #: wpdm-functions.php:789
1993
  msgid "Order By"
1994
  msgstr "Ordenar por"
1995
 
1996
+ #: wpdm-functions.php:1336
1997
  #, fuzzy
1998
  #| msgid "Select category"
1999
  msgid "Select Image"
2000
  msgstr "Selecciona una categoría"
2001
 
2002
+ #: wpdm-functions.php:1361 wpdm-functions.php:1455
2003
  msgid "SELECT IMAGE"
2004
  msgstr ""
2005
 
2006
+ #: wpdm-functions.php:1436
2007
  #, fuzzy
2008
  #| msgid "Upload"
2009
  msgid "Uploading"
2013
  msgid "Your IP address is blocked!"
2014
  msgstr "Su dirección IP está bloqueada!"
2015
 
2016
+ #: wpdm-start-download.php:22
2017
  msgid "Package is not available!"
2018
  msgstr "¡El paquete no está disponible!"
2019
 
2020
+ #: wpdm-start-download.php:50
2021
  msgid "Sorry! Download is not available yet."
2022
  msgstr "¡Lo siento! La descarga no está disponible todavía."
2023
 
2024
+ #: wpdm-start-download.php:67
2025
  msgid "Please activate \"zlib\" in your server"
2026
  msgstr "Por favor active \"zlib\" en su servidor"
2027
 
2028
+ #: wpdm-start-download.php:103
2029
  msgid "No file found!"
2030
  msgstr "¡Archivo no encontrado!"
2031
 
languages/download-manager-it_IT.mo CHANGED
Binary file
languages/download-manager-it_IT.po CHANGED
@@ -1,25 +1,27 @@
 
 
1
  msgid ""
2
  msgstr ""
3
- "Project-Id-Version: Download Manager Pro v4\n"
4
- "Report-Msgid-Bugs-To: \n"
5
- "POT-Creation-Date: 2019-06-23 17:45+0600\n"
6
- "PO-Revision-Date: 2019-06-23 17:46+0600\n"
7
  "Last-Translator: \n"
8
- "Language-Team: Shaon <proshaon@yahoo.com>\n"
9
  "Language: it\n"
10
  "MIME-Version: 1.0\n"
11
  "Content-Type: text/plain; charset=UTF-8\n"
12
  "Content-Transfer-Encoding: 8bit\n"
 
 
13
  "X-Poedit-KeywordsList: __;_e\n"
14
  "X-Poedit-Basepath: ..\n"
15
- "X-Poedit-SourceCharset: UTF-8\n"
16
- "X-Generator: Poedit 2.2.3\n"
17
  "X-Poedit-SearchPath-0: .\n"
18
 
19
  #: admin/class.WordPressDownloadManagerAdmin.php:169
20
  #: admin/tpls/metaboxes/package-settings.php:6
21
  msgid "Package Settings"
22
- msgstr "pacchetto Impostazioni"
23
 
24
  #: admin/class.WordPressDownloadManagerAdmin.php:170
25
  msgid "Attach File"
@@ -27,27 +29,27 @@ msgstr "Allega file"
27
 
28
  #: admin/menus/class.Addons.php:23
29
  msgid "Add-Ons &lsaquo; Download Manager"
30
- msgstr "Add-Ons &lsaquo; Download Manager"
31
 
32
  #: admin/menus/class.Addons.php:23
33
  msgid "Add-Ons"
34
- msgstr "Add-Ons"
35
 
36
  #: admin/menus/class.Categories.php:47 admin/menus/class.Categories.php:139
37
  msgid "Category Image:"
38
- msgstr "Immagine Categoria:"
39
 
40
  #: admin/menus/class.Categories.php:49 admin/menus/class.Categories.php:141
41
  msgid "Image URL"
42
- msgstr "URL del'Immagine"
43
 
44
  #: admin/menus/class.Categories.php:49 admin/menus/class.Categories.php:141
45
  msgid "Select Category Image"
46
- msgstr "Seleziona l'immagine della categoria"
47
 
48
  #: admin/menus/class.Categories.php:49 admin/menus/class.Categories.php:141
49
  msgid "Insert From Media Library"
50
- msgstr "Inserisci dalla libreria multimediale"
51
 
52
  #: admin/menus/class.Categories.php:106 admin/menus/class.Categories.php:199
53
  msgid "Access:"
@@ -57,38 +59,39 @@ msgstr "Accesso:"
57
  msgid ""
58
  "Select the roles who should have access to the packages under this category"
59
  msgstr ""
60
- "Selezionare i ruoli che devono avere accesso ai pacchetti in questa categoria"
 
61
 
62
  #: admin/menus/class.Categories.php:110 admin/menus/class.Categories.php:215
63
- #: admin/tpls/metaboxes/package-settings.php:67
64
  msgid "All Visitors"
65
- msgstr "Tutti i visitatori"
66
 
67
- #: admin/menus/class.Packages.php:194
68
  msgid "Direct Download"
69
- msgstr "Download diretto"
70
 
71
  #: admin/menus/class.Settings.php:19
72
  msgid "Settings &lsaquo; Download Manager"
73
- msgstr "Impostazioni &lsaquo; Download Manager"
74
 
75
  #: admin/menus/class.Settings.php:19
76
  msgid "Settings"
77
  msgstr "Impostazioni"
78
 
79
- #: admin/menus/class.Settings.php:114 admin/menus/class.Settings.php:142
80
- #: admin/menus/class.Settings.php:161 admin/menus/class.Settings.php:217
81
- #: admin/menus/class.Settings.php:233
82
  msgid "Security token is expired! Refresh the page and try again."
83
- msgstr "Il token di sicurezza è scaduto! Aggiornare la pagina e riprovare."
84
 
85
- #: admin/menus/class.Settings.php:305
86
  msgid "Privacy Settings Saved Successfully"
87
- msgstr "Impostazioni della privacy salvate correttamente"
88
 
89
  #: admin/menus/class.Stats.php:25
90
  msgid "History &lsaquo; Download Manager"
91
- msgstr "Cronologia &lsaquo; Download Manager"
92
 
93
  #: admin/menus/class.Stats.php:25
94
  msgid "History"
@@ -96,21 +99,17 @@ msgstr "Cronologia"
96
 
97
  #: admin/menus/class.Templates.php:21
98
  msgid "Templates &lsaquo; Download Manager"
99
- msgstr "Templates &lsaquo; Download Manager"
100
 
101
  #: admin/menus/class.Templates.php:21 admin/tpls/email-template-editor.php:9
102
  #: admin/tpls/templates.php:7
103
- #, fuzzy
104
- #| msgid "Page Template:"
105
  msgid "Templates"
106
- msgstr "Modello di pagina:"
107
 
108
- #: admin/menus/class.Templates.php:138
109
  msgid ""
110
  "No package found! Please create at least 1 package to see template preview"
111
  msgstr ""
112
- "Nessun pacchetto trovato! Si prega di creare almeno 1 pacchetto per vedere "
113
- "l'anteprima del modello"
114
 
115
  #: admin/tpls/addons-list.php:226
116
  msgid "WPDM Add-Ons"
@@ -118,31 +117,23 @@ msgstr "WPDM Add-Ons"
118
 
119
  #: admin/tpls/addons-list.php:307
120
  msgid "Failed to connect with server!"
121
- msgstr "Impossibile connettersi al server!"
122
 
123
  #: admin/tpls/email-template-editor.php:14 admin/tpls/templates.php:12
124
- #, fuzzy
125
- #| msgid "Link Template:"
126
  msgid "Link Templates"
127
- msgstr "Link Template:"
128
 
129
  #: admin/tpls/email-template-editor.php:15 admin/tpls/templates.php:13
130
- #, fuzzy
131
- #| msgid "Page Template:"
132
  msgid "Page Templates"
133
- msgstr "Modello di pagina:"
134
 
135
  #: admin/tpls/email-template-editor.php:16 admin/tpls/templates.php:14
136
- #, fuzzy
137
- #| msgid "Default Link Template"
138
  msgid "Email Templates"
139
- msgstr "Predefiniti dei collegamenti Template"
140
 
141
  #: admin/tpls/email-template-editor.php:17
142
- #, fuzzy
143
- #| msgid "Default Link Template"
144
  msgid "Email Template Editor"
145
- msgstr "Predefiniti dei collegamenti Template"
146
 
147
  #: admin/tpls/email-template-editor.php:29
148
  #, php-format
@@ -159,10 +150,8 @@ msgid "Email Subject"
159
  msgstr ""
160
 
161
  #: admin/tpls/email-template-editor.php:44
162
- #, fuzzy
163
- #| msgid "Messages:"
164
  msgid "Message"
165
- msgstr "Messaggi:"
166
 
167
  #: admin/tpls/email-template-editor.php:45
168
  msgid "Preview"
@@ -181,9 +170,9 @@ msgstr ""
181
  msgid "From Email"
182
  msgstr ""
183
 
184
- #: admin/tpls/email-template-editor.php:93 admin/tpls/templates.php:184
185
- #: admin/tpls/templates.php:342 tpls/user-dashboard/edit-profile.php:51
186
- #: tpls/wpdm-edit-user-profile.php:51
187
  msgid "Save Changes"
188
  msgstr ""
189
 
@@ -192,10 +181,8 @@ msgid "Template Variables"
192
  msgstr ""
193
 
194
  #: admin/tpls/email-template-editor.php:203
195
- #, fuzzy
196
- #| msgid "Page Template:"
197
  msgid "Invalid template ID!"
198
- msgstr "Modello di pagina:"
199
 
200
  #: admin/tpls/emails-template.php:15
201
  msgid "Subscribers"
@@ -213,94 +200,97 @@ msgstr ""
213
  msgid "Emails"
214
  msgstr ""
215
 
216
- #: admin/tpls/emails-template.php:23 admin/tpls/templates.php:104
217
- #, fuzzy
218
- #| msgid "Default Link Template"
219
  msgid "Email Template"
220
- msgstr "Predefiniti dei collegamenti Template"
221
 
222
  #: admin/tpls/metaboxes/attach-file.php:6
223
  msgid "attached file is missing/deleted"
224
- msgstr ""
225
 
226
- #: admin/tpls/metaboxes/attach-file.php:30
227
  msgid "No file uploaded yet!"
228
- msgstr ""
229
 
230
- #: admin/tpls/metaboxes/attach-file.php:36
231
  msgid "Upload"
232
  msgstr ""
233
 
234
- #: admin/tpls/metaboxes/attach-file.php:38 libs/class.FileList.php:305
235
  msgid "Browse"
236
- msgstr ""
237
 
238
- #: admin/tpls/metaboxes/attach-file.php:40
239
  msgid "URL"
240
  msgstr ""
241
 
242
- #: admin/tpls/metaboxes/attach-file.php:47
243
  msgid "Drop file here"
244
  msgstr ""
245
 
246
- #: admin/tpls/metaboxes/attach-file.php:69 wpdm-functions.php:1403
 
247
  msgid "Allowed Files"
248
  msgstr ""
249
 
250
- #: admin/tpls/metaboxes/attach-file.php:146
251
  msgid "Invalid File Type!"
252
- msgstr ""
253
 
254
- #: admin/tpls/metaboxes/attach-file.php:148
255
  msgid "Unauthorized Access!"
256
- msgstr ""
257
 
258
- #: admin/tpls/metaboxes/attach-file.php:152
259
  msgid "Delete Current File"
260
- msgstr ""
261
 
262
- #: admin/tpls/metaboxes/attach-file.php:196 admin/tpls/templates.php:364
263
  msgid "Are you sure?"
264
- msgstr ""
265
 
266
- #: admin/tpls/metaboxes/attach-file.php:198
267
  msgid ""
268
  "<div class=\"w3eden\"><div class=\"text-danger\"><i class=\"fa fa-check-"
269
  "circle\"></i> Removed!</div></div>"
270
  msgstr ""
 
 
271
 
272
  #: admin/tpls/metaboxes/icons.php:112
273
  msgid "Icon URL"
274
- msgstr ""
275
 
276
  #: admin/tpls/metaboxes/lock-options.php:2
277
  msgid ""
278
  "You can use one or more of following methods to lock your package download:"
279
  msgstr ""
 
 
280
 
281
  #: admin/tpls/metaboxes/lock-options.php:8
282
  msgid "Must Agree with Terms"
283
- msgstr ""
284
 
285
  #: admin/tpls/metaboxes/lock-options.php:11
286
  msgid "Terms Title:"
287
- msgstr ""
288
 
289
  #: admin/tpls/metaboxes/lock-options.php:13
290
  msgid "Terms and Conditions:"
291
- msgstr ""
292
 
293
  #: admin/tpls/metaboxes/lock-options.php:15
294
  msgid "Terms Checkbox Label:"
295
- msgstr ""
296
 
297
  #: admin/tpls/metaboxes/lock-options.php:23
298
  msgid "Enable Password Lock"
299
- msgstr ""
300
 
301
  #: admin/tpls/metaboxes/lock-options.php:26
302
  msgid "Password:"
303
- msgstr ""
304
 
305
  #: admin/tpls/metaboxes/lock-options.php:29
306
  msgid ""
@@ -310,7 +300,7 @@ msgstr ""
310
 
311
  #: admin/tpls/metaboxes/lock-options.php:38
312
  msgid "Enable Captcha Lock"
313
- msgstr ""
314
 
315
  #: admin/tpls/metaboxes/lock-options.php:41
316
  msgid "Please configure reCAPTCHA"
@@ -319,26 +309,27 @@ msgstr ""
319
  #: admin/tpls/metaboxes/lock-options.php:42
320
  msgid "Users will be asked for reCAPTCHA verification before download."
321
  msgstr ""
 
322
 
323
  #: admin/tpls/metaboxes/package-settings.php:7
324
  msgid "Lock Options"
325
- msgstr ""
326
 
327
  #: admin/tpls/metaboxes/package-settings.php:8
328
  msgid "Icons"
329
- msgstr ""
330
 
331
  #: admin/tpls/metaboxes/package-settings.php:22
332
  msgid "Version:"
333
- msgstr ""
334
 
335
  #: admin/tpls/metaboxes/package-settings.php:27
336
  msgid "Link Label:"
337
- msgstr "Link Etichetta:"
338
 
339
  #: admin/tpls/metaboxes/package-settings.php:32
340
  msgid "File&nbsp;Size:"
341
- msgstr ""
342
 
343
  #: admin/tpls/metaboxes/package-settings.php:38
344
  msgid "Stock&nbsp;Limit:"
@@ -346,15 +337,15 @@ msgstr "Limite di magazzino:"
346
 
347
  #: admin/tpls/metaboxes/package-settings.php:45
348
  msgid "View&nbsp;Count:"
349
- msgstr ""
350
 
351
  #: admin/tpls/metaboxes/package-settings.php:50
352
  msgid "Download&nbsp;Count:"
353
- msgstr "Download Count:"
354
 
355
  #: admin/tpls/metaboxes/package-settings.php:56
356
  msgid "Allow Access:"
357
- msgstr ""
358
 
359
  #: admin/tpls/metaboxes/package-settings.php:58
360
  msgid "Who should be able to download?"
@@ -362,11 +353,11 @@ msgstr ""
362
 
363
  #: admin/tpls/metaboxes/package-settings.php:87
364
  msgid "Page Template:"
365
- msgstr "Modello di pagina:"
366
 
367
  #: admin/tpls/metaboxes/package-settings.php:98
368
  msgid "Master Key"
369
- msgstr ""
370
 
371
  #: admin/tpls/metaboxes/package-settings.php:99
372
  msgid "Regenerate Master Key for Download"
@@ -374,24 +365,24 @@ msgstr ""
374
 
375
  #: admin/tpls/metaboxes/package-settings.php:99
376
  msgid "This key can be used for direct download"
377
- msgstr ""
378
 
379
  #: admin/tpls/settings.php:10 admin/tpls/settings.php:37
380
  msgid "Save Settings"
381
- msgstr ""
382
 
383
  #: admin/tpls/settings.php:10
384
  msgid "Download Manager Settings"
385
- msgstr ""
386
 
387
  #: admin/tpls/settings/addon-update.php:3
388
  msgid "Check For Updates"
389
- msgstr ""
390
 
391
  #: admin/tpls/settings/addon-update.php:3 tpls/already-logged-in.php:20
392
  #: tpls/wpdm-dashboard.php:28
393
  msgid "Logout"
394
- msgstr ""
395
 
396
  #: admin/tpls/settings/addon-update.php:4
397
  msgid "Add-on Update"
@@ -400,7 +391,7 @@ msgstr ""
400
  #: admin/tpls/settings/addon-update.php:14
401
  #, php-format
402
  msgid "Enter your %s login info"
403
- msgstr ""
404
 
405
  #: admin/tpls/settings/addon-update.php:33
406
  msgid "Click Save Settings Button To Login"
@@ -417,12 +408,12 @@ msgstr ""
417
  #: admin/tpls/settings/addon-update.php:58
418
  #: admin/tpls/settings/addon-update.php:103
419
  msgid "Product Name"
420
- msgstr ""
421
 
422
  #: admin/tpls/settings/addon-update.php:59
423
  #: admin/tpls/settings/addon-update.php:104
424
  msgid "Active(v)"
425
- msgstr ""
426
 
427
  #: admin/tpls/settings/addon-update.php:60
428
  #: admin/tpls/settings/addon-update.php:105
@@ -440,44 +431,44 @@ msgstr ""
440
  #: libs/class.Package.php:646 libs/class.Package.php:671
441
  #: libs/class.Package.php:738 libs/class.Package.php:821
442
  #: libs/class.Package.php:847 libs/class.Package.php:874
443
- #: libs/class.Package.php:1244 libs/class.PackageLocks.php:59
444
  #: libs/class.PackageLocks.php:96 tpls/lock-options-iframe.php:243
445
- #: tpls/wpdm-all-downloads.php:158 wpdm-functions.php:103
446
- #: wpdm-functions.php:128 wpdm-functions.php:194
447
  msgid "Download"
448
- msgstr ""
449
 
450
  #: admin/tpls/settings/addon-update.php:85
451
  #: admin/tpls/settings/addon-update.php:126
452
  msgid "Install"
453
- msgstr ""
454
 
455
  #: admin/tpls/settings/addon-update.php:87
456
  #: admin/tpls/settings/addon-update.php:128
457
  msgid "Update"
458
- msgstr ""
459
 
460
  #: admin/tpls/settings/addon-update.php:88
461
  #: admin/tpls/settings/addon-update.php:129
462
  msgid "Updated"
463
- msgstr ""
464
 
465
  #: admin/tpls/settings/addon-update.php:90
466
  msgid "Expired"
467
- msgstr ""
468
 
469
  #: admin/tpls/settings/addon-update.php:144 tpls/wpdm-login-form.php:170
470
  #: tpls/wpdm-login-form.php:232 tpls/wpdm-reg-form.php:150
471
  msgid "Please Wait..."
472
- msgstr ""
473
 
474
  #: admin/tpls/settings/addon-update.php:146
475
  msgid "Success!"
476
- msgstr ""
477
 
478
  #: admin/tpls/settings/basic.php:29
479
  msgid "Messages"
480
- msgstr ""
481
 
482
  #: admin/tpls/settings/basic.php:34
483
  msgid "Permission Denied Message for Packages:"
@@ -489,7 +480,7 @@ msgstr "Login messaggio desiderato:"
489
 
490
  #: admin/tpls/settings/basic.php:51
491
  msgid "Server File Browser"
492
- msgstr ""
493
 
494
  #: admin/tpls/settings/basic.php:55
495
  msgid "Server File Browser Base Dir:"
@@ -501,15 +492,15 @@ msgstr ""
501
 
502
  #: admin/tpls/settings/basic.php:65
503
  msgid "File Browser Access:"
504
- msgstr ""
505
 
506
  #: admin/tpls/settings/basic.php:66
507
  msgid "Who will have access to server file browser"
508
- msgstr ""
509
 
510
  #: admin/tpls/settings/basic.php:98
511
  msgid "Upload Settings"
512
- msgstr ""
513
 
514
  #: admin/tpls/settings/basic.php:102
515
  msgid "Sanitize Filename"
@@ -520,6 +511,7 @@ msgid ""
520
  "Check the option if you want to sanitize uploaded file names to remove "
521
  "illegal chars"
522
  msgstr ""
 
523
 
524
  #: admin/tpls/settings/basic.php:110
525
  msgid "Chunk Upload"
@@ -537,7 +529,7 @@ msgstr ""
537
 
538
  #: admin/tpls/settings/basic.php:129
539
  msgid "File Download"
540
- msgstr ""
541
 
542
  #: admin/tpls/settings/basic.php:133
543
  msgid "Download Speed:"
@@ -545,11 +537,11 @@ msgstr ""
545
 
546
  #: admin/tpls/settings/basic.php:141
547
  msgid "Blocked IPs"
548
- msgstr ""
549
 
550
  #: admin/tpls/settings/basic.php:143
551
  msgid "One IP per line"
552
- msgstr ""
553
 
554
  #: admin/tpls/settings/basic.php:144
555
  msgid ""
@@ -557,20 +549,25 @@ msgid ""
557
  "or 192.168.23.1/24 or 192.168.23.* , IPv6 - 2a01:8760:2:3001::1 or "
558
  "2620:112:3000::/44 )"
559
  msgstr ""
 
 
 
560
 
561
  #: admin/tpls/settings/basic.php:147
562
  msgid "Write a Message for Blocked IPs"
563
- msgstr ""
564
 
565
  #: admin/tpls/settings/basic.php:148
566
  msgid "Message for Blocked IPs"
567
- msgstr ""
568
 
569
  #: admin/tpls/settings/basic.php:152
570
  msgid ""
571
  "If you get broken download, then try enabling/disabling following options, "
572
  "as sometimes server may not support output buffering or partial downloads"
573
  msgstr ""
 
 
574
 
575
  #: admin/tpls/settings/basic.php:155
576
  msgid "Resumable Downloads"
@@ -578,25 +575,27 @@ msgstr ""
578
 
579
  #: admin/tpls/settings/basic.php:157 admin/tpls/settings/basic.php:164
580
  msgid "Enabled"
581
- msgstr ""
582
 
583
  #: admin/tpls/settings/basic.php:158 admin/tpls/settings/basic.php:165
584
  msgid "Disabled"
585
- msgstr ""
586
 
587
  #: admin/tpls/settings/basic.php:162
588
  msgid "Output Buffering"
589
- msgstr ""
590
 
591
  #: admin/tpls/settings/basic.php:171
592
  msgid "Open in Browser"
593
- msgstr ""
594
 
595
  #: admin/tpls/settings/basic.php:172
596
  msgid ""
597
  "Try to Open in Browser instead of download when someone clicks on download "
598
  "link"
599
  msgstr ""
 
 
600
 
601
  #: admin/tpls/settings/basic.php:178
602
  msgid "reCAPTCHA Lock Settings"
@@ -611,6 +610,8 @@ msgid ""
611
  "Register a new site for reCAPTCHA from <a target=\"_blank\" href=\"https://"
612
  "www.google.com/recaptcha/admin#list\">here</a>"
613
  msgstr ""
 
 
614
 
615
  #: admin/tpls/settings/basic.php:185
616
  msgid "reCAPTCHA Secret Key"
@@ -618,7 +619,7 @@ msgstr ""
618
 
619
  #: admin/tpls/settings/basic.php:198
620
  msgid "Misc Settings"
621
- msgstr ""
622
 
623
  #: admin/tpls/settings/basic.php:203
624
  msgid "Login Page"
@@ -627,17 +628,17 @@ msgstr ""
627
  #: admin/tpls/settings/basic.php:204 admin/tpls/settings/basic.php:210
628
  #: admin/tpls/settings/basic.php:215
629
  msgid "None Selected"
630
- msgstr ""
631
 
632
  #: admin/tpls/settings/basic.php:205 admin/tpls/settings/basic.php:211
633
  #: admin/tpls/settings/basic.php:216
634
  #, php-format
635
  msgid "The page where you used short-code %s"
636
- msgstr ""
637
 
638
  #: admin/tpls/settings/basic.php:209
639
  msgid "Register Page"
640
- msgstr ""
641
 
642
  #: admin/tpls/settings/basic.php:214
643
  msgid "Dashboard Page"
@@ -655,10 +656,8 @@ msgid ""
655
  msgstr ""
656
 
657
  #: admin/tpls/settings/privacy.php:9
658
- #, fuzzy
659
- #| msgid "Package Settings"
660
  msgid "Privacy Settings"
661
- msgstr "pacchetto Impostazioni"
662
 
663
  #: admin/tpls/settings/privacy.php:13
664
  msgid "Do not store visitor's IP"
@@ -696,11 +695,11 @@ msgstr ""
696
 
697
  #: admin/tpls/settings/user-interface.php:20
698
  msgid "Bootstrap JS"
699
- msgstr ""
700
 
701
  #: admin/tpls/settings/user-interface.php:21
702
  msgid "Bootstrap CSS"
703
- msgstr ""
704
 
705
  #: admin/tpls/settings/user-interface.php:22
706
  msgid "Font Awesome"
@@ -717,7 +716,7 @@ msgstr ""
717
  #: admin/tpls/settings/user-interface.php:26
718
  msgid ""
719
  "Because, sometimes your theme may have those scripts/styles enqueued already"
720
- msgstr ""
721
 
722
  #: admin/tpls/settings/user-interface.php:32
723
  msgid "Colors"
@@ -736,10 +735,8 @@ msgid "Info:"
736
  msgstr ""
737
 
738
  #: admin/tpls/settings/user-interface.php:66
739
- #, fuzzy
740
- #| msgid "Access:"
741
  msgid "Success:"
742
- msgstr "Accesso:"
743
 
744
  #: admin/tpls/settings/user-interface.php:72
745
  msgid "Warning:"
@@ -777,31 +774,29 @@ msgstr ""
777
  #: admin/tpls/stats.php:8 libs/class.UserDashboard.php:18
778
  #: tpls/already-logged-in.php:19
779
  msgid "Download History"
780
- msgstr ""
781
 
782
  #: admin/tpls/stats.php:31
783
  msgid "Are you sure? There is no going back!"
784
- msgstr ""
785
 
786
  #: admin/tpls/stats.php:35
787
  msgid "Clearing..."
788
  msgstr ""
789
 
790
  #: admin/tpls/stats.php:38
791
- #, fuzzy
792
- #| msgid "Download statistics for"
793
  msgid "Download History is Empty"
794
- msgstr "Scarica le statistiche per"
795
 
796
  #: admin/tpls/stats/history.php:6 tpls/user-dashboard/download-history.php:9
797
  #: tpls/user-dashboard/profile.php:81
798
  msgid "Package Name"
799
- msgstr ""
800
 
801
  #: admin/tpls/stats/history.php:7 tpls/user-dashboard/download-history.php:10
802
  #: tpls/user-dashboard/profile.php:82
803
  msgid "Download Time"
804
- msgstr ""
805
 
806
  #: admin/tpls/stats/history.php:8
807
  msgid "User/IP"
@@ -819,10 +814,8 @@ msgid "Template Name"
819
  msgstr ""
820
 
821
  #: admin/tpls/templates.php:28
822
- #, fuzzy
823
- #| msgid "Page Template:"
824
  msgid "Template ID"
825
- msgstr "Modello di pagina:"
826
 
827
  #: admin/tpls/templates.php:30
828
  msgid "Actions"
@@ -836,127 +829,127 @@ msgstr ""
836
  msgid "Edit"
837
  msgstr ""
838
 
839
- #: admin/tpls/templates.php:121 admin/tpls/templates.php:122
840
  msgid "Logo URL"
841
  msgstr ""
842
 
843
- #: admin/tpls/templates.php:125 admin/tpls/templates.php:126
844
  msgid "Banner/Background Image URL"
845
  msgstr ""
846
 
847
- #: admin/tpls/templates.php:137
848
  msgid "Footer Text"
849
  msgstr ""
850
 
851
- #: admin/tpls/templates.php:141
852
  msgid "Facebook Page URL"
853
  msgstr ""
854
 
855
- #: admin/tpls/templates.php:145
856
  msgid "Twitter Profile URL"
857
  msgstr ""
858
 
859
- #: admin/tpls/templates.php:149
860
  msgid "Youtube Profile URL"
861
  msgstr ""
862
 
863
- #: admin/tpls/templates.php:199
864
  msgid "Template Preview"
865
  msgstr ""
866
 
867
- #: admin/tpls/templates.php:205
868
  msgid ""
869
  "This is a preview, original template color scheme may look little different, "
870
  "but structure will be same"
871
  msgstr ""
872
 
873
- #: admin/tpls/templates.php:338
874
  msgid "Saving..."
875
  msgstr ""
876
 
877
- #: download-manager.php:160 download-manager.php:172 wpdm-functions.php:787
878
- #: wpdm-functions.php:806
879
  msgid "Downloads"
880
  msgstr ""
881
 
882
- #: download-manager.php:161 libs/class.FileList.php:67
883
  msgid "File"
884
- msgstr ""
885
 
886
- #: download-manager.php:162
887
  msgid "Add New"
888
- msgstr ""
889
 
890
- #: download-manager.php:163
891
  msgid "Add New File"
892
- msgstr ""
893
 
894
- #: download-manager.php:164
895
  msgid "Edit File"
896
- msgstr ""
897
 
898
- #: download-manager.php:165
899
  msgid "New File"
900
- msgstr ""
901
 
902
- #: download-manager.php:166
903
  msgid "All Files"
904
- msgstr "tutti i file"
905
 
906
- #: download-manager.php:167
907
  msgid "View File"
908
- msgstr ""
909
 
910
- #: download-manager.php:168
911
  msgid "Search Files"
912
- msgstr ""
913
 
914
- #: download-manager.php:169
915
  msgid "No File Found"
916
- msgstr ""
917
 
918
- #: download-manager.php:170
919
  msgid "No Files found in Trash"
920
- msgstr ""
921
 
922
- #: download-manager.php:201 download-manager.php:211
923
  #: tpls/wpdm-all-downloads.php:156
924
  msgid "Categories"
925
- msgstr ""
926
 
927
- #: download-manager.php:202
928
  msgid "Category"
929
- msgstr ""
930
 
931
- #: download-manager.php:203
932
  msgid "Search Categories"
933
- msgstr ""
934
 
935
- #: download-manager.php:204
936
  msgid "All Categories"
937
- msgstr ""
938
 
939
- #: download-manager.php:205
940
  msgid "Parent Category"
941
- msgstr ""
942
 
943
- #: download-manager.php:206
944
  msgid "Parent Category:"
945
- msgstr ""
946
 
947
- #: download-manager.php:207
948
  msgid "Edit Category"
949
- msgstr ""
950
 
951
- #: download-manager.php:208
952
  msgid "Update Category"
953
- msgstr ""
954
 
955
- #: download-manager.php:209
956
  msgid "Add New Category"
957
- msgstr ""
958
 
959
- #: download-manager.php:210
960
  msgid "New Category Name"
961
  msgstr ""
962
 
@@ -966,15 +959,15 @@ msgstr ""
966
 
967
  #: libs/class.Apply.php:193 libs/class.Apply.php:194
968
  msgid "Error: User registration is disabled!"
969
- msgstr ""
970
 
971
  #: libs/class.Apply.php:209
972
  msgid "Username is Empty!"
973
- msgstr ""
974
 
975
  #: libs/class.Apply.php:218
976
  msgid "Invalid Email Address!"
977
- msgstr ""
978
 
979
  #: libs/class.Apply.php:235
980
  msgid "Password: "
@@ -1017,15 +1010,19 @@ msgstr ""
1017
 
1018
  #: libs/class.Apply.php:518
1019
  msgid "You don't have permission to download this file"
1020
- msgstr ""
1021
 
1022
  #: libs/class.Apply.php:525
1023
  msgid "Download link is expired. Please get new download link."
1024
  msgstr ""
 
 
1025
 
1026
  #: libs/class.Apply.php:527
1027
  msgid "Download link is expired or not valid. Please get new download link."
1028
  msgstr ""
 
 
1029
 
1030
  #: libs/class.Apply.php:534
1031
  msgid "Stock Limit Reached"
@@ -1033,17 +1030,90 @@ msgstr ""
1033
 
1034
  #: libs/class.Apply.php:540
1035
  msgid "Invalid download link."
1036
- msgstr ""
1037
 
1038
  #: libs/class.Apply.php:634
1039
  msgid "Price"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1040
  msgstr ""
1041
 
1042
  #: libs/class.Email.php:20
1043
- #, fuzzy
1044
- #| msgid "Default Link Template"
1045
  msgid "General Email Template"
1046
- msgstr "Predefiniti dei collegamenti Template"
1047
 
1048
  #: libs/class.Email.php:29
1049
  msgid "User Signup Notification"
@@ -1052,7 +1122,7 @@ msgstr ""
1052
  #: libs/class.Email.php:32
1053
  #, php-format
1054
  msgid "Welcome to %s"
1055
- msgstr ""
1056
 
1057
  #: libs/class.Email.php:39
1058
  msgid "Password Reset Notification"
@@ -1064,16 +1134,12 @@ msgid "Request to reset your %s password"
1064
  msgstr ""
1065
 
1066
  #: libs/class.Email.php:49
1067
- #, fuzzy
1068
- #| msgid "Package Settings"
1069
  msgid "Email Lock Notification"
1070
- msgstr "pacchetto Impostazioni"
1071
 
1072
  #: libs/class.Email.php:52
1073
- #, fuzzy
1074
- #| msgid "Edit Download Package"
1075
  msgid "Download [#package_name#]"
1076
- msgstr "Modifica pacchetto Download"
1077
 
1078
  #: libs/class.Email.php:201
1079
  msgid "Sample Package Name"
@@ -1083,45 +1149,45 @@ msgstr ""
1083
  #: libs/class.FileList.php:132 libs/class.FileList.php:200
1084
  #: tpls/wpdm-login-form.php:78 tpls/wpdm-reg-form.php:79
1085
  msgid "Password"
1086
- msgstr ""
1087
 
1088
  #: libs/class.FileList.php:63
1089
  msgid "Action"
1090
- msgstr ""
1091
 
1092
  #: libs/class.Messages.php:32
1093
  msgid "Operation Failed!"
1094
- msgstr ""
1095
 
1096
  #: libs/class.Messages.php:44
1097
  msgid "Warning!"
1098
- msgstr ""
1099
 
1100
  #: libs/class.Messages.php:56
1101
  msgid "Attention!"
1102
- msgstr ""
1103
 
1104
  #: libs/class.Messages.php:68
1105
  msgid "Awesome!"
1106
- msgstr ""
1107
 
1108
  #: libs/class.Package.php:26
1109
  msgid "ID missing!"
1110
- msgstr ""
1111
 
1112
  #: libs/class.Package.php:127 libs/class.Package.php:130
1113
  #: libs/class.Package.php:132
1114
  msgid "Icon"
1115
- msgstr ""
1116
 
1117
  #: libs/class.Package.php:135 libs/class.Package.php:142
1118
  msgid "Thumbnail"
1119
- msgstr ""
1120
 
1121
  #: libs/class.Package.php:164 libs/class.Package.php:655
1122
  #: libs/class.Package.php:856 wpdm-functions.php:112 wpdm-start-download.php:23
1123
  msgid "Download Limit Exceeded"
1124
- msgstr ""
1125
 
1126
  #: libs/class.Package.php:167 libs/class.Package.php:175
1127
  #: libs/class.Package.php:183 libs/class.Package.php:191
@@ -1131,16 +1197,16 @@ msgstr ""
1131
  #: libs/class.Package.php:172 libs/class.Package.php:659
1132
  #: libs/class.Package.php:860 wpdm-functions.php:116
1133
  msgid "Download was expired on"
1134
- msgstr ""
1135
 
1136
  #: libs/class.Package.php:180 libs/class.Package.php:666
1137
  #: libs/class.Package.php:868 wpdm-functions.php:123
1138
  msgid "Download will be available from "
1139
- msgstr ""
1140
 
1141
  #: libs/class.Package.php:214
1142
  msgid "Terms and Conditions"
1143
- msgstr ""
1144
 
1145
  #: libs/class.Package.php:215
1146
  msgid "I Agree"
@@ -1148,21 +1214,21 @@ msgstr ""
1148
 
1149
  #: libs/class.Package.php:470
1150
  msgid "No File Attached!"
1151
- msgstr ""
1152
 
1153
  #: libs/class.Package.php:661 libs/class.Package.php:668
1154
  #: libs/class.Package.php:678 wpdm-functions.php:118 wpdm-functions.php:125
1155
  #: wpdm-functions.php:135
1156
  msgid "Download:"
1157
- msgstr ""
1158
 
1159
  #: libs/class.Package.php:760 wpdm-functions.php:216
1160
  msgid "Download limit exceeded!"
1161
- msgstr ""
1162
 
1163
  #: libs/class.Package.php:787
1164
  msgid "Verify CAPTCHA to Download"
1165
- msgstr ""
1166
 
1167
  #: libs/class.Package.php:863 libs/class.Package.php:871
1168
  #: libs/class.Package.php:881
@@ -1175,7 +1241,7 @@ msgstr ""
1175
 
1176
  #: libs/class.PackageLocks.php:29
1177
  msgid "Enter Correct Password to Download"
1178
- msgstr ""
1179
 
1180
  #: libs/class.PackageLocks.php:32 libs/class.PackageLocks.php:48
1181
  #: tpls/wpdm-all-downloads.php:119
@@ -1184,25 +1250,25 @@ msgstr ""
1184
 
1185
  #: libs/class.PackageLocks.php:39
1186
  msgid "Enter Password"
1187
- msgstr ""
1188
 
1189
  #: libs/class.PackageLocks.php:40
1190
  msgid "Submit"
1191
- msgstr ""
1192
 
1193
  #: libs/class.Pagination.php:50 tpls/wpdm-all-downloads.php:125
1194
- #: tpls/wpdm-all-downloads.php:331 wpdm-functions.php:1791
1195
  msgid "Previous"
1196
- msgstr ""
1197
 
1198
  #: libs/class.Pagination.php:51 tpls/wpdm-all-downloads.php:124
1199
- #: tpls/wpdm-all-downloads.php:332 wpdm-functions.php:1792
1200
  msgid "Next"
1201
- msgstr ""
1202
 
1203
  #: libs/class.ShortCodes.php:121
1204
  msgid "User registration is disabled"
1205
- msgstr ""
1206
 
1207
  #: libs/class.StreamMedia.php:34
1208
  msgid "Failed To Open File!"
@@ -1214,7 +1280,7 @@ msgstr ""
1214
 
1215
  #: libs/class.UserDashboard.php:19
1216
  msgid "Edit Profile"
1217
- msgstr ""
1218
 
1219
  #: libs/class.UserDashboard.php:27
1220
  msgid "Account"
@@ -1222,11 +1288,11 @@ msgstr ""
1222
 
1223
  #: modules/server-file-browser.php:8
1224
  msgid "Not Allowed!"
1225
- msgstr ""
1226
 
1227
  #: modules/server-file-browser.php:81
1228
  msgid "Add file(s) from server"
1229
- msgstr ""
1230
 
1231
  #: modules/widgets.php:35
1232
  msgid "WPDM Affiliate ID:"
@@ -1239,7 +1305,7 @@ msgstr ""
1239
 
1240
  #: modules/widgets.php:168 modules/widgets.php:233 modules/widgets.php:329
1241
  msgid "Number of packages to show:"
1242
- msgstr ""
1243
 
1244
  #: modules/widgets.php:172 modules/widgets.php:238 modules/widgets.php:334
1245
  msgid "Link Template:"
@@ -1247,59 +1313,59 @@ msgstr "Link Template:"
1247
 
1248
  #: modules/widgets.php:323
1249
  msgid "Select Category:"
1250
- msgstr ""
1251
 
1252
  #: modules/widgets.php:358 tpls/user-dashboard/profile.php:19
1253
  msgid "Total Downloads"
1254
- msgstr ""
1255
 
1256
  #: modules/widgets.php:359
1257
  msgid "Total Views"
1258
- msgstr ""
1259
 
1260
- #: modules/widgets.php:360 modules/widgets.php:444 wpdm-functions.php:807
1261
  msgid "Publish Date"
1262
- msgstr ""
1263
 
1264
  #: modules/widgets.php:361
1265
  msgid "Last Updated"
1266
- msgstr ""
1267
 
1268
  #: modules/widgets.php:362
1269
  msgid "Size"
1270
- msgstr ""
1271
 
1272
  #: modules/widgets.php:439
1273
  msgid "Fields to Show:"
1274
- msgstr ""
1275
 
1276
  #: modules/widgets.php:442
1277
  msgid "Download Count"
1278
- msgstr ""
1279
 
1280
  #: modules/widgets.php:443
1281
  msgid "View Count"
1282
- msgstr ""
1283
 
1284
- #: modules/widgets.php:445 wpdm-functions.php:808
1285
  msgid "Update Date"
1286
- msgstr ""
1287
 
1288
  #: modules/widgets.php:446
1289
  msgid "File Size"
1290
- msgstr ""
1291
 
1292
  #: modules/widgets.php:447
1293
  msgid "Download Link"
1294
- msgstr ""
1295
 
1296
  #: modules/widgets.php:448
1297
  msgid "Style"
1298
- msgstr ""
1299
 
1300
  #: modules/widgets.php:448
1301
  msgid "Tabular View"
1302
- msgstr ""
1303
 
1304
  #: tpls/already-logged-in.php:12
1305
  msgid "Welcome"
@@ -1307,19 +1373,47 @@ msgstr ""
1307
 
1308
  #: tpls/already-logged-in.php:14
1309
  msgid "You are already logged in."
1310
- msgstr ""
1311
 
1312
  #: tpls/already-logged-in.php:18
1313
  msgid "Dashboard"
1314
  msgstr ""
1315
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1316
  #: tpls/lock-options-iframe.php:243
1317
  msgid "Buy"
1318
  msgstr ""
1319
 
1320
  #: tpls/simple-search-form.php:5
1321
  msgid "Search Package"
1322
- msgstr ""
1323
 
1324
  #: tpls/simple-search-form.php:18
1325
  msgid "Search Result For"
@@ -1327,12 +1421,12 @@ msgstr ""
1327
 
1328
  #: tpls/simple-search-form.php:19 tpls/simple-search-form.php:23
1329
  msgid "Loading"
1330
- msgstr ""
1331
 
1332
  #: tpls/user-dashboard/download-history.php:11
1333
  #: tpls/user-dashboard/profile.php:83
1334
  msgid "IP"
1335
- msgstr ""
1336
 
1337
  #: tpls/user-dashboard/edit-profile.php:13 tpls/wpdm-edit-user-profile.php:13
1338
  msgid "SAVE FAILED!"
@@ -1345,7 +1439,7 @@ msgstr ""
1345
 
1346
  #: tpls/user-dashboard/edit-profile.php:24 tpls/wpdm-edit-user-profile.php:24
1347
  msgid "Basic Profile"
1348
- msgstr ""
1349
 
1350
  #: tpls/user-dashboard/edit-profile.php:27 tpls/wpdm-edit-user-profile.php:27
1351
  msgid "Display name:"
@@ -1381,7 +1475,7 @@ msgstr ""
1381
 
1382
  #: tpls/user-dashboard/profile.php:7
1383
  msgid "User Level"
1384
- msgstr ""
1385
 
1386
  #: tpls/user-dashboard/profile.php:27
1387
  msgid "Today's Download"
@@ -1397,7 +1491,7 @@ msgstr ""
1397
 
1398
  #: tpls/wpdm-all-downloads.php:110
1399
  msgid "Display _MENU_ downloads per page"
1400
- msgstr ""
1401
 
1402
  #: tpls/wpdm-all-downloads.php:111
1403
  msgid "Nothing _START_ to - sorry"
@@ -1409,15 +1503,15 @@ msgstr ""
1409
 
1410
  #: tpls/wpdm-all-downloads.php:113
1411
  msgid "No downloads available"
1412
- msgstr ""
1413
 
1414
  #: tpls/wpdm-all-downloads.php:114
1415
  msgid "(filtered from _MAX_ total downloads)"
1416
- msgstr ""
1417
 
1418
  #: tpls/wpdm-all-downloads.php:115
1419
  msgid "No data available in table"
1420
- msgstr ""
1421
 
1422
  #: tpls/wpdm-all-downloads.php:118
1423
  msgid "Loading..."
@@ -1425,31 +1519,31 @@ msgstr ""
1425
 
1426
  #: tpls/wpdm-all-downloads.php:120
1427
  msgid "Search:"
1428
- msgstr ""
1429
 
1430
  #: tpls/wpdm-all-downloads.php:122
1431
  msgid "First"
1432
- msgstr ""
1433
 
1434
  #: tpls/wpdm-all-downloads.php:123
1435
  msgid "Last"
1436
- msgstr ""
1437
 
1438
  #: tpls/wpdm-all-downloads.php:128
1439
  msgid "activate to sort column ascending"
1440
- msgstr ""
1441
 
1442
  #: tpls/wpdm-all-downloads.php:129
1443
  msgid "activate to sort column descending"
1444
- msgstr ""
1445
 
1446
  #: tpls/wpdm-all-downloads.php:133
1447
  msgid "All"
1448
- msgstr ""
1449
 
1450
  #: tpls/wpdm-all-downloads.php:157
1451
  msgid "Create Date"
1452
- msgstr ""
1453
 
1454
  #: tpls/wpdm-all-downloads.php:258
1455
  msgid "file(s)"
@@ -1461,7 +1555,7 @@ msgstr ""
1461
 
1462
  #: tpls/wpdm-all-downloads.php:264
1463
  msgid "download"
1464
- msgstr ""
1465
 
1466
  #: tpls/wpdm-all-downloads.php:270
1467
  msgid "views"
@@ -1473,35 +1567,39 @@ msgstr ""
1473
 
1474
  #: tpls/wpdm-all-downloads.php:310
1475
  msgid "No Packages Found"
 
 
 
 
1476
  msgstr ""
1477
 
1478
  #: tpls/wpdm-generate-password.php:17
1479
  msgid "Select Options"
1480
- msgstr ""
1481
 
1482
  #: tpls/wpdm-generate-password.php:19
1483
  msgid "Number of passwords:"
1484
- msgstr ""
1485
 
1486
  #: tpls/wpdm-generate-password.php:23
1487
  msgid "Number of chars for each password:"
1488
- msgstr ""
1489
 
1490
  #: tpls/wpdm-generate-password.php:27
1491
  msgid "Valid chars:"
1492
- msgstr ""
1493
 
1494
  #: tpls/wpdm-generate-password.php:36
1495
  msgid "Generated Passwords"
1496
- msgstr ""
1497
 
1498
  #: tpls/wpdm-generate-password.php:40
1499
  msgid "Generate"
1500
- msgstr ""
1501
 
1502
  #: tpls/wpdm-login-form.php:65
1503
  msgid "Login Failed!"
1504
- msgstr ""
1505
 
1506
  #: tpls/wpdm-login-form.php:72 tpls/wpdm-login-form.php:151
1507
  msgid "Username or Email"
@@ -1509,11 +1607,11 @@ msgstr ""
1509
 
1510
  #: tpls/wpdm-login-form.php:86
1511
  msgid "Remember Me"
1512
- msgstr ""
1513
 
1514
  #: tpls/wpdm-login-form.php:87
1515
  msgid "Forgot Password?"
1516
- msgstr ""
1517
 
1518
  #: tpls/wpdm-login-form.php:94 tpls/wpdm-login-form.php:160
1519
  #: tpls/wpdm-reg-form.php:128
@@ -1554,13 +1652,9 @@ msgstr ""
1554
  msgid "Reset Password"
1555
  msgstr ""
1556
 
1557
- #: tpls/wpdm-login-form.php:159
1558
- msgid "Home"
1559
- msgstr ""
1560
-
1561
  #: tpls/wpdm-login-form.php:161
1562
  msgid "Register"
1563
- msgstr ""
1564
 
1565
  #: tpls/wpdm-login-form.php:176 tpls/wpdm-login-form.php:238
1566
  #: tpls/wpdm-login-form.php:256
@@ -1589,7 +1683,7 @@ msgstr ""
1589
 
1590
  #: tpls/wpdm-login-form.php:215 tpls/wpdm-reg-form.php:83
1591
  msgid "Confirm Password"
1592
- msgstr ""
1593
 
1594
  #: tpls/wpdm-login-form.php:219
1595
  msgid "Update Password"
@@ -1621,11 +1715,11 @@ msgstr ""
1621
 
1622
  #: tpls/wpdm-reg-form.php:59
1623
  msgid "Username"
1624
- msgstr ""
1625
 
1626
  #: tpls/wpdm-reg-form.php:66
1627
  msgid "E-mail"
1628
- msgstr ""
1629
 
1630
  #: tpls/wpdm-reg-form.php:83
1631
  msgid "Not Matched!"
@@ -1633,7 +1727,7 @@ msgstr ""
1633
 
1634
  #: tpls/wpdm-reg-form.php:121
1635
  msgid "Join Now!"
1636
- msgstr ""
1637
 
1638
  #: tpls/wpdm-reg-form.php:128
1639
  msgid "Already have an account?"
@@ -1645,29 +1739,29 @@ msgstr ""
1645
 
1646
  #: tpls/wpdm-reg-form.php:168
1647
  msgid "Registration is disabled!"
1648
- msgstr ""
1649
 
1650
  #: wpdm-core.php:105
1651
  msgid "Select category"
1652
- msgstr ""
1653
 
1654
  #: wpdm-core.php:187
1655
- #, fuzzy
1656
- #| msgid "Package Settings"
1657
  msgid "New Package Notification"
1658
- msgstr "pacchetto Impostazioni"
1659
 
1660
  #: wpdm-core.php:189
 
 
1661
  msgid ": Update Available"
1662
- msgstr ""
1663
 
1664
  #: wpdm-functions.php:145
1665
  msgid "Permission Denied"
1666
- msgstr ""
1667
 
1668
  #: wpdm-functions.php:280
1669
  msgid "Captcha Verification Failed!"
1670
- msgstr ""
1671
 
1672
  #: wpdm-functions.php:319 wpdm-functions.php:323
1673
  msgid "Wrong Password! Try Again."
@@ -1675,90 +1769,73 @@ msgstr ""
1675
 
1676
  #: wpdm-functions.php:336
1677
  msgid "Password usages limit exceeded"
1678
- msgstr ""
1679
 
1680
- #: wpdm-functions.php:787
1681
  msgid "Sub-Categories"
1682
- msgstr ""
1683
 
1684
- #: wpdm-functions.php:805
1685
  msgid "Title"
1686
- msgstr ""
1687
 
1688
- #: wpdm-functions.php:809
1689
  msgid "Asc"
1690
- msgstr ""
1691
 
1692
- #: wpdm-functions.php:810
1693
  msgid "Desc"
1694
- msgstr ""
1695
 
1696
- #: wpdm-functions.php:811
1697
  msgid "Search"
1698
- msgstr ""
1699
 
1700
- #: wpdm-functions.php:812
1701
  msgid "Order"
1702
- msgstr ""
1703
 
1704
- #: wpdm-functions.php:813
1705
  msgid "Order By"
1706
- msgstr ""
1707
 
1708
- #: wpdm-functions.php:1360
1709
- #, fuzzy
1710
- #| msgid "Select"
1711
  msgid "Select Image"
1712
- msgstr "selezionare"
1713
 
1714
- #: wpdm-functions.php:1385 wpdm-functions.php:1479
1715
  msgid "SELECT IMAGE"
1716
  msgstr ""
1717
 
1718
- #: wpdm-functions.php:1460
1719
  msgid "Uploading"
1720
  msgstr ""
1721
 
1722
  #: wpdm-start-download.php:6
1723
  msgid "Your IP address is blocked!"
1724
- msgstr ""
1725
 
1726
  #: wpdm-start-download.php:21
1727
  msgid "Package is not available!"
1728
- msgstr ""
1729
 
1730
  #: wpdm-start-download.php:49
1731
  msgid "Sorry! Download is not available yet."
1732
- msgstr ""
1733
 
1734
  #: wpdm-start-download.php:66
1735
  msgid "Please activate \"zlib\" in your server"
1736
- msgstr ""
1737
 
1738
  #: wpdm-start-download.php:102
1739
  msgid "No file found!"
1740
- msgstr ""
1741
-
1742
- #~ msgid "File Browser Root:"
1743
- #~ msgstr "File Browser Root:"
1744
-
1745
- #~ msgid ""
1746
- #~ "Root dir for server file browser.<br/><b>*Don't add tailing slash (/)</b>"
1747
- #~ msgstr ""
1748
- #~ "Root dir per il browser file server. <br/> <b> * Non aggiungere tailing "
1749
- #~ "slash (/) </ b>"
1750
-
1751
- #~ msgid "Download&nbsp;Limit:"
1752
- #~ msgstr "Limite di Download:"
1753
-
1754
- #~ msgid "Add New Download Package"
1755
- #~ msgstr "Aggiungi Nuovo pacchetto Scarica"
1756
 
1757
- #~ msgid "Enable permalink structure"
1758
- #~ msgstr "Abilita struttura dei permalink"
1759
 
1760
- #~ msgid "Widget Thumb Size"
1761
- #~ msgstr "Widget Thumb Size"
1762
 
1763
- #~ msgid "Permission Denied Message:"
1764
- #~ msgstr "Autorizzazione negata Messaggio:"
1
+ # Translation of Plugins - WordPress Download Manager - Development (trunk) in Italian
2
+ # This file is distributed under the same license as the Plugins - WordPress Download Manager - Development (trunk) package.
3
  msgid ""
4
  msgstr ""
5
+ "Project-Id-Version: Plugins - WordPress Download Manager - Development "
6
+ "(trunk)\n"
7
+ "POT-Creation-Date: 2019-08-19 21:03+0600\n"
8
+ "PO-Revision-Date: 2019-08-19 21:03+0600\n"
9
  "Last-Translator: \n"
10
+ "Language-Team: \n"
11
  "Language: it\n"
12
  "MIME-Version: 1.0\n"
13
  "Content-Type: text/plain; charset=UTF-8\n"
14
  "Content-Transfer-Encoding: 8bit\n"
15
+ "Plural-Forms: nplurals=2; plural=n != 1;\n"
16
+ "X-Generator: Poedit 2.2.3\n"
17
  "X-Poedit-KeywordsList: __;_e\n"
18
  "X-Poedit-Basepath: ..\n"
 
 
19
  "X-Poedit-SearchPath-0: .\n"
20
 
21
  #: admin/class.WordPressDownloadManagerAdmin.php:169
22
  #: admin/tpls/metaboxes/package-settings.php:6
23
  msgid "Package Settings"
24
+ msgstr ""
25
 
26
  #: admin/class.WordPressDownloadManagerAdmin.php:170
27
  msgid "Attach File"
29
 
30
  #: admin/menus/class.Addons.php:23
31
  msgid "Add-Ons &lsaquo; Download Manager"
32
+ msgstr ""
33
 
34
  #: admin/menus/class.Addons.php:23
35
  msgid "Add-Ons"
36
+ msgstr ""
37
 
38
  #: admin/menus/class.Categories.php:47 admin/menus/class.Categories.php:139
39
  msgid "Category Image:"
40
+ msgstr ""
41
 
42
  #: admin/menus/class.Categories.php:49 admin/menus/class.Categories.php:141
43
  msgid "Image URL"
44
+ msgstr ""
45
 
46
  #: admin/menus/class.Categories.php:49 admin/menus/class.Categories.php:141
47
  msgid "Select Category Image"
48
+ msgstr ""
49
 
50
  #: admin/menus/class.Categories.php:49 admin/menus/class.Categories.php:141
51
  msgid "Insert From Media Library"
52
+ msgstr ""
53
 
54
  #: admin/menus/class.Categories.php:106 admin/menus/class.Categories.php:199
55
  msgid "Access:"
59
  msgid ""
60
  "Select the roles who should have access to the packages under this category"
61
  msgstr ""
62
+ "Selezionare i ruoli che dovrebbero avere accesso ai pacchetti in questa "
63
+ "categoria"
64
 
65
  #: admin/menus/class.Categories.php:110 admin/menus/class.Categories.php:215
66
+ #: admin/tpls/metaboxes/package-settings.php:67 tpls/asset-manager-ui.php:825
67
  msgid "All Visitors"
68
+ msgstr "Tutti i Visitatori"
69
 
70
+ #: admin/menus/class.Packages.php:201
71
  msgid "Direct Download"
72
+ msgstr ""
73
 
74
  #: admin/menus/class.Settings.php:19
75
  msgid "Settings &lsaquo; Download Manager"
76
+ msgstr "Impostazioni Download Manager"
77
 
78
  #: admin/menus/class.Settings.php:19
79
  msgid "Settings"
80
  msgstr "Impostazioni"
81
 
82
+ #: admin/menus/class.Settings.php:137 admin/menus/class.Settings.php:165
83
+ #: admin/menus/class.Settings.php:184 admin/menus/class.Settings.php:240
84
+ #: admin/menus/class.Settings.php:256
85
  msgid "Security token is expired! Refresh the page and try again."
86
+ msgstr ""
87
 
88
+ #: admin/menus/class.Settings.php:327
89
  msgid "Privacy Settings Saved Successfully"
90
+ msgstr ""
91
 
92
  #: admin/menus/class.Stats.php:25
93
  msgid "History &lsaquo; Download Manager"
94
+ msgstr "Cronologia; Download Manager"
95
 
96
  #: admin/menus/class.Stats.php:25
97
  msgid "History"
99
 
100
  #: admin/menus/class.Templates.php:21
101
  msgid "Templates &lsaquo; Download Manager"
102
+ msgstr ""
103
 
104
  #: admin/menus/class.Templates.php:21 admin/tpls/email-template-editor.php:9
105
  #: admin/tpls/templates.php:7
 
 
106
  msgid "Templates"
107
+ msgstr ""
108
 
109
+ #: admin/menus/class.Templates.php:142
110
  msgid ""
111
  "No package found! Please create at least 1 package to see template preview"
112
  msgstr ""
 
 
113
 
114
  #: admin/tpls/addons-list.php:226
115
  msgid "WPDM Add-Ons"
117
 
118
  #: admin/tpls/addons-list.php:307
119
  msgid "Failed to connect with server!"
120
+ msgstr "Errore nel connettersi al server!"
121
 
122
  #: admin/tpls/email-template-editor.php:14 admin/tpls/templates.php:12
 
 
123
  msgid "Link Templates"
124
+ msgstr ""
125
 
126
  #: admin/tpls/email-template-editor.php:15 admin/tpls/templates.php:13
 
 
127
  msgid "Page Templates"
128
+ msgstr ""
129
 
130
  #: admin/tpls/email-template-editor.php:16 admin/tpls/templates.php:14
 
 
131
  msgid "Email Templates"
132
+ msgstr ""
133
 
134
  #: admin/tpls/email-template-editor.php:17
 
 
135
  msgid "Email Template Editor"
136
+ msgstr ""
137
 
138
  #: admin/tpls/email-template-editor.php:29
139
  #, php-format
150
  msgstr ""
151
 
152
  #: admin/tpls/email-template-editor.php:44
 
 
153
  msgid "Message"
154
+ msgstr ""
155
 
156
  #: admin/tpls/email-template-editor.php:45
157
  msgid "Preview"
170
  msgid "From Email"
171
  msgstr ""
172
 
173
+ #: admin/tpls/email-template-editor.php:93 admin/tpls/templates.php:185
174
+ #: admin/tpls/templates.php:343 tpls/asset-manager-ui.php:550
175
+ #: tpls/user-dashboard/edit-profile.php:51 tpls/wpdm-edit-user-profile.php:51
176
  msgid "Save Changes"
177
  msgstr ""
178
 
181
  msgstr ""
182
 
183
  #: admin/tpls/email-template-editor.php:203
 
 
184
  msgid "Invalid template ID!"
185
+ msgstr ""
186
 
187
  #: admin/tpls/emails-template.php:15
188
  msgid "Subscribers"
200
  msgid "Emails"
201
  msgstr ""
202
 
203
+ #: admin/tpls/emails-template.php:23 admin/tpls/templates.php:105
 
 
204
  msgid "Email Template"
205
+ msgstr ""
206
 
207
  #: admin/tpls/metaboxes/attach-file.php:6
208
  msgid "attached file is missing/deleted"
209
+ msgstr "manca/cancellato l'allegato"
210
 
211
+ #: admin/tpls/metaboxes/attach-file.php:35
212
  msgid "No file uploaded yet!"
213
+ msgstr "Il file non è stato ancora inviato!"
214
 
215
+ #: admin/tpls/metaboxes/attach-file.php:41
216
  msgid "Upload"
217
  msgstr ""
218
 
219
+ #: admin/tpls/metaboxes/attach-file.php:43 libs/class.FileList.php:305
220
  msgid "Browse"
221
+ msgstr "Esplora"
222
 
223
+ #: admin/tpls/metaboxes/attach-file.php:45
224
  msgid "URL"
225
  msgstr ""
226
 
227
+ #: admin/tpls/metaboxes/attach-file.php:52
228
  msgid "Drop file here"
229
  msgstr ""
230
 
231
+ #: admin/tpls/metaboxes/attach-file.php:74 tpls/asset-manager-ui.php:738
232
+ #: wpdm-functions.php:1379
233
  msgid "Allowed Files"
234
  msgstr ""
235
 
236
+ #: admin/tpls/metaboxes/attach-file.php:151
237
  msgid "Invalid File Type!"
238
+ msgstr "Tipo di File non valido!"
239
 
240
+ #: admin/tpls/metaboxes/attach-file.php:153
241
  msgid "Unauthorized Access!"
242
+ msgstr "Accesso non autorizzato!"
243
 
244
+ #: admin/tpls/metaboxes/attach-file.php:157
245
  msgid "Delete Current File"
246
+ msgstr "Cancella il file corrente"
247
 
248
+ #: admin/tpls/metaboxes/attach-file.php:201 admin/tpls/templates.php:365
249
  msgid "Are you sure?"
250
+ msgstr "Sei sicuro?"
251
 
252
+ #: admin/tpls/metaboxes/attach-file.php:203
253
  msgid ""
254
  "<div class=\"w3eden\"><div class=\"text-danger\"><i class=\"fa fa-check-"
255
  "circle\"></i> Removed!</div></div>"
256
  msgstr ""
257
+ "<div class=\"w3eden\"><div class=\"text-danger\"><i class=\"fa fa-check-"
258
+ "circle\"></i> Rimosso!</div></div>"
259
 
260
  #: admin/tpls/metaboxes/icons.php:112
261
  msgid "Icon URL"
262
+ msgstr "URL dell'icona"
263
 
264
  #: admin/tpls/metaboxes/lock-options.php:2
265
  msgid ""
266
  "You can use one or more of following methods to lock your package download:"
267
  msgstr ""
268
+ "Per risolvere questa situazione è possibile utilizzare uno dei metodi "
269
+ "seguenti:"
270
 
271
  #: admin/tpls/metaboxes/lock-options.php:8
272
  msgid "Must Agree with Terms"
273
+ msgstr "Devi accettare i Termini e le Condizioni"
274
 
275
  #: admin/tpls/metaboxes/lock-options.php:11
276
  msgid "Terms Title:"
277
+ msgstr "Titolo:"
278
 
279
  #: admin/tpls/metaboxes/lock-options.php:13
280
  msgid "Terms and Conditions:"
281
+ msgstr "Termini e Condizioni:"
282
 
283
  #: admin/tpls/metaboxes/lock-options.php:15
284
  msgid "Terms Checkbox Label:"
285
+ msgstr "Etichetta della Casella Contratto:"
286
 
287
  #: admin/tpls/metaboxes/lock-options.php:23
288
  msgid "Enable Password Lock"
289
+ msgstr "Abilita il blocco della Password"
290
 
291
  #: admin/tpls/metaboxes/lock-options.php:26
292
  msgid "Password:"
293
+ msgstr "Password:"
294
 
295
  #: admin/tpls/metaboxes/lock-options.php:29
296
  msgid ""
300
 
301
  #: admin/tpls/metaboxes/lock-options.php:38
302
  msgid "Enable Captcha Lock"
303
+ msgstr "Abilita il blocco del Captcha"
304
 
305
  #: admin/tpls/metaboxes/lock-options.php:41
306
  msgid "Please configure reCAPTCHA"
309
  #: admin/tpls/metaboxes/lock-options.php:42
310
  msgid "Users will be asked for reCAPTCHA verification before download."
311
  msgstr ""
312
+ "Agli utenti verrà richiesto di compilare il reCAPTCHA per poter scaricare."
313
 
314
  #: admin/tpls/metaboxes/package-settings.php:7
315
  msgid "Lock Options"
316
+ msgstr "Opzioni di blocco"
317
 
318
  #: admin/tpls/metaboxes/package-settings.php:8
319
  msgid "Icons"
320
+ msgstr "Icone"
321
 
322
  #: admin/tpls/metaboxes/package-settings.php:22
323
  msgid "Version:"
324
+ msgstr "Versione:"
325
 
326
  #: admin/tpls/metaboxes/package-settings.php:27
327
  msgid "Link Label:"
328
+ msgstr ""
329
 
330
  #: admin/tpls/metaboxes/package-settings.php:32
331
  msgid "File&nbsp;Size:"
332
+ msgstr "Dimensione&nbsp;File:"
333
 
334
  #: admin/tpls/metaboxes/package-settings.php:38
335
  msgid "Stock&nbsp;Limit:"
337
 
338
  #: admin/tpls/metaboxes/package-settings.php:45
339
  msgid "View&nbsp;Count:"
340
+ msgstr "Conteggio&nbsp;Visite:"
341
 
342
  #: admin/tpls/metaboxes/package-settings.php:50
343
  msgid "Download&nbsp;Count:"
344
+ msgstr ""
345
 
346
  #: admin/tpls/metaboxes/package-settings.php:56
347
  msgid "Allow Access:"
348
+ msgstr "Consenti l'Accesso:"
349
 
350
  #: admin/tpls/metaboxes/package-settings.php:58
351
  msgid "Who should be able to download?"
353
 
354
  #: admin/tpls/metaboxes/package-settings.php:87
355
  msgid "Page Template:"
356
+ msgstr ""
357
 
358
  #: admin/tpls/metaboxes/package-settings.php:98
359
  msgid "Master Key"
360
+ msgstr "Chiave Maestra"
361
 
362
  #: admin/tpls/metaboxes/package-settings.php:99
363
  msgid "Regenerate Master Key for Download"
365
 
366
  #: admin/tpls/metaboxes/package-settings.php:99
367
  msgid "This key can be used for direct download"
368
+ msgstr "Questa Chiave potrebbe essere usata per il download diretto"
369
 
370
  #: admin/tpls/settings.php:10 admin/tpls/settings.php:37
371
  msgid "Save Settings"
372
+ msgstr "Salva le impostazioni"
373
 
374
  #: admin/tpls/settings.php:10
375
  msgid "Download Manager Settings"
376
+ msgstr "Impostazioni Download Manager"
377
 
378
  #: admin/tpls/settings/addon-update.php:3
379
  msgid "Check For Updates"
380
+ msgstr "Controlla Aggiornamenti"
381
 
382
  #: admin/tpls/settings/addon-update.php:3 tpls/already-logged-in.php:20
383
  #: tpls/wpdm-dashboard.php:28
384
  msgid "Logout"
385
+ msgstr "Esci"
386
 
387
  #: admin/tpls/settings/addon-update.php:4
388
  msgid "Add-on Update"
391
  #: admin/tpls/settings/addon-update.php:14
392
  #, php-format
393
  msgid "Enter your %s login info"
394
+ msgstr "Scrivi le tue %s credenziali"
395
 
396
  #: admin/tpls/settings/addon-update.php:33
397
  msgid "Click Save Settings Button To Login"
408
  #: admin/tpls/settings/addon-update.php:58
409
  #: admin/tpls/settings/addon-update.php:103
410
  msgid "Product Name"
411
+ msgstr "Nome del prodotto"
412
 
413
  #: admin/tpls/settings/addon-update.php:59
414
  #: admin/tpls/settings/addon-update.php:104
415
  msgid "Active(v)"
416
+ msgstr "Attivi(v)"
417
 
418
  #: admin/tpls/settings/addon-update.php:60
419
  #: admin/tpls/settings/addon-update.php:105
431
  #: libs/class.Package.php:646 libs/class.Package.php:671
432
  #: libs/class.Package.php:738 libs/class.Package.php:821
433
  #: libs/class.Package.php:847 libs/class.Package.php:874
434
+ #: libs/class.Package.php:1246 libs/class.PackageLocks.php:59
435
  #: libs/class.PackageLocks.php:96 tpls/lock-options-iframe.php:243
436
+ #: tpls/wpdm-all-downloads.php:158 tpls/wpdm-asset.php:21
437
+ #: wpdm-functions.php:103 wpdm-functions.php:128 wpdm-functions.php:194
438
  msgid "Download"
439
+ msgstr "Scarica"
440
 
441
  #: admin/tpls/settings/addon-update.php:85
442
  #: admin/tpls/settings/addon-update.php:126
443
  msgid "Install"
444
+ msgstr "Installa"
445
 
446
  #: admin/tpls/settings/addon-update.php:87
447
  #: admin/tpls/settings/addon-update.php:128
448
  msgid "Update"
449
+ msgstr "Aggiorna"
450
 
451
  #: admin/tpls/settings/addon-update.php:88
452
  #: admin/tpls/settings/addon-update.php:129
453
  msgid "Updated"
454
+ msgstr "Aggiornati"
455
 
456
  #: admin/tpls/settings/addon-update.php:90
457
  msgid "Expired"
458
+ msgstr "Scaduti"
459
 
460
  #: admin/tpls/settings/addon-update.php:144 tpls/wpdm-login-form.php:170
461
  #: tpls/wpdm-login-form.php:232 tpls/wpdm-reg-form.php:150
462
  msgid "Please Wait..."
463
+ msgstr "Attendere........"
464
 
465
  #: admin/tpls/settings/addon-update.php:146
466
  msgid "Success!"
467
+ msgstr "Completato!"
468
 
469
  #: admin/tpls/settings/basic.php:29
470
  msgid "Messages"
471
+ msgstr "Messaggi"
472
 
473
  #: admin/tpls/settings/basic.php:34
474
  msgid "Permission Denied Message for Packages:"
480
 
481
  #: admin/tpls/settings/basic.php:51
482
  msgid "Server File Browser"
483
+ msgstr "Esplora i File nel Server"
484
 
485
  #: admin/tpls/settings/basic.php:55
486
  msgid "Server File Browser Base Dir:"
492
 
493
  #: admin/tpls/settings/basic.php:65
494
  msgid "File Browser Access:"
495
+ msgstr "Accedi all'Esplorazione dei File"
496
 
497
  #: admin/tpls/settings/basic.php:66
498
  msgid "Who will have access to server file browser"
499
+ msgstr "Chi potrebbe accedere all'Esplorazione dei File"
500
 
501
  #: admin/tpls/settings/basic.php:98
502
  msgid "Upload Settings"
503
+ msgstr "Impostazioni per l'Invio"
504
 
505
  #: admin/tpls/settings/basic.php:102
506
  msgid "Sanitize Filename"
511
  "Check the option if you want to sanitize uploaded file names to remove "
512
  "illegal chars"
513
  msgstr ""
514
+ "Scegli questa opzione se vuoi togliere i caratteri inutili dai nomi dei File"
515
 
516
  #: admin/tpls/settings/basic.php:110
517
  msgid "Chunk Upload"
529
 
530
  #: admin/tpls/settings/basic.php:129
531
  msgid "File Download"
532
+ msgstr "Scarica File"
533
 
534
  #: admin/tpls/settings/basic.php:133
535
  msgid "Download Speed:"
537
 
538
  #: admin/tpls/settings/basic.php:141
539
  msgid "Blocked IPs"
540
+ msgstr "IP bloccati"
541
 
542
  #: admin/tpls/settings/basic.php:143
543
  msgid "One IP per line"
544
+ msgstr "Un IP per riga"
545
 
546
  #: admin/tpls/settings/basic.php:144
547
  msgid ""
549
  "or 192.168.23.1/24 or 192.168.23.* , IPv6 - 2a01:8760:2:3001::1 or "
550
  "2620:112:3000::/44 )"
551
  msgstr ""
552
+ "Elenca gli IP da Bloccare. Un IP per riga ( Es: IPv4 - 192.168.23.12 o "
553
+ "192.168.23.1/24 o 192.168.23.* , IPv6 - 2a01:8760:2:3001::1 o "
554
+ "2620:112:3000::/44 )"
555
 
556
  #: admin/tpls/settings/basic.php:147
557
  msgid "Write a Message for Blocked IPs"
558
+ msgstr "Scrivi un Messaggio per gli IP bloccati"
559
 
560
  #: admin/tpls/settings/basic.php:148
561
  msgid "Message for Blocked IPs"
562
+ msgstr "Messaggio per IP bloccati"
563
 
564
  #: admin/tpls/settings/basic.php:152
565
  msgid ""
566
  "If you get broken download, then try enabling/disabling following options, "
567
  "as sometimes server may not support output buffering or partial downloads"
568
  msgstr ""
569
+ "Se ottieni un File corrotto, prova a disabilitare/abilitare le seguenti "
570
+ "opzioni, a volte il server non consente il buffering o gli scarichi parziali."
571
 
572
  #: admin/tpls/settings/basic.php:155
573
  msgid "Resumable Downloads"
575
 
576
  #: admin/tpls/settings/basic.php:157 admin/tpls/settings/basic.php:164
577
  msgid "Enabled"
578
+ msgstr "Abilitato"
579
 
580
  #: admin/tpls/settings/basic.php:158 admin/tpls/settings/basic.php:165
581
  msgid "Disabled"
582
+ msgstr "Disabilitato"
583
 
584
  #: admin/tpls/settings/basic.php:162
585
  msgid "Output Buffering"
586
+ msgstr "Buffering in Uscita"
587
 
588
  #: admin/tpls/settings/basic.php:171
589
  msgid "Open in Browser"
590
+ msgstr "Apri con il Browser"
591
 
592
  #: admin/tpls/settings/basic.php:172
593
  msgid ""
594
  "Try to Open in Browser instead of download when someone clicks on download "
595
  "link"
596
  msgstr ""
597
+ "Prova ad aprire con il Browser invece di scaricare quando qualcuno clicca "
598
+ "sul collegamento"
599
 
600
  #: admin/tpls/settings/basic.php:178
601
  msgid "reCAPTCHA Lock Settings"
610
  "Register a new site for reCAPTCHA from <a target=\"_blank\" href=\"https://"
611
  "www.google.com/recaptcha/admin#list\">here</a>"
612
  msgstr ""
613
+ "Registra un nuovo Sito per il reCAPTCHA cliccando <a target=\"_blank\" href="
614
+ "\"https://www.google.com/recaptcha/admin#list\">qui</a>"
615
 
616
  #: admin/tpls/settings/basic.php:185
617
  msgid "reCAPTCHA Secret Key"
619
 
620
  #: admin/tpls/settings/basic.php:198
621
  msgid "Misc Settings"
622
+ msgstr "Altre Impostazioni"
623
 
624
  #: admin/tpls/settings/basic.php:203
625
  msgid "Login Page"
628
  #: admin/tpls/settings/basic.php:204 admin/tpls/settings/basic.php:210
629
  #: admin/tpls/settings/basic.php:215
630
  msgid "None Selected"
631
+ msgstr "Nessuno selezionato"
632
 
633
  #: admin/tpls/settings/basic.php:205 admin/tpls/settings/basic.php:211
634
  #: admin/tpls/settings/basic.php:216
635
  #, php-format
636
  msgid "The page where you used short-code %s"
637
+ msgstr "La pagina dove hai usato short-code %s"
638
 
639
  #: admin/tpls/settings/basic.php:209
640
  msgid "Register Page"
641
+ msgstr "Pagina di Registrazione"
642
 
643
  #: admin/tpls/settings/basic.php:214
644
  msgid "Dashboard Page"
656
  msgstr ""
657
 
658
  #: admin/tpls/settings/privacy.php:9
 
 
659
  msgid "Privacy Settings"
660
+ msgstr ""
661
 
662
  #: admin/tpls/settings/privacy.php:13
663
  msgid "Do not store visitor's IP"
695
 
696
  #: admin/tpls/settings/user-interface.php:20
697
  msgid "Bootstrap JS"
698
+ msgstr "Ricarica il JS"
699
 
700
  #: admin/tpls/settings/user-interface.php:21
701
  msgid "Bootstrap CSS"
702
+ msgstr "Ricarica il CSS"
703
 
704
  #: admin/tpls/settings/user-interface.php:22
705
  msgid "Font Awesome"
716
  #: admin/tpls/settings/user-interface.php:26
717
  msgid ""
718
  "Because, sometimes your theme may have those scripts/styles enqueued already"
719
+ msgstr "A volte il tuo tema ha già questi codici "
720
 
721
  #: admin/tpls/settings/user-interface.php:32
722
  msgid "Colors"
735
  msgstr ""
736
 
737
  #: admin/tpls/settings/user-interface.php:66
 
 
738
  msgid "Success:"
739
+ msgstr ""
740
 
741
  #: admin/tpls/settings/user-interface.php:72
742
  msgid "Warning:"
774
  #: admin/tpls/stats.php:8 libs/class.UserDashboard.php:18
775
  #: tpls/already-logged-in.php:19
776
  msgid "Download History"
777
+ msgstr "Cronologia dei Download"
778
 
779
  #: admin/tpls/stats.php:31
780
  msgid "Are you sure? There is no going back!"
781
+ msgstr "Sei sicuro? Impossibile annullare!"
782
 
783
  #: admin/tpls/stats.php:35
784
  msgid "Clearing..."
785
  msgstr ""
786
 
787
  #: admin/tpls/stats.php:38
 
 
788
  msgid "Download History is Empty"
789
+ msgstr "L'elenco dei download è vuoto"
790
 
791
  #: admin/tpls/stats/history.php:6 tpls/user-dashboard/download-history.php:9
792
  #: tpls/user-dashboard/profile.php:81
793
  msgid "Package Name"
794
+ msgstr "Nome Pacchetto"
795
 
796
  #: admin/tpls/stats/history.php:7 tpls/user-dashboard/download-history.php:10
797
  #: tpls/user-dashboard/profile.php:82
798
  msgid "Download Time"
799
+ msgstr "Tempo stimato"
800
 
801
  #: admin/tpls/stats/history.php:8
802
  msgid "User/IP"
814
  msgstr ""
815
 
816
  #: admin/tpls/templates.php:28
 
 
817
  msgid "Template ID"
818
+ msgstr ""
819
 
820
  #: admin/tpls/templates.php:30
821
  msgid "Actions"
829
  msgid "Edit"
830
  msgstr ""
831
 
832
+ #: admin/tpls/templates.php:122 admin/tpls/templates.php:123
833
  msgid "Logo URL"
834
  msgstr ""
835
 
836
+ #: admin/tpls/templates.php:126 admin/tpls/templates.php:127
837
  msgid "Banner/Background Image URL"
838
  msgstr ""
839
 
840
+ #: admin/tpls/templates.php:138
841
  msgid "Footer Text"
842
  msgstr ""
843
 
844
+ #: admin/tpls/templates.php:142
845
  msgid "Facebook Page URL"
846
  msgstr ""
847
 
848
+ #: admin/tpls/templates.php:146
849
  msgid "Twitter Profile URL"
850
  msgstr ""
851
 
852
+ #: admin/tpls/templates.php:150
853
  msgid "Youtube Profile URL"
854
  msgstr ""
855
 
856
+ #: admin/tpls/templates.php:200
857
  msgid "Template Preview"
858
  msgstr ""
859
 
860
+ #: admin/tpls/templates.php:206
861
  msgid ""
862
  "This is a preview, original template color scheme may look little different, "
863
  "but structure will be same"
864
  msgstr ""
865
 
866
+ #: admin/tpls/templates.php:339
867
  msgid "Saving..."
868
  msgstr ""
869
 
870
+ #: download-manager.php:173 download-manager.php:185 wpdm-functions.php:763
871
+ #: wpdm-functions.php:782
872
  msgid "Downloads"
873
  msgstr ""
874
 
875
+ #: download-manager.php:174 libs/class.FileList.php:67
876
  msgid "File"
877
+ msgstr "File"
878
 
879
+ #: download-manager.php:175
880
  msgid "Add New"
881
+ msgstr "Aggiungi nuovo"
882
 
883
+ #: download-manager.php:176
884
  msgid "Add New File"
885
+ msgstr "Aggiungi nuovo file"
886
 
887
+ #: download-manager.php:177
888
  msgid "Edit File"
889
+ msgstr "Modifica File"
890
 
891
+ #: download-manager.php:178
892
  msgid "New File"
893
+ msgstr "Nuovo File"
894
 
895
+ #: download-manager.php:179
896
  msgid "All Files"
897
+ msgstr "Tutti i file"
898
 
899
+ #: download-manager.php:180
900
  msgid "View File"
901
+ msgstr "Vedi File"
902
 
903
+ #: download-manager.php:181
904
  msgid "Search Files"
905
+ msgstr "Cerca nei File"
906
 
907
+ #: download-manager.php:182
908
  msgid "No File Found"
909
+ msgstr "Nessun file trovato"
910
 
911
+ #: download-manager.php:183
912
  msgid "No Files found in Trash"
913
+ msgstr "Nessun file nel cestino"
914
 
915
+ #: download-manager.php:214 download-manager.php:224
916
  #: tpls/wpdm-all-downloads.php:156
917
  msgid "Categories"
918
+ msgstr "Categorie"
919
 
920
+ #: download-manager.php:215
921
  msgid "Category"
922
+ msgstr "Categoria"
923
 
924
+ #: download-manager.php:216
925
  msgid "Search Categories"
926
+ msgstr "Cerca categorie"
927
 
928
+ #: download-manager.php:217
929
  msgid "All Categories"
930
+ msgstr "Tutte le Categorie"
931
 
932
+ #: download-manager.php:218
933
  msgid "Parent Category"
934
+ msgstr "Categoria genitore"
935
 
936
+ #: download-manager.php:219
937
  msgid "Parent Category:"
938
+ msgstr "Categoria genitore:"
939
 
940
+ #: download-manager.php:220
941
  msgid "Edit Category"
942
+ msgstr "Modifica categoria"
943
 
944
+ #: download-manager.php:221
945
  msgid "Update Category"
946
+ msgstr "Aggiorna categoria"
947
 
948
+ #: download-manager.php:222
949
  msgid "Add New Category"
950
+ msgstr "Aggiungi una nuova categoria"
951
 
952
+ #: download-manager.php:223
953
  msgid "New Category Name"
954
  msgstr ""
955
 
959
 
960
  #: libs/class.Apply.php:193 libs/class.Apply.php:194
961
  msgid "Error: User registration is disabled!"
962
+ msgstr "Errore: la registrazione degli utenti è disabilitata!"
963
 
964
  #: libs/class.Apply.php:209
965
  msgid "Username is Empty!"
966
+ msgstr "Nome Utente vuoto!"
967
 
968
  #: libs/class.Apply.php:218
969
  msgid "Invalid Email Address!"
970
+ msgstr "Indirizzo email non valido!"
971
 
972
  #: libs/class.Apply.php:235
973
  msgid "Password: "
1010
 
1011
  #: libs/class.Apply.php:518
1012
  msgid "You don't have permission to download this file"
1013
+ msgstr "Non hai il permesso di scaricare questo file"
1014
 
1015
  #: libs/class.Apply.php:525
1016
  msgid "Download link is expired. Please get new download link."
1017
  msgstr ""
1018
+ "Link per il download scaduto. Si prega di ottenere nuovi link per il "
1019
+ "download."
1020
 
1021
  #: libs/class.Apply.php:527
1022
  msgid "Download link is expired or not valid. Please get new download link."
1023
  msgstr ""
1024
+ "Link per il download scaduto o non valido. Si prega di ottenere nuovi link "
1025
+ "per il download."
1026
 
1027
  #: libs/class.Apply.php:534
1028
  msgid "Stock Limit Reached"
1030
 
1031
  #: libs/class.Apply.php:540
1032
  msgid "Invalid download link."
1033
+ msgstr "Link non valido."
1034
 
1035
  #: libs/class.Apply.php:634
1036
  msgid "Price"
1037
+ msgstr "Prezzo"
1038
+
1039
+ #: libs/class.AssetManager.php:114
1040
+ msgid ""
1041
+ "Download link is expired! Go back and Refresh the page to regenerate "
1042
+ "download link"
1043
+ msgstr ""
1044
+
1045
+ #: libs/class.AssetManager.php:235
1046
+ msgid "Asset Manager"
1047
+ msgstr ""
1048
+
1049
+ #: libs/class.AssetManager.php:240 libs/class.AssetManager.php:254
1050
+ #: libs/class.AssetManager.php:270 libs/class.AssetManager.php:272
1051
+ #: libs/class.AssetManager.php:326 libs/class.AssetManager.php:328
1052
+ #: libs/class.AssetManager.php:344 libs/class.AssetManager.php:346
1053
+ #: libs/class.AssetManager.php:385 libs/class.AssetManager.php:402
1054
+ #: libs/class.AssetManager.php:404 libs/class.AssetManager.php:421
1055
+ #: libs/class.AssetManager.php:423 libs/class.AssetManager.php:437
1056
+ #: libs/class.AssetManager.php:439 libs/class.AssetManager.php:459
1057
+ #: libs/class.AssetManager.php:461
1058
+ msgid "Error! Session Expired. Try refreshing page."
1059
+ msgstr ""
1060
+
1061
+ #: libs/class.AssetManager.php:242 libs/class.AssetManager.php:256
1062
+ #: libs/class.AssetManager.php:387
1063
+ msgid "Error! Unauthorized Access."
1064
+ msgstr ""
1065
+
1066
+ #: libs/class.AssetManager.php:246 libs/class.AssetManager.php:259
1067
+ #: libs/class.AssetManager.php:277 libs/class.AssetManager.php:332
1068
+ #: libs/class.AssetManager.php:349 libs/class.AssetManager.php:390
1069
+ #: libs/class.AssetManager.php:395 libs/class.AssetManager.php:409
1070
+ #: libs/class.AssetManager.php:557
1071
+ msgid "Error! Unauthorized Path."
1072
+ msgstr ""
1073
+
1074
+ #: libs/class.AssetManager.php:309 tpls/wpdm-login-form.php:159
1075
+ msgid "Home"
1076
+ msgstr ""
1077
+
1078
+ #: libs/class.AssetManager.php:446 libs/class.AssetManager.php:469
1079
+ msgid "Invalid source path"
1080
+ msgstr ""
1081
+
1082
+ #: libs/class.AssetManager.php:447 libs/class.AssetManager.php:470
1083
+ msgid "Invalid destination path"
1084
+ msgstr ""
1085
+
1086
+ #: libs/class.AssetManager.php:455
1087
+ msgid "File moved successfully"
1088
+ msgstr ""
1089
+
1090
+ #: libs/class.AssetManager.php:473
1091
+ msgid "File copied successfully"
1092
+ msgstr ""
1093
+
1094
+ #: libs/class.AssetManager.php:516 libs/class.AssetManager.php:523
1095
+ msgid "Asset not found!"
1096
+ msgstr ""
1097
+
1098
+ #: libs/class.AssetManager.php:558
1099
+ msgid "Error! Invalid Destination Path."
1100
+ msgstr ""
1101
+
1102
+ #: libs/class.AssetManager.php:559
1103
+ msgid "Please activate \"zlib\" in your server to perform zip operations"
1104
+ msgstr ""
1105
+
1106
+ #: libs/class.AssetManager.php:564
1107
+ msgid "Unzipped successfully."
1108
+ msgstr ""
1109
+
1110
+ #: libs/class.AssetManager.php:566
1111
+ msgid "Error! Couldn't open the zip file."
1112
  msgstr ""
1113
 
1114
  #: libs/class.Email.php:20
 
 
1115
  msgid "General Email Template"
1116
+ msgstr "Modello di Email Generica"
1117
 
1118
  #: libs/class.Email.php:29
1119
  msgid "User Signup Notification"
1122
  #: libs/class.Email.php:32
1123
  #, php-format
1124
  msgid "Welcome to %s"
1125
+ msgstr "Benvenuto a %s"
1126
 
1127
  #: libs/class.Email.php:39
1128
  msgid "Password Reset Notification"
1134
  msgstr ""
1135
 
1136
  #: libs/class.Email.php:49
 
 
1137
  msgid "Email Lock Notification"
1138
+ msgstr ""
1139
 
1140
  #: libs/class.Email.php:52
 
 
1141
  msgid "Download [#package_name#]"
1142
+ msgstr "Scarica [#package_name#]"
1143
 
1144
  #: libs/class.Email.php:201
1145
  msgid "Sample Package Name"
1149
  #: libs/class.FileList.php:132 libs/class.FileList.php:200
1150
  #: tpls/wpdm-login-form.php:78 tpls/wpdm-reg-form.php:79
1151
  msgid "Password"
1152
+ msgstr "Password"
1153
 
1154
  #: libs/class.FileList.php:63
1155
  msgid "Action"
1156
+ msgstr "Azione"
1157
 
1158
  #: libs/class.Messages.php:32
1159
  msgid "Operation Failed!"
1160
+ msgstr "Operazione fallita!"
1161
 
1162
  #: libs/class.Messages.php:44
1163
  msgid "Warning!"
1164
+ msgstr "Allarme!"
1165
 
1166
  #: libs/class.Messages.php:56
1167
  msgid "Attention!"
1168
+ msgstr "Attenzione!"
1169
 
1170
  #: libs/class.Messages.php:68
1171
  msgid "Awesome!"
1172
+ msgstr "Terribile!"
1173
 
1174
  #: libs/class.Package.php:26
1175
  msgid "ID missing!"
1176
+ msgstr "Manca l'ID!"
1177
 
1178
  #: libs/class.Package.php:127 libs/class.Package.php:130
1179
  #: libs/class.Package.php:132
1180
  msgid "Icon"
1181
+ msgstr "Icona"
1182
 
1183
  #: libs/class.Package.php:135 libs/class.Package.php:142
1184
  msgid "Thumbnail"
1185
+ msgstr "Miniatura"
1186
 
1187
  #: libs/class.Package.php:164 libs/class.Package.php:655
1188
  #: libs/class.Package.php:856 wpdm-functions.php:112 wpdm-start-download.php:23
1189
  msgid "Download Limit Exceeded"
1190
+ msgstr "Limite di scaricamento superato"
1191
 
1192
  #: libs/class.Package.php:167 libs/class.Package.php:175
1193
  #: libs/class.Package.php:183 libs/class.Package.php:191
1197
  #: libs/class.Package.php:172 libs/class.Package.php:659
1198
  #: libs/class.Package.php:860 wpdm-functions.php:116
1199
  msgid "Download was expired on"
1200
+ msgstr "Il Download è scaduto il"
1201
 
1202
  #: libs/class.Package.php:180 libs/class.Package.php:666
1203
  #: libs/class.Package.php:868 wpdm-functions.php:123
1204
  msgid "Download will be available from "
1205
+ msgstr "Il download sarà disponibile da "
1206
 
1207
  #: libs/class.Package.php:214
1208
  msgid "Terms and Conditions"
1209
+ msgstr "Termini e Condizioni"
1210
 
1211
  #: libs/class.Package.php:215
1212
  msgid "I Agree"
1214
 
1215
  #: libs/class.Package.php:470
1216
  msgid "No File Attached!"
1217
+ msgstr "Nessun Allegato!"
1218
 
1219
  #: libs/class.Package.php:661 libs/class.Package.php:668
1220
  #: libs/class.Package.php:678 wpdm-functions.php:118 wpdm-functions.php:125
1221
  #: wpdm-functions.php:135
1222
  msgid "Download:"
1223
+ msgstr "Download:"
1224
 
1225
  #: libs/class.Package.php:760 wpdm-functions.php:216
1226
  msgid "Download limit exceeded!"
1227
+ msgstr "Limite di scaricamento superato!"
1228
 
1229
  #: libs/class.Package.php:787
1230
  msgid "Verify CAPTCHA to Download"
1231
+ msgstr "Verifica il Captcha per scaricare"
1232
 
1233
  #: libs/class.Package.php:863 libs/class.Package.php:871
1234
  #: libs/class.Package.php:881
1241
 
1242
  #: libs/class.PackageLocks.php:29
1243
  msgid "Enter Correct Password to Download"
1244
+ msgstr "Scrivi la Password per scaricare gratuitamente"
1245
 
1246
  #: libs/class.PackageLocks.php:32 libs/class.PackageLocks.php:48
1247
  #: tpls/wpdm-all-downloads.php:119
1250
 
1251
  #: libs/class.PackageLocks.php:39
1252
  msgid "Enter Password"
1253
+ msgstr "Scrivi la Password"
1254
 
1255
  #: libs/class.PackageLocks.php:40
1256
  msgid "Submit"
1257
+ msgstr "Invia"
1258
 
1259
  #: libs/class.Pagination.php:50 tpls/wpdm-all-downloads.php:125
1260
+ #: tpls/wpdm-all-downloads.php:331 wpdm-functions.php:1767
1261
  msgid "Previous"
1262
+ msgstr "Precedente"
1263
 
1264
  #: libs/class.Pagination.php:51 tpls/wpdm-all-downloads.php:124
1265
+ #: tpls/wpdm-all-downloads.php:332 wpdm-functions.php:1768
1266
  msgid "Next"
1267
+ msgstr "Successivo"
1268
 
1269
  #: libs/class.ShortCodes.php:121
1270
  msgid "User registration is disabled"
1271
+ msgstr "Errore: la registrazione degli utenti è disabilitata"
1272
 
1273
  #: libs/class.StreamMedia.php:34
1274
  msgid "Failed To Open File!"
1280
 
1281
  #: libs/class.UserDashboard.php:19
1282
  msgid "Edit Profile"
1283
+ msgstr "Modifica il tuo profilo"
1284
 
1285
  #: libs/class.UserDashboard.php:27
1286
  msgid "Account"
1288
 
1289
  #: modules/server-file-browser.php:8
1290
  msgid "Not Allowed!"
1291
+ msgstr "Non hai i permessi per farlo!"
1292
 
1293
  #: modules/server-file-browser.php:81
1294
  msgid "Add file(s) from server"
1295
+ msgstr "Aggiungi File dal Server"
1296
 
1297
  #: modules/widgets.php:35
1298
  msgid "WPDM Affiliate ID:"
1305
 
1306
  #: modules/widgets.php:168 modules/widgets.php:233 modules/widgets.php:329
1307
  msgid "Number of packages to show:"
1308
+ msgstr "Numero di pacchetti da visualizzare:"
1309
 
1310
  #: modules/widgets.php:172 modules/widgets.php:238 modules/widgets.php:334
1311
  msgid "Link Template:"
1313
 
1314
  #: modules/widgets.php:323
1315
  msgid "Select Category:"
1316
+ msgstr "Seleziona una categoria:"
1317
 
1318
  #: modules/widgets.php:358 tpls/user-dashboard/profile.php:19
1319
  msgid "Total Downloads"
1320
+ msgstr "Downloads Totali"
1321
 
1322
  #: modules/widgets.php:359
1323
  msgid "Total Views"
1324
+ msgstr "Viste Totali"
1325
 
1326
+ #: modules/widgets.php:360 modules/widgets.php:444 wpdm-functions.php:783
1327
  msgid "Publish Date"
1328
+ msgstr "Data di Pubblicazione"
1329
 
1330
  #: modules/widgets.php:361
1331
  msgid "Last Updated"
1332
+ msgstr "Ultimo aggiornamento"
1333
 
1334
  #: modules/widgets.php:362
1335
  msgid "Size"
1336
+ msgstr "Dimensione"
1337
 
1338
  #: modules/widgets.php:439
1339
  msgid "Fields to Show:"
1340
+ msgstr "Campi da Mostrare:"
1341
 
1342
  #: modules/widgets.php:442
1343
  msgid "Download Count"
1344
+ msgstr "Conteggio Download"
1345
 
1346
  #: modules/widgets.php:443
1347
  msgid "View Count"
1348
+ msgstr "Conteggio Viste"
1349
 
1350
+ #: modules/widgets.php:445 wpdm-functions.php:784
1351
  msgid "Update Date"
1352
+ msgstr "Data aggiornamento"
1353
 
1354
  #: modules/widgets.php:446
1355
  msgid "File Size"
1356
+ msgstr "Dimensioni file"
1357
 
1358
  #: modules/widgets.php:447
1359
  msgid "Download Link"
1360
+ msgstr "Link per il Download"
1361
 
1362
  #: modules/widgets.php:448
1363
  msgid "Style"
1364
+ msgstr "Stile"
1365
 
1366
  #: modules/widgets.php:448
1367
  msgid "Tabular View"
1368
+ msgstr "Vista Tabulare"
1369
 
1370
  #: tpls/already-logged-in.php:12
1371
  msgid "Welcome"
1373
 
1374
  #: tpls/already-logged-in.php:14
1375
  msgid "You are already logged in."
1376
+ msgstr "Sei già autenticato."
1377
 
1378
  #: tpls/already-logged-in.php:18
1379
  msgid "Dashboard"
1380
  msgstr ""
1381
 
1382
+ #: tpls/asset-manager-ui.php:500
1383
+ msgid "New Folder"
1384
+ msgstr ""
1385
+
1386
+ #: tpls/asset-manager-ui.php:502 tpls/asset-manager-ui.php:706
1387
+ msgid "Upload File"
1388
+ msgstr ""
1389
+
1390
+ #: tpls/asset-manager-ui.php:508
1391
+ msgid "Digital Asset Manager"
1392
+ msgstr ""
1393
+
1394
+ #: tpls/asset-manager-ui.php:611
1395
+ msgid "Copy Shortcode"
1396
+ msgstr ""
1397
+
1398
+ #: tpls/asset-manager-ui.php:713
1399
+ msgid "Drop files here"
1400
+ msgstr ""
1401
+
1402
+ #: tpls/asset-manager-ui.php:820
1403
+ msgid "Authorized User Groups:"
1404
+ msgstr ""
1405
+
1406
+ #: tpls/asset-manager-ui.php:842
1407
+ msgid "Authorized Users:"
1408
+ msgstr ""
1409
+
1410
  #: tpls/lock-options-iframe.php:243
1411
  msgid "Buy"
1412
  msgstr ""
1413
 
1414
  #: tpls/simple-search-form.php:5
1415
  msgid "Search Package"
1416
+ msgstr "Nome del Pacchetto Campione"
1417
 
1418
  #: tpls/simple-search-form.php:18
1419
  msgid "Search Result For"
1421
 
1422
  #: tpls/simple-search-form.php:19 tpls/simple-search-form.php:23
1423
  msgid "Loading"
1424
+ msgstr "Carico"
1425
 
1426
  #: tpls/user-dashboard/download-history.php:11
1427
  #: tpls/user-dashboard/profile.php:83
1428
  msgid "IP"
1429
+ msgstr "IP"
1430
 
1431
  #: tpls/user-dashboard/edit-profile.php:13 tpls/wpdm-edit-user-profile.php:13
1432
  msgid "SAVE FAILED!"
1439
 
1440
  #: tpls/user-dashboard/edit-profile.php:24 tpls/wpdm-edit-user-profile.php:24
1441
  msgid "Basic Profile"
1442
+ msgstr "Profilo di Base"
1443
 
1444
  #: tpls/user-dashboard/edit-profile.php:27 tpls/wpdm-edit-user-profile.php:27
1445
  msgid "Display name:"
1475
 
1476
  #: tpls/user-dashboard/profile.php:7
1477
  msgid "User Level"
1478
+ msgstr "Livello Utente"
1479
 
1480
  #: tpls/user-dashboard/profile.php:27
1481
  msgid "Today's Download"
1491
 
1492
  #: tpls/wpdm-all-downloads.php:110
1493
  msgid "Display _MENU_ downloads per page"
1494
+ msgstr "Mostra _MENU_ per pagina"
1495
 
1496
  #: tpls/wpdm-all-downloads.php:111
1497
  msgid "Nothing _START_ to - sorry"
1503
 
1504
  #: tpls/wpdm-all-downloads.php:113
1505
  msgid "No downloads available"
1506
+ msgstr "Non ci sono download disponibili"
1507
 
1508
  #: tpls/wpdm-all-downloads.php:114
1509
  msgid "(filtered from _MAX_ total downloads)"
1510
+ msgstr "(filtrato da _MAX_ voci totali)"
1511
 
1512
  #: tpls/wpdm-all-downloads.php:115
1513
  msgid "No data available in table"
1514
+ msgstr "Nessun dato presente nella tabella"
1515
 
1516
  #: tpls/wpdm-all-downloads.php:118
1517
  msgid "Loading..."
1519
 
1520
  #: tpls/wpdm-all-downloads.php:120
1521
  msgid "Search:"
1522
+ msgstr "Ricerca:"
1523
 
1524
  #: tpls/wpdm-all-downloads.php:122
1525
  msgid "First"
1526
+ msgstr "Primo"
1527
 
1528
  #: tpls/wpdm-all-downloads.php:123
1529
  msgid "Last"
1530
+ msgstr "Ultimo"
1531
 
1532
  #: tpls/wpdm-all-downloads.php:128
1533
  msgid "activate to sort column ascending"
1534
+ msgstr "attiva per ordinare la colonna in ordine crescente"
1535
 
1536
  #: tpls/wpdm-all-downloads.php:129
1537
  msgid "activate to sort column descending"
1538
+ msgstr "attiva per ordinare la colonna in ordine decrescente"
1539
 
1540
  #: tpls/wpdm-all-downloads.php:133
1541
  msgid "All"
1542
+ msgstr "Tutti"
1543
 
1544
  #: tpls/wpdm-all-downloads.php:157
1545
  msgid "Create Date"
1546
+ msgstr "Data di Pubblicazione"
1547
 
1548
  #: tpls/wpdm-all-downloads.php:258
1549
  msgid "file(s)"
1555
 
1556
  #: tpls/wpdm-all-downloads.php:264
1557
  msgid "download"
1558
+ msgstr "download"
1559
 
1560
  #: tpls/wpdm-all-downloads.php:270
1561
  msgid "views"
1567
 
1568
  #: tpls/wpdm-all-downloads.php:310
1569
  msgid "No Packages Found"
1570
+ msgstr "Pacchetti non trovati"
1571
+
1572
+ #: tpls/wpdm-asset.php:23
1573
+ msgid "Login to Download"
1574
  msgstr ""
1575
 
1576
  #: tpls/wpdm-generate-password.php:17
1577
  msgid "Select Options"
1578
+ msgstr "Opzioni di scelta"
1579
 
1580
  #: tpls/wpdm-generate-password.php:19
1581
  msgid "Number of passwords:"
1582
+ msgstr "Numero di passwords:"
1583
 
1584
  #: tpls/wpdm-generate-password.php:23
1585
  msgid "Number of chars for each password:"
1586
+ msgstr "Numero di caratteri di ogni password:"
1587
 
1588
  #: tpls/wpdm-generate-password.php:27
1589
  msgid "Valid chars:"
1590
+ msgstr "Caratteri validi:"
1591
 
1592
  #: tpls/wpdm-generate-password.php:36
1593
  msgid "Generated Passwords"
1594
+ msgstr "Password Create"
1595
 
1596
  #: tpls/wpdm-generate-password.php:40
1597
  msgid "Generate"
1598
+ msgstr "Crea"
1599
 
1600
  #: tpls/wpdm-login-form.php:65
1601
  msgid "Login Failed!"
1602
+ msgstr "Autenticazione fallita!"
1603
 
1604
  #: tpls/wpdm-login-form.php:72 tpls/wpdm-login-form.php:151
1605
  msgid "Username or Email"
1607
 
1608
  #: tpls/wpdm-login-form.php:86
1609
  msgid "Remember Me"
1610
+ msgstr "Ricordami"
1611
 
1612
  #: tpls/wpdm-login-form.php:87
1613
  msgid "Forgot Password?"
1614
+ msgstr "Password dimenticata?"
1615
 
1616
  #: tpls/wpdm-login-form.php:94 tpls/wpdm-login-form.php:160
1617
  #: tpls/wpdm-reg-form.php:128
1652
  msgid "Reset Password"
1653
  msgstr ""
1654
 
 
 
 
 
1655
  #: tpls/wpdm-login-form.php:161
1656
  msgid "Register"
1657
+ msgstr "Registrati"
1658
 
1659
  #: tpls/wpdm-login-form.php:176 tpls/wpdm-login-form.php:238
1660
  #: tpls/wpdm-login-form.php:256
1683
 
1684
  #: tpls/wpdm-login-form.php:215 tpls/wpdm-reg-form.php:83
1685
  msgid "Confirm Password"
1686
+ msgstr "Conferma la Password"
1687
 
1688
  #: tpls/wpdm-login-form.php:219
1689
  msgid "Update Password"
1715
 
1716
  #: tpls/wpdm-reg-form.php:59
1717
  msgid "Username"
1718
+ msgstr "Nome utente"
1719
 
1720
  #: tpls/wpdm-reg-form.php:66
1721
  msgid "E-mail"
1722
+ msgstr "E-mail"
1723
 
1724
  #: tpls/wpdm-reg-form.php:83
1725
  msgid "Not Matched!"
1727
 
1728
  #: tpls/wpdm-reg-form.php:121
1729
  msgid "Join Now!"
1730
+ msgstr "Unisciti Adesso!"
1731
 
1732
  #: tpls/wpdm-reg-form.php:128
1733
  msgid "Already have an account?"
1739
 
1740
  #: tpls/wpdm-reg-form.php:168
1741
  msgid "Registration is disabled!"
1742
+ msgstr "La registrazione degli utenti è disabilitata!"
1743
 
1744
  #: wpdm-core.php:105
1745
  msgid "Select category"
1746
+ msgstr "Scegli una categoria"
1747
 
1748
  #: wpdm-core.php:187
 
 
1749
  msgid "New Package Notification"
1750
+ msgstr ""
1751
 
1752
  #: wpdm-core.php:189
1753
+ #, fuzzy
1754
+ #| msgid "Update Date"
1755
  msgid ": Update Available"
1756
+ msgstr "Data aggiornamento"
1757
 
1758
  #: wpdm-functions.php:145
1759
  msgid "Permission Denied"
1760
+ msgstr "Autorizzazione negata"
1761
 
1762
  #: wpdm-functions.php:280
1763
  msgid "Captcha Verification Failed!"
1764
+ msgstr "Verifica Captcha fallita!"
1765
 
1766
  #: wpdm-functions.php:319 wpdm-functions.php:323
1767
  msgid "Wrong Password! Try Again."
1769
 
1770
  #: wpdm-functions.php:336
1771
  msgid "Password usages limit exceeded"
1772
+ msgstr "Limite di scaricamento superato"
1773
 
1774
+ #: wpdm-functions.php:763
1775
  msgid "Sub-Categories"
1776
+ msgstr "Sotto-Categorie"
1777
 
1778
+ #: wpdm-functions.php:781
1779
  msgid "Title"
1780
+ msgstr "Titolo"
1781
 
1782
+ #: wpdm-functions.php:785
1783
  msgid "Asc"
1784
+ msgstr "Asc"
1785
 
1786
+ #: wpdm-functions.php:786
1787
  msgid "Desc"
1788
+ msgstr "Disc"
1789
 
1790
+ #: wpdm-functions.php:787
1791
  msgid "Search"
1792
+ msgstr "Ricerca"
1793
 
1794
+ #: wpdm-functions.php:788
1795
  msgid "Order"
1796
+ msgstr "Ordine"
1797
 
1798
+ #: wpdm-functions.php:789
1799
  msgid "Order By"
1800
+ msgstr "Ordina per"
1801
 
1802
+ #: wpdm-functions.php:1336
 
 
1803
  msgid "Select Image"
1804
+ msgstr ""
1805
 
1806
+ #: wpdm-functions.php:1361 wpdm-functions.php:1455
1807
  msgid "SELECT IMAGE"
1808
  msgstr ""
1809
 
1810
+ #: wpdm-functions.php:1436
1811
  msgid "Uploading"
1812
  msgstr ""
1813
 
1814
  #: wpdm-start-download.php:6
1815
  msgid "Your IP address is blocked!"
1816
+ msgstr "L'indirizzo IP è bloccato!"
1817
 
1818
  #: wpdm-start-download.php:21
1819
  msgid "Package is not available!"
1820
+ msgstr "Pacchetto non disponibile!"
1821
 
1822
  #: wpdm-start-download.php:49
1823
  msgid "Sorry! Download is not available yet."
1824
+ msgstr "Scusate! Il download non è ancora disponibile."
1825
 
1826
  #: wpdm-start-download.php:66
1827
  msgid "Please activate \"zlib\" in your server"
1828
+ msgstr "Attiva \"zlib\" nel tuo server"
1829
 
1830
  #: wpdm-start-download.php:102
1831
  msgid "No file found!"
1832
+ msgstr "Nessun file trovato!"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1833
 
1834
+ #~ msgid "https://www.wpdownloadmanager.com/"
1835
+ #~ msgstr "https://www.wpdownloadmanager.com/"
1836
 
1837
+ #~ msgid "https://www.wpdownloadmanager.com/purchases/"
1838
+ #~ msgstr "https://www.wpdownloadmanager.com/purchases/"
1839
 
1840
+ #~ msgid "Download Manager"
1841
+ #~ msgstr "Download Manager"
languages/download-manager.mo CHANGED
Binary file
languages/download-manager.po CHANGED
@@ -2,8 +2,8 @@ msgid ""
2
  msgstr ""
3
  "Project-Id-Version: Download Manager Pro v2\n"
4
  "Report-Msgid-Bugs-To: \n"
5
- "POT-Creation-Date: 2019-06-23 17:45+0600\n"
6
- "PO-Revision-Date: 2019-06-23 17:45+0600\n"
7
  "Last-Translator: \n"
8
  "Language-Team: Shaon <proshaon@yahoo.com>\n"
9
  "Language: en_BD\n"
@@ -59,11 +59,11 @@ msgid ""
59
  msgstr ""
60
 
61
  #: admin/menus/class.Categories.php:110 admin/menus/class.Categories.php:215
62
- #: admin/tpls/metaboxes/package-settings.php:67
63
  msgid "All Visitors"
64
  msgstr ""
65
 
66
- #: admin/menus/class.Packages.php:194
67
  msgid "Direct Download"
68
  msgstr ""
69
 
@@ -75,13 +75,13 @@ msgstr ""
75
  msgid "Settings"
76
  msgstr ""
77
 
78
- #: admin/menus/class.Settings.php:114 admin/menus/class.Settings.php:142
79
- #: admin/menus/class.Settings.php:161 admin/menus/class.Settings.php:217
80
- #: admin/menus/class.Settings.php:233
81
  msgid "Security token is expired! Refresh the page and try again."
82
  msgstr ""
83
 
84
- #: admin/menus/class.Settings.php:305
85
  msgid "Privacy Settings Saved Successfully"
86
  msgstr ""
87
 
@@ -102,7 +102,7 @@ msgstr ""
102
  msgid "Templates"
103
  msgstr ""
104
 
105
- #: admin/menus/class.Templates.php:138
106
  msgid ""
107
  "No package found! Please create at least 1 package to see template preview"
108
  msgstr ""
@@ -166,9 +166,9 @@ msgstr ""
166
  msgid "From Email"
167
  msgstr ""
168
 
169
- #: admin/tpls/email-template-editor.php:93 admin/tpls/templates.php:184
170
- #: admin/tpls/templates.php:342 tpls/user-dashboard/edit-profile.php:51
171
- #: tpls/wpdm-edit-user-profile.php:51
172
  msgid "Save Changes"
173
  msgstr ""
174
 
@@ -196,7 +196,7 @@ msgstr ""
196
  msgid "Emails"
197
  msgstr ""
198
 
199
- #: admin/tpls/emails-template.php:23 admin/tpls/templates.php:104
200
  msgid "Email Template"
201
  msgstr ""
202
 
@@ -204,47 +204,48 @@ msgstr ""
204
  msgid "attached file is missing/deleted"
205
  msgstr ""
206
 
207
- #: admin/tpls/metaboxes/attach-file.php:30
208
  msgid "No file uploaded yet!"
209
  msgstr ""
210
 
211
- #: admin/tpls/metaboxes/attach-file.php:36
212
  msgid "Upload"
213
  msgstr ""
214
 
215
- #: admin/tpls/metaboxes/attach-file.php:38 libs/class.FileList.php:305
216
  msgid "Browse"
217
  msgstr ""
218
 
219
- #: admin/tpls/metaboxes/attach-file.php:40
220
  msgid "URL"
221
  msgstr ""
222
 
223
- #: admin/tpls/metaboxes/attach-file.php:47
224
  msgid "Drop file here"
225
  msgstr ""
226
 
227
- #: admin/tpls/metaboxes/attach-file.php:69 wpdm-functions.php:1403
 
228
  msgid "Allowed Files"
229
  msgstr ""
230
 
231
- #: admin/tpls/metaboxes/attach-file.php:146
232
  msgid "Invalid File Type!"
233
  msgstr ""
234
 
235
- #: admin/tpls/metaboxes/attach-file.php:148
236
  msgid "Unauthorized Access!"
237
  msgstr ""
238
 
239
- #: admin/tpls/metaboxes/attach-file.php:152
240
  msgid "Delete Current File"
241
  msgstr ""
242
 
243
- #: admin/tpls/metaboxes/attach-file.php:196 admin/tpls/templates.php:364
244
  msgid "Are you sure?"
245
  msgstr ""
246
 
247
- #: admin/tpls/metaboxes/attach-file.php:198
248
  msgid ""
249
  "<div class=\"w3eden\"><div class=\"text-danger\"><i class=\"fa fa-check-"
250
  "circle\"></i> Removed!</div></div>"
@@ -421,10 +422,10 @@ msgstr ""
421
  #: libs/class.Package.php:646 libs/class.Package.php:671
422
  #: libs/class.Package.php:738 libs/class.Package.php:821
423
  #: libs/class.Package.php:847 libs/class.Package.php:874
424
- #: libs/class.Package.php:1244 libs/class.PackageLocks.php:59
425
  #: libs/class.PackageLocks.php:96 tpls/lock-options-iframe.php:243
426
- #: tpls/wpdm-all-downloads.php:158 wpdm-functions.php:103
427
- #: wpdm-functions.php:128 wpdm-functions.php:194
428
  msgid "Download"
429
  msgstr ""
430
 
@@ -809,127 +810,127 @@ msgstr ""
809
  msgid "Edit"
810
  msgstr ""
811
 
812
- #: admin/tpls/templates.php:121 admin/tpls/templates.php:122
813
  msgid "Logo URL"
814
  msgstr ""
815
 
816
- #: admin/tpls/templates.php:125 admin/tpls/templates.php:126
817
  msgid "Banner/Background Image URL"
818
  msgstr ""
819
 
820
- #: admin/tpls/templates.php:137
821
  msgid "Footer Text"
822
  msgstr ""
823
 
824
- #: admin/tpls/templates.php:141
825
  msgid "Facebook Page URL"
826
  msgstr ""
827
 
828
- #: admin/tpls/templates.php:145
829
  msgid "Twitter Profile URL"
830
  msgstr ""
831
 
832
- #: admin/tpls/templates.php:149
833
  msgid "Youtube Profile URL"
834
  msgstr ""
835
 
836
- #: admin/tpls/templates.php:199
837
  msgid "Template Preview"
838
  msgstr ""
839
 
840
- #: admin/tpls/templates.php:205
841
  msgid ""
842
  "This is a preview, original template color scheme may look little different, "
843
  "but structure will be same"
844
  msgstr ""
845
 
846
- #: admin/tpls/templates.php:338
847
  msgid "Saving..."
848
  msgstr ""
849
 
850
- #: download-manager.php:160 download-manager.php:172 wpdm-functions.php:787
851
- #: wpdm-functions.php:806
852
  msgid "Downloads"
853
  msgstr ""
854
 
855
- #: download-manager.php:161 libs/class.FileList.php:67
856
  msgid "File"
857
  msgstr ""
858
 
859
- #: download-manager.php:162
860
  msgid "Add New"
861
  msgstr ""
862
 
863
- #: download-manager.php:163
864
  msgid "Add New File"
865
  msgstr ""
866
 
867
- #: download-manager.php:164
868
  msgid "Edit File"
869
  msgstr ""
870
 
871
- #: download-manager.php:165
872
  msgid "New File"
873
  msgstr ""
874
 
875
- #: download-manager.php:166
876
  msgid "All Files"
877
  msgstr ""
878
 
879
- #: download-manager.php:167
880
  msgid "View File"
881
  msgstr ""
882
 
883
- #: download-manager.php:168
884
  msgid "Search Files"
885
  msgstr ""
886
 
887
- #: download-manager.php:169
888
  msgid "No File Found"
889
  msgstr ""
890
 
891
- #: download-manager.php:170
892
  msgid "No Files found in Trash"
893
  msgstr ""
894
 
895
- #: download-manager.php:201 download-manager.php:211
896
- #: tpls/wpdm-all-downloads.php:156
897
  msgid "Categories"
898
  msgstr ""
899
 
900
- #: download-manager.php:202
901
  msgid "Category"
902
  msgstr ""
903
 
904
- #: download-manager.php:203
905
  msgid "Search Categories"
906
  msgstr ""
907
 
908
- #: download-manager.php:204
909
  msgid "All Categories"
910
  msgstr ""
911
 
912
- #: download-manager.php:205
913
  msgid "Parent Category"
914
  msgstr ""
915
 
916
- #: download-manager.php:206
917
  msgid "Parent Category:"
918
  msgstr ""
919
 
920
- #: download-manager.php:207
921
  msgid "Edit Category"
922
  msgstr ""
923
 
924
- #: download-manager.php:208
925
  msgid "Update Category"
926
  msgstr ""
927
 
928
- #: download-manager.php:209
929
  msgid "Add New Category"
930
  msgstr ""
931
 
932
- #: download-manager.php:210
933
  msgid "New Category Name"
934
  msgstr ""
935
 
@@ -1012,6 +1013,81 @@ msgstr ""
1012
  msgid "Price"
1013
  msgstr ""
1014
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1015
  #: libs/class.Email.php:20
1016
  msgid "General Email Template"
1017
  msgstr ""
@@ -1086,7 +1162,7 @@ msgid "Thumbnail"
1086
  msgstr ""
1087
 
1088
  #: libs/class.Package.php:164 libs/class.Package.php:655
1089
- #: libs/class.Package.php:856 wpdm-functions.php:112 wpdm-start-download.php:23
1090
  msgid "Download Limit Exceeded"
1091
  msgstr ""
1092
 
@@ -1145,7 +1221,7 @@ msgid "Enter Correct Password to Download"
1145
  msgstr ""
1146
 
1147
  #: libs/class.PackageLocks.php:32 libs/class.PackageLocks.php:48
1148
- #: tpls/wpdm-all-downloads.php:119
1149
  msgid "Processing..."
1150
  msgstr ""
1151
 
@@ -1157,13 +1233,13 @@ msgstr ""
1157
  msgid "Submit"
1158
  msgstr ""
1159
 
1160
- #: libs/class.Pagination.php:50 tpls/wpdm-all-downloads.php:125
1161
- #: tpls/wpdm-all-downloads.php:331 wpdm-functions.php:1791
1162
  msgid "Previous"
1163
  msgstr ""
1164
 
1165
- #: libs/class.Pagination.php:51 tpls/wpdm-all-downloads.php:124
1166
- #: tpls/wpdm-all-downloads.php:332 wpdm-functions.php:1792
1167
  msgid "Next"
1168
  msgstr ""
1169
 
@@ -1195,6 +1271,54 @@ msgstr ""
1195
  msgid "Add file(s) from server"
1196
  msgstr ""
1197
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1198
  #: modules/widgets.php:35
1199
  msgid "WPDM Affiliate ID:"
1200
  msgstr ""
@@ -1224,14 +1348,10 @@ msgstr ""
1224
  msgid "Total Views"
1225
  msgstr ""
1226
 
1227
- #: modules/widgets.php:360 modules/widgets.php:444 wpdm-functions.php:807
1228
  msgid "Publish Date"
1229
  msgstr ""
1230
 
1231
- #: modules/widgets.php:361
1232
- msgid "Last Updated"
1233
- msgstr ""
1234
-
1235
  #: modules/widgets.php:362
1236
  msgid "Size"
1237
  msgstr ""
@@ -1240,22 +1360,14 @@ msgstr ""
1240
  msgid "Fields to Show:"
1241
  msgstr ""
1242
 
1243
- #: modules/widgets.php:442
1244
- msgid "Download Count"
1245
- msgstr ""
1246
-
1247
  #: modules/widgets.php:443
1248
  msgid "View Count"
1249
  msgstr ""
1250
 
1251
- #: modules/widgets.php:445 wpdm-functions.php:808
1252
  msgid "Update Date"
1253
  msgstr ""
1254
 
1255
- #: modules/widgets.php:446
1256
- msgid "File Size"
1257
- msgstr ""
1258
-
1259
  #: modules/widgets.php:447
1260
  msgid "Download Link"
1261
  msgstr ""
@@ -1280,6 +1392,34 @@ msgstr ""
1280
  msgid "Dashboard"
1281
  msgstr ""
1282
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1283
  #: tpls/lock-options-iframe.php:243
1284
  msgid "Buy"
1285
  msgstr ""
@@ -1362,86 +1502,86 @@ msgstr ""
1362
  msgid "Last 5 Downloads"
1363
  msgstr ""
1364
 
1365
- #: tpls/wpdm-all-downloads.php:110
1366
  msgid "Display _MENU_ downloads per page"
1367
  msgstr ""
1368
 
1369
- #: tpls/wpdm-all-downloads.php:111
1370
  msgid "Nothing _START_ to - sorry"
1371
  msgstr ""
1372
 
1373
- #: tpls/wpdm-all-downloads.php:112
1374
  msgid "Showing _START_ to _END_ of _TOTAL_ downloads"
1375
  msgstr ""
1376
 
1377
- #: tpls/wpdm-all-downloads.php:113
1378
  msgid "No downloads available"
1379
  msgstr ""
1380
 
1381
- #: tpls/wpdm-all-downloads.php:114
1382
  msgid "(filtered from _MAX_ total downloads)"
1383
  msgstr ""
1384
 
1385
- #: tpls/wpdm-all-downloads.php:115
1386
  msgid "No data available in table"
1387
  msgstr ""
1388
 
1389
- #: tpls/wpdm-all-downloads.php:118
1390
  msgid "Loading..."
1391
  msgstr ""
1392
 
1393
- #: tpls/wpdm-all-downloads.php:120
1394
  msgid "Search:"
1395
  msgstr ""
1396
 
1397
- #: tpls/wpdm-all-downloads.php:122
1398
  msgid "First"
1399
  msgstr ""
1400
 
1401
- #: tpls/wpdm-all-downloads.php:123
1402
  msgid "Last"
1403
  msgstr ""
1404
 
1405
- #: tpls/wpdm-all-downloads.php:128
1406
  msgid "activate to sort column ascending"
1407
  msgstr ""
1408
 
1409
- #: tpls/wpdm-all-downloads.php:129
1410
  msgid "activate to sort column descending"
1411
  msgstr ""
1412
 
1413
- #: tpls/wpdm-all-downloads.php:133
1414
  msgid "All"
1415
  msgstr ""
1416
 
1417
- #: tpls/wpdm-all-downloads.php:157
1418
- msgid "Create Date"
1419
- msgstr ""
1420
-
1421
- #: tpls/wpdm-all-downloads.php:258
1422
  msgid "file(s)"
1423
  msgstr ""
1424
 
1425
- #: tpls/wpdm-all-downloads.php:264
1426
  msgid "downloads"
1427
  msgstr ""
1428
 
1429
- #: tpls/wpdm-all-downloads.php:264
1430
  msgid "download"
1431
  msgstr ""
1432
 
1433
- #: tpls/wpdm-all-downloads.php:270
1434
  msgid "views"
1435
  msgstr ""
1436
 
1437
- #: tpls/wpdm-all-downloads.php:270
1438
  msgid "view"
1439
  msgstr ""
1440
 
1441
- #: tpls/wpdm-all-downloads.php:310
1442
  msgid "No Packages Found"
1443
  msgstr ""
1444
 
 
 
 
 
1445
  #: tpls/wpdm-generate-password.php:17
1446
  msgid "Select Options"
1447
  msgstr ""
@@ -1521,10 +1661,6 @@ msgstr ""
1521
  msgid "Reset Password"
1522
  msgstr ""
1523
 
1524
- #: tpls/wpdm-login-form.php:159
1525
- msgid "Home"
1526
- msgstr ""
1527
-
1528
  #: tpls/wpdm-login-form.php:161
1529
  msgid "Register"
1530
  msgstr ""
@@ -1642,43 +1778,43 @@ msgstr ""
1642
  msgid "Password usages limit exceeded"
1643
  msgstr ""
1644
 
1645
- #: wpdm-functions.php:787
1646
  msgid "Sub-Categories"
1647
  msgstr ""
1648
 
1649
- #: wpdm-functions.php:805
1650
  msgid "Title"
1651
  msgstr ""
1652
 
1653
- #: wpdm-functions.php:809
1654
  msgid "Asc"
1655
  msgstr ""
1656
 
1657
- #: wpdm-functions.php:810
1658
  msgid "Desc"
1659
  msgstr ""
1660
 
1661
- #: wpdm-functions.php:811
1662
  msgid "Search"
1663
  msgstr ""
1664
 
1665
- #: wpdm-functions.php:812
1666
  msgid "Order"
1667
  msgstr ""
1668
 
1669
- #: wpdm-functions.php:813
1670
  msgid "Order By"
1671
  msgstr ""
1672
 
1673
- #: wpdm-functions.php:1360
1674
  msgid "Select Image"
1675
  msgstr ""
1676
 
1677
- #: wpdm-functions.php:1385 wpdm-functions.php:1479
1678
  msgid "SELECT IMAGE"
1679
  msgstr ""
1680
 
1681
- #: wpdm-functions.php:1460
1682
  msgid "Uploading"
1683
  msgstr ""
1684
 
@@ -1686,18 +1822,18 @@ msgstr ""
1686
  msgid "Your IP address is blocked!"
1687
  msgstr ""
1688
 
1689
- #: wpdm-start-download.php:21
1690
  msgid "Package is not available!"
1691
  msgstr ""
1692
 
1693
- #: wpdm-start-download.php:49
1694
  msgid "Sorry! Download is not available yet."
1695
  msgstr ""
1696
 
1697
- #: wpdm-start-download.php:66
1698
  msgid "Please activate \"zlib\" in your server"
1699
  msgstr ""
1700
 
1701
- #: wpdm-start-download.php:102
1702
  msgid "No file found!"
1703
  msgstr ""
2
  msgstr ""
3
  "Project-Id-Version: Download Manager Pro v2\n"
4
  "Report-Msgid-Bugs-To: \n"
5
+ "POT-Creation-Date: 2019-09-23 09:51+0600\n"
6
+ "PO-Revision-Date: 2019-09-23 09:52+0600\n"
7
  "Last-Translator: \n"
8
  "Language-Team: Shaon <proshaon@yahoo.com>\n"
9
  "Language: en_BD\n"
59
  msgstr ""
60
 
61
  #: admin/menus/class.Categories.php:110 admin/menus/class.Categories.php:215
62
+ #: admin/tpls/metaboxes/package-settings.php:67 tpls/asset-manager-ui.php:825
63
  msgid "All Visitors"
64
  msgstr ""
65
 
66
+ #: admin/menus/class.Packages.php:201
67
  msgid "Direct Download"
68
  msgstr ""
69
 
75
  msgid "Settings"
76
  msgstr ""
77
 
78
+ #: admin/menus/class.Settings.php:137 admin/menus/class.Settings.php:165
79
+ #: admin/menus/class.Settings.php:184 admin/menus/class.Settings.php:240
80
+ #: admin/menus/class.Settings.php:256
81
  msgid "Security token is expired! Refresh the page and try again."
82
  msgstr ""
83
 
84
+ #: admin/menus/class.Settings.php:327
85
  msgid "Privacy Settings Saved Successfully"
86
  msgstr ""
87
 
102
  msgid "Templates"
103
  msgstr ""
104
 
105
+ #: admin/menus/class.Templates.php:142
106
  msgid ""
107
  "No package found! Please create at least 1 package to see template preview"
108
  msgstr ""
166
  msgid "From Email"
167
  msgstr ""
168
 
169
+ #: admin/tpls/email-template-editor.php:93 admin/tpls/templates.php:185
170
+ #: admin/tpls/templates.php:343 tpls/asset-manager-ui.php:550
171
+ #: tpls/user-dashboard/edit-profile.php:51 tpls/wpdm-edit-user-profile.php:51
172
  msgid "Save Changes"
173
  msgstr ""
174
 
196
  msgid "Emails"
197
  msgstr ""
198
 
199
+ #: admin/tpls/emails-template.php:23 admin/tpls/templates.php:105
200
  msgid "Email Template"
201
  msgstr ""
202
 
204
  msgid "attached file is missing/deleted"
205
  msgstr ""
206
 
207
+ #: admin/tpls/metaboxes/attach-file.php:35
208
  msgid "No file uploaded yet!"
209
  msgstr ""
210
 
211
+ #: admin/tpls/metaboxes/attach-file.php:41
212
  msgid "Upload"
213
  msgstr ""
214
 
215
+ #: admin/tpls/metaboxes/attach-file.php:43 libs/class.FileList.php:305
216
  msgid "Browse"
217
  msgstr ""
218
 
219
+ #: admin/tpls/metaboxes/attach-file.php:45
220
  msgid "URL"
221
  msgstr ""
222
 
223
+ #: admin/tpls/metaboxes/attach-file.php:52
224
  msgid "Drop file here"
225
  msgstr ""
226
 
227
+ #: admin/tpls/metaboxes/attach-file.php:74 tpls/asset-manager-ui.php:738
228
+ #: wpdm-functions.php:1379
229
  msgid "Allowed Files"
230
  msgstr ""
231
 
232
+ #: admin/tpls/metaboxes/attach-file.php:151
233
  msgid "Invalid File Type!"
234
  msgstr ""
235
 
236
+ #: admin/tpls/metaboxes/attach-file.php:153
237
  msgid "Unauthorized Access!"
238
  msgstr ""
239
 
240
+ #: admin/tpls/metaboxes/attach-file.php:157
241
  msgid "Delete Current File"
242
  msgstr ""
243
 
244
+ #: admin/tpls/metaboxes/attach-file.php:201 admin/tpls/templates.php:365
245
  msgid "Are you sure?"
246
  msgstr ""
247
 
248
+ #: admin/tpls/metaboxes/attach-file.php:203
249
  msgid ""
250
  "<div class=\"w3eden\"><div class=\"text-danger\"><i class=\"fa fa-check-"
251
  "circle\"></i> Removed!</div></div>"
422
  #: libs/class.Package.php:646 libs/class.Package.php:671
423
  #: libs/class.Package.php:738 libs/class.Package.php:821
424
  #: libs/class.Package.php:847 libs/class.Package.php:874
425
+ #: libs/class.Package.php:1246 libs/class.PackageLocks.php:59
426
  #: libs/class.PackageLocks.php:96 tpls/lock-options-iframe.php:243
427
+ #: tpls/wpdm-all-downloads.php:160 tpls/wpdm-asset.php:21
428
+ #: wpdm-functions.php:103 wpdm-functions.php:128 wpdm-functions.php:194
429
  msgid "Download"
430
  msgstr ""
431
 
810
  msgid "Edit"
811
  msgstr ""
812
 
813
+ #: admin/tpls/templates.php:122 admin/tpls/templates.php:123
814
  msgid "Logo URL"
815
  msgstr ""
816
 
817
+ #: admin/tpls/templates.php:126 admin/tpls/templates.php:127
818
  msgid "Banner/Background Image URL"
819
  msgstr ""
820
 
821
+ #: admin/tpls/templates.php:138
822
  msgid "Footer Text"
823
  msgstr ""
824
 
825
+ #: admin/tpls/templates.php:142
826
  msgid "Facebook Page URL"
827
  msgstr ""
828
 
829
+ #: admin/tpls/templates.php:146
830
  msgid "Twitter Profile URL"
831
  msgstr ""
832
 
833
+ #: admin/tpls/templates.php:150
834
  msgid "Youtube Profile URL"
835
  msgstr ""
836
 
837
+ #: admin/tpls/templates.php:200
838
  msgid "Template Preview"
839
  msgstr ""
840
 
841
+ #: admin/tpls/templates.php:206
842
  msgid ""
843
  "This is a preview, original template color scheme may look little different, "
844
  "but structure will be same"
845
  msgstr ""
846
 
847
+ #: admin/tpls/templates.php:339
848
  msgid "Saving..."
849
  msgstr ""
850
 
851
+ #: download-manager.php:173 download-manager.php:185 wpdm-functions.php:763
852
+ #: wpdm-functions.php:782
853
  msgid "Downloads"
854
  msgstr ""
855
 
856
+ #: download-manager.php:174 libs/class.FileList.php:67
857
  msgid "File"
858
  msgstr ""
859
 
860
+ #: download-manager.php:175
861
  msgid "Add New"
862
  msgstr ""
863
 
864
+ #: download-manager.php:176
865
  msgid "Add New File"
866
  msgstr ""
867
 
868
+ #: download-manager.php:177
869
  msgid "Edit File"
870
  msgstr ""
871
 
872
+ #: download-manager.php:178
873
  msgid "New File"
874
  msgstr ""
875
 
876
+ #: download-manager.php:179
877
  msgid "All Files"
878
  msgstr ""
879
 
880
+ #: download-manager.php:180
881
  msgid "View File"
882
  msgstr ""
883
 
884
+ #: download-manager.php:181
885
  msgid "Search Files"
886
  msgstr ""
887
 
888
+ #: download-manager.php:182
889
  msgid "No File Found"
890
  msgstr ""
891
 
892
+ #: download-manager.php:183
893
  msgid "No Files found in Trash"
894
  msgstr ""
895
 
896
+ #: download-manager.php:214 download-manager.php:224
897
+ #: tpls/wpdm-all-downloads.php:158
898
  msgid "Categories"
899
  msgstr ""
900
 
901
+ #: download-manager.php:215
902
  msgid "Category"
903
  msgstr ""
904
 
905
+ #: download-manager.php:216
906
  msgid "Search Categories"
907
  msgstr ""
908
 
909
+ #: download-manager.php:217
910
  msgid "All Categories"
911
  msgstr ""
912
 
913
+ #: download-manager.php:218
914
  msgid "Parent Category"
915
  msgstr ""
916
 
917
+ #: download-manager.php:219
918
  msgid "Parent Category:"
919
  msgstr ""
920
 
921
+ #: download-manager.php:220
922
  msgid "Edit Category"
923
  msgstr ""
924
 
925
+ #: download-manager.php:221
926
  msgid "Update Category"
927
  msgstr ""
928
 
929
+ #: download-manager.php:222
930
  msgid "Add New Category"
931
  msgstr ""
932
 
933
+ #: download-manager.php:223
934
  msgid "New Category Name"
935
  msgstr ""
936
 
1013
  msgid "Price"
1014
  msgstr ""
1015
 
1016
+ #: libs/class.AssetManager.php:114
1017
+ msgid ""
1018
+ "Download link is expired! Go back and Refresh the page to regenerate "
1019
+ "download link"
1020
+ msgstr ""
1021
+
1022
+ #: libs/class.AssetManager.php:136
1023
+ msgid "Asset Manager"
1024
+ msgstr ""
1025
+
1026
+ #: libs/class.AssetManager.php:141 libs/class.AssetManager.php:155
1027
+ #: libs/class.AssetManager.php:171 libs/class.AssetManager.php:173
1028
+ #: libs/class.AssetManager.php:237 libs/class.AssetManager.php:239
1029
+ #: libs/class.AssetManager.php:255 libs/class.AssetManager.php:257
1030
+ #: libs/class.AssetManager.php:296 libs/class.AssetManager.php:313
1031
+ #: libs/class.AssetManager.php:315 libs/class.AssetManager.php:332
1032
+ #: libs/class.AssetManager.php:334 libs/class.AssetManager.php:348
1033
+ #: libs/class.AssetManager.php:350 libs/class.AssetManager.php:370
1034
+ #: libs/class.AssetManager.php:372
1035
+ msgid "Error! Session Expired. Try refreshing page."
1036
+ msgstr ""
1037
+
1038
+ #: libs/class.AssetManager.php:143 libs/class.AssetManager.php:157
1039
+ #: libs/class.AssetManager.php:298
1040
+ msgid "Error! Unauthorized Access."
1041
+ msgstr ""
1042
+
1043
+ #: libs/class.AssetManager.php:147 libs/class.AssetManager.php:160
1044
+ #: libs/class.AssetManager.php:178 libs/class.AssetManager.php:243
1045
+ #: libs/class.AssetManager.php:260 libs/class.AssetManager.php:301
1046
+ #: libs/class.AssetManager.php:306 libs/class.AssetManager.php:320
1047
+ #: libs/class.AssetManager.php:468
1048
+ msgid "Error! Unauthorized Path."
1049
+ msgstr ""
1050
+
1051
+ #: libs/class.AssetManager.php:210 tpls/wpdm-login-form.php:159
1052
+ msgid "Home"
1053
+ msgstr ""
1054
+
1055
+ #: libs/class.AssetManager.php:357 libs/class.AssetManager.php:380
1056
+ msgid "Invalid source path"
1057
+ msgstr ""
1058
+
1059
+ #: libs/class.AssetManager.php:358 libs/class.AssetManager.php:381
1060
+ msgid "Invalid destination path"
1061
+ msgstr ""
1062
+
1063
+ #: libs/class.AssetManager.php:366
1064
+ msgid "File moved successfully"
1065
+ msgstr ""
1066
+
1067
+ #: libs/class.AssetManager.php:384
1068
+ msgid "File copied successfully"
1069
+ msgstr ""
1070
+
1071
+ #: libs/class.AssetManager.php:427 libs/class.AssetManager.php:434
1072
+ msgid "Asset not found!"
1073
+ msgstr ""
1074
+
1075
+ #: libs/class.AssetManager.php:469
1076
+ msgid "Error! Invalid Destination Path."
1077
+ msgstr ""
1078
+
1079
+ #: libs/class.AssetManager.php:470
1080
+ msgid "Please activate \"zlib\" in your server to perform zip operations"
1081
+ msgstr ""
1082
+
1083
+ #: libs/class.AssetManager.php:475
1084
+ msgid "Unzipped successfully."
1085
+ msgstr ""
1086
+
1087
+ #: libs/class.AssetManager.php:477
1088
+ msgid "Error! Couldn't open the zip file."
1089
+ msgstr ""
1090
+
1091
  #: libs/class.Email.php:20
1092
  msgid "General Email Template"
1093
  msgstr ""
1162
  msgstr ""
1163
 
1164
  #: libs/class.Package.php:164 libs/class.Package.php:655
1165
+ #: libs/class.Package.php:856 wpdm-functions.php:112 wpdm-start-download.php:24
1166
  msgid "Download Limit Exceeded"
1167
  msgstr ""
1168
 
1221
  msgstr ""
1222
 
1223
  #: libs/class.PackageLocks.php:32 libs/class.PackageLocks.php:48
1224
+ #: tpls/wpdm-all-downloads.php:121
1225
  msgid "Processing..."
1226
  msgstr ""
1227
 
1233
  msgid "Submit"
1234
  msgstr ""
1235
 
1236
+ #: libs/class.Pagination.php:50 tpls/wpdm-all-downloads.php:127
1237
+ #: tpls/wpdm-all-downloads.php:333 wpdm-functions.php:1767
1238
  msgid "Previous"
1239
  msgstr ""
1240
 
1241
+ #: libs/class.Pagination.php:51 tpls/wpdm-all-downloads.php:126
1242
+ #: tpls/wpdm-all-downloads.php:334 wpdm-functions.php:1768
1243
  msgid "Next"
1244
  msgstr ""
1245
 
1271
  msgid "Add file(s) from server"
1272
  msgstr ""
1273
 
1274
+ #: modules/strings.php:10 modules/widgets.php:442
1275
+ msgid "Download Count"
1276
+ msgstr ""
1277
+
1278
+ #: modules/strings.php:11
1279
+ msgid "Version"
1280
+ msgstr ""
1281
+
1282
+ #: modules/strings.php:12 modules/strings.php:22
1283
+ msgid "Stock"
1284
+ msgstr ""
1285
+
1286
+ #: modules/strings.php:13 modules/widgets.php:446
1287
+ msgid "File Size"
1288
+ msgstr ""
1289
+
1290
+ #: modules/strings.php:14
1291
+ msgid "File Type"
1292
+ msgstr ""
1293
+
1294
+ #: modules/strings.php:15
1295
+ msgid "File Count"
1296
+ msgstr ""
1297
+
1298
+ #: modules/strings.php:16 tpls/wpdm-all-downloads.php:159
1299
+ msgid "Create Date"
1300
+ msgstr ""
1301
+
1302
+ #: modules/strings.php:17 modules/widgets.php:361
1303
+ msgid "Last Updated"
1304
+ msgstr ""
1305
+
1306
+ #: modules/strings.php:18
1307
+ msgid "Description"
1308
+ msgstr ""
1309
+
1310
+ #: modules/strings.php:19
1311
+ msgid "Package Info"
1312
+ msgstr ""
1313
+
1314
+ #: modules/strings.php:20
1315
+ msgid "Attached Files"
1316
+ msgstr ""
1317
+
1318
+ #: modules/strings.php:21
1319
+ msgid "Total Files"
1320
+ msgstr ""
1321
+
1322
  #: modules/widgets.php:35
1323
  msgid "WPDM Affiliate ID:"
1324
  msgstr ""
1348
  msgid "Total Views"
1349
  msgstr ""
1350
 
1351
+ #: modules/widgets.php:360 modules/widgets.php:444 wpdm-functions.php:783
1352
  msgid "Publish Date"
1353
  msgstr ""
1354
 
 
 
 
 
1355
  #: modules/widgets.php:362
1356
  msgid "Size"
1357
  msgstr ""
1360
  msgid "Fields to Show:"
1361
  msgstr ""
1362
 
 
 
 
 
1363
  #: modules/widgets.php:443
1364
  msgid "View Count"
1365
  msgstr ""
1366
 
1367
+ #: modules/widgets.php:445 wpdm-functions.php:784
1368
  msgid "Update Date"
1369
  msgstr ""
1370
 
 
 
 
 
1371
  #: modules/widgets.php:447
1372
  msgid "Download Link"
1373
  msgstr ""
1392
  msgid "Dashboard"
1393
  msgstr ""
1394
 
1395
+ #: tpls/asset-manager-ui.php:500
1396
+ msgid "New Folder"
1397
+ msgstr ""
1398
+
1399
+ #: tpls/asset-manager-ui.php:502 tpls/asset-manager-ui.php:706
1400
+ msgid "Upload File"
1401
+ msgstr ""
1402
+
1403
+ #: tpls/asset-manager-ui.php:508
1404
+ msgid "Digital Asset Manager"
1405
+ msgstr ""
1406
+
1407
+ #: tpls/asset-manager-ui.php:611
1408
+ msgid "Copy Shortcode"
1409
+ msgstr ""
1410
+
1411
+ #: tpls/asset-manager-ui.php:713
1412
+ msgid "Drop files here"
1413
+ msgstr ""
1414
+
1415
+ #: tpls/asset-manager-ui.php:820
1416
+ msgid "Authorized User Groups:"
1417
+ msgstr ""
1418
+
1419
+ #: tpls/asset-manager-ui.php:842
1420
+ msgid "Authorized Users:"
1421
+ msgstr ""
1422
+
1423
  #: tpls/lock-options-iframe.php:243
1424
  msgid "Buy"
1425
  msgstr ""
1502
  msgid "Last 5 Downloads"
1503
  msgstr ""
1504
 
1505
+ #: tpls/wpdm-all-downloads.php:112
1506
  msgid "Display _MENU_ downloads per page"
1507
  msgstr ""
1508
 
1509
+ #: tpls/wpdm-all-downloads.php:113
1510
  msgid "Nothing _START_ to - sorry"
1511
  msgstr ""
1512
 
1513
+ #: tpls/wpdm-all-downloads.php:114
1514
  msgid "Showing _START_ to _END_ of _TOTAL_ downloads"
1515
  msgstr ""
1516
 
1517
+ #: tpls/wpdm-all-downloads.php:115
1518
  msgid "No downloads available"
1519
  msgstr ""
1520
 
1521
+ #: tpls/wpdm-all-downloads.php:116
1522
  msgid "(filtered from _MAX_ total downloads)"
1523
  msgstr ""
1524
 
1525
+ #: tpls/wpdm-all-downloads.php:117
1526
  msgid "No data available in table"
1527
  msgstr ""
1528
 
1529
+ #: tpls/wpdm-all-downloads.php:120
1530
  msgid "Loading..."
1531
  msgstr ""
1532
 
1533
+ #: tpls/wpdm-all-downloads.php:122
1534
  msgid "Search:"
1535
  msgstr ""
1536
 
1537
+ #: tpls/wpdm-all-downloads.php:124
1538
  msgid "First"
1539
  msgstr ""
1540
 
1541
+ #: tpls/wpdm-all-downloads.php:125
1542
  msgid "Last"
1543
  msgstr ""
1544
 
1545
+ #: tpls/wpdm-all-downloads.php:130
1546
  msgid "activate to sort column ascending"
1547
  msgstr ""
1548
 
1549
+ #: tpls/wpdm-all-downloads.php:131
1550
  msgid "activate to sort column descending"
1551
  msgstr ""
1552
 
1553
+ #: tpls/wpdm-all-downloads.php:135
1554
  msgid "All"
1555
  msgstr ""
1556
 
1557
+ #: tpls/wpdm-all-downloads.php:260
 
 
 
 
1558
  msgid "file(s)"
1559
  msgstr ""
1560
 
1561
+ #: tpls/wpdm-all-downloads.php:266
1562
  msgid "downloads"
1563
  msgstr ""
1564
 
1565
+ #: tpls/wpdm-all-downloads.php:266
1566
  msgid "download"
1567
  msgstr ""
1568
 
1569
+ #: tpls/wpdm-all-downloads.php:272
1570
  msgid "views"
1571
  msgstr ""
1572
 
1573
+ #: tpls/wpdm-all-downloads.php:272
1574
  msgid "view"
1575
  msgstr ""
1576
 
1577
+ #: tpls/wpdm-all-downloads.php:312
1578
  msgid "No Packages Found"
1579
  msgstr ""
1580
 
1581
+ #: tpls/wpdm-asset.php:23
1582
+ msgid "Login to Download"
1583
+ msgstr ""
1584
+
1585
  #: tpls/wpdm-generate-password.php:17
1586
  msgid "Select Options"
1587
  msgstr ""
1661
  msgid "Reset Password"
1662
  msgstr ""
1663
 
 
 
 
 
1664
  #: tpls/wpdm-login-form.php:161
1665
  msgid "Register"
1666
  msgstr ""
1778
  msgid "Password usages limit exceeded"
1779
  msgstr ""
1780
 
1781
+ #: wpdm-functions.php:763
1782
  msgid "Sub-Categories"
1783
  msgstr ""
1784
 
1785
+ #: wpdm-functions.php:781
1786
  msgid "Title"
1787
  msgstr ""
1788
 
1789
+ #: wpdm-functions.php:785
1790
  msgid "Asc"
1791
  msgstr ""
1792
 
1793
+ #: wpdm-functions.php:786
1794
  msgid "Desc"
1795
  msgstr ""
1796
 
1797
+ #: wpdm-functions.php:787
1798
  msgid "Search"
1799
  msgstr ""
1800
 
1801
+ #: wpdm-functions.php:788
1802
  msgid "Order"
1803
  msgstr ""
1804
 
1805
+ #: wpdm-functions.php:789
1806
  msgid "Order By"
1807
  msgstr ""
1808
 
1809
+ #: wpdm-functions.php:1336
1810
  msgid "Select Image"
1811
  msgstr ""
1812
 
1813
+ #: wpdm-functions.php:1361 wpdm-functions.php:1455
1814
  msgid "SELECT IMAGE"
1815
  msgstr ""
1816
 
1817
+ #: wpdm-functions.php:1436
1818
  msgid "Uploading"
1819
  msgstr ""
1820
 
1822
  msgid "Your IP address is blocked!"
1823
  msgstr ""
1824
 
1825
+ #: wpdm-start-download.php:22
1826
  msgid "Package is not available!"
1827
  msgstr ""
1828
 
1829
+ #: wpdm-start-download.php:50
1830
  msgid "Sorry! Download is not available yet."
1831
  msgstr ""
1832
 
1833
+ #: wpdm-start-download.php:67
1834
  msgid "Please activate \"zlib\" in your server"
1835
  msgstr ""
1836
 
1837
+ #: wpdm-start-download.php:103
1838
  msgid "No file found!"
1839
  msgstr ""
libs/class.Apply.php CHANGED
@@ -132,7 +132,22 @@ class Apply {
132
  $login_try++;
133
  Session::set('login_try', $login_try);
134
 
135
- if($login_try > 10) wp_die("Slow Down!");
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
136
 
137
  Session::clear('login_error');
138
  $creds = array();
@@ -143,7 +158,7 @@ class Apply {
143
  if (is_wp_error($user)) {
144
  Session::set('login_error', $user->get_error_message());
145
 
146
- if(wpdm_is_ajax()) die('failed');
147
 
148
  header("location: " . $_SERVER['HTTP_REFERER']);
149
  die();
@@ -151,7 +166,7 @@ class Apply {
151
  wp_set_auth_cookie($user->ID);
152
  Session::set('login_try', 0);
153
  do_action('wp_login', $creds['user_login'], $user);
154
- if(wpdm_is_ajax()) die('success');
155
 
156
  header("location: " . $_POST['redirect_to']);
157
  die();
@@ -180,18 +195,49 @@ class Apply {
180
  global $wp_query, $wpdb;
181
  if (!isset($_POST['wpdm_reg'])) return;
182
 
183
- $shortcode_params = \WPDM\libs\Crypt::Decrypt($_REQUEST['phash']);
 
184
 
185
- if(!isset($_REQUEST['__reg_nonce']) || !wp_verify_nonce($_REQUEST['__reg_nonce'], NONCE_KEY) || wpdm_query_var('user_email_confirm') != ''){
186
- Session::set('reg_error', __( "Something is Wrong! Please refresh the page and try again" , "download-manager" ));
187
- if (wpdm_is_ajax()) { wp_send_json(array('success' => false, 'message' => 'Error: ' . Session::get('reg_error'))); die(); }
 
 
 
 
 
 
 
 
 
 
 
 
 
188
  header("location: " . $_POST['permalink']);
189
  die();
190
  }
191
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
192
  if(!get_option('users_can_register') && isset($_POST['wpdm_reg'])){
193
- if(wpdm_is_ajax()) { wp_send_json(array('success' => false, 'message' => __( "Error: User registration is disabled!" , "download-manager" ))); die(); }
194
- else Session::set('reg_error', __( "Error: User registration is disabled!" , "download-manager" ));
 
195
  header("location: " . $_POST['permalink']);
196
  die();
197
  }
@@ -206,18 +252,20 @@ class Apply {
206
  $loginurl = $_POST['permalink'];
207
  if ($user_login == '') {
208
 
209
- Session::set('reg_error', __( "Username is Empty!" , "download-manager" ));
 
210
 
211
- if(wpdm_is_ajax()) { wp_send_json(array('success' => false, 'message' => 'Error: ' . Session::get('reg_error'))); die(); }
212
 
213
  header("location: " . $_POST['permalink']);
214
  die();
215
  }
216
  if (!isset($user_email) || !is_email($user_email)) {
217
 
218
- Session::set('reg_error', __( "Invalid Email Address!" , "download-manager" ));
 
219
 
220
- if(wpdm_is_ajax()) { wp_send_json(array('success' => false, 'message' => 'Error: ' . Session::get('reg_error'))); die(); }
221
 
222
  header("location: " . $_POST['permalink']);
223
  die();
@@ -249,7 +297,16 @@ class Apply {
249
 
250
  $user_id = wp_create_user($user_login, $user_pass, $user_email);
251
 
252
- wp_update_user(array('ID' => $user_id, 'display_name' => $display_name, 'first_name' => $first_name, 'last_name' => $last_name));
 
 
 
 
 
 
 
 
 
253
 
254
  //To User
255
  $usparams = array('to_email' => $user_email, 'name' => $display_name, 'first_name' => $first_name, 'last_name' => $last_name, 'user_email' => $user_email, 'username' => $user_login, 'password' => $user_pass);
@@ -277,10 +334,13 @@ class Apply {
277
  $creds['user_login'] = $user_login;
278
  $creds['user_password'] = $user_pass;
279
  $creds['remember'] = true;
280
- Session::set('sccs_msg', __( "Your account has been created successfully and login info sent to your mail address." , "download-manager" ));
 
 
281
 
282
  if($auto_login==1) {
283
- Session::set('sccs_msg', __( "Your account has been created successfully" , "download-manager" ));
 
284
  wp_signon($creds);
285
  wp_set_current_user($user_id);
286
  wp_set_auth_cookie($user_id);
@@ -293,19 +353,21 @@ class Apply {
293
  header("location: " . $loginurl);
294
  die();
295
  } else {
296
- Session::set('reg_error', __( "Email already exists." , "download-manager" ));
 
297
  $plink = $_POST['permalink'] ? $_POST['permalink'] : $_SERVER['HTTP_REFERER'];
298
 
299
- if(wpdm_is_ajax()) { wp_send_json(array('success' => false, 'message' => 'Error: ' . Session::get('reg_error'))); die(); }
300
 
301
  header("location: " . $loginurl);
302
  die();
303
  }
304
  } else {
305
- Session::set('reg_error', __( "Username already exists." , "download-manager" ));
 
306
  $plink = $_POST['permalink'] ? $_POST['permalink'] : $_SERVER['HTTP_REFERER'];
307
 
308
- if(wpdm_is_ajax()) { wp_send_json(array('success' => false, 'message' => 'Error: ' . Session::get('reg_error'))); die(); }
309
 
310
  header("location: " . $loginurl);
311
  die();
@@ -630,10 +692,11 @@ class Apply {
630
  }
631
 
632
  function oEmbed($content){
 
633
  if(function_exists('wpdmpp_effective_price') && wpdmpp_effective_price(get_the_ID()) > 0)
634
- $template = '[excerpt_200]<br/><span class="oefooter">'.__('Price','download-manager').': '.wpdmpp_currency_sign().wpdmpp_effective_price(get_the_ID()).'</span><span class="oefooter">[download_count] Downloads</span><span class="oefooter"><a href="[page_url]" target="_parent">&#x1f4b3; Buy Now</a></span><style>.oefooter{ border: 1px solid #dddddd;padding: 5px 15px;font-size: 8pt;display: inline-block;margin-top: 3px;background: #f5f5f5; margin-right: 5px; } .oefooter a{ color: #3B88C3; font-weight: bold; } </style>';
635
  else
636
- $template = '[excerpt_200]<br/><span class="oefooter">[create_date]</span><span class="oefooter">[download_count] Downloads</span><span class="oefooter">&#x2b07; [download_link]</span><style>.oefooter{ border: 1px solid #dddddd;padding: 5px 15px;font-size: 8pt;display: inline-block;margin-top: 3px;background: #f5f5f5; margin-right: 5px; } .oefooter a{ color: #3B88C3; font-weight: bold; } </style>';
637
  return \WPDM\Package::fetchTemplate($template, get_the_ID());
638
  }
639
 
132
  $login_try++;
133
  Session::set('login_try', $login_try);
134
 
135
+ if($login_try > 30) wp_die("Slow Down!");
136
+
137
+ $csk = get_option('_wpdm_recaptcha_secret_key');
138
+ if((int)get_option('__wpdm_recaptcha_loginform', 0) === 1 && $csk != ''){
139
+ $ret = remote_post('https://www.google.com/recaptcha/api/siteverify', array('secret' => $csk, 'response' => wpdm_query_var('__recap')));
140
+ $ret = json_decode($ret);
141
+ if(!$ret->success) {
142
+ Session::set('login_error', __("Invalid CAPTCHA!", "download-manager"));
143
+ if (wpdm_is_ajax()) {
144
+ wp_send_json(array('success' => false, 'message' => 'Error: ' . Session::get('login_error')));
145
+ die();
146
+ }
147
+ header("location: " . $_POST['permalink']);
148
+ die();
149
+ }
150
+ }
151
 
152
  Session::clear('login_error');
153
  $creds = array();
158
  if (is_wp_error($user)) {
159
  Session::set('login_error', $user->get_error_message());
160
 
161
+ if(wpdm_is_ajax()) wp_send_json(array('success' => false, 'message' => $user->get_error_message()));
162
 
163
  header("location: " . $_SERVER['HTTP_REFERER']);
164
  die();
166
  wp_set_auth_cookie($user->ID);
167
  Session::set('login_try', 0);
168
  do_action('wp_login', $creds['user_login'], $user);
169
+ if(wpdm_is_ajax()) wp_send_json(array('success' => true, 'message' => __( "Success! Redirecting...", "download-manager" )));
170
 
171
  header("location: " . $_POST['redirect_to']);
172
  die();
195
  global $wp_query, $wpdb;
196
  if (!isset($_POST['wpdm_reg'])) return;
197
 
198
+ /*
199
+ $shortcode_params = Session::get('__wpdm_reg_params');
200
 
201
+ if(!is_array($shortcode_params)){
202
+ $reg_error = apply_filters("wpdm_reg_error", __( "Something is wrong! Required parameters are missing!" , "download-manager" ), $error_type = 'missing_params');
203
+ Session::set('reg_error', $reg_error);
204
+ wp_send_json(array('success' => false, 'message' => 'Error: ' . $reg_error));
205
+ die();
206
+ }
207
+ */
208
+
209
+ $shortcode_params = Crypt::decrypt($_REQUEST['phash']);
210
+
211
+ if(!is_array($shortcode_params)) $shortcode_params = array();
212
+
213
+ if(!isset($_REQUEST['__reg_nonce']) || !wp_verify_nonce($_REQUEST['__reg_nonce'], NONCE_KEY)){
214
+ $reg_error = apply_filters("wpdm_reg_error", __( "Something is Wrong! Please refresh the page and try again" , "download-manager" ), $error_type = 'nonce');
215
+ Session::set('reg_error', $reg_error);
216
+ if (wpdm_is_ajax()) { wp_send_json(array('success' => false, 'message' => 'Error: ' . $reg_error)); die(); }
217
  header("location: " . $_POST['permalink']);
218
  die();
219
  }
220
 
221
+ $csk = get_option('_wpdm_recaptcha_secret_key');
222
+ if((int)get_option('__wpdm_recaptcha_regform', 0) === 1 && $csk != ''){
223
+ $ret = remote_post('https://www.google.com/recaptcha/api/siteverify', array('secret' => $csk, 'response' => wpdm_query_var('__recap')));
224
+ $ret = json_decode($ret);
225
+ if(!$ret->success) {
226
+ $reg_error = apply_filters("wpdm_reg_error", __( "Invalid CAPTCHA!" , "download-manager" ), $error_type = 'captcha');
227
+ Session::set('reg_error', $reg_error);
228
+ if (wpdm_is_ajax()) {
229
+ wp_send_json(array('success' => false, 'message' => 'Error: ' . $reg_error));
230
+ die();
231
+ }
232
+ header("location: " . $_POST['permalink']);
233
+ die();
234
+ }
235
+ }
236
+
237
  if(!get_option('users_can_register') && isset($_POST['wpdm_reg'])){
238
+ $reg_error = apply_filters("wpdm_reg_error", __( "Error: User registration is disabled!" , "download-manager" ), $error_type = 'reg_disabled');
239
+ if(wpdm_is_ajax()) { wp_send_json(array('success' => false, 'message' => $reg_error)); die(); }
240
+ else Session::set('reg_error', $reg_error);
241
  header("location: " . $_POST['permalink']);
242
  die();
243
  }
252
  $loginurl = $_POST['permalink'];
253
  if ($user_login == '') {
254
 
255
+ $reg_error = apply_filters("wpdm_reg_error", __( "Username is Empty!" , "download-manager" ), $error_type = 'empty_username');
256
+ Session::set('reg_error', $reg_error);
257
 
258
+ if(wpdm_is_ajax()) { wp_send_json(array('success' => false, 'message' => $reg_error)); die(); }
259
 
260
  header("location: " . $_POST['permalink']);
261
  die();
262
  }
263
  if (!isset($user_email) || !is_email($user_email)) {
264
 
265
+ $reg_error = apply_filters("wpdm_reg_error", __( "Invalid email address!" , "download-manager" ), $error_type = 'invalid_email');
266
+ Session::set('reg_error', $reg_error);
267
 
268
+ if(wpdm_is_ajax()) { wp_send_json(array('success' => false, 'message' => $reg_error)); die(); }
269
 
270
  header("location: " . $_POST['permalink']);
271
  die();
297
 
298
  $user_id = wp_create_user($user_login, $user_pass, $user_email);
299
 
300
+ $user_meta = array('ID' => $user_id, 'display_name' => $display_name, 'first_name' => $first_name, 'last_name' => $last_name);
301
+
302
+ $valid_roles = get_option('__wpdm_signup_roles', array());
303
+
304
+ if(isset($shortcode_params['role']) && trim($shortcode_params['role']) !== '' && is_array($valid_roles) && count($valid_roles) > 0 && in_array($shortcode_params['role'], $valid_roles)){
305
+
306
+ $user_meta['role'] = $shortcode_params['role'];
307
+
308
+ }
309
+ wp_update_user($user_meta);
310
 
311
  //To User
312
  $usparams = array('to_email' => $user_email, 'name' => $display_name, 'first_name' => $first_name, 'last_name' => $last_name, 'user_email' => $user_email, 'username' => $user_login, 'password' => $user_pass);
334
  $creds['user_login'] = $user_login;
335
  $creds['user_password'] = $user_pass;
336
  $creds['remember'] = true;
337
+
338
+ $reg_success = apply_filters("wpdm_reg_success", __( "Your account has been created successfully and login info sent to your mail address." , "download-manager" ));
339
+ Session::set('sccs_msg', $reg_success);
340
 
341
  if($auto_login==1) {
342
+ $reg_success = apply_filters("wpdm_reg_success", __( "Your account has been created successfully." , "download-manager" ));
343
+ Session::set('sccs_msg', $reg_success);
344
  wp_signon($creds);
345
  wp_set_current_user($user_id);
346
  wp_set_auth_cookie($user_id);
353
  header("location: " . $loginurl);
354
  die();
355
  } else {
356
+ $reg_error = apply_filters("wpdm_reg_error", __( "Invalid Email Address!" , "download-manager" ), $error_type = 'invalid_email');
357
+ Session::set('reg_error', $reg_error);
358
  $plink = $_POST['permalink'] ? $_POST['permalink'] : $_SERVER['HTTP_REFERER'];
359
 
360
+ if(wpdm_is_ajax()) { wp_send_json(array('success' => false, 'message' => $reg_error)); die(); }
361
 
362
  header("location: " . $loginurl);
363
  die();
364
  }
365
  } else {
366
+ $reg_error = apply_filters("wpdm_reg_error", __( "Username already exists." , "download-manager" ), $error_type = 'username_exists');
367
+ Session::set('reg_error', $reg_error);
368
  $plink = $_POST['permalink'] ? $_POST['permalink'] : $_SERVER['HTTP_REFERER'];
369
 
370
+ if(wpdm_is_ajax()) { wp_send_json(array('success' => false, 'message' => $reg_error)); die(); }
371
 
372
  header("location: " . $loginurl);
373
  die();
692
  }
693
 
694
  function oEmbed($content){
695
+ if(get_post_type(get_the_ID()) !== 'wpdmpro') return $content;
696
  if(function_exists('wpdmpp_effective_price') && wpdmpp_effective_price(get_the_ID()) > 0)
697
+ $template = '<table class="table table-bordered"><tbody><tr><td colspan="2">[excerpt_200]</td></tr><tr><td>[txt=Price]</td><td>[currency][effective_price]</td></tr><tr><td>[txt=Version]</td><td>[version]</td></tr><tr><td>[txt=Total Files]</td><td>[file_count]</td></tr><tr><td>[txt=File Size]</td><td>[file_size]</td></tr><tr><td>[txt=Create Date]</td><td>[create_date]</td></tr><tr><td>[txt=Last Updated]</td><td>[update_date]</td><tr><td colspan="2" style="text-align: right;border-bottom: 0"><a class="wpdmdlbtn" href="[page_url]" target="_parent">[txt=Buy Now]</a></td></tr></tbody></table><br/><style> .wpdmdlbtn {-moz-box-shadow:inset 0px 1px 0px 0px #9acc85;-webkit-box-shadow:inset 0px 1px 0px 0px #9acc85;box-shadow:inset 0px 1px 0px 0px #9acc85;background:-webkit-gradient(linear, left top, left bottom, color-stop(0.05, #74ad5a), color-stop(1, #68a54b));background:-moz-linear-gradient(top, #74ad5a 5%, #68a54b 100%);background:-webkit-linear-gradient(top, #74ad5a 5%, #68a54b 100%);background:-o-linear-gradient(top, #74ad5a 5%, #68a54b 100%);background:-ms-linear-gradient(top, #74ad5a 5%, #68a54b 100%);background:linear-gradient(to bottom, #74ad5a 5%, #68a54b 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=\'#74ad5a\', endColorstr=\'#68a54b\',GradientType=0);background-color:#74ad5a;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;border:1px solid #3b6e22;display:inline-block;cursor:pointer;color:#ffffff !important; font-size:12px;font-weight:bold;padding:10px 20px;text-transform: uppercase;text-decoration:none !important;}.wpdmdlbtn:hover {background:-webkit-gradient(linear, left top, left bottom, color-stop(0.05, #68a54b), color-stop(1, #74ad5a));background:-moz-linear-gradient(top, #68a54b 5%, #74ad5a 100%);background:-webkit-linear-gradient(top, #68a54b 5%, #74ad5a 100%);background:-o-linear-gradient(top, #68a54b 5%, #74ad5a 100%);background:-ms-linear-gradient(top, #68a54b 5%, #74ad5a 100%);background:linear-gradient(to bottom, #68a54b 5%, #74ad5a 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=\'#68a54b\', endColorstr=\'#74ad5a\',GradientType=0);background-color:#68a54b;}.wpdmdlbtn:active {position:relative;top:1px;} .table{width:100%;border: 1px solid #eeeeee;} .table td{ padding:10px;border-bottom:1px solid #eee;}</style>';
698
  else
699
+ $template = '<table class="table table-bordered"><tbody><tr><td colspan="2">[excerpt_200]</td></tr><tr><td>[txt=Version]</td><td>[version]</td></tr><tr><td>[txt=Total Files]</td><td>[file_count]</td></tr><tr><td>[txt=File Size]</td><td>[file_size]</td></tr><tr><td>[txt=Create Date]</td><td>[create_date]</td></tr><tr><td>[txt=Last Updated]</td><td>[update_date]</td><tr><td colspan="2" style="text-align: right;border-bottom: 0"><a class="wpdmdlbtn" href="[page_url]" target="_parent">[txt=Download]</a></td></tr></tbody></table><br/><style> .wpdmdlbtn {-moz-box-shadow:inset 0px 1px 0px 0px #9acc85;-webkit-box-shadow:inset 0px 1px 0px 0px #9acc85;box-shadow:inset 0px 1px 0px 0px #9acc85;background:-webkit-gradient(linear, left top, left bottom, color-stop(0.05, #74ad5a), color-stop(1, #68a54b));background:-moz-linear-gradient(top, #74ad5a 5%, #68a54b 100%);background:-webkit-linear-gradient(top, #74ad5a 5%, #68a54b 100%);background:-o-linear-gradient(top, #74ad5a 5%, #68a54b 100%);background:-ms-linear-gradient(top, #74ad5a 5%, #68a54b 100%);background:linear-gradient(to bottom, #74ad5a 5%, #68a54b 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=\'#74ad5a\', endColorstr=\'#68a54b\',GradientType=0);background-color:#74ad5a;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;border:1px solid #3b6e22;display:inline-block;cursor:pointer;color:#ffffff !important; font-size:12px;font-weight:bold;padding:10px 20px;text-transform: uppercase;text-decoration:none !important;}.wpdmdlbtn:hover {background:-webkit-gradient(linear, left top, left bottom, color-stop(0.05, #68a54b), color-stop(1, #74ad5a));background:-moz-linear-gradient(top, #68a54b 5%, #74ad5a 100%);background:-webkit-linear-gradient(top, #68a54b 5%, #74ad5a 100%);background:-o-linear-gradient(top, #68a54b 5%, #74ad5a 100%);background:-ms-linear-gradient(top, #68a54b 5%, #74ad5a 100%);background:linear-gradient(to bottom, #68a54b 5%, #74ad5a 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=\'#68a54b\', endColorstr=\'#74ad5a\',GradientType=0);background-color:#68a54b;}.wpdmdlbtn:active {position:relative;top:1px;} .table{width:100%; border: 1px solid #eeeeee; } .table td{ padding:10px;border-bottom:1px solid #eee;}</style>';
700
  return \WPDM\Package::fetchTemplate($template, get_the_ID());
701
  }
702
 
libs/class.Asset.php ADDED
@@ -0,0 +1,182 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ namespace WPDM;
4
+
5
+
6
+ class Asset
7
+ {
8
+ var $ID;
9
+ var $activities = array();
10
+ var $comments = array();
11
+ var $access = array();
12
+ var $links = array();
13
+ var $metadata = array();
14
+ var $path;
15
+ var $preview;
16
+ var $name;
17
+ var $type;
18
+ var $size;
19
+ var $temp_download_url;
20
+ var $dbtable;
21
+
22
+ function __construct($path = null){
23
+ global $wpdb;
24
+ $this->dbtable = "{$wpdb->prefix}ahm_assets";
25
+ if($path)
26
+ $this->init($path);
27
+ }
28
+
29
+ public function init($path){
30
+ global $wpdb;
31
+ if(!$this->get($path)) {
32
+ $wpdb->insert($this->dbtable, array('path' => $path));
33
+ $this->ID = $wpdb->insert_id;
34
+ $this->path = $path;
35
+ $this->preview = self::preview($this->path);
36
+ $this->name = basename($this->path);
37
+ $this->type = is_dir($this->path)?'dir':'file';
38
+ $this->size = wpdm_file_size($this->path);
39
+ $this->temp_download_url = home_url("/?asset={$this->ID}&key=".wp_create_nonce($this->path));
40
+ }
41
+ return $this;
42
+ }
43
+
44
+ function get($path_or_id){
45
+ global $wpdb;
46
+ $id = (int)$path_or_id;
47
+ $idcond = $id > 0 ? " or ID = '$id'":"";
48
+ $assetmeta = $wpdb->get_row("select * from {$wpdb->prefix}ahm_assets where path = '{$path_or_id}' {$idcond}");
49
+ if ($assetmeta){
50
+ $this->ID = $assetmeta->ID;
51
+ $this->activities = maybe_unserialize($assetmeta->activities);
52
+ $this->comments = maybe_unserialize($assetmeta->comments);
53
+ $this->access = maybe_unserialize($assetmeta->access);
54
+ $this->links = array();
55
+ $this->metadata = maybe_unserialize($assetmeta->metadata);
56
+ $this->path = $assetmeta->path;
57
+ $this->preview = self::preview($this->path);
58
+ $this->name = basename($this->path);
59
+ $this->type = is_dir($this->path)?'dir':'file';
60
+ $this->size = wpdm_file_size($this->path);
61
+ $this->temp_download_url = home_url("/?asset={$this->ID}&key=".wp_create_nonce($this->path));
62
+ return $this;
63
+ }
64
+ return null;
65
+ }
66
+
67
+ public static function preview($path){
68
+ global $current_user;
69
+ $ext = explode('.', $path);
70
+ $ext = end($ext);
71
+ $ext = strtolower($ext);
72
+ $url = str_replace(ABSPATH, home_url('/'), $path);
73
+ $accessible = strstr($url, "://") ? get_headers($url) : false;
74
+ $accessible = strstr($accessible[0], '403') ? false : true;
75
+ $relpath = str_replace(AssetManager::root(), "", $path);
76
+ if(!$accessible)
77
+ $url = home_url("/?wpdmfmdl={$relpath}");
78
+ $image = array('png', 'jpg', 'jpeg');
79
+ if(is_dir($path))
80
+ return "<img style='padding:20px;width: 128px' src='".WPDM_BASE_URL."assets/images/folder.svg"."' alt='Preview' />";
81
+ if(in_array($ext, $image))
82
+ return "<img style='padding:20px;' src='".wpdm_dynamic_thumb($path, array(400, 0), false)."' alt='Preview' />";
83
+ if($ext == 'svg')
84
+ return file_get_contents($path);
85
+ if($ext == 'mp3')
86
+ return do_shortcode("[audio src='$url']");
87
+ if($ext == 'mp4')
88
+ return do_shortcode("[video src='$url']");
89
+
90
+ $icon = file_exists(WPDM_BASE_DIR."assets/file-type-icons/{$ext}.svg" ) ? WPDM_BASE_URL."assets/file-type-icons/{$ext}.svg" : WPDM_BASE_URL."assets/file-type-icons/unknown.svg";
91
+
92
+ return "<img src='$icon' style='padding: 20px;width: 128px'/>";
93
+
94
+ }
95
+
96
+ public static function view($path){
97
+ global $current_user;
98
+ $ext = explode('.', $path);
99
+ $ext = end($ext);
100
+ $ext = strtolower($ext);
101
+ $url = str_replace(ABSPATH, home_url('/'), $path);
102
+ $accessible = get_headers($url);
103
+ $accessible = strstr($accessible[0], '403') ? false : true;
104
+ $relpath = str_replace(AssetManager::root(), "", $path);
105
+ $asset = new Asset($path);
106
+ if(!$accessible)
107
+ $url = $asset->temp_download_url;
108
+ $image = array('png', 'jpg', 'jpeg');
109
+
110
+ if(is_dir($path))
111
+ return $asset->dirViewer();
112
+
113
+ if(in_array($ext, $image))
114
+ return "<div class='wpdm-asset wpdm-asset-image'><img title='Click for fullscreen view' style='cursor: pointer' onclick='this.requestFullscreen();' src='{$asset->temp_download_url}' alt='Preview' /></div>";
115
+
116
+ if($ext == 'svg')
117
+ return "<div class='wpdm-asset wpdm-asset-svg'>".file_get_contents($path)."</div>";
118
+
119
+ if($ext == 'mp3')
120
+ return do_shortcode("<div class='wpdm-asset wpdm-asset-audio'>[audio src='$url']</div>");
121
+
122
+ if($ext == 'mp4')
123
+ return do_shortcode("<div class='wpdm-asset wpdm-asset-video'>[video src='$url']</div>");
124
+
125
+ if(strstr(mime_content_type($path), "text/")) {
126
+ $class = str_replace("text/", "", mime_content_type($path));
127
+ $script = '<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.15.9/styles/default.min.css"><script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.15.9/highlight.min.js"></script><script>hljs.initHighlightingOnLoad();</script>';
128
+ return "<pre class='wpdm-asset wpdm-asset-text'><code class='$class'>" . esc_attr(file_get_contents($path)) . "</code></pre>{$script}";
129
+ }
130
+
131
+ $icon = file_exists(WPDM_BASE_DIR."assets/file-type-icons/{$ext}.svg" ) ? WPDM_BASE_URL."assets/file-type-icons/{$ext}.svg" : WPDM_BASE_URL."assets/file-type-icons/unknown.svg";
132
+
133
+ return "<img src='$icon' style='padding: 20px;width: 128px'/>";
134
+
135
+ }
136
+
137
+ function hasAccess(){
138
+ global $current_user;
139
+ $roles = isset($this->access['roles']) && is_array($this->access['roles']) ? $this->access['roles'] : array();
140
+ $users = isset($this->access['users']) && is_array($this->access['users']) ? $this->access['users'] : array();
141
+ if(current_user_can('manage_options')) return true;
142
+ if(count(array_intersect($current_user->roles, $roles)) > 0) return true;
143
+ if(in_array('guest', $roles)) return true;
144
+ if(in_array($current_user->user_login, $users)) return true;
145
+ return false;
146
+ }
147
+
148
+ function dirViewer(){
149
+ return "";
150
+ }
151
+
152
+ function updatePath($new_path){
153
+ global $wpdb;
154
+ $this->path = $new_path;
155
+ $this->name = basename($new_path);
156
+ $wpdb->update($this->dbtable, array('path' => $this->path ), array('ID' => $this->ID));
157
+ return $this;
158
+ }
159
+
160
+ function save(){
161
+ global $wpdb;
162
+ $data = array(
163
+ 'activities' => serialize($this->activities),
164
+ 'comments' => serialize($this->comments),
165
+ 'access' => serialize($this->access),
166
+ 'metadata' => serialize($this->metadata),
167
+ );
168
+ $wpdb->update($this->dbtable, $data, array('ID' => $this->ID));
169
+ return $this;
170
+ }
171
+
172
+ public static function delete($path_or_id){
173
+ global $wpdb;
174
+ $path_or_id = wpdm_sanitize_var($path_or_id);
175
+ $id = (int)$path_or_id;
176
+ return $wpdb->query("delete from {$wpdb->prefix}ahm_assets where ID='{$id}' or path='{$path_or_id}'");
177
+ }
178
+
179
+ function download(){
180
+ \WPDM\libs\FileSystem::downloadFile($this->path, wp_basename($this->name));
181
+ }
182
+ }
libs/class.AssetManager.php ADDED
@@ -0,0 +1,483 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /*
3
+ Asset Manager for WordPress Download Manager
4
+ Author: Shahjada
5
+ Version: 1.0.0
6
+ */
7
+
8
+ namespace WPDM;
9
+
10
+ use WPDM\libs\Crypt;
11
+
12
+ if(!class_exists('AssetManager')):
13
+ class AssetManager{
14
+ private static $instance;
15
+ private $dir,$url, $root;
16
+ private $mime_type;
17
+
18
+ public static function getInstance(){
19
+ if(self::$instance === null){
20
+ self::$instance = new self;
21
+ self::$instance->dir = dirname(__FILE__);
22
+ self::$instance->url = WP_PLUGIN_URL . '/' . basename(self::$instance->dir);
23
+ self::$instance->actions();
24
+ //print_r($_SESSION);
25
+ }
26
+ return self::$instance;
27
+ }
28
+
29
+ public static function root($path = ''){
30
+ global $current_user;
31
+ $root = current_user_can('manage_options')?rtrim(get_option('_wpdm_file_browser_root'), '/').'/' : UPLOAD_DIR . $current_user->user_login . '/';
32
+ $_root = str_replace("\\", "/", $root);
33
+ if($path !== '') $root .= $path;
34
+ $root = realpath($root);
35
+ $root = str_replace("\\", "/", $root);
36
+ if($path!== '' && !strstr($root, $_root)) return null;
37
+ if(is_dir($root)) $root .= "/";
38
+ if($path === '' && !file_exists($root)){
39
+ @mkdir($root, 0775, true);
40
+ \WPDM\libs\FileSystem::blockHTTPAccess($root);
41
+ }
42
+ return $root;
43
+ }
44
+
45
+ private function actions(){
46
+
47
+ add_action('init',array($this,'download'),1);
48
+
49
+ //add_action('wp_ajax_wpdm_fm_file_upload', array($this,'uploadFile'));
50
+ add_action('wp_ajax_wpdm_mkdir', array($this,'mkDir'));
51
+ add_action('wp_ajax_wpdm_newfile', array($this,'newFile'));
52
+ add_action('wp_ajax_wpdm_scandir', array($this,'scanDir'));
53
+ add_action('wp_ajax_wpdm_openfile', array($this,'openFile'));
54
+ add_action('wp_ajax_wpdm_filesettings', array($this,'fileSettings'));
55
+ add_action('wp_ajax_wpdm_unlink', array($this,'deleteItem'));
56
+ add_action('wp_ajax_wpdm_rename', array($this,'renameItem'));
57
+ add_action('wp_ajax_wpdm_savefile', array($this,'saveFile'));
58
+ add_action('wp_ajax_wpdm_copypaste', array($this,'copyItem'));
59
+ add_action('wp_ajax_wpdm_cutpaste', array($this,'moveItem'));
60
+
61
+ add_action('wpdm_after_upload_file', array($this,'upload'));
62
+
63
+ //add_action('wp_enqueue_scripts', array($this,'siteScripts'));
64
+ add_action('admin_enqueue_scripts', array($this,'adminScripts'), 999);
65
+
66
+ //add_shortcode('wpdm_asset_manager', array($this,'_assetManager'));
67
+ add_shortcode('wpdm_asset', array($this,'wpdmAsset'));
68
+
69
+ //add_filter('wpdm_frontend', array($this,'frontendFileManagerTab'));
70
+
71
+ if(is_admin()){
72
+ add_action('admin_menu',array($this,'adminMenu'),10);
73
+ }
74
+
75
+ }
76
+
77
+ function siteScripts(){
78
+ global $post;
79
+
80
+ if(is_single() && !has_shortcode($post->post_content, '[wpdm_asset_manager]')) return;
81
+
82
+ $cm_settings['codeEditor'] = wp_enqueue_code_editor(array('type' => 'text/plain'));
83
+ wp_localize_script('jquery', 'wpdmcm_settings', $cm_settings);
84
+
85
+ wp_enqueue_script('wp-theme-plugin-editor');
86
+ wp_enqueue_style('wp-codemirror');
87
+
88
+ wp_enqueue_script('jquery-ui-core');
89
+ wp_enqueue_script('jquery-ui-autocomplete');
90
+ }
91
+
92
+
93
+ function adminScripts($hook){
94
+ if($hook !== 'wpdmpro_page_wpdm-asset-manager') return;
95
+
96
+ $cm_settings['codeEditor'] = wp_enqueue_code_editor(array('type' => 'text/plain'));
97
+ wp_localize_script('jquery', 'wpdmcm_settings', $cm_settings);
98
+
99
+ wp_enqueue_script('wp-theme-plugin-editor');
100
+ wp_enqueue_style('wp-codemirror');
101
+
102
+ wp_enqueue_script('jquery-ui-core');
103
+ wp_enqueue_script('jquery-ui-autocomplete');
104
+
105
+ }
106
+
107
+ public function download(){
108
+ if(isset($_REQUEST['asset']) && isset($_REQUEST['key'])){
109
+ $asset = new Asset();
110
+ $asset->get(wpdm_query_var('asset', 'int'));
111
+ if(wp_verify_nonce($_REQUEST['key'], $asset->path))
112
+ $asset->download();
113
+ else
114
+ \WPDM_Messages::error(apply_filters('wpdm_asset_download_link_expired_message', __( "Download link is expired! Go back and Refresh the page to regenerate download link", "download-manager" )), 1);
115
+ die();
116
+ }
117
+ if(isset($_REQUEST['wpdmfmdl']) && is_user_logged_in()){
118
+ global $current_user;
119
+ $file = AssetManager::root(Crypt::decrypt(wpdm_query_var('wpdmfmdl')));
120
+ if(!$file) \WPDM_Messages::error("File Not Found!", 1);
121
+ \WPDM\libs\FileSystem::downloadFile($file, wp_basename($file));
122
+ die();
123
+ }
124
+ }
125
+
126
+
127
+ public static function getDir(){
128
+ return self::$instance->dir;
129
+ }
130
+
131
+ public static function getUrl(){
132
+ return self::$instance->url;
133
+ }
134
+
135
+ public function adminMenu(){
136
+ add_submenu_page( 'edit.php?post_type=wpdmpro',__("Asset Manager", 'download-manager'), __('Asset Manager','download-manager'), 'manage_options', 'wpdm-asset-manager', array($this,'_assetManager'));
137
+ }
138
+
139
+ function mkDir(){
140
+ global $current_user;
141
+ if(isset($_REQUEST['__wpdm_mkdir']) && !wp_verify_nonce($_REQUEST['__wpdm_mkdir'], NONCE_KEY)) wp_send_json(array('success' => false, 'message' => __( "Error! Session Expired. Try refreshing page.", "download-manager" )));
142
+ check_ajax_referer(NONCE_KEY, '__wpdm_mkdir');
143
+ if(!current_user_can(WPDM_ADMIN_CAP)) wp_send_json(array('success' => false, 'message' => __( "Error! Unauthorized Access.", "download-manager" )));
144
+ $root = AssetManager::root();
145
+ $relpath = Crypt::decrypt(wpdm_query_var('path'));
146
+ $path = AssetManager::root($relpath);
147
+ if(!$path) wp_send_json(array('success' => false, 'message' => __( "Error! Unauthorized Path.", "download-manager" )));
148
+ $name = wpdm_query_var('name', 'filename');
149
+ mkdir($path.$name);
150
+ wp_send_json(array('success' => true, 'path' => $path.$name));
151
+ }
152
+
153
+ function newFile(){
154
+ global $current_user;
155
+ if(isset($_REQUEST['__wpdm_newfile']) && !wp_verify_nonce($_REQUEST['__wpdm_newfile'], NONCE_KEY)) wp_send_json(array('success' => false, 'message' => __( "Error! Session Expired. Try refreshing page.", "download-manager" )));
156
+ check_ajax_referer(NONCE_KEY, '__wpdm_newfile');
157
+ if(!current_user_can(WPDM_ADMIN_CAP)) wp_send_json(array('success' => false, 'message' => __( "Error! Unauthorized Access.", "download-manager" )));
158
+ $relpath = Crypt::decrypt(wpdm_query_var('path'));
159
+ $path = AssetManager::root($relpath);
160
+ if(!$path) wp_send_json(array('success' => false, 'message' => __( "Error! Unauthorized Path.", "download-manager" )));
161
+ $name = wpdm_query_var('name');
162
+ $ret = file_put_contents($path.$name, '');
163
+ if($ret !== false)
164
+ wp_send_json(array('success' => true, 'filepath' => $path.$name));
165
+ else
166
+ wp_send_json(array('success' => false, 'filepath' => $path.$name));
167
+
168
+ }
169
+
170
+ function scanDir(){
171
+ if(isset($_REQUEST['__wpdm_scandir']) && !wp_verify_nonce($_REQUEST['__wpdm_scandir'], NONCE_KEY)) wp_send_json(array('success' => false, 'message' => __( "Error! Session Expired. Try refreshing page.", "download-manager" )));
172
+ check_ajax_referer(NONCE_KEY, '__wpdm_scandir');
173
+ if(!current_user_can(WPDM_ADMIN_CAP)) wp_send_json(array('success' => false, 'message' => __( "Error! Session Expired. Try refreshing page.", "download-manager" )));
174
+ global $current_user;
175
+ $root = AssetManager::root();
176
+ $relpath = Crypt::decrypt(wpdm_query_var('path'));
177
+ $path = AssetManager::root($relpath);
178
+ if(!$path) wp_send_json(array('success' => false, 'message' => __( "Error! Unauthorized Path.", "download-manager" )));
179
+ $items = scandir($path, SCANDIR_SORT_ASCENDING );
180
+ $items = array_diff($items, array('.','..'));
181
+ $_items = array();
182
+ $_dirs = array();
183
+ Session::set('working_dir', $path);
184
+ foreach ($items as $item){
185
+
186
+ $item_label = $item;
187
+ $item_label = esc_attr($item_label);
188
+ //$item_label = strlen($item_label) > 30 ? substr($item_label, 0, 15) . "..." . substr($item_label, strlen($item_label) - 15) : $item_label;
189
+ $ext = explode('.', $item); $ext = end($ext);
190
+ $icon = file_exists(WPDM_BASE_DIR.'/assets/file-type-icons/'.$ext.'.svg')?plugins_url('download-manager/assets/file-type-icons/'.$ext.'.svg'):plugins_url('download-manager/assets/file-type-icons/unknown.svg');
191
+ $type = is_dir($path.$item)?'dir':'file';
192
+ $note = is_dir($path.$item)?(count(scandir($path.$item))-2).' items':number_format((filesize($path.$item)/1024),2).' KB';
193
+ $rpath = str_replace($root, "", $path.$item);
194
+ $_rpath = Crypt::encrypt($rpath);
195
+ if($type === 'dir') {
196
+ $_dirs[] = array('item_label' => $item_label, 'item' => $item, 'icon' => $icon, 'type' => $type, 'note' => $note, 'path' => $_rpath, 'id' => md5($rpath));
197
+ }
198
+ else {
199
+ $contenttype = function_exists('mime_content_type') ? mime_content_type($path.$item) : self::mime_type($path.$item);
200
+ $_items[] = array('item_label' => $item_label, 'item' => $item, 'icon' => $icon, 'type' => $type, 'contenttype' => $contenttype, 'note' => $note, 'path' => $_rpath, 'id' => md5($rpath));
201
+ }
202
+
203
+ }
204
+
205
+ $allitems = $_dirs;
206
+ foreach ($_items as $_item){
207
+ $allitems[] = $_item;
208
+ }
209
+ $parts = explode("/", $relpath);
210
+ $breadcrumb[] = "<a href='#' class='media-folder' data-path=''>".__( "Home", "download-manager" )."</a>";
211
+ $topath = array();
212
+ foreach ($parts as $part){
213
+ $topath[] = $part;
214
+ $rpath = Crypt::encrypt(implode("/", $topath));
215
+ $breadcrumb[] = "<a href='#' class='media-folder' data-path='{$rpath}'>".esc_attr($part)."</a>";
216
+ }
217
+ $breadcrumb = implode("<i class='dashicons dashicons-arrow-right-alt2' style='font-size: 11px;line-height: 17px;'></i>", $breadcrumb);
218
+ if((int)wpdm_query_var('dirs') === 1)
219
+ wp_send_json($_dirs);
220
+ else
221
+ wp_send_json(array('items' => $allitems, 'breadcrumb' => $breadcrumb));
222
+ die();
223
+ }
224
+
225
+ static function mime_type($file){
226
+ $contenttype = wp_check_filetype($file);
227
+ $contenttype = $contenttype['type'];
228
+ if(!$contenttype){
229
+ $file = explode(".", $file);
230
+ $contenttype = "unknown/".end($file);
231
+ }
232
+ return $contenttype;
233
+ }
234
+
235
+ function deleteItem(){
236
+
237
+ if(isset($_REQUEST['__wpdm_unlink']) && !wp_verify_nonce($_REQUEST['__wpdm_unlink'], NONCE_KEY)) wp_send_json(array('success' => false, 'message' => __( "Error! Session Expired. Try refreshing page.", "download-manager" )));
238
+ check_ajax_referer(NONCE_KEY, '__wpdm_unlink');
239
+ if(!current_user_can(WPDM_ADMIN_CAP)) wp_send_json(array('success' => false, 'message' => __( "Error! Session Expired. Try refreshing page.", "download-manager" )));
240
+
241
+ $relpath = Crypt::decrypt(wpdm_query_var('delete'));
242
+ $path = AssetManager::root($relpath);
243
+ if(!$path) wp_send_json(array('success' => false, 'message' => __( "Error! Unauthorized Path.", "download-manager" )));
244
+ if(is_dir($path))
245
+ $this->rmDir($path);
246
+ else
247
+ unlink($path);
248
+
249
+ Asset::delete($path);
250
+
251
+ die($path);
252
+ }
253
+
254
+ function openFile(){
255
+ if(isset($_REQUEST['__wpdm_openfile']) && !wp_verify_nonce($_REQUEST['__wpdm_openfile'], NONCE_KEY)) wp_send_json(array('success' => false, 'message' => __( "Error! Session Expired. Try refreshing page.", "download-manager" )));
256
+ check_ajax_referer(NONCE_KEY, '__wpdm_openfile');
257
+ if(!current_user_can(WPDM_ADMIN_CAP)) wp_send_json(array('success' => false, 'message' => __( "Error! Session Expired. Try refreshing page.", "download-manager" )));
258
+ $relpath = Crypt::decrypt(wpdm_query_var('file'));
259
+ $path = AssetManager::root($relpath);
260
+ if(!$path) wp_send_json(array('success' => false, 'message' => __( "Error! Unauthorized Path.", "download-manager" )));
261
+ if(file_exists($path) && is_file($path)){
262
+ $cid = uniqid();
263
+ \WPDM\Session::set($cid, $path);
264
+ $type = mime_content_type($path);
265
+ if(strstr("__{$type}", "text/"))
266
+ wp_send_json(array('content' => file_get_contents($path), 'id' => $cid));
267
+ else if(strstr("__{$type}", "svg"))
268
+ wp_send_json(array('content' => '', 'embed' => file_get_contents($path), 'id' => $cid));
269
+ else {
270
+ $fetchurl = home_url("/?wpdmfmdl=".wpdm_query_var('file'));
271
+ if (strstr("__{$type}", "image/")) {
272
+ $embed_code = "<img src='$fetchurl' />";
273
+ wp_send_json(array('content' => '', 'embed' => $embed_code, 'id' => $cid));
274
+ }
275
+ if (strstr("__{$type}", "audio/")) {
276
+ $embed_code = do_shortcode("[audio src='$fetchurl']");
277
+ wp_send_json(array('content' => '', 'embed' => $embed_code, 'id' => $cid));
278
+ }
279
+ if (strstr("__{$type}", "video/")) {
280
+ $embed_code = do_shortcode("[video src='$fetchurl']");
281
+ wp_send_json(array('content' => '', 'embed' => $embed_code, 'id' => $cid));
282
+ }
283
+ }
284
+
285
+
286
+
287
+ } else {
288
+ \WPDM_Messages::error("Couldn't open file ( $path )!", 0);
289
+ die();
290
+ }
291
+
292
+ }
293
+
294
+ function fileSettings(){
295
+
296
+ if(isset($_REQUEST['__wpdm_filesettings']) && !wp_verify_nonce($_REQUEST['__wpdm_filesettings'], NONCE_KEY)) wp_send_json(array('success' => false, 'message' => __( "Error! Session Expired. Try refreshing page.", "download-manager" )));
297
+ check_ajax_referer(NONCE_KEY, '__wpdm_filesettings');
298
+ if(!current_user_can(WPDM_ADMIN_CAP)) wp_send_json(array('success' => false, 'message' => __( "Error! Unauthorized Access.", "download-manager" )));
299
+ $relpath = Crypt::decrypt(wpdm_query_var('file'));
300
+ $path = AssetManager::root($relpath);
301
+ if(!$path) wp_send_json(array('success' => false, 'message' => __( "Error! Unauthorized Path.", "download-manager" )));
302
+ if(file_exists($path)){
303
+ $asset = new \WPDM\Asset($path);
304
+ wp_send_json($asset);
305
+ } else {
306
+ wp_send_json(array('success' => false, 'message' => __( "Error! Unauthorized Path.", "download-manager" )));
307
+ die();
308
+ }
309
+
310
+ }
311
+
312
+ function saveFile(){
313
+ if(isset($_REQUEST['__wpdm_savefile']) && !wp_verify_nonce($_REQUEST['__wpdm_savefile'], NONCE_KEY)) wp_send_json(array('success' => false, 'message' => __( "Error! Session Expired. Try refreshing page.", "download-manager" )));
314
+ check_ajax_referer(NONCE_KEY, '__wpdm_savefile');
315
+ if(!current_user_can(WPDM_ADMIN_CAP)) wp_send_json(array('success' => false, 'message' => __( "Error! Session Expired. Try refreshing page.", "download-manager" )));
316
+
317
+ $ofilepath = \WPDM\Session::get(wpdm_query_var('opened'));
318
+ $relpath = Crypt::decrypt(wpdm_query_var('file'));
319
+ $path = AssetManager::root($relpath);
320
+ if(!$path) wp_send_json(array('success' => false, 'message' => __( "Error! Unauthorized Path.", "download-manager" )));
321
+ if(file_exists($path) && is_file($path)){
322
+ $content = stripslashes_deep($_POST['content']);
323
+ file_put_contents($path, $content);
324
+ wp_send_json(array('success' => true, 'message' => 'Saved Successfully.', 'type' => 'success'));
325
+ } else {
326
+ wp_send_json(array('success' => false, 'message' => __( "Error! Couldn't open file ( $path ).", "download-manager" )));
327
+ }
328
+
329
+ }
330
+
331
+ function renameItem(){
332
+ if(isset($_REQUEST['__wpdm_rename']) && !wp_verify_nonce($_REQUEST['__wpdm_rename'], NONCE_KEY)) wp_send_json(array('success' => false, 'message' => __( "Error! Session Expired. Try refreshing page.", "download-manager" )));
333
+ check_ajax_referer(NONCE_KEY, '__wpdm_rename');
334
+ if(!current_user_can(WPDM_ADMIN_CAP)) wp_send_json(array('success' => false, 'message' => __( "Error! Session Expired. Try refreshing page.", "download-manager" )));
335
+ global $current_user;
336
+ $asset = new Asset();
337
+ $asset->get(wpdm_query_var('assetid', 'int'));
338
+ $root = AssetManager::root();
339
+ $oldpath = $asset->path;
340
+ $newpath = dirname($asset->path) . '/' . str_replace(array("/","\\", "\"", "'"), "_", wpdm_query_var('newname'));
341
+ if(!strstr($newpath, $root)) die('Error!'.$newpath." -- ".$root );
342
+ rename($oldpath, $newpath);
343
+ $asset->updatePath($newpath);
344
+ wp_send_json($asset);
345
+ }
346
+
347
+ function moveItem(){
348
+ if(isset($_REQUEST['__wpdm_cutpaste']) && !wp_verify_nonce($_REQUEST['__wpdm_cutpaste'], NONCE_KEY)) wp_send_json(array('success'=> false, 'message' => __( "Error! Session Expired. Try refreshing page.", "download-manager" )));
349
+ check_ajax_referer(NONCE_KEY, '__wpdm_cutpaste');
350
+ if(!current_user_can(WPDM_ADMIN_CAP)) wp_send_json(array('success' => false, 'message' => __( "Error! Session Expired. Try refreshing page.", "download-manager" )));
351
+
352
+ $opath = explode("|||", wpdm_query_var('source'));
353
+ $olddir = Crypt::decrypt($opath[0]);
354
+ $file = end($opath);
355
+ $oldpath = AssetManager::root($olddir . '/' .$file );
356
+ $newpath = AssetManager::root(Crypt::decrypt(wpdm_query_var('dest'))) . $file;
357
+ if(!$oldpath) wp_send_json(array('success'=> false, 'message' => __( "Invalid source path", "download-manager" )));
358
+ if(!$newpath) wp_send_json(array('success'=> false, 'message' => __( "Invalid destination path", "download-manager" )));
359
+ rename($oldpath, $newpath);
360
+
361
+ $asset = new Asset();
362
+ $asset = $asset->get($oldpath);
363
+ if($asset)
364
+ $asset->updatePath($newpath);
365
+
366
+ wp_send_json(array('success'=> true, 'message' => __( "File moved successfully", "download-manager" )));
367
+ }
368
+
369
+ function copyItem(){
370
+ if(isset($_REQUEST['__wpdm_copypaste']) && !wp_verify_nonce($_REQUEST['__wpdm_copypaste'], NONCE_KEY)) wp_send_json(array('success'=> false, 'message' => __( "Error! Session Expired. Try refreshing page.", "download-manager" )));
371
+ check_ajax_referer(NONCE_KEY, '__wpdm_copypaste');
372
+ if(!current_user_can(WPDM_ADMIN_CAP)) wp_send_json(array('success' => false, 'message' => __( "Error! Session Expired. Try refreshing page.", "download-manager" )));
373
+ global $current_user;
374
+ $root = AssetManager::root();
375
+ $opath = explode("|||", wpdm_query_var('source'));
376
+ $olddir = Crypt::decrypt($opath[0]);
377
+ $file = end($opath);
378
+ $oldpath = AssetManager::root($olddir . '/' .$file );
379
+ $newpath = AssetManager::root(Crypt::decrypt(wpdm_query_var('dest'))) . $file;
380
+ if(!strstr($oldpath, $root)) wp_send_json(array('success'=> false, 'message' => __( "Invalid source path", "download-manager" )));
381
+ if(!strstr($newpath, $root)) wp_send_json(array('success'=> false, 'message' => __( "Invalid destination path", "download-manager" )));
382
+ copy($oldpath, $newpath);
383
+
384
+ wp_send_json(array('success'=> true, 'message' => __( "File copied successfully", "download-manager" )));
385
+ }
386
+
387
+ function rmDir($dir){
388
+ $files = array_diff(scandir($dir), array('.','..'));
389
+ foreach ($files as $file) {
390
+ (is_dir("$dir/$file")) ? $this->rmDir("$dir/$file") : unlink("$dir/$file");
391
+ }
392
+ return rmdir($dir);
393
+ }
394
+
395
+ function copyDir( $src , $dst ) {
396
+ $src = realpath( $src );
397
+ $dir = opendir( $src );
398
+
399
+ $dst = realpath( $dst ) . '/' . basename($src);
400
+ @mkdir( $dst );
401
+
402
+ while(false !== ( $file = readdir($dir)) ) {
403
+ if (( $file != '.' ) && ( $file != '..' )) {
404
+ if ( is_dir($src . '/' . $file) ) {
405
+ $this->copyDir($src . '/' . $file,$dst . '/' . $file);
406
+ }
407
+ else {
408
+ copy($src . '/' . $file,$dst . '/' . $file);
409
+ }
410
+ }
411
+ }
412
+ closedir($dir);
413
+ }
414
+
415
+ function frontendFileManagerTab($tabs){
416
+ $tabs['asset-manager'] = array('label' => 'Asset Manager', 'callback' => array($this, '_assetManager'), 'icon' => 'fa fa-copy');
417
+ return $tabs;
418
+ }
419
+
420
+ function _assetManager(){
421
+
422
+ include wpdm_tpl_path("asset-manager-ui.php");
423
+
424
+ }
425
+
426
+ function wpdmAsset($params){
427
+ if(!isset($params['id'])) return \WPDM_Messages::Error(array('title' => 'Error 404', 'message' => __( "Asset not found!", "download-manager" )), -1);
428
+
429
+ $path_or_id = (int)$params['id'];
430
+ $asset = new Asset();
431
+ $asset->get($path_or_id);
432
+
433
+ if(!$asset)
434
+ return \WPDM_Messages::Error(array('title' => 'Error 404', 'message' => __( "Asset not found!", "download-manager" )), -1);
435
+
436
+ if(isset($params['title']))
437
+ $asset->name = $params['title'];
438
+
439
+ $asset->access = isset($params['access']) && in_array($params['access'], array('public', 'private')) ? $params['access'] : 'public';
440
+
441
+ ob_start();
442
+ include wpdm_tpl_path("wpdm-asset.php");
443
+ $content = ob_get_clean();
444
+ return $content;
445
+ }
446
+
447
+ function upload($file){
448
+ if(wp_verify_nonce($_REQUEST['__wpdmfm_upload'], NONCE_KEY)) {
449
+ $working_dir = Session::get('working_dir');
450
+ $root = AssetManager::root();
451
+ if(!strstr($working_dir, $root)) wp_send_json(array('success' => false));
452
+ if($working_dir != '') {
453
+ $dest = $working_dir . basename($file);
454
+ rename($file, $dest);
455
+ wp_send_json(array('success' => true, 'src' => $file, 'file' => $dest));
456
+ }
457
+ else
458
+ wp_send_json(array('success' => false));
459
+ }
460
+ }
461
+
462
+ function extract(){
463
+ $relpath = Crypt::decrypt(wpdm_query_var('zipfile'));
464
+ $zipfile = AssetManager::root($relpath);
465
+ $reldest = Crypt::decrypt(wpdm_query_var('zipdest'));
466
+ if($reldest == '') $reldest = dirname($zipfile);
467
+ $zipdest = AssetManager::root($reldest);
468
+ if(!$zipfile || !stristr($zipfile, '.zip')) wp_send_json(array('success' => false, 'message' => __( "Error! Unauthorized Path.", "download-manager" )));
469
+ if(!$zipdest) wp_send_json(array('success' => false, 'message' => __( "Error! Invalid Destination Path.", "download-manager" )));
470
+ if(!class_exists('\ZipArchive')) wp_send_json(array('success' => false, 'message' => __('Please activate "zlib" in your server to perform zip operations','download-manager')));
471
+ $zip = new \ZipArchive();
472
+ if ($zip->open($zipfile) === TRUE) {
473
+ $zip->extractTo($zipdest);
474
+ $zip->close();
475
+ wp_send_json(array('success' => true, 'message' => __( "Unzipped successfully.", "download-manager" )));
476
+ } else {
477
+ wp_send_json(array('success' => false, 'message' => __( "Error! Couldn't open the zip file.", "download-manager" )));
478
+ }
479
+ }
480
+ }
481
+
482
+ AssetManager::getInstance();
483
+ endif;
libs/class.Crypt.php CHANGED
@@ -2,7 +2,7 @@
2
 
3
  /**
4
  * Class Crypt
5
- * Updated in v2.9.77
6
  */
7
 
8
  namespace WPDM\libs;
@@ -13,18 +13,18 @@ class Crypt
13
 
14
  public static function encrypt($text)
15
  {
16
-
17
  if (is_array($text)) $text = serialize($text);
18
- if(defined('SECURE_AUTH_KEY'))
19
  $skey = substr(md5(SECURE_AUTH_KEY), 0, 16);
20
  else
21
  $skey = substr(md5(NONCE_SALT), 0, 16);
22
 
23
- $ivlen = openssl_cipher_iv_length($cipher="AES-128-CBC");
24
  $iv = openssl_random_pseudo_bytes($ivlen);
25
- $ciphertext_raw = openssl_encrypt($text, $cipher, $skey, $options=OPENSSL_RAW_DATA, $iv);
26
- $hmac = hash_hmac('sha256', $ciphertext_raw, $skey, $as_binary=true);
27
- $ciphertext = base64_encode( $iv.$hmac.$ciphertext_raw );
28
 
29
  $ciphertext = str_replace(array('+', '/', '='), array('-', '_', ''), $ciphertext);
30
  $ciphertext = trim($ciphertext, '=');
@@ -34,17 +34,18 @@ class Crypt
34
 
35
  public static function decrypt($ciphertext)
36
  {
37
-
38
- if(defined('SECURE_AUTH_KEY'))
39
  $skey = substr(md5(SECURE_AUTH_KEY), 0, 16);
40
  else
41
  $skey = substr(md5(NONCE_SALT), 0, 16);
42
  $ciphertext = str_replace(array('-', '_'), array('+', '/'), $ciphertext);
43
  $c = base64_decode($ciphertext);
44
- $ivlen = openssl_cipher_iv_length($cipher="AES-128-CBC");
45
  $iv = substr($c, 0, $ivlen);
46
- $hmac = substr($c, $ivlen, $sha2len=32);
47
- $ciphertext_raw = substr($c, $ivlen+$sha2len);
 
48
  try {
49
  $original_plaintext = openssl_decrypt($ciphertext_raw, $cipher, $skey, $options = OPENSSL_RAW_DATA, $iv);
50
  $calcmac = hash_hmac('sha256', $ciphertext_raw, $skey, $as_binary = true);
@@ -52,7 +53,7 @@ class Crypt
52
  {
53
  return maybe_unserialize(trim($original_plaintext));
54
  }
55
- } catch (\Exception $e){
56
  return '';
57
  }
58
 
2
 
3
  /**
4
  * Class Crypt
5
+ * Updated in v3.0.0
6
  */
7
 
8
  namespace WPDM\libs;
13
 
14
  public static function encrypt($text)
15
  {
16
+ if ($text === '') return '';
17
  if (is_array($text)) $text = serialize($text);
18
+ if (defined('SECURE_AUTH_KEY'))
19
  $skey = substr(md5(SECURE_AUTH_KEY), 0, 16);
20
  else
21
  $skey = substr(md5(NONCE_SALT), 0, 16);
22
 
23
+ $ivlen = openssl_cipher_iv_length($cipher = "AES-128-CBC");
24
  $iv = openssl_random_pseudo_bytes($ivlen);
25
+ $ciphertext_raw = openssl_encrypt($text, $cipher, $skey, $options = OPENSSL_RAW_DATA, $iv);
26
+ $hmac = hash_hmac('sha256', $ciphertext_raw, $skey, $as_binary = true);
27
+ $ciphertext = base64_encode($iv . $hmac . $ciphertext_raw);
28
 
29
  $ciphertext = str_replace(array('+', '/', '='), array('-', '_', ''), $ciphertext);
30
  $ciphertext = trim($ciphertext, '=');
34
 
35
  public static function decrypt($ciphertext)
36
  {
37
+ if ($ciphertext === '') return $ciphertext;
38
+ if (defined('SECURE_AUTH_KEY'))
39
  $skey = substr(md5(SECURE_AUTH_KEY), 0, 16);
40
  else
41
  $skey = substr(md5(NONCE_SALT), 0, 16);
42
  $ciphertext = str_replace(array('-', '_'), array('+', '/'), $ciphertext);
43
  $c = base64_decode($ciphertext);
44
+ $ivlen = openssl_cipher_iv_length($cipher = "AES-128-CBC");
45
  $iv = substr($c, 0, $ivlen);
46
+ $hmac = substr($c, $ivlen, $sha2len = 32);
47
+ if (empty($hmac)) return '';
48
+ $ciphertext_raw = substr($c, $ivlen + $sha2len);
49
  try {
50
  $original_plaintext = openssl_decrypt($ciphertext_raw, $cipher, $skey, $options = OPENSSL_RAW_DATA, $iv);
51
  $calcmac = hash_hmac('sha256', $ciphertext_raw, $skey, $as_binary = true);
53
  {
54
  return maybe_unserialize(trim($original_plaintext));
55
  }
56
+ } catch (\Exception $e) {
57
  return '';
58
  }
59
 
libs/class.FileSystem.php CHANGED
@@ -170,8 +170,9 @@ class FileSystem
170
  */
171
  public static function downloadHeaders($filename, $size = 1024000){
172
  @ob_end_clean();
 
173
  header("Content-Description: File Transfer");
174
- header("Content-Type: text/plain");
175
  header("Content-disposition: attachment;filename=\"$filename\"");
176
  header("Content-Transfer-Encoding: text/plain");
177
  header("Content-Length: " . $size);
170
  */
171
  public static function downloadHeaders($filename, $size = 1024000){
172
  @ob_end_clean();
173
+ $content_type = wp_check_filetype($filename);
174
  header("Content-Description: File Transfer");
175
+ header("Content-Type: {$content_type['type']}");
176
  header("Content-disposition: attachment;filename=\"$filename\"");
177
  header("Content-Transfer-Encoding: text/plain");
178
  header("Content-Length: " . $size);
libs/class.Package.php CHANGED
@@ -921,7 +921,7 @@ class Package {
921
 
922
  }
923
  if($embed == 1)
924
- $data = "<div class='panel panel-default terms-panel' style='margin: 0'><div class='panel-heading'>{$package['terms_title']}</div><div class='panel-body' style='max-height: 200px;overflow: auto'>{$data['terms_conditions']}</div><div class='panel-footer'><label><input data-pid='{$package['ID']}' data-target='.download_footer_{$package['ID']}' class='wpdm-checkbox wpdm-lock-terms terms_checkbox terms_checkbox_{$package['ID']}' type='checkbox'> {$data['terms_check_label']}</label></div><div class='panel-footer download_footer_{$package['ID']}' style='display:none;'>{$data}</div></div>"; // onclick='jQuery(\".download_footer_{$package['ID']}\").slideToggle();'
925
 
926
  }
927
 
@@ -1029,13 +1029,15 @@ class Package {
1029
  if(!strpos(strip_tags($template), "]")){
1030
  $template = wpdm_basename($template);
1031
  $ltpldir = get_stylesheet_directory().'/download-manager/'.$type.'-templates/';
 
1032
 
1033
  if(!file_exists($ltpldir) || !file_exists($ltpldir.$template))
1034
  $ltpldir = WPDM_BASE_DIR.'tpls/'.$type.'-templates/';
1035
 
1036
- if (file_exists(TEMPLATEPATH . '/' . $template)) $template = file_get_contents(TEMPLATEPATH . '/' . $template);
1037
- else if (file_exists($ltpldir . $template)) $template = file_get_contents($ltpldir . $template);
1038
  else if (file_exists($ltpldir . $template . '.php')) $template = file_get_contents($ltpldir . $template . '.php');
 
1039
  else if (file_exists($ltpldir. $type . "-template-" . $template . '.php')) $template = file_get_contents($ltpldir. $type . "-template-" . $template . '.php');
1040
  else $template = file_get_contents(wpdm_tpl_path($default[$type], $ltpldir));
1041
  }
@@ -1065,7 +1067,7 @@ class Package {
1065
  //Replace all txt variables
1066
  foreach ($txtmatches[0] as $nd => $scode) {
1067
  $scode = str_replace(array('[', ']'), '', $scode);
1068
- $vars[$scode] = __($txtmatches[1][$nd], "wpdmpro");
1069
  }
1070
 
1071
  // Parse [pdf_thumb] tag in link/page template
921
 
922
  }
923
  if($embed == 1)
924
+ $data = "<div class='panel panel-default terms-panel' style='margin: 0'><div class='panel-heading'>{$package['terms_title']}</div><div class='panel-body' style='max-height: 200px;overflow: auto'>{$package['terms_conditions']}</div><div class='panel-footer'><label><input data-pid='{$package['ID']}' data-target='.download_footer_{$package['ID']}' class='wpdm-checkbox wpdm-lock-terms terms_checkbox terms_checkbox_{$package['ID']}' type='checkbox'> {$package['terms_check_label']}</label></div><div class='panel-footer download_footer_{$package['ID']}' style='display:none;'>{$data}</div></div>"; // onclick='jQuery(\".download_footer_{$package['ID']}\").slideToggle();'
925
 
926
  }
927
 
1029
  if(!strpos(strip_tags($template), "]")){
1030
  $template = wpdm_basename($template);
1031
  $ltpldir = get_stylesheet_directory().'/download-manager/'.$type.'-templates/';
1032
+ $pthemeltpldir = get_template_directory().'/download-manager/'.$type.'-templates/';
1033
 
1034
  if(!file_exists($ltpldir) || !file_exists($ltpldir.$template))
1035
  $ltpldir = WPDM_BASE_DIR.'tpls/'.$type.'-templates/';
1036
 
1037
+ if (file_exists($ltpldir . $template)) $template = file_get_contents($ltpldir . $template);
1038
+ else if (file_exists($pthemeltpldir . '/' . $template)) $template = file_get_contents($pthemeltpldir . '/' . $template);
1039
  else if (file_exists($ltpldir . $template . '.php')) $template = file_get_contents($ltpldir . $template . '.php');
1040
+ else if (file_exists($pthemeltpldir . $template . '.php')) $template = file_get_contents($pthemeltpldir . $template . '.php');
1041
  else if (file_exists($ltpldir. $type . "-template-" . $template . '.php')) $template = file_get_contents($ltpldir. $type . "-template-" . $template . '.php');
1042
  else $template = file_get_contents(wpdm_tpl_path($default[$type], $ltpldir));
1043
  }
1067
  //Replace all txt variables
1068
  foreach ($txtmatches[0] as $nd => $scode) {
1069
  $scode = str_replace(array('[', ']'), '', $scode);
1070
+ $vars[$scode] = __($txtmatches[1][$nd], "download-manager");
1071
  }
1072
 
1073
  // Parse [pdf_thumb] tag in link/page template
libs/class.PackageLocks.php CHANGED
@@ -56,7 +56,7 @@ class PackageLocks
56
  jQuery("#msg_<?php echo $package['ID']; ?>").html("verifying...").css("cursor","pointer").show().click(function(){ jQuery(this).hide();jQuery("#wpdmdlf_<?php echo $unqid . '_' . $package['ID']; ?>").show(); });
57
  if(res.downloadurl!=""&&res.downloadurl!=undefined) {
58
  window.open(res.downloadurl);
59
- jQuery("#wpdmdlf_<?php echo $unqid . '_' . $package['ID']; ?>").html("<a style='color:#ffffff !important' class='wpdm-download-button btn btn-success btn-lg btn-block' href='"+res.downloadurl+"'><?php _e('Download','download-manager'); ?></a>");
60
  jQuery("#msg_<?php echo $package['ID']; ?>").hide();
61
  jQuery("#wpdmdlf_<?php echo $unqid . '_' . $package['ID']; ?>").show();
62
  } else {
@@ -93,7 +93,7 @@ class PackageLocks
93
  /** location.href=res.downloadurl; **/
94
  var w = window.open(res.downloadurl, '_blank');
95
  /** if(!w) WPDM.notify("Popup blocked by your browser, please click on download link to start download."); **/
96
- jQuery('#reCaptchaLock_<?php echo $package['ID']; ?>').html('<a href="'+res.downloadurl+'" class="wpdm-download-button btn btn-success btn-lg btn-block"><?php _e('Download','download-manager'); ?></a>');
97
  } else {
98
  //alert(res.error);
99
  jQuery('#reCaptchaLock_<?php echo $package['ID']; ?>').html('<div class="color-red">'+res.error+"</div>");
56
  jQuery("#msg_<?php echo $package['ID']; ?>").html("verifying...").css("cursor","pointer").show().click(function(){ jQuery(this).hide();jQuery("#wpdmdlf_<?php echo $unqid . '_' . $package['ID']; ?>").show(); });
57
  if(res.downloadurl!=""&&res.downloadurl!=undefined) {
58
  window.open(res.downloadurl);
59
+ jQuery("#wpdmdlf_<?php echo $unqid . '_' . $package['ID']; ?>").html("<a style='color:#ffffff !important' class='wpdm-download-button btn <?php echo wpdm_download_button_style(true, $package['ID']); ?> btn-block' href='"+res.downloadurl+"'><?php _e('Download','download-manager'); ?></a>");
60
  jQuery("#msg_<?php echo $package['ID']; ?>").hide();
61
  jQuery("#wpdmdlf_<?php echo $unqid . '_' . $package['ID']; ?>").show();
62
  } else {
93
  /** location.href=res.downloadurl; **/
94
  var w = window.open(res.downloadurl, '_blank');
95
  /** if(!w) WPDM.notify("Popup blocked by your browser, please click on download link to start download."); **/
96
+ jQuery('#reCaptchaLock_<?php echo $package['ID']; ?>').html('<a href="'+res.downloadurl+'" class="wpdm-download-button btn <?php echo wpdm_download_button_style(true, $package['ID']); ?> btn-block"><?php _e('Download','download-manager'); ?></a>');
97
  } else {
98
  //alert(res.error);
99
  jQuery('#reCaptchaLock_<?php echo $package['ID']; ?>').html('<div class="color-red">'+res.error+"</div>");
libs/class.ShortCodes.php CHANGED
@@ -19,13 +19,13 @@ class ShortCodes
19
  add_shortcode('wpdm_login_form', array($this, 'LoginForm'));
20
 
21
  // Register form
22
- add_shortcode('wpdm_reg_form', array($this, 'RegisterForm'));
23
 
24
  // Edit Profile
25
  add_shortcode('wpdm_edit_profile', array($this, 'EditProfile'));
26
 
27
  // Show all packages
28
- add_shortcode('wpdm_packages', array($this, 'Packages'));
29
 
30
  // Show a package by id
31
  add_shortcode('wpdm_package', array($this, 'Package'));
@@ -73,18 +73,56 @@ class ShortCodes
73
  * @usage Short-code callback function for login/register form
74
  * @return string
75
  */
76
- function LoginForm($params = array()){
 
 
 
 
 
77
  if(isset($params) && is_array($params))
78
  extract($params);
79
  if(!isset($redirect)) $redirect = get_permalink(get_option('__wpdm_user_dashboard'));
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
80
  ob_start();
81
- //echo "<div class='w3eden'>";
82
- if(isset($signup) && $signup == 1)
83
- include(WPDM_BASE_DIR . 'tpls/wpdm-be-member.php');
84
- else
85
- include(WPDM_BASE_DIR . 'tpls/wpdm-login-form.php');
86
- //echo "</div>";
87
- return ob_get_clean();
 
 
 
 
 
 
 
 
 
 
 
88
  }
89
 
90
 
@@ -110,26 +148,50 @@ class ShortCodes
110
  if (is_user_logged_in()) {
111
  include(wpdm_tpl_path('wpdm-edit-user-profile.php'));
112
  } else {
113
- include(wpdm_tpl_path('wpdm-be-member.php'));
114
  }
115
 
116
  $data = ob_get_clean();
117
  return $data;
118
  }
119
 
120
- function RegisterForm($params = array()){
121
- if(!get_option('users_can_register')) return __('User registration is disabled','download-manager');
122
- if(isset($params['role'])) update_post_meta(get_the_ID(),'__wpdm_role', $params['role']);
 
 
 
123
  ob_start();
124
  $regparams = \WPDM\libs\Crypt::Encrypt($params);
125
- echo "<div class='w3eden' id='wpdmreg'>";
126
- require_once(wpdm_tpl_path('wpdm-reg-form.php'));
127
- echo "</div>";
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
128
  $data = ob_get_clean();
129
  return $data;
130
  }
131
 
132
- function Packages($params = array('items_per_page' => 10, 'title' => false, 'desc' => false, 'order_field' => 'date', 'order' => 'desc', 'paging' => false, 'toolbar' => 1, 'template' => '','cols'=>3, 'colspad'=>2, 'colsphone' => 1))
133
  {
134
 
135
  $defaults = array('items_per_page' => 10, 's' =>'', 'title' => false, 'desc' => false, 'order_field' => 'date', 'order' => 'desc', 'paging' => false, 'toolbar' => 1, 'template' => 'link-template-panel','cols'=>3, 'colspad'=>2, 'colsphone' => 1);
@@ -317,19 +379,27 @@ class ShortCodes
317
  extract($params);
318
 
319
  global $wpdb;
320
- if(\WPDM\Package::isLocked($params['id']))
321
- $linkURL = get_permalink($params['id']);
 
 
322
  else
323
- $linkURL = home_url("/?wpdmdl=".$params['id']);
324
- $target = isset($params['target'])?"target={$params['target']}":"";
325
- $class = isset($params['class'])?"class={$params['class']}":"";
326
- $id = isset($params['id'])?"target={$params['id']}":"";
327
- $linkLabel = isset($params['label']) && !empty($params['label'])?$params['label']:get_post_meta($params['id'], '__wpdm_link_label', true);
328
- $linkLabel = empty($linkLabel)?get_the_title($params['id']):$linkLabel;
329
- return "<a {$target} {$class} {$id} href='$linkURL'>$linkLabel</a>";
 
 
 
 
 
330
 
331
  }
332
 
 
333
  /**
334
  * @usage Short-code [wpdm_all_packages] to list all packages in tabular format
335
  * @param array $params
19
  add_shortcode('wpdm_login_form', array($this, 'LoginForm'));
20
 
21
  // Register form
22
+ add_shortcode('wpdm_reg_form', array($this, 'registerForm'));
23
 
24
  // Edit Profile
25
  add_shortcode('wpdm_edit_profile', array($this, 'EditProfile'));
26
 
27
  // Show all packages
28
+ add_shortcode('wpdm_packages', array($this, 'packages'));
29
 
30
  // Show a package by id
31
  add_shortcode('wpdm_package', array($this, 'Package'));
73
  * @usage Short-code callback function for login/register form
74
  * @return string
75
  */
76
+ function loginForm($params = array()){
77
+
78
+ global $current_user;
79
+
80
+ if(!isset($params) || !is_array($params)) $params = array();
81
+
82
  if(isset($params) && is_array($params))
83
  extract($params);
84
  if(!isset($redirect)) $redirect = get_permalink(get_option('__wpdm_user_dashboard'));
85
+
86
+ if(!is_array($params)) $params = array();
87
+
88
+ if(!isset($regurl)) {
89
+ $regurl = get_option('__wpdm_register_url');
90
+ if ($regurl > 0)
91
+ $regurl = get_permalink($regurl);
92
+ }
93
+ $log_redirect = $_SERVER['REQUEST_URI'];
94
+ if(isset($params['redirect'])) $log_redirect = esc_url($params['redirect']);
95
+ if(isset($_GET['redirect_to'])) $log_redirect = esc_url($_GET['redirect_to']);
96
+
97
+ $up = parse_url($log_redirect);
98
+ if(isset($up['host']) && $up['host'] != $_SERVER['SERVER_NAME']) $log_redirect = $_SERVER['REQUEST_URI'];
99
+
100
+ $log_redirect = strip_tags($log_redirect);
101
+
102
+ if(!isset($params['logo']) || $params['logo'] == '') $params['logo'] = get_site_icon_url();
103
+
104
+ $__wpdm_social_login = get_option('__wpdm_social_login');
105
+ $__wpdm_social_login = is_array($__wpdm_social_login)?$__wpdm_social_login:array();
106
+
107
  ob_start();
108
+
109
+ if(is_user_logged_in())
110
+ $template = wpdm_tpl_path("already-logged-in.php", WPDM_TPL_DIR, WPDM_TPL_FALLBACK);
111
+ else {
112
+ if(wpdm_query_var('action') === 'lostpassword')
113
+ $template = wpdm_tpl_path('lost-password-form.php');
114
+ else if(wpdm_query_var('action') === 'rp')
115
+ $template = wpdm_tpl_path('reset-password-form.php');
116
+ else
117
+ $template = wpdm_tpl_path('wpdm-login-form.php');
118
+ }
119
+
120
+ include($template);
121
+
122
+ $content = ob_get_clean();
123
+ $content = apply_filters("wpdm_login_form_html", $content);
124
+
125
+ return $content;
126
  }
127
 
128
 
148
  if (is_user_logged_in()) {
149
  include(wpdm_tpl_path('wpdm-edit-user-profile.php'));
150
  } else {
151
+ $this->loginForm();
152
  }
153
 
154
  $data = ob_get_clean();
155
  return $data;
156
  }
157
 
158
+ function registerForm($params = array()){
159
+
160
+ if(!get_option('users_can_register')) return \WPDM_Messages::warning(__( "User registration is disabled" , "download-manager" ), -1);
161
+
162
+ if(!isset($params) || !is_array($params)) $params = array();
163
+
164
  ob_start();
165
  $regparams = \WPDM\libs\Crypt::Encrypt($params);
166
+ $loginurl = wpdm_login_url();
167
+ $reg_redirect = $loginurl;
168
+ if(isset($params['autologin']) && $params['autologin'] == 'true') $reg_redirect = wpdm_user_dashboard_url();
169
+ if(isset($params['redirect'])) $reg_redirect = esc_url($params['redirect']);
170
+ if(isset($_GET['redirect_to'])) $reg_redirect = esc_url($_GET['redirect_to']);
171
+ $force = uniqid();
172
+
173
+ $up = parse_url($reg_redirect);
174
+ if(isset($up['host']) && $up['host'] != $_SERVER['SERVER_NAME']) $reg_redirect = home_url('/');
175
+
176
+ $reg_redirect = esc_attr(esc_url($reg_redirect));
177
+
178
+ if(!isset($params['logo'])) $params['logo'] = get_site_icon_url();
179
+
180
+ \WPDM\Session::set('__wpdm_reg_params', $params);
181
+
182
+ $tmp_reg_info = \WPDM\Session::get('tmp_reg_info');
183
+
184
+ $__wpdm_social_login = get_option('__wpdm_social_login');
185
+ $__wpdm_social_login = is_array($__wpdm_social_login)?$__wpdm_social_login:array();
186
+
187
+ //Template
188
+ include(wpdm_tpl_path('wpdm-reg-form.php'));
189
+
190
  $data = ob_get_clean();
191
  return $data;
192
  }
193
 
194
+ function packages($params = array('items_per_page' => 10, 'title' => false, 'desc' => false, 'order_field' => 'date', 'order' => 'desc', 'paging' => false, 'toolbar' => 1, 'template' => '','cols'=>3, 'colspad'=>2, 'colsphone' => 1))
195
  {
196
 
197
  $defaults = array('items_per_page' => 10, 's' =>'', 'title' => false, 'desc' => false, 'order_field' => 'date', 'order' => 'desc', 'paging' => false, 'toolbar' => 1, 'template' => 'link-template-panel','cols'=>3, 'colspad'=>2, 'colsphone' => 1);
379
  extract($params);
380
 
381
  global $wpdb;
382
+ $ID = (int)$params['id'];
383
+
384
+ if(\WPDM\Package::isLocked($ID))
385
+ $linkURL = get_permalink($ID);
386
  else
387
+ $linkURL = home_url("/?wpdmdl=".$ID);
388
+
389
+ $extras = isset($params['extras'])?wpdm_sanitize_var($params['extras'], 'txt'):"";
390
+ $target = isset($params['target'])?"target='".wpdm_sanitize_var($params['target'], 'txt')."'":"";
391
+ $class = isset($params['class'])?"class='".wpdm_sanitize_var($params['class'], 'txt')."'":"";
392
+ $style = isset($params['style'])?"style='".wpdm_sanitize_var($params['style'], 'txt')."'":"";
393
+ $rel = isset($params['rel'])?"rel='".wpdm_sanitize_var($params['rel'], 'txt')."'":"";
394
+ $eid = isset($params['eid'])?"id='".wpdm_sanitize_var($params['eid'], 'txt')."'":"";
395
+ $linkLabel = isset($params['label']) && !empty($params['label'])?$params['label']:get_post_meta($ID, '__wpdm_link_label', true);
396
+ $linkLabel = empty($linkLabel)?get_the_title($ID):$linkLabel;
397
+ $linkLabel = wpdm_sanitize_var($linkLabel, 'kses');
398
+ return "<a {$target} {$class} {$eid} {$style} {$rel} {$extras} href='$linkURL'>$linkLabel</a>";
399
 
400
  }
401
 
402
+
403
  /**
404
  * @usage Short-code [wpdm_all_packages] to list all packages in tabular format
405
  * @param array $params
libs/class.Template.php CHANGED
@@ -13,18 +13,24 @@ class Template
13
 
14
  public static function locate($file, $tpldir = ''){
15
 
16
- if(file_exists(get_stylesheet_directory().'/download-manager/'.$file))
17
- $path = get_stylesheet_directory().'/download-manager/'.$file;
18
- else if(file_exists(get_template_directory().'/download-manager/'.$file))
19
- $path = get_template_directory().'/download-manager/'.$file;
20
- else if($tpldir !='' && file_exists($tpldir.'/'.$file))
21
- $path = $tpldir.'/'.$file;
22
- else if($tpldir !='' && file_exists(get_template_directory().'/download-manager/'.$tpldir.'/'.$file))
23
- $path = get_template_directory().'/download-manager/'.$tpldir.'/'.$file;
24
- else $path = WPDM_BASE_DIR.'tpls/'.$file;
25
-
26
- return $path;
27
 
 
 
 
 
 
 
 
28
  }
29
 
30
  function assign($var, $val){
@@ -32,7 +38,7 @@ class Template
32
  return $this;
33
  }
34
 
35
- function fetch($template, $tpldir = ''){
36
  $template = self::locate($template, $tpldir);
37
  if(is_array($this->Vars))
38
  extract($this->Vars);
@@ -41,8 +47,22 @@ class Template
41
  return ob_get_clean();
42
  }
43
 
44
- function display($template, $tpldir = ''){
45
- echo $this->fetch($template, $tpldir);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
46
  }
47
 
48
  }
13
 
14
  public static function locate($file, $tpldir = ''){
15
 
16
+ $template_dirs = array(
17
+ get_stylesheet_directory().'/download-manager/',
18
+ get_template_directory().'/download-manager/',
19
+ ''
20
+ );
21
+ if($tpldir !== '') {
22
+ $template_dirs[] = rtrim($tpldir, '/').'/';
23
+ $template_dirs[] = get_template_directory().'/download-manager/'.$tpldir.'/';
24
+ }
25
+ $template_dirs[] = WPDM_TPL_DIR;
 
26
 
27
+ $template_dirs = apply_filters("wpdm_tpl_dir", $template_dirs);
28
+
29
+ foreach ($template_dirs as $template_dir){
30
+ if(file_exists($template_dir.$file))
31
+ return $template_dir.$file;
32
+ }
33
+ return "";
34
  }
35
 
36
  function assign($var, $val){
38
  return $this;
39
  }
40
 
41
+ function fetch($template, $tpldir = '' , $fallback = ''){
42
  $template = self::locate($template, $tpldir);
43
  if(is_array($this->Vars))
44
  extract($this->Vars);
47
  return ob_get_clean();
48
  }
49
 
50
+ function execute($code){
51
+ ob_start();
52
+ if(is_array($this->Vars))
53
+ extract($this->Vars);
54
+ echo $code;
55
+ return ob_get_clean();
56
+ }
57
+
58
+ static function output($data, $vars)
59
+ {
60
+ if(strstr($data, '.php')) {
61
+ $filename = self::locate($data);
62
+ $data = file_get_contents($filename);
63
+ }
64
+ $data = str_replace(array_keys($vars), array_values($vars), $data);
65
+ return $data;
66
  }
67
 
68
  }
libs/class.UserDashboard.php CHANGED
@@ -34,14 +34,11 @@ class UserDashboard
34
  }
35
 
36
  function Dashboard($params = array()){
37
- global $wp_query;
38
 
39
  ob_start();
40
  if(!is_user_logged_in()) {
41
- if(isset($params['signup']) && $params['signup'] == 1)
42
- include \WPDM\Template::Locate('wpdm-be-member.php');
43
- else
44
- include \WPDM\Template::Locate('wpdm-login-form.php');
45
 
46
  } else {
47
 
34
  }
35
 
36
  function Dashboard($params = array()){
37
+ global $wp_query, $WPDM;
38
 
39
  ob_start();
40
  if(!is_user_logged_in()) {
41
+ echo $WPDM->shortCode->loginForm($params);
 
 
 
42
 
43
  } else {
44
 
modules/strings.php ADDED
@@ -0,0 +1,25 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ if(!defined('ABSPATH')) die();
3
+ /**
4
+ * User: shahnuralam
5
+ * Date: 8/29/17
6
+ * Time: 5:16 AM
7
+ * Since: 4.6.9
8
+ */
9
+
10
+ __( "Download Count" , "download-manager" );
11
+ __( "Version" , "download-manager" );
12
+ __( "Stock" , "download-manager" );
13
+ __( "File Size" , "download-manager" );
14
+ __( "File Type" , "download-manager" );
15
+ __( "File Count" , "download-manager" );
16
+ __( "Create Date" , "download-manager" );
17
+ __( "Last Updated" , "download-manager" );
18
+ __( "Title" , "download-manager" );
19
+ __( "Description" , "download-manager" );
20
+ __( "Package Info" , "download-manager" );
21
+ __( "Attached Files" , "download-manager" );
22
+ __( "Total Files" , "download-manager" );
23
+ __( "file(s)", "download-manager" );
24
+ __( "Buy Now", "download-manager" );
25
+ __( "Price", "download-manager" );
readme.txt CHANGED
@@ -3,7 +3,7 @@ Contributors: w3eden, codename065, shahriar0822, shimo16ab, shafayat-alam
3
  Donate link:
4
  Tags: download manager, document management, file manager, digital store, ecommerce, document management plugin, download monitor, download counter, password protection, download protection
5
  Requires at least: 3.4
6
- Tested up to: 5.2
7
  License: GPLv2 or later
8
 
9
 
@@ -58,6 +58,23 @@ Also, you may use WordPress Download Manager as a complete e-Commerce Solution f
58
  * Video file download protection, allow visitors to play but block download
59
  * Translation Ready
60
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
61
  = Complete Digital Store Solution: =
62
  Use [Premium Package – Complete Digital Store Solution](https://www.wpdownloadmanager.com/download/premium-package-wordpress-digital-store-solution/) Add-on (free) if you need to sell your digital items. The add-on has all features you will ever need to build a perfect online shop for your digital downloads:
63
 
@@ -90,6 +107,8 @@ Use [Premium Package – Complete Digital Store Solution](https://www.wpdownload
90
  * Sell individual files ( like single song from an album ) ( This Feature Requires WPDM v4+ )
91
  * and [much more...](https://www.wpdownloadmanager.com/downloads/ecommerce-add-ons/)
92
 
 
 
93
 
94
  = Google Drive =
95
  Use [Google Drive Explorer](https://www.wpdownloadmanager.com/download/google-drive-explorer/) add-on ( free ) to store your files in google drive and link with download manager, get 15 GB free storage space and save your server bandwidth
@@ -107,7 +126,6 @@ Use [Box.com Explorer](https://www.wpdownloadmanager.com/download/box-com-explor
107
  = Add-ons =
108
  Download and Install following free add-on to add additional features as per your need
109
 
110
- * [Gutenberg Blocks](https://www.wpdownloadmanager.com/download/gutenberg-blocks/) for gutenberg editor
111
  * [Advanced Tiny-Mce Button](https://www.wpdownloadmanager.com/download/advanced-tinymce-button/) for editor button to generate short-codes
112
  * [Extended Short-codes](https://www.wpdownloadmanager.com/download/wpdm-extended-short-codes/) for tree view ( [wpdm_tree] ), slider ( [wpdm_slider] ) & carousel ( [wpdm_carousel] )
113
  * [WPDM Image Button](https://www.wpdownloadmanager.com/download/wpdm-image-button/) to replace download link label with a custom designed image
@@ -121,9 +139,9 @@ Check download stats and get a push notification when someone downloads, install
121
  * [WPDM for iOS](https://www.wpdownloadmanager.com/download/wpdm-ios/) - Check download and sales stats directly from your iPhone or iPad
122
 
123
  = Free Themes =
 
124
  * [Verse - Theme For Selling Digital Products](https://www.wpdownloadmanager.com/download/verse-wordpress-theme-for-digital-shop/)
125
  * [Swift - Theme For Selling Digital Products](https://www.wpdownloadmanager.com/download/swift-wordpress-theme-for-selling-digital-products/)
126
- * [Expo - Specially Optimized for WordPress Download Manager](https://www.wpdownloadmanager.com/download/expo/)
127
  * [More Free Themes...](https://www.wpdownloadmanager.com/downloads/free-themes/)
128
 
129
  = More Themes & Add-ons =
@@ -147,17 +165,42 @@ Check download stats and get a push notification when someone downloads, install
147
  5. Settings Page
148
  6. Front-end preview for category short-code
149
  7. Password Protection
150
- 8. User Dashboard Login
151
- 9. User Dashboard
152
  10. Orders Page ( Admin )
153
  11. Order Details ( Admin )
154
  12. Invoice
155
  13. Video Player
156
  14. Shortcode Generator
157
  15. Quick Add Panel
 
 
158
 
159
  == Changelog ==
160
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
161
  = 2.9.99 =
162
  * Fixed an char encoding issue with server file browser path
163
 
3
  Donate link:
4
  Tags: download manager, document management, file manager, digital store, ecommerce, document management plugin, download monitor, download counter, password protection, download protection
5
  Requires at least: 3.4
6
+ Tested up to: 5.3
7
  License: GPLv2 or later
8
 
9
 
58
  * Video file download protection, allow visitors to play but block download
59
  * Translation Ready
60
 
61
+ = Digital Asset Manager =
62
+ * Server file manager
63
+ * Create new file and folder easily
64
+ * Move, copy, edit files
65
+ * Integrated file editor with syntax highlights
66
+ * Asset shortcode to embed a file/asset easily in a page or post
67
+ * Upload, Download and Delete operations
68
+ * Video and audio preview/play
69
+
70
+ = Digital Asset Manager ( Pro Features ) =
71
+ * File tagging
72
+ * Sharable link generator
73
+ * Bookmarking, Comments and discussions
74
+ * Front-end asset management
75
+ * Custom asset meta data
76
+ * Asset archive and version management
77
+
78
  = Complete Digital Store Solution: =
79
  Use [Premium Package – Complete Digital Store Solution](https://www.wpdownloadmanager.com/download/premium-package-wordpress-digital-store-solution/) Add-on (free) if you need to sell your digital items. The add-on has all features you will ever need to build a perfect online shop for your digital downloads:
80
 
107
  * Sell individual files ( like single song from an album ) ( This Feature Requires WPDM v4+ )
108
  * and [much more...](https://www.wpdownloadmanager.com/downloads/ecommerce-add-ons/)
109
 
110
+ = Gutenberg Blocks =
111
+ [Gutenberg Blocks](https://www.wpdownloadmanager.com/download/gutenberg-blocks/) for gutenberg editor
112
 
113
  = Google Drive =
114
  Use [Google Drive Explorer](https://www.wpdownloadmanager.com/download/google-drive-explorer/) add-on ( free ) to store your files in google drive and link with download manager, get 15 GB free storage space and save your server bandwidth
126
  = Add-ons =
127
  Download and Install following free add-on to add additional features as per your need
128
 
 
129
  * [Advanced Tiny-Mce Button](https://www.wpdownloadmanager.com/download/advanced-tinymce-button/) for editor button to generate short-codes
130
  * [Extended Short-codes](https://www.wpdownloadmanager.com/download/wpdm-extended-short-codes/) for tree view ( [wpdm_tree] ), slider ( [wpdm_slider] ) & carousel ( [wpdm_carousel] )
131
  * [WPDM Image Button](https://www.wpdownloadmanager.com/download/wpdm-image-button/) to replace download link label with a custom designed image
139
  * [WPDM for iOS](https://www.wpdownloadmanager.com/download/wpdm-ios/) - Check download and sales stats directly from your iPhone or iPad
140
 
141
  = Free Themes =
142
+ * [Attire](https://www.wpdownloadmanager.com/download/attire-allinone-wordpress-theme/) - perfect theme for any site like blog, portfolio, photography, stock image, music, video archive, software download directory, ecommerce, and it is free.
143
  * [Verse - Theme For Selling Digital Products](https://www.wpdownloadmanager.com/download/verse-wordpress-theme-for-digital-shop/)
144
  * [Swift - Theme For Selling Digital Products](https://www.wpdownloadmanager.com/download/swift-wordpress-theme-for-selling-digital-products/)
 
145
  * [More Free Themes...](https://www.wpdownloadmanager.com/downloads/free-themes/)
146
 
147
  = More Themes & Add-ons =
165
  5. Settings Page
166
  6. Front-end preview for category short-code
167
  7. Password Protection
168
+ 8. Asset Manager
169
+ 9. Preview & Edit Digital Assets
170
  10. Orders Page ( Admin )
171
  11. Order Details ( Admin )
172
  12. Invoice
173
  13. Video Player
174
  14. Shortcode Generator
175
  15. Quick Add Panel
176
+ 16. User Dashboard Login
177
+ 17. User Dashboard
178
 
179
  == Changelog ==
180
 
181
+ = 3.0.4 =
182
+ * Compatibility update for WordPress 5.3
183
+ * Fixed a CSS issue wit the UI settings
184
+
185
+ = 3.0.3 =
186
+ * Fixed a translation issue with the template files
187
+ * Fixed am issue with oEmbed function
188
+ * Fixed an issue with direct link shortcode parameter
189
+ * Fixed an issue with email template save function
190
+
191
+ = 3.0.2 =
192
+ * Improved asset manager root directory option
193
+ * Improved stats export options
194
+ * Fixed file sorting issue with all downloads table
195
+
196
+ = 3.0.1 =
197
+ * Fixed an issue with file browser root dir in windows server
198
+ * Adjusted asset manager access to site admins
199
+
200
+ = 3.0.0 =
201
+ * Asset awesome new option for asset management
202
+ * Fixed an issue with the terms lock
203
+
204
  = 2.9.99 =
205
  * Fixed an char encoding issue with server file browser path
206
 
tpls/already-logged-in.php CHANGED
@@ -6,19 +6,24 @@
6
  */
7
  if (!defined('ABSPATH')) die();
8
  ?>
9
- <div class="panel panel-default">
10
- <div class="panel-body text-center">
11
- <img style="width: 128px;border-radius: 500px;margin: 20px auto" src="<?php echo get_avatar_url($current_user->ID, 128); ?>" />
12
- <div><?php _e("Welcome", "download-manager"); ?></div>
13
- <h3><?php echo $current_user->display_name; ?></h3>
14
- <div class="text-muted"><?php _e("You are already logged in.", "download-manager"); ?></div>
15
- </div>
16
- <div class="panel-footer text-center">
17
 
18
- <a class="color-primary" href='<?php echo get_permalink(get_option('__wpdm_user_dashboard')); ?>'><i class="far fa-user-circle"></i> <?php _e("Dashboard", "download-manager") ?></a> &nbsp;
19
- <a class="color-info" href='<?php echo get_permalink(get_option('__wpdm_user_dashboard')); ?>'><i class="fas fa-history"></i> <?php _e("Download History", "download-manager") ?></a> &nbsp;
20
- <a class="color-danger" href='<?php echo wpdm_logout_url(); ?>'><i class="fas fa-door-open"></i> <?php _e( "Logout" , "download-manager" ); ?></a>
 
 
 
 
 
 
 
 
 
 
 
21
 
 
 
22
  </div>
23
  </div>
24
 
6
  */
7
  if (!defined('ABSPATH')) die();
8
  ?>
 
 
 
 
 
 
 
 
9
 
10
+ <div class="w3eden">
11
+ <div id="wpdmlogin">
12
+ <div class="panel panel-default">
13
+ <div class="panel-body text-center">
14
+ <img style="width: 128px;border-radius: 500px;margin: 20px auto" src="<?php echo get_avatar_url($current_user->ID, 128); ?>" />
15
+ <div><?php _e("Welcome", "download-manager"); ?></div>
16
+ <h3><?php echo $current_user->display_name; ?></h3>
17
+ <div class="text-muted"><?php _e("You are already logged in.", "download-manager"); ?></div>
18
+ </div>
19
+ <div class="panel-footer text-center">
20
+
21
+ <a class="color-primary" href='<?php echo get_permalink(get_option('__wpdm_user_dashboard')); ?>'><i class="far fa-user-circle"></i> <?php _e("Dashboard", "download-manager") ?></a> &nbsp;
22
+ <a class="color-info" href='<?php echo get_permalink(get_option('__wpdm_user_dashboard')); ?>'><i class="fas fa-history"></i> <?php _e("Download History", "download-manager") ?></a> &nbsp;
23
+ <a class="color-danger" href='<?php echo wpdm_logout_url(); ?>'><i class="fas fa-door-open"></i> <?php _e( "Logout" , "download-manager" ); ?></a>
24
 
25
+ </div>
26
+ </div>
27
  </div>
28
  </div>
29
 
tpls/asset-manager-ui.php ADDED
@@ -0,0 +1,1461 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ if(!defined('ABSPATH')) die('Error!');
3
+ global $current_user;
4
+ $root = \WPDM\AssetManager::root();
5
+ //$items = file_exists($root)?glob($root.'*', GLOB_ONLYDIR):array();
6
+ if(is_admin()){
7
+ ?>
8
+
9
+ <div style="margin-top: 30px;width: calc(100% - 20px)">
10
+
11
+ <?php
12
+ }
13
+ ?>
14
+ <style>
15
+ @import url("https://fonts.googleapis.com/css?family=Overpass+Mono&subset=latin");
16
+ #wpdm-dashboard-content{
17
+ overflow: visible;
18
+ }
19
+ #rename, #upfile, #newfol{
20
+ z-index: 999999999999;
21
+ padding-top: 150px;
22
+ overflow: hidden;
23
+ }
24
+ #upfile{
25
+ width: 350px;
26
+ }
27
+ #upfile .drag-drop .drag-drop-inside{
28
+ margin: 45px auto 0;
29
+ width: 300px;
30
+ }
31
+ #upfile .panel-heading{
32
+ box-shadow: none !important;
33
+ background: #f5f5f5;
34
+ }
35
+ #filelist .panel-heading{
36
+ padding-right: 30px;
37
+ }
38
+ .w3eden #upfile .progress-bar-info {
39
+ background-color: var(--color-purple);
40
+ }
41
+ #breadcrumb,
42
+ .wpdm-file-locator,
43
+ .wpdm-dir-locator a.explore-dir{
44
+ font-family: 'Overpass Mono', sans-serif !important;
45
+ }
46
+ .well-file{
47
+ font-family: Montserrat,sans-serif;
48
+ font-size: 12px;
49
+ line-height: 28px;
50
+ }
51
+ .progress:after{
52
+ position: absolute;
53
+ color: rgba(0,0,0,0.3);
54
+ width: 100%;
55
+ text-align: center;
56
+ left: 0;
57
+ font-family: Montserrat,sans-serif;
58
+ font-size: 12px;
59
+ text-transform: uppercase;
60
+ }
61
+ .panel-file{
62
+ font-size: 12px;
63
+ }
64
+ .panel-file .media-body {
65
+ line-height: normal;
66
+ display: inline-block;
67
+ }
68
+ .item_label{
69
+ margin-top: 5px;
70
+ font-size: 9pt;
71
+ line-height: 1;
72
+ display: block;
73
+ font-weight: 600;
74
+ font-family: var(--wpdm-font);
75
+ letter-spacing: 0.5px;
76
+ color: #5e6a6d;
77
+ }
78
+
79
+ .w3eden .well .btn-sm{
80
+ padding: 8px 16px;
81
+ }
82
+ .panel-file .panel-footer{
83
+ text-align: center;
84
+ }
85
+ .modal *{
86
+ font-size: 10pt;
87
+ }
88
+ .w3eden .modal-header{
89
+ font-size: 10pt;
90
+ line-height: normal;
91
+ font-family: var(--wpdm-font);
92
+ background: #f5f5f5;
93
+ border-radius: 10px 10px 0 0 !important;
94
+ }
95
+ .w3eden .modal-footer{
96
+ border: 0 !important;
97
+ border-radius: 0 0 10px 10px !important;
98
+ padding-top: 0;
99
+ }
100
+ .w3eden .modal-content{
101
+ border-radius: 10px !important;
102
+ box-shadow: 0 0 25px rgba(0,0, 0, 0.2);
103
+ }
104
+ #drag-drop-area{
105
+ border: 0.2rem dashed #28c83599 !important;
106
+ border-radius: 5px;
107
+ font-family: "Overpass Mono", monospace;
108
+ color: rgba(0,0,0,0.2);
109
+ font-size: 14pt;
110
+ }
111
+ #drag-drop-area .btn{
112
+ font-family: "Overpass Mono", monospace;
113
+ border-radius: 500px;
114
+ }
115
+
116
+ #breadcrumb{
117
+ margin: 10px 0 10px;
118
+ font-size: 9pt;
119
+ color: #888888;
120
+ }
121
+
122
+ .w3eden .panel.wpdm-file-manager-panel{
123
+ border: 1px solid #e7eaea !important;
124
+ }
125
+ .w3eden .panel.wpdm-file-manager-panel .panel-heading{
126
+ /*background: linear-gradient(to bottom, rgb(253, 255, 255) 0%,rgb(240, 243, 243) 100%);*/
127
+ background: rgba(240, 243, 243, 0.3);
128
+ border-top: 1px solid #e7eaea !important;
129
+ border-bottom: 1px solid #e7eaea !important;
130
+ /*box-shadow: 2px 0 5px rgba(18, 150, 201, 0.09);*/
131
+
132
+ }
133
+ .panel-heading,
134
+ #breadcrumb a{
135
+ color: #aaaaaa;
136
+ text-transform: unset !important;
137
+ font-weight: 400;
138
+ }
139
+ #breadcrumb .fa{
140
+ color: #8896aa;
141
+ display: inline-block;
142
+ margin-top: -2px !important;
143
+ vertical-align: middle;
144
+ margin-right: 5px;
145
+ margin-left: 5px;
146
+ }
147
+ .panel-file .panel-body{
148
+ height: 130px;
149
+ text-align: center;
150
+ }
151
+ #scandir .file-row,
152
+ #scandir .dir-row{
153
+ padding: 10px 10px 10px 0;
154
+ border-bottom: 1px solid #eeeeee;
155
+ -webkit-transition: all ease-in-out 300ms;
156
+ -moz-transition: all ease-in-out 300ms;
157
+ -ms-transition: all ease-in-out 300ms;
158
+ -o-transition: all ease-in-out 300ms;
159
+ transition: all ease-in-out 300ms;
160
+ }
161
+ #scandir .file-row:hover, #scandir .dir-row:hover {
162
+ background: rgba(0,0,0,0.02);
163
+ -webkit-transition: all ease-in-out 300ms;
164
+ -moz-transition: all ease-in-out 300ms;
165
+ -ms-transition: all ease-in-out 300ms;
166
+ -o-transition: all ease-in-out 300ms;
167
+ transition: all ease-in-out 300ms;
168
+
169
+ }
170
+ img.icon{
171
+ width: 38px;
172
+ margin-right: 5px;
173
+ padding: 0 !important;
174
+ }
175
+ #scandir img{
176
+ box-shadow: none;
177
+ margin-bottom: 0;
178
+ }
179
+ .action-btns-ctrl{
180
+ line-height: 40px;
181
+ width: 32px;
182
+ text-align: center;
183
+ outline: none !important;
184
+ margin-right: 5px;
185
+ }
186
+ .action-btns {
187
+ opacity: 0 !important;
188
+ position: absolute !important;
189
+ z-index: -99;
190
+ right: 50px;
191
+ white-space: nowrap;
192
+ -webkit-transition: all ease-in-out 400ms;
193
+ -moz-transition: all ease-in-out 400ms;
194
+ -ms-transition: all ease-in-out 400ms;
195
+ -o-transition: all ease-in-out 400ms;
196
+ transition: all ease-in-out 400ms;
197
+ line-height: 40px;
198
+ }
199
+ .action-btns.action-btns-show{
200
+ opacity: 1 !important;
201
+ z-index: 999;
202
+ }
203
+
204
+ .action-btns .btn.btn-xs {
205
+ width: 32px;
206
+ height: 28px;
207
+ line-height: 26px;
208
+ padding: 0;
209
+ font-size: 8pt;
210
+ text-align: center;
211
+ border-radius: 5px;
212
+ }
213
+
214
+ img.fm-folder{
215
+ box-shadow: none;
216
+ width: 16px;
217
+ display: inline-block;
218
+ vertical-align: middle;
219
+ }
220
+ .wpdmfm-folder-tree{
221
+ padding: 0;
222
+ margin: 0;
223
+ }
224
+
225
+ .wpdmfm-folder-tree li{
226
+ list-style: none;
227
+ padding: 0;
228
+ margin: 0;
229
+ font-size: 12px;
230
+ color: #757f8d;
231
+ white-space: nowrap;
232
+ line-height: 20px;
233
+ }
234
+ .wpdmfm-folder-tree li > .handle{
235
+ background: url("<?php echo WPDM_BASE_URL.'assets/images/folder.svg' ?>") left center no-repeat;
236
+ background-size: 16px;
237
+ display: inline-block;
238
+ width: 20px;
239
+ height: 20px;
240
+ float: left;
241
+ cursor: pointer;
242
+ }
243
+ .wpdmfm-folder-tree ul{
244
+ margin-left: 18px !important;
245
+ padding-left: 0;
246
+ }
247
+ .wpdmfm-folder-tree li a:visited,
248
+ .wpdmfm-folder-tree li a:hover,
249
+ .wpdmfm-folder-tree li a{
250
+ color: #657989;
251
+ text-decoration: none;
252
+ font-family: var(--wpdm-font);
253
+ cursor: pointer;
254
+ }
255
+ .wpdmfm-folder-tree li a:hover{
256
+ color: #6075c8;
257
+ }
258
+ .wpdmfm-folder-tree li.expanded > .handle{
259
+ background: url("<?php echo WPDM_BASE_URL.'assets/images/folder-o.svg' ?>") left 2px no-repeat;
260
+ background-size: 16px;
261
+ }
262
+ .wpdmfm-folder-tree li.busy > .handle{
263
+ background: url("<?php echo WPDM_BASE_URL.'assets/images/spinner-bars.svg' ?>") left 2px no-repeat;
264
+ background-size: 16px;
265
+ }
266
+ .wpdm-dir-locator,
267
+ .wpdm-file-locator{
268
+ padding: 15px !important;
269
+ }
270
+ .wpdm-dir-locator{
271
+ background: rgba(240, 243, 243, 0.2);
272
+ border-right: 1px solid #e7eaea;
273
+ }
274
+
275
+ [data-simplebar]{
276
+ height: 500px;
277
+ overflow: auto;
278
+ min-width: 100%;
279
+ }
280
+ .wpdm-dir-locator .simplebar-content{
281
+ overflow-x: auto !important;
282
+ }
283
+ .wpdm-file-locator [data-simplebar]{
284
+ overflow-x: hidden !important;
285
+ }
286
+
287
+ #wpbody-content{
288
+ margin-bottom: 0 !important;
289
+ padding-bottom: 0 !important;
290
+ }
291
+
292
+ #mainfmc{
293
+ overflow: hidden;
294
+ }
295
+ .w3eden #mainfmc .btn{
296
+ text-transform: capitalize !important;
297
+ font-family: var(--wpdm-font) !important;
298
+ font-weight: 400 !important;
299
+ }
300
+
301
+ .w3eden .btn.btn-simple:not(:hover){
302
+ color: #7886a2;
303
+ border-color: #c9cfdb;
304
+ }
305
+
306
+ .w3eden .btn.btn-simple:hover { background-color: rgba(201, 207, 219, 0.2) !important; }
307
+ .w3eden .btn.btn-simple:hover:not(.btn-danger):not(.btn-info):not(.btn-primary):not(.btn-success){ color: #3c5382; }
308
+ .w3eden .btn.btn-simple.btn-success:hover { background-color: rgba(var(--color-success-rgb), 0.1) !important; }
309
+ .w3eden .btn.btn-simple.btn-primary:hover { background-color: rgba(var(--color-primary-rgb), 0.1) !important; }
310
+ .w3eden .btn.btn-simple.btn-danger:hover { background-color: rgba(var(--color-danger-rgb), 0.1) !important; }
311
+ .w3eden .btn.btn-simple.btn-info:hover { background-color: rgba(var(--color-info-rgb), 0.1) !important; }
312
+
313
+ .w3eden .btn.btn-simple:active {
314
+ box-shadow: inset 0 0 4px rgba(0, 0, 0, 0.13);
315
+ }
316
+
317
+ #wpdmeditor{
318
+ position: absolute;
319
+ left: 0;
320
+ top: 0;
321
+ border: 0;
322
+ width: 100%;
323
+ height: 100%;
324
+ z-index: 9;
325
+ box-shadow: none;
326
+ border-radius: 0;
327
+ }
328
+ #wpdmeditor .panel-heading{
329
+ border-top: 0 !important;
330
+ }
331
+ #wpdmeditor .panel-heading,
332
+ #wpdmeditor .panel-footer{
333
+ border-radius: 0;
334
+ }
335
+ #wpdmeditor #filecontent_alt,
336
+ #wpdmeditor #filecontent{
337
+ height: calc(100% - 94px);
338
+ width: 100%;
339
+ padding: 30px;
340
+ overflow: auto;
341
+ font-family: "Overpass Mono", monospace;
342
+ border: 0;
343
+ background: transparent;
344
+ }
345
+ .CodeMirror.cm-s-default.CodeMirror-wrap{
346
+ height: calc(100% - 94px);
347
+ }
348
+ #wpdmeditor #filecontent_alt{
349
+ text-align: center;
350
+ }
351
+ #wpdmeditor #filecontent_alt img{
352
+ max-width: 100%;
353
+ }
354
+ #filewin{
355
+ -webkit-transition: all ease-in-out 400ms;
356
+ -moz-transition: all ease-in-out 400ms;
357
+ -ms-transition: all ease-in-out 400ms;
358
+ -o-transition: all ease-in-out 400ms;
359
+ transition: all ease-in-out 400ms;
360
+ }
361
+
362
+ .w3eden #__file_settings_tabs.nav.nav-tabs > li > a{
363
+ box-shadow: none !important;
364
+ border: 1px solid #e8e8e8;
365
+ padding: 8px 16px;
366
+ font-size: 10px;
367
+ font-weight: 400 !important;
368
+ }
369
+ .w3eden #__file_settings_tabs.nav.nav-tabs > li.active > a{
370
+ border-bottom: 1px solid #ffffff;
371
+ }
372
+ .w3eden #__file_settings_tabs.nav.nav-tabs > li:not(.active) > a{
373
+ background: #fafafa;
374
+ }
375
+
376
+ .w3eden #__asset_settings .form-control.input-lg{
377
+ border: 0;
378
+ background: #ffffff; text-align: center; font-family: "Overpass Mono", monospace;font-size: 11pt !important;box-shadow: none !important;
379
+ }
380
+ .w3eden #__asset_settings .panel-default{
381
+ border: 1px solid #e6e6e6;
382
+ }
383
+ .w3eden #__asset_settings .panel-default .panel-heading {
384
+ border-bottom: 1px solid #e6e6e6;
385
+ background: #fafafa;
386
+ }
387
+ .w3eden #__asset_settings .panel-default .panel-footer {
388
+ border-top: 1px solid #e6e6e6;
389
+ background: #fafafa;
390
+ }
391
+
392
+ .allow-roles label,
393
+ .w3eden #__asset_settings .tab-content *,
394
+ .w3eden #__asset_settings .tab-content{
395
+ font-size: 11px;
396
+ }
397
+ .allow-roles label{
398
+ font-weight: 400;
399
+ line-height: 16px;
400
+ }
401
+ .allow-roles label input{
402
+ margin: 0 5px !important;
403
+ }
404
+
405
+ #newcomment{
406
+ min-height: 50px;
407
+ font-size: 12px !important;
408
+ }
409
+
410
+ #__asset_comments .asset-comment{
411
+ border: 1px solid #e8e8e8;
412
+ margin: 5px 0;
413
+ border-radius: 3px;
414
+ padding: 15px;
415
+ }
416
+ #__asset_comments .asset-comment .avatar{
417
+ width: 32px;
418
+ height: auto;
419
+ border-radius: 500px;
420
+ }
421
+
422
+ .w3eden .modal-header .close.pull-right {
423
+ height: 16px;
424
+ line-height: 16px;
425
+ }
426
+
427
+ #__asset_links .asset-link{
428
+ margin: 5px 0;
429
+ border: 1px solid #e8e8e8;
430
+ border-radius: 3px !important;
431
+ }
432
+ #__asset_links .asset-link .form-control{
433
+ background: #ffffff;
434
+ border: 0 !important;
435
+ box-shadow: none !important;
436
+ }
437
+ #__asset_links .asset-link .input-group-addon{
438
+ border: 0 !important;
439
+ background: #ffffff;
440
+ padding-right: 0;
441
+ color: var(--color-info);
442
+ }
443
+ #__asset_links .asset-link .btn{
444
+ border: 0 !important;
445
+ background: #ffffff;
446
+ color: var(--color-success);
447
+ border-left: 1px solid #e8e8e8 !important;
448
+ z-index: 2;
449
+ }
450
+ #__asset_links .asset-link .btn .fa-trash.color-danger{
451
+ color: var(--color-danger) !important;
452
+ }
453
+
454
+ .w3eden #__asset_links .asset-link.input-group-lg > .form-control, .w3eden #__asset_links .asset-link.input-group-lg > .input-group-addon, .w3eden #__asset_links .asset-link.input-group-lg > .input-group-btn > .btn {
455
+ height: 36px;
456
+ padding: 8px 12px;
457
+ }
458
+
459
+ .wp-video{ margin: 0 auto !important; width: 100% !important; }
460
+ .wp-video-shortcode,
461
+ .wp-audio-shortcode {
462
+ margin: 15px 15px 10px 15px;
463
+ width: calc(100% - 30px) !important;
464
+ }
465
+ .wp-video-shortcode{
466
+ height: auto !important;
467
+ }
468
+
469
+ #filelist .panel.upcompleted .panel-heading::before {
470
+ content: "\f560";
471
+ position: absolute;
472
+ color: #41c441;
473
+ right: 10px;
474
+ font-family: "Font Awesome 5 Free";
475
+ transition: all ease-in-out 400ms;
476
+
477
+ }
478
+ #filelist .panel.upfailed .panel-heading::before {
479
+ content: "\f071";
480
+ position: absolute;
481
+ color: var(--color-red);
482
+ right: 10px;
483
+ font-family: "Font Awesome 5 Free";
484
+ transition: all ease-in-out 400ms;
485
+
486
+ }
487
+
488
+
489
+ </style>
490
+
491
+ <div class="w3eden" id="mainfmarea">
492
+ <?php do_action("wpdm_frontend_filemanager_top", ""); ?>
493
+ <div id="loadingfm" class="blockui" style="position: fixed;width: 100%;height: 100%;z-index: 99"></div>
494
+ <div id="mainfmc" class="panel panel-default wpdm-file-manager-panel" style="display: none;">
495
+ <div class="panel-body">
496
+ <div class="media well-sm well-file" style="margin: 0;padding: 0">
497
+ <div class="pull-right">
498
+ <button class="btn btn-primary btn-simple btn-sm ttip" title="Reload" id="reload"><i class="fa fa-sync"></i></button>
499
+ <div class="btn-group">
500
+ <button class="btn btn-simple btn-sm" data-toggle="modal" data-target="#newfol"><i class="fa fa-folder-open"></i> <?php echo __( "New Folder", "download-manager" ) ?></button>
501
+ <button class="btn btn-simple btn-sm" data-toggle="modal" data-target="#newfile"><i class="far fa-file"></i> New File</button>
502
+ <button class="btn btn-simple btn-sm" id="btn-upload-file" ><i class="fa fa-cloud-upload-alt"></i> <?php echo __( "Upload File", "download-manager" ) ?></button>
503
+ </div>
504
+ <button class="btn btn-info btn-simple btn-sm ttip" id="btn-paste" disabled="disabled" title="Paste"><i class="fa fa-clipboard"></i></button>
505
+ <button class="btn btn-simple btn-sm ttip" title="Full Screen" onclick="openFullscreen('mainfmarea');"><i class="fa fa-expand-arrows-alt"></i></button>
506
+ </div>
507
+ <h3 style="display: inline-block;font-size: 12pt;letter-spacing: 0.5px;font-weight: 400;font-family: var(--wpdm-font)">
508
+ <img src="<?php echo WPDM_BASE_URL ?>assets/images/file-cog.svg" style="height: 20px" /> <?php echo __( "Digital Asset Manager", "download-manager" ) ?>
509
+ </h3>
510
+ <?php if(!current_user_can('manage_options')){ ?>
511
+ <div class="media-body">
512
+ <div class="progress text-center" style="margin: 2px 0 0 5px;height: 27px;line-height: 27px;border-radius;border-radius: 2px;font-family: 'Overpass Mono', sans-serif !important;">
513
+ Used: <span id="disklimit"><i class="fa fa-sun fa-spin"></i></span> | Limit: <?php echo wpdm_user_space_limit(); ?> MB
514
+ <div title="15% Used" class="progress-bar progress-bar-success progress-bar-striped" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100" style="width:0%;line-height: 31px;font-size: 13px;overflow: visible">
515
+ </div>
516
+ </div>
517
+ </div>
518
+ <?php } ?>
519
+ </div>
520
+ </div>
521
+ <div class="panel-heading" style="border-radius: 0;border-top: 1px solid #dddddd">
522
+ <div id="ldn" style="float:right;font-size: 9pt;margin-top: 10px;display: none" class="text-danger"><i class="fa fa-sun fa-spin"></i> Loading...</div>
523
+ <div id="breadcrumb" style="margin: 0"></div>
524
+ </div>
525
+ <div class="panel-body-c" id="wpdmfm_explorer">
526
+
527
+ <div class="row" style="margin: 0">
528
+ <?php do_action("wpdm_frontend_filemanager_after_breadcrumb", ""); ?>
529
+ <div class="col-md-3 wpdm-dir-locator">
530
+ <div data-simplebar>
531
+ <ul class="wpdmfm-folder-tree" id="wpdmfm-folder-tree">
532
+ <li data-path="" id="<?php echo md5('home'); ?>" class="expand-dir"><i class="fa fa-hdd color-purple"></i> <a class="explore-dir" href="#" data-path=""> Home</a></li>
533
+ <?php
534
+ //wpdmprecho($items);
535
+ /*
536
+ foreach ($items as $item){
537
+ $cpath = str_replace($root, "", $item);
538
+ ?>
539
+ <li data-path="<?php echo \WPDM\libs\Crypt::encrypt($cpath); ?>" id="<?php echo md5($cpath); ?>" class="expand-dir"><span class="handle"></span><a class="explore-dir" href="#" data-path="<?php echo \WPDM\libs\Crypt::encrypt($cpath); ?>"><?php echo esc_attr(basename($item)); ?></a></li>
540
+ <?php } */ ?>
541
+ </ul>
542
+ </div>
543
+ </div>
544
+ <div class="col-md-9 wpdm-file-locator" id="filewin">
545
+ <div id="wpdmeditor" class="panel panel-default blockui" style="display: none">
546
+ <div class="panel-heading"><div class="pull-right"><a id="close-editor" href="#"><i class="fa fa-times-circle text-muted"></i></a></div><span id="wpdmefn"></span></div>
547
+ <textarea id="filecontent"></textarea>
548
+ <div id="filecontent_alt" style="display: none"></div>
549
+ <div class="panel-footer text-right">
550
+ <button type="button" id="savefile" class="btn btn-primary"><i class="fa fa-save"></i> <?php echo __( "Save Changes", "download-manager" ) ?></button>
551
+ </div>
552
+ </div>
553
+ <div data-simplebar>
554
+ <div id="scandir">
555
+ </div>
556
+ </div>
557
+ </div>
558
+ <div class="col-md-3" id="cogwin" style="display: none;">
559
+ <div class="panel panel-default blockui" style="left:0;width: 100%;height: 900px;border: 0;border-left: 1px solid #eee;border-radius: 0;position: absolute;">
560
+ <div class="panel-heading" style="border-radius: 0;border-top: 0 !important;">
561
+ <a href="#" class="pull-right" id="close-settings"><i class="fas fa-times-circle text-muted"></i></a>
562
+ Asset Settings
563
+ </div>
564
+ <div class="panel-body" id="__asset_settings">
565
+ <div class="thumbnail text-center" v-html="asset.preview"></div>
566
+ <div class="form-group">
567
+ <div class="media" style="border:1px solid #e8e8e8;border-radius: 3px;padding: 10px;">
568
+ <div class="pull-right">
569
+ <button class="btn btn-xs btn-secondary btn-rename" type="button" title="Rename" data-toggle="modal" data-target="#rename"><i class="fas fa-i-cursor"></i> Rename</button>
570
+ </div>
571
+ <div class="media-body">
572
+ &nbsp;{{ asset.name }}
573
+ </div>
574
+ </div>
575
+
576
+ <div class="modal fade bs-example-modal-sm" tabindex="-1" role="dialog" id="rename">
577
+ <div class="modal-dialog modal-sm" role="document">
578
+ <div class="modal-content">
579
+ <div class="modal-header">
580
+ <button type="button" class="close pull-right" data-dismiss="modal" aria-label="Close"><span aria-hidden="true"><i class="fa fa-times-circle"></i></span></button>
581
+ <strong class="modal-title" id="myModalLabel">Rename</strong>
582
+ </div>
583
+ <div id="upload" class="modal-body">
584
+ <input type="text" v-bind:value="asset.name" placeholder="New Name" id="newname" class="form-control input-lg" style="margin: 0px;border: 1px dashed #d4d4d4;">
585
+ </div>
586
+ <div class="modal-footer text-right">
587
+ <button type="button" id="renamenow" class="btn btn-info" :data-assetid="asset.ID" :data-oldname="asset.name" :data-path="asset.path">Rename</button>
588
+ </div>
589
+ </div>
590
+ </div>
591
+ </div>
592
+
593
+ </div>
594
+
595
+ <div>
596
+
597
+ <!-- Nav tabs -->
598
+ <ul class="nav nav-tabs" id="__file_settings_tabs" role="tablist" style="margin-left: -15px;padding-left: 15px;margin-right: -15px;border-bottom: 1px solid #e8e8e8;">
599
+ <!-- li role="presentation" class="active"><a href="#activity" aria-controls="activity" role="tab" data-toggle="tab">Activity</a></li -->
600
+ <li role="presentation" class="active"><a href="#share" aria-controls="share" role="tab" data-toggle="tab">Share</a></li>
601
+ <li role="presentation"><a href="#comments" aria-controls="comments" role="tab" data-toggle="tab">Comments</a></li>
602
+ </ul>
603
+
604
+ <!-- Tab panes -->
605
+ <div class="tab-content">
606
+ <!-- div role="tabpanel" class="tab-pane" id="activity">...</div -->
607
+ <div role="tabpanel" class="tab-pane active" id="share">
608
+ <div class="panel panel-default" style="margin-top: 15px;margin-bottom: 0;" v-if="asset.type === 'file'">
609
+ <div class="input-group" style="border: 0 !important;">
610
+ <input type="text" readonly="readonly" id="sharecode" class="form-control input-lg" v-bind:value="asset.sharecode" />
611
+ <div onclick="jQuery('#sharecode').select();document.execCommand('copy');" class="input-group-addon ttip" title="<?php echo __( "Copy Shortcode", "download-manager" ) ?>" style="border: 0 !important;background: #ffffff;cursor: pointer;"><i class="fa fa-copy color-purple"></i></div>
612
+ </div>
613
+ <div class="panel-footer text-center">
614
+ Use the shortcode to embed this asset on any page or post
615
+ </div>
616
+ </div>
617
+
618
+ <img src="<?php echo WPDM_BASE_URL; ?>assets/images/share-links.png" align="Share Links" style="max-width: 100%;margin-top: 10px;opacity: 0.2" />
619
+
620
+
621
+
622
+ </div>
623
+ <div role="tabpanel" class="tab-pane" id="comments">
624
+
625
+ <img src="<?php echo WPDM_BASE_URL; ?>assets/images/asset-comments.png" align="Comments" style="max-width: 100%;margin-top: 15px;opacity: 0.5" />
626
+
627
+ </div>
628
+ </div>
629
+
630
+ </div>
631
+ </div>
632
+ </div>
633
+ </div>
634
+ <?php do_action("wpdm_frontend_filemanager_bottom", ""); ?>
635
+ </div>
636
+
637
+ </div>
638
+ </div>
639
+
640
+
641
+
642
+ <div id="dirTPL" style="display: none">
643
+ <div class="dir-row">
644
+ <div class="row panel-file panel-folder">
645
+
646
+ <div class="col-md-8">
647
+ <div class="media-folder media" data-id="{{dirid}}" data-path="{{path}}" style="cursor: pointer">
648
+ <img class="icon pull-left" src="<?php echo plugins_url('download-manager/assets/file-type-icons/folder.png'); ?>" />
649
+ <div class="dir-info"><div class="item_label" title="{{item}}">{{item_label}}</div><small class="color-purple">{{note}}</small></div>
650
+ </div>
651
+ </div>
652
+ <div class="col-md-4 text-right">
653
+ <div class="action-btns" id="action-btns-{{id}}">
654
+ <button class="btn btn-xs btn-simple btn-primary btn-settings" type="button" title="Settings" data-oldname="{{item}}" data-path="{{path}}"><i class="far fa-sun"></i></button>
655
+ <button class="btn btn-xs btn-info btn-simple" data-item="{{item}}" title="Cut" type="button"><i class="fa fa-cut"></i></button>
656
+ <button class="btn btn-xs btn-primary btn-simple btn-copy" data-item="{{item}}" title="Copy" type="button"><i class="fa fa-copy"></i></button>
657
+ <button class="btn btn-xs btn-danger btn-simple btn-delete" type="button" title="Delete" data-path="{{path}}"><i class="fas fa-trash"></i></button>
658
+ </div>
659
+ <a href="#" class="text-muted pull-right action-btns-ctrl" data-target="#action-btns-{{id}}"><i class="fas fa-ellipsis-v"></i></a>
660
+ </div>
661
+
662
+ </div>
663
+ </div>
664
+ </div>
665
+
666
+ <div id="fileTPL" style="display: none">
667
+
668
+ <div class="file-row">
669
+ <div class="row panel-file file-tpl">
670
+ <div class="col-md-8 text-left btn-open-file c-pointer" data-filetype="{{contenttype}}" data-path="{{path}}">
671
+
672
+ <div class="file-info media">
673
+ <img class="icon pull-left" src="{{icon}}" />
674
+ <div class="dir-info"><div class="item_label" title="{{item}}">{{item_label}}</div><small class="color-purple">{{note}}</small></div>
675
+ </div>
676
+ </div>
677
+ <div class="col-md-4 text-right">
678
+ <div class="action-btns" id="action-btns-{{id}}">
679
+ <button class="btn btn-xs btn-simple btn-primary btn-settings" type="button" title="Settings" data-oldname="{{item}}" data-path="{{path}}"><i class="far fa-sun"></i></button>
680
+ <button class="btn btn-xs btn-simple btn-cut" data-item="{{item}}" title="Cut" type="button"><i class="fa fa-cut"></i></button>
681
+ <button class="btn btn-xs btn-simple btn-copy" data-item="{{item}}" title="Copy" type="button"><i class="fa fa-copy"></i></button>
682
+ <a class="btn btn-xs btn-simple btn-download" type="button" title="Download" href="<?php echo home_url('/?wpdmfmdl={{path}}') ?>"><i class="fas fa-arrow-down"></i></a>
683
+ <button class="btn btn-xs btn-simple btn-danger btn-delete" title="Delete" type="button" data-path="{{path}}"><i class="fas fa-trash"></i></button>
684
+ </div>
685
+ <a href="#" class="text-muted pull-right action-btns-ctrl" data-target="#action-btns-{{id}}"><i class="fas fa-ellipsis-v"></i></a>
686
+ </div>
687
+ </div>
688
+ </div>
689
+
690
+ </div>
691
+
692
+ <div class="modal fade bs-example-modal-sm" tabindex="-1" role="dialog" id="__upfile">
693
+ <div class="modal-dialog modal-sm" role="document">
694
+ <div class="modal-content">
695
+
696
+
697
+
698
+ </div>
699
+ </div>
700
+ </div>
701
+
702
+ <div id="upfile" style="position: fixed;z-index: 999999;bottom: 0px;right: 40px;display: none">
703
+ <div class="panel panel-default">
704
+ <div class="panel-heading">
705
+ <div class="pull-right c-pointer" onclick="jQuery('#upfile').slideUp();"><i class="far fa-window-close color-red"></i></div>
706
+ <?php echo __( "Upload File", "download-manager" ) ?>
707
+ </div>
708
+ <div class="panel-body">
709
+ <div id="upload" class="modal-body">
710
+ <div id="plupload-upload-ui" class="hide-if-no-js">
711
+ <div id="drag-drop-area">
712
+ <div class="drag-drop-inside">
713
+ <p class="drag-drop-info"><?php _e('Drop files here'); ?></p>
714
+ <p><?php _ex('or', 'Uploader: Drop files here - or - Select Files'); ?></p>
715
+ <p class="drag-drop-buttons"><button id="plupload-browse-button" type="button" class="btn btn-success"> &mdash; <?php esc_attr_e('Select Files'); ?> &mdash; </button></p>
716
+ </div>
717
+ </div>
718
+ </div>
719
+
720
+ <?php
721
+ $slimit = get_option('__wpdm_max_upload_size',0);
722
+ if($slimit>0)
723
+ $slimit = wp_convert_hr_to_bytes($slimit.'M');
724
+ else
725
+ $slimit = wp_max_upload_size();
726
+
727
+ $plupload_init = array(
728
+ 'runtimes' => 'html5,silverlight,flash,html4',
729
+ 'browse_button' => 'plupload-browse-button',
730
+ 'container' => 'plupload-upload-ui',
731
+ 'drop_element' => 'drag-drop-area',
732
+ 'file_data_name' => (current_user_can('manage_options')?'package_file':'attach_file'),
733
+ 'multiple_queues' => true,
734
+ 'max_file_size' => $slimit.'b',
735
+ 'url' => admin_url('admin-ajax.php'),
736
+ 'flash_swf_url' => includes_url('js/plupload/plupload.flash.swf'),
737
+ 'silverlight_xap_url' => includes_url('js/plupload/plupload.silverlight.xap'),
738
+ 'filters' => array(array('title' => __('Allowed Files'), 'extensions' => get_option('__wpdm_allowed_file_types','*'))),
739
+ 'multipart' => true,
740
+ 'urlstream_upload' => true,
741
+
742
+ // additional post data to send to our ajax hook
743
+ 'multipart_params' => array(
744
+ '_ajax_nonce' => wp_create_nonce(NONCE_KEY),
745
+ '__noconflict' => 1,
746
+ '__wpdmfm_upload' => wp_create_nonce(NONCE_KEY),
747
+ 'action' => (current_user_can('manage_options')?'wpdm_admin_upload_file':'wpdm_frontend_file_upload'), // the ajax action name
748
+ ),
749
+ );
750
+
751
+ if(get_option('__wpdm_chunk_upload',0) == 1){
752
+ $plupload_init['chunk_size'] = get_option('__wpdm_chunk_size', 1024).'kb';
753
+ $plupload_init['max_retries'] = 3;
754
+ } else
755
+ $plupload_init['max_file_size'] = wp_max_upload_size().'b';
756
+
757
+ // we should probably not apply this filter, plugins may expect wp's media uploader...
758
+ $plupload_init = apply_filters('plupload_init', $plupload_init); ?>
759
+
760
+
761
+
762
+ </div>
763
+ </div>
764
+
765
+ </div>
766
+
767
+ <div id="filelist"></div>
768
+ <div style="clear: both"></div>
769
+ </div>
770
+
771
+ <div class="modal fade bs-example-modal-sm" tabindex="-1" role="dialog" id="newfol">
772
+ <div class="modal-dialog modal-sm" role="document">
773
+ <div class="modal-content">
774
+ <div class="modal-header">
775
+ <button type="button" class="close pull-right" data-dismiss="modal" aria-label="Close"><span aria-hidden="true"><i class="fa fa-times-circle"></i></span></button>
776
+ <strong class="modal-title" id="myModalLabel">New Folder</strong>
777
+ </div>
778
+ <div id="upload" class="modal-body">
779
+ <input type="text" placeholder="Folder Name" id="folname" class="form-control input-lg" style="margin: 0">
780
+ </div>
781
+ <div class="modal-footer text-right">
782
+ <button type="button" id="createfol" class="btn btn-info">Create Folder</button>
783
+ <div style="float:left;display: none;" id="fcd" class="text-success"><i class="fa fa-check-circle"></i> Folder Created</div>
784
+ </div>
785
+ </div>
786
+ </div>
787
+ </div>
788
+
789
+ <div class="modal fade bs-example-modal-sm" tabindex="-1" role="dialog" id="newfile">
790
+ <div class="modal-dialog modal-sm" role="document">
791
+ <div class="modal-content">
792
+ <div class="modal-header">
793
+ <button type="button" class="close pull-right" data-dismiss="modal" aria-label="Close"><span aria-hidden="true"><i class="fa fa-times-circle"></i></span></button>
794
+ <strong class="modal-title" id="myModalLabel">New File</strong>
795
+ </div>
796
+ <div id="upload" class="modal-body">
797
+ <input type="text" placeholder="File Name" id="filename" class="form-control input-lg" style="margin: 0">
798
+ </div>
799
+ <div class="modal-footer text-right">
800
+ <button type="button" id="createfile" class="btn btn-info">Create File</button>
801
+ <div style="float:left;display: none;" id="fcd" class="text-success"><i class="fa fa-check-circle"></i> File Created</div>
802
+ </div>
803
+ </div>
804
+ </div>
805
+ </div>
806
+
807
+ <div class="modal fade" tabindex="-1" role="dialog" id="__link_settings">
808
+ <div class="modal-dialog" role="document">
809
+ <div class="modal-content">
810
+ <div class="modal-header">
811
+ <button type="button" class="close pull-right" data-dismiss="modal" aria-label="Close"><span aria-hidden="true"><i class="fa fa-times-circle"></i></span></button>
812
+ <strong class="modal-title">Update link</strong>
813
+ </div>
814
+ <div class="modal-body">
815
+ <form id="update_sharelink_form" method="post" action="<?php echo admin_url('admin-ajax.php'); ?>">
816
+ <?php wp_nonce_field(NONCE_KEY, '__wpdm_updatelink'); ?>
817
+ <input type="hidden" name="action" value="wpdm_updatelink" />
818
+ <input type="hidden" name="ID" v-bind:value="link.ID" />
819
+ <div class="panel panel-default">
820
+ <div class="panel-heading" style="box-shadow: none !important;border-bottom: 1px solid #e3e3e3 !important;border-top: 0 !important;"><?php echo __( "Authorized User Groups:", "download-manager" ) ?></div>
821
+ <div class="panel-body allow-roles">
822
+
823
+ <div class="row">
824
+ <div class="col-md-3">
825
+ <label><input v-bind:checked="roleSelected('guest')" type="checkbox" name="access[roles][]" value="guest" /> <?php echo __( "All Visitors" , "download-manager" ); ?></label>
826
+ </div>
827
+
828
+ <?php
829
+ global $wp_roles;
830
+ $roles = array_reverse($wp_roles->role_names);
831
+ foreach( $roles as $role => $name ) {
832
+ ?>
833
+ <div class="col-md-3"><label><input v-bind:checked="roleSelected('<?php echo $role; ?>')" type="checkbox" name="access[roles][]" value="<?php echo $role; ?>" /> <?php echo $name; ?></label></div>
834
+ <?php } ?>
835
+ </div>
836
+ </div>
837
+
838
+ <?php
839
+ if(is_plugin_active('wpdm-custom-access-level/wpdm-custom-access-level.php')){ ?>
840
+
841
+
842
+ <div class="panel-heading" style="box-shadow: none !important;border-radius: 0;border-top: 1px solid #e3e3e3;"><?php echo __('Authorized Users:','download-manager'); ?></div>
843
+ <div class="panel-body" id="_uaco">
844
+
845
+
846
+ <span style="margin-right: 3px" class="btn btn-simple btn-sm" id="uaco-admin" v-for="user in link.access.users">
847
+ <input type="hidden" name="access[users][]" value="admin">
848
+ <a class="uaco-del" onclick="jQuery(this.rel).remove()" v-bind:rel="'#uaco-' + user"><i class="far fa-times-circle"></i></a>&nbsp;{{ user }}
849
+ </span>
850
+
851
+
852
+ </div>
853
+ <div class="panel-footer"><input id="_maname" placeholder="Start typing to search members..." style="width: 100%" type="text" class="form-control"></div>
854
+
855
+
856
+ <?php } ?>
857
+
858
+ </div>
859
+
860
+ <div class="text-right">
861
+ <button type="submit" id="create_sharelink" class="btn btn-info">Update Link</button>
862
+ </div>
863
+
864
+
865
+ </form>
866
+
867
+ </div>
868
+ </div>
869
+ </div>
870
+ </div>
871
+
872
+
873
+ </div>
874
+
875
+ <script src="<?php echo WPDM_BASE_URL ?>assets/js/vue.min.js"></script>
876
+ <script src="<?php echo WPDM_BASE_URL ?>assets/js/simplebar.js"></script>
877
+ <link rel="stylesheet" href="<?php echo WPDM_BASE_URL ?>assets/css/simplebar.css">
878
+ <script>
879
+ var current_path = '', editor = '', opened = '', wpdmfm_active_asset = '', wpdmfm_active_asset_settings;
880
+
881
+ var assetSettings = new Vue({
882
+ el: '#__asset_settings',
883
+ data: {
884
+ asset: []
885
+ }
886
+ });
887
+
888
+ var linkSettings = new Vue({
889
+ el: '#__link_settings',
890
+ data: {
891
+ link: {
892
+ access: {
893
+ roles: ['guest'],
894
+ users:['admin']
895
+ }
896
+ }
897
+ },
898
+ methods: {
899
+ roleSelected: function (role) {
900
+ for(var i=0; i < this.link.access.roles.length; i++){
901
+ if( this.link.access.roles[i] == role){
902
+ return true
903
+ }
904
+ }
905
+ return false
906
+ }
907
+ }
908
+ });
909
+
910
+ /* View in fullscreen */
911
+ function openFullscreen(elementid) {
912
+ var elem = document.getElementById(elementid);
913
+ if (elem.requestFullscreen) {
914
+ elem.requestFullscreen();
915
+ } else if (elem.mozRequestFullScreen) { /* Firefox */
916
+ elem.mozRequestFullScreen();
917
+ } else if (elem.webkitRequestFullscreen) { /* Chrome, Safari and Opera */
918
+ elem.webkitRequestFullscreen();
919
+ } else if (elem.msRequestFullscreen) { /* IE/Edge */
920
+ elem.msRequestFullscreen();
921
+ }
922
+ }
923
+
924
+
925
+ jQuery(function ($) {
926
+
927
+ //$('#wpdmfm_explorer').css('height', (window.innerHeight - 190)+'px');
928
+
929
+ $('#mainfmc').fadeIn();
930
+ $('#loadingfm').hide();
931
+
932
+
933
+ function refresh_scandir(path) {
934
+ hide_editor();
935
+ hide_settings();
936
+ $('#reload').attr('disabled', 'disabled').find('.fa').addClass('fa-spin');
937
+ WPDM.blockUI('#filewin');
938
+ $.get(ajaxurl, {__wpdm_scandir:'<?php echo wp_create_nonce(NONCE_KEY); ?>', action: 'wpdm_scandir', path: path}, function (data) {
939
+ $('#scandir').html('');
940
+ var items = data.items;
941
+ $.each(items, function (index, entry) {
942
+ if(entry.type == 'file') {
943
+ var tpl = $('#fileTPL').html();
944
+ tpl = tpl.replace("{{icon}}", entry.icon);
945
+ tpl = tpl.replace("{{contenttype}}", entry.contenttype);
946
+ tpl = tpl.replace("{{item_label}}", entry.item_label);
947
+ tpl = tpl.replace("{{note}}", entry.note);
948
+ tpl = tpl.replace("{{file_size}}", entry.file_size);
949
+ tpl = tpl.replace(/\{\{path\}\}/ig, entry.path);
950
+ tpl = tpl.replace(/\{\{item\}\}/ig, entry.item);
951
+ tpl = tpl.replace(/\{\{id\}\}/ig, index);
952
+ } else {
953
+ var tpl = $('#dirTPL').html();
954
+ tpl = tpl.replace("{{icon}}", entry.icon);
955
+ tpl = tpl.replace("{{item_label}}", entry.item_label);
956
+ tpl = tpl.replace("{{note}}", entry.note);
957
+ tpl = tpl.replace("{{file_size}}", entry.file_size);
958
+ tpl = tpl.replace(/\{\{path\}\}/ig, entry.path);
959
+ tpl = tpl.replace(/\{\{item\}\}/ig, entry.item);
960
+ tpl = tpl.replace(/\{\{id\}\}/ig, index);
961
+ tpl = tpl.replace(/\{\{dirid\}\}/ig, entry.id);
962
+ }
963
+ $('#scandir').append(tpl);
964
+ });
965
+ WPDM.unblockUI('#filewin');
966
+ $('#reload').removeAttr('disabled', 'disabled').html("<i class='fa fa-sync'></i>");
967
+ $('#breadcrumb').html(data.breadcrumb);
968
+ });
969
+ }
970
+
971
+ function hide_editor() {
972
+ $('#wpdmeditor').fadeOut();
973
+ if(editor == '') return;
974
+ editor.codemirror.toTextArea();
975
+ $('#filecontent').val('');
976
+ $('#wpdmeditor').addClass('blockui');
977
+ }
978
+
979
+ function hide_settings() {
980
+ $('#cogwin').hide();
981
+ $('#filewin').removeClass('col-md-6').addClass('col-md-9');
982
+ $('#cogwin > .panel').addClass('blockui');
983
+ }
984
+
985
+ function expand_dir(id) {
986
+ var $this = $('#'+id);
987
+ $this.addClass('busy');
988
+ var chid = "expanded_" + id;
989
+ var slide = 1;
990
+ var _ajaxurl = ajaxurl == undefined ? wpdm_url.ajax : ajaxurl;
991
+ $.get(_ajaxurl, {__wpdm_scandir:'<?php echo wp_create_nonce(NONCE_KEY); ?>', action: 'wpdm_scandir', dirs: 1, path: $this.data('path')}, function (dirs){
992
+ if($("#"+chid).length == 1) {
993
+ $("#" + chid).remove();
994
+ slide = 0;
995
+ }
996
+
997
+ $this.append("<ul id='"+chid+"' style='display: none'></ul>");
998
+ $.each(dirs, function (id, dir) {
999
+ $('#'+chid).append("<li class='expand-dir' id='"+dir.id+"' data-path='"+dir.path+"'><span class='handle'></span><a href='#' class='explore-dir' data-path='"+dir.path+"'>"+dir.item_label+"</a></li>");
1000
+ });
1001
+ $this.removeClass('busy').addClass('expanded');
1002
+ if(slide == 1)
1003
+ $('#'+chid).slideDown();
1004
+ else
1005
+ $('#'+chid).show();
1006
+ });
1007
+ }
1008
+
1009
+ // create the uploader and pass the config from above
1010
+ var uploader = new plupload.Uploader(<?php echo json_encode($plupload_init); ?>);
1011
+
1012
+ // checks if browser supports drag and drop upload, makes some css adjustments if necessary
1013
+ uploader.bind('Init', function(up){
1014
+ var uploaddiv = jQuery('#plupload-upload-ui');
1015
+
1016
+ if(up.features.dragdrop){
1017
+ uploaddiv.addClass('drag-drop');
1018
+ jQuery('#drag-drop-area')
1019
+ .bind('dragover.wp-uploader', function(){ uploaddiv.addClass('drag-over'); })
1020
+ .bind('dragleave.wp-uploader, drop.wp-uploader', function(){ uploaddiv.removeClass('drag-over'); });
1021
+
1022
+ }else{
1023
+ uploaddiv.removeClass('drag-drop');
1024
+ jQuery('#drag-drop-area').unbind('.wp-uploader');
1025
+ }
1026
+ });
1027
+
1028
+ uploader.init();
1029
+
1030
+ // a file was added in the queue
1031
+ uploader.bind('FilesAdded', function(up, files){
1032
+ //var hundredmb = 100 * 1024 * 1024, max = parseInt(up.settings.max_file_size, 10);
1033
+
1034
+ uploader.settings.multipart_params.current_path = current_path;
1035
+
1036
+ plupload.each(files, function(file){
1037
+ jQuery('#filelist').append(
1038
+ '<div class="panel panel-default file" id="' + file.id + '"><div class="panel-heading txtellipsis"><b>' +
1039
+
1040
+ file.name + '</b></div><div class="panel-body">' +
1041
+ '<div class="progress" style="margin: 0;"><div class="progress-bar progress-bar-info progress-bar-striped fileprogress" role="progressbar"><span class="sr-only">(<span>' + plupload.formatSize(0) + '</span>/' + plupload.formatSize(file.size) + ')</span></div></div></div></div>');
1042
+ });
1043
+
1044
+ up.refresh();
1045
+ up.start();
1046
+ });
1047
+
1048
+ uploader.bind('UploadProgress', function(up, file) {
1049
+ jQuery('#' + file.id + " .fileprogress").width(file.percent + "%");
1050
+ jQuery('#' + file.id + " span").html(plupload.formatSize(parseInt(file.size * file.percent / 100)));
1051
+ });
1052
+
1053
+
1054
+ // a file was uploaded
1055
+ uploader.bind('FileUploaded', function(up, file, response) {
1056
+ var d = new Date();
1057
+ var ID = d.getTime();
1058
+ if(response.status == 200) {
1059
+ response = JSON.parse(response.response);
1060
+ if (response.success) {
1061
+ jQuery('#' + file.id).addClass('upcompleted');
1062
+ refresh_scandir(current_path);
1063
+ jQuery('#' + file.id + ".upcompleted").on('click', function () {
1064
+ jQuery(this).slideUp();
1065
+ });
1066
+ } else {
1067
+ jQuery('#' + file.id).addClass('upfailed');
1068
+ jQuery('#' + file.id + ".upfailed").on('click', function () {
1069
+ jQuery(this).slideUp();
1070
+ });
1071
+ }
1072
+ } else {
1073
+ jQuery('#' + file.id).addClass('upfailed');
1074
+ jQuery('#' + file.id + ".upfailed").on('click', function () {
1075
+ jQuery(this).slideUp();
1076
+ });
1077
+ }
1078
+ });
1079
+
1080
+ $('#reload').on('click', function () {
1081
+ refresh_scandir(current_path);
1082
+ });
1083
+
1084
+ $('#createfol').on('click', function () {
1085
+ var folname = $('#folname').val();
1086
+ if(folname !=''){
1087
+ $('#createfol').html('<i class="fa fa-refresh fa-spin"></i> &nbsp; Creating...');
1088
+ $.get(ajaxurl, {__wpdm_mkdir:'<?php echo wp_create_nonce(NONCE_KEY); ?>', action: 'wpdm_mkdir', path: current_path, name: folname}, function (data) {
1089
+ $('#folname').val('');
1090
+ $('#createfol').html('Create Folder');
1091
+ $('#fcd').fadeIn();
1092
+ refresh_scandir(current_path);
1093
+ });
1094
+ }
1095
+ });
1096
+
1097
+ $('#createfile').on('click', function () {
1098
+ var filename = $('#filename').val();
1099
+ if(filename !=''){
1100
+ $('#createfile').html('<i class="fa fa-refresh fa-spin"></i> &nbsp; Creating...');
1101
+ $.get(ajaxurl, {__wpdm_newfile:'<?php echo wp_create_nonce(NONCE_KEY); ?>', action: 'wpdm_newfile', path: current_path, name: filename}, function (data) {
1102
+ $('#filename').val('');
1103
+ $('#createfile').html('Create File');
1104
+ $('#fcd').fadeIn();
1105
+ refresh_scandir(current_path);
1106
+ });
1107
+ }
1108
+ });
1109
+
1110
+ /* Delete */
1111
+ $('body').on('click', '.btn-delete', function (e) {
1112
+ e.preventDefault();
1113
+ if(!confirm('Are you sure?')) return false;
1114
+ $(this).html('<i class="fa fa-spinner fa-spin"></i>');
1115
+ var filepath = $(this).data('path');
1116
+ $.get(ajaxurl, {__wpdm_unlink:'<?php echo wp_create_nonce(NONCE_KEY); ?>', action: 'wpdm_unlink', path: current_path, delete: filepath}, function (data) {
1117
+ refresh_scandir(current_path);
1118
+ });
1119
+ });
1120
+
1121
+ $('body').on('click', '#addcomment', function (e) {
1122
+ e.preventDefault();
1123
+ WPDM.blockUI('#newcomment_panel');
1124
+ var filepath = $(this).data('path');
1125
+ $.post(ajaxurl, {__wpdm_addcomment:'<?php echo wp_create_nonce(NONCE_KEY); ?>', action: 'wpdm_addcomment', comment: $('#newcomment').val(), assetid: assetSettings.asset.ID }, function (data) {
1126
+ assetSettings.asset.comments = data;
1127
+ WPDM.unblockUI('#newcomment_panel');
1128
+ });
1129
+ });
1130
+
1131
+ $('body').on('click', '.btn-open-file', function (e) {
1132
+ e.preventDefault();
1133
+ $('#wpdmeditor').fadeIn();
1134
+ var filepath = $(this).data('path');
1135
+ var filename = $(this).find('.item_label').attr('title');
1136
+ $('#wpdmefn').text(filename);
1137
+ $.get(ajaxurl, {__wpdm_openfile:'<?php echo wp_create_nonce(NONCE_KEY); ?>', action: 'wpdm_openfile', path: current_path, file: filepath}, function (data) {
1138
+ if(data.content != '') {
1139
+ $('#filecontent').show();
1140
+ $('#filecontent_alt').hide();
1141
+ $('#filecontent').val(data.content);
1142
+ opened = data.id;
1143
+ $('#savefile').data('path', filepath);
1144
+ $('#wpdmeditor').removeClass('blockui');
1145
+ $('#wpdmeditor .panel-footer').fadeIn();
1146
+ editor = wp.codeEditor.initialize($('#filecontent'), wpdmcm_settings);
1147
+ var fileext = filename.split('.').pop();
1148
+ fileext = fileext == 'html' ? 'htmlmixed' : fileext;
1149
+ fileext = fileext == 'js' ? 'javascript' : fileext;
1150
+ editor.codemirror.setOption('mode', fileext);
1151
+ } else {
1152
+ $('#filecontent').hide();
1153
+ $('#filecontent_alt').html(data.embed).show();
1154
+ $('#wpdmeditor .panel-footer').fadeOut();
1155
+ $('#wpdmeditor').removeClass('blockui');
1156
+ }
1157
+ });
1158
+ });
1159
+
1160
+ $('body').on('click', '#close-editor', function (e) {
1161
+ e.preventDefault();
1162
+ hide_editor();
1163
+ });
1164
+
1165
+ $('body').on('click', '#close-settings', function (e) {
1166
+ e.preventDefault();
1167
+ hide_settings();
1168
+ });
1169
+
1170
+ $('body').on('click', '#savefile', function (e) {
1171
+ e.preventDefault();
1172
+ $('#wpdmeditor').addClass('blockui');
1173
+ var filepath = $(this).data('path');
1174
+ var content = editor.codemirror.getValue();
1175
+ $.post(ajaxurl, {__wpdm_savefile:'<?php echo wp_create_nonce(NONCE_KEY); ?>', action: 'wpdm_savefile', content: content, file: filepath, opened: opened }, function (data) {
1176
+ WPDM.pushNotify("Save File", data.message);
1177
+ $('#wpdmeditor').removeClass('blockui');
1178
+ });
1179
+ });
1180
+
1181
+
1182
+ $('body').on('click', '.btn-edit-link', function () {
1183
+ $('#update_sharelink_form').addClass('blockui');
1184
+ var linkid = $(this).data('linkid');
1185
+ $.post(ajaxurl, {__wpdm_getlinkdet:'<?php echo wp_create_nonce(NONCE_KEY); ?>', action: 'wpdm_getlinkdet', linkid: linkid }, function (data) {
1186
+ linkSettings.link = data;
1187
+ $('#update_sharelink_form').removeClass('blockui');
1188
+ });
1189
+ });
1190
+
1191
+
1192
+ $('body').on('click', '.btn-delete-link', function (e) {
1193
+ e.preventDefault();
1194
+ var linkid = $(this).data('linkid');
1195
+ WPDM.confirm("Delete Link", "Are you sure?",[
1196
+ {
1197
+ 'label': 'No',
1198
+ 'class': 'btn btn-secondary',
1199
+ 'callback': function () {
1200
+ $(this).modal('hide');
1201
+ }
1202
+ },
1203
+ {
1204
+ 'label': 'Yes, Remove',
1205
+ 'class': 'btn btn-danger',
1206
+ 'callback': function () {
1207
+ $(this).find('.modal-body').html('<i class="fa fa-sun fa-spin"></i> Deleting...');
1208
+ var confirm = $(this);
1209
+ $.post(ajaxurl, {__wpdm_deletelink:'<?php echo wp_create_nonce(NONCE_KEY); ?>', action: 'wpdm_deletelink', linkid: linkid }, function (data) {
1210
+ confirm.modal('hide');
1211
+ $('#asset-link-'+linkid).slideUp();
1212
+ });
1213
+ }
1214
+ }
1215
+ ]);
1216
+
1217
+ });
1218
+
1219
+
1220
+ $('#sharelink_form').on('submit', function (e) {
1221
+ e.preventDefault();
1222
+ $('#sharelink_form').addClass('blockui');
1223
+ $(this).ajaxSubmit({
1224
+ success: function(data){
1225
+ assetSettings.asset.links = data;
1226
+ $('#sharelink_form').removeClass('blockui');
1227
+ $('#sharelink').modal('hide');
1228
+
1229
+ }
1230
+ });
1231
+ });
1232
+
1233
+ $('#update_sharelink_form').on('submit', function (e) {
1234
+ e.preventDefault();
1235
+ $('#update_sharelink_form').addClass('blockui');
1236
+ $(this).ajaxSubmit({
1237
+ success: function(data){
1238
+ console.log(data);
1239
+ $('#update_sharelink_form').removeClass('blockui');
1240
+ $('#__link_settings').modal('hide');
1241
+
1242
+ }
1243
+ });
1244
+ });
1245
+
1246
+
1247
+ $('body').on('click', '.media-folder', function (e) {
1248
+ e.preventDefault();
1249
+ current_path = $(this).data('path');
1250
+ refresh_scandir(current_path);
1251
+ expand_dir($(this).data('id'));
1252
+ });
1253
+
1254
+ $('body').on('click', '.btn-copy', function (e) {
1255
+ e.preventDefault();
1256
+ localStorage.setItem("__wpdm_fm_copy", current_path+"|||"+$(this).data('item'));
1257
+ localStorage.setItem("__wpdm_fm_move", 0);
1258
+ $('.btn-copy').html('<i class="fa fa-copy"></i>');
1259
+ $(this).html('<i class="fa fa-check-circle"></i>');
1260
+ $('#btn-paste').removeAttr('disabled').attr("data-item", localStorage.getItem("__wpdm_fm_copy"));
1261
+ });
1262
+
1263
+ $('body').on('click', '.btn-cut', function (e) {
1264
+ e.preventDefault();
1265
+ localStorage.setItem("__wpdm_fm_copy", current_path+"|||"+$(this).data('item'));
1266
+ localStorage.setItem("__wpdm_fm_move", 1);
1267
+ $('.btn-copy').html('<i class="fa fa-copy"></i>');
1268
+ $(this).html('<i class="fa fa-check-circle"></i>');
1269
+ $('#btn-paste').removeAttr('disabled').attr("data-item", localStorage.getItem("__wpdm_fm_copy"));
1270
+ });
1271
+
1272
+ /* Rename */
1273
+ $('body').on('click', '#renamenow', function (e) {
1274
+ e.preventDefault();
1275
+ $(this).html('<i class="fa fa-spinner fa-spin"></i>');
1276
+ var filepath = $(this).data('path');
1277
+ $.post(ajaxurl, {__wpdm_rename:'<?php echo wp_create_nonce(NONCE_KEY); ?>', action: 'wpdm_rename', path: current_path, newname: $('#newname').val(), assetid: assetSettings.asset.ID}, function (data) {
1278
+ refresh_scandir(current_path);
1279
+ $(this).data('oldname', $('#newname').val());
1280
+ $('#renamenow').html('Rename');
1281
+ $('#rename').modal('hide');
1282
+ });
1283
+ });
1284
+
1285
+ $('body').on('click', '#btn-upload-file', function () {
1286
+ $('#upfile').slideToggle();
1287
+ });
1288
+
1289
+ $('body').on('click', '.btn-settings', function (e) {
1290
+ e.preventDefault();
1291
+ var file_path = $(this).data('path');
1292
+ wpdmfm_active_asset = file_path;
1293
+ $('#filewin').removeClass('col-md-9').addClass('col-md-6');
1294
+ $('#cogwin').fadeIn();
1295
+ $('#cogwin > .panel').addClass('blockui');
1296
+ $.get(ajaxurl, {__wpdm_filesettings:'<?php echo wp_create_nonce(NONCE_KEY); ?>', action: 'wpdm_filesettings', file: file_path }, function (data) {
1297
+ data.sharecode = "[wpdm_asset id='"+data.ID+"']";
1298
+ assetSettings.asset = data;
1299
+ $('#cogwin > .panel').removeClass('blockui');
1300
+ });
1301
+
1302
+ });
1303
+
1304
+ $('body').on('click', '.action-btns-ctrl', function (e) {
1305
+ e.preventDefault();
1306
+ $($(this).data('target')).toggleClass("action-btns-show");
1307
+ });
1308
+ $('body').on('click', '#btn-paste', function (e) {
1309
+ e.preventDefault();
1310
+ $(this).html('<i class="fa fa-spinner fa-spin"></i>');
1311
+ var params = {__wpdm_copypaste:'<?php echo wp_create_nonce(NONCE_KEY); ?>', action: 'wpdm_copypaste', source: localStorage.getItem("__wpdm_fm_copy"), dest: current_path};
1312
+ if(localStorage.getItem("__wpdm_fm_move") == 1)
1313
+ params = {__wpdm_cutpaste:'<?php echo wp_create_nonce(NONCE_KEY); ?>', action: 'wpdm_cutpaste', source: localStorage.getItem("__wpdm_fm_copy"), dest: current_path};
1314
+ $.get(ajaxurl, params, function (data) {
1315
+ if(!data.success){
1316
+ WPDM.notify(data.message, 'error');
1317
+ } else {
1318
+ refresh_scandir(current_path);
1319
+ }
1320
+ $('#btn-paste').html('<i class="fa fa-clipboard"></i>');
1321
+ if(localStorage.getItem("__wpdm_fm_move") == 1){
1322
+ localStorage.setItem("__wpdm_fm_move", 0);
1323
+ localStorage.setItem("__wpdm_fm_copy", '');
1324
+ $('#btn-paste').attr('disabled','disabled');
1325
+ }
1326
+ });
1327
+ });
1328
+
1329
+ $('body').on('click', '.asset-link .form-control', function () {
1330
+ $(this).select();
1331
+ document.execCommand('copy');
1332
+ });
1333
+
1334
+ $('body').on('click', '.expand-dir > .handle, .explore-dir', function (e) {
1335
+ e.preventDefault();
1336
+
1337
+ var $this = $(this).parent('.expand-dir');
1338
+ var chid = "expanded_"+$(this).parent('.expand-dir').attr('id');
1339
+
1340
+ if ($(this).hasClass('explore-dir')){
1341
+ current_path = $this.data('path');
1342
+ refresh_scandir($this.data('path'));
1343
+ }
1344
+
1345
+ if($this.hasClass('expanded') && !$(this).hasClass('explore-dir')){
1346
+ $('#'+chid).slideUp(function () {
1347
+ $(this).remove();
1348
+ $this.removeClass('expanded');
1349
+ });
1350
+ return false;
1351
+ }
1352
+
1353
+ $this.addClass('busy');
1354
+
1355
+ expand_dir($(this).parent('.expand-dir').attr('id'));
1356
+ });
1357
+
1358
+ var uacc = '';
1359
+
1360
+ function split(val) {
1361
+ return val.split(/,\s*/);
1362
+ }
1363
+
1364
+ function extractLast(term) {
1365
+ return split(term).pop();
1366
+ }
1367
+
1368
+ $("#maname")
1369
+ .bind("keydown", function (event) {
1370
+ if (event.keyCode === $.ui.keyCode.TAB &&
1371
+ $(this).data("ui-autocomplete").menu.active) {
1372
+ event.preventDefault();
1373
+ }
1374
+ })
1375
+ .autocomplete({
1376
+ source: function (request, response) {
1377
+ $.getJSON(ajaxurl + '?action=wpdm_cal_suggest_members', {
1378
+ action: 'wpdm_cal_suggest_members',
1379
+ term: extractLast($("#maname").val())
1380
+ }, response);
1381
+ },
1382
+ search: function () {
1383
+
1384
+ var term = extractLast($("#maname").val());
1385
+ if (term.length < 2) {
1386
+ return false;
1387
+ }
1388
+ },
1389
+ focus: function () {
1390
+
1391
+ return false;
1392
+ },
1393
+ select: function (event, ui) {
1394
+ $('#uaco').prepend('<span style="margin-right: 3px" class="btn btn-simple btn-sm" id="uaco-' + ui.item.value.replace(/[^a-zA-Z]/ig, '-') + '"><input type="hidden" name="access[users][]" value="' + ui.item.value + '" /> <a class="uaco-del" onclick="jQuery(this.rel).remove()" rel="#uaco-' + ui.item.value.replace(/[^a-zA-Z]/ig, '-') + '"><i class="far fa-times-circle"></i></a>&nbsp;' + ui.item.value + '</span>');
1395
+ this.value = "";
1396
+ return false;
1397
+ }
1398
+ });
1399
+
1400
+ $("#_maname")
1401
+ .bind("keydown", function (event) {
1402
+ if (event.keyCode === $.ui.keyCode.TAB &&
1403
+ $(this).data("ui-autocomplete").menu.active) {
1404
+ event.preventDefault();
1405
+ }
1406
+ })
1407
+ .autocomplete({
1408
+ source: function (request, response) {
1409
+ $.getJSON(ajaxurl + '?action=wpdm_cal_suggest_members', {
1410
+ action: 'wpdm_cal_suggest_members',
1411
+ term: extractLast($("#_maname").val())
1412
+ }, response);
1413
+ },
1414
+ search: function () {
1415
+
1416
+ var term = extractLast($("#_maname").val());
1417
+ if (term.length < 2) {
1418
+ return false;
1419
+ }
1420
+ },
1421
+ focus: function () {
1422
+
1423
+ return false;
1424
+ },
1425
+ select: function (event, ui) {
1426
+ $('#_uaco').prepend('<span style="margin-right: 3px" class="btn btn-simple btn-sm" id="uaco-' + ui.item.value.replace(/[^a-zA-Z]/ig, '-') + '"><input type="hidden" name="access[users][]" value="' + ui.item.value + '" /> <a class="uaco-del" onclick="jQuery(this.rel).remove()" rel="#uaco-' + ui.item.value.replace(/[^a-zA-Z]/ig, '-') + '"><i class="far fa-times-circle"></i></a>&nbsp;' + ui.item.value + '</span>');
1427
+ this.value = "";
1428
+ return false;
1429
+ }
1430
+ });
1431
+
1432
+
1433
+ if(localStorage.getItem("__wpdm_fm_copy") != undefined && localStorage.getItem("__wpdm_fm_copy") != ''){
1434
+ $('#btn-paste').removeAttr('disabled').attr("data-item", localStorage.getItem("__wpdm_fm_copy"));
1435
+ }
1436
+
1437
+ refresh_scandir('');
1438
+ expand_dir('<?php echo md5('home'); ?>');
1439
+
1440
+ $('.ttip').tooltip();
1441
+
1442
+
1443
+ });
1444
+
1445
+ </script>
1446
+
1447
+
1448
+ <?php if(is_admin()){ ?>
1449
+ <script>
1450
+ jQuery(function ($) {
1451
+ $('[data-simplebar]').css('height', (window.innerHeight - 220)+'px');
1452
+ $(window).on('resize', function() {
1453
+ $('[data-simplebar]').css('height', (window.innerHeight - 220) + 'px');
1454
+ if($('#mainfmarea').is(":fullscreen")){
1455
+ $('[data-simplebar]').css('height', (window.innerHeight - 135) + 'px');
1456
+ }
1457
+ });
1458
+ });
1459
+ </script>
1460
+ </div>
1461
+ <?php }
tpls/link-templates/link-template-default-old.php CHANGED
@@ -3,7 +3,7 @@
3
 
4
  <div class="wpdm-link-template link-template-default" >
5
 
6
- <div class="media" style="display: flex">
7
  <div class="pull-left">[icon]</div>
8
  <div class="media-body">
9
  <div>
@@ -13,7 +13,7 @@
13
  </div>
14
 
15
  </div>
16
-
17
  </div>
18
  <div style="clear: both"></div>
19
 
3
 
4
  <div class="wpdm-link-template link-template-default" >
5
 
6
+ <div class="media">
7
  <div class="pull-left">[icon]</div>
8
  <div class="media-body">
9
  <div>
13
  </div>
14
 
15
  </div>
16
+ <div style="clear: both"></div>
17
  </div>
18
  <div style="clear: both"></div>
19
 
tpls/lock-options-iframe.php CHANGED
@@ -262,11 +262,11 @@ $pack->Prepare(get_the_ID());
262
  jQuery(function ($) {
263
 
264
  $('a').each(function () {
265
- $(this).attr('target', '_blank');
266
  });
267
 
268
  $('body').on('click','a', function () {
269
- $(this).attr('target', '_blank');
270
  });
271
 
272
  $('#wpdm-locks').on('hidden.bs.modal', function (e) {
262
  jQuery(function ($) {
263
 
264
  $('a').each(function () {
265
+ $(this).attr('target', '_parent');
266
  });
267
 
268
  $('body').on('click','a', function () {
269
+ $(this).attr('target', '_parent');
270
  });
271
 
272
  $('#wpdm-locks').on('hidden.bs.modal', function (e) {
tpls/lost-password-form.php ADDED
@@ -0,0 +1,64 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Base: wpdmpro
4
+ * Developer: shahjada
5
+ * Team: W3 Eden
6
+ * Date: 19/9/19 11:40
7
+ */
8
+
9
+ if(!defined("ABSPATH")) die();
10
+ ?>
11
+ <div class="w3eden">
12
+ <div id="wpdmlogin" class="lostpass">
13
+ <form name="loginform" id="resetPassword" action="<?php echo admin_url('/admin-ajax.php?action=resetPassword'); ?>" method="post" class="login-form" >
14
+ <?php wp_nonce_field(NONCE_KEY,'__reset_pass' ); ?>
15
+ <h3 style="margin: 0"><?php _e( "Lost Password?" , "download-manager" ); ?></h3>
16
+ <p>
17
+ <?php _e('Please enter your username or email address. You will receive a link to create a new password via email.', 'download-manager'); ?>
18
+ </p>
19
+ <div class="form-group">
20
+ <input placeholder="<?php _e( "Username or Email" , "download-manager" ); ?>" type="text" name="user_login" id="user_login" class="form-control input-lg required text" value="" size="20" tabindex="38" />
21
+ </div>
22
+
23
+ <div class="form-group">
24
+ <button type="submit" name="wp-submit" id="resetPassword-submit" class="btn btn-block btn-info btn-lg"><i class="fa fa-key"></i> &nbsp; <?php _e( "Reset Password" , "download-manager" ); ?></button>
25
+ </div>
26
+ <div class="row">
27
+ <div class="col-md-12 text-center small">
28
+ <a href="<?php echo home_url('/') ?>" class="color-info btn btn-link btn-xs"><i class="fab fa-fort-awesome-alt"></i> <?php _e("Home", "download-manager"); ?></a> <span class="text-muted">&nbsp; </span>
29
+ <a href="<?php echo wpdm_login_url(); ?>" class="color-info btn btn-link btn-xs"><i class="fa fa-lock"></i> <?php _e("Login", "download-manager"); ?></a> <span class="text-muted">&nbsp; </span>
30
+ <a href="<?php echo wpdm_registration_url(); ?>" class="color-info btn btn-link btn-xs"><i class="fa fa-user-plus"></i> <?php _e("Register", "download-manager"); ?></a>
31
+ </div>
32
+ </div>
33
+
34
+ </form>
35
+ </div>
36
+ </div>
37
+ <script>
38
+ jQuery(function ($) {
39
+ var llbl = $('#resetPassword-submit').html();
40
+ $('#resetPassword').submit(function () {
41
+ $('#resetPassword-submit').html("<i class='fa fa-spin fa-sync'></i> <?php _e( "Please Wait..." , "download-manager" ); ?>");
42
+ $(this).ajaxSubmit({
43
+ success: function (res) {
44
+
45
+ if (res.match(/error/)) {
46
+ $('form .alert').hide();
47
+ $('#resetPassword').prepend("<div class='alert alert-danger' data-title='<?php _e( "ERROR!" , "download-manager" ); ?>'><?php _e( "Account not found." , "download-manager" ); ?></div>");
48
+ $('#resetPassword-submit').html(llbl);
49
+ } else {
50
+ $('form .alert').hide();
51
+ $('#resetPassword').prepend("<div class='alert alert-success' data-title='<?php _e( "MAIL SENT!" , "download-manager" ); ?>'><?php _e( "Please check your inbox." , "download-manager" ); ?></div>");
52
+ $('#resetPassword-submit').html(llbl);
53
+ }
54
+ }
55
+ });
56
+ return false;
57
+ });
58
+
59
+ $('body').on('click', 'form .alert-danger', function(){
60
+ $(this).slideUp();
61
+ });
62
+
63
+ });
64
+ </script>
tpls/reset-password-form.php ADDED
@@ -0,0 +1,79 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Base: wpdmpro
4
+ * Developer: shahjada
5
+ * Team: W3 Eden
6
+ * Date: 19/9/19 11:41
7
+ */
8
+
9
+ if(!defined("ABSPATH")) die();
10
+
11
+ $user = check_password_reset_key(wpdm_query_var('key'), wpdm_query_var('login'));
12
+ if(!is_wp_error($user)){
13
+
14
+ \WPDM\Session::set('__up_user', $user);
15
+
16
+ ?>
17
+ <div class="w3eden">
18
+ <div id="wpdmlogin" class="lostpass">
19
+ <form name="loginform" id="updatePassword" action="<?php echo admin_url('/admin-ajax.php?action=updatePassword'); ?>" method="post" class="login-form" >
20
+ <?php wp_nonce_field(NONCE_KEY,'__update_pass' ); ?>
21
+ <h3><?php _e( "New Password" , "download-manager" ); ?></h3>
22
+ <p>
23
+ <?php _e('Please enter a new password', 'download-manager'); ?>
24
+ </p>
25
+ <div class="form-group">
26
+ <input placeholder="<?php _e( "New Password" , "download-manager" ); ?>" type="password" name="password" id="password" class="form-control input-lg required text" value="" size="20" />
27
+ </div>
28
+
29
+ <div class="form-group">
30
+ <input placeholder="<?php _e( "Confirm Password" , "download-manager" ); ?>" type="password" name="cpassword" id="cpassword" class="form-control input-lg required text" value="" size="20" />
31
+ </div>
32
+
33
+ <div class="row">
34
+ <div class="col-md-12"><button type="submit" name="wp-submit" id="updatePassword-submit" class="btn btn-block no-radius btn-success btn-lg"><i class="fa fa-key"></i> &nbsp; <?php _e( "Update Password" , "download-manager" ); ?></button></div>
35
+ </div>
36
+
37
+ </form>
38
+ </div>
39
+ </div>
40
+ <script>
41
+ jQuery(function ($) {
42
+ var llbl = $('#updatePassword-submit').html();
43
+ $('#updatePassword').submit(function () {
44
+ if($('#password').val() != $('#cpassword').val()) {
45
+ alert('<?php _e( "Confirm password value must be same as the new password" , "download-manager" ); ?>')
46
+ return false;
47
+ }
48
+ $('#updatePassword-submit').html("<i class='fa fa-spin fa-refresh'></i> <?php _e( "Please Wait..." , "download-manager" ); ?>");
49
+ $(this).ajaxSubmit({
50
+ success: function (res) {
51
+ if(res.success) {
52
+ $('#updatePassword').html("<div class='alert alert-success' data-title='<?php _e( "DONE!" , "download-manager" ); ?>'><b><?php _e( "Password Updated" , "download-manager" ); ?></b><br/><a style='margin-top:5px;text-decoration:underline !important;' href='<?php echo wpdm_user_dashboard_url(); ?>'><?php _e( "Go to your account dashboard" , "download-manager" ); ?></a></div>");
53
+ } else
54
+ $('#updatePassword').html("<div class='alert alert-danger' data-title='<?php _e( "ERROR!" , "download-manager" ); ?>'><b><?php _e( "Password Update Failed" , "download-manager" ); ?></b><br/><a style='margin-top:5px;text-decoration:underline !important;' href='<?php echo wpdm_lostpassword_url(); ?>'>"+res.message+"</a></div>");
55
+ $('#updatePassword-submit').html(llbl);
56
+ }
57
+ });
58
+ return false;
59
+ });
60
+
61
+ $('body').on('click', 'form .alert-danger', function(){
62
+ $(this).slideUp();
63
+ });
64
+
65
+ });
66
+ </script>
67
+
68
+
69
+
70
+ <?php } else { ?>
71
+ <div class="w3eden">
72
+ <div id="wpdmlogin" class="lostpass">
73
+ <div class="alert alert-danger" data-title="<?php _e( "ERROR!" , "download-manager" ); ?>">
74
+ <?php echo $user->get_error_message(); ?>
75
+ </div>
76
+ </div>
77
+ </div>
78
+
79
+ <?php }
tpls/wpdm-all-downloads.php CHANGED
@@ -7,6 +7,7 @@ if(!isset($params['items_per_page'])) $params['items_per_page'] = 20;
7
  $cols = isset($params['cols'])?$params['cols']:'title,file_count,download_count|categories|update_date|download_link';
8
  $colheads = isset($params['colheads'])?$params['colheads']:'Title|Categories|Update Date|Download';
9
  $cols = explode("|", $cols);
 
10
  $colheads = explode("|", $colheads);
11
  foreach ($cols as $index => &$col){
12
  $col = explode(",", $col);
@@ -97,6 +98,7 @@ $coltemplate['page_link'] = "<a class=\"package-title\" href=\"%s\">%s</a>";
97
  if(isset($params['jstable']) && $params['jstable']==1):
98
 
99
  $datatable_col = ( isset($params['order_by']) && $params['order_by'] == 'title' ) ? '0' : '2';
 
100
  $datatable_order = ( isset($params['order']) && $params['order'] == 'DESC' ) ? 'desc' : 'asc';
101
  ?>
102
  <script src="<?php echo WPDM_BASE_URL.'assets/js/jquery.dataTables.min.js' ?>"></script>
7
  $cols = isset($params['cols'])?$params['cols']:'title,file_count,download_count|categories|update_date|download_link';
8
  $colheads = isset($params['colheads'])?$params['colheads']:'Title|Categories|Update Date|Download';
9
  $cols = explode("|", $cols);
10
+ $_cols = $cols;
11
  $colheads = explode("|", $colheads);
12
  foreach ($cols as $index => &$col){
13
  $col = explode(",", $col);
98
  if(isset($params['jstable']) && $params['jstable']==1):
99
 
100
  $datatable_col = ( isset($params['order_by']) && $params['order_by'] == 'title' ) ? '0' : '2';
101
+ if(isset($params['order_by']) && in_array($params['order_by'], $_cols)) { $datatable_col = array_search($params['order_by'], $_cols); }
102
  $datatable_order = ( isset($params['order']) && $params['order'] == 'DESC' ) ? 'desc' : 'asc';
103
  ?>
104
  <script src="<?php echo WPDM_BASE_URL.'assets/js/jquery.dataTables.min.js' ?>"></script>
tpls/wpdm-asset.php ADDED
@@ -0,0 +1,29 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Base: wpdmpro
4
+ * Developer: shahjada
5
+ * Team: W3 Eden
6
+ * Date: 2019-08-08 12:34
7
+ * Date: 2019-08-17
8
+ * Version: 1.1.0
9
+ */
10
+ if(!defined("ABSPATH")) die();
11
+ ?>
12
+ <div class="w3eden">
13
+ <div class="panel panel-default card card-default wpdm-asset-link wpdm-asset-link-<?php echo $asset->ID; ?>">
14
+ <div class="card-body panel-body">
15
+ <div style="display: flex">
16
+ <div style="width: 100% !important;display: grid"><h3 class="package-title" style="font-size: 12pt;margin: 0;line-height: 18px;margin-bottom: 2px"><?php echo $asset->name; ?></h3>
17
+ <small class="text-muted"><?php echo $asset->size; ?></small>
18
+ </div>
19
+ <div>
20
+ <?php if($asset->access == 'public' || is_user_logged_in()) { ?>
21
+ <a class="btn btn-primary btn-lg" href="<?php echo $asset->temp_download_url; ?>"><?php echo __( "Download", "download-manager" ); ?></a>
22
+ <?php } else { ?>
23
+ <a class="btn btn-danger btn-lg" href="<?php echo wpdm_login_url($_SERVER['REQUEST_URI']); ?>"><?php echo __( "Login to Download", "download-manager" ); ?></a>
24
+ <?php } ?>
25
+ </div>
26
+ </div>
27
+ </div>
28
+ </div>
29
+ </div>
tpls/wpdm-login-form.php CHANGED
@@ -1,23 +1,11 @@
1
- <?php if(!defined('ABSPATH')) die();
2
- global $current_user;
3
- if(!isset($params) || !is_array($params)) $params = array();
4
- $regurl = get_option('__wpdm_register_url');
5
- if($regurl > 0)
6
- $regurl = get_permalink($regurl);
7
- $log_redirect = $_SERVER['REQUEST_URI'];
8
- if(isset($params['redirect'])) $log_redirect = esc_url($params['redirect']);
9
- if(isset($_GET['redirect_to'])) $log_redirect = esc_url($_GET['redirect_to']);
10
 
11
- $up = parse_url($log_redirect);
12
- if(isset($up['host']) && $up['host'] != $_SERVER['SERVER_NAME']) $log_redirect = $_SERVER['REQUEST_URI'];
13
-
14
- $log_redirect = strip_tags($log_redirect);
15
-
16
- if(!isset($params['logo']) || $params['logo'] == '') $params['logo'] = get_site_icon_url();
17
 
18
  ?>
19
  <div class="w3eden">
20
- <div id="wpdmlogin" <?php if(wpdm_query_var('action') == 'lostpassword') echo 'class="lostpass"'; ?>>
 
21
  <?php if(isset($params['logo']) && $params['logo'] != '' && !is_user_logged_in()){ ?>
22
  <div class="text-center wpdmlogin-logo">
23
  <a href="<?php echo home_url('/'); ?>"><img alt="Logo" src="<?php echo $params['logo'];?>" /></a>
@@ -39,228 +27,134 @@ if(!isset($params['logo']) || $params['logo'] == '') $params['logo'] = get_site_
39
  </div>
40
 
41
  <?php endif; ?>
42
- <?php if(is_user_logged_in()){
43
- ob_start();
44
-
45
- include wpdm_tpl_path("already-logged-in.php", WPDM_TPL_DIR, WPDM_TPL_FALLBACK);
46
 
47
- $message = ob_get_clean();
48
- do_action("wpdm_user_logged_in", $message);
49
 
50
- } else {
51
 
52
 
53
- if(wpdm_query_var('action') != 'lostpassword' && wpdm_query_var('action') != 'rp'){
54
- ?>
55
-
56
- <?php do_action("wpdm_before_login_form"); ?>
57
-
58
-
59
- <form name="loginform" id="loginform" action="" method="post" class="login-form" >
60
-
61
- <input type="hidden" name="permalink" value="<?php the_permalink(); ?>" />
62
-
63
- <?php global $wp_query; if(\WPDM\Session::get('login_error')) { ?>
64
- <div class="error alert alert-danger" >
65
- <b><?php _e( "Login Failed!" , "download-manager" ); ?></b><br/>
66
- <?php echo preg_replace("/<a.*?<\/a>\?/i","",\WPDM\Session::get('login_error')); \WPDM\Session::clear('login_error'); ?>
67
- </div>
68
- <?php } ?>
69
- <div class="form-group">
70
- <div class="input-group input-group-lg">
71
- <span class="input-group-addon" id="sizing-addon1"><i class="fa fa-user"></i></span>
72
- <input placeholder="<?php _e( "Username or Email" , "download-manager" ); ?>" type="text" name="wpdm_login[log]" id="user_login" class="form-control input-lg required text" value="" size="20" tabindex="38" />
73
- </div>
74
- </div>
75
- <div class="form-group">
76
- <div class="input-group input-group-lg">
77
- <span class="input-group-addon" id="sizing-addon1"><i class="fa fa-key"></i></span>
78
- <input type="password" placeholder="<?php _e( "Password" , "download-manager" ); ?>" name="wpdm_login[pwd]" id="user_pass" class="form-control input-lg required password" value="" size="20" tabindex="39" />
79
- </div>
80
- </div>
81
-
82
- <?php do_action("wpdm_login_form"); ?>
83
- <?php do_action("login_form"); ?>
84
-
85
- <div class="row login-form-meta-text text-muted" style="margin-bottom: 10px">
86
- <div class="col-md-5"><label><input class="wpdm-checkbox" name="rememberme" type="checkbox" id="rememberme" value="forever" /><?php _e( "Remember Me" , "download-manager" ); ?></label></div>
87
- <div class="col-md-7 text-right"><label><a class="color-blue" href="<?php echo wpdm_lostpassword_url(); ?>"><?php _e( "Forgot Password?" , "download-manager" ); ?></a>&nbsp;</label></div>
88
- </div>
89
- <?php
90
- $__wpdm_social_login = get_option('__wpdm_social_login');
91
- $__wpdm_social_login = is_array($__wpdm_social_login)?$__wpdm_social_login:array();
92
- ?>
93
- <div class="row">
94
- <div class="col-md-12"><button type="submit" name="wp-submit" id="loginform-submit" class="btn btn-block btn-primary btn-lg"><i class="fas fa-user-shield"></i> &nbsp;<?php _e( "Login" , "download-manager" ); ?></button></div>
95
-
96
- <?php if($regurl != ''){ ?>
97
- <div class="col-md-12"><br/><a href="<?php echo $regurl; ?>" name="wp-submit" id="loginform-submit" class="btn btn-block btn-link btn-xs wpdm-reg-link color-primary"><?php _e( "Don't have an account yet?" , "download-manager" ); ?> <i class="fas fa-user-plus"></i> <?php _e( "Register Now" , "download-manager" ); ?></a></div>
98
- <?php } ?>
99
- </div>
100
-
101
-
102
- <input type="hidden" name="redirect_to" value="<?php echo $log_redirect; ?>" />
103
-
104
-
105
-
106
- </form>
107
 
 
108
 
 
 
 
 
 
 
109
 
110
- <?php do_action("wpdm_after_login_form"); ?>
 
 
 
 
111
 
 
 
 
 
 
 
 
 
 
 
 
 
112
 
113
- <script>
114
- jQuery(function ($) {
115
- var llbl = $('#loginform-submit').html();
116
- $('#loginform').submit(function () {
117
- $('#loginform-submit').html("<i class='fa fa-spin fa-sync'></i> <?php _e( "Logging In..." , "download-manager" ); ?>");
118
- $(this).ajaxSubmit({
119
- success: function (res) {
120
- if (!res.match(/success/)) {
121
- $('form .alert-danger').hide();
122
- $('#loginform').prepend("<div class='alert alert-danger' data-title='<?php _e( "LOGIN FAILED!" , "download-manager" ); ?>'><?php _e( "Please re-check login info." , "download-manager" ); ?></div>");
123
- $('#loginform-submit').html(llbl);
124
- } else {
125
- location.href = "<?php echo $log_redirect; ?>";
126
- }
127
- }
128
  });
129
- return false;
130
- });
131
-
132
- $('body').on('click', 'form .alert-danger', function(){
133
- $(this).slideUp();
134
- });
135
-
136
- });
137
- </script>
138
-
139
- <?php } else {
140
 
 
 
 
 
 
141
 
142
- if(wpdm_query_var('action') == 'lostpassword'){
143
- ?>
144
- <form name="loginform" id="resetPassword" action="<?php echo admin_url('/admin-ajax.php?action=resetPassword'); ?>" method="post" class="login-form" >
145
- <?php wp_nonce_field(NONCE_KEY,'__reset_pass' ); ?>
146
- <h3 style="margin: 0"><?php _e( "Lost Password?" , "download-manager" ); ?></h3>
147
- <p>
148
- <?php _e('Please enter your username or email address. You will receive a link to create a new password via email.', 'download-manager'); ?>
149
- </p>
150
- <div class="form-group">
151
- <input placeholder="<?php _e( "Username or Email" , "download-manager" ); ?>" type="text" name="user_login" id="user_login" class="form-control input-lg required text" value="" size="20" tabindex="38" />
152
- </div>
153
 
154
- <div class="form-group">
155
- <button type="submit" name="wp-submit" id="resetPassword-submit" class="btn btn-block btn-info btn-lg"><i class="fa fa-key"></i> &nbsp; <?php _e( "Reset Password" , "download-manager" ); ?></button>
156
- </div>
157
- <div class="row">
158
- <div class="col-md-12 text-center small">
159
- <a href="<?php echo home_url('/') ?>" class="color-info btn btn-link btn-xs"><i class="fab fa-fort-awesome-alt"></i> <?php _e("Home", "download-manager"); ?></a> <span class="text-muted">&nbsp; </span>
160
- <a href="<?php echo wpdm_login_url(); ?>" class="color-info btn btn-link btn-xs"><i class="fa fa-lock"></i> <?php _e("Login", "download-manager"); ?></a> <span class="text-muted">&nbsp; </span>
161
- <a href="<?php echo wpdm_registration_url(); ?>" class="color-info btn btn-link btn-xs"><i class="fa fa-user-plus"></i> <?php _e("Register", "download-manager"); ?></a>
 
 
 
 
 
 
 
 
162
  </div>
163
- </div>
164
-
165
- </form>
166
- <script>
167
- jQuery(function ($) {
168
- var llbl = $('#resetPassword-submit').html();
169
- $('#resetPassword').submit(function () {
170
- $('#resetPassword-submit').html("<i class='fa fa-spin fa-sync'></i> <?php _e( "Please Wait..." , "download-manager" ); ?>");
171
- $(this).ajaxSubmit({
172
- success: function (res) {
173
-
174
- if (res.match(/error/)) {
175
- $('form .alert').hide();
176
- $('#resetPassword').prepend("<div class='alert alert-danger' data-title='<?php _e( "ERROR!" , "download-manager" ); ?>'><?php _e( "Account not found." , "download-manager" ); ?></div>");
177
- $('#resetPassword-submit').html(llbl);
178
- } else {
179
- $('form .alert').hide();
180
- $('#resetPassword').prepend("<div class='alert alert-success' data-title='<?php _e( "MAIL SENT!" , "download-manager" ); ?>'><?php _e( "Please check your inbox." , "download-manager" ); ?></div>");
181
- $('#resetPassword-submit').html(llbl);
182
- }
183
- }
184
- });
185
- return false;
186
- });
187
-
188
- $('body').on('click', 'form .alert-danger', function(){
189
- $(this).slideUp();
190
- });
191
-
192
- });
193
- </script>
194
- <?php }
195
-
196
- if(wpdm_query_var('action') == 'rp'){
197
-
198
- $user = check_password_reset_key(wpdm_query_var('key'), wpdm_query_var('login'));
199
- if(!is_wp_error($user)){
200
- \WPDM\Session::set('__up_user', $user);
201
-
202
- ?>
203
-
204
- <form name="loginform" id="updatePassword" action="<?php echo admin_url('/admin-ajax.php?action=updatePassword'); ?>" method="post" class="login-form" >
205
- <?php wp_nonce_field(NONCE_KEY,'__update_pass' ); ?>
206
- <h3><?php _e( "New Password" , "download-manager" ); ?></h3>
207
- <p>
208
- <?php _e('Please enter a new password', 'download-manager'); ?>
209
- </p>
210
- <div class="form-group">
211
- <input placeholder="<?php _e( "New Password" , "download-manager" ); ?>" type="password" name="password" id="password" class="form-control input-lg required text" value="" size="20" />
212
- </div>
213
-
214
- <div class="form-group">
215
- <input placeholder="<?php _e( "Confirm Password" , "download-manager" ); ?>" type="password" name="cpassword" id="cpassword" class="form-control input-lg required text" value="" size="20" />
216
- </div>
217
-
218
- <div class="row">
219
- <div class="col-md-12"><button type="submit" name="wp-submit" id="updatePassword-submit" class="btn btn-block no-radius btn-success btn-lg"><i class="fa fa-key"></i> &nbsp; <?php _e( "Update Password" , "download-manager" ); ?></button></div>
220
- </div>
221
-
222
- </form>
223
-
224
- <script>
225
- jQuery(function ($) {
226
- var llbl = $('#updatePassword-submit').html();
227
- $('#updatePassword').submit(function () {
228
- if($('#password').val() != $('#cpassword').val()) {
229
- alert('<?php _e( "Confirm password value must be same as the new password" , "download-manager" ); ?>')
230
- return false;
231
- }
232
- $('#updatePassword-submit').html("<i class='fa fa-spin fa-refresh'></i> <?php _e( "Please Wait..." , "download-manager" ); ?>");
233
- $(this).ajaxSubmit({
234
- success: function (res) {
235
- if(res.success) {
236
- $('#updatePassword').html("<div class='alert alert-success' data-title='<?php _e( "DONE!" , "download-manager" ); ?>'><b><?php _e( "Password Updated" , "download-manager" ); ?></b><br/><a style='margin-top:5px;text-decoration:underline !important;' href='<?php echo wpdm_user_dashboard_url(); ?>'><?php _e( "Go to your account dashboard" , "download-manager" ); ?></a></div>");
237
- } else
238
- $('#updatePassword').html("<div class='alert alert-danger' data-title='<?php _e( "ERROR!" , "download-manager" ); ?>'><b><?php _e( "Password Updated" , "download-manager" ); ?></b><br/><a style='margin-top:5px;text-decoration:underline !important;' href='<?php echo wpdm_lostpassword_url(); ?>'>"+res.message+"</a></div>");
239
- $('#updatePassword-submit').html(llbl);
240
- }
241
- });
242
- return false;
243
- });
244
-
245
- $('body').on('click', 'form .alert-danger', function(){
246
- $(this).slideUp();
247
- });
248
 
249
- });
250
- </script>
251
 
 
252
 
253
 
254
- <?php } else { ?>
255
 
256
- <div class="alert alert-danger" data-title="<?php _e( "ERROR!" , "download-manager" ); ?>">
257
- <?php echo $user->get_error_message(); ?>
258
- </div>
259
 
260
- <?php } }
261
 
262
- }} ?>
263
  </div>
264
-
265
-
266
  </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
 
 
 
 
 
 
 
 
2
 
3
+ if(!defined('ABSPATH')) die();
 
 
 
 
 
4
 
5
  ?>
6
  <div class="w3eden">
7
+ <div id="wpdmlogin">
8
+
9
  <?php if(isset($params['logo']) && $params['logo'] != '' && !is_user_logged_in()){ ?>
10
  <div class="text-center wpdmlogin-logo">
11
  <a href="<?php echo home_url('/'); ?>"><img alt="Logo" src="<?php echo $params['logo'];?>" /></a>
27
  </div>
28
 
29
  <?php endif; ?>
 
 
 
 
30
 
 
 
31
 
32
+ <?php do_action("wpdm_before_login_form"); ?>
33
 
34
 
35
+ <form name="loginform" id="loginform" action="" method="post" class="login-form" >
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
36
 
37
+ <input type="hidden" name="permalink" value="<?php the_permalink(); ?>" />
38
 
39
+ <?php global $wp_query; if(\WPDM\Session::get('login_error')) { ?>
40
+ <div class="error alert alert-danger" >
41
+ <b><?php _e( "Login Failed!" , "download-manager" ); ?></b><br/>
42
+ <?php echo preg_replace("/<a.*?<\/a>\?/i","",\WPDM\Session::get('login_error')); \WPDM\Session::clear('login_error'); ?>
43
+ </div>
44
+ <?php } ?>
45
 
46
+ <?php if(isset($params['note_before'])) { ?>
47
+ <div class="alert alert-info alert-note-before mb-3" >
48
+ <?php echo $params['note_before']; ?>
49
+ </div>
50
+ <?php } ?>
51
 
52
+ <div class="form-group">
53
+ <div class="input-group input-group-lg">
54
+ <span class="input-group-addon" id="sizing-addon1"><i class="fa fa-user"></i></span>
55
+ <input placeholder="<?php _e( "Username or Email" , "download-manager" ); ?>" type="text" name="wpdm_login[log]" id="user_login" class="form-control input-lg required text" value="" size="20" tabindex="38" />
56
+ </div>
57
+ </div>
58
+ <div class="form-group">
59
+ <div class="input-group input-group-lg">
60
+ <span class="input-group-addon" id="sizing-addon1"><i class="fa fa-key"></i></span>
61
+ <input type="password" placeholder="<?php _e( "Password" , "download-manager" ); ?>" name="wpdm_login[pwd]" id="user_pass" class="form-control input-lg required password" value="" size="20" tabindex="39" />
62
+ </div>
63
+ </div>
64
 
65
+ <?php if((int)get_option('__wpdm_recaptcha_loginform', 0) === 1 && get_option('_wpdm_recaptcha_site_key') != ''){ ?>
66
+ <div class="form-group">
67
+ <input type="hidden" id="__recap" name="__recap" value="" />
68
+ <script src="https://www.google.com/recaptcha/api.js?onload=onloadCallback&render=explicit" async defer></script>
69
+ <div id="reCaptchaLock"></div>
70
+ <script type="text/javascript">
71
+ var verifyCallback = function(response) {
72
+ jQuery('#__recap').val(response);
73
+ };
74
+ var widgetId2;
75
+ var onloadCallback = function() {
76
+ grecaptcha.render('reCaptchaLock', {
77
+ 'sitekey' : '<?php echo get_option('_wpdm_recaptcha_site_key'); ?>',
78
+ 'callback' : verifyCallback,
79
+ 'theme' : 'light'
80
  });
81
+ };
82
+ </script>
83
+ </div>
84
+ <style> #reCaptchaLock iframe { transform: scaleX(1.23); margin-left: 33px; } </style>
85
+ <?php } ?>
 
 
 
 
 
 
86
 
87
+ <?php if(isset($params['note_after'])) { ?>
88
+ <div class="alert alert-info alter-note-after mb-3" >
89
+ <?php echo $params['note_after']; ?>
90
+ </div>
91
+ <?php } ?>
92
 
93
+ <?php do_action("wpdm_login_form"); ?>
94
+ <?php do_action("login_form"); ?>
 
 
 
 
 
 
 
 
 
95
 
96
+ <div class="row login-form-meta-text text-muted" style="margin-bottom: 10px">
97
+ <div class="col-md-5"><label><input class="wpdm-checkbox" name="rememberme" type="checkbox" id="rememberme" value="forever" /><?php _e( "Remember Me" , "download-manager" ); ?></label></div>
98
+ <div class="col-md-7 text-right"><label><a class="color-blue" href="<?php echo wpdm_lostpassword_url(); ?>"><?php _e( "Forgot Password?" , "download-manager" ); ?></a>&nbsp;</label></div>
99
+ </div>
100
+ <div class="row">
101
+ <div class="col-md-12"><button type="submit" name="wp-submit" id="loginform-submit" class="btn btn-block btn-primary btn-lg"><i class="fas fa-user-shield"></i> &nbsp;<?php _e( "Login" , "download-manager" ); ?></button></div>
102
+ <div class="col-md-12">
103
+ <?php if(is_array($__wpdm_social_login) && count($__wpdm_social_login) > 1) { ?>
104
+ <div class="text-center panel panel-default" style="margin: 20px 0 0 0">
105
+ <div class="panel-heading"><?php _e("Or connect using your social account", "download-manager") ?></div>
106
+ <div class="panel-body">
107
+ <?php if(isset($__wpdm_social_login['facebook'])){ ?><button type="button" onclick="return _PopupCenter('<?php echo home_url('/?sociallogin=facebook'); ?>', 'Facebook', 400,400);" class="btn btn-social wpdm-facebook wpdm-facebook-connect"><i class="fab fa-facebook-f"></i></button><?php } ?>
108
+ <?php if(isset($__wpdm_social_login['twitter'])){ ?><button type="button" onclick="return _PopupCenter('<?php echo home_url('/?sociallogin=twitter'); ?>', 'Twitter', 400,400);" class="btn btn-social wpdm-twitter wpdm-linkedin-connect"><i class="fab fa-twitter"></i></button><?php } ?>
109
+ <?php if(isset($__wpdm_social_login['linkedin'])){ ?><button type="button" onclick="return _PopupCenter('<?php echo home_url('/?sociallogin=linkedin'); ?>', 'LinkedIn', 400,400);" class="btn btn-social wpdm-linkedin wpdm-twitter-connect"><i class="fab fa-linkedin-in"></i></button><?php } ?>
110
+ <?php if(isset($__wpdm_social_login['google'])){ ?><button type="button" onclick="return _PopupCenter('<?php echo home_url('/?sociallogin=google'); ?>', 'Google', 400,400);" class="btn btn-social wpdm-google-plus wpdm-google-connect"><i class="fab fa-google"></i></button><?php } ?>
111
+ </div>
112
  </div>
113
+ <?php } ?>
114
+ </div>
115
+ <?php if($regurl != ''){ ?>
116
+ <div class="col-md-12"><br/><a href="<?php echo $regurl; ?>" name="wp-submit" id="loginform-submit" class="btn btn-block btn-link btn-xs wpdm-reg-link color-primary"><?php _e( "Don't have an account yet?" , "download-manager" ); ?> <i class="fas fa-user-plus"></i> <?php _e( "Register Now" , "download-manager" ); ?></a></div>
117
+ <?php } ?>
118
+ </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
119
 
 
 
120
 
121
+ <input type="hidden" name="redirect_to" value="<?php echo $log_redirect; ?>" />
122
 
123
 
 
124
 
125
+ </form>
 
 
126
 
127
+ <?php do_action("wpdm_after_login_form"); ?>
128
 
 
129
  </div>
 
 
130
  </div>
131
+
132
+ <script>
133
+ jQuery(function ($) {
134
+ var llbl = $('#loginform-submit').html();
135
+ $('#loginform').submit(function () {
136
+ $('#loginform-submit').html("<i class='fa fa-spin fa-sync'></i> <?php _e( "Logging In..." , "download-manager" ); ?>");
137
+ $(this).ajaxSubmit({
138
+ success: function (res) {
139
+ if (!res.success) {
140
+ $('form .alert-danger').hide();
141
+ $('#loginform').prepend("<div class='alert alert-danger' data-title='<?php _e( "LOGIN FAILED!" , "download-manager" ); ?>'>"+res.message+"</div>");
142
+ $('#loginform-submit').html(llbl);
143
+ <?php if((int)get_option('__wpdm_recaptcha_loginform', 0) === 1 && get_option('_wpdm_recaptcha_site_key') != ''){ ?>
144
+ grecaptcha.reset();
145
+ <?php } ?>
146
+ } else {
147
+ $('#loginform-submit').html(wpdm_asset.spinner+" "+res.message);
148
+ location.href = "<?php echo $log_redirect; ?>";
149
+ }
150
+ }
151
+ });
152
+ return false;
153
+ });
154
+
155
+ $('body').on('click', 'form .alert-danger', function(){
156
+ $(this).slideUp();
157
+ });
158
+
159
+ });
160
+ </script>
tpls/wpdm-reg-form.php CHANGED
@@ -1,114 +1,142 @@
1
- <?php if(!defined('ABSPATH')) die('!'); ?>
2
 
3
  <div class="w3eden">
4
  <div class='w3eden' id='wpdmreg'>
5
  <?php
6
- if(!is_array($params)) $params = array();
7
-
8
- $loginurl = wpdm_login_url();
9
- $reg_redirect = $loginurl;
10
- if(isset($params['autologin']) && $params['autologin'] == 'true') $reg_redirect = wpdm_user_dashboard_url();
11
- if(isset($params['redirect'])) $reg_redirect = esc_url($params['redirect']);
12
- if(isset($_GET['redirect_to'])) $reg_redirect = esc_url($_GET['redirect_to']);
13
- $force = uniqid();
14
-
15
- $up = parse_url($reg_redirect);
16
- if(isset($up['host']) && $up['host'] != $_SERVER['SERVER_NAME']) $reg_redirect = home_url('/');
17
-
18
- $reg_redirect = esc_attr(esc_url($reg_redirect));
19
-
20
- $tmp_reg_info = \WPDM\Session::get('tmp_reg_info');
21
-
22
- if(!isset($params['logo'])) $params['logo'] = get_site_icon_url();
23
-
24
- if(get_option('users_can_register')){
25
  ?>
26
- <?php if(isset($params['logo']) && $params['logo'] != '' && !isset($nologo)){ ?>
 
 
 
27
  <div class="text-center wpdmlogin-logo">
28
- <a href="<?php echo home_url('/'); ?>"><img alt="Logo" src="<?php echo $params['logo'];?>" /></a>
29
  </div>
30
- <?php } ?>
 
31
  <form method="post" action="" id="registerform" name="registerform" class="login-form">
32
 
33
- <input type="hidden" name="phash" value="<?php echo isset($regparams)?$regparams:''; ?>" />
34
- <input type="hidden" id="__reg_nonce" name="__reg_nonce" value="" />
35
- <input type="hidden" name="permalink" value="<?php echo $loginurl; ?>" />
36
- <!-- div class="panel panel-primary">
37
- <div class="panel-heading"><b>Register</b></div>
38
- <div class="panel-body" -->
39
- <?php global $wp_query; if(\WPDM\Session::get('reg_error')!='') { ?>
40
- <div class="error alert alert-danger" data-title="<?php _e( "REGISTRATION FAILED!" , "download-manager" ); ?>">
41
- <?php echo \WPDM\Session::get('reg_error'); \WPDM\Session::clear('reg_error'); ?>
 
 
 
 
 
 
 
42
  </div>
43
- <?php } if(!isset($params['social_only']) || $params['social_only'] == 0){ ?>
 
44
 
45
  <div class="form-group row">
46
  <div class="col-sm-7">
47
  <div class="input-group input-group-lg">
48
- <span class="input-group-addon" ><i class="fa fa-male"></i></span>
49
- <input class="form-control input-lg" required="required" placeholder="<?php _e( "First Name" , "download-manager" ); ?>" type="text" size="20" id="first_name" value="<?php echo isset($tmp_reg_info['first_name'])?$tmp_reg_info['first_name']:''; ?>" name="wpdm_reg[first_name]">
 
 
 
 
50
  </div>
51
  </div>
52
  <div class="col-sm-5" style="padding-left: 0">
53
- <input class="form-control input-lg" required="required" placeholder="<?php _e( "Last Name" , "download-manager" ); ?>" type="text" size="20" id="last_name" value="<?php echo isset($tmp_reg_info['last_name'])?$tmp_reg_info['last_name']:''; ?>" name="wpdm_reg[last_name]">
 
 
 
 
54
  </div>
55
  </div>
56
  <div class="form-group">
57
  <div class="input-group input-group-lg">
58
- <span class="input-group-addon" ><i class="fa fa-user"></i></span>
59
- <input class="form-control" required="required" placeholder="<?php _e( "Username" , "download-manager" ); ?>" type="text" size="20" class="required" id="user_login" value="<?php echo isset($tmp_reg_info['user_login'])?$tmp_reg_info['user_login']:''; ?>" name="wpdm_reg[user_login]">
 
 
 
 
60
  </div>
61
  </div>
62
  <div class="form-group">
63
 
64
  <div class="input-group input-group-lg">
65
- <span class="input-group-addon" ><i class="fa fa-envelope"></i></span>
66
- <input class="form-control input-lg" required="required" type="email" size="25" placeholder="<?php _e( "E-mail" , "download-manager" ); ?>" id="user_email" value="<?php echo isset($tmp_reg_info['user_email'])?$tmp_reg_info['user_email']:''; ?>" name="wpdm_reg[user_email]">
 
 
 
67
  </div>
68
  <div class="human">
69
- <input type="text" placeholder="Retype Email" name="user_email_confirm" id="user_email_confirm" class="form-control input-lg">
 
70
  </div>
71
 
72
  </div>
73
 
74
- <?php if(!isset($params['verifyemail']) || $params['verifyemail'] == 'false'){ ?>
75
  <div class="form-group row">
76
  <div class="col-sm-6">
77
  <div class="input-group input-group-lg">
78
- <span class="input-group-addon" ><i class="fa fa-key"></i></span>
79
- <input class="form-control" placeholder="<?php _e( "Password" , "download-manager" ); ?>" required="required" type="password" size="20" class="required" id="password" value="" name="wpdm_reg[user_pass]">
 
 
 
80
  </div>
81
  </div>
82
  <div class="col-sm-6" style="padding-left: 0">
83
- <input class="form-control input-lg" data-match="#password" data-match-error="<?php _e( "Not Matched!" , "download-manager" ); ?>" required="required" placeholder="<?php _e( "Confirm Password" , "download-manager" ); ?>" type="password" size="20" class="required" equalto="#password" id="confirm_user_pass" value="" name="confirm_user_pass">
 
 
 
 
 
84
  </div>
85
  </div>
86
  <?php } ?>
87
 
88
- <?php /* if(!isset($params['captcha']) || $params['captcha'] == 'true' || 1){ ?>
89
- <div class="form-group row">
90
- <div class="col-sm-12">
91
-
92
- <div id="reCaptchaLock"></div>
93
- <!-- script type="text/javascript">
94
- var ctz = new Date().getMilliseconds();
95
- var siteurl = "<?php echo home_url('/?__wpdmnocache='); ?>"+ctz,force="<?php echo $force; ?>";
96
- var verifyCallback = function(response) {
97
- jQuery('#recap').val(response);
 
 
98
  };
99
- var widgetId2;
100
- var onloadCallback = function() {
101
- grecaptcha.render('reCaptchaLock', {
102
- 'sitekey' : '<?php echo get_option('_wpdm_recaptcha_site_key'); ?>',
103
- 'callback' : verifyCallback,
104
- 'theme' : 'light'
105
- });
106
- };
107
- </script -->
108
- </div>
109
 
110
- </div>
111
- <?php } */ ?>
 
 
 
 
 
 
 
 
112
 
113
 
114
  <?php do_action("wpdm_register_form"); ?>
@@ -116,46 +144,70 @@
116
 
117
  <?php } ?>
118
  <div class="row">
119
- <?php if(!isset($params['social_only']) || $params['social_only'] == 0){ ?>
120
  <div class="col-sm-12">
121
- <button type="submit" class="btn btn-success btn-lg btn-block" id="registerform-submit" name="wp-submit"><i class="fas fa-user-plus"></i> &nbsp;<?php _e( "Join Now!" , "download-manager" ); ?></button>
 
 
122
  </div>
123
  <?php } ?>
124
 
125
- <?php if($loginurl != ''){ ?>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
126
  <div class="col-sm-12">
127
  <br/>
128
- <a href="<?php echo $loginurl;?>" class="btn btn-link btn-xs btn-block wpdm-login-link color-success" id="registerform-login" name="wp-submit"><?php _e("Already have an account?", "download-manager"); ?> <i class="fa fa-lock"></i> <?php _e( "Login" , "download-manager" ); ?></a>
 
 
 
 
129
  </div>
130
  <?php } ?>
 
131
  </div>
132
 
133
 
134
- <!-- /div>
135
- </div -->
136
  </form>
137
 
138
 
139
  <script>
140
  jQuery(function ($) {
141
  $('#__reg_nonce').val('<?php echo wp_create_nonce(NONCE_KEY); ?>');
142
- $.getScript('<?php echo WPDM_BASE_URL.'assets/js/validator.min.js'; ?>', function () {
143
  $('#registerform').validator();
144
  });
145
  var llbl = $('#registerform-submit').html();
146
  $('#registerform').submit(function () {
147
  <?php if(!isset($params['captcha']) || $params['captcha'] == 'true'){ ?>
148
- if($('#recap').val() == '') { alert("Invalid CAPTCHA!"); return false;}
 
 
 
 
149
  <?php } ?>
150
- $('#registerform-submit').html("<i class='fa fa-spin fa-spinner'></i> <?php _e( "Please Wait..." , "download-manager" ); ?>");
151
  $(this).ajaxSubmit({
152
  success: function (res) {
153
  if (res.success == false) {
154
  $('form .alert-danger').hide();
155
- $('#registerform').prepend("<div class='alert alert-danger'>"+res.message+"</div>");
156
  $('#registerform-submit').html(llbl);
157
  } else {
158
- $('#registerform-submit').html("<i class='fa fa-check-circle'></i> <?php _e( "Success! Redirecting..." , "download-manager" ); ?>");
159
  location.href = "<?php echo $reg_redirect; ?>";
160
  }
161
  }
@@ -164,7 +216,13 @@
164
  });
165
  });
166
  </script>
167
-
168
- <?php } else echo "<div class='alert alert-warning'>". __( "Registration is disabled!" , "download-manager" )."</div>"; ?>
 
 
 
 
 
 
169
  </div>
170
  </div>
1
+ <?php if (!defined('ABSPATH')) die('!'); ?>
2
 
3
  <div class="w3eden">
4
  <div class='w3eden' id='wpdmreg'>
5
  <?php
6
+ if (get_option('users_can_register')) {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7
  ?>
8
+
9
+ <?php
10
+ //LOGO
11
+ if (isset($params['logo']) && $params['logo'] != '' && !isset($nologo)){ ?>
12
  <div class="text-center wpdmlogin-logo">
13
+ <a href="<?php echo home_url('/'); ?>"><img alt="Logo" src="<?php echo $params['logo']; ?>"/></a>
14
  </div>
15
+ <?php } ?>
16
+
17
  <form method="post" action="" id="registerform" name="registerform" class="login-form">
18
 
19
+ <input type="hidden" name="phash" value="<?php echo isset($regparams) ? $regparams : ''; ?>"/>
20
+ <input type="hidden" id="__reg_nonce" name="__reg_nonce" value=""/>
21
+ <input type="hidden" name="permalink" value="<?php echo $loginurl; ?>"/>
22
+
23
+ <?php if (isset($params['note_before']) && trim($params['note_before']) != '') { ?>
24
+ <div class="alert alert-info alert-note-before mb-3">
25
+ <?php echo $params['note_before']; ?>
26
+ </div>
27
+ <?php } ?>
28
+
29
+ <?php global $wp_query;
30
+ if (\WPDM\Session::get('reg_error') != '') { ?>
31
+ <div class="error alert alert-danger"
32
+ data-title="<?php _e("REGISTRATION FAILED!", "download-manager"); ?>">
33
+ <?php echo \WPDM\Session::get('reg_error');
34
+ \WPDM\Session::clear('reg_error'); ?>
35
  </div>
36
+ <?php }
37
+ if (!isset($params['social_only']) || (int)$params['social_only'] !== 1) { ?>
38
 
39
  <div class="form-group row">
40
  <div class="col-sm-7">
41
  <div class="input-group input-group-lg">
42
+ <span class="input-group-addon"><i class="fa fa-male"></i></span>
43
+ <input class="form-control input-lg" required="required"
44
+ placeholder="<?php _e("First Name", "download-manager"); ?>" type="text"
45
+ size="20" id="first_name"
46
+ value="<?php echo isset($tmp_reg_info['first_name']) ? $tmp_reg_info['first_name'] : ''; ?>"
47
+ name="wpdm_reg[first_name]">
48
  </div>
49
  </div>
50
  <div class="col-sm-5" style="padding-left: 0">
51
+ <input class="form-control input-lg" required="required"
52
+ placeholder="<?php _e("Last Name", "download-manager"); ?>" type="text" size="20"
53
+ id="last_name"
54
+ value="<?php echo isset($tmp_reg_info['last_name']) ? $tmp_reg_info['last_name'] : ''; ?>"
55
+ name="wpdm_reg[last_name]">
56
  </div>
57
  </div>
58
  <div class="form-group">
59
  <div class="input-group input-group-lg">
60
+ <span class="input-group-addon"><i class="fa fa-user"></i></span>
61
+ <input class="form-control" required="required"
62
+ placeholder="<?php _e("Username", "download-manager"); ?>" type="text" size="20"
63
+ class="required" id="user_login"
64
+ value="<?php echo isset($tmp_reg_info['user_login']) ? $tmp_reg_info['user_login'] : ''; ?>"
65
+ name="wpdm_reg[user_login]">
66
  </div>
67
  </div>
68
  <div class="form-group">
69
 
70
  <div class="input-group input-group-lg">
71
+ <span class="input-group-addon"><i class="fa fa-envelope"></i></span>
72
+ <input class="form-control input-lg" required="required" type="email" size="25"
73
+ placeholder="<?php _e("E-mail", "download-manager"); ?>" id="user_email"
74
+ value="<?php echo isset($tmp_reg_info['user_email']) ? $tmp_reg_info['user_email'] : ''; ?>"
75
+ name="wpdm_reg[user_email]">
76
  </div>
77
  <div class="human">
78
+ <input type="text" placeholder="Retype Email" name="user_email_confirm"
79
+ id="user_email_confirm" class="form-control input-lg">
80
  </div>
81
 
82
  </div>
83
 
84
+ <?php if (!isset($params['verifyemail']) || (int)$params['verifyemail'] !== 1) { ?>
85
  <div class="form-group row">
86
  <div class="col-sm-6">
87
  <div class="input-group input-group-lg">
88
+ <span class="input-group-addon"><i class="fa fa-key"></i></span>
89
+ <input class="form-control"
90
+ placeholder="<?php _e("Password", "download-manager"); ?>"
91
+ required="required" type="password" size="20" class="required" id="password"
92
+ value="" name="wpdm_reg[user_pass]">
93
  </div>
94
  </div>
95
  <div class="col-sm-6" style="padding-left: 0">
96
+ <input class="form-control input-lg" data-match="#password"
97
+ data-match-error="<?php _e("Not Matched!", "download-manager"); ?>"
98
+ required="required"
99
+ placeholder="<?php _e("Confirm Password", "download-manager"); ?>"
100
+ type="password" size="20" class="required" equalto="#password"
101
+ id="confirm_user_pass" value="" name="confirm_user_pass">
102
  </div>
103
  </div>
104
  <?php } ?>
105
 
106
+ <?php
107
+ //Captcha Code
108
+ if ((int)get_option('__wpdm_recaptcha_regform', 0) === 1 && get_option('_wpdm_recaptcha_site_key') != '') { ?>
109
+ <div class="form-group row">
110
+ <div class="col-sm-12">
111
+ <input type="hidden" id="__recap" name="__recap" value=""/>
112
+ <script src="https://www.google.com/recaptcha/api.js?onload=onloadCallback&render=explicit"
113
+ async defer></script>
114
+ <div id="reCaptchaLock"></div>
115
+ <script type="text/javascript">
116
+ var verifyCallback = function (response) {
117
+ jQuery('#__recap').val(response);
118
  };
119
+ var widgetId2;
120
+ var onloadCallback = function () {
121
+ grecaptcha.render('reCaptchaLock', {
122
+ 'sitekey': '<?php echo get_option('_wpdm_recaptcha_site_key'); ?>',
123
+ 'callback': verifyCallback,
124
+ 'theme': 'light'
125
+ });
126
+ };
127
+ </script>
128
+ </div>
129
 
130
+ </div>
131
+ <?php }
132
+ //Captcha Code Ends
133
+ ?>
134
+
135
+ <?php if (isset($params['note_after']) && trim($params['note_after']) != '') { ?>
136
+ <div class="alert alert-info alter-note-after mb-3">
137
+ <?php echo $params['note_after']; ?>
138
+ </div>
139
+ <?php } ?>
140
 
141
 
142
  <?php do_action("wpdm_register_form"); ?>
144
 
145
  <?php } ?>
146
  <div class="row">
147
+ <?php if (!isset($params['social_only']) || (int)$params['social_only'] !== 1) { ?>
148
  <div class="col-sm-12">
149
+ <button type="submit" class="btn btn-success btn-lg btn-block" id="registerform-submit"
150
+ name="wp-submit"><i class="fas fa-user-plus"></i>
151
+ &nbsp;<?php _e("Join Now!", "download-manager"); ?></button>
152
  </div>
153
  <?php } ?>
154
 
155
+ <?php
156
+ if (count($__wpdm_social_login) > 1) { ?>
157
+ <div class="col-sm-12">
158
+ <div class="text-center panel panel-default" style="margin: 20px 0 0 0">
159
+ <div class="panel-heading"><?php echo isset($params['social_title']) ? $params['social_title'] : __("Or connect using your social account", "download-manager"); ?></div>
160
+ <div class="panel-body">
161
+ <?php if (isset($__wpdm_social_login['facebook'])) { ?><button type="button" onclick="return _PopupCenter('<?php echo home_url('/?sociallogin=facebook'); ?>', 'Facebook', 400,400);" class="btn btn-social wpdm-facebook wpdm-facebook-connect"><i class="fab fa-facebook-f"></i></button><?php } ?>
162
+ <?php if (isset($__wpdm_social_login['twitter'])) { ?><button type="button" onclick="return _PopupCenter('<?php echo home_url('/?sociallogin=twitter'); ?>', 'Twitter', 400,400);" class="btn btn-social wpdm-twitter wpdm-linkedin-connect"><i class="fab fa-twitter"></i></button><?php } ?>
163
+ <?php if (isset($__wpdm_social_login['linkedin'])) { ?><button type="button" onclick="return _PopupCenter('<?php echo home_url('/?sociallogin=linkedin'); ?>', 'LinkedIn', 400,400);" class="btn btn-social wpdm-linkedin wpdm-twitter-connect"><i class="fab fa-linkedin-in"></i></button><?php } ?>
164
+ <?php if (isset($__wpdm_social_login['google'])) { ?><button type="button" onclick="return _PopupCenter('<?php echo home_url('/?sociallogin=google'); ?>', 'Google', 400,400);" class="btn btn-social wpdm-google-plus wpdm-google-connect"><i class="fab fa-google"></i></button><?php } ?>
165
+ </div>
166
+ </div>
167
+ </div>
168
+ <?php } ?>
169
+
170
+ <?php if ($loginurl != '') { ?>
171
  <div class="col-sm-12">
172
  <br/>
173
+ <a href="<?php echo $loginurl; ?>"
174
+ class="btn btn-link btn-xs btn-block wpdm-login-link color-success"
175
+ id="registerform-login"
176
+ name="wp-submit"><?php _e("Already have an account?", "download-manager"); ?> <i
177
+ class="fa fa-lock"></i> <?php _e("Login", "download-manager"); ?></a>
178
  </div>
179
  <?php } ?>
180
+
181
  </div>
182
 
183
 
 
 
184
  </form>
185
 
186
 
187
  <script>
188
  jQuery(function ($) {
189
  $('#__reg_nonce').val('<?php echo wp_create_nonce(NONCE_KEY); ?>');
190
+ $.getScript('<?php echo WPDM_BASE_URL . 'assets/js/validator.min.js'; ?>', function () {
191
  $('#registerform').validator();
192
  });
193
  var llbl = $('#registerform-submit').html();
194
  $('#registerform').submit(function () {
195
  <?php if(!isset($params['captcha']) || $params['captcha'] == 'true'){ ?>
196
+ if ($('#__recap').val() == '') {
197
+ WPDM.beep();
198
+ WPDM.notify("Invalid CAPTCHA!", 'error');
199
+ return false;
200
+ }
201
  <?php } ?>
202
+ $('#registerform-submit').html("<i class='fa fa-spin fa-spinner'></i> <?php _e("Please Wait...", "download-manager"); ?>");
203
  $(this).ajaxSubmit({
204
  success: function (res) {
205
  if (res.success == false) {
206
  $('form .alert-danger').hide();
207
+ $('#registerform').prepend("<div class='alert alert-danger'>" + res.message + "</div>");
208
  $('#registerform-submit').html(llbl);
209
  } else {
210
+ $('#registerform-submit').html("<i class='fa fa-check-circle'></i> <?php _e("Success! Redirecting...", "download-manager"); ?>");
211
  location.href = "<?php echo $reg_redirect; ?>";
212
  }
213
  }
216
  });
217
  });
218
  </script>
219
+ <style>
220
+ #reCaptchaLock iframe {
221
+ transform: scaleX(1.22);
222
+ margin-left: 33px;
223
+ }
224
+ </style>
225
+
226
+ <?php } else echo "<div class='alert alert-warning'>" . __("Registration is disabled!", "download-manager") . "</div>"; ?>
227
  </div>
228
  </div>
wpdm-core.php CHANGED
@@ -9,6 +9,11 @@ if (!defined('ABSPATH')) die();
9
  global $stabs, $package, $wpdm_package;
10
 
11
 
 
 
 
 
 
12
 
13
  /**
14
  * @param $tablink
9
  global $stabs, $package, $wpdm_package;
10
 
11
 
12
+ function WPDM(){
13
+ global $WPDM;
14
+ return $WPDM;
15
+ }
16
+
17
 
18
  /**
19
  * @param $tablink
wpdm-functions.php CHANGED
@@ -458,13 +458,15 @@ function wpdm_package_size($id){
458
  */
459
  function wpdm_file_size($file){
460
  if(file_exists($file))
461
- $size = filesize($file);
462
  else if(file_exists(UPLOAD_DIR.$file))
463
- $size = filesize(UPLOAD_DIR.$file);
464
- else $size = 0;
465
- $size = $size / 1024;
466
  if ($size > 1024) $size = number_format($size / 1024, 2) . ' MB';
467
  else $size = number_format($size, 2) . ' KB';
 
 
468
  return $size;
469
  }
470
 
@@ -482,6 +484,41 @@ function wpdm_package_filetypes($id, $img = true){
482
 
483
  }
484
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
485
 
486
  /**
487
  * @usage Validate and sanitize input data
@@ -502,105 +539,27 @@ function wpdm_query_var($var, $params = array())
502
  $validate = is_string($params) ? $params : '';
503
  $validate = is_array($params) && isset($params['validate']) ? $params['validate'] : $validate;
504
 
505
- if(is_array($val)){
506
- foreach ($val as $key => &$value){
507
- $vld = is_array($validate) && isset($validate[$key]) ? $validate[$key] : $validate;
508
- switch ($vld) {
509
- case 'int':
510
- case 'num':
511
- $value = (int)($value);
512
- break;
513
- case 'double':
514
- case 'float':
515
- $value = (double)($value);
516
- break;
517
- case 'txt':
518
- $value = sanitize_text_field($value);
519
- break;
520
- case 'txts':
521
- $value = sanitize_textarea_field($value);
522
- break;
523
- case 'url':
524
- $value = esc_url($value);
525
- break;
526
- case 'noscript':
527
- case 'escs':
528
- $value = wpdm_escs($value);
529
- break;
530
- case 'html':
531
-
532
- break;
533
- default:
534
- $value = esc_sql(esc_attr($value));
535
- break;
536
- }
537
- }
538
- return $val;
539
- }
540
-
541
- switch ($validate) {
542
- case 'int':
543
- case 'num':
544
- $val = (int)($val);
545
- break;
546
- case 'double':
547
- case 'float':
548
- $val = (double)($val);
549
- break;
550
- case 'txt':
551
- $val = sanitize_text_field($val);
552
- break;
553
- case 'txts':
554
- $val = sanitize_textarea_field($val);
555
- break;
556
- case 'url':
557
- $val = esc_url($val);
558
- break;
559
- case 'noscript':
560
- case 'escs':
561
- $val = wpdm_escs($val);
562
- break;
563
- case 'html':
564
-
565
- break;
566
- default:
567
- $val = esc_sql(esc_attr($val));
568
- break;
569
- }
570
 
571
  return $val;
572
  }
573
 
574
-
575
- /**
576
- * @usage Escape script tag
577
- * @param $html
578
- * @return null|string|string[]
579
- */
580
- function wpdm_escs($html){
581
- $html = preg_replace('#<script(.*?)>(.*?)</script>#is', '', $html);
582
- $html = stripslashes_deep($html);
583
- return $html;
584
- }
585
-
586
  /**
587
  * Sanitize an array or any single value
588
  * @param $array
589
  * @return mixed
590
  */
591
- function wpdm_sanitize_array($array, $kses = true){
592
- $allowed_html = wp_kses_allowed_html();
593
- if(!is_array($array)) {
594
- $array = strstr($array, "\n") || $kses?wp_kses($array, $allowed_html):esc_attr($array);
595
- $array = wpdm_escs($array);
596
- return $array;
597
- }
598
  foreach ($array as $key => &$value){
 
599
  if(is_array($value))
600
- wpdm_sanitize_array($value, $kses);
601
  else {
602
- $value = strstr($value, "\n") || $kses?wp_kses($value, $allowed_html):esc_attr($value);
603
- $value = wpdm_escs($value);
604
  }
605
  $array[$key] = &$value;
606
  }
@@ -614,15 +573,16 @@ function wpdm_sanitize_array($array, $kses = true){
614
  */
615
  function wpdm_sanitize_var($value, $sanitize = 'kses'){
616
  if(is_array($value))
617
- return wpdm_sanitize_array($value);
618
  else {
619
  switch ($sanitize){
620
  case 'int':
621
- $value = (int)$value;
 
622
  break;
623
  case 'double':
624
  case 'float':
625
- $value = (double)($value);
626
  break;
627
  case 'txt':
628
  $value = esc_attr($value);
@@ -632,6 +592,27 @@ function wpdm_sanitize_var($value, $sanitize = 'kses'){
632
  break;
633
  case 'serverpath':
634
  $value = realpath($value);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
635
  break;
636
  }
637
  $value = wpdm_escs($value);
@@ -641,6 +622,7 @@ function wpdm_sanitize_var($value, $sanitize = 'kses'){
641
 
642
 
643
 
 
644
  function wpdm_category($params)
645
  {
646
  $params['order_field'] = isset($params['order_by'])?$params['order_by']:'publish_date';
@@ -1241,7 +1223,7 @@ function wpdm_array_splice_assoc(&$input, $offset, $length, $replacement) {
1241
  * WPDM add-on installer
1242
  */
1243
  function wpdm_install_addon(){
1244
- if(isset($_REQUEST['addon']) && current_user_can(WPDM_ADMIN_CAP) && wp_verify_nonce($_REQUEST['__wpdmpinn'], $_REQUEST['addon'].NONCE_KEY)){
1245
  include_once( ABSPATH . 'wp-admin/includes/plugin.php' );
1246
  include_once ABSPATH . 'wp-admin/includes/class-wp-upgrader.php';
1247
  include_once ABSPATH . 'wp-admin/includes/plugin-install.php';
@@ -1534,14 +1516,7 @@ function wpdm_admin_notices() {
1534
  * @usage Show Login Form
1535
  */
1536
  function wpdm_login_form($params = array()){
1537
- if(is_array($params))
1538
- extract($params);
1539
- if(!isset($redirect)) $redirect = get_permalink(get_option('__wpdm_user_dashboard'));
1540
- ob_start();
1541
- //echo "<div class='w3eden'>";
1542
- include(WPDM_BASE_DIR . 'tpls/wpdm-be-member.php');
1543
- //echo "</div>";
1544
- return ob_get_clean();
1545
  }
1546
 
1547
  function wpdm_user_dashboard_url(){
458
  */
459
  function wpdm_file_size($file){
460
  if(file_exists($file))
461
+ $_size = filesize($file);
462
  else if(file_exists(UPLOAD_DIR.$file))
463
+ $_size = filesize(UPLOAD_DIR.$file);
464
+ else $_size = 0;
465
+ $size = $_size / 1024;
466
  if ($size > 1024) $size = number_format($size / 1024, 2) . ' MB';
467
  else $size = number_format($size, 2) . ' KB';
468
+ if($size === '0.00 KB')
469
+ $size = $_size." bytes";
470
  return $size;
471
  }
472
 
484
 
485
  }
486
 
487
+ /**
488
+ * Get post excerpt
489
+ * @param $post
490
+ * @param int $length
491
+ * @param bool $word_break
492
+ * @param string $continue
493
+ * @return string
494
+ */
495
+ function wpdm_get_excerpt($post, $length = 100, $word_break = false, $continue = "..."){
496
+ $post = is_object($post) ? $post : get_post($post);
497
+ if(!is_object($post)) return '';
498
+ $excerpt = get_the_excerpt($post);
499
+ if(!$excerpt) $excerpt = $post->post_content;
500
+ $excerpt = strip_tags($excerpt);
501
+ $excerpt = substr(trim($excerpt), 0, $length);
502
+ if(!$word_break) {
503
+ $excerpt = explode(" ", $excerpt);
504
+ array_pop($excerpt);
505
+ $excerpt = implode(" ", $excerpt);
506
+ }
507
+ return $excerpt.$continue;
508
+ }
509
+
510
+
511
+ /**
512
+ * @usage Escape script tag
513
+ * @param $html
514
+ * @return null|string|string[]
515
+ */
516
+ function wpdm_escs($html){
517
+ $html = preg_replace('#<script(.*?)>(.*?)</script>#is', '', $html);
518
+ $html = stripslashes_deep($html);
519
+ return $html;
520
+ }
521
+
522
 
523
  /**
524
  * @usage Validate and sanitize input data
539
  $validate = is_string($params) ? $params : '';
540
  $validate = is_array($params) && isset($params['validate']) ? $params['validate'] : $validate;
541
 
542
+ if(!is_array($val))
543
+ $val = wpdm_sanitize_var($val, $validate);
544
+ else
545
+ $val = wpdm_sanitize_array($val, $validate);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
546
 
547
  return $val;
548
  }
549
 
 
 
 
 
 
 
 
 
 
 
 
 
550
  /**
551
  * Sanitize an array or any single value
552
  * @param $array
553
  * @return mixed
554
  */
555
+ function wpdm_sanitize_array($array, $sanitize = 'kses'){
556
+ if(!is_array($array)) return esc_attr($array);
 
 
 
 
 
557
  foreach ($array as $key => &$value){
558
+ $validate = is_array($sanitize) && isset($sanitize[$key]) ? $sanitize[$key] : $sanitize;
559
  if(is_array($value))
560
+ wpdm_sanitize_array($value, $validate);
561
  else {
562
+ $value = wpdm_sanitize_var($value, $validate);
 
563
  }
564
  $array[$key] = &$value;
565
  }
573
  */
574
  function wpdm_sanitize_var($value, $sanitize = 'kses'){
575
  if(is_array($value))
576
+ return wpdm_sanitize_array($value, $sanitize);
577
  else {
578
  switch ($sanitize){
579
  case 'int':
580
+ case 'num':
581
+ return (int)$value;
582
  break;
583
  case 'double':
584
  case 'float':
585
+ return (double)($value);
586
  break;
587
  case 'txt':
588
  $value = esc_attr($value);
592
  break;
593
  case 'serverpath':
594
  $value = realpath($value);
595
+ $value = str_replace("\\", "/", $value);
596
+ break;
597
+ case 'txts':
598
+ $value = sanitize_textarea_field($value);
599
+ break;
600
+ case 'url':
601
+ $value = esc_url($value);
602
+ break;
603
+ case 'noscript':
604
+ case 'escs':
605
+ $value = wpdm_escs($value);
606
+ break;
607
+ case 'filename':
608
+ $value = mb_ereg_replace("([^\w\s\d\-_~,;\[\]\(\).])", '_', $value);
609
+ $value = mb_ereg_replace("([\.]+)", '_', $value);
610
+ break;
611
+ case 'html':
612
+
613
+ break;
614
+ default:
615
+ $value = esc_sql(esc_attr($value));
616
  break;
617
  }
618
  $value = wpdm_escs($value);
622
 
623
 
624
 
625
+
626
  function wpdm_category($params)
627
  {
628
  $params['order_field'] = isset($params['order_by'])?$params['order_by']:'publish_date';
1223
  * WPDM add-on installer
1224
  */
1225
  function wpdm_install_addon(){
1226
+ if(isset($_REQUEST['addon']) && current_user_can('manage_options') && wp_verify_nonce($_REQUEST['__wpdmpinn'], $_REQUEST['addon'].NONCE_KEY)){
1227
  include_once( ABSPATH . 'wp-admin/includes/plugin.php' );
1228
  include_once ABSPATH . 'wp-admin/includes/class-wp-upgrader.php';
1229
  include_once ABSPATH . 'wp-admin/includes/plugin-install.php';
1516
  * @usage Show Login Form
1517
  */
1518
  function wpdm_login_form($params = array()){
1519
+ return WPDM()->shortCode->loginForm($params);
 
 
 
 
 
 
 
1520
  }
1521
 
1522
  function wpdm_user_dashboard_url(){
wpdm-start-download.php CHANGED
@@ -13,7 +13,8 @@ do_action("wpdm_onstart_download", $package);
13
 
14
  global $current_user, $dfiles;
15
 
16
- $speed = 1024; //in KB - default 1 MB
 
17
  $speed = apply_filters('wpdm_download_speed', $speed);
18
 
19
  //get_currentuserinfo();
13
 
14
  global $current_user, $dfiles;
15
 
16
+ $speed = (int)get_option('__wpdm_download_speed', 10240);
17
+ $speed = $speed > 0 ? $speed : 10240;
18
  $speed = apply_filters('wpdm_download_speed', $speed);
19
 
20
  //get_currentuserinfo();