load->database(); $query = $this->db->query('SELECT * FROM users WHERE username = "'.$username.'" AND password = "'.hash('sha256', $password).'" AND is_enabled = 1 LIMIT 1'); if($query->num_rows() == 1){ return 1; } else{ return 0; } } public function getAllUser(){ $this->load->database(); $query = $this->db->query('SELECT * FROM users JOIN permissions ON users.permission_slug = permissions.permission_slug ORDER BY fullname ASC'); $userResults = $query->result(); foreach($userResults as $userResultItem){ if($userResultItem->profile_img_url == ''){ $userResultItem->profile_img_url = base_url().'img/default_profile.jpg'; } } return $userResults; } public function getUserByUsername($username){ $this->load->database(); $query = $this->db->query('SELECT * FROM users JOIN permissions ON users.permission_slug = permissions.permission_slug WHERE username = "'.$username.'" LIMIT 1'); if($query->num_rows() == 1){ if($query->result()[0]->profile_img_url == ''){ $query->result()[0]->profile_img_url = base_url().'img/default_profile.jpg'; } return $query->result()[0]; } else{ return 0; } } public function getAllUserPermission(){ $this->load->database(); $query = $this->db->query('SELECT * FROM permissions;'); if($query->num_rows() > 0){ return $query->result(); } else{ return 0; } } public function getUserById($userId){ $this->load->database(); $query = $this->db->query('SELECT * FROM users JOIN permissions ON users.permission_slug = permissions.permission_slug WHERE user_id = "'.$userId.'" LIMIT 1'); if($query->num_rows() == 1){ if($query->result()[0]->profile_img_url == ''){ $query->result()[0]->profile_img_url = base_url().'img/default_profile.jpg'; } return $query->result()[0]; } else{ return 0; } } public function deleteUser($userId){ $this->load->database(); $query = $this->db->query('DELETE FROM users WHERE user_id = "'.$userId.'";'); } public function isUsernameAvailable($username){ $this->load->database(); $query = $this->db->query('SELECT * FROM users WHERE username = "'.$username.'";'); if($query->num_rows() == 1){ return 0; } else{ return 1; } } public function updateUser($userId, $userArray){ $this->load->database(); foreach($userArray as $propertyKey => $propertyValue){ $query = $this->db->query('UPDATE users SET '.$propertyKey.' = "'.$propertyValue.'" WHERE user_id = "'.$userId.'";'); } } public function addNewUser($userArray){ $this->load->database(); if(!is_object($this->getUserByUsername($userArray['username']))){ $query = $this->db->query('INSERT INTO users (username, password, fullname, permission_slug, is_enabled, user_notes) VALUES("'.$userArray['username'].'", "'.hash('sha256', $userArray['password']).'", "'.$userArray['fullname'].'", "'.$userArray['permission_slug'].'", "'.$userArray['is_enabled'].'", "'.$userArray['user_notes'].'");'); return 1; } else{ return 0; } } public function getAllUserGroup(){ $this->load->database(); $query = $this->db->query('SELECT * FROM permissions ORDER BY permission_name ASC;'); return $query->result(); } public function getPermissionById($groupId){ $this->load->database(); $query = $this->db->query('SELECT * FROM permissions WHERE permission_id = "'.$groupId.'" LIMIT 1;'); return $query->result()[0]; } public function getPermissionBySlug($permission_slug){ $this->load->database(); $query = $this->db->query('SELECT * FROM permissions WHERE permission_slug = "'.$permission_slug.'" LIMIT 1;'); return $query->result()[0]; } public function sendEmail($addressList, $lang, $subpage){ // Import PHPMailer classes into the global namespace // These must be at the top of your script, not inside a function echo $lang; if(!empty($addressList)){ foreach($addressList as $addressListItem){ // Instantiation and passing `true` enables exceptions $mail = new PHPMailer(true); $mail->SMTPDebug = false; $mail->do_debug = 1; try { //Server settings $mail->CharSet = 'UTF-8'; //$mail->SMTPDebug = SMTP::DEBUG_SERVER; // Enable verbose debug output $mail->isSMTP(); //Send using SMTP $mail->Host = 'mail.absolutesolution.hu'; //Set the SMTP server to send through $mail->SMTPAuth = true; //Enable SMTP authentication $mail->Username = 'reservations@studiobeve.no'; //SMTP username $mail->Password = 'StudioBeve-1234'; //SMTP password $mail->SMTPSecure = PHPMailer::ENCRYPTION_SMTPS; //Enable TLS encryption; `PHPMailer::ENCRYPTION_SMTPS` encouraged $mail->Port = 465; //TCP port to connect to, use 465 for `PHPMailer::ENCRYPTION_SMTPS` above //Recipients $mail->setFrom('reservations@studiobeve.no', '[studiobeve]'); $mail->addAddress($addressListItem['addressee_email'], $addressListItem['addressee_name']); // Add a recipient //$mail->addAddress('ellen@example.com'); // Name is optional //$mail->addReplyTo('info@example.com', 'Information'); $mail->addCC('evelin@studiobeve.no'); //$mail->addBCC('bcc@example.com'); // Attachments if(is_array($addressListItem['attachments'])){ $attachments = $addressListItem['attachments']; foreach($attachments as $attachmentsItem){ $mail->addAttachment(getcwd().'/documents/'.$attachmentsItem); // Add attachments } } //$mail->addAttachment('/tmp/image.jpg', 'new.jpg'); // Optional name // Content $mail->isHTML(true); // Set email format to HTML $mail->Subject = $addressListItem['subject']; ob_start(); $body = ob_get_clean(); $body .= $addressListItem['content']; $mail->Body = $body; //$mail->AltBody = strip_tags($answer_message); $mail->send(); echo 'Üzenet elküldve'; if($subpage != ''){ header('location:'.base_url().$lang.'/booking-finished/'.$subpage); } } catch (Exception $e) { //header('location:'.base_url().'manage-applicants/?email-sent=false&error='.$mail->ErrorInfo); log_message('error', 'sendEmail FAILED: ' . $mail->ErrorInfo); echo "Üzenetküldési hiba. Mailer Error: {$mail->ErrorInfo}"; } } } } public function is_user_admin($username){ $this->load->database(); $query = $this->db->query('SELECT * FROM users JOIN permissions ON users.permission_slug = permissions.permission_slug WHERE username = "'.$username.'" LIMIT 1'); if($query->num_rows() == 1){ if($query->result()[0]->permission_slug == 'admin'){ return 1; } else{ return 0; } } else{ return 0; } } } ?>