aboutsummaryrefslogtreecommitdiffstats
path: root/include/functions_user.inc.php
diff options
context:
space:
mode:
authorplegall <plg@piwigo.org>2005-07-16 14:29:35 +0000
committerplegall <plg@piwigo.org>2005-07-16 14:29:35 +0000
commit9bafdff17166028ed7448487d0ca8a19f3c2fbb3 (patch)
tree331aec15d000a13451bb6fbc1cd1cb6beec0902d /include/functions_user.inc.php
parent315f9c5670b631fcc279c4d6ac00ae9386d67455 (diff)
- new feature : RSS notification feed. Feed generator is an external tool
(FeedCreator class v1.7.2). New file feed.php - new database field : comments.validation_date (datetime). This field is required for notification feed. - new database field : users.feed_id (varchar(50)). users.feed_id is an alias of users.id but is much more complicated to find (50 characters, figures or letters, case sensitive) : the purpose is to keep it secret (as far as possible). - new database field : users.last_feed_check (datetime) - new database field : users.registration_date (datetime) - bug fixed : no need to add the (unavailable) session id to install.php in the installation form. - modified database field : images.date_available become more precise (date to datetime). This precision is needed for notification feed. - new index : comments_i1 (validation_date). Might be useful for feed queries. - new index : comments_i2 (image_id). Useful each time you want to have informations about an element and its associated comments. - version 9.11 of mysqldump outputs database field names and table names with backquote "`" (didn't find how to take them off) git-svn-id: http://piwigo.org/svn/trunk@801 68402e56-0260-453c-a942-63ccdbb3a9ee
Diffstat (limited to 'include/functions_user.inc.php')
-rw-r--r--include/functions_user.inc.php31
1 files changed, 31 insertions, 0 deletions
diff --git a/include/functions_user.inc.php b/include/functions_user.inc.php
index 999ef95af..3e8588cf7 100644
--- a/include/functions_user.inc.php
+++ b/include/functions_user.inc.php
@@ -110,6 +110,7 @@ SELECT id
$insert['nb_line_page'] = $conf['nb_line_page'];
$insert['language'] = $conf['default_language'];
$insert['recent_period'] = $conf['recent_period'];
+ $insert['feed_id'] = find_available_feed_id();
$insert['expand'] = boolean_to_string($conf['auto_expand']);
$insert['show_nb_comments'] = boolean_to_string($conf['show_nb_comments']);
if ( $mail_address != '' )
@@ -143,6 +144,13 @@ INSERT INTO '.USERS_TABLE.'
$query.= ')
;';
pwg_query($query);
+
+ $query = '
+UPDATE '.USERS_TABLE.'
+ SET registration_date = NOW()
+ WHERE id = '.mysql_insert_id().'
+;';
+ pwg_query($query);
}
return $errors;
}
@@ -379,4 +387,27 @@ SELECT username
return $username;
}
+
+/**
+ * search an available feed_id
+ *
+ * @return string feed identifier
+ */
+function find_available_feed_id()
+{
+ while (true)
+ {
+ $key = generate_key(50);
+ $query = '
+SELECT COUNT(*)
+ FROM '.USERS_TABLE.'
+ WHERE feed_id = \''.$key.'\'
+;';
+ list($count) = mysql_fetch_row(pwg_query($query));
+ if (0 == $count)
+ {
+ return $key;
+ }
+ }
+}
?>