Work on HTML invoice and internal logic

This commit is contained in:
Deon George
2012-01-09 12:35:24 +11:00
parent a464d73f9a
commit f0c1f8800e
12 changed files with 431 additions and 115 deletions

View File

@@ -24,6 +24,7 @@ class Controller_Admin_Service extends Controller_TemplateDefault_Admin {
'listwebservices'=>TRUE,
'listinvoicesoon'=>TRUE,
'update'=>TRUE,
'view'=>TRUE,
);
public function action_autolist() {
@@ -591,5 +592,35 @@ class Controller_Admin_Service extends Controller_TemplateDefault_Admin {
'data'=>'css/dhtml.calendar.css',
));
}
public function action_view() {
list($id,$output) = Table::page(__METHOD__);
$so = ORM::factory('service',$id);
if (! $so->loaded() OR ! Auth::instance()->authorised($so->account_id,$so->affiliate_id)) {
$this->template->content = 'Unauthorised or doesnt exist?';
return FALSE;
}
$loutput = '';
$loutput .= View::factory($this->viewpath())
->set('so',$so);
Block::add(array(
'title'=>sprintf('Transaction History for %s: %s',$so->id(),$so->name()),
'body'=>$loutput,
));
$output .= View::factory('service/user/view')
->set('so',$so);
Block::add(array(
'title'=>sprintf('%s: %s',$so->id(),$so->service_name()),
'body'=>$output,
));
}
}
?>

View File

@@ -20,6 +20,7 @@ class Model_Service extends ORMOSB {
'service_billing'=>array('far_key'=>'account_billing_id','foreign_key'=>'id'),
);
protected $_has_many = array(
'invoice_item'=>array('far_key'=>'id'),
'invoice'=>array('through'=>'invoice_item'),
);
protected $_belongs_to = array(
@@ -118,6 +119,10 @@ class Model_Service extends ORMOSB {
return $plugin->admin_update();
}
public function transactions() {
return $this->invoice_item->order_by('date_start,date_stop')->find_all();
}
/** LIST FUNCTIONS **/
private function _list_active() {