Changeset 1182 in ExiteCMS for trunk/administration/panel_editor.php
- Timestamp:
- 12/25/07 17:32:57 (4 years ago)
- File:
-
- 1 edited
-
trunk/administration/panel_editor.php (modified) (10 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/administration/panel_editor.php
r1158 r1182 52 52 } 53 53 54 // make a list of all installed module panels54 // scan all installed modules and make a list of available panels 55 55 $panel_list = array(); 56 $result = dbquery("SELECT mod_folder FROM ".$db_prefix."modules WHERE mod_folder like '%_panel'"); 56 $current_folder = ""; 57 $result = dbquery("SELECT mod_folder FROM ".$db_prefix."modules ORDER BY mod_folder"); 57 58 while ($data = dbarray($result)) { 58 $panel_list[] = $data['mod_folder']; 59 } 60 sort($panel_list); array_unshift($panel_list, "none"); 59 // get the list of panel php files in the module directory 60 foreach(glob(PATH_MODULES.$data['mod_folder']."/*_panel.php") as $panelname) { 61 if ($data['mod_folder'] != $current_folder) { 62 $data['new_module'] = true; 63 $current_folder = $data['mod_folder']; 64 } else { 65 $data['new_module'] = false; 66 } 67 $data['selected'] = false; 68 $data['panel_name'] = basename($panelname, ".php"); 69 $data['panel_filename'] = $data['mod_folder']."/".$data['panel_name'].".php"; 70 $panel_list[] = $data; 71 } 72 } 73 array_unshift($panel_list, array('mod_folder' => "", 'new_module' => true, 'panel_name' => "", 'panel_filename' => "", 'selected' => false)); 61 74 62 75 if (isset($_POST['save'])) { 63 64 76 $error = ""; 65 77 $panel_usermod = $_POST['panel_usermod']; … … 67 79 $panel_name = stripinput($_POST['panel_name']); 68 80 if ($panel_name == "") $error .= $locale['470']."<br>"; 69 if ($_POST['panel_filename'] == " none") {81 if ($_POST['panel_filename'] == "") { 70 82 $panel_filename = ""; 71 83 $panel_code = addslash($_POST['panel_code']); … … 120 132 } 121 133 if ($panel_type == "dynamic" && $panel_template == "") $error .= $locale['472']."<br>"; 122 if ($panel_type == "file" && $panel_filename == " none") $error .= $locale['473']."<br>";134 if ($panel_type == "file" && $panel_filename == "") $error .= $locale['473']."<br>"; 123 135 if ($error == "") { 124 136 $result = dbquery("SELECT * FROM ".$db_prefix."panels WHERE panel_side='$panel_side'".($where!=""?(" AND ".$where):"")." ORDER BY panel_order DESC LIMIT 1"); … … 146 158 if (isset($_POST['preview'])) { 147 159 $panel_name = stripinput($_POST['panel_name']); 148 $panel_filename = $_POST['panel_filename'];160 $panel_filename = stripinput($_POST['panel_filename']); 149 161 $panel_code = isset($_POST['panel_code']) ? $_POST['panel_code'] : ""; 150 162 $panel_template = isset($_POST['panel_template']) ? $_POST['panel_template'] : ""; … … 157 169 $panel_code = stripslash($panel_code); 158 170 $panel_template = stripslash($panel_template); 159 if ($panel_filename == " none") {171 if ($panel_filename == "") { 160 172 $panel_type = "dynamic"; 161 173 eval($panel_code); … … 175 187 } else { 176 188 $panel_type = "file"; 177 @include PATH_MODULES.$panel_filename ."/".$panel_filename.".php";189 @include PATH_MODULES.$panel_filename; 178 190 if ($panel_side == 0) { 179 $template_panels[] = array('type' => 'header', 'name' => 'admin.panel_editor.preview', 'title' => $panel_name, 'state' => ($panel_state == 2 ? 0 : $panel_state), 'template' => "modules.". $panel_filename.".tpl");191 $template_panels[] = array('type' => 'header', 'name' => 'admin.panel_editor.preview', 'title' => $panel_name, 'state' => ($panel_state == 2 ? 0 : $panel_state), 'template' => "modules.".basename($panel_filename,".php").".tpl"); 180 192 } if ($panel_side == 1) { 181 $template_panels[] = array('type' => 'left', 'name' => 'admin.panel_editor.preview', 'title' => $panel_name, 'state' => ($panel_state == 2 ? 0 : $panel_state), 'template' => "modules.". $panel_filename.".tpl");193 $template_panels[] = array('type' => 'left', 'name' => 'admin.panel_editor.preview', 'title' => $panel_name, 'state' => ($panel_state == 2 ? 0 : $panel_state), 'template' => "modules.".basename($panel_filename,".php").".tpl"); 182 194 } elseif ($panel_side == 2) { 183 $template_panels[] = array('type' => 'upper', 'name' => 'admin.panel_editor.preview', 'title' => $panel_name, 'state' => ($panel_state == 2 ? 0 : $panel_state), 'template' => "modules.". $panel_filename.".tpl");195 $template_panels[] = array('type' => 'upper', 'name' => 'admin.panel_editor.preview', 'title' => $panel_name, 'state' => ($panel_state == 2 ? 0 : $panel_state), 'template' => "modules.".basename($panel_filename,".php").".tpl"); 184 196 } elseif ($panel_side == 3) { 185 $template_panels[] = array('type' => 'lower', 'name' => 'admin.panel_editor.preview', 'title' => $panel_name, 'state' => ($panel_state == 2 ? 0 : $panel_state), 'template' => "modules.". $panel_filename.".tpl");197 $template_panels[] = array('type' => 'lower', 'name' => 'admin.panel_editor.preview', 'title' => $panel_name, 'state' => ($panel_state == 2 ? 0 : $panel_state), 'template' => "modules.".basename($panel_filename,".php").".tpl"); 186 198 } elseif ($panel_side == 4) { 187 $template_panels[] = array('type' => 'right', 'name' => 'admin.panel_editor.preview', 'title' => $panel_name, 'state' => ($panel_state == 2 ? 0 : $panel_state), 'template' => "modules.". $panel_filename.".tpl");199 $template_panels[] = array('type' => 'right', 'name' => 'admin.panel_editor.preview', 'title' => $panel_name, 'state' => ($panel_state == 2 ? 0 : $panel_state), 'template' => "modules.".basename($panel_filename,".php").".tpl"); 188 200 } elseif ($panel_side == 5) { 189 $template_panels[] = array('type' => 'footer', 'name' => 'admin.panel_editor.preview', 'title' => $panel_name, 'state' => ($panel_state == 2 ? 0 : $panel_state), 'template' => "modules.". $panel_filename.".tpl");201 $template_panels[] = array('type' => 'footer', 'name' => 'admin.panel_editor.preview', 'title' => $panel_name, 'state' => ($panel_state == 2 ? 0 : $panel_state), 'template' => "modules.".basename($panel_filename,".php").".tpl"); 190 202 } 191 203 } … … 201 213 $data = dbarray($result); 202 214 $panel_name = $data['panel_name']; 215 $panel_type = $data['panel_type']; 203 216 $panel_filename = $data['panel_filename']; 217 if ($panel_type == "file" && @is_dir(PATH_MODULES.$panel_filename)) { 218 $panel_filename = $panel_filename."/".$panel_filename; 219 } 204 220 $panel_code = phpentities(stripslashes($data['panel_code'])); 205 221 $panel_template = phpentities(stripslashes($data['panel_template'])); 206 $panel_type = $data['panel_type'];207 222 $panel_access = $data['panel_access']; 208 223 $panel_side = $data['panel_side']; … … 218 233 $action = FUSION_SELF.$aidlink."&panel_id=$panel_id"; 219 234 $title = $locale['450']; 220 $panelon = "";221 $panelopts = "";235 // $panelon = ""; 236 // $panelopts = ""; 222 237 } else { 223 238 $action = FUSION_SELF.$aidlink; … … 237 252 } 238 253 } 254 255 // 256 foreach ($panel_list as $key => $value) { 257 if ($value['panel_filename'] == $panel_filename) { 258 $panel_list[$key]['selected'] = true; 259 break; 260 } 261 } 239 262 $variables['action'] = $action; 240 263 $variables['panel_id'] = isset($panel_id) ? $panel_id : 0; … … 251 274 $variables['panelopts'] = $panelopts; 252 275 $variables['panelon'] = $panelon; 253 276 // 254 277 $user_groups = getusergroups(); 255 278 $variables['user_groups'] = array();
Note: See TracChangeset
for help on using the changeset viewer.
