Projekt

Obecné

Profil

« Předchozí | Další » 

Revize 330

Přidáno uživatelem Jiří Sviták před asi 15 roky(ů)

Upravena instalace, uz tvori vazby pres accounts_bank_accounts. Smazany nektere nepotrebne veci.

Zobrazit rozdíly:

freenetis/trunk/kohana/application/controllers/installation.php
class Installation_Controller extends Controller
{
/**
* Function shows installation dialog. To show it must exist empty database freenetis and user with the
* same name. After form validation it creates member representing association, his primary user,
* first bank account and many double-entry accounts required for accounting.
* @return unknown_type
*/
public function index()
{
$form = new Forge(url_lang::base()."installation", '', 'POST', array('id' => 'article_form'));
......
$form_data[$key] = htmlspecialchars($value);
}
// this executes all queries, that upgrade database structure
$this->upgrade_sql();
// first member is special, it represents association
$member = new Member_Model();
$member->registration = NULL;
$member->name = $form_data["name"];
......
$member->entrance_date = date("Y-m-d", $form_data["foundation"]);
$member->save();
// every member has its one primary user of type "member"
$user = new User_Model();
$user->member_id = $member->id;
$user->name = $form_data["login"];
......
$user->radius_password = $form_data["phone"];
$user->save();
// association has at least one real bank account
$bank_account = new Bank_account_Model();
$bank_account->name = $form_data["account_name"];
$bank_account->member_id = $member->id;
$bank_account->account_nr = $form_data["account_nr"];
$bank_account->bank_nr = $form_data["bank_nr"];
$bank_account->IBAN = $form_data["IBAN"];
$bank_account->SWIFT = $form_data["SWIFT"];
$bank_account->save();
// these three double-entry accounts are related to one bank account through relation table
// double-entry bank account
$doubleentry_bank_account = new Account_Model();
$doubleentry_bank_account->member_id = $member->id;
$doubleentry_bank_account->name = url_lang::lang('texts.Bank accounts');
$doubleentry_bank_account->account_attribute_id = Account_attribute_Model::$bank;
$doubleentry_bank_account->comment = url_lang::lang('texts.Bank accounts');
$doubleentry_bank_account->save();
$doubleentry_bank_account->add_bank_account($bank_account);
// double-entry account of bank fees
$bank_fees_account = new Account_Model();
$bank_fees_account->member_id = $member->id;
$bank_fees_account->name = url_lang::lang('texts.Bank fees');
$bank_fees_account->account_attribute_id = Account_attribute_Model::$bank_fees;
$bank_fees_account->comment = url_lang::lang('texts.Bank fees');
$bank_fees_account->save();
$bank_fees_account->add_bank_account($bank_account);
// double-entry account of bank interests
$bank_interests_account = new Account_Model();
$bank_interests_account->member_id = $member->id;
$bank_interests_account->name = url_lang::lang('texts.Bank interests');
$bank_interests_account->account_attribute_id = Account_attribute_Model::$bank_interests;
$bank_interests_account->comment = url_lang::lang('texts.Bank interests');
$bank_interests_account->save();
$bank_interests_account->add_bank_account($bank_account);
// other double entry accounts independent of bank account
// double-entry cash account
$cash_account = new Account_Model();
$cash_account->member_id = $member->id;
$cash_account->name = url_lang::lang('texts.Cash');
$cash_account->account_attribute_id = Account_attribute_Model::$cash;
$cash_account->comment = url_lang::lang('texts.Cash');
$cash_account->save();
$bank_account = new Account_Model();
$bank_account->member_id = $member->id;
$bank_account->name = $form_data["account_nr"];//url_lang::lang('texts.Bank accounts');
$bank_account->account_attribute_id = Account_attribute_Model::$bank;
$bank_account->comment = url_lang::lang('texts.Bank accounts');
$bank_account->save();
$ba = new Bank_account_Model();
$ba->name = $form_data["account_name"];
$ba->member_id = $member->id;
$ba->account_nr = $form_data["account_nr"];
$ba->bank_nr = $form_data["bank_nr"];
$ba->IBAN = $form_data["IBAN"];
$ba->SWIFT = $form_data["SWIFT"];
$ba->save();
// double-entry operating account
$operating_account = new Account_Model();
$operating_account->member_id = $member->id;
$operating_account->name = url_lang::lang('texts.Operating account');
$operating_account->account_attribute_id = Account_attribute_Model::$operating;
$operating_account->comment = url_lang::lang('texts.Operating account');
$operating_account->save();
// double-entry infrastructure account
$infrastructure_account = new Account_Model();
$infrastructure_account->member_id = $member->id;
$infrastructure_account->name = url_lang::lang('texts.Infrastructure account');
$infrastructure_account->account_attribute_id = Account_attribute_Model::$infrastructure;
$infrastructure_account->comment = url_lang::lang('texts.Infrastructure account');
$infrastructure_account->save();
// double-entry account of purchasers
$purchasers_account = new Account_Model();
$purchasers_account->member_id = $member->id;
$purchasers_account->name = url_lang::lang('texts.Purchasers account');
$purchasers_account->account_attribute_id = Account_attribute_Model::$purchasers;
$purchasers_account->comment = url_lang::lang('texts.Purchasers account');
$purchasers_account->save();
// double-entry account of suppliers
$suppliers_account = new Account_Model();
$suppliers_account->member_id = $member->id;
$suppliers_account->name = url_lang::lang('texts.Suppliers account');
$suppliers_account->account_attribute_id = Account_attribute_Model::$suppliers;
$suppliers_account->comment = url_lang::lang('texts.Suppliers account');
$suppliers_account->save();
$bank_fees_account = new Account_Model();
$bank_fees_account->member_id = $member->id;
$bank_fees_account->name = url_lang::lang('texts.Bank fees');
$bank_fees_account->account_attribute_id = Account_attribute_Model::$bank_fees;
$bank_fees_account->comment = url_lang::lang('texts.Bank fees');
$bank_fees_account->save();
$bank_interests_account = new Account_Model();
$bank_interests_account->member_id = $member->id;
$bank_interests_account->name = url_lang::lang('texts.Bank interests');
$bank_interests_account->account_attribute_id = Account_attribute_Model::$bank_interests;
$bank_interests_account->comment = url_lang::lang('texts.Bank interests');
$bank_interests_account->save();
// double-entry account of received member fees
$fees_account = new Account_Model();
$fees_account->member_id = $member->id;
$fees_account->name = url_lang::lang('texts.Received member fees');
$fees_account->account_attribute_id = Account_attribute_Model::$member_fees;
$fees_account->comment = url_lang::lang('texts.Received member fees');
$fees_account->save();
// redirection to login screen
url::redirect(url_lang::base().'login');
die();
}
$view = new View('installation');
$view->title = url_lang::lang('texts.Installation');
$view->form = $form->html();
$view->render(TRUE);
}
/**
* Function checks validity of phone number.
* @param $input
* @return unknown_type
*/
function valid_phone($input)
{
$value = trim($input->value);
freenetis/trunk/kohana/application/controllers/accounts.php
} // end of edit function
function detail($acc_id = NULL)
{
if (isset($acc_id))
{
$model_account = new Account_Model($acc_id);
if ($model_account->owner_id == $_SESSION['member_id'])
{
if (!$this->gacl_class->acl_check('freenetis', 'view_own', 'all', $_SESSION['username'])) Controller::error(1);
}
else
{
if (!$this->gacl_class->acl_check('freenetis', 'view_all', 'all', $_SESSION['username'])) Controller::error(1);
}
$model_transfer = new Transfer_Model();
$credit = (float)$model_transfer->count_credit($acc_id, TRUE);
$view = new View('template');
$view->header = new View('base/header');
$view->content = new View('account_show');
// $view->content = $this->template->content;
$view->footer = new View('base/footer');
$view->header->title = url_lang::lang('texts.Account details');
$view->header->menu = Controller::render_menu();
$view->content->credit = $credit;
$view->content->acc_data = $model_account;
$view->content->message = $this->session->get_once('message');
$view->render(TRUE);
}
else
{
Controller::warning(1);;
}
} // end of detail function
/**
* @author Jiri Svitak
* Deletes account. It shouldn't be used. Accounts cannot be deleted.
......
} // end of new_transfer function
function unidentified_detail($trans_id = NULL)
{
if (!$this->gacl_class->acl_check('freenetis', 'new_own', 'all', $_SESSION['username'],get_class($this),'assign_transfers')) Controller::error(1);
if (isset($trans_id))
{
$model_transfer = new Transfer_Model();
$transfer = $model_transfer->get_transfer($trans_id);
$view = new View('template');
$view->header = new View('base/header');
$view->content = new View('unident_transfer_details');
$view->footer = new View('base/footer');
$view->header->title = url_lang::lang('texts.Transfer details');
$view->header->menu = Controller::render_menu();
//$view->content->heading = "Úprava uživatele ".$data['row']['name']." ".$data['row']['surname'];
$view->content->transfer = $transfer->current();
$view->content->message = $this->session->get_once('message');
$view->render(TRUE);
}
else
{
Controller::warning(1);;
}
} // end of unidentified_detail function
/***************************** SPECIAL AND AJAX FUNCTIONS ************************
**********************************************************************************
*********************HERE ARE FUNCTIONS FOR DIRECT GET ACCESS *******************/
freenetis/trunk/kohana/application/views/unident_transfer_details.php
<h2><?php echo url_lang::lang('texts.Detail of transfer number').' '.$transfer->mtid ?></h2><br />
<?php echo $message ? '<div class="message">'.$message.'</div>' : '' ?>
<?php echo '<a href="javascript:history.go(-1);">'.url_lang::lang('texts.Back to unidentified transfers.').'</a> | '.html::anchor(url_lang::base().'accounts/assign_transfer/'.$transfer->mtid,url_lang::lang('texts.Assign transfer')) ?><br />
<br />
<table class="extended" cellspacing="0" style="width:300px;float:left">
<tr>
<th colspan="2"><?php echo url_lang::lang('texts.Basic informations') ?></th>
</tr>
<tr>
<th>ID</th>
<td><?php echo $transfer->mtid ?></td>
</tr>
<tr>
<th><?php echo url_lang::lang('texts.Origin account') ?></th>
<td><?php if ($transfer->bank_info_id!='' && $transfer->aoname=='') echo $transfer->name; else echo html::anchor(url_lang::base().'members/show/'.$transfer->aoowner,$transfer->aoname); ?></td>
</tr>
<tr>
<th><?php echo url_lang::lang('texts.Destination account') ?></th>
<td><?php if ($transfer->bank_info_id!='' && $transfer->adname=='') echo $transfer->name; else echo html::anchor(url_lang::base().'members/show/'.$transfer->adowner,$transfer->adname); ?></td>
</tr>
<tr>
<th><?php echo url_lang::lang('texts.Amount') ?></th>
<td><?php echo number_format($transfer->amount, 2, ',', ' ').' '.url_lang::lang('texts.CZK'); ?></td>
</tr>
<tr>
<th><?php echo url_lang::lang('texts.Date and time') ?></th>
<td><?php echo $transfer->timestamp; ?></td>
</tr>
<tr>
<th><?php echo url_lang::lang('texts.Comment') ?></th>
<td><?php echo trim($transfer->text) ? $transfer->text : '&nbsp;'; ?></td>
</tr>
</table>
<?php if ($transfer->bank_info_id!='') { ?>
<table class="extended" cellspacing="0" style="float:left; margin-left:25px;">
<tr>
<th colspan="2"><?php echo url_lang::lang('texts.Bank info') ?></th>
</tr>
<tr>
<th><?php echo url_lang::lang('texts.Variable symbol') ?></th>
<td><?php echo trim($transfer->variable_symbol) ? $transfer->variable_symbol : '&nbsp;'; ?></td>
</tr>
<tr>
<th><?php echo url_lang::lang('texts.Constant symbol') ?></th>
<td><?php echo trim($transfer->constant_symbol) ? $transfer->constant_symbol : '&nbsp;'; ?></td>
</tr>
<tr>
<th><?php echo url_lang::lang('texts.Specific symbol') ?></th>
<td><?php echo trim($transfer->specific_symbol) ? $transfer->specific_symbol : '&nbsp;'; ?></td>
</tr>
<tr>
<th><?php echo url_lang::lang('texts.Date and time') ?></th>
<td><?php echo trim($transfer->date_time) ? $transfer->date_time : '&nbsp;'; ?></td>
</tr>
</table>
<?php } ?>
<br class="clear" /><br />

Také k dispozici: Unified diff