public function start()
 {
     $renderView = new RenderView();
     $resultView = new ResultView();
     $addView = new AddView();
     $connectionDAL = new ConnectionDAL();
     $artistDAL = new ArtistDAL($connectionDAL);
     $songDAL = new SongDAL($connectionDAL, $artistDAL);
     $addModel = new AddModel($artistDAL, $songDAL);
     $loginModel = new LoginModel();
     $deleteModel = new DeleteModel($songDAL, $artistDAL);
     $searchModel = new SearchModel($deleteModel, $connectionDAL);
     $searchView = new SearchView($searchModel, $loginModel);
     $searchController = new SearchController($renderView, $searchView, $searchModel, $loginModel, $deleteModel, $resultView);
     $addController = new AddController($renderView, $addView, $addModel);
     $loginView = new LoginView();
     $loginController = new LoginController($renderView, $loginView, $loginModel);
     $navigationView = new NavigationView();
     $page = $navigationView->checkPage();
     if ($page == "/" || $page == "/index.php" || $page == "/project/") {
         $searchController->Start();
     } else {
         if ($page == "login") {
             $loginController->Start();
         } else {
             if ($page == "add") {
                 $addController->Start();
             } else {
                 $searchController->Chords($page);
             }
         }
     }
 }
 private function renderViewResponse(LoginView $v_lv, RegisterView $v_rv, NavigationView $v_nv)
 {
     if ($v_nv->inRegistration()) {
         return $v_rv->response();
     } else {
         return $v_lv->response();
     }
 }
Beispiel #3
0
 private function checkSessionS($isLoggedIn, NavigationView $nv)
 {
     if ($isLoggedIn == false) {
         return $nv->renderLink();
     } else {
         if ($isLoggedIn == true) {
             return '';
         }
     }
 }
 /**
  * @return string
  */
 private function getPubTableRows()
 {
     $pubs = $this->pubRepository->get();
     $html = "<thead><tr><th>Namn</th><th>Adress</th></thead>";
     foreach ($pubs as $pub) {
         $html .= "<tr>";
         $html .= "<td><a href='" . $this->navView->getURLToPub($pub->getID()) . "'>" . $pub->getName() . "</a>";
         $html .= "<td>" . $pub->getAddress() . "</td>";
         $html .= "</tr>";
     }
     return $html;
 }
Beispiel #5
0
 /**
  * @return string
  */
 private function getBeerTableRows()
 {
     $beers = $this->pub->getBeers();
     $html = "<thead><tr><th>Namn</th><th>Bryggeri</th><th>Pris</th></thead>";
     foreach ($beers as $beer) {
         $html .= "<tr>";
         $html .= "<td><a href='" . $this->navView->getURLToBeer($beer->getID()) . "'>" . $beer->getName() . "</a>";
         $html .= "<td>" . $beer->getBrewery() . "</td>";
         $html .= "<td>" . $beer->getPrice() . "</td>";
         $html .= "</tr>";
     }
     return $html;
 }
 public function doNavigation()
 {
     try {
         //Switch sats som kollar om användaren vill registrera ny användare eller kolla nyheter.
         //Default är se nyheter.
         switch (NavigationView::getAction()) {
             case NavigationView::$actionRegister:
                 $controller = new RegisterController();
                 $result = $controller->doRegister();
                 if ($result === self::$operationSuccess) {
                     $loginController = new LoginController();
                     $loginPage = $loginController->doLogin();
                     $controller = new NewsController();
                     return $controller->doNews($loginPage, self::$operationSuccess);
                 }
                 return $result;
                 break;
             case NavigationView::$actionNews:
             default:
                 $loginController = new LoginController();
                 $loginPage = $loginController->doLogin();
                 $controller = new NewsController();
                 $result = $controller->doNews($loginPage);
                 return $result;
                 break;
         }
     } catch (Exception $e) {
         throw new Exception('Något gick fel när sidan skulle laddas!');
     }
 }
Beispiel #7
0
    /**
     * @param $html - Html to be rendered (response of the view-classes)
     */
    public function render($html)
    {
        echo '<!DOCTYPE html>
            <html>
                <head>
                    <meta charset="UTF-8">
                    <meta http-equiv="X-UA-Compatible" content="IE=edge">
                    <meta name="viewport" content="width=device-width, initial-scale=1">
                    <title>' . self::$title . '</title>
                    ' . $this->loadCss() . '
                </head>
                <body>

                    <nav class="navbar navbar-default navbar-fixed-top" role="navigation">
                      <div class="container">
                        <div class="navbar-header">
                          <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
                            <span class="sr-only">Toggle navigation</span>
                            <span class="icon-bar"></span>
                            <span class="icon-bar"></span>
                            <span class="icon-bar"></span>
                          </button>
                          <a class="navbar-brand" href="?">' . self::$title . '</a>
                        </div>
                        <div id="navbar" class="navbar-collapse collapse" >
                          ' . $this->navigationView->getLeftNavMenu() . $this->navigationView->getRightNavMenu() . '
                        </div>
                      </div>
                    </nav>


                    <div class="container">

                        ' . $html . '

                    </div>

                    <footer class="footer">
                        <div class="container">
                            <p class="text-muted">Application created for the course 1DV608 - Web development with php.</p>
                        </div>
                    </footer>

                </body>
            </html>';
    }
Beispiel #8
0
 /**
  * Method that renders all the pages. It takes date/time, navigation object 
  * and view chosen from the the controller.
  * @param object $dtv DateTimeView
  * @param object $nv NavigationView
  * @param object $chosenOption could be any of the views
  * does not return but writes to output nonetheless
  */
 public function render(DateTimeView $dtv, NavigationView $nv, $chosenOption)
 {
     echo '<!DOCTYPE html>
   <html>
     <head>
       <meta charset="utf-8">
       <title>Converter</title>
     </head>
     <body>
       <h1><center>' . $chosenOption->header() . '</center></h1>
       ' . $nv->renderLink() . '
       <div class="container">
           ' . $this->response($chosenOption) . '   
       </div>
       <center> ' . $chosenOption->getInfo() . '  </center>       
       ' . $dtv->show() . '
      </body>
   </html>
 ';
 }
 /**
  * Creates the HTML needed to display a participant with a list of projects.
  * 
  * @return String HTML
  */
 public function show(\model\Participant $participant)
 {
     $ret = NavigationView::getUserMenu($participant->getUnique());
     $ret .= '<h1>' . $participant->getName() . '</h1>';
     $ret .= "<h2>Projects</h2>";
     $ret .= "<ul>";
     foreach ($participant->getProjects()->toArray() as $project) {
         $ret .= "<li>" . $project->getName() . "</li>";
     }
     $ret .= "</ul>";
     return $ret;
 }
 public function renderRegister($isLoggedIn, RegisterView $rv, DateTimeView $dtv, NavigationView $nv)
 {
     echo '<!DOCTYPE html>
   <html>
     <head>
       <meta charset="utf-8">
       <title>Assignment 4</title>
     </head>
     <body>
       <h1>Assignment 4</h1>
       ' . $nv->getLinks() . $this->renderIsLoggedIn($isLoggedIn) . '
       <h2>Register new user</h2>
       <div class="container">
           ' . $rv->generateRegistrationFormHTML() . ' 
           
           ' . $dtv->show() . '
       </div>
      </body>
   </html>
 ';
 }
 public function render(MainView $mainView, NavigationView $navigationView)
 {
     echo '
     <!DOCTYPE html>
     <html>
         <head>
             <meta charset="utf-8">
             <link rel="stylesheet" type="text/css" href="css/style.css">
             <title>Result Logger</title>
         </head>
         <body>
             ' . $mainView->showHeadline() . '
             ' . $mainView->showLogoutPanel() . '
             ' . $navigationView->showLinks() . '
             <div id="container">
                 ' . $mainView->showContent() . '
             </div>
         </body>
     </html>
     ';
 }
 public function render($isLoggedIn = false, $html, DateTimeView $dtv, NavigationView $navigationView)
 {
     echo '<!DOCTYPE html>
   <html>
     <head>
       <meta charset="utf-8">
       <title>Login Example</title>
     </head>
     <body>
       <h1>Assignment 2</h1>
       ' . $navigationView->render($isLoggedIn) . $this->renderIsLoggedIn($isLoggedIn) . '
       
       <div class="container">
           ' . $html . '
           
           ' . $dtv->show() . '
       </div>
      </body>
   </html>
 ';
 }
 public function render($isLoggedIn, LoginView $loginView, DateTimeView $dateTimeView, RegisterView $registerView, NavigationView $navigationView)
 {
     echo '<!DOCTYPE html>
   <html>
     <head>
       <meta charset="utf-8">
       <title>Login Example</title>
     </head>
     <body>
       <h1>Assignment 4</h1>
       ' . $navigationView->renderNavigationLink() . '
       ' . $this->renderIsLoggedIn($isLoggedIn) . '
       ' . $this->renderForm($isLoggedIn, $loginView, $registerView, $navigationView) . '
       
       <div class="container">
           
           ' . $dateTimeView->showDateTime() . '
       </div>
      </body>
   </html>
 ';
 }
 public function doControll()
 {
     switch (\NavigationView::getAction()) {
         case \NavigationView::$actionList:
             $controller = new MashupController();
             return $controller->getList();
             break;
         default:
             $controller = new MashupController();
             return $controller->getSearchContent();
             break;
     }
 }
Beispiel #15
0
 public function render($isLoggedIn, NavigationView $nv, LoginView $v, RegisterView $rv, DateTimeView $dtv)
 {
     $ret1 = '<!DOCTYPE html>
   <html>
     <head>
       <meta charset="utf-8">
       <title>Login Example</title>
     </head>
     <body>
       <h1>Assignment 4</h1>';
     echo $ret1;
     if (!$isLoggedIn) {
         if ($nv->userWantsToRegister()) {
             $ret3 = $nv->getLinkToLogin();
         } else {
             $ret3 = $nv->getLinkToRegister("Register a new user");
         }
     }
     $ret3 .= '
       ' . $this->renderIsLoggedIn($isLoggedIn) . '
       <div class="container">
       ';
     echo $ret3;
     if ($rv->isUserDoneRegistering() || !$nv->userWantsToRegister()) {
         $ret2 = $v->response($rv->getProvidedUsername());
     } else {
         $ret2 = $rv->response();
     }
     $ret2 .= '    ' . $dtv->show() . '
       </div>
       <div>
         <em>This site uses cookies to improve user experience. By continuing to browse the site you are agreeing to our use of cookies.</em>
       </div>
     </body>
     </html>
 ';
     echo $ret2;
 }
Beispiel #16
0
 /**
  * @return string HTML with Bootstrap CSS
  */
 public function getHTML($body)
 {
     $adminLink = NavigationView::getLinkToAdminPage();
     return "<!DOCTYPE html>\n            <html>\n              <head>\n                <link href='css/bootstrap.min.css' rel='stylesheet'>\n                <meta charset='utf-8'>\n                <title>1dv608 Project</title>\n              </head>\n              <body>\n                <nav class='navbar-inverse'>\n                  <div class='container'>\n                    <div class='navbar-header'>\n                      <a class='navbar-brand' href='?'>Home</a>\n                    </div>\n                    <ul class='nav navbar-nav navbar-right'>\n                        <li>{$adminLink}</li>\n                    </ul>\n                  </div>\n                </nav>\n                <div class='container'>\n                  {$body}\n                </div>\n              </body>\n            </html>";
 }
Beispiel #17
0
error_reporting(E_ALL);
ini_set('display_errors', 'On');
//INCLUDE THE FILES NEEDED...
require_once 'view/LoginView.php';
require_once 'view/DateTimeView.php';
require_once 'view/LayoutView.php';
require_once 'view/RegisterView.php';
require_once 'view/NavigationView.php';
require_once 'controller/LoginController.php';
require_once 'controller/MasterController.php';
require_once 'controller/RegisterController.php';
require_once 'model/UserList.php';
require_once 'model/User.php';
require_once 'model/UserDAL.php';
require_once 'model/SessionModel.php';
//set the life ot the cookie to be 0 sec
session_set_cookie_params(0);
session_start();
$model = new SessionModel();
$logView = new LoginView($model);
$regView = new RegisterView();
$navigationView = new NavigationView($model);
$mc = new MasterController($model, $logView, $regView, $navigationView);
$mc->generate();
$layoutView = new LayoutView();
$dateView = new DateTimeView();
if ($navigationView->inRegistrationForm()) {
    $layoutView->renderRegister($model->isLoggedIn(), $regView, $dateView, $navigationView);
} else {
    $layoutView->renderLogin($model->isLoggedIn(), $logView, $dateView, $navigationView);
}
 public function show()
 {
     return '<div class="row sitemap"><div class="sitemap-inner col-md-offset-2 col-md-8"><div class="row""><ul class = "sitemap-top-level">' . parent::show() . '</ul></div></div></div>';
 }
Beispiel #19
0
<?php

session_start();
require_once 'controller/MasterController.php';
require_once 'model/SessionModel.php';
require_once 'view/LoginView.php';
require_once 'view/DateTimeView.php';
require_once 'view/LayoutView.php';
require_once 'view/RegisterView.php';
require_once 'view/NavigationView.php';
//MAKE SURE ERRORS ARE SHOWN... MIGHT WANT TO TURN THIS OFF ON A PUBLIC SERVER
error_reporting(E_ALL);
ini_set('display_errors', 'On');
$v = new LoginView();
$dtv = new DateTimeView();
$rv = new RegisterView();
$lv = new LayoutView();
$nv = new NavigationView();
$s = new SessionModel();
$mc = new MasterController();
$mc->start();
if ($nv->registerLinkPressed()) {
    $lv->renderRegister($s->isLoggedIn(), $dtv, $rv, $nv);
} else {
    $lv->renderLogin($s->isLoggedIn(), $v, $dtv, $nv);
}