public function index_post() { $data = json_decode(file_get_contents("php://input")); $surname = $data->surname; $firstname = $data->firstname; $othername = $data->othername; $dateofbirth = $data->dateofbirth; $gender = $data->gender; $phone = phone_helper($data->phone); $occupation = $data->occupation; $picture = $data->picture; $email = ''; $pin = $data->pin; $pass = generateStrongPassword($length = 9, $add_dashes = false, $available_sets = 'luds'); $name = $data->name; $additional_data = array('surname' => $surname, 'firstname' => $firstname, 'othername' => $othername, 'dateofbirth' => $dateofbirth, 'gender' => $gender, 'phone' => $phone, 'occupation' => $occupation, 'picture' => $picture, 'pin' => $pin); if (empty($data->surname)) { $error = 'Surnname is required'; $this->set_response($error, REST_Controller::HTTP_BAD_REQUEST); } $create = $this->ion_auth->register($name, $pass, $email, $additional_data); // $create = $this->voter->create_user($surname, $firstname, $othername, $dateofbirth, $gender, $phone, $occupation,/*$email,*/ $picture, $pass, $name); if ($create) { $message = "Your Login Details are: \n LoginID: " . $name . " \n Login Password: "******"Your Login Details are: \n LoginID: " . $name . " \n Login Password: " . $pass; // sms($phone, $message); } else { $error = $this->voter->print_errors(); $this->set_response($error, REST_Controller::HTTP_INTERNAL_SERVER_ERROR); } // var_dump($create); }
public function index_post() { $data = json_decode(file_get_contents("php://input")); $surname = $data->surname; $firstname = $data->firstname; $othername = $data->othername; $dateofbirth = $data->dateofbirth; $gender = $data->gender; $phone = phone_helper($data->phone); $occupation = $data->occupation; $email = $data->email; $pass = generateStrongPassword($length = 9, $add_dashes = false, $available_sets = 'luds'); $name = $data->name; $picture = $data->picture; if (empty($data->surname)) { $error = 'Surnname is required'; $this->set_response($error, REST_Controller::HTTP_BAD_REQUEST); } $create = $this->aauth->create_user($surname, $firstname, $othername, $dateofbirth, $gender, $phone, $occupation, $email, $pass, $name, $picture); if ($create) { $success = 'Account Has Been Created'; $this->set_response($success, REST_Controller::HTTP_CREATED); $message = "Your Login Details are: \n LoginID: " . $name . " \n Login Password: " . $pass; // sms($phone, $message); } else { $error = $this->aauth->print_errors(); $this->set_response($error, REST_Controller::HTTP_INTERNAL_SERVER_ERROR); } // var_dump($create); }
if (strpos($available_sets, 'd') !== false) { $sets[] = '23456789'; } if (strpos($available_sets, 's') !== false) { $sets[] = '!@?'; } $all = ''; $password = ''; foreach ($sets as $set) { $password .= $set[array_rand(str_split($set))]; $all .= $set; } $all = str_split($all); for ($i = 0; $i < $length - count($sets); $i++) { $password .= $all[array_rand($all)]; } $password = str_shuffle($password); if (!$add_dashes) { return $password; } $dash_len = floor(sqrt($length)); $dash_str = ''; while (strlen($password) > $dash_len) { $dash_str .= substr($password, 0, $dash_len) . '-'; $password = substr($password, $dash_len); } $dash_str .= $password; return $dash_str; } $password = generateStrongPassword(9); echo "Suggestion for password: " . $password;
/** * generate ssh key * @param $data */ function generate_sshkey($data) { $result = array(); $cpanel = $data->get_instance('cpanel'); $cpanel_file = $data->get_instance('fileman_no_auth'); #$cpanel_file = new HW_CPanel_Fileman($host,$cpaneluser, $cpaneluser_pass); if ($cpanel) { $key = $data->cpaneluser . '-sshkey'; $keypass = generateStrongPassword(20, false, 'lud'); //create safe password //list keys $keys = $cpanel->list_sshkeys(); $keys = json_decode($keys); if (isset($keys->cpanelresult->data) && is_array($keys->cpanelresult->data)) { foreach ($keys->cpanelresult->data as $_key) { if (strpos($_key->name, $key) !== false) { //del putty key file $putty_key = "/home/{$data->cpaneluser}/.ssh/putty/{$_key->name}.ppk"; $cpanel_file->delfiles($putty_key); //remove ssh key file on server $cpanel->del_sshkey($_key->name); //del private key $cpanel->del_sshkey($_key->name, 1); //del public key /*unlink($key->file); if(!empty($key->haspub) && $key->haspub) { unlink($key->file.".pub"); }*/ } } } //generate ssh key $res = $cpanel->generate_sshkey($key, $keypass); $result[] = array('sshkey' => array('key' => $key, 'pass' => $keypass)); $result[] = (array) json_decode($res); //save ssh key to db for this account $data = array('ssh_key' => $key, 'ssh_key_pass' => $keypass); update_cpacct($data, $data->acc_id); //authorize key $res = $cpanel->authorizes_sshkey($key); $result[] = (array) json_decode($res); //convert key to ppk $res = $cpanel->sshkey_converttoppk($key, $keypass); $result[] = (array) json_decode($res); ajax_output($result); } }
public function invite_user() { $css_js_for_invite_user = array('codeboxr_js' => array('underscore-min', 'bootstrap-tab', 'bootstrap-filestyle.min', 'bootstrap.wizard.min', 'section-member')); //If the top level user has not set org name //they will redirect to profile editing page. if (!has_organisation()) { redirect(base_url('user/edit-profile')); } if ($this->user_info->user_access_level > 3) { redirect(base_url('notes')); } //Get all class list from logged in user. $section_list = $this->user_model->get_all_section_list(); //check if there any class created or not. //if not redirect to home url. if ($section_list->num_rows() < 1) { $this->session->set_flashdata('add_section_waring', 'Add class before invite teacher.'); redirect(base_url('user')); } $data['login_user_data'] = $this->user_info; $data['section_list'] = $section_list->result(); //collect info from session $data['invite_section_id'] = $this->session->flashdata('invite_section_id'); $data['send_invitation_success'] = $this->session->flashdata('send_invitation_success'); $data['send_invitation_error'] = $this->session->flashdata('send_invitation_error'); $this->load->library('form_validation', '', 'frm_val'); $this->frm_val->set_rules('invite_email', 'Email of Teacher', 'trim|xss_clean|required|valid_email'); $this->frm_val->set_rules('invite_first_name', 'First Name of Teacher', 'trim|required|xss_clean'); $this->frm_val->set_rules('invite_last_name', 'Last Name of Teacher', 'trim|xss_clean'); $this->frm_val->set_rules('invite_section_id', 'Class', 'trim|xss_clean|required'); if ($this->frm_val->run() == false) { } else { $this->load->model('section_model'); if (!$this->section_model->has_section(set_value('invite_section_id'))) { $this->session->set_flashdata('invite_section_id', '<div class="alert"><button type="button" class="close" data-dismiss="alert">×</button><strong>Sorry </strong>we have not found the class that you have selected. Please select right one.</div>'); redirect(base_url('user/' . $this->uri->segment(2))); } elseif ($this->section_model->is_already_assigned(set_value('invite_email'), set_value('invite_section_id'))) { $this->session->set_flashdata('invite_section_id', '<div class="alert alert-info"><button type="button" class="close" data-dismiss="alert">×</button><strong>' . set_value('invite_email') . ' </strong>this email already assigned to that class, that you have selected.</div>'); redirect(base_url('user/' . $this->uri->segment(2))); } else { $time = time(); $section_assign_info = array('assign_id' => md5($time . set_value('invite_email') . $this->user_info->id), 'assign_organisation_id' => $this->user_info->id, 'assign_access_id' => md5(set_value('invite_email')), 'assign_section_id' => set_value('invite_section_id'), 'assign_group_id' => '', 'assign_time' => $time); if ($result = $this->section_model->assign_section($section_assign_info)) { $this->load->library('email'); if ($assigned_user_info = $this->user_model->has_in_user(set_value('invite_email'))) { $data['in_temp'] = false; $data['auto_register'] = false; $data['recipient_first_name'] = $assigned_user_info->first_name; } elseif ($user_info = $this->user_model->has_in_temp_user(set_value('invite_email'))) { $this->dx_auth->activate($user_info->activation_key); $data['in_temp'] = true; $data['auto_register'] = false; $data['recipient_first_name'] = set_value('invite_first_name'); } else { $this->config->set_item('DX_email_activation', false); $pass = generateStrongPassword(); $invite_name_of_user = array('fname' => set_value('invite_first_name'), 'lname' => set_value('invite_last_name')); $this->dx_auth->register('', $pass, set_value('invite_email'), $register_as = '5', $invite_name_of_user); $data['in_temp'] = false; $data['auto_register'] = true; $data['recipient_first_name'] = set_value('invite_first_name'); } $data['organisation_id'] = $this->user_info->id; $data['assign_section_id'] = $section_assign_info['assign_section_id']; $data['assign_access_id'] = $section_assign_info['assign_access_id']; $data['password'] = $pass; //get the content of email body $invitation_content = $this->view('page/email/invitation', $data, true); //email to assigned user $this->email->from('*****@*****.**'); $this->email->to(set_value('invite_email')); $this->email->subject('Invitation to ' . $this->session->userdata('CN_org_name')); $this->email->message($invitation_content); if ($this->email->send()) { $this->session->set_flashdata('send_invitation_success', '<div class="alert alert-success"><button type="button" class="close" data-dismiss="alert">×</button>Invitation send to ' . set_value('invite_email') . ' successfully.</div>'); } else { $this->section_model->remove_assigned_info($result->insert_id()); $this->session->set_flashdata('send_invitation_error', '<div class="alert alert-error"><button type="button" class="close" data-dismiss="alert">×</button>Critical error on sending invitation. Please <a href="' . base_url('contact-us') . '">contact</a> or provide <a href="' . base_url('feedback') . '">feedback</a> to CloudeNotes Owner.</div>'); } redirect(base_url('user/' . $this->uri->segment(2))); } else { $this->session->set_flashdata('send_invitation_error', '<div class="alert alert-error"><button type="button" class="close" data-dismiss="alert">×</button>Something went wrong. Please try again.</div>'); } redirect(base_url('user/' . $this->uri->segment(2))); } } $this->_render_admin('auth_user/invite_user', $data, $css_js_for_invite_user); }
<html> <head> <title>Þifremi Sýfýrla</title> </head> <body> <?php if (isset($_GET["Mail"]) & isset($_GET["ResetKey"])) { include 'DBConnect.php'; $Mail = $_GET["Mail"]; $ResetKey = $_GET["ResetKey"]; $result = DB::getRow("SELECT Email,AdiSoyadi,SifirlamaKodu FROM uyeler WHERE Email=:Email", array(':Email' => $Mail)); if ($result == false) { echo "Bu Mail Adresi Bulunamadi."; } else { if (md5(base64_encode($result->SifirlamaKodu)) == $ResetKey) { $YeniSifreSafe = generateStrongPassword(); $YeniSifre = md5($YeniSifreSafe); if (DB::exec("UPDATE uyeler SET Sifre=:Sifre, SifirlamaKodu=NULL WHERE ( Email=:Email);", array(':Email' => $Mail, ':Sifre' => $YeniSifre)) == false) { echo "Sifreniz Güncellenirken hata olustu."; } else { if (SifreGonder($Mail, $result->AdiSoyadi, $YeniSifreSafe)) { echo "Yeni Þifreniz Mail olarak gönderilmiþtir."; } else { echo "Mail gönderilirken hata oluþtu"; } } } else { echo "Gönderilen Sýfýrlama Kodu Hatalý."; } } }
/** * generate password * @param $cp */ function generate_strong_pass($cp) { #$cpanel = new HW_CPanel_Mysql($host, $cpaneluser, $cpaneluser_pass); #$t=$cpanel->xmlapi->api1_query($cpaneluser, 'Mysql','userdb' ,array('db4'));print_r($t); $available_sets = _req('available_sets', 'luds'); echo generateStrongPassword(STRONG_PASS_LENGTH, false, $available_sets); }