public function execute()
 {
     if (isset($_REQUEST['passed_parameters_via_uri'])) {
         $passed_parameters_via_uri = SJB_UrlParamProvider::getParams();
         $etSID = SJB_Array::get($passed_parameters_via_uri, 0);
     }
     $field_id = SJB_Request::getVar('field_id', null);
     $etInfo = SJB_EmailTemplateEditor::getEmailTemplateInfoBySID($etSID);
     if (is_null($etSID) || is_null($field_id)) {
         $errors['PARAMETERS_MISSED'] = 1;
     } elseif (is_null($etInfo) || !isset($etInfo[$field_id])) {
         $errors['WRONG_PARAMETERS_SPECIFIED'] = 1;
     } else {
         $uploaded_file_id = $etInfo[$field_id];
         SJB_UploadFileManager::deleteUploadedFileByID($uploaded_file_id);
         $etInfo[$field_id] = '';
         $emailTemplate = new SJB_EmailTemplate($etInfo);
         $emailTemplate->setSID($etSID);
         SJB_EmailTemplateEditor::saveEmailTemplate($emailTemplate);
         SJB_HelperFunctions::redirect(SJB_System::getSystemSettings('SITE_URL') . '/edit-email-templates/' . $emailTemplate->getPropertyValue('group') . '/' . $etSID);
     }
     $tp = SJB_System::getTemplateProcessor();
     $tp->assign('errors', isset($errors) ? $errors : null);
     $tp->display('delete_uploaded_file.tpl');
 }
示例#2
0
 public static function getGroupsForList()
 {
     $groups = array();
     foreach (SJB_EmailTemplateEditor::getEmailTemplateGroups() as $groupID => $groupCaption) {
         array_push($groups, array('id' => $groupID, 'caption' => $groupCaption));
     }
     return $groups;
 }
示例#3
0
 /**
  * @param array $notification
  * @param string $groupID
  */
 public function prepareNotification(&$notification, $groupID)
 {
     if (in_array($notification['id'], $this->notificationGroups->getNotificationsWithIntegerType())) {
         $notification['type'] = 'integer';
     } else {
         $notification['type'] = 'list';
         $notification['list_values'] = SJB_EmailTemplateEditor::getEmailTemplatesForListByGroup($groupID);
     }
     $notification['is_required'] = false;
     $notification['is_system'] = false;
 }
示例#4
0
 public function execute()
 {
     $tp = SJB_System::getTemplateProcessor();
     $errors = array();
     $form_submitted = SJB_Request::getVar('action');
     $page = SJB_Request::getVar('page');
     if ($form_submitted) {
         if (SJB_System::getSystemSettings("isDemo")) {
             $errors[] = "You don't have permissions for it. This is a Demo version of the software.";
         } else {
             if (!empty($_REQUEST['bad_words'])) {
                 $_REQUEST['bad_words'] = trim($_REQUEST['bad_words']);
             }
             SJB_Settings::updateSettings($_REQUEST);
         }
         if ($form_submitted == 'apply_settings') {
             $tp->assign("page", $page);
         }
     }
     $i18n = SJB_I18N::getInstance();
     $tp->assign("settings", SJB_Settings::getSettings());
     $ds = DIRECTORY_SEPARATOR;
     $path = SJB_BASE_DIR . "system{$ds}cache{$ds}agents_bots.txt";
     $disable_bots = file_get_contents($path);
     $tp->assign("disable_bots", $disable_bots);
     $tp->assign("timezones", timezone_identifiers_list());
     if (!SJB_SubAdmin::getSubAdminSID()) {
         $tp->assign("subadmins", SJB_SubAdminManager::getAllSubAdminsInfo());
     }
     $tp->assign("errors", $errors);
     $tp->assign("i18n_domains", $i18n->getDomainsData());
     $tp->assign("i18n_languages", $i18n->getActiveLanguagesData());
     $tp->assign("countries", SJB_CountriesManager::getAllCountriesCodesAndNames());
     $tp->assign('listingEmailTemplates', SJB_EmailTemplateEditor::getEmailTemplatesByGroup(SJB_NotificationGroups::GROUP_ID_LISTING));
     $tp->assign('productEmailTemplates', SJB_EmailTemplateEditor::getEmailTemplatesByGroup(SJB_NotificationGroups::GROUP_ID_PRODUCT));
     $tp->assign('userEmailTemplates', SJB_EmailTemplateEditor::getEmailTemplatesByGroup(SJB_NotificationGroups::GROUP_ID_USER));
     $tp->assign('otherEmailTemplates', SJB_EmailTemplateEditor::getEmailTemplatesByGroup(SJB_NotificationGroups::GROUP_ID_OTHER));
     $tp->display("settings.tpl");
 }
示例#5
0
 /**
  * @param array $listingsSIDs
  * @param array $guestAlertInfo
  * @param int $listingTypeSID
  * @return array|bool|null
  */
 public static function sendGuestAlertNewListingsFoundLetter(array $listingsSIDs, array $guestAlertInfo, $listingTypeSID)
 {
     $emailTplSID = SJB_ListingTypeManager::getListingTypeEmailTemplateForGuestAlert($listingTypeSID);
     $listings = array();
     foreach ($listingsSIDs as $listingSID) {
         $listing = SJB_ListingManager::getObjectBySID($listingSID);
         if ($listing instanceof SJB_Listing) {
             $listing = SJB_ListingManager::createTemplateStructureForListing($listing);
             array_push($listings, $listing);
         }
     }
     try {
         $guestAlert = SJB_GuestAlertManager::getObjectBySID($guestAlertInfo['sid']);
     } catch (Exception $e) {
     }
     $data = array('listings' => $listings, 'key' => $guestAlert->getVerificationKeyForEmail());
     $email = SJB_EmailTemplateEditor::getEmail($guestAlertInfo['email'], $emailTplSID, $data);
     return $email->send('Guest Alert New Listings Found');
 }
示例#6
0
 public static function sendMailing($text, $emailAddress, $subject, $file = '')
 {
     $email = SJB_EmailTemplateEditor::getEmail($emailAddress, 34, array('subject' => $subject, 'message' => $text));
     if ($file) {
         $email->setFile('../' . $file);
     }
     return $email->send();
 }
示例#7
0
 /**
  * @static
  * @param int $templateSID
  * @return array|bool|int
  */
 public static function deleteEmailTemplateBySID($templateSID)
 {
     $emailTemplate = SJB_EmailTemplateEditor::getEmailTemplateBySID($templateSID);
     if (!empty($emailTemplate)) {
         $userDefined = $emailTemplate->getPropertyValue('user_defined');
         if ($userDefined) {
             // delete atachment
             $fileProp = $emailTemplate->getProperty('file');
             if ($fileProp) {
                 SJB_UploadFileManager::deleteUploadedFileByID($fileProp->value);
             }
             return SJB_ObjectDBManager::deleteObjectInfoFromDB('email_templates', $templateSID);
         }
     }
     return false;
 }
示例#8
0
 public static function sendAdminBannerAddedLetter($userSID, $bannerGroup)
 {
     $user = SJB_UserManager::getObjectBySID($userSID);
     $user = SJB_UserManager::createTemplateStructureForUser($user);
     $params = array('user' => $user, 'bannerGroup' => $bannerGroup);
     $admin_email = SJB_Settings::getSettingByName('notification_email');
     $email = SJB_EmailTemplateEditor::getEmail($admin_email, self::EMAIL_TEMPLATE_SID_SND_ADMIN_BANNER_ADDED_LTR, $params);
     if ($email) {
         return $email->send();
     }
     return null;
 }
示例#9
0
 public static function getDetails()
 {
     return array(array('id' => 'id', 'caption' => 'ID', 'type' => 'unique_string', 'validators' => array('SJB_IdValidator', 'SJB_UniqueSystemValidator'), 'length' => '20', 'table_name' => 'listing_types', 'is_required' => true, 'is_system' => true), array('id' => 'name', 'caption' => 'Name', 'type' => 'string', 'length' => '20', 'table_name' => 'listing_types', 'is_required' => true, 'is_system' => true), array('id' => 'waitApprove', 'caption' => 'Approve Postings by Admin', 'type' => 'boolean', 'length' => '', 'table_name' => 'listing_types_properties', 'comment' => 'Enable this setting if you want postings of this type<br /> to be approved by admin, before appearing on the site', 'is_required' => false, 'is_system' => true), array('id' => 'show_brief_or_detailed', 'caption' => 'Enable Brief/Detailed Search Results option', 'type' => 'boolean', 'length' => '', 'table_name' => 'listing_types_properties', 'is_required' => false, 'is_system' => true), array('id' => 'email_alert', 'caption' => 'Email Alert Template', 'type' => 'list', 'list_values' => SJB_EmailTemplateEditor::getEmailTemplatesForListByGroup(SJB_NotificationGroups::GROUP_ID_ALERTS), 'table_name' => 'listing_types_properties', 'is_required' => false, 'is_system' => true), array('id' => 'guest_alert_email', 'caption' => 'Guest Alert Email Template', 'type' => 'list', 'list_values' => SJB_EmailTemplateEditor::getEmailTemplatesForListByGroup(SJB_NotificationGroups::GROUP_ID_ALERTS), 'table_name' => 'listing_types_properties', 'is_required' => false, 'is_system' => true));
 }
示例#10
0
 /**
  * @static
  * @param $fileName
  * @param int $etSID - email template SID
  * @return bool
  */
 public static function openEmailTemplateFile($fileName, $etSID)
 {
     $emailTpl = SJB_EmailTemplateEditor::getEmailTemplateBySID($etSID);
     $file_info = SJB_UploadFileManager::getEmailTemplateFileMimeTypeByFilename($emailTpl->getPropertyValue('file'));
     if ($file_info) {
         $file_link = SJB_UploadFileManager::getUploadedFileLink($file_info['id'], false, true);
         for ($i = 0; $i < ob_get_level(); $i++) {
             ob_end_clean();
         }
         header('Content-Length:' . filesize($file_link));
         header('Content-Disposition: attachment; filename="' . $fileName . '"');
         header('Content-type: ' . $file_info['mime_type']);
         readfile($file_link);
         exit;
     }
     return false;
 }
示例#11
0
 private function deleteEmailTemplate($group, $templateSID)
 {
     SJB_EmailTemplateEditor::deleteEmailTemplateBySID($templateSID);
     SJB_HelperFunctions::redirect(SJB_System::getSystemSettings('SITE_URL') . '/edit-email-templates/' . $group);
 }