Google Maps Easy - Version 1.10.1

Version Description

Download this release

Release Info

Developer supsystic.com
Plugin Icon 128x128 Google Maps Easy
Version 1.10.1
Comparing to
See all releases

Code changes from version 1.10.0 to 1.10.1

classes/field.php CHANGED
@@ -68,8 +68,8 @@ class fieldGmp {
68
  $this->validate[] = $validate;
69
  }
70
  /**
71
- * Set $value property.
72
- * Sure - it is public and can be set directly, but it can be more
73
  * comfortable to use this method in future
74
  * @param mixed $value value to be set
75
  */
@@ -227,10 +227,10 @@ class fieldGmp {
227
  }
228
  /**
229
  * Function to display userfields in front-end
230
- *
231
  * @param string $name
232
  * @param mixed $fieldValue
233
- * @return string
234
  */
235
  public function viewField($name, $fieldValue = '') {
236
  $method = $this->html;
@@ -273,12 +273,12 @@ class fieldGmp {
273
  }
274
  $add_option = '';
275
  switch ($tag) {
276
- case 5:
277
  $add_option = __('Add Checkbox', GMP_LANG_CODE);
278
  $options_tag = '';
279
  $image_tag = ' style="display:none"';
280
  break;
281
- case 9:
282
  $add_option = __('Add Item', GMP_LANG_CODE);
283
  $options_tag = '';
284
  $image_tag = ' style="display:none"';
@@ -331,7 +331,7 @@ class fieldGmp {
331
 
332
  /**
333
  * Check if the element exists in array
334
- * @param array $param
335
  */
336
  function checkVarFromParam($param, $element) {
337
  return utilsGmp::xmlAttrToStr($param, $element);
@@ -345,13 +345,13 @@ class fieldGmp {
345
 
346
  /**
347
  * Prepares configuration options
348
- *
349
  * @param file $xml
350
- * @return array $config_params
351
  */
352
  public function prepareConfigOptions($xml) {
353
  // load xml structure of parameters
354
- $config = simplexml_load_file($xml);
355
  $config_params = array();
356
  foreach ($config->params->param as $param) {
357
  // read the variables
@@ -384,14 +384,14 @@ class fieldGmp {
384
  }
385
  /**
386
  * Displays the config options for given module
387
- *
388
- * @param string $module
389
  * @param array $addDefaultOptions - if you want to add some additionsl options - specify it here
390
  */
391
  public function drawConfig($module, $additionalOptions = array()) {
392
- if(!frameGmp::_()->getModule($module))
393
- return false;
394
- // check for xml file with params structure
395
  if(frameGmp::_()->getModule($module)->isExternal())
396
  $config_xml = frameGmp::_()->getModule($module)->getModDir(). 'mod.xml';
397
  else
@@ -436,7 +436,7 @@ class fieldGmp {
436
  $keyVal = array_map('trim', explode('=>', $string));
437
  $options[ $keyVal[0] ] = $keyVal[1];
438
  } else {
439
- $options[$string] = $string;
440
  }
441
  }
442
  } else {
@@ -458,12 +458,12 @@ class fieldGmp {
458
  if (method_exists($helper, $helper_name))
459
  $options = $helper->$helper_name();
460
  }
461
- }
462
  if (isset($param[$key])) {
463
  $fieldValue = $param[$key];
464
  } else {
465
  if ($fieldValue == '')
466
- $fieldValue = $configOptions[$key]['default'];
467
  }
468
  // filling the parameters to build html element
469
  $htmlParams = array('value'=>$fieldValue,'optionsGmp'=>$options);
68
  $this->validate[] = $validate;
69
  }
70
  /**
71
+ * Set $value property.
72
+ * Sure - it is public and can be set directly, but it can be more
73
  * comfortable to use this method in future
74
  * @param mixed $value value to be set
75
  */
227
  }
228
  /**
229
  * Function to display userfields in front-end
230
+ *
231
  * @param string $name
232
  * @param mixed $fieldValue
233
+ * @return string
234
  */
235
  public function viewField($name, $fieldValue = '') {
236
  $method = $this->html;
273
  }
274
  $add_option = '';
275
  switch ($tag) {
276
+ case 5:
277
  $add_option = __('Add Checkbox', GMP_LANG_CODE);
278
  $options_tag = '';
279
  $image_tag = ' style="display:none"';
280
  break;
281
+ case 9:
282
  $add_option = __('Add Item', GMP_LANG_CODE);
283
  $options_tag = '';
284
  $image_tag = ' style="display:none"';
331
 
332
  /**
333
  * Check if the element exists in array
334
+ * @param array $param
335
  */
336
  function checkVarFromParam($param, $element) {
337
  return utilsGmp::xmlAttrToStr($param, $element);
345
 
346
  /**
347
  * Prepares configuration options
348
+ *
349
  * @param file $xml
350
+ * @return array $config_params
351
  */
352
  public function prepareConfigOptions($xml) {
353
  // load xml structure of parameters
354
+ $config = simplexml_load_file($xml);
355
  $config_params = array();
356
  foreach ($config->params->param as $param) {
357
  // read the variables
384
  }
385
  /**
386
  * Displays the config options for given module
387
+ *
388
+ * @param string $module
389
  * @param array $addDefaultOptions - if you want to add some additionsl options - specify it here
390
  */
391
  public function drawConfig($module, $additionalOptions = array()) {
392
+ if(!frameGmp::_()->getModule($module))
393
+ return false;
394
+ // check for xml file with params structure
395
  if(frameGmp::_()->getModule($module)->isExternal())
396
  $config_xml = frameGmp::_()->getModule($module)->getModDir(). 'mod.xml';
397
  else
436
  $keyVal = array_map('trim', explode('=>', $string));
437
  $options[ $keyVal[0] ] = $keyVal[1];
438
  } else {
439
+ $options[$string] = $string;
440
  }
441
  }
442
  } else {
458
  if (method_exists($helper, $helper_name))
459
  $options = $helper->$helper_name();
460
  }
461
+ }
462
  if (isset($param[$key])) {
463
  $fieldValue = $param[$key];
464
  } else {
465
  if ($fieldValue == '')
466
+ $fieldValue = $configOptions[$key]['default'];
467
  }
468
  // filling the parameters to build html element
469
  $htmlParams = array('value'=>$fieldValue,'optionsGmp'=>$options);
classes/html.php CHANGED
@@ -2,6 +2,75 @@
2
  class htmlGmp {
3
  static public $categoriesOptions = array();
4
  static public $productsOptions = array();
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5
  static public function block($name, $params= array('attrs' => '', 'value' => '')){
6
  $output .= '<p class="toe_'. self::nameToClassId($name). '">'.$params['value'].'</p>';
7
  //$output .= self::hidden($name, $params);
@@ -560,20 +629,25 @@ class htmlGmp {
560
  $params['attrs'] .= ' data-default-color="'. $params['value']. '"';
561
  $out = self::text($name, $params);
562
  //$out .= '<div style="position: absolute; z-index: 1;" id="'. $pickerId. '"></div>';
563
- $out .= '<script type="text/javascript">//<!--
564
- jQuery(function(){
565
- jQuery(document).ready(function($){
566
- jQuery("#'. $textId. '").wpColorPicker({
567
- change: function(event, ui) {
568
- // Find change functiona for this element, if such exist - triger it
569
- if(window["wpColorPicker_'. $nameToClass. '_change"]) {
570
- window["wpColorPicker_'. $nameToClass. '_change"](event, ui);
571
- }
572
- }
573
- });
574
- });
575
- });
576
- //--></script>';
 
 
 
 
 
577
  return $out;
578
  }
579
  static public function fontsList($name, $params = array('value' => '')) {
@@ -603,13 +677,12 @@ class htmlGmp {
603
  $paramsCheck['checked'] = $paramsCheck['value'] ? '1' : '0';
604
  $out = self::checkbox(self::nameToClassId($name), $paramsCheck);
605
  $out .= self::hidden($name, $paramsHidden);
606
- $out .= '<script type="text/javascript">//<!--
607
- jQuery(function(){
608
  jQuery("#'. $checkId. '").change(function(){
609
  jQuery("#'. $hideId. '").val( (jQuery(this).prop("checked") ? 1 : 0) ).trigger("change");
610
  });
611
- });
612
- //--></script>';
613
  return $out;
614
  }
615
  static public function slideInput($name, $params = array('attrs' => '', 'checked' => false, 'id' => '')) {
2
  class htmlGmp {
3
  static public $categoriesOptions = array();
4
  static public $productsOptions = array();
5
+
6
+ static protected $_allowedHtml;
7
+
8
+ static public function getAllowedHtml() {
9
+ if (empty(self::$_allowedHtml)) {
10
+ $allowedHtml = wp_kses_allowed_html();
11
+
12
+ $newAllowedHtml = array( 'nav' => array( 'style' => 1, 'class' => 1, 'id' => 1, 'data-tab-key' => 1 ) , 'li' => array( 'style' => 1, 'class' => 1, 'id' => 1, 'data-tab-key' => 1 ) ,'button' => array( 'style' => 1, 'class' => 1, 'id' => 1, 'data-tab-key' => 1 ) , 'ul' => array( 'style' => 1, 'class' => 1, 'id' => 1, ) , 'ol' => array( 'style' => 1, 'class' => 1, 'id' => 1, ) , 'i' => array( 'style' => 1, 'class' => 1, 'id' => 1, 'title' => 1 ) , 'img' => array( 'src' => 1, 'style' => 1, 'width' => 1, 'height' => 1, 'id' => 1, 'class' => 1, 'alt' => 1, 'border' => 1, ) , 'video' => array( 'src' => 1, 'style' => 1, 'width' => 1, 'height' => 1, 'id' => 1, 'class' => 1, 'poster' => 1, 'autoplay' => 1, 'controls' => 1, 'crossorigin' => 1, 'autobuffer' => 1, 'buffered' => 1, 'played' => 1, 'loop' => 1, 'muted' => 1, 'preload' => 1, ) , 'track' => array( 'src' => 1, 'kind' => 1, 'label' => 1, 'srclang' => 1, ) , 'source' => array( 'src' => 1, 'type' => 1, ) , 'audio' => array( 'src' => 1, 'style' => 1, 'width' => 1, 'height' => 1, 'id' => 1, 'class' => 1, 'autoplay' => 1, 'controls' => 1, 'crossorigin' => 1, 'loop' => 1, 'muted' => 1, 'preload' => 1, ) , 'iframe' => array( 'src' => 1, 'style' => 1, 'width' => 1, 'height' => 1, 'id' => 1, 'class' => 1, 'title' => 1, 'allow' => 1, 'allowfullscreen' => 1, 'allowpaymentrequest' => 1, 'csp' => 1, 'height' => 1, 'loading' => 1, 'name' => 1, 'referrerpolicy' => 1, 'sandbox' => 1, 'srcdoc' => 1, ) , );
13
+
14
+ $allowedDiv = array( 'div' => array( 'data-number' => 1, 'style' => 1, 'title' => 1, 'align' => 1, 'class' => 1, 'width' => 1, 'height' => 1, 'title' => 1, 'id' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, 'data-enb-color' => 1, 'data-enb-schedule' => 1, 'data-schedule-from' => 1, 'data-schedule-to' => 1, 'data-enb-badge' => 1, 'data-badge-badge_txt_color' => 1, 'data-badge-badge_bg_color' => 1, 'data-badge-badge_name' => 1, 'data-badge-badge_pos' => 1, 'data-old-number' => 1, 'data-selected-number' => 1, 'data-switch-type' => 1, 'data-toggle-0' => 1, 'data-toggle-1' => 1, 'data-toggle-2' => 1, 'data-toggle-3' => 1, 'data-toggle-4' => 1, 'data-toggle-5' => 1, 'data-toggle-6' => 1, 'data-toggle-7' => 1, 'data-toggle-8' => 1, 'data-toggle-9' => 1, 'data-toggle-10' => 1, ) , 'small' => array( 'style' => 1, 'title' => 1, 'align' => 1, 'class' => 1, 'width' => 1, 'height' => 1, 'id' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, ), 'span' => array( 'style' => 1, 'title' => 1, 'align' => 1, 'class' => 1, 'width' => 1, 'height' => 1, 'id' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, ) , 'pre' => array( 'style' => 1, 'title' => 1, 'align' => 1, 'class' => 1, 'width' => 1, 'height' => 1, 'id' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, ) , 'p' => array( 'style' => 1, 'title' => 1, 'align' => 1, 'class' => 1, 'width' => 1, 'height' => 1, 'id' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, ) , 'br' => array( 'style' => 1, 'title' => 1, 'align' => 1, 'class' => 1, 'width' => 1, 'height' => 1, 'id' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, ) , 'hr' => array( 'style' => 1, 'title' => 1, 'align' => 1, 'class' => 1, 'width' => 1, 'height' => 1, 'id' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, ) , 'hgroup' => array( 'style' => 1, 'title' => 1, 'align' => 1, 'class' => 1, 'width' => 1, 'height' => 1, 'id' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, ) , 'h1' => array( 'style' => 1, 'title' => 1, 'align' => 1, 'class' => 1, 'width' => 1, 'height' => 1, 'id' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, ) , 'h2' => array( 'style' => 1, 'title' => 1, 'align' => 1, 'class' => 1, 'width' => 1, 'height' => 1, 'id' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, ) , 'h3' => array( 'style' => 1, 'title' => 1, 'align' => 1, 'class' => 1, 'width' => 1, 'height' => 1, 'id' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, ) , 'h4' => array( 'style' => 1, 'title' => 1, 'align' => 1, 'class' => 1, 'width' => 1, 'height' => 1, 'id' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, ) , 'h5' => array( 'style' => 1, 'title' => 1, 'align' => 1, 'class' => 1, 'width' => 1, 'height' => 1, 'id' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, ) , 'h6' => array( 'style' => 1, 'title' => 1, 'align' => 1, 'class' => 1, 'width' => 1, 'height' => 1, 'id' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, ) , 'ul' => array( 'style' => 1, 'title' => 1, 'align' => 1, 'class' => 1, 'width' => 1, 'height' => 1, 'id' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, ) , 'ol' => array( 'style' => 1, 'title' => 1, 'align' => 1, 'class' => 1, 'width' => 1, 'height' => 1, 'id' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, ) , 'li' => array( 'style' => 1, 'title' => 1, 'align' => 1, 'class' => 1, 'width' => 1, 'height' => 1, 'id' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, ) , 'dl' => array( 'style' => 1, 'title' => 1, 'align' => 1, 'class' => 1, 'width' => 1, 'height' => 1, 'id' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, ) , 'dt' => array( 'style' => 1, 'title' => 1, 'align' => 1, 'class' => 1, 'width' => 1, 'height' => 1, 'id' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, ) , 'dd' => array( 'style' => 1, 'title' => 1, 'align' => 1, 'class' => 1, 'width' => 1, 'height' => 1, 'id' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, ) , 'strong' => array( 'style' => 1, 'title' => 1, 'align' => 1, 'class' => 1, 'width' => 1, 'height' => 1, 'id' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, ) , 'em' => array( 'style' => 1, 'title' => 1, 'align' => 1, 'class' => 1, 'width' => 1, 'height' => 1, 'id' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, ) , 'b' => array( 'style' => 1, 'title' => 1, 'align' => 1, 'class' => 1, 'width' => 1, 'height' => 1, 'id' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, ) , 'i' => array( 'style' => 1, 'title' => 1, 'align' => 1, 'class' => 1, 'width' => 1, 'height' => 1, 'id' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, ) , 'u' => array( 'style' => 1, 'title' => 1, 'align' => 1, 'class' => 1, 'width' => 1, 'height' => 1, 'id' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, ) , 'img' => array( 'style' => 1, 'title' => 1, 'align' => 1, 'class' => 1, 'width' => 1, 'height' => 1, 'id' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, ) , 'a' => array( 'style' => 1, 'title' => 1, 'align' => 1, 'class' => 1, 'width' => 1, 'height' => 1, 'id' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, 'link' => 1, 'rel' => 1, 'href' => 1, 'target' => 1, ) , 'abbr' => array( 'style' => 1, 'title' => 1, 'align' => 1, 'class' => 1, 'width' => 1, 'height' => 1, 'id' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, ) , 'address' => array( 'style' => 1, 'title' => 1, 'align' => 1, 'class' => 1, 'width' => 1, 'height' => 1, 'id' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, ) , 'blockquote' => array( 'style' => 1, 'title' => 1, 'align' => 1, 'class' => 1, 'width' => 1, 'height' => 1, 'id' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, ) , 'area' => array( 'style' => 1, 'title' => 1, 'align' => 1, 'class' => 1, 'width' => 1, 'height' => 1, 'id' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, ) , 'audio' => array( 'style' => 1, 'title' => 1, 'align' => 1, 'class' => 1, 'width' => 1, 'height' => 1, 'id' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, ) , 'video' => array( 'style' => 1, 'title' => 1, 'align' => 1, 'class' => 1, 'width' => 1, 'height' => 1, 'id' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, ) , 'form' => array( 'style' => 1, 'title' => 1, 'align' => 1, 'class' => 1, 'width' => 1, 'height' => 1, 'id' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, 'action' => 1, 'target' => 1, 'method' => 1, ) , 'fieldset' => array( 'style' => 1, 'title' => 1, 'align' => 1, 'class' => 1, 'width' => 1, 'height' => 1, 'id' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, ) , 'label' => array( 'style' => 1, 'title' => 1, 'align' => 1, 'class' => 1, 'width' => 1, 'height' => 1, 'id' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, ) , 'input' => array( 'disabled' => 1, 'checked' => 1, 'selected' => 1, 'style' => 1, 'title' => 1, 'align' => 1, 'class' => 1, 'width' => 1, 'height' => 1, 'value' => 1, 'type' => 1, 'id' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, 'name' => 1, 'src' => 1, 'border' => 1, 'alt' => 1, 'name' => 1, 'maxlength' => 1, ) , 'textarea' => array( 'style' => 1, 'title' => 1, 'align' => 1, 'class' => 1, 'width' => 1, 'height' => 1, 'id' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, ) , 'caption' => array( 'style' => 1, 'title' => 1, 'align' => 1, 'class' => 1, 'width' => 1, 'height' => 1, 'id' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, ) , 'table' => array( 'style' => 1, 'title' => 1, 'align' => 1, 'class' => 1, 'width' => 1, 'height' => 1, 'id' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, ) , 'tbody' => array( 'style' => 1, 'title' => 1, 'align' => 1, 'class' => 1, 'width' => 1, 'height' => 1, 'id' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, ) , 'td' => array( 'style' => 1, 'title' => 1, 'align' => 1, 'class' => 1, 'width' => 1, 'height' => 1, 'id' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, ) , 'tfoot' => array( 'style' => 1, 'title' => 1, 'align' => 1, 'class' => 1, 'width' => 1, 'height' => 1, 'id' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, ) , 'th' => array( 'style' => 1, 'title' => 1, 'align' => 1, 'class' => 1, 'width' => 1, 'height' => 1, 'id' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, ) , 'thead' => array( 'style' => 1, 'title' => 1, 'align' => 1, 'class' => 1, 'width' => 1, 'height' => 1, 'id' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, ) , 'tr' => array( 'style' => 1, 'title' => 1, 'align' => 1, 'class' => 1, 'width' => 1, 'height' => 1, 'id' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, ) , 'iframe' => array( 'style' => 1, 'title' => 1, 'align' => 1, 'class' => 1, 'width' => 1, 'height' => 1, 'id' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, ) , 'select' => array( 'multiple' => 1, 'style' => 1, 'id' => 1, 'name' => 1, 'title' => 1, 'align' => 1, 'class' => 1, 'width' => 1, 'height' => 1, 'id' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, ) , 'option' => array( 'style' => 1, 'title' => 1, 'align' => 1, 'class' => 1, 'width' => 1, 'height' => 1, 'id' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, 'data-type' => 1, 'data-el' => 1, 'data-color' => 1, 'data-icon' => 1, 'data-bgcolor-elements' => 1, 'data-bgcolor-to' => 1, 'data-mce-style' => 1, 'selected' => 1, 'data-number' => 1, 'value' => 1, ) , 'sup' => array( ) , 'sub' => array( ) , );
15
+
16
+ $allowedHtml = array_merge($allowedHtml, $allowedDiv);
17
+ self::$_allowedHtml = array_merge($allowedHtml, $newAllowedHtml);
18
+ }
19
+ return self::$_allowedHtml;
20
+ }
21
+
22
+ static public function supStrRgbToHex($color) {
23
+ preg_match_all("/\((.+?)\)/", $color, $matches);
24
+ if (!empty($matches[1][0])) {
25
+ $rgb = explode(',', $matches[1][0]);
26
+ $size = count($rgb);
27
+ if ($size == 3 || $size == 4) {
28
+ if ($size == 4) {
29
+ $alpha = array_pop($rgb);
30
+ $alpha = floatval(trim($alpha));
31
+ $alpha = ceil(($alpha * (255 * 100)) / 100);
32
+ array_push($rgb, $alpha);
33
+ }
34
+
35
+ $result = '#';
36
+ foreach ($rgb as $row) {
37
+ $result .= str_pad(dechex(trim($row)), 2, '0', STR_PAD_LEFT);
38
+ }
39
+
40
+ return $result;
41
+ }
42
+ }
43
+
44
+ return false;
45
+ }
46
+
47
+ static public function wpKsesHtml($inputHtml) {
48
+ $str = $inputHtml;
49
+ $allowedHtml = self::getAllowedHtml();
50
+ if (!empty($str) && is_string($str)) {
51
+ $str = htmlspecialchars_decode($str);
52
+
53
+ $re = '/rgb\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)/';
54
+ $str = preg_replace_callback(
55
+ $re,
56
+ function($m) {
57
+ return self::supStrRgbToHex($m[0]);
58
+ },
59
+ $str);
60
+
61
+ $re = '/rgba\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*,\d*(?:\.\d+)?\)/';
62
+ $str = preg_replace_callback(
63
+ $re,
64
+ function($m) {
65
+ return self::supStrRgbToHex($m[0]);
66
+ },
67
+ $str);
68
+
69
+ echo wp_kses($str, $allowedHtml);
70
+ }
71
+ }
72
+
73
+
74
  static public function block($name, $params= array('attrs' => '', 'value' => '')){
75
  $output .= '<p class="toe_'. self::nameToClassId($name). '">'.$params['value'].'</p>';
76
  //$output .= self::hidden($name, $params);
629
  $params['attrs'] .= ' data-default-color="'. $params['value']. '"';
630
  $out = self::text($name, $params);
631
  //$out .= '<div style="position: absolute; z-index: 1;" id="'. $pickerId. '"></div>';
632
+
633
+ $script = '
634
+ jQuery(function(){
635
+ jQuery(document).ready(function($){
636
+ jQuery("#'. $textId. '").wpColorPicker({
637
+ change: function(event, ui) {
638
+ // Find change functiona for this element, if such exist - triger it
639
+ if(window["wpColorPicker_'. $nameToClass. '_change"]) {
640
+ window["wpColorPicker_'. $nameToClass. '_change"](event, ui);
641
+ }
642
+ }
643
+ });
644
+ });
645
+ });
646
+ ';
647
+ wp_add_inline_script( 'common', $script, 'after' );
648
+
649
+
650
+
651
  return $out;
652
  }
653
  static public function fontsList($name, $params = array('value' => '')) {
677
  $paramsCheck['checked'] = $paramsCheck['value'] ? '1' : '0';
678
  $out = self::checkbox(self::nameToClassId($name), $paramsCheck);
679
  $out .= self::hidden($name, $paramsHidden);
680
+ $script = 'jQuery(function(){
 
681
  jQuery("#'. $checkId. '").change(function(){
682
  jQuery("#'. $hideId. '").val( (jQuery(this).prop("checked") ? 1 : 0) ).trigger("change");
683
  });
684
+ });';
685
+ wp_add_inline_script( 'common', $script, 'after' );
686
  return $out;
687
  }
688
  static public function slideInput($name, $params = array('attrs' => '', 'checked' => false, 'id' => '')) {
classes/modInstaller.php CHANGED
@@ -184,7 +184,7 @@ class modInstallerGmp {
184
  static public function displayErrors($exit = true) {
185
  $errors = errorsGmp::get(errorsGmp::MOD_INSTALL);
186
  foreach ($errors as $e) {
187
- echo '<b style="color: red;">' . $e . '</b><br />';
188
  }
189
  if ($exit) exit();
190
  }
184
  static public function displayErrors($exit = true) {
185
  $errors = errorsGmp::get(errorsGmp::MOD_INSTALL);
186
  foreach ($errors as $e) {
187
+ echo '<b style="color: red;">' . esc_attr($e) . '</b><br />';
188
  }
189
  if ($exit) exit();
190
  }
classes/req.php CHANGED
@@ -29,7 +29,13 @@ class reqGmp {
29
  foreach ($array as $key => &$value) {
30
  if (in_array($key, $keys)) {
31
  if (!is_array($value)) {
32
- $value = strip_tags($value, $allowed);
 
 
 
 
 
 
33
  }
34
  } else {
35
  if( !is_array($value) ) {
29
  foreach ($array as $key => &$value) {
30
  if (in_array($key, $keys)) {
31
  if (!is_array($value)) {
32
+ if ($key == 'description') {
33
+ if (!empty($value)) {
34
+ $value = wp_kses_post($value);
35
+ }
36
+ } else {
37
+ $value = strip_tags($value, $allowed);
38
+ }
39
  }
40
  } else {
41
  if( !is_array($value) ) {
classes/view.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  abstract class viewGmp extends baseObjectGmp {
3
- /*
4
  * @deprecated
5
  */
6
  protected $_tpl = GMP_DEFAULT;
@@ -17,9 +17,9 @@ abstract class viewGmp extends baseObjectGmp {
17
  $tpl = (empty($tpl)) ? $this->_tpl : $tpl;
18
 
19
  if(($content = $this->getContent($tpl)) !== false) {
20
- echo $content;
21
  }
22
- }
23
  public function getPath($tpl) {
24
  $path = '';
25
  $code = $this->_code;
@@ -79,7 +79,7 @@ abstract class viewGmp extends baseObjectGmp {
79
  public function getCode() {
80
  return $this->_code;
81
  }
82
-
83
  /**
84
  * This will display form for our widgets
85
  */
1
  <?php
2
  abstract class viewGmp extends baseObjectGmp {
3
+ /*
4
  * @deprecated
5
  */
6
  protected $_tpl = GMP_DEFAULT;
17
  $tpl = (empty($tpl)) ? $this->_tpl : $tpl;
18
 
19
  if(($content = $this->getContent($tpl)) !== false) {
20
+ echo $content;
21
  }
22
+ }
23
  public function getPath($tpl) {
24
  $path = '';
25
  $code = $this->_code;
79
  public function getCode() {
80
  return $this->_code;
81
  }
82
+
83
  /**
84
  * This will display form for our widgets
85
  */
config.php CHANGED
@@ -49,7 +49,7 @@
49
  define('GMP_EOL', "\n");
50
 
51
  define('GMP_PLUGIN_INSTALLED', true);
52
- define('GMP_VERSION_PLUGIN', '1.10.0'); //GMP_VERSION is pre-defined constant for PHP GMP module http://php.net/manual/en/book.gmp.php
53
  define('GMP_USER', 'user');
54
 
55
  define('GMP_CLASS_PREFIX', 'gmpc');
49
  define('GMP_EOL', "\n");
50
 
51
  define('GMP_PLUGIN_INSTALLED', true);
52
+ define('GMP_VERSION_PLUGIN', '1.10.1'); //GMP_VERSION is pre-defined constant for PHP GMP module http://php.net/manual/en/book.gmp.php
53
  define('GMP_USER', 'user');
54
 
55
  define('GMP_CLASS_PREFIX', 'gmpc');
css/bootstrap-cols.css DELETED
@@ -1,636 +0,0 @@
1
- .col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 {
2
- position: relative;
3
- min-height: 1px;
4
- padding-left: 15px;
5
- padding-right: 15px;
6
- }
7
- .col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12 {
8
- float: left;
9
- }
10
- .col-xs-12 {
11
- width: 100%;
12
- }
13
- .col-xs-11 {
14
- width: 91.66666667%;
15
- }
16
- .col-xs-10 {
17
- width: 83.33333333%;
18
- }
19
- .col-xs-9 {
20
- width: 75%;
21
- }
22
- .col-xs-8 {
23
- width: 66.66666667%;
24
- }
25
- .col-xs-7 {
26
- width: 58.33333333%;
27
- }
28
- .col-xs-6 {
29
- width: 50%;
30
- }
31
- .col-xs-5 {
32
- width: 41.66666667%;
33
- }
34
- .col-xs-4 {
35
- width: 33.33333333%;
36
- }
37
- .col-xs-3 {
38
- width: 25%;
39
- }
40
- .col-xs-2 {
41
- width: 16.66666667%;
42
- }
43
- .col-xs-1 {
44
- width: 8.33333333%;
45
- }
46
- .col-xs-pull-12 {
47
- right: 100%;
48
- }
49
- .col-xs-pull-11 {
50
- right: 91.66666667%;
51
- }
52
- .col-xs-pull-10 {
53
- right: 83.33333333%;
54
- }
55
- .col-xs-pull-9 {
56
- right: 75%;
57
- }
58
- .col-xs-pull-8 {
59
- right: 66.66666667%;
60
- }
61
- .col-xs-pull-7 {
62
- right: 58.33333333%;
63
- }
64
- .col-xs-pull-6 {
65
- right: 50%;
66
- }
67
- .col-xs-pull-5 {
68
- right: 41.66666667%;
69
- }
70
- .col-xs-pull-4 {
71
- right: 33.33333333%;
72
- }
73
- .col-xs-pull-3 {
74
- right: 25%;
75
- }
76
- .col-xs-pull-2 {
77
- right: 16.66666667%;
78
- }
79
- .col-xs-pull-1 {
80
- right: 8.33333333%;
81
- }
82
- .col-xs-pull-0 {
83
- right: auto;
84
- }
85
- .col-xs-push-12 {
86
- left: 100%;
87
- }
88
- .col-xs-push-11 {
89
- left: 91.66666667%;
90
- }
91
- .col-xs-push-10 {
92
- left: 83.33333333%;
93
- }
94
- .col-xs-push-9 {
95
- left: 75%;
96
- }
97
- .col-xs-push-8 {
98
- left: 66.66666667%;
99
- }
100
- .col-xs-push-7 {
101
- left: 58.33333333%;
102
- }
103
- .col-xs-push-6 {
104
- left: 50%;
105
- }
106
- .col-xs-push-5 {
107
- left: 41.66666667%;
108
- }
109
- .col-xs-push-4 {
110
- left: 33.33333333%;
111
- }
112
- .col-xs-push-3 {
113
- left: 25%;
114
- }
115
- .col-xs-push-2 {
116
- left: 16.66666667%;
117
- }
118
- .col-xs-push-1 {
119
- left: 8.33333333%;
120
- }
121
- .col-xs-push-0 {
122
- left: auto;
123
- }
124
- .col-xs-offset-12 {
125
- margin-left: 100%;
126
- }
127
- .col-xs-offset-11 {
128
- margin-left: 91.66666667%;
129
- }
130
- .col-xs-offset-10 {
131
- margin-left: 83.33333333%;
132
- }
133
- .col-xs-offset-9 {
134
- margin-left: 75%;
135
- }
136
- .col-xs-offset-8 {
137
- margin-left: 66.66666667%;
138
- }
139
- .col-xs-offset-7 {
140
- margin-left: 58.33333333%;
141
- }
142
- .col-xs-offset-6 {
143
- margin-left: 50%;
144
- }
145
- .col-xs-offset-5 {
146
- margin-left: 41.66666667%;
147
- }
148
- .col-xs-offset-4 {
149
- margin-left: 33.33333333%;
150
- }
151
- .col-xs-offset-3 {
152
- margin-left: 25%;
153
- }
154
- .col-xs-offset-2 {
155
- margin-left: 16.66666667%;
156
- }
157
- .col-xs-offset-1 {
158
- margin-left: 8.33333333%;
159
- }
160
- .col-xs-offset-0 {
161
- margin-left: 0%;
162
- }
163
- @media (min-width: 768px) {
164
- .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 {
165
- float: left;
166
- }
167
- .col-sm-12 {
168
- width: 100%;
169
- }
170
- .col-sm-11 {
171
- width: 91.66666667%;
172
- }
173
- .col-sm-10 {
174
- width: 83.33333333%;
175
- }
176
- .col-sm-9 {
177
- width: 75%;
178
- }
179
- .col-sm-8 {
180
- width: 66.66666667%;
181
- }
182
- .col-sm-7 {
183
- width: 58.33333333%;
184
- }
185
- .col-sm-6 {
186
- width: 50%;
187
- }
188
- .col-sm-5 {
189
- width: 41.66666667%;
190
- }
191
- .col-sm-4 {
192
- width: 33.33333333%;
193
- }
194
- .col-sm-3 {
195
- width: 25%;
196
- }
197
- .col-sm-2 {
198
- width: 16.66666667%;
199
- }
200
- .col-sm-1 {
201
- width: 8.33333333%;
202
- }
203
- .col-sm-pull-12 {
204
- right: 100%;
205
- }
206
- .col-sm-pull-11 {
207
- right: 91.66666667%;
208
- }
209
- .col-sm-pull-10 {
210
- right: 83.33333333%;
211
- }
212
- .col-sm-pull-9 {
213
- right: 75%;
214
- }
215
- .col-sm-pull-8 {
216
- right: 66.66666667%;
217
- }
218
- .col-sm-pull-7 {
219
- right: 58.33333333%;
220
- }
221
- .col-sm-pull-6 {
222
- right: 50%;
223
- }
224
- .col-sm-pull-5 {
225
- right: 41.66666667%;
226
- }
227
- .col-sm-pull-4 {
228
- right: 33.33333333%;
229
- }
230
- .col-sm-pull-3 {
231
- right: 25%;
232
- }
233
- .col-sm-pull-2 {
234
- right: 16.66666667%;
235
- }
236
- .col-sm-pull-1 {
237
- right: 8.33333333%;
238
- }
239
- .col-sm-pull-0 {
240
- right: auto;
241
- }
242
- .col-sm-push-12 {
243
- left: 100%;
244
- }
245
- .col-sm-push-11 {
246
- left: 91.66666667%;
247
- }
248
- .col-sm-push-10 {
249
- left: 83.33333333%;
250
- }
251
- .col-sm-push-9 {
252
- left: 75%;
253
- }
254
- .col-sm-push-8 {
255
- left: 66.66666667%;
256
- }
257
- .col-sm-push-7 {
258
- left: 58.33333333%;
259
- }
260
- .col-sm-push-6 {
261
- left: 50%;
262
- }
263
- .col-sm-push-5 {
264
- left: 41.66666667%;
265
- }
266
- .col-sm-push-4 {
267
- left: 33.33333333%;
268
- }
269
- .col-sm-push-3 {
270
- left: 25%;
271
- }
272
- .col-sm-push-2 {
273
- left: 16.66666667%;
274
- }
275
- .col-sm-push-1 {
276
- left: 8.33333333%;
277
- }
278
- .col-sm-push-0 {
279
- left: auto;
280
- }
281
- .col-sm-offset-12 {
282
- margin-left: 100%;
283
- }
284
- .col-sm-offset-11 {
285
- margin-left: 91.66666667%;
286
- }
287
- .col-sm-offset-10 {
288
- margin-left: 83.33333333%;
289
- }
290
- .col-sm-offset-9 {
291
- margin-left: 75%;
292
- }
293
- .col-sm-offset-8 {
294
- margin-left: 66.66666667%;
295
- }
296
- .col-sm-offset-7 {
297
- margin-left: 58.33333333%;
298
- }
299
- .col-sm-offset-6 {
300
- margin-left: 50%;
301
- }
302
- .col-sm-offset-5 {
303
- margin-left: 41.66666667%;
304
- }
305
- .col-sm-offset-4 {
306
- margin-left: 33.33333333%;
307
- }
308
- .col-sm-offset-3 {
309
- margin-left: 25%;
310
- }
311
- .col-sm-offset-2 {
312
- margin-left: 16.66666667%;
313
- }
314
- .col-sm-offset-1 {
315
- margin-left: 8.33333333%;
316
- }
317
- .col-sm-offset-0 {
318
- margin-left: 0%;
319
- }
320
- }
321
- @media (min-width: 992px) {
322
- .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12 {
323
- float: left;
324
- }
325
- .col-md-12 {
326
- width: 100%;
327
- }
328
- .col-md-11 {
329
- width: 91.66666667%;
330
- }
331
- .col-md-10 {
332
- width: 83.33333333%;
333
- }
334
- .col-md-9 {
335
- width: 75%;
336
- }
337
- .col-md-8 {
338
- width: 66.66666667%;
339
- }
340
- .col-md-7 {
341
- width: 58.33333333%;
342
- }
343
- .col-md-6 {
344
- width: 50%;
345
- }
346
- .col-md-5 {
347
- width: 41.66666667%;
348
- }
349
- .col-md-4 {
350
- width: 33.33333333%;
351
- }
352
- .col-md-3 {
353
- width: 25%;
354
- }
355
- .col-md-2 {
356
- width: 16.66666667%;
357
- }
358
- .col-md-1 {
359
- width: 8.33333333%;
360
- }
361
- .col-md-pull-12 {
362
- right: 100%;
363
- }
364
- .col-md-pull-11 {
365
- right: 91.66666667%;
366
- }
367
- .col-md-pull-10 {
368
- right: 83.33333333%;
369
- }
370
- .col-md-pull-9 {
371
- right: 75%;
372
- }
373
- .col-md-pull-8 {
374
- right: 66.66666667%;
375
- }
376
- .col-md-pull-7 {
377
- right: 58.33333333%;
378
- }
379
- .col-md-pull-6 {
380
- right: 50%;
381
- }
382
- .col-md-pull-5 {
383
- right: 41.66666667%;
384
- }
385
- .col-md-pull-4 {
386
- right: 33.33333333%;
387
- }
388
- .col-md-pull-3 {
389
- right: 25%;
390
- }
391
- .col-md-pull-2 {
392
- right: 16.66666667%;
393
- }
394
- .col-md-pull-1 {
395
- right: 8.33333333%;
396
- }
397
- .col-md-pull-0 {
398
- right: auto;
399
- }
400
- .col-md-push-12 {
401
- left: 100%;
402
- }
403
- .col-md-push-11 {
404
- left: 91.66666667%;
405
- }
406
- .col-md-push-10 {
407
- left: 83.33333333%;
408
- }
409
- .col-md-push-9 {
410
- left: 75%;
411
- }
412
- .col-md-push-8 {
413
- left: 66.66666667%;
414
- }
415
- .col-md-push-7 {
416
- left: 58.33333333%;
417
- }
418
- .col-md-push-6 {
419
- left: 50%;
420
- }
421
- .col-md-push-5 {
422
- left: 41.66666667%;
423
- }
424
- .col-md-push-4 {
425
- left: 33.33333333%;
426
- }
427
- .col-md-push-3 {
428
- left: 25%;
429
- }
430
- .col-md-push-2 {
431
- left: 16.66666667%;
432
- }
433
- .col-md-push-1 {
434
- left: 8.33333333%;
435
- }
436
- .col-md-push-0 {
437
- left: auto;
438
- }
439
- .col-md-offset-12 {
440
- margin-left: 100%;
441
- }
442
- .col-md-offset-11 {
443
- margin-left: 91.66666667%;
444
- }
445
- .col-md-offset-10 {
446
- margin-left: 83.33333333%;
447
- }
448
- .col-md-offset-9 {
449
- margin-left: 75%;
450
- }
451
- .col-md-offset-8 {
452
- margin-left: 66.66666667%;
453
- }
454
- .col-md-offset-7 {
455
- margin-left: 58.33333333%;
456
- }
457
- .col-md-offset-6 {
458
- margin-left: 50%;
459
- }
460
- .col-md-offset-5 {
461
- margin-left: 41.66666667%;
462
- }
463
- .col-md-offset-4 {
464
- margin-left: 33.33333333%;
465
- }
466
- .col-md-offset-3 {
467
- margin-left: 25%;
468
- }
469
- .col-md-offset-2 {
470
- margin-left: 16.66666667%;
471
- }
472
- .col-md-offset-1 {
473
- margin-left: 8.33333333%;
474
- }
475
- .col-md-offset-0 {
476
- margin-left: 0%;
477
- }
478
- }
479
- @media (min-width: 1200px) {
480
- .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12 {
481
- float: left;
482
- }
483
- .col-lg-12 {
484
- width: 100%;
485
- }
486
- .col-lg-11 {
487
- width: 91.66666667%;
488
- }
489
- .col-lg-10 {
490
- width: 83.33333333%;
491
- }
492
- .col-lg-9 {
493
- width: 75%;
494
- }
495
- .col-lg-8 {
496
- width: 66.66666667%;
497
- }
498
- .col-lg-7 {
499
- width: 58.33333333%;
500
- }
501
- .col-lg-6 {
502
- width: 50%;
503
- }
504
- .col-lg-5 {
505
- width: 41.66666667%;
506
- }
507
- .col-lg-4 {
508
- width: 33.33333333%;
509
- }
510
- .col-lg-3 {
511
- width: 25%;
512
- }
513
- .col-lg-2 {
514
- width: 16.66666667%;
515
- }
516
- .col-lg-1 {
517
- width: 8.33333333%;
518
- }
519
- .col-lg-pull-12 {
520
- right: 100%;
521
- }
522
- .col-lg-pull-11 {
523
- right: 91.66666667%;
524
- }
525
- .col-lg-pull-10 {
526
- right: 83.33333333%;
527
- }
528
- .col-lg-pull-9 {
529
- right: 75%;
530
- }
531
- .col-lg-pull-8 {
532
- right: 66.66666667%;
533
- }
534
- .col-lg-pull-7 {
535
- right: 58.33333333%;
536
- }
537
- .col-lg-pull-6 {
538
- right: 50%;
539
- }
540
- .col-lg-pull-5 {
541
- right: 41.66666667%;
542
- }
543
- .col-lg-pull-4 {
544
- right: 33.33333333%;
545
- }
546
- .col-lg-pull-3 {
547
- right: 25%;
548
- }
549
- .col-lg-pull-2 {
550
- right: 16.66666667%;
551
- }
552
- .col-lg-pull-1 {
553
- right: 8.33333333%;
554
- }
555
- .col-lg-pull-0 {
556
- right: auto;
557
- }
558
- .col-lg-push-12 {
559
- left: 100%;
560
- }
561
- .col-lg-push-11 {
562
- left: 91.66666667%;
563
- }
564
- .col-lg-push-10 {
565
- left: 83.33333333%;
566
- }
567
- .col-lg-push-9 {
568
- left: 75%;
569
- }
570
- .col-lg-push-8 {
571
- left: 66.66666667%;
572
- }
573
- .col-lg-push-7 {
574
- left: 58.33333333%;
575
- }
576
- .col-lg-push-6 {
577
- left: 50%;
578
- }
579
- .col-lg-push-5 {
580
- left: 41.66666667%;
581
- }
582
- .col-lg-push-4 {
583
- left: 33.33333333%;
584
- }
585
- .col-lg-push-3 {
586
- left: 25%;
587
- }
588
- .col-lg-push-2 {
589
- left: 16.66666667%;
590
- }
591
- .col-lg-push-1 {
592
- left: 8.33333333%;
593
- }
594
- .col-lg-push-0 {
595
- left: auto;
596
- }
597
- .col-lg-offset-12 {
598
- margin-left: 100%;
599
- }
600
- .col-lg-offset-11 {
601
- margin-left: 91.66666667%;
602
- }
603
- .col-lg-offset-10 {
604
- margin-left: 83.33333333%;
605
- }
606
- .col-lg-offset-9 {
607
- margin-left: 75%;
608
- }
609
- .col-lg-offset-8 {
610
- margin-left: 66.66666667%;
611
- }
612
- .col-lg-offset-7 {
613
- margin-left: 58.33333333%;
614
- }
615
- .col-lg-offset-6 {
616
- margin-left: 50%;
617
- }
618
- .col-lg-offset-5 {
619
- margin-left: 41.66666667%;
620
- }
621
- .col-lg-offset-4 {
622
- margin-left: 33.33333333%;
623
- }
624
- .col-lg-offset-3 {
625
- margin-left: 25%;
626
- }
627
- .col-lg-offset-2 {
628
- margin-left: 16.66666667%;
629
- }
630
- .col-lg-offset-1 {
631
- margin-left: 8.33333333%;
632
- }
633
- .col-lg-offset-0 {
634
- margin-left: 0%;
635
- }
636
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
css/bootstrap-simple.css DELETED
@@ -1,5 +0,0 @@
1
- /*!
2
- * Bootstrap v3.3.6 (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.3 | MIT License | github.com/necolas/normalize.css */.container,.container-fluid{margin-right:auto;margin-left:auto;padding-right:15px;padding-left:15px}caption,th{text-align:left}.table,legend{margin-bottom:20px}.table,label{max-width:100%}img{vertical-align:middle}.carousel-inner>.item>a>img,.carousel-inner>.item>img,.img-responsive,.thumbnail a>img,.thumbnail>img{display:block;max-width:100%;height:auto}@media (min-width:768px){.container{width:750px}}@media (min-width:992px){.container{width:970px}}@media (min-width:1200px){.container{width:1170px}}.row{margin-right:-15px;margin-left:-15px}.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-md-1,.col-md-10,.col-md-11,.col-md-12,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-xs-1,.col-xs-10,.col-xs-11,.col-xs-12,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9{position:relative;min-height:1px;padding-right:15px;padding-left:15px}fieldset,legend{padding:0;border:0}.col-xs-1,.col-xs-10,.col-xs-11,.col-xs-12,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9{float:left}.col-xs-12{width:100%}.col-xs-11{width:91.66666667%}.col-xs-10{width:83.33333333%}.col-xs-9{width:75%}.col-xs-8{width:66.66666667%}.col-xs-7{width:58.33333333%}.col-xs-6{width:50%}.col-xs-5{width:41.66666667%}.col-xs-4{width:33.33333333%}.col-xs-3{width:25%}.col-xs-2{width:16.66666667%}.col-xs-1{width:8.33333333%}.col-xs-pull-12{right:100%}.col-xs-pull-11{right:91.66666667%}.col-xs-pull-10{right:83.33333333%}.col-xs-pull-9{right:75%}.col-xs-pull-8{right:66.66666667%}.col-xs-pull-7{right:58.33333333%}.col-xs-pull-6{right:50%}.col-xs-pull-5{right:41.66666667%}.col-xs-pull-4{right:33.33333333%}.col-xs-pull-3{right:25%}.col-xs-pull-2{right:16.66666667%}.col-xs-pull-1{right:8.33333333%}.col-xs-pull-0{right:auto}.col-xs-push-12{left:100%}.col-xs-push-11{left:91.66666667%}.col-xs-push-10{left:83.33333333%}.col-xs-push-9{left:75%}.col-xs-push-8{left:66.66666667%}.col-xs-push-7{left:58.33333333%}.col-xs-push-6{left:50%}.col-xs-push-5{left:41.66666667%}.col-xs-push-4{left:33.33333333%}.col-xs-push-3{left:25%}.col-xs-push-2{left:16.66666667%}.col-xs-push-1{left:8.33333333%}.col-xs-push-0{left:auto}.col-xs-offset-12{margin-left:100%}.col-xs-offset-11{margin-left:91.66666667%}.col-xs-offset-10{margin-left:83.33333333%}.col-xs-offset-9{margin-left:75%}.col-xs-offset-8{margin-left:66.66666667%}.col-xs-offset-7{margin-left:58.33333333%}.col-xs-offset-6{margin-left:50%}.col-xs-offset-5{margin-left:41.66666667%}.col-xs-offset-4{margin-left:33.33333333%}.col-xs-offset-3{margin-left:25%}.col-xs-offset-2{margin-left:16.66666667%}.col-xs-offset-1{margin-left:8.33333333%}.col-xs-offset-0{margin-left:0}@media (min-width:768px){.col-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9{float:left}.col-sm-12{width:100%}.col-sm-11{width:91.66666667%}.col-sm-10{width:83.33333333%}.col-sm-9{width:75%}.col-sm-8{width:66.66666667%}.col-sm-7{width:58.33333333%}.col-sm-6{width:50%}.col-sm-5{width:41.66666667%}.col-sm-4{width:33.33333333%}.col-sm-3{width:25%}.col-sm-2{width:16.66666667%}.col-sm-1{width:8.33333333%}.col-sm-pull-12{right:100%}.col-sm-pull-11{right:91.66666667%}.col-sm-pull-10{right:83.33333333%}.col-sm-pull-9{right:75%}.col-sm-pull-8{right:66.66666667%}.col-sm-pull-7{right:58.33333333%}.col-sm-pull-6{right:50%}.col-sm-pull-5{right:41.66666667%}.col-sm-pull-4{right:33.33333333%}.col-sm-pull-3{right:25%}.col-sm-pull-2{right:16.66666667%}.col-sm-pull-1{right:8.33333333%}.col-sm-pull-0{right:auto}.col-sm-push-12{left:100%}.col-sm-push-11{left:91.66666667%}.col-sm-push-10{left:83.33333333%}.col-sm-push-9{left:75%}.col-sm-push-8{left:66.66666667%}.col-sm-push-7{left:58.33333333%}.col-sm-push-6{left:50%}.col-sm-push-5{left:41.66666667%}.col-sm-push-4{left:33.33333333%}.col-sm-push-3{left:25%}.col-sm-push-2{left:16.66666667%}.col-sm-push-1{left:8.33333333%}.col-sm-push-0{left:auto}.col-sm-offset-12{margin-left:100%}.col-sm-offset-11{margin-left:91.66666667%}.col-sm-offset-10{margin-left:83.33333333%}.col-sm-offset-9{margin-left:75%}.col-sm-offset-8{margin-left:66.66666667%}.col-sm-offset-7{margin-left:58.33333333%}.col-sm-offset-6{margin-left:50%}.col-sm-offset-5{margin-left:41.66666667%}.col-sm-offset-4{margin-left:33.33333333%}.col-sm-offset-3{margin-left:25%}.col-sm-offset-2{margin-left:16.66666667%}.col-sm-offset-1{margin-left:8.33333333%}.col-sm-offset-0{margin-left:0}}@media (min-width:992px){.col-md-1,.col-md-10,.col-md-11,.col-md-12,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9{float:left}.col-md-12{width:100%}.col-md-11{width:91.66666667%}.col-md-10{width:83.33333333%}.col-md-9{width:75%}.col-md-8{width:66.66666667%}.col-md-7{width:58.33333333%}.col-md-6{width:50%}.col-md-5{width:41.66666667%}.col-md-4{width:33.33333333%}.col-md-3{width:25%}.col-md-2{width:16.66666667%}.col-md-1{width:8.33333333%}.col-md-pull-12{right:100%}.col-md-pull-11{right:91.66666667%}.col-md-pull-10{right:83.33333333%}.col-md-pull-9{right:75%}.col-md-pull-8{right:66.66666667%}.col-md-pull-7{right:58.33333333%}.col-md-pull-6{right:50%}.col-md-pull-5{right:41.66666667%}.col-md-pull-4{right:33.33333333%}.col-md-pull-3{right:25%}.col-md-pull-2{right:16.66666667%}.col-md-pull-1{right:8.33333333%}.col-md-pull-0{right:auto}.col-md-push-12{left:100%}.col-md-push-11{left:91.66666667%}.col-md-push-10{left:83.33333333%}.col-md-push-9{left:75%}.col-md-push-8{left:66.66666667%}.col-md-push-7{left:58.33333333%}.col-md-push-6{left:50%}.col-md-push-5{left:41.66666667%}.col-md-push-4{left:33.33333333%}.col-md-push-3{left:25%}.col-md-push-2{left:16.66666667%}.col-md-push-1{left:8.33333333%}.col-md-push-0{left:auto}.col-md-offset-12{margin-left:100%}.col-md-offset-11{margin-left:91.66666667%}.col-md-offset-10{margin-left:83.33333333%}.col-md-offset-9{margin-left:75%}.col-md-offset-8{margin-left:66.66666667%}.col-md-offset-7{margin-left:58.33333333%}.col-md-offset-6{margin-left:50%}.col-md-offset-5{margin-left:41.66666667%}.col-md-offset-4{margin-left:33.33333333%}.col-md-offset-3{margin-left:25%}.col-md-offset-2{margin-left:16.66666667%}.col-md-offset-1{margin-left:8.33333333%}.col-md-offset-0{margin-left:0}}@media (min-width:1200px){.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9{float:left}.col-lg-12{width:100%}.col-lg-11{width:91.66666667%}.col-lg-10{width:83.33333333%}.col-lg-9{width:75%}.col-lg-8{width:66.66666667%}.col-lg-7{width:58.33333333%}.col-lg-6{width:50%}.col-lg-5{width:41.66666667%}.col-lg-4{width:33.33333333%}.col-lg-3{width:25%}.col-lg-2{width:16.66666667%}.col-lg-1{width:8.33333333%}.col-lg-pull-12{right:100%}.col-lg-pull-11{right:91.66666667%}.col-lg-pull-10{right:83.33333333%}.col-lg-pull-9{right:75%}.col-lg-pull-8{right:66.66666667%}.col-lg-pull-7{right:58.33333333%}.col-lg-pull-6{right:50%}.col-lg-pull-5{right:41.66666667%}.col-lg-pull-4{right:33.33333333%}.col-lg-pull-3{right:25%}.col-lg-pull-2{right:16.66666667%}.col-lg-pull-1{right:8.33333333%}.col-lg-pull-0{right:auto}.col-lg-push-12{left:100%}.col-lg-push-11{left:91.66666667%}.col-lg-push-10{left:83.33333333%}.col-lg-push-9{left:75%}.col-lg-push-8{left:66.66666667%}.col-lg-push-7{left:58.33333333%}.col-lg-push-6{left:50%}.col-lg-push-5{left:41.66666667%}.col-lg-push-4{left:33.33333333%}.col-lg-push-3{left:25%}.col-lg-push-2{left:16.66666667%}.col-lg-push-1{left:8.33333333%}.col-lg-push-0{left:auto}.col-lg-offset-12{margin-left:100%}.col-lg-offset-11{margin-left:91.66666667%}.col-lg-offset-10{margin-left:83.33333333%}.col-lg-offset-9{margin-left:75%}.col-lg-offset-8{margin-left:66.66666667%}.col-lg-offset-7{margin-left:58.33333333%}.col-lg-offset-6{margin-left:50%}.col-lg-offset-5{margin-left:41.66666667%}.col-lg-offset-4{margin-left:33.33333333%}.col-lg-offset-3{margin-left:25%}.col-lg-offset-2{margin-left:16.66666667%}.col-lg-offset-1{margin-left:8.33333333%}.col-lg-offset-0{margin-left:0}}table{background-color:transparent}caption{padding-top:8px;padding-bottom:8px;color:#777}.table{width:100%}fieldset{min-width:0;margin:0}legend{display:block;width:100%;font-size:21px;line-height:inherit;color:#333;border-bottom:1px solid #e5e5e5}label{display:inline-block;margin-bottom:5px;font-weight:700}input[type=search]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}input[type=radio],input[type=checkbox]{margin:4px 0 0;margin-top:1px\9;line-height:normal}input[type=file]{display:block}input[type=range]{display:block;width:100%}select[multiple],select[size]{height:auto}input[type=radio]:focus,input[type=checkbox]:focus,input[type=file]:focus{outline:dotted thin;outline:-webkit-focus-ring-color auto 5px;outline-offset:-2px}output{display:block;padding-top:7px;font-size:14px;line-height:1.42857143;color:#555}
 
 
 
 
 
css/suptablesui.min.css ADDED
@@ -0,0 +1 @@
 
1
+ *{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}:after,:before{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.supContainer{padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:768px){.supContainer{width:750px}}@media (min-width:992px){.supContainer{width:970px}}@media (min-width:1200px){.supContainer{width:1170px}}.supContainer-fluid{padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}.supRow{margin-right:-15px;margin-left:-15px;clear:both;overflow:auto}.supRow-no-gutters{margin-right:0;margin-left:0}.supRow-no-gutters [class*=col-]{padding-right:0;padding-left:0}.supLg1,.supLg10,.supLg11,.supLg12,.supLg2,.supLg3,.supLg4,.supLg5,.supLg6,.supLg7,.supLg8,.supLg9,.supMd1,.supMd10,.supMd11,.supMd12,.supMd2,.supMd3,.supMd4,.supMd5,.supMd6,.supMd7,.supMd8,.supMd9,.supSm1,.supSm10,.supSm11,.supSm12,.supSm2,.supSm3,.supSm4,.supSm5,.supSm6,.supSm7,.supSm8,.supSm9,.supXs1,.supXs10,.supXs11,.supXs12,.supXs2,.supXs3,.supXs4,.supXs5,.supXs6,.supXs7,.supXs8,.supXs9{position:relative;min-height:1px;padding-right:15px;padding-left:15px}.supXs1,.supXs10,.supXs11,.supXs12,.supXs2,.supXs3,.supXs4,.supXs5,.supXs6,.supXs7,.supXs8,.supXs9{float:left}.supXs12{width:100%}.supXs11{width:91.66666667%}.supXs10{width:83.33333333%}.supXs9{width:75%}.supXs8{width:66.66666667%}.supXs7{width:58.33333333%}.supXs6{width:50%}.supXs5{width:41.66666667%}.supXs4{width:33.33333333%}.supXs3{width:25%}.supXs2{width:16.66666667%}.supXs1{width:8.33333333%}.supXspull-12{right:100%}.supXspull-11{right:91.66666667%}.supXspull-10{right:83.33333333%}.supXspull-9{right:75%}.supXspull-8{right:66.66666667%}.supXspull-7{right:58.33333333%}.supXspull-6{right:50%}.supXspull-5{right:41.66666667%}.supXspull-4{right:33.33333333%}.supXspull-3{right:25%}.supXspull-2{right:16.66666667%}.supXspull-1{right:8.33333333%}.supXspull-0{right:auto}.supXspush-12{left:100%}.supXspush-11{left:91.66666667%}.supXspush-10{left:83.33333333%}.supXspush-9{left:75%}.supXspush-8{left:66.66666667%}.supXspush-7{left:58.33333333%}.supXspush-6{left:50%}.supXspush-5{left:41.66666667%}.supXspush-4{left:33.33333333%}.supXspush-3{left:25%}.supXspush-2{left:16.66666667%}.supXspush-1{left:8.33333333%}.supXspush-0{left:auto}.supXsoffset-12{margin-left:100%}.supXsoffset-11{margin-left:91.66666667%}.supXsoffset-10{margin-left:83.33333333%}.supXsoffset-9{margin-left:75%}.supXsoffset-8{margin-left:66.66666667%}.supXsoffset-7{margin-left:58.33333333%}.supXsoffset-6{margin-left:50%}.supXsoffset-5{margin-left:41.66666667%}.supXsoffset-4{margin-left:33.33333333%}.supXsoffset-3{margin-left:25%}.supXsoffset-2{margin-left:16.66666667%}.supXsoffset-1{margin-left:8.33333333%}.supXsoffset-0{margin-left:0}@media (min-width:768px){.supSm1,.supSm10,.supSm11,.supSm12,.supSm2,.supSm3,.supSm4,.supSm5,.supSm6,.supSm7,.supSm8,.supSm9{float:left}.supSm12{width:100%}.supSm11{width:91.66666667%}.supSm10{width:83.33333333%}.supSm9{width:75%}.supSm8{width:66.66666667%}.supSm7{width:58.33333333%}.supSm6{width:50%}.supSm5{width:41.66666667%}.supSm4{width:33.33333333%}.supSm3{width:25%}.supSm2{width:16.66666667%}.supSm1{width:8.33333333%}.supSmpull-12{right:100%}.supSmpull-11{right:91.66666667%}.supSmpull-10{right:83.33333333%}.supSmpull-9{right:75%}.supSmpull-8{right:66.66666667%}.supSmpull-7{right:58.33333333%}.supSmpull-6{right:50%}.supSmpull-5{right:41.66666667%}.supSmpull-4{right:33.33333333%}.supSmpull-3{right:25%}.supSmpull-2{right:16.66666667%}.supSmpull-1{right:8.33333333%}.supSmpull-0{right:auto}.supSmpush-12{left:100%}.supSmpush-11{left:91.66666667%}.supSmpush-10{left:83.33333333%}.supSmpush-9{left:75%}.supSmpush-8{left:66.66666667%}.supSmpush-7{left:58.33333333%}.supSmpush-6{left:50%}.supSmpush-5{left:41.66666667%}.supSmpush-4{left:33.33333333%}.supSmpush-3{left:25%}.supSmpush-2{left:16.66666667%}.supSmpush-1{left:8.33333333%}.supSmpush-0{left:auto}.supSmoffset-12{margin-left:100%}.supSmoffset-11{margin-left:91.66666667%}.supSmoffset-10{margin-left:83.33333333%}.supSmoffset-9{margin-left:75%}.supSmoffset-8{margin-left:66.66666667%}.supSmoffset-7{margin-left:58.33333333%}.supSmoffset-6{margin-left:50%}.supSmoffset-5{margin-left:41.66666667%}.supSmoffset-4{margin-left:33.33333333%}.supSmoffset-3{margin-left:25%}.supSmoffset-2{margin-left:16.66666667%}.supSmoffset-1{margin-left:8.33333333%}.supSmoffset-0{margin-left:0}}@media (min-width:992px){.supMd1,.supMd10,.supMd11,.supMd12,.supMd2,.supMd3,.supMd4,.supMd5,.supMd6,.supMd7,.supMd8,.supMd9{float:left}.supMd12{width:100%}.supMd11{width:91.66666667%}.supMd10{width:83.33333333%}.supMd9{width:75%}.supMd8{width:66.66666667%}.supMd7{width:58.33333333%}.supMd6{width:50%}.supMd5{width:41.66666667%}.supMd4{width:33.33333333%}.supMd3{width:25%}.supMd2{width:16.66666667%}.supMd1{width:8.33333333%}.supMdpull-12{right:100%}.supMdpull-11{right:91.66666667%}.supMdpull-10{right:83.33333333%}.supMdpull-9{right:75%}.supMdpull-8{right:66.66666667%}.supMdpull-7{right:58.33333333%}.supMdpull-6{right:50%}.supMdpull-5{right:41.66666667%}.supMdpull-4{right:33.33333333%}.supMdpull-3{right:25%}.supMdpull-2{right:16.66666667%}.supMdpull-1{right:8.33333333%}.supMdpull-0{right:auto}.supMdpush-12{left:100%}.supMdpush-11{left:91.66666667%}.supMdpush-10{left:83.33333333%}.supMdpush-9{left:75%}.supMdpush-8{left:66.66666667%}.supMdpush-7{left:58.33333333%}.supMdpush-6{left:50%}.supMdpush-5{left:41.66666667%}.supMdpush-4{left:33.33333333%}.supMdpush-3{left:25%}.supMdpush-2{left:16.66666667%}.supMdpush-1{left:8.33333333%}.supMdpush-0{left:auto}.supMdoffset-12{margin-left:100%}.supMdoffset-11{margin-left:91.66666667%}.supMdoffset-10{margin-left:83.33333333%}.supMdoffset-9{margin-left:75%}.supMdoffset-8{margin-left:66.66666667%}.supMdoffset-7{margin-left:58.33333333%}.supMdoffset-6{margin-left:50%}.supMdoffset-5{margin-left:41.66666667%}.supMdoffset-4{margin-left:33.33333333%}.supMdoffset-3{margin-left:25%}.supMdoffset-2{margin-left:16.66666667%}.supMdoffset-1{margin-left:8.33333333%}.supMdoffset-0{margin-left:0}}@media (min-width:1200px){.supLg1,.supLg10,.supLg11,.supLg12,.supLg2,.supLg3,.supLg4,.supLg5,.supLg6,.supLg7,.supLg8,.supLg9{float:left}.supLg12{width:100%}.supLg11{width:91.66666667%}.supLg10{width:83.33333333%}.supLg9{width:75%}.supLg8{width:66.66666667%}.supLg7{width:58.33333333%}.supLg6{width:50%}.supLg5{width:41.66666667%}.supLg4{width:33.33333333%}.supLg3{width:25%}.supLg2{width:16.66666667%}.supLg1{width:8.33333333%}.supLgpull-12{right:100%}.supLgpull-11{right:91.66666667%}.supLgpull-10{right:83.33333333%}.supLgpull-9{right:75%}.supLgpull-8{right:66.66666667%}.supLgpull-7{right:58.33333333%}.supLgpull-6{right:50%}.supLgpull-5{right:41.66666667%}.supLgpull-4{right:33.33333333%}.supLgpull-3{right:25%}.supLgpull-2{right:16.66666667%}.supLgpull-1{right:8.33333333%}.supLgpull-0{right:auto}.supLgpush-12{left:100%}.supLgpush-11{left:91.66666667%}.supLgpush-10{left:83.33333333%}.supLgpush-9{left:75%}.supLgpush-8{left:66.66666667%}.supLgpush-7{left:58.33333333%}.supLgpush-6{left:50%}.supLgpush-5{left:41.66666667%}.supLgpush-4{left:33.33333333%}.supLgpush-3{left:25%}.supLgpush-2{left:16.66666667%}.supLgpush-1{left:8.33333333%}.supLgpush-0{left:auto}.supLgoffset-12{margin-left:100%}.supLgoffset-11{margin-left:91.66666667%}.supLgoffset-10{margin-left:83.33333333%}.supLgoffset-9{margin-left:75%}.supLgoffset-8{margin-left:66.66666667%}.supLgoffset-7{margin-left:58.33333333%}.supLgoffset-6{margin-left:50%}.supLgoffset-5{margin-left:41.66666667%}.supLgoffset-4{margin-left:33.33333333%}.supLgoffset-3{margin-left:25%}.supLgoffset-2{margin-left:16.66666667%}.supLgoffset-1{margin-left:8.33333333%}.supLgoffset-0{margin-left:0}}modal-open{overflow:hidden}.modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1050;display:none;overflow:hidden;-webkit-overflow-scrolling:touch;outline:0}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal-dialog{position:relative;width:auto;margin:10px}.modal-content{position:relative;background-color:#fff;background-clip:padding-box;border:1px solid #999;border:1px solid rgba(0,0,0,.2);border-radius:6px;-webkit-box-shadow:0 3px 9px rgba(0,0,0,.5);box-shadow:0 3px 9px rgba(0,0,0,.5);outline:0}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;background-color:#000}.modal-backdrop.fade{opacity:0}.modal-backdrop.in{opacity:.5}.modal-header{padding:15px;border-bottom:1px solid #e5e5e5}.modal-header .close{margin-top:-2px}.modal-title{margin:0;line-height:1.42857143}.modal-body{position:relative;padding:15px}.modal-footer{padding:15px;text-align:right;border-top:1px solid #e5e5e5}.modal-footer .btn+.btn{margin-bottom:0;margin-left:5px}.modal-footer .btn-group .btn+.btn{margin-left:-1px}.modal-footer .btn-block+.btn-block{margin-left:0}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@media (min-width:768px){.modal-dialog{width:600px;margin:30px auto}.modal-content{-webkit-box-shadow:0 5px 15px rgba(0,0,0,.5);box-shadow:0 5px 15px rgba(0,0,0,.5)}.modal-sm{width:300px}}
functions.php CHANGED
@@ -97,14 +97,14 @@ if(!function_exists('importClassGmp')) {
97
  if(!function_exists('toeGetClassNameGmp')) {
98
  function toeGetClassNameGmp($class) {
99
  $className = '';
100
- if(class_exists($class. strFirstUp(GMP_CODE)))
101
  $className = $class. strFirstUp(GMP_CODE);
102
- else if(class_exists(GMP_CLASS_PREFIX. $class))
103
  $className = GMP_CLASS_PREFIX. $class;
104
  else
105
  $className = $class;
106
  return $className;
107
- }
108
  }
109
  /**
110
  * Create object of specified class
@@ -137,9 +137,9 @@ if(!function_exists('toeCreateObjGmp')) {
137
  if(!function_exists('redirectGmp')) {
138
  function redirectGmp($url) {
139
  if(headers_sent()) {
140
- echo '<script type="text/javascript"> document.location.href = "'. $url. '"; </script>';
141
  } else {
142
- header('Location: '. $url);
143
  }
144
  exit();
145
  }
@@ -159,9 +159,9 @@ if(!function_exists('in_array_array')) {
159
  if(!function_exists('json_encode_utf_normal')) {
160
  function json_encode_utf_normal($value) {
161
  if (is_int($value)) {
162
- return (string)$value;
163
  } elseif (is_string($value)) {
164
- $value = str_replace(array('\\', '/', '"', "\r", "\n", "\b", "\f", "\t"),
165
  array('\\\\', '\/', '\"', '\r', '\n', '\b', '\f', '\t'), $value);
166
  $convmap = array(0x80, 0xFFFF, 0, 0xFFFF);
167
  $result = "";
@@ -169,9 +169,9 @@ if(!function_exists('json_encode_utf_normal')) {
169
  $mb_char = substr($value, $i, 1);
170
  $result = $mb_char . $result;
171
  }
172
- return '"' . $result . '"';
173
  } elseif (is_float($value)) {
174
- return str_replace(",", ".", $value);
175
  } elseif (is_null($value)) {
176
  return 'null';
177
  } elseif (is_bool($value)) {
@@ -193,20 +193,20 @@ if(!function_exists('json_encode_utf_normal')) {
193
  $result = array();
194
  if ($with_keys) {
195
  foreach ($value as $key => $v) {
196
- $result[] = json_encode_utf_normal((string)$key) . ':' . json_encode_utf_normal($v);
197
  }
198
- return '{' . implode(',', $result) . '}';
199
  } else {
200
  foreach ($value as $key => $v) {
201
- $result[] = json_encode_utf_normal($v);
202
  }
203
  return '[' . implode(',', $result) . ']';
204
  }
205
- }
206
  }
207
  /**
208
  * Prepares the params values to store into db
209
- *
210
  * @param array $d $_POST array
211
  * @return array
212
  */
@@ -229,7 +229,7 @@ if(!function_exists('prepareParamsGmp')) {
229
  $params = utilsGmp::jsonEncode($d['params']);
230
  $d['params'] = $params;
231
  }
232
- if(empty($options))
233
  $options = array('value' => array('EMPTY'), 'data' => array());
234
  if(isset($d['code'])) {
235
  if ($d['code'] == '') {
@@ -240,7 +240,7 @@ if(!function_exists('prepareParamsGmp')) {
240
  }
241
  }
242
  if(!function_exists('prepareFieldCodeGmp')) {
243
- function prepareFieldCodeGmp($string) {
244
  $string = preg_replace("/[^a-zA-Z0-9\s]/"," ",$string);
245
  $string = preg_replace("/\s+/", " ", $string);
246
  $string = preg_replace('/ /','',$string);
@@ -285,7 +285,7 @@ if(!function_exists('toeObjectToArray')) {
285
  $data = (array) $data;
286
  foreach ($data as $key => $value) {
287
  if (is_object($value)) $value = (array) $value;
288
- if (is_array($value))
289
  $result[$key] = toeObjectToArray($value);
290
  else
291
  $result[$key] = $value;
@@ -313,4 +313,4 @@ if(!function_exists('toeMultArrayMap')) {
313
  }
314
  return $array;
315
  }
316
- }
97
  if(!function_exists('toeGetClassNameGmp')) {
98
  function toeGetClassNameGmp($class) {
99
  $className = '';
100
+ if(class_exists($class. strFirstUp(GMP_CODE)))
101
  $className = $class. strFirstUp(GMP_CODE);
102
+ else if(class_exists(GMP_CLASS_PREFIX. $class))
103
  $className = GMP_CLASS_PREFIX. $class;
104
  else
105
  $className = $class;
106
  return $className;
107
+ }
108
  }
109
  /**
110
  * Create object of specified class
137
  if(!function_exists('redirectGmp')) {
138
  function redirectGmp($url) {
139
  if(headers_sent()) {
140
+ echo '<script type="text/javascript"> document.location.href = "'. esc_attr($url). '"; </script>';
141
  } else {
142
+ header('Location: '. esc_attr($url));
143
  }
144
  exit();
145
  }
159
  if(!function_exists('json_encode_utf_normal')) {
160
  function json_encode_utf_normal($value) {
161
  if (is_int($value)) {
162
+ return (string)$value;
163
  } elseif (is_string($value)) {
164
+ $value = str_replace(array('\\', '/', '"', "\r", "\n", "\b", "\f", "\t"),
165
  array('\\\\', '\/', '\"', '\r', '\n', '\b', '\f', '\t'), $value);
166
  $convmap = array(0x80, 0xFFFF, 0, 0xFFFF);
167
  $result = "";
169
  $mb_char = substr($value, $i, 1);
170
  $result = $mb_char . $result;
171
  }
172
+ return '"' . $result . '"';
173
  } elseif (is_float($value)) {
174
+ return str_replace(",", ".", $value);
175
  } elseif (is_null($value)) {
176
  return 'null';
177
  } elseif (is_bool($value)) {
193
  $result = array();
194
  if ($with_keys) {
195
  foreach ($value as $key => $v) {
196
+ $result[] = json_encode_utf_normal((string)$key) . ':' . json_encode_utf_normal($v);
197
  }
198
+ return '{' . implode(',', $result) . '}';
199
  } else {
200
  foreach ($value as $key => $v) {
201
+ $result[] = json_encode_utf_normal($v);
202
  }
203
  return '[' . implode(',', $result) . ']';
204
  }
205
+ }
206
  }
207
  /**
208
  * Prepares the params values to store into db
209
+ *
210
  * @param array $d $_POST array
211
  * @return array
212
  */
229
  $params = utilsGmp::jsonEncode($d['params']);
230
  $d['params'] = $params;
231
  }
232
+ if(empty($options))
233
  $options = array('value' => array('EMPTY'), 'data' => array());
234
  if(isset($d['code'])) {
235
  if ($d['code'] == '') {
240
  }
241
  }
242
  if(!function_exists('prepareFieldCodeGmp')) {
243
+ function prepareFieldCodeGmp($string) {
244
  $string = preg_replace("/[^a-zA-Z0-9\s]/"," ",$string);
245
  $string = preg_replace("/\s+/", " ", $string);
246
  $string = preg_replace('/ /','',$string);
285
  $data = (array) $data;
286
  foreach ($data as $key => $value) {
287
  if (is_object($value)) $value = (array) $value;
288
+ if (is_array($value))
289
  $result[$key] = toeObjectToArray($value);
290
  else
291
  $result[$key] = $value;
313
  }
314
  return $array;
315
  }
316
+ }
gmp.php CHANGED
@@ -3,7 +3,7 @@
3
  * Plugin Name: Easy Google Maps
4
  * Plugin URI: https://supsystic.com/plugins/google-maps-plugin/
5
  * Description: The easiest way to create Google Map with markers or locations. Display any data on the map: text, images, videos. Custom map marker icons
6
- * Version: 1.10.0
7
  * Author: supsystic.com
8
  * Author URI: https://supsystic.com
9
  * Text Domain: google-maps-easy
3
  * Plugin Name: Easy Google Maps
4
  * Plugin URI: https://supsystic.com/plugins/google-maps-plugin/
5
  * Description: The easiest way to create Google Map with markers or locations. Display any data on the map: text, images, videos. Custom map marker icons
6
+ * Version: 1.10.1
7
  * Author: supsystic.com
8
  * Author URI: https://supsystic.com
9
  * Text Domain: google-maps-easy
js/admin.options.js CHANGED
@@ -306,6 +306,7 @@ function gmpInitStickyItem() {
306
  });
307
  }
308
  function gmpInitCustomCheckRadio(selector) {
 
309
  if(!selector)
310
  selector = document;
311
  jQuery(selector).find('input').iCheck('destroy').iCheck({
306
  });
307
  }
308
  function gmpInitCustomCheckRadio(selector) {
309
+ return false;
310
  if(!selector)
311
  selector = document;
312
  jQuery(selector).find('input').iCheck('destroy').iCheck({
modules/csv/controller.php DELETED
@@ -1,398 +0,0 @@
1
- <?php
2
- class csvControllerGmp extends controllerGmp {
3
- public function exportMaps() {
4
- $data = reqGmp::get('get');
5
- $delimiter = !empty($data['delimiter']) ? $data['delimiter'] : ';';
6
- $fileDate = str_replace(array('/', '.', ':'), '_', date(GMP_DATE_FORMAT_HIS));
7
- $fileName = sprintf(__('Maps from %s - %s', GMP_LANG_CODE), get_bloginfo('name'), $fileDate);
8
- $maps = frameGmp::_()->getModule('gmap')->getModel()->getAllMaps(array()); // Only maps data
9
- if(empty($maps)) {
10
- _e('You have no maps for now.', GMP_LANG_CODE);
11
- exit();
12
- }
13
-
14
- // Remove unneeded values
15
- foreach($maps as $key => $val) {
16
- unset($maps[$key]['original_id']);
17
- unset($maps[$key]['view_id']);
18
- unset($maps[$key]['view_html_id']);
19
- unset($maps[$key]['params']['view_id']);
20
- unset($maps[$key]['params']['view_html_id']);
21
- unset($maps[$key]['params']['id']);
22
- }
23
-
24
- $keys = $this->_getKeys($maps[0]);
25
- $c = $r = 0;
26
- $this->_connectCsvLib();
27
- $csvGenerator = toeCreateObjGmp('csvgeneratorGmp', array($fileName));
28
- $csvGenerator->setDelimiter($delimiter);
29
- foreach($keys as $k) {
30
- $csvGenerator->addCell($r, $c, $k);
31
- $c++;
32
- }
33
- $c = 0;
34
- $r = 1;
35
- foreach($maps as $map) {
36
- $c = 0;
37
- foreach($keys as $k) {
38
- $mapValue = $this->_prepareValueToExport( $this->_getKeyVal($map, $k) );
39
- if(is_array($mapValue)) {
40
- $mapValue = implode(';', $mapValue);
41
- }
42
- $csvGenerator->addCell($r, $c, $mapValue);
43
- $c++;
44
- }
45
- $r++;
46
- }
47
- $csvGenerator->generate();
48
- frameGmp::_()->getModule('supsystic_promo')->getModel()->saveUsageStat('csv.export.maps');
49
- exit();
50
- }
51
- public function exportMarkers() {
52
- $data = reqGmp::get('get');
53
- $delimiter = !empty($data['delimiter']) ? $data['delimiter'] : ';';
54
- $fileSiteDate = str_replace(array('/', '.', ':'), '_', esc_html(get_bloginfo('name')). ' - '. date(GMP_DATE_FORMAT_HIS));
55
- $fileName = sprintf(__('Markers from %s', GMP_LANG_CODE), $fileSiteDate);
56
- $markers = frameGmp::_()->getModule('marker')->getModel()->getAllMarkers();
57
- if(empty($markers)) {
58
- _e('You have no markers for now.', GMP_LANG_CODE);
59
- exit();
60
- }
61
- $this->_connectCsvLib();
62
- $csvGenerator = toeCreateObjGmp('csvgeneratorGmp', array($fileName));
63
- if(!empty($data['delimiter'])) {
64
- $csvGenerator->setDelimiter($delimiter);
65
- }
66
- $c = $r = 0;
67
- $keys = array('id', 'map_id', 'title', 'description', 'coord_x', 'coord_y',);
68
- $marker_keys = array();
69
- foreach($markers as $m) {
70
- $marker_keys = array_unique(array_merge($marker_keys, $this->_getKeys($m)));
71
- }
72
- sort($marker_keys);
73
- $keys = array_unique(array_merge($keys, $marker_keys));
74
- foreach($keys as $k) {
75
- $csvGenerator->addCell($r, $c, $k);
76
- $c++;
77
- }
78
- $c = 0;
79
- $r = 1;
80
- foreach($markers as $marker) {
81
- $c = 0;
82
- foreach($keys as $k) {
83
- $markerValue = $this->_prepareValueToExport( $this->_getKeyVal($marker, $k) );
84
- $csvGenerator->addCell($r, $c, $markerValue);
85
- $c++;
86
- }
87
- $r++;
88
- }
89
- $csvGenerator->generate();
90
- frameGmp::_()->getModule('supsystic_promo')->getModel()->saveUsageStat('csv.export.markers');
91
- exit();
92
- }
93
- public function exportFigures() {
94
- $data = reqGmp::get('get');
95
- $delimiter = !empty($data['delimiter']) ? $data['delimiter'] : ';';
96
- $fileSiteDate = str_replace(array('/', '.', ':'), '_', esc_html(get_bloginfo('name')). ' - '. date(GMP_DATE_FORMAT_HIS));
97
- $fileName = sprintf(__('Figures from %s', GMP_LANG_CODE), $fileSiteDate);
98
- $figures = frameGmp::_()->getModule('shape')->getModel()->getAllShapes();
99
- if(empty($figures)) {
100
- _e('You have no figures for now.', GMP_LANG_CODE);
101
- exit();
102
- }
103
- $this->_connectCsvLib();
104
- $csvGenerator = toeCreateObjGmp('csvgeneratorGmp', array($fileName));
105
- if(!empty($data['delimiter'])) {
106
- $csvGenerator->setDelimiter($delimiter);
107
- }
108
- $c = $r = 0;
109
- $keys = array('id', 'title', 'description', 'type', 'map_id', 'create_date', 'animation', 'sort_order');
110
- $figures_keys = array();
111
- foreach($figures as $m) {
112
- $figures_keys = array_unique(array_merge($figures_keys, $this->_getKeys($m)));
113
- }
114
- sort($figures_keys);
115
- $keys = array_unique(array_merge($keys, $figures_keys));
116
- foreach($keys as $k) {
117
- $csvGenerator->addCell($r, $c, $k);
118
- $c++;
119
- }
120
- $c = 0;
121
- $r = 1;
122
- foreach($figures as $figure) {
123
- $c = 0;
124
- foreach($keys as $k) {
125
- $figureValue = $this->_prepareValueToExport( $this->_getKeyVal($figure, $k) );
126
- $csvGenerator->addCell($r, $c, $figureValue);
127
- $c++;
128
- }
129
- $r++;
130
- }
131
- $csvGenerator->generate();
132
- frameGmp::_()->getModule('supsystic_promo')->getModel()->saveUsageStat('csv.export.figures');
133
- exit();
134
- }
135
- public function exportHeatmap() {
136
- $data = reqGmp::get('get');
137
- $delimiter = !empty($data['delimiter']) ? $data['delimiter'] : ';';
138
- $fileSiteDate = str_replace(array('/', '.', ':'), '_', esc_html(get_bloginfo('name')). ' - '. date(GMP_DATE_FORMAT_HIS));
139
- $fileName = sprintf(__('Heatmap from %s', GMP_LANG_CODE), $fileSiteDate);
140
- $heatmaps = frameGmp::_()->getModule('heatmap')->getModel()->getAllHeatmap();
141
- if(empty($heatmaps)) {
142
- _e('You have no heatmap for now.', GMP_LANG_CODE);
143
- exit();
144
- }
145
- $this->_connectCsvLib();
146
- $csvGenerator = toeCreateObjGmp('csvgeneratorGmp', array($fileName));
147
- if(!empty($data['delimiter'])) {
148
- $csvGenerator->setDelimiter($delimiter);
149
- }
150
- $c = $r = 0;
151
- $keys = array('id', 'map_id');
152
- $heatmap_keys = array();
153
- foreach($heatmaps as $m) {
154
- $heatmap_keys = array_unique(array_merge($heatmap_keys, $this->_getKeys($m)));
155
- }
156
- sort($heatmap_keys);
157
- $keys = array_unique(array_merge($keys, $heatmap_keys));
158
- foreach($keys as $k) {
159
- $csvGenerator->addCell($r, $c, $k);
160
- $c++;
161
- }
162
- $c = 0;
163
- $r = 1;
164
-
165
- foreach($heatmaps as $heatmap) {
166
- $c = 0;
167
- foreach($keys as $k) {
168
- $heatmapValue = $this->_prepareValueToExport( $this->_getKeyVal($heatmap, $k) );
169
- $csvGenerator->addCell($r, $c, $heatmapValue);
170
- $c++;
171
- }
172
- $r++;
173
- }
174
- $csvGenerator->generate();
175
- frameGmp::_()->getModule('supsystic_promo')->getModel()->saveUsageStat('csv.export.heatmap');
176
- exit();
177
- }
178
- public function import() {
179
- $data = reqGmp::get('post');
180
- @ini_set('auto_detect_line_endings', true);
181
- $res = new responseGmp();
182
- $this->_connectCsvLib();
183
- $csvGenerator = toeCreateObjGmp('csvgeneratorGmp', array(''));
184
- $type = reqGmp::getVar('type');
185
-
186
- if(reqGmp::getVar('csv_import_file_maps', 'file')){
187
- $file = reqGmp::getVar('csv_import_file_maps', 'file');
188
- $type = 'maps';
189
- }elseif (reqGmp::getVar('csv_import_file_markers', 'file')){
190
- $file = reqGmp::getVar('csv_import_file_markers', 'file');
191
- $type = 'markers';
192
- }elseif (reqGmp::getVar('csv_import_file_figures', 'file')){
193
- $file = reqGmp::getVar('csv_import_file_figures', 'file');
194
- $type = 'figures';
195
- }elseif (reqGmp::getVar('csv_import_file_heatmap', 'file')){
196
- $file = reqGmp::getVar('csv_import_file_heatmap', 'file');
197
- $type = 'heatmap';
198
- }
199
-
200
- if(empty($file) || empty($file['size']))
201
- $res->pushError (__('Missing File', GMP_LANG_CODE));
202
- if(!empty($file['error']))
203
- $res->pushError (sprintf(__('File uploaded with error code %s', $file['error'])));
204
- if(!$res->error()) {
205
- $fileArray = array();
206
- $handle = fopen($file['tmp_name'], 'r');
207
- $csvParams['delimiter'] = !empty($data['delimiter']) ? $data['delimiter'] : $csvGenerator->getDelimiter();
208
- $csvParams['enclosure'] = $csvGenerator->getEnclosure();
209
- $csvParams['escape'] = $csvGenerator->getEscape();
210
- //if(version_compare( phpversion(), '5.3.0' ) == -1) //for PHP lower than 5.3.0 third parameter - escape - is not implemented
211
- while($row = @fgetcsv( $handle, 0, $csvParams['delimiter'], '"' )) $fileArray[] = $row;
212
- /*else
213
- while($row = @fgetcsv( $handle, 0, $csvParams['delimiter'], $csvParams['enclosure'], $csvParams['escape'] )) $fileArray[] = $row;*/
214
- // /*var_dump($fileArray);
215
- // exit();*/
216
- // var_dump($fileArray);
217
- // exit();
218
- if(!empty($fileArray)) {
219
- if(count($fileArray) > 1) {
220
- //$overwriteSameNames = (int) reqGmp::getVar('overwrite_same_names');
221
- $keys = array_shift($fileArray);
222
- switch($type) {
223
- case 'maps':
224
- $mapModel = frameGmp::_()->getModule('gmap')->getModel();
225
- foreach($fileArray as $i => $row) {
226
- $map = array();
227
- foreach($keys as $j => $key) {
228
- $value = $this->_prepareValueToImport($row[ $j ]);
229
- if(strpos($key, '.')) {
230
- $realKeys = explode('.', $key);
231
- $realKey = array_pop( $realKeys );
232
- $realPreKey = array_pop( $realKeys );
233
- if($realPreKey == 'map_center') {
234
- $valueMapCenter = isset($map['map_center']) ? $map['map_center'] : array();
235
- $valueMapCenter[ $realKey ] = $value;
236
- $value = $valueMapCenter;
237
- $realKey = 'map_center';
238
- }
239
- } else
240
- $realKey = $key;
241
- if($value === '')
242
- $value = NULL;
243
- $map[ $realKey ] = $value;
244
- }
245
- if(isset($map['id']) && $mapModel->existsId($map['id'])) {
246
- $mapModel->updateMap($map);
247
- } else {
248
- $originalMapId = isset($map['id']) ? $map['id'] : 0;
249
- if(isset($map['id']))
250
- unset($map['id']);
251
- $newMapId = $mapModel->saveNewMap($map);
252
- if($newMapId && $originalMapId) {
253
- dbGmp::query("UPDATE @__maps SET id = '$originalMapId' WHERE id = '$newMapId'");
254
- if($originalMapId > $newMapId)
255
- dbGmp::setAutoIncrement('@__maps', $originalMapId + 1);
256
- }
257
- }
258
- }
259
- break;
260
- case 'markers':
261
- $markerModel = frameGmp::_()->getModule('marker')->getModel();
262
- foreach($fileArray as $i => $row) {
263
- $marker = array();
264
- foreach($keys as $j => $key) {
265
- $this->_setKeyVal($marker, $key, $this->_prepareValueToImport($row[ $j ]));
266
- }
267
- if(isset($marker['id']) && !$markerModel->existsId($marker['id'])) {
268
- unset($marker['id']);
269
- }
270
- $update = false;
271
- $markerModel->save($marker, $update, true);
272
- }
273
- break;
274
- case 'figures':
275
- $figuresModel = frameGmp::_()->getModule('shape')->getModel();
276
- foreach($fileArray as $i => $row) {
277
- $figures = array();
278
- foreach($keys as $j => $key) {
279
- if(!empty($row[ $j ])){
280
- $this->_setKeyVal($figures, $key, $this->_prepareValueToImport($row[ $j ]));
281
- }
282
- }
283
- if(isset($figures['id']) && !$figuresModel->existsId($figures['id'])) {
284
- unset($figures['id']);
285
- }
286
- $figuresModel->save($figures);
287
- }
288
- break;
289
- case 'heatmap':
290
- $heatmapModel = frameGmp::_()->getModule('heatmap')->getModel();
291
- foreach($fileArray as $i => $row) {
292
- $heatmap = array();
293
- foreach($keys as $j => $key) {
294
- if(!empty($row[ $j ])){
295
- $this->_setKeyVal($heatmap, $key, $this->_prepareValueToImport($row[ $j ]));
296
- }
297
- }
298
- if(isset($heatmap['id']) && !$heatmapModel->existsId($heatmap['id'])) {
299
- unset($heatmap['id']);
300
- }
301
- $heatmapModel->save($heatmap);
302
- }
303
- break;
304
- }
305
- /*$importRes = $this->getModel()->import($fileArray, $overwriteSameNames);
306
- if($importRes) {
307
- if($importRes['map']['added'])
308
- $res->addMessage (sprintf(__('Added %s maps', GMP_LANG_CODE), $importRes['map']['added']));
309
- if($importRes['map']['updated'])
310
- $res->addMessage (sprintf(__('Updated %s maps', GMP_LANG_CODE), $importRes['map']['added']));
311
- if($importRes['marker']['added'])
312
- $res->addMessage (sprintf(__('Added %s markers', GMP_LANG_CODE), $importRes['map']['added']));
313
- if($importRes['marker']['updated'])
314
- $res->addMessage (sprintf(__('Updated %s markers', GMP_LANG_CODE), $importRes['map']['added']));
315
- } else
316
- $res->pushError ($this->getModel()->getErrors());*/
317
- } else
318
- $res->pushError (__('File should contain more then 1 row, at least 1 row should be for headers', GMP_LANG_CODE));
319
- } else
320
- $res->pushError (__('Empty data in file', GMP_LANG_CODE));
321
- }
322
- frameGmp::_()->getModule('supsystic_promo')->getModel()->saveUsageStat('csv.import');
323
- $res->ajaxExec();
324
- }
325
- public function saveCsvOptions() {
326
- $res = new responseGmp();
327
- if(frameGmp::_()->getModule('options')->getModel()->saveGroup(reqGmp::get('post'))) {
328
- $res->addMessage(__('Done', GMP_LANG_CODE));
329
- } else
330
- $res->pushError ($this->getModel('options')->getErrors());
331
- return $res->ajaxExec();
332
- }
333
- private function _connectCsvLib() {
334
- importClassGmp('filegeneratorGmp');
335
- importClassGmp('csvgeneratorGmp');
336
- }
337
- private function _getSitePath() {
338
- return $this->getModel()->getSitePath();
339
- }
340
- private function _getKeys($data, $prefix = array()) {
341
- $keys = array();
342
- foreach($data as $k => $v) {
343
- if(is_array($v)) {
344
- $newPrefix = $prefix;
345
- $newPrefix[] = $k;
346
- $keys = array_merge($keys, $this->_getKeys($v, $newPrefix));
347
- } else {
348
- $keys[] = empty($prefix) ? $k : implode('.', $prefix). '.'. $k;
349
- }
350
- }
351
- return $keys;
352
- }
353
- private function _getKeyVal($data, $key) {
354
- if(strpos($key, '.')) {
355
- $keys = explode('.', $key);
356
- $firstKey = array_shift($keys);
357
- return isset($data[ $firstKey ]) ? $this->_getKeyVal($data[ $firstKey ], implode('.', $keys)) : '';
358
- } else {
359
- return isset($data[ $key ]) ? $data[ $key ] : '';
360
- }
361
- }
362
- private function _setKeyVal(&$data, $key, $val) {
363
- if(strpos($key, '.')) {
364
- $keys = explode('.', $key);
365
- $firstKey = array_shift($keys);
366
- if(!isset($data[ $firstKey ]))
367
- $data[ $firstKey ] = array();
368
- $this->_setKeyVal($data[ $firstKey ], implode('.', $keys), $val);
369
- } else {
370
- $data[ $key ] = $val;
371
- }
372
- }
373
- private function _prepareValueToExport($val) {
374
- $sitePath = $this->_getSitePath();
375
- return htmlspecialchars(str_replace($sitePath, '[GMP_SITE_PATH]', $val));
376
- }
377
- private function _prepareValueToImport($val) {
378
- $sitePath = $this->_getSitePath();
379
- return str_replace('[GMP_SITE_PATH]', $sitePath, htmlspecialchars_decode(addslashes($val)));
380
- }
381
- private function _toYesNo($val) {
382
- return empty($val) ? 'No' : 'Yes';
383
- }
384
- private function _fromYesNo($val) {
385
- return $val === 'No' ? 0 : 1;
386
- }
387
-
388
- /**
389
- * @see controller::getPermissions();
390
- */
391
- public function getPermissions() {
392
- return array(
393
- GMP_USERLEVELS => array(
394
- GMP_ADMIN => array('exportMaps', 'exportMaps', 'import', 'saveCsvOptions')
395
- ),
396
- );
397
- }
398
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
modules/csv/js/admin.csv.js DELETED
@@ -1,76 +0,0 @@
1
- var gmpCsvImportData = {};
2
- jQuery(document).ready(function(){
3
- jQuery('#gmpCsvExportMapsBtn').click(function(){
4
- var delimiter = jQuery('#gmpCsvExportDelimiter').val() || ';';
5
- toeRedirect(createAjaxLinkGmp({
6
- page: 'csv'
7
- , action: 'exportMaps'
8
- , withMarkers: 1
9
- , delimiter: delimiter
10
- , onSubmit: gmpCsvImportOnSubmit
11
- , onComplete: gmpCsvImportOnComplete
12
- }));
13
- return false;
14
- });
15
- jQuery('#gmpCsvExportMarkersBtn').click(function(){
16
- var delimiter = jQuery('#gmpCsvExportDelimiter').val() || ';';
17
- toeRedirect(createAjaxLinkGmp({
18
- page: 'csv'
19
- , action: 'exportMarkers'
20
- , delimiter: delimiter
21
- , onSubmit: gmpCsvImportOnSubmit
22
- , onComplete: gmpCsvImportOnComplete
23
- }));
24
- return false;
25
- });
26
- jQuery('#gmpCsvExportFiguresBtn').click(function(){
27
- var delimiter = jQuery('#gmpCsvExportDelimiter').val() || ';';
28
- toeRedirect(createAjaxLinkGmp({
29
- page: 'csv'
30
- , action: 'exportFigures'
31
- , delimiter: delimiter
32
- , onSubmit: gmpCsvImportOnSubmit
33
- , onComplete: gmpCsvImportOnComplete
34
- }));
35
- return false;
36
- });
37
- jQuery('#gmpCsvExportHeatmapBtn').click(function(){
38
- var delimiter = jQuery('#gmpCsvExportDelimiter').val() || ';';
39
- toeRedirect(createAjaxLinkGmp({
40
- page: 'csv'
41
- , action: 'exportHeatmap'
42
- , delimiter: delimiter
43
- , onSubmit: gmpCsvImportOnSubmit
44
- , onComplete: gmpCsvImportOnComplete
45
- }));
46
- return false;
47
- });
48
- jQuery('#gmpCsvSaveBtn').click(function () {
49
- jQuery('#gmpCsvForm').submit();
50
- return false;
51
- });
52
- jQuery('#gmpCsvForm').submit(function () {
53
- jQuery(this).sendFormGmp({
54
- btn: '#gmpCsvSaveBtn'
55
- });
56
- return false;
57
- });
58
-
59
- /*jQuery('#gmpCsvImportMarkersBtn').on('click', function () {
60
- jQuery('input[name="csv_import_file"]').click();
61
- });*/
62
- });
63
- function gmpCsvImportOnSubmit() {
64
- var msg = jQuery('#gmpCsvImportMsg');
65
-
66
- msg.showLoaderGmp();
67
- msg.removeClass('toeErrorMsg');
68
- msg.removeClass('toeSuccessMsg');
69
-
70
- // Add CSV options to request data
71
- gmpCsvImportData['delimiter'] = jQuery('#gmpCsvExportDelimiter').val() || ';';
72
- //gmpCsvImportData['overwrite_same_names'] = jQuery('#gmpCsvOverwriteSameNames').attr('checked') ? 1 : 0;
73
- }
74
- function gmpCsvImportOnComplete(file, res) {
75
- toeProcessAjaxResponseGmp(res, 'gmpCsvImportMsg');
76
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
modules/csv/mod.php DELETED
@@ -1,95 +0,0 @@
1
- <?php
2
- class csvGmp extends moduleGmp {
3
- private $_markerHeaders = array();
4
- private $_mapHeaders = array();
5
-
6
- public function init() {
7
- dispatcherGmp::addFilter('mainAdminTabs', array($this, 'addAdminTab'));
8
- }
9
- public function addAdminTab($tabs) {
10
- $tabs[ $this->getCode() ] = array(
11
- 'label' => __('Maps Import / Export', GMP_LANG_CODE), 'callback' => array($this, 'getTabContent'), 'fa_icon' => 'fa-download', 'sort_order' => 50,
12
- );
13
- return $tabs;
14
- }
15
- public function getTabContent() {
16
- frameGmp::_()->addScript('admin.csv', $this->getModPath(). 'js/admin.csv.js');
17
- return $this->getView()->getTabContent();
18
- }
19
- /*public function addSettingsBlock($bloks) {
20
- frameGmp::_()->addScript('admin.csv', $this->getModPath(). 'js/admin.csv.js');
21
- $bloks['csvImportExport'] = $this->getView()->getSettitngsBlockHtml();
22
- return $bloks;
23
- }*/
24
- public function getMarkerHeadersList() {
25
- if(empty($this->_markerHeaders)) {
26
- $this->_markerHeaders = array(
27
- 'id' => 'ID',
28
- 'title' => 'Title',
29
- 'description' => 'Description',
30
- 'map_id' => 'Map ID',
31
- 'address' => 'Address',
32
- 'coord_x' => 'Longitude',
33
- 'coord_y' => 'Latitude',
34
- 'animation' => 'Animation',
35
-
36
- 'icon' => 'Icon ID',
37
- 'icon_path' => 'Icon Path',
38
- 'icon_title' => 'Icon Title',
39
-
40
- 'marker_group_id' => 'Group ID',
41
- 'marker_group_title' => 'Group Title',
42
- 'marker_group_description' => 'Group Description',
43
-
44
- 'more_info_link' => 'Add More info in description window',
45
- 'icon_fit_standard_size' => 'Fit icon in standard size',
46
- );
47
- }
48
- return $this->_markerHeaders;
49
- }
50
- public function getMapHeadersList() {
51
- if(empty($this->_mapHeaders)) {
52
- $this->_mapHeaders = array(
53
- 'id' => 'ID',
54
- 'title' => 'Title',
55
- 'description' => 'Description',
56
- // params
57
- 'enable_zoom' => 'Enable Zoom',
58
- 'enable_mouse_zoom' => 'Enable Mouse Zoom',
59
- 'description_mouse_hover' => 'Infowindow on mouse over',
60
- 'zoom' => 'Zoom',
61
- 'type' => 'Type',
62
- 'language' => 'Language',
63
- 'map_display_mode' => 'Display mode',
64
- 'map_center' => 'Map Center',
65
- 'infowindow_height' => 'Infowindow Height',
66
- 'infowindow_width' => 'Infowindow Width',
67
- 'enable_marker_clasterer' => 'Enable markers clusterization',
68
- 'markers_list_show_only_visible' => 'Show only visible markers in list',
69
- 'disable_search_table' => 'Disable search in markers list',
70
- 'disable_categories_selection' => 'Disable categories selection',
71
- 'markers_desc_show_get_direction' => 'Get Directions link',
72
- 'markers_desc_show_get_direction' => 'Get Directions link',
73
- 'markers_desc_show_view_on_google_maps' => 'View on Google Maps link',
74
- 'ad_publisher_id' => 'AD Publisher ID (PRO)',
75
- 'ad_pos' => 'AD Position (PRO)',
76
- 'markers_list_type' => 'Markers list type (PRO)',
77
- 'custom_map_controls' => 'Custom map controls (PRO)',
78
- 'stylization' => 'Stylization (PRO)',
79
- 'enable_full_screen_btn' => 'Enable full screen button (PRO)',
80
- 'enable_trafic_layer' => 'Enable trafic layer (PRO)',
81
- 'enable_transit_layer' => 'Enable transit layer (PRO)',
82
- 'enable_bicycling_layer' => 'Enable bicycling layer (PRO)',
83
- // html options
84
- 'width' => 'Width',
85
- 'width_units' => 'Width units',
86
- 'height' => 'Height',
87
- 'align' => 'Align',
88
- 'margin' => 'Margin',
89
- 'border_color' => 'Border Color',
90
- 'border_width' => 'Border Width',
91
- );
92
- }
93
- return $this->_mapHeaders;
94
- }
95
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
modules/csv/models/csv.php DELETED
@@ -1,183 +0,0 @@
1
- <?php
2
- class csvModelGmp extends modelGmp {
3
- private $_sitePath = '';
4
- public function getSitePath() {
5
- if(!$this->_sitePath) {
6
- $this->_sitePath = get_bloginfo('wpurl');
7
- }
8
- return $this->_sitePath;
9
- }
10
- private function _detectMarkerGoupId($marker) {
11
- if(!empty($marker['marker_group_id'])) {
12
- $groupByTitle = frameGmp::_()->getModule('marker_groups')->getModel()->getGroupByTitle($marker['marker_group_title']);
13
- if($groupByTitle) {
14
- return $groupByTitle['id'];
15
- } else {
16
- return frameGmp::_()->getModule('marker_groups')->getModel()->saveGroup(array(
17
- 'title' => $marker['marker_group_title'],
18
- 'description' => $marker['marker_group_description'],
19
- ));
20
- }
21
- }
22
- return 0;
23
- }
24
- private function _beforeInsert($field) {
25
- $field = trim(htmlspecialchars_decode($field));
26
- // Remove double quotes from start and end of the value
27
- if(strpos($field, '"') === 0) {
28
- $field = substr($field, 1, strlen($field));
29
- $field = substr($field, 0, strlen($field)-1);
30
- }
31
- $field = str_replace('[GMP_SITE_PATH]', $this->getSitePath(), $field);
32
- return $field;
33
- }
34
- public function import($fileArray, $overwriteSameNames = 1) {
35
- $inputFields = $this->_getFieldsListFromInput($fileArray);
36
- if(!empty($inputFields)) {
37
- if($importType = $this->_detectImportType($inputFields)) {
38
- $counters = array('map' => array(), 'marker' => array());
39
- $counters['map'] = $counters['marker'] = array('added' => 0, 'updated' => 0);
40
- $lastMapId = 0;
41
- //var_dump($inputFields);
42
- for($i = 1; $i < count($fileArray); $i++) { // $i = 1 - we will ignore first (0) row - as it is titles
43
- $addData = array();
44
- $res = false;
45
- for($j = 0; $j < count($fileArray[$i]); $j++) {
46
- /*$addData[ $inputFields[$j] ] = trim(htmlspecialchars_decode($fileArray[$i][$j]));
47
- // Remove double quotes from start and end of the value
48
- if(strpos($addData[ $inputFields[$j] ], '"') === 0) {
49
- $addData[ $inputFields[$j] ] = substr($addData[ $inputFields[$j] ], 1, strlen($addData[ $inputFields[$j] ]));
50
- $addData[ $inputFields[$j] ] = substr($addData[ $inputFields[$j] ], 0, strlen($addData[ $inputFields[$j] ])-1);
51
- }*/
52
- $addData[ $inputFields[$j] ] = $this->_beforeInsert($fileArray[$i][$j]);
53
- }
54
- $currentImporType = $importType;
55
- if($importType == 'map_marker') {
56
- $countMap = $countMarker = 0;
57
- foreach($addData as $fieldKey => $fieldData) {
58
- if(strpos($fieldKey, 'for_marker_') === 0) {
59
- $countMarker++;
60
- } else {
61
- $countMap++;
62
- }
63
- }
64
- //var_dump($countMarker, $countMap, $addData);
65
- $countMarker ? $currentImporType = 'marker' : $currentImporType = 'map';
66
- //var_dump($currentImporType);
67
- if($currentImporType == 'marker') {
68
- $newAddData = array();
69
- foreach($addData as $fieldKey => $fieldVal) {
70
- $newAddData[ str_replace('for_marker_', '', $fieldKey) ] = $fieldVal;
71
- }
72
- $addData = $newAddData;
73
- $addData['map_id'] = $lastMapId;
74
- $addData['group_id'] = $this->_detectMarkerGoupId($addData);
75
- }
76
- }
77
- /*var_dump($addData);
78
- exit();*/
79
- switch($currentImporType) {
80
- case 'marker':
81
- if(isset($addData['id'] ))
82
- unset($addData['id']);
83
- $updateId = 0;
84
- if($overwriteSameNames) {
85
- $marker = frameGmp::_()->getModule('marker')->getModel()->getMarkerByTitle($addData['title']);
86
- if($marker && $marker['id']) {
87
- $updateId = $marker['id'];
88
- }
89
- }
90
- if($updateId) {
91
- $addData['id'] = $updateId;
92
- }
93
- $res = frameGmp::_()->getModule('marker')->getModel()->save($addData);
94
- if($res) {
95
- $updateId ? $counters['marker']['updated']++ : $counters['marker']['added']++;
96
- }
97
- break;
98
- case 'map':
99
-
100
- // Fix empty map after import with invalid "map_center" value.
101
- if (array_key_exists('map_center', $addData)) {
102
- $center = explode(',', $addData['map_center']);
103
-
104
- $addData['map_center'] = array(
105
- 'coord_x' => trim($center[0]),
106
- 'coord_y' => trim($center[1]),
107
- );
108
- }
109
-
110
- $updateId = 0;
111
- if($overwriteSameNames) {
112
- $map = frameGmp::_()->getModule('maps')->getModel()->getMapByTitle($addData['title']);
113
- if($map && $map['id']) {
114
- $updateId = $map['id'];
115
- }
116
- }
117
- if($updateId) {
118
- $addData['id'] = $updateId;
119
- $lastMapId = $updateId;
120
- $res = frameGmp::_()->getModule('maps')->getModel()->updateMap($addData);
121
- } else {
122
- $res = frameGmp::_()->getModule('maps')->getModel()->saveNewMap($addData);
123
- $lastMapId = $res;
124
- }
125
- if($res) {
126
- $updateId ? $counters['map']['updated']++ : $counters['map']['added']++;
127
- }
128
- break;
129
- }
130
- }
131
- return $counters;
132
- } else
133
- $this->pushError (__('Can not detect import list type', GMP_LANG_CODE));
134
- } else
135
- $this->pushError (__('Can not find fields names', GMP_LANG_CODE));
136
- return false;
137
- }
138
- public function importMaps($fileArray, $inputFields) {
139
-
140
- }
141
- public function importMarkers($fileArray) {
142
-
143
- }
144
- private function _getFieldsListFromInput($fileArray) {
145
- $fields = array();
146
- foreach($fileArray[0] as $headLabel) {
147
- $field = $this->_getFieldNameFromStr($headLabel);
148
- if($field)
149
- $fields[] = $field;
150
- }
151
- return $fields;
152
- }
153
- private function _getFieldNameFromStr($str) {
154
- $str = trim($str);
155
- preg_match('/\[(?<key>.+)\]/i', $str, $matches);
156
- if($matches && isset($matches['key']) && !empty($matches['key'])) {
157
- $key = trim($matches['key']);
158
- if(strpos($str, 'Marker - ') === 0)
159
- $key = 'for_marker_'. $key;
160
- return $key;
161
- }
162
- return false;
163
- }
164
- private function _detectImportType($inputFields) {
165
- $markerInputFields = $this->getModule()->getMarkerHeadersList();
166
- $mapInputFields = $this->getModule()->getMapHeadersList();
167
-
168
- $intersectWithMarkers = array_intersect($inputFields, array_keys($markerInputFields));
169
- $intersectWithMaps = array_intersect($inputFields, array_keys($mapInputFields));
170
- foreach($inputFields as $key) {
171
- if(strpos($key, 'for_marker') === 0)
172
- return 'map_marker';
173
- }
174
- if(count($intersectWithMarkers) == 17 && count($intersectWithMaps) == 21)
175
- return 'map_marker';
176
- if(count($intersectWithMarkers) > count($intersectWithMaps)) {
177
- return 'marker';
178
- } elseif(count($intersectWithMarkers) < count($intersectWithMaps)) {
179
- return 'map';
180
- }
181
- return false;
182
- }
183
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
modules/csv/views/csv.php DELETED
@@ -1,10 +0,0 @@
1
- <?php
2
- class csvViewGmp extends viewGmp {
3
- public function getTabContent() {
4
- $options = frameGmp::_()->getModule('options')->getModel()->getAll();
5
- $csv_options = !empty($options['csv_options']) && !empty($options['csv_options']['value']) ? $options['csv_options']['value'] : array();
6
- $this->assign('delimiters', array(';' => ';', ',' => ','));
7
- $this->assign('options', $csv_options);
8
- return parent::getContent('csvTabContent');
9
- }
10
- }
 
 
 
 
 
 
 
 
 
 
modules/csv/views/tpl/csvTabContent.php DELETED
@@ -1,119 +0,0 @@
1
- <section>
2
- <div class="supsystic-item supsystic-panel">
3
- <div id="containerWrapper">
4
- <table class="form-table">
5
- <tr>
6
- <th scope="row">
7
- <label>
8
- <?php _e('Maps', GMP_LANG_CODE); ?>
9
- </label>
10
- </th>
11
- <td>
12
- <button id="gmpCsvExportMapsBtn" class="button">
13
- <?php _e('Export', GMP_LANG_CODE); ?>
14
- </button>
15
- <?php echo htmlGmp::ajaxfile('csv_import_file_maps', array(
16
- 'url' => uriGmp::_(array('baseUrl' => admin_url('admin-ajax.php'), 'page' => 'csv', 'action' => 'import', 'type' => 'maps', 'reqType' => 'ajax')),
17
- 'data' => 'gmpCsvImportData',
18
- 'buttonName' => __('Import', GMP_LANG_CODE),
19
- 'responseType' => 'json',
20
- 'onSubmit' => 'gmpCsvImportOnSubmit',
21
- 'onComplete' => 'gmpCsvImportOnComplete',
22
- 'btn_class' => 'button',
23
- ))?>
24
- </td>
25
- </tr>
26
- <tr>
27
- <th scope="row">
28
- <label for="gmpCsvExportMarkersBtn">
29
- <?php _e('Markers', GMP_LANG_CODE); ?>
30
- </label>
31
- </th>
32
- <td>
33
- <button id="gmpCsvExportMarkersBtn" class="button">
34
- <?php _e('Export', GMP_LANG_CODE); ?>
35
- </button>
36
- <?php echo htmlGmp::ajaxfile('csv_import_file_markers', array(
37
- 'url' => uriGmp::_(array('baseUrl' => admin_url('admin-ajax.php'), 'page' => 'csv', 'action' => 'import', 'type' => 'markers', 'reqType' => 'ajax')),
38
- 'data' => 'gmpCsvImportData',
39
- 'buttonName' => __('Import', GMP_LANG_CODE),
40
- 'responseType' => 'json',
41
- 'onSubmit' => 'gmpCsvImportOnSubmit',
42
- 'onComplete' => 'gmpCsvImportOnComplete',
43
- 'btn_class' => 'button',
44
- ))?>
45
- </td>
46
- </tr>
47
- <tr>
48
- <th scope="row">
49
- <label for="gmpCsvExportFiguresBtn">
50
- <?php _e('Figures', GMP_LANG_CODE); ?>
51
- </label>
52
- </th>
53
- <td>
54
- <button id="gmpCsvExportFiguresBtn" class="button">
55
- <?php _e('Export', GMP_LANG_CODE); ?>
56
- </button>
57
- <?php echo htmlGmp::ajaxfile('csv_import_file_figures', array(
58
- 'url' => uriGmp::_(array('baseUrl' => admin_url('admin-ajax.php'), 'page' => 'csv', 'action' => 'import', 'type' => 'figures', 'reqType' => 'ajax')),
59
- 'data' => 'gmpCsvImportData',
60
- 'buttonName' => __('Import', GMP_LANG_CODE),
61
- 'responseType' => 'json',
62
- 'onSubmit' => 'gmpCsvImportOnSubmit',
63
- 'onComplete' => 'gmpCsvImportOnComplete',
64
- 'btn_class' => 'button',
65
- ))?>
66
- </td>
67
- </tr>
68
- <tr>
69
- <th scope="row">
70
- <label for="gmpCsvExportHeatMapBtn">
71
- <?php _e('HeatMap Layer', GMP_LANG_CODE); ?>
72
- </label>
73
- </th>
74
- <td>
75
- <button id="gmpCsvExportHeatmapBtn" class="button">
76
- <?php _e('Export', GMP_LANG_CODE); ?>
77
- </button>
78
- <?php echo htmlGmp::ajaxfile('csv_import_file_heatmap', array(
79
- 'url' => uriGmp::_(array('baseUrl' => admin_url('admin-ajax.php'), 'page' => 'csv', 'action' => 'import', 'type' => 'heatmap', 'reqType' => 'ajax')),
80
- 'data' => 'gmpCsvImportData',
81
- 'buttonName' => __('Import', GMP_LANG_CODE),
82
- 'responseType' => 'json',
83
- 'onSubmit' => 'gmpCsvImportOnSubmit',
84
- 'onComplete' => 'gmpCsvImportOnComplete',
85
- 'btn_class' => 'button',
86
- ))?>
87
- </td>
88
- </tr>
89
- <tr>
90
- <td colspan="2"><div id="gmpCsvImportMsg"></div></td>
91
- </tr>
92
- </table>
93
- <h3><?php _e('CSV Options', GMP_LANG_CODE)?></h3>
94
- <form id="gmpCsvForm">
95
- <table class="form-table no-border">
96
- <tr>
97
- <th scope="row">
98
- <label for="gmpCsvExportDelimiter">
99
- <?php _e('Delimiter', GMP_LANG_CODE); ?>
100
- </label>
101
- </th>
102
- <td>
103
- <?php echo htmlGmp::selectbox('opt_values[csv_options][delimiter]', array(
104
- 'options' => $this->delimiters,
105
- 'value' => !empty($this->options['delimiter']) ? $this->options['delimiter'] : ';',
106
- 'attrs' => 'style="min-width: 150px;" id="gmpCsvExportDelimiter"'))?>
107
- </td>
108
- </tr>
109
- </table>
110
- <?php echo htmlGmp::hidden('page', array('value' => 'csv'))?>
111
- <?php echo htmlGmp::hidden('action', array('value' => 'saveCsvOptions'))?>
112
- </form>
113
- <button id="gmpCsvSaveBtn" class="button">
114
- <i class="fa fa-save"></i>
115
- <?php _e('Save', GMP_LANG_CODE)?>
116
- </button>
117
- </div>
118
- </div>
119
- </section>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
modules/gmap/views/tpl/gmapDrawMap.php CHANGED
@@ -48,19 +48,19 @@ $filtersWrapperEnd = $markersDisplayType ? "</div>" : '';?>
48
  }
49
  ?>
50
  >
51
- <?php echo $mapsWrapperStart; ?>
52
  <div class="gmpMapDetailsContainer" id="gmpMapDetailsContainer_<?php echo esc_attr($viewId) ;?>">
53
  <i class="gmpKMLLayersPreloader fa fa-spinner fa-spin" aria-hidden="true" style="display: none;"></i>
54
  <div class="gmp_MapPreview <?php echo esc_attr($mapPreviewClassname);?>" id="<?php echo esc_attr($mapHtmlId) ;?>"></div>
55
  <?php dispatcherGmp::doAction('addMapCustomInfoWindow', $this->currentMap); ?>
56
  </div>
57
- <?php echo $mapsWrapperEnd; ?>
58
 
59
- <?php echo $filtersWrapperStart; ?>
60
  <div class="gmpMapMarkerFilters" id="gmpMapMarkerFilters_<?php echo esc_attr($viewId);?>">
61
  <?php dispatcherGmp::doAction('addMapFilters', $this->currentMap); ?>
62
  </div>
63
- <?php echo $filtersWrapperEnd; ?>
64
 
65
  <div class="gmpMapProControlsCon" id="gmpMapProControlsCon_<?php echo esc_attr($viewId);?>">
66
  <?php dispatcherGmp::doAction('addMapBottomControls', $this->currentMap); ?>
@@ -73,7 +73,7 @@ $filtersWrapperEnd = $markersDisplayType ? "</div>" : '';?>
73
  <?php dispatcherGmp::doAction('addMapKmlFilterData', $this->currentMap); ?>
74
  </div>
75
  <div class="gmpSocialSharingShell gmpSocialSharingShell_<?php echo esc_attr($viewId);?>">
76
- <?php echo $this->currentMap['params']['ss_html'];?>
77
  </div>
78
  <div style="clear: both;"></div>
79
  </div>
48
  }
49
  ?>
50
  >
51
+ <?php echo htmlGmp::wpKsesHtml($mapsWrapperStart); ?>
52
  <div class="gmpMapDetailsContainer" id="gmpMapDetailsContainer_<?php echo esc_attr($viewId) ;?>">
53
  <i class="gmpKMLLayersPreloader fa fa-spinner fa-spin" aria-hidden="true" style="display: none;"></i>
54
  <div class="gmp_MapPreview <?php echo esc_attr($mapPreviewClassname);?>" id="<?php echo esc_attr($mapHtmlId) ;?>"></div>
55
  <?php dispatcherGmp::doAction('addMapCustomInfoWindow', $this->currentMap); ?>
56
  </div>
57
+ <?php echo htmlGmp::wpKsesHtml($mapsWrapperEnd); ?>
58
 
59
+ <?php echo htmlGmp::wpKsesHtml($filtersWrapperStart); ?>
60
  <div class="gmpMapMarkerFilters" id="gmpMapMarkerFilters_<?php echo esc_attr($viewId);?>">
61
  <?php dispatcherGmp::doAction('addMapFilters', $this->currentMap); ?>
62
  </div>
63
+ <?php echo htmlGmp::wpKsesHtml($filtersWrapperEnd); ?>
64
 
65
  <div class="gmpMapProControlsCon" id="gmpMapProControlsCon_<?php echo esc_attr($viewId);?>">
66
  <?php dispatcherGmp::doAction('addMapBottomControls', $this->currentMap); ?>
73
  <?php dispatcherGmp::doAction('addMapKmlFilterData', $this->currentMap); ?>
74
  </div>
75
  <div class="gmpSocialSharingShell gmpSocialSharingShell_<?php echo esc_attr($viewId);?>">
76
+ <?php echo htmlGmp::wpKsesHtml($this->currentMap['params']['ss_html']);?>
77
  </div>
78
  <div style="clear: both;"></div>
79
  </div>
modules/gmap/views/tpl/gmapEditMap.php CHANGED
@@ -25,17 +25,9 @@
25
  if(property_exists($this, 'membershipPluginError')) {
26
  echo esc_attr($this->membershipPluginError);
27
  } else if(property_exists($this, 'pluginInstallUrl')) {
28
- echo '<a class="button" target="_blank" href="' . esc_attr($this->pluginInstallUrl) . '">';
29
- _e('Integrate with Membership', GMP_LANG_CODE);
30
- echo '</a>';
31
  } else if(property_exists($this, 'canUseMembershipFeature') && $this->canUseMembershipFeature == 1) {
32
- echo '<div class="mbs-turn-on-wrapper">';
33
- echo htmlGmp::checkboxHiddenVal('map_opts[membership-selectbox]', array(
34
- 'value' => isset($this->map['params']['membershipEnable']) ? esc_attr($this->map['params']['membershipEnable']) : 0,
35
- 'attrs' => 'id="membershipPropEnable"',
36
- ));
37
- echo '<label for="membershipPropEnable">' . _e('Enable for Membership', GMP_LANG_CODE) . '</label>';
38
- echo '</div>';
39
  }
40
  ?>
41
  </div>
@@ -96,10 +88,10 @@
96
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('Your map name', GMP_LANG_CODE)?>"></i>
97
  </th>
98
  <td>
99
- <?php echo htmlGmp::text('map_opts[title]', array(
100
  'value' => $this->editMap ? esc_attr($this->map['title']) : '',
101
  'attrs' => 'style="width: 100%;" id="map_opts_title"',
102
- 'required' => true))?>
103
  </td>
104
  </tr>
105
  <tr>
@@ -111,20 +103,20 @@
111
  </th>
112
  <td>
113
  <div class="sup-col sup-w-25">
114
- <?php echo htmlGmp::input('map_opts[width]', array(
115
- 'value' => $this->editMap ? esc_attr($this->map['html_options']['width']) : '100',
116
  'type' => 'number',
117
- 'attrs' => 'style="width: 100%;" id="map_opts_width"'))?>
118
  </div>
119
  <div class="sup-col sup-w-75">
120
- <label class="supsystic-tooltip" title="<?php _e('Pixels', GMP_LANG_CODE)?>" style="margin-right: 15px; position: relative; top: 7px;"><?php echo htmlGmp::radiobutton('map_opts[width_units]', array(
121
  'value' => 'px',
122
- 'checked' => $this->editMap ? esc_attr(htmlGmp::checkedOpt($this->map['params'], 'width_units', 'px')) : false,
123
- ))?>&nbsp;<?php _e('Px', GMP_LANG_CODE)?></label>
124
- <label style="margin-right: 15px; position: relative; top: 7px;"><?php echo htmlGmp::radiobutton('map_opts[width_units]', array(
125
  'value' => '%',
126
- 'checked' => $this->editMap ? esc_attr(htmlGmp::checkedOpt($this->map['params'], 'width_units', '%')) : true,
127
- ))?>&nbsp;<?php _e('Percent', GMP_LANG_CODE)?></label>
128
  </div>
129
  </td>
130
  </tr>
@@ -144,23 +136,23 @@
144
  <td>
145
  <div class="gmpMainHeightOpts sup-col sup-w-50 no-p">
146
  <div class="sup-col sup-w-50" style="padding-right: 15px;">
147
- <?php echo htmlGmp::input('map_opts[height]', array(
148
  'value' => $this->editMap ? esc_attr($this->map['html_options']['height']) : '250',
149
  'type' => 'number',
150
- 'attrs' => 'style="width: 100%;" id="map_opts_height"'))?>
151
  </div>
152
  <div class="sup-col sup-w-50 no-p">
153
- <label class="supsystic-tooltip" title="<?php _e('Pixels', GMP_LANG_CODE)?>" style="margin-right: 15px; position: relative; top: 7px;"><?php echo htmlGmp::radiobutton('map_opts_height_units_is_constant', array(
154
  'value' => 'px',
155
  'checked' => true,
156
- ))?>&nbsp;<?php _e('Px', GMP_LANG_CODE)?></label>
157
  </div>
158
  </div>
159
  <div class="gmpAdditionalHeightOpts sup-col sup-w-100 no-p">
160
  <div style="margin-top: 8px;">
161
- <?php echo htmlGmp::checkboxHiddenVal('map_opts[adapt_map_to_screen_height]', array(
162
  'value' => $this->editMap && isset($this->map['params']['adapt_map_to_screen_height']) ? esc_attr($this->map['params']['adapt_map_to_screen_height']) : false,
163
- ))?>
164
  <span style="vertical-align: middle;">
165
  <?php _e('Adapt map to screen height', GMP_LANG_CODE)?>
166
  </span>
@@ -170,29 +162,29 @@
170
  <label for="map_opts_map_selectors_content_before">
171
  <?php _e('Content Before', GMP_LANG_CODE)?>
172
  </label>
173
- <?php echo htmlGmp::text('map_opts[selectors][content_before]', array(
174
  'value' => $this->editMap && isset($this->map['params']['selectors']['content_before']) ? esc_attr($this->map['params']['selectors']['content_before']) : '',
175
  'placeholder' => '',
176
- 'attrs' => 'style="width: 100%;" id="map_opts_selector_content_before"'))?>
177
  </div>
178
  <div style="margin-top: 8px;">
179
  <label for="map_opts_map_selectors_content_after">
180
  <?php _e('Content After', GMP_LANG_CODE)?>
181
  </label>
182
- <?php echo htmlGmp::text('map_opts[selectors][content_after]', array(
183
  'value' => $this->editMap && isset($this->map['params']['selectors']['content_after']) ? esc_attr($this->map['params']['selectors']['content_after']) : '',
184
  'placeholder' => '',
185
- 'attrs' => 'style="width: 100%;" id="map_opts_selector_content_after"'))?>
186
  </div>
187
  </div>
188
  </div>
189
  </td>
190
  </tr>
191
  </table>
192
- <?php /*?><div id="gmpExtendOptsBtnShell" class="row-pad">
193
  <a href="#" id="gmpExtendOptsBtn" class="button"><?php _e('Extended Options', GMP_LANG_CODE)?></a>
194
  </div><?php */?>
195
- <div id="gmpExtendOptsShell" class="row">
196
  <table class="form-table">
197
  <tr>
198
  <th scope="row">
@@ -203,19 +195,21 @@
203
  </th>
204
  <td>
205
  <div class="sup-col sup-w-50">
206
- <?php echo htmlGmp::selectbox('map_opts[type_control]', array(
207
  'options' => array('none' => __('None', GMP_LANG_CODE), 'DROPDOWN_MENU' => __('Dropdown Menu', GMP_LANG_CODE), 'HORIZONTAL_BAR' => __('Horizontal Bar', GMP_LANG_CODE)),
208
  'value' => $this->editMap && isset($this->map['params']['type_control']) ? esc_attr($this->map['params']['type_control']) : 'HORIZONTAL_BAR',
209
- 'attrs' => 'style="width: 100%;" id="map_opts_type_control"'))?>
210
  </div>
211
  <div class="sup-col sup-w-50">
212
  <?php $proLink = frameGmp::_()->getModule('supsystic_promo')->generateMainLink('utm_source=plugin&utm_medium=type_control_position&utm_campaign=googlemaps'); ?>
213
  <i class="fa fa-arrows supsystic-tooltip" title="<?php _e('Change type control position on map', GMP_LANG_CODE)?>"></i>
214
- <?php echo htmlGmp::selectbox('map_opts[type_control_position]', array(
 
215
  'options' => $this->positionsList,
216
  'value' => $this->editMap && isset($this->map['params']['type_control_position']) ? esc_attr($this->map['params']['type_control_position']) : 'TOP_RIGHT',
217
- 'attrs' => 'data-for="mapTypeControlOptions" class="gmpMapPosChangeSelect '. esc_attr($addProElementClass). '"'. (empty($addProElementAttrs) ? '' : sprintf($addProElementAttrs, $proLink, $proLink))
218
- ))?>
 
219
  <?php if(!$this->isPro) { ?>
220
  <span class="gmpProOptMiniLabel" style="padding-left: 20px;"><a target="_blank" href="<?php echo esc_attr($proLink)?>"><?php _e('PRO option', GMP_LANG_CODE)?></a></span>
221
  <?php }?>
@@ -232,19 +226,19 @@
232
  <td>
233
  <div>
234
  <div class="sup-col sup-w-50">
235
- <?php echo htmlGmp::selectbox('map_opts[zoom_control]', array(
236
  'options' => array('none' => __('None', GMP_LANG_CODE), 'DEFAULT' => __('Default', GMP_LANG_CODE)/*, 'LARGE' => __('Large', GMP_LANG_CODE), 'SMALL' => __('Small', GMP_LANG_CODE)*/),
237
  'value' => $this->editMap && isset($this->map['params']['zoom_control']) ? esc_attr($this->map['params']['zoom_control']) : 'DEFAULT',
238
- 'attrs' => 'style="width: 100%;" id="map_opts_zoom_control"'))?>
239
  </div>
240
  <div class="sup-col sup-w-50">
241
  <?php $proLink = frameGmp::_()->getModule('supsystic_promo')->generateMainLink('utm_source=plugin&utm_medium=zoom_control_position&utm_campaign=googlemaps'); ?>
242
  <i class="fa fa-arrows supsystic-tooltip" title="<?php _e('Change zoom control position on map', GMP_LANG_CODE)?>"></i>
243
- <?php echo htmlGmp::selectbox('map_opts[zoom_control_position]', array(
244
  'options' => $this->positionsList,
245
  'value' => $this->editMap && isset($this->map['params']['zoom_control_position']) ? esc_attr($this->map['params']['zoom_control_position']) : 'TOP_LEFT',
246
- 'attrs' => 'data-for="zoomControlOptions" class="gmpMapPosChangeSelect '. esc_attr($addProElementClass). '"'. (empty($addProElementAttrs) ? '' : sprintf($addProElementAttrs, $proLink, $proLink))
247
- ))?>
248
  <?php if(!$this->isPro) { ?>
249
  <span class="gmpProOptMiniLabel" style="padding-left: 20px;"><a target="_blank" href="<?php echo esc_attr($proLink)?>"><?php _e('PRO option', GMP_LANG_CODE)?></a></span>
250
  <?php }?>
@@ -266,18 +260,18 @@
266
  </th>
267
  <td>
268
  <div class="sup-col sup-w-50">
269
- <?php echo htmlGmp::checkboxHiddenVal('map_opts[street_view_control]', array(
270
  'value' => $this->editMap && isset($this->map['params']['street_view_control']) ? esc_attr($this->map['params']['street_view_control']) : true,
271
- ))?>
272
  </div>
273
  <div class="sup-col sup-w-50">
274
  <?php $proLink = frameGmp::_()->getModule('supsystic_promo')->generateMainLink('utm_source=plugin&utm_medium=street_view_control_position&utm_campaign=googlemaps'); ?>
275
  <i class="fa fa-arrows supsystic-tooltip" title="<?php _e('Change street view control position on map', GMP_LANG_CODE)?>"></i>
276
- <?php echo htmlGmp::selectbox('map_opts[street_view_control_position]', array(
277
  'options' => $this->positionsList,
278
  'value' => $this->editMap && isset($this->map['params']['street_view_control_position']) ? esc_attr($this->map['params']['street_view_control_position']) : 'TOP_LEFT',
279
- 'attrs' => 'data-for="streetViewControlOptions" class="gmpMapPosChangeSelect '. esc_attr($addProElementClass). '"'. (empty($addProElementAttrs) ? '' : sprintf($addProElementAttrs, $proLink, $proLink))
280
- ))?>
281
  <?php if(!$this->isPro) { ?>
282
  <span class="gmpProOptMiniLabel" style="padding-left: 20px;"><a target="_blank" href="<?php echo esc_attr($proLink)?>"><?php _e('PRO option', GMP_LANG_CODE)?></a></span>
283
  <?php }?>
@@ -341,9 +335,9 @@
341
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('Enable or disable possibility to drag your map using mouse', GMP_LANG_CODE)?>"></i>
342
  </th>
343
  <td>
344
- <?php echo htmlGmp::checkboxHiddenVal('map_opts[draggable]', array(
345
  'value' => $this->editMap && isset($this->map['params']['draggable']) ? esc_attr($this->map['params']['draggable']) : true,
346
- ))?>
347
  </td>
348
  <th scope="row">
349
  <label for="map_optsmouse_wheel_zoom_check">
@@ -352,9 +346,9 @@
352
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('Sometimes you need to disable possibility to zoom your map using mouse wheel. This can be required for example - if you need to use your wheel for some other action, for example scroll your site even if mouse is over your map.', GMP_LANG_CODE)?>"></i>
353
  </th>
354
  <td>
355
- <?php echo htmlGmp::checkboxHiddenVal('map_opts[mouse_wheel_zoom]', array(
356
  'value' => $this->editMap && isset($this->map['params']['mouse_wheel_zoom']) ? esc_attr($this->map['params']['mouse_wheel_zoom']) : true,
357
- ))?>
358
  </td>
359
  </tr>
360
  <tr>
@@ -365,9 +359,9 @@
365
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('By default double left click on map will zoom it in. But you can change this here.', GMP_LANG_CODE)?>"></i>
366
  </th>
367
  <td>
368
- <?php echo htmlGmp::checkboxHiddenVal('map_opts[dbl_click_zoom]', array(
369
  'value' => $this->editMap && isset($this->map['params']['dbl_click_zoom']) ? esc_attr($this->map['params']['dbl_click_zoom']) : true,
370
- ))?>
371
  </td>
372
  <th scope="row">
373
  <label for="map_optsis_static_check">
@@ -376,10 +370,10 @@
376
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('Show map as a Static image. This will allow you to make it cheeper according to new Google Maps API usage Rates. Be aware - not all options will work in this mode!', GMP_LANG_CODE)?>"></i>
377
  </th>
378
  <td>
379
- <?php echo htmlGmp::checkboxHiddenVal('map_opts[is_static]', array(
380
  'value' => $this->editMap && isset($this->map['params']['is_static']) ? esc_attr($this->map['params']['is_static']) : false,
381
  'attrs' => 'class="gmpProOpt"',
382
- ))?>
383
  <?php $proLink = frameGmp::_()->getModule('supsystic_promo')->generateMainLink('utm_source=plugin&utm_medium=static_map&utm_campaign=googlemaps'); ?>
384
  <?php if(!$this->isPro) { ?>
385
  <span class="gmpProOptMiniLabel" style="padding-left: 20px;"><a target="_blank" href="<?php echo esc_attr($proLink)?>"><?php _e('PRO option', GMP_LANG_CODE)?></a></span>
@@ -401,26 +395,26 @@
401
  <label for="map_opts_map_center_address">
402
  <?php _e('Address', GMP_LANG_CODE)?>
403
  </label>
404
- <?php echo htmlGmp::text('map_opts[map_center][address]', array(
405
  'value' => $this->editMap && isset($this->map['params']['map_center']['address']) ? esc_attr($this->map['params']['map_center']['address']) : '',
406
  'placeholder' => '603 Park Avenue, Brooklyn, NY 11206, USA',
407
- 'attrs' => 'style="width: 100%;" id="map_opts_map_center_address"'))?>
408
  </div>
409
  <div class="sup-col sup-w-50" style="margin-top: 10px;">
410
  <label for="map_opts_map_center_coord_x">
411
  <?php _e('Latitude', GMP_LANG_CODE)?>
412
  </label>
413
- <?php echo htmlGmp::text('map_opts[map_center][coord_x]', array(
414
  'value' => $this->editMap ? esc_attr($this->map['params']['map_center']['coord_x']) : '',
415
- 'attrs' => 'style="width: 100%;" id="map_opts_map_center_coord_x"'))?>
416
  </div>
417
  <div class="sup-col sup-w-50" style="margin-top: 10px;">
418
  <label for="map_opts_map_center_coord_y">
419
  <?php _e('Longitude', GMP_LANG_CODE)?>
420
  </label>
421
- <?php echo htmlGmp::text('map_opts[map_center][coord_y]', array(
422
  'value' => $this->editMap ? esc_attr($this->map['params']['map_center']['coord_y']) : '',
423
- 'attrs' => 'style="width: 100%;" id="map_opts_map_center_coord_y"'))?>
424
  </div>
425
  </td>
426
  </tr>
@@ -442,30 +436,30 @@
442
  $zoomMax = 21;
443
  $zoomRange = array_combine(range($zoomMin, $zoomMax), range($zoomMin, $zoomMax));
444
  ?>
445
- <?php echo htmlGmp::selectbox('map_opts[zoom_type]', array(
446
  'options' => array('zoom_level' => __('Preset Zoom', GMP_LANG_CODE), 'fit_bounds' => __('Fit Bounds', GMP_LANG_CODE)),
447
  'value' => $this->editMap && isset($this->map['params']['zoom_type']) ? esc_attr($this->map['params']['zoom_type']) : 'zoom_level',
448
- 'attrs' => 'style="width: 100%;"'))?>
449
  <div id="zoom_type_options">
450
  <div>
451
  <div class="zoom_level sup-col sup-w-50" style="display: none; margin-top: 10px;">
452
  <label for="map_opts_zoom">
453
  <?php _e('Zoom Level', GMP_LANG_CODE)?>
454
  </label>
455
- <?php echo htmlGmp::selectbox('map_opts[zoom]', array(
456
  'options' => $zoomRange,
457
  'value' => $this->editMap && isset($this->map['params']['zoom']) ? esc_attr($this->map['params']['zoom']) : 8,
458
- 'attrs' => 'style="width: 100%;"'))?>
459
  <?php //echo htmlGmp::hidden('map_opts[zoom]', array('value' => $this->editMap ? $this->map['params']['zoom'] : ''))?>
460
  </div>
461
  <div class="zoom_level sup-col sup-w-50" style="display: none; margin-top: 10px;">
462
  <label for="map_opts_zoom_mobile">
463
  <?php _e('Mobile Zoom Level', GMP_LANG_CODE)?>
464
  </label>
465
- <?php echo htmlGmp::selectbox('map_opts[zoom_mobile]', array(
466
  'options' => $zoomRange,
467
  'value' => $this->editMap && isset($this->map['params']['zoom_mobile']) ? esc_attr($this->map['params']['zoom_mobile']) : 8,
468
- 'attrs' => 'style="width: 100%;"'))?>
469
  </div>
470
  </div>
471
  <div>
@@ -473,19 +467,19 @@
473
  <label for="map_opts_zoom_min">
474
  <?php _e('Min Zoom Level', GMP_LANG_CODE)?>
475
  </label>
476
- <?php echo htmlGmp::selectbox('map_opts[zoom_min]', array(
477
  'options' => $zoomRange,
478
  'value' => $this->editMap && isset($this->map['params']['zoom_min']) ? esc_attr($this->map['params']['zoom_min']) : esc_attr($zoomMin),
479
- 'attrs' => 'style="width: 100%;"'))?>
480
  </div>
481
  <div class="zoom_max_level sup-col sup-w-50" style="margin-top: 10px;">
482
  <label for="map_opts_zoom_max">
483
  <?php _e('Max Zoom Level', GMP_LANG_CODE)?>
484
  </label>
485
- <?php echo htmlGmp::selectbox('map_opts[zoom_max]', array(
486
  'options' => $zoomRange,
487
  'value' => $this->editMap && isset($this->map['params']['zoom_max']) ? esc_attr($this->map['params']['zoom_max']) : esc_attr($zoomMax),
488
- 'attrs' => 'style="width: 100%;"'))?>
489
  </div>
490
  </div>
491
  </div>
@@ -499,10 +493,10 @@
499
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('You can select your Google Map theme - Road Map, Hybrid, Satellite or Terrain - here. By default your map will have Road Map Google maps theme.', GMP_LANG_CODE)?>"></i>
500
  </th>
501
  <td>
502
- <?php echo htmlGmp::selectbox('map_opts[map_type]', array(
503
  'options' => array('ROADMAP' => __('Road Map', GMP_LANG_CODE), 'HYBRID' => __('Hybrid', GMP_LANG_CODE), 'SATELLITE' => __('Satellite', GMP_LANG_CODE), 'TERRAIN' => __('Terrain', GMP_LANG_CODE)),
504
  'value' => $this->editMap && isset($this->map['params']['map_type']) ? esc_attr($this->map['params']['map_type']) : 'ROADMAP',
505
- 'attrs' => 'style="width: 100%;" id="map_opts_map_type"'))?>
506
  </td>
507
  </tr>
508
  <tr>
@@ -513,10 +507,10 @@
513
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('Make your map unique with our Map Themes, just try to change it here - and you will see results on your Map Preview.', GMP_LANG_CODE)?>"></i>
514
  </th>
515
  <td>
516
- <?php echo htmlGmp::selectbox('map_opts[map_stylization]', array(
517
  'options' => $this->stylizationsForSelect,
518
  'value' => $this->editMap && isset($this->map['params']['map_stylization']) ? esc_attr($this->map['params']['map_stylization']) : 'none',
519
- 'attrs' => 'style="width: '. ($this->isPro ? '100%' : 'calc(100% - 200px)'). ';" id="map_opts_map_stylization"'))?>
520
  <?php if(!$this->isPro) {?>
521
  <a target="_blank" href="<?php echo esc_attr($this->mainLink);?>" class="sup-standard-link">
522
  <i class="fa fa-plus"></i>
@@ -533,10 +527,10 @@
533
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('If you have many markers - you can have a problems with viewing them when zoom out for example: they will just cover each-other. Marker clusterization can solve this problem by grouping your markers in groups when they are too close to each-other.', GMP_LANG_CODE)?>"></i>
534
  </th>
535
  <td>
536
- <?php echo htmlGmp::selectbox('map_opts[marker_clasterer]', array(
537
  'options' => array('none' => __('None', GMP_LANG_CODE), 'MarkerClusterer' => __('Base Clusterization', GMP_LANG_CODE)),
538
  'value' => $this->editMap && isset($this->map['params']['marker_clasterer']) ? esc_attr($this->map['params']['marker_clasterer']) : 'none',
539
- 'attrs' => 'style="width: 100%;" id="map_opts_marker_clasterer"'));
540
 
541
  // Prevent to use old default claster icon cdn icon because it is missing
542
  $oldDefClasterIcon = 'https://google-maps-utility-library-v3.googlecode.com/svn/trunk/markerclusterer/images/m1.png';
@@ -583,9 +577,9 @@
583
  <i class="fa fa-question supsystic-tooltip" title="<?php _e('Sets the grid size of cluster. The higher the size - the more area of capture the markers to the cluster.', GMP_LANG_CODE)?>"></i>
584
  <br />
585
  <div class="sup-col sup-w-75">
586
- <?php echo htmlGmp::text('map_opts[marker_clasterer_grid_size]', array(
587
  'value' => $this->editMap && isset($this->map['params']['marker_clasterer_grid_size']) ? esc_attr($this->map['params']['marker_clasterer_grid_size']) : '60',
588
- 'attrs' => 'style="width: 100%;" id="gmpMarkerClastererGridSize" '))?>
589
  </div>
590
  <div class="sup-col" style="max-width: 50%; min-width: 20%; float: right; padding: 0; text-align: center;">
591
  <a id="gmpDefaultClastererGridSizeBtn" href="#" class="button" style="width: 100%; margin-bottom: 5px;"><?php _e('Default', GMP_LANG_CODE)?></a>
@@ -607,24 +601,24 @@
607
  </th>
608
  <td>
609
  <a id="gmpMapMarkersListBtn" href="#" class="button"><?php _e('Select Markers List type', GMP_LANG_CODE)?></a>
610
- <?php echo htmlGmp::hidden('map_opts[markers_list_type]', array(
611
- 'value' => $this->editMap && isset($this->map['params']['markers_list_type']) ? esc_attr($this->map['params']['markers_list_type']) : ''))?>
612
  <div id="gmpMapMarkersListSettings" style="display: none;">
613
  <div style="margin-top: 10px;clear: both;">
614
  <div class="sup-col sup-w-50">
615
  <label for="map_opts_markers_list_color">
616
  <?php _e('Markers List Color', GMP_LANG_CODE)?>
617
  </label><br />
618
- <?php echo htmlGmp::colorpicker('map_opts[markers_list_color]', array(
619
- 'value' => $this->editMap && isset($this->map['params']['markers_list_color']) ? esc_attr($this->map['params']['markers_list_color']) : '#55BA68'))?>
620
  </div>
621
  <div class="sup-col sup-w-50">
622
  <label for="map_opts_markers_list_hide_empty_block">
623
  <?php _e('Hide empty blocks', GMP_LANG_CODE)?>
624
  </label><br />
625
- <?php echo htmlGmp::checkboxHiddenVal('map_opts[markers_list_hide_empty_block]', array(
626
  'value' => $this->editMap && isset($this->map['params']['markers_list_hide_empty_block']) ? esc_attr($this->map['params']['markers_list_hide_empty_block']) : false,
627
- 'attrs' => 'id="map_opts_markers_list_hide_empty_block"'))?>
628
  </div>
629
  </div>
630
  <div style="margin-top: 10px;clear: both;">
@@ -632,17 +626,17 @@
632
  <label for="map_opts_markers_list_collapse_mobile">
633
  <?php _e('Collapse markers list on mobile', GMP_LANG_CODE)?>
634
  </label><br />
635
- <?php echo htmlGmp::checkboxHiddenVal('map_opts[markers_list_collapse][mobile]', array(
636
  'value' => $this->editMap && isset($this->map['params']['markers_list_collapse']['mobile']) ? esc_attr($this->map['params']['markers_list_collapse']['mobile']) : false,
637
- 'attrs' => 'id="map_opts_markers_list_collapse_mobile"'))?>
638
  </div>
639
  <div class="sup-col sup-w-50">
640
  <label for="map_opts_markers_list_loop">
641
  <?php _e('Enable markers list loop', GMP_LANG_CODE)?>
642
  </label><br />
643
- <?php echo htmlGmp::checkboxHiddenVal('map_opts[markers_list_loop]', array(
644
  'value' => $this->editMap && isset($this->map['params']['markers_list_loop']) ? esc_attr($this->map['params']['markers_list_loop']) : false,
645
- 'attrs' => 'id="map_opts_markers_list_loop"'))?>
646
  </div>
647
  </div>
648
  <div style="clear: both;">
@@ -658,17 +652,17 @@
658
  <label for="map_opts_markers_list_autoplay_enable">
659
  <?php _e('Enable Autoplay', GMP_LANG_CODE)?>
660
  </label><br />
661
- <?php echo htmlGmp::checkboxHiddenVal('map_opts[markers_list_autoplay][enable]', array(
662
  'value' => $this->editMap && isset($this->map['params']['markers_list_autoplay']['enable']) ? esc_attr($this->map['params']['markers_list_autoplay']['enable']) : false,
663
- 'attrs' => 'id="map_opts_markers_list_autoplay_enable"'))?>
664
  </div>
665
  <div class="sup-col sup-w-50">
666
  <label for="map_opts_markers_list_autoplay_steps">
667
  <?php _e('Steps', GMP_LANG_CODE)?>
668
  </label><br />
669
- <?php echo htmlGmp::text('map_opts[markers_list_autoplay][steps]', array(
670
  'value' => $this->editMap && isset($this->map['params']['markers_list_autoplay']['steps']) ? esc_attr($this->map['params']['markers_list_autoplay']['steps']) : '1',
671
- 'attrs' => 'style="width: 100%;" id="map_opts_markers_list_autoplay_steps" placeholder="1"'))?>
672
  </div>
673
  </div>
674
  <div style="clear: both;">
@@ -676,17 +670,17 @@
676
  <label for="map_opts_markers_list_autoplay_idle">
677
  <?php _e('Idle (milliseconds)', GMP_LANG_CODE)?>
678
  </label><br />
679
- <?php echo htmlGmp::text('map_opts[markers_list_autoplay][idle]', array(
680
  'value' => $this->editMap && isset($this->map['params']['markers_list_autoplay']['idle']) ? esc_attr($this->map['params']['markers_list_autoplay']['idle']) : '3000',
681
- 'attrs' => 'style="width: 100%;" id="map_opts_markers_list_autoplay_idle" placeholder="3000"'))?>
682
  </div>
683
  <div class="sup-col sup-w-50">
684
  <label for="map_opts_markers_list_autoplay_duration">
685
  <?php _e('Duration (milliseconds)', GMP_LANG_CODE)?>
686
  </label><br />
687
- <?php echo htmlGmp::text('map_opts[markers_list_autoplay][duration]', array(
688
  'value' => $this->editMap && isset($this->map['params']['markers_list_autoplay']['duration']) ? esc_attr($this->map['params']['markers_list_autoplay']['duration']) : '160',
689
- 'attrs' => 'style="width: 100%;" id="map_opts_markers_list_autoplay_duration" placeholder="160"'))?>
690
  </div>
691
  </div>
692
  </div>
@@ -704,9 +698,9 @@
704
  <?php }?>
705
  </th>
706
  <td>
707
- <?php echo htmlGmp::checkboxHiddenVal('map_opts[enable_trafic_layer]', array(
708
  'value' => $this->editMap && isset($this->map['params']['enable_trafic_layer']) ? esc_attr($this->map['params']['enable_trafic_layer']) : false,
709
- 'attrs' => 'class="gmpProOpt"'))?>
710
  </td>
711
  </tr>
712
  <tr>
@@ -721,9 +715,9 @@
721
  <?php }?>
722
  </th>
723
  <td>
724
- <?php echo htmlGmp::checkboxHiddenVal('map_opts[enable_transit_layer]', array(
725
  'value' => $this->editMap && isset($this->map['params']['enable_transit_layer']) ? esc_attr($this->map['params']['enable_transit_layer']) : false,
726
- 'attrs' => 'class="gmpProOpt"'))?>
727
  </td>
728
  </tr>
729
  <tr>
@@ -738,9 +732,9 @@
738
  <?php }?>
739
  </th>
740
  <td>
741
- <?php echo htmlGmp::checkboxHiddenVal('map_opts[enable_bicycling_layer]', array(
742
  'value' => $this->editMap && isset($this->map['params']['enable_bicycling_layer']) ? esc_attr($this->map['params']['enable_bicycling_layer']) : false,
743
- 'attrs' => 'class="gmpProOpt"'))?>
744
  </td>
745
  </tr>
746
  <tr>
@@ -764,9 +758,9 @@
764
  <td>
765
  <div style="margin-top: 10px;">
766
  <label for="map_opts_enable_google_kml_api">
767
- <?php echo htmlGmp::checkboxHiddenVal('map_opts[enable_google_kml_api]', array(
768
  'value' => $this->editMap && isset($this->map['params']['enable_google_kml_api']) ? esc_attr($this->map['params']['enable_google_kml_api']) : false,
769
- 'attrs' => 'class="gmpProOpt" id="map_opts_enable_google_kml_api"'))?>
770
  <?php _e('Load kml faster', GMP_LANG_CODE)?>
771
  </label>
772
  </div>
@@ -778,9 +772,9 @@
778
  ?>
779
  <div style="margin-top: 10px;" class="<?php echo $hiddenClass;?>" >
780
  <label for="map_opts_enable_kml_filter">
781
- <?php echo htmlGmp::checkboxHiddenVal('map_opts[enable_kml_filter]', array(
782
  'value' => $this->editMap && isset($this->map['params']['enable_kml_filter']) ? esc_attr($this->map['params']['enable_kml_filter']) : false,
783
- 'attrs' => 'class="gmpProOpt" id="map_opts_enable_kml_filter"'))?>
784
  <?php _e('Enable KML layers filter', GMP_LANG_CODE)?>
785
  </label>
786
  </div>
@@ -789,14 +783,14 @@
789
  <div style="clear: both;"></div>
790
  <label><?php _e('Enter KML file URL', GMP_LANG_CODE)?></label>
791
  <label class="gmpShowSublayersLabel" style="float: right;">
792
- <?php echo htmlGmp::hidden('map_opts[kml_filter][show_sublayers][]', array('value' => '', 'attrs' => 'class="gmpShowSublayersInput gmpProOpt" disabled="disabled"'))?>
793
  <?php _e('Hide Sublayers at KML filter', GMP_LANG_CODE)?>
794
  </label>
795
  <div style="clear: both;"></div>
796
  <a href="#" title="<?php _e('Remove KML field', GMP_LANG_CODE)?>" class="button gmpProOpt" onclick="gmpKmlRemoveFileRowBtnClick(this); return false;">
797
  <i class="fa fa-trash-o"></i>
798
  </a>
799
- <?php echo htmlGmp::text('map_opts[kml_file_url][]', array('value' => '', 'attrs' => 'class="gmpProOpt" style="width: 86%; float: right;" disabled="disabled"'))?>
800
  <span class="gmpKmlUploadMsg" style="float: right; width: 100%; text-align: right;" ></span>
801
  <a href="#"
802
  class="gmpKmlUploadFileBtn button gmpProOpt"
@@ -824,10 +818,10 @@
824
  if($oneMarker == 'on') {
825
  $isKmlImpToMarkerVal = 1;
826
  }
827
- echo htmlGmp::hidden('map_opts[kml_import_to_marker][]', array(
828
  'value' => esc_attr($isKmlImpToMarkerVal),
829
  'attrs' => ' class="gmpProOpt gmpKmlImportToMarkerHid" data-order="' . esc_attr($omKey) . '" ',
830
- ));
831
  }
832
  }
833
  ?>
@@ -858,39 +852,39 @@
858
  <?php }?>
859
  </th>
860
  <td>
861
- <?php echo htmlGmp::checkboxHiddenVal('map_opts[enable_custom_map_controls]', array(
862
  'value' => $this->editMap && isset($this->map['params']['enable_custom_map_controls']) ? esc_attr($this->map['params']['enable_custom_map_controls']) : false,
863
- 'attrs' => 'class="gmpProOpt" onclick="gmpAddCustomControlsOptions()"'))?>
864
  <div id="custom_controls_options" style="display: none;">
865
  <div style="margin-top: 10px;">
866
  <label for="map_opts_custom_controls_type">
867
  <?php _e('Controls type', GMP_LANG_CODE)?>
868
  </label>
869
- <?php echo htmlGmp::selectbox('map_opts[custom_controls_type]', array(
870
  'options' => array('gmpSquareControls' => __('Square', GMP_LANG_CODE), 'gmpRoundedEdgesControls' => __('Rounded edges', GMP_LANG_CODE), 'gmpRoundControls' => __('Round', GMP_LANG_CODE)),
871
  'value' => $this->editMap && isset($this->map['params']['custom_controls_type']) ? esc_attr($this->map['params']['custom_controls_type']) : 'round',
872
- 'attrs' => 'class="gmpProOpt" style="width: 100%;" id="map_opts_custom_controls_type"'))?>
873
  </div>
874
  <div style="margin-top: 10px;">
875
  <label for="map_opts_custom_controls_bg_color">
876
  <?php _e('Background color', GMP_LANG_CODE)?>
877
  </label></br>
878
- <?php echo htmlGmp::colorpicker('map_opts[custom_controls_bg_color]', array(
879
  'attrs' => 'class="gmpProOpt"',
880
- 'value' => $this->editMap && isset($this->map['params']['custom_controls_bg_color']) ? esc_attr($this->map['params']['custom_controls_bg_color']) : '#55BA68'))?>
881
  </div>
882
  <div style="margin-top: 10px;">
883
  <label for="map_opts_custom_controls_txt_color">
884
  <?php _e('Text color', GMP_LANG_CODE)?>
885
  </label></br>
886
- <?php echo htmlGmp::colorpicker('map_opts[custom_controls_txt_color]', array(
887
  'attrs' => 'class="gmpProOpt"',
888
- 'value' => $this->editMap && isset($this->map['params']['custom_controls_txt_color']) ? esc_attr($this->map['params']['custom_controls_txt_color']) : '#000000'))?>
889
  </div>
890
  <div style="margin-top: 10px;">
891
- <?php echo htmlGmp::checkboxHiddenVal('map_opts[custom_filter_show_all]', array(
892
  'value' => $this->editMap && isset($this->map['params']['custom_filter_show_all']) ? esc_attr($this->map['params']['custom_filter_show_all']) : true,
893
- 'attrs' => 'class="gmpProOpt"'))?>
894
  <label for="map_opts_custom_filter_show_all">
895
  <?php _e('Show All Markers on Map by default', GMP_LANG_CODE)?>
896
  </label>
@@ -899,54 +893,54 @@
899
  <label for="map_opts_custom_controls_unit">
900
  <?php _e('Controls unit of measurement', GMP_LANG_CODE)?>
901
  </label>
902
- <?php echo htmlGmp::selectbox('map_opts[custom_controls_unit]', array(
903
  'options' => $this->customControlsUnit,
904
  'value' => $this->editMap && isset($this->map['params']['custom_controls_unit']) ? esc_attr($this->map['params']['custom_controls_unit']) : 'meters',
905
  'attrs' => 'class="gmpProOpt" style="width: 100%;" id="map_opts_custom_controls_unit"'
906
- ))?>
907
  </div>
908
  <div style="margin-top: 10px;">
909
  <label for="map_opts_custom_controls_position">
910
  <?php _e('Controls position', GMP_LANG_CODE)?>
911
  </label>
912
- <?php echo htmlGmp::selectbox('map_opts[custom_controls_position]', array(
913
  'options' => $this->positionsList,
914
  'value' => $this->editMap && isset($this->map['params']['custom_controls_position']) ? esc_attr($this->map['params']['custom_controls_position']) : 'TOP_LEFT',
915
  'attrs' => 'class="gmpProOpt" style="width: 100%;" id="map_opts_custom_controls_position"'
916
- ))?>
917
  </div>
918
  <div style="margin-top: 10px;">
919
  <label for="map_opts_custom_controls_slider_min">
920
  <?php _e('Min Search Radius:', GMP_LANG_CODE)?>
921
  </label></br>
922
- <?php echo htmlGmp::text('map_opts[custom_controls_slider_min]', array(
923
  'value' => $this->editMap && isset($this->map['params']['custom_controls_slider_min']) ? esc_attr($this->map['params']['custom_controls_slider_min']) : '100',
924
- 'attrs' => 'class="gmpProOpt" style="width: 100%;" id="map_opts_custom_controls_slider_min"'))?>
925
  </div>
926
  <div style="margin-top: 10px;">
927
  <label for="map_opts_custom_controls_slider_max">
928
  <?php _e('Max Search Radius:', GMP_LANG_CODE)?>
929
  </label></br>
930
- <?php echo htmlGmp::text('map_opts[custom_controls_slider_max]', array(
931
  'value' => $this->editMap && isset($this->map['params']['custom_controls_slider_max']) ? esc_attr($this->map['params']['custom_controls_slider_max']) : '1000',
932
- 'attrs' => 'class="gmpProOpt" style="width: 100%;" id="map_opts_custom_controls_slider_max"'))?>
933
  </div>
934
  <div style="margin-top: 10px;">
935
  <label for="map_opts_custom_controls_slider_step">
936
  <?php _e('Search Step:', GMP_LANG_CODE)?>
937
  </label></br>
938
- <?php echo htmlGmp::text('map_opts[custom_controls_slider_step]', array(
939
  'value' => $this->editMap && isset($this->map['params']['custom_controls_slider_step']) ? esc_attr($this->map['params']['custom_controls_slider_step']) : '10',
940
- 'attrs' => 'class="gmpProOpt" style="width: 100%;" id="map_opts_custom_controls_slider_step"'))?>
941
  </div>
942
  <div style="margin-top: 10px;">
943
  <label for="map_opts_custom_controls_search_country">
944
  <?php _e('Search Country', GMP_LANG_CODE)?>
945
  </label>
946
- <?php echo htmlGmp::selectbox('map_opts[custom_controls_search_country]', array(
947
  'options' => array_merge(array('' => 'All Countries'), $this->countries),
948
  'value' => $this->editMap && isset($this->map['params']['custom_controls_search_country']) ? esc_attr($this->map['params']['custom_controls_search_country']) : 'round',
949
- 'attrs' => 'class="gmpProOpt" style="width: 100%;" id="map_opts_custom_controls_search_country"'))?>
950
  </div>
951
  <?php if($isCustSearchAndMarkersPeriodAvailable) { ?>
952
  <div style="margin-top: 10px;">
@@ -958,7 +952,7 @@
958
  ) {
959
  $isCustomSearchParamArr = array('checked' => 'checked');
960
  }
961
- echo htmlGmp::checkbox('map_opts[custom_controls_improve_search]', $isCustomSearchParamArr)?>
962
  <?php _e('Use improved markers search', GMP_LANG_CODE);?>
963
  </label>
964
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('This option allows you to search and show multiple markers for selected date, categories and keywords. NOTE: it removes separate markers categories filter button from custom map controls.', GMP_LANG_CODE); ?>"></i>
@@ -972,7 +966,7 @@
972
  ) {
973
  $isSearchExtend = array('checked' => 'checked');
974
  }
975
- echo htmlGmp::checkbox('map_opts[button_search_extend]', $isSearchExtend)?>
976
  <?php _e('Center Search Button', GMP_LANG_CODE);?>
977
  </label>
978
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('Check this option if you want to separate and center search button', GMP_LANG_CODE); ?>"></i>
@@ -987,7 +981,7 @@
987
  ) {
988
  $isFilterEnable = array('checked' => 'checked');
989
  }
990
- echo htmlGmp::checkbox('map_opts[button_filter_enable]', $isFilterEnable)?>
991
  <?php _e('Disable filter button', GMP_LANG_CODE);?>
992
  </label>
993
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('Check this option if you want to disable filters button on frontend', GMP_LANG_CODE); ?>"></i>
@@ -1007,9 +1001,9 @@
1007
  <?php }?>
1008
  </th>
1009
  <td>
1010
- <?php echo htmlGmp::checkboxHiddenVal('map_opts[enable_full_screen_btn]', array(
1011
  'value' => $this->editMap && isset($this->map['params']['enable_full_screen_btn']) ? esc_attr($this->map['params']['enable_full_screen_btn']) : false,
1012
- 'attrs' => 'class="gmpProOpt"'))?>
1013
  </td>
1014
  </tr>
1015
  <tr>
@@ -1024,9 +1018,9 @@
1024
  <?php }?>
1025
  </th>
1026
  <td>
1027
- <?php echo htmlGmp::checkboxHiddenVal('map_opts[hide_poi]', array(
1028
  'value' => $this->editMap && isset($this->map['params']['hide_poi']) ? esc_attr($this->map['params']['hide_poi']) : false,
1029
- 'attrs' => 'class="gmpProOpt"'))?>
1030
  </td>
1031
  </tr>
1032
  <tr>
@@ -1041,9 +1035,9 @@
1041
  <?php }?>
1042
  </th>
1043
  <td>
1044
- <?php echo htmlGmp::checkboxHiddenVal('map_opts[hide_countries]', array(
1045
  'value' => $this->editMap && isset($this->map['params']['hide_countries']) ? esc_attr($this->map['params']['hide_countries']) : false,
1046
- 'attrs' => 'class="gmpProOpt"'))?>
1047
  </td>
1048
  </tr>
1049
  <tr>
@@ -1054,9 +1048,9 @@
1054
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('Hide the tooltips, which displayed by mouse hover on markers\' icons.', GMP_LANG_CODE)?>"></i>
1055
  </th>
1056
  <td>
1057
- <?php echo htmlGmp::checkboxHiddenVal('map_opts[hide_marker_tooltip]', array(
1058
  'value' => $this->editMap && isset($this->map['params']['hide_marker_tooltip']) ? esc_attr($this->map['params']['hide_marker_tooltip']) : false,
1059
- ))?>
1060
  </td>
1061
  </tr>
1062
  <tr>
@@ -1067,9 +1061,9 @@
1067
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('On frontend the map will be centered on current marker with opened info window.', GMP_LANG_CODE)?>"></i>
1068
  </th>
1069
  <td>
1070
- <?php echo htmlGmp::checkboxHiddenVal('map_opts[center_on_cur_marker_infownd]', array(
1071
  'value' => $this->editMap && isset($this->map['params']['center_on_cur_marker_infownd']) ? esc_attr($this->map['params']['center_on_cur_marker_infownd']) : false,
1072
- 'attrs' => ''))?>
1073
  </td>
1074
  </tr>
1075
  <tr>
@@ -1084,14 +1078,14 @@
1084
  <?php }?>
1085
  </th>
1086
  <td>
1087
- <?php echo htmlGmp::checkboxHiddenVal('map_opts[center_on_cur_user_pos]', array(
1088
  'value' => $this->editMap && isset($this->map['params']['center_on_cur_user_pos']) ? esc_attr($this->map['params']['center_on_cur_user_pos']) : false,
1089
- 'attrs' => 'class="gmpProOpt"'))?>
1090
  <div id="gmpCurUserPosOptions" style="margin-top: 10px; display: none;">
1091
- <?php echo htmlGmp::hidden('map_opts[center_on_cur_user_pos_icon]', array(
1092
  'value' => $this->editMap && isset($this->map['params']['center_on_cur_user_pos_icon'])
1093
  ? esc_attr($this->map['params']['center_on_cur_user_pos_icon'])
1094
- : 1 /*Default Icon ID*/ ))?>
1095
  <img id="gmpCurUserPosIconPrevImg" src="" style="float: left;" />
1096
  <div style="float: right">
1097
  <a href="#" id="gmpCurUserPosIconBtn" class="button gmpProOpt"><?php _e('Choose Icon', GMP_LANG_CODE)?></a>
@@ -1124,49 +1118,49 @@
1124
  <?php }?>
1125
  </th>
1126
  <td>
1127
- <?php echo htmlGmp::checkboxHiddenVal('map_opts[frontend_add_markers]', array(
1128
  'value' => $this->editMap && isset($this->map['params']['frontend_add_markers']) ? esc_attr($this->map['params']['frontend_add_markers']) : false,
1129
  'attrs' => 'class="gmpProOpt" id="map_opts_frontend_add_markers"'
1130
- ))?>
1131
  <div id="gmpAddMarkersOnFrontendOptions" style="display: none;">
1132
  <div style="margin-top: 10px;">
1133
- <?php echo htmlGmp::text('gmpCopyTextCode', array(
1134
  'value' => '', // Will be inserted from JS
1135
- 'attrs' => 'class="gmpCopyTextCode gmpMapMarkerFormCodeShell gmpStaticWidth" style="width: 100%; text-align: center;"'));?>
1136
  </div>
1137
  <div style="margin-top: 10px;">
1138
- <?php echo htmlGmp::checkboxHiddenVal('map_opts[frontend_add_markers_logged_in_only]', array(
1139
  'value' => $this->editMap && isset($this->map['params']['frontend_add_markers_logged_in_only']) ? esc_attr($this->map['params']['frontend_add_markers_logged_in_only']) : false,
1140
  'attrs' => 'class="gmpProOpt" id="map_opts_frontend_add_markers_logged_in_only"'
1141
- ))?>
1142
  <label for="map_opts_frontend_add_markers_logged_in_only"><?php _e('Logged In Users Only', GMP_LANG_CODE)?></label>
1143
  </div>
1144
  <div style="margin-top: 10px;">
1145
- <?php echo htmlGmp::checkboxHiddenVal('map_opts[frontend_add_markers_disable_wp_editor]', array(
1146
  'value' => $this->editMap && isset($this->map['params']['frontend_add_markers_disable_wp_editor']) ? esc_attr($this->map['params']['frontend_add_markers_disable_wp_editor']) : false,
1147
  'attrs' => 'class="gmpProOpt" id="map_opts_frontend_add_markers_disable_wp_editor"'
1148
- ))?>
1149
  <label for="map_opts_frontend_add_markers_disable_wp_editor"><?php _e('Disable WP Editor', GMP_LANG_CODE)?></label>
1150
  </div>
1151
  <div style="margin-top: 10px;">
1152
- <?php echo htmlGmp::checkboxHiddenVal('map_opts[frontend_add_markers_delete_markers]', array(
1153
  'value' => $this->editMap && isset($this->map['params']['frontend_add_markers_delete_markers']) ? esc_attr($this->map['params']['frontend_add_markers_delete_markers']) : false,
1154
  'attrs' => 'class="gmpProOpt" id="map_opts_frontend_add_markers_delete_markers"'
1155
- ))?>
1156
  <label for="map_opts_frontend_add_markers_delete_markers"><?php _e('Delete markers', GMP_LANG_CODE)?></label>
1157
  </div>
1158
  <div style="margin-top: 10px;">
1159
- <?php echo htmlGmp::checkboxHiddenVal('map_opts[frontend_add_markers_use_markers_categories]', array(
1160
  'value' => $this->editMap && isset($this->map['params']['frontend_add_markers_use_markers_categories']) ? esc_attr($this->map['params']['frontend_add_markers_use_markers_categories']) : false,
1161
  'attrs' => 'class="gmpProOpt" id="map_opts_frontend_add_markers_use_markers_categories"'
1162
- ))?>
1163
  <label for="map_opts_frontend_add_markers_use_markers_categories"><?php _e('Use markers categories', GMP_LANG_CODE)?></label>
1164
  </div>
1165
  <div style="margin-top: 10px;">
1166
- <?php echo htmlGmp::checkboxHiddenVal('map_opts[frontend_add_markers_use_limits]', array(
1167
  'value' => $this->editMap && isset($this->map['params']['frontend_add_markers_use_limits']) ? esc_attr($this->map['params']['frontend_add_markers_use_limits']) : false,
1168
  'attrs' => 'class="gmpProOpt" id="map_opts_frontend_add_markers_use_limits"'
1169
- ))?>
1170
  <label for="map_opts_frontend_add_markers_use_limits"><?php _e('Use limits for marker\'s adding', GMP_LANG_CODE)?></label>
1171
  </div>
1172
  <div id="gmpUseLimitsForMarkerAddingOptions" style="display: none; margin-top: 10px;">
@@ -1174,17 +1168,17 @@
1174
  <label for="map_opts_frontend_add_markers_use_count_limits">
1175
  <?php _e('Max marker\'s count', GMP_LANG_CODE)?>
1176
  </label>
1177
- <?php echo htmlGmp::text('map_opts[frontend_add_markers_use_count_limits]', array(
1178
  'value' => $this->editMap && isset($this->map['params']['frontend_add_markers_use_count_limits']) ? esc_attr($this->map['params']['frontend_add_markers_use_count_limits']) : '10',
1179
- 'attrs' => 'style="width: 100%;" id="map_opts_frontend_add_markers_use_count_limits"'))?>
1180
  </div>
1181
  <div class="sup-col sup-w-50">
1182
  <label for="map_opts_frontend_add_markers_use_time_limits">
1183
  <?php _e('For allotted time (minutes)', GMP_LANG_CODE)?>
1184
  </label>
1185
- <?php echo htmlGmp::text('map_opts[frontend_add_markers_use_time_limits]', array(
1186
  'value' => $this->editMap && isset($this->map['params']['frontend_add_markers_use_time_limits']) ? esc_attr($this->map['params']['frontend_add_markers_use_time_limits']) : '10',
1187
- 'attrs' => 'style="width: 100%;" id="map_opts_frontend_add_markers_use_time_limits"'))?>
1188
  </div>
1189
  </div>
1190
  </div>
@@ -1206,39 +1200,39 @@
1206
  <?php }?>
1207
  </th>
1208
  <td>
1209
- <?php echo htmlGmp::checkboxHiddenVal('map_opts[places][en_toolbar]', array(
1210
  'value' => $this->editMap && isset($this->map['params']['places']['en_toolbar']) ? esc_attr($this->map['params']['places']['en_toolbar']) : false,
1211
  'attrs' => 'class="gmpProOpt" id="map_opts_places_en_toolbar"'
1212
- ))?>
1213
  <div id="gmpPlacesToolbarOptions" style="display: none;">
1214
  <div style="margin-top: 10px;">
1215
- <?php echo htmlGmp::text('gmpCopyTextCode', array(
1216
  'value' => '', // Will be inserted from JS
1217
- 'attrs' => 'class="gmpCopyTextCode gmpPlacesToolbarCodeShell gmpStaticWidth" style="width: 100%; text-align: center;"'));?>
1218
  </div>
1219
  <div style="margin-top: 10px;">
1220
  <label for="map_opts_places_slider_min">
1221
  <?php _e('Min Search Radius:', GMP_LANG_CODE)?>
1222
  </label></br>
1223
- <?php echo htmlGmp::text('map_opts[places][slider_min]', array(
1224
  'value' => $this->editMap && isset($this->map['params']['places']['slider_min']) ? esc_attr($this->map['params']['places']['slider_min']) : '100',
1225
- 'attrs' => 'class="gmpProOpt" style="width: 100%;" id="map_opts_places_slider_min"'))?>
1226
  </div>
1227
  <div style="margin-top: 10px;">
1228
  <label for="map_opts_places_slider_max">
1229
  <?php _e('Max Search Radius:', GMP_LANG_CODE)?>
1230
  </label></br>
1231
- <?php echo htmlGmp::text('map_opts[places][slider_max]', array(
1232
  'value' => $this->editMap && isset($this->map['params']['places']['slider_max']) ? esc_attr($this->map['params']['places']['slider_max']) : '1000',
1233
- 'attrs' => 'class="gmpProOpt" style="width: 100%;" id="map_opts_places_slider_max"'))?>
1234
  </div>
1235
  <div style="margin-top: 10px;">
1236
  <label for="map_opts_places_slider_step">
1237
  <?php _e('Search Step:', GMP_LANG_CODE)?>
1238
  </label></br>
1239
- <?php echo htmlGmp::text('map_opts[places][slider_step]', array(
1240
  'value' => $this->editMap && isset($this->map['params']['places][slider_step']) ? esc_attr($this->map['params']['places][slider_step']) : '10',
1241
- 'attrs' => 'class="gmpProOpt" style="width: 100%;" id="map_opts_places_slider_step"'))?>
1242
  </div>
1243
  </div>
1244
  </td>
@@ -1251,9 +1245,9 @@
1251
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('Background color for markers filter. (for 7 markers list type)', GMP_LANG_CODE)?>"></i>
1252
  </th>
1253
  <td>
1254
- <?php echo htmlGmp::colorpicker('map_opts[marker_filter_color]', array(
1255
  'value' => $this->editMap && isset($this->map['params']['marker_filter_color']) ? esc_attr($this->map['params']['marker_filter_color']) : '#f1f1f1;',
1256
- 'attrs' => 'id="map_opts_marker_filter_color"',))?>
1257
  </td>
1258
  </tr>
1259
  <tr>
@@ -1264,9 +1258,9 @@
1264
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('Filters select all button title. (for 7 markers list type)', GMP_LANG_CODE)?>"></i>
1265
  </th>
1266
  <td>
1267
- <?php echo htmlGmp::text('map_opts[marker_filter_button_title]', array(
1268
  'value' => $this->editMap && isset($this->map['params']['marker_filter_button_title']) ? esc_attr($this->map['params']['marker_filter_button_title']) : 'Select all',
1269
- 'attrs' => 'id="map_opts_marker_filter_button_title"',))?>
1270
  </td>
1271
  </tr>
1272
  <tr>
@@ -1277,9 +1271,9 @@
1277
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('Show parent categories even if they have no markers, but their child categories have.', GMP_LANG_CODE); ?>"></i>
1278
  </th>
1279
  <td>
1280
- <?php echo htmlGmp::checkboxHiddenVal('map_opts[marker_filter_show_all_parents]', array(
1281
  'value' => $this->editMap && isset($this->map['params']['marker_filter_show_all_parents']) ? esc_attr($this->map['params']['marker_filter_show_all_parents']) : false,
1282
- 'attrs' => 'id="map_opts_marker_filter_show_all_parents"',))?>
1283
  </td>
1284
  </tr>
1285
  <tr style="border-bottom: 1px solid #e3dbdb!important;">
@@ -1299,16 +1293,16 @@
1299
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('Choose the appearance type of infowindow.', GMP_LANG_CODE)?>"></i>
1300
  </th>
1301
  <td>
1302
- <?php echo htmlGmp::selectbox('map_opts[marker_infownd_type]', array(
1303
  'options' => dispatcherGmp::applyFilters('addInfoWindowStyles', array('' => __('Default', GMP_LANG_CODE), 'rounded_edges' => __('Rounded Edges', GMP_LANG_CODE))),
1304
  'value' => $this->editMap && isset($this->map['params']['marker_infownd_type']) ? esc_attr($this->map['params']['marker_infownd_type']) : 'default',
1305
- 'attrs' => 'style="width: 100%;" id="map_opts_marker_infownd_type"'))?>
1306
  <div id="gmpMarkerInfoWndTypeSubOpts">
1307
  <div class="gmpSubOpt" data-type="rounded_edges" style="display: none; margin-top: 10px;">
1308
- <?php echo htmlGmp::checkboxHiddenVal('map_opts[marker_infownd_hide_close_btn]', array(
1309
  'value' => $this->editMap && isset($this->map['params']['marker_infownd_hide_close_btn']) ? esc_attr($this->map['params']['marker_infownd_hide_close_btn']) : true,
1310
  'attrs' => 'class="gmpProOpt" id="map_opts_marker_infownd_hide_close_btn"'
1311
- ))?>
1312
  <label for="map_opts_marker_infownd_hide_close_btn"><?php _e('Hide Close Button', GMP_LANG_CODE)?></label>
1313
  </div>
1314
  </div>
@@ -1330,10 +1324,10 @@
1330
  ?>
1331
  <div class="sup-col" style="padding-right: 0px;">
1332
  <label for="map_opts_marker_infownd_width_units" style="margin-right: 15px; position: relative; top: <?php echo esc_attr($markersInfoWndWidthUnitsLabelStyle)?>;">
1333
- <?php echo htmlGmp::radiobutton('map_opts[marker_infownd_width_units]', array(
1334
  'value' => 'auto',
1335
  'checked' => $this->editMap && $markersInfoWndWidthUnits ? htmlGmp::checkedOpt($this->map['params'], 'marker_infownd_width_units', 'auto') : true,
1336
- ))?>&nbsp;<?php _e('Auto', GMP_LANG_CODE)?>
1337
  </label>
1338
  <label
1339
  for="map_opts_marker_infownd_width_units"
@@ -1341,16 +1335,16 @@
1341
  title="<?php _e('The value defines maximum width of the description. Window will be drawn according to content size but not wider than the value.', GMP_LANG_CODE)?>"
1342
  style="margin-right: 15px; position: relative; top: <?php echo esc_attr($markersInfoWndWidthUnitsLabelStyle)?>;"
1343
  >
1344
- <?php echo htmlGmp::radiobutton('map_opts[marker_infownd_width_units]', array(
1345
  'value' => 'px',
1346
  'checked' => $this->editMap && $markersInfoWndWidthUnits ? htmlGmp::checkedOpt($this->map['params'], 'marker_infownd_width_units', 'px') : false,
1347
- ))?>&nbsp;<?php _e('Px', GMP_LANG_CODE)?>
1348
  </label>
1349
  </div>
1350
  <div class="sup-col sup-w-25">
1351
- <?php echo htmlGmp::text('map_opts[marker_infownd_width]', array(
1352
  'value' => $this->editMap && $markersInfoWndWidthInput ? esc_attr($this->map['params']['marker_infownd_width']) : '200',
1353
- 'attrs' => 'style="width: 100%; display: '. esc_attr($markersInfoWndWidthInputViewStyle) .';"'))?>
1354
  </div>
1355
  </td>
1356
  </tr>
@@ -1370,10 +1364,10 @@
1370
  ?>
1371
  <div class="sup-col" style="padding-right: 0px;">
1372
  <label for="map_opts_marker_infownd_height_units" style="margin-right: 15px; position: relative; top: <?php echo esc_attr($markersInfoWndHeightUnitsLabelStyle)?>;">
1373
- <?php echo htmlGmp::radiobutton('map_opts[marker_infownd_height_units]', array(
1374
  'value' => 'auto',
1375
  'checked' => $this->editMap && $markersInfoWndHeightUnits ? htmlGmp::checkedOpt($this->map['params'], 'marker_infownd_height_units', 'auto') : true,
1376
- ))?>&nbsp;<?php _e('Auto', GMP_LANG_CODE)?>
1377
  </label>
1378
  <label
1379
  for="map_opts_marker_infownd_height_units"
@@ -1381,16 +1375,16 @@
1381
  title="<?php _e('Pixels', GMP_LANG_CODE)?>"
1382
  style="margin-right: 15px; position: relative; top: <?php echo esc_attr($markersInfoWndHeightUnitsLabelStyle)?>;"
1383
  >
1384
- <?php echo htmlGmp::radiobutton('map_opts[marker_infownd_height_units]', array(
1385
  'value' => 'px',
1386
  'checked' => $this->editMap && $markersInfoWndHeightUnits ? htmlGmp::checkedOpt($this->map['params'], 'marker_infownd_height_units', 'px') : false,
1387
- ))?>&nbsp;<?php _e('Px', GMP_LANG_CODE)?>
1388
  </label>
1389
  </div>
1390
  <div class="sup-col sup-w-25">
1391
- <?php echo htmlGmp::text('map_opts[marker_infownd_height]', array(
1392
  'value' => $this->editMap && $markersInfoWndHeightInput ? esc_attr($this->map['params']['marker_infownd_height']) : '100',
1393
- 'attrs' => 'style="width: 100%; display: '. esc_attr($markersInfoWndHeightInputViewStyle) .';"'))?>
1394
  </div>
1395
  </td>
1396
  </tr>
@@ -1402,8 +1396,8 @@
1402
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('You can set your info window title color here', GMP_LANG_CODE)?>"></i>
1403
  </th>
1404
  <td>
1405
- <?php echo htmlGmp::colorpicker('map_opts[marker_title_color]', array(
1406
- 'value' => $this->editMap && isset($this->map['params']['marker_title_color']) ? esc_attr($this->map['params']['marker_title_color']) : '#A52A2A'))?>
1407
  </td>
1408
  </tr>
1409
  <tr>
@@ -1414,8 +1408,8 @@
1414
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('You can set your info window background color here', GMP_LANG_CODE)?>"></i>
1415
  </th>
1416
  <td>
1417
- <?php echo htmlGmp::colorpicker('map_opts[marker_infownd_bg_color]', array(
1418
- 'value' => $this->editMap && isset($this->map['params']['marker_infownd_bg_color']) ? esc_attr($this->map['params']['marker_infownd_bg_color']) : '#FFFFFF'))?>
1419
  </td>
1420
  </tr>
1421
  <tr>
@@ -1427,16 +1421,16 @@
1427
  </th>
1428
  <td>
1429
  <div class="sup-col sup-w-25">
1430
- <?php echo htmlGmp::text('map_opts[marker_title_size]', array(
1431
  'value' => $this->editMap && isset($this->map['params']['marker_title_size']) ? esc_attr($this->map['params']['marker_title_size']) : '19',
1432
- 'attrs' => 'style="width: 100%;" id="map_opts_marker_title_size"'))?>
1433
  </div>
1434
  <div class="sup-col sup-w-75">
1435
  <label class="supsystic-tooltip" title="<?php _e('Pixels', GMP_LANG_CODE)?>" style="margin-right: 15px; position: relative; top: 7px;">
1436
- <?php echo htmlGmp::radiobutton('map_opts[marker_title_size_units]', array(
1437
  'value' => 'px',
1438
  'checked' => true,
1439
- ))?>&nbsp;<?php _e('Px', GMP_LANG_CODE)?></label>
1440
  </div>
1441
  </td>
1442
  </tr>
@@ -1449,16 +1443,16 @@
1449
  </th>
1450
  <td>
1451
  <div class="sup-col sup-w-25">
1452
- <?php echo htmlGmp::text('map_opts[marker_desc_size]', array(
1453
  'value' => $this->editMap && isset($this->map['params']['marker_desc_size']) ? esc_attr($this->map['params']['marker_desc_size']) : '13',
1454
- 'attrs' => 'style="width: 100%;" id="map_opts_marker_desc_size"'))?>
1455
  </div>
1456
  <div class="sup-col sup-w-75">
1457
  <label class="supsystic-tooltip" title="<?php _e('Pixels', GMP_LANG_CODE)?>" style="margin-right: 15px; position: relative; top: 7px;">
1458
- <?php echo htmlGmp::radiobutton('map_opts[marker_desc_size_units]', array(
1459
  'value' => 'px',
1460
  'checked' => true,
1461
- ))?>&nbsp;<?php _e('Px', GMP_LANG_CODE)?></label>
1462
  </div>
1463
  </td>
1464
  </tr>
@@ -1481,38 +1475,38 @@
1481
  <?php }?>
1482
  </th>
1483
  <td>
1484
- <?php echo htmlGmp::checkboxHiddenVal('map_opts[enable_directions_btn]', array(
1485
  'value' => $this->editMap && isset($this->map['params']['enable_directions_btn']) ? esc_attr($this->map['params']['enable_directions_btn']) : false,
1486
- 'attrs' => 'class="gmpProOpt"'))?>
1487
  <div id="gmpDirectionsOptions" style="margin-top: 10px; display: none;">
1488
  <div style="margin-top: 10px;">
1489
- <?php echo htmlGmp::checkboxHiddenVal('map_opts[directions_alternate_routes]', array(
1490
  'value' => $this->editMap && isset($this->map['params']['directions_alternate_routes']) ? esc_attr($this->map['params']['directions_alternate_routes']) : false,
1491
- 'attrs' => 'class="gmpProOpt"'))?>
1492
  <span>
1493
  <?php _e('Show alternate routes', GMP_LANG_CODE)?>
1494
  </span>
1495
  </div>
1496
  <div style="margin-top: 10px;">
1497
- <?php echo htmlGmp::checkboxHiddenVal('map_opts[directions_data_show]', array(
1498
  'value' => $this->editMap && isset($this->map['params']['directions_data_show']) ? esc_attr($this->map['params']['directions_data_show']) : false,
1499
- 'attrs' => 'class="gmpProOpt"'))?>
1500
  <span>
1501
  <?php _e('Show route data', GMP_LANG_CODE)?>
1502
  </span>
1503
  </div>
1504
  <div style="margin-top: 10px;">
1505
- <?php echo htmlGmp::checkboxHiddenVal('map_opts[directions_steps_show]', array(
1506
  'value' => $this->editMap && isset($this->map['params']['directions_steps_show']) ? esc_attr($this->map['params']['directions_steps_show']) : false,
1507
- 'attrs' => 'class="gmpProOpt"'))?>
1508
  <span>
1509
  <?php _e('Show route steps', GMP_LANG_CODE)?>
1510
  </span>
1511
  </div>
1512
  <div style="margin-top: 10px;">
1513
- <?php echo htmlGmp::checkboxHiddenVal('map_opts[directions_miles]', array(
1514
  'value' => $this->editMap && isset($this->map['params']['directions_miles']) ? esc_attr($this->map['params']['directions_miles']) : false,
1515
- 'attrs' => 'class="gmpProOpt"'))?>
1516
  <span>
1517
  <?php _e('Use miles', GMP_LANG_CODE)?>
1518
  </span>
@@ -1532,18 +1526,18 @@
1532
  <?php }?>
1533
  </th>
1534
  <td>
1535
- <?php echo htmlGmp::checkboxHiddenVal('map_opts[enable_infownd_print_btn]', array(
1536
  'value' => $this->editMap && isset($this->map['params']['enable_infownd_print_btn']) ? esc_attr($this->map['params']['enable_infownd_print_btn']) : false,
1537
  'attrs' => 'class="gmpProOpt"'
1538
- ))?>
1539
  </td>
1540
  </tr>
1541
  </table>
1542
  </div>
1543
- <?php echo htmlGmp::hidden('mod', array('value' => 'gmap'))?>
1544
- <?php echo htmlGmp::hidden('action', array('value' => 'save'))?>
1545
- <?php echo htmlGmp::hidden('map_opts[id]', array('value' => $this->editMap ? esc_attr($this->map['id']) : ''))?>
1546
- <?php echo htmlGmp::hidden('map_opts[membershipEnable]', array('value' => isset($this->map['params']['membershipEnable']) ? esc_attr($this->map['params']['membershipEnable']) : 0, 'attrs' => 'id="membershipHiddenEnable"'))?>
1547
  </form>
1548
  </div>
1549
  <div id="gmpMarkerTab" class="gmpTabContent">
@@ -1557,9 +1551,9 @@
1557
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('Your marker title', GMP_LANG_CODE)?>"></i>
1558
  </th>
1559
  <td>
1560
- <?php echo htmlGmp::text('marker_opts[title]', array(
1561
  'value' => '',
1562
- 'attrs' => 'style="width: 100%;" id="marker_opts_title"'))?>
1563
  </td>
1564
  </tr>
1565
  <tr>
@@ -1577,7 +1571,7 @@
1577
  //'textarea_name' => 'marker_opts[description]',
1578
  'textarea_rows' => 10
1579
  ));?>
1580
- <?php echo htmlGmp::hidden('marker_opts[description]', array('value' => ''))?>
1581
  </th>
1582
  </tr>
1583
  <?php dispatcherGmp::doAction('addEditMapPart', 'gmapEditMapMarkerListDesc');?>
@@ -1589,8 +1583,8 @@
1589
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('Your marker Icon, that will appear on your map for this marker', GMP_LANG_CODE)?>"></i>
1590
  </th>
1591
  <td>
1592
- <?php echo htmlGmp::hidden('marker_opts[icon]', array(
1593
- 'value' => 1 /*Default Icon ID*/ ))?>
1594
  <img id="gmpMarkerIconPrevImg" src="" style="float: left;" />
1595
  <div style="float: right">
1596
  <a id="gmpMarkerIconBtn" href="#" class="button"><?php _e('Choose Icon', GMP_LANG_CODE)?></a>
@@ -1609,10 +1603,10 @@
1609
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('Search your location by address, just start typing here', GMP_LANG_CODE)?>"></i>
1610
  </th>
1611
  <td>
1612
- <?php echo htmlGmp::text('marker_opts[address]', array(
1613
  'value' => '',
1614
  'placeholder' => '603 Park Avenue, Brooklyn, NY 11206, USA',
1615
- 'attrs' => 'style="width: 100%;" id="marker_opts_address"'))?>
1616
  </td>
1617
  </tr>
1618
  <tr>
@@ -1623,10 +1617,10 @@
1623
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('Latitude for your marker', GMP_LANG_CODE)?>"></i>
1624
  </th>
1625
  <td>
1626
- <?php echo htmlGmp::text('marker_opts[coord_x]', array(
1627
  'value' => '',
1628
  'placeholder' => '40.69827799999999',
1629
- 'attrs' => 'style="width: 100%;" id="marker_opts_coord_x"'))?>
1630
  </td>
1631
  </tr>
1632
  <tr>
@@ -1637,10 +1631,10 @@
1637
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('Longitude for your marker', GMP_LANG_CODE)?>"></i>
1638
  </th>
1639
  <td>
1640
- <?php echo htmlGmp::text('marker_opts[coord_y]', array(
1641
  'value' => '',
1642
  'placeholder' => '-73.95141139999998',
1643
- 'attrs' => 'style="width: 100%;" id="marker_opts_coord_y"'))?>
1644
  </td>
1645
  </tr>
1646
  <tr>
@@ -1652,10 +1646,10 @@
1652
  </th>
1653
  <td>
1654
  <div style="width: 100%;">
1655
- <?php echo htmlGmp::selectlist('marker_opts[marker_group_id]', array(
1656
  'options' => $this->markerGroupsForSelect,
1657
  'value' => '',
1658
- 'attrs' => 'style="width: 100%;" id="marker_opts_marker_group_id" class="chosen-select"'))?>
1659
  </div>
1660
  </td>
1661
  </tr>
@@ -1667,18 +1661,18 @@
1667
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('Link for opening by click on the marker', GMP_LANG_CODE)?>"></i>
1668
  </th>
1669
  <td>
1670
- <?php echo htmlGmp::checkbox('marker_opts[params][marker_link]', array(
1671
  'checked' => '',
1672
  'attrs' => 'id="marker_link" onclick="gmpAddLinkOptions()"',
1673
- ))?>
1674
  <div id="link_options" style="display: none;">
1675
- <?php echo htmlGmp::text('marker_opts[params][marker_link_src]', array(
1676
  'value' => '',
1677
  'attrs' => 'style="width: 90%; float: right; margin: 0px 0px 10px 0px;"',
1678
- ))?>
1679
  <div style="clear: both;"></div>
1680
- <?php echo htmlGmp::checkbox('marker_opts[params][marker_link_new_wnd]', array(
1681
- 'checked' => ''))?>
1682
  <span>
1683
  <?php _e('Open in new window', GMP_LANG_CODE)?>
1684
  </span>
@@ -1693,8 +1687,8 @@
1693
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('Open marker description when map load', GMP_LANG_CODE)?>"></i>
1694
  </th>
1695
  <td>
1696
- <?php echo htmlGmp::checkbox('marker_opts[params][show_description]', array(
1697
- 'checked' => ''))?>
1698
  </td>
1699
  </tr>
1700
  <tr>
@@ -1705,8 +1699,8 @@
1705
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('Open marker description by mouse hover', GMP_LANG_CODE)?>"></i>
1706
  </th>
1707
  <td>
1708
- <?php echo htmlGmp::checkbox('marker_opts[params][description_mouse_hover]', array(
1709
- 'checked' => ''))?>
1710
  </td>
1711
  </tr>
1712
  <tr id="marker_opts_description_mouse_leave">
@@ -1717,8 +1711,8 @@
1717
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('Hide description when mouse leaves the marker area', GMP_LANG_CODE)?>"></i>
1718
  </th>
1719
  <td>
1720
- <?php echo htmlGmp::checkbox('marker_opts[params][description_mouse_leave]', array(
1721
- 'checked' => ''))?>
1722
  </td>
1723
  </tr>
1724
  <tr style="display: none;">
@@ -1729,8 +1723,8 @@
1729
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('If there is no image tag in the marker description - this image will be used for displaying in the map\'s markers list', GMP_LANG_CODE)?>"></i>
1730
  </th>
1731
  <td>
1732
- <?php echo htmlGmp::checkbox('marker_opts[params][marker_list_def_img]', array(
1733
- 'checked' => ''))?>
1734
  <div id="gmpMarkerListDefImgOptions" style="display: none;">
1735
  <a href="#"
1736
  id="gmpMarkerListDefImgUploadFileBtn"
@@ -1746,10 +1740,10 @@
1746
  style="float: right;">
1747
  <i class="fa fa-upload"></i>
1748
  </a>
1749
- <?php echo htmlGmp::text('marker_opts[params][marker_list_def_img_url]', array(
1750
  'value' => '',
1751
  'attrs' => 'id="gmpMarkerListDefImgUrl" style="width: 78%; margin-right: 5px; float: right;"',
1752
- ))?>
1753
  <span class="gmpMarkerListDefImgUploadMsg" style=" float: right; width: 100%; text-align: right;" ></span>
1754
  </div>
1755
  </td>
@@ -1762,8 +1756,8 @@
1762
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('Exclude marker from cluster if Markers Clusterization option is enabled.', GMP_LANG_CODE)?>"></i>
1763
  </th>
1764
  <td>
1765
- <?php echo htmlGmp::checkbox('marker_opts[params][clasterer_exclude]', array(
1766
- 'checked' => ''))?>
1767
  </td>
1768
  </tr>
1769
  <?php if($isCustSearchAndMarkersPeriodAvailable) { ?>
@@ -1795,10 +1789,10 @@
1795
  <td>
1796
  <?php
1797
  if($this->isPro) {
1798
- echo htmlGmp::text('marker_opts[period_date_from]', array(
1799
  'value' => '',
1800
  'attrs' => 'id="markerPeriodDateFrom"',
1801
- ));
1802
  }
1803
  ?>
1804
  </td>
@@ -1817,20 +1811,20 @@
1817
  <td>
1818
  <?php
1819
  if($this->isPro) {
1820
- echo htmlGmp::text('marker_opts[period_date_to]', array(
1821
  'value' => '',
1822
  'attrs' => 'id="markerPeriodDateTo"',
1823
- ));
1824
  }?>
1825
  </td>
1826
  </tr>
1827
  <?php }?>
1828
  </table>
1829
- <?php echo htmlGmp::hidden('mod', array('value' => 'marker'))?>
1830
- <?php echo htmlGmp::hidden('action', array('value' => 'save'))?>
1831
- <?php echo htmlGmp::hidden('marker_opts[id]', array('value' => ''))?>
1832
- <?php echo htmlGmp::hidden('marker_opts[map_id]', array('value' => $this->editMap ? esc_attr($this->map['id']) : ''))?>
1833
- <?php echo htmlGmp::hidden('marker_opts[path]', array('value' => ''))?>
1834
  </form>
1835
  </div>
1836
  <div id="gmpShapeTab" class="gmpTabContent">
@@ -1845,9 +1839,9 @@
1845
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('Your figure title', GMP_LANG_CODE)?>"></i>
1846
  </th>
1847
  <td>
1848
- <?php echo htmlGmp::text('shape_opts[title]', array(
1849
  'value' => '',
1850
- 'attrs' => 'style="width: 100%;"'))?>
1851
  </td>
1852
  </tr>
1853
  <tr>
@@ -1861,13 +1855,13 @@
1861
  '<br /><br /><b>Circle</b> - circle shape,defined by center coordinates and radius.', GMP_LANG_CODE)?>"></i>
1862
  </th>
1863
  <td>
1864
- <?php echo htmlGmp::selectbox('shape_opts[type]', array(
1865
  'options' => array(
1866
  'polyline' => __('Polyline', GMP_LANG_CODE),
1867
  'polygon' => __('Polygon', GMP_LANG_CODE),
1868
  'circle' => __('Circle', GMP_LANG_CODE),),
1869
  'value' => 'polyline',
1870
- 'attrs' => 'style="width: 100%;"'))?>
1871
  </td>
1872
  </tr>
1873
  <tr>
@@ -1876,45 +1870,45 @@
1876
  <label class="label" for="shape_opts_line_color">
1877
  <?php _e('Line Color', GMP_LANG_CODE)?>
1878
  </label></br>
1879
- <?php echo htmlGmp::colorpicker('shape_opts[params][strokeColor]', array(
1880
- 'value' => ''))?>
1881
  </div>
1882
  <div class="gmpCommonShapeParam">
1883
  <label class="label" for="shape_opts_line_opacity">
1884
  <?php _e('Line Opacity', GMP_LANG_CODE)?>
1885
  </label></br>
1886
- <?php echo htmlGmp::selectbox('shape_opts[params][strokeOpacity]', array(
1887
  'options' => array(
1888
  '0' => 0, '0.1' => 0.1, '0.2' => 0.2, '0.3' => 0.3
1889
  , '0.4' => 0.4, '0.5' => 0.5, '0.6' => 0.6
1890
  , '0.7' => 0.7, '0.8' => 0.8, '0.9' => 0.9, '1' => 1),
1891
- 'value' => ''))?>
1892
  </div>
1893
  <div class="gmpCommonShapeParam gmpParamRight">
1894
  <label class="label" for="shape_opts_line_weight">
1895
  <?php _e('Line Weight', GMP_LANG_CODE)?>
1896
  </label></br>
1897
- <?php echo htmlGmp::text('shape_opts[params][strokeWeight]', array(
1898
  'value' => '',
1899
- 'attrs' => 'style="width: 100%;"'))?>
1900
  </div>
1901
  <div class="gmpPolygonShapeParam gmpParamLeft">
1902
  <label class="label" for="shape_opts_fill_color">
1903
  <?php _e('Fill Color', GMP_LANG_CODE)?>
1904
  </label></br>
1905
- <?php echo htmlGmp::colorpicker('shape_opts[params][fillColor]', array(
1906
- 'value' => ''))?>
1907
  </div>
1908
  <div class="gmpPolygonShapeParam">
1909
  <label class="label" for="shape_opts_fill_opacity">
1910
  <?php _e('Fill Opacity', GMP_LANG_CODE)?>
1911
  </label></br>
1912
- <?php echo htmlGmp::selectbox('shape_opts[params][fillOpacity]', array(
1913
  'options' => array(
1914
  '0' => 0, '0.1' => 0.1, '0.2' => 0.2, '0.3' => 0.3
1915
  , '0.4' => 0.4, '0.5' => 0.5, '0.6' => 0.6
1916
  , '0.7' => 0.7, '0.8' => 0.8, '0.9' => 0.9, '1' => 1),
1917
- 'value' => ''))?>
1918
  </div>
1919
  <div style="clear: both;"></div>
1920
  <div class="gmpPolygonShapeParam gmpPolygonShapeDesc">
@@ -1927,7 +1921,7 @@
1927
  <?php wp_editor('', 'shapeDescription', array(
1928
  'textarea_rows' => 10
1929
  ));?>
1930
- <?php echo htmlGmp::hidden('shape_opts[description]', array('value' => ''))?>
1931
  </div>
1932
  </td>
1933
  </tr>
@@ -1996,10 +1990,10 @@
1996
  </td>
1997
  </tr>
1998
  </table>
1999
- <?php echo htmlGmp::hidden('mod', array('value' => 'shape'))?>
2000
- <?php echo htmlGmp::hidden('action', array('value' => 'save'))?>
2001
- <?php echo htmlGmp::hidden('shape_opts[id]', array('value' => ''))?>
2002
- <?php echo htmlGmp::hidden('shape_opts[map_id]', array('value' => $this->editMap ? esc_attr($this->map['id']) : ''))?>
2003
  </form>
2004
  <?php } else {
2005
  echo $promoData['gmpShapeTab']['content'];
@@ -2041,9 +2035,9 @@
2041
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('Heatmap Layer points radius in pixels', GMP_LANG_CODE)?>"></i>
2042
  </th>
2043
  <td>
2044
- <?php echo htmlGmp::text('heatmap_opts[params][radius]', array(
2045
  'value' => '',
2046
- 'attrs' => 'style="width: 100%;"'))?>
2047
  </td>
2048
  </tr>
2049
  <tr>
@@ -2054,13 +2048,13 @@
2054
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('Heatmap Layer points opacity', GMP_LANG_CODE)?>"></i>
2055
  </th>
2056
  <td>
2057
- <?php echo htmlGmp::selectbox('heatmap_opts[params][opacity]', array(
2058
  'options' => array(
2059
  '0' => 0, '0.1' => 0.1, '0.2' => 0.2, '0.3' => 0.3
2060
  , '0.4' => 0.4, '0.5' => 0.5, '0.6' => 0.6
2061
  , '0.7' => 0.7, '0.8' => 0.8, '0.9' => 0.9, '1' => 1),
2062
  'value' => '',
2063
- 'attrs' => 'style="width: 100%;"'))?>
2064
  </td>
2065
  </tr>
2066
  <tr>
@@ -2086,15 +2080,15 @@
2086
  <div id="gmpHeatmapGradientFirstColorContainer">
2087
 
2088
  </div>
2089
- <?php echo htmlGmp::hidden('heatmap_opts[params][gradient][]', array('value' => '', 'attrs' => 'class="firstHeatmapColor"'))?>
2090
  <div id="gmpHeatmapGradientContainer"></div>
2091
  </td>
2092
  </tr>
2093
  </table>
2094
- <?php echo htmlGmp::hidden('mod', array('value' => 'heatmap'))?>
2095
- <?php echo htmlGmp::hidden('action', array('value' => 'save'))?>
2096
- <?php echo htmlGmp::hidden('heatmap_opts[id]', array('value' => ''))?>
2097
- <?php echo htmlGmp::hidden('heatmap_opts[map_id]', array('value' => $this->editMap ? esc_attr($this->map['id']) : ''))?>
2098
  </form>
2099
  <?php } else {
2100
  echo $promoData['gmpHeatmapTab']['content'];
@@ -2107,7 +2101,7 @@
2107
  <div class="gmpMapProControlsCon" id="gmpMapProControlsCon_<?php echo esc_attr($this->viewId);?>">
2108
  <?php dispatcherGmp::doAction('addAdminMapBottomControls', $this->editMap ? $this->map : array()); ?>
2109
  </div>
2110
- <?php echo htmlGmp::hidden('rand_view_id', array('value' => esc_attr($this->viewId), 'attrs' => 'id="gmpViewId"'))?>
2111
  <div id="gmpMapMainBtns" class="gmpControlBtns row" style="display: none;">
2112
  <div class="sup-col sup-w-50">
2113
  <button id="gmpMapSaveBtn" class="button button-primary" style="width: 100%;">
@@ -2176,19 +2170,19 @@
2176
  <table id="gmpShapesListGrid" class="supsystic-tbl-pagination-shell"></table>
2177
  </div>
2178
  <?php /*?>
2179
- <div class="row">
2180
  <div id="gmpMarkerList">
2181
- <div style="display: none;" id="markerRowTemplate" class="row gmpMapMarkerRow">
2182
- <div class="col-xs-12 egm-marker">
2183
- <div class="row">
2184
- <div class="col-xs-2 egm-marker-icon">
2185
  <img alt="" src="">
2186
  </div>
2187
- <div class="col-xs-4 egm-marker-title">
2188
  </div>
2189
- <div class="col-xs-3 egm-marker-latlng">
2190
  </div>
2191
- <div class="col-xs-3 egm-marker-actions">
2192
  <button title="<?php _e('Edit', GMP_LANG_CODE)?>" type="button" class="button button-small egm-marker-edit">
2193
  <i class="fa fa-fw fa-pencil"></i>
2194
  </button>
25
  if(property_exists($this, 'membershipPluginError')) {
26
  echo esc_attr($this->membershipPluginError);
27
  } else if(property_exists($this, 'pluginInstallUrl')) {
28
+
 
 
29
  } else if(property_exists($this, 'canUseMembershipFeature') && $this->canUseMembershipFeature == 1) {
30
+
 
 
 
 
 
 
31
  }
32
  ?>
33
  </div>
88
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('Your map name', GMP_LANG_CODE)?>"></i>
89
  </th>
90
  <td>
91
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::text('map_opts[title]', array(
92
  'value' => $this->editMap ? esc_attr($this->map['title']) : '',
93
  'attrs' => 'style="width: 100%;" id="map_opts_title"',
94
+ 'required' => true)))?>
95
  </td>
96
  </tr>
97
  <tr>
103
  </th>
104
  <td>
105
  <div class="sup-col sup-w-25">
106
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::input('map_opts[width]', array(
107
+ 'value' => $this->editMap ? $this->map['html_options']['width'] : '100',
108
  'type' => 'number',
109
+ 'attrs' => 'style="width: 100%;" id="map_opts_width"')))?>
110
  </div>
111
  <div class="sup-col sup-w-75">
112
+ <label class="supsystic-tooltip" title="<?php _e('Pixels', GMP_LANG_CODE)?>" style="margin-right: 15px; position: relative; top: 7px;"><?php echo htmlGmp::wpKsesHtml(htmlGmp::radiobutton('map_opts[width_units]', array(
113
  'value' => 'px',
114
+ 'checked' => $this->editMap ? htmlGmp::checkedOpt($this->map['params'], 'width_units', 'px') : false,
115
+ )))?>&nbsp;<?php _e('Px', GMP_LANG_CODE)?></label>
116
+ <label style="margin-right: 15px; position: relative; top: 7px;"><?php echo htmlGmp::wpKsesHtml(htmlGmp::radiobutton('map_opts[width_units]', array(
117
  'value' => '%',
118
+ 'checked' => $this->editMap ? htmlGmp::checkedOpt($this->map['params'], 'width_units', '%') : true,
119
+ )))?>&nbsp;<?php _e('Percent', GMP_LANG_CODE)?></label>
120
  </div>
121
  </td>
122
  </tr>
136
  <td>
137
  <div class="gmpMainHeightOpts sup-col sup-w-50 no-p">
138
  <div class="sup-col sup-w-50" style="padding-right: 15px;">
139
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::input('map_opts[height]', array(
140
  'value' => $this->editMap ? esc_attr($this->map['html_options']['height']) : '250',
141
  'type' => 'number',
142
+ 'attrs' => 'style="width: 100%;" id="map_opts_height"')))?>
143
  </div>
144
  <div class="sup-col sup-w-50 no-p">
145
+ <label class="supsystic-tooltip" title="<?php _e('Pixels', GMP_LANG_CODE)?>" style="margin-right: 15px; position: relative; top: 7px;"><?php echo htmlGmp::wpKsesHtml(htmlGmp::radiobutton('map_opts_height_units_is_constant', array(
146
  'value' => 'px',
147
  'checked' => true,
148
+ )))?>&nbsp;<?php _e('Px', GMP_LANG_CODE)?></label>
149
  </div>
150
  </div>
151
  <div class="gmpAdditionalHeightOpts sup-col sup-w-100 no-p">
152
  <div style="margin-top: 8px;">
153
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::checkboxHiddenVal('map_opts[adapt_map_to_screen_height]', array(
154
  'value' => $this->editMap && isset($this->map['params']['adapt_map_to_screen_height']) ? esc_attr($this->map['params']['adapt_map_to_screen_height']) : false,
155
+ )))?>
156
  <span style="vertical-align: middle;">
157
  <?php _e('Adapt map to screen height', GMP_LANG_CODE)?>
158
  </span>
162
  <label for="map_opts_map_selectors_content_before">
163
  <?php _e('Content Before', GMP_LANG_CODE)?>
164
  </label>
165
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::text('map_opts[selectors][content_before]', array(
166
  'value' => $this->editMap && isset($this->map['params']['selectors']['content_before']) ? esc_attr($this->map['params']['selectors']['content_before']) : '',
167
  'placeholder' => '',
168
+ 'attrs' => 'style="width: 100%;" id="map_opts_selector_content_before"')))?>
169
  </div>
170
  <div style="margin-top: 8px;">
171
  <label for="map_opts_map_selectors_content_after">
172
  <?php _e('Content After', GMP_LANG_CODE)?>
173
  </label>
174
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::text('map_opts[selectors][content_after]', array(
175
  'value' => $this->editMap && isset($this->map['params']['selectors']['content_after']) ? esc_attr($this->map['params']['selectors']['content_after']) : '',
176
  'placeholder' => '',
177
+ 'attrs' => 'style="width: 100%;" id="map_opts_selector_content_after"')))?>
178
  </div>
179
  </div>
180
  </div>
181
  </td>
182
  </tr>
183
  </table>
184
+ <?php /*?><div id="gmpExtendOptsBtnShell" class="supRow-pad">
185
  <a href="#" id="gmpExtendOptsBtn" class="button"><?php _e('Extended Options', GMP_LANG_CODE)?></a>
186
  </div><?php */?>
187
+ <div id="gmpExtendOptsShell" class="supRow">
188
  <table class="form-table">
189
  <tr>
190
  <th scope="row">
195
  </th>
196
  <td>
197
  <div class="sup-col sup-w-50">
198
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::selectbox('map_opts[type_control]', array(
199
  'options' => array('none' => __('None', GMP_LANG_CODE), 'DROPDOWN_MENU' => __('Dropdown Menu', GMP_LANG_CODE), 'HORIZONTAL_BAR' => __('Horizontal Bar', GMP_LANG_CODE)),
200
  'value' => $this->editMap && isset($this->map['params']['type_control']) ? esc_attr($this->map['params']['type_control']) : 'HORIZONTAL_BAR',
201
+ 'attrs' => 'style="width: 100%;" id="map_opts_type_control"')))?>
202
  </div>
203
  <div class="sup-col sup-w-50">
204
  <?php $proLink = frameGmp::_()->getModule('supsystic_promo')->generateMainLink('utm_source=plugin&utm_medium=type_control_position&utm_campaign=googlemaps'); ?>
205
  <i class="fa fa-arrows supsystic-tooltip" title="<?php _e('Change type control position on map', GMP_LANG_CODE)?>"></i>
206
+
207
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::selectbox('map_opts[type_control_position]', array(
208
  'options' => $this->positionsList,
209
  'value' => $this->editMap && isset($this->map['params']['type_control_position']) ? esc_attr($this->map['params']['type_control_position']) : 'TOP_RIGHT',
210
+ 'attrs' => 'data-for="mapTypeControlOptions" class="gmpMapPosChangeSelect '. esc_attr($addProElementClass). '"'. (empty($addProElementAttrs && 1==0) ? '' : sprintf($addProElementAttrs, $proLink, $proLink))
211
+ )))?>
212
+
213
  <?php if(!$this->isPro) { ?>
214
  <span class="gmpProOptMiniLabel" style="padding-left: 20px;"><a target="_blank" href="<?php echo esc_attr($proLink)?>"><?php _e('PRO option', GMP_LANG_CODE)?></a></span>
215
  <?php }?>
226
  <td>
227
  <div>
228
  <div class="sup-col sup-w-50">
229
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::selectbox('map_opts[zoom_control]', array(
230
  'options' => array('none' => __('None', GMP_LANG_CODE), 'DEFAULT' => __('Default', GMP_LANG_CODE)/*, 'LARGE' => __('Large', GMP_LANG_CODE), 'SMALL' => __('Small', GMP_LANG_CODE)*/),
231
  'value' => $this->editMap && isset($this->map['params']['zoom_control']) ? esc_attr($this->map['params']['zoom_control']) : 'DEFAULT',
232
+ 'attrs' => 'style="width: 100%;" id="map_opts_zoom_control"')))?>
233
  </div>
234
  <div class="sup-col sup-w-50">
235
  <?php $proLink = frameGmp::_()->getModule('supsystic_promo')->generateMainLink('utm_source=plugin&utm_medium=zoom_control_position&utm_campaign=googlemaps'); ?>
236
  <i class="fa fa-arrows supsystic-tooltip" title="<?php _e('Change zoom control position on map', GMP_LANG_CODE)?>"></i>
237
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::selectbox('map_opts[zoom_control_position]', array(
238
  'options' => $this->positionsList,
239
  'value' => $this->editMap && isset($this->map['params']['zoom_control_position']) ? esc_attr($this->map['params']['zoom_control_position']) : 'TOP_LEFT',
240
+ 'attrs' => 'data-for="zoomControlOptions" class="gmpMapPosChangeSelect '. esc_attr($addProElementClass). '"'. (empty($addProElementAttrs && 1==0) ? '' : sprintf($addProElementAttrs, $proLink, $proLink))
241
+ )))?>
242
  <?php if(!$this->isPro) { ?>
243
  <span class="gmpProOptMiniLabel" style="padding-left: 20px;"><a target="_blank" href="<?php echo esc_attr($proLink)?>"><?php _e('PRO option', GMP_LANG_CODE)?></a></span>
244
  <?php }?>
260
  </th>
261
  <td>
262
  <div class="sup-col sup-w-50">
263
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::checkboxHiddenVal('map_opts[street_view_control]', array(
264
  'value' => $this->editMap && isset($this->map['params']['street_view_control']) ? esc_attr($this->map['params']['street_view_control']) : true,
265
+ )))?>
266
  </div>
267
  <div class="sup-col sup-w-50">
268
  <?php $proLink = frameGmp::_()->getModule('supsystic_promo')->generateMainLink('utm_source=plugin&utm_medium=street_view_control_position&utm_campaign=googlemaps'); ?>
269
  <i class="fa fa-arrows supsystic-tooltip" title="<?php _e('Change street view control position on map', GMP_LANG_CODE)?>"></i>
270
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::selectbox('map_opts[street_view_control_position]', array(
271
  'options' => $this->positionsList,
272
  'value' => $this->editMap && isset($this->map['params']['street_view_control_position']) ? esc_attr($this->map['params']['street_view_control_position']) : 'TOP_LEFT',
273
+ 'attrs' => 'data-for="streetViewControlOptions" class="gmpMapPosChangeSelect '. esc_attr($addProElementClass). '"'. (empty($addProElementAttrs && 1==0) ? '' : sprintf($addProElementAttrs, $proLink, $proLink))
274
+ )))?>
275
  <?php if(!$this->isPro) { ?>
276
  <span class="gmpProOptMiniLabel" style="padding-left: 20px;"><a target="_blank" href="<?php echo esc_attr($proLink)?>"><?php _e('PRO option', GMP_LANG_CODE)?></a></span>
277
  <?php }?>
335
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('Enable or disable possibility to drag your map using mouse', GMP_LANG_CODE)?>"></i>
336
  </th>
337
  <td>
338
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::checkboxHiddenVal('map_opts[draggable]', array(
339
  'value' => $this->editMap && isset($this->map['params']['draggable']) ? esc_attr($this->map['params']['draggable']) : true,
340
+ )))?>
341
  </td>
342
  <th scope="row">
343
  <label for="map_optsmouse_wheel_zoom_check">
346
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('Sometimes you need to disable possibility to zoom your map using mouse wheel. This can be required for example - if you need to use your wheel for some other action, for example scroll your site even if mouse is over your map.', GMP_LANG_CODE)?>"></i>
347
  </th>
348
  <td>
349
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::checkboxHiddenVal('map_opts[mouse_wheel_zoom]', array(
350
  'value' => $this->editMap && isset($this->map['params']['mouse_wheel_zoom']) ? esc_attr($this->map['params']['mouse_wheel_zoom']) : true,
351
+ )))?>
352
  </td>
353
  </tr>
354
  <tr>
359
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('By default double left click on map will zoom it in. But you can change this here.', GMP_LANG_CODE)?>"></i>
360
  </th>
361
  <td>
362
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::checkboxHiddenVal('map_opts[dbl_click_zoom]', array(
363
  'value' => $this->editMap && isset($this->map['params']['dbl_click_zoom']) ? esc_attr($this->map['params']['dbl_click_zoom']) : true,
364
+ )))?>
365
  </td>
366
  <th scope="row">
367
  <label for="map_optsis_static_check">
370
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('Show map as a Static image. This will allow you to make it cheeper according to new Google Maps API usage Rates. Be aware - not all options will work in this mode!', GMP_LANG_CODE)?>"></i>
371
  </th>
372
  <td>
373
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::checkboxHiddenVal('map_opts[is_static]', array(
374
  'value' => $this->editMap && isset($this->map['params']['is_static']) ? esc_attr($this->map['params']['is_static']) : false,
375
  'attrs' => 'class="gmpProOpt"',
376
+ )))?>
377
  <?php $proLink = frameGmp::_()->getModule('supsystic_promo')->generateMainLink('utm_source=plugin&utm_medium=static_map&utm_campaign=googlemaps'); ?>
378
  <?php if(!$this->isPro) { ?>
379
  <span class="gmpProOptMiniLabel" style="padding-left: 20px;"><a target="_blank" href="<?php echo esc_attr($proLink)?>"><?php _e('PRO option', GMP_LANG_CODE)?></a></span>
395
  <label for="map_opts_map_center_address">
396
  <?php _e('Address', GMP_LANG_CODE)?>
397
  </label>
398
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::text('map_opts[map_center][address]', array(
399
  'value' => $this->editMap && isset($this->map['params']['map_center']['address']) ? esc_attr($this->map['params']['map_center']['address']) : '',
400
  'placeholder' => '603 Park Avenue, Brooklyn, NY 11206, USA',
401
+ 'attrs' => 'style="width: 100%;" id="map_opts_map_center_address"')))?>
402
  </div>
403
  <div class="sup-col sup-w-50" style="margin-top: 10px;">
404
  <label for="map_opts_map_center_coord_x">
405
  <?php _e('Latitude', GMP_LANG_CODE)?>
406
  </label>
407
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::text('map_opts[map_center][coord_x]', array(
408
  'value' => $this->editMap ? esc_attr($this->map['params']['map_center']['coord_x']) : '',
409
+ 'attrs' => 'style="width: 100%;" id="map_opts_map_center_coord_x"')))?>
410
  </div>
411
  <div class="sup-col sup-w-50" style="margin-top: 10px;">
412
  <label for="map_opts_map_center_coord_y">
413
  <?php _e('Longitude', GMP_LANG_CODE)?>
414
  </label>
415
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::text('map_opts[map_center][coord_y]', array(
416
  'value' => $this->editMap ? esc_attr($this->map['params']['map_center']['coord_y']) : '',
417
+ 'attrs' => 'style="width: 100%;" id="map_opts_map_center_coord_y"')))?>
418
  </div>
419
  </td>
420
  </tr>
436
  $zoomMax = 21;
437
  $zoomRange = array_combine(range($zoomMin, $zoomMax), range($zoomMin, $zoomMax));
438
  ?>
439
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::selectbox('map_opts[zoom_type]', array(
440
  'options' => array('zoom_level' => __('Preset Zoom', GMP_LANG_CODE), 'fit_bounds' => __('Fit Bounds', GMP_LANG_CODE)),
441
  'value' => $this->editMap && isset($this->map['params']['zoom_type']) ? esc_attr($this->map['params']['zoom_type']) : 'zoom_level',
442
+ 'attrs' => 'style="width: 100%;"')))?>
443
  <div id="zoom_type_options">
444
  <div>
445
  <div class="zoom_level sup-col sup-w-50" style="display: none; margin-top: 10px;">
446
  <label for="map_opts_zoom">
447
  <?php _e('Zoom Level', GMP_LANG_CODE)?>
448
  </label>
449
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::selectbox('map_opts[zoom]', array(
450
  'options' => $zoomRange,
451
  'value' => $this->editMap && isset($this->map['params']['zoom']) ? esc_attr($this->map['params']['zoom']) : 8,
452
+ 'attrs' => 'style="width: 100%;"')))?>
453
  <?php //echo htmlGmp::hidden('map_opts[zoom]', array('value' => $this->editMap ? $this->map['params']['zoom'] : ''))?>
454
  </div>
455
  <div class="zoom_level sup-col sup-w-50" style="display: none; margin-top: 10px;">
456
  <label for="map_opts_zoom_mobile">
457
  <?php _e('Mobile Zoom Level', GMP_LANG_CODE)?>
458
  </label>
459
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::selectbox('map_opts[zoom_mobile]', array(
460
  'options' => $zoomRange,
461
  'value' => $this->editMap && isset($this->map['params']['zoom_mobile']) ? esc_attr($this->map['params']['zoom_mobile']) : 8,
462
+ 'attrs' => 'style="width: 100%;"')))?>
463
  </div>
464
  </div>
465
  <div>
467
  <label for="map_opts_zoom_min">
468
  <?php _e('Min Zoom Level', GMP_LANG_CODE)?>
469
  </label>
470
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::selectbox('map_opts[zoom_min]', array(
471
  'options' => $zoomRange,
472
  'value' => $this->editMap && isset($this->map['params']['zoom_min']) ? esc_attr($this->map['params']['zoom_min']) : esc_attr($zoomMin),
473
+ 'attrs' => 'style="width: 100%;"')))?>
474
  </div>
475
  <div class="zoom_max_level sup-col sup-w-50" style="margin-top: 10px;">
476
  <label for="map_opts_zoom_max">
477
  <?php _e('Max Zoom Level', GMP_LANG_CODE)?>
478
  </label>
479
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::selectbox('map_opts[zoom_max]', array(
480
  'options' => $zoomRange,
481
  'value' => $this->editMap && isset($this->map['params']['zoom_max']) ? esc_attr($this->map['params']['zoom_max']) : esc_attr($zoomMax),
482
+ 'attrs' => 'style="width: 100%;"')))?>
483
  </div>
484
  </div>
485
  </div>
493
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('You can select your Google Map theme - Road Map, Hybrid, Satellite or Terrain - here. By default your map will have Road Map Google maps theme.', GMP_LANG_CODE)?>"></i>
494
  </th>
495
  <td>
496
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::selectbox('map_opts[map_type]', array(
497
  'options' => array('ROADMAP' => __('Road Map', GMP_LANG_CODE), 'HYBRID' => __('Hybrid', GMP_LANG_CODE), 'SATELLITE' => __('Satellite', GMP_LANG_CODE), 'TERRAIN' => __('Terrain', GMP_LANG_CODE)),
498
  'value' => $this->editMap && isset($this->map['params']['map_type']) ? esc_attr($this->map['params']['map_type']) : 'ROADMAP',
499
+ 'attrs' => 'style="width: 100%;" id="map_opts_map_type"')))?>
500
  </td>
501
  </tr>
502
  <tr>
507
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('Make your map unique with our Map Themes, just try to change it here - and you will see results on your Map Preview.', GMP_LANG_CODE)?>"></i>
508
  </th>
509
  <td>
510
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::selectbox('map_opts[map_stylization]', array(
511
  'options' => $this->stylizationsForSelect,
512
  'value' => $this->editMap && isset($this->map['params']['map_stylization']) ? esc_attr($this->map['params']['map_stylization']) : 'none',
513
+ 'attrs' => 'style="width: '. ($this->isPro ? '100%' : 'calc(100% - 200px)'). ';" id="map_opts_map_stylization"')))?>
514
  <?php if(!$this->isPro) {?>
515
  <a target="_blank" href="<?php echo esc_attr($this->mainLink);?>" class="sup-standard-link">
516
  <i class="fa fa-plus"></i>
527
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('If you have many markers - you can have a problems with viewing them when zoom out for example: they will just cover each-other. Marker clusterization can solve this problem by grouping your markers in groups when they are too close to each-other.', GMP_LANG_CODE)?>"></i>
528
  </th>
529
  <td>
530
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::selectbox('map_opts[marker_clasterer]', array(
531
  'options' => array('none' => __('None', GMP_LANG_CODE), 'MarkerClusterer' => __('Base Clusterization', GMP_LANG_CODE)),
532
  'value' => $this->editMap && isset($this->map['params']['marker_clasterer']) ? esc_attr($this->map['params']['marker_clasterer']) : 'none',
533
+ 'attrs' => 'style="width: 100%;" id="map_opts_marker_clasterer"')));
534
 
535
  // Prevent to use old default claster icon cdn icon because it is missing
536
  $oldDefClasterIcon = 'https://google-maps-utility-library-v3.googlecode.com/svn/trunk/markerclusterer/images/m1.png';
577
  <i class="fa fa-question supsystic-tooltip" title="<?php _e('Sets the grid size of cluster. The higher the size - the more area of capture the markers to the cluster.', GMP_LANG_CODE)?>"></i>
578
  <br />
579
  <div class="sup-col sup-w-75">
580
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::text('map_opts[marker_clasterer_grid_size]', array(
581
  'value' => $this->editMap && isset($this->map['params']['marker_clasterer_grid_size']) ? esc_attr($this->map['params']['marker_clasterer_grid_size']) : '60',
582
+ 'attrs' => 'style="width: 100%;" id="gmpMarkerClastererGridSize" ')))?>
583
  </div>
584
  <div class="sup-col" style="max-width: 50%; min-width: 20%; float: right; padding: 0; text-align: center;">
585
  <a id="gmpDefaultClastererGridSizeBtn" href="#" class="button" style="width: 100%; margin-bottom: 5px;"><?php _e('Default', GMP_LANG_CODE)?></a>
601
  </th>
602
  <td>
603
  <a id="gmpMapMarkersListBtn" href="#" class="button"><?php _e('Select Markers List type', GMP_LANG_CODE)?></a>
604
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::hidden('map_opts[markers_list_type]', array(
605
+ 'value' => $this->editMap && isset($this->map['params']['markers_list_type']) ? esc_attr($this->map['params']['markers_list_type']) : '')))?>
606
  <div id="gmpMapMarkersListSettings" style="display: none;">
607
  <div style="margin-top: 10px;clear: both;">
608
  <div class="sup-col sup-w-50">
609
  <label for="map_opts_markers_list_color">
610
  <?php _e('Markers List Color', GMP_LANG_CODE)?>
611
  </label><br />
612
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::colorpicker('map_opts[markers_list_color]', array(
613
+ 'value' => $this->editMap && isset($this->map['params']['markers_list_color']) ? esc_attr($this->map['params']['markers_list_color']) : '#55BA68')))?>
614
  </div>
615
  <div class="sup-col sup-w-50">
616
  <label for="map_opts_markers_list_hide_empty_block">
617
  <?php _e('Hide empty blocks', GMP_LANG_CODE)?>
618
  </label><br />
619
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::checkboxHiddenVal('map_opts[markers_list_hide_empty_block]', array(
620
  'value' => $this->editMap && isset($this->map['params']['markers_list_hide_empty_block']) ? esc_attr($this->map['params']['markers_list_hide_empty_block']) : false,
621
+ 'attrs' => 'id="map_opts_markers_list_hide_empty_block"')))?>
622
  </div>
623
  </div>
624
  <div style="margin-top: 10px;clear: both;">
626
  <label for="map_opts_markers_list_collapse_mobile">
627
  <?php _e('Collapse markers list on mobile', GMP_LANG_CODE)?>
628
  </label><br />
629
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::checkboxHiddenVal('map_opts[markers_list_collapse][mobile]', array(
630
  'value' => $this->editMap && isset($this->map['params']['markers_list_collapse']['mobile']) ? esc_attr($this->map['params']['markers_list_collapse']['mobile']) : false,
631
+ 'attrs' => 'id="map_opts_markers_list_collapse_mobile"')))?>
632
  </div>
633
  <div class="sup-col sup-w-50">
634
  <label for="map_opts_markers_list_loop">
635
  <?php _e('Enable markers list loop', GMP_LANG_CODE)?>
636
  </label><br />
637
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::checkboxHiddenVal('map_opts[markers_list_loop]', array(
638
  'value' => $this->editMap && isset($this->map['params']['markers_list_loop']) ? esc_attr($this->map['params']['markers_list_loop']) : false,
639
+ 'attrs' => 'id="map_opts_markers_list_loop"')))?>
640
  </div>
641
  </div>
642
  <div style="clear: both;">
652
  <label for="map_opts_markers_list_autoplay_enable">
653
  <?php _e('Enable Autoplay', GMP_LANG_CODE)?>
654
  </label><br />
655
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::checkboxHiddenVal('map_opts[markers_list_autoplay][enable]', array(
656
  'value' => $this->editMap && isset($this->map['params']['markers_list_autoplay']['enable']) ? esc_attr($this->map['params']['markers_list_autoplay']['enable']) : false,
657
+ 'attrs' => 'id="map_opts_markers_list_autoplay_enable"')))?>
658
  </div>
659
  <div class="sup-col sup-w-50">
660
  <label for="map_opts_markers_list_autoplay_steps">
661
  <?php _e('Steps', GMP_LANG_CODE)?>
662
  </label><br />
663
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::text('map_opts[markers_list_autoplay][steps]', array(
664
  'value' => $this->editMap && isset($this->map['params']['markers_list_autoplay']['steps']) ? esc_attr($this->map['params']['markers_list_autoplay']['steps']) : '1',
665
+ 'attrs' => 'style="width: 100%;" id="map_opts_markers_list_autoplay_steps" placeholder="1"')))?>
666
  </div>
667
  </div>
668
  <div style="clear: both;">
670
  <label for="map_opts_markers_list_autoplay_idle">
671
  <?php _e('Idle (milliseconds)', GMP_LANG_CODE)?>
672
  </label><br />
673
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::text('map_opts[markers_list_autoplay][idle]', array(
674
  'value' => $this->editMap && isset($this->map['params']['markers_list_autoplay']['idle']) ? esc_attr($this->map['params']['markers_list_autoplay']['idle']) : '3000',
675
+ 'attrs' => 'style="width: 100%;" id="map_opts_markers_list_autoplay_idle" placeholder="3000"')))?>
676
  </div>
677
  <div class="sup-col sup-w-50">
678
  <label for="map_opts_markers_list_autoplay_duration">
679
  <?php _e('Duration (milliseconds)', GMP_LANG_CODE)?>
680
  </label><br />
681
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::text('map_opts[markers_list_autoplay][duration]', array(
682
  'value' => $this->editMap && isset($this->map['params']['markers_list_autoplay']['duration']) ? esc_attr($this->map['params']['markers_list_autoplay']['duration']) : '160',
683
+ 'attrs' => 'style="width: 100%;" id="map_opts_markers_list_autoplay_duration" placeholder="160"')))?>
684
  </div>
685
  </div>
686
  </div>
698
  <?php }?>
699
  </th>
700
  <td>
701
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::checkboxHiddenVal('map_opts[enable_trafic_layer]', array(
702
  'value' => $this->editMap && isset($this->map['params']['enable_trafic_layer']) ? esc_attr($this->map['params']['enable_trafic_layer']) : false,
703
+ 'attrs' => 'class="gmpProOpt"')))?>
704
  </td>
705
  </tr>
706
  <tr>
715
  <?php }?>
716
  </th>
717
  <td>
718
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::checkboxHiddenVal('map_opts[enable_transit_layer]', array(
719
  'value' => $this->editMap && isset($this->map['params']['enable_transit_layer']) ? esc_attr($this->map['params']['enable_transit_layer']) : false,
720
+ 'attrs' => 'class="gmpProOpt"')))?>
721
  </td>
722
  </tr>
723
  <tr>
732
  <?php }?>
733
  </th>
734
  <td>
735
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::checkboxHiddenVal('map_opts[enable_bicycling_layer]', array(
736
  'value' => $this->editMap && isset($this->map['params']['enable_bicycling_layer']) ? esc_attr($this->map['params']['enable_bicycling_layer']) : false,
737
+ 'attrs' => 'class="gmpProOpt"')))?>
738
  </td>
739
  </tr>
740
  <tr>
758
  <td>
759
  <div style="margin-top: 10px;">
760
  <label for="map_opts_enable_google_kml_api">
761
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::checkboxHiddenVal('map_opts[enable_google_kml_api]', array(
762
  'value' => $this->editMap && isset($this->map['params']['enable_google_kml_api']) ? esc_attr($this->map['params']['enable_google_kml_api']) : false,
763
+ 'attrs' => 'class="gmpProOpt" id="map_opts_enable_google_kml_api"')))?>
764
  <?php _e('Load kml faster', GMP_LANG_CODE)?>
765
  </label>
766
  </div>
772
  ?>
773
  <div style="margin-top: 10px;" class="<?php echo $hiddenClass;?>" >
774
  <label for="map_opts_enable_kml_filter">
775
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::checkboxHiddenVal('map_opts[enable_kml_filter]', array(
776
  'value' => $this->editMap && isset($this->map['params']['enable_kml_filter']) ? esc_attr($this->map['params']['enable_kml_filter']) : false,
777
+ 'attrs' => 'class="gmpProOpt" id="map_opts_enable_kml_filter"')))?>
778
  <?php _e('Enable KML layers filter', GMP_LANG_CODE)?>
779
  </label>
780
  </div>
783
  <div style="clear: both;"></div>
784
  <label><?php _e('Enter KML file URL', GMP_LANG_CODE)?></label>
785
  <label class="gmpShowSublayersLabel" style="float: right;">
786
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::hidden('map_opts[kml_filter][show_sublayers][]', array('value' => '', 'attrs' => 'class="gmpShowSublayersInput gmpProOpt" disabled="disabled"')))?>
787
  <?php _e('Hide Sublayers at KML filter', GMP_LANG_CODE)?>
788
  </label>
789
  <div style="clear: both;"></div>
790
  <a href="#" title="<?php _e('Remove KML field', GMP_LANG_CODE)?>" class="button gmpProOpt" onclick="gmpKmlRemoveFileRowBtnClick(this); return false;">
791
  <i class="fa fa-trash-o"></i>
792
  </a>
793
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::text('map_opts[kml_file_url][]', array('value' => '', 'attrs' => 'class="gmpProOpt" style="width: 86%; float: right;" disabled="disabled"')))?>
794
  <span class="gmpKmlUploadMsg" style="float: right; width: 100%; text-align: right;" ></span>
795
  <a href="#"
796
  class="gmpKmlUploadFileBtn button gmpProOpt"
818
  if($oneMarker == 'on') {
819
  $isKmlImpToMarkerVal = 1;
820
  }
821
+ echo htmlGmp::wpKsesHtml(htmlGmp::hidden('map_opts[kml_import_to_marker][]', array(
822
  'value' => esc_attr($isKmlImpToMarkerVal),
823
  'attrs' => ' class="gmpProOpt gmpKmlImportToMarkerHid" data-order="' . esc_attr($omKey) . '" ',
824
+ )));
825
  }
826
  }
827
  ?>
852
  <?php }?>
853
  </th>
854
  <td>
855
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::checkboxHiddenVal('map_opts[enable_custom_map_controls]', array(
856
  'value' => $this->editMap && isset($this->map['params']['enable_custom_map_controls']) ? esc_attr($this->map['params']['enable_custom_map_controls']) : false,
857
+ 'attrs' => 'class="gmpProOpt" onclick="gmpAddCustomControlsOptions()"')))?>
858
  <div id="custom_controls_options" style="display: none;">
859
  <div style="margin-top: 10px;">
860
  <label for="map_opts_custom_controls_type">
861
  <?php _e('Controls type', GMP_LANG_CODE)?>
862
  </label>
863
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::selectbox('map_opts[custom_controls_type]', array(
864
  'options' => array('gmpSquareControls' => __('Square', GMP_LANG_CODE), 'gmpRoundedEdgesControls' => __('Rounded edges', GMP_LANG_CODE), 'gmpRoundControls' => __('Round', GMP_LANG_CODE)),
865
  'value' => $this->editMap && isset($this->map['params']['custom_controls_type']) ? esc_attr($this->map['params']['custom_controls_type']) : 'round',
866
+ 'attrs' => 'class="gmpProOpt" style="width: 100%;" id="map_opts_custom_controls_type"')))?>
867
  </div>
868
  <div style="margin-top: 10px;">
869
  <label for="map_opts_custom_controls_bg_color">
870
  <?php _e('Background color', GMP_LANG_CODE)?>
871
  </label></br>
872
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::colorpicker('map_opts[custom_controls_bg_color]', array(
873
  'attrs' => 'class="gmpProOpt"',
874
+ 'value' => $this->editMap && isset($this->map['params']['custom_controls_bg_color']) ? esc_attr($this->map['params']['custom_controls_bg_color']) : '#55BA68')))?>
875
  </div>
876
  <div style="margin-top: 10px;">
877
  <label for="map_opts_custom_controls_txt_color">
878
  <?php _e('Text color', GMP_LANG_CODE)?>
879
  </label></br>
880
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::colorpicker('map_opts[custom_controls_txt_color]', array(
881
  'attrs' => 'class="gmpProOpt"',
882
+ 'value' => $this->editMap && isset($this->map['params']['custom_controls_txt_color']) ? esc_attr($this->map['params']['custom_controls_txt_color']) : '#000000')))?>
883
  </div>
884
  <div style="margin-top: 10px;">
885
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::checkboxHiddenVal('map_opts[custom_filter_show_all]', array(
886
  'value' => $this->editMap && isset($this->map['params']['custom_filter_show_all']) ? esc_attr($this->map['params']['custom_filter_show_all']) : true,
887
+ 'attrs' => 'class="gmpProOpt"')))?>
888
  <label for="map_opts_custom_filter_show_all">
889
  <?php _e('Show All Markers on Map by default', GMP_LANG_CODE)?>
890
  </label>
893
  <label for="map_opts_custom_controls_unit">
894
  <?php _e('Controls unit of measurement', GMP_LANG_CODE)?>
895
  </label>
896
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::selectbox('map_opts[custom_controls_unit]', array(
897
  'options' => $this->customControlsUnit,
898
  'value' => $this->editMap && isset($this->map['params']['custom_controls_unit']) ? esc_attr($this->map['params']['custom_controls_unit']) : 'meters',
899
  'attrs' => 'class="gmpProOpt" style="width: 100%;" id="map_opts_custom_controls_unit"'
900
+ )))?>
901
  </div>
902
  <div style="margin-top: 10px;">
903
  <label for="map_opts_custom_controls_position">
904
  <?php _e('Controls position', GMP_LANG_CODE)?>
905
  </label>
906
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::selectbox('map_opts[custom_controls_position]', array(
907
  'options' => $this->positionsList,
908
  'value' => $this->editMap && isset($this->map['params']['custom_controls_position']) ? esc_attr($this->map['params']['custom_controls_position']) : 'TOP_LEFT',
909
  'attrs' => 'class="gmpProOpt" style="width: 100%;" id="map_opts_custom_controls_position"'
910
+ )))?>
911
  </div>
912
  <div style="margin-top: 10px;">
913
  <label for="map_opts_custom_controls_slider_min">
914
  <?php _e('Min Search Radius:', GMP_LANG_CODE)?>
915
  </label></br>
916
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::text('map_opts[custom_controls_slider_min]', array(
917
  'value' => $this->editMap && isset($this->map['params']['custom_controls_slider_min']) ? esc_attr($this->map['params']['custom_controls_slider_min']) : '100',
918
+ 'attrs' => 'class="gmpProOpt" style="width: 100%;" id="map_opts_custom_controls_slider_min"')))?>
919
  </div>
920
  <div style="margin-top: 10px;">
921
  <label for="map_opts_custom_controls_slider_max">
922
  <?php _e('Max Search Radius:', GMP_LANG_CODE)?>
923
  </label></br>
924
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::text('map_opts[custom_controls_slider_max]', array(
925
  'value' => $this->editMap && isset($this->map['params']['custom_controls_slider_max']) ? esc_attr($this->map['params']['custom_controls_slider_max']) : '1000',
926
+ 'attrs' => 'class="gmpProOpt" style="width: 100%;" id="map_opts_custom_controls_slider_max"')))?>
927
  </div>
928
  <div style="margin-top: 10px;">
929
  <label for="map_opts_custom_controls_slider_step">
930
  <?php _e('Search Step:', GMP_LANG_CODE)?>
931
  </label></br>
932
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::text('map_opts[custom_controls_slider_step]', array(
933
  'value' => $this->editMap && isset($this->map['params']['custom_controls_slider_step']) ? esc_attr($this->map['params']['custom_controls_slider_step']) : '10',
934
+ 'attrs' => 'class="gmpProOpt" style="width: 100%;" id="map_opts_custom_controls_slider_step"')))?>
935
  </div>
936
  <div style="margin-top: 10px;">
937
  <label for="map_opts_custom_controls_search_country">
938
  <?php _e('Search Country', GMP_LANG_CODE)?>
939
  </label>
940
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::selectbox('map_opts[custom_controls_search_country]', array(
941
  'options' => array_merge(array('' => 'All Countries'), $this->countries),
942
  'value' => $this->editMap && isset($this->map['params']['custom_controls_search_country']) ? esc_attr($this->map['params']['custom_controls_search_country']) : 'round',
943
+ 'attrs' => 'class="gmpProOpt" style="width: 100%;" id="map_opts_custom_controls_search_country"')))?>
944
  </div>
945
  <?php if($isCustSearchAndMarkersPeriodAvailable) { ?>
946
  <div style="margin-top: 10px;">
952
  ) {
953
  $isCustomSearchParamArr = array('checked' => 'checked');
954
  }
955
+ echo htmlGmp::wpKsesHtml(htmlGmp::checkbox('map_opts[custom_controls_improve_search]', $isCustomSearchParamArr))?>
956
  <?php _e('Use improved markers search', GMP_LANG_CODE);?>
957
  </label>
958
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('This option allows you to search and show multiple markers for selected date, categories and keywords. NOTE: it removes separate markers categories filter button from custom map controls.', GMP_LANG_CODE); ?>"></i>
966
  ) {
967
  $isSearchExtend = array('checked' => 'checked');
968
  }
969
+ echo htmlGmp::wpKsesHtml(htmlGmp::checkbox('map_opts[button_search_extend]', $isSearchExtend))?>
970
  <?php _e('Center Search Button', GMP_LANG_CODE);?>
971
  </label>
972
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('Check this option if you want to separate and center search button', GMP_LANG_CODE); ?>"></i>
981
  ) {
982
  $isFilterEnable = array('checked' => 'checked');
983
  }
984
+ echo htmlGmp::wpKsesHtml(htmlGmp::checkbox('map_opts[button_filter_enable]', $isFilterEnable))?>
985
  <?php _e('Disable filter button', GMP_LANG_CODE);?>
986
  </label>
987
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('Check this option if you want to disable filters button on frontend', GMP_LANG_CODE); ?>"></i>
1001
  <?php }?>
1002
  </th>
1003
  <td>
1004
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::checkboxHiddenVal('map_opts[enable_full_screen_btn]', array(
1005
  'value' => $this->editMap && isset($this->map['params']['enable_full_screen_btn']) ? esc_attr($this->map['params']['enable_full_screen_btn']) : false,
1006
+ 'attrs' => 'class="gmpProOpt"')))?>
1007
  </td>
1008
  </tr>
1009
  <tr>
1018
  <?php }?>
1019
  </th>
1020
  <td>
1021
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::checkboxHiddenVal('map_opts[hide_poi]', array(
1022
  'value' => $this->editMap && isset($this->map['params']['hide_poi']) ? esc_attr($this->map['params']['hide_poi']) : false,
1023
+ 'attrs' => 'class="gmpProOpt"')))?>
1024
  </td>
1025
  </tr>
1026
  <tr>
1035
  <?php }?>
1036
  </th>
1037
  <td>
1038
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::checkboxHiddenVal('map_opts[hide_countries]', array(
1039
  'value' => $this->editMap && isset($this->map['params']['hide_countries']) ? esc_attr($this->map['params']['hide_countries']) : false,
1040
+ 'attrs' => 'class="gmpProOpt"')))?>
1041
  </td>
1042
  </tr>
1043
  <tr>
1048
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('Hide the tooltips, which displayed by mouse hover on markers\' icons.', GMP_LANG_CODE)?>"></i>
1049
  </th>
1050
  <td>
1051
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::checkboxHiddenVal('map_opts[hide_marker_tooltip]', array(
1052
  'value' => $this->editMap && isset($this->map['params']['hide_marker_tooltip']) ? esc_attr($this->map['params']['hide_marker_tooltip']) : false,
1053
+ )))?>
1054
  </td>
1055
  </tr>
1056
  <tr>
1061
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('On frontend the map will be centered on current marker with opened info window.', GMP_LANG_CODE)?>"></i>
1062
  </th>
1063
  <td>
1064
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::checkboxHiddenVal('map_opts[center_on_cur_marker_infownd]', array(
1065
  'value' => $this->editMap && isset($this->map['params']['center_on_cur_marker_infownd']) ? esc_attr($this->map['params']['center_on_cur_marker_infownd']) : false,
1066
+ 'attrs' => '')))?>
1067
  </td>
1068
  </tr>
1069
  <tr>
1078
  <?php }?>
1079
  </th>
1080
  <td>
1081
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::checkboxHiddenVal('map_opts[center_on_cur_user_pos]', array(
1082
  'value' => $this->editMap && isset($this->map['params']['center_on_cur_user_pos']) ? esc_attr($this->map['params']['center_on_cur_user_pos']) : false,
1083
+ 'attrs' => 'class="gmpProOpt"')))?>
1084
  <div id="gmpCurUserPosOptions" style="margin-top: 10px; display: none;">
1085
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::hidden('map_opts[center_on_cur_user_pos_icon]', array(
1086
  'value' => $this->editMap && isset($this->map['params']['center_on_cur_user_pos_icon'])
1087
  ? esc_attr($this->map['params']['center_on_cur_user_pos_icon'])
1088
+ : 1 /*Default Icon ID*/ )))?>
1089
  <img id="gmpCurUserPosIconPrevImg" src="" style="float: left;" />
1090
  <div style="float: right">
1091
  <a href="#" id="gmpCurUserPosIconBtn" class="button gmpProOpt"><?php _e('Choose Icon', GMP_LANG_CODE)?></a>
1118
  <?php }?>
1119
  </th>
1120
  <td>
1121
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::checkboxHiddenVal('map_opts[frontend_add_markers]', array(
1122
  'value' => $this->editMap && isset($this->map['params']['frontend_add_markers']) ? esc_attr($this->map['params']['frontend_add_markers']) : false,
1123
  'attrs' => 'class="gmpProOpt" id="map_opts_frontend_add_markers"'
1124
+ )))?>
1125
  <div id="gmpAddMarkersOnFrontendOptions" style="display: none;">
1126
  <div style="margin-top: 10px;">
1127
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::text('gmpCopyTextCode', array(
1128
  'value' => '', // Will be inserted from JS
1129
+ 'attrs' => 'class="gmpCopyTextCode gmpMapMarkerFormCodeShell gmpStaticWidth" style="width: 100%; text-align: center;"')));?>
1130
  </div>
1131
  <div style="margin-top: 10px;">
1132
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::checkboxHiddenVal('map_opts[frontend_add_markers_logged_in_only]', array(
1133
  'value' => $this->editMap && isset($this->map['params']['frontend_add_markers_logged_in_only']) ? esc_attr($this->map['params']['frontend_add_markers_logged_in_only']) : false,
1134
  'attrs' => 'class="gmpProOpt" id="map_opts_frontend_add_markers_logged_in_only"'
1135
+ )))?>
1136
  <label for="map_opts_frontend_add_markers_logged_in_only"><?php _e('Logged In Users Only', GMP_LANG_CODE)?></label>
1137
  </div>
1138
  <div style="margin-top: 10px;">
1139
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::checkboxHiddenVal('map_opts[frontend_add_markers_disable_wp_editor]', array(
1140
  'value' => $this->editMap && isset($this->map['params']['frontend_add_markers_disable_wp_editor']) ? esc_attr($this->map['params']['frontend_add_markers_disable_wp_editor']) : false,
1141
  'attrs' => 'class="gmpProOpt" id="map_opts_frontend_add_markers_disable_wp_editor"'
1142
+ )))?>
1143
  <label for="map_opts_frontend_add_markers_disable_wp_editor"><?php _e('Disable WP Editor', GMP_LANG_CODE)?></label>
1144
  </div>
1145
  <div style="margin-top: 10px;">
1146
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::checkboxHiddenVal('map_opts[frontend_add_markers_delete_markers]', array(
1147
  'value' => $this->editMap && isset($this->map['params']['frontend_add_markers_delete_markers']) ? esc_attr($this->map['params']['frontend_add_markers_delete_markers']) : false,
1148
  'attrs' => 'class="gmpProOpt" id="map_opts_frontend_add_markers_delete_markers"'
1149
+ )))?>
1150
  <label for="map_opts_frontend_add_markers_delete_markers"><?php _e('Delete markers', GMP_LANG_CODE)?></label>
1151
  </div>
1152
  <div style="margin-top: 10px;">
1153
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::checkboxHiddenVal('map_opts[frontend_add_markers_use_markers_categories]', array(
1154
  'value' => $this->editMap && isset($this->map['params']['frontend_add_markers_use_markers_categories']) ? esc_attr($this->map['params']['frontend_add_markers_use_markers_categories']) : false,
1155
  'attrs' => 'class="gmpProOpt" id="map_opts_frontend_add_markers_use_markers_categories"'
1156
+ )))?>
1157
  <label for="map_opts_frontend_add_markers_use_markers_categories"><?php _e('Use markers categories', GMP_LANG_CODE)?></label>
1158
  </div>
1159
  <div style="margin-top: 10px;">
1160
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::checkboxHiddenVal('map_opts[frontend_add_markers_use_limits]', array(
1161
  'value' => $this->editMap && isset($this->map['params']['frontend_add_markers_use_limits']) ? esc_attr($this->map['params']['frontend_add_markers_use_limits']) : false,
1162
  'attrs' => 'class="gmpProOpt" id="map_opts_frontend_add_markers_use_limits"'
1163
+ )))?>
1164
  <label for="map_opts_frontend_add_markers_use_limits"><?php _e('Use limits for marker\'s adding', GMP_LANG_CODE)?></label>
1165
  </div>
1166
  <div id="gmpUseLimitsForMarkerAddingOptions" style="display: none; margin-top: 10px;">
1168
  <label for="map_opts_frontend_add_markers_use_count_limits">
1169
  <?php _e('Max marker\'s count', GMP_LANG_CODE)?>
1170
  </label>
1171
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::text('map_opts[frontend_add_markers_use_count_limits]', array(
1172
  'value' => $this->editMap && isset($this->map['params']['frontend_add_markers_use_count_limits']) ? esc_attr($this->map['params']['frontend_add_markers_use_count_limits']) : '10',
1173
+ 'attrs' => 'style="width: 100%;" id="map_opts_frontend_add_markers_use_count_limits"')))?>
1174
  </div>
1175
  <div class="sup-col sup-w-50">
1176
  <label for="map_opts_frontend_add_markers_use_time_limits">
1177
  <?php _e('For allotted time (minutes)', GMP_LANG_CODE)?>
1178
  </label>
1179
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::text('map_opts[frontend_add_markers_use_time_limits]', array(
1180
  'value' => $this->editMap && isset($this->map['params']['frontend_add_markers_use_time_limits']) ? esc_attr($this->map['params']['frontend_add_markers_use_time_limits']) : '10',
1181
+ 'attrs' => 'style="width: 100%;" id="map_opts_frontend_add_markers_use_time_limits"')))?>
1182
  </div>
1183
  </div>
1184
  </div>
1200
  <?php }?>
1201
  </th>
1202
  <td>
1203
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::checkboxHiddenVal('map_opts[places][en_toolbar]', array(
1204
  'value' => $this->editMap && isset($this->map['params']['places']['en_toolbar']) ? esc_attr($this->map['params']['places']['en_toolbar']) : false,
1205
  'attrs' => 'class="gmpProOpt" id="map_opts_places_en_toolbar"'
1206
+ )))?>
1207
  <div id="gmpPlacesToolbarOptions" style="display: none;">
1208
  <div style="margin-top: 10px;">
1209
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::text('gmpCopyTextCode', array(
1210
  'value' => '', // Will be inserted from JS
1211
+ 'attrs' => 'class="gmpCopyTextCode gmpPlacesToolbarCodeShell gmpStaticWidth" style="width: 100%; text-align: center;"')));?>
1212
  </div>
1213
  <div style="margin-top: 10px;">
1214
  <label for="map_opts_places_slider_min">
1215
  <?php _e('Min Search Radius:', GMP_LANG_CODE)?>
1216
  </label></br>
1217
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::text('map_opts[places][slider_min]', array(
1218
  'value' => $this->editMap && isset($this->map['params']['places']['slider_min']) ? esc_attr($this->map['params']['places']['slider_min']) : '100',
1219
+ 'attrs' => 'class="gmpProOpt" style="width: 100%;" id="map_opts_places_slider_min"')))?>
1220
  </div>
1221
  <div style="margin-top: 10px;">
1222
  <label for="map_opts_places_slider_max">
1223
  <?php _e('Max Search Radius:', GMP_LANG_CODE)?>
1224
  </label></br>
1225
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::text('map_opts[places][slider_max]', array(
1226
  'value' => $this->editMap && isset($this->map['params']['places']['slider_max']) ? esc_attr($this->map['params']['places']['slider_max']) : '1000',
1227
+ 'attrs' => 'class="gmpProOpt" style="width: 100%;" id="map_opts_places_slider_max"')))?>
1228
  </div>
1229
  <div style="margin-top: 10px;">
1230
  <label for="map_opts_places_slider_step">
1231
  <?php _e('Search Step:', GMP_LANG_CODE)?>
1232
  </label></br>
1233
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::text('map_opts[places][slider_step]', array(
1234
  'value' => $this->editMap && isset($this->map['params']['places][slider_step']) ? esc_attr($this->map['params']['places][slider_step']) : '10',
1235
+ 'attrs' => 'class="gmpProOpt" style="width: 100%;" id="map_opts_places_slider_step"')))?>
1236
  </div>
1237
  </div>
1238
  </td>
1245
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('Background color for markers filter. (for 7 markers list type)', GMP_LANG_CODE)?>"></i>
1246
  </th>
1247
  <td>
1248
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::colorpicker('map_opts[marker_filter_color]', array(
1249
  'value' => $this->editMap && isset($this->map['params']['marker_filter_color']) ? esc_attr($this->map['params']['marker_filter_color']) : '#f1f1f1;',
1250
+ 'attrs' => 'id="map_opts_marker_filter_color"',)))?>
1251
  </td>
1252
  </tr>
1253
  <tr>
1258
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('Filters select all button title. (for 7 markers list type)', GMP_LANG_CODE)?>"></i>
1259
  </th>
1260
  <td>
1261
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::text('map_opts[marker_filter_button_title]', array(
1262
  'value' => $this->editMap && isset($this->map['params']['marker_filter_button_title']) ? esc_attr($this->map['params']['marker_filter_button_title']) : 'Select all',
1263
+ 'attrs' => 'id="map_opts_marker_filter_button_title"',)))?>
1264
  </td>
1265
  </tr>
1266
  <tr>
1271
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('Show parent categories even if they have no markers, but their child categories have.', GMP_LANG_CODE); ?>"></i>
1272
  </th>
1273
  <td>
1274
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::checkboxHiddenVal('map_opts[marker_filter_show_all_parents]', array(
1275
  'value' => $this->editMap && isset($this->map['params']['marker_filter_show_all_parents']) ? esc_attr($this->map['params']['marker_filter_show_all_parents']) : false,
1276
+ 'attrs' => 'id="map_opts_marker_filter_show_all_parents"',)))?>
1277
  </td>
1278
  </tr>
1279
  <tr style="border-bottom: 1px solid #e3dbdb!important;">
1293
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('Choose the appearance type of infowindow.', GMP_LANG_CODE)?>"></i>
1294
  </th>
1295
  <td>
1296
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::selectbox('map_opts[marker_infownd_type]', array(
1297
  'options' => dispatcherGmp::applyFilters('addInfoWindowStyles', array('' => __('Default', GMP_LANG_CODE), 'rounded_edges' => __('Rounded Edges', GMP_LANG_CODE))),
1298
  'value' => $this->editMap && isset($this->map['params']['marker_infownd_type']) ? esc_attr($this->map['params']['marker_infownd_type']) : 'default',
1299
+ 'attrs' => 'style="width: 100%;" id="map_opts_marker_infownd_type"')))?>
1300
  <div id="gmpMarkerInfoWndTypeSubOpts">
1301
  <div class="gmpSubOpt" data-type="rounded_edges" style="display: none; margin-top: 10px;">
1302
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::checkboxHiddenVal('map_opts[marker_infownd_hide_close_btn]', array(
1303
  'value' => $this->editMap && isset($this->map['params']['marker_infownd_hide_close_btn']) ? esc_attr($this->map['params']['marker_infownd_hide_close_btn']) : true,
1304
  'attrs' => 'class="gmpProOpt" id="map_opts_marker_infownd_hide_close_btn"'
1305
+ )))?>
1306
  <label for="map_opts_marker_infownd_hide_close_btn"><?php _e('Hide Close Button', GMP_LANG_CODE)?></label>
1307
  </div>
1308
  </div>
1324
  ?>
1325
  <div class="sup-col" style="padding-right: 0px;">
1326
  <label for="map_opts_marker_infownd_width_units" style="margin-right: 15px; position: relative; top: <?php echo esc_attr($markersInfoWndWidthUnitsLabelStyle)?>;">
1327
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::radiobutton('map_opts[marker_infownd_width_units]', array(
1328
  'value' => 'auto',
1329
  'checked' => $this->editMap && $markersInfoWndWidthUnits ? htmlGmp::checkedOpt($this->map['params'], 'marker_infownd_width_units', 'auto') : true,
1330
+ )))?>&nbsp;<?php _e('Auto', GMP_LANG_CODE)?>
1331
  </label>
1332
  <label
1333
  for="map_opts_marker_infownd_width_units"
1335
  title="<?php _e('The value defines maximum width of the description. Window will be drawn according to content size but not wider than the value.', GMP_LANG_CODE)?>"
1336
  style="margin-right: 15px; position: relative; top: <?php echo esc_attr($markersInfoWndWidthUnitsLabelStyle)?>;"
1337
  >
1338
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::radiobutton('map_opts[marker_infownd_width_units]', array(
1339
  'value' => 'px',
1340
  'checked' => $this->editMap && $markersInfoWndWidthUnits ? htmlGmp::checkedOpt($this->map['params'], 'marker_infownd_width_units', 'px') : false,
1341
+ )))?>&nbsp;<?php _e('Px', GMP_LANG_CODE)?>
1342
  </label>
1343
  </div>
1344
  <div class="sup-col sup-w-25">
1345
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::text('map_opts[marker_infownd_width]', array(
1346
  'value' => $this->editMap && $markersInfoWndWidthInput ? esc_attr($this->map['params']['marker_infownd_width']) : '200',
1347
+ 'attrs' => 'style="width: 100%; display: '. esc_attr($markersInfoWndWidthInputViewStyle) .';"')))?>
1348
  </div>
1349
  </td>
1350
  </tr>
1364
  ?>
1365
  <div class="sup-col" style="padding-right: 0px;">
1366
  <label for="map_opts_marker_infownd_height_units" style="margin-right: 15px; position: relative; top: <?php echo esc_attr($markersInfoWndHeightUnitsLabelStyle)?>;">
1367
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::radiobutton('map_opts[marker_infownd_height_units]', array(
1368
  'value' => 'auto',
1369
  'checked' => $this->editMap && $markersInfoWndHeightUnits ? htmlGmp::checkedOpt($this->map['params'], 'marker_infownd_height_units', 'auto') : true,
1370
+ )))?>&nbsp;<?php _e('Auto', GMP_LANG_CODE)?>
1371
  </label>
1372
  <label
1373
  for="map_opts_marker_infownd_height_units"
1375
  title="<?php _e('Pixels', GMP_LANG_CODE)?>"
1376
  style="margin-right: 15px; position: relative; top: <?php echo esc_attr($markersInfoWndHeightUnitsLabelStyle)?>;"
1377
  >
1378
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::radiobutton('map_opts[marker_infownd_height_units]', array(
1379
  'value' => 'px',
1380
  'checked' => $this->editMap && $markersInfoWndHeightUnits ? htmlGmp::checkedOpt($this->map['params'], 'marker_infownd_height_units', 'px') : false,
1381
+ )))?>&nbsp;<?php _e('Px', GMP_LANG_CODE)?>
1382
  </label>
1383
  </div>
1384
  <div class="sup-col sup-w-25">
1385
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::text('map_opts[marker_infownd_height]', array(
1386
  'value' => $this->editMap && $markersInfoWndHeightInput ? esc_attr($this->map['params']['marker_infownd_height']) : '100',
1387
+ 'attrs' => 'style="width: 100%; display: '. esc_attr($markersInfoWndHeightInputViewStyle) .';"')))?>
1388
  </div>
1389
  </td>
1390
  </tr>
1396
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('You can set your info window title color here', GMP_LANG_CODE)?>"></i>
1397
  </th>
1398
  <td>
1399
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::colorpicker('map_opts[marker_title_color]', array(
1400
+ 'value' => $this->editMap && isset($this->map['params']['marker_title_color']) ? esc_attr($this->map['params']['marker_title_color']) : '#A52A2A')))?>
1401
  </td>
1402
  </tr>
1403
  <tr>
1408
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('You can set your info window background color here', GMP_LANG_CODE)?>"></i>
1409
  </th>
1410
  <td>
1411
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::colorpicker('map_opts[marker_infownd_bg_color]', array(
1412
+ 'value' => $this->editMap && isset($this->map['params']['marker_infownd_bg_color']) ? esc_attr($this->map['params']['marker_infownd_bg_color']) : '#FFFFFF')))?>
1413
  </td>
1414
  </tr>
1415
  <tr>
1421
  </th>
1422
  <td>
1423
  <div class="sup-col sup-w-25">
1424
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::text('map_opts[marker_title_size]', array(
1425
  'value' => $this->editMap && isset($this->map['params']['marker_title_size']) ? esc_attr($this->map['params']['marker_title_size']) : '19',
1426
+ 'attrs' => 'style="width: 100%;" id="map_opts_marker_title_size"')))?>
1427
  </div>
1428
  <div class="sup-col sup-w-75">
1429
  <label class="supsystic-tooltip" title="<?php _e('Pixels', GMP_LANG_CODE)?>" style="margin-right: 15px; position: relative; top: 7px;">
1430
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::radiobutton('map_opts[marker_title_size_units]', array(
1431
  'value' => 'px',
1432
  'checked' => true,
1433
+ )))?>&nbsp;<?php _e('Px', GMP_LANG_CODE)?></label>
1434
  </div>
1435
  </td>
1436
  </tr>
1443
  </th>
1444
  <td>
1445
  <div class="sup-col sup-w-25">
1446
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::text('map_opts[marker_desc_size]', array(
1447
  'value' => $this->editMap && isset($this->map['params']['marker_desc_size']) ? esc_attr($this->map['params']['marker_desc_size']) : '13',
1448
+ 'attrs' => 'style="width: 100%;" id="map_opts_marker_desc_size"')))?>
1449
  </div>
1450
  <div class="sup-col sup-w-75">
1451
  <label class="supsystic-tooltip" title="<?php _e('Pixels', GMP_LANG_CODE)?>" style="margin-right: 15px; position: relative; top: 7px;">
1452
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::radiobutton('map_opts[marker_desc_size_units]', array(
1453
  'value' => 'px',
1454
  'checked' => true,
1455
+ )))?>&nbsp;<?php _e('Px', GMP_LANG_CODE)?></label>
1456
  </div>
1457
  </td>
1458
  </tr>
1475
  <?php }?>
1476
  </th>
1477
  <td>
1478
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::checkboxHiddenVal('map_opts[enable_directions_btn]', array(
1479
  'value' => $this->editMap && isset($this->map['params']['enable_directions_btn']) ? esc_attr($this->map['params']['enable_directions_btn']) : false,
1480
+ 'attrs' => 'class="gmpProOpt"')))?>
1481
  <div id="gmpDirectionsOptions" style="margin-top: 10px; display: none;">
1482
  <div style="margin-top: 10px;">
1483
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::checkboxHiddenVal('map_opts[directions_alternate_routes]', array(
1484
  'value' => $this->editMap && isset($this->map['params']['directions_alternate_routes']) ? esc_attr($this->map['params']['directions_alternate_routes']) : false,
1485
+ 'attrs' => 'class="gmpProOpt"')))?>
1486
  <span>
1487
  <?php _e('Show alternate routes', GMP_LANG_CODE)?>
1488
  </span>
1489
  </div>
1490
  <div style="margin-top: 10px;">
1491
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::checkboxHiddenVal('map_opts[directions_data_show]', array(
1492
  'value' => $this->editMap && isset($this->map['params']['directions_data_show']) ? esc_attr($this->map['params']['directions_data_show']) : false,
1493
+ 'attrs' => 'class="gmpProOpt"')))?>
1494
  <span>
1495
  <?php _e('Show route data', GMP_LANG_CODE)?>
1496
  </span>
1497
  </div>
1498
  <div style="margin-top: 10px;">
1499
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::checkboxHiddenVal('map_opts[directions_steps_show]', array(
1500
  'value' => $this->editMap && isset($this->map['params']['directions_steps_show']) ? esc_attr($this->map['params']['directions_steps_show']) : false,
1501
+ 'attrs' => 'class="gmpProOpt"')))?>
1502
  <span>
1503
  <?php _e('Show route steps', GMP_LANG_CODE)?>
1504
  </span>
1505
  </div>
1506
  <div style="margin-top: 10px;">
1507
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::checkboxHiddenVal('map_opts[directions_miles]', array(
1508
  'value' => $this->editMap && isset($this->map['params']['directions_miles']) ? esc_attr($this->map['params']['directions_miles']) : false,
1509
+ 'attrs' => 'class="gmpProOpt"')))?>
1510
  <span>
1511
  <?php _e('Use miles', GMP_LANG_CODE)?>
1512
  </span>
1526
  <?php }?>
1527
  </th>
1528
  <td>
1529
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::checkboxHiddenVal('map_opts[enable_infownd_print_btn]', array(
1530
  'value' => $this->editMap && isset($this->map['params']['enable_infownd_print_btn']) ? esc_attr($this->map['params']['enable_infownd_print_btn']) : false,
1531
  'attrs' => 'class="gmpProOpt"'
1532
+ )))?>
1533
  </td>
1534
  </tr>
1535
  </table>
1536
  </div>
1537
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::hidden('mod', array('value' => 'gmap')))?>
1538
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::hidden('action', array('value' => 'save')))?>
1539
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::hidden('map_opts[id]', array('value' => $this->editMap ? esc_attr($this->map['id']) : '')))?>
1540
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::hidden('map_opts[membershipEnable]', array('value' => isset($this->map['params']['membershipEnable']) ? esc_attr($this->map['params']['membershipEnable']) : 0, 'attrs' => 'id="membershipHiddenEnable"')))?>
1541
  </form>
1542
  </div>
1543
  <div id="gmpMarkerTab" class="gmpTabContent">
1551
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('Your marker title', GMP_LANG_CODE)?>"></i>
1552
  </th>
1553
  <td>
1554
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::text('marker_opts[title]', array(
1555
  'value' => '',
1556
+ 'attrs' => 'style="width: 100%;" id="marker_opts_title"')))?>
1557
  </td>
1558
  </tr>
1559
  <tr>
1571
  //'textarea_name' => 'marker_opts[description]',
1572
  'textarea_rows' => 10
1573
  ));?>
1574
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::hidden('marker_opts[description]', array('value' => '')))?>
1575
  </th>
1576
  </tr>
1577
  <?php dispatcherGmp::doAction('addEditMapPart', 'gmapEditMapMarkerListDesc');?>
1583
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('Your marker Icon, that will appear on your map for this marker', GMP_LANG_CODE)?>"></i>
1584
  </th>
1585
  <td>
1586
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::hidden('marker_opts[icon]', array(
1587
+ 'value' => 1 /*Default Icon ID*/ )))?>
1588
  <img id="gmpMarkerIconPrevImg" src="" style="float: left;" />
1589
  <div style="float: right">
1590
  <a id="gmpMarkerIconBtn" href="#" class="button"><?php _e('Choose Icon', GMP_LANG_CODE)?></a>
1603
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('Search your location by address, just start typing here', GMP_LANG_CODE)?>"></i>
1604
  </th>
1605
  <td>
1606
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::text('marker_opts[address]', array(
1607
  'value' => '',
1608
  'placeholder' => '603 Park Avenue, Brooklyn, NY 11206, USA',
1609
+ 'attrs' => 'style="width: 100%;" id="marker_opts_address"')))?>
1610
  </td>
1611
  </tr>
1612
  <tr>
1617
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('Latitude for your marker', GMP_LANG_CODE)?>"></i>
1618
  </th>
1619
  <td>
1620
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::text('marker_opts[coord_x]', array(
1621
  'value' => '',
1622
  'placeholder' => '40.69827799999999',
1623
+ 'attrs' => 'style="width: 100%;" id="marker_opts_coord_x"')))?>
1624
  </td>
1625
  </tr>
1626
  <tr>
1631
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('Longitude for your marker', GMP_LANG_CODE)?>"></i>
1632
  </th>
1633
  <td>
1634
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::text('marker_opts[coord_y]', array(
1635
  'value' => '',
1636
  'placeholder' => '-73.95141139999998',
1637
+ 'attrs' => 'style="width: 100%;" id="marker_opts_coord_y"')))?>
1638
  </td>
1639
  </tr>
1640
  <tr>
1646
  </th>
1647
  <td>
1648
  <div style="width: 100%;">
1649
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::selectlist('marker_opts[marker_group_id]', array(
1650
  'options' => $this->markerGroupsForSelect,
1651
  'value' => '',
1652
+ 'attrs' => 'style="width: 100%;" id="marker_opts_marker_group_id" class="chosen-select"')))?>
1653
  </div>
1654
  </td>
1655
  </tr>
1661
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('Link for opening by click on the marker', GMP_LANG_CODE)?>"></i>
1662
  </th>
1663
  <td>
1664
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::checkbox('marker_opts[params][marker_link]', array(
1665
  'checked' => '',
1666
  'attrs' => 'id="marker_link" onclick="gmpAddLinkOptions()"',
1667
+ )))?>
1668
  <div id="link_options" style="display: none;">
1669
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::text('marker_opts[params][marker_link_src]', array(
1670
  'value' => '',
1671
  'attrs' => 'style="width: 90%; float: right; margin: 0px 0px 10px 0px;"',
1672
+ )))?>
1673
  <div style="clear: both;"></div>
1674
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::checkbox('marker_opts[params][marker_link_new_wnd]', array(
1675
+ 'checked' => '')))?>
1676
  <span>
1677
  <?php _e('Open in new window', GMP_LANG_CODE)?>
1678
  </span>
1687
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('Open marker description when map load', GMP_LANG_CODE)?>"></i>
1688
  </th>
1689
  <td>
1690
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::checkbox('marker_opts[params][show_description]', array(
1691
+ 'checked' => '')))?>
1692
  </td>
1693
  </tr>
1694
  <tr>
1699
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('Open marker description by mouse hover', GMP_LANG_CODE)?>"></i>
1700
  </th>
1701
  <td>
1702
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::checkbox('marker_opts[params][description_mouse_hover]', array(
1703
+ 'checked' => '')))?>
1704
  </td>
1705
  </tr>
1706
  <tr id="marker_opts_description_mouse_leave">
1711
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('Hide description when mouse leaves the marker area', GMP_LANG_CODE)?>"></i>
1712
  </th>
1713
  <td>
1714
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::checkbox('marker_opts[params][description_mouse_leave]', array(
1715
+ 'checked' => '')))?>
1716
  </td>
1717
  </tr>
1718
  <tr style="display: none;">
1723
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('If there is no image tag in the marker description - this image will be used for displaying in the map\'s markers list', GMP_LANG_CODE)?>"></i>
1724
  </th>
1725
  <td>
1726
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::checkbox('marker_opts[params][marker_list_def_img]', array(
1727
+ 'checked' => '')))?>
1728
  <div id="gmpMarkerListDefImgOptions" style="display: none;">
1729
  <a href="#"
1730
  id="gmpMarkerListDefImgUploadFileBtn"
1740
  style="float: right;">
1741
  <i class="fa fa-upload"></i>
1742
  </a>
1743
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::text('marker_opts[params][marker_list_def_img_url]', array(
1744
  'value' => '',
1745
  'attrs' => 'id="gmpMarkerListDefImgUrl" style="width: 78%; margin-right: 5px; float: right;"',
1746
+ )))?>
1747
  <span class="gmpMarkerListDefImgUploadMsg" style=" float: right; width: 100%; text-align: right;" ></span>
1748
  </div>
1749
  </td>
1756
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('Exclude marker from cluster if Markers Clusterization option is enabled.', GMP_LANG_CODE)?>"></i>
1757
  </th>
1758
  <td>
1759
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::checkbox('marker_opts[params][clasterer_exclude]', array(
1760
+ 'checked' => '')))?>
1761
  </td>
1762
  </tr>
1763
  <?php if($isCustSearchAndMarkersPeriodAvailable) { ?>
1789
  <td>
1790
  <?php
1791
  if($this->isPro) {
1792
+ echo htmlGmp::wpKsesHtml(htmlGmp::text('marker_opts[period_date_from]', array(
1793
  'value' => '',
1794
  'attrs' => 'id="markerPeriodDateFrom"',
1795
+ )));
1796
  }
1797
  ?>
1798
  </td>
1811
  <td>
1812
  <?php
1813
  if($this->isPro) {
1814
+ echo htmlGmp::wpKsesHtml(htmlGmp::text('marker_opts[period_date_to]', array(
1815
  'value' => '',
1816
  'attrs' => 'id="markerPeriodDateTo"',
1817
+ )));
1818
  }?>
1819
  </td>
1820
  </tr>
1821
  <?php }?>
1822
  </table>
1823
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::hidden('mod', array('value' => 'marker')))?>
1824
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::hidden('action', array('value' => 'save')))?>
1825
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::hidden('marker_opts[id]', array('value' => '')))?>
1826
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::hidden('marker_opts[map_id]', array('value' => $this->editMap ? esc_attr($this->map['id']) : '')))?>
1827
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::hidden('marker_opts[path]', array('value' => '')))?>
1828
  </form>
1829
  </div>
1830
  <div id="gmpShapeTab" class="gmpTabContent">
1839
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('Your figure title', GMP_LANG_CODE)?>"></i>
1840
  </th>
1841
  <td>
1842
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::text('shape_opts[title]', array(
1843
  'value' => '',
1844
+ 'attrs' => 'style="width: 100%;"')))?>
1845
  </td>
1846
  </tr>
1847
  <tr>
1855
  '<br /><br /><b>Circle</b> - circle shape,defined by center coordinates and radius.', GMP_LANG_CODE)?>"></i>
1856
  </th>
1857
  <td>
1858
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::selectbox('shape_opts[type]', array(
1859
  'options' => array(
1860
  'polyline' => __('Polyline', GMP_LANG_CODE),
1861
  'polygon' => __('Polygon', GMP_LANG_CODE),
1862
  'circle' => __('Circle', GMP_LANG_CODE),),
1863
  'value' => 'polyline',
1864
+ 'attrs' => 'style="width: 100%;"')))?>
1865
  </td>
1866
  </tr>
1867
  <tr>
1870
  <label class="label" for="shape_opts_line_color">
1871
  <?php _e('Line Color', GMP_LANG_CODE)?>
1872
  </label></br>
1873
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::colorpicker('shape_opts[params][strokeColor]', array(
1874
+ 'value' => '')))?>
1875
  </div>
1876
  <div class="gmpCommonShapeParam">
1877
  <label class="label" for="shape_opts_line_opacity">
1878
  <?php _e('Line Opacity', GMP_LANG_CODE)?>
1879
  </label></br>
1880
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::selectbox('shape_opts[params][strokeOpacity]', array(
1881
  'options' => array(
1882
  '0' => 0, '0.1' => 0.1, '0.2' => 0.2, '0.3' => 0.3
1883
  , '0.4' => 0.4, '0.5' => 0.5, '0.6' => 0.6
1884
  , '0.7' => 0.7, '0.8' => 0.8, '0.9' => 0.9, '1' => 1),
1885
+ 'value' => '')))?>
1886
  </div>
1887
  <div class="gmpCommonShapeParam gmpParamRight">
1888
  <label class="label" for="shape_opts_line_weight">
1889
  <?php _e('Line Weight', GMP_LANG_CODE)?>
1890
  </label></br>
1891
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::text('shape_opts[params][strokeWeight]', array(
1892
  'value' => '',
1893
+ 'attrs' => 'style="width: 100%;"')))?>
1894
  </div>
1895
  <div class="gmpPolygonShapeParam gmpParamLeft">
1896
  <label class="label" for="shape_opts_fill_color">
1897
  <?php _e('Fill Color', GMP_LANG_CODE)?>
1898
  </label></br>
1899
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::colorpicker('shape_opts[params][fillColor]', array(
1900
+ 'value' => '')))?>
1901
  </div>
1902
  <div class="gmpPolygonShapeParam">
1903
  <label class="label" for="shape_opts_fill_opacity">
1904
  <?php _e('Fill Opacity', GMP_LANG_CODE)?>
1905
  </label></br>
1906
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::selectbox('shape_opts[params][fillOpacity]', array(
1907
  'options' => array(
1908
  '0' => 0, '0.1' => 0.1, '0.2' => 0.2, '0.3' => 0.3
1909
  , '0.4' => 0.4, '0.5' => 0.5, '0.6' => 0.6
1910
  , '0.7' => 0.7, '0.8' => 0.8, '0.9' => 0.9, '1' => 1),
1911
+ 'value' => '')))?>
1912
  </div>
1913
  <div style="clear: both;"></div>
1914
  <div class="gmpPolygonShapeParam gmpPolygonShapeDesc">
1921
  <?php wp_editor('', 'shapeDescription', array(
1922
  'textarea_rows' => 10
1923
  ));?>
1924
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::hidden('shape_opts[description]', array('value' => '')))?>
1925
  </div>
1926
  </td>
1927
  </tr>
1990
  </td>
1991
  </tr>
1992
  </table>
1993
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::hidden('mod', array('value' => 'shape')))?>
1994
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::hidden('action', array('value' => 'save')))?>
1995
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::hidden('shape_opts[id]', array('value' => '')))?>
1996
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::hidden('shape_opts[map_id]', array('value' => $this->editMap ? esc_attr($this->map['id']) : '')))?>
1997
  </form>
1998
  <?php } else {
1999
  echo $promoData['gmpShapeTab']['content'];
2035
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('Heatmap Layer points radius in pixels', GMP_LANG_CODE)?>"></i>
2036
  </th>
2037
  <td>
2038
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::text('heatmap_opts[params][radius]', array(
2039
  'value' => '',
2040
+ 'attrs' => 'style="width: 100%;"')))?>
2041
  </td>
2042
  </tr>
2043
  <tr>
2048
  <i style="float: right;" class="fa fa-question supsystic-tooltip" title="<?php _e('Heatmap Layer points opacity', GMP_LANG_CODE)?>"></i>
2049
  </th>
2050
  <td>
2051
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::selectbox('heatmap_opts[params][opacity]', array(
2052
  'options' => array(
2053
  '0' => 0, '0.1' => 0.1, '0.2' => 0.2, '0.3' => 0.3
2054
  , '0.4' => 0.4, '0.5' => 0.5, '0.6' => 0.6
2055
  , '0.7' => 0.7, '0.8' => 0.8, '0.9' => 0.9, '1' => 1),
2056
  'value' => '',
2057
+ 'attrs' => 'style="width: 100%;"')))?>
2058
  </td>
2059
  </tr>
2060
  <tr>
2080
  <div id="gmpHeatmapGradientFirstColorContainer">
2081
 
2082
  </div>
2083
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::hidden('heatmap_opts[params][gradient][]', array('value' => '', 'attrs' => 'class="firstHeatmapColor"')))?>
2084
  <div id="gmpHeatmapGradientContainer"></div>
2085
  </td>
2086
  </tr>
2087
  </table>
2088
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::hidden('mod', array('value' => 'heatmap')))?>
2089
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::hidden('action', array('value' => 'save')))?>
2090
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::hidden('heatmap_opts[id]', array('value' => '')))?>
2091
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::hidden('heatmap_opts[map_id]', array('value' => $this->editMap ? esc_attr($this->map['id']) : '')))?>
2092
  </form>
2093
  <?php } else {
2094
  echo $promoData['gmpHeatmapTab']['content'];
2101
  <div class="gmpMapProControlsCon" id="gmpMapProControlsCon_<?php echo esc_attr($this->viewId);?>">
2102
  <?php dispatcherGmp::doAction('addAdminMapBottomControls', $this->editMap ? $this->map : array()); ?>
2103
  </div>
2104
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::hidden('rand_view_id', array('value' => esc_attr($this->viewId), 'attrs' => 'id="gmpViewId"')))?>
2105
  <div id="gmpMapMainBtns" class="gmpControlBtns row" style="display: none;">
2106
  <div class="sup-col sup-w-50">
2107
  <button id="gmpMapSaveBtn" class="button button-primary" style="width: 100%;">
2170
  <table id="gmpShapesListGrid" class="supsystic-tbl-pagination-shell"></table>
2171
  </div>
2172
  <?php /*?>
2173
+ <div class="supRow">
2174
  <div id="gmpMarkerList">
2175
+ <div style="display: none;" id="markerRowTemplate" class="supRow gmpMapMarkerRow">
2176
+ <div class="supXs12 egm-marker">
2177
+ <div class="supRow">
2178
+ <div class="supXs2 egm-marker-icon">
2179
  <img alt="" src="">
2180
  </div>
2181
+ <div class="supXs4 egm-marker-title">
2182
  </div>
2183
+ <div class="supXs3 egm-marker-latlng">
2184
  </div>
2185
+ <div class="supXs3 egm-marker-actions">
2186
  <button title="<?php _e('Edit', GMP_LANG_CODE)?>" type="button" class="button button-small egm-marker-edit">
2187
  <i class="fa fa-fw fa-pencil"></i>
2188
  </button>
modules/gmap/views/tpl/gmapListOperations.php CHANGED
@@ -1,8 +1,8 @@
1
  <div class="supsystic-actions-wrap">
2
- <a class="button button-table-action" id="editMap<?php echo $this->map['id']; ?>" href="<?php echo esc_attr($this->editLink)?>">
3
  <i class="fa fa-fw fa-pencil"></i>
4
  </a>
5
- <a class="button button-table-action" id="deleteMap<?php echo $this->map['id']; ?>" href="#" onclick="gmpRemoveMapFromTblClick(<?php echo esc_attr($this->map['id']);?>);">
6
  <i class="fa fa-fw fa-trash-o"></i>
7
  </a>
8
  <div id="gmpRemoveElemLoader__<?php echo esc_attr($this->map['id']);?>" style="display: inline-block;"></div>
1
  <div class="supsystic-actions-wrap">
2
+ <a class="button button-table-action" id="editMap<?php echo esc_attr($this->map['id']); ?>" href="<?php echo esc_attr($this->editLink)?>">
3
  <i class="fa fa-fw fa-pencil"></i>
4
  </a>
5
+ <a class="button button-table-action" id="deleteMap<?php echo esc_attr($this->map['id']); ?>" href="#" onclick="gmpRemoveMapFromTblClick(<?php echo esc_attr($this->map['id']);?>);">
6
  <i class="fa fa-fw fa-trash-o"></i>
7
  </a>
8
  <div id="gmpRemoveElemLoader__<?php echo esc_attr($this->map['id']);?>" style="display: inline-block;"></div>
modules/gmap_widget/views/tpl/form.php CHANGED
@@ -8,11 +8,11 @@ if(empty($this->data['img_height'])) $this->data['img_height'] = 175;
8
  <label for="<?php echo esc_attr($this->widget->get_field_id('id'))?>"><?php _e('Select map', GMP_LANG_CODE)?>:</label>
9
  </div>
10
  <div class="gmpWidgetRowCell gmpLastCell">
11
- <?php echo htmlGmp::selectbox($this->widget->get_field_name('id'), array(
12
  'attrs' => 'id="'. esc_attr($this->widget->get_field_id('id')). '"',
13
  'value' => isset($this->data['id']) ? esc_attr($this->data['id']) : 0,
14
  'options' => $this->mapsOpts,
15
- ));?>
16
  </div>
17
  </div>
18
  <div class="gmpWidgetRow">
@@ -20,10 +20,10 @@ if(empty($this->data['img_height'])) $this->data['img_height'] = 175;
20
  <label for="<?php echo esc_attr($this->widget->get_field_id('width'))?>"><?php _e('Widget Map width', GMP_LANG_CODE)?>:</label>
21
  </div>
22
  <div class="gmpWidgetRowCell gmpLastCell">
23
- <?php echo htmlGmp::text($this->widget->get_field_name('width'), array(
24
  'attrs' => 'id="'. esc_attr($this->widget->get_field_id('width')). '"',
25
  'value' => isset($this->data['width']) ? esc_attr($this->data['width']) : '100%',
26
- ));?>
27
  <i class="supsystic-info"><?php _e('in % or px, for example, 100% or 200px', GMP_LANG_CODE)?></i>
28
  </div>
29
  </div>
@@ -32,10 +32,10 @@ if(empty($this->data['img_height'])) $this->data['img_height'] = 175;
32
  <label for="<?php echo esc_attr($this->widget->get_field_id('height'))?>"><?php _e('Widget Map height', GMP_LANG_CODE)?>:</label>
33
  </div>
34
  <div class="gmpWidgetRowCell gmpLastCell">
35
- <?php echo htmlGmp::text($this->widget->get_field_name('height'), array(
36
  'attrs' => 'id="'. esc_attr($this->widget->get_field_id('height')). '"',
37
  'value' => isset($this->data['height']) ? esc_attr($this->data['height']) : '',
38
- ));?>
39
  <i class="supsystic-info"><?php _e('in px, for example, 200 or 400', GMP_LANG_CODE)?></i>
40
  </div>
41
  </div>
@@ -44,10 +44,10 @@ if(empty($this->data['img_height'])) $this->data['img_height'] = 175;
44
  <label for="<?php echo esc_attr($this->widget->get_field_id('map_center'))?>"><?php _e('Map Center', GMP_LANG_CODE)?>:</label>
45
  </div>
46
  <div class="gmpWidgetRowCell gmpLastCell">
47
- <?php echo htmlGmp::text($this->widget->get_field_name('map_center'), array(
48
  'attrs' => 'id="'. esc_attr($this->widget->get_field_id('map_center')). '"',
49
  'value' => isset($this->data['map_center']) ? esc_attr($this->data['map_center']) : '',
50
- ));?>
51
  <i class="supsystic-info"><?php _e('Set coords, separated by semicolons or marker id', GMP_LANG_CODE)?></i>
52
  </div>
53
  </div>
@@ -56,38 +56,38 @@ if(empty($this->data['img_height'])) $this->data['img_height'] = 175;
56
  <label for="<?php echo esc_attr($this->widget->get_field_id('zoom'))?>"><?php _e('Map Zoom', GMP_LANG_CODE)?>:</label>
57
  </div>
58
  <div class="gmpWidgetRowCell gmpLastCell">
59
- <?php echo htmlGmp::text($this->widget->get_field_name('zoom'), array(
60
  'attrs' => 'id="'. esc_attr($this->widget->get_field_id('zoom')). '"',
61
  'value' => isset($this->data['zoom']) ? esc_attr($this->data['zoom']) : '',
62
- ));?>
63
  <i class="supsystic-info"><?php _e('Set zoom level from 1 to 21', GMP_LANG_CODE)?></i>
64
  </div>
65
  </div>
66
  <div class="gmpWidgetRow">
67
  <div class="gmpWidgetRowCell gmpFirstCell">
68
- <label for="<?php echo $this->widget->get_field_id('display_as_img')?>"><?php _e('Display as image', GMP_LANG_CODE)?></label>
69
  </div>
70
  <div class="gmpWidgetRowCell gmpLastCell">
71
- <?php echo htmlGmp::checkbox($this->widget->get_field_name('display_as_img'), array(
72
  'attrs' => 'id="'. esc_attr($this->widget->get_field_id('display_as_img')). '"',
73
  'checked' => isset($this->data['display_as_img']),
74
- ));?>
75
  <br />
76
  <i class="supsystic-info"><?php _e('Map will be displayed as image at sidebar, on click - will be opened in popup', GMP_LANG_CODE)?></i>
77
- <div class="gmpWidgetSuboptions" id="<?php echo $this->widget->get_field_id('img_params_shell')?>" style="display: none;">
78
  <div class="gmpWidgetSuboptionsCell">
79
  <label for="<?php echo esc_attr($this->widget->get_field_id('img_width'))?>"><?php _e('Image width (in px)', GMP_LANG_CODE)?>:</label>
80
- <?php echo htmlGmp::text($this->widget->get_field_name('img_width'), array(
81
  'attrs' => 'id="'. esc_attr($this->widget->get_field_id('img_width')). '"',
82
  'value' => esc_attr($this->data['img_width']),
83
- ));?>
84
  </div>
85
  <div class="gmpWidgetSuboptionsCell">
86
  <label for="<?php echo esc_attr($this->widget->get_field_id('img_height'))?>"><?php _e('Image height (in px)', GMP_LANG_CODE)?>:</label>
87
- <?php echo htmlGmp::text($this->widget->get_field_name('img_height'), array(
88
  'attrs' => 'id="'. esc_attr($this->widget->get_field_id('img_height')). '"',
89
  'value' => esc_attr($this->data['img_height']),
90
- ));?>
91
  </div>
92
  </div>
93
  </div>
@@ -96,14 +96,14 @@ if(empty($this->data['img_height'])) $this->data['img_height'] = 175;
96
  // <!--
97
  jQuery(function(){
98
  function checkOpenImgParams() {
99
- if(jQuery('#<?php echo $this->widget->get_field_id('display_as_img')?>').attr('checked')) {
100
- jQuery('#<?php echo $this->widget->get_field_id('img_params_shell')?>').show();
101
  } else {
102
- jQuery('#<?php echo $this->widget->get_field_id('img_params_shell')?>').hide();
103
  }
104
  }
105
  checkOpenImgParams();
106
- jQuery('#<?php echo $this->widget->get_field_id('display_as_img')?>').change(function(){
107
  checkOpenImgParams();
108
  });
109
  });
8
  <label for="<?php echo esc_attr($this->widget->get_field_id('id'))?>"><?php _e('Select map', GMP_LANG_CODE)?>:</label>
9
  </div>
10
  <div class="gmpWidgetRowCell gmpLastCell">
11
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::selectbox($this->widget->get_field_name('id'), array(
12
  'attrs' => 'id="'. esc_attr($this->widget->get_field_id('id')). '"',
13
  'value' => isset($this->data['id']) ? esc_attr($this->data['id']) : 0,
14
  'options' => $this->mapsOpts,
15
+ )));?>
16
  </div>
17
  </div>
18
  <div class="gmpWidgetRow">
20
  <label for="<?php echo esc_attr($this->widget->get_field_id('width'))?>"><?php _e('Widget Map width', GMP_LANG_CODE)?>:</label>
21
  </div>
22
  <div class="gmpWidgetRowCell gmpLastCell">
23
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::text($this->widget->get_field_name('width'), array(
24
  'attrs' => 'id="'. esc_attr($this->widget->get_field_id('width')). '"',
25
  'value' => isset($this->data['width']) ? esc_attr($this->data['width']) : '100%',
26
+ )));?>
27
  <i class="supsystic-info"><?php _e('in % or px, for example, 100% or 200px', GMP_LANG_CODE)?></i>
28
  </div>
29
  </div>
32
  <label for="<?php echo esc_attr($this->widget->get_field_id('height'))?>"><?php _e('Widget Map height', GMP_LANG_CODE)?>:</label>
33
  </div>
34
  <div class="gmpWidgetRowCell gmpLastCell">
35
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::text($this->widget->get_field_name('height'), array(
36
  'attrs' => 'id="'. esc_attr($this->widget->get_field_id('height')). '"',
37
  'value' => isset($this->data['height']) ? esc_attr($this->data['height']) : '',
38
+ )));?>
39
  <i class="supsystic-info"><?php _e('in px, for example, 200 or 400', GMP_LANG_CODE)?></i>
40
  </div>
41
  </div>
44
  <label for="<?php echo esc_attr($this->widget->get_field_id('map_center'))?>"><?php _e('Map Center', GMP_LANG_CODE)?>:</label>
45
  </div>
46
  <div class="gmpWidgetRowCell gmpLastCell">
47
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::text($this->widget->get_field_name('map_center'), array(
48
  'attrs' => 'id="'. esc_attr($this->widget->get_field_id('map_center')). '"',
49
  'value' => isset($this->data['map_center']) ? esc_attr($this->data['map_center']) : '',
50
+ )));?>
51
  <i class="supsystic-info"><?php _e('Set coords, separated by semicolons or marker id', GMP_LANG_CODE)?></i>
52
  </div>
53
  </div>
56
  <label for="<?php echo esc_attr($this->widget->get_field_id('zoom'))?>"><?php _e('Map Zoom', GMP_LANG_CODE)?>:</label>
57
  </div>
58
  <div class="gmpWidgetRowCell gmpLastCell">
59
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::text($this->widget->get_field_name('zoom'), array(
60
  'attrs' => 'id="'. esc_attr($this->widget->get_field_id('zoom')). '"',
61
  'value' => isset($this->data['zoom']) ? esc_attr($this->data['zoom']) : '',
62
+ )));?>
63
  <i class="supsystic-info"><?php _e('Set zoom level from 1 to 21', GMP_LANG_CODE)?></i>
64
  </div>
65
  </div>
66
  <div class="gmpWidgetRow">
67
  <div class="gmpWidgetRowCell gmpFirstCell">
68
+ <label for="<?php echo esc_attr($this->widget->get_field_id('display_as_img'))?>"><?php _e('Display as image', GMP_LANG_CODE)?></label>
69
  </div>
70
  <div class="gmpWidgetRowCell gmpLastCell">
71
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::checkbox($this->widget->get_field_name('display_as_img'), array(
72
  'attrs' => 'id="'. esc_attr($this->widget->get_field_id('display_as_img')). '"',
73
  'checked' => isset($this->data['display_as_img']),
74
+ )));?>
75
  <br />
76
  <i class="supsystic-info"><?php _e('Map will be displayed as image at sidebar, on click - will be opened in popup', GMP_LANG_CODE)?></i>
77
+ <div class="gmpWidgetSuboptions" id="<?php echo esc_attr($this->widget->get_field_id('img_params_shell'))?>" style="display: none;">
78
  <div class="gmpWidgetSuboptionsCell">
79
  <label for="<?php echo esc_attr($this->widget->get_field_id('img_width'))?>"><?php _e('Image width (in px)', GMP_LANG_CODE)?>:</label>
80
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::text($this->widget->get_field_name('img_width'), array(
81
  'attrs' => 'id="'. esc_attr($this->widget->get_field_id('img_width')). '"',
82
  'value' => esc_attr($this->data['img_width']),
83
+ )));?>
84
  </div>
85
  <div class="gmpWidgetSuboptionsCell">
86
  <label for="<?php echo esc_attr($this->widget->get_field_id('img_height'))?>"><?php _e('Image height (in px)', GMP_LANG_CODE)?>:</label>
87
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::text($this->widget->get_field_name('img_height'), array(
88
  'attrs' => 'id="'. esc_attr($this->widget->get_field_id('img_height')). '"',
89
  'value' => esc_attr($this->data['img_height']),
90
+ )));?>
91
  </div>
92
  </div>
93
  </div>
96
  // <!--
97
  jQuery(function(){
98
  function checkOpenImgParams() {
99
+ if(jQuery('#<?php echo esc_attr($this->widget->get_field_id('display_as_img'))?>').attr('checked')) {
100
+ jQuery('#<?php echo esc_attr($this->widget->get_field_id('img_params_shell'))?>').show();
101
  } else {
102
+ jQuery('#<?php echo esc_attr($this->widget->get_field_id('img_params_shell'))?>').hide();
103
  }
104
  }
105
  checkOpenImgParams();
106
+ jQuery('#<?php echo esc_attr($this->widget->get_field_id('display_as_img'))?>').change(function(){
107
  checkOpenImgParams();
108
  });
109
  });
modules/marker/js/admin.marker.edit.js CHANGED
@@ -336,7 +336,7 @@ function gmpResetMarkerForm() {
336
  jQuery('#gmpMarkerForm select[name="marker_opts[marker_group_id][]"] option:selected').prop("selected", false);
337
  jQuery('#gmpMarkerForm select[name="marker_opts[marker_group_id][]"] option[value="0"]').prop("selected", true);
338
  jQuery('#marker_opts_marker_group_id').trigger("chosen:updated");
339
-
340
  jQuery(document).trigger('gmpAfterResetMarkerForm');
341
  }
342
  function _gmpCreateNewMapMarker(params) {
@@ -439,7 +439,7 @@ function gmpOpenMarkerEdit(id) {
439
  if(parseInt(markerParams.params.marker_list_desc)) {
440
  var markerListDesc = jQuery('#gmpMarkerForm input[name="marker_opts[params][marker_list_desc]"]');
441
  gmpSetTxtEditorVal('markerDescriptionList', markerParams.params.marker_list_desc_text);
442
-
443
  markerListDesc.prop('checked', true);
444
  gmpCheckUpdate( markerListDesc );
445
  markerListDesc.trigger('change');
@@ -563,13 +563,13 @@ function gmpInitIconsWnd() {
563
  return false;
564
  }
565
  });
566
-
567
  jQuery('#gmpIconsWnd').on('click', '.previewIcon i', function(e){
568
  e.preventDefault();
569
  var icon = jQuery(this)
570
  , iconWrapper = icon.closest('.previewIcon')
571
  , iconId = iconWrapper.attr('data-id');
572
-
573
  jQuery.sendFormGmp({
574
  data: {action: 'remove', mod: 'icons', id: iconId}
575
  , onSuccess: function(res) {
@@ -748,6 +748,3 @@ function gmpBindMarkerTinyMceUpdate() {
748
  buildListClb( gmpMainMap.markers );
749
  }
750
  }*/
751
-
752
-
753
-
336
  jQuery('#gmpMarkerForm select[name="marker_opts[marker_group_id][]"] option:selected').prop("selected", false);
337
  jQuery('#gmpMarkerForm select[name="marker_opts[marker_group_id][]"] option[value="0"]').prop("selected", true);
338
  jQuery('#marker_opts_marker_group_id').trigger("chosen:updated");
339
+
340
  jQuery(document).trigger('gmpAfterResetMarkerForm');
341
  }
342
  function _gmpCreateNewMapMarker(params) {
439
  if(parseInt(markerParams.params.marker_list_desc)) {
440
  var markerListDesc = jQuery('#gmpMarkerForm input[name="marker_opts[params][marker_list_desc]"]');
441
  gmpSetTxtEditorVal('markerDescriptionList', markerParams.params.marker_list_desc_text);
442
+
443
  markerListDesc.prop('checked', true);
444
  gmpCheckUpdate( markerListDesc );
445
  markerListDesc.trigger('change');
563
  return false;
564
  }
565
  });
566
+
567
  jQuery('#gmpIconsWnd').on('click', '.previewIcon i', function(e){
568
  e.preventDefault();
569
  var icon = jQuery(this)
570
  , iconWrapper = icon.closest('.previewIcon')
571
  , iconId = iconWrapper.attr('data-id');
572
+
573
  jQuery.sendFormGmp({
574
  data: {action: 'remove', mod: 'icons', id: iconId}
575
  , onSuccess: function(res) {
748
  buildListClb( gmpMainMap.markers );
749
  }
750
  }*/
 
 
 
modules/marker/views/tpl/markerListOperations.php CHANGED
@@ -1 +1 @@
1
- <button title="<?php _e('Edit', GMP_LANG_CODE)?>" type="button" data-marker_id="<?php echo esc_attr($this->marker['id']); ?>" class="button button-small egm-marker-edit" style="margin-right: 5px;" onclick="gmpMarkerEditBtnClick(this); return false;"><i class="fa fa-fw fa-pencil"></i></button><button title="<?php _e('Delete', GMP_LANG_CODE)?>" type="button" data-marker_id="<?php echo $this->marker['id']; ?>" class="button button-small egm-marker-remove" onclick="gmpMarkerDelBtnClick(this); return false;"><i class="fa fa-fw fa-trash-o"></i></button>
1
+ <button title="<?php _e('Edit', GMP_LANG_CODE)?>" type="button" data-marker_id="<?php echo esc_attr($this->marker['id']); ?>" class="button button-small egm-marker-edit" style="margin-right: 5px;" onclick="gmpMarkerEditBtnClick(this); return false;"><i class="fa fa-fw fa-pencil"></i></button><button title="<?php _e('Delete', GMP_LANG_CODE)?>" type="button" data-marker_id="<?php echo esc_attr($this->marker['id']); ?>" class="button button-small egm-marker-remove" onclick="gmpMarkerDelBtnClick(this); return false;"><i class="fa fa-fw fa-trash-o"></i></button>
modules/marker_groups/views/tpl/mgrEditMarkerGroup.php CHANGED
@@ -21,10 +21,10 @@
21
  </label>
22
  </th>
23
  <td>
24
- <?php echo htmlGmp::text('marker_group[title]', array(
25
  'value' => $this->editMarkerGroup ? esc_attr($this->marker_group['title']) : '',
26
  'attrs' => 'style="width: 50%;" id="marker_group_title"',
27
- 'required' => true))?>
28
  </td>
29
  </tr>
30
  <tr>
@@ -34,11 +34,11 @@
34
  </label>
35
  </th>
36
  <td>
37
- <?php echo htmlGmp::selectbox('marker_group[parent]', array(
38
  'options' => $this->parentsList,
39
  'value' => $this->editMarkerGroup ? esc_attr($this->marker_group['parent']) : 0,
40
  'attrs' => 'style="width: 50%;" id="marker_group_parent"',
41
- ))?>
42
  </td>
43
  </tr>
44
  <tr>
@@ -48,8 +48,8 @@
48
  </label>
49
  </th>
50
  <td>
51
- <?php echo htmlGmp::colorpicker('marker_group[bg_color]', array(
52
- 'value' => $this->editMarkerGroup && $this->marker_group['params']['bg_color'] ? esc_attr($this->marker_group['params']['bg_color']) : '#E4E4E4'))?>
53
  </td>
54
  </tr>
55
  <tr>
@@ -64,34 +64,34 @@
64
  $this->editMarkerGroup
65
  && isset($this->marker_group['params']['claster_icon'])
66
  && $this->marker_group['params']['claster_icon']
67
- ? $this->marker_group['params']['claster_icon']
68
  : GMP_MODULES_PATH . 'gmap/img/m1.png');
69
  $curMarkerGroupClusterIconWidth =
70
  $this->editMarkerGroup
71
  && isset($this->marker_group['params']['clasterer_icon_width'])
72
  && $this->marker_group['params']['clasterer_icon_width']
73
- ? $this->marker_group['params']['clasterer_icon_width']
74
  : 53;
75
  $curMarkerGroupClusterIconHeight =
76
  $this->editMarkerGroup
77
  && isset($this->marker_group['params']['clasterer_icon_height'])
78
  && $this->marker_group['params']['marker_clasterer_icon_height']
79
- ? $this->marker_group['params']['marker_clasterer_icon_height']
80
  : 52;
81
  ?>
82
  <img id="gmpMarkerGroupClastererIconPrevImg" class="gmpSubOpt" src="<?php echo esc_attr($curMarkerGroupClusterIcon) ?>" style="max-width: 53px; height: auto;" />
83
  <a id="gmpUploadMarkerGroupClastererIconBtn" class="button gmpSubOpt" href="#" ><?php _e('Upload Icon', GMP_LANG_CODE)?></a>
84
  <a id="gmpDefaultMarkerGroupClastererIconBtn" class="button gmpSubOpt" href="#" ><?php _e('Default Icon', GMP_LANG_CODE)?></a>
85
  <div class="gmpMarkerGroupClastererUplRes"></div>
86
- <?php echo htmlGmp::hidden('marker_group[claster_icon]', array('value' => esc_attr($curMarkerGroupClusterIcon), ))?>
87
- <?php echo htmlGmp::hidden('marker_group[claster_icon_width]', array('value' => esc_attr($curMarkerGroupClusterIconWidth), ))?>
88
- <?php echo htmlGmp::hidden('marker_group[claster_icon_height]', array('value' => esc_attr($curMarkerGroupClusterIconHeight), ))?>
89
  </td>
90
  </tr>
91
  </table>
92
- <?php echo htmlGmp::hidden('mod', array('value' => 'marker_groups'))?>
93
- <?php echo htmlGmp::hidden('action', array('value' => 'save'))?>
94
- <?php echo htmlGmp::hidden('marker_group[id]', array('value' => $this->editMarkerGroup ? esc_attr($this->marker_group['id']) : ''))?>
95
  </form>
96
  </div>
97
  </div>
21
  </label>
22
  </th>
23
  <td>
24
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::text('marker_group[title]', array(
25
  'value' => $this->editMarkerGroup ? esc_attr($this->marker_group['title']) : '',
26
  'attrs' => 'style="width: 50%;" id="marker_group_title"',
27
+ 'required' => true)))?>
28
  </td>
29
  </tr>
30
  <tr>
34
  </label>
35
  </th>
36
  <td>
37
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::selectbox('marker_group[parent]', array(
38
  'options' => $this->parentsList,
39
  'value' => $this->editMarkerGroup ? esc_attr($this->marker_group['parent']) : 0,
40
  'attrs' => 'style="width: 50%;" id="marker_group_parent"',
41
+ )))?>
42
  </td>
43
  </tr>
44
  <tr>
48
  </label>
49
  </th>
50
  <td>
51
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::colorpicker('marker_group[bg_color]', array(
52
+ 'value' => $this->editMarkerGroup && $this->marker_group['params']['bg_color'] ? esc_attr($this->marker_group['params']['bg_color']) : '#E4E4E4')))?>
53
  </td>
54
  </tr>
55
  <tr>
64
  $this->editMarkerGroup
65
  && isset($this->marker_group['params']['claster_icon'])
66
  && $this->marker_group['params']['claster_icon']
67
+ ? esc_attr($this->marker_group['params']['claster_icon'])
68
  : GMP_MODULES_PATH . 'gmap/img/m1.png');
69
  $curMarkerGroupClusterIconWidth =
70
  $this->editMarkerGroup
71
  && isset($this->marker_group['params']['clasterer_icon_width'])
72
  && $this->marker_group['params']['clasterer_icon_width']
73
+ ? esc_attr($this->marker_group['params']['clasterer_icon_width'])
74
  : 53;
75
  $curMarkerGroupClusterIconHeight =
76
  $this->editMarkerGroup
77
  && isset($this->marker_group['params']['clasterer_icon_height'])
78
  && $this->marker_group['params']['marker_clasterer_icon_height']
79
+ ? esc_attr($this->marker_group['params']['marker_clasterer_icon_height'])
80
  : 52;
81
  ?>
82
  <img id="gmpMarkerGroupClastererIconPrevImg" class="gmpSubOpt" src="<?php echo esc_attr($curMarkerGroupClusterIcon) ?>" style="max-width: 53px; height: auto;" />
83
  <a id="gmpUploadMarkerGroupClastererIconBtn" class="button gmpSubOpt" href="#" ><?php _e('Upload Icon', GMP_LANG_CODE)?></a>
84
  <a id="gmpDefaultMarkerGroupClastererIconBtn" class="button gmpSubOpt" href="#" ><?php _e('Default Icon', GMP_LANG_CODE)?></a>
85
  <div class="gmpMarkerGroupClastererUplRes"></div>
86
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::hidden('marker_group[claster_icon]', array('value' => esc_attr($curMarkerGroupClusterIcon), )))?>
87
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::hidden('marker_group[claster_icon_width]', array('value' => esc_attr($curMarkerGroupClusterIconWidth), )))?>
88
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::hidden('marker_group[claster_icon_height]', array('value' => esc_attr($curMarkerGroupClusterIconHeight), )))?>
89
  </td>
90
  </tr>
91
  </table>
92
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::hidden('mod', array('value' => 'marker_groups')))?>
93
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::hidden('action', array('value' => 'save')))?>
94
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::hidden('marker_group[id]', array('value' => $this->editMarkerGroup ? esc_attr($this->marker_group['id']) : '')))?>
95
  </form>
96
  </div>
97
  </div>
modules/marker_groups/views/tpl/mgrListOperations.php CHANGED
@@ -1,5 +1,5 @@
1
  <div class="supsystic-actions-wrap" style="display: none;">
2
- <a class="button-table-action" id="editMarkerGroup<?php echo esc_attr($this->marker_group['id']); ?>" href="<?php echo $this->editLink?>">
3
  <i class="fa fa-fw fa-pencil"></i>
4
  </a>
5
  <a class="button-table-action" id="deleteMarkerGroup<?php echo esc_attr($this->marker_group['id']); ?>" href="#" onclick="gmpRemoveMarkerGroupFromTblClick(<?php echo esc_attr($this->marker_group['id']);?>);">
1
  <div class="supsystic-actions-wrap" style="display: none;">
2
+ <a class="button-table-action" id="editMarkerGroup<?php echo esc_attr($this->marker_group['id']); ?>" href="<?php echo esc_attr($this->editLink)?>">
3
  <i class="fa fa-fw fa-pencil"></i>
4
  </a>
5
  <a class="button-table-action" id="deleteMarkerGroup<?php echo esc_attr($this->marker_group['id']); ?>" href="#" onclick="gmpRemoveMarkerGroupFromTblClick(<?php echo esc_attr($this->marker_group['id']);?>);">
modules/marker_groups/views/tpl/mgrMarkerGroupsOptions.php CHANGED
@@ -58,8 +58,8 @@
58
  </td>
59
  </tr>
60
  </table>
61
- <?php echo htmlGmp::hidden('mod', array('value' => 'marker_groups'))?>
62
- <?php echo htmlGmp::hidden('action', array('value' => 'saveMarkerGroupsOptions'))?>
63
  </form>
64
  <div style="clear: both;"></div>
65
  </div>
58
  </td>
59
  </tr>
60
  </table>
61
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::hidden('mod', array('value' => 'marker_groups')))?>
62
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::hidden('action', array('value' => 'saveMarkerGroupsOptions')))?>
63
  </form>
64
  <div style="clear: both;"></div>
65
  </div>
modules/options/views/tpl/optionsAdminPage.php CHANGED
@@ -10,19 +10,19 @@
10
  <?php if(isset($tab['fa_icon'])) { ?>
11
  <i class="fa <?php echo esc_attr($tab['fa_icon'])?>"></i>
12
  <?php } elseif(isset($tab['wp_icon'])) { ?>
13
- <i class="dashicons-before <?php echo $tab['wp_icon']?>"></i>
14
  <?php } elseif(isset($tab['icon'])) { ?>
15
  <i class="<?php echo esc_attr($tab['icon'])?>"></i>
16
  <?php }?>
17
- <?php echo $tab['label']?>
18
  </a>
19
  </li>
20
  <?php }?>
21
  </ul>
22
  </nav>
23
- <div class="supsystic-container supsystic-<?php echo $this->activeTab?>">
24
  <?php dispatcherGmp::doAction('discountMsg');?>
25
- <?php echo $this->content?>
26
  <div class="clear"></div>
27
  </div>
28
  </section>
10
  <?php if(isset($tab['fa_icon'])) { ?>
11
  <i class="fa <?php echo esc_attr($tab['fa_icon'])?>"></i>
12
  <?php } elseif(isset($tab['wp_icon'])) { ?>
13
+ <i class="dashicons-before <?php echo esc_attr($tab['wp_icon'])?>"></i>
14
  <?php } elseif(isset($tab['icon'])) { ?>
15
  <i class="<?php echo esc_attr($tab['icon'])?>"></i>
16
  <?php }?>
17
+ <?php echo esc_attr($tab['label'])?>
18
  </a>
19
  </li>
20
  <?php }?>
21
  </ul>
22
  </nav>
23
+ <div class="supsystic-container supsystic-<?php echo esc_attr($this->activeTab)?>">
24
  <?php dispatcherGmp::doAction('discountMsg');?>
25
+ <?php echo $this->content?> <!-- Escaped before -->
26
  <div class="clear"></div>
27
  </div>
28
  </section>
modules/options/views/tpl/optionsSettingsTabContent.php CHANGED
@@ -21,7 +21,7 @@
21
  $catClass = 'gmpOptCat_'. $optCatKey;
22
  ?>
23
  <?php if(!isset($optCatData['hide_cat_label']) || !$optCatData['hide_cat_label']) {?>
24
- <tr class="<?php echo $catClass;?>">
25
  <th colspan="4">
26
  <h3><?php _e($optCatData['label'], GMP_LANG_CODE);?></h3>
27
  </th>
@@ -47,11 +47,11 @@
47
  }
48
  $htmlInput = htmlGmp::$htmlType('opt_values['. $optKey. ']', $htmlOgmp);
49
  if(in_array($htmlType, array('hidden'))) {
50
- echo $htmlInput; // Just show hidden field, without any row at all
51
  continue;
52
  }
53
  ?>
54
- <tr class="<?php echo $catClass;?>">
55
  <th scope="row" class="col-perc col-w-20perc">
56
  <?php _e($opt['label'], GMP_LANG_CODE);?>
57
  <?php if(!empty($opt['changed_on'])) {?>
@@ -76,13 +76,13 @@
76
  <i class="fa fa-question supsystic-tooltip" title="<?php _e($opt['desc'], GMP_LANG_CODE);?>"></i>
77
  </td>
78
  <td class="col-perc col-w-8perc">
79
- <?php echo $htmlInput;?>
80
  </td>
81
  </tr>
82
  <?php }?>
83
  <?php } ?>
84
  <?php if(isset($optCatData['opts_html'])) { ?>
85
- <tr class="<?php echo $catClass;?>">
86
  <td colspan="3">
87
  <?php
88
  if(is_callable($optCatData['opts_html'])) {
@@ -99,7 +99,7 @@
99
  <div style="clear: both;"></div>
100
  </div>
101
  </div>
102
- <?php echo htmlGmp::hidden('mod', array('value' => 'options'))?>
103
- <?php echo htmlGmp::hidden('action', array('value' => 'saveGroup'))?>
104
  </form>
105
  </section>
21
  $catClass = 'gmpOptCat_'. $optCatKey;
22
  ?>
23
  <?php if(!isset($optCatData['hide_cat_label']) || !$optCatData['hide_cat_label']) {?>
24
+ <tr class="<?php echo esc_attr($catClass);?>">
25
  <th colspan="4">
26
  <h3><?php _e($optCatData['label'], GMP_LANG_CODE);?></h3>
27
  </th>
47
  }
48
  $htmlInput = htmlGmp::$htmlType('opt_values['. $optKey. ']', $htmlOgmp);
49
  if(in_array($htmlType, array('hidden'))) {
50
+ echo htmlGmp::wpKsesHtml($htmlInput); // Just show hidden field, without any row at all
51
  continue;
52
  }
53
  ?>
54
+ <tr class="<?php echo esc_attr($catClass);?>">
55
  <th scope="row" class="col-perc col-w-20perc">
56
  <?php _e($opt['label'], GMP_LANG_CODE);?>
57
  <?php if(!empty($opt['changed_on'])) {?>
76
  <i class="fa fa-question supsystic-tooltip" title="<?php _e($opt['desc'], GMP_LANG_CODE);?>"></i>
77
  </td>
78
  <td class="col-perc col-w-8perc">
79
+ <?php echo htmlGmp::wpKsesHtml($htmlInput);?>
80
  </td>
81
  </tr>
82
  <?php }?>
83
  <?php } ?>
84
  <?php if(isset($optCatData['opts_html'])) { ?>
85
+ <tr class="<?php echo esc_attr($catClass);?>">
86
  <td colspan="3">
87
  <?php
88
  if(is_callable($optCatData['opts_html'])) {
99
  <div style="clear: both;"></div>
100
  </div>
101
  </div>
102
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::hidden('mod', array('value' => 'options')))?>
103
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::hidden('action', array('value' => 'saveGroup')))?>
104
  </form>
105
  </section>
modules/supsystic_promo/mod.php CHANGED
@@ -118,9 +118,9 @@ class supsystic_promoGmp extends moduleGmp {
118
  $html = '';
119
  foreach($notices as $nKey => $n) {
120
  $this->getModel()->saveUsageStat($nKey. '.'. 'show', true);
121
- $html .= '<div class="updated notice is-dismissible supsystic-admin-notice" data-code="'. $nKey. '">'. $n['html']. '</div>';
122
  }
123
- echo $html;
124
  }
125
  }
126
  public function addAdminTab($tabs) {
@@ -266,7 +266,7 @@ class supsystic_promoGmp extends moduleGmp {
266
  }
267
  public function checkWeLoveYou() {
268
  if(frameGmp::_()->getModule('options')->get('add_love_link')) {
269
- echo $this->getLoveLink();
270
  }
271
  }
272
  public function addPromoMapTabs() {
118
  $html = '';
119
  foreach($notices as $nKey => $n) {
120
  $this->getModel()->saveUsageStat($nKey. '.'. 'show', true);
121
+ $html .= '<div class="updated notice is-dismissible supsystic-admin-notice" data-code="'. esc_attr($nKey). '">'. $n['html']. '</div>';
122
  }
123
+ echo htmlGmp::wpKsesHtml($html);
124
  }
125
  }
126
  public function addAdminTab($tabs) {
266
  }
267
  public function checkWeLoveYou() {
268
  if(frameGmp::_()->getModule('options')->get('add_love_link')) {
269
+ echo esc_attr($this->getLoveLink());
270
  }
271
  }
272
  public function addPromoMapTabs() {
modules/supsystic_promo/views/supsystic_promo.php CHANGED
@@ -91,7 +91,7 @@ class supsystic_promoViewGmp extends viewGmp {
91
  return parent::getContent('adminPromoTabContent');
92
  }
93
  public function showFeaturedPluginsPage() {
94
- frameGmp::_()->getModule('templates')->loadBootstrapSimple();
95
  frameGmp::_()->addStyle('admin.featured-plugins', $this->getModule()->getModPath(). 'css/admin.featured-plugins.css');
96
  frameGmp::_()->getModule('templates')->loadGoogleFont('Montserrat');
97
  $siteUrl = 'https://supsystic.com/';
91
  return parent::getContent('adminPromoTabContent');
92
  }
93
  public function showFeaturedPluginsPage() {
94
+ frameGmp::_()->getModule('templates')->loadSuptables();
95
  frameGmp::_()->addStyle('admin.featured-plugins', $this->getModule()->getModPath(). 'css/admin.featured-plugins.css');
96
  frameGmp::_()->getModule('templates')->loadGoogleFont('Montserrat');
97
  $siteUrl = 'https://supsystic.com/';
modules/supsystic_promo/views/tpl/featuredPlugins.php CHANGED
@@ -1,7 +1,7 @@
1
  <section id="supsystic-featured-plugins" class="supsystic-item supsystic-panel">
2
  <div class="supsysticPageBundleContainer container-fluid">
3
- <div class="bundle-text col-md-7 col-xs-12"><?php _e('Get plugins bundle today and save over 80%', GMP_LANG_CODE)?></div>
4
- <div class="bundle-btn col-md-5 col-xs-12">
5
  <a href="<?php echo esc_attr($this->bundleUrl);?>" class="btn btn-full btn-revert hvr-shutter-out-horizontal" target="_blank">
6
  <?php _e('Check It out', GMP_LANG_CODE)?>
7
  </a>
@@ -9,7 +9,7 @@
9
  </div>
10
  <hr />
11
  <?php foreach($this->pluginsList as $p) { ?>
12
- <div class="catitem col-md-4 col-sm-6 col-xs-12">
13
  <div class="download-product-item">
14
  <div class="dp-thumb text-center">
15
  <a href="<?php echo esc_attr($p['url'])?>" target="_blank">
1
  <section id="supsystic-featured-plugins" class="supsystic-item supsystic-panel">
2
  <div class="supsysticPageBundleContainer container-fluid">
3
+ <div class="bundle-text supMd7 supXs12"><?php _e('Get plugins bundle today and save over 80%', GMP_LANG_CODE)?></div>
4
+ <div class="bundle-btn supMd5 supXs12">
5
  <a href="<?php echo esc_attr($this->bundleUrl);?>" class="btn btn-full btn-revert hvr-shutter-out-horizontal" target="_blank">
6
  <?php _e('Check It out', GMP_LANG_CODE)?>
7
  </a>
9
  </div>
10
  <hr />
11
  <?php foreach($this->pluginsList as $p) { ?>
12
+ <div class="catitem supMd4 supSm6 supXs12">
13
  <div class="download-product-item">
14
  <div class="dp-thumb text-center">
15
  <a href="<?php echo esc_attr($p['url'])?>" target="_blank">
modules/supsystic_promo/views/tpl/overviewTabContent.php CHANGED
@@ -54,7 +54,7 @@
54
  <div class="supsystic-overview-news-content">
55
  <?php echo $this->news?>
56
  </div>
57
- <a href="<?php echo $this->mainLink?>" class="button button-primary button-hero" style="float: right; margin-top: 10px;">
58
  <i class="fa fa-info-circle"></i>
59
  <?php _e('All news and info', GMP_LANG_CODE)?>
60
  </a>
@@ -83,14 +83,14 @@
83
  <label for="<?php echo esc_attr($id)?>"><?php echo esc_attr($fData['label'])?></label>
84
  </th>
85
  <td>
86
- <?php echo htmlGmp::$htmlType($fName, $htmlParams)?>
87
  </td>
88
  </tr>
89
  <?php }?>
90
  <tr>
91
  <th scope="row" colspan="2">
92
- <?php echo htmlGmp::hidden('mod', array('value' => 'supsystic_promo'))?>
93
- <?php echo htmlGmp::hidden('action', array('value' => 'sendContact'))?>
94
  <button class="button button-primary button-hero" style="float: right;">
95
  <i class="fa fa-upload"></i>
96
  <?php _e('Send email', GMP_LANG_CODE)?>
54
  <div class="supsystic-overview-news-content">
55
  <?php echo $this->news?>
56
  </div>
57
+ <a href="<?php echo esc_attr($this->mainLink)?>" class="button button-primary button-hero" style="float: right; margin-top: 10px;">
58
  <i class="fa fa-info-circle"></i>
59
  <?php _e('All news and info', GMP_LANG_CODE)?>
60
  </a>
83
  <label for="<?php echo esc_attr($id)?>"><?php echo esc_attr($fData['label'])?></label>
84
  </th>
85
  <td>
86
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::$htmlType($fName, $htmlParams))?>
87
  </td>
88
  </tr>
89
  <?php }?>
90
  <tr>
91
  <th scope="row" colspan="2">
92
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::hidden('mod', array('value' => 'supsystic_promo')))?>
93
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::hidden('action', array('value' => 'sendContact')))?>
94
  <button class="button button-primary button-hero" style="float: right;">
95
  <i class="fa fa-upload"></i>
96
  <?php _e('Send email', GMP_LANG_CODE)?>
modules/supsystic_promo/views/tpl/welcomePage.php CHANGED
@@ -10,13 +10,13 @@
10
  .container p {line-height:20px; margin-bottom:10px;}
11
  .container ul {margin-bottom:10px; margin-left:20px;}
12
  .container ul li {list-style-type:disc;}
13
-
14
  .about-message {
15
  font-size: 21px;
16
  line-height: 30px;
17
  float: left;
18
  }
19
-
20
  .plug-icon-shell {
21
  position: absolute;
22
  right: 0;
@@ -30,20 +30,20 @@
30
  text-align: right;
31
  float: right;
32
  }
33
-
34
  .video-wrapper {
35
- margin:0 auto;
36
  width:640px;
37
  float: left;
38
  }
39
  .clear {clear:both;}
40
-
41
  .col-3 {
42
- float:left;
43
  padding-right: 20px;
44
  width:29%;
45
  }
46
-
47
  #toeWelcomePageFindUsForm label {
48
  line-height: 24px;
49
  margin-left: 20px;
@@ -82,18 +82,18 @@ jQuery(document).ready(function(){
82
  <hr />
83
  <div class="about-message">
84
  <?php printf(__('This is first start up of the %s plugin.', GMP_LANG_CODE), GMP_WP_PLUGIN_NAME)?><br />
85
- <?php _e('If you are newbie - check all features on that page, if you are guru - please correct us.', GMP_LANG_CODE)?>
86
  </div>
87
  <div class="clear"></div>
88
  <div class="spacer"></div>
89
 
90
  <h2>Where did you find us?</h2>
91
  <?php foreach($this->askOptions as $askId => $askOpt) { ?>
92
- <label><?php echo htmlGmp::radiobutton('where_find_us', array('value' => $askId))?>&nbsp;<?php echo $askOpt['label']?></label>
93
  <?php if($askId == 4 /*Find on the web*/) { ?>
94
- <label id="toeFindUsUrlShell" style="display: none;"><?php _e('Please, post url', GMP_LANG_CODE)?>: <?php echo htmlGmp::text('find_on_web_url')?></label>
95
  <?php } elseif($askId == 5 /*Other way*/) { ?>
96
- <label style="display: none;" id="toeOtherWayTextShell"><?php echo htmlGmp::textarea('other_way_desc')?></label>
97
  <?php }?>
98
  <?php }?>
99
 
@@ -131,13 +131,13 @@ jQuery(document).ready(function(){
131
  </div>
132
  <div class="clear"></div>
133
 
134
- <?php echo htmlGmp::hidden('pl', array('value' => GMP_CODE))?>
135
- <?php echo htmlGmp::hidden('page', array('value' => 'supsystic_promo'))?>
136
- <?php echo htmlGmp::hidden('action', array('value' => 'welcomePageSaveInfo'))?>
137
- <?php echo htmlGmp::submit('gonext', array('value' => 'Thank for check info. Start using plugin.', 'attrs' => 'class="button button-primary button-hero"'))?>
138
- <?php echo htmlGmp::hidden('original_page', array('value' => $this->originalPage))?>
139
 
140
  <span id="toeWelcomePageFindUsMsg"></span>
141
  </form>
142
  </div>
143
- </div>
10
  .container p {line-height:20px; margin-bottom:10px;}
11
  .container ul {margin-bottom:10px; margin-left:20px;}
12
  .container ul li {list-style-type:disc;}
13
+
14
  .about-message {
15
  font-size: 21px;
16
  line-height: 30px;
17
  float: left;
18
  }
19
+
20
  .plug-icon-shell {
21
  position: absolute;
22
  right: 0;
30
  text-align: right;
31
  float: right;
32
  }
33
+
34
  .video-wrapper {
35
+ margin:0 auto;
36
  width:640px;
37
  float: left;
38
  }
39
  .clear {clear:both;}
40
+
41
  .col-3 {
42
+ float:left;
43
  padding-right: 20px;
44
  width:29%;
45
  }
46
+
47
  #toeWelcomePageFindUsForm label {
48
  line-height: 24px;
49
  margin-left: 20px;
82
  <hr />
83
  <div class="about-message">
84
  <?php printf(__('This is first start up of the %s plugin.', GMP_LANG_CODE), GMP_WP_PLUGIN_NAME)?><br />
85
+ <?php _e('If you are newbie - check all features on that page, if you are guru - please correct us.', GMP_LANG_CODE)?>
86
  </div>
87
  <div class="clear"></div>
88
  <div class="spacer"></div>
89
 
90
  <h2>Where did you find us?</h2>
91
  <?php foreach($this->askOptions as $askId => $askOpt) { ?>
92
+ <label><?php echo htmlGmp::wpKsesHtml(htmlGmp::radiobutton('where_find_us', array('value' => esc_attr($askId))))?>&nbsp;<?php echo esc_attr($askOpt['label'])?></label>
93
  <?php if($askId == 4 /*Find on the web*/) { ?>
94
+ <label id="toeFindUsUrlShell" style="display: none;"><?php _e('Please, post url', GMP_LANG_CODE)?>: <?php echo htmlGmp::wpKsesHtml(htmlGmp::text('find_on_web_url'))?></label>
95
  <?php } elseif($askId == 5 /*Other way*/) { ?>
96
+ <label style="display: none;" id="toeOtherWayTextShell"><?php echo htmlGmp::wpKsesHtml(htmlGmp::textarea('other_way_desc'))?></label>
97
  <?php }?>
98
  <?php }?>
99
 
131
  </div>
132
  <div class="clear"></div>
133
 
134
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::hidden('pl', array('value' => GMP_CODE)))?>
135
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::hidden('page', array('value' => 'supsystic_promo')))?>
136
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::hidden('action', array('value' => 'welcomePageSaveInfo')))?>
137
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::submit('gonext', array('value' => 'Thank for check info. Start using plugin.', 'attrs' => 'class="button button-primary button-hero"')))?>
138
+ <?php echo htmlGmp::wpKsesHtml(htmlGmp::hidden('original_page', array('value' => $this->originalPage)))?>
139
 
140
  <span id="toeWelcomePageFindUsMsg"></span>
141
  </form>
142
  </div>
143
+ </div>
modules/templates/mod.php CHANGED
@@ -76,8 +76,6 @@ class templatesGmp extends moduleGmp {
76
  'styleGmp' => array('path' => GMP_CSS_PATH. 'style.css', 'for' => 'admin'),
77
  'supsystic-uiGmp' => array('path' => GMP_CSS_PATH. 'supsystic-ui.css', 'for' => 'admin'),
78
  'dashicons' => array('for' => 'admin'),
79
- 'bootstrap-alerts' => array('path' => GMP_CSS_PATH. 'bootstrap-alerts.css', 'for' => 'admin'),
80
- 'bootstrap-cols' => array('path' => GMP_CSS_PATH. 'bootstrap-cols.css', 'for' => 'admin'),
81
  'icheck' => array('path' => GMP_CSS_PATH. 'jquery.icheck.css', 'for' => 'admin'),
82
  'wp-color-picker' => array('for' => 'admin'),
83
  );
@@ -176,10 +174,10 @@ class templatesGmp extends moduleGmp {
176
  public function loadDatePicker() {
177
  frameGmp::_()->addScript('jquery-ui-datepicker');
178
  }
179
- public function loadBootstrapSimple() {
180
  static $loaded = false;
181
  if(!$loaded) {
182
- frameGmp::_()->addStyle('bootstrap-simple', GMP_CSS_PATH. 'bootstrap-simple.css');
183
  $loaded = true;
184
  }
185
  }
76
  'styleGmp' => array('path' => GMP_CSS_PATH. 'style.css', 'for' => 'admin'),
77
  'supsystic-uiGmp' => array('path' => GMP_CSS_PATH. 'supsystic-ui.css', 'for' => 'admin'),
78
  'dashicons' => array('for' => 'admin'),
 
 
79
  'icheck' => array('path' => GMP_CSS_PATH. 'jquery.icheck.css', 'for' => 'admin'),
80
  'wp-color-picker' => array('for' => 'admin'),
81
  );
174
  public function loadDatePicker() {
175
  frameGmp::_()->addScript('jquery-ui-datepicker');
176
  }
177
+ public function loadSuptables() {
178
  static $loaded = false;
179
  if(!$loaded) {
180
+ frameGmp::_()->addStyle('suptablesui', GMP_CSS_PATH. 'suptablesui.min.css');
181
  $loaded = true;
182
  }
183
  }
readme.txt CHANGED
@@ -5,7 +5,7 @@ Plugin URI: https://supsystic.com/plugins/google-maps-plugin
5
  Donate link: https://supsystic.com/plugins/google-maps-plugin
6
  Tags: google map, map, Google Maps, map markers, location
7
  Tested up to: 5.8
8
- Stable tag: 1.10.0
9
 
10
  Google Maps with markers, locations and clusterization, KML layers and filters. Custom Google map markers with text, images, videos, links.
11
 
@@ -289,6 +289,12 @@ Easy Google Maps Plugin admin area. Add a marker to the google map.
289
 
290
 
291
  == Changelog ==
 
 
 
 
 
 
292
  = Easy Google Map Plugin v1.9.33 / 22.96.2021 =
293
  * Add fix for notice
294
  * Add minor fixes
5
  Donate link: https://supsystic.com/plugins/google-maps-plugin
6
  Tags: google map, map, Google Maps, map markers, location
7
  Tested up to: 5.8
8
+ Stable tag: 1.10.1
9
 
10
  Google Maps with markers, locations and clusterization, KML layers and filters. Custom Google map markers with text, images, videos, links.
11
 
289
 
290
 
291
  == Changelog ==
292
+ = Easy Google Map Plugin v1.10.1 / 27.10.2021 =
293
+ * Add wp_kses()
294
+ * Security fixes
295
+ * Remove bootstrap
296
+ * Add esc_attribute
297
+
298
  = Easy Google Map Plugin v1.9.33 / 22.96.2021 =
299
  * Add fix for notice
300
  * Add minor fixes