PageRenderTime 42ms CodeModel.GetById 14ms RepoModel.GetById 0ms app.codeStats 0ms

/explay/modules/system/admin.php

http://explay-cms.googlecode.com/
PHP | 147 lines | 88 code | 29 blank | 30 comment | 21 complexity | d94707483443aed1c6f658f7cdd75c92 MD5 | raw file
  1. <?php
  2. class system extends Module {
  3. public function __construct () {
  4. parent::__construct (__CLASS__);
  5. $this->extend('__admin_system_types');
  6. $this->extend('__admin_system_fields');
  7. $this->extend('__admin_system_guides');
  8. $this->extend('__admin_system_images_profiles');
  9. $this->extend('__admin_system_types_connections');
  10. $this->extend('__admin_system_update');
  11. $this->extend('__admin_system_modules');
  12. $this->extend('__admin_system_rss');
  13. }
  14. public function __default () {
  15. redirect (HTTP_HOST . '/admin');
  16. }
  17. public function regedit () {
  18. $this->setPageTitle (lang ('admin_header_regedit','system'));
  19. if (getRequest('create',' bool')) {
  20. $key = isset($_POST['new_key']) ? $_POST['new_key'] : '';
  21. $value = isset($_POST['new_value']) ? $_POST['new_value'] : '';
  22. $help = isset($_POST['new_help']) ? $_POST['new_help'] : '';
  23. if ($key) {
  24. if ($help == '') {
  25. $help = false;
  26. }
  27. if ($value == '') {
  28. $value = false;
  29. }
  30. Regedit::getInstance()->set ($key, $value, $help);
  31. redirect (HTTP_HOST . '/admin/system/regedit?ok');
  32. }
  33. }
  34. $key = isset($_POST['key']) ? $_POST['key'] : false;
  35. if ($key && isset($_POST['value'])) {
  36. Regedit::getInstance()->set ($key, $_POST['value']);
  37. redirect (HTTP_HOST . '/admin/system/regedit?ok');
  38. }
  39. $response = new ModuleResponse;
  40. $response->setTemplate ('system/regedit');
  41. $response->setAttribute ('key', $key);
  42. if (getRequest ('ok', 'bool')) {
  43. $response->addObject (new SystemMessage (lang('regedit_saved','system')));
  44. }
  45. if ($key) {
  46. $value = Regedit::getInstance()->get ($key);
  47. $response->setAttribute('edit', 1);
  48. } else {
  49. $value = '';
  50. $response->setAttribute('edit', 0);
  51. }
  52. $response->addObject ($value);
  53. $response->addObject (new Array2XML ('helpers', Regedit::getInstance()->getHelpers()));
  54. return $response;
  55. }
  56. public function edit_uris () {
  57. if (getRequest('submit','bool') && isset($_POST['uri']) && is_array($_POST['uri'])) {
  58. $uris = $_POST['uri'];
  59. $str = "<?php\r\n\r\n\$REWRITE = array (";
  60. $temp = array();
  61. foreach ($uris as $uri) {
  62. if (!is_array($uri) || !isset($uri['from']) || trim($uri['from']) == '' || !isset($uri['to']) || trim($uri['to']) == '') {
  63. continue;
  64. }
  65. $temp[] = "\r\n\t'" . trim($uri['from']) . "' => '" . trim($uri['to']) . "'";
  66. }
  67. $str .= implode($temp, ',') . "\r\n);";
  68. $f = fopen(ENGINE_ROOT . '/URIs.php', 'w+');
  69. fwrite($f, $str);
  70. fclose($f);
  71. redirect(HTTP_HOST . '/admin/system/edit_uris');
  72. }
  73. include ENGINE_ROOT . '/URIs.php';
  74. $arr = array();
  75. foreach($REWRITE as $key => $uri) {
  76. $arr[]['uri'] = array ('from' => $key, 'to' => $uri);
  77. }
  78. $response = new ModuleResponse;
  79. $response->setTemplate('system/uris');
  80. $response->addObject(new Array2XML('uris', $arr));
  81. return $response;
  82. }
  83. public function test_converter () {
  84. $oConverter = new TypesConverter(array(TypesController::getInstance()->getTypeByName('banner')));
  85. $xml = $oConverter->getXMLData();
  86. $this->flush($xml->saveXML(), 'text/xml');
  87. }
  88. /*public function show_connections () {
  89. $typesController = TypesController::getInstance();
  90. $fieldsController = FieldsController::getInstance();
  91. $objectsController = ObjectsController::getInstance();
  92. $oTypeConnection = $typesController->getTypeByName ('explay_types_connection');
  93. $sel = new Selection;
  94. $sel->addType ($oTypeConnection);
  95. $sel->setOrder ('parent_type_id');
  96. $res = $sel->getList ();
  97. print "START TRANSACTION;<br>";
  98. foreach ($res as $row) {
  99. $object = $objectsController->getObject ($oTypeConnection, $row[0]);
  100. $oParentType = $typesController->getTypeById ($object->getValue ('parent_type_id'));
  101. $oChildType = $typesController->getTypeById ($object->getValue ('child_type_id'));
  102. $parentFieldName = $object->getValue ('parent_field_id') == 0 ? 'id' : $fieldsController->getField($object->getValue ('parent_field_id'))->getName();
  103. $childFieldName = $fieldsController->getField($object->getValue ('child_rel_field_id'))->getName();
  104. print "ALTER TABLE `" . $oChildType->getTableName() . "` ADD CONSTRAINT FOREIGN KEY (`" . $childFieldName . "`) REFERENCES `" . $oParentType->getTableName() . "` (`" . $parentFieldName . "`) ON DELETE CASCADE ON UPDATE CASCADE;<br>";
  105. }
  106. print "COMMIT;";
  107. exit;
  108. }*/
  109. }