diff options
Diffstat (limited to 'h-source')
-rw-r--r-- | h-source/Application/Controllers/BaseController.php | 82 | ||||
-rw-r--r-- | h-source/Application/Controllers/GenericController.php | 21 | ||||
-rw-r--r-- | h-source/Application/Controllers/HomeController.php | 13 | ||||
-rw-r--r-- | h-source/Application/Views/form.php | 2 | ||||
-rw-r--r-- | h-source/Application/Views/page.php | 2 | ||||
-rw-r--r-- | h-source/Public/Css/main.css | 6 | ||||
-rw-r--r-- | h-source/tables.sql | 3 |
7 files changed, 98 insertions, 31 deletions
diff --git a/h-source/Application/Controllers/BaseController.php b/h-source/Application/Controllers/BaseController.php index 0954d2f..13bbb66 100644 --- a/h-source/Application/Controllers/BaseController.php +++ b/h-source/Application/Controllers/BaseController.php @@ -29,7 +29,9 @@ class BaseController extends Controller protected $isadmin = false; protected $querySanitized = true; protected $token = 'token'; - protected $_updating; + protected $_updating = 'no'; + + protected $_configXml = null; protected $_topMenuClasses = array( "home" => null, @@ -106,13 +108,66 @@ class BaseController extends Controller //check it they are updating the website $updating = $this->m['ParamsModel']->select('updating')->where(array('id_par'=>1))->toList('updating')->send(); - $data['updating_flag'] = $updating[0]; - $this->_updating = $data['updating_flag']; - + + $data['updating_flag'] = 'no'; + if (count($updating)>0) + { + $data['updating_flag'] = $updating[0]; + $this->_updating = $data['updating_flag']; + } + + //get the configuration xml + $xmlRes = $this->m['ParamsModel']->select('boxes_xml')->where(array('id_par'=>1))->toList('boxes_xml')->send(); + if (count($xmlRes)>0) + { + $configXml = htmlspecialchars_decode($xmlRes[0],ENT_QUOTES); + if (@simplexml_load_string($configXml)) + { + $this->_configXml = simplexml_load_string($configXml); + } + } + $this->append($data); - } - + + //get the right box from the configuration xml + protected function getBox($xmlPath,$xmlString = null) + { + if (!isset($xmlString)) + { + $xmlString = $this->_configXml; + } + + if (is_array($xmlPath)) + { + if (isset($xmlString)) + { + $tempXml = $xmlString->{$xmlPath[0]}; + if (count($xmlPath) === 1) + { + if (isset($tempXml->{$this->lang})) + { + return $tempXml->{$this->lang}->asXml(); + } + else if (isset($tempXml->{"en"})) + { + return $tempXml->{"en"}->asXml(); + } + else + { + return null; + } + } + else + { + array_shift($xmlPath); + return $this->getBox($xmlPath,$tempXml); + } + } + } + return null; + } + protected function right($lang = 'en') { $hard = new HardwareModel(); @@ -123,21 +178,14 @@ class BaseController extends Controller $data['numbLogged'] = count($logged); - // get the right column container - $this->m['BoxesModel']->setWhereQueryClause(array('title'=>'right_bottom')); - $boxes = $this->m['BoxesModel']->getAll('boxes'); - - if (count($boxes) > 0) + //render the boxes inside the right column + $data['htmlRightBox'] = null; + $xml = $this->getBox(array('right_column')); + if ($xml) { - $xml = htmlspecialchars_decode($boxes[0]['boxes']['message'],ENT_QUOTES); - $box_news = new BoxParser($xml); $data['htmlRightBox'] = $box_news->render(); } - else - { - $data['htmlRightBox'] = null; - } $data['language_links'] = $this->buildLanguageLinks($this->lang); diff --git a/h-source/Application/Controllers/GenericController.php b/h-source/Application/Controllers/GenericController.php index a2c5bdf..f1f1d70 100644 --- a/h-source/Application/Controllers/GenericController.php +++ b/h-source/Application/Controllers/GenericController.php @@ -129,6 +129,8 @@ class GenericController extends BaseController $data['submitName'] = "insertAction"; $data['hiddenInput'] = null; + + $data['tracksHelpLabel'] = $this->getEntryLabel('it_tracks_users'); $data['values'] = $this->m['HardwareModel']->getFormValues('insert','sanitizeHtml'); $this->append($data); @@ -288,7 +290,9 @@ class GenericController extends BaseController // echo $this->m['HardwareModel']->fields; $data['values'] = $this->m['HardwareModel']->getFormValues('update','sanitizeHtml'); $data['hiddenInput'] = "<input type='hidden' name='id_hard' value='".$clean['id_hard']."'>\n"; - + + $data['tracksHelpLabel'] = $this->getEntryLabel('it_tracks_users'); + $this->append($data); if (!isset($_POST['from_client'])) @@ -322,6 +326,19 @@ class GenericController extends BaseController } } +// get the help label for the "it_tracks_users" entry + protected function getEntryLabel($entryName) + { + $tracksHelpLabel = null; + $xml = $this->getBox(array('devices',$this->controller,'form',$entryName)); + if ($xml) + { + $box_news = new BoxParser($xml); + $tracksHelpLabel = $box_news->render(); + } + return $tracksHelpLabel; + } + //get the preview of the description entry protected function getPreview() { @@ -531,6 +548,8 @@ class GenericController extends BaseController $data['tree'] = $this->getSpecHardLink() . " » <span class='last_tree_element'>".$data['ne_name']."</span>"; $data['isDeleted'] = $this->m['HardwareModel']->isDeleted($clean['id_hard']); $data['isApproved'] = strcmp($data['table'][0]['hardware']['approved'],'yes') === 0 ? true : false; + + $data['tracksHelpLabel'] = $this->getEntryLabel('it_tracks_users'); $this->passWhoAskedForDeletion($clean['id_hard']); } diff --git a/h-source/Application/Controllers/HomeController.php b/h-source/Application/Controllers/HomeController.php index 5eff4d9..96479f3 100644 --- a/h-source/Application/Controllers/HomeController.php +++ b/h-source/Application/Controllers/HomeController.php @@ -37,20 +37,13 @@ class HomeController extends BaseController public function index($lang = 'en') { // get the news container - $this->m['BoxesModel']->setWhereQueryClause(array('title'=>'home_news')); - $boxes = $this->m['BoxesModel']->getAll('boxes'); - - if (count($boxes) > 0) + $data['htmlNewsBox'] = null; + $xml = $this->getBox(array('top_news')); + if ($xml) { - $xml = htmlspecialchars_decode($boxes[0]['boxes']['message'],ENT_QUOTES); - $box_news = new BoxParser($xml); $data['htmlNewsBox'] = $box_news->render(); } - else - { - $data['htmlNewsBox'] = null; - } $this->append($data); $this->cleverLoad('left'); diff --git a/h-source/Application/Views/form.php b/h-source/Application/Views/form.php index 5568cfd..5d04566 100644 --- a/h-source/Application/Views/form.php +++ b/h-source/Application/Views/form.php @@ -115,7 +115,7 @@ <?php if (strcmp($this->controller,'printers') === 0 ) { ?> <div class="form_entry"> - <div class="entry_label"><?php echo gtext("does it adopt any techniques to track users?");?></div> + <div class="entry_label"><?php echo gtext("does it adopt any techniques to track users?");?><?php echo $tracksHelpLabel;?></div> <?php echo Html_Form::select('it_tracks_users',$values['it_tracks_users'],Hardware::$trackSelect,"select_entry");?> </div> <?php } ?> diff --git a/h-source/Application/Views/page.php b/h-source/Application/Views/page.php index 727431c..6b7e539 100644 --- a/h-source/Application/Views/page.php +++ b/h-source/Application/Views/page.php @@ -116,7 +116,7 @@ <?php if (strcmp($this->controller,'printers') === 0 ) { ?> <div class="notebook_kernel"> - <div class="inner_label"><?php echo gtext("does it adopt any techniques to track users?");?></div> + <div class="inner_label"><?php echo gtext("does it adopt any techniques to track users?");?><div class="box_module_label"><?php echo $tracksHelpLabel;?></div></div> <div class="inner_value"><b><?php echo $item[$tableName]['it_tracks_users'];?></b></div> </div> <?php } ?> diff --git a/h-source/Public/Css/main.css b/h-source/Public/Css/main.css index b911536..5afe645 100644 --- a/h-source/Public/Css/main.css +++ b/h-source/Public/Css/main.css @@ -1995,6 +1995,12 @@ div#description_tabs_content { clear:left; } + +.box_module_label a +{ + color:#FF4500; +} + /* Start - temporarily added due to transformation of help pages 2011-05-29 joeko diff --git a/h-source/tables.sql b/h-source/tables.sql index 65da6bc..7269ee1 100644 --- a/h-source/tables.sql +++ b/h-source/tables.sql @@ -209,7 +209,8 @@ create table deletion ( create table params ( id_par INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY, - updating char(4) not null default 'no' + updating char(4) not null default 'no', + boxes_xml text CHARACTER SET utf8 not null )engine=innodb; insert into params (updating) values ('no'); |