Posted 12 октября, 201311 yr comment_45878 Здравствуйте. Установил себе новый шаблон, но не как не могу решить пару проблем 1. Как поля "Сообщения и репутация" поднять выше поля ICQ, но что бы они остались в рамке. Не как не могу этого решить. Вроде выше ставятся, но вот рамка вокруг пропадает с этих полей. Код userinfopane <div class='user_details'> <ul class='basic_info'> <if test="membertitle:|:$author['member_title']"> <p class='desc member_title'>{$author['member_title']}</p> </if> <if test="avatar:|:$author['member_id']"> <li class='avatar'> <a href="{parse url="showuser={$author['member_id']}" template="showuser" seotitle="{$author['members_seo_name']}" base="public"}" title="{$this->lang->words['view_profile']}" class='ipsUserPhotoLink'> <if test="hasVariable:|:$this->settings['member_topic_avatar_max']"> <img src='{$author['pp_main_photo']}' class='ipsUserPhoto ipsUserPhoto_variable' /> <else /> <img src='{$author['pp_thumb_photo']}' class='ipsUserPhoto ipsUserPhoto_large' /> </if> </a> </li> <else /> <li class='avatar'> <img src='{$author['pp_thumb_photo']}' class='ipsUserPhoto ipsUserPhoto_large' /> </li> </if> <hr /> <if test="rankimage:|:$author['member_rank_img']"> <li class='group_icon'> <if test="rankimageimage:|:$author['member_rank_img_i'] == 'img'"> <img src='{$author['member_rank_img']}' alt='' /> <else /> {$author['member_rank_img']} </if> </li> </if> <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> <li> <table width="100%" border="0"> <tr> <td width="18"><img src="__gmnews.su/public/style_extra/cprofile_icons/mail.png"></td> <td width="50" align="left">Сообщений:</td> <td align="left">{parse expression="$this->registry->getClass('class_localization')->formatNumber( intval( $author['posts'] ) )"}</td> </tr> </table> </li> <li> <table width="100%" border="0"> <tr> <td width="18"><img src="__gmnews.su/public/style_extra/cprofile_icons/warn.png"></td> <td width="50" align="left"><a class='desc lighter blend_links' href='{parse url="app=members&module=profile&section=warnings&member={$author['member_id']}&from_app={$this->request['app']}&from_id1={$contentid}&from_id2={$options['id2']}" base="public"}' id='warn_link_{$contentid}_{$author['member_id']}' title='{$this->lang->words['warn_view_history']}'>Предупреждений:</a></td> <td align="left"><b>{parse expression="sprintf( $this->lang->words['warn_status'], $author['warn_level'] )"}</b></td> </tr> </table> </li> <li class='post_count desc lighter'> <if test="postCount:|:$author['member_id']"></if></li> </ul> </if> </div> Скрин Так же на форуме установлен хук на старом стиле всё было нормально. С новым проблема возникла. Во первых не видно модераторов, а во вторых когда наводишь на вкладку форума, там ошибка. Скрин Заранее благодарен за ответы Link to comment https://ipbmafia.ru/topic/5985-userinfo-i-eshe-paru-voprosov/ Share on other sites Больше вариантов
13 октября, 201311 yr comment_45903 Это дополнительные поля, редактируются они в ац: <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> Следовательно перед ними нужно вставить нужный тебе код. Link to comment https://ipbmafia.ru/topic/5985-userinfo-i-eshe-paru-voprosov/?&do=findComment&comment=45903 Share on other sites Больше вариантов
13 октября, 201311 yr comment_45989 легко же ) Просто переставить местами Link to comment https://ipbmafia.ru/topic/5985-userinfo-i-eshe-paru-voprosov/?&do=findComment&comment=45989 Share on other sites Больше вариантов
14 октября, 201311 yr Author comment_46113 Не как не могу этого решить. Вроде выше ставятся, но вот рамка вокруг пропадает с этих полей. Внимательно хоть читайте что в первом посте написано. Вот как получается Link to comment https://ipbmafia.ru/topic/5985-userinfo-i-eshe-paru-voprosov/?&do=findComment&comment=46113 Share on other sites Больше вариантов
14 октября, 201311 yr comment_46146 В коде каша какая-то.. Таблица то зачем там вообще?! Вот это вообще к чему? В курсе? <li class='post_count desc lighter'> <if test="postCount:|:$author['member_id']"></if></li> Link to comment https://ipbmafia.ru/topic/5985-userinfo-i-eshe-paru-voprosov/?&do=findComment&comment=46146 Share on other sites Больше вариантов
14 октября, 201311 yr comment_46150 В коде каша какая-то.. Таблица то зачем там вообще?! Вот это вообще к чему? В курсе? <li class='post_count desc lighter'> <if test="postCount:|:$author['member_id']"></if></li> Отсюда взяли часть кода, отвечающую за вывод кол-ва постов. А еще в коде нет одного закрывающего тега </ul> Плюс зачем-то в условия кастомных полей запихали посты и варнинги. Если я снесу все поля в админке, то указанные данные не будут показаны. Link to comment https://ipbmafia.ru/topic/5985-userinfo-i-eshe-paru-voprosov/?&do=findComment&comment=46150 Share on other sites Больше вариантов
14 октября, 201311 yr comment_46186 Внимательно хоть читайте что в первом посте написано. Вот как получается gm1.png Просто у тебя руки не от туда растут. Не получается потому, что ты не занес их в стиль custom_fields. В этот: <ul class='custom_fields'> </ul> Link to comment https://ipbmafia.ru/topic/5985-userinfo-i-eshe-paru-voprosov/?&do=findComment&comment=46186 Share on other sites Больше вариантов
18 октября, 201311 yr comment_46503 вот оригинальный код вывода "предупреждений" в userInfoPane <if test="authorwarn:|:$author['show_warn']"> <li> <if test="hasWarningId:|:$options['wl_id']"> <img src='{$this->settings['img_url']}/warn.png' class='clickable' onclick='warningPopup( this, {$options['wl_id']} )' title='{$this->lang->words['warnings_issued']}' /> </if> <a class='desc lighter blend_links' href='{parse url="app=members&module=profile&section=warnings&member={$author['member_id']}&from_app={$this->request['app']}&from_id1={$contentid}&from_id2={$options['id2']}" base="public"}' id='warn_link_{$contentid}_{$author['member_id']}' title='{$this->lang->words['warn_view_history']}'>{parse expression="sprintf( $this->lang->words['warn_status'], $author['warn_level'] )"}</a> </li> </if> как разделить код по частям, чтобы ссылку к примеру обозвать "нарушения" и через двоеточие вывести счётчик? к примеру {$author['warn_level']}у меня пару раз вывел инфу "0 предупреждений" и потом отказался выводить... перемудрил я что-то наверное. подскажите, кто понимает и вот вы ругаете автора что он таблицу сделал в юзер инфо... а веть это хорошее решение чтобы не выравнивать руками... если не считать проблемы выше и не доработанных доп. полей - весьма красиво... вот часть кода таблицы, в котором глючит счётчик <!--Нарушения--> <if test="authorwarn:|:$author['show_warn']"> <tr> <if test="hasWarningId:|:$options['wl_id']"> <td align="center"><img src='{$this->settings['img_url']}/warn.png' class='clickable' onclick='warningPopup( this, {$options['wl_id']} )' title='{$this->lang->words['warnings_issued']}' /></td> <else /> <td align="center"><img src="{$this->settings['img_url']}/icons/arrow-right.png" alt='' /></td> </if> <td align="left"><a href='{parse url="app=members&module=profile&section=warnings&member={$author['member_id']}&from_app={$this->request['app']}&from_id1={$contentid}&from_id2={$options['id2']}" base="public"}' id='warn_link_{$contentid}_{$author['member_id']}' title='{$this->lang->words['warn_view_history']}'>Нарушения:</a></td> <td align="center"><span class='postcoutninfopane'>{$author['warn_level']}</span></td> </tr> </if> <!--/Нарушения--> вот примеры недоработанной идеи (screenshot.4.png - предупреждений 0, screenshot.5.png - за данное сообщение выставлено предупреждение? screenshot.6.png - предупреждения есть, но не за это сообщение) Link to comment https://ipbmafia.ru/topic/5985-userinfo-i-eshe-paru-voprosov/?&do=findComment&comment=46503 Share on other sites Больше вариантов
18 октября, 201311 yr comment_46505 {$author['warn_level']} это совершенно правильно! Но, ты его выкинул из условия if test="authorwarn:|:$author['show_warn']"> а это делать нельзя! Поэтому оно и не работает у админа, поскольку админа нельзя предупреждать и у него просто нет предупреждений, а проверку на это (условие) ты выкинул. Подумай ещё, как нужно поработать с условиями. Link to comment https://ipbmafia.ru/topic/5985-userinfo-i-eshe-paru-voprosov/?&do=findComment&comment=46505 Share on other sites Больше вариантов
18 октября, 201311 yr comment_46510 А лучше всего делать так: {parse expression="sprintf( $author['warn_level'] )"} а то будет пустое место вместо цифры 0 у админа. Link to comment https://ipbmafia.ru/topic/5985-userinfo-i-eshe-paru-voprosov/?&do=findComment&comment=46510 Share on other sites Больше вариантов
18 октября, 201311 yr comment_46512 Итого, в нужное место вставляй <if test="$author['show_warn']"> {parse expression="sprintf( $author['warn_level'] )"} </if> Если где ошибся, то поправят другие. Link to comment https://ipbmafia.ru/topic/5985-userinfo-i-eshe-paru-voprosov/?&do=findComment&comment=46512 Share on other sites Больше вариантов
18 октября, 201311 yr comment_46536 условия я пытался сохранить оригинальные... просто не слишком хорошо покачто разбираюсь в них и думал, что на таблицы сохраняются. задумка была такова- если есть предупреждения как по дефорлту - показывать иконку "восклицательный знак", если нет - показывать другую иконку, ну и дальше стандартный вывод "баллов предупреждения", только разбитый на столбцы таблицы, и всё это под общим условием возможности видеть предупреждения <if test="authorwarn:|:$author['show_warn']"> сейчас проверю все варианты из темы. спасибо за помощь! ------------------ <if test="$author['show_warn']"> {parse expression="sprintf( $author['warn_level'] )"} </if>выводит если есть баллы предупреждения, если ент - пусто, хотя стандартный код упорно пишет "0 предупреждений"... скорее всего что-то сломал остаётся только одно - вписать проверку на наличие, и если =0 - выводить цыфру 0 без счётчика, иначе выводить глючный счётчик Link to comment https://ipbmafia.ru/topic/5985-userinfo-i-eshe-paru-voprosov/?&do=findComment&comment=46536 Share on other sites Больше вариантов
18 октября, 201311 yr comment_46537 и всё это под общим условием возможности видеть предупреждения Это ты не сделал, у тебя там <else> Почитай про if-then-else и всё будет понятно. Link to comment https://ipbmafia.ru/topic/5985-userinfo-i-eshe-paru-voprosov/?&do=findComment&comment=46537 Share on other sites Больше вариантов
18 октября, 201311 yr comment_46538 spoken, оно же к другому if... или так нельзя? Link to comment https://ipbmafia.ru/topic/5985-userinfo-i-eshe-paru-voprosov/?&do=findComment&comment=46538 Share on other sites Больше вариантов
18 октября, 201311 yr comment_46539 Lordbl4, извини, не заметил. Всё с if у тебя верно, просто проверь с {parse expression="sprintf( $author['warn_level'] )"} Link to comment https://ipbmafia.ru/topic/5985-userinfo-i-eshe-paru-voprosov/?&do=findComment&comment=46539 Share on other sites Больше вариантов
18 октября, 201311 yr comment_46542 результат {parse expression="sprintf( $this->lang->words['warn_status'], $author['warn_level'] )"} вставляю в любое место - показывает верно, {parse expression="sprintf( $author['warn_level'] )"} вставляю в то же самое место - показывает только если есть предупреждения (хотя работало...) <if test="$author['show_warn']"> {parse expression="sprintf( $author['warn_level'] )"} </if> тоже самое... <if test="hasWarningId:|:$options['wl_id']"> {parse expression="sprintf( $author['warn_level'] )"} </if> не знаю зачем, но тоже не работает как вариант... <if test="$author['warn_level'] == 0"> <td align="center"><span class='postcoutninfopane'>0</span></td> <else /> <td align="center"><span class='postcoutninfopane'>{parse expression="sprintf( $author['warn_level'] )"}</span></td> </if> Link to comment https://ipbmafia.ru/topic/5985-userinfo-i-eshe-paru-voprosov/?&do=findComment&comment=46542 Share on other sites Больше вариантов
18 октября, 201311 yr comment_46544 {parse expression="sprintf( $author['warn_level'] )"} что показывает у того, у кого нет предупреждений? Link to comment https://ipbmafia.ru/topic/5985-userinfo-i-eshe-paru-voprosov/?&do=findComment&comment=46544 Share on other sites Больше вариантов
18 октября, 201311 yr comment_46545 {parse expression="sprintf( $author['warn_level'] )"} что показывает у того, у кого нет предупреждений? пустоту Link to comment https://ipbmafia.ru/topic/5985-userinfo-i-eshe-paru-voprosov/?&do=findComment&comment=46545 Share on other sites Больше вариантов
18 октября, 201311 yr comment_46546 А твой обходной вариант упрощается так: <td align="center"><span class='postcoutninfopane'> <if test="$author['warn_level'] == 0"> 0 <else /> {parse expression="sprintf( $author['warn_level'] )"} </if> </span></td> но мне не нравится такой изврат. А он админ? Автор этого поста. А у обычного пользователя 0 или пустота? Link to comment https://ipbmafia.ru/topic/5985-userinfo-i-eshe-paru-voprosov/?&do=findComment&comment=46546 Share on other sites Больше вариантов
18 октября, 201311 yr comment_46547 {parse expression="sprintf( $author['warn_level'] )"} пользователь без нарушений - пустота, стандартный - "0 баллов предупреждения" пользователь с нарушениями - число нарушений, стандартное - "х баллов предупреждения" админ без предупреждений - пустота, стандартное - "0 баллов предупреждения" Link to comment https://ipbmafia.ru/topic/5985-userinfo-i-eshe-paru-voprosov/?&do=findComment&comment=46547 Share on other sites Больше вариантов
18 октября, 201311 yr comment_46548 Всё, я понял, внутри $this->lang->words['warn_status'] находится модификатор формата вывода числа. У админа $author['warn_level'] пустое, поэтому выходит пустота. Посмотри что за модификатор формата внутри $this->lang->words['warn_status'] и используй его для sprintf( $author['warn_level'] ) Будет что-то типа sprintf( '%u', $author['warn_level'] ) Поиском в языках ищи warn_status Link to comment https://ipbmafia.ru/topic/5985-userinfo-i-eshe-paru-voprosov/?&do=findComment&comment=46548 Share on other sites Больше вариантов
18 октября, 201311 yr comment_46550 spoken, %d баллов предупреждения Link to comment https://ipbmafia.ru/topic/5985-userinfo-i-eshe-paru-voprosov/?&do=findComment&comment=46550 Share on other sites Больше вариантов
18 октября, 201311 yr comment_46551 sprintf( '%d', $author['warn_level'] ) тебе поможет! Link to comment https://ipbmafia.ru/topic/5985-userinfo-i-eshe-paru-voprosov/?&do=findComment&comment=46551 Share on other sites Больше вариантов
18 октября, 201311 yr comment_46554 {parse expression="sprintf('%d', $author['warn_level'] )"} работает, огромнейшее спасибо! хорошо наверное, когда знаешь... можно такие вещи творить... вот примерный вариант таблички в userInfoPane, может быть автору пригодиться, у него там ошибки были. нужно лишь изменить пути на свои картинки удалено из-за безбожного и безрассудного копирования Link to comment https://ipbmafia.ru/topic/5985-userinfo-i-eshe-paru-voprosov/?&do=findComment&comment=46554 Share on other sites Больше вариантов
18 октября, 201311 yr comment_46556 Lordbl4, да ничо я не знаю, столько протупил, и условия твои неправильно прочитал и к админу прицепился. Там не в админе дело, а в отсутствии нарушений. Пустота там. А 0 отображает функция sprintf с которой я тоже втупил, забыв про строку формата. Верстка таблицей это прошлый век, нынче блочная (DIV) верстка в почете. А всякие выравнивания и прочее через CSS. Link to comment https://ipbmafia.ru/topic/5985-userinfo-i-eshe-paru-voprosov/?&do=findComment&comment=46556 Share on other sites Больше вариантов
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.