Problem mit Album-MOD + Sub-Categories

Du hast Probleme beim Einbau oder bei der Benutzung eines Mods? In diesem Forum bist du richtig.
Forumsregeln
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.0, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Antworten
Benutzeravatar
Quiz
Mitglied
Beiträge: 38
Registriert: 30.03.2004 16:47
Wohnort: Fribourg (Schweiz)
Kontaktdaten:

Problem mit Album-MOD + Sub-Categories

Beitrag von Quiz »

Salut Forum,

Ich habe mir den Photo Album Mod (plus den Hack für die Sub-Foren) eingebaut und er scheint eigentlich auch zu funktionieren...

Folgende Probleme scheinen mir jedoch nicht normal zu sein und ich finde den Hund nirgends begraben!

1. [EDIT: Erledigt ! ]Die Photos werden jedesmal einfach in einem neuen Fenster angezeigt!
Ich denke, dass sollte so sein: http://web323.zeta.ibone.ch/forum/album ... pic_id=245
Wenn Ihr aber in der Galerie auf ein Photo klickt, sieht das Ergebins ganz anderst aus. Link zur Galerie: http://web323.zeta.ibone.ch/forum/album.php

2. [EDIT: Erledigt ! ] Wenn ich im Admin-Menu für das Album auf "Befugnisse" klicke, kann ich eine Kategorie auswählen. Danach erscheint die Admin-Seite für die entsprechende Kategorie. Nur kann ich nichts anwählen (sprich die Drop-Down-Menus werden gar nicht angezeigt...).

Dies führt dazu, dass ich niemanden zum Moderator für das Photoalbum erklären kann ;-(

3. Bilder die in Sub-Kategorien geladen werden werden auf der Übersicht des Albums NICHT unter den neusten Bildern aufgeführt und auch nicht in der letzten Spalte der Übersicht mit Text erwähnt...

Ich hoffe es kann mir jemand weiterhelfen!


mfg
Quiz

PS: Falls Ihr irgendwelche weitere Code-Auszüge sehen müsstet, meldet Euch!
Zuletzt geändert von Quiz am 27.04.2004 18:19, insgesamt 2-mal geändert.
Benutzeravatar
vb-biker
Mitglied
Beiträge: 260
Registriert: 04.03.2004 14:13
Wohnort: Kölle
Kontaktdaten:

Beitrag von vb-biker »

Zu 1:
ACP -> Photo-Album -> Konfig -> View full pic as a popup -> nein anklicken.

Zu 3:
Das ist halt bei dem Sub-Category MOD so. Würde mich aber auch interessieren, wie man die neuesten Bilder auch auf dem Index anzeigen kann.
Benutzeravatar
Quiz
Mitglied
Beiträge: 38
Registriert: 30.03.2004 16:47
Wohnort: Fribourg (Schweiz)
Kontaktdaten:

Beitrag von Quiz »

Salut vb_biker,

Herzlichen Dank für Deinen Tipp! Eigentlich dumm, dass ich das ned selbst gemerkt habe...

Mal schauen, ev. finden wir für unser mitlerweilen gemeinsames Problem ja auch noch ne Lösung ;-)

mfg
Quiz
Benutzeravatar
vb-biker
Mitglied
Beiträge: 260
Registriert: 04.03.2004 14:13
Wohnort: Kölle
Kontaktdaten:

Beitrag von vb-biker »

@ Quiz
Kein Prob, gern geschehen, manchmal sieht man halt den Wald vor lauter Bäumen nicht. :wink:

Zu 2: Habe gerade mal nachgesehen...die Befugnisse hängen mit den Gruppen zusammen, glaube ich. Ergo: keine Gruppen -> keine Befugnisse einstellen.
Benutzeravatar
Quiz
Mitglied
Beiträge: 38
Registriert: 30.03.2004 16:47
Wohnort: Fribourg (Schweiz)
Kontaktdaten:

Beitrag von Quiz »

Salut Biker zum II.

Danke für den Hinweis! Du hast bereits 2 meiner 3 Probleme gelöst! Bist ein Held!

Ich hab mal den Titel des Threads geändert und die Fragestellung präzisiert...

mfg
Quiz
Benutzeravatar
Quiz
Mitglied
Beiträge: 38
Registriert: 30.03.2004 16:47
Wohnort: Fribourg (Schweiz)
Kontaktdaten:

Beitrag von Quiz »

*hochzerr* und nochmals ganz lieb fragen ob mir jemand helfen kann...

mfg
Quiz

PS: Hier mal noch der Quellencode von album.php

Code: Alles auswählen

//
// Start session management
//
$userdata = session_pagestart($user_ip, PAGE_ALBUM);
init_userprefs($userdata);
//
// End session management
//

//
// Get general album information
//
include($album_root_path . 'album_common.'.$phpEx);


/*
+----------------------------------------------------------
| Build Categories Index
+----------------------------------------------------------
*/

 $cat_id = $_POST['c'] ? $_POST['c'] : ( $_GET['c'] ? $_GET['c'] : 0 );
 $cat_where = "cat_parent = $cat_id";
 
 if ($cat_id != 0)
 {
        $sql = "SELECT cat_id,cat_title
                FROM ". ALBUM_CAT_TABLE ."
                WHERE cat_id = $cat_id";
        if ( $result = $db->sql_query($sql) )
        {
                $row = $db->sql_fetchrow($result);
 
                $template->assign_vars(array(
                        'SUBCAT_NAV' => "-> <a class=\"nav\" href=\"album.$phpEx?c=" . $row['cat_id'] . "\">" . $row['cat_title'] . "</a>",
                        )
                );
        }
 }

 $sql = "SELECT c.*, COUNT(p.pic_id) AS count
                FROM ". ALBUM_CAT_TABLE ." AS c
                        LEFT JOIN ". ALBUM_TABLE ." AS p ON c.cat_id = p.pic_cat_id
                WHERE $cat_where
		
		
		
		GROUP BY cat_id
		ORDER BY cat_order ASC";
if( !($result = $db->sql_query($sql)) )
{
	message_die(GENERAL_ERROR, 'Could not query categories list', '', __LINE__, __FILE__, $sql);
}

$catrows = array();

while( $row = $db->sql_fetchrow($result) )
{
	$album_user_access = album_user_access($row['cat_id'], $row, 1, 0, 0, 0, 0, 0); // VIEW
	if ($album_user_access['view'] == 1)
	{
		$catrows[] = $row;
	}
}

$allowed_cat = ''; // For Recent Public Pics below

//
// $catrows now stores all categories which this user can view. Dump them out!
//
for ($i = 0; $i < count($catrows); $i++)
{
	// --------------------------------
	// Build allowed category-list (for recent pics after here)
	// --------------------------------

	$allowed_cat .= ($allowed_cat == '') ? $catrows[$i]['cat_id'] : ',' . $catrows[$i]['cat_id'];


	// --------------------------------
	// Build moderators list
	// --------------------------------

	$l_moderators = '';
	$moderators_list = '';

	$grouprows= array();

	if( $catrows[$i]['cat_moderator_groups'] != '')
	{
		// We have usergroup_ID, now we need usergroup name
		$sql = "SELECT group_id, group_name
				FROM " . GROUPS_TABLE . "
				WHERE group_single_user <> 1
					AND group_type <> ". GROUP_HIDDEN ."
					AND group_id IN (". $catrows[$i]['cat_moderator_groups'] .")
				ORDER BY group_name ASC";
		if ( !$result = $db->sql_query($sql) )
		{
			message_die(GENERAL_ERROR, 'Could not obtain usergroups data', '', __LINE__, __FILE__, $sql);
		}

		while( $row = $db->sql_fetchrow($result) )
		{
			$grouprows[] = $row;
		}
	}

	if( count($grouprows) > 0 )
	{
		$l_moderators = $lang['Moderators'];

		for ($j = 0; $j < count($grouprows); $j++)
		{
			$group_link = '<a href="'. append_sid("groupcp.$phpEx?". POST_GROUPS_URL .'='. $grouprows[$j]['group_id']) .'">'. $grouprows[$j]['group_name'] .'</a>';

			$moderators_list .= ($moderators_list == '') ? $group_link : ', ' . $group_link;
		}
	}


	// ------------------------------------------
	// Get Last Pic of this Category
	// ------------------------------------------

        if ($catrows[$i]['cat_type'] == 0)
        {

	if ($catrows[$i]['count'] == 0)
	{
		//
		// Oh, this category is empty
		//
		$last_pic_info = $lang['No_Pics'];
		$u_last_pic = '';
		$last_pic_title = '';
	}
	else
	{
		// ----------------------------
		// Check Pic Approval
		// ----------------------------

		if(($catrows[$i]['cat_approval'] == ALBUM_ADMIN) or ($catrows[$i]['cat_approval'] == ALBUM_MOD))
		{
			$pic_approval_sql = 'AND p.pic_approval = 1'; // Pic Approval ON
		}
		else
		{
			$pic_approval_sql = ''; // Pic Approval OFF
		}


		// ----------------------------
		// OK, we may do a query now...
		// ----------------------------

		$sql = "SELECT p.pic_id, p.pic_title, p.pic_user_id, p.pic_username, p.pic_time, p.pic_cat_id, u.user_id, u.username
				FROM ". ALBUM_TABLE ." AS p	LEFT JOIN ". USERS_TABLE ." AS u ON p.pic_user_id = u.user_id
				WHERE p.pic_cat_id = '". $catrows[$i]['cat_id'] ."' $pic_approval_sql
				ORDER BY p.pic_time DESC
				LIMIT 1";
		if ( !$result = $db->sql_query($sql) )
		{
			message_die(GENERAL_ERROR, 'Could not get last pic information', '', __LINE__, __FILE__, $sql);
		}
		$lastrow = $db->sql_fetchrow($result);


		// ----------------------------
		// Write the Date
		// ----------------------------

		$last_pic_info = create_date($board_config['default_dateformat'], $lastrow['pic_time'], $board_config['board_timezone']);

		$last_pic_info .= '<br />';


		// ----------------------------
		// Write username of last poster
		// ----------------------------

		if( ($lastrow['user_id'] == ALBUM_GUEST) or ($lastrow['username'] == '') )
		{
			$last_pic_info .= ($lastrow['pic_username'] == '') ? $lang['Guest'] : $lastrow['pic_username'];
		}
		else
		{
			$last_pic_info .= $lang['Poster'] .': <a href="'. append_sid("profile.$phpEx?mode=viewprofile&". POST_USERS_URL .'='. $lastrow['user_id']) .'">'. $lastrow['username'] .'</a>';
		}


		// ----------------------------
		// Write the last pic's title.
		// Truncate it if it's too long
		// ----------------------------

		if( !isset($album_config['last_pic_title_length']) )
		{
			$album_config['last_pic_title_length'] = 25;
		}

		$lastrow['pic_title'] = $lastrow['pic_title'];

		if (strlen($lastrow['pic_title']) > $album_config['last_pic_title_length'])
		{
			$lastrow['pic_title'] = substr($lastrow['pic_title'], 0, $album_config['last_pic_title_length']) . '...';
		}

		$last_pic_info .= '<br />'. $lang['Pic_Title'] .': <a href="';

		$last_pic_info .= ($album_config['fullpic_popup']) ? append_sid("album_pic.$phpEx?pic_id=". $lastrow['pic_id']) .'" target="_blank">' : append_sid("album_page.$phpEx?pic_id=". $lastrow['pic_id']) .'">' ;

		$last_pic_info .= $lastrow['pic_title'] .'</a>';
	}
	// END of Last Pic

  }
        else
        {
                // this is a parent category
                $sc_sql = "SELECT *
                        FROM ". ALBUM_CAT_TABLE ."
                        WHERE cat_parent = " . $catrows[$i]['cat_id'] . "
                        GROUP BY cat_id
                        ORDER BY cat_order ASC";
 
                if ( !($sc_result = $db->sql_query($sc_sql)) )
                {
                        message_die(GENERAL_ERROR, 'Could not query sub categories', '', __LINE__, __FILE__, $sql);
                }
 
                $sql_count = "SELECT count(cat_id) as count
                              FROM ". ALBUM_CAT_TABLE ."
                              WHERE cat_parent = " . $catrows[$i]['cat_id'];
                if ( ($result_count = $db->sql_query($sql_count)) )
                {
                        $subcat_count = $db->sql_fetchrow($result_count);
                        $subcat_count = $subcat_count['count'] . " Fotoalben";
                }
                else
                {
                        $subcat_count = "";
                }
 
                $subcats = "<span class=\"gensmall\"><b>Fotoalben:</b><br />";
                 while ( $subcatrow = $db->sql_fetchrow($sc_result) )
                 {
                        $subcats .= " - <a class=\"gensmall\" href=\"" . append_sid("album_cat.$phpEx?cat_id=" . $subcatrow['cat_id']) . "\">" . $subcatrow['cat_title'] . "</a><br />";
                }
                $subcats .= "</span><br />";
 
                $template->assign_block_vars('catrow', array(
                        'U_VIEW_CAT' => append_sid("album.php?c=" . $catrows[$i]['cat_id']),
                        'CAT_TITLE' => $catrows[$i]['cat_title'],
                        'CAT_DESC' => $catrows[$i]['cat_desc'],
                        'PICS' => $subcat_count,
                        'SUBCATS' => $subcats,
                        )
                );
        }

	// ------------------------------------------
	// Parse to template the info of the current Category
	// ------------------------------------------

        if ($catrows[$i]['cat_type'] == 0)
        {

	$template->assign_block_vars('catrow', array(
		'U_VIEW_CAT' => append_sid("album_cat.$phpEx?cat_id=". $catrows[$i]['cat_id']),
		'CAT_TITLE' => $catrows[$i]['cat_title'],
		'CAT_DESC' => $catrows[$i]['cat_desc'],
		'L_MODERATORS' => $l_moderators,
		'MODERATORS' => $moderators_list,
		'PICS' => $catrows[$i]['count'],
		'LAST_PIC_INFO' => $last_pic_info)
	);
	}
}
// END of Categories Index


/*
+----------------------------------------------------------
| Recent Public Pics
+----------------------------------------------------------
*/

if ($allowed_cat != '')
{
	$sql = "SELECT p.pic_id, p.pic_title, p.pic_desc, p.pic_user_id, p.pic_user_ip, p.pic_username, p.pic_time, p.pic_cat_id, p.pic_view_count, u.user_id, u.username, r.rate_pic_id, AVG(r.rate_point) AS rating, COUNT(DISTINCT c.comment_id) AS comments
			FROM ". ALBUM_TABLE ." AS p
				LEFT JOIN ". USERS_TABLE ." AS u ON p.pic_user_id = u.user_id
				LEFT JOIN ". ALBUM_CAT_TABLE ." AS ct ON p.pic_cat_id = ct.cat_id
				LEFT JOIN ". ALBUM_RATE_TABLE ." AS r ON p.pic_id = r.rate_pic_id
				LEFT JOIN ". ALBUM_COMMENT_TABLE ." AS c ON p.pic_id = c.comment_pic_id
			WHERE p.pic_cat_id IN ($allowed_cat) AND ( p.pic_approval = 1 OR ct.cat_approval = 0 )
			GROUP BY p.pic_id
			ORDER BY pic_time DESC
			LIMIT ". $album_config['cols_per_page'];
	if( !($result = $db->sql_query($sql)) )
	{
		message_die(GENERAL_ERROR, 'Could not query recent pics information', '', __LINE__, __FILE__, $sql);
	}

	$recentrow = array();

	while( $row = $db->sql_fetchrow($result) )
	{
		$recentrow[] = $row;
	}


	if (count($recentrow) > 0)
	{
		for ($i = 0; $i < count($recentrow); $i += $album_config['cols_per_page'])
		{
			$template->assign_block_vars('recent_pics', array());

			for ($j = $i; $j < ($i + $album_config['cols_per_page']); $j++)
			{
				if( $j >= count($recentrow) )
				{
					break;
				}

				if(!$recentrow[$j]['rating'])
				{
					$recentrow[$j]['rating'] = $lang['Not_rated'];
				}
				else
				{
					$recentrow[$j]['rating'] = round($recentrow[$j]['rating'], 2);
				}

				$template->assign_block_vars('recent_pics.recent_col', array(
					'U_PIC' => ($album_config['fullpic_popup']) ? append_sid("album_pic.$phpEx?pic_id=". $recentrow[$j]['pic_id']) : append_sid("album_page.$phpEx?pic_id=". $recentrow[$j]['pic_id']),
					'THUMBNAIL' => append_sid("album_thumbnail.$phpEx?pic_id=". $recentrow[$j]['pic_id']),
					'DESC' => $recentrow[$j]['pic_desc']
					)
				);

				if( ($recentrow[$j]['user_id'] == ALBUM_GUEST) or ($recentrow[$j]['username'] == '') )
				{
					$recent_poster = ($recentrow[$j]['pic_username'] == '') ? $lang['Guest'] : $recentrow[$j]['pic_username'];
				}
				else
				{
					$recent_poster = '<a href="'. append_sid("profile.$phpEx?mode=viewprofile&". POST_USERS_URL .'='. $recentrow[$j]['user_id']) .'">'. $recentrow[$j]['username'] .'</a>';
				}

				$template->assign_block_vars('recent_pics.recent_detail', array(
					'TITLE' => $recentrow[$j]['pic_title'],
					'POSTER' => $recent_poster,
					'TIME' => create_date($board_config['default_dateformat'], $recentrow[$j]['pic_time'], $board_config['board_timezone']),

					'VIEW' => $recentrow[$j]['pic_view_count'],

					'RATING' => ($album_config['rate'] == 1) ? ( '<a href="'. append_sid("album_rate.$phpEx?pic_id=". $recentrow[$j]['pic_id']) . '">' . $lang['Rating'] . '</a>: ' . $recentrow[$j]['rating'] . '<br />') : '',

					'COMMENTS' => ($album_config['comment'] == 1) ? ( '<a href="'. append_sid("album_comment.$phpEx?pic_id=". $recentrow[$j]['pic_id']) . '">' . $lang['Comments'] . '</a>: ' . $recentrow[$j]['comments'] . '<br />') : '',

					'IP' => ($userdata['user_level'] == ADMIN) ? $lang['IP_Address'] . ': <a href="http://www.nic.com/cgi-bin/whois.cgi?query=' . decode_ip($recentrow[$j]['pic_user_ip']) . '" target="_blank">' . decode_ip($recentrow[$j]['pic_user_ip']) .'</a><br />' : ''
					)
				);
			}
		}
	}
	else
	{
		//
		// No Pics Found
		//
		$template->assign_block_vars('no_pics', array());
	}
}
else
{
	//
	// No Cats Found
	//
	$template->assign_block_vars('no_pics', array());
}


/*
+----------------------------------------------------------
| Start output the page
+----------------------------------------------------------
*/

$page_title = $lang['Album'];
include($phpbb_root_path . 'includes/page_header.'.$phpEx);

$template->set_filenames(array(
	'body' => 'album_index_body.tpl')
);

$template->assign_vars(array(
	'L_CATEGORY' => $lang['Category'],
	'L_PICS' => $lang['Pics'],
	'L_LAST_PIC' => $lang['Last_Pic'],

	'U_YOUR_PERSONAL_GALLERY' => append_sid("album_personal.$phpEx?user_id=". $userdata['user_id']),
	'L_YOUR_PERSONAL_GALLERY' => $lang['Your_Personal_Gallery'],

	'U_USERS_PERSONAL_GALLERIES' => append_sid("album_personal_index.$phpEx"),
	'L_USERS_PERSONAL_GALLERIES' => $lang['Users_Personal_Galleries'],

	'S_COLS' => $album_config['cols_per_page'],
	'S_COL_WIDTH' => (100/$album_config['cols_per_page']) . '%',
	'TARGET_BLANK' => ($album_config['fullpic_popup']) ? 'target="_blank"' : '',
	'L_RECENT_PUBLIC_PICS' => $lang['Recent_Public_Pics'],
	'L_NO_PICS' => $lang['No_Pics'],
	'L_PIC_TITLE' => $lang['Pic_Title'],
	'L_VIEW' => $lang['View'],
	'L_POSTER' => $lang['Poster'],
	'L_POSTED' => $lang['Posted'],
	'L_PUBLIC_CATS' => $lang['Public_Categories'])
);

//
// Generate the page
//
$template->pparse('body');

include($phpbb_root_path . 'includes/page_tail.'.$phpEx);


// +------------------------------------------------------+
// |  Powered by Photo Album 2.x.x (c) 2002-2003 Smartor  |
// +------------------------------------------------------+

?>
Benutzeravatar
Quiz
Mitglied
Beiträge: 38
Registriert: 30.03.2004 16:47
Wohnort: Fribourg (Schweiz)
Kontaktdaten:

Beitrag von Quiz »

:(
naptune
Mitglied
Beiträge: 141
Registriert: 28.02.2005 08:21
Wohnort: Regensburg
Kontaktdaten:

Beitrag von naptune »

Ich such schon seit Wochen nach einer Lösung dafür.
Bisher ohne Erfolg
Ist scheinbar gar nicht so einfach :(
Antworten

Zurück zu „phpBB 2.0: Mod Support“