Uutiset:

Bored?  Looking to kill some time?  Want to chat with other SMF users?  Join us in IRC chat or Discord

Main Menu
Advertisement:

Ayuda con Parser de Hide Tag Special

Aloittaja gioyik, marraskuu 12, 2010, 11:08:54 AP

« edellinen - seuraava »

gioyik

Bueno...

Mi problema es que instalo Hide Tag Special en foro SMF 2.0 RC 4 (HideTagSpecial236_(2.0RC3_Compatible).zip) y pues me da unos errores en Manage Post y Subs los dos en la primera modificacion que es la de añadir en Manage Post y remplazar en Subs son las primeras modificaciones...

Bueno la cosa es que trato de instalarlo con el Parser el de Manage Post y no encuentro la linea que debo buscar para agregar la siguiente y es:

Buscar

'posts' => array('ModifyPostSettings', 'admin_forum'),

Remplazar por

'posts' => array('ModifyPostSettings', 'admin_forum'),
'hidetagspecial' => array('ModifyHideTagSpecialSettings', 'admin_forum'),


No encuentro lo mprimero... que puedo hacr necesito este mod....

Igual pasa con el Subs:

Buscar:

static $disabled;

Agregar Despues


// On the first Parsing i will gernerate all things i need ;) after that it's not needable :)
if (!isset($modSettings['hide_preparedOption']))
{
// First there is nothing in it ;)
$modSettings['hide_preparedOption']['hiddentext'] = ' ';
$modSettings['hide_preparedOption']['unhiddentext'] = ' ';

if (empty($modSettings['hide_noinfoforguests']) || !$user_info['is_guest'])
{
// Prepare the hidden information :)
$modSettings['hide_preparedOption']['hiddentext'] = isset($modSettings['hide_hiddentext']) ? $modSettings['hide_hiddentext'] : '';
$modSettings['hide_preparedOption']['hiddentext'] = str_replace('$language', $user_info['language'], $modSettings['hide_preparedOption']['hiddentext']);
if (!empty($modSettings['hide_MUIswitch']) && isset($txt['hide_hiddentext']))
$modSettings['hide_preparedOption']['hiddentext'] = str_replace('$txtvariable', $txt['hide_hiddentext'], $modSettings['hide_preparedOption']['hiddentext']);
if (!empty($modSettings['hide_enableHTML']))
$modSettings['hide_preparedOption']['hiddentext'] = un_htmlspecialchars($modSettings['hide_preparedOption']['hiddentext']);

// Prepare the unhidden infomation?
if (!empty($modSettings['hide_enableUnhiddenText']))
{
$modSettings['hide_preparedOption']['unhiddentext'] = isset($modSettings['hide_unhiddentext']) ? $modSettings['hide_unhiddentext'] : '';
$modSettings['hide_preparedOption']['unhiddentext'] = str_replace('$language', $user_info['language'], $modSettings['hide_preparedOption']['unhiddentext']);
if (!empty($modSettings['hide_MUIswitch']) && isset($txt['hide_unhiddentext']))
$modSettings['hide_preparedOption']['unhiddentext'] = str_replace('$txtvariable', $txt['hide_unhiddentext'], $modSettings['hide_preparedOption']['unhiddentext']);
if (!empty($modSettings['hide_enableHTML']))
$modSettings['hide_preparedOption']['unhiddentext'] = un_htmlspecialchars($modSettings['hide_preparedOption']['unhiddentext']);
}
}

// So prepare the unhidden Option for the Parser ;)
if (!empty($modSettings['hide_useSpanTag']))
{
$modSettings['hide_preparedOption']['before_info'] = '<span class="hiddencontent">';
$modSettings['hide_preparedOption']['after_info'] = '</span>';
}
else
{
$modSettings['hide_preparedOption']['before_info'] = '<div class="hiddencontent">';
$modSettings['hide_preparedOption']['after_info'] = '</div>';
}

// Okay Let's see where i must put the unhidden Informations :)
if (!empty($modSettings['hide_enableUnhiddenText']) && empty($modSettings['hide_onlyonetimeinfo']))
{
if (empty($modSettings['hide_posUnhiddenText']) || $modSettings['hide_posUnhiddenText'] == 4)
$modSettings['hide_preparedOption']['after_info'] .= $modSettings['hide_preparedOption']['unhiddentext'];
elseif ($modSettings['hide_posUnhiddenText'] == 3)
$modSettings['hide_preparedOption']['after_info'] = $modSettings['hide_preparedOption']['unhiddentext'].$modSettings['hide_preparedOption']['after_info'];
elseif ($modSettings['hide_posUnhiddenText'] == 2)
$modSettings['hide_preparedOption']['before_info'] .= $modSettings['hide_preparedOption']['unhiddentext'];
elseif ($modSettings['hide_posUnhiddenText'] == 1)
$modSettings['hide_preparedOption']['before_info'] = $modSettings['hide_preparedOption']['unhiddentext'].$modSettings['hide_preparedOption']['before_info'];
else
$modSettings['hide_preparedOption']['after_info'] .= $modSettings['hide_preparedOption']['unhiddentext'];
}

$modSettings['hide_preparedOption']['parse_content'] = !empty($modSettings['hide_enableUnhiddenText']) && empty($modSettings['hide_onlyonetimeinfo']);

// Okay this is the check up if he is allowed to unhide it everytime! (Risky if wrong setup or diffrent mods can handle hide tag)
$modSettings['hide_preparedOption']['auto_unhide_parser'] = false;
if (!empty($modSettings['hide_unhideparser']) && !empty($modSettings['hide_autounhidegroups']))
{
$modSettings['hide_autounhidegroups'] = !is_array($modSettings['hide_autounhidegroups']) ? explode(',', $modSettings['hide_autounhidegroups']) : $modSettings['hide_autounhidegroups'];
foreach ($user_info['groups'] as $group_id)
if (in_array($group_id, $modSettings['hide_autounhidegroups']))
{
$modSettings['hide_preparedOption']['auto_unhide_parser'] = true;
break; //One is enouph ;D
}
}
}

// Hide Mod.. i remove the code before i do anything...
if ($message !== false && !empty($message))
{
if ($modSettings['hide_preparedOption']['auto_unhide_parser'])
$context['user_post_avaible'] = 1;
// Add the Hidden Text at the end of the post :)
if ((empty($context['user_post_avaible']) || !isset($context['user_post_avaible'])) && !empty($modSettings['hide_onlyonetimeinfo']) && hideTagExists($message, $cache_id))
$message .= '[br]'.$modSettings['hide_preparedOption']['hiddentext'];
// Here i remove this content :) or show onetime unhide info :)
if (!isset($context['user_post_avaible']) || empty($context['user_post_avaible']))
{
// Remove it ;D
$message = preg_replace("/\[hide\](.+?)\[\/hide\]/i", (empty($modSettings['hide_onlyonetimeinfo']) ? $modSettings['hide_preparedOption']['hiddentext'] : "&nbsp"), $message);
$message = preg_replace(array('~\n?\[hide.*?\].+?\[/hide\]\n?~is', '~^\n~', '~\[/hide\]~'), (empty($modSettings['hide_onlyonetimeinfo']) ? $modSettings['hide_preparedOption']['hiddentext'] : "&nbsp"), $message);
}
// Okay i need to add the unhidden information at the end of the post :)
elseif (!empty($context['user_post_avaible']) && !empty($modSettings['hide_onlyonetimeinfo']) && !empty($modSettings['hide_enableUnhiddenText']) && hideTagExists($message, $cache_id))
$message .= '[br]'.$modSettings['hide_preparedOption']['unhiddentext'];
}


No lo encuentro tampoco... talves me puedan ayudar...

Adjunto los archivos...

Gracias...

All Colours Sam

la primera esta en la linea 75:

'posts' => 'ModifyPostSettings',



la otra esta en la linea 905:

static $disabled, $default_disabled, $parse_tag_cache;



de sus respectivos archivos
Oh, wouldn't it be great if I *was* crazy? ...then the world would be okay
Suki

gioyik

Gracias por la ayuda....

Bueno pues doy por resuelto el tema si pasa algo lo revivo y le quito el check...

Saludos...

gioyik

Bueno pues me dio error en la parte de administracion y en el archivo ManagePosts.php on line 112...

Que puedo hacer....

All Colours Sam

que error te dio?

ya instalaste el mod?  apenas lo vas a instalar?

ajunta aqui tu archivo de nuevo para ver que modificaicones se le hicieron.
Oh, wouldn't it be great if I *was* crazy? ...then the world would be okay
Suki

gioyik

ahi estan los archivos moficados con el parser y si ya esta instalado...

Saludos..

All Colours Sam

que error te da?


prueba con este pero sin saber que error te da es dificil ayudarte
Oh, wouldn't it be great if I *was* crazy? ...then the world would be okay
Suki

gioyik

Mira este es mi error...

Fatal error: Function name must be a string in /home/darksyst/public_html/Sources/ManagePosts.php on line 112

All Colours Sam

Oh, wouldn't it be great if I *was* crazy? ...then the world would be okay
Suki

gioyik


All Colours Sam

bueno, el error es porque espera un string (texto)  como subaccion:   action?=post,sa=subaccion  entonces el mod agrega un array:

'hidetagspecial' => array('ModifyHideTagSpecialSettings', 'admin_forum'),


que son dos parametros,   entonces pense que cambiandolo a una string:

'hidetagspecial' => 'ModifyHideTagSpecialSettings',



se solucionaria el problema ya que la subaccion solo seria esa string pero dices que el error sigue igual.


quiza se tengan que hacer mas cambios, en ese caso tendrás que esperar a que el autor del mod lo actualice.
Oh, wouldn't it be great if I *was* crazy? ...then the world would be okay
Suki

gioyik


Advertisement: