Скрытие категорий в зависимости от выбранного языка - Дизайн и модификация Invision Power Board

Перейти к содержимому

 

Правила раздела

Здесь обсуждаются вопросы по настройке и администрированию форумов IPB 3.x.
Пожалуйста, не оффтопьте, если зашли сюда случайно, и обратите внимание на соседние разделы.
Установка, настройка и обслуживание форумов IPB 2.x.
Оформление форумов, включая верстку скинов.
Размещение рекламы на форумах.
SEO оптимизация форума.
Техническая поддержка наших скинов и модов.

СвернутьПрикрепленные теги

Теги не найдены

Страница 1 из 1

Скрытие категорий в зависимости от выбранного языка Скрытие категорий в зависимости от выбранного языка

#1 Пользователь не на сайте   fdeadalf ответил: »

 
 
  • Member
  • **
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 13
  • Регистрация: 20-Ноябрь 10
  • Репутация: 0
  • IPB version:3.3.x
 

Отправлено 14 Декабрь 2012 - 23:21

Уважаемые знатоки!
Помогите реализовать функцию чтобы при выборе языка скрывались определенные категории форума. Нашел в инете пример, но не знаю как реализовать что бы он реагировал на выбранный пользователем язык.
<script type='text/javascript'>
(function() {
    var hidden  = [1,2]; // Закрытые по умолчанию категории
    var cookie  = ipb.Cookie.get('toggleCats') || '';
    var cookies = cookie.split(',');

    hidden.each(function(id){
        if (cookies.indexOf(id) == -1) {
            cookie += ',' + id;
        }
    });

    cookie = "," + cookie.split(',').uniq().join(',') + ",";

    ipb.Cookie.set('toggleCats', cookie, 1);
})();
</script>


Соответственно что бы при выборе к примеру английского языка он скрывал категории 1,2,3 и открывал категории 4,5,6, а при выбранном Русском языке скрывал 4,5,6 и открывал 1,2,3.

Сообщение изменено: fdeadalf (14 Декабрь 2012 - 23:29)

0

#2 Пользователь на сайте   siv1987 ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins Team
  • Сообщений: 8 720
  • Регистрация: 20-Март 09
  • Репутация: 2 269
  • IPB version:3.1.x
 

Отправлено 15 Декабрь 2012 - 00:24

var lang = parseInt({$this->memberData['language']});
а дальше уже дело техники. Используя переменную lang определяете какие категории вам нужно закрыть или открыть.
0

#3 Пользователь не на сайте   fdeadalf ответил: »

 
 
  • Member
  • **
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 13
  • Регистрация: 20-Ноябрь 10
  • Репутация: 0
  • IPB version:3.3.x
 

Отправлено 15 Декабрь 2012 - 11:51

Могли бы написать готовый пример?

Сообщение изменено: fdeadalf (15 Декабрь 2012 - 12:02)

0

#4 Пользователь не на сайте   fdeadalf ответил: »

 
 
  • Member
  • **
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 13
  • Регистрация: 20-Ноябрь 10
  • Репутация: 0
  • IPB version:3.3.x
 

Отправлено 16 Декабрь 2012 - 04:14

Какой функцией обновлять Coockies? То есть каким образом обновить/удалить уже существующую куку toggleCats?
0

#5 Пользователь на сайте   siv1987 ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins Team
  • Сообщений: 8 720
  • Регистрация: 20-Март 09
  • Репутация: 2 269
  • IPB version:3.1.x
 

Отправлено 16 Декабрь 2012 - 14:32

Просмотреть сообщениеfdeadalf сказал(а):

Какой функцией обновлять Coockies?

Выше в скрипте можно увидеть, особо даже не разбираясь в js-е. Хотя если вы сами не догадались это сделать, врядли имя функции вам что-то даст - ipb.Cookie.set
0

#6 Пользователь не на сайте   fdeadalf ответил: »

 
 
  • Member
  • **
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 13
  • Регистрация: 20-Ноябрь 10
  • Репутация: 0
  • IPB version:3.3.x
 

Отправлено 16 Декабрь 2012 - 16:06

Вот что у меня получилось!

<script type='text/javascript'>
(function() {
    var hidden_en  = [1]
    var hidden_ru  = [2,3,4]
    var cookie  = ipb.Cookie.get('toggleCats') || '';
    var cookies = cookie.split(',');
    var lang = parseInt({$this->memberData['language']});

    if(lang == 1)
    {
    hidden_en.each(function(id){
        if (cookies.indexOf(id) == -1) {
            cookie += ',' + id;
        }
    });

    cookie = "," + cookie.split(',').uniq().join(',') + ",";
    ipb.Cookie.set('toggleCats', cookie, 1);
    } 
    if(lang == 2)
    {
    hidden_ru.each(function(id){
        if (cookies.indexOf(id) == -1) {
            cookie += ',' + id;
        }
    });

    cookie = "," + cookie.split(',').uniq().join(',') + ",";
    ipb.Cookie.set('toggleCats', cookie, 1);
    } 


})();

</script>


Но при выборе языка приходится удалить куку вручную, чтобы скрылись старые категории и открылись новые, происходит как бы эффект наложения куков. Как изменить скрипт что бы при каждом выборе языка он перезаписывал куку?
0

#7 Пользователь не на сайте   fdeadalf ответил: »

 
 
  • Member
  • **
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 13
  • Регистрация: 20-Ноябрь 10
  • Репутация: 0
  • IPB version:3.3.x
 

Отправлено 16 Декабрь 2012 - 17:47

После смены 1 раз на язык к примеру Английский появляется кука с категорией 1. При смене на русский, в эту же кук добавляются категории 2,3,4. И по идее категория 1 должна удалятся из куков и оставаться только 2,3,4, но получается, что при дальнейшем использовании любого из языков в куках запись 1,2,3,4, то есть всех категорий которые были записаны в куки при сменах языка. Так вот я не пойму как сделать, так что бы при каждом новом назначении куков, старые значения куков удалялись или заменялись новыми удалив старые!?

P.S. Я понял, что ipb.Cookie.set только вот как и где её применить в коде так что бы она заменяла предыдущие значения в куках?

Сообщение изменено: fdeadalf (16 Декабрь 2012 - 17:58)

0

#8 Пользователь не на сайте   fdeadalf ответил: »

 
 
  • Member
  • **
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 13
  • Регистрация: 20-Ноябрь 10
  • Репутация: 0
  • IPB version:3.3.x
 

Отправлено 16 Декабрь 2012 - 19:13

Все, сделал сам. Спасибо.

Сообщение изменено: fdeadalf (16 Декабрь 2012 - 19:13)

0

#9 Пользователь не на сайте   aslanukva ответил: »

 
 
  • Newbie
  • *
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 2
  • Регистрация: 01-Январь 13
  • Репутация: 0
  • IPB version:I have no IPB
 

Отправлено 01 Январь 2013 - 00:54

Просмотреть сообщениеfdeadalf 16 Декабрь 2012 - 19:13 сказал(а):

Все, сделал сам. Спасибо.


Как делал ? может поделитесь ?!) меня тоже нужен точно такое
0

#10 Пользователь не на сайте   aslanukva ответил: »

 
 
  • Newbie
  • *
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 2
  • Регистрация: 01-Январь 13
  • Репутация: 0
  • IPB version:I have no IPB
 

Отправлено 03 Январь 2013 - 14:40

Выдно форумчани после нового года отдыхают ))
0

#11 Пользователь на сайте   siv1987 ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins Team
  • Сообщений: 8 720
  • Регистрация: 20-Март 09
  • Репутация: 2 269
  • IPB version:3.1.x
 

Отправлено 03 Январь 2013 - 15:17

Просмотреть сообщениеfdeadalf сказал(а):

Все, сделал сам. Спасибо.

Вы понимаете что под этим у вас нормально не будет работать свертывание категорий? Если юзер свернет себе категорию, то при обновлении страницы его ид слетят, и в место них запишутся ваши.
0

Сообщить об этой теме:


Страница 1 из 1


Быстрый ответ

  

1 пользователей читают эту тему
0 зарегистрированных, 1 гостей, 0 скрытых


Контактная информация

Вопросы по работе сайта

+7 (917) 501-4765
C 10 до 20 в рабочие дни (время московское)

Техническая поддержка

Контактные данные специалистов

Дизайн форумов

IPB 3.x ¦ IPB 2.x

Бесплатные шаблоны

IPB 3.2 – 3.4 ¦ IPB 3.1 ¦ IPB 3.0 ¦ IPB 2.2 – 2.3 ¦ IPB 2.1 ¦ Клипарт
Лицензия на использование ¦ Ваша поддержка ¦ О проекте
Copyright © 2005-2016 IPBSkins.ru Team
При копировании материалов с сайта
прямая ссылка на источник обязательна