This repository has been archived on 2024-04-08. You can view files and clone it, but cannot push or open issues or pull requests.
khosb/modules/email/classes/Controller/User/Email.php
2013-11-22 15:44:26 +11:00

60 lines
1.5 KiB
PHP

<?php defined('SYSPATH') or die('No direct access allowed.');
/**
* This class provides User Email View functions
*
* @package Email
* @category Controllers/User
* @author Deon George
* @copyright (c) 2009-2013 Open Source Billing
* @license http://dev.osbill.net/license.html
*/
class Controller_User_Email extends Controller_Email {
protected $secure_actions = array(
'list'=>TRUE,
'view'=>TRUE,
);
/**
* Show a list of emails
*/
public function action_list() {
Block::factory()
->title(sprintf(_('System Emails Sent for %s: %s'),$this->ao->accnum(),$this->ao->name(TRUE)))
->title_icon('icon-th')
->body(Table::factory()
->page_items(25)
->data($this->ao->email_log->find_all())
->columns(array(
'id'=>'ID',
'date_orig'=>'Date',
'resolve("subject")'=>'Subject',
))
->prepend(array(
'id'=>array('url'=>URL::link('user','email/view/')),
))
->postproc(array(
'resolve("subject")'=>array('trim'=>60),
))
);
}
public function action_view() {
list($id,$output) = Table::page(__METHOD__);
$elo = ORM::factory('Email_Log',$id);
if (! $elo->loaded() OR ! Auth::instance()->authorised($elo->account))
throw HTTP_Exception::factory(403,'Service either doesnt exist, or you are not authorised to see it');
$output .= View::factory('email/user/view')
->set('elo',$elo);
Block::factory()
->title(sprintf('%s: %s',$elo->id,$elo->resolve('subject')))
->title_icon('icon-list-alt')
->body($output);
}
}
?>