public function execute() { $breadCrumbs = new SJB_Breadcrumbs(); $navArray = $breadCrumbs->getBreadcrumbs(); $tp = SJB_System::getTemplateProcessor(); $tp->assign('navArray', $navArray); $tp->assign('navCount', count($navArray)); $tp->display('show_breadcrumbs.tpl'); }
public function execute() { $template_processor = SJB_System::getTemplateProcessor(); $listingTypeSID = isset($_REQUEST['sid']) ? $_REQUEST['sid'] : null; if (!is_null($listingTypeSID)) { $form_submitted = SJB_Request::getVar('action', ''); $listing_type_info = SJB_ListingTypeManager::getListingTypeInfoBySID($listingTypeSID); $approveSettingChanged = $listing_type_info['waitApprove'] != SJB_Request::getVar('waitApprove'); $listing_type_info = array_merge($listing_type_info, $_REQUEST); $listingType = new SJB_ListingType($listing_type_info); $listingType->setSID($listingTypeSID); $edit_form = new SJB_Form($listingType); $listingTypeEmailAlert = $listingType->getPropertyValue('email_alert'); if (empty($listingTypeEmailAlert)) { $listingType->setPropertyValue('email_alert', 0); } $listingTypeEmailAlertForGuests = $listingType->getPropertyValue('guest_alert_email'); if (empty($listingTypeEmailAlertForGuests)) { $listingType->setPropertyValue('guest_alert_email', 0); } $errors = array(); if ($form_submitted && $edit_form->isDataValid($errors)) { SJB_Breadcrumbs::updateBreadcrumbsByListingTypeSID($listingTypeSID, $listingType->getPropertyValue('name')); SJB_PageManager::updatePagesByListingTypeSID($listingTypeSID, $listingType->getPropertyValue('name')); SJB_ListingTypeManager::saveListingType($listingType); if ($approveSettingChanged) { SJB_BrowseDBManager::rebuildBrowses(); } if ($form_submitted == 'save_info') { SJB_HelperFunctions::redirect(SJB_System::getSystemSettings('SITE_URL') . '/listing-types/'); } } $template_processor->assign('errors', $errors); $template_processor->assign('listing_type_sid', $listingTypeSID); $listing_fields_info = SJB_ListingFieldManager::getListingFieldsInfoByListingType($listingTypeSID); $listing_fields = array(); $listing_field_sids = array(); foreach ($listing_fields_info as $listing_field_info) { if ($listing_field_info['type'] == 'logo') { continue; } $listing_field = new SJB_ListingField($listing_field_info); $listing_field->setSID($listing_field_info['sid']); $listing_fields[] = $listing_field; $listing_field_sids[] = $listing_field_info['sid']; } $edit_form->registerTags($template_processor); $template_processor->assign("listing_type_info", $listing_type_info); $template_processor->assign("form_fields", $edit_form->getFormFieldsInfo()); $template_processor->display("edit_listing_type.tpl"); $form_collection = new SJB_FormCollection($listing_fields); $form_collection->registerTags($template_processor); $template_processor->assign("listing_field_sids", $listing_field_sids); $template_processor->display("listing_type_fields.tpl"); } }
public function execute() { $listingTypeSID = SJB_Request::getVar('sid', null); if (!is_null($listingTypeSID)) { SJB_Breadcrumbs::deleteBreadcrumbsByListingTypeSID($listingTypeSID); SJB_ListingTypeManager::deleteListingTypeBySID($listingTypeSID); SJB_HelperFunctions::redirect(SJB_System::getSystemSettings('SITE_URL') . "/listing-types/"); } echo 'The system cannot proceed as Listing Type SID is not set'; }
public function execute() { $breadcrumbs = new SJB_Breadcrumbs(); $errors = array(); if (isset($_REQUEST['action'])) { // проверим, задали element_id или нет if (!isset($_REQUEST['element_id'])) { // задаем текст ошибки и сбрасываем 'action', чтобы ничего не выполнялось $errors[] = "NOT_ID"; $_REQUEST['action'] = ''; } else { $element_id = $_REQUEST['element_id']; } switch ($_REQUEST['action']) { case 'add': // если была отправка формы добавления элемента if (isset($_REQUEST['addElement']) && $_REQUEST['addElement'] != '') { $item_name = $_REQUEST['item_name']; $item_uri = $_REQUEST['item_uri']; $breadcrumbs->addElement($item_name, $item_uri, $element_id); $site_url = SJB_System::getSystemSettings("SITE_URL"); SJB_HelperFunctions::redirect($site_url . "/manage-breadcrumbs/"); } $parentElement = $breadcrumbs->getElement($element_id); $tp = SJB_System::getTemplateProcessor(); $tp->assign("parentElement", $parentElement); $tp->display("add_item.tpl"); break; case 'edit': // если была отправка формы редактирования элемента if (isset($_REQUEST['updateElement']) && $_REQUEST['updateElement'] != '') { $item_name = $_REQUEST['item_name']; $item_uri = $_REQUEST['item_uri']; $breadcrumbs->updateElement($item_name, $item_uri, $element_id); $site_url = SJB_System::getSystemSettings("SITE_URL"); SJB_HelperFunctions::redirect($site_url . "/manage-breadcrumbs/"); } $editElement = $breadcrumbs->getElement($element_id); $tp = SJB_System::getTemplateProcessor(); $tp->assign("editElement", $editElement); $tp->display("edit_item.tpl"); break; case 'delete': $breadcrumbs->deleteElement($element_id); $site_url = SJB_System::getSystemSettings("SITE_URL"); SJB_HelperFunctions::redirect($site_url . "/manage-breadcrumbs/"); break; default: break; } } $navStructure = $breadcrumbs->makeStructure(); $tp = SJB_System::getTemplateProcessor(); $tp->assign('ERRORS', $errors); $tp->assign("navStructure", $navStructure); $tp->display("manage_breadcrumbs.tpl"); }
public function execute() { $listing_type = new SJB_ListingType($_REQUEST); $add_listing_type_form = new SJB_Form($listing_type); $form_is_submitted = SJB_Request::getVar('action') == 'add'; $errors = null; if ($form_is_submitted && $add_listing_type_form->isDataValid($errors)) { SJB_ListingTypeManager::saveListingType($listing_type); $this->createListingTypePage($listing_type); $listingTypeID = $listing_type->getID(); if (in_array($listingTypeID, array('Job', 'Resume'))) { $title = $listing_type->getPropertyValue('name'); } else { $title = $listing_type->getPropertyValue('name') . ' Listing'; } $pageInfo = array('page_id' => 'Post' . $listingTypeID, 'page_name' => 'Post ' . $title); $page = new SJB_PostingPages($pageInfo, $listing_type->getSID()); SJB_PostingPagesManager::savePage($page); SJB_PageManager::addPage(array('uri' => '/' . strtolower($listingTypeID) . '-preview/', 'module' => 'classifieds', 'function' => 'display_my_listing', 'template' => '', 'title' => $title . ' Preview', 'access_type' => 'user', 'parameters' => array('display_template' => 'display_listing.tpl'), 'keywords' => '', 'description' => '', 'pass_parameters_via_uri' => 1)); SJB_PageManager::addPage(array('uri' => '/my-' . strtolower($listingTypeID) . '-details/', 'module' => 'classifieds', 'function' => 'display_my_listing', 'template' => '', 'title' => 'My ' . $title . ' Details', 'access_type' => 'user', 'parameters' => array('display_template' => 'display_listing.tpl'), 'keywords' => '', 'description' => '', 'pass_parameters_via_uri' => 1)); SJB_PageManager::addPage(array('uri' => '/print-my-' . strtolower($listingTypeID) . '/', 'module' => 'classifieds', 'function' => 'display_my_listing', 'template' => 'blank.tpl', 'title' => 'Print ' . $title, 'access_type' => 'user', 'parameters' => array('display_template' => 'print_listing.tpl', 'listing_type_id' => $listingTypeID), 'keywords' => '', 'description' => '', 'pass_parameters_via_uri' => 0)); SJB_PageManager::addPage(array('uri' => '/print-' . strtolower($listingTypeID) . '/', 'module' => 'classifieds', 'function' => 'display_listing', 'template' => 'blank.tpl', 'title' => 'Print ' . $title, 'access_type' => 'user', 'parameters' => array('display_template' => 'print_listing.tpl', 'listing_type_id' => $listingTypeID), 'keywords' => '', 'description' => '', 'pass_parameters_via_uri' => 0)); SJB_PageManager::addPage(array('uri' => '/manage-' . strtolower($listingTypeID) . '/', 'module' => 'classifieds', 'function' => 'manage_listing', 'template' => '', 'title' => 'Manage ' . $title, 'access_type' => 'user', 'parameters' => array(), 'keywords' => '', 'description' => '', 'pass_parameters_via_uri' => 1)); SJB_PageManager::addPage(array('uri' => '/edit-' . strtolower($listingTypeID) . '/', 'module' => 'classifieds', 'function' => 'edit_listing', 'template' => '', 'title' => 'Edit ' . $title, 'access_type' => 'user', 'parameters' => '', 'keywords' => '', 'description' => '', 'pass_parameters_via_uri' => 0)); $breadCrumbs = new SJB_Breadcrumbs(); $parentId = $breadCrumbs->getElementByUri('/my-listings/'); $uri = '/my-listings/' . $listingTypeID . '/'; $breadCrumbs->addElement('My ' . $title . 's', $uri, $parentId); $newBreadcrumbId = $breadCrumbs->getElementByUri($uri); $breadCrumbs->addElement('My ' . $title . ' Preview', '/my-' . strtolower($listingTypeID) . '-details/', $newBreadcrumbId); $breadCrumbs->addElement('Edit ' . $title, '/edit-' . strtolower($listingTypeID) . '/', $newBreadcrumbId); $breadCrumbs->addElement('Manage ' . $title, '/manage-' . strtolower($listingTypeID) . '/', $newBreadcrumbId); SJB_HelperFunctions::redirect(SJB_System::getSystemSettings('SITE_URL') . "/listing-types/"); } else { $template_processor = SJB_System::getTemplateProcessor(); $template_processor->assign("errors", $errors); $add_listing_type_form->registerTags($template_processor); $template_processor->assign("form_fields", $add_listing_type_form->getFormFieldsInfo()); $template_processor->display("add_listing_type.tpl"); } }
public static function updateBreadcrumbsByListingTypeSID($listingTypeSID, $newListingTypeName) { $listingTypeID = SJB_ListingTypeManager::getListingTypeIDBySID($listingTypeSID); if (!in_array($listingTypeID, array('Job', 'Resume'))) { $newListingTypeName = $newListingTypeName . ' Listing'; } $breadcrumb = new SJB_Breadcrumbs(); $uris = self::getBreadcrumbsUrisByListingTypeID($listingTypeID); foreach ($uris as $uri) { $title = ''; switch ($uri) { case '/my-listings/' . $listingTypeID . '/': $title = 'My ' . $newListingTypeName . 's'; break; case '/my-' . strtolower($listingTypeID) . '-details/': $title = 'My ' . $newListingTypeName . ' Preview'; break; case '/edit-' . strtolower($listingTypeID) . '/': $title = 'Edit ' . $newListingTypeName; break; case '/manage-' . strtolower($listingTypeID) . '/': $title = 'Manage ' . $newListingTypeName; break; } if (empty($title)) { continue; } $breadcrumbID = $breadcrumb->getElementByUri($uri); $breadcrumb->updateElement($title, $uri, $breadcrumbID); } }