1. Мы продолжаем публиковать интересные статьи на тему SocialEngine 4. Одна из статей посвящена правильному выбору сервера для вашей социальной сети, а другая содержит советы по увеличению производительности платформы. Также мы добавили большую статью о пользовательских уровнях. Ознакомиться со статьями вы можете в разделе Вопросы и Ответы SocialEngine 4.
  2. Вам кажется, что ваша версия SocialEngine 4, работает медленно?

    Голосуйте. Пишите свою версию системы, железо на чем работает и количество пользователей. Будем увеличивать производительность :-) Подробнее

  3. В связи с участившимися случаями попыток продажи пользователями форума различных "сборок" коммерческих социальных платформ, обычно основанных на SocialEngine 3, вводится новое правило для форума. Запрещается создание тем или размещение в уже созданных предложений о продаже или размещение ссылок на сайты, где происходит продажа "сборок". Пользователи, которые продолжат свою коммерческую деятельность в данном направлении, будут заблокированы. Подробнее.

Выбрать регион (дополнение по потребностям)

Discussion in 'Моды - Mods' started by bombermen, Sep 27, 2012.

  1. bombermen Thread starter User


    Offline
    Message Count:
    56
    Likes Received:
    7
    в header.php добавить после:

    PHP:
    header("Content-Language: ".SE_Language::info('language_code'));
    добавить:
    PHP:
    if( !empty($_GET['region_id']) )
    {
      
    $region_id NULL;
      if( 
    $user->user_exists && $setting['setting_lang_allow'] )
      {
        
    $region_id $user->user_info['user_region_id'] = (int)$_GET['region_id'];
        
    $database->database_query("UPDATE se_users SET user_region_id='{$user->user_info['user_region_id']}' WHERE user_id='{$user->user_info['user_id']}' LIMIT 1");
      }
     
      if( !
    $user->user_exists && $setting['setting_lang_anonymous'] )
      {
        
    $region_id = (int)$_GET['region_id'];
      }
     
      if( 
    $region_id )
      {
        
    setcookie('se_region_anonymous'$region_idtime()+99999999"/");
        
    $_COOKIE['se_region_anonymous'] = $region_id;
        
    $smarty->assign('success'TRUE);
    }
    }
    далее создаем файл region.php
    PHP:
    <?php
    $page 
    "region";
    include 
    "header.php";
     
    // DISPLAY ERROR PAGE IF USER IS NOT LOGGED IN AND ADMIN SETTING REQUIRES REGISTRATION
     
    $region $database->database_query("SELECT *FROM se_region");
    if (!
    mysql_num_rows($region))
     
    {
      
    $page "error";
      
    $smarty->assign('error_header'639);
      
    $smarty->assign('error_message'555331);
      
    $smarty->assign('error_submit'641);
      include 
    "footer.php";
    }
     
    $region_db $database->database_query("SELECT *FROM se_region");
    $items_region = Array();
    while(
    $row_region $database->database_fetch_assoc($region_db)) {
    $items_region[] = $row_region;
    }
     
    $smarty->assign('items_region'$items_region);
    // ASSIGN SMARTY VARIABLES AND DISPLAY BUSINESSES PAGE
    include "footer.php";
     
    ?>
    и region.tpl

    HTML:
    {include file="header_global.tpl"}
    {if $success == TRUE}
        {literal}
        <script type="text/javascript">
        <!--
            setTimeout("window.parent.TB_remove();", "200");
        </script>
        {/literal}
    {/if}
     
    <div id="TB_closeAjaxWindow">
    <div id='form_div'>
    <div id='success_div' style='display: none;'><br>{lang_print id=804}</div>
     
     
    {section name=item_loop_region loop=$items_region}
    <ul class="menu">
    <li>
    <a href="region.php?&region_id={$items_region[item_loop_region].id}">{$items_region[item_loop_region].region_name}</a>
    </li>
    </ul>
    {/section}
     
    </div>
     
    </body>
    </html>

    Структура таблицы `se_region`
    Code:
    CREATE TABLE IF NOT EXISTS `se_region` (
      `id` int(10) NOT NULL AUTO_INCREMENT,
      `region_name` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
      PRIMARY KEY (`id`)
    ) ENGINE=MyISAM  DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=91 ;
     
    --
    -- Дамп данных таблицы `se_region`
    --
     
    INSERT INTO `se_region` (`id`, `region_name`) VALUES
    (1, 'Республика Адыгея'),
    (2, 'Республика Башкортостан'),
    (3, 'Республика Бурятия'),
    (4, 'Республика Алтай'),
    (5, 'Республика Дагестан'),
    (6, 'Республика Ингушетия'),
    (7, 'Республика Кабардино-Балкария'),
    (8, 'Республика Калмыкия'),
    (9, 'Карачаево-Черкесия'),
    (10, 'Республика Карелия'),
    (11, 'Республика Коми'),
    (12, 'Республика Марий Эл'),
    (13, 'Республика Мордовия'),
    (14, 'Республика Саха(Якутия)'),
    (15, 'Республика Северная Осетия'),
    (16, 'Республика Татарстан'),
    (17, 'Республика Тыва (Тува)'),
    (18, 'Удмуртская Республика'),
    (19, 'Республика Хакасия'),
    (20, 'Чеченская Республика'),
    (21, 'Чувашская Республика'),
    (22, 'Алтайский край'),
    (23, 'Краснодарский край'),
    (24, 'Красноярский край'),
    (25, 'Приморский край'),
    (26, 'Ставропольский край'),
    (27, 'Хабаровский край'),
    (28, 'Амурская область'),
    (29, 'Архангельская область'),
    (30, 'Астраханская область'),
    (31, 'Белгородская область'),
    (32, 'Брянская область'),
    (33, 'Владимирская область'),
    (34, 'Волгоградская область'),
    (35, 'Вологодская область'),
    (36, 'Воронежская область'),
    (37, 'Ивановская область'),
    (38, 'Иркутская область'),
    (39, 'Калининградская область'),
    (40, 'Калужская область'),
    (41, 'Камчатская область'),
    (42, 'Кемеровская область'),
    (43, 'Кировская область'),
    (44, 'Костромская область'),
    (45, 'Курганская область'),
    (46, 'Курская область'),
    (47, 'Ленинградская область'),
    (48, 'Липецкая область'),
    (49, 'Магаданская область'),
    (50, 'Московская область'),
    (51, 'Мурманская область'),
    (52, 'Нижегородская область'),
    (53, 'Новгородская область'),
    (54, 'Новосибирская область'),
    (55, 'Омская область'),
    (56, 'Оренбургская область'),
    (57, 'Орловская область'),
    (58, 'Пензенская область'),
    (59, 'Пермский край'),
    (60, 'Псковская область'),
    (61, 'Ростовская область'),
    (62, 'Рязанская область'),
    (63, 'Самарская область'),
    (64, 'Саратовская область'),
    (65, 'Сахалинская область'),
    (66, 'Свердловская область'),
    (67, 'Смоленская область'),
    (68, 'Тамбовская область'),
    (69, 'Тверская область'),
    (70, 'Томская область'),
    (71, 'Тульская область'),
    (72, 'Тюменская область'),
    (73, 'Ульяновская область'),
    (74, 'Челябинская область'),
    (75, 'Читинская область'),
    (76, 'Ярославская область'),
    (77, 'Москва'),
    (78, 'Санкт-Петербург'),
    (79, 'Еврейская автономная область'),
    (80, 'Агинский Бурятский АО'),
    (81, 'Коми-Пермяцкий АО'),
    (82, 'Корякский АО'),
    (83, 'Ненецкий АО'),
    (84, 'Таймырский (Долгано-Ненецкий) АО'),
    (85, 'Усть-Ордынский Бурятский АО'),
    (86, 'Ханты-Мансийский АО'),
    (87, 'Чукотский АО'),
    (88, 'Эвенкийский АО'),
    (89, 'Ямало-Ненецкий АО'),
    (0, 'Россия');
     
    /*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
    /*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
    /*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
    
    В header.tpl вставляем ссылку
    HTML:
    <a href="javascript:TB_show('Выбрать регион', 'region.php?TB_iframe=true&height=550&width=800', '', './images/trans.gif');">Выбрать регион</a>
    и в таблицу se_users добавляем поле user_region_id

    Снимок.JPG

    Снимок1.JPG

    т.е. все нормально работает:)) и в куки попадает id региона, и если пользователь зарегистрирован то в базу летит id региона. можно использовать для своих целей.

    но вот что бы я хотел у Вас спросить :)
    после того как всплывающие окно закрывается после нажатии ссылки все нормально. но
    там где выводится текущий регион Снимок.JPG

    меняется только после перезагрузки страницы. как можно объединить этот момент. что бы не нажимать f5
  2. nekromancer User


    Offline
    Message Count:
    193
    Likes Received:
    25
    My version of SE:
    4.2.0
    Самый простой способ
    HTML:
    {if $success == TRUE}
        {literal}
        <script type="text/javascript">
        <!--
        location.reload();
        //-->
        </script>
        {/literal}
    {/if}
  3. bombermen Thread starter User


    Offline
    Message Count:
    56
    Likes Received:
    7
    Делал такое. и в хеадер.тпл и в регион.тпл, это перезагружает без остановки всплывающие окно становится белым
  4. nekromancer User


    Offline
    Message Count:
    193
    Likes Received:
    25
    My version of SE:
    4.2.0
    Попробуй
    Code:
    {if $success == TRUE}
        {literal}
        <script type="text/javascript">
        <!--
        document.location.href="/home.php";
        //-->
        </script>
        {/literal}
    {/if}
  5. bombermen Thread starter User


    Offline
    Message Count:
    56
    Likes Received:
    7
    Снимок.JPG


    да обновляется, но Главная открывается в всплывающем окне.
    да и дело то в том, что бы был релоад, т.к. пользователь находится на нужной странице и выбирает регион, и будет не удобно что его опять на главную кидает.
  6. nekromancer User


    Offline
    Message Count:
    193
    Likes Received:
    25
    My version of SE:
    4.2.0
    Code:
    {if $success == TRUE}
        {literal}
        <script type="text/javascript">
        <!--
            window.parent.TB_remove();
            window.location.reload();
         //-->
        </script>
        {/literal}
    {/if}
  7. bombermen Thread starter User


    Offline
    Message Count:
    56
    Likes Received:
    7
    этот вариант я уже пробовал) постоянно бесконечно перезагружает)
    window.parent.TB_remove(); это идет на закрытие всплывающего окна. потом работает хеадер.тпл но туда данные тоже надо как то передать
  8. nekromancer User


    Offline
    Message Count:
    193
    Likes Received:
    25
    My version of SE:
    4.2.0
    Это нужно указать только в region.tpl, в header.tpl оставьте старый код и пробуйте.
  9. bombermen Thread starter User


    Offline
    Message Count:
    56
    Likes Received:
    7
    уже все испробовал) :) вещь то удобная) но готова на 99%

Share This Page

All rights reserved SocEngine.ru ©