. * * @category Plugin * @package StatusNet * @author Craig Andrews mailbox)){ // TRANS: Exception thrown when configuration of the IMAP plugin is incorrect. throw new Exception(_m('A mailbox must be specified.')); } if(!isset($this->user)){ // TRANS: Exception thrown when configuration of the IMAP plugin is incorrect. throw new Exception(_m('A user must be specified.')); } if(!isset($this->password)){ // TRANS: Exception thrown when configuration of the IMAP plugin is incorrect. throw new Exception(_m('A password must be specified.')); } if(!isset($this->poll_frequency)){ // TRANS: Exception thrown when configuration of the IMAP plugin is incorrect. // TRANS: poll_frequency is a setting that should not be translated. throw new Exception(_m('A poll_frequency must be specified.')); } return true; } /** * Load related modules when needed * * @param string $cls Name of the class to be loaded * * @return boolean hook value; true means continue processing, false means stop. */ function onAutoload($cls) { $dir = dirname(__FILE__); switch ($cls) { case 'ImapManager': case 'IMAPMailHandler': include_once $dir . '/'.strtolower($cls).'.php'; return false; default: return true; } } function onStartQueueDaemonIoManagers(&$classes) { $classes[] = new ImapManager($this); } function onPluginVersion(&$versions) { $versions[] = array('name' => 'IMAP', 'version' => STATUSNET_VERSION, 'author' => 'Craig Andrews', 'homepage' => 'http://status.net/wiki/Plugin:IMAP', 'rawdescription' => // TRANS: Plugin description. _m('The IMAP plugin allows for StatusNet to check a POP or IMAP mailbox for incoming mail containing user posts.')); return true; } }