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/application/classes/Controller/Admin/Welcome.php

131 lines
3.8 KiB
PHP
Raw Normal View History

2011-08-16 02:27:19 +00:00
<?php defined('SYSPATH') or die('No direct access allowed.');
/**
* OSB Admin Main home page
*
* @package OSB
2013-03-19 22:35:19 +00:00
* @category Controllers/Admin
2011-08-16 02:27:19 +00:00
* @author Deon George
2013-03-19 22:35:19 +00:00
* @copyright (c) 2009-2013 Open Source Billing
* @license http://dev.osbill.net/license.html
2011-08-16 02:27:19 +00:00
*/
class Controller_Admin_Welcome extends Controller_Welcome {
protected $auth_required = TRUE;
2011-08-16 02:27:19 +00:00
public $secure_actions = array(
'index'=>TRUE,
);
public function action_index() {
$t = time();
// Show outstanding invoices
2012-11-09 23:13:57 +00:00
$o = ORM::factory('Invoice');
2011-08-16 02:27:19 +00:00
Block_Sub::add(array(
2011-09-27 11:22:13 +00:00
'title'=>'Invoices Overdue - No Auto Billing',
'body'=>Table::display(
2011-09-27 11:22:13 +00:00
$o->list_overdue_billing($t),
25,
array(
'due_date'=>array('label'=>'Due Date'),
2011-10-12 22:20:08 +00:00
'account->accnum()'=>array('label'=>'Num'),
'account->name()'=>array('label'=>'Account'),
'account->display("status")'=>array('label'=>'Active'),
'id'=>array('label'=>'ID','url'=>URL::link('user','invoice/view/')),
'total(TRUE)'=>array('label'=>'Total','class'=>'right'),
'due(TRUE)'=>array('label'=>'Amount Due','class'=>'right'),
),
array('page'=>TRUE)),
2011-08-16 02:27:19 +00:00
'position'=>1,
'order'=>1,
));
2011-09-27 11:22:13 +00:00
Block_Sub::add(array(
'title'=>'Invoices Overdue - Auto Billing',
'body'=>Table::display(
$o->list_overdue_billing($t,TRUE),
25,
array(
'due_date'=>array('label'=>'Due Date'),
2011-10-12 22:20:08 +00:00
'account->accnum()'=>array('label'=>'Num'),
2011-09-27 11:22:13 +00:00
'account->name()'=>array('label'=>'Account'),
'account->display("status")'=>array('label'=>'Active'),
'id'=>array('label'=>'ID','url'=>URL::link('user','invoice/view/')),
'total(TRUE)'=>array('label'=>'Total','class'=>'right'),
2011-09-27 11:22:13 +00:00
'due(TRUE)'=>array('label'=>'Amount Due','class'=>'right'),
),
array('page'=>TRUE)),
'position'=>2,
'order'=>1,
));
2011-08-16 02:27:19 +00:00
Block_Sub::add(array(
'title'=>'Invoices Due',
'body'=>Table::display(
$o->list_due(),
25,
array(
'due_date'=>array('label'=>'Due Date'),
2011-10-12 22:20:08 +00:00
'account->accnum()'=>array('label'=>'Num'),
'account->name()'=>array('label'),
'account->display("status")'=>array('label'=>'Active'),
'id'=>array('label'=>'ID','url'=>URL::link('user','invoice/view/')),
'total(TRUE)'=>array('label'=>'Total','class'=>'right'),
'due(TRUE)'=>array('label'=>'Amount Due','class'=>'right'),
),
array('show_other'=>'due()')),
2011-09-27 11:22:13 +00:00
'position'=>3,
2011-08-16 02:27:19 +00:00
'order'=>1,
));
2012-08-01 12:43:33 +00:00
// Show un-applied payments
2011-08-16 02:27:19 +00:00
Block_Sub::add(array(
'title'=>'Unapplied Payments',
'body'=>Table::display(
2012-11-09 23:13:57 +00:00
ORM::factory('Payment')->list_unapplied(),
25,
array(
'date_payment'=>array('label'=>'Pay Date'),
2011-10-12 22:20:08 +00:00
'account->accnum()'=>array('label'=>'Num'),
'account->name()'=>array('label'=>'Account'),
'account->display("status")'=>array('label'=>'Active'),
'id'=>array('label'=>'ID','url'=>URL::link('admin','payment/view/')),
'total_amt'=>array('label'=>'Total','class'=>'right'),
'balance(TRUE)'=>array('label'=>'Balance','class'=>'right'),
),
array('show_other'=>'balance()')),
2011-09-27 11:22:13 +00:00
'position'=>1,
'order'=>2,
2011-08-16 02:27:19 +00:00
));
Block::add(array(
'title'=>sprintf('%s: %s %s',$this->ao->accnum(),$this->ao->first_name,$this->ao->last_name),
2011-08-16 02:27:19 +00:00
'subtitle'=>_('Administrator Overview'),
'body'=>(string)Block_Sub::factory(),
));
// We are a site administrator
2013-04-20 01:40:44 +00:00
$output = '';
if ($this->ao->rtm_id == NULL) {
$rtmo = ORM::factory('RTM',array('account_id','=',$this->ao->id))->find();
// Quick validation, if we are an admin, we should have an entry in the RTM table.
if (! $rtmo->loaded())
throw new Kohana_Exception('User :aid not set up properly',array(':aid'=>$this->ao->id));
$output = View::factory('welcome/admin')
->set('o',$rtmo);
} else {
2013-04-20 01:40:44 +00:00
$rtmo = ORM::factory('RTM',$this->ao->rtm_id);
}
if ($output)
Block::add(array(
'title'=>sprintf('Reseller %s',$this->ao->display('company')),
'body'=>$output,
));
2011-08-16 02:27:19 +00:00
}
}
?>