summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEvan Prodromou <evan@controlezvous.ca>2008-06-26 16:31:03 -0400
committerEvan Prodromou <evan@controlezvous.ca>2008-06-26 16:31:03 -0400
commit48cac45fd9e2c13ee66b32059552acf831515599 (patch)
tree9b1d44cb788d2d3c5fbc727cb48d45c357974049
parent31b5ae1523c4f64159f00b32683912da1a9fb474 (diff)
don't bother with subscription hoohaw; just ask the user to do it
darcs-hash:20080626203103-34904-19ef53bc734622a310a705608f3e227e2f387904.gz
-rw-r--r--actions/imsettings.php28
-rw-r--r--db/laconica.sql16
-rw-r--r--lib/jabber.php5
-rwxr-xr-xxmppdaemon.php23
4 files changed, 22 insertions, 50 deletions
diff --git a/actions/imsettings.php b/actions/imsettings.php
index 90a4fd807..e471aafac 100644
--- a/actions/imsettings.php
+++ b/actions/imsettings.php
@@ -73,7 +73,9 @@ class ImsettingsAction extends SettingsAction {
} else {
common_input('jabber', _t('IM Address'),
($this->arg('jabber')) ? $this->arg('jabber') : NULL,
- _t('Jabber or GTalk address, like "UserName@example.org"'));
+ _t('Jabber or GTalk address, like "UserName@example.org". ' .
+ 'Make sure to subscribe to ' . jabber_daemon_address() .
+ ' before adding your IM address here.'));
common_submit('add', 'Add');
}
}
@@ -192,21 +194,19 @@ class ImsettingsAction extends SettingsAction {
return;
}
- # XXX: optionally queue for offline sending
+ # XXX: queue for offline sending
- if (!jabber_is_subscribed($jabber)) {
- jabber_special_presence('subscribe', $jabber);
- } else {
- jabber_confirm_address($confirm->code,
- $user->nickname,
- $jabber);
- }
+ jabber_confirm_address($confirm->code,
+ $user->nickname,
+ $jabber);
+
+ # XXX: I18N
+
+ $msg = 'A confirmation code was sent to the IM address you added. ' .
+ ' You must approve ' . jabber_daemon_address() .
+ ' for sending messages to you.';
- $this->show_form(_t('A confirmation code was ' .
- ' sent to the IM address you added. ' .
- ' You must approve ' . jabber_daemon_address() .
- ' for sending messages to you.'),
- TRUE);
+ $this->show_form($msg, TRUE);
}
function cancel_confirmation() {
diff --git a/db/laconica.sql b/db/laconica.sql
index f61d5de15..46424ecce 100644
--- a/db/laconica.sql
+++ b/db/laconica.sql
@@ -24,7 +24,7 @@ create table avatar (
url varchar(255) unique key comment 'avatar location',
created datetime not null comment 'date this record was created',
modified timestamp comment 'date this record was modified',
-
+
constraint primary key (profile_id, width, height),
index avatar_profile_id_idx (profile_id)
) ENGINE=InnoDB;
@@ -45,7 +45,7 @@ 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',
+ 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),
@@ -97,7 +97,7 @@ create table notice (
create table consumer (
consumer_key varchar(255) primary key comment 'unique identifier, root URL',
seed char(32) not null comment 'seed for new tokens by this consumer',
-
+
created datetime not null comment 'date this record was created',
modified timestamp comment 'date this record was modified'
) ENGINE=InnoDB;
@@ -108,10 +108,10 @@ create table token (
secret char(32) not null comment 'secret value',
type tinyint not null default 0 comment 'request or access',
state tinyint default 0 comment 'for requests; 0 = initial, 1 = authorized, 2 = used',
-
+
created datetime not null comment 'date this record was created',
modified timestamp comment 'date this record was modified',
-
+
constraint primary key (consumer_key, tok)
) ENGINE=InnoDB;
@@ -120,10 +120,10 @@ create table nonce (
tok char(32) not null comment 'identifying value',
nonce char(32) not null comment 'nonce',
ts datetime not null comment 'timestamp sent',
-
+
created datetime not null comment 'date this record was created',
modified timestamp comment 'date this record was modified',
-
+
constraint primary key (consumer_key, tok, nonce),
constraint foreign key (consumer_key, tok) references token (consumer_key, tok)
) ENGINE=InnoDB;
@@ -136,7 +136,7 @@ create table user_openid (
user_id integer not null comment 'user owning this URL' references user (id),
created datetime not null comment 'date this record was created',
modified timestamp comment 'date this record was modified',
-
+
index user_openid_user_id_idx (user_id)
) ENGINE=InnoDB;
diff --git a/lib/jabber.php b/lib/jabber.php
index 8f23e75b5..7630d8cd2 100644
--- a/lib/jabber.php
+++ b/lib/jabber.php
@@ -142,8 +142,3 @@ function jabber_broadcast_notice($notice) {
function jabber_format_notice(&$profile, &$notice) {
return $profile->nickname . ': ' . $notice->content;
}
-
-# Dike this out for now
-function jabber_is_subscribed($address) {
- return false;
-}
diff --git a/xmppdaemon.php b/xmppdaemon.php
index 3f2b575e4..cc464f155 100755
--- a/xmppdaemon.php
+++ b/xmppdaemon.php
@@ -194,30 +194,7 @@ class XMPPDaemon {
'Accepted subscription from ' . $from);
break;
case 'subscribed':
- $confirm = $this->get_confirmation($from);
- if ($confirm) {
- $user = User::staticGet($confirm->user_id);
- if ($user) {
- jabber_confirm_address($confirm->code,
- $user->nickname,
- $confirm->address);
- } else {
- $this->log(LOG_WARNING,
- 'got unexpected subscribed message from ' . $from);
- }
- }
case 'unsubscribed':
- $user = $this->get_user($from);
- if ($user) {
- $this->set_notify($user, false);
- }
-
- $confirm = $this->get_confirmation($from);
- if ($confirm) {
- $user = User::staticGet($confirm->user_id);
- if ($user) {
- }
- }
case 'unsubscribe':
$this->log(LOG_INFO,
'Ignoring "' . $pl['type'] . '" from ' . $from);