diff options
author | plegall <plg@piwigo.org> | 2005-07-16 14:29:35 +0000 |
---|---|---|
committer | plegall <plg@piwigo.org> | 2005-07-16 14:29:35 +0000 |
commit | 9bafdff17166028ed7448487d0ca8a19f3c2fbb3 (patch) | |
tree | 331aec15d000a13451bb6fbc1cd1cb6beec0902d /include/functions_user.inc.php | |
parent | 315f9c5670b631fcc279c4d6ac00ae9386d67455 (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.php | 31 |
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; + } + } +} ?> |