[geeklog-cvs] geeklog: Make the name of the 'anon-name' cookie configurable an...

geeklog-cvs at lists.geeklog.net geeklog-cvs at lists.geeklog.net
Sat Apr 11 13:45:16 EDT 2009


details:   http://project.geeklog.net/cgi-bin/hgweb.cgi/rev/1014d42f9fa7
changeset: 6918:1014d42f9fa7
user:      Dirk Haun <dirk at haun-online.de>
date:      Sat Apr 11 16:59:56 2009 +0200
description:
Make the name of the 'anon-name' cookie configurable and keep it alive for longer

diffstat:

7 files changed, 30 insertions(+), 11 deletions(-)
language/english.php                         |    1 
language/english_utf-8.php                   |    1 
public_html/admin/install/config-install.php |    1 
public_html/docs/config.html                 |    5 ++++
sql/updates/mssql_1.5.2_to_1.6.0.php         |    3 ++
sql/updates/mysql_1.5.2_to_1.6.0.php         |    3 ++
system/lib-comment.php                       |   27 +++++++++++++++-----------

diffs (128 lines):

diff -r c0cb15eefe17 -r 1014d42f9fa7 language/english.php
--- a/language/english.php	Sat Apr 11 15:48:10 2009 +0200
+++ b/language/english.php	Sat Apr 11 16:59:56 2009 +0200
@@ -1683,6 +1683,7 @@
     'cookie_theme' => "Theme Cookie Name",
     'cookie_language' => "Language Cookie Name",
     'cookie_tzid' => "Timezone Cookie Name",
+    'cookie_anon_name' => 'Anon. Username Cookie Name',
     'cookie_ip' => "Cookies embed IP?",
     'default_perm_cookie_timeout' => "Permanent Timeout",
     'session_cookie_timeout' => "Session Timeout",
diff -r c0cb15eefe17 -r 1014d42f9fa7 language/english_utf-8.php
--- a/language/english_utf-8.php	Sat Apr 11 15:48:10 2009 +0200
+++ b/language/english_utf-8.php	Sat Apr 11 16:59:56 2009 +0200
@@ -1683,6 +1683,7 @@
     'cookie_theme' => "Theme Cookie Name",
     'cookie_language' => "Language Cookie Name",
     'cookie_tzid' => "Timezone Cookie Name",
+    'cookie_anon_name' => 'Anon. Username Cookie Name',
     'cookie_ip' => "Cookies embed IP?",
     'default_perm_cookie_timeout' => "Permanent Timeout",
     'session_cookie_timeout' => "Session Timeout",
diff -r c0cb15eefe17 -r 1014d42f9fa7 public_html/admin/install/config-install.php
--- a/public_html/admin/install/config-install.php	Sat Apr 11 15:48:10 2009 +0200
+++ b/public_html/admin/install/config-install.php	Sat Apr 11 16:59:56 2009 +0200
@@ -301,6 +301,7 @@
     $c->add('cookie_theme','theme','text',7,30,NULL,560,TRUE);
     $c->add('cookie_language','language','text',7,30,NULL,570,TRUE);
     $c->add('cookie_tzid','timezone','text',7,30,NULL,575,TRUE);
+    $c->add('cookie_anon_name','anon_name','text',7,30,NULL,577,TRUE);
     $c->add('cookie_ip',0,'select',7,30,0,580,TRUE);
     $c->add('default_perm_cookie_timeout',28800,'text',7,30,NULL,590,TRUE);
     $c->add('session_cookie_timeout',7200,'text',7,30,NULL,600,TRUE);
diff -r c0cb15eefe17 -r 1014d42f9fa7 public_html/docs/config.html
--- a/public_html/docs/config.html	Sat Apr 11 15:48:10 2009 +0200
+++ b/public_html/docs/config.html	Sat Apr 11 16:59:56 2009 +0200
@@ -1253,6 +1253,11 @@
   <td valign="top">timezone</td>
   <td valign="top">Name of the timezone cookie.</td></tr>
 <tr>
+  <td valign="top"><a name="desc_cookie_anon_name">cookie_anon_name</a></td>
+  <td valign="top">anon_name</td>
+  <td valign="top">Name of the cookie to store the username of anonymous
+    users.</td></tr>
+<tr>
   <td valign="top"><a name="desc_cookie_ip">cookie_ip</a></td>
   <td valign="top">0</td>
   <td valign="top">Session ID to contain IP address of user as well as random number. This is more secure but will more than likely require dialed up users to login each and every time. (0=no, 1=yes)</td></tr>
diff -r c0cb15eefe17 -r 1014d42f9fa7 sql/updates/mssql_1.5.2_to_1.6.0.php
--- a/sql/updates/mssql_1.5.2_to_1.6.0.php	Sat Apr 11 15:48:10 2009 +0200
+++ b/sql/updates/mssql_1.5.2_to_1.6.0.php	Sat Apr 11 16:59:56 2009 +0200
@@ -109,6 +109,9 @@
     $c->add('comment_close_rec_stories',0,'text',4,21,NULL,1688,TRUE);
     $c->add('allow_reply_notifications',0,'select',4,21,0, 1689, TRUE);
 
+    // cookie to store name of anonymous commenters
+    $c->add('cookie_anon_name','anon_name','text',7,30,NULL,577,TRUE);
+
     return true;
 }
 
diff -r c0cb15eefe17 -r 1014d42f9fa7 sql/updates/mysql_1.5.2_to_1.6.0.php
--- a/sql/updates/mysql_1.5.2_to_1.6.0.php	Sat Apr 11 15:48:10 2009 +0200
+++ b/sql/updates/mysql_1.5.2_to_1.6.0.php	Sat Apr 11 16:59:56 2009 +0200
@@ -108,6 +108,9 @@
     $c->add('comment_close_rec_stories',0,'text',4,21,NULL,1688,TRUE);
     $c->add('allow_reply_notifications',0,'select',4,21,0, 1689, TRUE);
 
+    // cookie to store name of anonymous commenters
+    $c->add('cookie_anon_name','anon_name','text',7,30,NULL,577,TRUE);
+
     return true;
 }
 
diff -r c0cb15eefe17 -r 1014d42f9fa7 system/lib-comment.php
--- a/system/lib-comment.php	Sat Apr 11 15:48:10 2009 +0200
+++ b/system/lib-comment.php	Sat Apr 11 16:59:56 2009 +0200
@@ -401,10 +401,12 @@
         $template->set_var( 'sid', $A['sid'] );
         $template->set_var( 'type', $A['type'] );
 
-        //COMMENT edit rights
-        if ( $_USER['uid'] == $A['uid'] && $_CONF['comment_edit'] == 1 
-                && (time() - $A['nice_date']) < $_CONF['comment_edittime'] && 
-                DB_getItem($_TABLES['comments'], 'COUNT(*)', "pid = {$A['cid']}") == 0) {
+        // COMMENT edit rights
+        if (isset($A['uid']) && isset($_USER['uid'])
+                && ($_USER['uid'] == $A['uid']) && ($_CONF['comment_edit'] == 1)
+                && ((time() - $A['nice_date']) < $_CONF['comment_edittime'])
+                && (DB_getItem($_TABLES['comments'], 'COUNT(*)',
+                               "pid = {$A['cid']}") == 0)) {
             $edit_option = true;
             if ( empty($token)) {
                 $token = SEC_createToken();
@@ -900,15 +902,16 @@
                 $comment_template->set_var('lang_logoutorcreateaccount',
                     $LANG03[03]);
             } else {
-                //Anonymous user
+                // Anonymous user
                 $comment_template->set_var('uid', 1);
-                if ( isset($A['username']) ) {
-                    $name = $A['username']; //for preview
-                } elseif (isset($_COOKIE['anon-name'])) {
+                if (isset($A['username'])) {
+                    $name = $A['username']; // for preview
+                } elseif (isset($_COOKIE[$_CONF['cookie_anon_name']])) {
+                    //stored as cookie, name used before
                     $name = htmlspecialchars(COM_checkWords(strip_tags(
-                                    COM_stripslashes($_COOKIE['anon-name'])))); //stored as cookie, name used before
+                        COM_stripslashes($_COOKIE[$_CONF['cookie_anon_name']]))));
                 } else {
-                    $name = $LANG03[24]; //anonymous user
+                    $name = $LANG03[24]; // anonymous user
                 }
                 $usernameblock = '<input type="text" name="username" size="16" value="' . 
                                  $name . '" maxlength="32"' . XHTML . '>';
@@ -1064,7 +1067,9 @@
     if (isset($_POST['username']) && strcmp($_POST['username'],$LANG03[24]) != 0
             && $uid == 1) {
         $name = COM_checkWords(strip_tags(COM_stripslashes($_POST['username'])));
-        setcookie('anon-name', $name);
+        setcookie($_CONF['cookie_anon_name'], $name, time() + 31536000,
+                  $_CONF['cookie_path'], $_CONF['cookiedomain'],
+                  $_CONF['cookiesecure']);
         $name = addslashes($name);
     }
 



More information about the geeklog-cvs mailing list