From 47124c2279382714afd8dbe4a867a867ea179199 Mon Sep 17 00:00:00 2001 From: thomascube Date: Sat, 12 Apr 2008 13:54:45 +0000 Subject: Changed codebase to PHP5 with autoloader + added some new classes from the devel-vnext branch --- bin/msgimport.sh | 120 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 120 insertions(+) create mode 100755 bin/msgimport.sh (limited to 'bin/msgimport.sh') diff --git a/bin/msgimport.sh b/bin/msgimport.sh new file mode 100755 index 000000000..98a03891e --- /dev/null +++ b/bin/msgimport.sh @@ -0,0 +1,120 @@ +#!/usr/bin/php -qC + 'host', 'u' => 'user', 'p' => 'pass', 'f' => 'file')) + array('host' => 'localhost'); + +if ($_SERVER['argv'][1] == 'help') +{ + print_usage(); + exit; +} +else if (!($args['host'] && $args['file'])) +{ + print "Missing required parameters.\n"; + print_usage(); + exit; +} +else if (!is_file($args['file'])) +{ + print "Cannot read message file\n"; + exit; +} + +// prompt for username if not set +if (empty($args['user'])) +{ + //fwrite(STDOUT, "Please enter your name\n"); + echo "IMAP user: "; + $args['user'] = trim(fgets(STDIN)); +} + +// prompt for password +echo "Password: "; +$args['pass'] = trim(fgets(STDIN)); + +// clear password input +echo chr(8)."\rPassword: ".str_repeat("*", strlen($args['pass']))."\n"; + +// parse $host URL +$a_host = parse_url($args['host']); +if ($a_host['host']) +{ + $host = $a_host['host']; + $imap_ssl = (isset($a_host['scheme']) && in_array($a_host['scheme'], array('ssl','imaps','tls'))) ? TRUE : FALSE; + $imap_port = isset($a_host['port']) ? $a_host['port'] : ($imap_ssl ? 993 : 143); +} +else +{ + $host = $args['host']; + $imap_port = 143; +} + +// instantiate IMAP class +$IMAP = new rcube_imap(null); + +// try to connect to IMAP server +if ($IMAP->connect($host, $args['user'], $args['pass'], $imap_port, $imap_ssl)) +{ + print "IMAP login successful.\n"; + print "Uploading message...\n"; + + // upload message from file + if ($IMAP->save_message('INBOX', file_get_contents($args['file']))) + print "Message successfully added to INBOX.\n"; + else + print "Adding message failed!\n"; +} +else +{ + print "IMAP login failed.\n"; +} + +?> \ No newline at end of file -- cgit v1.2.3