Перейти к контенту

Рекомендуемые сообщения

Врядли это кто-то будет делать, поэтому начал делать тег таблиц! Впринципе сейчас работает.

 

В отличии от существующего мода таблиц для 1.1.х не покосит всю тему если просто написали к примеру [tr][td] и воспринимает атрибуты [table border=* bordercolor=***** width=**% cellspacing=* cellpadding=* bgcolor=***** background=**** align=*****][tr height=*** valign=***** align=***** bgcolor=**** background=******][td width=***% height=**** valign=**** align=***** colspan=** rowspan=** bgcolor=******]

 

Открыть файл sources/lib/post_parser.php.

 

Найти :

$txt = preg_replace( "#(\[quote(.+?)?\].*\[/quote\])#ies" , "\$this->regex_parse_quotes('\\1')"  , $txt );

 

Добавить ВЫШЕ

   while( preg_match( "#\n?\[table(.*?)\](.+?)\[/table\]\n?#is" , $txt ) )
                               {
                                       $txt = preg_replace( "#\n?\[table(.*?)\](.+?)\[/table\]\n?#ies", "\$this->regex_parse_tables('\\2','\\1')" , $txt );
                               }

 

Найти:

 

     $txt = preg_replace( "#<a href=[\"']mailto:(.+?)['\"]>(.+?)</a>#"                         , "\[EMAIL=\\1\]\\2\[/EMAIL\]"   , $txt );
                       $txt = preg_replace( "#<a href=[\"'](http://|https://|ftp://|news://)?(\S+?)['\"].+?".">(.+?)</a>#" , "\[URL=\\1\\2\]\\3\[/URL\]"  , $txt );

 

Добавить ниже:

 

                        $txt = preg_replace( "#<!--tablebegin--><table(.*?)>#"                , "\n\[table\\1\]\n"         , $txt );
                       $txt = preg_replace( "#</table><!--tableend-->#"                , "\[/table\]\n"         , $txt );

                       $txt = preg_replace( "#<!--trS--><tr(.*?)>#"                , "\[tr\\1\]\n"         , $txt );
                       $txt = preg_replace( "#</tr><!--trE-->#"                , "\n\[/tr\]\n"         , $txt );

                       $txt = preg_replace( "#<!--tdS--><td(.*?)>#"                , "\[td\\1\]"         , $txt );
                       $txt = preg_replace( "#</td><!--tdE-->#"                , "\[/td\]"         , $txt );

 

И добавить функции:

 

                 

       function regex_parse_tables($txt="", $attributes="")
       {
           global $ibforums;
           $attr="";
           if ($attributes)
           {
              if (preg_match("#border=([1-7])#i", $attributes, $a))
                $attr.=" border=".$a[1];
              if (preg_match("#bordercolor=([\#0-9a-zA-Z]+)#i", $attributes, $a))
                $attr.=" bordercolor=".$a[1];
              if (preg_match("#width=([0-9]+)%#i", $attributes, $a))
                $attr.=" width={$a[1]}%";
              if (preg_match("#cellspacing=([1-7])#i", $attributes, $a))
                $attr.=" cellspacing={$a[1]}";
              if (preg_match("#cellpadding=([1-7])#i", $attributes, $a))
                $attr.=" cellpadding={$a[1]}";
              if (preg_match("#bgcolor=([\#0-9a-zA-Z]+)#i", $attributes, $a))
                $attr.=" bgcolor=".$a[1];
              if (preg_match("#background=(\S+)#i", $attributes, $a) )
              {
                    $url=$a[1]; $error=0;
                    if ($ibforums->vars['allow_dynamic_img'] != 1)
                    {
                            if (preg_match( "/[?&;]/", $url)) $error = 1;
                            if (preg_match( "/javascript(\:|\s)/i", $url )) $error = 1;
                    }
                    if ($ibforums->vars['img_ext'])
                    {
                            $extension = preg_replace( "#^.*\.(\S+)$#", "\\1", $url );
                            $extension = strtolower($extension);
                            if ( (! $extension) OR ( preg_match( "#/#", $extension ) ) ) $error = 1;
                            $ibforums->vars['img_ext'] = strtolower($ibforums->vars['img_ext']);
                            if (!preg_match( "/".preg_quote($extension, '/')."(\||$)/", $ibforums->vars['img_ext'] )) $error = 1;
                    }
                    if (!preg_match( "/^(http|https|ftp):\/\//i", $url )) $error = 1;
                    $url = str_replace( " ", "%20", $url );
                    if (!$error) $attr.=" background={$a[1]}";
              }
              if (preg_match("#align=(center|left|right)#i", $attributes, $a))
                 $attr.=" align=".$a[1];
           }
           while( preg_match( "#\n?\[tr(.*?)\](.+?)\[/tr\]\n?#is" , $txt ) )
           {
                 $txt = preg_replace( "#\n?\[tr(.*?)\](.+?)\[/tr\]\n?#ies", "\$this->regex_parse_tables_tr('\\2', '\\1')" , $txt );
           }
           return "<!--tablebegin--><table{$attr}>".$txt."</table><!--tableend-->";
       }
       function regex_parse_tables_tr($txt="", $attributes="")
       {
                global $ibforums;
                $attr="";
                if ($attributes)
                {
                   if (preg_match("#height=([0-9]+)#i", $attributes, $a))
                      $attr.=" height=".$a[1];
                   if (preg_match("#valign=(top|middle|bottom)#i", $attributes, $a))
                      $attr.=" valign=".$a[1];
                   if (preg_match("#align=(center|left|right)#i", $attributes, $a))
                      $attr.=" align=".$a[1];
                   if (preg_match("#bgcolor=([\#0-9a-zA-Z]+)#i", $attributes, $a))
                      $attr.=" bgcolor=".$a[1];
                   if (preg_match("#background=(\S+)#i", $attributes, $a) )
                   {
                         $url=$a[1]; $error=0;
                         if ($ibforums->vars['allow_dynamic_img'] != 1)
                         {
                                 if (preg_match( "/[?&;]/", $url)) $error = 1;
                                 if (preg_match( "/javascript(\:|\s)/i", $url )) $error = 1;
                         }
                         if ($ibforums->vars['img_ext'])
                         {
                                 $extension = preg_replace( "#^.*\.(\S+)$#", "\\1", $url );
                                 $extension = strtolower($extension);
                                 if ( (! $extension) OR ( preg_match( "#/#", $extension ) ) ) $error = 1;
                                 $ibforums->vars['img_ext'] = strtolower($ibforums->vars['img_ext']);
                                 if (!preg_match( "/".preg_quote($extension, '/')."(\||$)/", $ibforums->vars['img_ext'] )) $error = 1;
                         }
                         if (!preg_match( "/^(http|https|ftp):\/\//i", $url )) $error = 1;
                         if (!$error) $attr.=" background={$a[1]}";
                   }
               }
               while( preg_match( "#\n?\[td(.*?)\](.+?)\[/td\]\n?#is" , $txt ) )
               {
                      $txt = preg_replace( "#\n?\[td(.*?)\](.+?)\[/td\]\n?#ies", "\$this->regex_parse_tables_td('\\2', '\\1')" , $txt );
               }
               return "<!--trS--><tr{$attr}>".$txt."</tr><!--trE-->";
       }
       function regex_parse_tables_td($txt="", $attributes="")
       {
               global $ibforums;
               $attr="";
               if ($attributes)
               {
                   if (preg_match("#width=([0-9]+)%#i", $attributes, $a))
                       $attr.=" width={$a[1]}%";
                   if (preg_match("#height=([0-9]+)#i", $attributes, $a))
                      $attr.=" height=".$a[1];
                   if (preg_match("#valign=(top|middle|bottom)#i", $attributes, $a))
                      $attr.=" valign=".$a[1];
                   if (preg_match("#align=(center|left|right)#i", $attributes, $a))
                      $attr.=" align=".$a[1];
                   if (preg_match("#colspan=([0-9]+)#i", $attributes, $a))
                      $attr.=" colspan=".$a[1];
                   if (preg_match("#rowspan=([0-9]+)#i", $attributes, $a))
                      $attr.=" rowspan=".$a[1];
                   if (preg_match("#bgcolor=([\#0-9a-zA-Z]+)#i", $attributes, $a))
                      $attr.=" bgcolor=".$a[1];
                   if (preg_match("#background=(\S+)#i", $attributes, $a) )
                   {
                         $url=$a[1]; $error=0;
                         if ($ibforums->vars['allow_dynamic_img'] != 1)
                         {
                                 if (preg_match( "/[?&;]/", $url)) $error = 1;
                                 if (preg_match( "/javascript(\:|\s)/i", $url )) $error = 1;
                         }
                         if ($ibforums->vars['img_ext'])
                         {
                                 $extension = preg_replace( "#^.*\.(\S+)$#", "\\1", $url );
                                 $extension = strtolower($extension);
                                 if ( (! $extension) OR ( preg_match( "#/#", $extension ) ) ) $error = 1;
                                 $ibforums->vars['img_ext'] = strtolower($ibforums->vars['img_ext']);
                                 if (!preg_match( "/".preg_quote($extension, '/')."(\||$)/", $ibforums->vars['img_ext'] )) $error = 1;
                         }
                         if (!preg_match( "/^(http|https|ftp):\/\//i", $url )) $error = 1;
                         if (!$error) $attr.=" background={$a[1]}";
                   }
               }
               return "<!--tdS--><td{$attr}>".$txt."</td><!--tdE-->";
       }

 

 

 

 

Для 2.0.х тоже работает, но функции выглядят так:

 

        function regex_parse_tables($txt="", $attributes="")
       {
           global $ibforums;
           $attr="";
           if ($attributes)
           {
              if (preg_match("#border=([1-7])#i", $attributes, $a))
                $attr.=" border=".$a[1];
              if (preg_match("#bordercolor=([\#0-9a-zA-Z]+)#i", $attributes, $a))
                $attr.=" bordercolor=".$a[1];
              if (preg_match("#width=([0-9]+)%#i", $attributes, $a))
                $attr.=" width={$a[1]}%";
              if (preg_match("#cellspacing=([1-7])#i", $attributes, $a))
                $attr.=" cellspacing={$a[1]}";
              if (preg_match("#cellpadding=([1-7])#i", $attributes, $a))
                $attr.=" cellpadding={$a[1]}";
              if (preg_match("#bgcolor=([\#0-9a-zA-Z]+)#i", $attributes, $a))
                $attr.=" bgcolor=".$a[1];
              if (preg_match("#background=(\S+)#i", $attributes, $a) )
              {
                    $url=$a[1]; $error=0;
                     if ($ibforums->vars['allow_dynamic_img'] != 1)
                      {
                              if (preg_match( "/[?&;]/", $url)) $error=1;
                              if (preg_match( "/javascript(\:|\s)/i", $url )) $error=1;
                      }
                      if ($ibforums->vars['img_ext'])
                      {
                       $extension = preg_replace( "#^.*\.(\S+)$#", "\\1", $url );
                       $extension = strtolower($extension);
                       if ( (! $extension) OR ( preg_match( "#/#", $extension ) ) ) $error=1;
                       $ibforums->vars['img_ext'] = strtolower($ibforums->vars['img_ext']);
                       if ( ! preg_match( "/".preg_quote($extension, '/')."(,|$)/", $ibforums->vars['img_ext'] )) $error=1;
               }
               if (!preg_match( "/^(http|https|ftp):\/\//i", $url )) $error=0;
               $url = str_replace( " ", "%20", $url );
               if (!$error) $attr.=" background={$a[1]}";
              }
              if (preg_match("#align=(center|left|right)#i", $attributes, $a))
                 $attr.=" align=".$a[1];
           }
           while( preg_match( "#\n?\[tr(.*?)\](.+?)\[/tr\]\n?#is" , $txt ) )
           {
                 $txt = preg_replace( "#\n?\[tr(.*?)\](.+?)\[/tr\]\n?#ies", "\$this->regex_parse_tables_tr('\\2', '\\1')" , $txt );
           }
           return "<!--tablebegin--><table{$attr}>".$txt."</table><!--tableend-->";
       }
       function regex_parse_tables_tr($txt="", $attributes="")
       {
                global $ibforums;
                $attr="";
                if ($attributes)
                {
                   if (preg_match("#height=([0-9]+)#i", $attributes, $a))
                      $attr.=" height=".$a[1];
                   if (preg_match("#valign=(top|middle|bottom)#i", $attributes, $a))
                      $attr.=" valign=".$a[1];
                   if (preg_match("#align=(center|left|right)#i", $attributes, $a))
                      $attr.=" align=".$a[1];
                   if (preg_match("#bgcolor=([\#0-9a-zA-Z]+)#i", $attributes, $a))
                      $attr.=" bgcolor=".$a[1];
                   if (preg_match("#background=(\S+)#i", $attributes, $a) )
                   {
                     $url=$a[1]; $error=0;
                     if ($ibforums->vars['allow_dynamic_img'] != 1)
                      {
                              if (preg_match( "/[?&;]/", $url)) $error=1;
                              if (preg_match( "/javascript(\:|\s)/i", $url )) $error=1;
                      }
                      if ($ibforums->vars['img_ext'])
                      {
                       $extension = preg_replace( "#^.*\.(\S+)$#", "\\1", $url );
                       $extension = strtolower($extension);
                       if ( (! $extension) OR ( preg_match( "#/#", $extension ) ) ) $error=1;
                       $ibforums->vars['img_ext'] = strtolower($ibforums->vars['img_ext']);
                       if ( ! preg_match( "/".preg_quote($extension, '/')."(,|$)/", $ibforums->vars['img_ext'] )) $error=1;
                      }
                      if (!preg_match( "/^(http|https|ftp):\/\//i", $url )) $error=0;
                      if (!$error) $attr.=" background={$a[1]}";
                   }
               }
               while( preg_match( "#\n?\[td(.*?)\](.+?)\[/td\]\n?#is" , $txt ) )
               {
                      $txt = preg_replace( "#\n?\[td(.*?)\](.+?)\[/td\]\n?#ies", "\$this->regex_parse_tables_td('\\2', '\\1')" , $txt );
               }
               return "<!--trS--><tr{$attr}>".$txt."</tr><!--trE-->";
       }
       function regex_parse_tables_td($txt="", $attributes="")
       {
               global $ibforums;
               $attr="";
               if ($attributes)
               {
                   if (preg_match("#width=([0-9]+)%#i", $attributes, $a))
                       $attr.=" width={$a[1]}%";
                   if (preg_match("#height=([0-9]+)#i", $attributes, $a))
                      $attr.=" height=".$a[1];
                   if (preg_match("#valign=(top|middle|bottom)#i", $attributes, $a))
                      $attr.=" valign=".$a[1];
                   if (preg_match("#align=(center|left|right)#i", $attributes, $a))
                      $attr.=" align=".$a[1];
                   if (preg_match("#colspan=([0-9]+)#i", $attributes, $a))
                      $attr.=" colspan=".$a[1];
                   if (preg_match("#rowspan=([0-9]+)#i", $attributes, $a))
                      $attr.=" rowspan=".$a[1];
                   if (preg_match("#bgcolor=([\#0-9a-zA-Z]+)#i", $attributes, $a))
                      $attr.=" bgcolor=".$a[1];
                   if (preg_match("#background=(\S+)#i", $attributes, $a) )
                   {
                         $url=$a[1]; $error=0;
                                       $url=$a[1]; $error=0;
                     if ($ibforums->vars['allow_dynamic_img'] != 1)
                      {
                              if (preg_match( "/[?&;]/", $url)) $error=1;
                              if (preg_match( "/javascript(\:|\s)/i", $url )) $error=1;
                      }
                      if ($ibforums->vars['img_ext'])
                      {
                       $extension = preg_replace( "#^.*\.(\S+)$#", "\\1", $url );
                       $extension = strtolower($extension);
                       if ( (! $extension) OR ( preg_match( "#/#", $extension ) ) ) $error=1;
                       $ibforums->vars['img_ext'] = strtolower($ibforums->vars['img_ext']);
                       if ( ! preg_match( "/".preg_quote($extension, '/')."(,|$)/", $ibforums->vars['img_ext'] )) $error=1;
                      }
                      if (!preg_match( "/^(http|https|ftp):\/\//i", $url )) $error=0;
                      if (!$error) $attr.=" background={$a[1]}";
                   }
               }
               return "<!--tdS--><td{$attr}>".$txt."</td><!--tdE-->";
       }

 

И из CSS:

 

table,
tr,
td{ 
[b]background: transparent;[/b]
color: #222;
font-size: 11px;
line-height: 135%;
}

надо бы убрать "background: transparent;", чтобы работал атрибут background, но не знаю как то на все стальное повлияет... :D

Изменено пользователем Hostem
Ссылка на комментарий
Поделиться на других сайтах

  • Ответы 85
  • Создана
  • Последний ответ

Лучшие авторы в этой теме

Лучшие авторы в этой теме

Где-то я уже писал подводные камни такого тега. Поищи, посмотри ты их все обошёл? :D
Ссылка на комментарий
Поделиться на других сайтах

Сэры, а нельзя ли таки тут прояснить ситуёвину с вопросом создания таблиц. Уже просто устал писать транслитом (чтобы шрифт был моноширинным) дабы подобие солбцов сделать. Уважаемый Song, не сочтите за труд, черканите пару строк о траблах.

Данный мод даже попробовать не имею возможности - версия 2.0.4 установлена. А хоцца ...

Ссылка на комментарий
Поделиться на других сайтах

Где-то я уже писал подводные камни такого тега. Поищи, посмотри ты их все обошёл? :D

Эти замечания?

Ещё бы надо посчитать количество открывающих и закрывающих тегов. И если их нет, то не парсить всю таблицу.

Ещё бы надо ловить [td] и [tr] только внутри соответствующих [table] иначе случайное несоответствие покорёжит всю html страницу, учитывая, что она сама строится на таблице.

 

Т.е. вот так:

[table]

[tr]

[td]

[/td]

[/tr]

[/table]

 

должно отпарсится, а

 

[/td]

[/tr]

 

или

 

[/table]

 

или

 

[tr]

[/td]

[/tr]

[/table]

 

или в других ошибочных ситуациях - не парсилось.

 

Если эти, то учел. Только там нету явного подсчета закрывающих тегов, а только если есть открытый и закрытый тег, то парсить. Т.е. если не закрытый [td] будет, то он просто не перепарсится.

 

Обновил первый пост. Теперь есть атрибут background и атрибуты в [tr] и [td].

 

Уже думаю можно юзать ;).[1118498568:1118818515]Кто-то уже пробовал? :)

Ссылка на комментарий
Поделиться на других сайтах

Для 2.0.х установку написал (см. первый пост).

 

А вот если из

table,
tr,
td{ 
background: transparent;
color: #222;
font-size: 11px;
line-height: 135%;
}

Убрать "background: transparent;", то как это повлияет на вид форума? Просто вообще желательно всю css для table, tr, td убрать как-то... чтобы в постах шрифт был таким же как и в постах... а если есть "background: transparent;", то атрибут background не отображается.

Ссылка на комментарий
Поделиться на других сайтах

На версии 2.0.4 мод отказывается трудиться. Имеем белую, девственно читсую страницу страницу при попытке открыть/создать тему. Увы и ах ...
Ссылка на комментарий
Поделиться на других сайтах

У меня работает. Щас проверю по указаному инсталятору. Ошибок не выводит никаких?[1119193461:1119195504]

Просто комментарий тега с лишним пробелом вставился:

/ ********************************************************************************
********************/
      // regex_parse_tables: Builds this table tag HTML
      // [TABLE] .. [/TABLE]
      /**************************************************/

 

можно вообще это убрать

Ссылка на комментарий
Поделиться на других сайтах

Прекрасно. Щас всё робит!!!

В начале делал копи-пасте, не смотрел особо ... поэтому ляп и перенёс. Щас поправил - всё ОК.

Проверил в основоном - что надо парсится, что не надо - соответственно нет.

 

Гранд мерси!!!

Ссылка на комментарий
Поделиться на других сайтах

Hostem, не забывай, что я тебе говорил про /e :D

 

Замени все прег_реплейсы с /e на preg_replace_callback — это и улучшит безопасность, и будет работать быстрее.

Ссылка на комментарий
Поделиться на других сайтах

Классный мод, я обитаю на сайте создателя мода, и могу сказать, что благодаря нему в сообщение можно нормальную Веб-страничку организовать =)

 

Мои благодарю =)

Ссылка на комментарий
Поделиться на других сайтах

return "<!--tdS--><td{$attr}>".$txt."</td><!--tdE-->";

замени на:

return "<!--tdS--><td$attr><div class='postcolor'><!--tdCS-->$txt<!--tdCE--></div></td><!--tdE-->";

как распарсить обратно, ты, я думаю, поймёшь.

 

Объясняю, зачем надо <div class='postcolor'>: т.к. реализация тегов {quote}, {code}, {list} подразумевает за собой сначала закрытие div, и только потом тело тега. В конце тега открывается <div class='postcolor'>.

Ссылка на комментарий
Поделиться на других сайтах

To:Hostem

Предлагаю бекграунд принимать как без кавычек, так и с ними, так как иногда в путях бывают пробелы, а изменять их на %20 может и утомлять :)

Например:

[table background=http://www.ibresource.ru/forums/style_images/1/logo4.gif]
[table background="http://www.ibresource.ru/forums/style_images/1/logo 4.gif"]

 

To: NvG

Замени все прег_реплейсы с /e на preg_replace_callback

а как быть в этом случае? >> ;)

$txt = preg_replace( "#\n?\[td(.*?)\](.+?)\[/td\]\n?#ies", "\$this->regex_parse_tables_td('\\2', '\\1')" , $txt );

в preg_replace_callback на обработчик можно ведь только один параметр передавать, если я не ошибаюсь конечно...

 

это и улучшит безопасность, и будет работать быстрее.
Можно поподробнее почему использование preg_replace_callback улучшает безопасность и увеличивает скорость обработки? Я если честно никогда не юзаю preg_replace_callback, вот и заинтересовался... :D
Ссылка на комментарий
Поделиться на других сайтах

return "<!--tdS--><td{$attr}>".$txt."</td><!--tdE-->";

замени  на:

return "<!--tdS--><td$attr><div class='postcolor'><!--tdCS-->$txt<!--tdCE--></div></td><!--tdE-->";

как распарсить обратно, ты, я думаю, поймёшь.

 

Объясняю, зачем надо <div class='postcolor'>: т.к. реализация тегов {quote}, {code}, {list} подразумевает за собой сначала закрытие div, и только потом тело тега. В конце тега открывается <div class='postcolor'>.

 

Если честно, то не совсем ясно зачем увеличивать кол-во символов для одного td. "<!--tdS--><td$attr><div class='postcolor'><!--tdCS-->$txt<!--tdCE--></div></td><!--tdE-->" где мы тут сначала закрываем, а потом открываем div? Единственное - так это оно css-ку для содержимого таблицы так же как и в посте подгонит. И одним "class='postcolor'" тут не отделаться так как там еще для подписей есть "class='signature'".

 

Да, и зачем они там сначала div закрывают, а потом открывают? :) И для list, кстати, такого не делают :D[1119557784:1119557970]

To:Hostem

Предлагаю бекграунд принимать как без кавычек, так и с ними, так как иногда в путях бывают пробелы, а изменять их на %20 может и утомлять :)

Например:

[table background=http://www.ibresource.ru/forums/style_images/1/logo4.gif]
[table background="http://www.ibresource.ru/forums/style_images/1/logo 4.gif"]

 

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

 

И еще в ссылке на бэкграунд лучше не указывать "]" :). Тут уже ничего не поделать ;)

Ссылка на комментарий
Поделиться на других сайтах

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

 

И еще в ссылке на бэкграунд лучше не указывать "]" . Тут уже ничего не поделать

Эт понятно... но таблицы - это такая возможность легко и не принужденно поломать форматирование любого форума, что наверное нужно ограничивать их изпользование по группам юзеров, а в идеале и в определенных разделах (например в новостных) только (через админку) :D
Ссылка на комментарий
Поделиться на других сайтах

Эт понятно... но таблицы - это такая возможность легко и не принужденно поломать форматирование любого форума, что наверное нужно ограничивать их изпользование по группам юзеров, а в идеале и в определенных разделах (например в новостных) только  (через админку) :D

 

Скажу по секрету, таким тегом таблицу темы сбить можно если сделать между закрывающим и открывающим тегами еще одну вложенную таблицу.

...[/td]

[table]

[tr]

[td]1[/td]

[/tr]

[/table]

[td]...

 

Но вложенные таблицы не часто бывают... Еще можно организовать автовынос данных, которые перед открывающим и после закрывающего, за пределы таблицы.

 

А вид темы могут подпортить и стандартными средствами.

Ссылка на комментарий
Поделиться на других сайтах

действительно, лучше бы сделать возможность ограничения использования таблиц по группам. А то есть ведь люди, которым ничего другого не надо, дай только другим форумы подпортить.. лучше возможность создания таблиц дать только модерам\админам..
Ссылка на комментарий
Поделиться на других сайтах

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

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

Ссылка на комментарий
Поделиться на других сайтах

  • 3 месяца спустя...

Все хорошо установилось, но у меня получается, что таблички

[table][tr][td]11[/td][td]12 [/td][td]13[/td][/tr][tr][td]21[/td][td]22[/td][td]23[/td][/tr][tr][td]31[/td][td]32[/td][td]33[/td][/tr][/table]

и

[table]
   [tr]
       [td]11[/td]
       [td]12 [/td]
       [td]13[/td]
   [/tr]
   [tr]
       [td]21[/td]
       [td]22[/td]
       [td]23[/td]
   [/tr]
   [tr]
       [td]31[/td]
       [td]32[/td]
       [td]33[/td]
   [/tr]
[/table]

отображаются по-разному. Т.е. перед второй добавлены переходы на строку, по количеству сделанных между ее тегами.

Версия IPB 2.0.4.[1130066349:1130066602]А еще обратный парсинг выдает не то, что было изначально - переставляет переходы на новые строки.[1130066602:1130068608]Например, при редактировании первого варианта отображается

[table]
[tr]
[td]11[/td][td]12[/td][td]13[/td]
[/tr]
[tr]
[td]21[/td][td]22[/td][td]23[/td]
[/tr]
[tr]
[td]31[/td][td]32[/td][td]33[/td]
[/tr]
[/table]

Ссылка на комментарий
Поделиться на других сайтах

Т.е. перед второй добавлены переходы на строку, по количеству сделанных между ее тегами.

В общем то, оно и понятно почему, ведь удаление пробелов перед тэгом не обрабатывается :D

Ссылка на комментарий
Поделиться на других сайтах

  • 2 месяца спустя...
На самом деле, очень бы хотелось, чтобы была возможность ограничить юзание этого тэга толкьо на модерам и админам.... И по поводу переноса на 2.1.х мне тоже интересно :)
Ссылка на комментарий
Поделиться на других сайтах

Присоединиться к обсуждению

Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.

Гость
Ответить в этой теме...

×   Вы вставили отформатированный текст.   Удалить форматирование

  Допустимо не более 75 смайлов.

×   Ваша ссылка была автоматически заменена на медиа-контент.   Отображать как ссылку

×   Ваши публикации восстановлены.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Зарузка...

×
×
  • Создать...

Важная информация

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.