Revize 378
Přidáno uživatelem Michal Kliment před asi 15 roky(ů)
freenetis/trunk/kohana/application/i18n/cs_CZ/texts.php | ||
---|---|---|
'select user' => 'Vyber uživatele',
|
||
'select vlan' => 'Vyber VLAN',
|
||
'selected account does not exist'=>'Vybraný účet neexistuje',
|
||
'self-registration' => 'Samo-registrace',
|
||
'send e-mail' => 'Pošli e-mail',
|
||
'send money to other account' => 'Poslat peníze na jiný účet',
|
||
'send sms' => 'Pošli SMS',
|
||
... | ... | |
'user successfully deleted' => 'Uživatel úspěšně smazán',
|
||
'user successfully updated' => 'Uživatel úspěšně aktualizován',
|
||
'user' => 'Uživatel',
|
||
'username already exists in database' => 'Uživatelské jméno již v databázi existuje',
|
||
'username or password do not match' => 'Uživatelské jméno nebo heslo nesouhlasí',
|
||
'username' => 'Login',
|
||
'users' => 'Uživatelé',
|
freenetis/trunk/kohana/application/controllers/settings.php | ||
---|---|---|
|
||
$this->form->group('')->label(url_lang::lang('texts.System variables'));
|
||
|
||
// just only variable page title
|
||
// page title
|
||
$this->form->input('title')->label(url_lang::lang('texts.Page title').':')->rules('length[3,40]|required')->value($this->setting->title);
|
||
|
||
// self-registration
|
||
$this->form->radio('self_registration')->label(url_lang::lang('texts.Self-registration').':')->options(array('1'=>url_lang::lang('texts.Yes'),'0'=>url_lang::lang('texts.No')))->default($this->setting->self_registration);
|
||
|
||
$this->form->submit('submit')->value(url_lang::lang('texts.Save'));
|
||
special::required_forge_style($this->form, ' *', 'required');
|
freenetis/trunk/kohana/application/controllers/login.php | ||
---|---|---|
|
||
//commented by Jiri Svitak (commented in View too)
|
||
// not fully functional and should be available only after whole system is complete
|
||
//$login->registration = html::anchor(url_lang::base().'registration', url_lang::lang('texts.New member'));
|
||
$login->registration = html::anchor(url_lang::base().'registration', url_lang::lang('texts.New member'));
|
||
|
||
$login->render(TRUE);
|
||
|
freenetis/trunk/kohana/application/controllers/registration.php | ||
---|---|---|
<?php
|
||
class Registration_Controller extends Controller {
|
||
|
||
class Registration_Controller extends Controller {
|
||
|
||
/**
|
||
* @author Michal Kliment
|
||
* Function to self-registration of candidates about membership (applicants)
|
||
*/
|
||
function index()
|
||
{
|
||
{
|
||
// if self-registration is not allow, redirect to login page
|
||
if (!$this->setting->self_registration) url::redirect(url_lang::base().'login');
|
||
|
||
$form = new Forge(url_lang::base()."registration", '', 'POST', array('id' => 'article_form'));
|
||
$form->set_attr('class', 'form_class')->set_attr('method', 'post');
|
||
$form = new Forge(url_lang::base()."registration", '', 'POST', array('id' => 'article_form'));
|
||
$form->set_attr('class', 'form_class')->set_attr('method', 'post');
|
||
|
||
$form->group('')->label(url_lang::lang('texts.login data'));
|
||
$form->input('login')->label(url_lang::lang('texts.username').':')->rules('required|length[3,50]')->callback(array($this, 'valid_username'));
|
||
$form->password('passwd')->label(url_lang::lang('texts.password').':')->rules('required|length[3,50]')->class('required');
|
||
$form->password('confirm_password')->label(url_lang::lang('texts.confirm password').':')->rules('required|length[3,50]')->matches($form->passwd);
|
||
$form->group('')->label(url_lang::lang('texts.login data'));
|
||
$form->input('login')->label(url_lang::lang('texts.username').':')->rules('required|length[3,50]')->callback(array($this, 'valid_username'));
|
||
$form->password('passwd')->label(url_lang::lang('texts.password').':')->rules('required|length[3,50]')->class('required');
|
||
$form->password('confirm_password')->label(url_lang::lang('texts.confirm password').':')->rules('required|length[3,50]')->matches($form->passwd);
|
||
|
||
$form->group('')->label(url_lang::lang('texts.contact data'));
|
||
$form->input('pre_title')->label(url_lang::lang('texts.pre title').':')->rules('length[3,40]');
|
||
$form->input('name')->label(url_lang::lang('texts.name').':')->rules('required|length[3,30]');
|
||
$form->input('middle_name')->label(url_lang::lang('texts.middle name').':')->rules('length[3,30]');
|
||
$form->input('surname')->label(url_lang::lang('texts.surname').':')->rules('required|length[3,60]');
|
||
$form->input('post_title')->label(url_lang::lang('texts.post title').':')->rules('length[3,30]');
|
||
$form->date('birthday')->label(url_lang::lang('texts.birthday').':')->years(date('Y')-100, date('Y'))->rules('required');
|
||
$form->input('street')->label(url_lang::lang('texts.street').':')->rules('required|length[1,200]');
|
||
$form->input('street_number')->label(url_lang::lang('texts.street number').':')->rules('required|length[1,50]');
|
||
$form->input('town')->label(url_lang::lang('texts.town').':')->rules('required|length[3,200]');
|
||
$form->input('zip_code')->label(url_lang::lang('texts.zip code').':')->rules('required|length[5,10]');
|
||
$form->input('phone')->label(url_lang::lang('texts.phone').':')->rules('required|length[9,40]')->callback(array($this, 'valid_phone'));
|
||
$form->input('email')->label(url_lang::lang('texts.email').':')->rules('length[3,50]|valid_email')->callback(array($this, 'valid_email'));
|
||
$form->group('')->label(url_lang::lang('texts.contact data'));
|
||
$form->input('title1')->label(url_lang::lang('texts.pre title').':')->rules('length[3,40]');
|
||
$form->input('name')->label(url_lang::lang('texts.name').':')->rules('required|length[3,30]');
|
||
$form->input('middle_name')->label(url_lang::lang('texts.middle name').':')->rules('length[3,30]');
|
||
$form->input('surname')->label(url_lang::lang('texts.surname').':')->rules('required|length[3,60]');
|
||
$form->input('title2')->label(url_lang::lang('texts.post title').':')->rules('length[3,30]');
|
||
$form->input('membername')->label(url_lang::lang('texts.Name of organization').':')->rules('length[1,60]');
|
||
$form->input('organization_identifier')->label(url_lang::lang('texts.Organization identifier').':')->rules('length[3,20]');
|
||
$form->date('birthday')->label(url_lang::lang('texts.birthday').':')->years(date('Y')-100, date('Y'))->rules('required');
|
||
$form->input('street')->label(url_lang::lang('texts.street').':')->rules('required|length[1,200]');
|
||
$form->input('street_number')->label(url_lang::lang('texts.street number').':')->rules('required|length[1,50]');
|
||
$form->input('quarter')->label(url_lang::lang('texts.Quarter').':')->rules('length[1,50]');
|
||
$form->input('town')->label(url_lang::lang('texts.town').':')->rules('required|length[3,200]');
|
||
$form->input('zip_code')->label(url_lang::lang('texts.zip code').':')->rules('required|length[5,10]');
|
||
$form->input('phone')->label(url_lang::lang('texts.phone').':')->rules('required|length[9,40]')->callback(array($this, 'valid_phone'));
|
||
$form->input('email')->label(url_lang::lang('texts.email').':')->rules('length[3,50]|valid_email')->callback(array($this, 'valid_email'));
|
||
|
||
|
||
$form->submit('submit')->value(url_lang::lang('texts.register'));
|
||
special::required_forge_style($form, ' *', 'required');
|
||
$form->submit('submit')->value(url_lang::lang('texts.register'));
|
||
special::required_forge_style($form, ' *', 'required');
|
||
|
||
if($form->validate())
|
||
if($form->validate())
|
||
{
|
||
$form_data = $form->as_array();
|
||
foreach($form_data as $key => $value)
|
||
{
|
||
$form_data = $form->as_array();
|
||
foreach($form_data as $key => $value)
|
||
{
|
||
$form_data[$key] = htmlspecialchars($value);
|
||
}
|
||
$user_data=new User_Model;
|
||
$member_data=new Member_Model;
|
||
$account_data = new Account_Model;
|
||
|
||
$account_data->type = 'analytic';
|
||
$account_data->name = $form_data['name'].' '.$form_data['surname'];
|
||
$account_data->start_amount = 0;
|
||
|
||
//print_r($member_data);die();
|
||
$user_data->name = $form_data['name'];
|
||
$user_data->middle_name = $form_data['middle_name'];
|
||
$user_data->password = sha1($form_data['passwd']);
|
||
$user_data->login = $form_data['username'];
|
||
$user_data->surname = $form_data['surname'];
|
||
$user_data->pre_title = $form_data['pre_title'];
|
||
$user_data->post_title = $form_data['post_title'];
|
||
$user_data->birthday = date("Y-m-d",$form_data['birthday']);
|
||
$user_data->phone = $form_data['phone'];
|
||
$user_data->email = $form_data['email'];
|
||
$user_data->type = 'wannabe';
|
||
|
||
$member_data->entrance_date = date("Y-m-d");
|
||
//$member_data->name = $form_data['name'];
|
||
$member_data->name = $form_data['name'].' '.$form_data['surname'];
|
||
$member_data->street = $form_data['street'];
|
||
$member_data->street_number = $form_data['street_number'];
|
||
$member_data->town = $form_data['town'];
|
||
$member_data->ZIP_code = $form_data['zip_code'];
|
||
unset($form_data);
|
||
$member_saved = $member_data->save();
|
||
$user_data->member_id = $member_data->id;
|
||
$account_data->owner_id = $member_data->id;
|
||
$saved = $user_data->save();
|
||
Controller::insert_phpgacl($user_data->id,$user_data->surname.' '.$user_data->name,$user_data->login,'wannabe');
|
||
|
||
if ($member_saved && $saved && $account_data->save())
|
||
{
|
||
// $this->load->library('session');
|
||
// $this->session->set_flash('vypis', 'Uživatel úspěšně upraven.');
|
||
echo "je to super";
|
||
}
|
||
else
|
||
{
|
||
// $this->load->library('session');
|
||
// $this->session->set('vypis', 'Uživatele se nepodařilo upravit.');
|
||
echo "je to na nic";
|
||
}
|
||
// url::redirect(url_lang::base().'users/index/'.(int)$m_id, 'redirect');*/
|
||
$form_data[$key] = htmlspecialchars($value);
|
||
}
|
||
else
|
||
{
|
||
//echo $form->html();
|
||
}
|
||
$user = new User_Model;
|
||
$member = new Member_Model;
|
||
$enum_type = new Enum_type_Model();
|
||
|
||
|
||
$user->login = $form_data['login'];
|
||
$user->password = sha1($form_data['passwd']);
|
||
$user->name = $form_data['name'];
|
||
$user->middle_name = $form_data['middle_name'];
|
||
$user->surname = $form_data['surname'];
|
||
$user->pre_title = $form_data['title1'];
|
||
$user->post_title = $form_data['title2'];
|
||
$user->birthday = date("Y-m-d",$form_data['birthday']);
|
||
$user->phone = $form_data['phone'];
|
||
$user->email = $form_data['email'];
|
||
$user->type = User_Model::$member;
|
||
|
||
$member->name = ($form_data['membername']!='') ? $form_data['membername'] : $user->surname.' '.$user->name;
|
||
$member->street_number = $form_data['street_number'];
|
||
$member->street = $form_data['street'];
|
||
$member->town = $form_data['town'];
|
||
$member->quarter = $form_data['quarter'];
|
||
$member->ZIP_code = $form_data['zip_code'];
|
||
$member->type = $enum_type->get_type_id('Applicant');
|
||
$member->organization_identifier = $form_data['organization_identifier'];
|
||
|
||
$member_saved = $member->save();
|
||
$user->member_id = $member->id;
|
||
$user_saved = $user->save();
|
||
|
||
url::redirect(url_lang::base().'login');
|
||
|
||
}
|
||
|
||
$view = new View('registration');
|
||
$view->title = url_lang::lang('texts.registration form');
|
||
... | ... | |
$view->render(TRUE);
|
||
|
||
|
||
}
|
||
}
|
||
|
||
function valid_username($input)
|
||
{
|
||
$user_model=new User_Model();
|
||
if ($user_model->username_exist($input->value) || trim($input->value)=='')
|
||
if ($user_model->username_exist($input->value) && !trim($input->value)=='')
|
||
{
|
||
$input->add_error('required', url_lang::lang('texts.Username already exists in database.'));
|
||
$input->add_error('required', url_lang::lang('texts.Username already exists in database'));
|
||
}
|
||
}
|
||
|
||
function valid_phone($input)
|
||
{
|
||
$user_model=new User_Model();
|
||
if ($user_model->phone_exist($input->value) || trim($input->value)=='')
|
||
if ($user_model->phone_exist($input->value) && !trim($input->value)=='')
|
||
{
|
||
$input->add_error('required', url_lang::lang('texts.Username already exists in database.'));
|
||
$input->add_error('required', url_lang::lang('texts.Phone already exists in database.'));
|
||
}
|
||
}
|
||
|
||
function valid_email($input)
|
||
{
|
||
$user_model=new User_Model();
|
||
if ($user_model->email_exist($input->value) || trim($input->value)=='')
|
||
if ($user_model->email_exist($input->value) && !trim($input->value)=='')
|
||
{
|
||
$input->add_error('required', url_lang::lang('texts.Username already exists in database.'));
|
||
$input->add_error('required', url_lang::lang('texts.Email already exists in database.'));
|
||
}
|
||
}
|
||
}
|
freenetis/trunk/kohana/application/libraries/Setting.php | ||
---|---|---|
|
||
private $title = 'FreeNetIS';
|
||
private $db_schema_version = 0;
|
||
private $currency = 'CZK';
|
||
private $entrance_fee = 0;
|
||
private $monthly_member_payment = 0;
|
||
private $bank_fee = 0;
|
||
private $transfer_fee = 0;
|
||
private $penalty = 0;
|
||
private $currency = 'CZK';
|
||
private $self_registration = 1;
|
||
|
||
public function __construct()
|
||
{
|
freenetis/trunk/kohana/application/views/login.php | ||
---|---|---|
<?php echo form::submit('submit', url_lang::lang('texts.login'), ' class="submit"') ?>
|
||
|
||
</fieldset>
|
||
<?php // echo $registration ?>
|
||
<?php
|
||
// if self-registration is allow, prints anchor
|
||
echo ($this->setting->self_registration) ? $registration : ''
|
||
?>
|
||
<?php echo form::close() ?>
|
||
</div>
|
||
<div id="lock"> </div>
|
Také k dispozici: Unified diff
Pridana zpet samo-registrace zajemcu o clenstvi, pridano moznost tuto samo-registraci zapnout/vypnout v nastaveni.