Contact Form & SMTP Plugin for WordPress by PirateForms - Version 2.3.3

Version Description

  • 2018-01-06
Download this release

Release Info

Developer codeinwp
Plugin Icon 128x128 Contact Form & SMTP Plugin for WordPress by PirateForms
Version 2.3.3
Comparing to
See all releases

Code changes from version 2.3.2 to 2.3.3

CHANGELOG.md CHANGED
@@ -1,4 +1,9 @@
1
 
 
 
 
 
 
2
  ### v2.3.2 - 2017-12-28
3
  **Changes:**
4
  * Fix for tooltip admin behavior.
1
 
2
+ ### v2.3.3 - 2018-01-06
3
+ **Changes:**
4
+ * Fix double reCAPTCHA box bug.
5
+ * Fix custom spam trap alignement error.
6
+
7
  ### v2.3.2 - 2017-12-28
8
  **Changes:**
9
  * Fix for tooltip admin behavior.
admin/css/wp-admin.css CHANGED
@@ -331,10 +331,11 @@ input#save.pirate-forms-save-button {
331
  .pirate-forms-password-toggle span.dashicons {
332
  cursor: pointer;
333
  }
334
- .toplevel_page_pirateforms-admin .ui-tooltip{
335
- background: #333;
336
- color:#fff;
337
- padding:5px;
338
- width:300px;
339
  border-radius: 5px;
340
- }
 
 
331
  .pirate-forms-password-toggle span.dashicons {
332
  cursor: pointer;
333
  }
334
+
335
+ .toplevel_page_pirateforms-admin .ui-tooltip {
336
+ width: 300px;
337
+ padding: 5px;
 
338
  border-radius: 5px;
339
+ color: #fff;
340
+ background: #333;
341
+ }
includes/class-pirateforms-phpformbuilder.php CHANGED
@@ -47,8 +47,7 @@ class PirateForms_PhpFormBuilder {
47
  $classes[] = $val['id'] . '-on';
48
  } else {
49
  $element = $html_helper->add( $val, false );
50
- if ( ( 'form_honeypot' === $val['id'] || in_array( $val['type'], array( 'hidden', 'div' ) ) ) && $val['id'] !== 'pirate-forms-maps-custom'
51
- ) {
52
  $form_end .= $element;
53
  }
54
  if ( $val['id'] === 'pirate-forms-maps-custom' ) {
47
  $classes[] = $val['id'] . '-on';
48
  } else {
49
  $element = $html_helper->add( $val, false );
50
+ if ( ( 'form_honeypot' === $val['id'] || in_array( $val['type'], array( 'hidden', 'div' ) ) ) && ! in_array( $val['id'], array( 'pirate-forms-maps-custom', 'pirate-forms-captcha' ) ) ) {
 
51
  $form_end .= $element;
52
  }
53
  if ( $val['id'] === 'pirate-forms-maps-custom' ) {
includes/class-pirateforms.php CHANGED
@@ -69,7 +69,7 @@ class PirateForms {
69
  public function __construct() {
70
 
71
  $this->plugin_name = 'pirateforms';
72
- $this->version = '2.3.2';
73
 
74
  $this->load_dependencies();
75
  $this->set_locale();
69
  public function __construct() {
70
 
71
  $this->plugin_name = 'pirateforms';
72
+ $this->version = '2.3.3';
73
 
74
  $this->load_dependencies();
75
  $this->set_locale();
languages/pirate-forms.pot CHANGED
@@ -2,9 +2,9 @@
2
  # This file is distributed under the GPLv2.
3
  msgid ""
4
  msgstr ""
5
- "Project-Id-Version: Free & Simple Contact Form Plugin - Pirateforms 2.3.0\n"
6
  "Report-Msgid-Bugs-To: https://github.com/Codeinwp/pirate-forms/issues\n"
7
- "POT-Creation-Date: 2017-12-28 13:28:25+00:00\n"
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=utf-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
@@ -178,7 +178,7 @@ msgid "Message"
178
  msgstr ""
179
 
180
  #: admin/class-pirateforms-admin.php:483
181
- #: public/class-pirateforms-public.php:993
182
  msgid "Attachment"
183
  msgstr ""
184
 
@@ -513,30 +513,30 @@ msgid "None"
513
  msgstr ""
514
 
515
  #: includes/class-pirateforms-util.php:240
516
- #: public/class-pirateforms-public.php:547
517
  msgid "Contact form submission from %s"
518
  msgstr ""
519
 
520
  #: includes/class-pirateforms-util.php:256
521
  #: includes/class-pirateforms-util.php:298
522
- #: public/class-pirateforms-public.php:574
523
  msgid "IP address"
524
  msgstr ""
525
 
526
  #: includes/class-pirateforms-util.php:257
527
- #: public/class-pirateforms-public.php:575
528
  msgid "IP search"
529
  msgstr ""
530
 
531
  #: includes/class-pirateforms-util.php:258
532
  #: includes/class-pirateforms-util.php:299
533
- #: public/class-pirateforms-public.php:582
534
  msgid "Came from"
535
  msgstr ""
536
 
537
  #: includes/class-pirateforms-util.php:259
538
  #: includes/class-pirateforms-util.php:300
539
- #: public/class-pirateforms-public.php:588
540
  msgid "Sent from page"
541
  msgstr ""
542
 
@@ -602,44 +602,44 @@ msgstr ""
602
  msgid "Submit"
603
  msgstr ""
604
 
605
- #: public/class-pirateforms-public.php:464
606
  msgid "Sorry, an error occured."
607
  msgstr ""
608
 
609
- #: public/class-pirateforms-public.php:526
610
  msgid "Nonce failed!"
611
  msgstr ""
612
 
613
- #: public/class-pirateforms-public.php:534
614
- #: public/class-pirateforms-public.php:599
615
  msgid "Form submission failed!"
616
  msgstr ""
617
 
618
- #: public/class-pirateforms-public.php:559
619
  msgid "Please enter one or more Contact submission recipients"
620
  msgstr ""
621
 
622
- #: public/class-pirateforms-public.php:805
623
  msgid "Invalid CAPTCHA"
624
  msgstr ""
625
 
626
- #: public/class-pirateforms-public.php:817
627
  msgid "Incorrect CAPTCHA"
628
  msgstr ""
629
 
630
- #: public/class-pirateforms-public.php:826
631
  msgid "Submission blocked!"
632
  msgstr ""
633
 
634
- #: public/class-pirateforms-public.php:955
635
  msgid "Uploaded file type is not allowed for %s"
636
  msgstr ""
637
 
638
- #: public/class-pirateforms-public.php:963
639
  msgid "Uploaded file is too large %s"
640
  msgstr ""
641
 
642
- #: public/class-pirateforms-public.php:977
643
  msgid "There was an unknown error uploading the file %s"
644
  msgstr ""
645
 
2
  # This file is distributed under the GPLv2.
3
  msgid ""
4
  msgstr ""
5
+ "Project-Id-Version: Free & Simple Contact Form Plugin - Pirateforms 2.3.2\n"
6
  "Report-Msgid-Bugs-To: https://github.com/Codeinwp/pirate-forms/issues\n"
7
+ "POT-Creation-Date: 2017-12-29 12:29:49+00:00\n"
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=utf-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
178
  msgstr ""
179
 
180
  #: admin/class-pirateforms-admin.php:483
181
+ #: public/class-pirateforms-public.php:995
182
  msgid "Attachment"
183
  msgstr ""
184
 
513
  msgstr ""
514
 
515
  #: includes/class-pirateforms-util.php:240
516
+ #: public/class-pirateforms-public.php:549
517
  msgid "Contact form submission from %s"
518
  msgstr ""
519
 
520
  #: includes/class-pirateforms-util.php:256
521
  #: includes/class-pirateforms-util.php:298
522
+ #: public/class-pirateforms-public.php:576
523
  msgid "IP address"
524
  msgstr ""
525
 
526
  #: includes/class-pirateforms-util.php:257
527
+ #: public/class-pirateforms-public.php:577
528
  msgid "IP search"
529
  msgstr ""
530
 
531
  #: includes/class-pirateforms-util.php:258
532
  #: includes/class-pirateforms-util.php:299
533
+ #: public/class-pirateforms-public.php:584
534
  msgid "Came from"
535
  msgstr ""
536
 
537
  #: includes/class-pirateforms-util.php:259
538
  #: includes/class-pirateforms-util.php:300
539
+ #: public/class-pirateforms-public.php:590
540
  msgid "Sent from page"
541
  msgstr ""
542
 
602
  msgid "Submit"
603
  msgstr ""
604
 
605
+ #: public/class-pirateforms-public.php:466
606
  msgid "Sorry, an error occured."
607
  msgstr ""
608
 
609
+ #: public/class-pirateforms-public.php:528
610
  msgid "Nonce failed!"
611
  msgstr ""
612
 
613
+ #: public/class-pirateforms-public.php:536
614
+ #: public/class-pirateforms-public.php:601
615
  msgid "Form submission failed!"
616
  msgstr ""
617
 
618
+ #: public/class-pirateforms-public.php:561
619
  msgid "Please enter one or more Contact submission recipients"
620
  msgstr ""
621
 
622
+ #: public/class-pirateforms-public.php:807
623
  msgid "Invalid CAPTCHA"
624
  msgstr ""
625
 
626
+ #: public/class-pirateforms-public.php:819
627
  msgid "Incorrect CAPTCHA"
628
  msgstr ""
629
 
630
+ #: public/class-pirateforms-public.php:828
631
  msgid "Submission blocked!"
632
  msgstr ""
633
 
634
+ #: public/class-pirateforms-public.php:957
635
  msgid "Uploaded file type is not allowed for %s"
636
  msgstr ""
637
 
638
+ #: public/class-pirateforms-public.php:965
639
  msgid "Uploaded file is too large %s"
640
  msgstr ""
641
 
642
+ #: public/class-pirateforms-public.php:979
643
  msgid "There was an unknown error uploading the file %s"
644
  msgstr ""
645
 
pirate-forms.php CHANGED
@@ -16,7 +16,7 @@
16
  * Plugin Name: Free & Simple Contact Form Plugin - Pirateforms
17
  * Plugin URI: http://themeisle.com/plugins/pirate-forms/
18
  * Description: Easily creates a nice looking, simple contact form on your WP site.
19
- * Version: 2.3.2
20
  * Author: Themeisle
21
  * Author URI: http://themeisle.com
22
  * Text Domain: pirate-forms
@@ -36,7 +36,7 @@ if ( ! defined( 'WPINC' ) ) {
36
  define( 'PIRATEFORMS_NAME', 'Pirate Forms' );
37
  define( 'PIRATEFORMS_SLUG', 'pirate-forms' );
38
  define( 'PIRATEFORMS_USELL_LINK', 'https://themeisle.com/plugins/pirate-forms-extended/' );
39
- define( 'PIRATE_FORMS_VERSION', '2.3.2' );
40
  define( 'PIRATEFORMS_DIR', trailingslashit( plugin_dir_path( __FILE__ ) ) );
41
  define( 'PIRATEFORMS_URL', plugin_dir_url( __FILE__ ) );
42
  define( 'PIRATEFORMS_BASENAME', plugin_basename( __FILE__ ) );
16
  * Plugin Name: Free & Simple Contact Form Plugin - Pirateforms
17
  * Plugin URI: http://themeisle.com/plugins/pirate-forms/
18
  * Description: Easily creates a nice looking, simple contact form on your WP site.
19
+ * Version: 2.3.3
20
  * Author: Themeisle
21
  * Author URI: http://themeisle.com
22
  * Text Domain: pirate-forms
36
  define( 'PIRATEFORMS_NAME', 'Pirate Forms' );
37
  define( 'PIRATEFORMS_SLUG', 'pirate-forms' );
38
  define( 'PIRATEFORMS_USELL_LINK', 'https://themeisle.com/plugins/pirate-forms-extended/' );
39
+ define( 'PIRATE_FORMS_VERSION', '2.3.3' );
40
  define( 'PIRATEFORMS_DIR', trailingslashit( plugin_dir_path( __FILE__ ) ) );
41
  define( 'PIRATEFORMS_URL', plugin_dir_url( __FILE__ ) );
42
  define( 'PIRATEFORMS_BASENAME', plugin_basename( __FILE__ ) );
public/class-pirateforms-public.php CHANGED
@@ -443,13 +443,15 @@ class PirateForms_Public {
443
  echo $form_builder->attachment;
444
  }
445
 
 
 
446
  if ( isset( $form_builder->captcha ) ) {
447
  echo $form_builder->captcha;
448
  }
449
 
450
  echo $form_builder->contact_submit;
451
 
452
- echo '</div>';
453
  }
454
 
455
  /**
443
  echo $form_builder->attachment;
444
  }
445
 
446
+ echo '<div class="pirate-forms-footer">';
447
+
448
  if ( isset( $form_builder->captcha ) ) {
449
  echo $form_builder->captcha;
450
  }
451
 
452
  echo $form_builder->contact_submit;
453
 
454
+ echo '</div></div>';
455
  }
456
 
457
  /**
public/css/front.css CHANGED
@@ -1,5 +1,5 @@
1
  /*
2
- Version: 2.3.2
3
  */
4
  .pirate_forms_wrap .form_field_wrap,
5
  .widget .pirate_forms_wrap .form_field_wrap {
@@ -78,8 +78,28 @@ Version: 2.3.2
78
  max-width: 100%;
79
  }
80
 
 
 
 
 
 
 
 
 
 
 
 
 
 
81
  @media (max-width: 480px) {
 
82
  .pirate_forms_wrap .form_field_wrap .pirate-forms-submit-button {
 
83
  width: 100%;
84
  }
 
 
 
 
 
85
  }
1
  /*
2
+ Version: 2.3.3
3
  */
4
  .pirate_forms_wrap .form_field_wrap,
5
  .widget .pirate_forms_wrap .form_field_wrap {
78
  max-width: 100%;
79
  }
80
 
81
+ .pirate_forms_wrap .pirate-forms-footer {
82
+ display: table;
83
+ float: left;
84
+ width: 100%;
85
+ }
86
+
87
+ .pirate_forms_wrap .pirate-forms-footer .form_field_wrap {
88
+ display: table-cell;
89
+ float: none;
90
+ margin: 0;
91
+ vertical-align: middle;
92
+ }
93
+
94
  @media (max-width: 480px) {
95
+ .pirate_forms_wrap .pirate-forms-footer .form_field_wrap,
96
  .pirate_forms_wrap .form_field_wrap .pirate-forms-submit-button {
97
+ display: block;
98
  width: 100%;
99
  }
100
+
101
+ .pirate_forms_wrap .pirate-forms-footer .pirateform_wrap_classes_spam_wrap,
102
+ .pirate_forms_wrap .pirate-forms-footer .form_captcha_wrap {
103
+ margin-bottom: 20px;
104
+ }
105
  }
readme.md CHANGED
@@ -187,6 +187,12 @@ Activating the Pirate Contact Form plugin is just like any other plugin. If you'
187
  4. Screenshot 4. Enabling SMTP
188
 
189
  ## Changelog ##
 
 
 
 
 
 
190
  ### 2.3.2 - 2017-12-28 ###
191
 
192
  * Fix for tooltip admin behavior.
187
  4. Screenshot 4. Enabling SMTP
188
 
189
  ## Changelog ##
190
+ ### 2.3.3 - 2018-01-06 ###
191
+
192
+ * Fix double reCAPTCHA box bug.
193
+ * Fix custom spam trap alignement error.
194
+
195
+
196
  ### 2.3.2 - 2017-12-28 ###
197
 
198
  * Fix for tooltip admin behavior.
readme.txt CHANGED
@@ -187,6 +187,12 @@ Activating the Pirate Contact Form plugin is just like any other plugin. If you'
187
  4. Screenshot 4. Enabling SMTP
188
 
189
  == Changelog ==
 
 
 
 
 
 
190
  = 2.3.2 - 2017-12-28 =
191
 
192
  * Fix for tooltip admin behavior.
187
  4. Screenshot 4. Enabling SMTP
188
 
189
  == Changelog ==
190
+ = 2.3.3 - 2018-01-06 =
191
+
192
+ * Fix double reCAPTCHA box bug.
193
+ * Fix custom spam trap alignement error.
194
+
195
+
196
  = 2.3.2 - 2017-12-28 =
197
 
198
  * Fix for tooltip admin behavior.
themeisle-hash.json CHANGED
@@ -1 +1 @@
1
- {"index.php":"39ab8276fb0e4bd3fcab3270822c5977","pirate-forms.php":"2db1978b8b3ce808d6e5b7458279ec9f","uninstall.php":"9d936442a63521d971a6dbc28df9c0d1"}
1
+ {"index.php":"39ab8276fb0e4bd3fcab3270822c5977","pirate-forms.php":"d2b7b37491ed4ea5462d5bc53013fc59","uninstall.php":"9d936442a63521d971a6dbc28df9c0d1"}
vendor/autoload.php CHANGED
@@ -4,4 +4,4 @@
4
 
5
  require_once __DIR__ . '/composer' . '/autoload_real.php';
6
 
7
- return ComposerAutoloaderInit9651cb440a62af3aa2d304272eeb48c4::getLoader();
4
 
5
  require_once __DIR__ . '/composer' . '/autoload_real.php';
6
 
7
+ return ComposerAutoloaderInite4e16cf00d7681e8ee43ec3e0e1e0b72::getLoader();
vendor/autoload_52.php CHANGED
@@ -4,4 +4,4 @@
4
 
5
  require_once dirname(__FILE__) . '/composer'.'/autoload_real_52.php';
6
 
7
- return ComposerAutoloaderInit4818c40d08e422dc424aa26a1ee1de37::getLoader();
4
 
5
  require_once dirname(__FILE__) . '/composer'.'/autoload_real_52.php';
6
 
7
+ return ComposerAutoloaderInitdd46fa6f7bf6f1d5119268cef91fcc46::getLoader();
vendor/codeinwp/themeisle-sdk/class-themeisle-sdk-feedback-deactivate.php CHANGED
@@ -22,21 +22,15 @@ if ( ! class_exists( 'ThemeIsle_SDK_Feedback_Deactivate' ) ) :
22
  * @var array $options_plugin The main options list for plugins.
23
  */
24
  private $options_plugin = array(
25
- 'I only needed the plugin for a short period' => array(
26
- 'id' => 1,
27
- ),
28
- 'The plugin broke my site' => array(
29
- 'id' => 2,
30
- ),
31
- 'I found a better plugin' => array(
32
  'id' => 3,
33
  'type' => 'text',
34
  'placeholder' => 'What\'s the plugin\'s name?',
35
  ),
36
- 'The plugin suddenly stopped working' => array(
37
  'id' => 4,
38
  ),
39
- 'I no longer need the plugin' => array(
40
  'id' => 5,
41
  'type' => 'textarea',
42
  'placeholder' => 'If you could improve one thing about our product, what would it be?',
@@ -80,12 +74,12 @@ if ( ! class_exists( 'ThemeIsle_SDK_Feedback_Deactivate' ) ) :
80
  /**
81
  * @var string $heading_plugin The heading of the modal
82
  */
83
- private $heading_plugin = 'If you have a moment, please let us know why you are deactivating:';
84
 
85
  /**
86
  * @var string $heading_theme The heading of the modal
87
  */
88
- private $heading_theme = 'Looking to change {theme}, what doesn\'t work for you?';
89
 
90
  /**
91
  * @var string $button_submit_before The text of the deactivate button before an option is chosen
@@ -100,7 +94,7 @@ if ( ! class_exists( 'ThemeIsle_SDK_Feedback_Deactivate' ) ) :
100
  /**
101
  * @var string $button_cancel The text of the cancel button
102
  */
103
- private $button_cancel = 'Cancel';
104
 
105
  /**
106
  * @var int how many seconds before the deactivation window is triggered for themes
@@ -170,46 +164,110 @@ if ( ! class_exists( 'ThemeIsle_SDK_Feedback_Deactivate' ) ) :
170
  }
171
 
172
  body.<?php echo $suffix; ?> .<?php echo $key; ?>-container #TB_title {
173
- font-size: 21px;
174
- padding: 20px 0;
175
- background-color: #f3f3f3;
 
 
 
 
 
 
 
176
  }
177
 
178
  body.<?php echo $suffix; ?> .<?php echo $key; ?>-container div.actions {
179
- padding: 20px 0;
180
- background-color: #f3f3f3;
181
- border-top: 1px solid #dddddd;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
182
  }
183
 
184
  body.<?php echo $suffix; ?> .<?php echo $key; ?>-container input.button.button-primary {
185
- margin-right: 20px;
 
 
 
 
 
 
 
 
 
186
  }
187
 
188
- body.<?php echo $suffix; ?> .<?php echo $key; ?>-container input.button {
189
- margin-right: 20px;
190
  }
191
 
192
- body.<?php echo $suffix; ?> .<?php echo $key; ?>-container #TB_ajaxWindowTitle {
193
- text-align: left;
194
- margin-left: 15px;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
195
  }
196
 
197
  body.<?php echo $suffix; ?> .<?php echo $key; ?>-container div.revive_network-container {
198
  background-color: #ffffff;
199
  }
200
 
 
 
 
 
201
  body.<?php echo $suffix; ?> .<?php echo $key; ?>-container ul.ti-list li {
202
- font-size: 14px;
 
 
203
  }
204
 
205
  body.<?php echo $suffix; ?> .<?php echo $key; ?>-container ul.ti-list li label {
206
  margin-left: 10px;
207
- line-height: 32px;
208
- font-size: 16px;
 
 
 
 
209
  }
210
 
211
  body.<?php echo $suffix; ?> .<?php echo $key; ?>-container #TB_ajaxContent {
212
- padding: 10px 20px;
 
 
 
213
  }
214
 
215
  body.<?php echo $suffix; ?> .<?php echo $key; ?>-container li div textarea {
@@ -222,24 +280,31 @@ if ( ! class_exists( 'ThemeIsle_SDK_Feedback_Deactivate' ) ) :
222
  }
223
 
224
  .<?php echo $key; ?>-container #TB_title #TB_ajaxWindowTitle {
 
225
  display: block;
 
 
 
 
 
 
226
  }
227
 
228
- body.<?php echo $suffix; ?> .<?php echo $key; ?>-container .actions {
229
-
230
- width: 100%;
231
  display: block;
232
- position: absolute;
233
- left: 0px;
234
- bottom: 0px;
235
- text-align: right;
236
  }
237
 
238
- body.<?php echo $suffix; ?> .<?php echo $key; ?>-container #TB_title {
239
-
240
- height: 33px;
241
  width: 100%;
242
- text-align: center;
 
 
 
243
  }
244
 
245
  .theme-install-php .<?php echo $key; ?>-container #TB_closeWindowButton .tb-close-icon:before {
@@ -247,24 +312,40 @@ if ( ! class_exists( 'ThemeIsle_SDK_Feedback_Deactivate' ) ) :
247
  }
248
 
249
  .<?php echo $key; ?>-container #TB_closeWindowButton .tb-close-icon {
250
-
251
  color: #eee;
252
  }
253
 
254
  .<?php echo $key; ?>-container #TB_closeWindowButton {
255
  left: auto;
256
- right: -30px;
 
257
  color: #eee;
258
  }
259
 
260
- body.<?php echo $suffix; ?> .<?php echo $key; ?>-container {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
261
 
 
262
  margin: auto !important;
263
- height: 550px !important;
264
  top: 0 !important;
265
  left: 0 !important;
266
  bottom: 0 !important;
267
  right: 0 !important;
 
268
  }
269
  </style>
270
  <?php
@@ -303,25 +384,29 @@ if ( ! class_exists( 'ThemeIsle_SDK_Feedback_Deactivate' ) ) :
303
  $('a.ti-auto-anchor').trigger('click');
304
  }, <?php echo self::AUTO_TRIGGER_DEACTIVATE_WINDOW_SECONDS * 1000; ?> );
305
  }
306
- $( document ).on( 'thickbox:removed', function() {
307
  $.ajax({
308
  url: ajaxurl,
309
  method: 'post',
310
  data: {
311
- 'action' : '<?php echo $key . __CLASS__; ?>',
312
- 'nonce' : '<?php echo wp_create_nonce( (string) __CLASS__ ); ?>',
313
- 'type' : '<?php echo $type; ?>',
314
- 'key' : '<?php echo $key; ?>'
315
  },
316
  });
317
  });
318
  var href = $(target_element).attr('href');
319
- $('#<?php echo $key; ?>ti-deactivate-no').on('click', function (e) {
320
  e.preventDefault();
321
  e.stopPropagation();
322
 
323
  $('body').unbind('thickbox:removed');
324
  tb_remove();
 
 
 
 
325
  });
326
 
327
  $('#<?php echo $key; ?> ul.ti-list label, #<?php echo $key; ?> ul.ti-list input[name="ti-deactivate-option"]').on('click', function (e) {
@@ -349,12 +434,12 @@ if ( ! class_exists( 'ThemeIsle_SDK_Feedback_Deactivate' ) ) :
349
  url: ajaxurl,
350
  method: 'post',
351
  data: {
352
- 'action' : '<?php echo $key . __CLASS__; ?>',
353
- 'nonce' : '<?php echo wp_create_nonce( (string) __CLASS__ ); ?>',
354
- 'id' : $('#<?php echo $key; ?> input[name="ti-deactivate-option"]:checked').parent().attr('ti-option-id'),
355
- 'msg' : $('#<?php echo $key; ?> input[name="ti-deactivate-option"]:checked').parent().find('textarea').val(),
356
- 'type' : '<?php echo $type; ?>',
357
- 'key' : '<?php echo $key; ?>'
358
  },
359
  });
360
  var redirect = $(this).attr('data-ti-action');
@@ -366,7 +451,7 @@ if ( ! class_exists( 'ThemeIsle_SDK_Feedback_Deactivate' ) ) :
366
  }
367
  });
368
 
369
- $(target_element).attr('name', '<?php echo esc_html( $heading ); ?>').attr('href', '<?php echo $src; ?>').addClass('thickbox');
370
  var thicbox_timer;
371
  $(target_element).on('click', function () {
372
  tiBindThickbox();
@@ -409,10 +494,10 @@ if ( ! class_exists( 'ThemeIsle_SDK_Feedback_Deactivate' ) ) :
409
 
410
  $list = '';
411
  foreach ( $options as $title => $attributes ) {
412
- $id = $attributes['id'];
413
  $list .= '<li ti-option-id="' . $id . '"><input type="radio" name="ti-deactivate-option" id="' . $key . $id . '"><label for="' . $key . $id . '">' . str_replace( '{theme}', $this->product->get_name(), $title ) . '</label>';
414
  if ( array_key_exists( 'type', $attributes ) ) {
415
- $list .= '<div>';
416
  $placeholder = array_key_exists( 'placeholder', $attributes ) ? $attributes['placeholder'] : '';
417
  switch ( $attributes['type'] ) {
418
  case 'text':
@@ -431,8 +516,9 @@ if ( ! class_exists( 'ThemeIsle_SDK_Feedback_Deactivate' ) ) :
431
  . '<ul class="ti-list">' . $list . '</ul>'
432
  . '<div class="actions">'
433
  . get_submit_button(
434
- $button_submit_before, 'secondary', $this->product->get_key() . 'ti-deactivate-yes', false, array(
435
  'data-after-text' => $button_submit,
 
436
  )
437
  )
438
  . get_submit_button( $button_cancel, 'primary', $this->product->get_key() . 'ti-deactivate-no', false )
22
  * @var array $options_plugin The main options list for plugins.
23
  */
24
  private $options_plugin = array(
25
+ 'I found a better plugin' => array(
 
 
 
 
 
 
26
  'id' => 3,
27
  'type' => 'text',
28
  'placeholder' => 'What\'s the plugin\'s name?',
29
  ),
30
+ 'I could not get the plugin to work' => array(
31
  'id' => 4,
32
  ),
33
+ 'I no longer need the plugin' => array(
34
  'id' => 5,
35
  'type' => 'textarea',
36
  'placeholder' => 'If you could improve one thing about our product, what would it be?',
74
  /**
75
  * @var string $heading_plugin The heading of the modal
76
  */
77
+ private $heading_plugin = 'Quick Feedback <span>Because we care about our clients, please leave us a feedback.</span>';
78
 
79
  /**
80
  * @var string $heading_theme The heading of the modal
81
  */
82
+ private $heading_theme = 'Looking to change {theme} <span> What does not work for you?</span>';
83
 
84
  /**
85
  * @var string $button_submit_before The text of the deactivate button before an option is chosen
94
  /**
95
  * @var string $button_cancel The text of the cancel button
96
  */
97
+ private $button_cancel = 'Skip &amp; Deactivate';
98
 
99
  /**
100
  * @var int how many seconds before the deactivation window is triggered for themes
164
  }
165
 
166
  body.<?php echo $suffix; ?> .<?php echo $key; ?>-container #TB_title {
167
+ background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CAYAAAA6/NlyAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyFpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTQyIDc5LjE2MDkyNCwgMjAxNy8wNy8xMy0wMTowNjozOSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpDNkVDM0M4RkYxMzMxMUU3OEMyMkQ0NTIxRTVEQ0ZBRiIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpDNkVDM0M5MEYxMzMxMUU3OEMyMkQ0NTIxRTVEQ0ZBRiI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOkM2RUMzQzhERjEzMzExRTc4QzIyRDQ1MjFFNURDRkFGIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOkM2RUMzQzhFRjEzMzExRTc4QzIyRDQ1MjFFNURDRkFGIi8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+KBNOswAAFtFJREFUeNrkWwmUXVWV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') 40px 30px no-repeat;
168
+ border: none;
169
+ box-sizing: border-box;
170
+ color: #373e40;
171
+ font-size: 24px;
172
+ font-weight: 700;
173
+ height: 90px;
174
+ padding: 40px 40px 0 120px;
175
+ text-transform: uppercase;
176
+ width: 100%;
177
  }
178
 
179
  body.<?php echo $suffix; ?> .<?php echo $key; ?>-container div.actions {
180
+ box-sizing: border-box;
181
+ padding: 30px 40px;
182
+ background-color: #eaeaea;
183
+ }
184
+
185
+ body.<?php echo $suffix; ?> .<?php echo $key; ?>-container input.button {
186
+ background: #ec5d60;
187
+ border: none;
188
+ box-shadow: none;
189
+ color: #ffffff;
190
+ font-size: 15px;
191
+ font-weight: 700;
192
+ height: auto;
193
+ line-height: 20px;
194
+ padding: 10px 15px;
195
+ text-transform: uppercase;
196
+ -webkit-transition: 0.3s ease;
197
+ -moz-transition: 0.3s ease;
198
+ -ms-transition: 0.3s ease;
199
+ -o-transition: 0.3s ease;
200
+ transition: 0.3s ease;
201
  }
202
 
203
  body.<?php echo $suffix; ?> .<?php echo $key; ?>-container input.button.button-primary {
204
+ background: transparent;
205
+ box-shadow: none;
206
+ color: #8d9192;
207
+ font-weight: 400;
208
+ float: right;
209
+ line-height: 40px;
210
+ padding: 0;
211
+ text-decoration: underline;
212
+ text-shadow: none;
213
+ text-transform: none;
214
  }
215
 
216
+ body.<?php echo $suffix; ?> .<?php echo $key; ?>-container input.button:hover {
217
+ background: #e83f42;
218
  }
219
 
220
+ body.<?php echo $suffix; ?> .<?php echo $key; ?>-container input.button.button-primary:hover {
221
+ background: transparent;
222
+ }
223
+
224
+ body.<?php echo $suffix; ?> .<?php echo $key; ?>-container input.button:focus {
225
+ box-shadow: none;
226
+ outline: none;
227
+ }
228
+
229
+ body.<?php echo $suffix; ?> .<?php echo $key; ?>-container input.button:active {
230
+ box-shadow: none;
231
+ transform: translateY(0);
232
+ }
233
+
234
+ body.<?php echo $suffix; ?> .<?php echo $key; ?>-container input.button:disabled {
235
+ cursor: not-allowed;
236
+ }
237
+
238
+ body.<?php echo $suffix; ?> .<?php echo $key; ?>-container input.button.button-primary:hover {
239
+ text-decoration: none;
240
  }
241
 
242
  body.<?php echo $suffix; ?> .<?php echo $key; ?>-container div.revive_network-container {
243
  background-color: #ffffff;
244
  }
245
 
246
+ body.<?php echo $suffix; ?> .<?php echo $key; ?>-container ul.ti-list {
247
+ margin: 0;
248
+ }
249
+
250
  body.<?php echo $suffix; ?> .<?php echo $key; ?>-container ul.ti-list li {
251
+ color: #373e40;
252
+ font-size: 13px;
253
+ margin-bottom: 5px;
254
  }
255
 
256
  body.<?php echo $suffix; ?> .<?php echo $key; ?>-container ul.ti-list li label {
257
  margin-left: 10px;
258
+ line-height: 28px;
259
+ font-size: 15px;
260
+ }
261
+
262
+ body.<?php echo $suffix; ?> .<?php echo $key; ?>-container ul.ti-list input[type=radio] {
263
+ margin-top: 1px;
264
  }
265
 
266
  body.<?php echo $suffix; ?> .<?php echo $key; ?>-container #TB_ajaxContent {
267
+ box-sizing: border-box;
268
+ height: auto !important;
269
+ padding: 20px 40px;
270
+ width: 100% !important;
271
  }
272
 
273
  body.<?php echo $suffix; ?> .<?php echo $key; ?>-container li div textarea {
280
  }
281
 
282
  .<?php echo $key; ?>-container #TB_title #TB_ajaxWindowTitle {
283
+ box-sizing: border-box;
284
  display: block;
285
+ float: none;
286
+ font-weight: 700;
287
+ line-height: 1;
288
+ padding: 0;
289
+ text-align: left;
290
+ width: 100%;
291
  }
292
 
293
+ .<?php echo $key; ?>-container #TB_title #TB_ajaxWindowTitle span {
294
+ color: #8d9192;
 
295
  display: block;
296
+ font-size: 15px;
297
+ font-weight: 400;
298
+ margin-top: 5px;
299
+ text-transform: none;
300
  }
301
 
302
+ body.<?php echo $suffix; ?> .<?php echo $key; ?>-container .actions {
 
 
303
  width: 100%;
304
+ display: block;
305
+ position: absolute;
306
+ left: 0;
307
+ bottom: 0;
308
  }
309
 
310
  .theme-install-php .<?php echo $key; ?>-container #TB_closeWindowButton .tb-close-icon:before {
312
  }
313
 
314
  .<?php echo $key; ?>-container #TB_closeWindowButton .tb-close-icon {
 
315
  color: #eee;
316
  }
317
 
318
  .<?php echo $key; ?>-container #TB_closeWindowButton {
319
  left: auto;
320
+ right: -5px;
321
+ top: -35px;
322
  color: #eee;
323
  }
324
 
325
+ .<?php echo $key; ?>-container #TB_closeWindowButton .tb-close-icon {
326
+ text-align: right;
327
+ line-height: 25px;
328
+ width: 25px;
329
+ height: 25px;
330
+ }
331
+
332
+ .<?php echo $key; ?>-container #TB_closeWindowButton:focus .tb-close-icon {
333
+ box-shadow: none;
334
+ outline: none;
335
+ }
336
+
337
+ .<?php echo $key; ?>-container #TB_closeWindowButton .tb-close-icon:before {
338
+ font: normal 25px dashicons;
339
+ }
340
 
341
+ body.<?php echo $suffix; ?> .<?php echo $key; ?>-container {
342
  margin: auto !important;
343
+ height: 500px !important;
344
  top: 0 !important;
345
  left: 0 !important;
346
  bottom: 0 !important;
347
  right: 0 !important;
348
+ width: 600px !important;
349
  }
350
  </style>
351
  <?php
384
  $('a.ti-auto-anchor').trigger('click');
385
  }, <?php echo self::AUTO_TRIGGER_DEACTIVATE_WINDOW_SECONDS * 1000; ?> );
386
  }
387
+ $(document).on('thickbox:removed', function () {
388
  $.ajax({
389
  url: ajaxurl,
390
  method: 'post',
391
  data: {
392
+ 'action': '<?php echo $key . __CLASS__; ?>',
393
+ 'nonce': '<?php echo wp_create_nonce( (string) __CLASS__ ); ?>',
394
+ 'type': '<?php echo $type; ?>',
395
+ 'key': '<?php echo $key; ?>'
396
  },
397
  });
398
  });
399
  var href = $(target_element).attr('href');
400
+ $('#<?php echo $key; ?>ti-deactivate-no').attr('data-ti-action', href).on('click', function (e) {
401
  e.preventDefault();
402
  e.stopPropagation();
403
 
404
  $('body').unbind('thickbox:removed');
405
  tb_remove();
406
+ var redirect = $(this).attr('data-ti-action');
407
+ if (redirect != '') {
408
+ location.href = redirect;
409
+ }
410
  });
411
 
412
  $('#<?php echo $key; ?> ul.ti-list label, #<?php echo $key; ?> ul.ti-list input[name="ti-deactivate-option"]').on('click', function (e) {
434
  url: ajaxurl,
435
  method: 'post',
436
  data: {
437
+ 'action': '<?php echo $key . __CLASS__; ?>',
438
+ 'nonce': '<?php echo wp_create_nonce( (string) __CLASS__ ); ?>',
439
+ 'id': $('#<?php echo $key; ?> input[name="ti-deactivate-option"]:checked').parent().attr('ti-option-id'),
440
+ 'msg': $('#<?php echo $key; ?> input[name="ti-deactivate-option"]:checked').parent().find('textarea').val(),
441
+ 'type': '<?php echo $type; ?>',
442
+ 'key': '<?php echo $key; ?>'
443
  },
444
  });
445
  var redirect = $(this).attr('data-ti-action');
451
  }
452
  });
453
 
454
+ $(target_element).attr('name', '<?php echo wp_kses( $heading, array( 'span' => array() ) ); ?>').attr('href', '<?php echo $src; ?>').addClass('thickbox');
455
  var thicbox_timer;
456
  $(target_element).on('click', function () {
457
  tiBindThickbox();
494
 
495
  $list = '';
496
  foreach ( $options as $title => $attributes ) {
497
+ $id = $attributes['id'];
498
  $list .= '<li ti-option-id="' . $id . '"><input type="radio" name="ti-deactivate-option" id="' . $key . $id . '"><label for="' . $key . $id . '">' . str_replace( '{theme}', $this->product->get_name(), $title ) . '</label>';
499
  if ( array_key_exists( 'type', $attributes ) ) {
500
+ $list .= '<div>';
501
  $placeholder = array_key_exists( 'placeholder', $attributes ) ? $attributes['placeholder'] : '';
502
  switch ( $attributes['type'] ) {
503
  case 'text':
516
  . '<ul class="ti-list">' . $list . '</ul>'
517
  . '<div class="actions">'
518
  . get_submit_button(
519
+ $button_submit, 'secondary', $this->product->get_key() . 'ti-deactivate-yes', false, array(
520
  'data-after-text' => $button_submit,
521
+ 'disabled' => true,
522
  )
523
  )
524
  . get_submit_button( $button_cancel, 'primary', $this->product->get_key() . 'ti-deactivate-no', false )
vendor/codeinwp/themeisle-sdk/class-themeisle-sdk-feedback-review.php CHANGED
@@ -146,7 +146,7 @@ if ( ! class_exists( 'ThemeIsle_SDK_Feedback_Review' ) ) :
146
  'action': '<?php echo $this->product->get_key() . __CLASS__; ?>'
147
  },
148
  success: function () {
149
- $('#<?php echo $key; ?>_review').hide();
150
  }
151
  });
152
  });
146
  'action': '<?php echo $this->product->get_key() . __CLASS__; ?>'
147
  },
148
  success: function () {
149
+ $('#<?php echo $key; ?>_review').html('<p><b>Thanks for your answer.</b></p>');
150
  }
151
  });
152
  });
vendor/codeinwp/themeisle-sdk/class-themeisle-sdk-feedback-translate.php CHANGED
@@ -888,7 +888,7 @@ The process is easy, and you can join by following the link below!';
888
  'action': '<?php echo $this->product->get_key() . __CLASS__; ?>'
889
  },
890
  success: function () {
891
- $('#<?php echo $key; ?>_translate').hide();
892
  }
893
  });
894
  });
888
  'action': '<?php echo $this->product->get_key() . __CLASS__; ?>'
889
  },
890
  success: function () {
891
+ $('#<?php echo $key; ?>_translate').html('<p><b>Thanks for your answer.</b></p>');
892
  }
893
  });
894
  });
vendor/codeinwp/themeisle-sdk/class-themeisle-sdk-licenser.php CHANGED
@@ -204,19 +204,6 @@ if ( ! class_exists( 'ThemeIsle_SDK_Licenser' ) ) :
204
  * @return bool Either hide them or not.
205
  */
206
  function check_hide( $hide ) {
207
- if ( isset( $_GET[ $this->product->get_key() . '_hide_' . $hide ] ) ) {
208
- if ( $_GET[ $this->product->get_key() . '_hide_' . $hide ] === 'yes' ) {
209
- update_option( $this->product->get_key() . '_hide_' . $hide, 'yes' );
210
-
211
- return false;
212
- }
213
- } else {
214
- $license = get_option( $this->product->get_key() . '_hide_' . $hide, '' );
215
- if ( $license === 'yes' ) {
216
- return false;
217
- }
218
- }
219
-
220
  return true;
221
  }
222
 
@@ -237,15 +224,14 @@ if ( ! class_exists( 'ThemeIsle_SDK_Licenser' ) ) :
237
  Staff for more details.'
238
  );
239
  $no_valid_string = apply_filters(
240
- $this->product->get_key() . '_lc_no_valid_string', 'In order to benefit from updates and support for %s , please add
241
  your license code from your <a href="%s" target="_blank">purchase history</a> and validate it <a
242
- href="%s">here</a> '
243
  );
244
  $expiration_string = apply_filters(
245
  $this->product->get_key() . '_lc_expiration_string', 'Your license is about to expire
246
  for %s. You can go to %s and renew it '
247
  );
248
- $hide_notice_string = apply_filters( $this->product->get_key() . '_lc_hide_notice_string', 'Hide Notice' );
249
  if ( $status != 'valid' ) {
250
  if ( $this->check_activation() ) {
251
  if ( $this->check_hide( 'activation' ) ) {
@@ -258,8 +244,7 @@ if ( ! class_exists( 'ThemeIsle_SDK_Licenser' ) ) :
258
  target="_blank">' . $this->product->get_store_name() . '</a>'
259
  );
260
  ?>
261
- </strong> | <a
262
- href="<?php echo add_query_arg( $this->product->get_key() . '_activation', 'yes' ); ?> "><?php echo $hide_notice_string; ?></a>
263
  </p>
264
  </div>
265
  <?php
@@ -270,9 +255,7 @@ if ( ! class_exists( 'ThemeIsle_SDK_Licenser' ) ) :
270
  <?php if ( $this->check_hide( 'valid' ) ) : ?>
271
  <div class="error">
272
  <p>
273
- <strong><?php echo sprintf( $no_valid_string, $this->product->get_name() . ' ' . $this->product->get_type(), $this->product->get_store_url(), admin_url( 'options-general.php' ) . '#' . $this->product->get_key() ); ?> </strong>|
274
- <a
275
- href="<?php echo add_query_arg( $this->product->get_key() . '_hide_valid', 'yes' ); ?> "><?php echo $hide_notice_string; ?></a>
276
  </p>
277
  </div>
278
  <?php endif; ?>
@@ -291,9 +274,7 @@ if ( ! class_exists( 'ThemeIsle_SDK_Licenser' ) ) :
291
  target="_blank">' . $this->product->get_store_name() . '</a>'
292
  );
293
  ?>
294
- </strong> |
295
- <a
296
- href="<?php echo add_query_arg( $this->product->get_key() . '_hide_expiration', 'yes' ); ?> "><?php echo $hide_notice_string; ?></a>
297
  </p>
298
  </div>
299
  <?php
204
  * @return bool Either hide them or not.
205
  */
206
  function check_hide( $hide ) {
 
 
 
 
 
 
 
 
 
 
 
 
 
207
  return true;
208
  }
209
 
224
  Staff for more details.'
225
  );
226
  $no_valid_string = apply_filters(
227
+ $this->product->get_key() . '_lc_no_valid_string', 'In order to benefit from updates and support for %s, please add
228
  your license code from your <a href="%s" target="_blank">purchase history</a> and validate it <a
229
+ href="%s">here</a>. '
230
  );
231
  $expiration_string = apply_filters(
232
  $this->product->get_key() . '_lc_expiration_string', 'Your license is about to expire
233
  for %s. You can go to %s and renew it '
234
  );
 
235
  if ( $status != 'valid' ) {
236
  if ( $this->check_activation() ) {
237
  if ( $this->check_hide( 'activation' ) ) {
244
  target="_blank">' . $this->product->get_store_name() . '</a>'
245
  );
246
  ?>
247
+ </strong>
 
248
  </p>
249
  </div>
250
  <?php
255
  <?php if ( $this->check_hide( 'valid' ) ) : ?>
256
  <div class="error">
257
  <p>
258
+ <strong><?php echo sprintf( $no_valid_string, $this->product->get_name() . ' ' . $this->product->get_type(), $this->product->get_store_url(), admin_url( 'options-general.php' ) . '#' . $this->product->get_key() ); ?> </strong>
 
 
259
  </p>
260
  </div>
261
  <?php endif; ?>
274
  target="_blank">' . $this->product->get_store_name() . '</a>'
275
  );
276
  ?>
277
+ </strong>
 
 
278
  </p>
279
  </div>
280
  <?php
vendor/codeinwp/themeisle-sdk/load.php CHANGED
@@ -11,7 +11,7 @@
11
  */
12
 
13
  // Current SDK version and path.
14
- $themeisle_sdk_version = '2.0.0';
15
  $themeisle_sdk_path = dirname( __FILE__ );
16
 
17
  global $themeisle_sdk_max_version;
11
  */
12
 
13
  // Current SDK version and path.
14
+ $themeisle_sdk_version = '2.1.0';
15
  $themeisle_sdk_path = dirname( __FILE__ );
16
 
17
  global $themeisle_sdk_max_version;
vendor/composer/autoload_real.php CHANGED
@@ -2,7 +2,7 @@
2
 
3
  // autoload_real.php @generated by Composer
4
 
5
- class ComposerAutoloaderInit9651cb440a62af3aa2d304272eeb48c4
6
  {
7
  private static $loader;
8
 
@@ -19,9 +19,9 @@ class ComposerAutoloaderInit9651cb440a62af3aa2d304272eeb48c4
19
  return self::$loader;
20
  }
21
 
22
- spl_autoload_register(array('ComposerAutoloaderInit9651cb440a62af3aa2d304272eeb48c4', 'loadClassLoader'), true, true);
23
  self::$loader = $loader = new \Composer\Autoload\ClassLoader();
24
- spl_autoload_unregister(array('ComposerAutoloaderInit9651cb440a62af3aa2d304272eeb48c4', 'loadClassLoader'));
25
 
26
  $map = require __DIR__ . '/autoload_namespaces.php';
27
  foreach ($map as $namespace => $path) {
@@ -42,14 +42,14 @@ class ComposerAutoloaderInit9651cb440a62af3aa2d304272eeb48c4
42
 
43
  $includeFiles = require __DIR__ . '/autoload_files.php';
44
  foreach ($includeFiles as $fileIdentifier => $file) {
45
- composerRequire9651cb440a62af3aa2d304272eeb48c4($fileIdentifier, $file);
46
  }
47
 
48
  return $loader;
49
  }
50
  }
51
 
52
- function composerRequire9651cb440a62af3aa2d304272eeb48c4($fileIdentifier, $file)
53
  {
54
  if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) {
55
  require $file;
2
 
3
  // autoload_real.php @generated by Composer
4
 
5
+ class ComposerAutoloaderInite4e16cf00d7681e8ee43ec3e0e1e0b72
6
  {
7
  private static $loader;
8
 
19
  return self::$loader;
20
  }
21
 
22
+ spl_autoload_register(array('ComposerAutoloaderInite4e16cf00d7681e8ee43ec3e0e1e0b72', 'loadClassLoader'), true, true);
23
  self::$loader = $loader = new \Composer\Autoload\ClassLoader();
24
+ spl_autoload_unregister(array('ComposerAutoloaderInite4e16cf00d7681e8ee43ec3e0e1e0b72', 'loadClassLoader'));
25
 
26
  $map = require __DIR__ . '/autoload_namespaces.php';
27
  foreach ($map as $namespace => $path) {
42
 
43
  $includeFiles = require __DIR__ . '/autoload_files.php';
44
  foreach ($includeFiles as $fileIdentifier => $file) {
45
+ composerRequiree4e16cf00d7681e8ee43ec3e0e1e0b72($fileIdentifier, $file);
46
  }
47
 
48
  return $loader;
49
  }
50
  }
51
 
52
+ function composerRequiree4e16cf00d7681e8ee43ec3e0e1e0b72($fileIdentifier, $file)
53
  {
54
  if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) {
55
  require $file;
vendor/composer/autoload_real_52.php CHANGED
@@ -2,7 +2,7 @@
2
 
3
  // autoload_real_52.php generated by xrstf/composer-php52
4
 
5
- class ComposerAutoloaderInit4818c40d08e422dc424aa26a1ee1de37 {
6
  private static $loader;
7
 
8
  public static function loadClassLoader($class) {
@@ -19,9 +19,9 @@ class ComposerAutoloaderInit4818c40d08e422dc424aa26a1ee1de37 {
19
  return self::$loader;
20
  }
21
 
22
- spl_autoload_register(array('ComposerAutoloaderInit4818c40d08e422dc424aa26a1ee1de37', 'loadClassLoader'), true /*, true */);
23
  self::$loader = $loader = new xrstf_Composer52_ClassLoader();
24
- spl_autoload_unregister(array('ComposerAutoloaderInit4818c40d08e422dc424aa26a1ee1de37', 'loadClassLoader'));
25
 
26
  $vendorDir = dirname(dirname(__FILE__));
27
  $baseDir = dirname($vendorDir);
2
 
3
  // autoload_real_52.php generated by xrstf/composer-php52
4
 
5
+ class ComposerAutoloaderInitdd46fa6f7bf6f1d5119268cef91fcc46 {
6
  private static $loader;
7
 
8
  public static function loadClassLoader($class) {
19
  return self::$loader;
20
  }
21
 
22
+ spl_autoload_register(array('ComposerAutoloaderInitdd46fa6f7bf6f1d5119268cef91fcc46', 'loadClassLoader'), true /*, true */);
23
  self::$loader = $loader = new xrstf_Composer52_ClassLoader();
24
+ spl_autoload_unregister(array('ComposerAutoloaderInitdd46fa6f7bf6f1d5119268cef91fcc46', 'loadClassLoader'));
25
 
26
  $vendorDir = dirname(dirname(__FILE__));
27
  $baseDir = dirname($vendorDir);
vendor/composer/installed.json CHANGED
@@ -6,15 +6,15 @@
6
  "source": {
7
  "type": "git",
8
  "url": "https://github.com/Codeinwp/themeisle-sdk.git",
9
- "reference": "3a40b987f7852134bd29bb8a1ecfaca6b7c1f236"
10
  },
11
  "dist": {
12
  "type": "zip",
13
- "url": "https://api.github.com/repos/Codeinwp/themeisle-sdk/zipball/3a40b987f7852134bd29bb8a1ecfaca6b7c1f236",
14
- "reference": "3a40b987f7852134bd29bb8a1ecfaca6b7c1f236",
15
  "shasum": ""
16
  },
17
- "time": "2017-12-28 13:15:26",
18
  "type": "library",
19
  "installation-source": "dist",
20
  "autoload": {
6
  "source": {
7
  "type": "git",
8
  "url": "https://github.com/Codeinwp/themeisle-sdk.git",
9
+ "reference": "ae69f3966081f0a7c7c468c00275c411cc0be063"
10
  },
11
  "dist": {
12
  "type": "zip",
13
+ "url": "https://api.github.com/repos/Codeinwp/themeisle-sdk/zipball/ae69f3966081f0a7c7c468c00275c411cc0be063",
14
+ "reference": "ae69f3966081f0a7c7c468c00275c411cc0be063",
15
  "shasum": ""
16
  },
17
+ "time": "2018-01-04 13:30:43",
18
  "type": "library",
19
  "installation-source": "dist",
20
  "autoload": {