XOOPS  2.6.0
main.php
Go to the documentation of this file.
1 <?php
2 /*
3  You may not change or alter any portion of this comment or credits
4  of supporting developers from this source code or any supporting source code
5  which is considered copyrighted (c) material of the original comment or credit authors.
6 
7  This program is distributed in the hope that it will be useful,
8  but WITHOUT ANY WARRANTY; without even the implied warranty of
9  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
10 */
11 
15 
27 // Get main instance
31 
32 // Check users rights
33 if (!$xoops->isUser() || !$xoops->isModule() || !$xoops->user->isAdmin($xoops->module->mid())) {
35 }
36 
37 // Get Action type
38 $op = $system->cleanVars($_REQUEST, 'op', 'list', 'string');
39 
40 $filter = $system->cleanVars($_GET, 'filter', 0, 'int');
41 if ($filter) {
42  $method = $_GET;
43 } else {
44  $method = $_REQUEST;
45 }
46 
47 $selmod = $selgen = $selgrp = $selvis = null;
48 $sel = array(
49  'selmod' => -2,
50  'selgen' => -1,
51  'selgrp' => FixedGroups::USERS,
52  'selvis' => -1
53 );
54 foreach ($sel as $key => $value) {
55  $_{$key} = isset($_COOKIE[$key]) ? intval($_COOKIE[$key]) : $value;
56  ${$key} = $system->cleanVars($method, $key, $_{$key}, 'int');
57  setcookie($key, ${$key});
58 }
59 
60 $type = $system->cleanVars($method, 'type', '', 'string');
61 if ($type == 'preview') {
62  $op = 'preview';
63 }
64 
65 if (isset($_GET['op'])) {
66  if ($_GET['op'] == "edit" || $_GET['op'] == "delete" || $_GET['op'] == "delete_ok" || $_GET['op'] == "clone") {
67  $op = $_GET['op'];
68  $bid = isset($_GET['bid']) ? intval($_GET['bid']) : 0;
69  }
70 }
71 
72 switch ($op) {
73 
74  case 'list':
75  // Call Header
76  $xoops->header('admin:system/system_blocks.tpl');
77  // Define Stylesheet
78  $xoops->theme()->addStylesheet('modules/system/css/admin.css');
79  // Define scripts
80  $xoops->theme()->addScript('modules/system/js/admin.js');
81  $xoops->theme()->addScript('modules/system/js/blocks.js');
82  // Define Breadcrumb and tips
83  $admin_page = new \Xoops\Module\Admin();
84  $admin_page->addBreadcrumbLink(SystemLocale::CONTROL_PANEL, \XoopsBaseConfig::get('url') . '/admin.php', true);
85  $admin_page->addBreadcrumbLink(
87  $system->adminVersion('blocksadmin', 'adminpath')
88  );
89  $admin_page->addBreadcrumbLink(SystemLocale::MANAGE_BLOCKS);
90  $admin_page->renderBreadcrumb();
91  $admin_page->addItemButton(SystemLocale::ADD_BLOCK, 'admin.php?fct=blocksadmin&amp;op=add', 'add');
92  $admin_page->renderButton();
93  $admin_page->addTips(sprintf(
95  system_AdminIcons('block.png'),
96  system_AdminIcons('success.png'),
97  system_AdminIcons('cancel.png'),
101  ));
102  $admin_page->renderTips();
103  // Initialize module handler
104  $module_handler = $xoops->getHandlerModule();
105  $modules = $module_handler->getObjects(null, true);
106  $criteria = new CriteriaCompo(new Criteria('hasmain', 1));
107 
108  $criteria->add(new Criteria('isactive', 1));
109  // Modules for blocks to be visible in
110  $display_list = $module_handler->getNameList($criteria);
111  unset($criteria);
112  // Initialize blocks handler
113  $block_handler = $xoops->getHandlerBlock();
114  $modules = $xoops->getHandlerModule()->getObjects(null, true);
115 
116  $filterform = new Xoops\Form\ThemeForm('', 'filterform', 'admin.php', 'get');
117  $filterform->addElement(new Xoops\Form\Hidden('fct', 'blocksadmin'));
118  $filterform->addElement(new Xoops\Form\Hidden('op', 'list'));
119  $filterform->addElement(new Xoops\Form\Hidden('filter', 1));
120  $sel_gen = new Xoops\Form\Select(XoopsLocale::MODULES, 'selgen', $selgen);
121  $sel_gen->setExtra("onchange='submit()'");
122  $sel_gen->addOption(-1, XoopsLocale::ALL_TYPES);
123  $sel_gen->addOption(0, SystemLocale::CUSTOM_BLOCK);
124  /* @var $list XoopsModule */
125  foreach ($modules as $list) {
126  $sel_gen->addOption($list->getVar('mid'), $list->getVar('name'));
127  }
128  $filterform->addElement($sel_gen);
129 
130  $sel_mod = new Xoops\Form\Select(XoopsLocale::PAGE, 'selmod', $selmod);
131  $sel_mod->setExtra("onchange='submit()'");
132  ksort($display_list);
133  $display_list_spec[0] = XoopsLocale::ALL_PAGES;
134  $display_list_spec[-1] = XoopsLocale::TOP_PAGE;
135  $display_list_spec[-2] = XoopsLocale::ALL_TYPES;
136  $display_list = $display_list_spec + $display_list;
137  foreach ($display_list as $k => $v) {
138  $sel_mod->addOption($k, $v);
139  }
140  $filterform->addElement($sel_mod);
141 
142  // For selection of group access
143  $sel_grp = new Xoops\Form\Select(XoopsLocale::GROUPS, 'selgrp', $selgrp);
144  $sel_grp->setExtra("onchange='submit()'");
145  $member_handler = $xoops->getHandlerMember();
146  $group_list = $member_handler->getGroupList();
147  $sel_grp->addOption(-1, XoopsLocale::ALL_TYPES);
148  $sel_grp->addOption(0, XoopsLocale::UNASSIGNED);
149  foreach ($group_list as $k => $v) {
150  $sel_grp->addOption($k, $v);
151  }
152  $filterform->addElement($sel_grp);
153 
154  $sel_vis = new Xoops\Form\Select(XoopsLocale::VISIBLE, 'selvis', $selvis);
155  $sel_vis->setExtra("onchange='submit()'");
156  $sel_vis->addOption(-1, XoopsLocale::ALL_TYPES);
157  $sel_vis->addOption(0, XoopsLocale::NO);
158  $sel_vis->addOption(1, XoopsLocale::YES);
159 
160  $filterform->addElement($sel_vis);
161 
162  $filterform->assign($xoops->tpl());
163 
164  /* Get blocks */
165  $selvis = ($selvis == -1) ? null : $selvis;
166  $selmod = ($selmod == -2) ? null : $selmod;
167  $order_block = (isset($selvis) ? "" : "b.visible DESC, ") . "b.side,b.weight,b.bid";
168 
169  if ($selgrp == 0) {
170  // get blocks that are not assigned to any groups
171  $blocks_arr = $block_handler->getNonGroupedBlocks($selmod, $toponlyblock = false, $selvis, $order_block);
172  } else {
173  $selgrp = ($selgrp == -1) ? null : $selgrp;
174  $blocks_arr = $block_handler->
175  getAllByGroupModule($selgrp, $selmod, $toponlyblock = false, $selvis, $order_block);
176  }
177 
178  if ($selgen >= 0) {
179  foreach (array_keys($blocks_arr) as $bid) {
180  if ($blocks_arr[$bid]->getVar("mid") != $selgen) {
181  unset($blocks_arr[$bid]);
182  }
183  }
184  }
185 
186  $arr = array();
187  foreach (array_keys($blocks_arr) as $i) {
188  $arr[$i] = $blocks_arr[$i]->getValues();
189  $xoops->tpl()->appendByRef('blocks', $arr[$i]);
190  }
191  // Call Footer
192  $xoops->footer();
193  break;
194 
195  case 'add':
196  // Call Header
197  $xoops->header('admin:system/system_blocks.tpl');
198  // Define Stylesheet
199  $xoops->theme()->addStylesheet('modules/system/css/admin.css');
200  // Define scripts
201  $xoops->theme()->addScript('media/jquery/plugins/jquery.form.js');
202  $xoops->theme()->addScript('modules/system/js/admin.js');
203  $xoops->theme()->addScript('modules/system/js/blocks.js');
204  // Define Breadcrumb and tips
205  $admin_page = new \Xoops\Module\Admin();
206  $admin_page->addBreadcrumbLink(SystemLocale::CONTROL_PANEL, \XoopsBaseConfig::get('url') . '/admin.php', true);
207  $admin_page->addBreadcrumbLink(
209  $system->adminVersion('blocksadmin', 'adminpath')
210  );
211  $admin_page->addBreadcrumbLink(SystemLocale::ADD_BLOCK);
212  $admin_page->renderBreadcrumb();
213  // Initialize blocks handler
214  $block_handler = $xoops->getHandlerBlock();
215  $block = $block_handler->create();
216  $form = $xoops->getModuleForm($block, 'block');
217  $form->getForm();
218  $form->display();
219  // Call Footer
220  $xoops->footer();
221  break;
222 
223  case 'display':
224  // Initialize blocks handler
225  $block_handler = $xoops->getHandlerBlock();
226  // Get variable
227  $block_id = $system->cleanVars($_POST, 'bid', 0, 'int');
228  $visible = $system->cleanVars($_POST, 'visible', 0, 'int');
229  if ($block_id > 0) {
230  $block = $block_handler->get($block_id);
231  $block->setVar('visible', $visible);
232  if (!$block_handler->insertBlock($block)) {
233  $error = true;
234  }
235  }
236  break;
237 
238  case 'drag':
239  // Initialize blocks handler
240  $block_handler = $xoops->getHandlerBlock();
241  // Get variable
242  $block_id = $system->cleanVars($_POST, 'bid', 0, 'int');
243  $side = $system->cleanVars($_POST, 'side', 0, 'int');
244  if ($block_id > 0) {
245  $block = $block_handler->get($block_id);
246  $block->setVar('side', $side);
247  if (!$block_handler->insertBlock($block)) {
248  $error = true;
249  }
250  }
251  break;
252 
253  case 'order':
254  // Initialize blocks handler
255  $block_handler = $xoops->getHandlerBlock();
256  if (isset($_POST['blk'])) {
257  $i = 0;
258  foreach ($_POST['blk'] as $order) {
259  if ($order > 0) {
260  $block = $block_handler->get($order);
261  $block->setVar('weight', $i);
262  if (!$block_handler->insertBlock($block)) {
263  $error = true;
264  }
265  ++$i;
266  }
267  }
268  }
269  exit;
270  break;
271 
272  case 'preview':
273  if (!$xoops->security()->check()) {
274  $xoops->redirect('admin.php?fct=blocksadmin', 3, implode('<br />', $xoops->security()->getErrors()));
275  exit();
276  }
277  // Initialize blocks handler
278  $block_handler = $xoops->getHandlerBlock();
279  /* @var $block XoopsBlock */
280  $block = $block_handler->create();
281  $block->setVars($_POST);
282  $content = isset($_POST['content_block']) ? $_POST['content_block'] : '';
283  $block->setVar('content', $content);
285  echo '<div id="xo-preview-dialog" title="' . $block->getVar('title', 's')
286  . '">' . $block->getContent('s', $block->getVar('c_type')) . '</div>';
287  break;
288 
289  case 'save':
290  if (!$xoops->security()->check()) {
291  $xoops->redirect('admin.php?fct=blocksadmin', 3, implode('<br />', $xoops->security()->getErrors()));
292  exit();
293  }
294  // Initialize blocks handler
295  $block_handler = $xoops->getHandlerBlock();
296  // Get avatar id
297  $block_id = $system->cleanVars($_POST, 'bid', 0, 'int');
298  if ($block_id > 0) {
299  $block = $block_handler->get($block_id);
300  } else {
301  $block = $block_handler->create();
302  }
303  $block_type = $system->cleanVars($_POST, 'block_type', '', 'string');
304  $block->setVar('block_type', $block_type);
305 
306  if (!$block->isCustom()) {
307  $block->setVars($_POST);
308  $type = $block->getVar('block_type');
309  $name = $block->getVar('name');
310  // Save block options
311  $options = $_POST['options'];
312  if (isset($options)) {
313  $options_count = count($options);
314  if ($options_count > 0) {
315  //Convert array values to comma-separated
316  for ($i = 0; $i < $options_count; ++$i) {
317  if (is_array($options[$i])) {
318  $options[$i] = implode(',', $options[$i]);
319  }
320  }
321  $options = implode('|', $options);
322  $block->setVar('options', $options);
323  }
324  }
325  } else {
326  $block->setVars($_POST);
327  switch ($block->getVar('c_type')) {
328  case 'H':
330  break;
331  case 'P':
333  break;
334  case 'S':
336  break;
337  default:
339  break;
340  }
341  }
342  $block->setVar('name', $name);
343  $block->setVar('isactive', 1);
344 
345  $content = isset($_POST['content_block']) ? $_POST['content_block'] : '';
346  $block->setVar('content', $content);
347 
348  if (!$newid = $block_handler->insertBlock($block)) {
349  $xoops->header();
350  echo $xoops->alert('error', $block->getHtmlErrors());
351  $xoops->footer();
352  exit();
353  }
354  if ($newid != 0) {
355  $blockmodulelink_handler = $xoops->getHandlerBlockmodulelink();
356  // Delete old link
357  $criteria = new CriteriaCompo(new Criteria('block_id', $newid));
358  $blockmodulelink_handler->deleteAll($criteria);
359  // Assign link
360  $modules = $_POST['modules'];
361  foreach ($modules as $mid) {
362  $blockmodulelink = $blockmodulelink_handler->create();
363  $blockmodulelink->setVar('block_id', $newid);
364  $blockmodulelink->setVar('module_id', $mid);
365  if (!$blockmodulelink_handler->insert($blockmodulelink)) {
366  $xoops->header();
367  echo $xoops->alert('error', $blockmodulelink->getHtmlErrors());
368  $xoops->footer();
369  exit();
370  }
371  }
372  }
373  $groupperm_handler = $xoops->getHandlerGroupperm();
374  $groups = $_POST['groups'];
375  $groups_with_access = $groupperm_handler->getGroupIds("block_read", $newid);
376  $removed_groups = array_diff($groups_with_access, $groups);
377  if (count($removed_groups) > 0) {
378  foreach ($removed_groups as $groupid) {
379  $criteria = new CriteriaCompo(new Criteria('gperm_name', 'block_read'));
380  $criteria->add(new Criteria('gperm_groupid', $groupid));
381  $criteria->add(new Criteria('gperm_itemid', $newid));
382  $criteria->add(new Criteria('gperm_modid', 1));
383  $perm = $groupperm_handler->getObjects($criteria);
384  if (isset($perm[0]) && is_object($perm[0])) {
385  $groupperm_handler->delete($perm[0]);
386  }
387  }
388  }
389  $new_groups = array_diff($groups, $groups_with_access);
390  if (count($new_groups) > 0) {
391  foreach ($new_groups as $groupid) {
392  $groupperm_handler->addRight("block_read", $newid, $groupid);
393  }
394  }
395  $xoops->redirect('admin.php?fct=blocksadmin', 1, XoopsLocale::S_DATABASE_UPDATED);
396  break;
397 
398  case 'edit':
399  // Initialize blocks handler
400  $block_handler = $xoops->getHandlerBlock();
401  // Get avatar id
402  $block_id = $system->cleanVars($_REQUEST, 'bid', 0, 'int');
403  if ($block_id > 0) {
404  // Call Header
405  $xoops->header('admin:system/system_blocks.tpl');
406  // Define Stylesheet
407  $xoops->theme()->addStylesheet('modules/system/css/admin.css');
408  $xoops->theme()->addScript('media/jquery/plugins/jquery.form.js');
409  $xoops->theme()->addScript('modules/system/js/admin.js');
410  // Define Breadcrumb and tips
411  $admin_page = new \Xoops\Module\Admin();
412  $admin_page->addBreadcrumbLink(SystemLocale::CONTROL_PANEL, \XoopsBaseConfig::get('url') . '/admin.php', true);
413  $admin_page->addBreadcrumbLink(
415  $system->adminVersion('blocksadmin', 'adminpath')
416  );
417  $admin_page->addBreadcrumbLink(SystemLocale::EDIT_BLOCK);
418  $admin_page->renderBreadcrumb();
419  $block = $block_handler->get($block_id);
420  /* @var $form SystemBlockForm */
421  $form = $xoops->getModuleForm($block, 'block');
422  $form->getForm();
423  $form->display();
424  // Call Footer
425  $xoops->footer();
426  } else {
427  $xoops->redirect('admin.php?fct=blocksadmin', 1, XoopsLocale::E_DATABASE_NOT_UPDATED);
428  }
429  break;
430 
431  case 'delete':
432  // Call Header
433  $xoops->header('admin:system/system_blocks.tpl');
434  // Define Stylesheet
435  $xoops->theme()->addStylesheet('modules/system/css/admin.css');
436  // Define Breadcrumb and tips
437  $admin_page = new \Xoops\Module\Admin();
438  $admin_page->addBreadcrumbLink(SystemLocale::CONTROL_PANEL, \XoopsBaseConfig::get('url') . '/admin.php', true);
439  $admin_page->addBreadcrumbLink(
441  $system->adminVersion('blocksadmin', 'adminpath')
442  );
443  $admin_page->addBreadcrumbLink(SystemLocale::DELETE_BLOCK);
444  $admin_page->renderBreadcrumb();
445  // Initialize blocks handler
446  $block_handler = $xoops->getHandlerBlock();
447  // Get avatar id
448  $block_id = $system->cleanVars($_REQUEST, 'bid', 0, 'int');
449  if ($block_id > 0) {
450  $block = $block_handler->get($block_id);
451  if ($block->getVar('block_type') == 'S') {
452  $xoops->redirect('admin.php?fct=blocksadmin', 4, SystemLocale::E_SYSTEM_BLOCKS_CANNOT_BE_DELETED);
453  exit();
454  } elseif ($block->getVar('block_type') == 'M') {
455  // Fix for duplicated blocks created in 2.0.9 module update
456  // A module block can be deleted if there is more than 1 that
457  // has the same func_num/show_func which is mostly likely
458  // be the one that was duplicated in 2.0.9
459  if (1 >= $count = $block_handler->countSimilarBlocks(
460  $block->getVar('mid'),
461  $block->getVar('func_num'),
462  $block->getVar('show_func')
463  )) {
464  $xoops->redirect('admin.php?fct=blocksadmin', 4, SystemLocale::E_THIS_BLOCK_CANNOT_BE_DELETED);
465  exit();
466  }
467  }
468  // Call Header
469  $xoops->header('admin:system/system_header.tpl');
470  // Display Question
471  echo $xoops->confirm(array(
472  'op' => 'delete_ok',
473  'fct' => 'blocksadmin',
474  'bid' => $block->getVar('bid')
475  ), 'admin.php', sprintf(SystemLocale::QF_ARE_YOU_SURE_TO_DELETE_THIS_BLOCK, $block->getVar('title')));
476  // Call Footer
477  $xoops->footer();
478  }
479  break;
480 
481  case 'delete_ok':
482  if (!$xoops->security()->check()) {
483  $xoops->redirect('admin.php?fct=blocksadmin', 3, implode('<br />', $xoops->security()->getErrors()));
484  exit();
485  }
486  // Initialize blocks handler
487  $block_handler = $xoops->getHandlerBlock();
488  // Get avatar id
489  $block_id = $system->cleanVars($_POST, 'bid', 0, 'int');
490  if ($block_id > 0) {
491  $block = $block_handler->get($block_id);
492  if ($block_handler->deleteBlock($block)) {
493  // Delete Group link
494  $blockmodulelink_handler = $xoops->getHandlerBlockmodulelink();
495  $blockmodulelink =
496  $blockmodulelink_handler->getObjects(new CriteriaCompo(new Criteria('block_id', $block_id)));
497  foreach ($blockmodulelink as $link) {
498  $blockmodulelink_handler->delete($link, true);
499  }
500  // Delete Group permission
501  $groupperm_handler = $xoops->getHandlerGroupperm();
502  $criteria = new CriteriaCompo(new Criteria('gperm_name', 'block_read'));
503  $criteria->add(new Criteria('gperm_itemid', $block_id));
504  $groupperm = $groupperm_handler->getObjects($criteria);
505  /* @var $perm XoopsGroupPerm */
506  foreach ($groupperm as $perm) {
507  $groupperm_handler->delete($perm, true);
508  }
509  // Delete template
510  if ($block->getVar('template') != '') {
511  $tplfile_handler = $xoops->getHandlerTplfile();
512  $btemplate = $tplfile_handler->find($xoops->getConfig('template_set'), 'block', $block_id);
513  if (count($btemplate) > 0) {
514  $tplfile_handler->deleteTpl($btemplate[0]);
515  }
516  }
517  $xoops->redirect('admin.php?fct=blocksadmin', 1, XoopsLocale::S_DATABASE_UPDATED);
518  }
519  } else {
520  $xoops->redirect('admin.php?fct=blocksadmin', 1, XoopsLocale::E_DATABASE_NOT_UPDATED);
521  }
522  break;
523 
524  case 'clone':
525  // Initialize blocks handler
526  $block_handler = $xoops->getHandlerBlock();
527  // Get avatar id
528  $block_id = $system->cleanVars($_REQUEST, 'bid', 0, 'int');
529  if ($block_id > 0) {
530  // Call Header
531  $xoops->header('admin:system/system_blocks.tpl');
532  // Define Stylesheet
533  $xoops->theme()->addStylesheet('modules/system/css/admin.css');
534  // Define Breadcrumb and tips
535  $system_breadcrumb = new \Xoops\Module\Admin();
536  $system_breadcrumb->addBreadcrumbLink(
538  system_adminVersion('blocksadmin', 'adminpath')
539  );
540  $system_breadcrumb->addBreadcrumbLink(SystemLocale::CLONE_BLOCK);
541  $system_breadcrumb->renderBreadcrumb();
542 
543  $block = $block_handler->get($block_id);
544  /* @var $form SystemBlockForm */
545  $form = $xoops->getModuleForm($block, 'block');
546  $form->getForm('clone');
547  $form->display();
548  // Call Footer
549  $xoops->footer();
550  } else {
551  $xoops->redirect('admin.php?fct=blocksadmin', 1, XoopsLocale::E_DATABASE_NOT_UPDATED);
552  }
553  break;
554 }
$mid
Definition: index.php:39
const UNASSIGNED
Definition: en_US.php:1069
system_AdminIcons($img)
Definition: functions.php:117
if(empty($settings['ROOT_PATH'])) elseif(empty($settings['DB_PARAMETERS'])) $error
const DELETE_BLOCK
Definition: en_US.php:257
const MANAGE_BLOCKS
Definition: en_US.php:329
const TOP_PAGE
Definition: en_US.php:1061
const BLOCKS_ADMINISTRATION
Definition: en_US.php:41
$member_handler
Definition: main.php:41
$i
Definition: dialog.php:68
$system
Definition: main.php:26
static getInstance($fct= '')
static getInstance()
Definition: system.php:46
static getInstance()
Definition: Xoops.php:160
if(in_array($op, array('install', 'update', 'uninstall'))) $myts
Definition: main.php:46
system_adminVersion($version, $value= '')
Definition: functions.php:95
$options['editor']
$sel
Definition: main.php:48
$admin_page
Definition: main.php:34
$link
Definition: userinfo.php:84
const HIDE_BLOCK
Definition: en_US.php:323
const E_THIS_BLOCK_CANNOT_BE_DELETED
Definition: en_US.php:297
$group_list
Definition: groupperm.php:41
$form
Definition: xoops_code.php:21
exit
Definition: browse.php:104
const BLOCKS_TIPS
Definition: en_US.php:43
$visible
Definition: admin_menu.php:39
const ALL_PAGES
Definition: en_US.php:64
const MODULES
Definition: en_US.php:840
const E_SYSTEM_BLOCKS_CANNOT_BE_DELETED
Definition: en_US.php:295
const CUSTOM_BLOCK_AUTO_FORMAT_SMILIES
Definition: en_US.php:250
$op
Definition: main.php:30
foreach($sel as $key=> $value) $type
Definition: main.php:60
const CUSTOM_BLOCK_AUTO_FORMAT
Definition: en_US.php:249
static get($name)
const CUSTOM_BLOCK
Definition: en_US.php:248
$filter
Definition: main.php:40
const CONTROL_PANEL
Definition: en_US.php:247
const CUSTOM_BLOCK_HTML
Definition: en_US.php:251
const E_NO_ACCESS_PERMISSION
Definition: en_US.php:351
$groups
const ALL_TYPES
Definition: en_US.php:65
const DRAG_OR_SORT_BLOCK
Definition: en_US.php:263
$modules
Definition: userinfo.php:185
const QF_ARE_YOU_SURE_TO_DELETE_THIS_BLOCK
Definition: en_US.php:364
$criteria
const EDIT_BLOCK
Definition: en_US.php:264
const ADD_BLOCK
Definition: en_US.php:29
$module_handler
Definition: main.php:55
const GROUPS
Definition: en_US.php:456
const CLONE_BLOCK
Definition: en_US.php:70
$xoops
Definition: main.php:25
$selmod
Definition: main.php:47
const DISPLAY_BLOCK
Definition: en_US.php:260
const CUSTOM_BLOCK_PHP
Definition: en_US.php:252
$system_breadcrumb
Definition: main.php:30
const S_DATABASE_UPDATED
Definition: en_US.php:1024
const E_DATABASE_NOT_UPDATED
Definition: en_US.php:320