예제 #1
0
function tzs_front_end_following_handler($atts)
{
    ob_start();
    $sp = tzs_validate_search_parameters();
    $s_sql = tzs_search_parameters_to_sql($sp, 'sh');
    $s_title = tzs_search_parameters_to_str($sp);
    $errors = $sp['errors'];
    $show_table = true;
    if (strlen($s_title) == 0 && count($errors) == 0) {
        $show_table = false;
        //$errors = array("Укажите параметры поиска");
    }
    if (count($errors) > 0) {
        print_errors($errors);
    }
    ?>
	<a href="javascript:showSearchDialog();" id="edit_search">Изменить параметры поиска</a>
	<?php 
    if (count($errors) == 0 && $show_table) {
        if (strlen($s_title) > 0) {
            ?>
			<div id="search_info">Попутные грузы <?php 
            echo $s_title;
            ?>
</div>
		<?php 
        } else {
            ?>
			<div id="search_info">Параметры поиска не заданы</div>
		<?php 
        }
        $page = current_page_number();
        ?>
	<a tag="page" id="realod_btn" href="<?php 
        echo build_page_url($page);
        ?>
">Обновить</a>
	<?php 
        global $wpdb;
        $url = current_page_url();
        $pp = TZS_RECORDS_PER_PAGE;
        $sql = "SELECT COUNT(*) as cnt FROM " . TZS_SHIPMENT_TABLE . " WHERE active=1 {$s_sql};";
        $res = $wpdb->get_row($sql);
        if (count($res) == 0 && $wpdb->last_error != null) {
            print_error('Не удалось отобразить список грузов. Свяжитесь, пожалуйста, с администрацией сайта');
        } else {
            $records = $res->cnt;
            $pages = ceil($records / $pp);
            if ($pages == 0) {
                $pages = 1;
            }
            if ($page > $pages) {
                $page = $pages;
            }
            $from = ($page - 1) * $pp;
            $sql = "SELECT * FROM " . TZS_SHIPMENT_TABLE . " WHERE active=1 {$s_sql} ORDER BY time DESC LIMIT {$from},{$pp};";
            $res = $wpdb->get_results($sql);
            if (count($res) == 0 && $wpdb->last_error != null) {
                print_error('Не удалось отобразить список грузов. Свяжитесь, пожалуйста, с администрацией сайта');
            } else {
                if (count($res) == 0) {
                    ?>
					<div id="info">По Вашему запросу ничего не найдено.</div>
				<?php 
                } else {
                    ?>
			<script src="/wp-content/plugins/tzs/assets/js/distance.js"></script>
			<table id="tbl_shipments">
			<tr>
				<th id="numb">Номер заявки</th>
				<th id="adds">Дата размещения</th>
				<th id="date-load">Дата погрузки<br>Дата выгрузки</th>
				<th id="numb-unload" nonclickable="true">Пункт погрузки<br>Пункт выгрузки</th>
				<th id="desc">Описание груза</th>
				<th id="wight">Вес</th>
				<th id="vol">Объем</th>
				<th id="type">Тип транспорта</th>
				<th id="cost">Цена</th>
				<th id="comm">Комментарии</th>
			</tr>
			<?php 
                    foreach ($res as $row) {
                        $type = isset($GLOBALS['tzs_tr_types'][$row->trans_type]) ? $GLOBALS['tzs_tr_types'][$row->trans_type] : "";
                        ?>
				<tr rid="<?php 
                        echo $row->id;
                        ?>
">
				<td><?php 
                        echo $row->id;
                        ?>
</td>
				<td><b><?php 
                        echo convert_date_no_year($row->time);
                        ?>
</b><br/><?php 
                        echo convert_time_only($row->time);
                        ?>
</td>
				<td><?php 
                        echo convert_date_no_year($row->sh_date_from);
                        ?>
<br/><?php 
                        echo convert_date_no_year($row->sh_date_to);
                        ?>
</td>
				<td>
					<?php 
                        echo tzs_city_to_str($row->from_cid, $row->from_rid, $row->from_sid, $row->sh_city_from);
                        ?>
<br/><?php 
                        echo tzs_city_to_str($row->to_cid, $row->to_rid, $row->to_sid, $row->sh_city_to);
                        ?>
					<?php 
                        if ($row->distance > 0) {
                            ?>
						<br/>
						<?php 
                            echo tzs_make_distance_link($row->distance, false, array($row->sh_city_from, $row->sh_city_to));
                            ?>
					<?php 
                        }
                        ?>
				</td>
				
				<td><?php 
                        echo htmlspecialchars($row->sh_descr);
                        ?>
</td>
				
				<?php 
                        if ($row->sh_weight > 0) {
                            ?>
					<td><?php 
                            echo remove_decimal_part($row->sh_weight);
                            ?>
 т</td>
				<?php 
                        } else {
                            ?>
					<td>&nbsp;</td>
				<?php 
                        }
                        ?>
				
				<?php 
                        if ($row->sh_volume > 0) {
                            ?>
					<td><?php 
                            echo remove_decimal_part($row->sh_volume);
                            ?>
 м³</td>
				<?php 
                        } else {
                            ?>
					<td>&nbsp;</td>
				<?php 
                        }
                        ?>
				
				<td><?php 
                        echo $type;
                        ?>
</td>
				<td><?php 
                        echo tzs_cost_to_str($row->cost);
                        ?>
</td>
				<td><?php 
                        echo htmlspecialchars($row->comment);
                        ?>
</td>
				</tr>
				<?php 
                    }
                    ?>
			</table>
			
			<?php 
                }
                build_pages_footer($page, $pages);
            }
        }
    }
    ?>
		<script src="/wp-content/plugins/tzs/assets/js/search.js"></script>
		<script>
			var post = [];
			<?php 
    echo "// POST dump here\n";
    foreach ($_POST as $key => $value) {
        echo "post[" . tzs_encode2($key) . "] = " . tzs_encode2($value) . ";\n";
    }
    ?>
			
			function showSearchDialog() {
				doSearchDialog('cargo', post, null, true);
			}
			
			jQuery(document).ready(function(){
				jQuery('#tbl_shipments').on('click', 'td', function(e) {  
					var nonclickable = 'true' == e.delegateTarget.rows[0].cells[this.cellIndex].getAttribute('nonclickable');
					var id = this.parentNode.getAttribute("rid");
					if (!nonclickable)
						document.location = "/account/view-shipment/?id="+id;
				});
				hijackLinks(post);
				<?php 
    if (strlen($s_title) == 0) {
        ?>
showSearchDialog();<?php 
    }
    ?>
			});
		</script>
	<?php 
    $output = ob_get_contents();
    ob_end_clean();
    return $output;
}
예제 #2
0
function tzs_front_end_user_products_handler($atts)
{
    // Определяем атрибуты
    // [tzs-view-user-products user_id="1"] - указываем на странице раздела
    // [tzs-view-products] - указываем на страницах подразделов
    extract(shortcode_atts(array('user_id' => '0'), $atts, 'tzs-view-user-products'));
    ob_start();
    $sql1 = ' AND user_id=' . $user_id;
    global $wpdb;
    $page = current_page_number();
    $url = current_page_url();
    $pp = TZS_RECORDS_PER_PAGE;
    $sql = "SELECT COUNT(*) as cnt FROM " . TZS_PRODUCTS_TABLE . " WHERE active=1 {$sql1} ";
    $res = $wpdb->get_row($sql);
    if (count($res) == 0 && $wpdb->last_error != null) {
        print_error('Не удалось отобразить список товаров. Свяжитесь, пожалуйста, с администрацией сайта -count');
    } else {
        $records = $res->cnt;
        $pages = ceil($records / $pp);
        if ($pages == 0) {
            $pages = 1;
        }
        if ($page > $pages) {
            $page = $pages;
        }
        $from = ($page - 1) * $pp;
        $sql = "SELECT * FROM " . TZS_PRODUCTS_TABLE . " WHERE active=1 {$sql1} ORDER BY created DESC LIMIT {$from},{$pp}; ";
        $res = $wpdb->get_results($sql);
        if (count($res) == 0 && $wpdb->last_error != null) {
            print_error('Не удалось отобразить список товаров. Свяжитесь, пожалуйста, с администрацией сайта - record');
        } else {
            if (count($res) == 0) {
                ?>
                    <div style="clear: both;"></div>
                    <div class="errors">
                        <div id="info error">По Вашему запросу ничего не найдено.</div>
                    </div>
                    <?php 
            } else {
                ?>
                    <div>
                        <table id="tbl_products">
                        <tr>
                            <th id="tbl_products_id">Номер</th>
                            <th id="tbl_products_img">Фото</th>
                            <th id="tbl_products_dtc">Дата размещения</th>
                            <th id="title">Описание товара</th>
                            <th id="price">Стоимость товара</th>
                            <th id="descr">Форма оплаты</th>
                            <th id="cities">Город</th>
                            <th id="comm">Комментарии</th>
                        </tr>
                        <?php 
                foreach ($res as $row) {
                    ?>
                            <tr rid="<?php 
                    echo $row->id;
                    ?>
">
                                <td><?php 
                    echo $row->id;
                    ?>
</td>
                                <td>
                                    <?php 
                    if (strlen($row->image_id_lists) > 0) {
                        //$img_names = explode(';', $row->pictures);
                        $main_image_id = $row->main_image_id;
                        // Вначале выведем главное изображение
                        $attachment_info = wp_get_attachment_image_src($main_image_id, 'thumbnail');
                        if ($attachment_info !== false) {
                            //if (file_exists(ABSPATH . $img_names[0])) {
                            //echo '<img src="'.get_site_url().'/'.$img_names[0].'" alt="">';
                            echo '<img src="' . $attachment_info[0] . '" alt="">';
                            // width="50px" height="50px"
                        } else {
                            echo '&nbsp;';
                        }
                    } else {
                        echo '&nbsp;';
                    }
                    ?>
                                </td>
                                <td><?php 
                    echo convert_time($row->created);
                    ?>
</td>
                                <td><?php 
                    echo htmlspecialchars($row->title);
                    ?>
</td>
                                <td><?php 
                    echo $row->price . " " . $GLOBALS['tzs_pr_curr'][$row->currency];
                    ?>
</td>
                                <td><?php 
                    echo $GLOBALS['tzs_pr_payment'][$row->payment];
                    ?>
</td>
                                <td><?php 
                    echo tzs_city_to_str($row->from_cid, $row->from_rid, $row->from_sid, $row->city_from);
                    ?>
</td>
                                <td><?php 
                    echo htmlspecialchars($row->comment);
                    ?>
</td>
                            </tr>
                            <?php 
                }
                ?>
                        </table>
                    </div>
                <?php 
            }
            build_pages_footer($page, $pages);
        }
    }
    ////
    ?>
        <script src="/wp-content/plugins/tzs/assets/js/search.js"></script>
        <script>
                var post = [];
                <?php 
    echo "// POST dump here\n";
    foreach ($_POST as $key => $value) {
        echo "post[" . tzs_encode2($key) . "] = " . tzs_encode2($value) . ";\n";
    }
    if (!isset($_POST['type_id'])) {
        echo "post[" . tzs_encode2("type_id") . "] = " . tzs_encode2($p_id) . ";\n";
    }
    if (!isset($_POST['cur_type_id'])) {
        echo "post[" . tzs_encode2("cur_type_id") . "] = " . tzs_encode2($p_id) . ";\n";
    }
    ?>

                function showSearchDialog() {
                        doSearchDialog('products', post, null);
                        //doSearchDialog('auctions', post, null);
                }

                jQuery(document).ready(function(){
                        jQuery('#tbl_products').on('click', 'td', function(e) {  
                                var nonclickable = 'true' == e.delegateTarget.rows[0].cells[this.cellIndex].getAttribute('nonclickable');
                                var id = this.parentNode.getAttribute("rid");
                                if (!nonclickable)
                                        document.location = "/account/view-product/?id="+id;
                        });
                        hijackLinks(post);
                });
        </script>
	<?php 
    ////
    $output = ob_get_contents();
    ob_end_clean();
    return $output;
}
예제 #3
0
function tzs_front_end_user_trucks_handler($atts)
{
    // Определяем атрибуты
    // [tzs-view-user-products user_id="1"] - указываем на странице раздела
    // [tzs-view-products] - указываем на страницах подразделов
    extract(shortcode_atts(array('user_id' => '0'), $atts, 'tzs-view-user-trucks'));
    ob_start();
    $sql1 = ' AND user_id=' . $user_id;
    global $wpdb;
    $page = current_page_number();
    $url = current_page_url();
    $pp = TZS_RECORDS_PER_PAGE;
    $sql = "SELECT COUNT(*) as cnt FROM " . TZS_TRUCK_TABLE . " WHERE active=1 {$sql1} ";
    $res = $wpdb->get_row($sql);
    if (count($res) == 0 && $wpdb->last_error != null) {
        print_error('Не удалось отобразить список транспорта. Свяжитесь, пожалуйста, с администрацией сайта -count');
    } else {
        $records = $res->cnt;
        $pages = ceil($records / $pp);
        if ($pages == 0) {
            $pages = 1;
        }
        if ($page > $pages) {
            $page = $pages;
        }
        $from = ($page - 1) * $pp;
        $sql = "SELECT * FROM " . TZS_TRUCK_TABLE . " WHERE active=1 {$sql1} ORDER BY time DESC LIMIT {$from},{$pp}; ";
        $res = $wpdb->get_results($sql);
        if (count($res) == 0 && $wpdb->last_error != null) {
            print_error('Не удалось отобразить список транспорта. Свяжитесь, пожалуйста, с администрацией сайта - record');
            echo $wpdb->last_error;
        } else {
            if (count($res) == 0) {
                ?>
                    <div style="clear: both;"></div>
                    <div class="errors">
                        <div id="info error">По Вашему запросу ничего не найдено.</div>
                    </div>
                    <?php 
            } else {
                ?>
                    <div>
                        <table id="tbl_products">
                        <tr>
                            <th id="tbl_trucks_id">N, дата и время заявки</th>
                            <th id="tbl_trucks_path" nonclickable="true">Пункты погрузки /<br/>выгрузки</th>
                            <th id="tbl_trucks_dtc">Даты погрузки /<br>выгрузки</th>
                            <th id="tbl_trucks_ttr">Тип транспортного средства</th>
                            <th id="tbl_trucks_wv">Описание ТС</th>
                            <th id="tbl_trucks_wv">Желаемый груз</th>
                            <th id="tbl_trucks_cost">Cтоимость,<br/>цена 1 км</th>
                            <th id="tbl_trucks_payment">Форма оплаты</th>
                        </tr>
                        <?php 
                foreach ($res as $row) {
                    echo tzs_tr_sh_table_record_out_cont($row, 'shipments');
                }
                ?>
                        </table>
                    </div>
                <?php 
            }
            build_pages_footer($page, $pages);
        }
    }
    ////
    ?>
        <script src="/wp-content/plugins/tzs/assets/js/search.js"></script>
        <script>
                var post = [];
                <?php 
    echo "// POST dump here\n";
    foreach ($_POST as $key => $value) {
        echo "post[" . tzs_encode2($key) . "] = " . tzs_encode2($value) . ";\n";
    }
    if (!isset($_POST['type_id'])) {
        echo "post[" . tzs_encode2("type_id") . "] = " . tzs_encode2($p_id) . ";\n";
    }
    if (!isset($_POST['cur_type_id'])) {
        echo "post[" . tzs_encode2("cur_type_id") . "] = " . tzs_encode2($p_id) . ";\n";
    }
    ?>

                function showSearchDialog() {
                        doSearchDialog('products', post, null);
                        //doSearchDialog('auctions', post, null);
                }

                jQuery(document).ready(function(){
                        jQuery('#tbl_products').on('click', 'td', function(e) {  
                                var nonclickable = 'true' == e.delegateTarget.rows[0].cells[this.cellIndex].getAttribute('nonclickable');
                                var id = this.parentNode.getAttribute("rid");
                                if (!nonclickable)
                                        document.location = "/account/view-truck/?id="+id;
                        });
                        hijackLinks(post);
                });
        </script>
	<?php 
    ////
    $output = ob_get_contents();
    ob_end_clean();
    return $output;
}
예제 #4
0
function tzs_front_end_auctions_handler($atts)
{
    // Определяем атрибуты
    // [tzs-view-auctions rootcategory="1"] - указываем на странице раздела
    // [tzs-view-auctions] - указываем на страницах подразделов
    extract(shortcode_atts(array('rootcategory' => '0'), $atts, 'tzs-view-auctions'));
    ob_start();
    $p_id = get_the_ID();
    $p_title = the_title('', '', false);
    // Если указан параметр rootcategory, то выводим все товары раздела
    // Иначе - товары категории
    if ($rootcategory === '1') {
        $sql1 = ' AND type_id IN (' . tzs_build_product_types_id_str($p_id) . ')';
        $p_name = '';
    } else {
        $sql1 = ' AND type_id=' . $p_id;
        $p_name = get_post_field('post_name', $p_id);
    }
    $sp = tzs_validate_pr_search_parameters();
    $errors = $sp['errors'];
    if (count($errors) > 0) {
        print_errors($errors);
    }
    ?>
	<a href="javascript:showSearchDialog();" id="edit_search">Изменить параметры поиска</a>
    <?php 
    if (count($errors) == 0) {
        $s_sql = tzs_search_pr_parameters_to_sql($sp, '');
        $s_title = tzs_search_pr_parameters_to_str($sp);
        ?>
            <div id="search_info"><?php 
        echo $p_title;
        echo strlen($s_title) > 0 ? ' * ' . $s_title : '';
        ?>
</div>
	<?php 
        $page = current_page_number();
        ?>
	<a tag="page" id="realod_btn" href="<?php 
        echo build_page_url($page);
        ?>
">Обновить</a>
	<?php 
        global $wpdb;
        $url = current_page_url();
        $pp = TZS_RECORDS_PER_PAGE;
        $sql = "SELECT COUNT(*) as cnt FROM " . TZS_AUCTIONS_TABLE . " WHERE active=1 {$sql1} {$s_sql};";
        $res = $wpdb->get_row($sql);
        if (count($res) == 0 && $wpdb->last_error != null) {
            print_error('Не удалось отобразить список тендеров. Свяжитесь, пожалуйста, с администрацией сайта');
        } else {
            $records = $res->cnt;
            $pages = ceil($records / $pp);
            if ($pages == 0) {
                $pages = 1;
            }
            if ($page > $pages) {
                $page = $pages;
            }
            $from = ($page - 1) * $pp;
            $sql = "SELECT a.*,(SELECT COUNT(*) FROM " . TZS_AUCTION_RATES_TABLE . " c WHERE c.auction_id = a.id) AS rate_count FROM " . TZS_AUCTIONS_TABLE . " a  WHERE a.active=1 {$sql1} {$s_sql} ORDER BY a.created DESC LIMIT {$from},{$pp};";
            $res = $wpdb->get_results($sql);
            if (count($res) == 0 && $wpdb->last_error != null) {
                print_error('Не удалось отобразить список тендеров. Свяжитесь, пожалуйста, с администрацией сайта.');
            } else {
                if (count($res) == 0) {
                    ?>
                    <div style="clear: both;"></div>
                    <div class="errors">
                        <div id="info error">По Вашему запросу ничего не найдено.</div>
                    </div>
                    <?php 
                } else {
                    ?>
                    <div>
                        <table id="tbl_products">
                        <tr>
                            <th id="tbl_products_id">Номер</th>
                            <th id="tbl_auctions_lot">Тип<br>Кол-во ставок</th>
                            <th id="tbl_products_img">Фото</th>
                            <th id="tbl_products_dtc">Дата размещения<br>Дата окончания</th>
                            <th id="tbl_auctions_title">Описание</th>
                            <th id="tbl_auctions_copies">Кол-во</th>
                            <th id="tbl_products_price">Цена за единицу</th>
                            <th id="tbl_products_payment">Форма оплаты</th>
                            <th id="tbl_products_cities">Город</th>
                            <th id="tbl_products_comm">Комментарии</th>
                        </tr>
                        <?php 
                    foreach ($res as $row) {
                        ?>
                            <tr rid="<?php 
                        echo $row->id;
                        ?>
" id="<?php 
                        echo $row->is_lot == 1 ? 'tbl_auctions_tr_lot_1' : 'tbl_auctions_tr_lot_0';
                        ?>
">
                                <td><?php 
                        echo $row->id;
                        ?>
</td>
                                <td><?php 
                        echo $row->is_lot == 1 ? 'Продам' : 'Куплю';
                        ?>
<br><br><?php 
                        echo 'Ставок-' . $row->rate_count;
                        ?>
</td>
                                <td>
                                    <?php 
                        if (strlen($row->image_id_lists) > 0) {
                            $main_image_id = $row->main_image_id;
                            // Вначале выведем главное изображение
                            $attachment_info = wp_get_attachment_image_src($main_image_id, 'full');
                            if ($attachment_info !== false) {
                                ?>
                                            <div class="ienlarger">
                                                <a href="#nogo">
                                                    <img src="<?php 
                                echo $attachment_info[0];
                                ?>
" alt="thumb" class="resize_thumb">
                                                    <span>
                                                        <?php 
                                echo htmlspecialchars($row->title);
                                ?>
<br/>
                                                        <img src="<?php 
                                echo $attachment_info[0];
                                ?>
" alt="large"/>
                                                    </span>
                                                </a>
                                            </div>
                                        <?php 
                            } else {
                                echo '&nbsp;';
                            }
                        } else {
                            echo '&nbsp;';
                        }
                        ?>
                                </td>
                                <td><?php 
                        echo convert_date($row->created);
                        ?>
<br><?php 
                        echo convert_date($row->expiration);
                        ?>
</td>
                                <td><?php 
                        echo htmlspecialchars($row->title);
                        ?>
</td>
                                <td><?php 
                        echo $row->copies . " " . $GLOBALS['tzs_au_unit'][$row->unit];
                        ?>
</td>
                                <td><?php 
                        echo $row->price . " " . $GLOBALS['tzs_pr_curr'][$row->currency];
                        ?>
</td>
                                <td><?php 
                        echo $GLOBALS['tzs_pr_payment'][$row->payment];
                        ?>
</td>
                                <td><?php 
                        echo tzs_city_to_str($row->from_cid, $row->from_rid, $row->from_sid, $row->city_from);
                        ?>
</td>
                                <td><?php 
                        echo htmlspecialchars($row->comment);
                        ?>
</td>
                            </tr>
                            <?php 
                    }
                    ?>
                        </table>
                    </div>
                <?php 
                }
                build_pages_footer($page, $pages);
            }
        }
    }
    ////
    ?>
        <script src="/wp-content/plugins/tzs/assets/js/search.js"></script>
        <script>
                var post = [];
                <?php 
    echo "// POST dump here\n";
    foreach ($_POST as $key => $value) {
        echo "post[" . tzs_encode2($key) . "] = " . tzs_encode2($value) . ";\n";
    }
    if (!isset($_POST['type_id'])) {
        echo "post[" . tzs_encode2("type_id") . "] = " . tzs_encode2($p_id) . ";\n";
    }
    if (!isset($_POST['cur_type_id'])) {
        echo "post[" . tzs_encode2("cur_type_id") . "] = " . tzs_encode2($p_id) . ";\n";
    }
    if (!isset($_POST['cur_post_name']) && $p_name !== '') {
        echo "post[" . tzs_encode2("cur_post_name") . "] = " . tzs_encode2($p_name) . ";\n";
    }
    ?>

                function showSearchDialog() {
                        doSearchDialog('auctions', post, null);
                }

                jQuery(document).ready(function(){
                        jQuery('#tbl_products').on('click', 'td', function(e) {  
                                var nonclickable = 'true' == e.delegateTarget.rows[0].cells[this.cellIndex].getAttribute('nonclickable');
                                var id = this.parentNode.getAttribute("rid");
                                if (!nonclickable)
                                        document.location = "/account/view-auction/?id="+id;
                        });
                        hijackLinks(post);
                });
        </script>
	<?php 
    $output = ob_get_contents();
    ob_end_clean();
    return $output;
}