Dziekuje za odpowiedzi. Nie chce robic offtopa, jesli to zly dzial, ale jak zaczalem pytac, to poprostu chodzi o to czy dobrze rozumiem idee MVC, czy np. instrukvja case, ktora podaje pod spodem a ktora znajduje sie w pliku index, powinna byc wlasnie tam, a jesli nie to jakie miejsce jest najbardziej odpowiednie dla niej. Mam obawe wpychania jej w metode jakiejs klasy, z tego wzgledu ze zdaje mi sie iz klasy powinny byc jak najbardziej ogolne(tylko wzorami dla obiektow), jesli wiec w klasie umiescilnbym tak szczegolowe parametry $tablica settings, to czy nie kluci sie tym samym z zalozeniami elastycznosci OOP. Wybaczcie prostote kodu, wolalem spytac, zanim klasy nie roznasnal sie bardziej tracac czytelnosc.
Plik index.php:
<?php
$page=$_GET['page'];
$id=$_GET['id'];
switch($page){
case 'contact-address':
$settings['tableName']='kontakt_dane';
$settings['title']='dane teleadresowe';
$settings['cNum']=2;
$settings['background']='address_bg.jpg';
$settings['specialQuery']='SELECT * FROM '.$settings['tableName'];
break;
// Pozostale opcje switch;
$view->setLayout($settings);
$view->displayLayout('main.tpl');
?>
i klasa view:
<?php
class MVCView{
public $smarty;
public function __construct(){
$this->smarty=new Smarty();
}
public function setLayout($settings){
$this->smarty->assign('title',$settings['title']);
$this->smarty->assign('background',$settings['background']);
$this->smarty->assign('cNum',$settings['cNum']);
$this->smarty->assign('leftCol', $settings['leftCol']);
$this->smarty->assign('createLinks', $settings['createLinks']);
$this->smarty->assign('leftMenuLink', $settings['leftMenuLink']);
$this->smarty->assign('rightCol', $settings['rightCol']);
$this->smarty->assign('includeImages', $settings['includeImages']);
$this->smarty->assign('imagesResults', $settings['imagesResults']);
$this->smarty->assign('mainMenuLink',$settings['mainMenuLink']);
}
public function displayLayout($layout){
$this->smarty->display($layout);
}
}
?>
Dzieki i pozdrawiam!