예제 #1
0
 /**
  *	Return instance of the class
  */
 public static function Instance()
 {
     if (self::$instance == null) {
         self::$instance = new Inquiries();
     }
     return self::$instance;
 }
예제 #2
0
    /**
     * After addition record
     */
    public function AfterInsertRecord()
    {
        global $objSettings, $objLogin;
        $maximum_replies = ModulesSettings::Get('inquiries', 'maximum_replies');
        // increase by 1 a number of replies and update is_active field
        $sql = 'UPDATE ' . TABLE_INQUIRIES . '
				SET replies_count = replies_count + IF(replies_count < ' . (int) $maximum_replies . ', 1, 0),
					is_active = IF(replies_count > (' . (int) $maximum_replies . ' - 1), 0, 1)
				WHERE id = ' . (int) $this->params['inquiry_id'];
        database_void_query($sql);
        $objInquiries = Inquiries::Instance();
        $inquiry_info = $objInquiries->GetInfoByID($this->params['inquiry_id']);
        $visitor_email = isset($inquiry_info['email']) ? $inquiry_info['email'] : '';
        $visitor_name = isset($inquiry_info['name']) ? $inquiry_info['name'] : '';
        $reply_details = _MESSAGE . ':';
        $reply_details .= '<br>-----------<br>';
        $reply_details .= $this->params['message'];
        $reply_details .= '<br><br>';
        $reply_details .= _CUSTOMER_DETAILS . ':';
        $reply_details .= '<br>-----------<br>';
        $reply_details .= _FIRST_NAME . ': ' . $objLogin->GetLoggedFirstName() . '<br>';
        $reply_details .= _LAST_NAME . ': ' . $objLogin->GetLoggedLastName() . '<br>';
        $reply_details .= _EMAIL . ': ' . $objLogin->GetLoggedEmail() . '<br>';
        // send inquiry reply to visitor
        send_email($visitor_email, $objSettings->GetParameter('admin_email'), 'inquiry_reply', array('{FIRST NAME}' => '', '{LAST NAME}' => $visitor_name, '{REPLY DETAILS}' => $reply_details, '{WEB SITE}' => $_SERVER['SERVER_NAME'], '{BASE URL}' => APPHP_BASE));
    }
예제 #3
0
 /**
  *	Draws menus 
  *		@param $menu_position
  *		@param $draw
  */
 public static function DrawMenu($menu_position = 'left', $draw = true)
 {
     global $objSettings, $objLogin;
     $output = '';
     if ($menu_position == 'left') {
         $objLogin->DrawLoginLinks();
     }
     // Get all menus which have items (links to pages)
     $menus = self::GetMenus($menu_position);
     $menus_count = $menus[1];
     $objNews = News::Instance();
     $show_news_block = ModulesSettings::Get('news', 'show_news_block');
     $show_subscribe_block = ModulesSettings::Get('news', 'show_newsletter_subscribe_block');
     if (Modules::IsModuleInstalled('news') && ($show_news_block == 'right side' || $show_subscribe_block == 'right side')) {
         $menus_count++;
     }
     $show_inquiries_block = ModulesSettings::Get('inquiries', 'show_inquiries_block');
     if (Modules::IsModuleInstalled('inquiries') && $show_inquiries_block == 'right side') {
         $menus_count++;
     }
     if (ModulesSettings::Get('listings', 'show_categories_side_block') == $menu_position . ' side') {
         $output .= Categories::DrawSideBlock(false);
         $menus_count++;
     }
     if (ModulesSettings::Get('listings', 'show_featured_block') == $menu_position . ' side') {
         $output .= Listings::DrawFeaturedBlock(false);
         $menus_count++;
     }
     if (ModulesSettings::Get('listings', 'show_recent_block') == $menu_position . ' side') {
         $output .= Listings::DrawRecentBlock(false);
         $menus_count++;
     }
     if (ModulesSettings::Get('listings', 'show_directory_statistics') == $menu_position . ' side') {
         $menus_count++;
     }
     if ($menus_count > 0) {
         $output .= '<div id="column-' . $menu_position . '-wrapper">';
     }
     // Display all menu titles (names) according to their order
     for ($menu_ind = 0; $menu_ind < $menus[1]; $menu_ind++) {
         // Start draw new menu
         $output .= draw_block_top($menus[0][$menu_ind]['menu_name'], '', 'maximazed', false);
         $menu_links = self::GetMenuLinks($menus[0][$menu_ind]['id'], Application::Get('lang'), $menu_position);
         if ($menu_links[1] > 0) {
             $output .= '<ul>';
         }
         for ($menu_link_ind = 0; $menu_link_ind < $menu_links[1]; $menu_link_ind++) {
             $class = Application::Get('page_id') == $menu_links[0][$menu_link_ind]['id'] ? ' active' : '';
             if ($menu_links[0][$menu_link_ind]['content_type'] == 'link') {
                 $output .= '<li>' . prepare_permanent_link($menu_links[0][$menu_link_ind]['link_url'], $menu_links[0][$menu_link_ind]['menu_link'], $menu_links[0][$menu_link_ind]['link_target'], 'main_menu_link' . $class) . '</li>';
             } else {
                 // draw current menu link
                 $output .= '<li>' . prepare_link('pages', 'pid', $menu_links[0][$menu_link_ind]['id'], $menu_links[0][$menu_link_ind]['page_key'], $menu_links[0][$menu_link_ind]['menu_link'], 'main_menu_link' . $class) . '</li>';
             }
         }
         if ($menu_links[1] > 0) {
             $output .= '</ul>';
         }
         $output .= draw_block_bottom(false);
     }
     if ($menu_position == 'left') {
         if (!$objLogin->IsLoggedIn() || Application::Get('preview') == 'yes') {
             if (Modules::IsModuleInstalled('customers') && ModulesSettings::Get('customers', 'allow_login') == 'yes') {
                 if (Application::Get('customer') != 'login') {
                     $output .= Customers::DrawLoginFormBlock(false);
                 }
             }
         }
         if (Modules::IsModuleInstalled('news')) {
             if ($show_news_block == 'left side') {
                 $output .= $objNews->DrawNewsBlock(false);
             }
             if ($show_subscribe_block == 'left side') {
                 $output .= $objNews->DrawSubscribeBlock(false);
             }
         }
         if (Modules::IsModuleInstalled('inquiries')) {
             if ($show_inquiries_block == 'left side') {
                 $output .= Inquiries::DrawLastInquiriesBlock(false);
             }
         }
     }
     if ($menu_position == 'right') {
         if (Modules::IsModuleInstalled('inquiries')) {
             if ($show_inquiries_block == 'right side') {
                 $output .= Inquiries::DrawLastInquiriesBlock(false);
             }
         }
         if (Modules::IsModuleInstalled('news')) {
             if ($show_news_block == 'right side') {
                 $output .= $objNews->DrawNewsBlock(false);
             }
             if ($show_subscribe_block == 'right side') {
                 $output .= $objNews->DrawSubscribeBlock(false);
             }
         }
     }
     if (ModulesSettings::Get('listings', 'show_directory_statistics') == $menu_position . ' side') {
         $output .= Listings::DrawDirectoryStatistics(false);
     }
     if ($menu_position == 'right') {
         if (Modules::IsModuleInstalled('adsense')) {
             $output .= '<div class="adsense-vertical">' . Adsense::GetVerticalBanerCode() . '</div>';
         }
     }
     if ($menus_count > 0) {
         $output .= '</div>';
     }
     $output .= '<br />';
     if ($draw) {
         echo $output;
     } else {
         return $output;
     }
 }
예제 #4
0
* @copyright (c) 2011 ApPHP
* @author ApPHP <*****@*****.**>
* @license http://www.gnu.org/licenses/
*/
// *** Make sure the file isn't accessed directly
defined('APPHP_EXEC') or die('Restricted Access');
//--------------------------------------------------------------------------
if ($objLogin->IsLoggedInAsCustomer() && Modules::IsModuleInstalled('inquiries')) {
    $action = MicroGrid::GetParameter('action');
    $rid = MicroGrid::GetParameter('rid');
    $act = MicroGrid::GetParameter('act', false);
    $mode = 'view';
    $msg = '';
    $inq_id = isset($_GET['inq_id']) ? (int) $_GET['inq_id'] : '0';
    $customer_id = $objLogin->GetLoggedID();
    $objInquiries = Inquiries::Instance();
    if ($objInquiries->CustomerRelatedToInquire($inq_id)) {
        $objInquiriesReplies = new InquiriesReplies($inq_id, $customer_id);
        if ($act == 'add') {
            $customer_replies = !empty($customer_id) ? InquiriesReplies::GetInquiryRepliesForCustomer($inq_id, $customer_id) : 0;
            $inquiry_info = $objInquiries->GetInfoByID($inq_id);
            $is_active = isset($inquiry_info['is_active']) ? $inquiry_info['is_active'] : 0;
            $add_mode = $is_active && !empty($customer_id) && !$customer_replies ? true : false;
            if ($add_mode) {
                $action = 'add';
                $objInquiriesReplies->SetActions(array('add' => $add_mode));
            }
        }
        if ($action == 'add') {
            $mode = 'add';
        } else {
예제 #5
0
			<div id="sidebar_left" class="no_print">
				<!-- LEFT COLUMN -->
				<?php 
// Draw menu tree
Menu::DrawMenu('left');
?>
				<!-- END OF LEFT COLUMN -->			
			</div>
			<div id="main">				
				<!-- BANNERS -->
				<?php 
echo $banner_image;
?>
				<!-- INQUIRIES GUIDE BLOCK -->
				<?php 
Inquiries::DrawTopGuideBlock();
?>
	
				
				<div class="center_box_wrapper <?php 
echo Application::Get('defined_alignment');
?>
">
				<!-- MAIN CONTENT -->
				<?php 
if (Application::Get('page') != '' && file_exists('page/' . Application::Get('page') . '.php')) {
    include_once 'page/' . Application::Get('page') . '.php';
} else {
    if (Application::Get('customer') != '' && file_exists('customer/' . Application::Get('customer') . '.php')) {
        if (Modules::IsModuleInstalled('customers')) {
            include_once 'customer/' . Application::Get('customer') . '.php';
예제 #6
0
    /**
     * Run - called by outside cron
     */
    public static function Run()
    {
        // add here your code...
        // Class::Method();
        $perform_actions = false;
        // update last time running
        $sql = 'SELECT
					cron_type,
					cron_run_last_time,
					cron_run_period,
					cron_run_period_value,
					CASE
						WHEN cron_run_last_time = \'0000-00-00 00:00:00\' THEN \'999\'
						WHEN cron_run_period = \'minute\' THEN TIMESTAMPDIFF(MINUTE, cron_run_last_time, \'' . date('Y-m-d H:i:s') . '\')
						ELSE TIMESTAMPDIFF(HOUR, cron_run_last_time, \'' . date('Y-m-d H:i:s') . '\')
					END as time_diff										
				FROM ' . TABLE_SETTINGS;
        $result = database_query($sql, DATA_ONLY, FIRST_ROW_ONLY);
        if ($result['cron_type'] == 'batch') {
            $perform_actions = true;
        } else {
            if ($result['cron_type'] == 'non-batch' && $result['time_diff'] > $result['cron_run_period_value']) {
                $perform_actions = true;
            } else {
                $perform_actions = false;
            }
        }
        if ($perform_actions) {
            // update Feeds
            RSSFeed::UpdateFeeds();
            if (self::$PROJECT == 'ShoppingCart') {
                // close expired discount campaigns
                Campaigns::UpdateStatus();
                // remove expired orders
                Orders::RemoveExpired();
            } else {
                if (self::$PROJECT == 'HotelSite') {
                    // close expired discount campaigns
                    Campaigns::UpdateStatus();
                    // close expired coupons
                    Coupons::UpdateStatus();
                    // remove expired 'Preparing' bookings
                    Bookings::RemoveExpired();
                } else {
                    if (self::$PROJECT == 'BusinnessDirectory') {
                        // close expired lisitngs
                        Listings::UpdateStatus();
                        // remove old inquiries
                        Inquiries::RemoveOld();
                    } else {
                        if (self::$PROJECT == 'MedicalAppointment') {
                            // remove expired appointments
                            Appointments::RemoveExpired();
                            // send reminders for patient and doctor
                            Appointments::SendReminders();
                        } else {
                            if (self::$PROJECT == 'MicroBlog') {
                                // close expired polls
                                Pools::UpdateStatus();
                            }
                        }
                    }
                }
            }
            // update last time running
            $sql = 'UPDATE ' . TABLE_SETTINGS . ' SET cron_run_last_time = \'' . date('Y-m-d H:i:s') . '\'';
            database_void_query($sql);
        }
    }
예제 #7
0
<?php

/**
* @project ApPHP Business Directory
* @copyright (c) 2011 ApPHP
* @author ApPHP <*****@*****.**>
* @license http://www.gnu.org/licenses/
*/
// *** Make sure the file isn't accessed directly
defined('APPHP_EXEC') or die('Restricted Access');
//--------------------------------------------------------------------------
if (Modules::IsModuleInstalled('inquiries')) {
    draw_title_bar($params['inquiry_type'] == '1' ? _SEND_DIRECT_INQUIRY : _SEND_INQUIRY);
    if (!empty($msg)) {
        echo $msg;
    }
    if ($params['inquiry_type'] == '1') {
        Inquiries::DrawInquiryDirectForm($params);
    } else {
        Inquiries::DrawInquiryForm($params);
    }
} else {
    draw_title_bar(_PAGE);
    draw_important_message(_NOT_AUTHORIZED);
}