PluginProbe ʕ •ᴥ•ʔ
Nested Pages / 1.3.4
Nested Pages v1.3.4
3.1.8 3.1.9 3.2.0 3.2.1 3.2.10 3.2.11 3.2.12 3.2.13 3.2.2 3.2.3 3.2.4 3.2.5 3.2.6 3.2.7 3.2.8 3.2.9 trunk 1.0 1.1 1.1.1 1.1.2 1.1.3 1.1.4 1.1.5 1.1.6 1.1.7 1.1.8 1.1.9 1.2.0 1.2.1 1.3.0 1.3.1 1.3.10 1.3.11 1.3.12 1.3.13 1.3.14 1.3.15 1.3.2 1.3.4 1.3.5 1.3.6 1.3.7 1.3.8 1.3.9 1.4.0 1.4.1 1.5.0 1.5.1 1.5.2 1.5.3 1.5.4 1.6.0 1.6.1 1.6.2 1.6.3 1.6.3.1 1.6.3.2 1.6.4 1.6.5 1.6.5.1 1.6.5.2 1.6.6 1.6.7 1.6.8 1.7.0 1.7.1 2.0.1 2.0.2 2.0.3 2.0.4 3.0.1 3.0.10 3.0.11 3.0.2 3.0.3 3.0.4 3.0.5 3.0.6 3.0.7 3.0.8 3.0.9 3.1.0 3.1.1 3.1.10 3.1.11 3.1.12 3.1.13 3.1.14 3.1.15 3.1.16 3.1.17 3.1.18 3.1.19 3.1.2 3.1.20 3.1.21 3.1.22 3.1.3 3.1.4 3.1.5 3.1.6 3.1.7
wp-nested-pages / app / Activation / Updates / Updates.php
wp-nested-pages / app / Activation / Updates Last commit date
Updates.php 11 years ago
Updates.php
108 lines
1 <?php namespace NestedPages\Activation\Updates;
2 /**
3 * Required Version Upgrades
4 */
5 class Updates {
6
7 /**
8 * New Version
9 */
10 private $new_version;
11
12 /**
13 * Current Version
14 */
15 private $current_version;
16
17 /**
18 * Run the Updates
19 * @var string
20 */
21 public function run($new_version)
22 {
23 $this->new_version = $new_version;
24 $this->setCurrentVersion();
25 $this->addMenu();
26 $this->convertMenuToID();
27 $this->enablePagePostType();
28 $this->enabledDatepicker();
29 }
30
31
32 /**
33 * Set the plugin version
34 */
35 private function setCurrentVersion()
36 {
37 $this->current_version = ( get_option('nestedpages_version') )
38 ? get_option('nestedpages_version') : $this->new_version;
39 }
40
41
42 /**
43 * Add an empty Nested Pages menu if there isn't one
44 * @since 1.1.5
45 */
46 private function addMenu()
47 {
48 if ( !get_option('nestedpages_menu') ){
49 $menu_id = wp_create_nav_menu('Nested Pages');
50 update_option('nestedpages_menu', $menu_id);
51 }
52 }
53
54
55 /**
56 * Convert existing nestedpages_menu option to menu ID rather than string/name
57 * @since 1.1.5
58 */
59 private function convertMenuToID()
60 {
61 if ( version_compare( $this->current_version, '1.1.5', '<' ) ){
62 $menu_option = get_option('nestedpages_menu');
63 $menu = get_term_by('name', $menu_option, 'nav_menu');
64 if ( $menu ){
65 delete_option('nestedpages_menu');
66 update_option('nestedpages_menu', $menu->term_id);
67 } else {
68 delete_option('nestedpages_menu');
69 $menu_id = wp_create_nav_menu('Nested Pages');
70 update_option('nestedpages_menu', $menu_id);
71 }
72 }
73 }
74
75
76 /**
77 * Make Page Post Type Enabled by Default
78 * @since 1.2.1
79 */
80 private function enablePagePostType()
81 {
82 if ( version_compare( $this->current_version, '1.3.0', '<' ) ){
83 $enabled = get_option('nestedpages_posttypes');
84 $default = array('page' => array(
85 'replace_menu' => true
86 ));
87 if ( !$enabled ) update_option('nestedpages_posttypes', $default);
88 }
89 }
90
91
92 /**
93 * Enable the Datepicker
94 */
95 private function enabledDatepicker()
96 {
97 if ( version_compare( $this->current_version, '1.3.1', '<' ) ){
98 $enabled = get_option('nestedpages_ui', false);
99 $default = array(
100 'datepicker' => 'true'
101 );
102 if ( !$enabled ) update_option('nestedpages_ui', $default);
103 }
104 }
105
106
107
108 }