тянет конечно уже не на редактор а на целый компонент, мечта “верстака” )))
ссылка на видеоролик
есть, допустим, две колонки: в одну вставляем картинку(можно и несколько) и плагин лайтбокса, в другую колонку заголовок, чистый текст внизу допустим ссылку на источник… типа того… )
в архиве новые файлы, старые удаляем или перезаписываем в соответствии с расположением (по директориям)…
что изменено?
— парсит в обе стороны, работает в админке, проверен на стандартных ББ в статьях и УК…
возникают иногда сложности:
с загрузкой фотографий в статьи во втором поле (основной текст) /*пока не отловил*/
при повторном редактировании появляются лишняя пустая строка в коде…
на всякий случай фрагмент page.class.php который менялся:
<a class="usr_bb_button" href="javascript:void(0)" onclick="$(\'#smilespanel_'.$field_id.'\').slideToggle(\'slow\')" title="Вставить смайл"> <img src="/includes/bbcode/images/smiles.png" border="0" alt="Вставить смайл" /> </a>'; if ($placekind=='blogs'){ $html .= '<a class="usr_bb_button" href="javascript:addTagCut(\''.$field_id.'\')" title="Вставить конец анонса (кат)"> <img src="/includes/bbcode/images/cut.png" border="0" alt="Вставить конец анонса (кат)" /> </a>'; } if ($images){ $html .= '<a class="usr_bb_button" href="javascript:addTagVideo(\''.$field_id.'\')" title="Вставить видео"> <img src="/includes/bbcode/images/video.png" border="0" alt="Вставить видео" /> </a> <a class="usr_bb_button" href="javascript:addTagAudio(\''.$field_id.'\')" title="Вставить mp3"> <img src="/includes/bbcode/images/audio.png" border="0" alt="Вставить mp3" /> </a> <a class="usr_bb_button" href="javascript:addTagImage(\''.$field_id.'\')" title="Вставить картинку из Сети"> <img src="/includes/bbcode/images/image_link.png" border="0" alt="Вставить картинку из Сети" /> </a>'; if ($inUser->id) { $users_cfg = $inCore->loadComponentConfig('users'); if ($users_cfg['sw_photo']){ $html .= '<a class="usr_bb_button" href="javascript:addAlbumImage(\''.$field_id.'\')" title="Вставить фото из личных альбомов"> <img src="/includes/bbcode/images/albumimage.png" border="0" alt="Вставить фото из личных альбомов" /> </a>'; } $html .= '<a class="usr_bb_button" href="javascript:addImage(\''.$field_id.'\')" title="Загрузить и вставить фото"> <img src="/includes/bbcode/images/image.png" border="0" alt="Загрузить и вставить фото" /> </a> <div class="usr_bb_button" id="imginsert_'.$field_id.'" style="display:none"> <strong>Загрузить фото:</strong> <input type="file" id="attach_img" name="attach_img"/> <input type="button" name="goinsert" value="Вставить" onclick="loadImage(\''.$field_id.'\', \''.session_id().'\', \''.$placekind.'\')" /> </div> <div class="usr_bb_button" id="imgloading_'.$field_id.'" style="display:none"> Загрузка изображения... </div>'; if ($users_cfg['sw_photo']){ $html .= '<div class="usr_bb_button" id="albumimginsert_'.$field_id.'" style="display:none"> <strong>Вставить фото:</strong> '.cmsUser::getPhotosList($inUser->id).' <input type="button" name="goinsert" value="Вставить" onclick="insertAlbumImage(\''.$field_id.'\')" /> </div>'; } } } $html = cmsCore::callEvent('GET_BBCODE_BUTTON', $html); return $html; } ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// /** * Возвращает html-код панели со смайлами * @param string $for_field_id * @return html */ public static function getSmilesPanel($for_field_id){ $html = '<div class="usr_msg_smilebox" id="smilespanel_'.$for_field_id.'" style="display:none">'; if ($handle = opendir(PATH.'/images/smilies')) { while (false !== ($file = readdir($handle))) { if ($file != '.' && $file != '..' && strstr($file, '.gif')){ $tag = str_replace('.gif', '', $file); $dir = '/static/smiles/'; $html .= '<a href="javascript:addSmile(\''.$tag.'\', \''.$for_field_id.'\');"><img src="'.$dir.$file.'" border="0" /></a> '; } } closedir($handle); } $html .= '</div>'; return $html; }
Респектище!
найдите строку(ближе к концу):
<input type="submit" name="submit" value="{$LANG.SAVE}" style="font-size:18px" />
<input type="submit" name="send" value="{$LANG.SAVE}" style="font-size:18px" />
Может в блог перенести? проще будет работать над ошибками… ???
Поддерживаю, хорошая идея
тогда уже вместе с ними опубликую…
если есть еще какие то пожелания по изменению или дополнению ББ, можно пока здесь написать…
Чтобы картинки и видео не вылезали из шаблонов