Esempio n. 1
0
 public function index()
 {
     $vw = new ViewWrap($this->_view);
     $P = PVars::getObj('page');
     $request = PRequest::get()->request;
     if (!isset($request[1])) {
         $request[1] = '';
     }
     $TDonationArray = false;
     $error = false;
     $sub = '';
     $sub = $request[1];
     // static pages
     switch ($request[1]) {
         case 'done':
             $error = $this->_model->returnFromPayPal();
             $TDonationArray = $this->_model->getDonations();
             break;
         case 'cancel':
             if (isset($_SESSION["PaypalBW_key"])) {
                 // Log to track wrong donation
                 MOD_log::get()->write("Donation cancelled  [\$_SESSION[\"PaypalBW_key\"]=" . $_SESSION["PaypalBW_key"] . "]", "Donation");
                 break;
             }
         default:
             $TDonationArray = $this->_model->getDonations();
             break;
     }
     $P->content .= $vw->donate($sub, $TDonationArray, $error);
     // teaser content
     $P->teaserBar .= $vw->ShowSimpleTeaser('Donate', $TDonationArray);
     // submenu
     $P->subMenu .= $vw->submenu($sub);
     // User bar on the left
     $P->newBar .= $vw->donateBar($TDonationArray);
 }
Esempio n. 2
0
 /**
  */
 public function index()
 {
     $vw = new ViewWrap($this->_view);
     $P = PVars::getObj('page');
     // First check if the feature is closed
     if ($_SESSION["Param"]->FeatureSearchPageIsClosed != 'No') {
         $P->content = $this->_view->showFeatureIsClosed();
         return;
     }
     // end of test "if feature is closed"
     if (PPostHandler::isHandling()) {
         return;
     }
     $request = PRequest::get()->request;
     if (!isset($request[1])) {
         $request[1] = '';
     }
     // Route quicksearch
     if ($request[0] == 'quicksearch') {
         $error = false;
         // static pages
         switch ($request[1]) {
             case '':
                 $searchtext = isset($_GET["vars"]) ? $_GET['vars'] : '';
                 // Because of old way to use the QuickSearch with a get
                 break;
             default:
                 $searchtext = $request[1];
                 break;
         }
         $TReturn = $this->_model->quicksearch($searchtext);
         if (count($TReturn->TMembers) == 1 and count($TReturn->TPlaces) == 0 and count($TReturn->TForumTags) == 0) {
             $loc = "members/" . $TReturn->TMembers[0]->Username;
             header('Location: ' . $loc);
             PPHP::PExit();
         } else {
             if (count($TReturn->TMembers) == 0 and count($TReturn->TPlaces) == 1 and count($TReturn->TForumTags) == 0) {
                 $loc = $TReturn->TPlaces[0]->link;
                 header('Location: ' . $loc);
                 PPHP::PExit();
             } else {
                 if (count($TReturn->TMembers) == 0 and count($TReturn->TPlaces) == 0 and count($TReturn->TForumTags) == 1) {
                     $loc = "forums/t" . $TReturn->TForumTags[0]->IdTag;
                     header('Location: ' . $loc);
                     PPHP::PExit();
                 }
             }
         }
         $P->content .= $vw->quicksearch_results($TReturn);
         return $P;
     }
     if ($request[0] != 'searchmembers') {
         header('Location: searchmembers');
         PPHP::PExit();
     }
     // fix a problem with Opera javascript, which sends a 'searchmembers/searchmembers/ajax' request
     if ($request[1] === 'searchmembers') {
         $request = array_slice($request, 1);
     }
     // default mapstyle:
     $mapstyle = 'mapon';
     $queries = '';
     $varsOnLoad = '';
     $varsGet = '';
     if (isset($request[1])) {
         switch ($request[1]) {
             case 'mapoff':
                 $mapstyle = "mapoff";
                 $_SESSION['SearchMembersTList'] = array();
                 break;
             case 'mapon':
                 $mapstyle = "mapon";
                 $_SESSION['SearchMembersTList'] = array();
                 break;
             case 'queries':
                 if (PVars::get()->debug) {
                     $R = MOD_right::get();
                     if ($R->HasRight("Debug", "DB_QUERY")) {
                         $queries = true;
                         $mapstyle = "mapoff";
                     }
                 }
                 break;
             default:
                 if (isset($_SESSION['SearchMapStyle']) and $_SESSION['SearchMapStyle']) {
                     $mapstyle = $_SESSION['SearchMapStyle'];
                 }
                 break;
         }
     }
     // Store the MapStyle in session
     $_SESSION['SearchMapStyle'] = $mapstyle;
     // Check wether there are latest search results and variables from the session
     if (!$queries && isset($_SESSION['SearchMembersTList'])) {
         if ($_SESSION['SearchMembersTList'] && $_SESSION['SearchMembersVars']) {
             $varsOnLoad = $_SESSION['SearchMembersVars'];
         }
     }
     switch ($request[1]) {
         case 'ajax':
             if (isset($request[2]) and $request[2] == "varsonload") {
                 $vars['varsOnLoad'] = true;
                 // Read the latest search results and variables from the session
                 if (!empty($_SESSION['SearchMembersTList'])) {
                     $TList = $_SESSION['SearchMembersTList'];
                 }
                 if (!empty($_SESSION['SearchMembersVars'])) {
                     $vars = $_SESSION['SearchMembersVars'];
                 }
                 if (isset($request[3])) {
                     $vars['OrderBy'] = $request[3];
                     $TList = $this->_model->search($vars);
                 }
             } else {
                 $vars = isset($_GET) ? $_GET : array();
                 if (isset($request[2]) && $request[2] == "queries") {
                     $vars['queries'] = true;
                 }
                 if (!isset($TList)) {
                     $TList = $this->_model->search($vars);
                 }
             }
             $this->_view->searchmembers_ajax($TList, $vars, $mapstyle);
             // Store latest search results and variables in session
             $_SESSION['SearchMembersTList'] = $TList;
             $_SESSION['SearchMembersVars'] = $vars;
             PPHP::PExit();
             break;
             /* quicksearch shouldn't go through this route
                         case 'quicksearch':
                             $mapstyle = "mapoff"; 
                             // First check if the QuickSearch feature is closed
                             if ($_SESSION["Param"]->FeatureQuickSearchIsClosed!='No') {
                                 $this->_view->showFeatureIsClosed();
                                 PPHP::PExit();
                                 break ;
                             } // end of test "if QuickSearch feature is closed" 
                             if (isset($request[2])) { // The parameter to search for can be for the form searchmember/quicksearch/ value
                                 $searchtext=$request[2] ;
                             }
             
                             if (isset($_GET['searchtext'])) { // The parameter can come from the main menu
                                 $searchtext = $_GET['searchtext'];
                             }
                             if (isset($_POST['searchtext'])) { // The parameter can come from the quicksearch form
                                 $searchtext = $_POST['searchtext'];
                             }               
                             
             //              die('here searchtext={'.$searchtext.'}') ;
                             if (!empty($searchtext)) {
                                 $TReturn=$this->_model->quicksearch($searchtext) ;
                                 if ((count($TReturn->TMembers)==1) and  (count($TReturn->TPlaces)==0)  and  (count($TReturn->TForumTags)==0)) {
                                     $loc="members/".$TReturn->TMembers[0]->Username ;
                                     header('Location: '.$loc);
                                     PPHP::PExit();
                                 }
                                 else if ((count($TReturn->TMembers)==0) and  (count($TReturn->TPlaces)==1)  and  (count($TReturn->TForumTags)==0)) {
                                     $loc=$TReturn->TPlaces[0]->link ;
                                     header('Location: '.$loc);
                                     PPHP::PExit();
                                 }
                                 else if ((count($TReturn->TMembers)==0) and  (count($TReturn->TPlaces)==0)  and  (count($TReturn->TForumTags)==1)) {
                                     $loc="forums/t".$TReturn->TForumTags[0]->IdTag ;
                                     header('Location: '.$loc);
                                     PPHP::PExit();
                                 }
                                 $P->content .= $vw->quicksearch_results($TReturn);
                             }
                             else {
             
                                 $vars = PPostHandler::getVars('quicksearch_callbackId');
                                 PPostHandler::clearVars('quicksearch_callbackId');
             
                                 // first include the col2-stylesheet
                                 $P->addStyles .= $this->_view->customStyles($mapstyle,$quicksearch=1);
                             
                                 // now the teaser content
                                 $P->teaserBar .= $vw->teaserquicksearch($mapstyle);
                             
                                 $P->content .= $vw->quicksearch_form();
                             }
                             break;
                             
                         // Backwards compatibility
                         case 'index':
                             $loc = PVars::getObj('env')->baseuri;
                             $loc .= 'searchmembers';
                             if(isset($request[2])) {$loc .= '/'.$request[2];}
                             elseif(isset($request[3])) {$loc .= '/'.$request[3];}
                             header('Location: '.$loc);
                             PPHP::PExit();
                             break;
             */
         /* quicksearch shouldn't go through this route
                     case 'quicksearch':
                         $mapstyle = "mapoff"; 
                         // First check if the QuickSearch feature is closed
                         if ($_SESSION["Param"]->FeatureQuickSearchIsClosed!='No') {
                             $this->_view->showFeatureIsClosed();
                             PPHP::PExit();
                             break ;
                         } // end of test "if QuickSearch feature is closed" 
                         if (isset($request[2])) { // The parameter to search for can be for the form searchmember/quicksearch/ value
                             $searchtext=$request[2] ;
                         }
         
                         if (isset($_GET['searchtext'])) { // The parameter can come from the main menu
                             $searchtext = $_GET['searchtext'];
                         }
                         if (isset($_POST['searchtext'])) { // The parameter can come from the quicksearch form
                             $searchtext = $_POST['searchtext'];
                         }               
                         
         //              die('here searchtext={'.$searchtext.'}') ;
                         if (!empty($searchtext)) {
                             $TReturn=$this->_model->quicksearch($searchtext) ;
                             if ((count($TReturn->TMembers)==1) and  (count($TReturn->TPlaces)==0)  and  (count($TReturn->TForumTags)==0)) {
                                 $loc="members/".$TReturn->TMembers[0]->Username ;
                                 header('Location: '.$loc);
                                 PPHP::PExit();
                             }
                             else if ((count($TReturn->TMembers)==0) and  (count($TReturn->TPlaces)==1)  and  (count($TReturn->TForumTags)==0)) {
                                 $loc=$TReturn->TPlaces[0]->link ;
                                 header('Location: '.$loc);
                                 PPHP::PExit();
                             }
                             else if ((count($TReturn->TMembers)==0) and  (count($TReturn->TPlaces)==0)  and  (count($TReturn->TForumTags)==1)) {
                                 $loc="forums/t".$TReturn->TForumTags[0]->IdTag ;
                                 header('Location: '.$loc);
                                 PPHP::PExit();
                             }
                             $P->content .= $vw->quicksearch_results($TReturn);
                         }
                         else {
         
                             $vars = PPostHandler::getVars('quicksearch_callbackId');
                             PPostHandler::clearVars('quicksearch_callbackId');
         
                             // first include the col2-stylesheet
                             $P->addStyles .= $this->_view->customStyles($mapstyle,$quicksearch=1);
                         
                             // now the teaser content
                             $P->teaserBar .= $vw->teaserquicksearch($mapstyle);
                         
                             $P->content .= $vw->quicksearch_form();
                         }
                         break;
                         
                     // Backwards compatibility
                     case 'index':
                         $loc = PVars::getObj('env')->baseuri;
                         $loc .= 'searchmembers';
                         if(isset($request[2])) {$loc .= '/'.$request[2];}
                         elseif(isset($request[3])) {$loc .= '/'.$request[3];}
                         header('Location: '.$loc);
                         PPHP::PExit();
                         break;
         */
         default:
             $words = new MOD_words();
             $P->addStyles = $this->_view->customStyles($mapstyle);
             $google_conf = PVars::getObj('config_google');
             $P->title = $words->getBuffered('searchmembersTitle') . " - BeWelcome";
             $P->currentTab = 'searchmembers';
             $P->currentSubTab = 'searchmembers';
             $subTab = 'index';
             // prepare sort order for both the filters and the userbar
             $sortorder = $this->_model->get_sort_order();
             $P->teaserBar = $vw->teaser($mapstyle, $sortorder, $varsOnLoad);
             $P->teaserBar .= $vw->searchmembersFilters($this->_model->sql_get_groups(), $this->_model->sql_get_set("members", "Accomodation"), $this->_model->sql_get_set("members", "TypicOffer"), $sortorder);
             $P->content = $vw->search_column_col3($sortorder, $queries, $mapstyle, $varsOnLoad, $varsGet, $this->_model->sql_get_set("members", "Accomodation"));
             /*$P->content = $vw->memberlist($mapstyle,$sortorder);
               
               $P->content .= $vw->searchmembers(
                   $queries,
                   $mapstyle,
                   $varsOnLoad,
                   $varsGet,
                   $this->_model->sql_get_set("members", "Accomodation")
               );
               */
             $P->show_volunteerbar = false;
             break;
     }
 }
Esempio n. 3
0
 public function index()
 {
     $P = PVars::getObj('page');
     $vw = new ViewWrap($this->_view);
     $cw = new ViewWrap($this);
     // index is called when http request = ./blog
     if (PPostHandler::isHandling()) {
         return;
     }
     $request = PRequest::get()->request;
     $member = $this->_model->getLoggedInMember();
     //$User = A PP_User::login();
     if (!isset($request[1])) {
         $request[1] = '';
     }
     // user bar
     // show the userbar always for now:
     /*if ($User && $request[1] != 'tags') { */
     //            $P->newBar .= $vw->userbar();
     /*} */
     $bloguser = 0;
     $RSS = false;
     switch ($request[1]) {
         case 'ajax':
             if (!isset($request[2])) {
                 PPHP::PExit();
             }
             switch ($request[2]) {
                 case 'post':
                     $this->ajaxPost();
                     break;
             }
             break;
         case 'suggestTags':
             // ignore current request, so we can use the last request
             PRequest::ignoreCurrentRequest();
             if (!isset($request[2])) {
                 PPHP::PExit();
             }
             $new_tags = $this->_model->suggestTags($request[2]);
             echo $this->_view->generateClickableTagSuggestions($new_tags);
             PPHP::PExit();
             break;
         case 'suggestLocation':
             // ignore current request, so we can use the last request
             PRequest::ignoreCurrentRequest();
             if (!isset($request[2])) {
                 PPHP::PExit();
             }
             $locations = $this->_model->suggestLocation($request[2]);
             echo $this->_view->generateLocationOverview($locations);
             PPHP::PExit();
             break;
         case 'create':
             if (!$member) {
                 PRequest::home();
             }
             if (isset($request[2]) && $request[2] == 'finish' && isset($request[3]) && $this->_model->isPostId($request[3])) {
                 $page = new BlogSinglePostPage($this->_model);
                 $page->member = $member;
                 $page->post = $this->_model->getPost($request[3]);
             } else {
                 $page = new BlogCreatePage($this->_model);
             }
             return $page;
         case 'del':
             if (!$member || !isset($request[2]) || !$this->_model->isUserPost($member->id, $request[2])) {
                 PRequest::home();
             }
             $post = $this->_model->getPost($request[2]);
             $p = new BlogDeletePage($this->_model);
             $p->member = $member;
             $p->post = $post;
             return $p;
         case 'edit':
             if (!$member || !isset($request[2]) || !$this->_model->isUserPost($member->id, $request[2])) {
                 PRequest::home();
             }
             if (isset($request[3]) && $request[3] == 'finish') {
                 $p = new BlogSinglePostPage($this->_model);
                 $p->member = $member;
                 $p->post = $this->_model->getPost($request[2]);
                 return $p;
             } else {
                 //$callbackId = $this->editProcess((int)$request[2]);
                 //$vars =& PPostHandler::getVars($callbackId);
                 if (!isset($vars['errors']) || !is_array($vars['errors'])) {
                     $vars['errors'] = array();
                 }
                 $this->_editFill($request[2], $vars);
                 $p = new BlogEditPage($this->_model);
                 $p->post = $this->_model->getPost($request[2]);
                 $p->member = $member;
                 $p->vars = $vars;
                 return $p;
                 $P->content .= $vw->editForm((int) $request[2], $callbackId);
             }
             break;
         case 'search':
             if (!empty($this->args_vars->get['s']) && strlen($this->args_vars->get['s']) >= 3) {
                 $search = $this->args_vars->get['s'];
                 $tagsposts = $this->_model->getTaggedPostsIt($search);
                 $posts = $this->_model->searchPosts($search);
             } else {
                 $error = 'To few arguments';
                 $posts = false;
                 $tagsposts = false;
                 $search = '';
             }
             $p = new BlogSearchPage($this->_model);
             $p->posts = $posts;
             $p->tagged_posts = $tagsposts;
             $p->search = $search;
             return $p;
             $P->content .= $vw->searchPage($posts, $tagsposts);
             break;
             /* removed - references user app
                         case 'settings':
                             $p = new BlogSettingsPage($this->_model);
                             return $p;
                             $P->content .= $vw->settingsForm();
                             break;
             */
         /* removed - references user app
                     case 'settings':
                         $p = new BlogSettingsPage($this->_model);
                         return $p;
                         $P->content .= $vw->settingsForm();
                         break;
         */
         case 'tags':
             $p = new BlogTagsPage($this->_model);
             $p->tag = isset($request[2]) ? $request[2] : false;
             return $p;
             $P->content .= $vw->tags(isset($request[2]) ? $request[2] : false);
             break;
         case 'cat':
             $p = new BlogCategoriesPage($this->_model);
             return $p;
             break;
         default:
             $page = isset($this->args_vars->get['page']) && intval($this->args_vars->get['page']) ? intval($this->args_vars->get['page']) : 1;
             // display blogs of user $request[1]
             $memberBlog = $this->_model->getMemberByUsername($request[1]);
             if ($memberBlog) {
                 if (!isset($request[2])) {
                     $request[2] = '';
                 }
                 switch ($request[2]) {
                     case 'cat':
                         if (isset($request[3])) {
                             $p = new BlogPage($this->_model);
                             $p->page = $page;
                             $p->category = $request[3];
                             $p->member = $memberBlog;
                             $p->initPager($this->_model->countRecentPosts($memberBlog->id, $request[3]), $page);
                             $p->posts = $this->_model->getRecentPostsArray($memberBlog->id, $request[3], $page);
                             break;
                         }
                         // if we're not dealing with a category, fall through and hit the default
                     // if we're not dealing with a category, fall through and hit the default
                     case '':
                     default:
                         // show different blog layout for public visitors
                         if ($post = $this->_model->getPost($request[2])) {
                             $p = new BlogSinglePostPage($this->_model);
                             $p->member = $memberBlog;
                             $p->post = $post;
                         } else {
                             $p = new BlogPage($this->_model);
                             $p->page = $page;
                             $p->member = $memberBlog;
                             $p->initPager($this->_model->countRecentPosts($memberBlog->id, false), $page);
                             $p->posts = $this->_model->getRecentPostsArray($memberBlog->id, false, $page);
                         }
                         break;
                 }
             } else {
                 $p = new BlogPage($this->_model);
                 $p->page = $page;
                 $p->initPager($this->_model->countRecentPosts(false, false), $page);
                 $p->posts = $this->_model->getRecentPostsArray(false, false, $page);
             }
             return $p;
     }
 }
Esempio n. 4
0
 private function showTrip($tripid)
 {
     $trip = $this->_model->getTrip($tripid);
     $trip_data = $this->_model->getTripData();
     if (!$trip) {
         header("Location: " . PVars::getObj('env')->baseuri . "trip");
     }
     $page = new TripSingleTripPage();
     $page->trip = $trip;
     $page->trip_data = $trip_data;
     $vw = new ViewWrap($this->_view);
     $page->heading = $vw->heading_singleTrip($trip, $trip_data);
     $page->model = $this->_model;
     return $page;
     //$P->content .= $vw->displaySingleTrip($trip, $trip_data);
 }