MOD Topiclist ~ Configuración ACP e instalador

Foro de debate para los escritores de MOD, sobre MOD en Desarrollo.

Moderador: Personalizaciones de Extensiones

Avatar de Usuario
Saske
Ex Miembro del Equipo
Mensajes: 258
Registrado: Sab Feb 05, 2011 9:30 am
Ubicación: España
Contactar:

MOD Topiclist ~ Configuración ACP e instalador

Mensaje sin leer por Saske » Mar Jun 14, 2011 2:01 pm

Patrocinador

Holas
Estoy intentando añadir en el ACP una opción para habilitar / deshabilitar este MOD (que por cierto, esta abandonado, o eso pone en phpbb.com :lol:)
Hasta ahora, guiandome con el codigo que estoy usando en el upload toolkit (ver este tema para informacion sobre eso http://www.phpbb-es.com/foro/phpbb3-ava ... 32085.html)
Tengo esto en el acp/style/archivo.html

Código: Seleccionar todo

<!-- INCLUDE overall_header.html -->
<!--**
*
* @package Topiclist
* @version $Id: acp_topiclist.html,v 1.0.3 05/05/2011 Saske Exp $
* @copyright (c) 2011 Saske
* @license http://opensource.org/licenses/gpl-license.php GNU Public License
*
*/-->

<a name="maincontent"></a>

<h1>{L_ACP_TOPICLIST_SETTINGS}</h1>

<p>{L_ACP_TOPICLIST_SETTINGS_EXPLAIN}</p>

<!-- IF S_WARNING -->
	<div class="errorbox">
		<h3>{L_WARNING}</h3>
		<p>{WARNING_MSG}</p>
	</div>
<!-- ENDIF -->


			<form id="acp_topcilist" method="post" action="{U_ACTION}">
	<fieldset>
			<legend>{L_ACP_TOPICLIST_VERSION}</legend>
		<dl>
			<dt><label for="uploadtoolkit_enable">{L_ACP_TOPICLIST_ENABLE}:</label><br />
			<span>{L_ACP_TOPICLIST_ENABLE_EXPLAIN}</span></dt>
			<dd><label><input type="radio" class="radio" name="topiclist_enable" value="1"<!-- IF S_TOPICLIST_ENABLE --> id="topiclist_enable" checked="checked"<!-- ENDIF --> /> {L_YES}</label>
			<label><input type="radio" class="radio" name="topiclist_enable" value="0"<!-- IF not S_TOPICLIST_ENABLE --> id="topiclist_enable" checked="checked"<!-- ENDIF --> /> {L_NO}</label></dd>
		</dl>
	</fieldset>
	<fieldset>
			<p class="submit-buttons">
				<input class="button1" type="submit" id="update" name="update" value="{L_SUBMIT}" />&nbsp;&nbsp;<input class="button2" type="reset" value="{L_RESET}" />
			</p>
			{S_FORM_TOKEN}
	</fieldset>
	</from>


	<!-- IF .forums -->
		<table cellspacing="1">
			<col class="row1" /><col class="row1" /><col class="row2" />
		<tbody>
		<!-- BEGIN forums -->
			<tr>
				<td style="width: 5%; text-align: center;">{forums.FOLDER_IMAGE}</td>
				<td>
					<!-- IF forums.FORUM_IMAGE --><div style="float: {S_CONTENT_FLOW_BEGIN}; margin-right: 5px;">{forums.FORUM_IMAGE}</div><!-- ENDIF -->
					<strong><!-- IF forums.S_FORUM_LINK -->{forums.FORUM_NAME}<!-- ELSE --><a href="#">{forums.FORUM_NAME}</a><!-- ENDIF --></strong>
					<!-- IF forums.FORUM_DESCRIPTION --><br /><span>{forums.FORUM_DESCRIPTION}</span><!-- ENDIF -->
					<!-- IF forums.S_FORUM_POST --><br /><br /><span>{L_TOPICS}: <strong>{forums.FORUM_TOPICS}</strong> / {L_POSTS}: <strong>{forums.FORUM_POSTS}</strong></span><!-- ENDIF -->
				</td>
				<td style="vertical-align: top; width: 40px; text-align: right; white-space: nowrap;">
					<a href="{forums.U_GENERATE}">{ICON_SYNC}</a>
					<!-- IF forums.S_DELETE --><a href="{forums.U_DELETE}">{ICON_DELETE}</a><!-- ELSE -->{ICON_DELETE_DISABLED}<!-- ENDIF -->
				</td>
			</tr>
		<!-- END forums -->
		</tbody>
		</table>
	<!-- ENDIF -->

<!-- INCLUDE overall_footer.html -->
En includes/acp/archivo.php

Código: Seleccionar todo

<?php
/**
*
* @package acp
* @version $Id: acp_topiclist.php,v 1.0.1 2010-01-14 19:49:02 FladeX Exp $
* @copyright (c) 2009 FladeX
* @license http://opensource.org/licenses/gpl-license.php GNU Public License
*
*/

/**
* @ignore
*/
if (!defined('IN_PHPBB'))
{
	exit;
}

/**
* @package acp
*/
class acp_topiclist
{
	var $u_action;
	function main($id, $mode)
	{
		global $db, $user, $auth, $template;
		global $config, $phpbb_root_path, $phpbb_admin_path, $phpEx;

		$action = request_var('action', '');
		$submit = (isset($_POST['submit'])) ? true : false;
		
				/** Set some default values so the user havn't to run any install - Start **/
		$topiclist_enable = (isset($config['topiclist_enable'])) ? $config['topiclist_enable'] : 0;
		$topiclist_enable = request_var('topiclist_enable', $topiclist_enable);

		if ($mode != 'index')
		{
			return;
		}
		$user->add_lang('acp/forums');
		$this->tpl_name = 'acp_topiclist';
		$this->page_title = 'ACP_TOPICLIST_SETTINGS';

		// Check additional permissions
		switch ($action)
		{
			case "generate":
				$forum = request_var('f', 0);
				$url = generate_board_url();
				$sql = 'SELECT forum_name
					FROM ' . FORUMS_TABLE . "
					WHERE forum_id=$forum";
				$result = $db->sql_query($sql);
				$row = $db->sql_fetchrow($result);
				$db->sql_freeresult($result);
				$html_content = '<li><b><a href="' . $url . '/viewforum.' . $phpEx . '?f=' . $forum . '">' . $row['forum_name'] . '</a></b></li>';
				$html_content .= '<ul>';
				$sql = 'SELECT topic_id, forum_id, topic_title, topic_type, topic_replies
					FROM ' . TOPICS_TABLE . "
					WHERE forum_id=$forum";
				$result = $db->sql_query($sql);
				while ($row = $db->sql_fetchrow($result))
				{
					$pages = $row['topic_replies'] / $config['posts_per_page'];
					$pages = (int) $pages;
					if ($pages <= 1)
					{
						$html_content .= '<li><a href="' . $url . '/viewtopic.' . $phpEx . '?f=' . $row['forum_id'] . '&t=' . $row['topic_id'] . '">' . $row['topic_title'] . '</a></li>';
					}
					else
					{
						$html_content .= '<li><a href="' . $url . '/viewtopic.' . $phpEx . '?f=' . $row['forum_id'] . '&t=' . $row['topic_id'] . '">' . $row['topic_title'] . '</a><br />[';
						for ($i=1; $i<=$pages; $i++)
						{
							$html_content .= '<a href="' . $url . '/viewtopic.' . $phpEx . '?f=' . $row['forum_id'] . '&t=' . $row['topic_id'] . '&start=' . $i * $config['posts_per_page'] . '">' . ($i+1) . '</a> ';
						}
						$html_content .= ']</li>';
					}
				}
				$db->sql_freeresult($result);
				$html_content .= '</ul>';

				$w = fopen('../topiclist/' . $forum . '.html', 'w');
				fwrite($w, $html_content);
				fclose($w);
			break;

			case "delete":
				$forum = request_var('f', 0);
				if (file_exists('../topiclist/' . $forum . '.html'))
				{
					unlink('../topiclist/' . $forum . '.html');
				}
			break;
		}

		$sql = 'SELECT *
			FROM ' . FORUMS_TABLE . "
			ORDER BY forum_id";
		$result = $db->sql_query($sql);

		if ($row = $db->sql_fetchrow($result))
		{
			do
			{
				$forum_type = $row['forum_type'];

				if ($row['forum_status'] == ITEM_LOCKED)
				{
					$folder_image = '<img src="images/icon_folder_lock.gif" alt="' . $user->lang['LOCKED'] . '" />';
				}
				else
				{
					switch ($forum_type)
					{
						case FORUM_LINK:
							$folder_image = '<img src="images/icon_folder_link.gif" alt="' . $user->lang['LINK'] . '" />';
						break;

						default:
							$folder_image = ($row['left_id'] + 1 != $row['right_id']) ? '<img src="images/icon_subfolder.gif" alt="' . $user->lang['SUBFORUM'] . '" />' : '<img src="images/icon_folder.gif" alt="' . $user->lang['FOLDER'] . '" />';
						break;
					}
				}

				$url = $this->u_action . "&f={$row['forum_id']}";

				$template->assign_block_vars('forums', array(
					'FOLDER_IMAGE'		=> $folder_image,
					'FORUM_IMAGE'		=> ($row['forum_image']) ? '<img src="' . $phpbb_root_path . $row['forum_image'] . '" alt="" />' : '',
					'FORUM_IMAGE_SRC'	=> ($row['forum_image']) ? $phpbb_root_path . $row['forum_image'] : '',
					'FORUM_NAME'		=> $row['forum_name'],
					'FORUM_DESCRIPTION'	=> generate_text_for_display($row['forum_desc'], $row['forum_desc_uid'], $row['forum_desc_bitfield'], $row['forum_desc_options']),
					'FORUM_TOPICS'		=> $row['forum_topics'],
					'FORUM_POSTS'		=> $row['forum_posts'],

					'S_FORUM_LINK'		=> ($forum_type == FORUM_LINK) ? true : false,
					'S_FORUM_POST'		=> ($forum_type == FORUM_POST) ? true : false,

					'S_DELETE'			=> (file_exists('../topiclist/' . $row['forum_id'] . '.html')) ? true : false,

					'U_FORUM'			=> append_sid($this->u_action . '&parent_id=' . $row['forum_id']),
					'U_GENERATE'		=> append_sid($url . '&action=generate'),
					'U_DELETE'			=> append_sid($url . '&action=delete')
				));
			}
			while ($row = $db->sql_fetchrow($result));
		}
		else if ($this->parent_id)
		{
			$row = $this->get_forum_info($this->parent_id);

			$url = $this->u_action . '&parent_id=' . $this->parent_id . '&f=' . $row['forum_id'];

			$template->assign_vars(array(
				'S_NO_FORUMS'		=> true,

				'U_EDIT'			=> append_sid($url . '&action=edit'),
				'S_TOPICLIST'				=> (isset($config['topiclist_enable'])) ? $config['topiclist_enable'] : false,
				'U_DELETE'			=> append_sid($url . '&action=delete')
			));
		}
						if ($submit)
		{
			set_config('topiclist_enable', $topiclist_enable);

		//	add_log('admin', 'LOG_CONFIG_UPLOADTOOLKIT');

			trigger_error($user->lang['CONFIG_UPDATED'] . adm_back_link($this->u_action));
		}

		$template->assign_vars(array(
			'S_TOPICLIST_ENABLE'	=> $topiclist_enable,
			'U_ACTION'					=> $this->u_action,
		));
		$db->sql_freeresult($result);
	}
}

?>
En el archivo includes/acp/info/archivo.php

Código: Seleccionar todo

<?php
/**
*
* @package acp
* @version $Id: acp_topiclist.php,v 1.0.1 2010-01-14 19:50:43 FladeX Exp $
* @copyright (c) 2009 FladeX
* @license http://opensource.org/licenses/gpl-license.php GNU Public License 
*
*/

/**
* @package module_install
*/
class acp_topiclist_info
{
	function module()
	{
		return array(
			'filename'	=> 'acp_topiclist',
			'title'		=> 'ACP_TOPICLIST',
			'version'	=> '1.0.3',
			'modes'		=> array(
				'index'	=> array('title' => 'ACP_TOPICLIST_INDEX_TITLE', 'auth' => 'acl_a_board', 'cat' => array('ACP_BOARD_CONFIGURATION')),
			),
		);
	}

	function install()
	{
	}

	function uninstall()
	{
	}
}

?>
Luego, en el topiclist.php (el archivo .php del MOD)
tengo esto

Código: Seleccionar todo

<?php
/**
*
* @package phpBB3
* @version $Id: topiclist.php 1.0.1 2010-01-14 19:47:22Z Saske1 $
* @copyright (c) 2011 Saske1
* @license http://opensource.org/licenses/gpl-license.php GNU Public License
*
*/

/**
* @ignore
*/
define('IN_PHPBB', true);
$phpbb_root_path = (defined('PHPBB_ROOT_PATH')) ? PHPBB_ROOT_PATH : './';
$phpEx = substr(strrchr(__FILE__, '.'), 1);
include($phpbb_root_path . 'common.' . $phpEx);

// Start session management
$user->session_begin();
$auth->acl($user->data);
$user->setup('mods/topiclist');

page_header($user->lang['TOPICLIST_TITLE']);

$topiclist_files_exist = 0;
$sql = 'SELECT forum_id
	FROM ' . FORUMS_TABLE . '';
$result = $db->sql_query($sql);
while ($row = $db->sql_fetchrow($result))
{
	if (file_exists('topiclist/' . $row['forum_id'] . '.html'))
	{
		$template->assign_block_vars('topiclist_row', array(
			'TOPICS'	=> file_get_contents('topiclist/' . $row['forum_id'] . '.html'),
		));
		$topiclist_files_exist = 1;
	}
}
$db->sql_freeresult($result);

$template->assign_vars(array(
	'TOPICLIST'			=> ($config['topiclist_fx_enable']) ? true : false,
	'TOPICLIST_ENABLE'	=> $topiclist_enable,
	'TOPICLIST_FILES'	=> $topiclist_files_exist,
));
$template->set_filenames(array(
	'body' => 'topiclist_body.html',
));

page_footer();
?>
Y en el archivo styles/prosilver/template/topiclist_body.html (el archivo .html principal del MOD)
tengo esto

Código: Seleccionar todo

<!-- INCLUDE overall_header.html -->
<!-- IF TOPICLIST_ENABLE -->
<a name="start_here"></a>
<div id="page-body">

<h2>{TOPICLIST_TITLE}</h2>

<div class="panel bg1">
	<div class="inner"><span class="corners-top"><span></span></span>
		<div class="content">
			<!-- IF TOPICLIST_FILES -->
				<ul>
				<!-- BEGIN topiclist_row -->
					{topiclist_row.TOPICS}
				<!-- END topiclist_row -->
				</ul>
			<!-- ELSE -->
				<p>{L_TOPICLIST_FILES_NOT_FOUND}</p>
			<!-- ENDIF -->
		</div>
	<span class="corners-bottom"><span></span></span></div>
</div>

</div>
<div style="text-align:center;">{L_TOPICLIST_COPYRIGHT}</div>
<!-- ELSE -->
{TOPICLIST_NO_ENABLE}
<!-- ENDIF -->

<!-- INCLUDE overall_footer.html -->
Sin enbargo, no se si estaré fallando en algun sitio, por qué independientemente de lo que marque el ACP (si habilitado o deshabilitado) simpre muestra lo mismo (solo el overall_header.html y overall_footer.html)
Llevo desde ayer intentando hacer que funcione, pero no lo consigo, y no se que mas probar :roll:
Por otro lado, ayer hice un instalador con UMIL (1.0.4), que en teoría, debería de agregar el modulo del MOD automaticamente en el ACP, hoy lo he probado, pero no lo ha añadido
Dejo el codigo ...

Código: Seleccionar todo

<?php
/**
 *
 * @author Saske1 (Salva) salva_bxt@hotmail.com
 * @version $Id$
 * @copyright (c) 2011 phpBBSaske
 * @license http://opensource.org/licenses/gpl-license.php GNU Public License
 *
 */

/**
 * @ignore
 */
define('UMIL_AUTO', true);
define('IN_PHPBB', true);
$phpbb_root_path = (defined('PHPBB_ROOT_PATH')) ? PHPBB_ROOT_PATH : './';
$phpEx = substr(strrchr(__FILE__, '.'), 1);

include($phpbb_root_path . 'common.' . $phpEx);
$user->session_begin();
$auth->acl($user->data);
$user->setup();


if (!file_exists($phpbb_root_path . 'umil/umil_auto.' . $phpEx))
{
	trigger_error('Please download the latest UMIL (Unified MOD Install Library) from: <a href="http://www.phpbb.com/mods/umil/">phpBB.com/mods/umil</a>', E_USER_ERROR);
}

// The name of the mod to be displayed during installation.
$mod_name = 'Topiclist';

/*
* The name of the config variable which will hold the currently installed version
* UMIL will handle checking, setting, and updating the version itself.
*/
$version_config_name = 'tl_version';


// The language file which will be included when installing
$language_file = 'mods/info_acp_topiclist';


/*
* Optionally we may specify our own logo image to show in the upper corner instead of the default logo.
* $phpbb_root_path will get prepended to the path specified
* Image height should be 50px to prevent cut-off or stretching.
*/
//$logo_img = 'styles/prosilver/imageset/site_logo.gif';

/*
* The array of versions and actions within each.
* You do not need to order it a specific way (it will be sorted automatically), however, you must enter every version, even if no actions are done for it.
*
* You must use correct version numbering.  Unless you know exactly what you can use, only use X.X.X (replacing X with an integer).
* The version numbering must otherwise be compatible with the version_compare function - http://php.net/manual/en/function.version-compare.php
*/
$versions = array(
	'1.0.3' => array(
		// Add the modules
		'module_add' => array(
			// ACP Module
			array('acp', 'ACP_BOARD_CONFIGURATION', array(
				'module_enabled'	=> 1,
				'module_display'	=> 1,
				'module_langname'	=> 'ACP_TOPICLIST_INDEX_TITLE',
			)),
		),
	),

);

// Include the UMIL Auto file, it handles the rest
include($phpbb_root_path . 'umil/umil_auto.' . $phpEx);
La verdad, es que llevo bastante tiempo intentado hacer que todo funcione, pero entre el ACP, y el UMIL (la verdad, no me aclaro mucho con el "umil-online" que hay en phpbb.com) me llevan superocupado :| :roll:

Avatar de Usuario
Leviatan21
Lider phpBB Argentina
Lider phpBB Argentina
Mensajes: 1993
Registrado: Mié Nov 25, 2009 4:43 pm
Ubicación: Buenos Aires, Argentina
Contactar:

Re: MOD Topiclist ~ Configuración ACP e instalador

Mensaje sin leer por Leviatan21 » Mar Jun 14, 2011 3:05 pm

Ojo con el abuso del copy/paste :

acp_topiclist.html

Código: Seleccionar todo

<label for="uploadtoolkit_enable">{L_ACP_TOPICLIST_ENABLE}:</label>
Se nota que no utilizas el modo DEBUG habilitado, si así fuera verías este error, en el archivo topiclist.php la variable $topiclist_enable no existe al pasarla a la plantilla y en la plantilla cuando no está habilitado muestra {TOPICLIST_NO_ENABLE} que si es una variable del idioma ( archivo 'mods/topiclist' ) debería ser {L_TOPICLIST_NO_ENABLE}
Lea las reglas | Nosotros | Acerca de phpBB | Descargas | Soporte | Blog
Ex Miembro del Equipo QA en phpbb.com
No se brindará soporte por Mensaje Privado, por favor pregunte en un tema público, tenga en cuenta que su problema puede ser también un problema para otros ;)

Avatar de Usuario
Saske
Ex Miembro del Equipo
Mensajes: 258
Registrado: Sab Feb 05, 2011 9:30 am
Ubicación: España
Contactar:

Re: MOD Topiclist ~ Configuración ACP e instalador

Mensaje sin leer por Saske » Mar Jun 14, 2011 3:44 pm

Leviatan21 escribió:Ojo con el abuso del copy/paste :

acp_topiclist.html

Código: Seleccionar todo

<label for="uploadtoolkit_enable">{L_ACP_TOPICLIST_ENABLE}:</label>
Se nota que no utilizas el modo DEBUG habilitado, si así fuera verías este error, en el archivo topiclist.php la variable $topiclist_enable no existe al pasarla a la plantilla y en la plantilla cuando no está habilitado muestra {TOPICLIST_NO_ENABLE} que si es una variable del idioma ( archivo 'mods/topiclist' ) debería ser {L_TOPICLIST_NO_ENABLE}
Ya corregi lo de

Código: Seleccionar todo

<label for="uploadtoolkit_enable">{L_ACP_TOPICLIST_ENABLE}:</label>
Y la variable de Idioma {L_TOPICLIST_NO_ENABLE} :roll:
Pregunta: como sería forma correcta de agregar la variable $topiclist_enable ?¿
Yo lo pondría así ...

Código: Seleccionar todo

<?php
/**
*
* @package phpBB3
* @version $Id: topiclist.php 1.0.1 2010-01-14 19:47:22Z Saske1 $
* @copyright (c) 2011 Saske1
* @license http://opensource.org/licenses/gpl-license.php GNU Public License
*
*/

/**
* @ignore
*/
define('IN_PHPBB', true);
$phpbb_root_path = (defined('PHPBB_ROOT_PATH')) ? PHPBB_ROOT_PATH : './';
$phpEx = substr(strrchr(__FILE__, '.'), 1);
include($phpbb_root_path . 'common.' . $phpEx);

// Start session management
$user->session_begin();
$auth->acl($user->data);
$user->setup('mods/topiclist');

page_header($user->lang['TOPICLIST_TITLE']);

// Topiclist enable
		$topiclist_enable = (isset($config['topiclist_enable'])) ? $config['topiclist_enable'] : 0;
		$topiclist_enable = request_var('topiclist_enable', $topiclist_enable);

$topiclist_files_exist = 0;
$sql = 'SELECT forum_id
	FROM ' . FORUMS_TABLE . '';
$result = $db->sql_query($sql);
while ($row = $db->sql_fetchrow($result))
{
	if (file_exists('topiclist/' . $row['forum_id'] . '.html'))
	{
		$template->assign_block_vars('topiclist_row', array(
			'TOPICS'	=> file_get_contents('topiclist/' . $row['forum_id'] . '.html'),
		));
		$topiclist_files_exist = 1;
	}
}
$db->sql_freeresult($result);

$template->assign_vars(array(
	'TOPICLIST'			=> ($config['topiclist_fx_enable']) ? true : false,
	'TOPICLIST_ENABLE'	=> $topiclist_enable,
	'TOPICLIST_FILES'	=> $topiclist_files_exist,
));
$template->set_filenames(array(
	'body' => 'topiclist_body.html',
));

page_footer();
?>
Como lo ves ?¿
Ahora con el DEBUG ya habilitado me lanza este BUG
[phpBB Debug] PHP Notice: in file /topiclist.php on line 47: Undefined index: topiclist_fx_enable
La verdad, es que no se para que se usa esa variable (esta desde la ultima version del MOD 1.0.2), aparte de en el topiclist.php no veo que esa variable este en ningun archivo de mas, así que no se por qué lanza bug de esa variable, y evidentemente, también desconozco la solucion :| :roll:

Avatar de Usuario
Leviatan21
Lider phpBB Argentina
Lider phpBB Argentina
Mensajes: 1993
Registrado: Mié Nov 25, 2009 4:43 pm
Ubicación: Buenos Aires, Argentina
Contactar:

Re: MOD Topiclist ~ Configuración ACP e instalador

Mensaje sin leer por Leviatan21 » Mar Jun 14, 2011 4:56 pm

Código: Seleccionar todo

// Topiclist enable
$topiclist_enable = (isset($config['topiclist_enable'])) ? $config['topiclist_enable'] : 0;
$topiclist_enable = request_var('topiclist_enable', $topiclist_enable);
La segunda vez que verificas la variable con request_var estaría demás a menos que pretendas deshabilitarlo "en linea" como si fueras a hacer una prueba ;)

¿ Cual es la variable que debes chequear para saber si el MOD está Habilitado ?
$config['topiclist_fx_enable'] o $config['topiclist_enable']

Al parecer la variable $config['topiclist_fx_enable'] es un remanente de la version anterior, y estaría demás ahora que utilizas $config['topiclist_enable'] en el acp_topiclist.php :ugeek:
Lea las reglas | Nosotros | Acerca de phpBB | Descargas | Soporte | Blog
Ex Miembro del Equipo QA en phpbb.com
No se brindará soporte por Mensaje Privado, por favor pregunte en un tema público, tenga en cuenta que su problema puede ser también un problema para otros ;)

Avatar de Usuario
Saske
Ex Miembro del Equipo
Mensajes: 258
Registrado: Sab Feb 05, 2011 9:30 am
Ubicación: España
Contactar:

Re: MOD Topiclist ~ Configuración ACP e instalador

Mensaje sin leer por Saske » Mié Jun 15, 2011 11:47 am

Leviatan21 escribió:

Código: Seleccionar todo

// Topiclist enable
$topiclist_enable = (isset($config['topiclist_enable'])) ? $config['topiclist_enable'] : 0;
$topiclist_enable = request_var('topiclist_enable', $topiclist_enable);
La segunda vez que verificas la variable con request_var estaría demás a menos que pretendas deshabilitarlo "en linea" como si fueras a hacer una prueba ;)
Gracias por el "aviso" /información ;)
Leviatan21 escribió: ¿ Cual es la variable que debes chequear para saber si el MOD está Habilitado ?
$config['topiclist_fx_enable'] o $config['topiclist_enable']

Al parecer la variable $config['topiclist_fx_enable'] es un remanente de la version anterior, y estaría demás ahora que utilizas $config['topiclist_enable'] en el acp_topiclist.php :ugeek:
La variable $config['topiclist_enable']
Entonces, puedo eliminar esta linea

Código: Seleccionar todo

   'TOPICLIST'         => ($config['topiclist_fx_enable']) ? true : false,
?¿ :?:

Avatar de Usuario
Leviatan21
Lider phpBB Argentina
Lider phpBB Argentina
Mensajes: 1993
Registrado: Mié Nov 25, 2009 4:43 pm
Ubicación: Buenos Aires, Argentina
Contactar:

Re: MOD Topiclist ~ Configuración ACP e instalador

Mensaje sin leer por Leviatan21 » Mié Jun 15, 2011 12:07 pm

Saske escribió:La variable $config['topiclist_enable']
Entonces, puedo eliminar esta linea
Si en tu version no la utilizas, si eliminala
Lea las reglas | Nosotros | Acerca de phpBB | Descargas | Soporte | Blog
Ex Miembro del Equipo QA en phpbb.com
No se brindará soporte por Mensaje Privado, por favor pregunte en un tema público, tenga en cuenta que su problema puede ser también un problema para otros ;)

Avatar de Usuario
Saske
Ex Miembro del Equipo
Mensajes: 258
Registrado: Sab Feb 05, 2011 9:30 am
Ubicación: España
Contactar:

Re: MOD Topiclist ~ Configuración ACP e instalador

Mensaje sin leer por Saske » Mié Jun 15, 2011 1:00 pm

Leviatan21 escribió:
Saske escribió:La variable $config['topiclist_enable']
Entonces, puedo eliminar esta linea
Si en tu version no la utilizas, si eliminala
Ya elimine esa linea, pero sigo con el problema de que en el instalador algo falla, por qué ahora, no solo no me añade el modulo automaticamente en el ACP, si no que (al menos con firefox 4) no "funciona"
Es decir, sale digamos el overall_header.html y overall_footer.html del UMIL, pero no sale nada para instalarlo (anteriormente ya te deje el codigo del instalador)

Código: Seleccionar todo

<?php
    /**
    *
    * @author Saske1 (Salva) salva_bxt@hotmail.com
    * @version $Id$
    * @copyright (c) 2011 phpBBSaske
    * @license http://opensource.org/licenses/gpl-license.php GNU Public License
    *
    */

    /**
    * @ignore
    */
    define('UMIL_AUTO', true);
    define('IN_PHPBB', true);
    $phpbb_root_path = (defined('PHPBB_ROOT_PATH')) ? PHPBB_ROOT_PATH : './';
    $phpEx = substr(strrchr(__FILE__, '.'), 1);

    include($phpbb_root_path . 'common.' . $phpEx);
    $user->session_begin();
    $auth->acl($user->data);
    $user->setup();


    if (!file_exists($phpbb_root_path . 'umil/umil_auto.' . $phpEx))
    {
       trigger_error('Please download the latest UMIL (Unified MOD Install Library) from: <a href="http://www.phpbb.com/mods/umil/">phpBB.com/mods/umil</a>', E_USER_ERROR);
    }

    // The name of the mod to be displayed during installation.
    $mod_name = 'Topiclist';

    /*
    * The name of the config variable which will hold the currently installed version
    * UMIL will handle checking, setting, and updating the version itself.
    */
    $version_config_name = 'tl_version';


    // The language file which will be included when installing
    $language_file = 'mods/info_acp_topiclist';


    /*
    * Optionally we may specify our own logo image to show in the upper corner instead of the default logo.
    * $phpbb_root_path will get prepended to the path specified
    * Image height should be 50px to prevent cut-off or stretching.
    */
    //$logo_img = 'styles/prosilver/imageset/site_logo.gif';

    /*
    * The array of versions and actions within each.
    * You do not need to order it a specific way (it will be sorted automatically), however, you must enter every version, even if no actions are done for it.
    *
    * You must use correct version numbering.  Unless you know exactly what you can use, only use X.X.X (replacing X with an integer).
    * The version numbering must otherwise be compatible with the version_compare function - http://php.net/manual/en/function.version-compare.php
    */
    $versions = array(
       '1.0.3' => array(
          // Add the modules
          'module_add' => array(
             // ACP Module
             array('acp', 'ACP_BOARD_CONFIGURATION', array(
                'module_enabled'   => 1,
                'module_display'   => 1,
                'module_langname'   => 'ACP_TOPICLIST_INDEX_TITLE',
             )),
          ),
       ),

    );

    // Include the UMIL Auto file, it handles the rest
    include($phpbb_root_path . 'umil/umil_auto.' . $phpEx);
Por qué no funciona ?¿ :roll:

Avatar de Usuario
Leviatan21
Lider phpBB Argentina
Lider phpBB Argentina
Mensajes: 1993
Registrado: Mié Nov 25, 2009 4:43 pm
Ubicación: Buenos Aires, Argentina
Contactar:

Re: MOD Topiclist ~ Configuración ACP e instalador

Mensaje sin leer por Leviatan21 » Mié Jun 15, 2011 2:08 pm

Código: Seleccionar todo

$version_config_name = 'tl_version';
para ser consistente con la variable de habilitar/deshabilitar yo usaría $version_config_name = 'topiclist_mod_version'; o $version_config_name = 'topiclist_version';
Saske escribió:Por qué no funciona ?¿ :roll:
Si tu versiín de php es menor a 5 necesitas el cierre de la etiqueta php al final ?>

Y ya que estas com UMIL, puedes agregar la variable de habilitar/deshabilitar :

Código: Seleccionar todo

	$versions = array(
		'1.0.3' => array(
			// Add the modules
			'module_add' => array(
				// ACP Module
				array('acp', 'ACP_BOARD_CONFIGURATION', array(
					'module_enabled'	=> 1,
					'module_display'	=> 1,
					'module_langname'	=> 'ACP_TOPICLIST_INDEX_TITLE',
				)),
			),
			// Lets add a config setting 
			'config_add' => array(
				array('topiclist_enable', '1'),
			),
		),
	);
Lea las reglas | Nosotros | Acerca de phpBB | Descargas | Soporte | Blog
Ex Miembro del Equipo QA en phpbb.com
No se brindará soporte por Mensaje Privado, por favor pregunte en un tema público, tenga en cuenta que su problema puede ser también un problema para otros ;)

Avatar de Usuario
Saske
Ex Miembro del Equipo
Mensajes: 258
Registrado: Sab Feb 05, 2011 9:30 am
Ubicación: España
Contactar:

Re: MOD Topiclist ~ Configuración ACP e instalador

Mensaje sin leer por Saske » Mié Jun 15, 2011 2:56 pm

Leviatan21 escribió:

Código: Seleccionar todo

$version_config_name = 'tl_version';
para ser consistente con la variable de habilitar/deshabilitar yo usaría $version_config_name = 'topiclist_mod_version'; o $version_config_name = 'topiclist_version';
Gracias por el "consejo", al final me he decidido por poner $version_config_name = 'topiclist_version'; ;)
Leviatan21 escribió: Si tu versiín de php es menor a 5 necesitas el cierre de la etiqueta php al final ?>

Y ya que estas com UMIL, puedes agregar la variable de habilitar/deshabilitar :

Código: Seleccionar todo

	$versions = array(
		'1.0.3' => array(
			// Add the modules
			'module_add' => array(
				// ACP Module
				array('acp', 'ACP_BOARD_CONFIGURATION', array(
					'module_enabled'	=> 1,
					'module_display'	=> 1,
					'module_langname'	=> 'ACP_TOPICLIST_INDEX_TITLE',
				)),
			),
			// Lets add a config setting 
			'config_add' => array(
				array('topiclist_enable', '1'),
			),
		),
	);
Si, así es, donde lo estaba probando, la version de php es inferior a 5.X.X, ahora mismo lo he probado en otro sitio, y si ha funcionado :roll:
Ya añadí eso otro al instaaldor también ;)
Muchas Gracias Gabriel, tema solucionado :mrgreen:
(Si quieres, como hice en el index tabbed, y aré en el atlas, te puedo incluir como "Co-Autor" :?:)

Avatar de Usuario
Leviatan21
Lider phpBB Argentina
Lider phpBB Argentina
Mensajes: 1993
Registrado: Mié Nov 25, 2009 4:43 pm
Ubicación: Buenos Aires, Argentina
Contactar:

Re: MOD Topiclist ~ Configuración ACP e instalador

Mensaje sin leer por Leviatan21 » Mié Jun 15, 2011 3:14 pm

Saske escribió:Muchas Gracias Gabriel, tema solucionado :mrgreen:
Cierro tema :arrow:
Saske escribió:(Si quieres, como hice en el index tabbed, y aré en el atlas, te puedo incluir como "Co-Autor" :?:
No es necesario, prestar ayuda no me hace co-autor, 8-)
Lea las reglas | Nosotros | Acerca de phpBB | Descargas | Soporte | Blog
Ex Miembro del Equipo QA en phpbb.com
No se brindará soporte por Mensaje Privado, por favor pregunte en un tema público, tenga en cuenta que su problema puede ser también un problema para otros ;)

Cerrado