Autor Tópico: [mod manual] passewdboard  (Lida 6952 vezes)

0 Membros e 1 Visitante estão a ver este tópico.

Offline aalex

  • Smfpt em 10%
  • *
  • Mensagens: 258
  • Rank: 8
[mod manual] passewdboard
« em: 15 de Fevereiro de 2008, 22:26 »
Password Protect Boards

ficheiros em anexo
Código: [Seleccione]

antes de mais nada mandar o passwdBoard.php para a pasta Sources

depois amndar o passwdBoard.template.php para a pasta do teu tema





agora vou por aqui as alteracoes que tem de afzer manualmente


source/Load.php

pesquisar por
Código: [Seleccione]
b.ID_THEME, b.override_theme, b.permission_mode, b.countPosts
adicionar antes
Código: [Seleccione]
, b.passwd

pesquisar por
Código: [Seleccione]
'posts_count' => empty($row['countPosts']),
adicionar antes
Código: [Seleccione]
'passwd' => $row['passwd'],

pesquisar por
Código: [Seleccione]
if ($user_info['is_mod'])
$user_info['groups'][] = 3;

adicionar antes
Código: [Seleccione]
// Can they view this board?
if ( !$user_info['is_admin'] && !$user_info['is_mod'] && $board_info['passwd'] && !in_array($board, $_SESSION['board_access']) )
{
if ( !isset($_POST['passwd']) || sha1($board_info['name'].$_POST['passwd']) != $board_info['passwd'] )
{
loadPermissions();
loadTheme();
require_once($GLOBALS['sourcedir'] . '/passwdBoard.php');
passwdBoardFailed(!empty($board) ? "board=$board" : "topic=$topic");
}
else
$_SESSION['board_access'][] = $board;
}


pesquisar por
Código: [Seleccione]
$sc = $_SESSION['rand_code'];
adicionar antes
Código: [Seleccione]
if ( !isset($_SESSION['board_access']) )
$_SESSION['board_access'] = array();




agora no source/BoardIndex.php

pesquisar por
Código: [Seleccione]
IFNULL(mods_mem.ID_MEMBER, 0) AS ID_MODERATOR, mods_mem.realName AS modRealName
adicionar antes
Código: [Seleccione]
, b.passwd

pesquisar por
Código: [Seleccione]
'href' => $scripturl . '?board=' . $row_board['ID_BOARD'] . '.0',
adicionar antes
Código: [Seleccione]
'passwd' => !empty($row_board['passwd']),



agora no source/Subs-Boards.php

pesquisar por
Código: [Seleccione]
if (isset($boardOptions['board_name']))
$boardUpdates[] = 'name = \'' . $boardOptions['board_name'] . '\'';


adicionar antes
Código: [Seleccione]

if (isset($boardOptions['passwd']))
$boardUpdates[] = 'passwd = \'' . $boardOptions['passwd'] . '\'';


pesquisar por
Código: [Seleccione]
b.permission_mode, c.ID_CAT, c.name AS cName, c.catOrder, c.canCollapse
adicionar antes
Código: [Seleccione]
, b.passwd

pesquisar por
Código: [Seleccione]
'prev_board' => $prevBoard
adicionar depois
Código: [Seleccione]
'passwd' => !empty($row['passwd']),


agora no source/ManageBoards.php

pesquisar por
Código: [Seleccione]
'override_theme' => 0,
adicionar antes
Código: [Seleccione]
'passwd' => '',

pesquisar por
Código: [Seleccione]
$boardOptions['board_description'] = preg_replace('~[&]([^;]{8}|[^;]{0,8}$)~', '&$1', $_POST['desc']);
adicionar antes
Código: [Seleccione]
if ( $_POST['passwdBoard'] != "#FAKEPASSWORD" )
$boardOptions['passwd'] = !empty($_POST['passwdBoard']) ? sha1($boardOptions['board_name'].$_POST['passwdBoard']) : '';






agora todas as alteraçoes que se seguem seram feitas nos ficheiros do teu tema

/languages/Modifications.portuguese.php

pesquisar por
Código: [Seleccione]
?>
adicionar antes
Código: [Seleccione]
$txt['passwdBoard1'] = "Palavra pass para este quadro";
$txt['passwdBoard2'] = "Deixe espaço em branco para não tem palavra pass";
$txt['passwdBoard3'] = "Introduzir Password: ";
$txt['passwdBoard4'] = "Entrar no Quadro";
$txt['passwdBoard5'] = "Este quadro esta protegido so tem acesso se colocar a palavra pass ( Password ) ";
$txt['passwdBoard6'] = "Quadro Protegido";



/ManageBoards.template.php

pesquisar por
Código: [Seleccione]
// Finish off the table.
adicionar depois
Código: [Seleccione]
echo '
<tr>
<td>
<b>', $txt['passwdBoard1'], '</b><br />
', $txt['passwdBoard2'], '<br /><br />
</td>
<td align="right">
<input type="password" name="passwdBoard" value="', $context['board']['passwd'] ? '#FAKEPASSWORD' : '', '" />
</td>
</tr>';



/BoardIndex.template.php

pesquisar por
Código: [Seleccione]
// Show some basic information about the number of posts, etc.
adicionar depois
Código: [Seleccione]
if ( !$context['user']['is_admin'] && !$context['user']['is_mod'] && !isset($board['moderators'][$context['user']['id']]) && $board['passwd'] && !in_array($board['id'], $_SESSION['board_access']) )
echo '<br/>
', $txt['passwdBoard3'], '
<form style="display:inline" action="', $board['href'], '" method="post">
<input type="password" name="passwd" />
<input type="submit" value="', $txt['passwdBoard4'], '" />
</form>';
else if ( $board['passwd'] )
echo '<img src="', $settings['images_url'], '/icons/quick_lock.gif" style="vertical-align:bottom" title="', $txt['passwdBoard6'], '" />';




aconselho vivamente a afzerem um backup antes de procederem as alteracoes pois nao serei responsabel se se enganarem


Topico criado por: aalex Nao autorizo a divulzação sem pedirem autorizaçao

Offline archa

  • Personalizador
  • *
  • Mensagens: 231
  • Rank: 7
  • Archa Publicidade ,lda
Re: [mod manual] passewdboard
« Responder #1 em: 16 de Fevereiro de 2008, 11:17 »
Bom trabalho...
 :palmas

Offline aalex

  • Smfpt em 10%
  • *
  • Mensagens: 258
  • Rank: 8
Re: [mod manual] passewdboard
« Responder #2 em: 16 de Fevereiro de 2008, 19:20 »
Bom trabalho...
 :palmas

obrigado amigo

Offline K@Kus Lda.™

  • Amigo
  • *
  • Mensagens: 16
  • Rank: 0
  • Sexo: Masculino
    • NuM3RuS pRiMuS
Re: [mod manual] passewdboard
« Responder #3 em: 22 de Novembro de 2008, 12:24 »
Viva!...

Pois mas, o anexo foi-se!...
 cry

Offline candidosa2

  • Suporte Tecnico
  • Fundador
  • *
  • Mensagens: 5073
  • Rank: 1658
  • Sexo: Masculino
  • Suporte
    • Hosting Moçambique
Re: [mod manual] passewdboard
« Responder #4 em: 22 de Novembro de 2008, 15:28 »
O Link vai ser actualizado
dentro em breve