Unyson - Version 2.0.1

Version Description

  • Bug Fix: On some servers the path contains a trailing slash http://bit.ly/123amVu . Make sure to remove it.
  • Bug Fix: On extension install, required extensions that are already installed were not added for activation.
Download this release

Release Info

Developer Unyson
Plugin Icon 128x128 Unyson
Version 2.0.1
Comparing to
See all releases

Code changes from version 2.0.0 to 2.0.1

framework/bootstrap-helpers.php CHANGED
@@ -8,7 +8,7 @@
8
  * Convert to Unix style directory separators
9
  */
10
  function fw_fix_path($path) {
11
- return str_replace(array('//', '\\'), array('/', '/'), $path);
12
  }
13
 
14
  /** Child theme related functions */
8
  * Convert to Unix style directory separators
9
  */
10
  function fw_fix_path($path) {
11
+ return untrailingslashit( str_replace(array('//', '\\'), array('/', '/'), $path) );
12
  }
13
 
14
  /** Child theme related functions */
framework/core/Fw.php CHANGED
@@ -68,7 +68,7 @@ final class _Fw
68
  if (is_admin() && !$this->manifest->check_requirements()) {
69
  FW_Flash_Messages::add(
70
  'fw_requirements',
71
- __('Framework requirements not met: ', 'fw') . $this->manifest->get_not_met_requirement_text(),
72
  'warning'
73
  );
74
  }
68
  if (is_admin() && !$this->manifest->check_requirements()) {
69
  FW_Flash_Messages::add(
70
  'fw_requirements',
71
+ __('Framework requirements not met:', 'fw') .' '. $this->manifest->get_not_met_requirement_text(),
72
  'warning'
73
  );
74
  }
framework/core/class-fw-manifest.php CHANGED
@@ -454,7 +454,7 @@ class FW_Extension_Manifest extends FW_Manifest
454
 
455
  $this->manifest = array_merge(array(
456
  /**
457
- * @type bool Display on the Extensions page
458
  */
459
  'display' => false,
460
  /**
454
 
455
  $this->manifest = array_merge(array(
456
  /**
457
+ * @type bool Display on the Extensions page or it's a hidden extension
458
  */
459
  'display' => false,
460
  /**
framework/core/components/extensions/manager/available-extensions.php CHANGED
@@ -82,7 +82,7 @@ $extensions = array(
82
  'display' => true,
83
  'parent' => 'shortcodes',
84
  'name' => __( 'Visual Page Builder', 'fw' ),
85
- 'description' => __( 'Let’s you easily build countless pages with the help of the drag and drop visual page builder that comes with a lot of already created shortcodes.', 'fw' ),
86
  'thumbnail' => $thumbnails_uri . '/page-builder.jpg',
87
  'download' => array(
88
  'github' => array(
82
  'display' => true,
83
  'parent' => 'shortcodes',
84
  'name' => __( 'Visual Page Builder', 'fw' ),
85
+ 'description' => __( "Let's you easily build countless pages with the help of the drag and drop visual page builder that comes with a lot of already created shortcodes.", 'fw' ),
86
  'thumbnail' => $thumbnails_uri . '/page-builder.jpg',
87
  'download' => array(
88
  'github' => array(
framework/core/components/extensions/manager/class--fw-extensions-manager.php CHANGED
@@ -724,12 +724,17 @@ final class _FW_Extensions_Manager
724
  $activate_extensions = array();
725
 
726
  do {
 
 
 
727
  foreach ($install_data['parents'] as $extension_name => $parent_extensions) {
728
  $current_extension_path = fw_get_framework_directory();
729
 
730
  foreach ($parent_extensions as $parent_extension_name) {
731
  $current_extension_path .= '/extensions/'. $parent_extension_name;
732
 
 
 
733
  if (isset($installed_extensions[$parent_extension_name])) {
734
  // skip already installed extensions
735
  continue;
@@ -819,6 +824,8 @@ final class _FW_Extensions_Manager
819
  }
820
 
821
  foreach ($extension_required_extensions as $required_extension_name => $required_extension_data) {
 
 
822
  if (isset($installed_extensions[$required_extension_name])) {
823
  continue;
824
  }
@@ -1258,7 +1265,7 @@ final class _FW_Extensions_Manager
1258
 
1259
  foreach (explode(',', $_GET['extension']) as $extension_name) {
1260
  if (!isset($installed_extensions[$extension_name])) {
1261
- $error = sprintf(__('Extension "%s" does not exist.'), $this->get_extension_title($extension_name));
1262
  break 2;
1263
  }
1264
 
@@ -1397,7 +1404,7 @@ final class _FW_Extensions_Manager
1397
 
1398
  foreach (explode(',', $_GET['extension']) as $extension_name) {
1399
  if (!isset($installed_extensions[$extension_name])) {
1400
- $error = sprintf(__('Extension "%s" does not exist.'), $this->get_extension_title($extension_name));
1401
  break 2;
1402
  }
1403
 
@@ -1629,15 +1636,23 @@ final class _FW_Extensions_Manager
1629
  __('Github error:', 'fw') .' '. $json_response['message']
1630
  );
1631
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1632
  }
1633
-
1634
- return new WP_Error(
1635
- $wp_error_id,
1636
- sprintf(
1637
- __( 'Failed to access Github repository "%s" releases. (Response code: %d)', 'fw' ),
1638
- $source_data['user_repo'], $response_code
1639
- )
1640
- );
1641
  }
1642
 
1643
  $releases = json_decode($response['body'], true);
@@ -1673,12 +1688,21 @@ final class _FW_Extensions_Manager
1673
  unset($http);
1674
 
1675
  if (($response_code = wp_remote_retrieve_response_code($response)) !== 200) {
1676
- return new WP_Error(
1677
- $wp_error_id,
1678
- sprintf(__('Cannot download the "%s" extension zip. (Response code: %d)', 'fw'),
1679
- $this->get_extension_title($extension_name), $response_code
1680
- )
1681
- );
 
 
 
 
 
 
 
 
 
1682
  }
1683
 
1684
  $zip_path = $wp_fs_tmp_dir .'/temp.zip';
724
  $activate_extensions = array();
725
 
726
  do {
727
+ /**
728
+ * Install parent extensions and the extension
729
+ */
730
  foreach ($install_data['parents'] as $extension_name => $parent_extensions) {
731
  $current_extension_path = fw_get_framework_directory();
732
 
733
  foreach ($parent_extensions as $parent_extension_name) {
734
  $current_extension_path .= '/extensions/'. $parent_extension_name;
735
 
736
+ $activate_extensions[$parent_extension_name] = array();
737
+
738
  if (isset($installed_extensions[$parent_extension_name])) {
739
  // skip already installed extensions
740
  continue;
824
  }
825
 
826
  foreach ($extension_required_extensions as $required_extension_name => $required_extension_data) {
827
+ $activate_extensions[$required_extension_name] = array();
828
+
829
  if (isset($installed_extensions[$required_extension_name])) {
830
  continue;
831
  }
1265
 
1266
  foreach (explode(',', $_GET['extension']) as $extension_name) {
1267
  if (!isset($installed_extensions[$extension_name])) {
1268
+ $error = sprintf(__('Extension "%s" does not exist.', 'fw'), $this->get_extension_title($extension_name));
1269
  break 2;
1270
  }
1271
 
1404
 
1405
  foreach (explode(',', $_GET['extension']) as $extension_name) {
1406
  if (!isset($installed_extensions[$extension_name])) {
1407
+ $error = sprintf(__( 'Extension "%s" does not exist.' , 'fw' ), $this->get_extension_title($extension_name));
1408
  break 2;
1409
  }
1410
 
1636
  __('Github error:', 'fw') .' '. $json_response['message']
1637
  );
1638
  }
1639
+ } elseif ($response_code) {
1640
+ return new WP_Error(
1641
+ $wp_error_id,
1642
+ sprintf(
1643
+ __( 'Failed to access Github repository "%s" releases. (Response code: %d)', 'fw' ),
1644
+ $source_data['user_repo'], $response_code
1645
+ )
1646
+ );
1647
+ } else {
1648
+ return new WP_Error(
1649
+ $wp_error_id,
1650
+ sprintf(
1651
+ __( 'Failed to access Github repository "%s" releases.', 'fw' ),
1652
+ $source_data['user_repo']
1653
+ )
1654
+ );
1655
  }
 
 
 
 
 
 
 
 
1656
  }
1657
 
1658
  $releases = json_decode($response['body'], true);
1688
  unset($http);
1689
 
1690
  if (($response_code = wp_remote_retrieve_response_code($response)) !== 200) {
1691
+ if ($response_code) {
1692
+ return new WP_Error(
1693
+ $wp_error_id,
1694
+ sprintf( __( 'Cannot download the "%s" extension zip. (Response code: %d)', 'fw' ),
1695
+ $this->get_extension_title( $extension_name ), $response_code
1696
+ )
1697
+ );
1698
+ } else {
1699
+ return new WP_Error(
1700
+ $wp_error_id,
1701
+ sprintf( __( 'Cannot download the "%s" extension zip.', 'fw' ),
1702
+ $this->get_extension_title( $extension_name )
1703
+ )
1704
+ );
1705
+ }
1706
  }
1707
 
1708
  $zip_path = $wp_fs_tmp_dir .'/temp.zip';
framework/core/components/extensions/manager/views/extension-page-header.php CHANGED
@@ -38,7 +38,7 @@
38
  echo sprintf(__('%s Install Instructions', 'fw'), $extension_title);
39
  break;
40
  default:
41
- echo __('Unknown tab: ', 'fw') . fw_htmlspecialchars($tab);
42
  }
43
  ?>
44
  </h2>
38
  echo sprintf(__('%s Install Instructions', 'fw'), $extension_title);
39
  break;
40
  default:
41
+ echo __('Unknown tab:', 'fw') . ' ' . fw_htmlspecialchars($tab);
42
  }
43
  ?>
44
  </h2>
framework/core/components/theme.php CHANGED
@@ -280,7 +280,7 @@ final class _FW_Component_Theme
280
  if (is_admin() && !fw()->theme->manifest->check_requirements()) {
281
  FW_Flash_Messages::add(
282
  'fw_theme_requirements',
283
- __('Theme requirements not met: ', 'fw') . fw()->theme->manifest->get_not_met_requirement_text(),
284
  'warning'
285
  );
286
  }
280
  if (is_admin() && !fw()->theme->manifest->check_requirements()) {
281
  FW_Flash_Messages::add(
282
  'fw_theme_requirements',
283
+ __('Theme requirements not met:', 'fw') .' '. fw()->theme->manifest->get_not_met_requirement_text(),
284
  'warning'
285
  );
286
  }
framework/extensions/update/class-fw-extension-update.php CHANGED
@@ -279,14 +279,14 @@ class FW_Extension_Update extends FW_Extension
279
 
280
  if ($wp_filesystem->exists($file_path)) {
281
  if (!$wp_filesystem->delete($file_path)) {
282
- trigger_error(__('Cannot delete: ', 'fw') . $file_path, E_USER_WARNING);
283
  }
284
  }
285
 
286
  if ($enable) {
287
  // Create maintenance file to signal that we are upgrading
288
  if (!$wp_filesystem->put_contents($file_path, '<?php $upgrading = ' . time() . '; ?>', FS_CHMOD_FILE)) {
289
- trigger_error(__('Cannot create: ', 'fw') . $file_path, E_USER_WARNING);
290
  }
291
  }
292
  }
@@ -364,13 +364,13 @@ class FW_Extension_Update extends FW_Extension
364
  if ($wp_filesystem->exists($tmp_download_dir)) {
365
  // just in case it already exists, clear everything, it may contain old files
366
  if (!$wp_filesystem->rmdir($tmp_download_dir, true)) {
367
- $error = __('Cannot remove old temporary directory: ', 'fw') . $tmp_download_dir;
368
  break;
369
  }
370
  }
371
 
372
  if (!FW_WP_Filesystem::mkdir_recursive($tmp_download_dir)) {
373
- $error = __('Cannot create directory: ', 'fw') . $tmp_download_dir;
374
  break;
375
  }
376
  }
@@ -396,7 +396,7 @@ class FW_Extension_Update extends FW_Extension
396
  {
397
  $dir_files = $wp_filesystem->dirlist($wp_fs_destination_dir, true);
398
  if ($dir_files === false) {
399
- $error =__('Cannot access directory: ', 'fw') . $wp_fs_destination_dir;
400
  break;
401
  }
402
 
@@ -415,7 +415,7 @@ class FW_Extension_Update extends FW_Extension
415
  $file_path = $wp_fs_destination_dir .'/'. $file['name'];
416
 
417
  if (!$wp_filesystem->delete($file_path, true, $file['type'])) {
418
- $error = __('Cannot remove: ', 'fw') . $file_path;
419
  break 2;
420
  }
421
  }
@@ -425,7 +425,7 @@ class FW_Extension_Update extends FW_Extension
425
  {
426
  $dir_files = $wp_filesystem->dirlist($downloaded_dir, true);
427
  if ($dir_files === false) {
428
- $error = __('Cannot access directory: ', 'fw') . $downloaded_dir;
429
  break;
430
  }
431
 
@@ -525,7 +525,7 @@ class FW_Extension_Update extends FW_Extension
525
  $source_ext_dirs = $wp_filesystem->dirlist($source_dir, true);
526
  if ($source_ext_dirs === false) {
527
  return new WP_Error($wp_error_id,
528
- __('Cannot access directory: ', 'fw') . $source_dir
529
  );
530
  }
531
 
@@ -548,7 +548,7 @@ class FW_Extension_Update extends FW_Extension
548
  if (!$wp_filesystem->exists($destination_extension_dir)) {
549
  if (!FW_WP_Filesystem::mkdir_recursive($destination_extension_dir)) {
550
  return new WP_Error($wp_error_id,
551
- __('Cannot create directory: ', 'fw') . $destination_extension_dir
552
  );
553
  }
554
  }
@@ -558,7 +558,7 @@ class FW_Extension_Update extends FW_Extension
558
  $dest_ext_files = $wp_filesystem->dirlist($destination_extension_dir, true);
559
  if ($dest_ext_files === false) {
560
  return new WP_Error($wp_error_id,
561
- __('Cannot access directory: ', 'fw') . $destination_extension_dir
562
  );
563
  }
564
 
@@ -578,7 +578,7 @@ class FW_Extension_Update extends FW_Extension
578
 
579
  if (!$wp_filesystem->delete($dest_ext_file_path, true, $dest_ext_file['type'])) {
580
  return new WP_Error($wp_error_id,
581
- __('Cannot delete: ', 'fw') . $dest_ext_file_path
582
  );
583
  }
584
  }
@@ -590,7 +590,7 @@ class FW_Extension_Update extends FW_Extension
590
  $source_ext_files = $wp_filesystem->dirlist($source_extension_dir, true);
591
  if ($source_ext_files === false) {
592
  return new WP_Error($wp_error_id,
593
- __('Cannot access directory: ', 'fw') . $source_extension_dir
594
  );
595
  }
596
 
279
 
280
  if ($wp_filesystem->exists($file_path)) {
281
  if (!$wp_filesystem->delete($file_path)) {
282
+ trigger_error(__('Cannot delete:', 'fw') . ' ' . $file_path, E_USER_WARNING);
283
  }
284
  }
285
 
286
  if ($enable) {
287
  // Create maintenance file to signal that we are upgrading
288
  if (!$wp_filesystem->put_contents($file_path, '<?php $upgrading = ' . time() . '; ?>', FS_CHMOD_FILE)) {
289
+ trigger_error(__('Cannot create:', 'fw') . ' ' . $file_path, E_USER_WARNING);
290
  }
291
  }
292
  }
364
  if ($wp_filesystem->exists($tmp_download_dir)) {
365
  // just in case it already exists, clear everything, it may contain old files
366
  if (!$wp_filesystem->rmdir($tmp_download_dir, true)) {
367
+ $error = __('Cannot remove old temporary directory:', 'fw') . ' ' . $tmp_download_dir;
368
  break;
369
  }
370
  }
371
 
372
  if (!FW_WP_Filesystem::mkdir_recursive($tmp_download_dir)) {
373
+ $error = __('Cannot create directory:', 'fw') . ' ' . $tmp_download_dir;
374
  break;
375
  }
376
  }
396
  {
397
  $dir_files = $wp_filesystem->dirlist($wp_fs_destination_dir, true);
398
  if ($dir_files === false) {
399
+ $error =__('Cannot access directory:', 'fw') . ' ' . $wp_fs_destination_dir;
400
  break;
401
  }
402
 
415
  $file_path = $wp_fs_destination_dir .'/'. $file['name'];
416
 
417
  if (!$wp_filesystem->delete($file_path, true, $file['type'])) {
418
+ $error = __('Cannot remove:', 'fw') . ' ' . $file_path;
419
  break 2;
420
  }
421
  }
425
  {
426
  $dir_files = $wp_filesystem->dirlist($downloaded_dir, true);
427
  if ($dir_files === false) {
428
+ $error = __('Cannot access directory:', 'fw') . ' ' . $downloaded_dir;
429
  break;
430
  }
431
 
525
  $source_ext_dirs = $wp_filesystem->dirlist($source_dir, true);
526
  if ($source_ext_dirs === false) {
527
  return new WP_Error($wp_error_id,
528
+ __('Cannot access directory:', 'fw') . ' ' . $source_dir
529
  );
530
  }
531
 
548
  if (!$wp_filesystem->exists($destination_extension_dir)) {
549
  if (!FW_WP_Filesystem::mkdir_recursive($destination_extension_dir)) {
550
  return new WP_Error($wp_error_id,
551
+ __('Cannot create directory:', 'fw') . ' ' . $destination_extension_dir
552
  );
553
  }
554
  }
558
  $dest_ext_files = $wp_filesystem->dirlist($destination_extension_dir, true);
559
  if ($dest_ext_files === false) {
560
  return new WP_Error($wp_error_id,
561
+ __('Cannot access directory:', 'fw') . ' ' . $destination_extension_dir
562
  );
563
  }
564
 
578
 
579
  if (!$wp_filesystem->delete($dest_ext_file_path, true, $dest_ext_file['type'])) {
580
  return new WP_Error($wp_error_id,
581
+ __('Cannot delete:', 'fw') . ' ' . $dest_ext_file_path
582
  );
583
  }
584
  }
590
  $source_ext_files = $wp_filesystem->dirlist($source_extension_dir, true);
591
  if ($source_ext_files === false) {
592
  return new WP_Error($wp_error_id,
593
+ __('Cannot access directory:', 'fw') . ' ' . $source_extension_dir
594
  );
595
  }
596
 
framework/extensions/update/extensions/github-update/class-fw-extension-github-update.php CHANGED
@@ -187,13 +187,23 @@ class FW_Extension_Github_Update extends FW_Ext_Update_Service
187
  }
188
  }
189
 
190
- return new WP_Error(
191
- 'fw_ext_update_github_download_releases_failed',
192
- sprintf(
193
- __( 'Failed to access Github repository "%s" releases. (Response code: %d)', 'fw' ),
194
- $user_slash_repo, $response_code
195
- )
196
- );
 
 
 
 
 
 
 
 
 
 
197
  }
198
 
199
  $releases = json_decode($response['body'], true);
187
  }
188
  }
189
 
190
+ if ($response_code) {
191
+ return new WP_Error(
192
+ 'fw_ext_update_github_download_releases_failed',
193
+ sprintf(
194
+ __( 'Failed to access Github repository "%s" releases. (Response code: %d)', 'fw' ),
195
+ $user_slash_repo, $response_code
196
+ )
197
+ );
198
+ } else {
199
+ return new WP_Error(
200
+ 'fw_ext_update_github_download_releases_failed',
201
+ sprintf(
202
+ __( 'Failed to access Github repository "%s" releases.', 'fw' ),
203
+ $user_slash_repo
204
+ )
205
+ );
206
+ }
207
  }
208
 
209
  $releases = json_decode($response['body'], true);
framework/helpers/class-fw-wp-filesystem.php CHANGED
@@ -92,8 +92,8 @@ class FW_WP_Filesystem
92
 
93
  $path = fw_fix_path($path);
94
 
95
- $real_abspath = untrailingslashit(fw_fix_path(ABSPATH));
96
- $wp_filesystem_abspath = untrailingslashit($wp_filesystem->abspath());
97
  $relative_path = preg_replace('/^'. preg_quote($real_abspath, '/') .'/', '', $path);
98
 
99
  return $wp_filesystem_abspath . $relative_path;
@@ -114,8 +114,8 @@ class FW_WP_Filesystem
114
 
115
  $wp_filesystem_path = fw_fix_path($wp_filesystem_path);
116
 
117
- $real_abspath = untrailingslashit(fw_fix_path(ABSPATH));
118
- $wp_filesystem_abspath = untrailingslashit($wp_filesystem->abspath());
119
  $relative_path = preg_replace('/^'. preg_quote($wp_filesystem_abspath, '/') .'/', '', $wp_filesystem_path);
120
 
121
  return $real_abspath . $relative_path;
92
 
93
  $path = fw_fix_path($path);
94
 
95
+ $real_abspath = fw_fix_path(ABSPATH);
96
+ $wp_filesystem_abspath = fw_fix_path($wp_filesystem->abspath());
97
  $relative_path = preg_replace('/^'. preg_quote($real_abspath, '/') .'/', '', $path);
98
 
99
  return $wp_filesystem_abspath . $relative_path;
114
 
115
  $wp_filesystem_path = fw_fix_path($wp_filesystem_path);
116
 
117
+ $real_abspath = fw_fix_path(ABSPATH);
118
+ $wp_filesystem_abspath = fw_fix_path($wp_filesystem->abspath());
119
  $relative_path = preg_replace('/^'. preg_quote($wp_filesystem_abspath, '/') .'/', '', $wp_filesystem_path);
120
 
121
  return $real_abspath . $relative_path;
framework/includes/option-types/switch/static/adaptive-switch/styles.css CHANGED
@@ -63,6 +63,7 @@
63
  left: 0;
64
  height: 100%;
65
  width: 100%;
 
66
  }
67
  .adaptive-switch .switch-dot div {
68
  width: 2em;
@@ -79,12 +80,14 @@
79
  height: 2em;
80
  width: 2em;
81
  display: inline-block;
 
82
 
 
 
83
  -webkit-border-radius: 50%;
84
  -moz-border-radius: 50%;
85
  border-radius: 50%;
86
  }
87
-
88
  .adaptive-switch .switch-dot,
89
  .adaptive-switch .switch-switcher label.switch-label {
90
  -webkit-box-sizing: border-box;
63
  left: 0;
64
  height: 100%;
65
  width: 100%;
66
+
67
  }
68
  .adaptive-switch .switch-dot div {
69
  width: 2em;
80
  height: 2em;
81
  width: 2em;
82
  display: inline-block;
83
+ }
84
 
85
+ .adaptive-switch .switch-dot,
86
+ .adaptive-switch .switch-dot div span {
87
  -webkit-border-radius: 50%;
88
  -moz-border-radius: 50%;
89
  border-radius: 50%;
90
  }
 
91
  .adaptive-switch .switch-dot,
92
  .adaptive-switch .switch-switcher label.switch-label {
93
  -webkit-box-sizing: border-box;
languages/index.html ADDED
File without changes
readme.txt CHANGED
@@ -3,7 +3,7 @@ Contributors: unyson, themefusecom
3
  Tags: page builder, cms, grid, layout, responsive, back up, backup, db backup, dump, migrate, schedule, search engine optimization, seo, media, slideshow, shortcode, slide, slideshare, slideshow, google sitemaps, sitemaps, analytics, google analytics, calendar, event, events, google maps, learning, lessons, sidebars, breadcrumbs, review, portfolio
4
  Requires at least: 4.0.0
5
  Tested up to: 4.0.1
6
- Stable tag: 2.0.0
7
  License: GPLv2 or later
8
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
9
 
@@ -82,6 +82,10 @@ Yes; Unyson will work with any theme.
82
 
83
  == Changelog ==
84
 
 
 
 
 
85
  = 2.0.0 =
86
  * First release.
87
 
3
  Tags: page builder, cms, grid, layout, responsive, back up, backup, db backup, dump, migrate, schedule, search engine optimization, seo, media, slideshow, shortcode, slide, slideshare, slideshow, google sitemaps, sitemaps, analytics, google analytics, calendar, event, events, google maps, learning, lessons, sidebars, breadcrumbs, review, portfolio
4
  Requires at least: 4.0.0
5
  Tested up to: 4.0.1
6
+ Stable tag: 2.0.1
7
  License: GPLv2 or later
8
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
9
 
82
 
83
  == Changelog ==
84
 
85
+ = 2.0.1 =
86
+ * Bug Fix: On some servers the path contains a trailing slash http://bit.ly/123amVu . Make sure to remove it.
87
+ * Bug Fix: On extension install, required extensions that are already installed were not added for activation.
88
+
89
  = 2.0.0 =
90
  * First release.
91
 
unyson.php CHANGED
@@ -3,10 +3,12 @@
3
  * Plugin Name: Unyson
4
  * Plugin URI: http://unyson.themefuse.com/
5
  * Description: A free drag & drop framework that comes with a bunch of built in extensions that will help you develop premium themes fast & easy.
6
- * Version: 2.0.0
7
  * Author: ThemeFuse
8
  * Author URI: http://themefuse.com
9
- * License: GPL2
 
 
10
  */
11
 
12
  {
@@ -75,4 +77,10 @@ require dirname( __FILE__ ) . '/framework/bootstrap.php';
75
  return apply_filters('fw_plugin_action_list', $actions);
76
  }
77
  add_filter( 'plugin_action_links_' . plugin_basename( __FILE__ ), '_filter_plugin_action_list' );
 
 
 
 
 
 
78
  }
3
  * Plugin Name: Unyson
4
  * Plugin URI: http://unyson.themefuse.com/
5
  * Description: A free drag & drop framework that comes with a bunch of built in extensions that will help you develop premium themes fast & easy.
6
+ * Version: 2.0.1
7
  * Author: ThemeFuse
8
  * Author URI: http://themefuse.com
9
+ * License: GPL2+
10
+ * Text Domain: fw
11
+ * Domain Path: /languages/
12
  */
13
 
14
  {
77
  return apply_filters('fw_plugin_action_list', $actions);
78
  }
79
  add_filter( 'plugin_action_links_' . plugin_basename( __FILE__ ), '_filter_plugin_action_list' );
80
+
81
+ /** @internal */
82
+ function _action_fw_textdomain() {
83
+ load_plugin_textdomain( 'fw', false, dirname( plugin_basename( __FILE__ ) ) . '/languages/' );
84
+ }
85
+ add_action( 'plugins_loaded', '_action_fw_textdomain' );
86
  }