Персональные стили и скрипты

База знаний
  1. 10 г. назад

    итак, то, чего все так долго ждали, произошло. я допилил плагин, позволяющий загружать персональные стили и скрипты.

    это можно сделать в настройках, закладка "Скрипты". http://forum330.com/forum/scripts/settings
    можно загрузить готовый файл, или редактировать его на прямо сервере.

    стили форума:

    http://forum330.com/forum/core/skin/base.css - основные стили, переопределять не рекомендуется
    http://forum330.com/forum/addons/skins/Default/resources/styles.css - переопределяемые стили

    для затравки, такой персональный стиль

    .conversationList .mine {background-color:#eaeaea}
    body, input, textarea, select {font-family:lucida grande,lucida sans unicode,helvetica,arial,sans-serif}
    

    изменяет цвет своих обсуждений на главной на серый, а также изменяет шрифт форума

    короче, кто знаком с css, тот разберётся, кто не знаком - читать здесь: http://htmlbook.ru/css/

    Ответы: (6)
  2. теперь скрипты:
    http://forum330.com/forum/cache/js-max/global.js - глобальный скрипт
    http://forum330.com/forum/cache/js-max/search.js - главная
    http://forum330.com/forum/cache/js-max/conversation.js - обсуждение
    http://forum330.com/forum/cache/js-max/channels.js - каналы
    http://forum330.com/forum/cache/js-max/members.js - пользователи
    http://forum330.com/forum/cache/js-max/member.js - пользователь

  3. круто, чо...

  4. Можно мне скриптик по убиранию всех постов некоторых балаболок(не будем показывать пальцем) в спойлер?

    Ответы: (4)
  5. (3) а сама?

    Ответы: (5)
  6. (4) А когда? Дома еще вон принтер на ремонт подогнали, рулевую колонку новую найти и поставить надо под новую вилку.
    На работе полотдела нету, звонки с мысли сбивают постоянно...

    Ответы: (7)
  7. (0) нарисовал такой скрипт

     $(document).ready(function() {
        alert($('.postHeader').length + ' elements!');
      });

    а оно чего того не того...

    Ответы: (8)
  8. (5) меня тоже с мыслей о России-матушке сбивают, а ничего... не отвлекаюсь.. :)

  9. (6) у меня работает. ты галку "использовать скрипт" точно нажал? сохранил?

  10. скрин1.png

    Ответы: (10)
  11. (9) вот ты зачем над ЖИВЫМИ людьми такие эксперименты ставишь?! я 10 раз на твоей картинке "ОК" нажал, думал браузер завис :)

    Ответы: (12) (13) (14)
  12. я галку поставил, кнопку "сохранить изменения" забыл нажать :)

  13. (10) )))

  14. (10) ))) Я тоже. 2 раза нажала.

    Ответы: (14)
  15. 12.03.2014 15:17:16 отредактировано Масянька

    (10) (13) Жмакали "мышей"? А надо было "Табом"? [smile=:D]

  16. мышой кликал...

  17. А я прочитал, хотя желание кликнуть тоже было ))

  18. 12.03.2014 23:25:14 отредактировано andrewks

    Lenka_Boo Можно мне скриптик по убиранию всех постов некоторых балаболок(не будем показывать пальцем) в спойлер?

    держи:

    // Ignor-list
    if (typeof ETConversation !== "undefined") {
    var arr_ignor = ['id'];
    var collapseQuotesOrig = ETConversation.collapseQuotes;
    ETConversation.collapseQuotes = function(items) {
    	collapseQuotesOrig.apply(this, arguments);
        
    	$(".postContent", items).each(function() {
    		var item = $(this);
    		var userref = item.find(".postHeader .info h3 a[href^='/forum/member/']").prop('href');
    		var userid;
    		if (userref) userid = userref.split('/').pop();
    		if (arr_ignor.indexOf(userid) >= 0) {
    			var postbody = item.children(".postBody");
    			if (!postbody.hasClass("deleted")) {
    				postbody.addClass("deleted");
    				item.find(".postHeader .controls").append("<a class='control-view' href='#'><i class='icon-eye-open'></i></a>");
                }
    			
    			item.parent().children(".avatar").remove();
            }
    
        });
    };
    
    }
    

    в переменной var arr_ignor = ['id']; нужно задать id "нежелательных" пользователей
    var arr_ignor = ['0'];
    или
    var arr_ignor = ['0', '00', '000'];

    Ответы: (45)
  19. 12.03.2014 23:58:42 отредактировано Lenka_Boo

    Ура! Ура! Спасибо! Работает. -image- С меня пиво.

  20. var arr_ignor = ['220', '395'];

  21. у себя прописал так

    postbody.addClass("disabled");

    так наверное идеологически правильнее...

  22. в итоге сделал по другому, добавил стиль
    .invisiblr {
    color: #FFF;
    }

    и в скрипте прописал его
    postbody.addClass("invisiblr");

  23. в итоге и контент не нарушен и не мешает текст, а если вруг захотелось прочесть помечаю мышкой

  24. (23) "Глазик" не заметил?

    ... href='#'><i class='icon-eye-open'> ...

    Он появляется на скрытом посте рядом с иконкой цитирования. Нажать на него - пост развернется(или скроется).

    Ответы: (25)
  25. (24) в моём варианте не надо кликать и ещё видно ссылки на пост...

    Ответы: (26)
  26. (25)глазик.png

  27. Курильщик (45) я обычно ем слона по частям, глобально идея написать цикл для вставки ссылок /p1.../pN в верхнюю и нижнюю навигационную панель, но запоролся на самом простом...

    scrubberMore - это не панель навигации
    scrubberContent ul.scrubber - здесь навигация по ветке

  28. тебе надо изучить скрипт
    http://forum330.com/forum/cache/js-max/scrubber.js

    и переопределить один из методов, я так думаю

  29. а можно вообще забить болт на scrubber, и сделать через http://forum330.com/forum/cache/js-max/conversation.js
    в конце концов, можно сделать отдельную маленькую fixed панельку снизу экрана, например

    Ответы: (30)
  30. (29) а чем плох .append?

    Ответы: (31)
  31. (30) append ничем не плох. вопрос - куда вставлять? и не забывай, что в этом движке дофига динамического контента, т.е. надо ещё и знать, где вставлять.

    поэтому нужно найти правильную функцию и переопределить её. как в моём примере для игнор-листа, например.
    без переопределения правильной функции нужно было клепать кучу "затычек", и всё равно где-нибудь проскакивало бы мимо

    Ответы: (32)
  32. (31) аа... т.е. всё не так просто как мне показалось... я конечно с jquery плохо знаком, но есть примеры и до этого я вполне справлялся с правкой в opencart... но там я действительно в нужное место код вставлял когда было уже точно ясно что контейнер создан...

    Ответы: (40)
  33. нужно привязаться к:
    ETConversation.initPosts - начальная загрузка обсуждения
    ETConversation.update - там выполняется динамическая подгрузка нового контента (сообщений, добавленных после загрузки обсуждения)

  34. ок, вечером попробую еще один подход сделать

  35. А можно скриптом вообще удалить пост,а не скрыть?

    Ответы: (36) (38)
  36. (35) можно ("удалён" он будет только для тебя, естественно)

  37. Я понимаю. Сенкс за пример.

  38. (35) нужно добавить одну строчку здесь:

    item.parent().children(".avatar").remove();
    item.parent().css("display", "none"); // hide post
    
    Ответы: (39)
  39. (38) Сенкс.

  40. (32) а "Ext-Сore" уже никто не юзает? А то тут начал читать книжку 2010-го года, там с ней все примеры.

    Ответы: (41)
  41. (40) А с

  42. 06.05.2014 17:25:30 отредактировано Дядя Васька

    А с экс ответом тут сейчас как?

  43. Похоже мск тут не любят. А я иду, шагаю по москве, и я пройти еще смогу... )

  44. В общем отходим. Нас тут не поняли ))

  45. andrewks держи:
    в переменной var arr_ignor = ['id']; нужно задать id "нежелательных" пользователей
    var arr_ignor = ['0'];
    или
    var arr_ignor = ['0', '00', '000'];

    мне кажется, это настолько востребованная функциональность, что ее можно было бы включить в настройки форума.

    Ответы: (46)
  46. ЗлобнийМальчик мне кажется, это настолько востребованная функциональность, что ее можно было бы включить в настройки форума.

    +500

    Ответы: (47)
  47. (46) дык уже

    Ответы: (49)
  48. Да, я пользуюсь. Игноренные посты с глазиком отображаются.

  49. (47) кстати в мобильной версии странно все работает - я еще не поняла разницу - то ли скрипт и "игнорировать" по разному, то ли что-то другое. некоторые посты нормально не видны, а некоторые на две строки растягиваются - дата и время написания свернутого поста плюс дата и время "удаления" и кем. зачем это?

    Ответы: (50)
  50. (49) было бы неплохо скрин увидеть

    Ответы: (51)
  51. (50) а я не знаю как скрин делать на телефоне

    Ответы: (52)
  52. (51) я не понимаю, ты кто по профессии?

    Ответы: (53)
  53. (52) программист (завершаю карьеру) и психолог (начинаю карьеру). могу поискать в гугле и тд, не утруждайся только выражением мне своего пренебрежения :)

    Ответы: (54)
  54. (53) Прикольный психолог будет... Приходит пациент, изливает душу... А тут психолог, бац, пишет скрипт и перестает слышать пациента... Не хорошо, как-то, не профессионально.

    Ответы: (55)
  55. Масянька Не хорошо, как-то, не профессионально.

    Есть практики позволяющие не слушать пациента...

  56. на заметку начинающим психологам
    -image-

  57. У меня есть предложение: если у форумца есть игнор-скрипты, нужно бы, чтобы и тот, кого игнорируют тоже не видел посты этого форумца. А то получается - как со стенкой разговариваешь.

    Ответы: (58)
  58. +(57) Ну, или хотя бы оповещалку - пользователь такой-то Вас игнорирует.

    Ответы: (59)
  59. (58) баттхёртов хоцца?

    Ответы: (60)
  60. andrewks баттхёртов

    Это чего?

    Ответы: (61)
  61. Масянька Это чего?

    Ответы: (62)
  62. (61) Боже упаси!
    Если с человеком на копроративе поругался - рассаживаются за разные столы и не общаются друг с другом. А тут... Непонятно... Вроде, и за одним столом, и не немой - разговаривает... То ли обиделся, то ли уже норму взял...

или зарегистрируйтесь чтобы ответить!