Completed
Push — master ( 382ca7...8138ff )
by Michael
02:05
created
class/Utility.php 1 patch
Indentation   +46 added lines, -46 removed lines patch added patch discarded remove patch
@@ -14,56 +14,56 @@
 block discarded – undo
14 14
  */
15 15
 class Utility
16 16
 {
17
-    use common\VersionChecks; //checkVerXoops, checkVerPhp Traits
17
+	use common\VersionChecks; //checkVerXoops, checkVerPhp Traits
18 18
 
19
-    use common\ServerStats; // getServerStats Trait
19
+	use common\ServerStats; // getServerStats Trait
20 20
 
21
-    use common\FilesManagement; // Files Management Trait
21
+	use common\FilesManagement; // Files Management Trait
22 22
 
23
-    // Права
24
-    /**
25
-     * @param string $permtype
26
-     * @return mixed
27
-     */
28
-    public static function getItemIds($permtype = 'instruction_view')
29
-    {
30
-        //global $xoopsUser;
31
-        static $permissions = [];
32
-        // Если есть в статике
33
-        if (is_array($permissions) && array_key_exists($permtype, $permissions)) {
34
-            return $permissions[$permtype];
35
-        }
36
-        // Находим из базы
37
-        $moduleHandler          = xoops_getHandler('module');
38
-        $instrModule            = $moduleHandler->getByDirname('instruction');
39
-        $groups                 = ($GLOBALS['xoopsUser'] instanceof \XoopsUser) ? $GLOBALS['xoopsUser']->getGroups() : XOOPS_GROUP_ANONYMOUS;
40
-        $gpermHandler           = xoops_getHandler('groupperm');
41
-        $categories             = $gpermHandler->getItemIds($permtype, $groups, $instrModule->getVar('mid'));
42
-        $permissions[$permtype] = $categories;
43
-        return $categories;
44
-    }
23
+	// Права
24
+	/**
25
+	 * @param string $permtype
26
+	 * @return mixed
27
+	 */
28
+	public static function getItemIds($permtype = 'instruction_view')
29
+	{
30
+		//global $xoopsUser;
31
+		static $permissions = [];
32
+		// Если есть в статике
33
+		if (is_array($permissions) && array_key_exists($permtype, $permissions)) {
34
+			return $permissions[$permtype];
35
+		}
36
+		// Находим из базы
37
+		$moduleHandler          = xoops_getHandler('module');
38
+		$instrModule            = $moduleHandler->getByDirname('instruction');
39
+		$groups                 = ($GLOBALS['xoopsUser'] instanceof \XoopsUser) ? $GLOBALS['xoopsUser']->getGroups() : XOOPS_GROUP_ANONYMOUS;
40
+		$gpermHandler           = xoops_getHandler('groupperm');
41
+		$categories             = $gpermHandler->getItemIds($permtype, $groups, $instrModule->getVar('mid'));
42
+		$permissions[$permtype] = $categories;
43
+		return $categories;
44
+	}
45 45
 
46
-    // Редактор
46
+	// Редактор
47 47
 
48
-    /**
49
-     * @param        $caption
50
-     * @param        $name
51
-     * @param string $value
52
-     * @return bool|\XoopsFormEditor
53
-     */
54
-    public static function getWysiwygForm($caption, $name, $value = '')
55
-    {
56
-        $editor                   = false;
57
-        $editor_configs           = [];
58
-        $editor_configs['name']   = $name;
59
-        $editor_configs['value']  = $value;
60
-        $editor_configs['rows']   = 35;
61
-        $editor_configs['cols']   = 60;
62
-        $editor_configs['width']  = '100%';
63
-        $editor_configs['height'] = '350px';
64
-        $editor_configs['editor'] = strtolower(xoops_getModuleOption('form_options', 'instruction'));
48
+	/**
49
+	 * @param        $caption
50
+	 * @param        $name
51
+	 * @param string $value
52
+	 * @return bool|\XoopsFormEditor
53
+	 */
54
+	public static function getWysiwygForm($caption, $name, $value = '')
55
+	{
56
+		$editor                   = false;
57
+		$editor_configs           = [];
58
+		$editor_configs['name']   = $name;
59
+		$editor_configs['value']  = $value;
60
+		$editor_configs['rows']   = 35;
61
+		$editor_configs['cols']   = 60;
62
+		$editor_configs['width']  = '100%';
63
+		$editor_configs['height'] = '350px';
64
+		$editor_configs['editor'] = strtolower(xoops_getModuleOption('form_options', 'instruction'));
65 65
 
66
-        $editor = new \XoopsFormEditor($caption, $name, $editor_configs);
67
-        return $editor;
68
-    }
66
+		$editor = new \XoopsFormEditor($caption, $name, $editor_configs);
67
+		return $editor;
68
+	}
69 69
 }
Please login to merge, or discard this patch.
class/Tree.php 1 patch
Indentation   +363 added lines, -363 removed lines patch added patch discarded remove patch
@@ -18,96 +18,96 @@  discard block
 block discarded – undo
18 18
  */
19 19
 class Tree extends \XoopsObjectTree
20 20
 {
21
-    //    public function __construct()
22
-    //    {
23
-    //    }
24
-
25
-    /**
26
-     * @param        $key
27
-     * @param        $ret
28
-     * @param        $prefix_orig
29
-     * @param        $objInsinstr
30
-     * @param string $class
31
-     * @param string $prefix_curr
32
-     */
33
-    public function _makePagesAdminOptions($key, &$ret, $prefix_orig, $objInsinstr, $class = 'odd', $prefix_curr = '')
34
-    {
35
-        if ($key > 0) {
36
-
37
-            //
38
-            $class = ('even' === $class) ? 'odd' : 'even';
39
-            // ID инструкции ( Можно сделать статической )
40
-            $instrid = $objInsinstr->getVar('instrid');
41
-
42
-            // ID страницы
43
-            $pageid = $this->tree[$key]['obj']->getVar('pageid');
44
-            // Название страницы
45
-            $pagetitle = $this->tree[$key]['obj']->getVar('title');
46
-            // Вес
47
-            $pageweight = $this->tree[$key]['obj']->getVar('weight');
48
-            // Статус
49
-            $pagestatus = $this->tree[$key]['obj']->getVar('status');
50
-            // Тип страницы
51
-            $pagetype = $this->tree[$key]['obj']->getVar('type');
52
-
53
-            // Дочернии страницы
54
-            $page_childs = $this->getAllChild($pageid);
55
-            // Число дочерних страниц
56
-            $num_childs = count($page_childs);
57
-
58
-            // Действие - удаление
59
-            $act_del = ($num_childs > 0) ? '<img src="../assets/icons/no_delete_mini.png" alt="' . _AM_INSTR_NODELPAGE . '" title="' . _AM_INSTR_NODELPAGE . '" />' : '<a href="instr.php?op=delpage&pageid='
60
-                                                                                                                                                                      . $pageid
61
-                                                                                                                                                                      . '"><img src="../assets/icons/delete_mini.png" alt="'
62
-                                                                                                                                                                      . _AM_INSTRUCTION_DEL
63
-                                                                                                                                                                      . '" title="'
64
-                                                                                                                                                                      . _AM_INSTRUCTION_DEL
65
-                                                                                                                                                                      . '"></a>';
66
-            //
67
-            $page_link = '<a name="pageid_' . $pageid . '" ' . ($pagetype ? 'href="' . XOOPS_URL . '/modules/' . INST_DIRNAME . '/page.php?id=' . $pageid . '#pagetext"' : '') . '>' . $pagetitle . '</a>';
68
-
69
-            $ret .= '<tr class="' . $class . '">
21
+	//    public function __construct()
22
+	//    {
23
+	//    }
24
+
25
+	/**
26
+	 * @param        $key
27
+	 * @param        $ret
28
+	 * @param        $prefix_orig
29
+	 * @param        $objInsinstr
30
+	 * @param string $class
31
+	 * @param string $prefix_curr
32
+	 */
33
+	public function _makePagesAdminOptions($key, &$ret, $prefix_orig, $objInsinstr, $class = 'odd', $prefix_curr = '')
34
+	{
35
+		if ($key > 0) {
36
+
37
+			//
38
+			$class = ('even' === $class) ? 'odd' : 'even';
39
+			// ID инструкции ( Можно сделать статической )
40
+			$instrid = $objInsinstr->getVar('instrid');
41
+
42
+			// ID страницы
43
+			$pageid = $this->tree[$key]['obj']->getVar('pageid');
44
+			// Название страницы
45
+			$pagetitle = $this->tree[$key]['obj']->getVar('title');
46
+			// Вес
47
+			$pageweight = $this->tree[$key]['obj']->getVar('weight');
48
+			// Статус
49
+			$pagestatus = $this->tree[$key]['obj']->getVar('status');
50
+			// Тип страницы
51
+			$pagetype = $this->tree[$key]['obj']->getVar('type');
52
+
53
+			// Дочернии страницы
54
+			$page_childs = $this->getAllChild($pageid);
55
+			// Число дочерних страниц
56
+			$num_childs = count($page_childs);
57
+
58
+			// Действие - удаление
59
+			$act_del = ($num_childs > 0) ? '<img src="../assets/icons/no_delete_mini.png" alt="' . _AM_INSTR_NODELPAGE . '" title="' . _AM_INSTR_NODELPAGE . '" />' : '<a href="instr.php?op=delpage&pageid='
60
+																																									  . $pageid
61
+																																									  . '"><img src="../assets/icons/delete_mini.png" alt="'
62
+																																									  . _AM_INSTRUCTION_DEL
63
+																																									  . '" title="'
64
+																																									  . _AM_INSTRUCTION_DEL
65
+																																									  . '"></a>';
66
+			//
67
+			$page_link = '<a name="pageid_' . $pageid . '" ' . ($pagetype ? 'href="' . XOOPS_URL . '/modules/' . INST_DIRNAME . '/page.php?id=' . $pageid . '#pagetext"' : '') . '>' . $pagetitle . '</a>';
68
+
69
+			$ret .= '<tr class="' . $class . '">
70 70
       <td>' . $prefix_curr . ' ' . $page_link . '</td>
71 71
       <td align="center" width="50">
72 72
         <input type="text" name="weights[]" size="2" value="' . $pageweight . '" />
73 73
         <input type="hidden" name="pageids[]" value="' . $pageid . '" />
74 74
       </td>
75 75
       <td align="center" width="180">';
76
-            // Просмотре без кэша
77
-            $ret .= ' <a href="' . XOOPS_URL . '/modules/' . INST_DIRNAME . '/page.php?id=' . $pageid . '&amp;nocache=1"><img src="../assets/icons/no_cache.png" alt="' . _AM_INSTR_DISPLAY_NOCACHE . '" title="' . _AM_INSTR_DISPLAY_NOCACHE . '" /></a> ';
78
-            // Добавить подстраницу
79
-            $ret .= ' <a href="instr.php?op=editpage&instrid=' . $instrid . '&pid=' . $pageid . '"><img src="../assets/icons/add_mini.png" alt="' . _AM_INSTRUCTION_ADDSUBPAGE . '" title="' . _AM_INSTRUCTION_ADDSUBPAGE . '" /></a> ';
80
-
81
-            if ($pagestatus) {
82
-                $ret .= ' <img src="../assets/icons/lock_mini.png" alt="' . _AM_INSTRUCTION_LOCK . '" title="' . _AM_INSTRUCTION_LOCK . '"> ';
83
-            } else {
84
-                $ret .= ' <img src="../assets/icons/unlock_mini.png" alt="' . _AM_INSTRUCTION_UNLOCK . '" title="' . _AM_INSTRUCTION_UNLOCK . '"> ';
85
-            }
86
-
87
-            $ret .= ' <a href="instr.php?op=editpage&pageid=' . $pageid . '"><img src="../assets/icons/edit_mini.png" alt="' . _AM_INSTRUCTION_EDIT . '" title="' . _AM_INSTRUCTION_EDIT . '"></a> ' . $act_del . '
76
+			// Просмотре без кэша
77
+			$ret .= ' <a href="' . XOOPS_URL . '/modules/' . INST_DIRNAME . '/page.php?id=' . $pageid . '&amp;nocache=1"><img src="../assets/icons/no_cache.png" alt="' . _AM_INSTR_DISPLAY_NOCACHE . '" title="' . _AM_INSTR_DISPLAY_NOCACHE . '" /></a> ';
78
+			// Добавить подстраницу
79
+			$ret .= ' <a href="instr.php?op=editpage&instrid=' . $instrid . '&pid=' . $pageid . '"><img src="../assets/icons/add_mini.png" alt="' . _AM_INSTRUCTION_ADDSUBPAGE . '" title="' . _AM_INSTRUCTION_ADDSUBPAGE . '" /></a> ';
80
+
81
+			if ($pagestatus) {
82
+				$ret .= ' <img src="../assets/icons/lock_mini.png" alt="' . _AM_INSTRUCTION_LOCK . '" title="' . _AM_INSTRUCTION_LOCK . '"> ';
83
+			} else {
84
+				$ret .= ' <img src="../assets/icons/unlock_mini.png" alt="' . _AM_INSTRUCTION_UNLOCK . '" title="' . _AM_INSTRUCTION_UNLOCK . '"> ';
85
+			}
86
+
87
+			$ret .= ' <a href="instr.php?op=editpage&pageid=' . $pageid . '"><img src="../assets/icons/edit_mini.png" alt="' . _AM_INSTRUCTION_EDIT . '" title="' . _AM_INSTRUCTION_EDIT . '"></a> ' . $act_del . '
88 88
       </td>
89 89
     </tr>';
90 90
 
91
-            // Устанавливаем префикс
92
-            $prefix_curr .= $prefix_orig;
93
-        }
94
-
95
-        if (isset($this->tree[$key]['child']) && !empty($this->tree[$key]['child'])) {
96
-            foreach ($this->tree[$key]['child'] as $childkey) {
97
-                $this->_makePagesAdminOptions($childkey, $ret, $prefix_orig, $objInsinstr, $class, $prefix_curr);
98
-            }
99
-        }
100
-    }
101
-
102
-    /**
103
-     * @param        $objInsinstr
104
-     * @param string $prefix
105
-     * @param int    $key
106
-     * @return string
107
-     */
108
-    public function makePagesAdmin(&$objInsinstr, $prefix = '-', $key = 0)
109
-    {
110
-        $ret = '<form name="inspages" action="instr.php" method="post">
91
+			// Устанавливаем префикс
92
+			$prefix_curr .= $prefix_orig;
93
+		}
94
+
95
+		if (isset($this->tree[$key]['child']) && !empty($this->tree[$key]['child'])) {
96
+			foreach ($this->tree[$key]['child'] as $childkey) {
97
+				$this->_makePagesAdminOptions($childkey, $ret, $prefix_orig, $objInsinstr, $class, $prefix_curr);
98
+			}
99
+		}
100
+	}
101
+
102
+	/**
103
+	 * @param        $objInsinstr
104
+	 * @param string $prefix
105
+	 * @param int    $key
106
+	 * @return string
107
+	 */
108
+	public function makePagesAdmin(&$objInsinstr, $prefix = '-', $key = 0)
109
+	{
110
+		$ret = '<form name="inspages" action="instr.php" method="post">
111 111
   <table width="100%" cellspacing="1" class="outer">
112 112
     <tr>
113 113
       <th align="center" colspan="3">' . sprintf(_AM_INSTRUCTION_LISTPAGESININSTR, $objInsinstr->getVar('title')) . '</th>
@@ -118,10 +118,10 @@  discard block
 block discarded – undo
118 118
       <td class="head" align="center" width="180">' . _AM_INSTRUCTION_ACTION . '</td>
119 119
     </tr>';
120 120
 
121
-        // Выводим все страницы
122
-        $this->_makePagesAdminOptions($key, $ret, $prefix, $objInsinstr);
121
+		// Выводим все страницы
122
+		$this->_makePagesAdminOptions($key, $ret, $prefix, $objInsinstr);
123 123
 
124
-        $ret .= '<tr class="foot">
124
+		$ret .= '<tr class="foot">
125 125
       <td><a href="instr.php?op=editpage&instrid=' . $objInsinstr->getVar('instrid') . '"><img src="../assets/icons/add_mini.png" alt="' . _AM_INSTRUCTION_ADDPAGE . '" title="' . _AM_INSTRUCTION_ADDPAGE . '"></a></td>
126 126
       <td colspan="2">
127 127
         <input type="hidden" name="instrid" value="' . $objInsinstr->getVar('instrid') . '" />
@@ -132,60 +132,60 @@  discard block
 block discarded – undo
132 132
   </table>
133 133
 </form>';
134 134
 
135
-        return $ret;
136
-    }
137
-
138
-    // ==================================
139
-    // === Дерево категорий в админке ===
140
-    // ==================================
141
-
142
-    /**
143
-     * @param        $key
144
-     * @param        $ret
145
-     * @param        $prefix_orig
146
-     * @param array  $cidinstrids
147
-     * @param string $class
148
-     * @param string $prefix_curr
149
-     */
150
-    public function _makeCatsAdminOptions($key, &$ret, $prefix_orig, $cidinstrids = [], &$class = 'odd', $prefix_curr = '')
151
-    {
152
-        if ($key > 0) {
153
-
154
-            //
155
-            $class = ('even' === $class) ? 'odd' : 'even';
156
-
157
-            // ID категории
158
-            $catid = $this->tree[$key]['obj']->getVar('cid');
159
-            // Название категории
160
-            $cattitle = $this->tree[$key]['obj']->getVar('title');
161
-            // Вес
162
-            $catweight = $this->tree[$key]['obj']->getVar('weight');
163
-            // Статус
164
-            $pagestatus = $this->tree[$key]['obj']->getVar('status');
165
-
166
-            // Дочернии категории
167
-            $cat_childs = $this->getAllChild($catid);
168
-            // Число дочерних категорий
169
-            $num_childs = count($cat_childs);
170
-            // Число инструкций
171
-            $num_instrs = isset($cidinstrids[$catid]) ? $cidinstrids[$catid] : 0;
172
-
173
-            // Действие - удаление
174
-            $act_del = (($num_instrs > 0) || ($num_childs > 0)) ? '<img src="../assets/icons/no_delete_mini.png" alt="' . _AM_INSTR_NODELCAT . '" title="' . _AM_INSTR_NODELCAT . '" />' : '<a href="cat.php?op=delcat&cid='
175
-                                                                                                                                                                                           . $catid
176
-                                                                                                                                                                                           . '"><img src="../assets/icons/delete_mini.png" alt="'
177
-                                                                                                                                                                                           . _AM_INSTRUCTION_DEL
178
-                                                                                                                                                                                           . '" title="'
179
-                                                                                                                                                                                           . _AM_INSTRUCTION_DEL
180
-                                                                                                                                                                                           . '" /></a>';
181
-            // Действие - просмотр
182
-            $act_view = ($num_instrs > 0) ? '<a href="instr.php?cid=' . $catid . '"><img src="../assets/icons/view_mini.png" alt="' . _AM_INSTR_VIEWINSTR . '" title="' . _AM_INSTR_VIEWINSTR . '" /></a>' : '<img src="../assets/icons/no_view_mini.png" alt="'
183
-                                                                                                                                                                                                             . _AM_INSTR_NOVIEWINSTR
184
-                                                                                                                                                                                                             . '" title="'
185
-                                                                                                                                                                                                             . _AM_INSTR_NOVIEWINSTR
186
-                                                                                                                                                                                                             . '" />';
187
-
188
-            $ret .= '<tr class="' . $class . '">
135
+		return $ret;
136
+	}
137
+
138
+	// ==================================
139
+	// === Дерево категорий в админке ===
140
+	// ==================================
141
+
142
+	/**
143
+	 * @param        $key
144
+	 * @param        $ret
145
+	 * @param        $prefix_orig
146
+	 * @param array  $cidinstrids
147
+	 * @param string $class
148
+	 * @param string $prefix_curr
149
+	 */
150
+	public function _makeCatsAdminOptions($key, &$ret, $prefix_orig, $cidinstrids = [], &$class = 'odd', $prefix_curr = '')
151
+	{
152
+		if ($key > 0) {
153
+
154
+			//
155
+			$class = ('even' === $class) ? 'odd' : 'even';
156
+
157
+			// ID категории
158
+			$catid = $this->tree[$key]['obj']->getVar('cid');
159
+			// Название категории
160
+			$cattitle = $this->tree[$key]['obj']->getVar('title');
161
+			// Вес
162
+			$catweight = $this->tree[$key]['obj']->getVar('weight');
163
+			// Статус
164
+			$pagestatus = $this->tree[$key]['obj']->getVar('status');
165
+
166
+			// Дочернии категории
167
+			$cat_childs = $this->getAllChild($catid);
168
+			// Число дочерних категорий
169
+			$num_childs = count($cat_childs);
170
+			// Число инструкций
171
+			$num_instrs = isset($cidinstrids[$catid]) ? $cidinstrids[$catid] : 0;
172
+
173
+			// Действие - удаление
174
+			$act_del = (($num_instrs > 0) || ($num_childs > 0)) ? '<img src="../assets/icons/no_delete_mini.png" alt="' . _AM_INSTR_NODELCAT . '" title="' . _AM_INSTR_NODELCAT . '" />' : '<a href="cat.php?op=delcat&cid='
175
+																																														   . $catid
176
+																																														   . '"><img src="../assets/icons/delete_mini.png" alt="'
177
+																																														   . _AM_INSTRUCTION_DEL
178
+																																														   . '" title="'
179
+																																														   . _AM_INSTRUCTION_DEL
180
+																																														   . '" /></a>';
181
+			// Действие - просмотр
182
+			$act_view = ($num_instrs > 0) ? '<a href="instr.php?cid=' . $catid . '"><img src="../assets/icons/view_mini.png" alt="' . _AM_INSTR_VIEWINSTR . '" title="' . _AM_INSTR_VIEWINSTR . '" /></a>' : '<img src="../assets/icons/no_view_mini.png" alt="'
183
+																																																			 . _AM_INSTR_NOVIEWINSTR
184
+																																																			 . '" title="'
185
+																																																			 . _AM_INSTR_NOVIEWINSTR
186
+																																																			 . '" />';
187
+
188
+			$ret .= '<tr class="' . $class . '">
189 189
       <td>' . $prefix_curr . ' <a href="' . XOOPS_URL . '/modules/' . INST_DIRNAME . '/index.php?cid=' . $catid . '">' . $cattitle . '</a></td>
190 190
       <td align="center" width="50">' . $catweight . '</td>
191 191
       <td align="center" width="100">' . $num_instrs . '</td>
@@ -196,26 +196,26 @@  discard block
 block discarded – undo
196 196
       </td>
197 197
     </tr>';
198 198
 
199
-            // Устанавливаем префикс
200
-            $prefix_curr .= $prefix_orig;
201
-        }
202
-
203
-        if (isset($this->tree[$key]['child']) && !empty($this->tree[$key]['child'])) {
204
-            foreach ($this->tree[$key]['child'] as $childkey) {
205
-                $this->_makeCatsAdminOptions($childkey, $ret, $prefix_orig, $cidinstrids, $class, $prefix_curr);
206
-            }
207
-        }
208
-    }
209
-
210
-    /**
211
-     * @param string $prefix
212
-     * @param array  $cidinstrids
213
-     * @param int    $key
214
-     * @return string
215
-     */
216
-    public function makeCatsAdmin($prefix = '-', $cidinstrids = [], $key = 0)
217
-    {
218
-        $ret = '<table width="100%" cellspacing="1" class="outer">
199
+			// Устанавливаем префикс
200
+			$prefix_curr .= $prefix_orig;
201
+		}
202
+
203
+		if (isset($this->tree[$key]['child']) && !empty($this->tree[$key]['child'])) {
204
+			foreach ($this->tree[$key]['child'] as $childkey) {
205
+				$this->_makeCatsAdminOptions($childkey, $ret, $prefix_orig, $cidinstrids, $class, $prefix_curr);
206
+			}
207
+		}
208
+	}
209
+
210
+	/**
211
+	 * @param string $prefix
212
+	 * @param array  $cidinstrids
213
+	 * @param int    $key
214
+	 * @return string
215
+	 */
216
+	public function makeCatsAdmin($prefix = '-', $cidinstrids = [], $key = 0)
217
+	{
218
+		$ret = '<table width="100%" cellspacing="1" class="outer">
219 219
     <tr>
220 220
       <th align="center" colspan="4">' . _AM_INSTR_LISTALLCATS . '</th>
221 221
     </tr>
@@ -226,216 +226,216 @@  discard block
 block discarded – undo
226 226
       <td class="head" align="center" width="150">' . _AM_INSTRUCTION_ACTION . '</td>
227 227
     </tr>';
228 228
 
229
-        // Выводим все страницы
230
-        $this->_makeCatsAdminOptions($key, $ret, $prefix, $cidinstrids);
231
-
232
-        $ret .= '</table>';
233
-
234
-        return $ret;
235
-    }
236
-
237
-    // ======================================
238
-    // Список страниц на стороне пользователя
239
-    // ======================================
240
-
241
-    /**
242
-     * @param       $key
243
-     * @param       $ret
244
-     * @param int   $currpageid
245
-     * @param array $lastpageids
246
-     * @param int   $level
247
-     */
248
-    public function _makePagesUserTree($key, &$ret, $currpageid = 0, &$lastpageids = [], $level = 0)
249
-    {
250
-
251
-        // Сохраняем значение предыдущей страницы
252
-        //static $stat_prevpages;
253
-
254
-        if ($key > 0) {
255
-
256
-            // ID страницы
257
-            $pageid = $this->tree[$key]['obj']->getVar('pageid');
258
-            // Название страницы
259
-            $pagetitle = $this->tree[$key]['obj']->getVar('title');
260
-            // Тип страницы
261
-            $pagetype = $this->tree[$key]['obj']->getVar('type');
262
-
263
-            // Дочернии категории
264
-            $page_childs = $this->getAllChild($pageid);
265
-            // Число дочерних страниц
266
-            $num_childs = count($page_childs);
267
-
268
-            // Генерируем класс
269
-            // InstrTreeNode InstrTreeIsRoot InstrTreeExpandClosed InstrTreeIsLast
270
-            $class = [];
271
-            // Данный класс должен быть у любого узла
272
-            $class[] = 'InstrTreeNode';
273
-            // Если узел нулевого уровня, добавляем InstrTreeIsRoot
274
-            if (0 === $level) {
275
-                $class[] = 'InstrTreeIsRoot';
276
-            }
277
-            // Тип узла InstrTreeExpandClosed|InstrTreeExpandLeaf
278
-            // Если у узла нет потомков - InstrTreeExpandLeaf
279
-            if (0 == $num_childs) {
280
-                $class[] = 'InstrTreeExpandLeaf';
281
-                // Если у искомого элемента есть потомки - открываем список
282
-            } elseif ($currpageid == $pageid) {
283
-                $class[] = 'InstrTreeExpandOpen';
284
-                // Если искомый элемент есть в потомках текущего, то ставим класс InstrTreeExpandOpen
285
-            } elseif (array_key_exists($currpageid, $page_childs)) {
286
-                $class[] = 'InstrTreeExpandOpen';
287
-                //
288
-            } else {
289
-                $class[] = 'InstrTreeExpandClosed';
290
-            }
291
-
292
-            // Данный класс нужно добавлять последнему узлу в каждом уровне
293
-
294
-            if (isset($lastpageids[$level]) && ($pageid == $lastpageids[$level])) {
295
-                $class[] = 'InstrTreeIsLast';
296
-            }
297
-
298
-            //$class[] = 'InstrTreeIsLast';
299
-
300
-            // Test
301
-            //$ret .= '<div id="' . $pageid . '">';
302
-
303
-            // Создаём запись
304
-            $ret .= '<li class="' . implode(' ', $class) . '">';
305
-            //
306
-            $ret .= '<div class="InstrTreeExpand"></div>';
307
-            //
308
-            $ret .= '<div class="InstrTreeContent">';
309
-
310
-            // Если это лист дерева
311
-            if (0 == $pagetype) {
312
-                $ret .= '<span class="InstrTreeEmptyPage">' . $pagetitle . '</span>';
313
-                //
314
-            } elseif ($currpageid == $pageid) {
315
-                $ret .= $pagetitle;
316
-                //
317
-            } else {
318
-                $ret .= '<a href="' . XOOPS_URL . '/modules/' . INST_DIRNAME . '/page.php?id=' . $pageid . '#pagetext">' . $pagetitle . '</a>';
319
-            }
320
-
321
-            $ret .= '</div>';
322
-
323
-            // Если есть потомки
324
-            if ($num_childs > 0) {
325
-                $ret .= '<ul class="InstrTreeContainer">';
326
-            }
327
-
328
-            // Инкримент уровня
329
-            $level++;
330
-        }
331
-
332
-        // Рекурсия
333
-        if (isset($this->tree[$key]['child']) && !empty($this->tree[$key]['child'])) {
334
-            foreach ($this->tree[$key]['child'] as $childkey) {
335
-                $this->_makePagesUserTree($childkey, $ret, $currpageid, $lastpageids, $level);
336
-            }
337
-        }
338
-
339
-        // Test
340
-        if ($key > 0) {
341
-            // Если есть потомки
342
-            if ($num_childs > 0) {
343
-                $ret .= '</ul>';
344
-            }
345
-            // Конец текущей записи
346
-            $ret .= '</li>';
347
-        }
348
-    }
349
-
350
-    // Находим предыдущую и следующую страницы.
351
-    // Находим последнии страницы на каждом уровне.
352
-    /**
353
-     * @param       $key
354
-     * @param int   $currpageid
355
-     * @param array $prevpages
356
-     * @param array $nextpages
357
-     * @param array $lastpageids
358
-     * @param int   $level
359
-     */
360
-    public function _makePagesUserCalc($key, $currpageid = 0, &$prevpages = [], &$nextpages = [], &$lastpageids = [], $level = 0)
361
-    {
362
-
363
-        // Сохраняем значение предыдущей страницы
364
-        static $stat_prevpages;
365
-
366
-        if ($key > 0) {
367
-            // ID страницы
368
-            $pageid = $this->tree[$key]['obj']->getVar('pageid');
369
-            // Название страницы
370
-            $pagetitle = $this->tree[$key]['obj']->getVar('title');
371
-            // Тип страницы
372
-            $pagetype = $this->tree[$key]['obj']->getVar('type');
373
-
374
-            // Если мы передали ID текущей страницы, то находить предыдудую и следующую страницы
375
-            // Не находить предыдущие и следующие для "Пустой страницы"
376
-            if ($currpageid && $pagetype) {
377
-                // Если элемент равен текущей странице
378
-                if (null !== $stat_prevpages && ($currpageid == $pageid)) {
379
-                    // Забиваем массив предыдущей страницы
380
-                    $prevpages['pageid'] = $stat_prevpages['pageid'];
381
-                    $prevpages['title']  = $stat_prevpages['title'];
382
-
383
-                    // Если предыдущий равен текущей странице
384
-                } elseif (null !== $stat_prevpages && ($currpageid == $stat_prevpages['pageid'])) {
385
-                    // Забиваем массив следующей страницы
386
-                    $nextpages['pageid'] = $pageid;
387
-                    $nextpages['title']  = $pagetitle;
388
-                }
389
-                // Заносим текущие данные в массив предыдущей страницы
390
-                $stat_prevpages['pageid'] = $pageid;
391
-                $stat_prevpages['title']  = $pagetitle;
392
-            }
393
-
394
-            // Заносим текущую страницу в массив "последних страний"
395
-            $lastpageids[$level] = $pageid;
396
-
397
-            // Инкримент уровня
398
-            $level++;
399
-        }
400
-
401
-        // Рекурсия
402
-        if (isset($this->tree[$key]['child']) && !empty($this->tree[$key]['child'])) {
403
-            foreach ($this->tree[$key]['child'] as $childkey) {
404
-                $this->_makePagesUserCalc($childkey, $currpageid, $prevpages, $nextpages, $lastpageids, $level);
405
-            }
406
-        }
407
-    }
408
-
409
-    //
410
-
411
-    /**
412
-     * @param int   $currpageid
413
-     * @param array $prevpages
414
-     * @param array $nextpages
415
-     * @param int   $key
416
-     * @return string
417
-     */
418
-    public function makePagesUser($currpageid = 0, &$prevpages = [], &$nextpages = [], $key = 0)
419
-    {
420
-
421
-        // Массив последней страницы на каждом уровне
422
-        // level => pageid
423
-        $lastpageids = [];
424
-
425
-        // Расчёт
426
-        $this->_makePagesUserCalc($key, $currpageid, $prevpages, $nextpages, $lastpageids);
427
-
428
-        $ret = '<div onclick="instr_tree_toggle(arguments[0])">
229
+		// Выводим все страницы
230
+		$this->_makeCatsAdminOptions($key, $ret, $prefix, $cidinstrids);
231
+
232
+		$ret .= '</table>';
233
+
234
+		return $ret;
235
+	}
236
+
237
+	// ======================================
238
+	// Список страниц на стороне пользователя
239
+	// ======================================
240
+
241
+	/**
242
+	 * @param       $key
243
+	 * @param       $ret
244
+	 * @param int   $currpageid
245
+	 * @param array $lastpageids
246
+	 * @param int   $level
247
+	 */
248
+	public function _makePagesUserTree($key, &$ret, $currpageid = 0, &$lastpageids = [], $level = 0)
249
+	{
250
+
251
+		// Сохраняем значение предыдущей страницы
252
+		//static $stat_prevpages;
253
+
254
+		if ($key > 0) {
255
+
256
+			// ID страницы
257
+			$pageid = $this->tree[$key]['obj']->getVar('pageid');
258
+			// Название страницы
259
+			$pagetitle = $this->tree[$key]['obj']->getVar('title');
260
+			// Тип страницы
261
+			$pagetype = $this->tree[$key]['obj']->getVar('type');
262
+
263
+			// Дочернии категории
264
+			$page_childs = $this->getAllChild($pageid);
265
+			// Число дочерних страниц
266
+			$num_childs = count($page_childs);
267
+
268
+			// Генерируем класс
269
+			// InstrTreeNode InstrTreeIsRoot InstrTreeExpandClosed InstrTreeIsLast
270
+			$class = [];
271
+			// Данный класс должен быть у любого узла
272
+			$class[] = 'InstrTreeNode';
273
+			// Если узел нулевого уровня, добавляем InstrTreeIsRoot
274
+			if (0 === $level) {
275
+				$class[] = 'InstrTreeIsRoot';
276
+			}
277
+			// Тип узла InstrTreeExpandClosed|InstrTreeExpandLeaf
278
+			// Если у узла нет потомков - InstrTreeExpandLeaf
279
+			if (0 == $num_childs) {
280
+				$class[] = 'InstrTreeExpandLeaf';
281
+				// Если у искомого элемента есть потомки - открываем список
282
+			} elseif ($currpageid == $pageid) {
283
+				$class[] = 'InstrTreeExpandOpen';
284
+				// Если искомый элемент есть в потомках текущего, то ставим класс InstrTreeExpandOpen
285
+			} elseif (array_key_exists($currpageid, $page_childs)) {
286
+				$class[] = 'InstrTreeExpandOpen';
287
+				//
288
+			} else {
289
+				$class[] = 'InstrTreeExpandClosed';
290
+			}
291
+
292
+			// Данный класс нужно добавлять последнему узлу в каждом уровне
293
+
294
+			if (isset($lastpageids[$level]) && ($pageid == $lastpageids[$level])) {
295
+				$class[] = 'InstrTreeIsLast';
296
+			}
297
+
298
+			//$class[] = 'InstrTreeIsLast';
299
+
300
+			// Test
301
+			//$ret .= '<div id="' . $pageid . '">';
302
+
303
+			// Создаём запись
304
+			$ret .= '<li class="' . implode(' ', $class) . '">';
305
+			//
306
+			$ret .= '<div class="InstrTreeExpand"></div>';
307
+			//
308
+			$ret .= '<div class="InstrTreeContent">';
309
+
310
+			// Если это лист дерева
311
+			if (0 == $pagetype) {
312
+				$ret .= '<span class="InstrTreeEmptyPage">' . $pagetitle . '</span>';
313
+				//
314
+			} elseif ($currpageid == $pageid) {
315
+				$ret .= $pagetitle;
316
+				//
317
+			} else {
318
+				$ret .= '<a href="' . XOOPS_URL . '/modules/' . INST_DIRNAME . '/page.php?id=' . $pageid . '#pagetext">' . $pagetitle . '</a>';
319
+			}
320
+
321
+			$ret .= '</div>';
322
+
323
+			// Если есть потомки
324
+			if ($num_childs > 0) {
325
+				$ret .= '<ul class="InstrTreeContainer">';
326
+			}
327
+
328
+			// Инкримент уровня
329
+			$level++;
330
+		}
331
+
332
+		// Рекурсия
333
+		if (isset($this->tree[$key]['child']) && !empty($this->tree[$key]['child'])) {
334
+			foreach ($this->tree[$key]['child'] as $childkey) {
335
+				$this->_makePagesUserTree($childkey, $ret, $currpageid, $lastpageids, $level);
336
+			}
337
+		}
338
+
339
+		// Test
340
+		if ($key > 0) {
341
+			// Если есть потомки
342
+			if ($num_childs > 0) {
343
+				$ret .= '</ul>';
344
+			}
345
+			// Конец текущей записи
346
+			$ret .= '</li>';
347
+		}
348
+	}
349
+
350
+	// Находим предыдущую и следующую страницы.
351
+	// Находим последнии страницы на каждом уровне.
352
+	/**
353
+	 * @param       $key
354
+	 * @param int   $currpageid
355
+	 * @param array $prevpages
356
+	 * @param array $nextpages
357
+	 * @param array $lastpageids
358
+	 * @param int   $level
359
+	 */
360
+	public function _makePagesUserCalc($key, $currpageid = 0, &$prevpages = [], &$nextpages = [], &$lastpageids = [], $level = 0)
361
+	{
362
+
363
+		// Сохраняем значение предыдущей страницы
364
+		static $stat_prevpages;
365
+
366
+		if ($key > 0) {
367
+			// ID страницы
368
+			$pageid = $this->tree[$key]['obj']->getVar('pageid');
369
+			// Название страницы
370
+			$pagetitle = $this->tree[$key]['obj']->getVar('title');
371
+			// Тип страницы
372
+			$pagetype = $this->tree[$key]['obj']->getVar('type');
373
+
374
+			// Если мы передали ID текущей страницы, то находить предыдудую и следующую страницы
375
+			// Не находить предыдущие и следующие для "Пустой страницы"
376
+			if ($currpageid && $pagetype) {
377
+				// Если элемент равен текущей странице
378
+				if (null !== $stat_prevpages && ($currpageid == $pageid)) {
379
+					// Забиваем массив предыдущей страницы
380
+					$prevpages['pageid'] = $stat_prevpages['pageid'];
381
+					$prevpages['title']  = $stat_prevpages['title'];
382
+
383
+					// Если предыдущий равен текущей странице
384
+				} elseif (null !== $stat_prevpages && ($currpageid == $stat_prevpages['pageid'])) {
385
+					// Забиваем массив следующей страницы
386
+					$nextpages['pageid'] = $pageid;
387
+					$nextpages['title']  = $pagetitle;
388
+				}
389
+				// Заносим текущие данные в массив предыдущей страницы
390
+				$stat_prevpages['pageid'] = $pageid;
391
+				$stat_prevpages['title']  = $pagetitle;
392
+			}
393
+
394
+			// Заносим текущую страницу в массив "последних страний"
395
+			$lastpageids[$level] = $pageid;
396
+
397
+			// Инкримент уровня
398
+			$level++;
399
+		}
400
+
401
+		// Рекурсия
402
+		if (isset($this->tree[$key]['child']) && !empty($this->tree[$key]['child'])) {
403
+			foreach ($this->tree[$key]['child'] as $childkey) {
404
+				$this->_makePagesUserCalc($childkey, $currpageid, $prevpages, $nextpages, $lastpageids, $level);
405
+			}
406
+		}
407
+	}
408
+
409
+	//
410
+
411
+	/**
412
+	 * @param int   $currpageid
413
+	 * @param array $prevpages
414
+	 * @param array $nextpages
415
+	 * @param int   $key
416
+	 * @return string
417
+	 */
418
+	public function makePagesUser($currpageid = 0, &$prevpages = [], &$nextpages = [], $key = 0)
419
+	{
420
+
421
+		// Массив последней страницы на каждом уровне
422
+		// level => pageid
423
+		$lastpageids = [];
424
+
425
+		// Расчёт
426
+		$this->_makePagesUserCalc($key, $currpageid, $prevpages, $nextpages, $lastpageids);
427
+
428
+		$ret = '<div onclick="instr_tree_toggle(arguments[0])">
429 429
 <div>' . _MD_INSTRUCTION_LISTPAGES . '</div>
430 430
 <div><ul class="InstrTreeContainer">';
431 431
 
432
-        // Генерируем дерево
433
-        $this->_makePagesUserTree($key, $ret, $currpageid, $lastpageids);
432
+		// Генерируем дерево
433
+		$this->_makePagesUserTree($key, $ret, $currpageid, $lastpageids);
434 434
 
435
-        $ret .= '</ul>
435
+		$ret .= '</ul>
436 436
 </div>
437 437
 </div>';
438 438
 
439
-        return $ret;
440
-    }
439
+		return $ret;
440
+	}
441 441
 }
Please login to merge, or discard this patch.