10
-
#281Reply in Chat & Socialize
-
#282Reply in Chat & Socialize
8
-
#283Reply in Chat & Socialize
10
-
#284Reply in Chat & Socialize
Cu :))
Cu sau fara ceas?
-
#285Reply in Chat & Socialize
O valiza mai mica :big_laugh :big_laugh :P :tongue :big_laugh :D
-
#286Reply in Chat & Socialize
4
-
#287Reply in Chat & Socialize
Ce faceti?
-
#288Reply in Chat & Socialize
Default, în Sidebar-ul forumului IPB apar 5 cele mai recente subiecte de pe forum.
În caz că vrem să modificăm acest număr deschidem:
/admin/applications/forums/sources/classes/forums/class_forums.php
căutăm:
public function hooks_recentTopics( $topicCount=5, $output=true )
şi înlocuim cifra 5 cu numărul de topicuri dorite.
De exemplu, dacă vreo 10 cele mai recente subiecte codul arată aşa:
public function hooks_recentTopics( $topicCount=10, $output=true )
-
#289Reply in Chat & Socialize
Rezultatul va fi ceva de genul:

AdminCP > Look & Feel > [tema ta] > Board Index > boardIndexTemplate
Cautam
<div id='board_index' class='ipsLayout <if test="sideBarEnabledL:|:$this->templateVars['sidebar_enabled']">ipsLayout_withright</if> ipsLayout_largeright clearfix <if test="sidebarclosed:|:IPSCookie::get('hide_sidebar') == '1'">no_sidebar</if>'> si il inlocuim cu
<div id='board_index' class='ipsLayout <if test="sideBarEnabledL:|:$this->templateVars['sidebar_enabled']">ipsLayout_withleft</if> ipsLayout_largeleft clearfix <if test="sidebarclosed:|:IPSCookie::get('hide_sidebar') == '1'">no_sidebar</if>'> Cautam
<div id='index_stats' class='ipsLayout_right clearfix' <if test="sidebarclosed2:|:IPSCookie::get('hide_sidebar') == '1'">style='display: none'</if>> si il inlocuim cu
<div id='index_stats' class='ipsLayout_left clearfix' <if test="sidebarclosed2:|:IPSCookie::get('hide_sidebar') == '1'">style='display: none'</if>>
AdminCP > Look & Feel > [tema ta] > tab-ul CSS > ipb_styles.css
- Căutăm .ipsLayout_content { şi în loc de float: left; setăm float: right;
- Căutăm #board_index.no_sidebar { şi în loc de padding-right setăm padding-left
- Căutăm #toggle_sidebar { şi în loc de right: 3px (poate varia. Când am modificat tema de mai sus (foloseam IPB 3.4.4), la mine era right: -5 px) setăm left: 1px;
-
#290Reply in Chat & Socialize
RO: Aranjare Subforumuri In 2 3 4 ..etc Coloane.
EN: Arange Subforums In 2 3 4 ..etc Columns.
RO: Dupa ce mam chinui cateva ore sai dau de cap, dupa ce am instalat zeci de hook-uri care fac treaba asta si care a distrus forumul sau modifica multe ceea ce nu vroiam eu am reusit sa fac ceea ce va prezint mai jos, adica Aranjarea Subforumurilor in cate categorii iti permite forumul.
Numarul coloane totul depinde de thema care o ai la forum cat este de larga, aranjarea ei... etc.
EN: Affter so manny tries to make the subforums in how manny columns i whanted i had installed all types of hooks ar sompting alse thet destroyed my forum or was changind the style of the forum or many other things.
The numbers of columns all depends of you'r forum width, of course if is a small width maybe you will make 2 columns mine is a bit bigger so i made 3 some other ppl has made even 4 5 depends.
RO: Mod Instalare - Mergeti La Look Feel > "Stilul Tau" > CSS > IPB_style.css si cauta urmatoarele:
EN: Instalation Tutorial - Go to Look Feel > "Your Style" > CSS > IPB_style.css and find the following:
table.ipb_table .subforums {
margin: 2px 0 3px 5px;
padding-left: 20px;
background: url(
) no-repeat lef 4px;
}
table.ipb_table .subforums li.unread { font-weight: bold; }
table.ipb_table .expander {
visibility: hidden;
width: 16px;
height: 16px;
display: inline-block;
}RO: Si schimbatil cu:
EN: And change it with:
table.ipb_table .subforums {
margin: 2px 0 3px 0px;
padding-left: 0px;
overflow: hidden;
width: 450px;
}
table.ipb_table .subforums li{
background: url(
) no-repeat left 3px;
width: 27%;
padding: 4px 14px 0px;
margin: 0;
float: left;
}
table.ipb_table .subforums li.unread {
font-weight: bold;
background-image: url(
);
}RO: Pentru a schimba numarul coloane trebuie sa modificati: width: 450px; & width: 27%;
EN: To change numbers of columns you have to change the: width: 450px; & width: 27%;
RO: Numarul coloanelor totul de pinde de forumul dvs cat va permite: width
EN: All depends the width thet you forum permites you and the second width
Ex: width: 550px; & width: 25% = 4
Ex: width: 450px; & width: 27% = 3
Ex: width: 400px; & width: 33% = 2
Etc....
RO: De ce am creat accest topic in 2 limbi ? Pentru ca am cautat si pe forumuri straine si nu se gaseste.
EN: Why i made this topic 2 langs ? Because i search on all types of forum in difrent langs and i didn't fiind.
-
#291Reply in Chat & Socialize
De când cei de la Invision Power au lansat IPB 3.3.X, sistemul de warning bazat pe acea drăgălaşă bară grafică a dispărut, în locul ei apărând minunatele puncte.
Adică da, la avertizare ai un număr de puncte (1, 2, 3, 4, etc.)
Azi vă voi arăta cum puteţi introduce înapoi acea bară grafică cu care mulţ s-au obişnuit.
Atenţie: odată ce aţi introdus bara, un user va putea avea maxim 10 puncte de avertizare, pentru ca maximul de 10 puncte să ocupe toată bara de warning.
Dacă sunteţi interesat despre modul în care va arăta:
Şi, să trecem la treabă:
AdminCP > Look & Feel > Manage Templates & CSS > Global Templates > userInfoPane.
Aici căutăm
</if>
</ul>
<if test="authorcfields:|:$author['custom_fields'] != """>şi introducem deasupra
<if test="highwarn:|:$author['warn_level'] >= 8">
<p class='progress_bar user_warn limit' title='{$this->lang->words['warn_level']} {$author['warn_level']}0%'>
<else />
<p class='progress_bar user_warn' title='{$this->lang->words['warn_level']} {$author['warn_level']}0%'>
</if>
<span style='width: {$author['warn_level']}0%'><span>{$this->lang->words['warn_level']} {$author['warn_level']}0%</span></span>
</p>Apoi, căutăm în tab-ul CSS fila ipb_styles.css şi adăugam la final, jos de tot:
.progress_bar {
background-color: #fff;
border: 1px solid #d5dde5;
}
.progress_bar span {
background: #243f5c url({style_images_url}/gradient_bg.png) repeat-x left 50%;
color: #fff;
font-size: 0em;
font-weight: bold;
text-align: center;
text-indent: -2000em; /* Safari fix */
height: 10px;
display: block;
overflow: hidden;
}
.progress_bar.limit span {
background: #b82929 url({style_images_url}/progressbar_warning.png) repeat-x center;
}
.progress_bar span span {
display: none;
}
.progress_bar.user_warn {
margin: 0 auto;
width: 80%;
}
.progress_bar.user_warn span {
height: 6px;
}
-
#292Reply in Chat & Socialize
Conecteaza-te cu clientul FTP (Filezila, SmartFTP, etc.), pe serverul de gazduire folosit.
Du-te in admin -> skin_cp -> cp_skin_global.php si cauta:
if( !$this->settings['ipb_reg_number'] )
{
$this->lang->words['license_missing_info'] = sprintf( $this->lang->words['license_missing_info'], $this->settings['base_url'] . 'app=core&module=tools§ion=licensekey' );
$extra_class = 'force_license';
$license_html = <<<HTML<div id='license_notice_force'>
<h4>{$this->lang->words['license_missing_header']}</h4>
<p>{$this->lang->words['license_missing_info']}</p>
</div>
HTML;
}
else
{
$licenseData = $this->cache->getCache( 'licenseData' );
if( ( !$licenseData OR !$licenseData['key']['_expires'] OR $licenseData['key']['_expires'] < IPS_UNIX_TIME_NOW and $licenseData['key']['_expires'] != -1 ) AND !IPSCookie::get( 'ignore-license-notice' ) )
{
$extra_class = 'expired_license';
$license_html = <<<HTML<div id='license_notice_expired'>
<div class='right'><a id='license-close' href='#'>Close</a></div>
<h4>{$this->lang->words['license_expired_header']}</h4>
<p>{$this->lang->words['license_expired_info']}</p>
</div>
HTML;
}
}Si schimba cu:
/*if( !$this->settings['ipb_reg_number'] )
{
$this->lang->words['license_missing_info'] = sprintf( $this->lang->words['license_missing_info'], $this->settings['base_url'] . 'app=core&module=tools§ion=licensekey' );
$extra_class = 'force_license';
$license_html = <<<HTML
<div id='license_notice_force'>
<h4>{$this->lang->words['license_missing_header']}</h4>
<p>{$this->lang->words['license_missing_info']}</p>
</div>
HTML;
}
else
{
$licenseData = $this->cache->getCache( 'licenseData' );
if( ( !$licenseData OR !$licenseData['key']['_expires'] OR $licenseData['key']['_expires'] < IPS_UNIX_TIME_NOW and $licenseData['key']['_expires'] != -1 ) AND !IPSCookie::get( 'ignore-license-notice' ) )
{
$extra_class = 'expired_license';
$license_html = <<<HTML
<div id='license_notice_expired'>
<div class='right'><a id='license-close' href='#'>Close</a></div>
<h4>{$this->lang->words['license_expired_header']}</h4>
<p>{$this->lang->words['license_expired_info']}</p>
</div>
HTML;
}
}
*/
Salveaza, si dupa te duci in admin -> applications -> core -> extensions -> dashboardNotifications.php si cauta:
if( ! $this->settings['ipb_reg_number'] )
{
$entries[] = array( $this->lang->words['lc_title_nokey'], sprintf( $this->lang->words['lc_msg_nokey'], "{$this->settings['base_url']}module=tools&section=licensekey" ) );
}
else
{
/* Is the Spam Service Working?if ( $this->settings['spam_service_enabled'] )
{
$GOT_SPAM_ERROR = false;
/* Are we entitled to it?
$licenseData = $this->cache->getCache( 'licenseData' );
if ( is_array( $licenseData['ipbMain'] ) && count( $licenseData['ipbMain'] ) )
{
foreach ( $licenseData['ipbMain'] as $data )
{
if ( $data['name'] == 'Spam Monitoring Service' && $data['status'] != 'Ok' )
{
$disableLink = $this->settings['base_url'] . "app=core&module=settings&section=settings&do=findsetting&key=spamservice";
if ( is_numeric( $data['_expires'] ) && time() > $data['_expires'] )
{
$entries[] = array( $this->lang->words['spam_service_error'], sprintf( $this->lang->words['spam_service_expired'], $disableLink ) );
}
else
{
$entries[] = array( $this->lang->words['spam_service_error'], sprintf( $this->lang->words['spam_service_unavailable'], $disableLink ) );
}
$GOT_SPAM_ERROR = true;
break;
}
}
}
if ( ! $GOT_SPAM_ERROR )
{
/* Get last 5 logs, and if all 5 are errors, show message
$_errors = 0;
$_entries = 0;
$_lastError = '';
$this->DB->build( array( 'select' => 'log_code, log_msg', 'from' => 'spam_service_log', 'order' => 'id DESC', 'limit' => 5 ) );
$this->DB->execute();
while( $_r = $this->DB->fetch() )
{
$_entries++;
if( $_r['log_code'] === '0' )
{
$_errors++;
if( !$_lastError )
{
$_lastError = $_r['log_msg'];
}
}
}
if( $_entries > 0 && $_errors == $_entries )
{
$entries[] = array( $this->lang->words['spam_service_error'], sprintf( $this->lang->words['spam_service_error_msg'], $_lastError ) );
}
}
}
/* If it's disabled, are we entitiled to it?
else
{
$licenseData = $this->cache->getCache( 'licenseData' );
if ( is_array( $licenseData['ipbMain'] ) && count( $licenseData['ipbMain'] ) )
{
foreach ( $licenseData['ipbMain'] as $data )
{
if ( $data['name'] == 'Spam Monitoring Service' && $data['status'] == 'Ok' )
{
$entries[] = array( $this->lang->words['spam_service_disabled'], $this->lang->words['spam_service_disabled_msg'] );
break;
}
}
}
}
}
Si inlocuiesti cu:
/* if( ! $this->settings['ipb_reg_number'] ){
$entries[] = array( $this->lang->words['lc_title_nokey'], sprintf( $this->lang->words['lc_msg_nokey'], "{$this->settings['base_url']}module=tools&section=licensekey" ) );
}
else
{
/* Is the Spam Service Working?
if ( $this->settings['spam_service_enabled'] )
{
$GOT_SPAM_ERROR = false;
/* Are we entitled to it?
$licenseData = $this->cache->getCache( 'licenseData' );
if ( is_array( $licenseData['ipbMain'] ) && count( $licenseData['ipbMain'] ) )
{
foreach ( $licenseData['ipbMain'] as $data )
{
if ( $data['name'] == 'Spam Monitoring Service' && $data['status'] != 'Ok' )
{
$disableLink = $this->settings['base_url'] . "app=core&module=settings&section=settings&do=findsetting&key=spamservice";
if ( is_numeric( $data['_expires'] ) && time() > $data['_expires'] )
{
$entries[] = array( $this->lang->words['spam_service_error'], sprintf( $this->lang->words['spam_service_expired'], $disableLink ) );
}
else
{
$entries[] = array( $this->lang->words['spam_service_error'], sprintf( $this->lang->words['spam_service_unavailable'], $disableLink ) );
}
$GOT_SPAM_ERROR = true;
break;
}
}
}
if ( ! $GOT_SPAM_ERROR )
{
/* Get last 5 logs, and if all 5 are errors, show message
$_errors = 0;
$_entries = 0;
$_lastError = '';
$this->DB->build( array( 'select' => 'log_code, log_msg', 'from' => 'spam_service_log', 'order' => 'id DESC', 'limit' => 5 ) );
$this->DB->execute();
while( $_r = $this->DB->fetch() )
{
$_entries++;
if( $_r['log_code'] === '0' )
{
$_errors++;
if( !$_lastError )
{
$_lastError = $_r['log_msg'];
}
}
}
if( $_entries > 0 && $_errors == $_entries )
{
$entries[] = array( $this->lang->words['spam_service_error'], sprintf( $this->lang->words['spam_service_error_msg'], $_lastError ) );
}
}
}
/* If it's disabled, are we entitiled to it?
else
{
$licenseData = $this->cache->getCache( 'licenseData' );
if ( is_array( $licenseData['ipbMain'] ) && count( $licenseData['ipbMain'] ) )
{
foreach ( $licenseData['ipbMain'] as $data )
{
if ( $data['name'] == 'Spam Monitoring Service' && $data['status'] == 'Ok' )
{
$entries[] = array( $this->lang->words['spam_service_disabled'], $this->lang->words['spam_service_disabled_msg'] );
break;
}
}
}
}
}
*/
Salveaza si gata, verifica ACP-ul.
In general functioneaza pe IPB 3.2.x, 3.3.x si 3.4.x.
-
#293Reply in Chat & Socialize
Pentru a face un anunt global trebuie sa ai cel putin permisiunea "global moderator"
Intrati in Moderator CP --> Announcements --> Dati click pe "Add announcement"
la "Announcement Title" punem Titlul Anuntului
La "Start Date" punem data de cand va fi afisat anuntul. Preferabil lasati casuta goala pentru a-l porni imediat.
La "End Date" punem data in care anuntul nu va mai fii afisat pe forum. Preferabil lasati casuta goala , pentru a lasa anuntul pe o durata nedeterminata.
La "Activate in Forums" selectam "All forums" pentru a afisa anuntul in toate sub_forumurile .
Iar la "Announcement Post" vom scrie ce vrem sa fie afisat in anunt. Si bifam "Enable HTML?" pentru a activa codurile HTML.(optional)
Pentru a sterge un anunt Intrati in Moderator CP --> Announcements --> Dati click pe"Delete" din dreptul anuntului pe care vreti sa il stergeti.
-
#294Reply in Chat & Socialize
Am vazut ca foarte multi se confrunta cu o problema atunci cand muta categorii intregi in Arhiva, fiindca apar multe subforumuri in aceasta. Eu unul am rezolva problema prin schimbarea unei linii in tema.
Look & Feel / Tema / Board Index / boardIndexTemplate
Cauta:
<if test="showSubForums:|:$forum_data['show_subforums'] AND count( $forum_data['subforums'] ) AND $forum_data['show_subforums']">
Inlocuieste cu:
<if test="showSubForums:|:$forum_data['show_subforums'] AND count( $forum_data['subforums'] ) AND $forum_data['show_subforums'] AND $_data['cat_data']['id']!=idul_categoriei">
Textul "idul_categoriei" trebuie inlocuit cu idul categorie care contine arhiva/cosul de gunoi (ATENTIE!: Id-ul categorie care contine arhiva, nu idul arhivei.).
Pentru a afla idul unei categorii intrati in ea, iar in link, in fata numelui categoriei se afla idul. De exemplu idul categorie "Discutii Generale" de pe acest forum este 2.
http://pctroubleshooting.ro/forum/2-discutii-generale/
* Aceasta metoda nu functioneaza doar pentru "Arhiva"
. O puteti folosi pentru orice alta categorie.* NU folositi codul de mai multe ori in aceeasi tema. Pentru a ascunde subforumurile mai multor categorii folositi codul de mai jos (postat de dom' ambasador Courage, TY).
-
#295Reply in Chat & Socialize
Creaţi un fişier numit 'constants.php' şi adăugaţi în el următorul cod:
<?php
define( 'IN_DEV', true);
Înainte de al activa asigurativă că sunteţi la zi cu toate fişierele , descărcate direct de pe IPS Community.
Pentru al opri schimbaţi codul cu :
<?php
define( 'IN_DEV', false);
-
#296Reply in Chat & Socialize
Creaţi un fişier numit 'constants.php' şi adăugaţi în el următorul cod :
<?php
define( 'CP_DIRECTORY', 'admin' );
Schimbaţi admin cu numele dorit după care salvaţi şi urcaţi fişierul în aceaşi locaţie cu conf_global.php.
Stiu ca a fost scurt acest tutorial,dar sper sa va ajute.
-
#297Reply in Chat & Socialize
Inca un tutorial de la mine pentru voi, asta e inventat de mine cu rata de succes de 100%

Modificati codul din css si scoateti pozele, copyright pt codul lui Courage
de ex asta e codul pentru subforumuri pe 3 coloane ( partea css ):
table.ipb_table ol.subforums1 {margin-top: 3px;float: left;width: 33%;}table.ipb_table ol.subforums1 li{background: url('{style_images_url}/subforum_nonew.png') no-repeat 0 50%;padding: 0 15px 0 15px;margin: 0;float: left;}table.ipb_table .subforums1 li.unread { font-weight: bold; background-image: url('{style_images_url}/subforum_new.png'); }table.ipb_table ol.subforums2 {width: 33%;overflow: hidden;}table.ipb_table ol.subforums2 li {background: url('{style_images_url}/subforum_nonew.png') no-repeat 0 50%;padding: 0 15px 0 15px;margin: 0;float: left;}table.ipb_table .subforums2 li.unread { font-weight: bold; background-image: url('{style_images_url}/subforum_new.png'); }table.ipb_table ol.subforums3 {width: 33%;overflow: hidden;}table.ipb_table ol.subforums3 li {background: url('{style_images_url}/subforum_nonew.png') no-repeat 0 50%;padding: 0 15px 0 15px;margin: 0;float: left;}table.ipb_table .subforums3 li.unread { font-weight: bold; background-image: url('{style_images_url}/subforum_new.png'); }
Voi il modificati cu asta:
table.ipb_table ol.subforums1 {margin-top: 3px;float: left;width: 33%;}table.ipb_table ol.subforums1 li{padding: 0 15px 0 15px;margin: 0;float: left;}table.ipb_table .subforums1 li.unread { font-weight: bold;}table.ipb_table ol.subforums2 {width: 33%;overflow: hidden;}table.ipb_table ol.subforums2 li {padding: 0 15px 0 15px;margin: 0;float: left;}table.ipb_table .subforums2 li.unread { font-weight: bold; }table.ipb_table ol.subforums3 {width: 33%;overflow: hidden;}table.ipb_table ol.subforums3 li {padding: 0 15px 0 15px;margin: 0;float: left;}table.ipb_table .subforums3 li.unread { font-weight: bold; }
Si dupa adaugati in css asta
table.ipb_table ol.subforums1 li:before {
font-family: 'FontAwesome';
content: "\f05b";
margin-right: 3px;
font-size: 10px;
position: relative;
top: -1.5px;
color: #555;
}
ca sa modifici iconita aia editezi content : "\f05b"; cum doresti.
Sa va explic si cum afati acel mirific codulet;
cautati o iconita, sa zicem fa fa-arrow-right o gasiti aici: http://fortawesome.github.io/Font-Awesome/icon/arrow-right/
sub imaginile alea cu iconita in diferite dimensiuni aveti Unicode: etc.
Unicode la fa-arrow-right este f061 si voi puneti in: content : "\f061" ;
Rezultat:
table.ipb_table ol.subforums1 {
margin-top: 3px;
float: left;
width: 33%;
}
table.ipb_table ol.subforums1 li {
padding: 0 15px 0 10px;
margin: 0;
float: left;
}
table.ipb_table .subforums1 li.unread {
font-weight: bold;
}
table.ipb_table ol.subforums2 {
width: 33%;
overflow: hidden;
}
table.ipb_table ol.subforums2 li {
padding: 0 15px 0 15px;
margin: 0;
float: left;
}
table.ipb_table .subforums2 li.unread {
font-weight: bold;
}
table.ipb_table ol.subforums3 {
width: 33%;
overflow: hidden;
}
table.ipb_table ol.subforums3 li {
padding: 0 15px 0 15px;
margin: 0;
float: left;
}
table.ipb_table .subforums3 li.unread {
font-weight: bold;
}
table.ipb_table ol.subforums1 li:before {
font-family: 'FontAwesome';
content: "\f067";
margin-right: 3px;
font-size: 9px;
position: relative;
top: -1.5px;
color: #555;
}
table.ipb_table ol.subforums1 li.unread:before {
color: #b83030;
font-weight: 100;
font-size: 8px;
transition: all 0.3s;
}
.subforums1 a {
transition: all 0.5s;
color: grey;
}
.subforums1 a:hover {
color: #b83030;
}
-
#298Reply in Chat & Socialize
Tot mai multe topicuri, aceleași răspunsuri. Ca să fie totul clar, o să vă arăt cum să schimbați detaliile de sub avatar într-un topic.
Acele detalii se încadrează în userInfoPane, iar ele pot fi modificate atât din Templates, cât și din CSS.
1. Intrați în Look & Feel > Tema d-voastră > Global Templates > userInfoPane
2. Ștergeți tot ce aveți acolo și introduceți următorul cod:
<div itemscope itemtype="http://schema.org/Person" class='user_details'>
<span class='hide' itemprop="name">{$author['members_display_name']}</span>
<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'>
<if test="canSeeProfiles:|:$this->memberData['g_is_supmod'] OR ( $this->memberData['g_mem_info'] && ! IPSMember::isInactive( $author ) )"><a itemprop="url" href="{parse url="showuser={$author['member_id']}" template="showuser" seotitle="{$author['members_seo_name']}" base="public"}" title="{$this->lang->words['view_profile']}: {$author['members_display_name']}" class='ipsUserPhotoLink'>
</if>
<if test="hasVariable:|:$this->settings['member_topic_avatar_max']"><img itemprop="image" src='{$author['pp_main_photo']}' class='ipsUserPhoto ipsUserPhoto_variable' />
<else />
<img itemprop="image" src='{$author['pp_thumb_photo']}' class='ipsUserPhoto ipsUserPhoto_large' />
</if>
<if test="canSeeProfiles2:|:$this->memberData['g_is_supmod'] OR ( $this->memberData['g_mem_info'] && ! IPSMember::isInactive( $author ) )"></a>
</if>
</li>
<else />
<li class='avatar'>
<img itemprop="image" src='{$author['pp_thumb_photo']}' class='ipsUserPhoto ipsUserPhoto_large' />
</li>
</if>
<li class='group_title'>
{$author['_group_formatted']}</li>
<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>
<div class="extraUserInfo">
<dl class="pairsJustified">
<li class='post_count desc lighter'>
<dt>Mesaje:</dt>
<dd>
{parse expression="$this->registry->getClass('class_localization')->formatNumber( intval( $author['posts'] ) )"}</dd>
</li>
</dl><dl class="pairsJustified">
<li class='post_count desc lighter'>
<dt>ID membru:</dt>
<dd>
{$author['member_id']}</dd>
</li>
</dl><dl class="pairsJustified">
<li class='post_count desc lighter'>
<dt>Înregistrat</dt>
<dd>
{parse date="$author['joined']" format="joined"}</dd>
</li>
</dl><dl class="pairsJustified">
<li class='post_count desc lighter'>
<dt>Reputaţie</dt>
<dd>
{$author['pp_reputation_points']}</dd>
</li>
</dl><if test="authorcfields:|:$author['custom_fields'] != """><ul>
<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><if test="authorwarn:|:$author['show_warn']">
<li>
<if test="$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></div>
</div>
3. Intrați în CSS > ipb_styles.css și introduceți la sfârșit următorul cod:
.extraUserInfo{
font-size:11px;
padding:4px 0px;
}.pairsJustified {
margin: 2px 0 0;
font-size: 9px;
border-bottom: 1px dashed #000!important;
overflow: hidden;
line-height: 1.5;
}.pairsJustified dt {
padding-right: 5px;
font-size: 11px!important;
float: left;
text-align: left;
max-width: 100%;
margin-right: 5px;
color: rgb(55, 134, 216);
}.pairsJustified dd {
float: right;
font-size: 10px!important;
text-align: right;
max-width: 100%;
}4*. Ca să vă apară și datele din Custom Profile Fields în userInfoPane, duceți-vă în Members > Custom Profile Fields și în Topic View Format introduceți asta:
<dl class="pairsJustified">
<li class='post_count desc lighter'>
<dt>{title}</dt>
<dd>{content}</dd>
</li>Nu este un tutorial făcut de mine în totalitate, codurile sunt luate chiar după forum. Acesta este doar un tip de userInfoPane, puteți să vi le personalizați și singuri după.
-
#299Reply in Chat & Socialize
Acest tutorial merge doar pentru instalare, nu şi upgrade 
Odată cu IPB 4.0, nu mai puteţi trece de instalare dacă nu introduceţi o cheie de licenţă validă, spre deosebire de seriile anterioare.
. Deschideţi fişierul init.php (folderul principal) şi căutaţi (începând cu linia 498)/**
* Get license key data
*
* @return array|NULL
*/
public static function licenseKey()
{
/* Get the cached value */
$cached = NULL;
if ( isset( IPSDataStore::i()->license_data ) )
{
$cached = IPSDataStore::i()->license_data;/* If it's younger than 21 days, just use that */
if ( $cached['fetched'] > ( time() - 1814400 ) )
{
return $cached['data'];
}
}/* Call the main server */
try
{
$response = IPSHttpUrl::ips( 'license/' . IPSSettings::i()->ipb_reg_number )->request()->get();
if ( $response->httpResponseCode == 404 )
{
return NULL;
}
$response = $response->decodeJson();
}
catch ( Exception $e )
{
/* If the server is offline right now, use the cached value from above */
return $cached;
}
/* Update the license info in the store */
IPSDataStore::i()->license_data = array( 'fetched' => time(), 'data' => $response );/* Return */
return $response;
}
/**
* Check license key
*
* @param string The license key
* @param string The site URL
* @return void
* @throws DomainException
*/
public static function checkLicenseKey( $val, $url )
{
$test = FALSE;
if ( mb_substr( $val, -12 ) === '-TESTINSTALL' )
{
$test = TRUE;
$val = mb_substr( $val, 0, -12 );
}
$urlKey = $test ? 'test_url' : 'url';
try
{
$response = IPSHttpUrl::ips( 'license/' . $val )->setQueryString( $urlKey, $url )->request()->get();
switch ( $response->httpResponseCode )
{
case 200:
$response = json_decode( $response, TRUE );
if ( $response['legacy'] )
{
throw new DomainException( 'license_key_legacy' );
}
/* Previously, URL's were stored as http://domain.com/forums - this check here may throw a "key already in use" error if upgrading or setting up a test install */
if ( rtrim( $response[ $urlKey ], '/' ) !== rtrim( $url, '/' ) )
{
if ( $response[ $urlKey ] )
{
throw new DomainException( $test ? 'license_key_test_active' : 'license_key_active' );
}
else
{
IPSHttpUrl::ips( 'license/' . $val )->request()->post( array(
$urlKey => $url) );
}
}
break;
case 404:
throw new DomainException( 'license_key_not_found' );
default:
throw new DomainException( 'generic_license_error' );
}
}
catch ( IPSHttpRequestException $e )
{
throw new DomainException( sprintf( IPSMember::loggedIn()->language()->get( 'license_server_error' ), $e->getMessage() ) );
}
}
Şi înlocuiţi cu
/**
* Get license key data
*
* @return array|NULL
*/
public static function licenseKey()
{
$response = array(
'key' => '1234', // Cheia de licenta
'url' => 'Forum_ipb.ro', // URL-ul site-ului
//'expires' => '==NEVER==', //Nu-i nevoie
'active' => TRUE, //Licenta activa
'products' => array( //Ce putem folosi?
'forums' => TRUE, //...IP.Board?
'calendar' => TRUE, //...IP.Calendar?
'blog' => TRUE, //...IP.Blogs?
'gallery' => TRUE, //...IP.Gallery?
'downloads' => TRUE, //...IP.Downloads?
'cms' => TRUE, //...IP.Content?
'nexus' => TRUE, //...IP.Nexus?
'spam' => FALSE, //...IPS Spam Service? NO, WE CAN'T!!!
'copyright' => FALSE, //...remove copyright function?
),
'chat_limit' => '0', //How many users can use IP.Chat? ZERO!!!
'support' => 'No', //Can we use Standart Support? NO!!!
);/* If key not saved in DB, we will save it manually */
if ( !IPSSettings::i()->ipb_reg_number ) {
IPSDb::i()->update( 'core_sys_conf_settings', array( 'conf_value' => $response['key'] ), array( 'conf_key=?', 'ipb_reg_number' ) );
IPSSettings::i()->ipb_reg_number = $response['key'];}
/* Update the license info in the store */
unset( IPSDataStore::i()->license_data );
IPSDataStore::i()->license_data = array( //Add information to cache...
'fetched' => time(),
'data' => $response,
);/* Return */
return $response;
}/**
* Check license key
*
* @param string The license key
* @param string The site URL
* @return void
* @throws DomainException
*/
public static function checkLicenseKey( $val, $url )
{
}
Iar cheia de licenţă devine 1234
. Mai modificaţi acolo ce doriţi (url site, etc). -
#300Reply in Chat & Socialize
Pentru început avem nevoie de datele FTP ale domeniului pe care le-am primit atunci când am dat comandă de hosting (un domeniu, un user şi o parolă) şi de programul File Zilla:
Deschidem fişierul public_html. Atenţie: dacă dorim ca forumul nostru să fie gen: domeniulmeu.ro/forum, în fişierul public_html trebuie să facem un nou fişier, numit forum, în care vom uploada fişierele.
Acum deschidem folderul primit de la IPS care conţine fişierele necesare. Intrăm în folderul upload, după care selectăm toate fişierele existente acolo şi le trecem în File Zilla:
Şi vor începe să se uploadeze:
Când se vor urca toate fişierele, va scrie "Status: Directory listing successful" în căsuţa de sus.
Acum, intrăm pe adresa forumului şi vom avea aşa ceva: (în cazul IPB 3.1 sau 3.2):
Dăm click pe next, unde vom avea următoarea căsuţă. Aici, facem click pe căsuţa din dreptul "agree to the license agreement", după care facem click pe "Next":
După dăm click pe "Start Installation", aşteptăm până se instalează şi atât.












