aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--done2
-rw-r--r--include/account.php99
-rw-r--r--mod/regmod.php108
-rw-r--r--view/en/register_open_eml.tpl2
-rw-r--r--view/en/smarty3/register_open_eml.tpl2
5 files changed, 106 insertions, 107 deletions
diff --git a/done b/done
index fafcf93b1..a8a4710ef 100644
--- a/done
+++ b/done
@@ -144,7 +144,7 @@ mod/
+ randprof.php
- redir.php
+ register.php
- regmod.php
+? regmod.php
removeme.php
rsd_xml.php (what do we need this for? What functionality/feature does it enable)
search_ac.php
diff --git a/include/account.php b/include/account.php
index c8ce3e56b..530ffd083 100644
--- a/include/account.php
+++ b/include/account.php
@@ -286,3 +286,102 @@ function send_verification_email($email,$password) {
);
return($res ? true : false);
}
+
+
+function user_allow($hash) {
+
+ $a = get_app();
+
+ $ret = array('success' => false);
+
+ $register = q("SELECT * FROM `register` WHERE `hash` = '%s' LIMIT 1",
+ dbesc($hash)
+ );
+
+ if(! $register)
+ return $ret;
+
+ $account = q("SELECT * FROM account WHERE account_id = %d LIMIT 1",
+ intval($register[0]['uid'])
+ );
+
+ if(! $account)
+ return $ret;
+
+ $r = q("DELETE FROM register WHERE hash = '%s' LIMIT 1",
+ dbesc($register[0]['hash'])
+ );
+
+ $r = q("update account set account_flags = (account_flags ^ %d) where (account_flags & %d) and account_id = %d limit 1",
+ intval(ACCOUNT_BLOCKED),
+ intval(ACCOUNT_BLOCKED),
+ intval($register[0]['uid'])
+ );
+
+ $r = q("SELECT uid FROM profile WHERE uid = %d AND is_default = 1",
+ intval($account[0]['account_id'])
+ );
+
+ if($r && $r[0]['publish']) {
+ proc_run('php',"include/directory.php",$r[0]['uid']);
+ }
+
+ push_lang($register[0]['language']);
+
+ $email_tpl = get_intltext_template("register_open_eml.tpl");
+ $email_tpl = replace_macros($email_tpl, array(
+ '$sitename' => get_config('system','sitename'),
+ '$siteurl' => z_root(),
+ '$username' => $account[0]['account_email'],
+ '$email' => $account[0]['account_email'],
+ '$password' => '',
+ '$uid' => $account[0]['account_id']
+ ));
+
+ $res = mail($account[0]['account_email'], sprintf( t('Registration details for %s'), get_config('system','sitename')),
+ $email_tpl,
+ 'From: ' . t('Administrator') . '@' . $_SERVER['SERVER_NAME'] . "\n"
+ . 'Content-type: text/plain; charset=UTF-8' . "\n"
+ . 'Content-transfer-encoding: 8bit' );
+
+ pop_lang();
+
+ if($res) {
+ info( t('Account approved.') . EOL );
+ return true;
+ }
+
+}
+
+
+// This does not have to go through user_remove() and save the nickname
+// permanently against re-registration, as the person was not yet
+// allowed to have friends on this system
+
+function user_deny($hash) {
+
+ $register = q("SELECT * FROM register WHERE hash = '%s' LIMIT 1",
+ dbesc($hash)
+ );
+
+ if(! count($register))
+ return false;
+
+ $user = q("SELECT account_id FROM account WHERE account_id = %d LIMIT 1",
+ intval($register[0]['uid'])
+ );
+
+ if(! $user)
+ return false;
+
+ $r = q("DELETE FROM account WHERE account_id = %d LIMIT 1",
+ intval($register[0]['uid'])
+ );
+
+ $r = q("DELETE FROM `register` WHERE id = %d LIMIT 1",
+ dbesc($register[0]['id'])
+ );
+ notice( sprintf(t('Registration revoked for %s'), $account[0]['account_email']) . EOL);
+ return true;
+
+}
diff --git a/mod/regmod.php b/mod/regmod.php
index 3da1575d3..c54c0d88e 100644
--- a/mod/regmod.php
+++ b/mod/regmod.php
@@ -1,104 +1,6 @@
<?php
-function user_allow($hash) {
-
- $a = get_app();
-
- $register = q("SELECT * FROM `register` WHERE `hash` = '%s' LIMIT 1",
- dbesc($hash)
- );
-
-
- if(! count($register))
- return false;
-
- $user = q("SELECT * FROM `user` WHERE `uid` = %d LIMIT 1",
- intval($register[0]['uid'])
- );
-
- if(! count($user))
- killme();
-
- $r = q("DELETE FROM `register` WHERE `hash` = '%s' LIMIT 1",
- dbesc($register[0]['hash'])
- );
-
-
- $r = q("UPDATE `user` SET `blocked` = 0, `verified` = 1 WHERE `uid` = %d LIMIT 1",
- intval($register[0]['uid'])
- );
-
- $r = q("SELECT * FROM `profile` WHERE `uid` = %d AND `is_default` = 1",
- intval($user[0]['uid'])
- );
- if(count($r) && $r[0]['publish']) {
- $url = $a->get_baseurl() . '/profile/' . $user[0]['nickname'];
- if($url && strlen(get_config('system','directory_submit_url')))
- proc_run('php',"include/directory.php","$url");
- }
-
- push_lang($register[0]['language']);
-
- $email_tpl = get_intltext_template("register_open_eml.tpl");
- $email_tpl = replace_macros($email_tpl, array(
- '$sitename' => $a->config['sitename'],
- '$siteurl' => $a->get_baseurl(),
- '$username' => $user[0]['username'],
- '$email' => $user[0]['email'],
- '$password' => $register[0]['password'],
- '$uid' => $user[0]['uid']
- ));
-
- $res = mail($user[0]['email'], sprintf(t('Registration details for %s'), $a->config['sitename']),
- $email_tpl,
- 'From: ' . t('Administrator') . '@' . $_SERVER['SERVER_NAME'] . "\n"
- . 'Content-type: text/plain; charset=UTF-8' . "\n"
- . 'Content-transfer-encoding: 8bit' );
-
- pop_lang();
-
- if($res) {
- info( t('Account approved.') . EOL );
- return true;
- }
-
-}
-
-
-// This does not have to go through user_remove() and save the nickname
-// permanently against re-registration, as the person was not yet
-// allowed to have friends on this system
-
-function user_deny($hash) {
-
- $register = q("SELECT * FROM `register` WHERE `hash` = '%s' LIMIT 1",
- dbesc($hash)
- );
-
- if(! count($register))
- return false;
-
- $user = q("SELECT * FROM `user` WHERE `uid` = %d LIMIT 1",
- intval($register[0]['uid'])
- );
-
- $r = q("DELETE FROM `user` WHERE `uid` = %d LIMIT 1",
- intval($register[0]['uid'])
- );
- $r = q("DELETE FROM `contact` WHERE `uid` = %d LIMIT 1",
- intval($register[0]['uid'])
- );
- $r = q("DELETE FROM `profile` WHERE `uid` = %d LIMIT 1",
- intval($register[0]['uid'])
- );
-
- $r = q("DELETE FROM `register` WHERE `hash` = '%s' LIMIT 1",
- dbesc($register[0]['hash'])
- );
- notice( sprintf(t('Registration revoked for %s'), $user[0]['username']) . EOL);
- return true;
-
-}
+require_once('include/account.php');
function regmod_content(&$a) {
@@ -117,13 +19,11 @@ function regmod_content(&$a) {
return '';
}
- if($a->argc != 3)
+ if(argc() != 3)
killme();
- $cmd = $a->argv[1];
- $hash = $a->argv[2];
-
-
+ $cmd = argv(1);
+ $hash = argv(2);
if($cmd === 'deny') {
if (!user_deny($hash)) killme();
diff --git a/view/en/register_open_eml.tpl b/view/en/register_open_eml.tpl
index 68c4a722b..648720621 100644
--- a/view/en/register_open_eml.tpl
+++ b/view/en/register_open_eml.tpl
@@ -4,7 +4,7 @@ The login details are as follows:
Site Location: $[siteurl]
Login: $[email]
-Password: $[password]
+Password: (the password supplied during registration)
If this account was created without your knowledge and is not desired, please
login and remove the account from the links on the Settings page, and we
diff --git a/view/en/smarty3/register_open_eml.tpl b/view/en/smarty3/register_open_eml.tpl
index 377fa8436..e6702f478 100644
--- a/view/en/smarty3/register_open_eml.tpl
+++ b/view/en/smarty3/register_open_eml.tpl
@@ -9,7 +9,7 @@ The login details are as follows:
Site Location: {{$siteurl}}
Login: {{$email}}
-Password: {{$password}}
+Password: (the password supplied during registration)
If this account was created without your knowledge and is not desired, please
login and remove the account from the links on the Settings page, and we