Projekt

Obecné

Profil

« Předchozí | Další » 

Revize 378

Přidáno uživatelem Michal Kliment před asi 15 roky(ů)

Pridana zpet samo-registrace zajemcu o clenstvi, pridano moznost tuto samo-registraci zapnout/vypnout v nastaveni.

Zobrazit rozdíly:

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">&nbsp;</div>

Také k dispozici: Unified diff