]> git.mxchange.org Git - quix0rs-gnu-social.git/commitdiff
add flags to db for jabber and sms notification
authorEvan Prodromou <evan@prodromou.name>
Mon, 23 Jun 2008 02:38:59 +0000 (22:38 -0400)
committerEvan Prodromou <evan@prodromou.name>
Mon, 23 Jun 2008 02:38:59 +0000 (22:38 -0400)
darcs-hash:20080623023859-84dde-1c72985ee0a840e59d1fac88f27f929f3c637b65.gz

db/laconica.sql
xmppdaemon.php

index cc475e4cfcf523c39e79541ec3d544e419e4935e..5e612cbd8a339f82964034f2483cf143196132a5 100644 (file)
@@ -45,8 +45,11 @@ create table user (
     password varchar(255) comment 'salted password, can be null for OpenID users',
     email varchar(255) unique key comment 'email address for password recovery etc.',
     jabber varchar(255) unique key comment 'jabber ID for notices',
+    jabbernotify tinyint default 0 comment 'whether to send notices to jabber',    
+    updatefrompresence tinyint default 0 comment 'whether to record updates from Jabber presence notices',
     sms varchar(64) unique key comment 'sms phone number',
     carrier integer comment 'foreign key to sms_carrier' references sms_carrier (id),
+    smsnotify tinyint default 0 comment 'whether to send notices to SMS',
     uri varchar(255) unique key comment 'universally unique identifier, usually a tag URI',
     created datetime not null comment 'date this record was created',
     modified timestamp comment 'date this record was modified'
index 43c49e6041b2b2745821eb280bd4ebb94c54c3fa..71f1d853b9ff2909c88a395fbeaf6d35f24a28ab 100644 (file)
@@ -88,6 +88,22 @@ class XMPPDaemon {
                        return false;
                }
        }
+
+       function set_notify(&$user, $notify) {
+               $orig = clone($user);
+               $user->jabbernotify = $notify;
+               $result = $user->update($orig);
+               if (!$id) {
+                       $last_error = &PEAR::getStaticProperty('DB_DataObject','lastError');
+                       $this->log(LOG_ERROR, 
+                                          'Could not set notify flag to ' . $notify .
+                                          ' for user ' . common_log_objstring($user) . 
+                                          ': ' . $last_error->message);
+               } else {
+                       $this->log(LOG_INFO,
+                                          'User ' . $user->nickname . ' set notify flag to ' . $notify);
+               }
+       }
        
        function add_notice(&$user, &$pl) {
                $notice = new Notice();
@@ -116,6 +132,8 @@ class XMPPDaemon {
                        return;
                }
                common_broadcast_notice($notice);
+               $this->log(LOG_INFO,
+                                  'Added notice ' . $notice->id . ' from user ' . $user->nickname);
        }
        
        function handle_presence(&$pl) {