FluxBB.fr

Le site des utilisateurs francophones de FluxBB.

Vous n'êtes pas identifié(e).

#1 10-03-2012 13:52:34

a-snowboard
Membre
Inscription : 20-06-2011
Messages : 440
Site Web

Plugile 2.0(+ suivile et autre)

Bon suite à l’installation du mod plugile a la base adapté sur les forums 1.2

j'ouvre ce topic pour récapituler les modifications a faire pour que ça marche sur la 1.4.x

Attention, je ne dit pas que la cohésion est parfait, mais certaines fonctionnalités sont intéressantes dans ce mod pour qu'on s'y penche (en attendant fluxbb 2.0 smile )

En attendant la mod est téléchargeable ici :
http://fluxbb.fr/mods/mods.php?mid=75

Wan a très généreusement refait le readme : (que je n'ai pas testé car j'ai utilisé une autre solution et le réadme a été fait après)

##
##
##          Titre mod :  Plugile
##
##        Version mod :  2.0
##         Pour PunBB :  1.2.x et FluxBB 1.4.x avec les lignes modifiées
##               Date :  14/06/2008
##           Date 1.2 :  28/03/2007
##           Date 1.1 :  17/03/2007
##           Date 1.0 :  02/03/2007
##
##             Auteur :  BN [http://la-bnbox.info] et Pandark [http://pandark.free.fr]
##
##        Description :  Cette mod permet d'ajouter un système de plugin
##                       à la page profile. Cela fonctionne comme les
##                       plugins réservés aux administrateurs et modérateurs.
##
##  Fichiers affectés :  include/functions.php
##                       profile.php
##
##     Affecte la BDD :  Oui
##
##
##         DISCLAIMER :  Veuillez noter que ces mods ne sont pas
##                       officiellement supportés par PunBB. L'installation
##                       de ces modifications est à vos risques et périls.
##                       N'oubliez pas de sauvegarder la base de données et
##                       les fichiers affectés avant de procéder à
##                       l'installation de cette modification.
##

#
#---------[ 0. A NOTER ]-------------------------------------
#

Pour mettre à jour depuis la version 1.2 : utiliser _le plugin AP_plugile.php que vous avez déjà_ pour "désinstaller" la mod (supprimer des trucs de la base de donnée) AVANT de placer le nouveau AP_plugile.php que vous utiliserez pour réinstaller Plugile.
Puis vous devrez uploader les nouveaux lang/***/plugile.php (où *** est la langue) et plugins/AP_Plugile.php à la place des anciens
plugiles/UP_Exemple.php et plugiles/UPP_Exemple.php sont des exemples.

#
#---------[ 1. TELECHARGER LES FICHIERS ]-------------------------------------
#

lang/LANG/plugile.php dans lang/LANG
upload/plugins/AP_Plugile.php dans /plugins/
upload/plugiles/UP_Exemple.php dans /plugiles/
upload/plugiles/UPP_Exemple.php dans /plugiles/ 
(Les 2 derniers fichiers sont des exemples, supprimez-le ensuite)

#
#---------[ 2. OUVRIR ]-------------------------------------------------------
#

include/functions.php

#
#---------[ 3. TROUVER ]-------------------------------------------------------
#

//
// Display the profile navigation menu
//
function generate_profile_menu($page = '')
{
	global $lang_profile, $pun_config, $pun_user, $id;

?>
<div id="profile" class="block2col">
	<div class="blockmenu">
		<h2><span><?php echo $lang_profile['Profile menu'] ?></span></h2>
		<div class="box">
			<div class="inbox">
				<ul>
					<li<?php if ($page == 'essentials') echo ' class="isactive"'; ?>><a href="profile.php?section=essentials&amp;id=<?php echo $id ?>"><?php echo $lang_profile['Section essentials'] ?></a></li>
					<li<?php if ($page == 'personal') echo ' class="isactive"'; ?>><a href="profile.php?section=personal&amp;id=<?php echo $id ?>"><?php echo $lang_profile['Section personal'] ?></a></li>
					<li<?php if ($page == 'messaging') echo ' class="isactive"'; ?>><a href="profile.php?section=messaging&amp;id=<?php echo $id ?>"><?php echo $lang_profile['Section messaging'] ?></a></li>
					<li<?php if ($page == 'personality') echo ' class="isactive"'; ?>><a href="profile.php?section=personality&amp;id=<?php echo $id ?>"><?php echo $lang_profile['Section personality'] ?></a></li>
					<li<?php if ($page == 'display') echo ' class="isactive"'; ?>><a href="profile.php?section=display&amp;id=<?php echo $id ?>"><?php echo $lang_profile['Section display'] ?></a></li>
					<li<?php if ($page == 'privacy') echo ' class="isactive"'; ?>><a href="profile.php?section=privacy&amp;id=<?php echo $id ?>"><?php echo $lang_profile['Section privacy'] ?></a></li>
<?php if ($pun_user['g_id'] == PUN_ADMIN || ($pun_user['g_id'] == PUN_MOD && $pun_config['p_mod_ban_users'] == '1')): ?>					<li<?php if ($page == 'admin') echo ' class="isactive"'; ?>><a href="profile.php?section=admin&amp;id=<?php echo $id ?>"><?php echo $lang_profile['Section admin'] ?></a></li>
<?php endif; ?>				</ul>
			</div>
		</div>
	</div>
<?php

}

#
#---------[ 4. DEDANS, TROUVER ]-----------------------------------------------------
#

<?php endif; ?>				</ul>
			</div>
		</div>
	</div>
<?php

}

#
#---------[ 5. REMPLACER PAR ]-----------------------------------------
#

<?php endif; ?>
					<?php
					// See if there are any plugiles
					$plugiles = array();
					$d = dir(PUN_ROOT.'plugiles');
					while (($entry = $d->read()) !== false)
					{
						$prefix = substr($entry, 0, strpos($entry, '_'));
						$suffix = substr($entry, strlen($entry) - 4);

						// UP <=> User Plugile (visible par tous) - UPP <=> User Private Plugile (visible par le membre et les administrateurs)
						if ($suffix == '.php' && ($prefix == 'UP' || $prefix == 'UPP'))
							$plugiles[] = array(substr(substr($entry, strpos($entry, '_') + 1), 0, -4), $entry);
					}
					$d->close();

					// Did we find any plugiles?
					if (!empty($plugiles))
					{
						if($pun_config['o_plugile_menu'] == '1')
						{
										?>
									</ul>
								</div>
							</div>
							

							<h2><span><?php echo $pun_config['o_plugile_menu_name'] ?></span></h2>
							<div class="box">
								<div class="inbox">
									<ul>
										<?php
						}
					while (list(, $cur_plugile) = @each($plugiles))
						echo "\t\t\t\t\t".'<li'.(($page == $cur_plugile[1]) ? ' class="isactive"' : '').'><a href="profile.php?plugin='.$cur_plugile[1].'&amp;id='.$id.'">'.str_replace('_', ' ', $cur_plugile[0]).'</a></li>'."\n";
					?>
				</ul>
			</div>
		</div>
	</div>
<?php

	}
}

#
#---------[ 6. OUVRIR ]-------------------------------------------------------
#

profile.php


#
#---------[ 7. TROUVER ]-----------------------------------
#

			<div class="inform">
				<fieldset>
				<legend><?php echo $lang_profile['User activity'] ?></legend>
					<div class="infldset">
						<dl>
<?php if ($posts_field != ''): ?>							<dt><?php echo $lang_common['Posts'] ?>: </dt>
							<dd><?php echo $posts_field ?></dd>
<?php endif; ?>							<dt><?php echo $lang_common['Last post'] ?>: </dt>
							<dd><?php echo $last_post ?></dd>
							<dt><?php echo $lang_common['Registered'] ?>: </dt>
							<dd><?php echo format_time($user['registered'], true) ?></dd>
						</dl>
						<div class="clearer"></div>
					</div>
				</fieldset>
			</div>

#
#---------[ 8. APRES, AJOUTER ]------------------------------------------
#

			<?php
			// See if there are any plugiles
			$plugiles = array();
			$d = dir(PUN_ROOT.'plugiles');
			while (($entry = $d->read()) !== false)
			{
				$prefix = substr($entry, 0, strpos($entry, '_'));
				$suffix = substr($entry, strlen($entry) - 4);

				if ($suffix == '.php' && $prefix == 'UP')
					$plugiles[] = array(substr(substr($entry, strpos($entry, '_') + 1), 0, -4), $entry);
			}
			$d->close();

			// Did we find any plugiles?
			if (!empty($plugiles))
			{
				while (list(, $cur_plugile) = @each($plugiles))
				{
					// Make sure the file actually exists
					if (!file_exists(PUN_ROOT.'plugiles/'.$cur_plugile[1]))
						message('Il n\'y a pas de plugile nommé \''.$cur_plugile[0].'\' dans le répertoire de plugile.');
					// Construct REQUEST_URI if it isn't set
					if (!isset($_SERVER['REQUEST_URI']))
						$_SERVER['REQUEST_URI'] = (isset($_SERVER['PHP_SELF']) ? $_SERVER['PHP_SELF'] : '').'?'.(isset($_SERVER['QUERY_STRING']) ? $_SERVER['QUERY_STRING'] : '');
					?>
					<div class="inform">
						<fieldset>
						<legend><?php echo str_replace('_', ' ', $cur_plugile[0]); ?></legend>
							<div class="infldset">
							<?php
							include PUN_ROOT.'plugiles/'.$cur_plugile[1];
							?>
							<div class="clearer"></div>
							</div>
						</fieldset>
					</div>
					<?php
					if (!defined('PUN_PLUGIN_LOADED'))
						message('Le chargement du plugile \''.$cur_plugile[0].'\' a échoué.');
				}
			}
			?>

#
#---------[ 9. TROUVER ]-----------------------------------
#

if (!$section || $section == 'essentials')


#
#---------[ 10. REMPLACER PAR ]------------------------------------------
#

if ((!$section AND !$_GET['plugin']) || $section == 'essentials')


#
#---------[ 11. TROUVER (fin du fichier) ]------------------------------------------------
#
// Adaptation pour les versions 1.4.x

// Pour 1.2.x :
/*
?>
	<div class="clearer"></div>
</div>
<?php

	require PUN_ROOT.'footer.php';
}
*/

// Pour 1.4.x :
else
		message($lang_common['Bad request']);

?>
	<div class="clearer"></div>
</div>
<?php

	require PUN_ROOT.'footer.php';
}

#
#---------[ 12. AVANT AJOUTER ]-------------------------------------
#

	elseif(!isset($section) AND isset($_GET['plugin']))
	{
		// The plugile to load should be supplied via GET
		$plugile = isset($_GET['plugin']) ? $_GET['plugin'] : '';
		if (!preg_match('/^UP?P_(\w*?)\.php$/i', $plugile))
					message($lang_common['Bad request']);

		$prefix = substr($plugile, 0, strpos($plugile, '_'));
		$suffix = substr($plugile, strlen($plugile) - 4);
		// UP <=> User Plugile (visible par tous) - UPP <=> User Private Plugile (visible par le membre et les administrateurs)
		if ($suffix == '.php' && ($prefix == 'UP' || $prefix == 'UPP'))
			$plugiles[] = array(substr(substr($plugile, strpos($plugile, '_') + 1), 0, -4), $plugile);

		// Make sure the file actually exists
		if (!file_exists(PUN_ROOT.'plugiles/'.$plugile))
					message('Il n\'y a pas de plugile nommé \''.$plugile.'\' dans le répertoire de plugile.');

		// Construct REQUEST_URI if it isn't set
		if (!isset($_SERVER['REQUEST_URI']))
			$_SERVER['REQUEST_URI'] = (isset($_SERVER['PHP_SELF']) ? $_SERVER['PHP_SELF'] : '').'?'.(isset($_SERVER['QUERY_STRING']) ? $_SERVER['QUERY_STRING'] : '');

	// Adaptation pour les versions 1.4.x
			// Ancienne ligne pour 1.2.x :
			// $page_title = pun_htmlspecialchars($pun_config['o_board_title']).' / Profil / '.str_replace('_', ' ', $plugiles[0][0]);
			// Nouvelle ligne pour 1.4.x :
			$page_title = array(pun_htmlspecialchars($pun_config['o_board_title']), $lang_common['Profile'], str_replace('_', ' ', $plugiles[0][0]));
	//
		require PUN_ROOT.'header.php';
		
		// Attempt to load the plugile. We don't use @ here to supress error messages,
		// because if we did and a parse error occurred in the plugile, we would only
		// get the "blank page of death".
		include PUN_ROOT.'plugiles/'.$plugile;
		if (!defined('PUN_PLUGIN_LOADED'))
			message('Le chargement du plugile \''.$plugile.'\' a échoué.');
	}

#
#---------[ 13. ENREGSITRER/ENVOYER SUR LE SERVEUR ]----------------------------
#

include/functions.php
profile.php


#
#---------[ 14. FIN ET REGLAGES ]----------------------------------------------
#

Pour terminer l'installation de cette mod, vous devez vous rendre sur le plugin
d'administration. C'est aussi la que vous pourrez modifier l'affichage des plugiles.
Pour créer un nouveau plugile : tout est expliqué dans le plugile exemple UP_Exemple.php

Ensuite en ce qui concerne les plugile (suivile, uploadile etc)
Chaque Plugile installé doit être également à adapter individuellement pour les versions 1.4.x.
Par exemple le Plugile "Suivile" ne fonctionne pas directement car la BDD pour la 1.4.x est légèrement différente que pour les 1.2.x. On doit donc corriger le fichier UPP_Suivile.php ainsi :

<?php
/***********************************************************************

Copyright (C) 2007  Pandark http://pandark.free.fr
Certaines parties du code de ce plugile proviennent de punBB (http://punbb.org) *
Ce fichier est conçu pour fonctionner avec Plugile pour punBB ** et pour FluxBB 1.4.x avec les lignes modifiées

* Some code this plugile is from punbb (http://punbb.org) 
** This file is built for working with Plugile for punBB 

This software is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published
by the Free Software Foundation; either version 2 of the License,
or (at your option) any later version.

This software is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston,
MA  02111-1307  USA

************************************************************************/

// Make sure no one attempts to run this script "directly"
if (!defined('PUN'))
	exit;

// Tell profil.php that this is indeed a plugile and that it is loaded
define('PUN_PLUGIN_LOADED', 1);
define('PLUGIN_URL', 'profile.php?plugin='.$_GET['plugin'].'&amp;id='.$_GET['id']);
define('PLUGIN_NAME', $_GET['plugin']);

//
// The rest is up to you!
//

/***********************************************************************\
 Languages definitions
\***********************************************************************/
$english_array = array(
'Plugile name'				=>	'Subscriptions manager',
'Plugile title'				=>	'Subscriptions',
'Plugile explaination'		=>	'This plugile is a subscriptions manager',
'No thread selected'		=>	'You have not selected any thread.',
'No subscriptions'			=>	'You are currently not subscribed to any topics.',
'Select'					=>	'Select',
'Unsubscribe'				=>	'Unsubscribe',
'Views'						=>	'Views',
'Moved'						=>	'Moved',
'Sticky'					=>	'Sticky',
'No topics selected'		=>	'You must select at least one topic for unsubscribe.',
'Check all'					=>	'Check all',
'Uncheck all'				=>	'Uncheck all',
'Unsubscribe redirect'		=>	'Your subscription to the topic(s) has been removed. Redirecting &hellip;',
);

$french_array = array(
'Plugile name'				=>	'Gestion des abonnements',
'Plugile title'				=>	'Abonnements',
'Plugile explaination'		=>	'Ce plugile est un gestionnaire d\'abonnements',
'No thread selected'		=>	'Vous n\'avez pas selectionné de discussion.',
'No subscriptions'			=>	'Vous n\'êtes abonné à aucune discussion.',
'Select'					=>	'Sélectionner',
'Unsubscribe'				=>	'Se désabonner',
'Views'						=>	'Vues',
'Moved'						=>	'Déplacé',
'Sticky'					=>	'À lire&nbsp;',
'No topics selected'		=>	'Vous devez choisir au moins une discussion de laquelle se désabonner.',
'Check all'					=>	'Tout cocher',
'Uncheck all'				=>	'Tout décocher',
'Unsubscribe redirect'		=>	'Votre abonnement a la (aux) discussion(s) a bien été annulé. Redirection &hellip;',
);

// Set language
if($pun_user['language'] == 'English')
	$lang_suivile = $english_array;
elseif($pun_user['language'] == 'French')
	$lang_suivile = $french_array;


/***********************************************************************\
 Début du script proprement dit
\***********************************************************************/

// Si on a appuillé sur le bouton Unsubscribe
if (isset($_POST['unsubscribe']))
{
	// Make sure something something was entered
	$topics = isset($_POST['topics']) ? $_POST['topics'] : array();
	if (empty($topics))
		message($lang_suivile['No topics selected']);

	$topics = implode(',', array_keys($topics));
	$action = 'multi';

	// Delete any subscriptions
	// Adaptation pour FluxBB 1.4.x
	// Pour 1.2.x la ligne est :
	// $db->query('DELETE FROM '.$db->prefix.'subscriptions WHERE topic_id IN('.$topics.') AND user_id='.$_GET['id']) or error('Unable to delete subscriptions', __FILE__, __LINE__, $db->error());
	// Pour 1.4.x la ligne devient :
	$db->query('DELETE FROM '.$db->prefix.'topic_subscriptions WHERE topic_id IN('.$topics.') AND user_id='.$_GET['id']) or error('Unable to delete subscriptions', __FILE__, __LINE__, $db->error());

	redirect(PLUGIN_URL, $lang_suivile['Unsubscribe redirect']);
}

generate_profile_menu(PLUGIN_NAME);
?>
<div id="subscriptionsplugile" class="block">
<form method="post" action="<?php echo PLUGIN_URL; ?>" id="formulaire">
<div id="vf" class="blocktable">
		<h2><?php echo $lang_suivile['Plugile name'] ?></h2>
	<div class="box"><div class="inbox">
		<p><?php echo $lang_suivile['Plugile explaination'] ?></p>
	</div></div>
	<h2><span><?php echo $lang_suivile['Plugile title'] ?></span></h2>
	<div class="box">
		<div class="inbox" style="padding:0;">
			<table cellspacing="0">

			<thead>
				<tr>
					<th class="tcl" scope="col"><?php echo $lang_common['Topic']; ?></th>
					<th class="tc2" scope="col"><?php echo $lang_common['Replies']; ?></th>
					<th class="tc3" scope="col"><?php echo $lang_suivile['Views']; ?></th>
					<th class="tcr"><?php echo $lang_common['Last post']; ?></th>
					<th class="tcmod" scope="col"><?php echo $lang_suivile['Select']; ?></th>

				</tr>
			</thead>
			<tbody>
<?php
	// Adaptation pour FluxBB 1.4.x
	// Pour 1.2.x la ligne est :
	// $result = $db->query('SELECT t.id, t.poster, t.subject, t.posted, t.last_post, t.last_post_id, t.last_poster, t.num_views, t.num_replies, t.closed, t.sticky, t.moved_to FROM '.$db->prefix.'topics AS t INNER JOIN '.$db->prefix.'subscriptions AS s ON (t.id=s.topic_id AND s.user_id='.$_GET['id'].') INNER JOIN '.$db->prefix.'forums AS f ON f.id=t.forum_id LEFT JOIN '.$db->prefix.'forum_perms AS fp ON (fp.forum_id=f.id AND fp.group_id='.$pun_user['g_id'].') WHERE (fp.read_forum IS NULL OR fp.read_forum=1)') or error('Unable to fetch topic list', __FILE__, __LINE__, $db->error());
	// Pour 1.4.x la ligne devient :
	$result = $db->query('SELECT t.id, t.poster, t.subject, t.posted, t.last_post, t.last_post_id, t.last_poster, t.num_views, t.num_replies, t.closed, t.sticky, t.moved_to FROM '.$db->prefix.'topics AS t INNER JOIN '.$db->prefix.'topic_subscriptions AS s ON (t.id=s.topic_id AND s.user_id='.$_GET['id'].') INNER JOIN '.$db->prefix.'forums AS f ON f.id=t.forum_id LEFT JOIN '.$db->prefix.'forum_perms AS fp ON (fp.forum_id=f.id AND fp.group_id='.$pun_user['g_id'].') WHERE (fp.read_forum IS NULL OR fp.read_forum=1)') or error('Unable to fetch topic list', __FILE__, __LINE__, $db->error());

if ($db->num_rows($result))
{
	$button_status = '';

	while ($cur_topic = $db->fetch_assoc($result))
	{

		$icon_text = $lang_common['Normal icon'];
		$item_status = '';
		$icon_type = 'icon';

		if ($cur_topic['moved_to'] == null)
		{
			$last_post = '<a href="viewtopic.php?pid='.$cur_topic['last_post_id'].'#p'.$cur_topic['last_post_id'].'">'.format_time($cur_topic['last_post']).'</a> '.$lang_common['by'].' '.pun_htmlspecialchars($cur_topic['last_poster']);
			$ghost_topic = false;
		}
		else
		{
			$last_post = '&nbsp;';
			$ghost_topic = true;
		}

		if ($pun_config['o_censoring'] == '1')
			$cur_topic['subject'] = censor_words($cur_topic['subject']);

		if ($cur_topic['moved_to'] != 0)
			$subject = $lang_suivile['Moved'].': <a href="viewtopic.php?id='.$cur_topic['moved_to'].'">'.pun_htmlspecialchars($cur_topic['subject']).'</a> <span class="byuser">'.$lang_common['by'].' '.pun_htmlspecialchars($cur_topic['poster']).'</span>';
		else if ($cur_topic['closed'] == '0')
			$subject = '<a href="viewtopic.php?id='.$cur_topic['id'].'">'.pun_htmlspecialchars($cur_topic['subject']).'</a> <span>'.$lang_common['by'].'&nbsp;'.pun_htmlspecialchars($cur_topic['poster']).'</span>';
		else
		{
			$subject = '<a href="viewtopic.php?id='.$cur_topic['id'].'">'.pun_htmlspecialchars($cur_topic['subject']).'</a> <span class="byuser">'.$lang_common['by'].' '.pun_htmlspecialchars($cur_topic['poster']).'</span>';
			$icon_text = $lang_common['Closed icon'];
			$item_status = 'iclosed';
		}

		if ($cur_topic['last_post'] > $pun_user['last_visit'] && !$ghost_topic)
		{
			$icon_text .= ' '.$lang_common['New icon'];
			$item_status .= ' inew';
			$icon_type = 'icon inew';
			$subject = '<strong>'.$subject.'</strong>';
			$subject_new_posts = '<span class="newtext">[&nbsp;<a href="viewtopic.php?id='.$cur_topic['id'].'&amp;action=new" title="'.$lang_common['New posts info'].'">'.$lang_common['New posts'].'</a>&nbsp;]</span>';
		}
		else
			$subject_new_posts = null;

		// We won't display "the dot", but we add the spaces anyway
		if ($pun_config['o_show_dot'] == '1')
			$subject = '&nbsp;&nbsp;'.$subject;

		if ($cur_topic['sticky'] == '1')
		{
			$subject = '<span class="stickytext">'.$lang_suivile['Sticky'].': </span>'.$subject;
			$item_status .= ' isticky';
			$icon_text .= ' '.$lang_suivile['Sticky'];
		}

		$num_pages_topic = ceil(($cur_topic['num_replies'] + 1) / $pun_user['disp_posts']);

		if ($num_pages_topic > 1)
			$subject_multipage = '[ '.paginate($num_pages_topic, -1, 'viewtopic.php?id='.$cur_topic['id']).' ]';
		else
			$subject_multipage = null;

		// Should we show the "New posts" and/or the multipage links?
		if (!empty($subject_new_posts) || !empty($subject_multipage))
		{
			$subject .= '&nbsp; '.(!empty($subject_new_posts) ? $subject_new_posts : '');
			$subject .= !empty($subject_multipage) ? ' '.$subject_multipage : '';
		}

?>
				<tr<?php if ($item_status != '') echo ' class="'.trim($item_status).'"'; ?>>
					<td class="tcl">
						<div class="<?php echo $icon_type ?>"><div class="nosize"><?php echo trim($icon_text) ?></div></div>
						<div class="tclcon">
							<?php echo $subject."\n" ?>
						</div>
					</td>
					<td class="tc2"><?php echo (!$ghost_topic) ? $cur_topic['num_replies'] : '&nbsp;' ?></td>
					<td class="tc3"><?php echo (!$ghost_topic) ? $cur_topic['num_views'] : '&nbsp;' ?></td>
					<td class="tcr"><?php echo $last_post ?></td>
					<td class="tcmod"><input type="checkbox" name="topics[<?php echo $cur_topic['id'] ?>]" value="1" /></td>
				</tr>
<?php

	}
}
else
{
	$button_status = ' disabled';
	echo "\t\t\t\t\t".'<tr><td class="tcl" colspan="5">'.$lang_suivile['No subscriptions'].'</td></tr>'."\n";
}

?>
			</tbody>
			</table>
		</div>
	</div>
</div>
<div class="linksb">
	<div class="inbox">
		<p class="conr">
		
<script type="text/javascript">
<!--
function Check_all(container_id,state)
 {
  var checkboxes = document.getElementById(container_id).getElementsByTagName('input');
  for (var i=0;i<checkboxes.length;i++)
   {
    if(checkboxes[i].type == 'checkbox')
     {
      checkboxes[i].checked = state;
     }
   }
  return true;
 }
-->
</script>
		<input type="button" onclick="Check_all('formulaire', true);" value="<?php echo $lang_suivile['Check all']; ?>" />
		<input type="button" onclick="Check_all('formulaire', false);" value="<?php echo $lang_suivile['Uncheck all']; ?>" />
		<input type="submit" name="unsubscribe" value="<?php echo $lang_suivile['Unsubscribe']; ?>" /></p>
		<div class="clearer"></div>
	</div>
</div>
</form>
</div>

le topic pour les forums 1.2.x est ici : http://fluxbb.fr/forums/viewtopic.php?id=7990&p=2

smile

Dernière modification par a-snowboard (10-03-2012 21:09:47)


Le roi du snowboard ! Sans prétention hein ? mdr

Fluxbb 1.4.7, Forum Photo Paris

Hors ligne

#2 10-03-2012 14:00:35

a-snowboard
Membre
Inscription : 20-06-2011
Messages : 440
Site Web

Re : Plugile 2.0(+ suivile et autre)

Ensuite pour le plugin suivile :
Si l'on veux abonner les membres automatiquement lorsqu'ils créé un topic je vois renvoi sur le post de wan (dans fluxbb 1.2) :
http://fluxbb.fr/forums/viewtopic.php?p … 74#p105974

Bon après faudrait pouvoir l'adapter pour avoir un abonnement automatique dès qu'on poste un message dans un topic.
(chose que je ne sais pas encore faire)


Mais j'ai remarqué un souci avec les abonnements automatique dans l'option suivile du membre :
les topic s'affichent avec un icone plein pour dire qu'il y a des nouveaux messages.
Or après avoir vu le message en question, l’icône ne bouge pas (et il y a toujours marqué nouveau message)


Enfin j'ai remarqué que quand on va dans notre profil et qu'on va dans suivile (ou uploadile) les onglets ne sont pas correct :
Sans-titre.png
en soit ce n'est pas hyper gênant. Mais autant faire les choses proprement.

la solution proposé est ici : http://fluxbb.fr/forums/viewtopic.php?p … 54#p105854
mais elle génère un plantage chez moi quand je vais dans mon profil > suivile

Dernière modification par a-snowboard (10-03-2012 18:31:12)


Le roi du snowboard ! Sans prétention hein ? mdr

Fluxbb 1.4.7, Forum Photo Paris

Hors ligne

#3 10-03-2012 18:10:14

Wan
Membre
Inscription : 12-02-2010
Messages : 555
Site Web

Re : Plugile 2.0(+ suivile et autre)

a-snowboard a écrit :

Enfin j'ai remarqué que quand on va dans notre profil et qu'on va dans suivile (ou uploadile) les onglets ne sont pas correct :
http://www.forumphotoparis.fr/img/membe … -titre.png
en soit ce n'est pas hyper gênant. Mais autant faire les choses proprement.

la solution proposé est ici : http://fluxbb.fr/forums/viewtopic.php?p … 52#p105852
mais elle génère un plantage chez moi quand je vais dans mon profil > suivile

La solution est proposée ici en fait :
http://fluxbb.fr/forums/viewtopic.php?p … 54#p105854

Hors ligne

#4 10-03-2012 18:36:04

a-snowboard
Membre
Inscription : 20-06-2011
Messages : 440
Site Web

Re : Plugile 2.0(+ suivile et autre)

lien modifié.
Mais ta solution me fait générer une erreur quand je veux aller dans le profil :

Parse error: syntax error, unexpected '.', expecting ')' in C:\xampp\htdocs\www\profile.php on line 1879


Le roi du snowboard ! Sans prétention hein ? mdr

Fluxbb 1.4.7, Forum Photo Paris

Hors ligne

#5 10-03-2012 20:36:27

Wan
Membre
Inscription : 12-02-2010
Messages : 555
Site Web

Re : Plugile 2.0(+ suivile et autre)

Oops... DSL encore un truc pas testé... J'en ai honte, mais, bon, on ne peut pas tester tout non plus à moins d'y passer sa vie ! wink
Alors du coup, avec ça, ça donne quoi ?

$page_title = array(pun_htmlspecialchars($pun_config['o_board_title']), $lang_common['Profile'], str_replace('_', ' ', $plugiles[0][0]));

Hors ligne

#6 10-03-2012 21:08:41

a-snowboard
Membre
Inscription : 20-06-2011
Messages : 440
Site Web

Re : Plugile 2.0(+ suivile et autre)

Impec !

readme modifié smile


Bon en fait c’était dans le readme. Je pense que comme j'avais fait les manip avant la publication de ton readme je n'avais pas tout a fait le même code (et je viens de voir que sur mon site ça marchait normalement, des fois je suis le roi des c** )

Dernière modification par a-snowboard (10-03-2012 21:13:00)


Le roi du snowboard ! Sans prétention hein ? mdr

Fluxbb 1.4.7, Forum Photo Paris

Hors ligne

#7 11-03-2012 15:32:30

a-snowboard
Membre
Inscription : 20-06-2011
Messages : 440
Site Web

Re : Plugile 2.0(+ suivile et autre)

Par contre j'ai toujours des souci avec suivile...

a-snowboard a écrit :

Mais j'ai remarqué un souci avec les abonnements automatique dans l'option suivile du membre :
les topics s'affichent avec un icone pleine pour dire qu'il y a des nouveaux messages.
Or après avoir vu le message en question, l’icône ne bouge pas (et il y a toujours marqué nouveau message)


Le roi du snowboard ! Sans prétention hein ? mdr

Fluxbb 1.4.7, Forum Photo Paris

Hors ligne

#8 17-06-2012 01:03:35

kristoch
Membre
Inscription : 02-06-2012
Messages : 52

Re : Plugile 2.0(+ suivile et autre)

bonsoir,

il y a plusieurs plugins mods nécessitant plugile,
qui n'y est pas disponible par contre!

il faut rechercher dans le forum...

si on veut biographile, ça promet au vu des topics sur le sujet!

Hors ligne

#9 17-06-2012 12:32:39

a-snowboard
Membre
Inscription : 20-06-2011
Messages : 440
Site Web

Re : Plugile 2.0(+ suivile et autre)

tu est sur pour plugile ? je l'ai telecharge sur ce forum sans souci.
il faut aller voir les mod 1.2.x,  et apres faire les adaptations marquees sur ce fil.


Le roi du snowboard ! Sans prétention hein ? mdr

Fluxbb 1.4.7, Forum Photo Paris

Hors ligne

#10 17-06-2012 13:26:58

kristoch
Membre
Inscription : 02-06-2012
Messages : 52

Re : Plugile 2.0(+ suivile et autre)

je voulais dire, non présent dans les plugins!
on doit aller le chercher en forum et modifier oui...

ce qui signifie qu'il existe mais non modifié!
ah ben donc oui c'est pire que ce que je disais, mal, au départ!
lol

Hors ligne

#11 17-06-2012 17:01:57

a-snowboard
Membre
Inscription : 20-06-2011
Messages : 440
Site Web

Re : Plugile 2.0(+ suivile et autre)

ah oui. je comprend mieux

bah faudrait que je m'en occupe quand je serait tranquile. hmm


Le roi du snowboard ! Sans prétention hein ? mdr

Fluxbb 1.4.7, Forum Photo Paris

Hors ligne

#12 09-03-2020 00:49:27

bachibouzouk
Membre
Inscription : 17-03-2008
Messages : 18

Re : Plugile 2.0(+ suivile et autre)

Hello,

Je ne sais pas si tu as poussé ta correction de Suivile pour compatibilité des requêtes avec 1.4 et 1.5, en tout cas cela fonctionne avec 1.5.4 smile

Beau travail!

Alors je te recommande de corriger le package et le mettre à dispo plus_un

Dernière modification par bachibouzouk (09-03-2020 00:49:50)

Hors ligne

#13 09-03-2020 10:29:19

Otomatic
Régisseur
Lieu : Paris, France
Inscription : 12-12-2005
Messages : 3 650
Site Web

Re : Plugile 2.0(+ suivile et autre)

Bonjour,

Je doute que répondre huit ans après serve à quelque chose.


Ce n'est pas parce que l'erreur se propage qu'elle devient vérité. Gandhi
Sont différents : ça et sa - est et ait - à et a - ce et se - mes et mais ou met - été et était - c'est et ces - ce-si et ceci
La vie sans musique est tout simplement une erreur, une fatigue, un exil. Friedrich Nietzsche

Hors ligne

Pied de page des forums