Весь контент Ciko
-
Скрыть email адреса пользователей
Админ Панель-Внешний вид-Ваш стиль-Профили Пользователей-profileModern и удаляем код: <if test="isadmin:|:$this->memberData['g_access_cp'] == 1"> <li class='clear clearfix'> <span class='row_title'>{$this->lang->words['m_email']}</span> <span class='row_data'> <a href='mailto:{$member['email']}'>{$member['email']}</a> </span> </li> </if>
-
Как выделить "сообщение отредактировал"
Админ Панель-Внешний вид-Ваш стиль-css-ipb_styles.css добавить самый низ: .edit { padding: 5px 5px 5px 32px; background: url('ваш форум/public/style_images/Название стиля/info-bg.png') repeat-x; color: #52626C; font-size: 11px; margin-top: 15px; line-height: 18px; min-height: 30px; position: relative; } Загрузить у pablic-stylese_images ваш стиль картинку info-bg.zip
-
Используем php в шаблонах IPB
Для использования PHP в шаблонах используются теги <php>..</php> <php> $website = 'ipb-board.com - Лучший сайт!'; </php> {$website}
-
Хук "последние изменения статуса". (меняем число)
Данное руководство только для форумов IPB 3.2.х для 3.4.x. По умолчанию в хуке "Последние изменения статуса" отображается 5 статусов, данным способом мы можем уменьшить или наоборот увеличить число отображаемых статусов. Открываем файл: /admin/applications/members/sources/classes/hooks/gateway.php На строке 84: $statuses = $statuses = $this->registry->getClass('memberStatus')->fetch( $this->memberData, array( 'limit' => intval( $this->settings['status_sidebar_show_x'] ) , 'status_is_latest' => 1 ) );это значение: 'limit' => intval( $this->settings['status_sidebar_show_x'] ), показывает кол-во статусов, установите свою цифру вместо: intval( $this->settings['status_sidebar_show_x'] )
-
Все изображения загружаются на наш форум!
Админ Панель-Внешний вид-Ваш стиль-Темы-topicViewTemplate найти: <if test="isMember:|:$this->memberData['member_id']"> После вставить: <div class="loadimgdis" style="text-align: center;width: 98%;margin: 0 auto;margin-top: -25px;"><a style="color:#fff" data-ipb="nomediaparse" href="http://ipb-board.com/index.php?/topic/2-instruktciia-po-zagruzke-izobrazhenii/"><u>Все изображения загружаются на наш форум! </u></a></div> Админ Панель-Внешний вид-Ваш стиль-css-ipb_styles.css добавить код у самый низ: .loadimgdis { color: #fff; padding: 6px 10px; border-radius: 3px; background: #2C3E50; border: 1px solid #008FD3; }
-
Кнопка Чат
Админ Панель-Внешний вид-Ваш стиль-Глобалыние-globalTemplate найти: </head> Подним вставить: <link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css"> Админ Панель-Внешний вид-Ваш стиль-skin_shoutbox_hooks-hookGlobalShoutbox найти: <if test="$this->memberData['g_shoutbox_use']"> <tr class='row1'> <td class='altrow' valign='top' colspan='2'> <input type='text' id='shoutbox-global-shout' size='70' class='input_text' /> <input type='button' id='shoutbox-submit-button' value='{$this->lang->words['shout']}' class='input_submit' /> <input type='button' id='shoutbox-clear-button' value='{$this->lang->words['clear']}' class='input_submit alt' /> <input type='button' id='shoutbox-refresh-button' value='{$this->lang->words['refresh']}' class='input_submit alt' /> <if test="$this->settings['shoutbox_allow_smilies']"> <input type='button' id='shoutbox-smilies-button' value='{$this->lang->words['smilies']}' class='input_submit alt' data-clicklaunch="populateSmilies" data-scope="shoutbox" /></if> <if test="$this->settings['shoutbox_allow_bbcode']"> <input type='button' id='shoutbox-bbcode-button' value='{$this->lang->words['bbcode']}' class='input_submit alt' /></if> <input type='button' id='shoutbox-myprefs-button' value='{$this->lang->words['my_prefs']}' class='input_submit alt' /> </td> </tr> </if> Заменить на: <if test="$this->memberData['g_shoutbox_use']"> <tr class='row1'> <td class='altrow' valign='top' colspan='2'> <input type='text' id='shoutbox-global-shout' size='70' class='input_text' /> <i class="fa fa-paper-plane input_submit tooltip" type="button" id="shoutbox-submit-button" title="Отправить" value="Отправить" style="font-size: 14px;"></i> <i class="fa fa-ban input_submit alt tooltip" type="button" id='shoutbox-clear-button' value='{$this->lang->words['clear']}' title="Очистить" class='input_submit alt' style="font-size: 14px;"></i> <i class="fa fa-refresh input_submit alt tooltip" type="button" id="shoutbox-refresh-button" value="Обновить" title="Обновить" style="font-size: 14px;"></i> <i class="fa fa-smile-o input_submit alt tooltip" type="button" id="shoutbox-smilies-button" value="Смайлики" title="Смайлики" data-clicklaunch="populateSmilies" data-scope="shoutbox" style="font-size: 14px;"></i> <i class="fa fa-cog input_submit alt tooltip" type="button" id="shoutbox-myprefs-button" value="Настройки" title="Настройки" style="font-size: 14px;"></i> </td> </tr> </if>
-
Уведомление
Админ Панель-Внешний вид-Ваш стиль-css-ipb_styles.css найти: .ipsHasNotifications { padding: 0px 4px; height: 12px; line-height: 12px; background: #cf2020; color: #fff !important; font-size: 9px; text-align: center; -webkit-box-shadow: 0px 2px 4px rgba(0,0,0,0.3), 0px 1px 0px rgba(255,255,255,0.1) inset; -moz-box-shadow: 0px 2px 4px rgba(0,0,0,0.3), 0px 1px 0px rgba(255,255,255,0.1) inset; box-shadow: 0px 2px 4px rgba(0,0,0,0.3), 0px 1px 0px rgba(255,255,255,0.1) inset; -moz-border-radius: 2px; -webkit-border-radius: 2px; border-radius: 2px; position: absolute; top: 4px; left: 3px; } Заменить на: .ipsHasNotifications { padding: 0px 5px; height: 15px; line-height: 15px; background: #C0392B; color: #fff !important; font-size: 8px; text-align: center; position: absolute; top: 2px; left: 20px; border: 1px solid #E74C3C; border-radius: 30px 30px 30px 0; width: 6px; opacity: 0; -webkit-animation: pulsate 1s ease-out; animation: pulsate 1s ease-out; -webkit-animation-iteration-count: infinite; animation-iteration-count: infinite; } @-webkit-keyframes pulsate { 0% { -webkit-transform:scale(.1); transform:scale(.1); opacity: 0.0; } 50% { opacity:1; } 100% { -webkit-transform:scale(1.2); transform:scale(1.2); opacity:0; } } @keyframes pulsate { 0% { -webkit-transform:scale(.1); transform:scale(.1); opacity: 0.0; } 50% { opacity:1; } 100% { -webkit-transform:scale(1.2); transform:scale(1.2); opacity:0; } }
-
Перемещаем BoardStats наверх
Открываем шаблон boardIndexTemplate и ищем в нем <div id='board_stats'> <ul class='ipsType_small ipsList_inline'> <li class='clear'> <span class='value'>{$stats['info']['total_posts']}</span> {$this->lang->words['total_posts']} </li> <li class='clear'> <span class='value'>{$stats['info']['mem_count']}</span> {$this->lang->words['total_members']} </li> <li class='clear'> {IPSMember::makeProfileLink( $stats['info']['last_mem_name'], $stats['info']['last_mem_id'], $stats['info']['last_mem_seo'], 'value' )} {$this->lang->words['newest_member']} </li> <li class='clear' data-tooltip="{$stats['info']['most_time']}"> <span class='value'>{$stats['info']['most_online']}</span> {$this->lang->words['online_at_once']} </li> </ul> </div> Удалить Ищем: <div id='category_{$_data['cat_data']['id']}' class='category_block block_wrap'> Ниже вставить: </br> <div id='board_stats'> <ul class='ipsType_small ipsList_inline'> <li class='clear'> <span class='value'>{$stats['info']['total_posts']}</span> {$this->lang->words['total_posts']} </li> <li class='clear'> <span class='value'>{$stats['info']['mem_count']}</span> {$this->lang->words['total_members']} </li> <li class='clear'> {IPSMember::makeProfileLink( $stats['info']['last_mem_name'], $stats['info']['last_mem_id'], $stats['info']['last_mem_seo'], 'value' )} {$this->lang->words['newest_member']} </li> <li class='clear' data-tooltip="{$stats['info']['most_time']}"> <span class='value'>{$stats['info']['most_online']}</span> {$this->lang->words['online_at_once']} </li> </ul> </div> </br>
-
Делаем портал главной страничкой форума
1.По FTP заходим в корень нашего сайта и ищем файлик initdata.php 2.В фаиле initdata.php ищем строку define ( 'IPS_DEFAULT_PUBLIC_APP', 'forums' );Заменить на: ( 'IPS_DEFAULT_PUBLIC_APP', 'portal' );
-
Включить выход с форума для забаненных
По умолчанию в ipb забаненные не могут выйти с профиля, но мы можем это изменить. Откройте файл ваш_форум/admin/sources/base/ipsRegistry.php, найдите это: if ( ipsRegistry::$request['module'] != 'ajax' or ipsRegistry::$request['section'] != 'warnings' )И замените на это: if( ( ipsRegistry::$request['module'] != 'ajax' or ipsRegistry::$request['section'] != 'warnings' ) && ( ipsRegistry::$request['section'] != 'login' && ipsRegistry::$request['do'] != 'logout' ) )
-
Разделение тем на важные и обычные
Заходим в АЦ-Внешний вид-Ваш стиль-Список тем форума-forumIndexTemplate После: <foreach loop="topics:$topic_data as $tid => $data"> Вставить: <!--SV Skins Hooks Topic Separator--> <if test="!$this->subHeadShow"> <th scope='col' colspan='<if test="endannouncements:|:$this->memberData['is_mod'] == 1">6<else />5</if>'> <if test="$data['pinned']">Важные темы <else /> {$this->lang->words['forum_topic']} </if> </th> <if test="$this->subHeadShow=1"> </if> </if> <if test="$data['pinned']"> <if test="$this->hasPinned=1"> </if> <else /> <if test="$this->hasPinned"> <if test="$this->hasPinned=0"> </if> <tr class='subhead altbar'> <if test="$this->memberData['is_mod'] == 1"> <th scope='col' colspan='6'> <else /> <th scope='col' colspan='5'> </if>Темы </th> </if> </if> <!--SV Skins Hooks and Topic Separator--> Далее В ipb_styles.css в самый низ вставляете: table.ipb_table th {background: #Цвет; Т.е. нужно добавить background: #00eefa;
-
Отключение автоматической проверки обновлений при заходе в AdminCP IP.Board
Случается, что после кривого обновления модулей или форума, при заходе в АЦ выскакивает окно с системой обновления.Решить можно простым способом: 1. Открыть conf_global.php 2. Вставить строчку define( 'SKIP_UPGRADE_CHECK', 1 );3. Сохранить и обновить страничку АЦ Так же есть другой способ: Открыть admin\applications\core\skin_cp\cp_skin_mycp.php Найти: /* ---------------------- *//* ONLOAD: IPS widgets *//* ---------------------- */Добавить выше: IPSSERVER_update_type = 'none';
-
Страна , Ip-адреса , Город и OS в userInfoPane
Перейти Админ Панель-Внешний вид-Ваш стиль-Глобальные-userInfoPane ищем: <if test="authorcfields:|:$author['custom_fields'] != """> <ul class='custom_fields'> <foreach loop="customFieldsOuter:$author['custom_fields'] as $group => $data"> <foreach loop="customFields:$author['custom_fields'][ $group ] as $field"> <if test="$field != ''"> <li> {$field} </li> </if> </foreach> </foreach> </ul> </if> Под ним вставить: <script type="application/javascript"> function getgeoip(json){ document.write('' +'<span class="silencebg">Ip-адреса '+json.ip+'</span></br>' +'<span class="silencebg">Страна '+json.country+'</span></br>' +'<span class="silencebg">Город '+json.city+'</span></br>')} </script></br> <script type="application/javascript" src="http://www.telize.com/geoip?callback=getgeoip"></script> <script type="text/javascript"> var OSName="Unknown OS"; if (navigator.appVersion.indexOf("Win")!=-1) OSName="Windows"; if (navigator.appVersion.indexOf("Mac")!=-1) OSName="MacOS"; if (navigator.appVersion.indexOf("X11")!=-1) OSName="UNIX"; if (navigator.appVersion.indexOf("Linux")!=-1) OSName="Linux"; document.write('<span class="silencebg">OS '+OSName+ '</span>'); </script> Перейти Админ Панель-Внешний вид-Ваш стиль-cs-ipb_styles.css добавить код у самый низ: .silencebg{ display: inline-block; height: 15px; line-height: 13px; padding: 0 5px; font-size: 12px; font-weight: 300; color: #fafafa; background: #c0392b; border-radius: 4px; vertical-align: middle; }
-
Социальные иконки - боковая панель
Перейти Админ Панель-Внешний вид-Ваш стиль-Список форумов-boardIndexTemplate и найти: <foreach loop="side_blocks:$side_blocks as $block"> {$block} </foreach> Ниже добавить: <div class='ipsSideBlock'> <h3>Социальные связи</h3> <div class='_sbcollapsable'> <div class="cartera"> <div class="tarjeta tvkontakte"> <a class="fa-facebook" href="https://vk.com/">VKontakte</a> </div> <div class="tarjeta tgoogle"> <a class="fa-google-plus" href="https://plus.google.com/">Google+</a> </div> <div class="tarjeta ttwitter"> <a class="fa-twitter" href="https://twitter.com/">Twitter</a> </div> <div class="tarjeta tlinkedin"> <a class="fa-linkedin" href="https://www.linkedin.com/">Linkedin</a> </div> <div class="tarjeta tpinterest"> <a class="fa-pinterest" href="https://www.pinterest.com/">Pinterest</a> </div> <div class="tarjeta tinstagram"> <a class="fa-instagram" href="http://instagram.com/">Instagram</a> </div> </div> </div></div> 3. Сохранить. 4. Перейти Админ Панель-Внешний вид-Ваш стиль-css и нажмите кнопку Добавить CSS-файла. 5. Назовите его cartera 6. Поместите следующий код в нем: .cartera, .tarjeta, .tarjeta a { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } .cartera { position: relative; width: 100%; margin: 30px auto 0; text-align: center; line-height: 56px; font-size: 14px; font-family: sans-serif; } .tarjeta { position: relative; width: 100%; height: 30px; margin: 0 auto; padding: 0; text-align: left; border-bottom: 3px groove #eee; } /* Estado normal */ .tarjeta a { position: relative; display: block; top: -6px; left: 50%; width: 96%; ; padding: 0 0 0 16px; line-height: 32px; font-weight: normal; border-radius: 16px 16px 0 0; text-decoration: none; box-shadow: 0 -2px 2px rgba(0,0,0,.1), 0 0 20px rgba(0,0,0,.2) inset; -webkit-transition: all .2s linear; -moz-transition: all .2s linear; transition: all .2s linear; } .tarjeta a:hover { line-height: 52px; top: -26px; text-decoration: none; } .tarjeta a:before { display: inline-block; *display: inline; zoom: 1; width: 20px; margin-right: 10px; text-align: center; font-family: Fontawesome; font-size: 18px; } .tarjeta a:after { content: ""; position: absolute; bottom: 0; left: 50%; width: 102%; ; height: 2px; display: block; border-radius: 80px 80px 0 0 ; box-shadow: 0 -2px 6px #666; z-index: -1; } .tarjeta.ttwitter a { color: #ddd; background-color: #01AFEC; border-top: 2px solid #43CFFE; } .tarjeta.tgoogle a { color: #333; background-color: #DB4A37; border-top: 2px solid #E88C80; } .tarjeta.tvkontakte a { color: #ccc; background: #3B559F; border-top: 2px solid #6B83C9; } .tarjeta.tlinkedin a { color: #333; background: #007BB6; border-top: 2px solid #83A9CB; } .tarjeta.tpinterest a { color: #ccc; background: #CB2027; border-top: 2px solid #E88C80; } .tarjeta.tinstagram a { color: #ccc; background: #42719D; border-top: 2px solid #83A9CB; }
-
Плавный спойлер на JQuery
Установка: 1. Заходим в ACP - Внешний вид - Ваш Стиль - globalTemplate 2. Находим тег <head> после него вставляем следующий код: <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script><script type="text/javascript">jQuery.noConflict();jQuery(document).ready(function(){ jQuery('.blockspoiler2').hide() jQuery('.blockspoiler').click(function(){ jQuery(this).children('.blockspoiler2').slideToggle("normal"); })})</script>3. Переходим на вкладку CSS - ipb_styles.css. В самый низ вставляем следующий код: .blockspoiler{ background: #0b6075; margin-bottom:0; border-radius: 15px 15px 15px 15px; padding: 10px; color: #fff; width: 95%;margin-top: 20px;}.blockspoiler a{text-decoration:none;color: #fff;}.blockspoiler a:hover{text-decoration:none;color: yellow;}.blockspoiler2{ margin-top: 0;background: #cad8d0; padding: 10px; width: 100%;text-align:justify;font-size:14px;margin-top: 20px;;color: #000;}5. Заходим ACP - Внешний вид - BB-коды. Загружаем прикрепленный файл. spoiler.zip
-
Ссылки форумов вида site.ru/forum/X/
Чтобы получились ссылки такого вида: http://ipb-board.com/forum/93/ Нужно подредактировать файл /admin/applications/forum/extensions/furlTemplates.php Ищем в нем: showforum' => array( 'app' => 'forums', 'allowRedirect' => 1, 'isPagesMode' => 1, 'out' => array( '#showforum=(.+?)(&|$)#i', 'forum/$1-#{__title__}/$2' ), 'in' => array( 'regex' => '#^/forum/(\d+?)(?:-|/|$)#i', 'matches' => array( array( 'showforum', '$1' ) ) ) ), Удаляем: -#{__title__} Чтобы получилось так: 'showforum' => array( 'app' => 'forums', 'allowRedirect' => 1, 'isPagesMode' => 1, 'out' => array( '#showforum=(.+?)(&|$)#i', 'forum/$1/$2' ), 'in' => array( 'regex' => '#^/forum/(\d+?)(?:-|/|$)#i', 'matches' => array( array( 'showforum', '$1' ) ) ) ), Теперь нужно очистить furl кэш Открываем АЦ > Инструменты > Управление кешем И нажимаем: Перестроить FURL кеш
-
Модерация отмеченных тем
Исправляем ошибку: Открываем шаблон forumIndexTemplate ( Список тем форума ) Находим: var unreadIcon = "<img src='{$this->settings['img_url']}/f_icon_read.png' />"; Ниже добавить: ipb.forums.modPerms = []; <if test="$this->memberData['g_is_supmod']"> ipb.forums.modPerms['approve'] = 1; ipb.forums.modPerms['delete'] = 1; ipb.forums.modPerms['hide'] = 1; ipb.forums.modPerms['unhide'] = 1; ipb.forums.modPerms['pin'] = 1; ipb.forums.modPerms['unpin'] = 1; ipb.forums.modPerms['open'] = 1; ipb.forums.modPerms['close'] = 1; ipb.forums.modPerms['move'] = 1; ipb.forums.modPerms['merge'] = 1; <else /> <if test="isset( $this->memberData['forumsModeratorData'][ $forum_data['id'] ] )"> ipb.forums.modPerms['approve'] = {$this->memberData['forumsModeratorData'][ $forum_data['id'] ]['topic_q']}; ipb.forums.modPerms['delete'] = {$this->memberData['forumsModeratorData'][ $forum_data['id'] ]['delete_topic']}; ipb.forums.modPerms['hide'] = {$this->memberData['forumsModeratorData'][ $forum_data['id'] ]['bw_mod_soft_delete']}; ipb.forums.modPerms['unhide'] = {$this->memberData['forumsModeratorData'][ $forum_data['id'] ]['bw_mod_un_soft_delete']}; ipb.forums.modPerms['pin'] = {$this->memberData['forumsModeratorData'][ $forum_data['id'] ]['pin_topic']}; ipb.forums.modPerms['unpin'] = {$this->memberData['forumsModeratorData'][ $forum_data['id'] ]['unpin_topic']}; ipb.forums.modPerms['open'] = {$this->memberData['forumsModeratorData'][ $forum_data['id'] ]['open_topic']}; ipb.forums.modPerms['close'] = {$this->memberData['forumsModeratorData'][ $forum_data['id'] ]['close_topic']}; ipb.forums.modPerms['move'] = {$this->memberData['forumsModeratorData'][ $forum_data['id'] ]['move_topic']}; ipb.forums.modPerms['merge'] = {$this->memberData['forumsModeratorData'][ $forum_data['id'] ]['split_merge']}; </if> </if> Готово:
-
Ссылки на профиль как ВК
Все кто хочет, чтобы ссылки на пользователей отображались типа ipbmaster.ru/id1 просто перезалейте прикрепленный файл furlTemplates.php в папку admin/applications/members/extensions/ Путь к файлу должен получиться такой admin/applications/members/extensions/furlTemplates.php После этого зайдите в АЦ > Инструменты > Управление кешем > Перестроить FURL кеш furlTemplates.php
-
Делаем репутацию как на Web-ask
1. Перейти Админ Панель-Внешний вид-Ваш стиль-Прочие-repButtons заменить все на это: <php> // Apps can set the key empty to disable, but this will allow all apps to use the popup to show who repped if( !isset($data['jsCallback']) ) { $data['jsCallback'] = "ipb.global.repPopUp( this, {$data['primaryId']}, '{$data['app']}', '{$data['type']}' );"; } $repClickable = ( $this->memberData['gbw_view_reps'] AND $data['jsCallback'] ) ? 'onclick="' . $data['jsCallback'] . '"' : ''; </php> <if test="reputationBox:|:$this->settings['reputation_enabled']"> <if test="canRep:|:!( $this->settings['reputation_protected_groups'] && in_array( $member['member_group_id'], explode( ',', $this->settings['reputation_protected_groups'] ) ) )"> <if test="isLike:|:$this->settings['reputation_point_types'] == 'like'"> <div class='ipsLikeBar right clearfix' id='{$data['domCountId']}'> <ul class='ipsList_inline'> <if test="(!isset($data['hide_text']) OR !$data['hide_text'] )"> <li id="{$data['domLikeStripId']}" class='ipsLikeBar_info' <if test="hasNoLikes:|:!$data['likeFormatted']"></if>> {$data['likeFormatted']} </li> </if> <if test="canGiveRep:|:IPSMember::canGiveRep( $data, $member ) !== false && $this->memberData['member_id']"> <li <if test="giveRepUp:|:IPSMember::canRepUp( $data, $member ) === false"></if>> <a class='ipsLikeButton ipsLikeButton_enabled rep_up' href='{$this->settings['base_url']}app=core&module=global&section=reputation&do=add_rating&app_rate={$data['app']}&type={$data['type']}&type_id={$data['primaryId']}&rating=1&secure_key={$this->member->form_hash}&post_return={$data['primaryId']}' title='{$this->lang->words['do_like_up']}'>{$this->lang->words['like_this']}</a> </li> <li <if test="giveRepDown:|:IPSMember::canRepDown( $data, $member ) === false"></if>> <a class='ipsLikeButton ipsLikeButton_disabled rep_down' href='{$this->settings['base_url']}app=core&module=global&section=reputation&do=add_rating&app_rate={$data['app']}&type={$data['type']}&type_id={$data['primaryId']}&rating=-1&secure_key={$this->member->form_hash}&post_return={$data['primaryId']}' title='{$this->lang->words['do_like_down']}'>{$this->lang->words['unlike_this']}</a> </li> </if> </ul> </div> <else /> <div class='rep_bar clearfix <if test="pos:|:!$data['position'] || $data['position'] == 'right'">right</if>' id='{$data['domCountId']}'> {parse variable="repClickable" default="" oncondition="$this->memberData['gbw_view_reps']" value=" clickable"} <if test="canGiveRep:|:IPSMember::canGiveRep( $data, $member ) !== false && $this->memberData['member_id']"> <div class="orate-btns"> <span> <if test="giveRepUp:|:IPSMember::canRepUp( $data, $member ) === false"></if> <a href='{$this->settings['base_url']}app=core&module=global&section=reputation&do=add_rating&app_rate={$data['app']}&type={$data['type']}&type_id={$data['primaryId']}&rating=1&secure_key={$this->member->form_hash}&post_return={$data['primaryId']}' class='rep_up' title='{$this->lang->words['reputation_up']}'>{parse replacement="rep_up"}</a> <if test="giveRepDown:|:IPSMember::canRepDown( $data, $member ) === false"></if> <a href='{$this->settings['base_url']}app=core&module=global&section=reputation&do=add_rating&app_rate={$data['app']}&type={$data['type']}&type_id={$data['primaryId']}&rating=-1&secure_key={$this->member->form_hash}&post_return={$data['primaryId']}' class='rep_down' title='{$this->lang->words['reputation_down']}'>{parse replacement="rep_down"}</a> </span> </div> </if> <if test="isNotLike:|:$this->settings['reputation_point_types'] != 'like'"> <if test="hasNoRep:|:$data['rep_points'] == 0"> <span class='reputation2 zero2 rep_show{parse variable="repClickable"}' title='{$this->lang->words['reputation']}' {$repClickable}> </if> <if test="hasPosRep:|:$data['rep_points'] > 0"> <span class='reputation2 positive2 rep_show{parse variable="repClickable"}' title='{$this->lang->words['reputation']}' {$repClickable}> </if> <if test="hasNegRep:|:$data['rep_points'] < 0"> <span class='reputation2 negative2 rep_show{parse variable="repClickable"}' title='{$this->lang->words['reputation']}' {$repClickable}> </if> {parse expression="intval($data['rep_points'])"} </span> </if> </div> </if> </if> </if> <script type='text/javascript'> ipb.global.registerReputation( '{$data['domCountId']}', { domLikeStripId: '{$data['domLikeStripId']}', app: '{$data['app']}', type: '{$data['type']}', typeid: '{$data['primaryId']}' }, parseInt('{$data['rep_points']}') ); </script> 2.Перейти Админ Панель-Внешний вид-Ваш стиль-Прочие-repMoreDialogue и заменить все на это: <h3>{$this->lang->words['liked_by_title']}</h3> <div class='likepop fixed_inner'> <ul class='ipsList_withminiphoto'> <foreach loop="$data as $mid => $data"> <li class='clearfix ipsPad_half <if test="$data['like_is_anon']">faded</if>'> <a href='{parse url="showuser={$data['member_id']}" seotitle="{$data['members_seo_name']}" template="showuser" base="public"}' title='{$this->lang->words['view_profile']}' class='ipsUserPhotoLink left'> <img src='{$data['pp_small_photo']}' class='ipsUserPhoto ipsUserPhoto_mini' /> </a> <div class='list_content'> <a href='{parse url="showuser={$data['member_id']}" seotitle="{$data['members_seo_name']}" template="showuser" base="public"}' title='{$this->lang->words['view_profile']}'><strong>{$data['members_display_name']}</strong></a> <em class='desc'>{$this->lang->words['likeadded']} {parse date="$data['rep_date']" format="short"}</em> <p class='desc'> {parse expression="IPSMember::makeNameFormatted( $data['g_title'], $data['g_id'] )"} </p> </div> </li> </foreach> </ul> </div> 3.Перейти Админ Панель-Внешний вид-Ваш стиль-Прочие-reputationPopup и заменить все на это: <div> <h3>{$this->lang->words['rep_given']}</h3> <div class='ipsPad' style='min-height: 60px'> <if test="empty($reps)"> <em>{$this->lang->words['no_rep']}</em> <else /> <foreach loop="$reps as $r"> <if test="$r['rep_rating'] > 0"> {parse replacement="rep_up"} <else /> {parse replacement="rep_down"} </if> <a href='{parse url="showuser={$r['member']['member_id']}" base="public" template="showuser" seotitle="{$r['member']['members_seo_name']}"}'>{$r['member']['members_display_name']}</a><br /> </foreach> </if> </div> </div> 4.Перейти Админ Панель-Внешний вид-Ваш стиль-css-ipb_styles.css и вставти у самий низ: .rep_bar { white-space: nowrap; margin: 6px 4px; } .rep_bar .reputation { font-size: 10px; padding: 2px 10px !important; } .rep_up { position: absolute; top: 0; right: 0; padding: 2px 3px; border-bottom: 1px solid #18A275; -webkit-transition: all 0.1s linear; -moz-transition: all 0.1s linear; -ms-transition: all 0.1s linear; -o-transition: all 0.1s linear; transition: all 0.1s linear; border-radius: 0 6px 0 0; } .rep_up:hover { background: #2ECC71; border-radius: 0 6px 0 0; } .rep_down:hover { background: #E74C3C; border-radius: 0 0 6px 0; } .rep_down { border-radius: 0 0 6px 0; position: absolute; bottom: 1px; background: #D35400; right: 0px; padding: 0px 6px; padding-bottom: 6px; margin-bottom: -1px; border-radius: 0 0 6px 0; -webkit-transition: all 0.1s linear; -moz-transition: all 0.1s linear; -ms-transition: all 0.1s linear; -o-transition: all 0.1s linear; transition: all 0.1s linear; } .orate-btns { position: relative; height: 40px; float: right; background-color: #1abc9c; width: 22px; border-color: #1abc9c; text-align: center; border-radius: 0 6px 6px 0; } .reputation.negative, .members li.negative { background: #E74C3C; border: 1px solid #C0392B; } .reputation.negative:hover, .members li.negative:hover { background: #C0392B; } .reputation.positive,.reputation.negative { color: #fff; } .reputation.zero { background: #95A5A6; color: #fff; border: 1px solid #929292; -webkit-transition: all 0.1s linear; -moz-transition: all 0.1s linear; -ms-transition: all 0.1s linear; -o-transition: all 0.1s linear; transition: all 0.1s linear; } .reputation.zero:hover { background: #929292; } .reputation2.positive2 { border-radius: 6px; background-color: #34495e; color: #1abc9c; border-left: 1px solid transparent; } .reputation2.negative2 { border-radius: 6px; background-color: #34495e; color: #FF7B47; border-left: 1px solid transparent; } .reputation2 { width: 60px; text-align: center; height: 32px; border-radius: 2px; -moz-border-radius: 2px; -webkit-border-radius: 2px; transition: all 0.2s ease; -moz-transition: all 0.2s ease; -webkit-transition: all 0.2s ease; -o-transition: all 0.2s ease; font-size: 18px; font-family: "Trebuchet MS",tahoma; color: white; font-weight: normal; display: block; text-shadow: 0px -1px 0px rgba(0,0,0,0.4); cursor: pointer; height: 40px; line-height: 40px; } .reputation2:hover { background-color: #53718F !important; } .reputation2.zero2 { border-radius: 6px; background-color: #34495e; color: #fff; border-left: 1px solid transparent; } 5.Загрузить эти изображения в --> public --> style_images --> ваш скин Desktop.zip
-
Ваш профиль в чате
1 Перейти Админ Панель-Внешний вид-Ваш стиль-skin_shoutbox_hooks-hookGlobalShoutbox найти: <h3 class='maintitle'> <a class='toggle right' href='#' title='{$this->lang->words['toggle_shoutbox']}'>{$this->lang->words['toggle_shoutbox']}</a> <a href="{parse url="app=shoutbox" seotitle="false" base="public"}" title='{$this->lang->words['view_main_shoutbox']}'>{$this->settings['shoutbox_title']}</a> <if test="showPopupLink:|:$this->settings['shoutbox_popup']"><a href="#" id="shoutbox-popup-button" title="{$this->lang->words['open_popup']}"><img src="{$this->settings['img_url']}/shoutbox/popup.png" alt="{$this->lang->words['open_popup']}" /></a></if> </h3> 2. Заменить на: <if test="$this->memberData['member_id'] "> <div class="containerbg"> <div class="bg-image"> <div class="customBackground"></div> <PHP> $this->memberData['customization'] = @unserialize($this->memberData['pp_customization']); </PHP> <div class='side left ipsPad'> <h2 class="name">{$this->memberData['members_display_name']}</h2><br> <h4 class="locationbg">{$this->memberData['prefix']}{$this->memberData['g_title']}{$this->memberData['suffix']}</h4></div> <style type="text/css"> <if test="hasBodyCustomization:|:$this->memberData['customization']['bg_color'] OR $this->memberData['customization']['_bgUrl']"> .customBackground{ <if test="hasBackgroundColor:|:$this->memberData['customization']['bg_color']"> background-color: #{$this->memberData['customization']['bg_color']} !important; </if> <if test="hasBackgroundImage:|:$this->memberData['customization']['bg_url']"> background-image: url("{$this->settings['upload_url']}/{$this->memberData['customization']['bg_url']}?nc={$this->memberData['pp_profile_update']}") !important; <if test="backgroundIsFixed:|:! $this->memberData['customization']['bg_tile']"> background-position: 50% 50%; background-repeat: no-repeat; -webkit-background-size: 100% 100%; -moz-background-size: 100% 100%; background-size: cover; <else /> background-position: 50% 50%; background-repeat: repeat; </if> </if> height: 156px; position: relative } </if> </style> </div> </div> <div class='followe'> <ul> <li><a> <span id='number'> <if test="$this->memberData['pp_reputation_points'] > 0"> <span id='user_reputation' class="reputationbg positive" title='Репутация'>{$this->memberData['pp_reputation_points']}</span> </if> <if test="$this->memberData['pp_reputation_points'] < 0"> <span id='user_reputation' class="reputationbg negative" title='Репутация'>{$this->memberData['pp_reputation_points']}</span> </if> <if test="$this->memberData['pp_reputation_points'] == 0"> <span id='user_reputation' class="reputationbg zero" title='Репутация'>{$this->memberData['pp_reputation_points']}</span> </if></span> <span id='followe'>Репутация</span> </a></li> <div class='testbg'> <a href='{parse url="showuser={$this->memberData['member_id']}" seotitle="{$this->memberData['members_seo_name']}" template="showuser" base="public"}' title='{$this->lang->words['your_profile']}'>{$this->lang->words['my_profile']}</a></div> <div class='testbg1'> <if test="pmLink:|:$this->memberData['members_disable_pm'] != 2 && $this->memberData['g_use_pm']"> <a href="{parse url="app=members&module=messaging" base="public"}">{$this->lang->words['user_dd_go_pm']}</a> </if></div> <div class='testbg2'> <if test="canUpdateStatus:|:$this->registry->getClass('memberStatus')->canCreate( $this->memberData ) && !($this->settings['board_offline'] && !$this->memberData['g_access_offline'])"> <form id='statusForm' action='{$this->settings['base_url']}app=members&module=profile&section=status&do=new&k={$this->member->form_hash}&id={$this->memberData['member_id']}' method='post'> <input type='text' id='statusUpdateGlobal' name='content' class='input_text' style='border:solid 5px rgba(255, 255, 255, 0);background: rgba(184, 184, 184, 0.14);border-radius: 3px;' placeholder='Напишете вашият статус...'> <input type='submit' id='statusSubmitGlobal' class='input_submit' value='{$this->lang->words['global_update_status']}' /> <if test="update:|:(IPSLib::twitter_enabled() OR IPSLib::fbc_enabled() ) AND ( $this->memberData['fb_uid'] OR $this->memberData['twitter_id'] )"> </if> <br /> <hr /> </form> </if></div> <div class='silence'><a class='toggle right' href='#' title='{$this->lang->words['toggle_shoutbox']}'><img src="{$this->settings['img_url']}/cat_minimize.png" alt="{$this->lang->words['toggle_shoutbox']}" /></a> <a class='chat'href="{parse url="app=shoutbox" seotitle="false" base="public"}" title='{$this->lang->words['view_main_shoutbox']}'><i class="fa fa-comments fa-lg"></i></a> </div> <div class="imagebg"> <div class="profile_picture"> <img src='{$this->memberData['pp_small_photo']}' alt="{parse expression="sprintf($this->lang->words['users_photo'],$this->memberData['members_display_name'])"}" class='ipsUserPhoto1 ipsUserPhoto_mediumbg' style="width: 110px; height: 110px; margin: -5px 5px 5px -5px;border-radius: 100%;" /> </div></div> <div class="badboy"> </div></ul></div></if> 3.Перейти Админ Панель-Внешний вид-Ваш стиль-css-Добавить CSS-файла. 4. Назовите его containerbg 5. Поместить код туда: .containerbg{ margin: 0; position: relative; overflow: hidden; background-color: #fff; border-radius: 7px 7px 0 0; } .badboy{ width: 0; height: 0; clear: both; } .bg-image{ height: 127px; background:#000; position: relative; border-bottom: 1px solid #38393A; } .bg-image:before{ content: ''; position: absolute; height: 213px; background: -webkit-linear-gradient(rgba(240, 240, 240, 0.31) 22%, rgba(240, 237, 240, 0.22) 51%, rgba(214, 214, 214, 0.28) 80%); background: -moz-linear-gradient(rgba(240, 240, 240, 0.31) 22%, rgba(240, 237, 240, 0.22) 51%, rgba(214, 214, 214, 0.28) 80%); right: -56px; -webkit-transform: rotate(-43deg); -moz-transform: rotate(-48deg); top: -79px; } .followe{ background:#2c3e50; } .followe li{ float: left; width: 201px; box-sizing : border-box; -moz-box-sizing : border-box; } .followe b{ display: block; padding: 10px; text-decoration: none; color: #F5F5F5; } .followe a{ display: block; padding : 10px 0; text-decoration: none; color: #F5F5F5; } .followe span{ display: block; text-align: center; } span#number{ font-size: 20px; text-shadow: 0 -1px 2px #000; } span#followe{ text-shadow: 0 -1px 2px #000; font-size: 15px; } .imagebg{ width: 120px; height: 120px; position: absolute; background: #F7F9F9; border: 1px solid #211410; top: 45px; left: 140px; border-radius: 50%; } .imagebg:before{ content: ''; position: absolute; width: 110px; height: 110px; border-radius: 50%; top: 5px; left: 5px; } .profile_picture{ width: 120px; height: 120px; background: rgba(208, 208, 208, 1); position: absolute; border-radius: 100%; background-size: 100% 100%; padding: 6px; border: 4px solid rgba(208, 208, 208, 1); } h2.name{ font-size: 22px; font-weight: 100; color: #B0AEAE; padding: 0; text-align: center; margin: 15px 10px 0px 30px; } h4.locationbg{ font-size: 15px; font-weight: 300; color: rgba(170,170,170,1); padding: 0; text-align: center; margin: 8px 10px 10px 30px; } .side { position: absolute; margin-top: -150px; ;; } .testbg{ margin: 8px; background: #000; width: inherit; padding: 0 10px 0 10px; border-radius: 4px; position: absolute; left: 30%; } .testbg1{ margin: 8px; background: #000; width: inherit; padding: 0 10px 0 10px; border-radius: 4px; position: absolute; left: 42%; } .testbg2{ margin: 8px; width: inherit; position: absolute; left: 57.4%; } .silence .toggle { background: url({style_images_url}/cat_minimize.png) no-repeat; text-indent: -3000em; width: 25px; height: 25px; display: block; margin: 15px 5px 0 0; outline: 0; } .chat{ float: left; position: absolute; margin: 5px 10px; border-radius: 50%; } 6.Перейти Админ Панель-Внешний вид-Ваш стиль-Глобальные-globalTemplate найти: <!DOCTYPE html> Ниже добавить: <link href="//maxcdn.bootstrapcdn.com/font-awesome/4.2.0/css/font-awesome.min.css" rel="stylesheet">
-
Новый профиль в боковой панели 3
1.Перейти Админ-Панель-Внешний вид-Ваш стиль-Список форумов-boardIndexTemplate найти: <foreach loop="side_blocks:$side_blocks as $block"> {$block} </foreach> 2. Подним вставить: <if test="$this->memberData['member_id'] "> <div class='ipsSideBlock'><div class='_sbcollapsable'> <div class="mobilebg"> <input type="checkbox" id="tm" /> <ul class="sidenav"> <li><a href='{parse url="showuser={$this->memberData['member_id']}" seotitle="{$this->memberData['members_seo_name']}" template="showuser" base="public"}' title='{$this->lang->words['your_profile']}'><i class="fa fa-child"></i><b>{$this->lang->words['my_profile']}</b></a></li> <li><a href="{parse url="app=core&module=usercp" base="public"}" title="{$this->lang->words['cp_tool_tip']}"><i class="fa fa-cog"></i><b>{$this->lang->words['your_cp']}</b></a></li> <li><a href="{parse url="app=core&module=search&do=user_activity&mid={$this->memberData['member_id']}" base="public"}" title="{$this->lang->words['my_content_link']}"><i class="fa fa-comments"></i><b>{$this->lang->words['my_content_link']}</b></a></li> <li><if test="userLikeLink:|:count( IPSLib::getEnabledApplications('like') )"> <a href='{parse url="app=core&module=search&do=followed" base="public"}' title='{$this->lang->words['your_likes']}'><i class="fa fa-cog"></i><b>{$this->lang->words['your_likes']}</b></a></if></li> <li><if test="nobbyNoMates:|:$this->settings['friends_enabled'] && $this->memberData['g_can_add_friends']"><a href='{parse url="app=members&module=profile&section=friends&do=list" base="public"}' title="{$this->lang->words['manage_friends']}" class='manage_friends'><i class="fa fa-user-plus"></i><b>{$this->lang->words['manage_friends']}</b></a></if></li> <li><a href='{parse url="app=core&module=usercp&tab=core&area=ignoredusers" base="public"}' title="{$this->lang->words['manage_ignored_users']}" class='manage_enemies'><i class="fa fa-user-times"></i><b>{$this->lang->words['manage_ignored_users']}</b></a></li> <li><if test="pmLink:|:$this->memberData['members_disable_pm'] != 2 && $this->memberData['g_use_pm']"><a href="{parse url="app=members&module=messaging" base="public"}"><i class="fa fa-envelope"></i><b>{$this->lang->words['user_dd_go_pm']}</b></a></if></li> <li><a href="{parse url="app=core&module=global&section=login&do=logout&k={$this->member->form_hash}" base="public"}" title='{$this->lang->words['log_out']}'><i class="fa fa-power-off"></i><b>{$this->lang->words['log_out']}</b></a></li> </ul> <section> <div class="customBackground"></div> <PHP> $this->memberData['customization'] = @unserialize($this->memberData['pp_customization']); </PHP> <style type="text/css"> <if test="hasBodyCustomization:|:$this->memberData['customization']['bg_color'] OR $this->memberData['customization']['_bgUrl']"> .customBackground{ <if test="hasBackgroundColor:|:$this->memberData['customization']['bg_color']"> background-color: #{$this->memberData['customization']['bg_color']} !important; </if> <if test="hasBackgroundImage:|:$this->memberData['customization']['bg_url']"> background-image: url("{$this->settings['upload_url']}/{$this->memberData['customization']['bg_url']}?nc={$this->memberData['pp_profile_update']}") !important; <if test="backgroundIsFixed:|:! $this->memberData['customization']['bg_tile']"> background-position: 50% 50%; background-repeat: no-repeat; -webkit-background-size: 100% 100%; -moz-background-size: 100% 100%; background-size: cover; <else /> background-position: 50% 50%; background-repeat: repeat; </if> </if> height: 500px; left:0; width: 268px !important; position: relative; } </if> </style> <label for="tm"><img src='{$this->memberData['pp_small_photo']}' alt="{parse expression="sprintf($this->lang->words['users_photo'],$this->memberData['members_display_name'])"}" class='ipsUserPhoto1 ipsUserPhoto_mediumbg' style="width: 110px; height: 110px; margin: -5px 5px 5px -5px;border-radius: 100%;border: 2px solid white;" /></label> <div class='wa_repbg reputation_wa'> <if test="ourReputation:|:$this->settings['reputation_enabled'] && $this->settings['reputation_show_profile']"> <if test="RepPositive:|:$this->memberData['pp_reputation_points'] > 0"> <div class='reputation_wa positive' data-tooltip="{parse expression="sprintf( $this->lang->words['rep_description'], $this->memberData['members_display_name'], $this->memberData['pp_reputation_points'])"}"> </if> <if test="RepNegative:|:$this->memberData['pp_reputation_points'] < 0"> <div class='reputation_wa negative' data-tooltip="{parse expression="sprintf( $this->lang->words['rep_description'], $this->memberData['members_display_name'], $this->memberData['pp_reputation_points'])"}"> </if> <if test="RepZero:|:$this->memberData['pp_reputation_points'] == 0"> <div class='reputation_wa zero' data-tooltip="{parse expression="sprintf( $this->lang->words['rep_description'], $this->memberData['members_display_name'], $this->memberData['pp_reputation_points'])"}"> </if> <span class='number'>{$this->memberData['pp_reputation_points']}</span> <if test="RepText:|:$this->memberData['author_reputation'] && $this->memberData['author_reputation']['text']"> <span class='title'>{$this->memberData['author_reputation']['text']}</span> </if> <if test="RepImage:|:$this->memberData['author_reputation'] && $this->memberData['author_reputation']['image']"> <span class='image'><img src='{$this->memberData['author_reputation']['image']}' alt='{$this->lang->words['m_reputation']}' /></span> </if> </div> <br /> </if></div> <div class="wa_userinfo_silence"> <if test="$this->memberData['field_3']"> <a href="{$this->memberData['field_3']}" target="_blank" class="ipsButton_secondary ipsType_smaller"><img src="{style_images_url}/profile_website.png" style="width:20px;"></a> <else /> <a style="opacity:0.2" target="_blank" class="ipsButton_secondary ipsType_smaller"><img style="width:20px;" src="{style_images_url}/profile_website.png"></a> </if> <if test="$this->memberData['field_10']"> <a href=skype:{$this->memberData['field_10']}?call target="_blank" class="ipsButton_secondary ipsType_smaller"><img style="width:20px;" src="{style_images_url}/profile_skype.png"></a> <else /> <a style="opacity:0.2" target="_blank" class="ipsButton_secondary ipsType_smaller"><img style="width:20px;" src="{style_images_url}/profile_skype.png"></a> </if> <if test="$this->memberData['field_15']"> <a href="{$this->memberData['field_15']}" target="_blank" class="ipsButton_secondary ipsType_smaller"><img style="width:20px;" src="{style_images_url}/profile_vk.png"></a> <else /> <a style="opacity:0.2" target="_blank" class="ipsButton_secondary ipsType_smaller"><img style="width:20px;" src="{style_images_url}/profile_vk.png"></a> </if> <if test="$this->memberData['field_14']"> <a href="{$this->memberData['field_14']}" target="_blank" class="ipsButton_secondary ipsType_smaller"><img style="width:20px;" src="{style_images_url}/profile_facebook.png"></a> <else /> <a style="opacity:0.2" target="_blank" class="ipsButton_secondary ipsType_smaller"><img style="width:20px;" src="{style_images_url}/profile_facebook.png"></a> </if> </div> <div class='wastats'> <if test="canUpdateStatus:|:$this->registry->getClass('memberStatus')->canCreate( $this->memberData ) && !($this->settings['board_offline'] && !$this->memberData['g_access_offline'])"> <form id='statusForm' action='{$this->settings['base_url']}app=members&module=profile&section=status&do=new&k={$this->member->form_hash}&id={$this->memberData['member_id']}' method='post'> <input type='text' id='statusUpdateGlobal' name='content' class='input_text' style='width: 62%' placeholder='Статус ...'/> <input type='submit' id='statusSubmitGlobal' class='wa_ipsButton_secondary' value='{$this->lang->words['global_update_status']}' /> <if test="update:|:(IPSLib::twitter_enabled() OR IPSLib::fbc_enabled() ) AND ( $this->memberData['fb_uid'] OR $this->memberData['twitter_id'] )"> <if test="updateTwitter:|:IPSLib::twitter_enabled() AND ( $this->memberData['twitter_id'] )"><input type='checkbox' id='su_TwitterGlobal' value='1' name='su_Twitter' /> <label for='su_TwitterGlobal' class='desc ipsType_smaller'>{$this->lang->words['su_cb_twitter']}</label></if> <if test="updateFacebook:|:IPSLib::fbc_enabled() AND ( $this->memberData['fb_uid'] )"> <input type='checkbox' id='su_FacebookGlobal' value='1' name='su_Facebook' /> <label for='su_FacebookGlobal' class='desc ipsType_smaller'>{$this->lang->words['su_cb_facebook']}</label></if> </if> <br /> <hr /> </form> </if></div> </section> </div> </div></div></if> (Замените field_3 , 10 , 13 , 14 , 15 с ваши) 3.Перейти Админ Панель-Внешний вид-Ваш стиль-Нажмите Добавить CSS-файла. 4. Назовите его mobilebg. * { margin: 0; padding: 0; } .mobilebg { position: relative; box-shadow: 0 0 25px 0 rgba(0, 0, 0, 0.5); overflow: hidden; } /*Hiding the checkbox*/ #tm { display: none; } /*Content area*/ .mobilebg section { background: url({style_images_url}/wa_sbg_background.png ); width: 268px; height: 500px; position: relative; transition: all 0.25s; } .mobilebg section label { color: white; font: bold 14px helvetica, arial, sans-serif; text-align: center; display: block; padding: 10px 0; width: 60%; position: absolute; left: 22%; top: 100px; cursor: pointer; text-transform: uppercase; } /*Nav styles*/ .sidenav { background: #34495E; width: 150px; position: absolute; left: 0; top: 0; bottom: 0; padding-top: 50px; } .sidenav li { list-style-type: none; } .sidenav a { color: white; text-decoration: none; } .sidenav b { font: bold 12px/48px helvetica, arial, sans-serif; display: block; opacity: 0; transform: translateX(50px); transition: all 0.4s; } .sidenav i { display: block; width: 50px; float: left; font-size: 16px; line-height: 48px; text-align: center; } .wastats{ position: absolute; bottom: 15px; padding: 5px; } .wa_ipsButton_secondary{ height: 26px; line-height: 22px; font-size: 12px; padding: 0 10px; background: #2980b9; border-radius: 2px; border: none; color: #FFFFFF; display: inline-block; -webkit-transition: all 0.2s ease-in-out; -moz-transition: all 0.2s ease-in-out; } .wa_userinfo_silence{ text-align: center; position: absolute; bottom: 70px; width: 268px; } .pm_button img{ width: 20px; } .wa_repbg{ position: absolute; bottom: 130px; width:268px; text-align: center; } .reputation_wa{ font-weight: bold; height: 40px; line-height: 40px; } .reputation_wa.positive, .members li.positive { background: #27AE60; border: 1px solid #0F9447; color: #fff; } .reputation_wa.negative, .members li.negative { background: #b82929; color: #fff; } .reputation_wa.positive, .reputation.negative { color: #fff; } .reputation_wa.zero { background: #dedede; color: #6e6e6e; } /*Animation controls using checkbox hack*/ /*Animate content area to the right*/ #tm:checked ~ section { transform: translateX(150px); } /*Animate links from right to left + fade in effect*/ #tm:checked ~ .sidenav b { opacity: 1; transform: translateX(0); } /*Adding delay to link animation - in multiples of .08s*/ /*One can use jQuery also for creating the delayed effect. But I will stick to manual CSS for this walkthrough.*/ #tm:checked ~ .sidenav li:nth-child(1) b { transition-delay: 0.08s; } #tm:checked ~ .sidenav li:nth-child(2) b { transition-delay: 0.16s; } #tm:checked ~ .sidenav li:nth-child(3) b { transition-delay: 0.24s; } #tm:checked ~ .sidenav li:nth-child(4) b { transition-delay: 0.32s; } #tm:checked ~ .sidenav li:nth-child(5) b { transition-delay: 0.40s; } #tm:checked ~ .sidenav li:nth-child(6) b { transition-delay: 0.48s; } #tm:checked ~ .sidenav li:nth-child(7) b { transition-delay: 0.56s; } #tm:checked ~ .sidenav li:nth-child(8) b { transition-delay: 0.64s; } 5. Загрузить эти изображения в вашей коже ( public/style_images/ваш скин) изображения.zip 6. Вставьте эту ссылку в globaltemplate в перед </header> <link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css">
-
Уведомление при отсутствии персонализации
1.Перейти Админ Панель-Внешний вид-Ваш стиль-Список форумов-boardIndexTemplate найти: <div id='categories' class='ipsLayout_content clearfix'> 2. Под ним, вставить этот код: <PHP> $this->memberData['customization'] = @unserialize($this->memberData['pp_customization']); </PHP><if test="$this->memberData['member_id'] "> <if test="hasBodyCustomization:|:$this->memberData['customization']['bg_color'] OR $this->memberData['customization']['_bgUrl']"> <else /> <div class="error messagebg1" style="margin: 10px 0;"></br> Моля поставете Персонализация - съобщението ще се премахне автоматично ! <a href='{parse url="app=core&module=usercp&tab=core&area=customize" base="public"}' class="ipsButton right right" title='Моля поставете Персонализация' style='color: #fff;margin-top: -7px;'>Качване</a></br></br> </div> </if></if> 3.Перейти Админ Панель-Внешний вид-Ваш стиль-css-ipb_styles.css добавить у самий низ: div.messagebg1.error:before{content:'\f00d';} div.messagebg1 { position: relative; padding: 10px; padding-left: 35px; margin: 30px 10px; box-shadow:0 2px 5px rgba(0,0,0,.3); background: #73229B; color: #FFF; -webkit-transition: all .5s ease; -moz-transition: all .5s ease; -ms-transition: all .5s ease; -o-transition: all .5s ease; transition: all .5s ease; } div.messagebg1:hover{ box-shadow: 0 15px 20px rgba(10,0,10,.3); -webkit-filter: brightness(110%); } div.messagebg1:before{ content: ''; font-family: FontAwesome; position: absolute; display: block; top: -21px; left: 50%; margin:0 -21px; font-size: 20px; line-height: 24px; text-align: center; width: 24px; padding:10px; background: inherit; box-shadow:0 5px 10px rgba(0,0,0,.25); color: rgba(255,255,255,.75); border-radius:50%; border: 2px solid transparent; z-index: 2; } 10px; padding-left: 35px; margin: 30px 10px; box-shadow:0 2px 5px rgba(0,0,0,.3); background: #73229B; color: #FFF; -webkit-transition: all .5s ease; -moz-transition: all .5s ease; -ms-transition: all .5s ease; -o-transition: all .5s ease; transition: all .5s ease; } div.messagebg1:hover{ box-shadow: 0 15px 20px rgba(10,0,10,.3); -webkit-filter: brightness(110%); } div.messagebg1:before{ content: ''; font-family: FontAwesome; position: absolute; display: block; top: -21px; left: 50%; margin:0 -21px; font-size: 20px; line-height: 24px; text-align: center; width: 24px; padding:10px; background: inherit; box-shadow:0 5px 10px rgba(0,0,0,.25); color: rgba(255,255,255,.75); border-radius:50%; border: 2px solid transparent; z-index: 2; }
-
Разделы форума в две колонки
Как такое сделать? Просто откройте custom.css (или ipb_styles.css) и добавьте следующий код: /** - * Two Columns Forum - * ------------------------------------------------------------------------- */ @media all and (min-width: 1400px) { #categories .category_block table.ipb_table tbody { overflow: hidden; } #categories .category_block table.ipb_table tr { display: table; float: left; width: 50%; } #categories .category_block table.ipb_table tr.header { display: none; } #categories .category_block table.ipb_table tr.unread { background-color: transparent; } #categories .category_block table.ipb_table td { display: table-cell; border-bottom: none; } #categories .category_block table.ipb_table td.col_c_stats { display: none; /* удаление ячейки со статистикой */ } #categories .category_block table.ipb_table td.col_c_post { width: 200px; /* изменение ширины ячейки последнего сообщения */ } } Код адаптивный. При уменьшении окна браузера до 1400 пикселей (и меньше) вид шаблона возвращается к стандартному отображению.
-
Статус
АЦ-Внешний вид-ваш стиль-Список форумом-hookBoardIndexStatusUpdates Замените все на это <script type='text/javascript' src="{$this->settings['public_dir']}js/ips.status.js"></script> <div class='ipsSideBlock clearfix' id='statusHook'> <h3><span class="icon span-icon-text icon-status"></span> {$this->lang->words['recent_status_updates']}</h3> <div class='_sbcollapsable'> <div id="status_wrapper"> <if test="canUpdateStatus:|:$this->registry->getClass('memberStatus')->canCreate( $this->memberData ) && !($this->settings['board_offline'] && !$this->memberData['g_access_offline'])"> <form id='statusForm' action='{$this->settings['base_url']}app=members&module=profile§ion=status&do=new&k={$this->member->form_hash}&id={$this->memberData['member_id']}' method='post'> <input type='text' id='statusUpdateGlobal' name='content' class='input_text' style='width: 190px;margin-left: 5px;' /> <input type='submit' id='statusSubmitGlobal' class='ipsButton_secondary' value='Ok' /> <br /> </form> </if> <div id="status_wrapper_inside">{parse template="statusUpdates" group="boards" params="$updates, 1, 1"}</div> <div class="status_main_content ipsType_small" style='text-align: center'> <a href='{parse url="app=members&module=profile§ion=status&type=all" seotitle="true" template="members_status_all" base="public"}'>{$this->lang->words['viewallupdates']}</a> </div> </div> </div> </div>
-
Ник или выделенный текст в форму быстрого ответа
Заходим в: Админцентр > Внешний вид ˃ Ваш шаблон ˃ Темы ˃ post Ищем: <li class='report'> <a href="{$this->settings['base_url']}app=core&module=reports§ion=reports&do=show_report&rid={$this->memberData['_cache']['report_temp']['post_marker']['post'][$post['post']['pid']]['info']['id']}" id='post-report-{$post['post']['pid']}' class='ipbmenu'> <span id="rstat-{$this->memberData['_cache']['report_temp']['post_marker']['post'][ $post['post']['pid'] ]['info']['id']}"><img src="{$this->settings['img_url']}/reports/post_alert_{$this->memberData['_cache']['report_temp']['post_marker']['post'][$post['post']['pid']]['gfx']}.png" alt="" /></span> </a> </li> </if> </if> Ниже вставляем: <if test="replyButton:|:$post['post']['_canReply']"> <li style='position:absolute;'><a class='ipsButton_secondary' onmouseover="copyQ('{$post['author']['members_display_name']}', '{$post['post']['pid']}');" href="javascript:ins('{$post['author']['members_display_name']}')">Вставить ник или выделенный текст</a></li> </if> Заходим в: Админцентр > Внешний вид ˃ Ваш шаблон ˃ Темы ˃ topicViewTemplate Ищем: <script type='text/javascript'> ipb.topic.fastReplyId = '{$this->settings['_lastEditorId']}'; Ниже вставляем: function copyQ( qinf, pid ) { txt=''; if (window.getSelection) { txt=window.getSelection(); } else if (document.selection) { txt=document.selection.createRange().text; } if (txt != "") { txt='[quote name="'+qinf+'" post="'+pid+'"]'+txt+'[/quote]<br />'; } } function ins( name ) { editor = ipb.textEditor.getEditor( ipb.topic.fastReplyId ) if (txt!= "") { editor.insert( txt, true ); } else { editor.insert( "[b][member="+name+"][/b],", true ); } }