Autor Tópico: Invite Mod  (Lida 10926 vezes)

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

Offline candidosa2

  • Suporte Tecnico
  • Fundador
  • *
  • Mensagens: 5073
  • Rank: 1658
  • Sexo: Masculino
  • Suporte
    • Hosting Moçambique
Invite Mod
« em: 11 de Novembro de 2007, 14:47 »
forum/index.php

Código: [Seleccione]
'jsoption' => array('Themes.php', 'SetJavaScript'),

Código: [Seleccione]
'invite' => array('Invite.php', 'InviteMain'),
Sources/ModSettings.php

Código: [Seleccione]
$context['sub_template'] = 'show_settings';

$subActions = array(

Código: [Seleccione]
'invite' => 'ModifyInviteSettings',
Código: [Seleccione]
require_once($sourcedir . '/ManageServer.php');

$subActions = array(

Código: [Seleccione]
'invite' => 'ModifyInviteSettings',
Código: [Seleccione]
'layout' => array(
'title' => $txt['mods_cat_layout'],
'href' => $scripturl . '?action=featuresettings;sa=layout;sesc=' . $context['session_id'],
),

Código: [Seleccione]
'invite' => array(
'title' => $txt['invite_title'],
'href' => $scripturl . '?action=featuresettings;sa=invite;sesc=' . $context['session_id'],
),


Código: [Seleccione]
function ModifyKarmaSettings()

Código: [Seleccione]
// Invite MOD
function ModifyInviteSettings()
{
global $sourcedir;
require_once($sourcedir . '/Invite.php');
InviteSettings();
}

Sources/ManagePermissions.php

Código: [Seleccione]
$groupLevels['global']['restrict'] = array(
Código: [Seleccione]
'invitees_any',
Código: [Seleccione]
$groupLevels['global']['standard'] = array_merge($groupLevels['global']['restrict'], array(
Código: [Seleccione]
'invite',
'invite_unlimited',
'invitees_own',

Código: [Seleccione]
'pm' => array(
'pm_read' => false,
'pm_send' => false,
),


Código: [Seleccione]
'invite' => array(
'invite' => false,
'invite_unlimited' => false,
'invitees' => true,
),

Código: [Seleccione]
$non_guest_permissions = array(
Código: [Seleccione]
'invite',
'invite_unlimited',

Sources/Register.php

Código: [Seleccione]
// Check if the administrator has it disabled.
if (!empty($modSettings['registration_method']) && $modSettings['registration_method'] == 3)
fatal_lang_error('registration_disabled', false);

Código: [Seleccione]
// Invite MOD; check if we're only accepting invites, and if so check for a valid invite key.
global $sourcedir;
require_once($sourcedir . '/Invite.php');
$context['invite_key'] = validateInviteKey(empty($_REQUEST['invite_key']) ? '' : $_REQUEST['invite_key'], !empty($modSettings['invite_only']));

Código: [Seleccione]
// You can't register if it's disabled.
if (!empty($modSettings['registration_method']) && $modSettings['registration_method'] == 3)
fatal_lang_error('registration_disabled', false);

Código: [Seleccione]
// Invite MOD; check if we're only accepting invites, and if so check for a valid invite key.
global $sourcedir;
require_once($sourcedir . '/Invite.php');
$context['invite_key'] = validateInviteKey(empty($_REQUEST['invite_key']) ? '' : $_REQUEST['invite_key'], !empty($modSettings['invite_only']));

Código: [Seleccione]
$memberID = registerMember($regOptions);
Código: [Seleccione]
// Invite MOD; looks like registration went ok, let's mark the invite key as used and who it was used by.
if ($context['invite_key'] !== false)
{
db_query("
UPDATE {$db_prefix}invites
SET ID_REGISTRATION = '$memberID'
WHERE inviteKey = '{$context['invite_key']}'
LIMIT 1", __FILE__, __LINE__);
}
elseif (!empty($_REQUEST['inviter']) && (int)$_REQUEST['inviter'] !== 0)
{
db_query("
INSERT INTO {$db_prefix}invites (ID_MEMBER, ID_REGISTRATION, inviteTime)
VALUES ('" . (int)$_REQUEST['inviter'] . "', '$memberID', " . time() . ")
", __FILE__, __LINE__);
}

Sources/Memberlist.php

Código: [Seleccione]
// They're searching..
if (isset($_REQUEST['search']) && isset($_REQUEST['fields']))

Código: [Seleccione]
// Invite MOD.  Not really a user search, just using the fine table and such that's already here for the invitees list...
if (isset($_REQUEST['inviter']) && loadMemberData(array($_REQUEST['inviter'])))
{
global $user_profile;

if (($_REQUEST['inviter'] == $context['user']['id'] && !allowedTo('invitees_own')) || !allowedTo('invitees_any'))
fatal_lang_error('invitees_any', false);

// Just to let the members know it's not really a search.
$context['page_title'] = $txt['invited_by'] . ' ' . $user_profile[$_REQUEST['inviter']]['realName'];
$context['sort_links'][1]['label'] = $context['page_title'];

// We need this so it thinks it's a regular search and won't be all ******y about variables...
$context['old_search'] = '';
$context['old_search_value'] = '';

// Find the number of results.
$request = db_query("
SELECT COUNT(*)
FROM {$db_prefix}members AS mem
LEFT JOIN {$db_prefix}invites AS inv ON (inv.ID_REGISTRATION = mem.ID_MEMBER)
WHERE inv.ID_MEMBER = $_REQUEST[inviter]
AND is_activated = 1", __FILE__, __LINE__);
list ($numResults) = mysql_fetch_row($request);
mysql_free_result($request);

$context['page_index'] = constructPageIndex($scripturl . '?action=mlist;sa=search;inviter=' . $_GET['inviter'], $_REQUEST['start'], $numResults, $modSettings['defaultMaxMembers']);

// Find the members from the database.
// !!!SLOW This query is slow.
$request = db_query("
SELECT mem.ID_MEMBER
FROM {$db_prefix}members AS mem
LEFT JOIN {$db_prefix}invites AS inv ON (inv.ID_REGISTRATION = mem.ID_MEMBER)
LEFT JOIN {$db_prefix}log_online AS lo ON (lo.ID_MEMBER = mem.ID_MEMBER)
LEFT JOIN {$db_prefix}membergroups AS mg ON (mg.ID_GROUP = IF(mem.ID_GROUP = 0, mem.ID_POST_GROUP, mem.ID_GROUP))
WHERE inv.ID_MEMBER = $_REQUEST[inviter]
AND is_activated = 1
LIMIT $_REQUEST[start], $modSettings[defaultMaxMembers]", __FILE__, __LINE__);
printMemberListRows($request);
mysql_free_result($request);
} // End Invite MOD.
// They're really doing a search.
elseif (isset($_REQUEST['search']) && isset($_REQUEST['fields']))


Sources/Stats.php

Código: [Seleccione]
// Activity by month.
Código: [Seleccione]
// Invite MOD.  Top 10 Inviters.
global $sourcedir;
require_once($sourcedir . '/Invite.php');
InviteStats();
// End Invite MOD.

Sources/Profile.php

Código: [Seleccione]
// This block is only concerned with email address validation..
Código: [Seleccione]
// Invite MOD.  Change the number of inviter.
if (!empty($_POST['inviter']) && (int)$_POST['inviter'] != 0 && (int)$_POST['inviter'] != $memID && allowedTo('moderate_forum'))
{
global $sourcedir;
require_once($sourcedir . '/Invite.php');

if (inviter($memID))
db_query("
UPDATE {$db_prefix}invites SET ID_MEMBER = {$_POST['inviter']}
WHERE ID_REGISTRATION = $memID
LIMIT 1", __FILE__, __LINE__);
else
db_query("
INSERT INTO {$db_prefix}invites (ID_MEMBER, ID_REGISTRATION)
VALUES ({$_POST['inviter']}, $memID)", __FILE__, __LINE__);
}
elseif (isset($_POST['inviter']) && empty($_POST['inviter']))
{
db_query("
DELETE FROM {$db_prefix}invites
WHERE ID_REGISTRATION = $memID
LIMIT 1", __FILE__, __LINE__);
}

/index.template.php

Código: [Seleccione]
)))
$current_action = $context['current_action'];

Código: [Seleccione]
, 'invite'
Código: [Seleccione]
// If the user is a guest, show [login] button.
Código: [Seleccione]
// Invite MOD.
if (allowedTo('invite'))
{
global $modSettings;
echo ($current_action == 'invite' || $context['browser']['is_ie4']) ? '<td class="maintab_active_' . $first . '">&nbsp;</td>' : '' , '
<td valign="top" class="maintab_' , $current_action == 'invite' ? 'active_back' : 'back' , '">
<a href="', $scripturl, '?action=invite">' , (!empty($modSettings['invite_menu_title']) ? $modSettings['invite_menu_title'] : $txt['invite_title']) , '</a>
</td>' , $current_action == 'invite' ? '<td class="maintab_active_' . $last . '">&nbsp;</td>' : '';
}


/Profile.template.php

Código: [Seleccione]
<td>', $context['member']['registered'], '</td>
</tr><tr>
<td><b>', $txt['lastLoggedIn'], ': </b></td>

Código: [Seleccione]
<td>', $context['member']['registered'], '</td>
</tr>';

// Invite MOD.
global $sourcedir;
require_once($sourcedir . '/Invite.php');
if (($context['user']['is_owner'] && allowedTo('invitees_own')) || allowedTo('invitees_any'))
{
if (inviter($context['member']['id']))
echo '
<tr>
<td><b>', $txt['invited_by'], ': </b></td>
<td><a href="', $scripturl, '?action=profile;u=', $context['member']['invited_by'], '">', $context['member']['invited_by_name'], '</a></td>
</tr>';

if ($context['member']['invitees_count'] = invitees($context['member']['id']))
echo '
<tr>
<td><b>', $txt['invitees_count'], ': </b></td>
<td><a href="', $scripturl, '?action=mlist;sa=search;inviter=', $context['member']['id'], '">', $context['member']['invitees_count'], '</a></td>
</tr>';
}
// End Invite MOD.

echo '
<tr>
<td><b>', $txt['lastLoggedIn'], ': </b></td>


Código: [Seleccione]
// Only display if admin has enabled "user selectable language".
Código: [Seleccione]
// Invite MOD.  Allow the administrator to change the inviter.
if ($context['user']['is_admin'])
{
global $sourcedir;
require_once($sourcedir . '/Invite.php');
echo '
<tr>
<td><b>', $txt['invited_by'], ' (ID): </b></td>
<td><input type="text" name="inviter" size="4" value="', inviter($context['member']['id']), '" /></td>
</tr>';
}

/Stats.template.php

Código: [Seleccione]
</tr><tr>
<td class="catbg" colspan="4"><b>', $txt['smf_stats_5'], '</b></td>

Código: [Seleccione]
</tr><tr>
<td class="catbg" colspan="2" width="50%"><b>', $txt['top_inviters'], '</b></td>
<td class="catbg" colspan="2" width="50%"><b>', $txt['top_inviters_by_posts'], '</b></td>
</tr><tr>
<td class="windowbg" width="20" valign="middle" align="center"><img src="', $settings['images_url'], '/stats_posters.gif" width="20" height="20" alt="" /></td>
<td class="windowbg2" width="50%" valign="top">
<table border="0" cellpadding="1" cellspacing="0" width="100%">';
foreach ($context['top_inviters'] as $inviter)
echo '
<tr>
<td width="60%" valign="top">', $inviter['link'], '</td>
<td width="20%" align="left" valign="top">', $inviter['num'] > 0 ? '<img src="' . $settings['images_url'] . '/bar.gif" width="' . $inviter['percent'] . '" height="15" alt="" />' : '&nbsp;', '</td>
<td width="20%" align="right" valign="top">', $inviter['num'], '</td>
</tr>';
echo '
</table>
</td>

/Register.template.php

Código: [Seleccione]
echo '
<br />
<div align="center">
<input type="submit" name="regSubmit" value="', $txt[97], '" />
</div>

Código: [Seleccione]
// Invite MOD
if (!empty($context['invite_key']))
echo '
<input type="hidden" name="invite_key" value="', $context['invite_key'], '" />';
elseif (!empty($_REQUEST['inviter']) && (int)$_REQUEST['inviter'] !== 0)
echo '
<input type="hidden" name="inviter" value="', $_REQUEST['inviter'], '" />';

/Modifications.portuguese.php

Código: [Seleccione]
?>
Código: [Seleccione]
// Version: 1.1; Modifications translate By Candidosa2

$txt['invite_title'] = 'Convite';
$txt['invite_only'] = 'Permita somente registos através do Convite.';
$txt['invite_menu_title'] = 'Título do menu convite.';
$txt['invite_days'] = 'O número dos dias para que os membros comecem um novo crédito de convites.<div class="smalltext">(0 nenhum limite, admins e o exemplo)</div>';
$txt['invite_max'] = 'O número máximo de convites créditos.<div class="smalltext">(0 nenhum limit, admins  o exemplo)</div>';
$txt['invite_expire'] = 'Número dos dias para que uma chave convidar seja válida.<div class="smalltext">(0 nenhum limit)</div>';
$txt['invite_group_settings'] = 'Ajuste o grupo que tenha permissão para emitir convites';

$txt['invite_email_disable'] = 'Incapacite a característica de enviar email.';
$txt['invite_email_subject'] = 'E-mail assunto.';
$txt['invite_email_message'] = 'E-mail messagem.
<div class="smalltext">{invitee} = Nome do convidado</div>
<div class="smalltext">{inviter} = Nome do Anfitrião</div>
<div class="smalltext">{forum} = Nome do Forum </div>
<div class="smalltext">{link} = Ligação à página do registo (com chave)</div>
<div class="smalltext">{message} = Mensagem pelo convidado</div>';
$txt['invite_default_email_subject'] = '{invitee}, você recebeu um convite do {forum} por {inviter}!';
$txt['invite_default_email_message'] = 'Ola {invitee},

Acabou de receber um convite para {forum}, clica no link para efectuares o registo:

{link}

{inviter} também enviou este comentário para si:

{message}


Esta mensagem não é spam.';

$txt['invite_someone'] = 'Convide alguém';
$txt['invite_info'] = 'Você pode convidar alguém novo se você tiver permissoes para fazer uma chave nova e emitindo lhes a ligação.';
$txt['invite_link'] = 'Podes convidar alguém enviando-lhe o link seguinte.';
$txt['invitees'] = 'Convidados';
$txt['invitees_info'] = 'A seguinte lista dos membros que você convidou.';
$txt['no_invitees'] = 'Não há nenhum convidado a indicar';
$txt['invite_unlimited'] = 'ilimitado';
$txt['invite_max_reached'] = 'o máximo alcançando';
$txt['make_new_invite_key'] = 'Faça nova chave para convidados';
$txt['invite_credits'] = 'Convidados créditos';
$txt['next_invite_credit'] = 'credito seguinte';
$txt['invite_key'] = 'Chave do convidado';
$txt['invite_email'] = 'E-mail Do convidado';
$txt['invite_send_email'] = 'Enviar E-mail ao convidado';
$txt['invite_expires'] = 'Expira';
$txt['invited_by'] = 'Convinte por';
$txt['invitees_count'] = 'Membro convidado';
$txt['show_invitees'] = 'Mostre os membros convidados por esta pessoa';


$txt['invite_email_info'] = 'Enter o nome e o email da pessoa que você deseja convidar, e a ligação convidar ser-lhes-á emitida.';
$txt['invite_recipient_name'] = 'Nome do convidado';
$txt['invite_recipient_email'] = 'e-mail do convidado';
$txt['invite_message'] = 'Mensagem pessoal ao receptor';
$txt['invite_sent'] = 'O Convite foi enviado.';

$txt['invite_no_name'] = 'Você não deu entrada do nome.';
$txt['invite_no_email'] = 'Você não incorporou o endereço válido de E-mail.';
$txt['cannot_send_invite'] = 'Desculpa, a chave não pode ser enviada (talvez ja foi enviada?).';

$txt['permissiongroup_invite'] = 'Convite';
$txt['permissionname_invite'] = 'Convite';
$txt['permissionhelp_invite'] = 'Quando o forum é ajustado para aceitar registos pelo convite somente, esta permissão permitirá que um groupo convide pessoas ao forum assim e que podem se registar.';
$txt['permissionname_invite_unlimited'] = 'convites ilimitados';
$txt['permissionhelp_invite_unlimited'] = 'Quando o forum é ajustado para aceitar registos pelo convites somente, esta permissão permitirá que um groupo tenha ilimitado convites a créditar.';
$txt['permissionname_invitees'] = 'Ver convidados';
$txt['permissionhelp_invitees'] = 'Isto mostrará uma lista dos membros que o usuário convidou ao forum usando a modificação convidar.';
$txt['permissionname_invitees_own'] = 'Proprios convites';
$txt['permissionname_invitees_any'] = 'qualquer convite';

$txt['cannot_invite'] = 'Desculpa, nao tem permissao para enviar convites.';
$txt['cannot_invite_as_other'] = 'Desculpa, nao tem permissao para enviar convite para qualquer pessoa.';
$txt['cannot_invitees_any'] = 'Desculpa, nao tem permissoa para ver os membros convidados.';
$txt['registration_invite_only'] = 'Desculpa, o registo so por convite.<br /><br />se tiver uma chave certa coloque para enviar:<br /><form method="POST" action="index.php?action=register"><input type="text" name="invite_key" size="40"> <input type="submit" value="Register"></form>';
$txt['registration_invite_expired'] = 'Desculpa, a chave para convidar expirou.';

$txt['top_inviters'] = 'Top convidados (por Convidados)';
$txt['top_inviters_by_posts'] = 'Top Convidados (Por poste de convidados)';
// End Invite MOD.

Offline aalex

  • Smfpt em 10%
  • *
  • Mensagens: 258
  • Rank: 8
Re:Invite Mod
« Responder #1 em: 18 de Abril de 2009, 15:50 »
funciona para a versao 2.0rc1??   precisava dele urgente ou outro do genero, pro registo funcionar por convite noT noT

Offline aalex

  • Smfpt em 10%
  • *
  • Mensagens: 258
  • Rank: 8
Re:Invite Mod
« Responder #2 em: 19 de Abril de 2009, 14:12 »
sera q alguem me poderia ajudar???????????  shocked shocked shocked

Offline candidosa2

  • Suporte Tecnico
  • Fundador
  • *
  • Mensagens: 5073
  • Rank: 1658
  • Sexo: Masculino
  • Suporte
    • Hosting Moçambique
Re:Invite Mod
« Responder #3 em: 19 de Abril de 2009, 14:36 »
Nao funciona nao...
vou ver se consigo arranjar para 2.rc1

Offline aalex

  • Smfpt em 10%
  • *
  • Mensagens: 258
  • Rank: 8
Re:Invite Mod
« Responder #4 em: 19 de Abril de 2009, 14:57 »
Nao funciona nao...
vou ver se consigo arranjar para 2.rc1


ok faça-me esse favor entao se puder


e pk estou precisando disso urgente, e para um site q tenho de criar e nao é para mim  nah nah

Offline aalex

  • Smfpt em 10%
  • *
  • Mensagens: 258
  • Rank: 8
Re:Invite Mod
« Responder #5 em: 27 de Abril de 2009, 19:16 »
ainda ninguem teve tempo de ver o meu problema???


 confused confused

Offline candidosa2

  • Suporte Tecnico
  • Fundador
  • *
  • Mensagens: 5073
  • Rank: 1658
  • Sexo: Masculino
  • Suporte
    • Hosting Moçambique
Re:Invite Mod
« Responder #6 em: 27 de Abril de 2009, 21:07 »
o problema nao e compatível com 2.rc1 ainda espera
logo que conseguir ponho aqui