ВходИмяПароль
Автоматически входить при каждом посещении    
Регистрация
Регистрация
Войти и проверить личные сообщения
Войти и проверить личные сообщения
Список форумов ЛанМедиаСервис » Скрипт видео-каталога v.1.x

Начать новую тему   Ответить на тему
BBcode в комментариях
Предыдущая тема :: Следующая тема  
Автор Сообщение

Олег Тюкавин





Зарегистрирован: 10.04.2008
Сообщения: 14
Откуда: Нижний Тагил

russia.gif
Сообщение Добавлено: 2009-02-10 08:21 am    Заголовок сообщения: BBcode в комментариях Ответить с цитатой

Здравствуйте.
Работая с видео-каталогом, думаю, каждому не хватало поддержки вставки ссылок и форматированного текста. Реализовал эту возможность полностью на JavaScript'e, использую лишь один файл — index.php. Инструкция по установке в аттаче.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Посетить сайт автора ICQ Number

Balamutov





Зарегистрирован: 13.03.2008
Сообщения: 25


blank.gif
Сообщение Добавлено: 2009-02-13 06:59 am    Заголовок сообщения: Ответить с цитатой

Спасибо большое за проделанную работу.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение

Diver 





Зарегистрирован: 09.03.2008
Сообщения: 96


russia.gif
Сообщение Добавлено: 2009-02-13 11:55 am    Заголовок сообщения: Ответить с цитатой

Надеюсь, что этот мод появится в виде следующего обновления к каталогу.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Посетить сайт автора ICQ Number

Олег Тюкавин





Зарегистрирован: 10.04.2008
Сообщения: 14
Откуда: Нижний Тагил

russia.gif
Сообщение Добавлено: 2009-02-13 19:31 pm    Заголовок сообщения: Ответить с цитатой

Diver  писал(а):
Надеюсь, что этот мод появится в виде следующего обновления к каталогу.

Я за, как одна из опций конфиг-файла, будет интересна многим.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Посетить сайт автора ICQ Number

Alex 





Зарегистрирован: 25.03.2009
Сообщения: 3


russia.gif
Сообщение Добавлено: 2009-03-28 07:22 am    Заголовок сообщения: Ответить с цитатой

Обыскал весь index.php так и не нашел стиль select.dropDownList
Не поскажете строку в которой он должен быть?
Вернуться к началу
Посмотреть профиль Отправить личное сообщение

zzaraza 





Зарегистрирован: 26.12.2008
Сообщения: 40


russia.gif
Сообщение Добавлено: 2009-03-28 07:36 am    Заголовок сообщения: Ответить с цитатой

Alex  писал(а):
Обыскал весь index.php так и не нашел стиль select.dropDownList
Не поскажете строку в которой он должен быть?


Чувак, если ты не можеш даже строчку в коде найти то лучше вообще туда не лезь Wink а строчка нужная тебе нахоидтся в конце кода
Вернуться к началу
Посмотреть профиль Отправить личное сообщение

Alex 





Зарегистрирован: 25.03.2009
Сообщения: 3


russia.gif
Сообщение Добавлено: 2009-03-28 08:26 am    Заголовок сообщения: Ответить с цитатой

Вообще до этого, проблем с поиском не было
В упор не вижу Sad
Код:
function doAddTags(tag1,tag2,obj){
      textarea = document.getElementById(obj);
      // Code for IE
      if (document.selection) {
         textarea.focus();
         var sel = document.selection.createRange();
         sel.text = tag1 + sel.text + tag2;

      // Code for Mozilla Firefox
      } else {
         var len = textarea.value.length;
          var start = textarea.selectionStart;
         var end = textarea.selectionEnd;


         var scrollTop = textarea.scrollTop;
         var scrollLeft = textarea.scrollLeft;

           var sel = textarea.value.substring(start, end);
         var rep = tag1 + sel + tag2;
           textarea.value =  textarea.value.substring(0,start) + rep + textarea.value.substring(end,len);

         textarea.scrollTop = scrollTop;
         textarea.scrollLeft = scrollLeft;
      }
   }

   function doURL(obj){
      textarea = document.getElementById(obj);
      var url = prompt('Введите ваш URL:','http://');
      var scrollTop = textarea.scrollTop;
      var scrollLeft = textarea.scrollLeft;

      if(url){
         if (document.selection) {
            textarea.focus();
            var sel = document.selection.createRange();

            if(sel.text==""){
               sel.text = '[url]'  + url + '[/url]';
            } else {
               sel.text = '[url=' + url + ']' + sel.text + '[/url]';
            }

         } else {
            var len = textarea.value.length;
             var start = textarea.selectionStart;
            var end = textarea.selectionEnd;

              var sel = textarea.value.substring(start, end);

            if(sel==""){
               var rep = '[url]' + url + '[/url]';
            } else {
               var rep = '[url=' + url + ']' + sel + '[/url]';
            }

              textarea.value =  textarea.value.substring(0,start) + rep + textarea.value.substring(end,len);
            textarea.scrollTop = scrollTop;
            textarea.scrollLeft = scrollLeft;

         }
      }
   }


</script>
</head>
<body onLoad="Init()" >
<?php require_once "templates/{$config['template']}/main.php"; ?>
</body>
</html>
Вернуться к началу
Посмотреть профиль Отправить личное сообщение

zzaraza 





Зарегистрирован: 26.12.2008
Сообщения: 40


russia.gif
Сообщение Добавлено: 2009-03-28 11:19 am    Заголовок сообщения: Ответить с цитатой

Alex  писал(а):
Вообще до этого, проблем с поиском не было
В упор не вижу Sad
Код:
function doAddTags(tag1,tag2,obj){
      textarea = document.getElementById(obj);
      // Code for IE
      if (document.selection) {
         textarea.focus();
         var sel = document.selection.createRange();
         sel.text = tag1 + sel.text + tag2;

      // Code for Mozilla Firefox
      } else {
         var len = textarea.value.length;
          var start = textarea.selectionStart;
         var end = textarea.selectionEnd;


         var scrollTop = textarea.scrollTop;
         var scrollLeft = textarea.scrollLeft;

           var sel = textarea.value.substring(start, end);
         var rep = tag1 + sel + tag2;
           textarea.value =  textarea.value.substring(0,start) + rep + textarea.value.substring(end,len);

         textarea.scrollTop = scrollTop;
         textarea.scrollLeft = scrollLeft;
      }
   }

   function doURL(obj){
      textarea = document.getElementById(obj);
      var url = prompt('Введите ваш URL:','http://');
      var scrollTop = textarea.scrollTop;
      var scrollLeft = textarea.scrollLeft;

      if(url){
         if (document.selection) {
            textarea.focus();
            var sel = document.selection.createRange();

            if(sel.text==""){
               sel.text = '[url]'  + url + '[/url]';
            } else {
               sel.text = '[url=' + url + ']' + sel.text + '[/url]';
            }

         } else {
            var len = textarea.value.length;
             var start = textarea.selectionStart;
            var end = textarea.selectionEnd;

              var sel = textarea.value.substring(start, end);

            if(sel==""){
               var rep = '[url]' + url + '[/url]';
            } else {
               var rep = '[url=' + url + ']' + sel + '[/url]';
            }

              textarea.value =  textarea.value.substring(0,start) + rep + textarea.value.substring(end,len);
            textarea.scrollTop = scrollTop;
            textarea.scrollLeft = scrollLeft;

         }
      }
   }


</script>
</head>
<body onLoad="Init()" >
<?php require_once "templates/{$config['template']}/main.php"; ?>
</body>
</html>


Забавно ) у меня содержание index.php отличается от твоего, может у тебя краденный дезенднутый двиг?Wink, обнови скрипт может Wink

Код:

    function Search(mysearch_num,offset) {
        if (search_num==mysearch_num){
            if (document.getElementById("byfilms").checked) {what = 'films';} else {what = 'persones';};
            text = document.getElementById("textsearch").value;
            if (text.length>1){
                JsHttpRequest.query(
                    'actions.php?action=simplesearch&what='+what, // backend
                    {'text':text},
                    function(result, errors) {
                        if (errors.length) sys_message(errors);
                        if (result){
                            if (document.getElementById("gen_time")) document.getElementById("gen_time").innerHTML = Math.round(eval(result.gen_time)*100)/100 + " сек.";
                            if (result.fcount){
                                resultcount = result.fcount;
                                var outstr = new StringBuilder();
                                resn = 0;
                                outstr.append("<table>");
                                if (result.films_exact.length) outstr.append ("<tr><td colspan='2' style='font-weight:bold'>Точное совпадение</td></tr>");
                                for (var j=0; film = result.films_exact[j];j++){
                                    outstr.append (RenderFilmShort(++resn,film));
                                }
                                if (result.films_part.length) outstr.append ("<tr><td colspan='2' style='font-weight:bold'>Частичное совпадение</td></tr>");
                                for (var j=0; film = result.films_part[j];j++){
                                    outstr.append (RenderFilmShort(++resn,film));
                                }
                                if (result.films_approx.length) outstr.append ("<tr><td colspan='2' style='font-weight:bold'>Похожий результат</td></tr>");
                                for (var j=0; film = result.films_approx[j];j++){
                                    outstr.append (RenderFilmShort(++resn,film));
                                }
                                outstr.append("</table>");
                            }
                            if (result.pcount){
                                resultcount = result.pcount;
                                var outstr = new StringBuilder();
                                resn = 0;
                                outstr.append("<table>");
                                if (result.persones_exact.length) outstr.append ("<tr><td colspan='2' style='font-weight:bold'>Точное совпадение</td></tr>");
                                for (var j=0; person = result.persones_exact[j];j++){
                                    outstr.append (RenderPersonShort(++resn,person));
                                }
                                if (result.persones_part.length) outstr.append ("<tr><td colspan='2' style='font-weight:bold'>Частичное совпадение</td></tr>");
                                for (var j=0; person = result.persones_part[j];j++){
                                    outstr.append (RenderPersonShort(++resn,person));
                                }
                                if (result.persones_approx.length) outstr.append ("<tr><td colspan='2' style='font-weight:bold'>Похожий результат</td></tr>");
                                for (var j=0; person = result.persones_approx[j];j++){
                                    outstr.append (RenderPersonShort(++resn,person));
                                }
                                outstr.append("</table>");
                            }
   
                            if (resn) document.getElementById("resultsearch").innerHTML = "Найдено "+resultcount+":<br>" + outstr.toString();
                                else document.getElementById("resultsearch").innerHTML = "Ничего не найдено";
                        }
                    },
                    true
                )
            }
        }
    }

</script>
<style>
select.dropDownList
{
    margin: 0;
    padding: 0;
    border: 1px solid #93aaba;
    width: 200px;
    overflow: hidden;
    position: absolute;
    left: 0;
    background-color: #fff;
    z-index:999;
    display: block;
    font-size: 8pt;
}

</style>
</head>
<body onLoad="Init()" >
<div id="sysmessagebox" style="margin:0px;padding:5px;border:1px solid silver; background-color:#F5F5C0; width:100%; display:none;">
<div style='float:right;'><a href='javascript:Hide("sysmessagebox")'>Закрыть</a></div>
<span id="sysmessage"></span>
</div>

<div id="messagebox" style="margin:0px;padding:5px;border:1px solid silver; background-color:#F5F5C0; width:100%; display:none;">
<div style='float:right;'><a href='javascript:Hide("messagebox")'>Закрыть</a></div>
<span id="message"></span>
</div>
<?php require_once "templates/{$config['template']}/main.php"; ?>
</body>
</html>
Вернуться к началу
Посмотреть профиль Отправить личное сообщение

Александр Ефремов





Зарегистрирован: 07.05.2009
Сообщения: 2


russia.gif
Сообщение Добавлено: 2009-05-07 20:04 pm    Заголовок сообщения: Ответить с цитатой

Спасибо.
Только функции лучше переопределить в header.php вашего шаблона.
А стиль для кнопок указать в style.css.
И тогда проблем при обновлении, не возникнет.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение ICQ Number

BadMan





Зарегистрирован: 30.09.2008
Сообщения: 40


russia.gif
Сообщение Добавлено: 2010-11-11 07:07 am    Заголовок сообщения: Ответить с цитатой

В отзыве BB-коды отрабатывают отлично, а вот на главной в альте последних отзывов обнаружилась проблемка (см. вложение).

Как можно подправить?


UPD:

Решил все с помощью одной функции.
Найти:
Код:

document.getElementById("LastCommentsBox").innerHTML = outstr;

заменить на
Код:

document.getElementById("LastCommentsBox").innerHTML = bbtagit(outstr);

вставить перед этой же строкой
Код:

function bbtagit(text) {
                        text = text.replace(/\[b]([\s\S]*)/gim, '$1');
                        text = text.replace(/\[\/b\]([\s\S]*)/gim, '$1');
                        text = text.replace(/\[i\]([\s\S]*)/gim, '$1');
                        text = text.replace(/\[\/i\]([\s\S]*)/gim, '$1');
                        text = text.replace(/\[u\]([\s\S]*)/gim, '$1');
                        text = text.replace(/\[\/u\]([\s\S]*)/gim, '$1');                        
                        text = text.replace(/\[\/url\]([\s\S]*)/gim, '$1');
                        text = text.replace(/\[url=.*?]([\s\S]*)/gim, '$1');
                           
                        
                  return text
                     }


Нус, гуру, давайте оптимизировать Smile


Последний раз редактировалось: BadMan (2010-11-19 17:26 pm), всего редактировалось 1 раз
Вернуться к началу
Посмотреть профиль Отправить личное сообщение

AiKON





Зарегистрирован: 13.08.2010
Сообщения: 30


blank.gif
Сообщение Добавлено: 2010-11-14 19:07 pm    Заголовок сообщения: Ответить с цитатой

Как же быть тем у кого версия скрипта 1.05 :?:
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Посетить сайт автора ICQ Number

Владимир 





Зарегистрирован: 15.09.2010
Сообщения: 15


russia.gif
Сообщение Добавлено: 2013-06-16 10:05 am    Заголовок сообщения: Ответить с цитатой

Олег Тюкавин bb заработал, а вот доработка BadMan исправил на

text = text.replace(/\[url=*?]([\s\S]*)/gim, '$1');
text = text.replace(/\[\/url\]([\s\S]*)/gim, '$1');

Убрал точку и поменял местами строки.

, а в RSS ленте надо бы доработать )
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail
Показать сообщения:   
Начать новую тему   Ответить на тему    Список форумов ЛанМедиаСервис » Скрипт видео-каталога v.1.x Часовой пояс: GMT
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете вкладывать файлы
Вы не можете скачивать файлы