Skocz do zawartości
"Idzie nowe..." - o zmianach i nie tylko ×
Przeniesienie zakupów z IPS Marketplace / Moving bought items from IPS Marketplace ×

Rekomendowane odpowiedzi

Opublikowano

wchodzimy do naszego panelu Unreal Portal:

ACP :a: My Apps ;) Unreal Portal :a: Add Custom Block

usuwamy:

<!-- This is the default custom block template. You can either replace this comment tag with your own content to create a simple custom block or you can remove the entire content and have your own formatting-->

zamiast tego dodajemy:

<?php

$this->registry = ipsRegistry::instance();
$this->DB = $this->registry->DB();

$this->DB->build( array(
                                       'select'        => 'pp.*',
                                       'from'          => array( 'profile_portal' => 'pp' ),
                                       'where'         => 'pp.pp_status <> ""',
                                       'order'         => 'pp.pp_status_update DESC',
                                       'limit'         => array( 0, 10 ),
                                       'add_join'      => array(
                                                                       array(
                                                                                       'select'        => 'm.members_display_name, m.members_seo_name',
                                                                                       'from'          => array( 'members' => 'm' ),
                                                                                       'where'         => 'pp.pp_member_id=m.member_id',
                                                                                       'type'          => 'left'
                                                                               )
                                                               )
                       )       );
$q = $this->DB->execute();

$rows = array();

while( $r = $this->DB->fetch( $q ) )
{
               $r = ipsMember::buildProfilePhoto( $r );
               $rows[] = $r;
       }

echo $this->registry->output->getTemplate( 'boards' )->hookBoardIndexStatusUpdates( $rows );

?>

działa tylko gdy jest zainstalowany hook Status Updates

tut by Steve, tłumaczenie by +matius

  • 10 miesięcy temu...
Opublikowano


Date: Wed, 17 Nov 2010 12:01:43 +0000
Error: 1054 - Unknown column 'pp.pp_status' in 'where clause'
IP Address:  - /
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
mySQL query error: SELECT pp.*,m.members_display_name, m.members_seo_name FROM ibf_profile_portal pp  LEFT JOIN ibf_members m ON ( pp.pp_member_id=m.member_id )   WHERE pp.pp_status <> "" ORDER BY pp.pp_status_update DESC LIMIT 0,10
.--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------.
| File                                                                       | Function                                                                      | Line No.          |
|----------------------------------------------------------------------------+-------------------------------------------------------------------------------+-------------------|
| admin/applications_addon/other/uportal/modules_public/uportal/uportal.php  | [].eval                                                                       | 1171              |
'----------------------------------------------------------------------------+-------------------------------------------------------------------------------+-------------------'
| admin/applications_addon/other/uportal/modules_public/uportal/uportal.php  | [public_uportal_uportal_uportal].customBlock                                  | 191               |
'----------------------------------------------------------------------------+-------------------------------------------------------------------------------+-------------------'
| admin/applications_addon/other/uportal/modules_public/uportal/uportal.php  | [public_uportal_uportal_uportal].getCustomBlocks                              | 64                |
'----------------------------------------------------------------------------+-------------------------------------------------------------------------------+-------------------'
| admin/sources/base/ipsController.php                                       | [public_uportal_uportal_uportal].doExecute                                    | 285               |
'----------------------------------------------------------------------------+-------------------------------------------------------------------------------+-------------------'

  • Manager
Opublikowano

Skoro masz wersję 3.1.3, jak wybrałeś w profilu, to masz błędy w bazie. Przejdź do:

ACP :a: :zaawansowane: Zaawansowane :a: Diagnostyka :a: :a: Baza danych

I powinno Ci znaleźć błędy. Kliknij w link na górze ( nie pamiętam nazwy bo nie mamy tutaj błędów ^_^ ) :a: IP.Board powinien sam poprawić błędne wpisy.

intermedia - profesjonalne rozwiązania Invision Power Board

---

Chcesz uzyskać szybko i sprawnie pomoc? Uzupełnij wersję i adres w profilu.

Opublikowano

Były błędy - naprawiłem, ale nadal ten sam błąd po dodaniu bloku.

Wyciąg z cache:

Date: Wed, 17 Nov 2010 12:52:52 +0000
Error: 1054 - Unknown column 'pp.pp_status' in 'where clause'
IP Address:  - /
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
mySQL query error: SELECT pp.*,m.members_display_name, m.members_seo_name FROM ibf_profile_portal pp  LEFT JOIN ibf_members m ON ( pp.pp_member_id=m.member_id )   WHERE pp.pp_status <> "" ORDER BY pp.pp_status_update DESC LIMIT 0,10
.--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------.
| File                                                                       | Function                                                                      | Line No.          |
|----------------------------------------------------------------------------+-------------------------------------------------------------------------------+-------------------|
| admin/applications_addon/other/uportal/modules_public/uportal/uportal.php  | [].eval                                                                       | 1171              |
'----------------------------------------------------------------------------+-------------------------------------------------------------------------------+-------------------'
| admin/applications_addon/other/uportal/modules_public/uportal/uportal.php  | [public_uportal_uportal_uportal].customBlock                                  | 191               |
'----------------------------------------------------------------------------+-------------------------------------------------------------------------------+-------------------'
| admin/applications_addon/other/uportal/modules_public/uportal/uportal.php  | [public_uportal_uportal_uportal].getCustomBlocks                              | 64                |
'----------------------------------------------------------------------------+-------------------------------------------------------------------------------+-------------------'
| admin/sources/base/ipsController.php                                       | [public_uportal_uportal_uportal].doExecute                                    | 285               |
'----------------------------------------------------------------------------+-------------------------------------------------------------------------------+-------------------'

Opublikowano (edytowane)

Wygląda na to, że w # Struktura ibf_profile_portal nie ma takowej. Jak to najlepiej naprawić?

Edytowane przez Bartman
Opublikowano (edytowane)

Po dodaniu 2 tabel: pp_status i pp_status_update do ibf_profile_portal

Takowy błąd wychodzi:

Fatal error: Uncaught exception 'Exception' with message 'memberStatus is not an object' in 
/home2/***/public_html/***/admin/sources/base/ipsRegistry.php:967 
Stack trace: #0 /home2/***public_html/***l/cache/skin_cache/cacheid_10/skin_boards.php(454): ipsRegistry::getClass('memberStatus') #1 /home2/***/public_html/***/admin/applications_addon/other/uportal/modules_public/uportal/uportal.php(1171) : eval()'d code(31): skin_boards_10->hookBoardIndexStatusUpdates(Array) #2 /home2/*** in 
/home2****/public_html/***/admin/sources/base/ipsRegistry.php on line 967

Może złe parametry tym tabelą nadaje?

Może prościej byłoby reinstalować UPortal, tylko czy wtedy nie skasuj wszyskich danych i ustawień z niego?

Edytowane przez Bartman
  • Manager
Opublikowano

Nie nie, nie usuwaj portalu, bo właśnie stracisz wszystkie dane. Poza tym to błąd nie z portalem, z tym kodem. Hm..

Pokaż zawartość tego bitu:

$this->registry->output->getTemplate( 'boards' )->hookBoardIndexStatusUpdates( $rows );

intermedia - profesjonalne rozwiązania Invision Power Board

---

Chcesz uzyskać szybko i sprawnie pomoc? Uzupełnij wersję i adres w profilu.

Opublikowano

Głupio zapytam: jak to sprawdzić?

Po wstawieniu do bloku Uportalu wychodzi:

Fatal error: Uncaught exception 'Exception' with message 'memberStatus is not an object' in /home2/***/public_html/***/admin/sources/base/ipsRegistry.php:967 
Stack trace: #0 /home2/***/public_html/***/cache/skin_cache/cacheid_10/skin_boards.php(454): ipsRegistry::getClass('memberStatus') #1 /home2/***/public_html/***/admin/applications_addon/other/uportal
/modules_public/uportal/uportal.php(1171) : eval()'d code(2): skin_boards_10->hookBoardIndexStatusUpdates(NULL) #2 /home2/** in /home2/***/public_html/***/admin/sources/base/ipsRegistry.php on line 967

Opublikowano
<script type='text/javascript' src='{$this->settings['public_dir']}js/ips.status.js'></script>
{parse striping="recent_status" classes="row1,row2"}
<div class='general_box clearfix' id='statusHook'>
<h3><img src='{$this->settings['img_url']}/user_comment.png' alt='' /> {$this->lang->words['recent_status_updates']}</h3>
<div class='_sbcollapsable'>
	<if test="canCreate:|:$this->registry->getClass('memberStatus')->canCreate( $this->memberData )">
		<div class='status_update row2 altrow'>
			<input type='text' id='statusUpdate' style='width:80%'> <input type='submit' class='input_submit' id='statusSubmit' value='{$this->lang->words['_rarr']}' />
			<if test="update:|:(IPSLib::twitter_enabled() OR IPSLib::fbc_enabled() ) AND ( $this->memberData['fb_uid'] OR $this->memberData['twitter_id'] )">
			<p class='desc' style='padding-top:5px;'>{$this->lang->words['st_update']}
				<if test="updateTwitter:|:IPSLib::twitter_enabled() AND ( $this->memberData['twitter_id'] )"><input type='checkbox' id='su_Twitter' value='1' name='su_Twitter' /> <img src="{$this->settings['public_dir']}style_status/twitter.png" style='vertical-align:top' alt='' /></if>
				<if test="updateFacebook:|:IPSLib::fbc_enabled() AND ( $this->memberData['fb_uid'] )"> <input type='checkbox' id='su_Facebook' value='1' name='su_Facebook' /> <img src="{$this->settings['public_dir']}style_status/facebook.png" style='vertical-align:top' alt='' /></if>
			</p>
		</if>
		</div>
	</if>
	<div id="status_wrapper">
		<if test="hasUpdates:|:count( $updates )">
			{parse template="statusUpdates" group="profile" params="$updates, 1, 1"}
		<else />
			<div class='status_mini_wrap row2 desc'><em>{$this->lang->words['status_updates_none']}</em></div>
		</if>
		<div class="status_main_content" style='text-align:right;padding:4px'>
			<a class='desc' href='{parse url="app=members&module=profile&section=status&type=all" seotitle="true" template="members_status_all" base="public"}'>{$this->lang->words['viewallupdates']} {$this->lang->words['_rarr']}</a>
		</div>
	</div>
</div>
</div>

  • Manager
Opublikowano

Spróbuj:

<?php

$this->registry = ipsRegistry::instance();
$this->DB = $this->registry->DB();

/* Load status class */
if ( ! $this->registry->isClassLoaded( 'memberStatus' ) )
{
$classToLoad = IPSLib::loadLibrary( IPS_ROOT_PATH . 'sources/classes/member/status.php', 'memberStatus' );
$this->registry->setClass( 'memberStatus', new $classToLoad( ipsRegistry::instance() ) );
}

$this->DB->build( array(
                                       'select'        => 'pp.*',
                                       'from'          => array( 'profile_portal' => 'pp' ),
                                       'where'         => 'pp.pp_status <> ""',
                                       'order'         => 'pp.pp_status_update DESC',
                                       'limit'         => array( 0, 10 ),
                                       'add_join'      => array(
                                                                       array(
                                                                                       'select'        => 'm.members_display_name, m.members_seo_name',
                                                                                       'from'          => array( 'members' => 'm' ),
                                                                                       'where'         => 'pp.pp_member_id=m.member_id',
                                                                                       'type'          => 'left'
                                                                               )
                                                               )
                       )       );
$q = $this->DB->execute();

$rows = array();

while( $r = $this->DB->fetch( $q ) )
{
               $r = ipsMember::buildProfilePhoto( $r );
               $rows[] = $r;
       }

echo $this->registry->output->getTemplate( 'boards' )->hookBoardIndexStatusUpdates( $rows );

?>

intermedia - profesjonalne rozwiązania Invision Power Board

---

Chcesz uzyskać szybko i sprawnie pomoc? Uzupełnij wersję i adres w profilu.

Opublikowano

Rozumiem, chodzi o to, że nie wyświetlają się w bloku statusy użytkowników - tak jak ma to miejsce w hooku na forum - jest tylko pole do ustawienia statusu i link do obejrzenia wszystkich statusów.

  • Manager
Opublikowano

Ok, no to autor tematu musi znaleźć autora kodu. Nie jestem w stanie zająć się wszystkimi takimi sprawami - naprawdę to nie rozwiązuje się w parę sekund.

Jeśli miałbym się temu przyjrzeć z bliska ( czyt. zająć empirycznie ) to potrzeba czasu, a z tym u mnie krucho.

intermedia - profesjonalne rozwiązania Invision Power Board

---

Chcesz uzyskać szybko i sprawnie pomoc? Uzupełnij wersję i adres w profilu.

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Umieściliśmy na Twoim urządzeniu pliki cookie, aby pomóc Ci usprawnić przeglądanie strony. Możesz dostosować ustawienia plików cookie, w przeciwnym wypadku zakładamy, że wyrażasz na to zgodę.