Example #1
0
 public function process()
 {
     $uri = $_SERVER['REQUEST_URI'];
     if (!empty($uri)) {
         //$uriQ = explode('?', $uri);
         //                //cau truc cua link la abc/xyz.php?param=blah&param=blah
         //                //tach ra de tim xem co param nao o tren link, sau dau cham hoi se la tat ca cac param duoc gan bang dau &, nen day la array
         //                $uri = $uriQ[0]; //thanh phan dau tien se la link day du
         //                if(count($uriQ) > 1) { //tren link ngoai link day du con co param
         //                    $this->stringRaw = $uriQ[1];
         //                    $uriRaw = explode('&', $uriQ[1]); //tach ra tung param
         //                    if(count($uriRaw > 1)) { //neu co nhieu hon 1 param
         //                        foreach($uriRaw as $key => $row) {
         //                            $this->splitRaw($row); //dua param va property vao trong array paramsRaw theo cau truc key: param, value: property
         //                        }
         //                    } else {
         //                        $this->splitRaw($uriRaw[0]); //neu co 1 param thi dua param dau tien vao trong array paramsRaw
         //                    }
         //                }
         $firstChar = substr($uri, 0, 1);
         if ($firstChar == '/') {
             $uri = substr($uri, 1);
         }
         $lastChar = substr($uri, -1);
         if ($lastChar == '/') {
             $uri = substr($uri, 0, -1);
         }
         if (!empty($uri)) {
             $uri = explode('/', $uri);
             array_shift($uri);
             $this->cpage = array_shift($uri);
             //$pairs = array();
             //foreach($uri as $key => $value) {
             //                            $pairs[] = $value;
             //                            if(count($pairs) > 1) {
             //                                if(!Helper::isEmpty($pairs[1])) {
             //                                    if($pairs[0] == $this->key_page) {
             //                                        $this->cpage = $pairs[1];
             //                                    } else if ($pairs[0] == 'c') {
             //                                        $this->c = $pairs[1];
             //                                    } else if ($pairs[0] == 'a') {
             //                                        $this->a = $pairs[1];
             //                                    }
             //                                    $this->params[$pairs[0]] = $pairs[1];
             //                                }
             //                                $pairs = array();
             //                            }
             //                        }
             $objPage = new Page();
             $group = $objPage->getGroups(array('name' => $this->cpage));
             if (!empty($group) && count($group) == 1) {
                 //neu cpage la mot trong nhung group da duoc luu trong dbase thi moi xet den params tren url
                 $params = array();
                 if (empty($uri)) {
                     //neu khong co params tren url thi lay params cua default page cho vao
                     $defaultPage = $objPage->getPages(array('default' => 1, 'group_id' => $group[0]['id']));
                     if (!empty($defaultPage) && count($defaultPage) == 1) {
                         $defaultParams = $objPage->getPageParams(array('page_id' => $defaultPage[0]['id']));
                         foreach ($defaultParams as $defaultParam) {
                             if ($defaultParam['required_value'] != '') {
                                 $params[$defaultParam['param']] = $defaultParam['required_value'];
                             } else {
                                 $error = "No record found in database for this page.";
                             }
                         }
                     }
                 } else {
                     if (count($uri) == 1 && is_numeric($uri[0])) {
                         $uri[] = 'view';
                     }
                     $pages = $objPage->getPages(array('group_id' => $group[0]['id']));
                     foreach ($pages as $page) {
                         $params_db = $objPage->getPageParams(array('page_id' => $page['id']), array('order' => 'asc'));
                         if (count($params_db) == count($uri)) {
                             //var_dump($params_db);
                             foreach ($params_db as $key => $param_db) {
                                 //echo 'current key: '.$key.'<br />';
                                 //                                        echo 'param db name: '.$param_db['param'].'<br />';
                                 //                                        echo 'uri at current key: '.$uri[$key].'<br />';
                                 //                                        echo '<br />';
                                 if ($param_db['required_value'] == '') {
                                     $params[$param_db['param']] = $uri[$key];
                                     unset($params_db[$key]);
                                 } else {
                                     if ($uri[$key] == $param_db['required_value']) {
                                         $params[$param_db['param']] = $uri[$key];
                                         unset($params_db[$key]);
                                     }
                                 }
                             }
                             //echo 'result: '.empty($params_db);
                             if (empty($params_db)) {
                                 $this->page_id = $page['id'];
                                 $this->params = $params;
                                 break;
                             }
                         }
                     }
                 }
             }
             //var_dump($this->params);
         }
     }
 }
Example #2
0
<?php

$objPage = new Page();
$objTeam = new Team();
$objPosition = new Position();
if (!isset($data['params'])) {
    $page = $data['action'];
} else {
    $params = $data['params'];
    $id = $params['id'];
    $page = $objPage->getPages(array('id' => $id))[0];
    $page_params = $objPage->getPageParams(array('page_id' => $id), array('order' => 'asc'));
}
$group_name = $objPage->getGroups(array('id' => $page['group_id']))[0]['name'];
?>
  
        <div class="sectionParams" data-params="id=<?php 
echo $id;
?>
"></div>
        <h2 class="borderBottom"><?php 
echo ucfirst($group_name);
?>
 :: <?php 
echo ucwords($page['name']);
?>
</h2>
        
        <table  cellpadding="0" cellspacing="0" border="0" style="width:100%;" class="panelTable horizontalTable" data-object="page">
                    
            <tr>