summaryrefslogtreecommitdiff
path: root/plugins/squirrelmail_usercopy
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/squirrelmail_usercopy')
-rw-r--r--plugins/squirrelmail_usercopy/config.inc.php.dist5
-rw-r--r--plugins/squirrelmail_usercopy/squirrelmail_usercopy.php99
2 files changed, 0 insertions, 104 deletions
diff --git a/plugins/squirrelmail_usercopy/config.inc.php.dist b/plugins/squirrelmail_usercopy/config.inc.php.dist
deleted file mode 100644
index 5c2560f15..000000000
--- a/plugins/squirrelmail_usercopy/config.inc.php.dist
+++ /dev/null
@@ -1,5 +0,0 @@
-<?php
-
-// full path to the squirrelmail data directory
-$rcmail_config['squirrelmail_data_dir'] = '';
-
diff --git a/plugins/squirrelmail_usercopy/squirrelmail_usercopy.php b/plugins/squirrelmail_usercopy/squirrelmail_usercopy.php
deleted file mode 100644
index 634f837c6..000000000
--- a/plugins/squirrelmail_usercopy/squirrelmail_usercopy.php
+++ /dev/null
@@ -1,99 +0,0 @@
-<?php
-
-/**
- * Copy a new users identity and settings from a nearby Squirrelmail installation
- *
- * Currently only file-based data storage of Squirrelmail is supported.
- *
- * @version 1.1
- * @author Thomas Bruederli
- */
-class squirrelmail_usercopy extends rcube_plugin
-{
- public $task = 'login|settings';
-
- private $prefs = null;
- private $abook = array();
-
- public function init()
- {
- $this->add_hook('create_user', array($this, 'create_user'));
- $this->add_hook('create_identity', array($this, 'create_identity'));
- }
-
- public function create_user($p)
- {
- // read prefs and add email address
- $this->read_squirrel_prefs($p['user']);
- if ($this->prefs['email_address'])
- $p['user_email'] = $this->prefs['email_address'];
-
- return $p;
- }
-
- public function create_identity($p)
- {
- $rcmail = rcmail::get_instance();
-
- // only execute on login
- if ($rcmail->task == 'login' && $this->prefs) {
- if ($this->prefs['full_name'])
- $p['record']['name'] = $this->prefs['full_name'];
- if ($this->prefs['email_address'])
- $p['record']['email'] = $this->prefs['email_address'];
- if ($this->prefs['signature'])
- $p['record']['signature'] = $this->prefs['signature'];
- if ($this->prefs['reply-to'])
- $p['record']['reply-to'] = $this->prefs['reply-to'];
-
- // copy address book
- $contacts = $rcmail->get_address_book(null, true);
- if ($contacts && count($this->abook)) {
- foreach ($this->abook as $rec)
- $contacts->insert($rec, true);
- }
-
- // mark identity as complete for following hooks
- $p['complete'] = true;
- }
-
- return $p;
- }
-
- private function read_squirrel_prefs($uname)
- {
- $this->load_config();
- $rcmail = rcmail::get_instance();
-
- if ($srcdir = $rcmail->config->get('squirrelmail_data_dir')) {
- $prefsfile = slashify($srcdir) . $uname . '.pref';
- $abookfile = slashify($srcdir) . $uname . '.abook';
- $sigfile = slashify($srcdir) . $uname . '.sig';
-
- if (is_readable($prefsfile)) {
- $this->prefs = array();
- foreach (file($prefsfile) as $line) {
- list($key, $value) = explode('=', $line);
- $this->prefs[$key] = utf8_encode(rtrim($value));
- }
-
- // also read signature file if exists
- if (is_readable($sigfile)) {
- $this->prefs['signature'] = utf8_encode(file_get_contents($sigfile));
- }
-
- // parse addres book file
- if (filesize($abookfile)) {
- foreach(file($abookfile) as $line) {
- list($rec['name'], $rec['firstname'], $rec['surname'], $rec['email']) = explode('|', utf8_encode(rtrim($line)));
- if ($rec['name'] && $rec['email'])
- $this->abook[] = $rec;
- }
- }
- }
- }
- }
-
-}
-
-?>