update 1.0.8.0

Commits for version update
This commit is contained in:
Manish Verma
2016-10-17 12:02:27 +05:30
parent dec927987b
commit 76e85db070
9674 changed files with 495757 additions and 58922 deletions

View File

@@ -3,6 +3,7 @@
namespace App\Http\Requests\helpdesk;
use App\Http\Requests\Request;
use App\Model\helpdesk\Settings\CommonSettings;
/**
* AgentRequest.
@@ -28,10 +29,15 @@ class AgentRequest extends Request
*/
public function rules()
{
$check = $this->check(new CommonSettings());
if ($check != 0) {
return $check;
}
return [
'user_name' => 'required|unique:users|max:30',
'first_name' => 'required|max:30',
'last_name' => 'required|max:30',
// 'last_name' => 'required|max:30',
'email' => 'required|unique:users',
'active' => 'required',
// 'account_status' => 'required',
@@ -39,8 +45,42 @@ class AgentRequest extends Request
'primary_department' => 'required',
'agent_time_zone' => 'required',
// 'phone_number' => 'phone:IN',
// 'mobile' => 'phone:IN',
'team' => 'required',
'mobile' => 'unique:users',
'team' => 'required',
];
}
/**
*@category Funcion to set rule if send opt is enabled
*
*@param object $settings (instance of Model common settings)
*
*@author manish.verma@ladybirdweb.com
*
*@return array|int
*/
public function check($settings)
{
$settings = $settings->select('status')->where('option_name', '=', 'send_otp')->first();
if ($settings->status == '1' || $settings->status == 1) {
return [
'user_name' => 'required|unique:users|max:30',
'first_name' => 'required|max:30',
// 'last_name' => 'required|max:30',
'email' => 'required|unique:users',
'active' => 'required',
// 'account_status' => 'required',
'group' => 'required',
'primary_department' => 'required',
'agent_time_zone' => 'required',
// 'phone_number' => 'phone:IN',
// 'mobile' => 'phone:IN',
'team' => 'required',
'mobile' => 'required|unique:users',
'country_code' => 'required',
];
} else {
return 0;
}
}
}

View File

@@ -31,7 +31,7 @@ class AgentUpdate extends Request
return [
'user_name' => 'required|max:30|min:3|unique:users,user_name,'.$this->segment(2),
'first_name' => 'required|max:30',
'last_name' => 'required|max:30',
// 'last_name' => 'required|max:30',
'email' => 'required|email|unique:users,email,'.$this->segment(2),
'active' => 'required',
'role' => 'required',
@@ -39,6 +39,7 @@ class AgentUpdate extends Request
'primary_department' => 'required',
'agent_time_zone' => 'required',
'team' => 'required',
'mobile' => 'unique:users,mobile,'.$this->segment(2),
];
}
}

View File

@@ -0,0 +1,37 @@
<?php
namespace App\Http\Requests\helpdesk;
use App\Http\Requests\Request;
/**
* DiagnoRequest.
*
* @author Ladybird <info@ladybirdweb.com>
*/
class ChangepasswordRequest extends Request
{
/**
* Determine if the user is authorized to make this request.
*
* @return bool
*/
public function authorize()
{
return true;
}
/**
* Get the validation rules that apply to the request.
*
* @return array
*/
public function rules()
{
return [
'change_password' => 'required',
// 'message' => 'required',
];
}
}

View File

@@ -3,6 +3,7 @@
namespace App\Http\Requests\helpdesk;
use App\Http\Requests\Request;
use App\Model\helpdesk\Settings\CommonSettings;
/**
* CompanyRequest.
@@ -28,11 +29,133 @@ class ClientRequest extends Request
*/
public function rules()
{
return [
$check = $this->check(new CommonSettings());
if ($check != 0) {
return $check;
$custom_rule = $this->getCustomRule();
$rules = array_merge($check, $custom_rule);
return $rules;
}
$current_rule = [
'Name' => 'required',
'Email' => 'required|email',
'Subject' => 'required',
'Details' => 'required',
];
$custom_rule = $this->getCustomRule();
$rules = array_merge($current_rule, $custom_rule);
return $rules;
}
public function getHelpTopic()
{
$help_topics = new \App\Model\helpdesk\Manage\Help_topic();
$topic = $this->input('helptopic');
$help_topic = $help_topics->where('id', $topic)->first();
return $help_topic;
}
public function getCustomRule()
{
$custom_form = '';
$help_topic = $this->getHelpTopic();
if ($help_topic) {
$custom_form = $help_topic->custom_form;
}
return $this->getForm($custom_form);
}
public function getForm($formid)
{
$id = '';
$forms = new \App\Model\helpdesk\Form\Forms();
$form = $forms->where('id', $formid)->first();
if ($form) {
$id = $form->id;
}
return $this->getFields($id);
}
public function getFields($formid)
{
$rules = [];
$field = new \App\Model\helpdesk\Form\Fields();
$fields = $field->where('forms_id', $formid)->get();
if ($fields->count() > 0) {
foreach ($fields as $fd) {
if ($fd->required === '1') {
$rules[str_replace(' ', '_', $fd->name)] = 'required';
}
$rules = array_merge($rules, $this->getChild($fd->id));
}
}
return $rules;
}
public function getChild($fieldid)
{
$children = new \App\Model\helpdesk\Form\FieldValue();
$childs = $children->where('field_id', $fieldid)->get();
$rules = [];
if ($childs->count() > 0) {
foreach ($childs as $child) {
$child_formid = $child->child_id;
return $this->getForm($child_formid);
}
}
return [];
}
/**
*@category Funcion to set rule if send opt is enabled
*
*@param object $settings (instance of Model common settings)
*
*@author manish.verma@ladybirdweb.com
*
*@return array|int
*/
public function check($settings)
{
$settings = $settings->select('status')->where('option_name', '=', 'send_otp')->first();
$email_mandatory = $settings->select('status')->where('option_name', '=', 'email_mandatory')->first();
if (($email_mandatory->status == 0 || $email_mandatory->status == '0')) {
if (!\Auth::check()) {
return [
'Name' => 'required',
'Email' => 'email',
'Subject' => 'required',
'Details' => 'required',
'mobile' => 'required',
];
} else {
return [
'Subject' => 'required',
'Details' => 'required',
];
}
} else {
return 0;
}
}
// public function purifyArray($array){
// $purified = [];
// foreach($array as $key=>$value){
// if(!is_array($value)){
// $purified[$key]="required";
// }else{
// $purified[] = $this->purifyArray($value);
// }
// }
// return array_dot($purified);
// }
}

View File

@@ -3,6 +3,7 @@
namespace App\Http\Requests\helpdesk;
use App\Http\Requests\Request;
use App\Model\helpdesk\Settings\CommonSettings;
/**
* CreateTicketRequest.
@@ -21,6 +22,15 @@ class CreateTicketRequest extends Request
return true;
}
public function wantsJson()
{
if (in_array('api', $this->segments())) {
return true;
}
return false;
}
/**
* Get the validation rules that apply to the request.
*
@@ -28,8 +38,12 @@ class CreateTicketRequest extends Request
*/
public function rules()
{
return [
$check = $this->check(new CommonSettings());
if ($check != 0) {
return $check;
}
return [
'email' => 'required|email|max:60',
'first_name' => 'required|min:3|max:40',
'helptopic' => 'required',
@@ -40,4 +54,69 @@ class CreateTicketRequest extends Request
'priority' => 'required',
];
}
/**
*@category Funcion to set rule if send opt is enabled
*
*@param object $settings (instance of Model common settings)
*
*@author manish.verma@ladybirdweb.com
*
*@return array|int
*/
public function check($settings)
{
$settings = $settings->select('status')->where('option_name', '=', 'send_otp')->first();
$email_mandatory = CommonSettings::select('status')->where('option_name', '=', 'email_mandatory')->first();
// dd($settings->status, $email_mandatory->status);
if (($settings->status == '1' || $settings->status == 1) && ($email_mandatory->status == '1' || $email_mandatory->status == 1)) {
return [
'email' => 'required|email|max:60',
'first_name' => 'required|min:3|max:40',
'helptopic' => 'required',
// 'dept' => 'required',
'sla' => 'required',
'subject' => 'required|min:5',
'body' => 'required|min:10',
'priority' => 'required',
'code' => 'required',
'mobile' => 'required',
];
} elseif (($settings->status == '0' || $settings->status == 0) && ($email_mandatory->status == '1' || $email_mandatory->status == 1)) {
return 0;
} elseif (($settings->status == '0' || $settings->status == 0) && ($email_mandatory->status == '0' || $email_mandatory->status == 0)) {
$rule = $this->onlyMobleRequired();
return $rule;
} elseif (($settings->status == '1' || $settings->status == 1) && ($email_mandatory->status == '0' || $email_mandatory->status == 0)) {
$rule = $this->onlyMobleRequired();
return $rule;
} else {
return 0;
}
}
/**
*@category function to make only moble required rule
*
*@param null
*
*@return array
*/
public function onlyMobleRequired()
{
return [
'email' => 'email|max:60',
'first_name' => 'required|min:3|max:40',
'helptopic' => 'required',
// 'dept' => 'required',
'sla' => 'required',
'subject' => 'required|min:5',
'body' => 'required|min:10',
'priority' => 'required',
'code' => 'required',
'mobile' => 'required',
];
}
}

View File

@@ -0,0 +1,48 @@
<?php
namespace App\Http\Requests\helpdesk\Job;
use App\Http\Requests\Request;
class TaskRequest extends Request
{
/**
* Determine if the user is authorized to make this request.
*
* @return bool
*/
public function authorize()
{
return true;
}
/**
* Get the validation rules that apply to the request.
*
* @return array
*/
public function rules()
{
return [
'fetching-commands' => 'required_if:email_fetching,1',
'notification-commands' => 'required_if:notification_cron,1',
'work-commands' => 'required_if:condition,1',
'workflow-dailyAt' => 'required_if:work-commands,dailyAt',
'notification-dailyAt' => 'required_if:notification-commands,dailyAt',
'fetching-dailyAt' => 'required_if:fetching-commands,dailyAt',
];
}
public function messages()
{
return [
'fetching-commands.required_if' => 'Please choose your Email Fetching timing',
'notification-commands.required_if' => 'Please choose your Email Notification timing',
'work-commands.required_if' => 'Please choose your Auto-close Workflow timing',
'workflow-dailyAt.required_if' => 'Please enter the time for Auto-close Workflow timing',
'notification-dailyAt.required_if' => 'Please enter the time for Email Notification timing',
'fetching-dailyAt.required_if' => 'Please enter the time for Email Fetching timing',
];
}
}

View File

@@ -0,0 +1,80 @@
<?php
namespace App\Http\Requests\helpdesk\Mail;
use App\Http\Requests\Request;
class MailRequest extends Request
{
/**
* Determine if the user is authorized to make this request.
*
* @return bool
*/
public function authorize()
{
return true;
}
/**
* Get the validation rules that apply to the request.
*
* @return array
*/
public function rules()
{
$id = $this->segment(2);
$email_address_rule = 'required|email|unique:emails';
if ($id) {
$email_address_rule = 'required|email|unique:emails,id,'.$id;
}
$rules = [
'email_address' => $email_address_rule,
'email_name' => 'required',
'password' => 'required',
'sending_protocol' => 'required_if:sending_status,on',
];
$driver = $this->input('sending_protocol');
$driver_rules = $this->getDriver($driver);
$rules = array_merge($rules, $driver_rules);
return $rules;
}
public function getDriver($serviceid)
{
$rules = [];
$mail_services = new \App\Model\MailJob\MailService();
$mail_service = $mail_services->find($serviceid);
if ($mail_service) {
$short = $mail_service->short_name;
$rules = $this->getRules($short);
}
return $rules;
}
public function getRules($short)
{
$rules = [];
switch ($short) {
case 'mailgun':
$rules = [
'domain' => 'required',
'secret' => 'required',
];
return $rules;
case 'mandrill':
$rules = [
'secret' => 'required',
];
return $rules;
default:
return $rules;
}
}
}

View File

@@ -0,0 +1,36 @@
<?php
namespace App\Http\Requests\helpdesk;
use App\Http\Requests\Request;
/**
* LoginRequest.
*
* @author Ladybird <info@ladybirdweb.com>
*/
class OtpVerifyRequest extends Request
{
/**
* Determine if the user is authorized to make this request.
*
* @return bool
*/
public function authorize()
{
return true;
}
/**
* Get the validation rules that apply to the request.
*
* @return array
*/
public function rules()
{
return [
'email' => 'required',
'mobile' => 'required',
];
}
}

View File

@@ -0,0 +1,47 @@
<?php
namespace App\Http\Requests\helpdesk;
use App\Http\Requests\Request;
/**
* BanlistRequest.
*
* @author Ladybird <info@ladybirdweb.com>
*/
class PriorityRequest extends Request
{
/**
* Determine if the user is authorized to make this request.
*
* @return bool
*/
public function authorize()
{
return true;
}
/**
* Get the validation rules that apply to the request.
*
* @return array
*/
public function rules()
{
return [
'priority' => 'required|max:10',
'status' => 'required',
'priority_desc' => 'required|max:255',
'priority_color' => 'required',
'ispublic' => 'required',
'priority_successfully_updated' => 'priority successfully updated',
'priority_successfully_created!!!' => 'priority successfully created',
];
}
}

View File

@@ -31,6 +31,7 @@ class ProfileRequest extends Request
return [
'first_name' => 'required',
'profile_pic' => 'mimes:png,jpeg',
// 'mobile' => 'unique:users,mobile',
];
}
}

View File

@@ -0,0 +1,43 @@
<?php
namespace App\Http\Requests\helpdesk\Queue;
use App\Http\Requests\Request;
class QueueRequest extends Request
{
/**
* Determine if the user is authorized to make this request.
*
* @return bool
*/
public function authorize()
{
return true;
}
/**
* Get the validation rules that apply to the request.
*
* @return array
*/
public function rules()
{
$request = $this->except('_token');
$rules = $this->setRule($request);
return $rules;
}
public function setRule($request)
{
$rules = [];
if (count($request) > 0) {
foreach ($request as $key => $value) {
$rules[$key] = 'required';
}
}
return $rules;
}
}

View File

@@ -3,6 +3,7 @@
namespace App\Http\Requests\helpdesk;
use App\Http\Requests\Request;
use App\Model\helpdesk\Settings\CommonSettings;
/**
* RegisterRequest.
@@ -28,6 +29,11 @@ class RegisterRequest extends Request
*/
public function rules()
{
$check = $this->check(new CommonSettings());
if ($check != 0) {
return $check;
}
return [
'email' => 'required|max:50|email|unique:users',
'full_name' => 'required',
@@ -35,4 +41,43 @@ class RegisterRequest extends Request
'password_confirmation' => 'required|same:password',
];
}
/**
*@category Funcion to set rule if send opt is enabled
*
*@param object $settings (instance of Model common settings)
*
*@author manish.verma@ladybirdweb.com
*
*@return array|int
*/
public function check($settings)
{
$settings = $settings->select('status')->where('option_name', '=', 'send_otp')->first();
$email_mandatory = $settings->select('status')->where('option_name', '=', 'email_mandatory')->first();
// dd($settings->status, $email_mandatory->status);
if ($settings->status == '0' || $settings->status == 0 && ($email_mandatory->status == 0 || $email_mandatory->status == '0')) {
return 0;
} elseif (($settings->status == '1' || $settings->status == 1) && ($email_mandatory->status == 1 || $email_mandatory->status == '1')) {
return [
'email' => 'required|max:50|email|unique:users',
'full_name' => 'required',
'password' => 'required|min:6',
'password_confirmation' => 'required|same:password',
'code' => 'required',
'mobile' => 'required|unique:users',
];
} elseif (($settings->status == '1' || $settings->status == 1) && ($email_mandatory->status == 0 || $email_mandatory->status == '0')) {
return [
'email' => 'max:50|email|unique:users',
'full_name' => 'required',
'password' => 'required|min:6',
'password_confirmation' => 'required|same:password',
'code' => 'required',
'mobile' => 'required|unique:users',
];
} else {
return 0;
}
}
}

View File

@@ -3,6 +3,7 @@
namespace App\Http\Requests\helpdesk;
use App\Http\Requests\Request;
use App\Model\helpdesk\Settings\CommonSettings;
/**
* Sys_userRequest.
@@ -28,10 +29,70 @@ class Sys_userRequest extends Request
*/
public function rules()
{
$check = $this->check(new CommonSettings());
if ($check != 0) {
return $check;
}
return [
'first_name' => 'required',
'user_name' => 'required|min:3|unique:users,user_name',
'email' => 'required|unique:users,email',
'mobile' => 'unique:users',
];
}
/**
*@category Funcion to set rule if send opt is enabled
*
*@param object $settings (instance of Model common settings)
*
*@author manish.verma@ladybirdweb.com
*
*@return array|int
*/
public function check($settings)
{
$settings = $settings->select('status')->where('option_name', '=', 'send_otp')->first();
$email_mandatory = CommonSettings::select('status')->where('option_name', '=', 'email_mandatory')->first();
if (($settings->status == '1' || $settings->status == 1) && ($email_mandatory->status == '1' || $email_mandatory->status == 1)) {
return [
'first_name' => 'required',
'user_name' => 'required|min:3|unique:users,user_name',
'email' => 'required|unique:users,email',
'country_code' => 'required',
'mobile' => 'required|unique:users',
];
} elseif (($settings->status == '0' || $settings->status == 0) && ($email_mandatory->status == '1' || $email_mandatory->status == 1)) {
return 0;
} elseif (($settings->status == '0' || $settings->status == 0) && ($email_mandatory->status == '0' || $email_mandatory->status == 0)) {
$rule = $this->onlyMobleRequired();
return $rule;
} elseif (($settings->status == '1' || $settings->status == 1) && ($email_mandatory->status == '0' || $email_mandatory->status == 0)) {
$rule = $this->onlyMobleRequired();
return $rule;
} else {
return 0;
}
}
/**
*@category function to make only moble required rule
*
*@param null
*
*@return array
*/
public function onlyMobleRequired()
{
return [
'first_name' => 'required',
'user_name' => 'required|min:3|unique:users,user_name',
'email' => 'unique:users,email',
'country_code' => 'required',
'mobile' => 'required|unique:users',
];
}
}

View File

@@ -33,6 +33,7 @@ class Sys_userUpdate extends Request
'first_name' => 'required',
'user_name' => 'required|min:3|unique:users,user_name,'.$this->segment(2),
'email' => 'required|email|unique:users,email,'.$this->segment(2),
'mobile' => 'unique:users,mobile,'.$this->segment(2),
];
}
}