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/Company.php

104 lines
2.5 KiB
PHP
Raw Normal View History

2010-11-29 22:41:08 +00:00
<?php defined('SYSPATH') or die('No direct access allowed.');
/**
* This class is for access company information.
2010-11-29 22:41:08 +00:00
*
* @package OSB
* @subpackage System
2010-11-29 22:41:08 +00:00
* @category Helpers
* @author Deon George
* @copyright (c) 2010 Open Source Billing
* @license http://dev.osbill.net/license.html
2010-11-29 22:41:08 +00:00
*/
class Company {
public static function instance() {
return new Company;
}
public static function name() {
2011-12-30 07:10:02 +00:00
return Config::instance()->so->site_details('name');
}
2011-12-30 07:10:02 +00:00
public static function street($ln='<br/>') {
if ($b = Config::instance()->so->site_details('address2'))
return implode($ln,array(Config::instance()->so->site_details('address1'),Config::instance()->so->site_details('address2')));
else
return Config::instance()->so->site_details('address1');
2011-05-02 12:28:17 +00:00
}
public static function city() {
2011-12-30 07:10:02 +00:00
return Config::instance()->so->site_details('city');
2011-05-02 12:28:17 +00:00
}
public static function state() {
2011-12-30 07:10:02 +00:00
return Config::instance()->so->site_details('state');
2011-05-02 12:28:17 +00:00
}
public static function pcode() {
2011-12-30 07:10:02 +00:00
return Config::instance()->so->site_details('pcode');
2011-05-02 12:28:17 +00:00
}
2010-11-29 22:41:08 +00:00
public static function address($ln='<br/>') {
2011-12-30 07:10:02 +00:00
return implode($ln,array(static::street($ln),sprintf('%s, %s %s',static::city(),static::state(),static::pcode())));
2011-05-02 12:28:17 +00:00
}
public static function phone() {
2011-12-30 07:10:02 +00:00
return Config::instance()->so->site_details('phone');
2011-05-02 12:28:17 +00:00
}
public static function fax() {
2011-12-30 07:10:02 +00:00
return Config::instance()->so->site_details('fax');
2010-11-29 22:41:08 +00:00
}
public static function email() {
return Config::instance()->so->site_details('email');
}
2010-11-29 22:41:08 +00:00
public static function contacts() {
2011-05-02 12:28:17 +00:00
return 'Tel: '.static::phone();
}
public static function bsb() {
// @todo Details should be obtained from DB
2012-11-09 23:13:57 +00:00
return Kohana::$config->load('config')->bsb;
2011-05-02 12:28:17 +00:00
}
public static function account() {
// @todo Details should be obtained from DB
2012-11-09 23:13:57 +00:00
return Kohana::$config->load('config')->accnum;
2011-05-02 12:28:17 +00:00
}
public static function taxid() {
// Tax ID details are stored in invoice config
$mc = Config::instance()->so->module_config('invoice');
if (empty($mc['TAX_ID_NAME']))
return empty($mc['TAX_ID']) ? '' : $mc['TAX_ID'];
else
return sprintf('%s: %s',$mc['TAX_ID_NAME'],empty($mc['TAX_ID']) ? '' : $mc['TAX_ID']);
2010-11-29 22:41:08 +00:00
}
public static function render() {
echo static::name();
echo static::address();
echo static::contacts();
}
/**
* Return the HTML to render the company address
*/
public function __toString() {
try {
return static::render();
}
// Display the exception message
catch (Exception $e) {
Kohana::exception_handler($e);
return '';
}
}
}
?>