diff --git a/code/public/.htaccess b/code/.htaccess similarity index 100% rename from code/public/.htaccess rename to code/.htaccess diff --git a/code/app/Exceptions/Handler.php b/code/app/Exceptions/Handler.php deleted file mode 100644 index c21ad8b65..000000000 --- a/code/app/Exceptions/Handler.php +++ /dev/null @@ -1,50 +0,0 @@ - - */ -class MailController extends Controller { - - /** - * @var string - */ - public $email = ""; - - /** - * @var string - */ - public $stream = ""; - - /** - * constructor - * Create a new controller instance. - * @param type TicketController $TicketController - */ - public function __construct(TicketController $TicketController) { - $this->TicketController = $TicketController; - } - - /** - * Decode Imap text - * @param type $str - * @return type string - */ - function decode_imap_text($str) { - $result = ''; - $decode_header = imap_mime_header_decode($str); - foreach ($decode_header AS $obj) { - $result .= htmlspecialchars(rtrim($obj->text, "\t")); - } - return $result; - } - - /** - * get Imap data - */ - function getdata() { - /** - * fetching all the emails allowed to - * check for mails to read tickets - */ - $email = new Emails; - $mailboxes = $email->get(); - - //check for any value in $mailbox - if (count($mailboxes) >= 0) { - foreach ($mailboxes as $current_mailbox) { - //checking for fetching status of the emails - if ($current_mailbox['fetching_status']) { - /** - *@imap_open requres three arguments for - * reading mails in each emails - * - * 1. Host - * 2. email address - * 3. password - */ - $stream = @imap_open($current_mailbox['fetching_host'], $current_mailbox['email_address'], $current_mailbox['password']); - /** - * @var $testvar type string - */ - $testvar = ""; - // checking for any result in imap_open with value - if ($stream >= 0) { - /** - * @imap_search requires two arguments to check - * from when to check for mails - * - * 1. result of @imap_open $stream - * 2. date in negative - */ - $emails = imap_search($stream, 'SINCE ' . date('d-M-Y', strtotime("-1 day"))); - // checking if $emails has received any value - if ($emails != false) { - // count for mails - if (count($emails) >= 0) { - rsort($emails); - foreach ($emails as $email_id) { - /** - * @imap_fetch_overview requires three arguments to check - * the overview of each mails - * - * 1. result of @imap_open $stream - * 2. emails numbers $emails_id - * 3. and a 0 value - */ - $overview = imap_fetch_overview($stream, $email_id, 0); - $var = $overview[0]->seen ? 'read' : 'unread'; - // check for unread messages - if ($var == 'read') { - $testvar = 'set'; - /** - * fetching overview details fo each mails - * - * 1. from address - * 2. subject - * 3. date and time - */ - $from = $this->decode_imap_text($overview[0]->from); - $subject = $this->decode_imap_text($overview[0]->subject); - $datetime = $overview[0]->date; - // separate date and time - $date_time = explode(" ", $datetime); - $date = $date_time[1] . "-" . $date_time[2] . "-" . $date_time[3] . " " . $date_time[4]; - - //======================================================================= - // check user - //======================================================================= - // $subject = $subject; - // $match = '/^[[A-Z]{4}-[0-9]{4}-[0-9]{7}]][A-z0-9]$/'; - // if(preg_match($match, $subject)) - // { - // echo "success"; - // } - // else - // { - // echo "fail"; - // } - $emailadd = explode('&', $from); - $username = $emailadd[0]; - $emailadd = substr($emailadd[1], 3); - $date = date('Y-m-d H:i:s', strtotime($date)); - $system = "Email"; - $phone = ""; - $helptopic = $this->TicketController->default_helptopic(); - $sla = $this->TicketController->default_sla(); - $structure = imap_fetchstructure($stream, $email_id); - // $image1 = $structure->parts[0]->parts[1]->parameters[0]->value; - // $image = $structure->parts[1]->parameters[0]->value; - // echo ''; - // echo ''; - // dd($structure); - - /** - * There are 5 types of mail readable formats - * - * 1. Html - * 2. Alternative - * 3. Related - * 4. Mixed - */ - - // checking if the format is Html - if ($structure->subtype == 'HTML') { - $body2 = imap_fetchbody($stream, $email_id, 1); - if ($body2 == null) { - $body2 = imap_fetchbody($stream, $email_id, 1); - } - $body = quoted_printable_decode($body2); - // $body = explode("---Reply above this line---", $body); - // echo $body; - // echo "0"; - } - // checking if the format is Alternative - if ($structure->subtype == 'ALTERNATIVE') { - if (isset($structure->parts)) { - $body2 = imap_fetchbody($stream, $email_id, 1.2); - if ($body2 == null) { - $body2 = imap_fetchbody($stream, $email_id, 1); - } - $body = quoted_printable_decode($body2); - // $body = explode("---Reply above this line---", $body); - // echo $body[0]; - } - } - // checking if the format is related - if ($structure->subtype == 'RELATED') { - if (isset($structure->parts)) { - $parts = $structure->parts; - $i = 0; - $body2 = imap_fetchbody($stream, $email_id, 1.2); - if ($body2 == null) { - $body2 = imap_fetchbody($stream, $email_id, 1); - } - $body = quoted_printable_decode($body2); - foreach ($parts as $part) { - if ($parts[$i]) { - } - $i++; - if (isset($parts[$i])) { - if ($parts[$i]->ifid == 1) { - $id = $parts[$i]->id; - $imageid = substr($id, 1, -1); - $imageid = "cid:" . $imageid; - if ($parts[$i]->ifdparameters == 1) { - foreach ($parts[$i]->dparameters as $object) { - if (strtolower($object->attribute) == 'filename') { - $filename = $object->value; - } - } - } - if ($parts[$i]->ifparameters == 1) { - foreach ($parts[$i]->parameters as $object) { - if (strtolower($object->attribute) == 'name') { - $name = $object->value; - } - } - } - $body = str_replace($imageid, $filename, $body); - - // $ticket_Thread = new Ticket_attachments; - // // $ticket_Thread->thread_id = $thread_id; - // $ticket_Thread->name = $filename; - // // $ticket_Thread->size = $filesize; - // // $ticket_Thread->type = $ext; - // $ticket_Thread->content = ''; - // $ticket_Thread->save(); - // // $body = explode("---Reply above this line---", $body); - // echo $body[0]; - // echo "2"; - } - } - } - } - } - //checking if the format is mixed - elseif ($structure->subtype == 'MIXED') { - if (isset($structure->parts)) { - $parts = $structure->parts; - - // subtype = ALTERNATIVE - if ($parts[0]->subtype == 'ALTERNATIVE') { - if (isset($structure->parts)) { - $body2 = imap_fetchbody($stream, $email_id, 1.2); - if ($body2 == null) { - $body2 = imap_fetchbody($stream, $email_id, 1); - } - $body = quoted_printable_decode($body2); - } - } - // subtype = RELATED - if ($parts[0]->subtype == 'RELATED') { - if (isset($parts[0]->parts)) { - $parts = $parts[0]->parts; - $i = 0; - - $body2 = imap_fetchbody($stream, $email_id, 1.1); - if ($body2 == null) { - $body2 = imap_fetchbody($stream, $email_id, 1); - } - $body = quoted_printable_decode($body2); - $name = ""; - foreach ($parts as $part) { - if ($parts[0]) { - } - $i++; - if (isset($parts[$i])) { - if ($parts[$i]->ifid == 1) { - $id = $parts[$i]->id; - $imageid = substr($id, 1, -1); - $imageid = "cid:" . $imageid; - if ($parts[$i]->ifdparameters == 1) { - foreach ($parts[$i]->dparameters as $object) { - if (strtolower($object->attribute) == 'filename') { - $filename = $object->value; - } - } - } - if ($parts[$i]->ifparameters == 1) { - foreach ($parts[$i]->parameters as $object) { - if (strtolower($object->attribute) == 'name') { - $name = $object->value; - } - } - } - } - $body = str_replace($imageid, $name, $body); - // $body = explode("---Reply above this line---", $body); - // echo $body[0]; - // echo '3' - } - } - } - } - } - // dd($structure); - } - // $ticket = new Tickets; - // $ticket->name = $from; - // $ticket->subject = $subject; - // $ticket->body = $body2; - // $ticket->date = $datetime; - // $ticket->save(); - // $ticket = new Ticket_Thread; - // $ticket->name = $from; - // $ticket->subject = $subject; - // $ticket->body = $body2; - // $ticket->date = $datetime; - // $ticket->save(); - $priority = '1'; - if ($this->TicketController->create_user($emailadd, $username, $subject, $body, $phone, $helptopic, $sla, $priority, $system) == true) { - $thread_id = Ticket_Thread::whereRaw('id = (select max(`id`) from ticket_thread)')->first(); - $thread_id = $thread_id->id; - if ($this->get_attachment($structure, $stream, $email_id, $thread_id) == true) { - - } - } - } else { - - } - } - } - } - imap_close($stream); - } - } - } - } - } - - /** - * Get attachments data from mail - * @param type $structure - * @param type $stream - * @param type $email_id - * @param type $thread_id - * @return type bool - */ - public function get_attachment($structure, $stream, $email_id, $thread_id) { - // checking if the mails has attachments - if (isset($structure->parts) && count($structure->parts)) { - for ($i = 0; $i < count($structure->parts); $i++) { - $attachments[$i] = array( - 'is_attachment' => false, - 'filename' => '', - 'name' => '', - 'attachment' => ''); - // checking for files - if ($structure->parts[$i]->ifdparameters) { - foreach ($structure->parts[$i]->dparameters as $object) { - if (strtolower($object->attribute) == 'filename') { - $attachments[$i]['is_attachment'] = true; - $attachments[$i]['filename'] = $object->value; - } - } - } - // checking for files - if ($structure->parts[$i]->ifparameters) { - foreach ($structure->parts[$i]->parameters as $object) { - if (strtolower($object->attribute) == 'name') { - $attachments[$i]['is_attachment'] = true; - $attachments[$i]['name'] = $object->value; - } - } - } - /** - * All over again checking for the availability of attachment - */ - if ($attachments[$i]['is_attachment']) { - $attachments[$i]['attachment'] = imap_fetchbody($stream, $email_id, $i + 1); - // decoding if encoded in base64_encode format else quoted_printable_encode - if ($structure->parts[$i]->encoding == 3) { - $attachments[$i]['attachment'] = base64_decode($attachments[$i]['attachment']); - } elseif ($structure->parts[$i]->encoding == 4) { - $attachments[$i]['attachment'] = quoted_printable_decode($attachments[$i]['attachment']); - } - } - } - // calling the save method to save each attachments - if ($this->save_attcahments($attachments, $thread_id) == true) { - return true; - } - } - } - - /** - * Function to save attachments - * @param type $attachments - * @param type $thread_id - * @return type bool - */ - public function save_attcahments($attachments, $thread_id) { - if (count($attachments) != 0) { - foreach ($attachments as $at) { - if ($at['is_attachment'] == 1) { - $str = str_shuffle('abcdefghijjklmopqrstuvwxyz'); - $filename = $at['filename']; - $ext = pathinfo($filename, PATHINFO_EXTENSION); - $tmpName = $at['filename']; - $fp = fopen($tmpName, 'r'); - $content = fread($fp, filesize($tmpName)); - $content2 = file_put_contents($at['filename'], $at['attachment']); - $filesize = $content2; - $ticket_Thread = new Ticket_attachments; - $ticket_Thread->thread_id = $thread_id; - $ticket_Thread->name = $filename; - $ticket_Thread->size = $filesize; - $ticket_Thread->type = $ext; - $ticket_Thread->content = $fp; - $ticket_Thread->save(); - } - } - } - return true; - } -} diff --git a/code/app/Http/Controllers/Agent/TicketController.php b/code/app/Http/Controllers/Agent/TicketController.php deleted file mode 100644 index f7aea357b..000000000 --- a/code/app/Http/Controllers/Agent/TicketController.php +++ /dev/null @@ -1,578 +0,0 @@ - - */ -class TicketController extends Controller { - - /** - * Create a new controller instance. - * @return type response - */ - public function __construct() { - $this->middleware('auth'); - } - - /** - * Show the ticket list page - * @return type response - */ - public function ticket_list() { - return view('themes.default1.agent.ticket.ticket'); - } - - /** - * Show the Open ticket list page - * @return type response - */ - public function open_ticket_list() { - return view('themes.default1.agent.ticket.open'); - } - - /** - * Show the answered ticket list page - * @return type response - */ - public function answered_ticket_list() { - return view('themes.default1.agent.ticket.answered'); - } - - /** - * Show the Myticket list page - * @return type response - */ - public function myticket_ticket_list() { - return view('themes.default1.agent.ticket.myticket'); - } - - /** - * Show the Overdue ticket list page - * @return type response - */ - public function overdue_ticket_list() { - return view('themes.default1.agent.ticket.overdue'); - } - - /** - * Show the Closed ticket list page - * @return type response - */ - public function closed_ticket_list() { - return view('themes.default1.agent.ticket.closed'); - } - - /** - * Show the New ticket page - * @return type response - */ - public function newticket() { - return view('themes.default1.agent.ticket.new'); - } - - /** - * Save the data of new ticket and show the New ticket page with result - * @param type CreateTicketRequest $request - * @return type response - */ - public function post_newticket(CreateTicketRequest $request) { - $email = $request->input('email'); - $fullname = $request->input('fullname'); - $notice = $request->input('notice'); - $helptopic = $request->input('helptopic'); - $dept = $request->input('dept'); - $sla = $request->input('sla'); - $duedate = $request->input('duedate'); - $assignto = $request->input('assignto'); - $subject = $request->input('subject'); - $body = $request->input('body'); - $priority = $request->input('priority'); - $phone = ""; - $system = ""; - //create user - if ($this->create_user($email, $fullname, $subject, $body, $phone, $helptopic, $sla, $priority, $system)) { - return Redirect('newticket')->with('success', 'success'); - } else { - return Redirect('newticket')->with('fails', 'fails'); - } - } - - /** - * Shows the ticket thread details - * @param type $id - * @return type response - */ - public function thread($id) { - $tickets = Tickets::where('id', '=', $id)->first(); - $thread = Ticket_Thread::where('ticket_id', '=', $id)->first(); - return view('themes.default1.agent.ticket.timeline', compact('tickets'), compact('thread')); - } - - /** - * Replying a ticket - * @param type Ticket_Thread $thread - * @param type TicketRequest $request - * @return type bool - */ - public function reply(Ticket_Thread $thread, TicketRequest $request) { - $thread->ticket_id = $request->input('ticket_ID'); - $thread->poster = 'support'; - $thread->body = $request->input('ReplyContent'); - $thread->save(); - $ticket_id = $request->input('ticket_ID'); - $tickets = Tickets::where('id', '=', $ticket_id)->first(); - $thread = Ticket_Thread::where('ticket_id', '=', $ticket_id)->first(); - return 1; - } - - /** - * Ticket edit and save ticket data - * @param type $ticket_id - * @param type Ticket_Thread $thread - * @return type bool - */ - public function ticket_edit_post($ticket_id, Ticket_Thread $thread) { - $threads = $thread->where('ticket_id', '=', $ticket_id)->first(); - if (Input::get('subject') != null && Input::get('body') != null) { - $threads->title = Input::get('subject'); - $threads->body = Input::get('body'); - if ($threads->save()) { - return 1; - } else { - return 0; - } - } - return 0; - } - - /** - * Print Ticket Details - * @param type $id - * @return type respponse - */ - public function ticket_print($id) { - $tickets = Tickets::where('id', '=', $id)->first(); - $thread = Ticket_Thread::where('ticket_id', '=', $id)->first(); - $html = view('themes.default1.agent.ticket.pdf', compact('id', 'tickets', 'thread'))->render(); - return PDF::load($html)->show(); - } - - /** - * Generates Ticket Number - * @param type $ticket_number - * @return type integer - */ - public function ticket_number($ticket_number) { - $number = $ticket_number; - $number = explode('-', $number); - $number1 = $number[0]; - if ($number1 == 'ZZZZ') { - $number1 = 'AAAA'; - } - $number2 = $number[1]; - if ($number2 == '9999') { - $number2 = '0000'; - } - $number3 = $number[2]; - if ($number3 == '9999999') { - $number3 = '0000000'; - } - $number1++; - $number2++; - $number3++; - $number2 = sprintf('%04s', $number2); - $number3 = sprintf('%07s', $number3); - $array = array($number1, $number2, $number3); - $number = implode('-', $array); - return $number; - } - - /** - * check email for dublicate entry - * @param type $email - * @return type bool - */ - public function check_email($email) { - $check = User::where('email', '=', $email)->first(); - if ($check == true) { - return $check; - } else { - return false; - } - } - - /** - * Create User while creating ticket - * @param type $emailadd - * @param type $username - * @param type $subject - * @param type $body - * @param type $phone - * @param type $helptopic - * @param type $sla - * @param type $priority - * @param type $system - * @return type bool - */ - public function create_user($emailadd, $username, $subject, $body, $phone, $helptopic, $sla, $priority, $system) { - // define global variables - $email; - $username; - // check emails - $checkemail = $this->check_email($emailadd); - - if ($checkemail == false) { - // Generate password - $password = $this->generateRandomString(); - // create user - $user = new User; - $user->user_name = $username; - $user->email = $emailadd; - $user->password = Hash::make($password); - // mail user his/her password - if ($user->save()) { - $user_id = $user->id; - if (Mail::send('emails.pass', ['password' => $password, 'name' => $username], function ($message) use ($emailadd, $username) { - $message->to($emailadd, $username)->subject('password'); - })) { - // need to do something here.... - } - } - } else { - $username = $checkemail->username; - $user_id = $checkemail->id; - } - $ticket_number = $this->check_ticket($user_id, $subject, $body, $helptopic, $sla, $priority); - // send ticket create details to user - if (Mail::send('emails.Ticket_Create', ['name' => $username, 'ticket_number' => $ticket_number], function ($message) use ($emailadd, $username, $ticket_number) { - $message->to($emailadd, $username)->subject('[~' . $ticket_number . ']'); - })) { - return true; - } - } - - /** - * Default helptopic - * @return type string - */ - public function default_helptopic() { - $helptopic = "1"; - return $helptopic; - } - - /** - * Default SLA plan - * @return type string - */ - public function default_sla() { - $sla = "1"; - return $sla; - } - - /** - * Default Priority - * @return type string - */ - public function default_priority() { - $priority = "1"; - return $prioirty; - } - - /** - * Check the response of the ticket - * @param type $user_id - * @param type $subject - * @param type $body - * @param type $helptopic - * @param type $sla - * @param type $priority - * @return type string - */ - public function check_ticket($user_id, $subject, $body, $helptopic, $sla, $priority) { - $read_ticket_number = substr($subject, 0, 6); - if ($read_ticket_number == 'Re: [~') { - $separate = explode("]", $subject); - $new_subject = substr($separate[0], 6, 20); - $find_number = Tickets::where('ticket_number', '=', $new_subject)->first(); - $thread_body = explode("---Reply above this line---", $body); - $body = $thread_body[0]; - if (count($find_number) > 0) { - $id = $find_number->id; - $ticket_number = $find_number->ticket_number; - if (isset($id)) { - if ($this->ticket_thread($subject, $body, $id, $user_id)) { - return $ticket_number; - } - } - } else { - $ticket_number = $this->create_ticket($user_id, $subject, $body, $helptopic, $sla, $priority); - return $ticket_number; - } - } else { - $ticket_number = $this->create_ticket($user_id, $subject, $body, $helptopic, $sla, $priority); - return $ticket_number; - } - } - - /** - * Create Ticket - * @param type $user_id - * @param type $subject - * @param type $body - * @param type $helptopic - * @param type $sla - * @param type $priority - * @return type string - */ - public function create_ticket($user_id, $subject, $body, $helptopic, $sla, $priority) { - $max_number = Tickets::whereRaw('id = (select max(`id`) from tickets)')->get(); - foreach ($max_number as $number) { - $ticket_number = $number->ticket_number; - } - $ticket = new Tickets; - $ticket->ticket_number = $this->ticket_number($ticket_number); - $ticket->user_id = $user_id; - $ticket->help_topic_id = $helptopic; - $ticket->sla = $sla; - $ticket->status = '1'; - $ticket->priority_id = $priority; - $ticket->save(); - $ticket_number = $ticket->ticket_number; - $id = $ticket->id; - if ($this->ticket_thread($subject, $body, $id, $user_id) == true) { - return $ticket_number; - } - } - - /** - * Generate Ticket Thread - * @param type $subject - * @param type $body - * @param type $id - * @param type $user_id - * @return type - */ - public function ticket_thread($subject, $body, $id, $user_id) { - $thread = new Ticket_Thread; - $thread->user_id = $user_id; - $thread->ticket_id = $id; - $thread->poster = 'client'; - $thread->title = $subject; - $thread->body = $body; - if ($thread->save()) { - return true; - } - } - - /** - * Generate a random string for password - * @param type $length - * @return type string - */ - public function generateRandomString($length = 10) { - $characters = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'; - $charactersLength = strlen($characters); - $randomString = ''; - for ($i = 0; $i < $length; $i++) { - $randomString .= $characters[rand(0, $charactersLength - 1)]; - } - return $randomString; - } - - /** - * function to Ticket Close - * @param type $id - * @param type Tickets $ticket - * @return type string - */ - public function close($id, Tickets $ticket) { - $ticket_status = $ticket->where('id', '=', $id)->first(); - $ticket_status->status = 3; - $ticket_status->save(); - return "your ticket" . $ticket_status->ticket_number . " has been closed"; - } - - /** - * function to Ticket resolved - * @param type $id - * @param type Tickets $ticket - * @return type string - */ - public function resolve($id, Tickets $ticket) { - $ticket_status = $ticket->where('id', '=', $id)->first(); - $ticket_status->status = 2; - $ticket_status->save(); - return "your ticket" . $ticket_status->ticket_number . " has been resolved"; - } - - /** - * function to Open Ticket - * @param type $id - * @param type Tickets $ticket - * @return type - */ - public function open($id, Tickets $ticket) { - $ticket_status = $ticket->where('id', '=', $id)->first(); - $ticket_status->status = 1; - $ticket_status->save(); - return "your ticket" . $ticket_status->ticket_number . " has been opened"; - } - - /** - * Function to delete ticket - * @param type $id - * @param type Tickets $ticket - * @return type string - */ - public function delete($id, Tickets $ticket) { - $ticket_delete = $ticket->where('id', '=', $id)->first(); - $ticket_delete->is_deleted = 0; - $ticket_delete->status = 5; - $ticket_delete->save(); - return "your ticket" . $ticket_delete->ticket_number . " has been delete"; - } - - /** - * Function to ban an email - * @param type $id - * @param type Tickets $ticket - * @return type string - */ - public function ban($id, Tickets $ticket) { - $ticket_ban = $ticket->where('id', '=', $id)->first(); - $ban_email = $ticket_ban->user_id; - $user = User::where('id', '=', $ban_email)->first(); - $user->is_ban = 1; - $user->save(); - $Email = $user->email; - $ban = Banlist::where('email_address', '=', $Email)->first(); - if ($ban == null) { - $banlist = new Banlist; - $banlist->ban_status = 1; - $banlist->email_address = $user->email; - $banlist->save(); - } - return "the user has been banned"; - } - - /** - * function to assign ticket - * @param type $id - * @return type bool - */ - public function assign($id) { - $UserEmail = Input::get('user'); - // $UserEmail = 'sujitprasad12@yahoo.in'; - $user = User::where('email', '=', $UserEmail)->first(); - $user_id = $user->id; - $ticket = Tickets::where('id', '=', $id)->first(); - $ticket->assigned_to = $user_id; - $ticket->save(); - return 1; - } - - /** - * Function to post internal note - * @param type $id - * @return type bool - */ - public function InternalNote($id) { - $InternalContent = Input::get('InternalContent'); - $thread = Ticket_Thread::where('ticket_id', '=', $id)->first(); - $NewThread = new Ticket_Thread; - $NewThread->ticket_id = $thread->ticket_id; - $NewThread->user_id = Auth::user()->id; - $NewThread->thread_type = 'M'; - $NewThread->poster = Auth::user()->role; - $NewThread->title = $thread->title; - $NewThread->body = $InternalContent; - $NewThread->save(); - return 1; - } - - /** - * Function to surrender a ticket - * @param type $id - * @return type bool - */ - public function surrender($id) { - $ticket = Tickets::where('id', '=', $id)->first(); - $ticket->assigned_to = 0; - $ticket->save(); - return 1; - } - - /** - * function to search - * @return type - */ - // public function search() { - // $product = Input::get('type'); - // $word = Input::get('name_startsWith'); - - // if ($product == 'product') { - // $starts_with = strtoupper($word); - // $rows = DB::table('users')->select('user_name')->where('name', 'LIKE', $starts_with . '%')->get(); - // $data = array(); - // foreach ($rows as $row) { - // array_push($data, $row->name); - // } - // print_r(json_encode($data)); - // } - - // if ($product == 'product_table') { - // $row_num = Input::get('row_num'); - // $starts_with = strtoupper($word); - // $rows = DB::table('product')->select('name', 'description', 'cost_price')->where('name', 'LIKE', $starts_with . '%')->get(); - // $data = array(); - // foreach ($rows as $row) { - // $name = $row->name . '|' . $row->description . '|' . $row->cost_price . '|' . $row_num; - // array_push($data, $name); - // } - // print_r(json_encode($data)); - // } - // } - - /** - * shows trashed tickets - * @return type response - */ - public function trash() { - return view('themes.default1.agent.ticket.trash'); - } - - /** - * shows unassigned tickets - * @return type - */ - public function unassigned() { - return view('themes.default1.agent.ticket.unassigned'); - } - - /** - * shows tickets assigned to Auth::user() - * @return type - */ - public function myticket() { - return view('themes.default1.agent.ticket.myticket'); - } - -} diff --git a/code/app/Http/Controllers/Guest/FormController.php b/code/app/Http/Controllers/Guest/FormController.php deleted file mode 100644 index 17ca30426..000000000 --- a/code/app/Http/Controllers/Guest/FormController.php +++ /dev/null @@ -1,102 +0,0 @@ - - */ -class FormController extends Controller { - - /** - * This Function to get the form for the ticket - * @param type Form_name $name - * @param type Form_details $details - * @param type Help_topic $topics - * @return type Response - */ - public function getForm(Form_name $name, Form_details $details, Help_topic $topics) { - // name of the form where status==1 - $name = $name->where('status', 1)->get(); - //get label and the type from form_detail table where form_name_id of form_detail - // equal to form_name table's id - $ids = $name->where('id', 2); - foreach ($ids as $i) { - $id = $i->id; - } - //get form_name_id from form_detail and save to detail_form_name_id - $detail_form_name_id = $details->where('form_name_id', $id)->get(); - $count = count($detail_form_name_id); - // foreach($detail_form_name_id as $details) - // { - // echo $details->label; - // } - return view('themes.default1.client.guest-user.form', compact('name', 'detail_form_name_id', 'topics')); - } - - /** - * This Function to post the form for the ticket - * @param type Form_name $name - * @param type Form_details $details - * @return type string - */ - public function postForm(Form_name $name, Form_details $details) { - $name = $name->where('status', 1)->get(); - $ids = $name->where('id', 2); - foreach ($ids as $i) { - $id = $i->id; - //echo $id; - } - $field = $details->where('form_name_id', $id)->get(); - $var = " "; - foreach ($field as $key) { - $type = $key->type; - $label = $key->label; - $var .= "," . $type . "-" . $label; - } - return $var; - // foreach($outs as $out) - // { - // return $out; - // } - // $var=" "; - // foreach ($field as $key) { - // $field=$key->field_name; - // $id=$key->form_id; - // $var.=",".$field; - // } - // return $var; - // // $var=$field.$id; - // // return - // // return Response::json(array( - // // 'field' => $field, - // // 'id' => $id - // // )); - } - - /** - * Posted form - * @param type Request $request - * @param type User $user - */ - public function postedForm(Request $request, User $user) { - $user->name = $request->input('Name'); - $user->email = $request->input('Email'); - $user->save(); - } -} diff --git a/code/app/Http/Controllers/Installer/InstallController.php b/code/app/Http/Controllers/Installer/InstallController.php deleted file mode 100644 index 9991e309d..000000000 --- a/code/app/Http/Controllers/Installer/InstallController.php +++ /dev/null @@ -1,392 +0,0 @@ - -// * -// */ -class InstallController extends Controller { - -// /** - // * Get Licence (step 1) - // * - // * validating licence agreement - // */ - // public function licence(){ - // if(Config::get('database.install')=='%0%') - // { - // return View::make('themes/ep-install/default1/display/view1'); - // } - // else{ - // return Redirect::route('account-sign-In'); - // } - // } - -// /** - // * Post Licencecheck - // * - // * Validating licence agreement - // */ - // public function licencecheck() { - // $accept = (Input::has('accept1')) ? true : false; - // if ($accept == 'accept') { - // Session::put('step1','step1'); - // return Redirect::route('prerequisites'); - // } else { - // return Redirect::route('licence')->with('fails', 'Failed! first accept the licence agreeement'); - // } - // } - -// /** - // * Get prerequisites (step 2) - // * - // * Checking the extensions enabled required for installing the e-paper pdf - // * without which the project cannot be executed properly - // * - // */ - // public function prerequisites() { - // if(Config::get('database.install')=='%0%') - // { - // if(Session::get('step1')=='step1'){ - // return View::make('themes/ep-install/default1/display/view2'); - // } else { - // return Redirect::route('licence'); - // } - // } - // else - // { - // return Redirect::route('account-sign-In'); - // } - // } - -// /** - // * Post Prerequisitescheck - // * - // * checking prerequisites - // */ - // public function prerequisitescheck() { - // Session::put('step2','step2'); - // return Redirect::route('localization'); - // } - -// /** - // * Get Localization (step 3) - // * - // * Requesting user recomended settings for installation - // */ - // public function localization() { - // if(Config::get('database.install')=='%0%') - // { - // if(Session::get('step2')=='step2'){ - // return View::make('themes/ep-install/default1/display/view3'); - // } else { - // return Redirect::route('prerequisites'); - // } - // } - // else{ - // return Redirect::route('account-sign-In'); - // } - // } - -// /** - // * Post localizationcheck - // * - // * checking prerequisites - // */ - // public function localizationcheck() { - -// Session::put('step3','step3'); - -// Session::put('language', Input::get('language')); - // Session::put('timezone', Input::get('timezone')); - // Session::put('date', Input::get('date')); - // Session::put('datetime', Input::get('datetime')); - -// return Redirect::route('configuration'); - // } - -// /** - // * Get Configuration (step 4) - // * - // * checking prerequisites - // */ - // public function configuration() { - // if(Config::get('database.install')=='%0%') - // { - // if(Session::get('step3')=='step3'){ - // return View::make('themes/ep-install/default1/display/view4'); - // } else { - // return Redirect::route('localization'); - // } - // } - // else{ - // return Redirect::route('account-sign-In'); - // } - -// } - -// /** - // * Post configurationcheck - // * - // * checking prerequisites - // */ - // public function configurationcheck() { - -// Session::put('step4','step4'); - -// Session::put('default', Input::get('default')); - // Session::put('host', Input::get('host')); - // Session::put('databasename', Input::get('databasename')); - // Session::put('username', Input::get('username')); - // Session::put('password', Input::get('password')); - -// return Redirect::route('database'); - // } - -// /** - // * Get database - // * - // * checking prerequisites - // */ - // public function database() { - // if(Config::get('database.install')=='%0%') - // { - // if(Session::get('step4')=='step4'){ - // return View::make('themes/ep-install/default1/display/view5'); - // } else { - // return Redirect::route('configuration'); - // } - // } - // else{ - // return Redirect::route('account-sign-In'); - // } - -// } - -// /** - // * Get account - // * - // * checking prerequisites - // */ - // public function account() { - // if(Config::get('database.install')=='%0%') - // { - // if(Session::get('step4')=='step4'){ - // return View::make('themes/ep-install/default1/display/view6'); - // } else { - // return Redirect::route('configuration'); - // } - // } - // else{ - // return Redirect::route('account-sign-In'); - // } - -// } - -// /** - // * Post accountcheck - // * - // * checking prerequisites - // */ - // public function accountcheck() { - // // validation check - // $validator = Validator::make(Input::all(), array( - // 'firstname' => 'required|max:20', - // 'Lastname' => 'required|max:20', - // 'email' => 'required|max:50|email', - // 'username' => 'required|max:50|min:3', - // 'password' => 'required|min:6', - // 'confirmpassword' => 'required|same:password' - // )); - // if ($validator->fails()) { - // return Redirect::route('account') - // ->withErrors($validator); - // } else { - -// // config/database.php management - // $default = Input::get('default'); - // $host = Input::get('host'); - // $database = Input::get('databasename'); - // $dbusername = Input::get('dbusername'); - // $dbpassword = Input::get('dbpassword'); - -// // set default value - // $path0 = app_path('config/database.php'); - // $content0 = File::get($path0); - // $content0 = str_replace('%default%', $default, $content0); - // File::put($path0, $content0); - -// // set host,databasename,username,password - // if($default=='mysql') - // { - // $path = app_path('config/database.php'); - // $content = File::get($path); - // $content = str_replace('%host%', $host, $content); - // File::put($path, $content); - -// $path1 = app_path('config/database.php'); - // $content1 = File::get($path1); - // $content1 = str_replace('%database%', $database, $content1); - // File::put($path1, $content1); - -// $path2 = app_path('config/database.php'); - // $content2 = File::get($path2); - // $content2 = str_replace('%username%', $dbusername, $content2); - // File::put($path2, $content2); - -// $path3 = app_path('config/database.php'); - // $content3 = File::get($path3); - // $content3 = str_replace('%password%', $dbpassword, $content3); - // File::put($path3, $content3); - // } - // elseif($default=='pgsql') - // { - // $path = app_path('config/database.php'); - // $content = File::get($path); - // $content = str_replace('%host1%', $host, $content); - // File::put($path, $content); - -// $path1 = app_path('config/database.php'); - // $content1 = File::get($path1); - // $content1 = str_replace('%database1%', $database, $content1); - // File::put($path1, $content1); - -// $path2 = app_path('config/database.php'); - // $content2 = File::get($path2); - // $content2 = str_replace('%username1%', $username, $content2); - // File::put($path2, $content2); - -// $path3 = app_path('config/database.php'); - // $content3 = File::get($path3); - // $content3 = str_replace('%password1%', $password, $content3); - // File::put($path3, $content3); - // } - // elseif($default=='sqlsrv') - // { - // $path = app_path('config/database.php'); - // $content = File::get($path); - // $content = str_replace('%host2%', $host, $content); - // File::put($path, $content); - -// $path1 = app_path('config/database.php'); - // $content1 = File::get($path1); - // $content1 = str_replace('%database2%', $database, $content1); - // File::put($path1, $content1); - -// $path2 = app_path('config/database.php'); - // $content2 = File::get($path2); - // $content2 = str_replace('%username2%', $username, $content2); - // File::put($path2, $content2); - -// $path3 = app_path('config/database.php'); - // $content3 = File::get($path3); - // $content3 = str_replace('%password2%', $password, $content3); - // File::put($path3, $content3); - // } - -// // migrate database - // Artisan::call('migrate', array('--force' => true)); - // Artisan::call('db:seed', array('--force' => true)); - -// // create user - // $firstname = Input::get('firstname'); - // $lastname = Input::get('lastname'); - // $email = Input::get('email'); - // $username = Input::get('username'); - // $password = Input::get('password'); - -// $language = Input::get('language'); - // $timezone = Input::get('timezone'); - // $date = Input::get('date'); - // $datetime = Input::get('datetime'); - -// $user = User::create(array( - // 'firstname' => $firstname, - // 'lastname' => $lastname, - // 'email' => $email, - // 'username' => $username, - // 'password' => Hash::make($password), - // 'authority' => 'admin', - // 'active' => 1 - // )); - -// // set option values - // $dateformat = Option::where('option_name','=','date_format')->first(); - // $dateformat->option_value = $date; - // $dateformat->save(); - -// $datetimeformat = Option::where('option_name','=','date_time_format')->first(); - // $datetimeformat->option_value = $datetime; - // $datetimeformat->save(); - -// $timezonestring = Option::where('option_name','=','timezone_string')->first(); - // $timezonestring->option_value = $timezone; - // $timezonestring->save(); - -// $language1 = Option::where('option_name','=','language')->first(); - // $language1->option_value = $language; - // $language1->save(); - -// if ($user) { - -// Session::put('step6','step6'); - -// return Redirect::route('final'); - // } - // } - // } - -// /** - // * Get finalize - // * - // * checking prerequisites - // */ - // public function finalize() { - // if(Session::get('step6')=='step6'){ - -// $var = "http://".$_SERVER['HTTP_HOST']."/epeper-pdf"; - -// $siteurl = Option::where('option_name','=','siteurl')->first(); - // $siteurl->option_value = $var ; - // $siteurl->save(); - -// $value='1'; - // $install = app_path('config/database.php'); - // $datacontent = File::get($install); - // $datacontent = str_replace('%0%', $value, $datacontent); - // File::put($install, $datacontent); - // try { - // return View::make('themes/ep-install/default1/display/view7'); - // } catch (Exception $e) { - // return Redirect::route('npl'); - // } - // } else { - // return Redirect::route('account'); - // } - // } - -// /** - // * Post finalcheck - // * - // * checking prerequisites - // */ - // public function finalcheck() { - // try - // { - // return Redirect::route('account-sign-In'); - // } - // catch (Exception $e) { - // return Redirect::Route('account-sign-out'); - // } - // } - -} diff --git a/code/app/Model/Ticket/Ticket_Priority.php b/code/app/Model/Ticket/Ticket_Priority.php deleted file mode 100644 index a26ff37bd..000000000 --- a/code/app/Model/Ticket/Ticket_Priority.php +++ /dev/null @@ -1,11 +0,0 @@ -command('inspire') ->hourly(); + + $schedule->call('MailController@getdata')->everyFiveMinutes(); + } } diff --git a/code/app/Events/Event.php b/code/code/app/Events/Event.php similarity index 100% rename from code/app/Events/Event.php rename to code/code/app/Events/Event.php diff --git a/code/code/app/Exceptions/Handler.php b/code/code/app/Exceptions/Handler.php new file mode 100644 index 000000000..ba4f1dc9b --- /dev/null +++ b/code/code/app/Exceptions/Handler.php @@ -0,0 +1,79 @@ +isHttpException($e)) { + return $this->renderHttpException($e); + } + + if (config('app.debug')) { + return $this->renderExceptionWithWhoops($e); + } + + return parent::render($request, $e); + + } + + /** + * Render an exception using Whoops. + * + * @param \Exception $e + * @return \Illuminate\Http\Response + */ + protected function renderExceptionWithWhoops(Exception $e) { + $whoops = new \Whoops\Run; + $whoops->pushHandler(new \Whoops\Handler\PrettyPageHandler()); + + return new \Illuminate\Http\Response( + $whoops->handleException($e), + $e->getStatusCode(), + $e->getHeaders() + ); + } + +} diff --git a/code/app/Handlers/Commands/.gitkeep b/code/code/app/Handlers/Commands/.gitkeep similarity index 100% rename from code/app/Handlers/Commands/.gitkeep rename to code/code/app/Handlers/Commands/.gitkeep diff --git a/code/app/Handlers/Events/.gitkeep b/code/code/app/Handlers/Events/.gitkeep similarity index 100% rename from code/app/Handlers/Events/.gitkeep rename to code/code/app/Handlers/Events/.gitkeep diff --git a/code/app/Http/Controllers/Admin/AgentController.php b/code/code/app/Http/Controllers/Admin/AgentController.php similarity index 88% rename from code/app/Http/Controllers/Admin/AgentController.php rename to code/code/app/Http/Controllers/Admin/AgentController.php index d90c80a89..b79859a70 100644 --- a/code/app/Http/Controllers/Admin/AgentController.php +++ b/code/code/app/Http/Controllers/Admin/AgentController.php @@ -10,6 +10,10 @@ use App\Model\Agent\Teams; use App\Model\Utility\Timezones; use App\User; use DB; +use Mail; +use App\Http\Controllers\SettingsController; +use Hash; + /** * AgentController @@ -26,6 +30,7 @@ class AgentController extends Controller { * @return Response */ public function __construct() { + SettingsController::smtp(); $this->middleware('auth'); $this->middleware('roles'); } @@ -37,7 +42,7 @@ class AgentController extends Controller { */ public function index(User $user) { try { - $user = $user->where('role', 'agent')->get(); + $user = $user->get(); return view('themes.default1.admin.agent.agents.index', compact('user')); } catch (Exception $e) { return view('404'); @@ -82,6 +87,8 @@ class AgentController extends Controller { /* Insert to user table */ $user->role = 'agent'; $user->fill($request->input())->save(); + $password = $this->generateRandomString(); + $user->password = Hash::make($password); // $teams = $request->input('assign_team'); // $imp =implode(',', $teams); // $agent->assign_team = $imp; @@ -92,6 +99,12 @@ class AgentController extends Controller { } /* Succes And Failure condition */ if ($user->save() == true) { + $name = $user->user_name; + $email = $user->email; + Mail::send('emails.pass', ['name' => $name, 'password' => $password], function ($message) use ($email, $name) { + $message->to($email, $name)->subject('[password]'); + }); + return redirect('agents')->with('success', 'Agent Created sucessfully'); } else { return redirect('agents')->with('fails', 'Agent can not Create'); @@ -207,4 +220,20 @@ class AgentController extends Controller { return redirect('agents')->with('fails', 'Agent can not Delete if the team Excist'); } } + + + /** + * Generate a random string for password + * @param type $length + * @return type string + */ + public function generateRandomString($length = 10) { + $characters = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'; + $charactersLength = strlen($characters); + $randomString = ''; + for ($i = 0; $i < $length; $i++) { + $randomString .= $characters[rand(0, $charactersLength - 1)]; + } + return $randomString; + } } diff --git a/code/app/Http/Controllers/Admin/BanlistController.php b/code/code/app/Http/Controllers/Admin/BanlistController.php similarity index 100% rename from code/app/Http/Controllers/Admin/BanlistController.php rename to code/code/app/Http/Controllers/Admin/BanlistController.php diff --git a/code/app/Http/Controllers/Admin/Controller.php b/code/code/app/Http/Controllers/Admin/Controller.php similarity index 100% rename from code/app/Http/Controllers/Admin/Controller.php rename to code/code/app/Http/Controllers/Admin/Controller.php diff --git a/code/app/Http/Controllers/Admin/DepartmentController.php b/code/code/app/Http/Controllers/Admin/DepartmentController.php similarity index 100% rename from code/app/Http/Controllers/Admin/DepartmentController.php rename to code/code/app/Http/Controllers/Admin/DepartmentController.php diff --git a/code/app/Http/Controllers/Admin/EmailsController.php b/code/code/app/Http/Controllers/Admin/EmailsController.php similarity index 100% rename from code/app/Http/Controllers/Admin/EmailsController.php rename to code/code/app/Http/Controllers/Admin/EmailsController.php diff --git a/code/app/Http/Controllers/Admin/FormController.php b/code/code/app/Http/Controllers/Admin/FormController.php similarity index 100% rename from code/app/Http/Controllers/Admin/FormController.php rename to code/code/app/Http/Controllers/Admin/FormController.php diff --git a/code/app/Http/Controllers/Admin/GroupController.php b/code/code/app/Http/Controllers/Admin/GroupController.php similarity index 100% rename from code/app/Http/Controllers/Admin/GroupController.php rename to code/code/app/Http/Controllers/Admin/GroupController.php diff --git a/code/app/Http/Controllers/Admin/HelptopicController.php b/code/code/app/Http/Controllers/Admin/HelptopicController.php similarity index 95% rename from code/app/Http/Controllers/Admin/HelptopicController.php rename to code/code/app/Http/Controllers/Admin/HelptopicController.php index e821d4e5b..57493bd46 100644 --- a/code/app/Http/Controllers/Admin/HelptopicController.php +++ b/code/code/app/Http/Controllers/Admin/HelptopicController.php @@ -9,7 +9,7 @@ use App\Model\Form\Form_name; use App\Model\Manage\Help_topic; use App\Model\Manage\Sla_plan; use App\Model\Utility\Priority; - +use App\User; /** * HelptopicController * @@ -17,6 +17,7 @@ use App\Model\Utility\Priority; * @subpackage Controller * @author Ladybird */ + class HelptopicController extends Controller { /** @@ -62,12 +63,12 @@ class HelptopicController extends Controller { | 5.Forms Model ================================================ */ - public function create(Priority $priority, Department $department, Help_topic $topic, Form_name $form, Agents $agent, Sla_plan $sla) { + public function create(Priority $priority, Department $department, Help_topic $topic, Form_name $form, User $agent, Sla_plan $sla) { try { $departments = $department->get(); $topics = $topic->get(); $forms = $form->get(); - $agents = $agent->get(); + $agents = $agent->where('role','=','agent')->get(); $slas = $sla->get(); $priority = $priority->get(); return view('themes.default1.admin.manage.helptopic.create', compact('priority', 'departments', 'topics', 'forms', 'agents', 'slas')); @@ -119,12 +120,12 @@ class HelptopicController extends Controller { * @param type Sla_plan $sla * @return type Response */ - public function edit($id, Priority $priority, Department $department, Help_topic $topic, Form_name $form, Agents $agent, Sla_plan $sla) { + public function edit($id, Priority $priority, Department $department, Help_topic $topic, Form_name $form, Sla_plan $sla) { try { + $agent = User::where('role','=','agent')->get(); $departments = $department->get(); $topics = $topic->whereId($id)->first(); $forms = $form->get(); - $agents = $agent->get(); $slas = $sla->get(); $priority = $priority->get(); return view('themes.default1.admin.manage.helptopic.edit', compact('priority', 'departments', 'topics', 'forms', 'agents', 'slas')); diff --git a/code/app/Http/Controllers/Admin/HomeController.php b/code/code/app/Http/Controllers/Admin/HomeController.php similarity index 100% rename from code/app/Http/Controllers/Admin/HomeController.php rename to code/code/app/Http/Controllers/Admin/HomeController.php diff --git a/code/app/Http/Controllers/Admin/ProfileController.php b/code/code/app/Http/Controllers/Admin/ProfileController.php similarity index 87% rename from code/app/Http/Controllers/Admin/ProfileController.php rename to code/code/app/Http/Controllers/Admin/ProfileController.php index b33cf7261..5cf8d03fb 100644 --- a/code/app/Http/Controllers/Admin/ProfileController.php +++ b/code/code/app/Http/Controllers/Admin/ProfileController.php @@ -34,7 +34,24 @@ class ProfileController extends Controller { try { $user = Auth::user(); if ($user) { - return view('themes.default1.admin.profile', compact('user')); + return view('themes.default1.agent.user.profile', compact('user')); + } else { + return redirect('404'); + } + } catch (Exception $e) { + return redirect('404'); + } + } + + /** + * Get profile Edit page + * @return type Response + */ + public function getProfileedit() { + try { + $user = Auth::user(); + if ($user) { + return view('themes.default1.agent.user.profile-edit', compact('user')); } else { return redirect('404'); } diff --git a/code/app/Http/Controllers/Admin/SettingsController.php b/code/code/app/Http/Controllers/Admin/SettingsController.php similarity index 98% rename from code/app/Http/Controllers/Admin/SettingsController.php rename to code/code/app/Http/Controllers/Admin/SettingsController.php index 79be81791..e294c5635 100644 --- a/code/app/Http/Controllers/Admin/SettingsController.php +++ b/code/code/app/Http/Controllers/Admin/SettingsController.php @@ -40,6 +40,7 @@ class SettingsController extends Controller { * @return void */ public function __construct() { + // $this->smtp(); $this->middleware('auth'); $this->middleware('roles'); } @@ -68,7 +69,7 @@ class SettingsController extends Controller { * * @param type int $id * @param type Company $company - * @param type CompanyRequest $request * + * @param type CompanyRequest $request * @return Response */ public function postcompany($id, Company $company, CompanyRequest $request) { @@ -82,6 +83,10 @@ class SettingsController extends Controller { Input::file('logo')->move($destinationPath, $fileName); $companys->logo = $fileName; } + if($request->input('use_logo')==null) + { + $companys->use_logo = '0'; + } /* Check whether function success or not */ if ($companys->fill($request->except('logo'))->save() == true) { /* redirect to Index page with Success Message */ @@ -339,7 +344,7 @@ class SettingsController extends Controller { $responders->new_ticket = $request->input('new_ticket'); $responders->agent_new_ticket = $request->input('agent_new_ticket'); $responders->submitter = $request->input('submitter'); - $responders->partcipants = $request->input('partcipants'); + $responders->participants = $request->input('participants'); $responders->overlimit = $request->input('overlimit'); /* fill the values to coompany table */ /* Check whether function success or not */ diff --git a/code/app/Http/Controllers/Admin/SlaController.php b/code/code/app/Http/Controllers/Admin/SlaController.php similarity index 100% rename from code/app/Http/Controllers/Admin/SlaController.php rename to code/code/app/Http/Controllers/Admin/SlaController.php diff --git a/code/app/Http/Controllers/Admin/TeamController.php b/code/code/app/Http/Controllers/Admin/TeamController.php similarity index 94% rename from code/app/Http/Controllers/Admin/TeamController.php rename to code/code/app/Http/Controllers/Admin/TeamController.php index a6ee6d7df..fbcd1f987 100644 --- a/code/app/Http/Controllers/Admin/TeamController.php +++ b/code/code/app/Http/Controllers/Admin/TeamController.php @@ -107,20 +107,8 @@ class TeamController extends Controller { try { $user = $user->whereId($id)->first(); $teams = $team->whereId($id)->first(); - //$allagents = $agent->get(); - /* Gettting member of the team */ $agent_team = $assign_team_agent->where('team_id', $id)->get(); - //dd($agent_team); $agent_id = $agent_team->lists('agent_id', 'agent_id'); - // dd($agent_id); - //$id = $agent->lists('id'); - //dd($id); - // foreach($agent_id as $aaaaa) - // { - // $agent = $agent->where('id',$aaaaa)->first(); - // echo $agent; - // // - // } return view('themes.default1.admin.agent.teams.edit', compact('agent_id', 'user', 'teams', 'allagents')); } catch (Exception $e) { return view('404'); diff --git a/code/app/Http/Controllers/Admin/TemplateController.php b/code/code/app/Http/Controllers/Admin/TemplateController.php similarity index 98% rename from code/app/Http/Controllers/Admin/TemplateController.php rename to code/code/app/Http/Controllers/Admin/TemplateController.php index 1c9df7ab0..ff88797bf 100644 --- a/code/app/Http/Controllers/Admin/TemplateController.php +++ b/code/code/app/Http/Controllers/Admin/TemplateController.php @@ -8,6 +8,8 @@ use App\Model\Email\Template; use App\Model\Utility\Languages; use Illuminate\Http\Request; use Mail; +use App\Http\Controllers\SettingsController; + /** * TemplateController @@ -23,6 +25,7 @@ class TemplateController extends Controller { * @return type void */ public function __construct() { + SettingsController::smtp(); $this->middleware('auth'); $this->middleware('roles'); } diff --git a/code/app/Http/Controllers/Admin/ThreadController.php b/code/code/app/Http/Controllers/Admin/ThreadController.php similarity index 100% rename from code/app/Http/Controllers/Admin/ThreadController.php rename to code/code/app/Http/Controllers/Admin/ThreadController.php diff --git a/code/app/Http/Controllers/Admin/WelcomeController.php b/code/code/app/Http/Controllers/Admin/WelcomeController.php similarity index 100% rename from code/app/Http/Controllers/Admin/WelcomeController.php rename to code/code/app/Http/Controllers/Admin/WelcomeController.php diff --git a/code/code/app/Http/Controllers/Agent/DashboardController.php b/code/code/app/Http/Controllers/Agent/DashboardController.php new file mode 100644 index 000000000..361cb5f1e --- /dev/null +++ b/code/code/app/Http/Controllers/Agent/DashboardController.php @@ -0,0 +1,66 @@ + + */ +class DashboardController extends Controller { + + /** + * Create a new controller instance. + * constructor to check + * 1. authentication + * 2. user roles + * 3. roles must be agent + * + * @return void + */ + public function __construct() { + $this->middleware('auth'); + $this->middleware('role.agent'); + } + + /** + * Show the form for creating a new resource. + * @return type Response + */ + public function index() { + try { + if(Auth::user()->role == "user"){ + return \Redirect::route('home'); + } + + return View::make('themes.default1.agent.dashboard.dashboard'); + } catch (Exception $e) { + return view('404'); + } + } + + /** + * ChartData + * @return type + */ + public function ChartData() + { + $ticketlist = DB::table('tickets') + ->select(DB::raw('MONTHNAME(updated_at) as month'), DB::raw("(closed) as monthNum"), + DB::raw('count(*) as tickets')) + ->groupBy('month') + ->orderBy('month', 'desc') + ->get(); + + return $ticketlist; + } + +} diff --git a/code/code/app/Http/Controllers/Agent/MailController.php b/code/code/app/Http/Controllers/Agent/MailController.php new file mode 100644 index 000000000..a289ac9f0 --- /dev/null +++ b/code/code/app/Http/Controllers/Agent/MailController.php @@ -0,0 +1,198 @@ + + */ +class MailController extends Controller { + + /** + * constructor + * Create a new controller instance. + * @param type TicketController $TicketController + */ + public function __construct(TicketController $TicketController) { + $this->TicketController = $TicketController; + } + + /** + * Reademails + * @return type + */ + public function readmails(Emails $emails, Email $settings_email, System $system) + { + $path_url = $system->first()->url; + if($settings_email->first()->email_fetching == 1) + { + if($settings_email->first()->all_emails == 1) + { + $helptopic = $this->TicketController->default_helptopic(); + $sla = $this->TicketController->default_sla(); + $email = $emails->get(); + foreach($email as $e_mail) + { + $password = Crypt::decrypt($e_mail->password); + $mailbox = new ImapMailbox($e_mail->imap_config, $e_mail->user_name, $password, __DIR__); + $mails = array(); + $mailsIds = $mailbox->searchMailBox('SINCE '. date('d-M-Y', strtotime("-1 day"))); + if(!$mailsIds) { + die('Mailbox is empty'); + } + // dd($mailsIds); + foreach($mailsIds as $mailId) + { + $overview = $mailbox->get_overview($mailId); + $var = $overview[0]->seen ? 'read' : 'unread'; + if ($var == 'unread') { + $mail = $mailbox->getMail($mailId); + if($settings_email->email_collaborator == 1) { + $collaborator = $mail->cc; + } else { + $collaborator = null; + } + $body = $mail->textHtml; + // dd($mailId); + if($body == null) + { + $body = $mailbox->backup_getmail($mailId); + $body = str_replace('\r\n', '
', $body); + // var_dump($body); + } + // dd($body); + $date = $mail->date; + $datetime = $overview[0]->date; + $date_time = explode(" ", $datetime); + $date = $date_time[1] . "-" . $date_time[2] . "-" . $date_time[3] . " " . $date_time[4]; + $date = date('Y-m-d H:i:s', strtotime($date)); + $subject = $mail->subject; + $fromname = $mail->fromName; + $fromaddress = $mail->fromAddress; + $source = "2"; + $phone = ""; + $priority = '1'; + + if ($this->TicketController->create_user($fromaddress, $fromname, $subject, $body, $phone, $helptopic, $sla, $priority, $source, $collaborator, $e_mail->department) == true) { + $thread_id = Ticket_Thread::whereRaw('id = (select max(`id`) from ticket_thread)')->first(); + $thread_id = $thread_id->id; + + foreach($mail->getAttachments() as $attachment) + { + $filepath = explode('../../../../../public/',$attachment->filePath); + $path = $_SERVER["DOCUMENT_ROOT"]."/support/code/public/".$filepath[1]; + $filesize = filesize($path); + $file_data = file_get_contents($path); + $ext = pathinfo($attachment->filePath, PATHINFO_EXTENSION); + $imageid = $attachment->id; + $string = str_replace('-', '', $attachment->name); + $filename = explode('src', $attachment->filePath); + $filename = str_replace('\\', '', $filename); + $body = str_replace("cid:".$imageid, $filepath[1], $body); + $pos = strpos($body, $filepath[1]); + + + if($pos == false) { + + if($settings_email->first()->attachment == 1) { + $upload = new Ticket_attachments; + $upload->file = $file_data; + $upload->thread_id = $thread_id; + $upload->name = $filepath[1]; + $upload->type = $ext; + $upload->size = $filesize; + $upload->poster = "ATTACHMENT"; + $upload->save(); + } + } else { + $upload = new Ticket_attachments; + $upload->file = $file_data; + $upload->thread_id = $thread_id; + $upload->name = $filepath[1]; + $upload->type = $ext; + $upload->size = $filesize; + $upload->poster = "INLINE"; + $upload->save(); + } + unlink($path); + } + $body = Encoding::fixUTF8($body); + $thread = Ticket_Thread::where('id','=',$thread_id)->first(); + $thread->body = $body; + $thread->save(); + } + } + } + } + } + } + } + + /** + * Decode Imap text + * @param type $str + * @return type string + */ + public function decode_imap_text($str) { + $result = ''; + $decode_header = imap_mime_header_decode($str); + foreach ($decode_header AS $obj) { + $result .= htmlspecialchars(rtrim($obj->text, "\t")); + } + return $result; + } + + /** + * fetch_attachments + * @return type + */ + public function fetch_attachments(){ + $uploads = Upload::all(); + foreach($uploads as $attachment) { + $image = @imagecreatefromstring($attachment->file); + ob_start(); + imagejpeg($image, null, 80); + $data = ob_get_contents(); + ob_end_clean(); + $var = ''; + echo '
'.$var.''; + } + } + + /** + * function to load data + * @param type $id + * @return type file + */ + public function get_data($id){ + $attachments = App\Model\Ticket\Ticket_attachments::where('id','=',$id)->get(); + foreach($attachments as $attachment) + { + header('Content-type: application/'.$attachment->type.''); + header('Content-Disposition: inline; filename='.$attachment->name.''); + header('Content-Transfer-Encoding: binary'); + echo $attachment->file; + } + } + +} diff --git a/code/app/Http/Controllers/Agent/OrganizationController.php b/code/code/app/Http/Controllers/Agent/OrganizationController.php similarity index 99% rename from code/app/Http/Controllers/Agent/OrganizationController.php rename to code/code/app/Http/Controllers/Agent/OrganizationController.php index 3b37d61f6..39017c61f 100644 --- a/code/app/Http/Controllers/Agent/OrganizationController.php +++ b/code/code/app/Http/Controllers/Agent/OrganizationController.php @@ -34,7 +34,7 @@ class OrganizationController extends Controller { public function __construct() { $this->middleware('auth'); $this->middleware('role.agent'); - $this->middleware('roles'); + // $this->middleware('roles'); } /** diff --git a/code/code/app/Http/Controllers/Agent/TicketController.php b/code/code/app/Http/Controllers/Agent/TicketController.php new file mode 100644 index 000000000..34ccdd835 --- /dev/null +++ b/code/code/app/Http/Controllers/Agent/TicketController.php @@ -0,0 +1,1243 @@ + + */ +class TicketController extends Controller { + + /** + * Create a new controller instance. + * @return type response + */ + public function __construct() { + SettingsController::smtp(); + $this->middleware('auth'); + } + + /** + * Show the ticket list page + * @return type response + */ + // public function ticket_list() { + // return view('themes.default1.agent.ticket.ticket'); + // } + + /** + * Show the Open ticket list page + * @return type response + */ + public function open_ticket_list() { + return view('themes.default1.agent.ticket.open'); + } + + /** + * Show the answered ticket list page + * @return type response + */ + public function answered_ticket_list() { + return view('themes.default1.agent.ticket.answered'); + } + + /** + * Show the Myticket list page + * @return type response + */ + public function myticket_ticket_list() { + return view('themes.default1.agent.ticket.myticket'); + } + + /** + * Show the Overdue ticket list page + * @return type response + */ + public function overdue_ticket_list() { + return view('themes.default1.agent.ticket.overdue'); + } + + /** + * Show the Closed ticket list page + * @return type response + */ + public function closed_ticket_list() { + return view('themes.default1.agent.ticket.closed'); + } + + /** + * Show the New ticket page + * @return type response + */ + public function newticket() { + return view('themes.default1.agent.ticket.new'); + } + + /** + * Save the data of new ticket and show the New ticket page with result + * @param type CreateTicketRequest $request + * @return type response + */ + public function post_newticket(CreateTicketRequest $request) { + $email = $request->input('email'); + $fullname = $request->input('fullname'); + // $notice = $request->input('notice'); + $helptopic = $request->input('helptopic'); + $dept = $request->input('dept'); + $sla = $request->input('sla'); + $duedate = $request->input('duedate'); + $assignto = $request->input('assignto'); + $subject = $request->input('subject'); + $body = $request->input('body'); + $priority = $request->input('priority'); + $phone = ""; + $source = "3"; + $headers = null; + //create user + if ($this->create_user($email, $fullname, $subject, $body, $phone, $helptopic, $sla, $priority, $source, $headers, $dept)) { + return Redirect('newticket')->with('success', 'success'); + } else { + return Redirect('newticket')->with('fails', 'fails'); + } + } + + /** + * Shows the ticket thread details + * @param type $id + * @return type response + */ + public function thread($id) { + $lock = Tickets::where('id','=',$id)->first(); + if($lock->lock_by == Auth::user()->id || $lock->lock_at < date('Y-m-d H:i:s', strtotime('-3 minutes', strtotime($lock->lock_at)))) { + if(Auth::user()->role == 'agent'){ + $tickets = Tickets::where('id', '=', $id)->where('dept_id','=', Auth::user()->primary_dpt)->first(); + } else { + $tickets = Tickets::where('id', '=', $id)->first(); + } + $thread = Ticket_Thread::where('ticket_id', '=', $id)->first(); + return view('themes.default1.agent.ticket.timeline', compact('tickets'), compact('thread')); + } else { + return Redirect()->back()->with('fails', 'This ticket has been locked by other agent'); + } + } + + /** + * Replying a ticket + * @param type Ticket_Thread $thread + * @param type TicketRequest $request + * @return type bool + */ + // public function reply(Ticket_Thread $thread, TicketRequest $request) { + // // dd($request); + // $reply_content = $request->input('ReplyContent'); + // $thread->ticket_id = $request->input('ticket_ID'); + // $thread->poster = 'support'; + // $thread->body = $request->input('ReplyContent'); + // $thread->user_id = Auth::user()->id; + // $ticket_id = $request->input('ticket_ID'); + // $tickets = Tickets::where('id', '=', $ticket_id)->first(); + + // $ticket_user = User::where('id','=',$tickets->user_id)->first(); + + // if($tickets->assigned_to == 0 ) + // { + // $tickets->assigned_to = Auth::user()->id; + // $tickets->save(); + // $thread2 = New Ticket_Thread; + // $thread2->ticket_id = $thread->ticket_id; + // $thread2->user_id = Auth::user()->id; + // $thread2->is_internal = 1; + // $thread2->body = "This Ticket have been assigned to " . Auth::user()->first_name . " " . Auth::user()->last_name; + // $thread2->save(); + // } + // if($tickets->status > 1) + // { + // $tickets->last_message_at = date('Y-m-d H:i:s'); + // $tickets->status = '1'; + // $tickets->save(); + // } + + // $thread->save(); + + // $thread = Ticket_Thread::where('ticket_id', '=', $ticket_id)->first(); + // $ticket_subject = $thread->title; + // $user_id = $tickets->user_id; + // $user = User::where('id','=',$user_id)->first(); + // $email = $user->email; + // $user_name = $user->user_name; + // $ticket_number = $tickets->ticket_number; + // $company = $this->company(); + // $username = $ticket_user->user_name; + // if(!empty(Auth::user()->agent_sign)) { + // $agentsign = Auth::user()->agent_sign; + // } + // else{ + // $agentsign = Auth::user()->first_name . ' ' . Auth::user()->last_name; + // } + // // mail to main user + // Mail::send(array('html'=>'emails.ticket_re-reply'), ['content' => $reply_content, 'ticket_number' => $ticket_number, 'From' => $company, 'name'=>$username, 'Agent_Signature' => $agentsign], function ($message) use ($email, $user_name, $ticket_number, $ticket_subject) { + // $message->to($email, $user_name)->subject($ticket_subject . '[#' . $ticket_number . ']'); + // }); + + // $collaborators = Ticket_Collaborator::where('ticket_id','=',$ticket_id)->get(); + // foreach ($collaborators as $collaborator) { + // $system_emails = Emails::all(); + // foreach($system_emails as $system_email) + // { + // //mail to collaborators + // $collab_user_id = $collaborator->user_id; + // $user_id_collab = User::where('id','=',$collab_user_id)->first(); + // $collab_email = $user_id_collab->email; + // $collab_user_name = $user_id_collab->user_name; + // if($system_email->email_address != $collab_email) + // Mail::send('emails.ticket_re-reply', ['content' => $reply_content, 'ticket_number' => $ticket_number, 'From' => $company, 'name'=>$collab_user_name, 'Agent_Signature' => $agentsign], function ($message) use ($collab_email, $collab_user_name, $ticket_number, $ticket_subject) { + // $message->to($collab_email, $collab_user_name)->subject($ticket_subject . '[#' . $ticket_number . ']'); + // }); + // } + // } + // return 1; + // } + + public function reply(Ticket_Thread $thread, TicketRequest $request, Ticket_attachments $ta ) { + $attachments = $request->file('attachment'); + $check_attachment = null; + // dd($attachments); + // } + //return $attachments; + $reply_content = $request->input('ReplyContent'); + $thread->ticket_id = $request->input('ticket_ID'); + $thread->poster = 'support'; + $thread->body = $request->input('ReplyContent'); + $thread->user_id = Auth::user()->id; + $ticket_id = $request->input('ticket_ID'); + //dd($ticket_id); + $tickets = Tickets::where('id', '=', $ticket_id)->first(); + + $ticket_user = User::where('id','=',$tickets->user_id)->first(); + + if($tickets->assigned_to == 0 ) + { + $tickets->assigned_to = Auth::user()->id; + $tickets->save(); + $thread2 = New Ticket_Thread; + $thread2->ticket_id = $thread->ticket_id; + $thread2->user_id = Auth::user()->id; + $thread2->is_internal = 1; + $thread2->body = "This Ticket have been assigned to " . Auth::user()->first_name . " " . Auth::user()->last_name; + $thread2->save(); + } + if($tickets->status > 1) + { + $tickets->status = '1'; + $tickets->save(); + } + $thread->save(); + + //$atachPath = ''; + foreach ($attachments as $attachment) { + if($attachment != null){ + $name = $attachment->getClientOriginalName(); + //dd(dirname($attachment)); + $type = $attachment->getClientOriginalExtension(); + $size = $attachment->getSize(); + $data = file_get_contents($attachment->getRealPath()); + // $tem_path = $attachment->getRealPath(); + // $tem = basename($tem_path).PHP_EOL; + // //dd($tem); + $attachPath=$attachment->getRealPath(); + //dd($attachPath); + $ta->create(['thread_id' => $thread->id,'name'=>$name,'size'=>$size,'type'=>$type,'file'=>$data,'poster'=>'ATTACHMENT']); + + $check_attachment = 1; + } else { + $check_attachment = null; + } + } + + + //$thread = Ticket_Thread::where('ticket_id', '=', $ticket_id)->first(); + $ticket_subject = $thread->title; + $user_id = $tickets->user_id; + $user = User::where('id','=',$user_id)->first(); + $email = $user->email; + $user_name = $user->user_name; + $ticket_number = $tickets->ticket_number; + $company = $this->company(); + $username = $ticket_user->user_name; + if(!empty(Auth::user()->agent_sign)) { + $agentsign = Auth::user()->agent_sign; + } + else{ + $agentsign = Auth::user()->first_name . ' ' . Auth::user()->last_name; + } + + // foreach($attachments as $attachment){ + // $pathToFile = $attachment->getRealPath(); + // $name = $attachment->name; + // $data = $attachment->file; + // $display = $attachment->file; + // $mime = $attachment->type; + // } + //dd(sizeOf($attachments)); + //$size = sizeOf($attachments); + //dd($thread->id);\ + // mail to main user + //$path = 'C:\wamp\tmp\php5D3A.tmp'; + Mail::send(array('html'=>'emails.ticket_re-reply'), ['content' => $reply_content, 'ticket_number' => $ticket_number, 'From' => $company, 'name'=>$username, 'Agent_Signature' => $agentsign], function ($message) use ($email, $user_name, $ticket_number, $ticket_subject, $attachments, $check_attachment) { + $message->to($email, $user_name)->subject($ticket_subject . '[#' . $ticket_number . ']'); + // if(isset($attachments)){ + if($check_attachment == 1){ + $size = sizeOf($attachments); + for($i=0;$i<$size;$i++){ + $message->attach($attachments[$i]->getRealPath(), ['as' => $attachments[$i]->getClientOriginalName(), 'mime' => $attachments[$i]->getClientOriginalExtension()]); + } + } + },true); + + + $collaborators = Ticket_Collaborator::where('ticket_id','=',$ticket_id)->get(); + foreach ($collaborators as $collaborator) { + //mail to collaborators + $collab_user_id = $collaborator->user_id; + $user_id_collab = User::where('id','=',$collab_user_id)->first(); + $collab_email = $user_id_collab->email; + if($user_id_collab->role == "user") { + $collab_user_name = $user_id_collab->user_name; + } else { + $collab_user_name = $user_id_collab->first_name . " " . $user_id_collab->last_name; + } + Mail::send('emails.ticket_re-reply', ['content' => $reply_content, 'ticket_number' => $ticket_number, 'From' => $company, 'name'=>$collab_user_name, 'Agent_Signature' => $agentsign], function ($message) use ($collab_email, $collab_user_name, $ticket_number, $ticket_subject) { + $message->to($collab_email, $collab_user_name)->subject($ticket_subject . '[#' . $ticket_number . ']'); + }); + } + return 1; + } + + + /** + * Ticket edit and save ticket data + * @param type $ticket_id + * @param type Ticket_Thread $thread + * @return type bool + */ + public function ticket_edit_post($ticket_id, Ticket_Thread $thread, Tickets $ticket) { + + if (Input::get('subject') == null) { + return 1; + } + elseif (Input::get('sla_paln') == null) { + return 2; + } + elseif (Input::get('help_topic') == null) { + return 3; + } + elseif (Input::get('ticket_source') == null) { + return 4; + } + elseif (Input::get('ticket_priority') == null) { + return 5; + } + else { + $ticket = $ticket->where('id', '=', $ticket_id)->first(); + $ticket->sla_id = Input::get("sla_paln"); + $ticket->help_topic_id = Input::get("help_topic"); + $ticket->source = Input::get("ticket_source"); + $ticket->priority_id = Input::get("ticket_priority"); + $ticket->save(); + + $threads = $thread->where('ticket_id', '=', $ticket_id)->first(); + $threads->title = Input::get("subject"); + $threads->save(); + return 0; + } + } + + /** + * Print Ticket Details + * @param type $id + * @return type respponse + */ + public function ticket_print($id) { + $tickets = Tickets::where('id', '=', $id)->first(); + $thread = Ticket_Thread::where('ticket_id', '=', $id)->first(); + $html = view('themes.default1.agent.ticket.pdf', compact('id', 'tickets', 'thread'))->render(); + return PDF::load($html)->show(); + } + + /** + * Generates Ticket Number + * @param type $ticket_number + * @return type integer + */ + public function ticket_number($ticket_number) { + $number = $ticket_number; + $number = explode('-', $number); + $number1 = $number[0]; + if ($number1 == 'ZZZZ') { + $number1 = 'AAAA'; + } + $number2 = $number[1]; + if ($number2 == '9999') { + $number2 = '0000'; + } + $number3 = $number[2]; + if ($number3 == '9999999') { + $number3 = '0000000'; + } + $number1++; + $number2++; + $number3++; + $number2 = sprintf('%04s', $number2); + $number3 = sprintf('%07s', $number3); + $array = array($number1, $number2, $number3); + $number = implode('-', $array); + return $number; + } + + /** + * check email for dublicate entry + * @param type $email + * @return type bool + */ + public function check_email($email) { + $check = User::where('email', '=', $email)->first(); + if ($check == true) { + return $check; + } else { + return false; + } + } + + /** + * Create User while creating ticket + * @param type $emailadd + * @param type $username + * @param type $subject + * @param type $body + * @param type $phone + * @param type $helptopic + * @param type $sla + * @param type $priority + * @param type $system + * @return type bool + */ + public function create_user($emailadd, $username, $subject, $body, $phone, $helptopic, $sla, $priority, $source, $headers, $dept) { + // define global variables + $email; + $username; + // check emails + $ticket_creator = $username; + $checkemail = $this->check_email($emailadd); + $company = $this->company(); + if ($checkemail == false) { + // Generate password + $password = $this->generateRandomString(); + // create user + $user = new User; + if($username == null) + { + $username = $emailadd; + } + $user->user_name = $username; + $user->email = $emailadd; + $user->password = Hash::make($password); + $user->role = "user"; + $user->active = "1"; + // mail user his/her password + if ($user->save()) { + $user_id = $user->id; + if (Mail::send('emails.pass', ['password' => $password, 'name' => $username, 'from'=>$company], function ($message) use ($emailadd, $username) { + $message->to($emailadd, $username)->subject('password'); + })) { + // need to do something here.... + } + } + } else { + $username = $checkemail->username; + $user_id = $checkemail->id; + } + $ticket_number = $this->check_ticket($user_id, $subject, $body, $helptopic, $sla, $priority, $source, $headers, $dept); + $ticket_number2 = $ticket_number[0]; + $ticketdata = Tickets::where('ticket_number','=',$ticket_number2)->first(); + $threaddata = Ticket_Thread::where('ticket_id','=',$ticketdata->id)->first(); + // dd($threaddata); + $is_reply = $ticket_number[1]; + $system = $this->system(); + $updated_subject = $threaddata->title . '[#' . $ticket_number2 . ']'; + if($ticket_number2) + { + // send ticket create details to user + if($is_reply == 0) + { + $mail = "Admin_mail"; + Mail::send('emails.Ticket_Create', ['name' => $username, 'ticket_number' => $ticket_number2, 'from'=>$company, 'system' => $system], function ($message) use ($emailadd, $username, $ticket_number2, $updated_subject) { + $message->to($emailadd, $username)->subject($updated_subject); + }); + } + else + { + $mail = "email_reply"; + } + + if(Alert::first()->ticket_status == 1 || Alert::first()->ticket_admin_email == 1) { + // send email to admin + $admins = User::where('role','=','admin')->get(); + // $ticket_creator = $user->user_name; + foreach($admins as $admin) + { + $admin_email = $admin->email; + $admin_user = $admin->first_name; + Mail::send('emails.'.$mail, ['agent' => $admin_user, 'ticket_number' => $ticket_number2, 'from'=>$company, 'email' => $emailadd, 'name' => $ticket_creator, 'system' => $system], function ($message) use ($admin_email, $admin_user, $ticket_number2, $updated_subject) { + $message->to($admin_email, $admin_user)->subject($updated_subject); + }); + } + } + + if(Alert::first()->ticket_status == 1 || Alert::first()->ticket_department_member == 1) { + // send email to agents + $agents = User::where('role','=','agent')->get(); + foreach($agents as $agent) + { + if($ticketdata->dept_id == $agent->primary_dpt) + { + $agent_email = $agent->email; + $agent_user = $agent->first_name; + Mail::send('emails.'.$mail, ['agent' => $agent_user, 'ticket_number' => $ticket_number2, 'from'=>$company, 'email' => $emailadd, 'name' => $ticket_creator, 'system' => $system], function ($message) use ($agent_email, $agent_user, $ticket_number2, $updated_subject) { + $message->to($agent_email, $agent_user)->subject($updated_subject); + }); + } + } + } + return true; + } + } + + /** + * Default helptopic + * @return type string + */ + public function default_helptopic() { + $helptopic = "1"; + return $helptopic; + } + + /** + * Default SLA plan + * @return type string + */ + public function default_sla() { + $sla = "1"; + return $sla; + } + + /** + * Default Priority + * @return type string + */ + public function default_priority() { + $priority = "1"; + return $prioirty; + } + + /** + * Check the response of the ticket + * @param type $user_id + * @param type $subject + * @param type $body + * @param type $helptopic + * @param type $sla + * @param type $priority + * @return type string + */ + public function check_ticket($user_id, $subject, $body, $helptopic, $sla, $priority, $source, $headers, $dept) { + // $read_ticket_number = substr($subject, 0, 6); + $read_ticket_number = explode('[#',$subject); + if(isset($read_ticket_number[1])) + { + // dd($read_ticket_number); + // if ($read_ticket_number == 'Re: [#' or $read_ticket_number == 'RE: [#') { + // dd($read_ticket_number); + $separate = explode("]", $read_ticket_number[1]); + $new_subject = substr($separate[0], 0, 20); + $find_number = Tickets::where('ticket_number', '=', $new_subject)->first(); + $thread_body = explode("---Reply above this line---", $body); + $body = $thread_body[0]; + if (count($find_number) > 0) { + $id = $find_number->id; + $ticket_number = $find_number->ticket_number; + if($find_number->status > 1) + { + $find_number->status = 1; + $find_number->save(); + + $ticket_status = Ticket_Status::where('id','=',1)->first(); + + $user_name = User::where('id','=', $user_id)->first(); + + if($user_name->role == 'user' ) + { + $username = $user_name->user_name; + } + elseif($user_name->role == 'agent' or $user_name->role == 'admin') + { + $username = $user_name->first_name . " " . $user_name->last_name; + } + + $ticket_threads = new Ticket_Thread; + $ticket_threads->ticket_id = $id; + $ticket_threads->user_id = $user_id; + $ticket_threads->is_internal = 1; + $ticket_threads->body = $ticket_status->message. " " . $username; + $ticket_threads->save(); + + } + if (isset($id)) { + if ($this->ticket_thread($subject, $body, $id, $user_id)) { + return array($ticket_number,1); + } + } + } else { + $ticket_number = $this->create_ticket($user_id, $subject, $body, $helptopic, $sla, $priority, $source, $headers, $dept); + return array($ticket_number,0); + } + } else { + $ticket_number = $this->create_ticket($user_id, $subject, $body, $helptopic, $sla, $priority, $source, $headers, $dept); + return array($ticket_number,0); + } + } + + /** + * Create Ticket + * @param type $user_id + * @param type $subject + * @param type $body + * @param type $helptopic + * @param type $sla + * @param type $priority + * @return type string + */ + public function create_ticket($user_id, $subject, $body, $helptopic, $sla, $priority, $source, $headers, $dept) { + $max_number = Tickets::whereRaw('id = (select max(`id`) from tickets)')->first(); + if($max_number == null) + { + $ticket_number = "AAAA-9999-9999999"; + } + else + { + foreach ($max_number as $number) { + $ticket_number = $max_number->ticket_number; + } + } + $ticket = new Tickets; + $ticket->ticket_number = $this->ticket_number($ticket_number); + $ticket->user_id = $user_id; + $ticket->dept_id = $dept; + $ticket->help_topic_id = $helptopic; + $ticket->sla = $sla; + $ticket->status = '1'; + $ticket->priority_id = $priority; + $ticket->source = $source; + $ticket->save(); + $ticket_number = $ticket->ticket_number; + $id = $ticket->id; + // store collaborators + $this->store_collaborators($headers, $id); + + if ($this->ticket_thread($subject, $body, $id, $user_id) == true) { + return $ticket_number; + } + } + + /** + * Generate Ticket Thread + * @param type $subject + * @param type $body + * @param type $id + * @param type $user_id + * @return type + */ + public function ticket_thread($subject, $body, $id, $user_id) { + $thread = new Ticket_Thread; + $thread->user_id = $user_id; + $thread->ticket_id = $id; + $thread->poster = 'client'; + $thread->title = $subject; + $thread->body = $body; + if ($thread->save()) { + return true; + } + } + + /** + * Generate a random string for password + * @param type $length + * @return type string + */ + public function generateRandomString($length = 10) { + $characters = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'; + $charactersLength = strlen($characters); + $randomString = ''; + for ($i = 0; $i < $length; $i++) { + $randomString .= $characters[rand(0, $charactersLength - 1)]; + } + return $randomString; + } + + /** + * function to Ticket Close + * @param type $id + * @param type Tickets $ticket + * @return type string + */ + public function close($id, Tickets $ticket) { + $ticket_status = $ticket->where('id', '=', $id)->first(); + $ticket_status->status = 3; + $ticket_status->closed_at = date('Y-m-d H:i:s'); + $ticket_status->save(); + $ticket_status_message = Ticket_Status::where('id','=',$ticket_status->status)->first(); + $thread = New Ticket_Thread; + $thread->ticket_id = $ticket_status->id; + $thread->user_id = Auth::user()->id; + $thread->is_internal = 1; + $thread->body = $ticket_status_message->message . " " . Auth::user()->first_name . " " . Auth::user()->last_name; + $thread->save(); + + $user_id = $ticket_status->user_id; + $user = User::where('id','=',$user_id)->first(); + $email = $user->email; + $user_name = $user->user_name; + $ticket_number = $ticket_status->ticket_number; + + $company = $this->company(); + + Mail::send('emails.close_ticket', ['ticket_number' => $ticket_number, 'from'=>$company], function ($message) use ($email, $user_name, $ticket_number) { + $message->to($email, $user_name)->subject('[#' . $ticket_number . ']'); + }); + + return "your ticket" . $ticket_status->ticket_number . " has been closed"; + } + + /** + * function to Ticket resolved + * @param type $id + * @param type Tickets $ticket + * @return type string + */ + public function resolve($id, Tickets $ticket) { + $ticket_status = $ticket->where('id', '=', $id)->first(); + $ticket_status->status = 2; + $ticket_status->save(); + $ticket_status_message = Ticket_Status::where('id','=',$ticket_status->status)->first(); + $thread = New Ticket_Thread; + $thread->ticket_id = $ticket_status->id; + $thread->user_id = Auth::user()->id; + $thread->is_internal = 1; + $thread->body = $ticket_status_message->message . " " . Auth::user()->first_name . " " . Auth::user()->last_name; + $thread->save(); + return "your ticket" . $ticket_status->ticket_number . " has been resolved"; + } + + /** + * function to Open Ticket + * @param type $id + * @param type Tickets $ticket + * @return type + */ + public function open($id, Tickets $ticket) { + $ticket_status = $ticket->where('id', '=', $id)->first(); + $ticket_status->status = 1; + $ticket_status->reopened_at = date('Y-m-d H:i:s'); + $ticket_status->save(); + $ticket_status_message = Ticket_Status::where('id','=',$ticket_status->status)->first(); + $thread = New Ticket_Thread; + $thread->ticket_id = $ticket_status->id; + $thread->user_id = Auth::user()->id; + $thread->is_internal = 1; + $thread->body = $ticket_status_message->message . " " . Auth::user()->first_name . " " . Auth::user()->last_name; + $thread->save(); + return "your ticket" . $ticket_status->ticket_number . " has been opened"; + } + + /** + * Function to delete ticket + * @param type $id + * @param type Tickets $ticket + * @return type string + */ + public function delete($id, Tickets $ticket) { + $ticket_delete = $ticket->where('id', '=', $id)->first(); + if($ticket_delete->status == 5) + { + $ticket_delete->delete(); + $ticket_threads = Ticket_Thread::where('ticket_id','=',$id)->get(); + foreach($ticket_threads as $ticket_thread) + { + $ticket_thread->delete(); + } + $ticket_attachments = Ticket_attachments::where('ticket_id','=',$id)->get(); + foreach ($ticket_attachments as $ticket_attachment) + { + $ticket_attachment->delete(); + } + return "your ticket has been delete"; + } + else + { + $ticket_delete->is_deleted = 0; + $ticket_delete->status = 5; + $ticket_delete->save(); + $ticket_status_message = Ticket_Status::where('id','=',$ticket_delete->status)->first(); + $thread = New Ticket_Thread; + $thread->ticket_id = $ticket_delete->id; + $thread->user_id = Auth::user()->id; + $thread->is_internal = 1; + $thread->body = $ticket_status_message->message . " " . Auth::user()->first_name . " " . Auth::user()->last_name; + $thread->save(); + return "your ticket" . $ticket_delete->ticket_number . " has been delete"; + } + + } + + /** + * Function to ban an email + * @param type $id + * @param type Tickets $ticket + * @return type string + */ + public function ban($id, Tickets $ticket) { + $ticket_ban = $ticket->where('id', '=', $id)->first(); + $ban_email = $ticket_ban->user_id; + $user = User::where('id', '=', $ban_email)->first(); + $user->is_ban = 1; + $user->save(); + $Email = $user->email; + $ban = Banlist::where('email_address', '=', $Email)->first(); + if ($ban == null) { + $banlist = new Banlist; + $banlist->ban_status = 1; + $banlist->email_address = $user->email; + $banlist->save(); + } + return "the user has been banned"; + } + + /** + * function to assign ticket + * @param type $id + * @return type bool + */ + public function assign($id) { + $UserEmail = Input::get('user'); + // $UserEmail = 'sujitprasad12@yahoo.in'; + $user = User::where('email', '=', $UserEmail)->first(); + $user_id = $user->id; + $ticket = Tickets::where('id', '=', $id)->first(); + $ticket_number = $ticket->ticket_number; + $ticket->assigned_to = $user_id; + $ticket->save(); + $thread = New Ticket_Thread; + $thread->ticket_id = $ticket->id; + $thread->user_id = Auth::user()->id; + $thread->is_internal = 1; + $thread->body = "This Ticket has been assigned to " . $user->first_name . " " . $user->last_name; + $thread->save(); + + $company = $this->company(); + $system = $this->system(); + + $agent = $user->first_name; + $agent_email = $user->email; + + $master = Auth::user()->first_name . " " . Auth::user()->last_name; + if(Alert::first()->internal_status == 1 || Alert::first()->internal_assigned_agent == 1) { + // ticket assigned send mail + Mail::send('emails.Ticket_assign', ['agent' => $agent, 'ticket_number' => $ticket_number, 'from'=>$company, 'master' => $master, 'system' => $system], function ($message) use ($agent_email, $agent, $ticket_number) { + $message->to($agent_email, $agent)->subject('[#' . $ticket_number . ']'); + }); + } + + return 1; + } + + /** + * Function to post internal note + * @param type $id + * @return type bool + */ + public function InternalNote($id) { + $InternalContent = Input::get('InternalContent'); + $thread = Ticket_Thread::where('ticket_id', '=', $id)->first(); + $NewThread = new Ticket_Thread; + $NewThread->ticket_id = $thread->ticket_id; + $NewThread->user_id = Auth::user()->id; + // $NewThread->thread_type = 'M'; + $NewThread->is_internal = 1; + $NewThread->poster = Auth::user()->role; + $NewThread->title = $thread->title; + $NewThread->body = $InternalContent; + $NewThread->save(); + return 1; + } + + /** + * Function to surrender a ticket + * @param type $id + * @return type bool + */ + public function surrender($id) { + $ticket = Tickets::where('id', '=', $id)->first(); + + // if($ticket->assigned_to == Auth::user()->id) + // { + $InternalContent = Auth::user()->first_name." ".Auth::user()->last_name . " has Surrendered the assigned Ticket"; + $thread = Ticket_Thread::where('ticket_id', '=', $id)->first(); + $NewThread = new Ticket_Thread; + $NewThread->ticket_id = $thread->ticket_id; + $NewThread->user_id = Auth::user()->id; + $NewThread->is_internal = 1; + $NewThread->poster = Auth::user()->role; + $NewThread->title = $thread->title; + $NewThread->body = $InternalContent; + $NewThread->save(); + // } + + $ticket->assigned_to = 0; + $ticket->save(); + + return 1; + } + + public function search($keyword) { + if(isset($keyword)) { + $data = array('ticket_number' => Tickets::search($keyword)); + + return $data; + } else { + return "no results"; + } + } + public function stores($ticket_number) + { + $this->layout->header = $ticket_number; + $content = View::make('themes.default1.admin.tickets.ticketsearch', with(new Tickets())) + ->with('header', $this->layout->header) + ->with('ticket_number', \App\Model\Tickets::stores($ticket_number)); + + if (Request::header('X-PJAX')) { + return $content; + } else { + $this->layout->content = $content; + } + } + + + /** + * store_collaborators + * @param type $headers + * @return type + */ + public function store_collaborators($headers, $id) + { + $company = $this->company(); + if(isset($headers)) { + foreach ($headers as $email=>$name) { + $name = $name; + $email = $email; + if($this->check_email($email) == false) { + $create_user = new User; + $create_user->user_name = $name; + $create_user->email = $email; + $create_user->active = 1; + $create_user->role = "user"; + $password = $this->generateRandomString(); + $create_user->password = Hash::make($password); + $create_user->save(); + $user_id = $create_user->id; + Mail::send('emails.pass', ['password' => $password, 'name' => $name, 'from'=>$company], function ($message) use ($email, $name) { + $message->to($email, $name)->subject('password'); + }); + } + else{ + $user = $this->check_email($email); + $user_id = $user->id; + } + $collaborator_store = new Ticket_Collaborator; + $collaborator_store->isactive = 1; + $collaborator_store->ticket_id = $id; + $collaborator_store->user_id = $user_id; + $collaborator_store->role = "ccc"; + $collaborator_store->save(); + } + } + return true; + } + + /** + * company + * @return type + */ + public function company() + { + $company = Company::Where('id','=','1')->first(); + if($company->company_name == null){ + $company = "Support Center"; + }else{ + $company = $company->company_name; + } + return $company; + } + + /** + * system + * @return type + */ + public function system() + { + $system = System::Where('id','=','1')->first(); + if($system->name == null){ + $system = "Support Center"; + }else{ + $system = $system->name; + } + return $system; + } + + /** + * function to search + * @return type + */ + // public function search() { + // $product = Input::get('type'); + // $word = Input::get('name_startsWith'); + + // if ($product == 'product') { + // $starts_with = strtoupper($word); + // $rows = DB::table('users')->select('user_name')->where('name', 'LIKE', $starts_with . '%')->get(); + // $data = array(); + // foreach ($rows as $row) { + // array_push($data, $row->name); + // } + // print_r(json_encode($data)); + // } + + // if ($product == 'product_table') { + // $row_num = Input::get('row_num'); + // $starts_with = strtoupper($word); + // $rows = DB::table('product')->select('name', 'description', 'cost_price')->where('name', 'LIKE', $starts_with . '%')->get(); + // $data = array(); + // foreach ($rows as $row) { + // $name = $row->name . '|' . $row->description . '|' . $row->cost_price . '|' . $row_num; + // array_push($data, $name); + // } + // print_r(json_encode($data)); + // } + // } + + /** + * shows trashed tickets + * @return type response + */ + public function trash() { + return view('themes.default1.agent.ticket.trash'); + } + + /** + * shows unassigned tickets + * @return type + */ + public function unassigned() { + return view('themes.default1.agent.ticket.unassigned'); + } + + /** + * shows tickets assigned to Auth::user() + * @return type + */ + public function myticket() { + return view('themes.default1.agent.ticket.myticket'); + } + + + /** + * cleanMe + * @param type $input + * @return type + */ + public function cleanMe($input) { + $input = mysqli_real_escape_string($input); + $input = htmlspecialchars($input, ENT_IGNORE, 'utf-8'); + $input = strip_tags($input); + $input = stripslashes($input); + return $input; + } + + /** + * autosearch + * @param type Image $image + * @return type json + */ + public function autosearch($id,User $user) + { + $user = $user->lists('email'); + echo json_encode($user); + } + + /** + * autosearch2 + * @param type Image $image + * @return type json + */ + public function autosearch2(User $user) + { + $user = $user->lists('email'); + echo json_encode($user); + } + + + + /** + * autosearch + * @param type Image $image + * @return type json + */ + public function usersearch() + { + $email = Input::get('search'); + $ticket_id = Input::get('ticket_id'); + $data = User::where('email','=',$email)->first(); + + $ticket_collaborator = Ticket_Collaborator::where('ticket_id','=',$ticket_id)->where('user_id','=',$data->id)->first(); + if(!isset($ticket_collaborator)) + { + $ticket_collaborator = new Ticket_Collaborator; + $ticket_collaborator->isactive = 1; + $ticket_collaborator->ticket_id = $ticket_id; + $ticket_collaborator->user_id = $data->id; + $ticket_collaborator->role = 'ccc'; + $ticket_collaborator->save(); + return '

Success!

'.$data->user_name.'

'.$data->email.'
'; + } else { + return '

'.$data->user_name.'

'.$data->email.'
This user already Collaborated
'; + } + + } + + /** + * useradd + * @param type Image $image + * @return type json + */ + public function useradd() + { + $name = Input::get('name'); + $email = Input::get('email'); + $ticket_id = Input::get('ticket_id'); + $user_search = User::where('email','=',$email)->first(); + if(isset($user_serach)){ + return '

Alert!

This user already Exists
'; + } else { + $company = $this->company(); + $user = new User; + $user->user_name = $name; + $user->email = $email; + $password = $this->generateRandomString(); + $user->password = $password; + $user->role = 'user'; + if ($user->save()) { + $user_id = $user->id; + Mail::send('emails.pass', ['password' => $password, 'name' => $name, 'from'=>$company], function ($message) use ($email, $name) { + $message->to($email, $name)->subject('password'); + }); + } + $ticket_collaborator = new Ticket_Collaborator; + $ticket_collaborator->isactive = 1; + $ticket_collaborator->ticket_id = $ticket_id; + $ticket_collaborator->user_id = $user->id; + $ticket_collaborator->role = 'ccc'; + $ticket_collaborator->save(); + return '

'.$user->user_name.'

'.$user->email.'
'; + } + // return '

'.$data->user_name.'

'.$data->email.'
'; + } + + public function userremove() + { + $id = Input::get('data1'); + $ticket_collaborator = Ticket_Collaborator::where('id','=',$id)->delete(); + return 1; + } + + + public function select_all() { + + if(Input::has('select_all')) + { + $selectall = Input::get('select_all'); + $value = Input::get('submit'); + // dd($value); + foreach($selectall as $delete) + { + $ticket = Tickets::whereId($delete)->first(); + if($value == "Delete"){ + $ticket->status = 5; + $ticket->save(); + return redirect()->back()->with('success',' Moved to trash'); + } elseif($value == "Close") { + $ticket->status = 2; + $ticket->save(); + return redirect()->back()->with('success',' Tickets has been Closed'); + } elseif($value == "Open") { + $ticket->status = 1; + $ticket->save(); + return redirect()->back()->with('success',' Ticket has been Opened'); + } + + } + + } + return redirect()->back()->with('fails','None Selected!'); + } + + + public static function usertimezone($utc) { + $set = System::whereId('1')->first(); + $tz = $set->time_zone; + $format = $set->date_time_format; + date_default_timezone_set($tz); + $offset = date('Z', strtotime($utc)); + $date = date($format, strtotime($utc) + $offset); + return $date; + } + + public function lock($id){ + $ticket = Tickets::where('id','=',$id)->first(); + $ticket->lock_by = Auth::user()->id; + $ticket->lock_at = date('Y-m-d H:i:s'); + $ticket->save(); + } + +} diff --git a/code/app/Http/Controllers/Agent/UserController.php b/code/code/app/Http/Controllers/Agent/UserController.php similarity index 91% rename from code/app/Http/Controllers/Agent/UserController.php rename to code/code/app/Http/Controllers/Agent/UserController.php index 5140e1823..97c367928 100644 --- a/code/app/Http/Controllers/Agent/UserController.php +++ b/code/code/app/Http/Controllers/Agent/UserController.php @@ -35,6 +35,8 @@ use Hash; /* Validate post check ticket */ use Input; +use Redirect; + /** * UserController * @@ -56,7 +58,7 @@ class UserController extends Controller { public function __construct() { $this->middleware('auth'); $this->middleware('role.agent'); - $this->middleware('roles'); + // $this->middleware('roles'); } /** @@ -205,13 +207,22 @@ class UserController extends Controller { return view('themes.default1.agent.user.profile', compact('user')); } + /** + * get profile edit page + * @return type Response + */ + public function getProfileedit() { + $user = Auth::user(); + return view('themes.default1.agent.user.profile-edit', compact('user')); + } + /** * post profile page * @param type int $id * @param type ProfileRequest $request * @return type Response */ - public function postProfile($id, ProfileRequest $request) { + public function postProfileedit( ProfileRequest $request) { $user = Auth::user(); $user->gender = $request->input('gender'); $user->save(); @@ -236,10 +247,10 @@ class UserController extends Controller { $user->profile_pic = $fileName; } else { $user->fill($request->except('profile_pic', 'gender'))->save(); - return redirect('guest')->with('success', 'Profile Updated sucessfully'); + return Redirect::route('profile')->with('success', 'Profile Updated sucessfully'); } if ($user->fill($request->except('profile_pic'))->save()) { - return redirect('guest')->with('success', 'Profile Updated sucessfully'); + return Redirect::route('profile')->with('success', 'Profile Updated sucessfully'); } } @@ -255,9 +266,9 @@ class UserController extends Controller { if (Hash::check($request->input('old_password'), $user->getAuthPassword())) { $user->password = Hash::make($request->input('new_password')); $user->save(); - return redirect('guest')->with('success', 'Password Updated sucessfully'); + return redirect('profile-edit')->with('success1', 'Password Updated sucessfully'); } else { - return redirect('guest')->with('fails', 'Password was not Updated'); + return redirect('profile-edit')->with('fails1', 'Password was not Updated'); } } } diff --git a/code/code/app/Http/Controllers/ArticleController.php b/code/code/app/Http/Controllers/ArticleController.php new file mode 100644 index 000000000..b906f17df --- /dev/null +++ b/code/code/app/Http/Controllers/ArticleController.php @@ -0,0 +1,144 @@ +get(); + /* show the index page with article list */ + return view('themes.default1.article.index', compact('articles')); + + } + + /** + * Show the form for creating a new resource. + * + * @return Response + */ + public function create(Category $category) { + /* get the attributes of the category */ + $category = $category->lists('id', 'name'); + /* get the create page */ + return view('themes.default1.article.create', compact('category')); + } + + /** + * Store a newly created resource in storage. + * + * @return Response + */ + public function store(Article $article, ArticleRequest $request) { + $article->fill($request->input())->save(); + + $requests = $request->input('category_id'); + + $id = $article->id; + + foreach ($requests as $req) { + DB::insert('insert into article_relationship (category_id, article_id) values (?,?)', [$req, $id]); + + } + /* insert the values to the article table */ + if ($article->fill($request->input())->save()) //true: redirect to index page with success message + { + return redirect('kb/article')->with('success', 'Article Inserted Successfully'); + } else //redirect to index page with fail message + { + return redirect('kb/article')->with('fails', 'Article Not Inserted'); + } + } + + /** + * Display the specified resource. + * + * @param int $id + * @return Response + */ + public function show($id) { + // + } + + /** + * Show the form for editing the specified resource. + * + * @param int $id, object $article + * @return Response + */ + public function edit($id, Article $article, Relationship $relation, Category $category) { + + /* define the selected fields */ + $assign = $relation->where('article_id', $id)->lists('category_id'); + /* get the attributes of the category */ + $category = $category->lists('id', 'name'); + /* get the selected article and display it at edit page */ + /* Get the selected article with id */ + $article = $article->whereId($id)->first(); + /* send to the edit page */ + return view('themes.default1.article.edit', compact('assign', 'article', 'category')); + } + + /** + * Update the specified resource in storage. + * + * @param int $id, object $article, object $request + * @return Response + */ + public function update($id, Article $article, Relationship $relation, + ArticleRequest $request) { + + /* get the attribute of relation table where id==$id */ + $relation = $relation->where('article_id', $id); + $relation->delete(); + /* get the request of the current articles */ + $article = $article->whereId($id)->first(); + $requests = $request->input('category_id'); + + $id = $article->id; + + foreach ($requests as $req) { + DB::insert('insert into article_relationship (category_id, article_id) values (?,?)', [$req, $id]); + + } + /* update the value to the table */ + if ($article->fill($request->input())->save()) //true: redirect to index page with success message + { + return redirect('kb/article')->with('success', 'Article Updated Successfully'); + } else // redirect to index page with fails message + { + return redirect('kb/article')->with('fails', 'Article Not Updated'); + } + } + + /** + * Remove the specified resource from storage. + * + * @param int $id, object $article + * @return Response + */ + public function destroy($id, Article $article) { + /* delete the selected article from the table */ + $article = $article->whereId($id)->first(); //get the selected article via id + if ($article->delete()) //true:redirect to index page with success message + { + return redirect('kb/article')->with('success', 'Article Deleted Successfully'); + } else //redirect to index page with fails message + { + return redirect('kb/article')->with('fails', 'Article Not Deleted'); + } + } + +} diff --git a/code/app/Http/Controllers/Auth/AuthController.php b/code/code/app/Http/Controllers/Auth/AuthController.php similarity index 78% rename from code/app/Http/Controllers/Auth/AuthController.php rename to code/code/app/Http/Controllers/Auth/AuthController.php index 24b904112..1f12c552c 100644 --- a/code/app/Http/Controllers/Auth/AuthController.php +++ b/code/code/app/Http/Controllers/Auth/AuthController.php @@ -13,6 +13,8 @@ use Illuminate\Contracts\Auth\Registrar; use Illuminate\Foundation\Auth\AuthenticatesAndRegistersUsers; /* Include login validator */ use Mail; +use App\Http\Controllers\SettingsController; +use Auth; /** * --------------------------------------------------- @@ -30,7 +32,10 @@ class AuthController extends Controller { use AuthenticatesAndRegistersUsers; /* to redirect after login */ - protected $redirectTo = '/'; + // if auth is agent + protected $redirectTo = '/dashboard'; + // if auth is user + protected $redirectToUser = '/profile'; /* Direct After Logout */ protected $redirectAfterLogout = '/'; protected $loginPath = '/auth/login'; @@ -43,6 +48,7 @@ class AuthController extends Controller { * @return void */ public function __construct(Guard $auth, Registrar $registrar) { + SettingsController::smtp(); $this->auth = $auth; $this->registrar = $registrar; $this->middleware('guest', ['except' => 'getLogout']); @@ -53,7 +59,18 @@ class AuthController extends Controller { * @return type Response */ public function getRegister() { - return view('auth.register'); + if(Auth::user()) { + if(Auth::user()->role == "admin" || Auth::user()->role == "agent"){ + return \Redirect::route('dashboard'); + } + elseif(Auth::user()->role == "user"){ + // return view('auth.register'); + } + } + else{ + return view('auth.register'); + } + } /** @@ -66,7 +83,7 @@ class AuthController extends Controller { $password = Hash::make($request->input('password')); $user->password = $password; $name = $request->input('full_name'); - $user->name = $name; + $user->user_name = $name; $user->email = $request->input('email'); // $user->first_name = $request->input('first_name'); // $user->last_nmae = $request->input('last_nmae'); @@ -80,7 +97,7 @@ class AuthController extends Controller { $mail = Mail::send('auth.activate', array('link' => url('getmail', $code), 'username' => $name), function ($message) use ($user) { $message->to($user->email, $user->full_name)->subject('active your account'); }); - return redirect('guest')->with('success', 'Activate Your Account ! Click on Link that send to your mail'); + return redirect('home')->with('success', 'Activate Your Account ! Click on Link that send to your mail'); } /** @@ -105,7 +122,17 @@ class AuthController extends Controller { * @return type Response */ public function getLogin() { - return view('auth.login'); + if(Auth::user()) { + if(Auth::user()->role == "admin" || Auth::user()->role == "agent"){ + return \Redirect::route('dashboard'); + } + elseif(Auth::user()->role == "user"){ + return \Redirect::route('home'); + } + } + else{ + return view('auth.login'); + } } /** @@ -120,7 +147,14 @@ class AuthController extends Controller { // dd([$email,$password,$remember]); $credentials = $request->only('email', 'password'); if ($this->auth->attempt($credentials, $request->has('remember'))) { - return redirect()->intended($this->redirectPath()); + if(Auth::user()->role == 'user') + { + return \Redirect::route('home'); + } + else + { + return redirect()->intended($this->redirectPath()); + } } return redirect($this->loginPath()) ->withInput($request->only('email', 'remember')) @@ -137,4 +171,4 @@ class AuthController extends Controller { protected function getFailedLoginMessage() { return 'This Field do not match our records.'; } -}\ +} diff --git a/code/app/Http/Controllers/Auth/PasswordController.php b/code/code/app/Http/Controllers/Auth/PasswordController.php similarity index 100% rename from code/app/Http/Controllers/Auth/PasswordController.php rename to code/code/app/Http/Controllers/Auth/PasswordController.php diff --git a/code/code/app/Http/Controllers/CategoryController.php b/code/code/app/Http/Controllers/CategoryController.php new file mode 100644 index 000000000..c0af6d764 --- /dev/null +++ b/code/code/app/Http/Controllers/CategoryController.php @@ -0,0 +1,114 @@ +get(); + /* get the view of index of the catogorys with all attributes + of category model */ + return view('themes.default1.category.index', compact('categorys')); + } + + /** + * Show the form for creating a new resource. + * + * @return Response + */ + public function create(Category $category) { + /* Get the all attributes in the category model */ + $category = $category->get(); + /* get the view page to create new category with all attributes + of category model*/ + return view('themes.default1.category.create', compact('category')); + } + + /** + * Store a newly created resource in storage. + * + * @return Response + */ + public function store(Category $category, ArticleRequest $request) { + /* Get the whole request from the form and insert into table via model */ + if ($category->fill($request->input())->save()) //True: send success message to index page + { + return redirect('kb/category')->with('success', 'Category Inserted Successfully'); + } else //send fail to index page + { + return redirect('kb/category')->with('fails', 'Category Not Inserted'); + } + } + + /** + * Display the specified resource. + * + * @param int $id + * @return Response + */ + public function show($id) { + // + } + + /** + * Show the form for editing the specified resource. + * + * @param int $id + * @return Response + */ + public function edit($id, Category $category) { + /* get the atributes of the category model whose id == $id */ + $category = $category->whereId($id)->first(); + /* get the Edit page the selected category via id */ + return view('themes.default1.category.edit', compact('category')); + + } + + /** + * Update the specified resource in storage. + * + * @param int $id + * @return Response + */ + public function update($id, Category $category, ArticleRequest $request) { + /* Edit the selected category via id */ + $category = $category->whereId($id)->first(); + /* update the values at the table via model according with the request */ + if ($category->fill($request->input())->save()) //True: redirct to index page with success message + { + return redirect('kb/category')->with('success', 'Category Updated Successfully'); + } else //redirect to index with fails message + { + return redirect('kb/category')->with('fails', 'Category Not Updated'); + } + } + + /** + * Remove the specified resource from storage. + * + * @param int $id + * @return Response + */ + public function destroy($id, Category $category) { + /* delete the category selected, id == $id */ + $category = $category->whereId($id)->first(); + if ($category->delete()) //True: redirect to index with success message + { + return redirect('kb/category')->with('success', 'Category Deleted Successfully'); + } else //redirect to index page fails message + { + return redirect('kb/category')->with('fails', 'Category Not Deleted'); + } + } + +} diff --git a/code/app/Http/Controllers/CheckController.php b/code/code/app/Http/Controllers/CheckController.php similarity index 87% rename from code/app/Http/Controllers/CheckController.php rename to code/code/app/Http/Controllers/CheckController.php index 87b1573fb..bf3001f13 100644 --- a/code/app/Http/Controllers/CheckController.php +++ b/code/code/app/Http/Controllers/CheckController.php @@ -8,10 +8,17 @@ use Illuminate\Http\Request; use App\Model\Agent\Teams; use App\Model\Agent\Assign_team_agent; use DB; +use Config; +use Redirect; class CheckController extends Controller { public function getcheck(Teams $team, Assign_team_agent $team_assign_agent) { + if(Config::get('database.install') == '%0%') + { + return Redirect::route('license'); + } + $table = $team_assign_agent->where('agent_id', 1)->first(); $teams = $team->lists('id', 'name'); diff --git a/code/app/Http/Controllers/Controller.php b/code/code/app/Http/Controllers/Controller.php similarity index 100% rename from code/app/Http/Controllers/Controller.php rename to code/code/app/Http/Controllers/Controller.php diff --git a/code/app/Http/Controllers/Error/ErrorController.php b/code/code/app/Http/Controllers/Error/ErrorController.php similarity index 100% rename from code/app/Http/Controllers/Error/ErrorController.php rename to code/code/app/Http/Controllers/Error/ErrorController.php diff --git a/code/code/app/Http/Controllers/Guest/EmailController.php b/code/code/app/Http/Controllers/Guest/EmailController.php new file mode 100644 index 000000000..ebd862ce6 --- /dev/null +++ b/code/code/app/Http/Controllers/Guest/EmailController.php @@ -0,0 +1,81 @@ + + */ +class OuthouseController extends Controller { + + /** + * post port + * + * @return string + */ + public static function port() + { + $port = Emails::where('id','=','1')->first(); + $portvalue = $port->option_value; + + return $portvalue; + } + + /** + * post host + * + * @return string + */ + public static function host() + { + $host=Option::where('option_name','=','host')->first(); + $hostvalue=$host->option_value; + + return $hostvalue; + } + + /** + * post username + * + * @return string + */ + public static function username() + { + $username=Option::where('option_name','=','username')->first(); + $uservalue=$username->option_value; + + return $uservalue; + } + + /** + * post passowrd + * + * @return string + */ + public static function password() + { + $password=Option::where('option_name','=','password')->first(); + $passvalue=$password->option_value; + + return $passvalue; + } + + /** + * post encryption + * + * @return string + */ + public static function encryption() + { + $encryption=Option::where('option_name','=','encryption')->first(); + $encryptvalue=$encryption->option_value; + + return $encryptvalue; + } + +} diff --git a/code/code/app/Http/Controllers/Guest/FormController.php b/code/code/app/Http/Controllers/Guest/FormController.php new file mode 100644 index 000000000..e055c20b3 --- /dev/null +++ b/code/code/app/Http/Controllers/Guest/FormController.php @@ -0,0 +1,115 @@ + + */ +class FormController extends Controller { + + public function __construct(TicketController $TicketController) { + SettingsController::smtp(); + $this->TicketController = $TicketController; + } + + + /** + * This Function to get the form for the ticket + * @param type Form_name $name + * @param type Form_details $details + * @param type Help_topic $topics + * @return type Response + */ + public function getForm() { + if(Config::get('database.install') == '%0%') + { + return Redirect::route('license'); + } + if(System::first()->status == 1) + { + return view('themes.default1.client.guest-user.form'); + } + else + { + return "hello"; + } + } + + /** + * This Function to post the form for the ticket + * @param type Form_name $name + * @param type Form_details $details + * @return type string + */ + public function postForm($data,Form_name $name, Form_details $details) { + $field = $details->where('form_name_id', $data)->get(); + $var = " "; + foreach ($field as $key) { + $type = $key->type; + $label = $key->label; + $var .= "," . $type . "-" . $label; + } + return $var; + } + + /** + * Posted form + * @param type Request $request + * @param type User $user + */ + public function postedForm(User $user, ClientRequest $request, Ticket $ticket_settings, Ticket_source $ticket_source) { + $name = $request->input('Name'); + $phone = $request->input('Phone'); + $email = $request->input('Email'); + $subject = $request->input('Subject'); + $details = $request->input('Details'); + + $System = System::where('id','=',1)->first(); + $departments = Department::where('id','=',$System->department)->first(); + $department = $departments->id; + + $status = $ticket_settings->first()->status; + $helptopic = $ticket_settings->first()->help_topic; + $sla = $ticket_settings->first()->sla; + $priority = $ticket_settings->first()->priority; + $source = $ticket_source->where('name','=','web')->first(); + + $collaborator = null; + + if($this->TicketController->create_user($email, $name, $subject, $details, $phone, $helptopic, $sla, $priority, $source, $collaborator, $department)) + { + return Redirect::route('guest.getform')->with('success','Ticket Created Successfully'); + } + } + +} \ No newline at end of file diff --git a/code/app/Http/Controllers/Guest/GuestController.php b/code/code/app/Http/Controllers/Guest/GuestController.php similarity index 57% rename from code/app/Http/Controllers/Guest/GuestController.php rename to code/code/app/Http/Controllers/Guest/GuestController.php index 2b4c921b1..28a837083 100644 --- a/code/app/Http/Controllers/Guest/GuestController.php +++ b/code/code/app/Http/Controllers/Guest/GuestController.php @@ -8,6 +8,8 @@ use App\Http\Requests\TicketRequest; use App\Model\Manage\Help_topic; use App\Model\Ticket\Tickets; use App\Model\Ticket\Ticket_Thread; +use App\Model\Settings\Company; +use App\Model\Settings\System; use App\User; use Auth; use Hash; @@ -27,8 +29,8 @@ class GuestController extends Controller { * @return type void */ public function __construct() { - $this->middleware('auth'); - $this->middleware('role.user'); + // $this->middleware('auth'); + // $this->middleware('role.user'); } /** @@ -37,7 +39,7 @@ class GuestController extends Controller { */ public function getProfile() { $user = Auth::user(); - return view('themes.default1.client.guest-user.profile', compact('user')); + return view('themes.default1.user.article-list.profile', compact('user')); } /** @@ -85,9 +87,28 @@ class GuestController extends Controller { */ public function getTicket(Help_topic $topic) { $topics = $topic->get(); - return view('themes.default1.client.guest-user.form', compact('topics')); + return view('themes.default1.user.tickets.form', compact('topics')); } + + public function getForm(Help_topic $topic) { + if(\Config::get('database.install') == '%0%') + { + return Redirect::route('license'); + } + if(System::first()->status == 1) + { + $topics = $topic->get(); + return view('themes.default1.user.tickets.form', compact('topics')); + } + else + { + return \Redirect::route('home'); + } + + // $topics = $topic->get(); + // return view('themes.default1.user.tickets.form', compact('topics')); + } /** * Get my ticket * @param type Tickets $tickets @@ -95,18 +116,8 @@ class GuestController extends Controller { * @param type User $user * @return type Response */ - public function getMyticket(Tickets $tickets, Ticket_Thread $thread, User $user) { - $id = Auth::user()->id; - /* Get the user where id == $id */ - $user = $user->whereId($id)->first(); - /* Get the all tickets which belongs to the current user */ - $tickets = $tickets->where('user_id', $user->id)->get(); - //dd($tickets); - /* get the ticket's id == ticket_id of thread */ - $ticket = $tickets->where('user_id', $user->id)->first(); - /* get the thread of the selected ticket */ - $thread = $thread->where('ticket_id', $ticket->id)->first(); - return view('themes.default1.agent.ticket.ticket', compact('thread', 'tickets')); + public function getMyticket() { + return view('themes.default1.user.tickets.mytickets'); } /** @@ -125,7 +136,7 @@ class GuestController extends Controller { $thread = $thread->where('ticket_id', $tickets->id)->first(); //dd($thread); // $tickets = $tickets->whereId($id)->first(); - return view('themes.default1.agent.ticket.timeline', compact('thread', 'tickets')); + return view('themes.default1.client.guest-user.view_ticket', compact('thread', 'tickets')); } /** @@ -191,20 +202,84 @@ class GuestController extends Controller { * @param type Ticket_Thread $thread * @return type Response */ - public function PostCheckTicket(CheckTicket $request, User $user, Tickets $ticket, Ticket_Thread $thread) { - try { - $user = $user->where('email', $request->input('email'))->first(); - $tickets = $ticket->where('ticket_number', $request->input('ticket_number'))->first(); - if ($user && $tickets) { - //$user = $user->where('email',$request->input('email'))->first(); - $user_id = $user->id; - //$ticket = $ticket->where('user_id',$user_id)->first(); - //$ticket_number = $ticket->ticket_number; - $thread = $thread->where('user_id', $user_id)->first(); - return view('themes.default1.client.guest-user.checkticket', compact('user', 'tickets', 'thread')); + public function PostCheckTicket() { + + $Email = \Input::get('email'); + $Ticket_number = \Input::get('ticket_number'); + + $ticket = Tickets::where('ticket_number', '=', $Ticket_number)->first(); + if($ticket == null) { + return \Redirect::route('form')->with('fails', 'There is no such Ticket Number'); + } else { + $userId = $ticket->user_id; + $user = User::where('id', '=', $userId)->first(); + + if($user->role == 'user') { + $username = $user->user_name; + } else { + $username = $user->first_name." ".$user->last_name; + } + + if($user->email != $Email) { + return \Redirect::route('form')->with('fails', "Email didn't match with Ticket Number"); + } else { + $code = $ticket->id; + $code = \Crypt::encrypt($code); + + $company = $this->company(); + + \Mail::send('emails.check_ticket', + array('link'=>\URL::route('check_ticket',$code),'user'=>$username, 'from'=>$company), + function($message) use($user, $username, $Ticket_number) { + $message->to($user->email, $username)->subject('Ticket link Request ['.$Ticket_number.']'); + } + ); + return Redirect::route('account-forgot-password') + ->with('success','We have sent you a new password by Email'); + } } - } catch (Exception $e) { - return redirect('checkticket')->with('fails', 'Enter valid Inputs'); - } + } + // public function PostCheckTicket() { + // try { + // $Email = \Input::get('email'); + // $Ticket_number = \Input::get('ticket_number'); + + // $user = User::where('email', $Email)->first(); + // $tickets = Tickets::where('ticket_number', $Ticket_number)->first(); + // if ($user && $tickets) { + // //$user = $user->where('email',$request->input('email'))->first(); + // $user_id = $user->id; + // //$ticket = $ticket->where('user_id',$user_id)->first(); + // //$ticket_number = $ticket->ticket_number; + // $thread = Ticket_Thread::where('user_id', $user_id)->first(); + // return view('themes.default1.user.tickets.checkticket')->with('Ticket_number'); + // // return redirect('abcdefgh/'.$Ticket_number); + // } + // } catch (Exception $e) { + // return redirect('checkticket')->with('fails', 'Enter valid Inputs'); + // } + // } + + public function get_ticket_email($id) { + $id1 = \Crypt::decrypt($id); + return view('themes.default1.user.tickets.ckeckticket',compact('id')); } + + public function getTicketStat(Tickets $ticket) { + + return view('themes.default1.user.tickets.ckeckticket', compact('ticket')); + } + + + public function company() + { + $company = Company::Where('id','=','1')->first(); + if($company->company_name == null){ + $company = "Support Center"; + }else{ + $company = $company->company_name; + } + return $company; + } + } diff --git a/code/app/Http/Controllers/Guest/OuthouseController.php b/code/code/app/Http/Controllers/Guest/WelcomepageController.php similarity index 59% rename from code/app/Http/Controllers/Guest/OuthouseController.php rename to code/code/app/Http/Controllers/Guest/WelcomepageController.php index 155cff8f1..c595e8fd4 100644 --- a/code/app/Http/Controllers/Guest/OuthouseController.php +++ b/code/code/app/Http/Controllers/Guest/WelcomepageController.php @@ -1,7 +1,10 @@ */ -class OuthouseController extends Controller { +class WelcomepageController extends Controller { /** * Display a listing of the resource. @@ -18,6 +21,11 @@ class OuthouseController extends Controller { * @return Response */ public function get(System $note) { + + if(Config::get('database.install')=='%0%') + { + return Redirect::route('licence'); + } $notes = $note->get(); foreach ($notes as $note) { $content = $note->content; @@ -25,4 +33,12 @@ class OuthouseController extends Controller { return view('themes.default1.client.guest-user.guest', compact('heading', 'content')); } + public function index() { + + if(Config::get('database.install')=='%0%') + { + return Redirect::route('licence'); + } + return view('themes.default1.client.guest-user.index'); + } } diff --git a/code/app/Http/Controllers/HomeController.php b/code/code/app/Http/Controllers/HomeController.php similarity index 100% rename from code/app/Http/Controllers/HomeController.php rename to code/code/app/Http/Controllers/HomeController.php diff --git a/code/code/app/Http/Controllers/Installer/InstallController.php b/code/code/app/Http/Controllers/Installer/InstallController.php new file mode 100644 index 000000000..ad2bc7fcf --- /dev/null +++ b/code/code/app/Http/Controllers/Installer/InstallController.php @@ -0,0 +1,402 @@ + + * + */ +class InstallController extends Controller { + + /** + * Get Licence (step 1) + * + * validating licence agreement + */ + public function licence() { + if (Session::get('step5') == 'step5') { + return Redirect::route('account'); + } + + if (Config::get('database.install') == '%0%') { + return view('themes/default1/installer/view1'); + } else { + // return 1; + return redirect('/auth/login'); + } + } + + /** + * Post Licencecheck + * + * Validating licence agreement + */ + public function licencecheck() { + $accept = (Input::has('accept1')) ? true : false; + if ($accept == 'accept') { + Session::put('step1', 'step1'); + return Redirect::route('prerequisites'); + } else { + return Redirect::route('licence')->with('fails', 'Failed! first accept the licence agreeement'); + } + // return 1; + } + + /** + * Get prerequisites (step 2) + * + * Checking the extensions enabled required for installing the faveo + * without which the project cannot be executed properly + * + */ + public function prerequisites() { + if (Session::get('step5') == 'step5') { + return Redirect::route('account'); + } + if (Config::get('database.install') == '%0%') { + if (Session::get('step1') == 'step1') { + return View::make('themes/default1/installer/view2'); + } else { + return Redirect::route('licence'); + } + } else { + return redirect('/auth/login'); + } + } + + /** + * Post Prerequisitescheck + * + * checking prerequisites + */ + public function prerequisitescheck() { + Session::put('step2', 'step2'); + return Redirect::route('localization'); + } + + /** + * Get Localization (step 3) + * + * Requesting user recomended settings for installation + */ + public function localization() { + if (Session::get('step5') == 'step5') { + return Redirect::route('account'); + } + if (Config::get('database.install') == '%0%') { + if (Session::get('step2') == 'step2') { + return View::make('themes/default1/installer/view3'); + } else { + return Redirect::route('prerequisites'); + } + } else { + return redirect('/auth/login'); + } + } + + /** + * Post localizationcheck + * + * checking prerequisites + */ + public function localizationcheck() { + + Session::put('step3', 'step3'); + + Session::put('language', Input::get('language')); + Session::put('timezone', Input::get('timezone')); + Session::put('date', Input::get('date')); + Session::put('datetime', Input::get('datetime')); + + return Redirect::route('configuration'); + } + + /** + * Get Configuration (step 4) + * + * checking prerequisites + */ + public function configuration() { + if (Session::get('step5') == 'step5') { + return Redirect::route('account'); + } + if (Config::get('database.install') == '%0%') { + if (Session::get('step3') == 'step3') { + return View::make('themes/default1/installer/view4'); + } else { + return Redirect::route('localization'); + } + } else { + return redirect('/auth/login'); + } + } + + /** + * Post configurationcheck + * + * checking prerequisites + */ + public function configurationcheck() { + + Session::put('step4', 'step4'); + + Session::put('default', Input::get('default')); + Session::put('host', Input::get('host')); + Session::put('databasename', Input::get('databasename')); + Session::put('username', Input::get('username')); + Session::put('password', Input::get('password')); + + return Redirect::route('database'); + } + + public function postconnection() { + + $default = Input::get('default'); + $host = Input::get('host'); + $database = Input::get('databasename'); + $dbusername = Input::get('username'); + $dbpassword = Input::get('password'); + + // set default value + $path0 = app_path('../config/database.php'); + $content0 = File::get($path0); + $content0 = str_replace('%default%', $default, $content0); + File::put($path0, $content0); + + // set host,databasename,username,password + if ($default == 'mysql') { + $path = app_path('../config/database.php'); + $content = File::get($path); + $content = str_replace('%host%', $host, $content); + File::put($path, $content); + + $path1 = app_path('../config/database.php'); + $content1 = File::get($path1); + $content1 = str_replace('%database%', $database, $content1); + File::put($path1, $content1); + + $path2 = app_path('../config/database.php'); + $content2 = File::get($path2); + $content2 = str_replace('%username%', $dbusername, $content2); + File::put($path2, $content2); + + $path3 = app_path('../config/database.php'); + $content3 = File::get($path3); + $content3 = str_replace('%password%', $dbpassword, $content3); + File::put($path3, $content3); + } elseif ($default == 'pgsql') { + $path = app_path('../config/database.php'); + $content = File::get($path); + $content = str_replace('%host1%', $host, $content); + File::put($path, $content); + + $path1 = app_path('../config/database.php'); + $content1 = File::get($path1); + $content1 = str_replace('%database1%', $database, $content1); + File::put($path1, $content1); + + $path2 = app_path('../config/database.php'); + $content2 = File::get($path2); + $content2 = str_replace('%username1%', $username, $content2); + File::put($path2, $content2); + + $path3 = app_path('../config/database.php'); + $content3 = File::get($path3); + $content3 = str_replace('%password1%', $password, $content3); + File::put($path3, $content3); + } elseif ($default == 'sqlsrv') { + $path = app_path('../config/database.php'); + $content = File::get($path); + $content = str_replace('%host2%', $host, $content); + File::put($path, $content); + + $path1 = app_path('../config/database.php'); + $content1 = File::get($path1); + $content1 = str_replace('%database2%', $database, $content1); + File::put($path1, $content1); + + $path2 = app_path('../config/database.php'); + $content2 = File::get($path2); + $content2 = str_replace('%username2%', $username, $content2); + File::put($path2, $content2); + + $path3 = app_path('../config/database.php'); + $content3 = File::get($path3); + $content3 = str_replace('%password2%', $password, $content3); + File::put($path3, $content3); + } + + return 1; + } + + /** + * Get database + * + * checking prerequisites + */ + public function database() { + if (Config::get('database.install') == '%0%') { + if (Session::get('step4') == 'step4') { + return View::make('themes/default1/installer/view5'); + } else { + return Redirect::route('configuration'); + } + } else { + return redirect('/auth/login'); + } + } + + /** + * Get account + * + * checking prerequisites + */ + public function account() { + if (Config::get('database.install') == '%0%') { + if (Session::get('step4') == 'step4') { + Session::put('step5', 'step5'); + Session::forget('step1'); + Session::forget('step2'); + Session::forget('step3'); + + return View::make('themes/default1/installer/view6'); + } else { + return Redirect::route('configuration'); + } + } else { + return redirect('/auth/login'); + } + } + + /** + * Post accountcheck + * + * checking prerequisites + */ + public function accountcheck(InstallerRequest $request) { + + // config/database.php management + $default = $request->input('default'); + $host = $request->input('host'); + $database = $request->input('databasename'); + $dbusername = $request->input('dbusername'); + $dbpassword = $request->input('dbpassword'); + + // migrate database + Artisan::call('migrate', array('--force' => true)); + Artisan::call('db:seed', array('--force' => true)); + + // create user + $firstname = $request->input('firstname'); + $lastname = $request->input('Lastname'); + $email = $request->input('email'); + $username = $request->input('username'); + $password = $request->input('password'); + + $language = $request->input('language'); + $timezone = $request->input('timezone'); + $date = $request->input('date'); + $datetime = $request->input('datetime'); + + $user = User::create(array( + 'first_name' => $firstname, + 'last_name' => $lastname, + 'email' => $email, + 'user_name' => $username, + 'password' => Hash::make($password), + 'active' => 1, + 'role' => 'admin', + 'assign_group' => 'group A', + 'primary_dpt' => 'support', + )); + + // set option values + // $dateformat = Option::where('option_name', '=', 'date_format')->first(); + // $dateformat->option_value = $date; + // $dateformat->save(); + + // $datetimeformat = Option::where('option_name', '=', 'date_time_format')->first(); + // $datetimeformat->option_value = $datetime; + // $datetimeformat->save(); + + // $timezonestring = Option::where('option_name', '=', 'timezone_string')->first(); + // $timezonestring->option_value = $timezone; + // $timezonestring->save(); + + // $language1 = Option::where('option_name', '=', 'language')->first(); + // $language1->option_value = $language; + // $language1->save(); + + if ($user) { + + Session::put('step6', 'step6'); + + return Redirect::route('final'); + } + } + + /** + * Get finalize + * + * checking prerequisites + */ + public function finalize() { + if (Session::get('step6') == 'step6') { + + // $var = "http://" . $_SERVER['HTTP_HOST'] . "/epeper-pdf"; + + // $siteurl = Option::where('option_name', '=', 'siteurl')->first(); + // $siteurl->option_value = $var; + // $siteurl->save(); + + $value = '1'; + + $install = app_path('../config/database.php'); + $datacontent = File::get($install); + $datacontent = str_replace('%0%', $value, $datacontent); + File::put($install, $datacontent); + try { + return View::make('themes/default1/installer/view7'); + } catch (Exception $e) { + return Redirect::route('npl'); + } + } else { + return redirect('/auth/login'); + } + } + + /** + * Post finalcheck + * + * checking prerequisites + */ + public function finalcheck() { + try + { + return redirect('/auth/login'); + } catch (Exception $e) { + return redirect('/auth/login'); + } + } + +} diff --git a/code/code/app/Http/Controllers/MessageController.php b/code/code/app/Http/Controllers/MessageController.php new file mode 100644 index 000000000..0bae17e47 --- /dev/null +++ b/code/code/app/Http/Controllers/MessageController.php @@ -0,0 +1,60 @@ + 'Unauthorized attempt to create setting' + ) ); + } + + $message->message_title = Input::get( 'setting_name' ); + $message->message = Input::get( 'setting_value' ); + $message->save(); + //..... + //validate data + //and then store it in DB + //..... + + $response = array( + 'status' => 'success', + 'msg' => 'Setting created successfully', + ); + + return Response::json( $response ); + } + public function show($id){ +// echo $response; +// $id = json_decode($response); + $message = Message::whereId($id)->first(); + $msg = $message->message; + + return Response::json( $msg ); + //return \Redirect::back()->with('msg' , $msg); + } + + //end of class + + } \ No newline at end of file diff --git a/code/code/app/Http/Controllers/SettingsController.php b/code/code/app/Http/Controllers/SettingsController.php new file mode 100644 index 000000000..c200a7388 --- /dev/null +++ b/code/code/app/Http/Controllers/SettingsController.php @@ -0,0 +1,241 @@ +smtp(); + $this->middleware('auth'); + $this->middleware('roles'); + SettingsController::host(); + SettingsController::port(); + SettingsController::from(); + SettingsController::encryption(); + SettingsController::username(); + SettingsController::password(); + } + + /** + * get the page to create the footer + * @return response + */ + public function CreateFooter(Footer $footer) { + $footer = $footer->whereId('1')->first(); + return view('themes.default1.admin.theme.footer', compact('footer')); + } + + /** + * + * @param type Footer $footer + * @param type Request $request + * @return type response + */ + public function PostFooter(Footer $footer, Request $request) { + $footer = $footer->whereId('1')->first(); + if ($footer->fill($request->input())->save()) { + return redirect('create-footer')->with('success', 'Footer Created Successfully'); + } else { + return redirect('create-footer')->with('fails', 'Footer was not createds'); + } + + } +/** + * get the page to create the footer + * @return response + */ + public function CreateFooter2(Footer2 $footer2) { + $footer2 = $footer2->whereId('1')->first(); + return view('themes.default1.admin.theme.footer2', compact('footer2')); + } + + /** + * + * @param type Footer $footer + * @param type Request $request + * @return type response + */ + public function PostFooter2(Footer2 $footer2, Request $request) { + $footer2 = $footer2->whereId('1')->first(); + if ($footer2->fill($request->input())->save()) { + return redirect('create-footer2')->with('success', 'Footer Created Successfully'); + } else { + return redirect('create-footer2')->with('fails', 'Footer was not createds'); + } + + } +/** + * get the page to create the footer + * @return response + */ + public function CreateFooter3(Footer3 $footer3) { + $footer3 = $footer3->whereId('1')->first(); + return view('themes.default1.admin.theme.footer3', compact('footer3')); + } + + /** + * + * @param type Footer $footer + * @param type Request $request + * @return type response + */ + public function PostFooter3(Footer3 $footer3, Request $request) { + $footer3 = $footer3->whereId('1')->first(); + if ($footer3->fill($request->input())->save()) { + return redirect('create-footer3')->with('success', 'Footer Created Successfully'); + } else { + return redirect('create-footer3')->with('fails', 'Footer was not createds'); + } + + } +/** + * get the page to create the footer + * @return response + */ + public function CreateFooter4(Footer4 $footer4) { + $footer4 = $footer4->whereId('1')->first(); + return view('themes.default1.admin.theme.footer4', compact('footer4')); + } + + /** + * + * @param type Footer $footer + * @param type Request $request + * @return type response + */ + public function PostFooter4(Footer4 $footer4, Request $request) { + $footer4 = $footer4->whereId('1')->first(); + if ($footer4->fill($request->input())->save()) { + return redirect('create-footer4')->with('success', 'Footer Created Successfully'); + } else { + return redirect('create-footer4')->with('fails', 'Footer was not createds'); + } + } + + static function host() + { + $set = new Smtp; + $settings = Smtp::where('id','=','1')->first(); + Config::set('mail.host', $settings->host); + } + + static function port() + { + $set = new Smtp; + $settings = Smtp::where('id','=','1')->first(); + Config::set('mail.port', intval($settings->port)); + } + + static function from() + { + $set = new Smtp; + $settings = Smtp::where('id','=','1')->first(); + Config::set('mail.from', ['address'=>$settings->email,'name'=>$settings->company_name]); + } + static function encryption() + { + $set = new Smtp; + $settings = Smtp::where('id','=','1')->first(); + Config::set('mail.encryption', $settings->encryption); + } + + static function username() + { + $set = new Smtp; + $settings = Smtp::where('id','=','1')->first(); + Config::set('mail.username', $settings->email); + } + + static function password() + { + $settings = Smtp::first(); + if($settings->password) { + $pass = $settings->password; + $password = Crypt::decrypt($pass); + Config::set('mail.password', $password); + } + } + + public function getsmtp(){ + $settings = Smtp::where('id','=','1')->first(); + return view('themes.default1.admin.emails.smtp'); + } + + public function postsmtp(SmtpRequest $request){ + $data = Smtp::where('id','=',1)->first(); + $data->host = $request->input('host'); + $data->port = $request->input('port'); + $data->encryption = $request->input('encryption'); + $data->name = $request->input('name'); + $data->email = $request->input('email'); + $data->password = Crypt::encrypt($request->input('password')); + if($data->save()) { + return \Redirect::route('getsmtp')->with('success','success'); + } else { + return \Redirect::route('getsmtp')->with('fails','fails'); + } + + } + + static function smtp() + { + $settings = Smtp::where('id','=','1')->first(); + if($settings->password) { + $password = Crypt::decrypt($settings->password); + Config::set('mail.password', $password); + Config::set('mail.username', $settings->email); + Config::set('mail.encryption', $settings->encryption); + Config::set('mail.from', ['address'=>$settings->email,'name'=>$settings->name]); + Config::set('mail.port', intval($settings->port)); + Config::set('mail.host', $settings->host); + // dd(Config::get('mail')); + } + } + + public function settings(Smtp $set) + { + $settings = $set->where('id','1')->first(); + return view('themes.default1.admin.settings',compact('settings')); + } + + public function PostSettings(Settings $set, Request $request) + { + $settings = $set->where('id','1')->first(); + $pass = $request->input('password'); + $password = Crypt::encrypt($pass); + $settings->password = $password; + $settings->save(); + if (Input::file('logo')) { + $name = Input::file('logo')->getClientOriginalName(); + $destinationPath = 'dist/logo'; + $fileName = rand(0000, 9999) . '.' . $name; + Input::file('logo')->move($destinationPath, $fileName); + $settings->logo = $fileName; + $settings->save(); + } + $settings->fill($request->except('logo','password'))->save(); + return redirect()->back()->with('success','Settings updated Successfully'); + } + + +} + + + + diff --git a/code/code/app/Http/Controllers/UserController.php b/code/code/app/Http/Controllers/UserController.php new file mode 100644 index 000000000..1aa4985d7 --- /dev/null +++ b/code/code/app/Http/Controllers/UserController.php @@ -0,0 +1,162 @@ +where('status', '1'); + $article = $article->where('type', '1'); + $article = $article->paginate(5); + $article->setPath('article-list'); + $categorys = $category->get(); + + return view('themes.default1.user.article-list.articles', compact('categorys', 'article')); + } + +/** + * Get excerpt from string + * + * @param String $str String to get an excerpt from + * @param Integer $startPos Position int string to start excerpt from + * @param Integer $maxLength Maximum length the excerpt may be + * @return String excerpt + */ + static function getExcerpt($str, $startPos = 0, $maxLength = 10) { + if (strlen($str) > $maxLength) { + $excerpt = substr($str, $startPos, $maxLength - 3); + $lastSpace = strrpos($excerpt, ' '); + $excerpt = substr($excerpt, 0, $lastSpace); + $excerpt .= '...'; + } else { + $excerpt = $str; + } + + return $excerpt; + } + + public function search(Request $request, Category $category, Article $article) { + $search = $request->input('s'); + $result = $article->search($search)->paginate(5); + $result->setPath('search'); + //dd($result); + $categorys = $category->get(); + return view('themes.default1.user.article-list.search', compact('categorys', 'result')); + } + +/** + * to show the seleted article + * @return response + */ + public function show($id, Article $article, Category $category) { + + $arti = $article->whereId($id)->first(); + $categorys = $category->get(); + return view('themes.default1.user.article-list.show', compact('arti', 'categorys')); + + } + public function getCategory($id, Category $category, Relationship $relation) { + /* get the article_id where category_id == current category */ + $all = $relation->where('category_id', $id)->paginate(4); + $all->setPath(''); + /* from whole attribute pick the article_id */ + $article_id = $all->lists('article_id'); + + $categorys = $category->where('id', $id)->get(); + + /* direct to view with $article_id */ + return view('themes.default1.user.article-list.category', compact('all','categorys', 'article_id')); + } + + public function home(Category $category) { + + $categorys = $category->get(); + + /* direct to view with $article_id */ + return view('themes.default1.user.article-list.home', compact('categorys', 'article_id')); + + } + + public function Faq(Faq $faq, Category $category) { + $faq = $faq->where('id', '1')->first(); + $categorys = $category->get(); + return view('themes.default1.user.article-list.faq', compact('categorys', 'faq')); + } + + /** + * get the contact page for user + * @return response + */ + public function contact(Category $category, Settings $settings) { + $settings = $settings->whereId('1')->first(); + $categorys = $category->get(); + return view('themes.default1.user.article-list.contact', compact('settings', 'categorys')); + } + + /** + * send message to the mail adderess that define in the system + * @return response + */ + public function postContact(ContactRequest $request, Contact $contact) { + + $contact->fill($request->input())->save(); + + $name = $request->input('name'); + //echo $name; + $email = $request->input('email'); + //echo $email; + $subject = $request->input('subject'); + //echo $subject; + $details = $request->input('message'); + //echo $message; + //echo $contact->email; + + $mail = Mail::send('themes.default1.user.article-list.contact-details', array('name' => $name, 'email' => $email, 'subject' => $subject, 'details' => $details), function ($message) use ($contact) { + $message->to($contact->email, $contact->name)->subject('Contact'); + }); + if ($mail) { + return redirect('contact')->with('success', 'Your details send to System'); + } else { + return redirect('contact')->with('fails', 'Your details can not send to System'); + } + } + public function contactDetails() { + return view('themes.default1.user.article-list.contact-details'); + } + public function postComment($id, CommentRequest $request, Comment $comment) { + + $comment->article_id = $id; + if ($comment->fill($request->input())->save()) { + return \Redirect::back()->with('success', 'Your comment has been posted'); + } else { + return \Redirect::back()->with('fails', 'Sorry Error processing your comment'); + } + } + +} diff --git a/code/app/Http/Kernel.php b/code/code/app/Http/Kernel.php similarity index 95% rename from code/app/Http/Kernel.php rename to code/code/app/Http/Kernel.php index 6c05d3dda..e1a4b59a0 100644 --- a/code/app/Http/Kernel.php +++ b/code/code/app/Http/Kernel.php @@ -22,7 +22,7 @@ class Kernel extends HttpKernel { 'Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse', 'Illuminate\Session\Middleware\StartSession', 'Illuminate\View\Middleware\ShareErrorsFromSession', - 'App\Http\Middleware\VerifyCsrfToken', + //'App\Http\Middleware\VerifyCsrfToken', ]; /** diff --git a/code/app/Http/Middleware/Authenticate.php b/code/code/app/Http/Middleware/Authenticate.php similarity index 100% rename from code/app/Http/Middleware/Authenticate.php rename to code/code/app/Http/Middleware/Authenticate.php diff --git a/code/app/Http/Middleware/CheckRole.php b/code/code/app/Http/Middleware/CheckRole.php similarity index 100% rename from code/app/Http/Middleware/CheckRole.php rename to code/code/app/Http/Middleware/CheckRole.php diff --git a/code/app/Http/Middleware/CheckRoleAgent.php b/code/code/app/Http/Middleware/CheckRoleAgent.php similarity index 86% rename from code/app/Http/Middleware/CheckRoleAgent.php rename to code/code/app/Http/Middleware/CheckRoleAgent.php index 6a8c13848..db58b46f5 100644 --- a/code/app/Http/Middleware/CheckRoleAgent.php +++ b/code/code/app/Http/Middleware/CheckRoleAgent.php @@ -21,7 +21,7 @@ class CheckRoleAgent { if ($request->user()->role == 'agent' || $request->user()->role == 'admin') { return $next($request); } - return redirect('guest')->with('fails', 'You are not Autherised'); + return redirect('dashboard')->with('fails', 'You are not Autherised'); } } diff --git a/code/app/Http/Middleware/CheckRoleUser.php b/code/code/app/Http/Middleware/CheckRoleUser.php similarity index 100% rename from code/app/Http/Middleware/CheckRoleUser.php rename to code/code/app/Http/Middleware/CheckRoleUser.php diff --git a/code/app/Http/Middleware/RedirectIfAuthenticated.php b/code/code/app/Http/Middleware/RedirectIfAuthenticated.php similarity index 100% rename from code/app/Http/Middleware/RedirectIfAuthenticated.php rename to code/code/app/Http/Middleware/RedirectIfAuthenticated.php diff --git a/code/app/Http/Middleware/VerifyCsrfToken.php b/code/code/app/Http/Middleware/VerifyCsrfToken.php similarity index 100% rename from code/app/Http/Middleware/VerifyCsrfToken.php rename to code/code/app/Http/Middleware/VerifyCsrfToken.php diff --git a/code/app/Http/Requests/AgentRequest.php b/code/code/app/Http/Requests/AgentRequest.php similarity index 94% rename from code/app/Http/Requests/AgentRequest.php rename to code/code/app/Http/Requests/AgentRequest.php index 2b808b441..666369894 100644 --- a/code/app/Http/Requests/AgentRequest.php +++ b/code/code/app/Http/Requests/AgentRequest.php @@ -26,7 +26,7 @@ class AgentRequest extends Request { */ public function rules() { return [ - 'user_name' => 'required|unique:agents', + 'user_name' => 'required|unique:users', 'first_name' => 'required', 'last_name' => 'required', 'email' => 'required', diff --git a/code/app/Http/Requests/AgentUpdate.php b/code/code/app/Http/Requests/AgentUpdate.php similarity index 100% rename from code/app/Http/Requests/AgentUpdate.php rename to code/code/app/Http/Requests/AgentUpdate.php diff --git a/code/code/app/Http/Requests/ArticleRequest.php b/code/code/app/Http/Requests/ArticleRequest.php new file mode 100644 index 000000000..a5b752332 --- /dev/null +++ b/code/code/app/Http/Requests/ArticleRequest.php @@ -0,0 +1,28 @@ + 'required', + 'description' => 'required', + ]; + } + +} diff --git a/code/app/Http/Requests/BanRequest.php b/code/code/app/Http/Requests/BanRequest.php similarity index 100% rename from code/app/Http/Requests/BanRequest.php rename to code/code/app/Http/Requests/BanRequest.php diff --git a/code/app/Http/Requests/BanlistRequest.php b/code/code/app/Http/Requests/BanlistRequest.php similarity index 100% rename from code/app/Http/Requests/BanlistRequest.php rename to code/code/app/Http/Requests/BanlistRequest.php diff --git a/code/app/Http/Requests/CheckTicket.php b/code/code/app/Http/Requests/CheckTicket.php similarity index 100% rename from code/app/Http/Requests/CheckTicket.php rename to code/code/app/Http/Requests/CheckTicket.php diff --git a/code/code/app/Http/Requests/ClientRequestForm.php b/code/code/app/Http/Requests/ClientRequestForm.php new file mode 100644 index 000000000..b3d249127 --- /dev/null +++ b/code/code/app/Http/Requests/ClientRequestForm.php @@ -0,0 +1,37 @@ + + */ +class ClientRequest 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 [ + 'Name'=>'required', + 'Phone'=>'required', + 'Email'=>'required', + 'Subject'=>'required', + 'Details'=>'required', + ]; + } + +} diff --git a/code/code/app/Http/Requests/CommentRequest.php b/code/code/app/Http/Requests/CommentRequest.php new file mode 100644 index 000000000..4639cbcdd --- /dev/null +++ b/code/code/app/Http/Requests/CommentRequest.php @@ -0,0 +1,30 @@ + 'required|max:10', + 'email' => 'required|email', + 'website' => 'url', + 'comment' => 'required|max:60', + ]; + } + +} diff --git a/code/app/Http/Requests/CompanyRequest.php b/code/code/app/Http/Requests/CompanyRequest.php similarity index 100% rename from code/app/Http/Requests/CompanyRequest.php rename to code/code/app/Http/Requests/CompanyRequest.php diff --git a/code/code/app/Http/Requests/ContactRequest.php b/code/code/app/Http/Requests/ContactRequest.php new file mode 100644 index 000000000..fbe6dce33 --- /dev/null +++ b/code/code/app/Http/Requests/ContactRequest.php @@ -0,0 +1,30 @@ + 'required', + 'email' => 'required|email', + 'subject' => 'required', + 'message' => 'required|max:50', + ]; + } + +} diff --git a/code/app/Http/Requests/CreateTicketRequest.php b/code/code/app/Http/Requests/CreateTicketRequest.php similarity index 100% rename from code/app/Http/Requests/CreateTicketRequest.php rename to code/code/app/Http/Requests/CreateTicketRequest.php diff --git a/code/app/Http/Requests/DepartmentRequest.php b/code/code/app/Http/Requests/DepartmentRequest.php similarity index 100% rename from code/app/Http/Requests/DepartmentRequest.php rename to code/code/app/Http/Requests/DepartmentRequest.php diff --git a/code/app/Http/Requests/DepartmentUpdate.php b/code/code/app/Http/Requests/DepartmentUpdate.php similarity index 100% rename from code/app/Http/Requests/DepartmentUpdate.php rename to code/code/app/Http/Requests/DepartmentUpdate.php diff --git a/code/app/Http/Requests/DiagnoRequest.php b/code/code/app/Http/Requests/DiagnoRequest.php similarity index 100% rename from code/app/Http/Requests/DiagnoRequest.php rename to code/code/app/Http/Requests/DiagnoRequest.php diff --git a/code/app/Http/Requests/EmailRequest.php b/code/code/app/Http/Requests/EmailRequest.php similarity index 100% rename from code/app/Http/Requests/EmailRequest.php rename to code/code/app/Http/Requests/EmailRequest.php diff --git a/code/app/Http/Requests/EmailsEditRequest.php b/code/code/app/Http/Requests/EmailsEditRequest.php similarity index 100% rename from code/app/Http/Requests/EmailsEditRequest.php rename to code/code/app/Http/Requests/EmailsEditRequest.php diff --git a/code/app/Http/Requests/EmailsRequest.php b/code/code/app/Http/Requests/EmailsRequest.php similarity index 100% rename from code/app/Http/Requests/EmailsRequest.php rename to code/code/app/Http/Requests/EmailsRequest.php diff --git a/code/app/Http/Requests/FormRequest.php b/code/code/app/Http/Requests/FormRequest.php similarity index 100% rename from code/app/Http/Requests/FormRequest.php rename to code/code/app/Http/Requests/FormRequest.php diff --git a/code/app/Http/Requests/GroupRequest.php b/code/code/app/Http/Requests/GroupRequest.php similarity index 100% rename from code/app/Http/Requests/GroupRequest.php rename to code/code/app/Http/Requests/GroupRequest.php diff --git a/code/app/Http/Requests/HelptopicRequest.php b/code/code/app/Http/Requests/HelptopicRequest.php similarity index 100% rename from code/app/Http/Requests/HelptopicRequest.php rename to code/code/app/Http/Requests/HelptopicRequest.php diff --git a/code/app/Http/Requests/HelptopicUpdate.php b/code/code/app/Http/Requests/HelptopicUpdate.php similarity index 100% rename from code/app/Http/Requests/HelptopicUpdate.php rename to code/code/app/Http/Requests/HelptopicUpdate.php diff --git a/code/code/app/Http/Requests/InstallerRequest.php b/code/code/app/Http/Requests/InstallerRequest.php new file mode 100644 index 000000000..81a03bed1 --- /dev/null +++ b/code/code/app/Http/Requests/InstallerRequest.php @@ -0,0 +1,38 @@ + + */ +class InstallerRequest 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 [ + 'firstname' => 'required|max:20', + 'Lastname' => 'required|max:20', + 'email' => 'required|max:50|email', + 'username' => 'required|max:50|min:3', + 'password' => 'required|min:6', + 'confirmpassword' => 'required|same:password', + ]; + } + +} diff --git a/code/app/Http/Requests/LoginRequest.php b/code/code/app/Http/Requests/LoginRequest.php similarity index 100% rename from code/app/Http/Requests/LoginRequest.php rename to code/code/app/Http/Requests/LoginRequest.php diff --git a/code/code/app/Http/Requests/MessageRequest.php b/code/code/app/Http/Requests/MessageRequest.php new file mode 100644 index 000000000..05b41cc4e --- /dev/null +++ b/code/code/app/Http/Requests/MessageRequest.php @@ -0,0 +1,33 @@ + 'required', + 'message' => 'required' + + ]; + } + +} diff --git a/code/app/Http/Requests/OrganizationRequest.php b/code/code/app/Http/Requests/OrganizationRequest.php similarity index 100% rename from code/app/Http/Requests/OrganizationRequest.php rename to code/code/app/Http/Requests/OrganizationRequest.php diff --git a/code/app/Http/Requests/OrganizationUpdate.php b/code/code/app/Http/Requests/OrganizationUpdate.php similarity index 100% rename from code/app/Http/Requests/OrganizationUpdate.php rename to code/code/app/Http/Requests/OrganizationUpdate.php diff --git a/code/app/Http/Requests/ProfilePassword.php b/code/code/app/Http/Requests/ProfilePassword.php similarity index 100% rename from code/app/Http/Requests/ProfilePassword.php rename to code/code/app/Http/Requests/ProfilePassword.php diff --git a/code/app/Http/Requests/ProfileRequest.php b/code/code/app/Http/Requests/ProfileRequest.php similarity index 100% rename from code/app/Http/Requests/ProfileRequest.php rename to code/code/app/Http/Requests/ProfileRequest.php diff --git a/code/app/Http/Requests/RegisterRequest.php b/code/code/app/Http/Requests/RegisterRequest.php similarity index 100% rename from code/app/Http/Requests/RegisterRequest.php rename to code/code/app/Http/Requests/RegisterRequest.php diff --git a/code/app/Http/Requests/Request.php b/code/code/app/Http/Requests/Request.php similarity index 100% rename from code/app/Http/Requests/Request.php rename to code/code/app/Http/Requests/Request.php diff --git a/code/app/Http/Requests/SlaRequest.php b/code/code/app/Http/Requests/SlaRequest.php similarity index 100% rename from code/app/Http/Requests/SlaRequest.php rename to code/code/app/Http/Requests/SlaRequest.php diff --git a/code/app/Http/Requests/SlaUpdate.php b/code/code/app/Http/Requests/SlaUpdate.php similarity index 100% rename from code/app/Http/Requests/SlaUpdate.php rename to code/code/app/Http/Requests/SlaUpdate.php diff --git a/code/code/app/Http/Requests/SmtpRequest.php b/code/code/app/Http/Requests/SmtpRequest.php new file mode 100644 index 000000000..4f2c4c6be --- /dev/null +++ b/code/code/app/Http/Requests/SmtpRequest.php @@ -0,0 +1,38 @@ + + */ +class SmtpRequest 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 [ + 'host' => 'required', + 'port' => 'required', + 'encryption' => 'required', + 'name' => 'required', + 'email' => 'required', + 'password' => 'required', + ]; + } + +} diff --git a/code/app/Http/Requests/Sys_userRequest.php b/code/code/app/Http/Requests/Sys_userRequest.php similarity index 100% rename from code/app/Http/Requests/Sys_userRequest.php rename to code/code/app/Http/Requests/Sys_userRequest.php diff --git a/code/app/Http/Requests/Sys_userUpdate.php b/code/code/app/Http/Requests/Sys_userUpdate.php similarity index 100% rename from code/app/Http/Requests/Sys_userUpdate.php rename to code/code/app/Http/Requests/Sys_userUpdate.php diff --git a/code/app/Http/Requests/SystemRequest.php b/code/code/app/Http/Requests/SystemRequest.php similarity index 95% rename from code/app/Http/Requests/SystemRequest.php rename to code/code/app/Http/Requests/SystemRequest.php index 268db1d72..c0bbe3487 100644 --- a/code/app/Http/Requests/SystemRequest.php +++ b/code/code/app/Http/Requests/SystemRequest.php @@ -27,7 +27,7 @@ class SystemRequest extends Request { public function rules() { return [ - 'name' => 'required', + 'name' => '', 'url' => 'url', ]; } diff --git a/code/app/Http/Requests/TeamRequest.php b/code/code/app/Http/Requests/TeamRequest.php similarity index 100% rename from code/app/Http/Requests/TeamRequest.php rename to code/code/app/Http/Requests/TeamRequest.php diff --git a/code/app/Http/Requests/TeamUpdate.php b/code/code/app/Http/Requests/TeamUpdate.php similarity index 100% rename from code/app/Http/Requests/TeamUpdate.php rename to code/code/app/Http/Requests/TeamUpdate.php diff --git a/code/app/Http/Requests/TemplateRequest.php b/code/code/app/Http/Requests/TemplateRequest.php similarity index 100% rename from code/app/Http/Requests/TemplateRequest.php rename to code/code/app/Http/Requests/TemplateRequest.php diff --git a/code/app/Http/Requests/TemplateUdate.php b/code/code/app/Http/Requests/TemplateUdate.php similarity index 100% rename from code/app/Http/Requests/TemplateUdate.php rename to code/code/app/Http/Requests/TemplateUdate.php diff --git a/code/code/app/Http/Requests/TicketEditRequest.php b/code/code/app/Http/Requests/TicketEditRequest.php new file mode 100644 index 000000000..f9dbca8d3 --- /dev/null +++ b/code/code/app/Http/Requests/TicketEditRequest.php @@ -0,0 +1,37 @@ + + */ +class TicketEditRequest 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 [ + // 'subject' => 'required', + // 'sla_paln' => 'required', + // 'help_topic' => 'required', + // 'ticket_source' => 'required', + // 'ticket_priority' => 'required', + ]; + } + +} diff --git a/code/app/Http/Requests/TicketForm.php b/code/code/app/Http/Requests/TicketForm.php similarity index 100% rename from code/app/Http/Requests/TicketForm.php rename to code/code/app/Http/Requests/TicketForm.php diff --git a/code/app/Http/Requests/TicketRequest.php b/code/code/app/Http/Requests/TicketRequest.php similarity index 100% rename from code/app/Http/Requests/TicketRequest.php rename to code/code/app/Http/Requests/TicketRequest.php diff --git a/code/app/Http/routes.php b/code/code/app/Http/routes.php similarity index 51% rename from code/app/Http/routes.php rename to code/code/app/Http/routes.php index 548760934..046054568 100644 --- a/code/app/Http/routes.php +++ b/code/code/app/Http/routes.php @@ -18,6 +18,7 @@ Route::controllers([ 'auth' => 'Auth\AuthController', 'password' => 'Auth\PasswordController', ]); +// Route::get('login','Auth\AuthController@getLogin'); $router->get('getmail/{token}', 'Auth\AuthController@getMail'); @@ -88,14 +89,48 @@ Route::group(['middleware' => 'roles', 'middleware' => 'auth'], function () { Route::patch('postalert/{id}', 'Admin\SettingsController@postalert'); // Updating the Alert table with requests - /* Admin profile get */ + /* User profile edit get */ Route::get('admin-profile', 'Admin\ProfileController@getProfile'); + /* Admin profile get */ + Route::get('admin-profile-edit', 'Admin\ProfileController@getProfileedit'); + /* Admin Profile Post */ - Route::patch('admin-profile', 'Admin\ProfileController@postProfile'); + Route::patch('admin-profile', 'Admin\ProfileController@postProfileedit'); /* Admin Profile Password Post */ Route::patch('admin-profile-password', 'Admin\ProfileController@postProfilePassword'); + + /* get the create footer page for admin */ + Route::get('create-footer', 'SettingsController@CreateFooter'); + + /* post footer to insert to database */ + Route::patch('post-create-footer/{id}', 'SettingsController@PostFooter'); + + /* get the create footer page for admin */ + Route::get('create-footer2', 'SettingsController@CreateFooter2'); + + /* post footer to insert to database */ + Route::patch('post-create-footer2/{id}', 'SettingsController@PostFooter2'); + + /* get the create footer page for admin */ + Route::get('create-footer3', 'SettingsController@CreateFooter3'); + + /* post footer to insert to database */ + Route::patch('post-create-footer3/{id}', 'SettingsController@PostFooter3'); + + /* get the create footer page for admin */ + Route::get('create-footer4', 'SettingsController@CreateFooter4'); + + /* post footer to insert to database */ + Route::patch('post-create-footer4/{id}', 'SettingsController@PostFooter4'); + + /* get the create footer page for admin */ + Route::get('getsmtp',['as'=>'getsmtp','uses'=>'SettingsController@getsmtp']); + + /* post footer to insert to database */ + Route::post('post-smtp',['as'=>'post_smtp','uses'=>'SettingsController@postsmtp']); + }); /* calling ticket.blade.php file */ @@ -123,13 +158,16 @@ Route::group(['middleware' => 'role.agent', 'middleware' => 'auth'], function () Route::resource('organizations', 'Agent\OrganizationController'); /* User profile get */ - Route::get('agent-profile', 'Agent\UserController@getProfile'); + Route::get('profile',['as'=>'profile' , 'uses'=> 'Agent\UserController@getProfile']); + + /* User profile edit get */ + Route::get('profile-edit', ['as'=>'agent-profile-edit','uses'=>'Agent\UserController@getProfileedit']); /* User Profile Post */ - Route::patch('agent-profile', 'Agent\UserController@postProfile'); + Route::patch('agent-profile',['as'=>'agent-profile','uses'=> 'Agent\UserController@postProfileedit']); /* Profile Password Post */ - Route::patch('agent-profile-password', 'Agent\UserController@postProfilePassword'); + Route::patch('agent-profile-password/{id}', 'Agent\UserController@postProfilePassword'); // Route::get('/abcd', 'GuestController@getList'); // Route::get('/qwer', ['as' => 'thread', 'uses' => 'GuestController@getThread']); @@ -204,6 +242,32 @@ Route::group(['middleware' => 'role.agent', 'middleware' => 'auth'], function () /* To show Unassigned Tickets */ Route::get('unassigned', 'Agent\TicketController@unassigned'); + + /* To show dashboard pages */ + Route::get('dashboard', 'Agent\DashboardController@index'); + + Route::get('agen', 'Agent\DashboardController@ChartData'); + + /* get image */ + Route::get('image/{id}', ['as'=>'image', 'uses'=>'Agent\MailController@get_data']); + + Route::get('thread/auto/{id}', 'Agent\TicketController@autosearch'); + + Route::get('auto', 'Agent\TicketController@autosearch2'); + + Route::patch('search-user', 'Agent\TicketController@usersearch'); + + Route::patch('add-user', 'Agent\TicketController@useradd'); + + Route::post('remove-user', 'Agent\TicketController@userremove'); + + Route::post('select_all', ['as'=>'select_all' ,'uses'=>'Agent\TicketController@select_all']); + + Route::post('canned/{id}', 'MessageController@show'); + + Route::get('message' , 'MessageController@show'); + + Route::post('lock',['as'=>'lock' , 'uses'=>'Agent\TicketController@lock']); }); /* @@ -213,54 +277,170 @@ Route::group(['middleware' => 'role.agent', 'middleware' => 'auth'], function () | Here defining Guest User's routes | | - */ +*/ +// seasrch +Route::POST('tickets/search/', function() { + $keyword = Illuminate\Support\Str::lower(Input::get('auto')); + $models = App\Model\Ticket\Tickets::where('ticket_number', '=',$keyword)->orderby('ticket_number')->take(10)->skip(0)->get(); + $count = count($models); + return Illuminate\Support\Facades\Redirect::back()->with("contents", $models)->with("counts", $count); + +}); +Route::any('getdata', function() { -/* get the form for create a ticket by guest user */ -$router->get('getform', 'Guest\FormController@getForm'); + $term = Illuminate\Support\Str::lower(Input::get('term')); + $data = Illuminate\Support\Facades\DB::table("tickets")->distinct()->select('ticket_number')->where('ticket_number','LIKE',$term.'%')->groupBy('ticket_number')->take(10)->get(); + foreach($data as $v) { + return [ + 'value' => $v->ticket_number + ]; + } +}); -/* post the AJAX form for create a ticket by guest user */ -$router->post('postform', 'Guest\FormController@postForm'); + /* get the form for create a ticket by guest user */ + Route::get('getform', ['as'=>'guest.getform' ,'uses'=> 'Guest\FormController@getForm']); + /* post the AJAX form for create a ticket by guest user */ + Route::post('postform/{id}', 'Guest\FormController@postForm'); + /* post the form to store the value */ + Route::post('postedform', 'Guest\FormController@postedForm'); + //testing checkbox auto-populate + Route::get('check', 'CheckController@getcheck'); + Route::post('postcheck/{id}', 'CheckController@postcheck'); + //guest layout + Route::get('home', ['as'=>'home', 'uses'=>'Guest\WelcomepageController@index']); + Route::get('/', ['as'=>'/', 'uses'=>'Guest\WelcomepageController@index']); -/* post the form to store the value */ -$router->post('postedform', 'Guest\FormController@postedForm'); - -//testing checkbox auto-populate -$router->get('check', 'CheckController@getcheck'); - -$router->post('postcheck/{id}', 'CheckController@postcheck'); - -//guest layout -$router->get('/', 'Guest\OuthouseController@get'); + //getform + Route::get('form',['as'=>'form','uses'=>'Guest\GuestController@getForm']); + //detail ticket information + Route::get('mytickets/{id}', ['as' => 'ticketinfo', 'uses' => 'Guest\GuestController@singleThread']); + //ticket ckeck + Route::post('checkmyticket', 'Guest\GuestController@PostCheckTicket'); + //detail ticket information + Route::get('check_ticket/{id}', ['as' => 'check_ticket', 'uses' => 'Guest\GuestController@get_ticket_email']); //testing ckeditor -//$router->get('ck','Admin\SettingsController@getck'); //=================================================================================== - Route::group(['middleware' => 'role.user', 'middleware' => 'auth'], function () { /* User profile get */ - Route::get('user-profile', 'Guest\GuestController@getProfile'); - + Route::get('client-profile', 'Guest\GuestController@getProfile'); + Route::get('mytickets', ['as' => 'ticket2', 'uses' => 'Guest\GuestController@getMyticket']); + /* Get my tickets */ + Route::get('myticket/{id}', ['as' => 'ticket', 'uses' => 'Guest\GuestController@thread']); /* User Profile Post */ - Route::patch('profile', 'Guest\GuestController@postProfile'); - + Route::patch('client-profile-edit', 'Guest\GuestController@postProfile'); /* Profile Password Post */ - Route::patch('profile-password', 'Guest\GuestController@postProfilePassword'); + Route::patch('client-profile-password', 'Guest\GuestController@postProfilePassword'); }); + //==================================================================================== -/* Get my tickets */ -$router->get('myticket', ['as' => 'ticket', 'uses' => 'Guest\GuestController@getMyticket']); - -/* Get my ticket thread */ -//$router->get('thread/{id}',['as'=>'ticket.thread','uses'=>'Guest\GuestController@getthread']); -// testing -Route::get('testing', 'Agent\MailController@getdata'); - /* Check your Ticket */ -$router->get('checkticket', 'Guest\GuestController@getCheckTicket'); - +Route::get('checkticket', 'Guest\GuestController@getCheckTicket'); +/* Get my tickets */ +Route::get('myticket', ['as' => 'ticket', 'uses' => 'Guest\GuestController@getMyticket']); +/* Get my tickets */ +Route::get('myticket/{id}', ['as' => 'ticket', 'uses' => 'Guest\GuestController@thread']); /* post Check Ticket */ -$router->post('postcheck', 'Guest\GuestController@PostCheckTicket'); -$router->get('postcheck', 'Guest\GuestController@PostCheckTicket'); +Route::post('postcheck', 'Guest\GuestController@PostCheckTicket'); +Route::get('postcheck', 'Guest\GuestController@PostCheckTicket'); /* 404 page */ -$router->get('404', 'error\ErrorController@error404'); +Route::get('404', 'error\ErrorController@error404'); + +// installer +Route::get('/serial', array( + 'as' => 'serialkey', + 'uses' => 'Installer\InstallController@serialkey', +)); +Route::post('/CheckSerial/{id}', array( + 'as' => 'CheckSerial', + 'uses' => 'Installer\InstallController@PostSerialKey', +)); +Route::get('/step1', array( + 'as' => 'licence', + 'uses' => 'Installer\InstallController@licence', +)); +Route::post('/step1post', array( + 'as' => 'postlicence', + 'uses' => 'Installer\InstallController@licencecheck', +)); +Route::get('/step2', array( + 'as' => 'prerequisites', + 'uses' => 'Installer\InstallController@prerequisites', +)); +Route::post('/step2post', array( + 'as' => 'postprerequisites', + 'uses' => 'Installer\InstallController@prerequisitescheck', +)); +Route::get('/step3', array( + 'as' => 'localization', + 'uses' => 'Installer\InstallController@localization', +)); +Route::post('/step3post', array( + 'as' => 'postlocalization', + 'uses' => 'Installer\InstallController@localizationcheck', +)); +Route::get('/step4', array( + 'as' => 'configuration', + 'uses' => 'Installer\InstallController@configuration', +)); +Route::post('/step4post', array( + 'as' => 'postconfiguration', + 'uses' => 'Installer\InstallController@configurationcheck', +)); +Route::get('/step5', array( + 'as' => 'database', + 'uses' => 'Installer\InstallController@database', +)); +Route::get('/step6', array( + 'as' => 'account', + 'uses' => 'Installer\InstallController@account', +)); +Route::post('/step6post', array( + 'as' => 'postaccount', + 'uses' => 'Installer\InstallController@accountcheck', +)); +Route::get('/final', array( + 'as' => 'final', + 'uses' => 'Installer\InstallController@finalize', +)); +Route::post('/finalpost', array( + 'as' => 'postfinal', + 'uses' => 'Installer\InstallController@finalcheck', +)); +Route::patch('/postconnection', array( + 'as' => 'postconnection', + 'uses' => 'Installer\InstallController@postconnection', +)); + + + +// cron job link +Route::get('readmails',['as' => 'readmails', 'uses' => 'Agent\MailController@readmails']); + +// to list of routes +// Route::get('/aaa',function(){ +// $routeCollection = Route::getRoutes(); +// echo ""; +// echo ""; +// echo ""; +// echo ""; +// echo ""; +// echo ""; +// foreach ($routeCollection as $value) { +// echo ""; +// echo ""; +// echo ""; +// echo ""; +// echo ""; +// } +// echo "

HTTP Method

Route

Corresponding Action

" . $value->getMethods()[0] . "" . $value->getName() . "" . $value->getActionName() . "
"; +// }); + +Route::get('503',function(){ + return view('errors.503'); +}); + +Route::get('404',function(){ + return view('errors.404'); +}); diff --git a/code/code/app/Message.php b/code/code/app/Message.php new file mode 100644 index 000000000..2a6cdb74e --- /dev/null +++ b/code/code/app/Message.php @@ -0,0 +1,10 @@ +=5.3.3", "symfony/console": "~2.1", "symfony/filesystem": "~2.1", @@ -131,7 +131,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.3-dev" + "dev-master": "1.4-dev" } }, "autoload": { @@ -144,13 +144,13 @@ "MIT" ], "authors": [ - { - "name": "Graham Campbell", - "email": "graham@mineuk.com" - }, { "name": "Michael Dowling", "email": "mtdowling@gmail.com" + }, + { + "name": "Graham Campbell", + "email": "graham@cachethq.io" } ], "description": "Helps class loading performance by generating a single PHP file containing all of the autoloaded files for a specific use case", @@ -159,20 +159,20 @@ "class", "preload" ], - "time": "2015-04-15 21:59:30" + "time": "2015-05-26 10:57:51" }, { "name": "danielstjules/stringy", - "version": "1.9.0", + "version": "1.10.0", "source": { "type": "git", "url": "https://github.com/danielstjules/Stringy.git", - "reference": "3cf18e9e424a6dedc38b7eb7ef580edb0929461b" + "reference": "4749c205db47ee5b32e8d1adf6d9aff8db6caf3b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/danielstjules/Stringy/zipball/3cf18e9e424a6dedc38b7eb7ef580edb0929461b", - "reference": "3cf18e9e424a6dedc38b7eb7ef580edb0929461b", + "url": "https://api.github.com/repos/danielstjules/Stringy/zipball/4749c205db47ee5b32e8d1adf6d9aff8db6caf3b", + "reference": "4749c205db47ee5b32e8d1adf6d9aff8db6caf3b", "shasum": "" }, "require": { @@ -215,7 +215,7 @@ "utility", "utils" ], - "time": "2015-02-10 06:19:18" + "time": "2015-07-23 00:54:12" }, { "name": "dnoegel/php-xdg-base-dir", @@ -359,17 +359,75 @@ "time": "2014-03-11 01:59:52" }, { - "name": "giggsey/libphonenumber-for-php", - "version": "7.0.5", + "name": "filp/whoops", + "version": "1.1.7", "source": { "type": "git", - "url": "https://github.com/giggsey/libphonenumber-for-php.git", - "reference": "7e49f5904a35cf7a5985de9df6397c296ea504f1" + "url": "https://github.com/filp/whoops.git", + "reference": "72538eeb70bbfb11964412a3d098d109efd012f7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/giggsey/libphonenumber-for-php/zipball/7e49f5904a35cf7a5985de9df6397c296ea504f1", - "reference": "7e49f5904a35cf7a5985de9df6397c296ea504f1", + "url": "https://api.github.com/repos/filp/whoops/zipball/72538eeb70bbfb11964412a3d098d109efd012f7", + "reference": "72538eeb70bbfb11964412a3d098d109efd012f7", + "shasum": "" + }, + "require": { + "php": ">=5.3.0" + }, + "require-dev": { + "mockery/mockery": "0.9.*" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.2-dev" + } + }, + "autoload": { + "psr-0": { + "Whoops": "src/" + }, + "classmap": [ + "src/deprecated" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Filipe Dobreira", + "homepage": "https://github.com/filp", + "role": "Developer" + } + ], + "description": "php error handling for cool kids", + "homepage": "https://github.com/filp/whoops", + "keywords": [ + "error", + "exception", + "handling", + "library", + "silex-provider", + "whoops", + "zf2" + ], + "time": "2015-06-29 05:42:04" + }, + { + "name": "giggsey/libphonenumber-for-php", + "version": "7.0.9", + "source": { + "type": "git", + "url": "https://github.com/giggsey/libphonenumber-for-php.git", + "reference": "319fd6440e997f03658fc833a37d57c1a99f7e32" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/giggsey/libphonenumber-for-php/zipball/319fd6440e997f03658fc833a37d57c1a99f7e32", + "reference": "319fd6440e997f03658fc833a37d57c1a99f7e32", "shasum": "" }, "require": { @@ -416,7 +474,7 @@ "phonenumber", "validation" ], - "time": "2015-04-28 19:50:26" + "time": "2015-08-04 09:42:04" }, { "name": "illuminate/html", @@ -551,16 +609,16 @@ }, { "name": "jakub-onderka/php-console-highlighter", - "version": "v0.3.1", + "version": "v0.3.2", "source": { "type": "git", "url": "https://github.com/JakubOnderka/PHP-Console-Highlighter.git", - "reference": "05bce997da20acf873e6bf396276798f3cd2c76a" + "reference": "7daa75df45242c8d5b75a22c00a201e7954e4fb5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/JakubOnderka/PHP-Console-Highlighter/zipball/05bce997da20acf873e6bf396276798f3cd2c76a", - "reference": "05bce997da20acf873e6bf396276798f3cd2c76a", + "url": "https://api.github.com/repos/JakubOnderka/PHP-Console-Highlighter/zipball/7daa75df45242c8d5b75a22c00a201e7954e4fb5", + "reference": "7daa75df45242c8d5b75a22c00a201e7954e4fb5", "shasum": "" }, "require": { @@ -570,6 +628,7 @@ "require-dev": { "jakub-onderka/php-code-style": "~1.0", "jakub-onderka/php-parallel-lint": "~0.5", + "jakub-onderka/php-var-dump-check": "~0.1", "phpunit/phpunit": "~4.0", "squizlabs/php_codesniffer": "~1.5" }, @@ -590,7 +649,7 @@ "homepage": "http://www.acci.cz/" } ], - "time": "2014-07-14 20:59:35" + "time": "2015-04-20 18:58:01" }, { "name": "jeremeamia/SuperClosure", @@ -652,16 +711,16 @@ }, { "name": "laravel/framework", - "version": "v5.0.28", + "version": "v5.0.33", "source": { "type": "git", "url": "https://github.com/laravel/framework.git", - "reference": "06a09429322cf53e5bd4587db1060f02a291562e" + "reference": "b11c8ab88245f920b30e5f30e16b141ac8d461d3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/framework/zipball/06a09429322cf53e5bd4587db1060f02a291562e", - "reference": "06a09429322cf53e5bd4587db1060f02a291562e", + "url": "https://api.github.com/repos/laravel/framework/zipball/b11c8ab88245f920b30e5f30e16b141ac8d461d3", + "reference": "b11c8ab88245f920b30e5f30e16b141ac8d461d3", "shasum": "" }, "require": { @@ -774,20 +833,20 @@ "framework", "laravel" ], - "time": "2015-04-21 01:44:32" + "time": "2015-06-09 13:12:19" }, { "name": "league/flysystem", - "version": "1.0.3", + "version": "1.0.11", "source": { "type": "git", "url": "https://github.com/thephpleague/flysystem.git", - "reference": "3c2400a99ccc3be6884d40361890010449c6b447" + "reference": "c16222fdc02467eaa12cb6d6d0e65527741f6040" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/flysystem/zipball/3c2400a99ccc3be6884d40361890010449c6b447", - "reference": "3c2400a99ccc3be6884d40361890010449c6b447", + "url": "https://api.github.com/repos/thephpleague/flysystem/zipball/c16222fdc02467eaa12cb6d6d0e65527741f6040", + "reference": "c16222fdc02467eaa12cb6d6d0e65527741f6040", "shasum": "" }, "require": { @@ -795,13 +854,10 @@ }, "require-dev": { "ext-fileinfo": "*", - "league/phpunit-coverage-listener": "~1.1", "mockery/mockery": "~0.9", - "phpspec/phpspec": "~2.0", + "phpspec/phpspec": "^2.2", "phpspec/prophecy-phpunit": "~1.0", - "phpunit/phpunit": "~4.1", - "predis/predis": "~1.0", - "tedivm/stash": "~0.12.0" + "phpunit/phpunit": "~4.1" }, "suggest": { "ext-fileinfo": "Required for MimeType", @@ -815,8 +871,7 @@ "league/flysystem-rackspace": "Allows you to use Rackspace Cloud Files", "league/flysystem-sftp": "Allows you to use SFTP server storage via phpseclib", "league/flysystem-webdav": "Allows you to use WebDAV storage", - "league/flysystem-ziparchive": "Allows you to use ZipArchive adapter", - "predis/predis": "Allows you to use Predis for caching" + "league/flysystem-ziparchive": "Allows you to use ZipArchive adapter" }, "type": "library", "extra": { @@ -839,10 +894,11 @@ "email": "info@frenky.net" } ], - "description": "Many filesystems, one API.", + "description": "Filesystem abstraction: Many filesystems, one API.", "keywords": [ "Cloud Files", "WebDAV", + "abstraction", "aws", "cloud", "copy.com", @@ -850,6 +906,7 @@ "file systems", "files", "filesystem", + "filesystems", "ftp", "rackspace", "remote", @@ -857,20 +914,20 @@ "sftp", "storage" ], - "time": "2015-03-29 14:01:43" + "time": "2015-07-28 20:41:58" }, { "name": "monolog/monolog", - "version": "1.13.1", + "version": "1.15.0", "source": { "type": "git", "url": "https://github.com/Seldaek/monolog.git", - "reference": "c31a2c4e8db5da8b46c74cf275d7f109c0f249ac" + "reference": "dc5150cc608f2334c72c3b6a553ec9668a4156b0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Seldaek/monolog/zipball/c31a2c4e8db5da8b46c74cf275d7f109c0f249ac", - "reference": "c31a2c4e8db5da8b46c74cf275d7f109c0f249ac", + "url": "https://api.github.com/repos/Seldaek/monolog/zipball/dc5150cc608f2334c72c3b6a553ec9668a4156b0", + "reference": "dc5150cc608f2334c72c3b6a553ec9668a4156b0", "shasum": "" }, "require": { @@ -881,12 +938,14 @@ "psr/log-implementation": "1.0.0" }, "require-dev": { - "aws/aws-sdk-php": "~2.4, >2.4.8", + "aws/aws-sdk-php": "^2.4.9", "doctrine/couchdb": "~1.0@dev", "graylog2/gelf-php": "~1.0", - "phpunit/phpunit": "~4.0", - "raven/raven": "~0.5", - "ruflin/elastica": "0.90.*", + "php-console/php-console": "^3.1.3", + "phpunit/phpunit": "~4.5", + "phpunit/phpunit-mock-objects": "2.3.0", + "raven/raven": "~0.8", + "ruflin/elastica": ">=0.90 <3.0", "swiftmailer/swiftmailer": "~5.3", "videlalvaro/php-amqplib": "~2.4" }, @@ -896,6 +955,7 @@ "ext-amqp": "Allow sending log messages to an AMQP server (1.0+ required)", "ext-mongo": "Allow sending log messages to a MongoDB server", "graylog2/gelf-php": "Allow sending log messages to a GrayLog2 server", + "php-console/php-console": "Allow sending log messages to Google Chrome", "raven/raven": "Allow sending log messages to a Sentry server", "rollbar/rollbar": "Allow sending log messages to Rollbar", "ruflin/elastica": "Allow sending log messages to an Elastic Search server", @@ -904,7 +964,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.13.x-dev" + "dev-master": "1.15.x-dev" } }, "autoload": { @@ -930,7 +990,7 @@ "logging", "psr-3" ], - "time": "2015-03-09 09:58:04" + "time": "2015-07-12 13:54:09" }, { "name": "mtdowling/cron-expression", @@ -977,22 +1037,56 @@ "time": "2015-01-11 23:07:46" }, { - "name": "nesbot/carbon", - "version": "1.18.0", + "name": "neitanod/forceutf8", + "version": "dev-master", "source": { "type": "git", - "url": "https://github.com/briannesbitt/Carbon.git", - "reference": "99e2f69f7bdc2cc4334b2d00f1e0ba450623ea36" + "url": "https://github.com/neitanod/forceutf8.git", + "reference": "2c1b21e00ed16b2b083ae4e27901cb5f2856db90" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/99e2f69f7bdc2cc4334b2d00f1e0ba450623ea36", - "reference": "99e2f69f7bdc2cc4334b2d00f1e0ba450623ea36", + "url": "https://api.github.com/repos/neitanod/forceutf8/zipball/2c1b21e00ed16b2b083ae4e27901cb5f2856db90", + "reference": "2c1b21e00ed16b2b083ae4e27901cb5f2856db90", + "shasum": "" + }, + "require": { + "php": ">=5.3.0" + }, + "type": "library", + "autoload": { + "psr-0": { + "ForceUTF8\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "authors": [ + { + "name": "Sebastián Grignoli", + "email": "grignoli@gmail.com" + } + ], + "description": "PHP Class Encoding featuring popular Encoding::toUTF8() function --formerly known as forceUTF8()-- that fixes mixed encoded strings.", + "homepage": "https://github.com/neitanod/forceutf8", + "time": "2015-05-07 16:37:23" + }, + { + "name": "nesbot/carbon", + "version": "1.20.0", + "source": { + "type": "git", + "url": "https://github.com/briannesbitt/Carbon.git", + "reference": "bfd3eaba109c9a2405c92174c8e17f20c2b9caf3" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/bfd3eaba109c9a2405c92174c8e17f20c2b9caf3", + "reference": "bfd3eaba109c9a2405c92174c8e17f20c2b9caf3", "shasum": "" }, "require": { "php": ">=5.3.0", - "symfony/translation": "2.6.*" + "symfony/translation": "~2.6|~3.0" }, "require-dev": { "phpunit/phpunit": "~4.0" @@ -1021,20 +1115,66 @@ "datetime", "time" ], - "time": "2015-03-26 03:05:57" + "time": "2015-06-25 04:19:39" }, { - "name": "nikic/php-parser", - "version": "v1.2.2", + "name": "nicolaslopezj/searchable", + "version": "1.5.14", "source": { "type": "git", - "url": "https://github.com/nikic/PHP-Parser.git", - "reference": "08f97eb4efa029e2fafb6d8c98b71731bf0cf621" + "url": "https://github.com/nicolaslopezj/searchable.git", + "reference": "ecc8aa79cac4c8d7f0a4fb713828000171ecd0ab" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/08f97eb4efa029e2fafb6d8c98b71731bf0cf621", - "reference": "08f97eb4efa029e2fafb6d8c98b71731bf0cf621", + "url": "https://api.github.com/repos/nicolaslopezj/searchable/zipball/ecc8aa79cac4c8d7f0a4fb713828000171ecd0ab", + "reference": "ecc8aa79cac4c8d7f0a4fb713828000171ecd0ab", + "shasum": "" + }, + "require": { + "ext-mbstring": "*", + "illuminate/database": "4.2.x|~5.0", + "php": ">=5.4.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Nicolaslopezj\\Searchable\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Lopez", + "email": "nicolaslopezj@me.com" + } + ], + "description": "Eloquent model search trait.", + "keywords": [ + "database", + "eloquent", + "laravel", + "model", + "search", + "searchable" + ], + "time": "2015-08-05 18:43:42" + }, + { + "name": "nikic/php-parser", + "version": "v1.4.0", + "source": { + "type": "git", + "url": "https://github.com/nikic/PHP-Parser.git", + "reference": "196f177cfefa0f1f7166c0a05d8255889be12418" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/196f177cfefa0f1f7166c0a05d8255889be12418", + "reference": "196f177cfefa0f1f7166c0a05d8255889be12418", "shasum": "" }, "require": { @@ -1044,7 +1184,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.2-dev" + "dev-master": "1.4-dev" } }, "autoload": { @@ -1066,7 +1206,7 @@ "parser", "php" ], - "time": "2015-04-03 14:33:59" + "time": "2015-07-14 17:31:05" }, { "name": "phenx/php-font-lib", @@ -1103,23 +1243,66 @@ "time": "2014-02-01 15:22:28" }, { - "name": "propaganistas/laravel-phone", - "version": "2.1.1", + "name": "php-imap/php-imap", + "version": "2.0.2", "source": { "type": "git", - "url": "https://github.com/Propaganistas/Laravel-Phone.git", - "reference": "19ad8841b8f71a3efa03e6d4395bff0d3c85a73d" + "url": "https://github.com/barbushin/php-imap.git", + "reference": "47a3852a2a90290d94395496b475bdb65c9942d6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Propaganistas/Laravel-Phone/zipball/19ad8841b8f71a3efa03e6d4395bff0d3c85a73d", - "reference": "19ad8841b8f71a3efa03e6d4395bff0d3c85a73d", + "url": "https://api.github.com/repos/barbushin/php-imap/zipball/47a3852a2a90290d94395496b475bdb65c9942d6", + "reference": "47a3852a2a90290d94395496b475bdb65c9942d6", + "shasum": "" + }, + "require": { + "php": ">=5.3.0" + }, + "type": "library", + "autoload": { + "psr-0": { + "PhpImap": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD 3-Clause" + ], + "authors": [ + { + "name": "Sergey Barbushin", + "email": "barbushin@gmail.com", + "homepage": "http://linkedin.com/in/barbushin" + } + ], + "description": "PHP class to access mailbox by POP3/IMAP/NNTP using IMAP extension", + "homepage": "https://github.com/barbushin/php-imap", + "keywords": [ + "imap", + "mail", + "php" + ], + "time": "2015-07-09 10:24:39" + }, + { + "name": "propaganistas/laravel-phone", + "version": "2.3.0", + "source": { + "type": "git", + "url": "https://github.com/Propaganistas/Laravel-Phone.git", + "reference": "272135953e9177233a19bc5f8ed45d7f7e1f1fde" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Propaganistas/Laravel-Phone/zipball/272135953e9177233a19bc5f8ed45d7f7e1f1fde", + "reference": "272135953e9177233a19bc5f8ed45d7f7e1f1fde", "shasum": "" }, "require": { "giggsey/libphonenumber-for-php": "~7.0", - "illuminate/support": "~5.0", - "illuminate/validation": "~5.0", + "illuminate/support": "~4.0|~5.0", + "illuminate/validation": "~4.0|~5.0", "php": ">=5.4.0" }, "suggest": { @@ -1127,11 +1310,11 @@ }, "type": "library", "autoload": { - "psr-0": { - "Propaganistas\\LaravelPhone": "src/" + "psr-4": { + "Propaganistas\\LaravelPhone\\": "src/" }, "files": [ - "helpers.php" + "src/helpers.php" ] }, "notification-url": "https://packagist.org/downloads/", @@ -1151,7 +1334,7 @@ "phone", "validation" ], - "time": "2015-04-29 07:03:13" + "time": "2015-06-19 10:38:37" }, { "name": "psr/log", @@ -1264,23 +1447,23 @@ }, { "name": "swiftmailer/swiftmailer", - "version": "v5.4.0", + "version": "v5.4.1", "source": { "type": "git", "url": "https://github.com/swiftmailer/swiftmailer.git", - "reference": "31454f258f10329ae7c48763eb898a75c39e0a9f" + "reference": "0697e6aa65c83edf97bb0f23d8763f94e3f11421" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/swiftmailer/swiftmailer/zipball/31454f258f10329ae7c48763eb898a75c39e0a9f", - "reference": "31454f258f10329ae7c48763eb898a75c39e0a9f", + "url": "https://api.github.com/repos/swiftmailer/swiftmailer/zipball/0697e6aa65c83edf97bb0f23d8763f94e3f11421", + "reference": "0697e6aa65c83edf97bb0f23d8763f94e3f11421", "shasum": "" }, "require": { "php": ">=5.3.3" }, "require-dev": { - "mockery/mockery": "~0.9.1" + "mockery/mockery": "~0.9.1,<0.9.4" }, "type": "library", "extra": { @@ -1309,24 +1492,25 @@ "description": "Swiftmailer, free feature-rich PHP mailer", "homepage": "http://swiftmailer.org", "keywords": [ + "email", "mail", "mailer" ], - "time": "2015-03-14 06:06:39" + "time": "2015-06-06 14:19:39" }, { "name": "symfony/console", - "version": "v2.6.6", + "version": "v2.6.11", "target-dir": "Symfony/Component/Console", "source": { "type": "git", "url": "https://github.com/symfony/Console.git", - "reference": "5b91dc4ed5eb08553f57f6df04c4730a73992667" + "reference": "0e5e18ae09d3f5c06367759be940e9ed3f568359" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/Console/zipball/5b91dc4ed5eb08553f57f6df04c4730a73992667", - "reference": "5b91dc4ed5eb08553f57f6df04c4730a73992667", + "url": "https://api.github.com/repos/symfony/Console/zipball/0e5e18ae09d3f5c06367759be940e9ed3f568359", + "reference": "0e5e18ae09d3f5c06367759be940e9ed3f568359", "shasum": "" }, "require": { @@ -1359,32 +1543,32 @@ "MIT" ], "authors": [ - { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" - }, { "name": "Fabien Potencier", "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" } ], "description": "Symfony Console Component", - "homepage": "http://symfony.com", - "time": "2015-03-30 15:54:10" + "homepage": "https://symfony.com", + "time": "2015-07-26 09:08:40" }, { "name": "symfony/debug", - "version": "v2.6.6", + "version": "v2.6.11", "target-dir": "Symfony/Component/Debug", "source": { "type": "git", "url": "https://github.com/symfony/Debug.git", - "reference": "d49a46a20a8f0544aedac54466750ad787d3d3e3" + "reference": "fca5696e0c9787722baa8f2ad6940dfd7a6a6941" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/Debug/zipball/d49a46a20a8f0544aedac54466750ad787d3d3e3", - "reference": "d49a46a20a8f0544aedac54466750ad787d3d3e3", + "url": "https://api.github.com/repos/symfony/Debug/zipball/fca5696e0c9787722baa8f2ad6940dfd7a6a6941", + "reference": "fca5696e0c9787722baa8f2ad6940dfd7a6a6941", "shasum": "" }, "require": { @@ -1420,36 +1604,35 @@ "MIT" ], "authors": [ - { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" - }, { "name": "Fabien Potencier", "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" } ], "description": "Symfony Debug Component", - "homepage": "http://symfony.com", - "time": "2015-03-22 16:55:57" + "homepage": "https://symfony.com", + "time": "2015-07-08 05:59:48" }, { "name": "symfony/event-dispatcher", - "version": "v2.6.6", - "target-dir": "Symfony/Component/EventDispatcher", + "version": "v2.7.3", "source": { "type": "git", "url": "https://github.com/symfony/EventDispatcher.git", - "reference": "70f7c8478739ad21e3deef0d977b38c77f1fb284" + "reference": "9310b5f9a87ec2ea75d20fec0b0017c77c66dac3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/EventDispatcher/zipball/70f7c8478739ad21e3deef0d977b38c77f1fb284", - "reference": "70f7c8478739ad21e3deef0d977b38c77f1fb284", + "url": "https://api.github.com/repos/symfony/EventDispatcher/zipball/9310b5f9a87ec2ea75d20fec0b0017c77c66dac3", + "reference": "9310b5f9a87ec2ea75d20fec0b0017c77c66dac3", "shasum": "" }, "require": { - "php": ">=5.3.3" + "php": ">=5.3.9" }, "require-dev": { "psr/log": "~1.0", @@ -1466,11 +1649,11 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "2.6-dev" + "dev-master": "2.7-dev" } }, "autoload": { - "psr-0": { + "psr-4": { "Symfony\\Component\\EventDispatcher\\": "" } }, @@ -1479,36 +1662,35 @@ "MIT" ], "authors": [ - { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" - }, { "name": "Fabien Potencier", "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" } ], "description": "Symfony EventDispatcher Component", - "homepage": "http://symfony.com", - "time": "2015-03-13 17:37:22" + "homepage": "https://symfony.com", + "time": "2015-06-18 19:21:56" }, { "name": "symfony/filesystem", - "version": "v2.6.6", - "target-dir": "Symfony/Component/Filesystem", + "version": "v2.7.3", "source": { "type": "git", "url": "https://github.com/symfony/Filesystem.git", - "reference": "4983964b3693e4f13449cb3800c64a9112c301b4" + "reference": "2d7b2ddaf3f548f4292df49a99d19c853d43f0b8" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/Filesystem/zipball/4983964b3693e4f13449cb3800c64a9112c301b4", - "reference": "4983964b3693e4f13449cb3800c64a9112c301b4", + "url": "https://api.github.com/repos/symfony/Filesystem/zipball/2d7b2ddaf3f548f4292df49a99d19c853d43f0b8", + "reference": "2d7b2ddaf3f548f4292df49a99d19c853d43f0b8", "shasum": "" }, "require": { - "php": ">=5.3.3" + "php": ">=5.3.9" }, "require-dev": { "symfony/phpunit-bridge": "~2.7" @@ -1516,11 +1698,11 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "2.6-dev" + "dev-master": "2.7-dev" } }, "autoload": { - "psr-0": { + "psr-4": { "Symfony\\Component\\Filesystem\\": "" } }, @@ -1529,32 +1711,32 @@ "MIT" ], "authors": [ - { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" - }, { "name": "Fabien Potencier", "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" } ], "description": "Symfony Filesystem Component", - "homepage": "http://symfony.com", - "time": "2015-03-22 16:55:57" + "homepage": "https://symfony.com", + "time": "2015-07-09 16:07:40" }, { "name": "symfony/finder", - "version": "v2.6.6", + "version": "v2.6.11", "target-dir": "Symfony/Component/Finder", "source": { "type": "git", "url": "https://github.com/symfony/Finder.git", - "reference": "5dbe2e73a580618f5b4880fda93406eed25de251" + "reference": "203a10f928ae30176deeba33512999233181dd28" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/Finder/zipball/5dbe2e73a580618f5b4880fda93406eed25de251", - "reference": "5dbe2e73a580618f5b4880fda93406eed25de251", + "url": "https://api.github.com/repos/symfony/Finder/zipball/203a10f928ae30176deeba33512999233181dd28", + "reference": "203a10f928ae30176deeba33512999233181dd28", "shasum": "" }, "require": { @@ -1579,32 +1761,32 @@ "MIT" ], "authors": [ - { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" - }, { "name": "Fabien Potencier", "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" } ], "description": "Symfony Finder Component", - "homepage": "http://symfony.com", - "time": "2015-03-30 15:54:10" + "homepage": "https://symfony.com", + "time": "2015-07-09 16:02:48" }, { "name": "symfony/http-foundation", - "version": "v2.6.6", + "version": "v2.6.11", "target-dir": "Symfony/Component/HttpFoundation", "source": { "type": "git", "url": "https://github.com/symfony/HttpFoundation.git", - "reference": "8a6337233f08f7520de97f4ffd6f00e947d892f9" + "reference": "e8fd1b73ac1c3de1f76c73801ddf1a8ecb1c1c9c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/HttpFoundation/zipball/8a6337233f08f7520de97f4ffd6f00e947d892f9", - "reference": "8a6337233f08f7520de97f4ffd6f00e947d892f9", + "url": "https://api.github.com/repos/symfony/HttpFoundation/zipball/e8fd1b73ac1c3de1f76c73801ddf1a8ecb1c1c9c", + "reference": "e8fd1b73ac1c3de1f76c73801ddf1a8ecb1c1c9c", "shasum": "" }, "require": { @@ -1633,39 +1815,39 @@ "MIT" ], "authors": [ - { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" - }, { "name": "Fabien Potencier", "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" } ], "description": "Symfony HttpFoundation Component", - "homepage": "http://symfony.com", - "time": "2015-04-01 16:50:12" + "homepage": "https://symfony.com", + "time": "2015-07-22 10:08:40" }, { "name": "symfony/http-kernel", - "version": "v2.6.6", + "version": "v2.6.11", "target-dir": "Symfony/Component/HttpKernel", "source": { "type": "git", "url": "https://github.com/symfony/HttpKernel.git", - "reference": "3829cacfe21eaf3f73604a62d79183d1f6e792c4" + "reference": "a3f0ed713255c0400a2db38b3ed01989ef4b7322" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/HttpKernel/zipball/3829cacfe21eaf3f73604a62d79183d1f6e792c4", - "reference": "3829cacfe21eaf3f73604a62d79183d1f6e792c4", + "url": "https://api.github.com/repos/symfony/HttpKernel/zipball/a3f0ed713255c0400a2db38b3ed01989ef4b7322", + "reference": "a3f0ed713255c0400a2db38b3ed01989ef4b7322", "shasum": "" }, "require": { "php": ">=5.3.3", "psr/log": "~1.0", "symfony/debug": "~2.6,>=2.6.2", - "symfony/event-dispatcher": "~2.5.9|~2.6,>=2.6.2", + "symfony/event-dispatcher": "~2.6,>=2.6.7", "symfony/http-foundation": "~2.5,>=2.5.4" }, "require-dev": { @@ -1711,32 +1893,32 @@ "MIT" ], "authors": [ - { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" - }, { "name": "Fabien Potencier", "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" } ], "description": "Symfony HttpKernel Component", - "homepage": "http://symfony.com", - "time": "2015-04-01 16:55:26" + "homepage": "https://symfony.com", + "time": "2015-07-26 10:44:22" }, { "name": "symfony/process", - "version": "v2.6.6", + "version": "v2.6.11", "target-dir": "Symfony/Component/Process", "source": { "type": "git", "url": "https://github.com/symfony/Process.git", - "reference": "a8bebaec1a9dc6cde53e0250e32917579b0be552" + "reference": "57f1e88bb5dafa449b83f9f265b11d52d517b3e9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/Process/zipball/a8bebaec1a9dc6cde53e0250e32917579b0be552", - "reference": "a8bebaec1a9dc6cde53e0250e32917579b0be552", + "url": "https://api.github.com/repos/symfony/Process/zipball/57f1e88bb5dafa449b83f9f265b11d52d517b3e9", + "reference": "57f1e88bb5dafa449b83f9f265b11d52d517b3e9", "shasum": "" }, "require": { @@ -1761,32 +1943,32 @@ "MIT" ], "authors": [ - { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" - }, { "name": "Fabien Potencier", "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" } ], "description": "Symfony Process Component", - "homepage": "http://symfony.com", - "time": "2015-03-30 15:54:10" + "homepage": "https://symfony.com", + "time": "2015-06-30 16:10:16" }, { "name": "symfony/routing", - "version": "v2.6.6", + "version": "v2.6.11", "target-dir": "Symfony/Component/Routing", "source": { "type": "git", "url": "https://github.com/symfony/Routing.git", - "reference": "4e173a645b63ff60a124f3741b4f15feebd908fa" + "reference": "0a1764d41bbb54f3864808c50569ac382b44d128" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/Routing/zipball/4e173a645b63ff60a124f3741b4f15feebd908fa", - "reference": "4e173a645b63ff60a124f3741b4f15feebd908fa", + "url": "https://api.github.com/repos/symfony/Routing/zipball/0a1764d41bbb54f3864808c50569ac382b44d128", + "reference": "0a1764d41bbb54f3864808c50569ac382b44d128", "shasum": "" }, "require": { @@ -1824,38 +2006,38 @@ "MIT" ], "authors": [ - { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" - }, { "name": "Fabien Potencier", "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" } ], "description": "Symfony Routing Component", - "homepage": "http://symfony.com", + "homepage": "https://symfony.com", "keywords": [ "router", "routing", "uri", "url" ], - "time": "2015-03-30 15:54:10" + "time": "2015-07-09 16:02:48" }, { "name": "symfony/security-core", - "version": "v2.6.6", + "version": "v2.6.11", "target-dir": "Symfony/Component/Security/Core", "source": { "type": "git", "url": "https://github.com/symfony/security-core.git", - "reference": "d25c17db741f58c0f615e52006a47f6fb23cd9b3" + "reference": "05f58bb3814e8a853332dc448e3b7addaa87679c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/security-core/zipball/d25c17db741f58c0f615e52006a47f6fb23cd9b3", - "reference": "d25c17db741f58c0f615e52006a47f6fb23cd9b3", + "url": "https://api.github.com/repos/symfony/security-core/zipball/05f58bb3814e8a853332dc448e3b7addaa87679c", + "reference": "05f58bb3814e8a853332dc448e3b7addaa87679c", "shasum": "" }, "require": { @@ -1894,32 +2076,32 @@ "MIT" ], "authors": [ - { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" - }, { "name": "Fabien Potencier", "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" } ], "description": "Symfony Security Component - Core Library", - "homepage": "http://symfony.com", - "time": "2015-03-30 15:54:10" + "homepage": "https://symfony.com", + "time": "2015-07-22 10:08:40" }, { "name": "symfony/translation", - "version": "v2.6.6", + "version": "v2.6.11", "target-dir": "Symfony/Component/Translation", "source": { "type": "git", "url": "https://github.com/symfony/Translation.git", - "reference": "bd939f05cdaca128f4ddbae1b447d6f0203b60af" + "reference": "d84291215b5892834dd8ca8ee52f9cbdb8274904" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/Translation/zipball/bd939f05cdaca128f4ddbae1b447d6f0203b60af", - "reference": "bd939f05cdaca128f4ddbae1b447d6f0203b60af", + "url": "https://api.github.com/repos/symfony/Translation/zipball/d84291215b5892834dd8ca8ee52f9cbdb8274904", + "reference": "d84291215b5892834dd8ca8ee52f9cbdb8274904", "shasum": "" }, "require": { @@ -1953,32 +2135,32 @@ "MIT" ], "authors": [ - { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" - }, { "name": "Fabien Potencier", "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" } ], "description": "Symfony Translation Component", - "homepage": "http://symfony.com", - "time": "2015-03-30 15:54:10" + "homepage": "https://symfony.com", + "time": "2015-07-08 05:59:48" }, { "name": "symfony/var-dumper", - "version": "v2.6.6", + "version": "v2.6.11", "target-dir": "Symfony/Component/VarDumper", "source": { "type": "git", "url": "https://github.com/symfony/var-dumper.git", - "reference": "aafae00236e147568832de3c65ccb94cfc836278" + "reference": "5fba957a30161d8724aade093593cd22f815bea2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/var-dumper/zipball/aafae00236e147568832de3c65ccb94cfc836278", - "reference": "aafae00236e147568832de3c65ccb94cfc836278", + "url": "https://api.github.com/repos/symfony/var-dumper/zipball/5fba957a30161d8724aade093593cd22f815bea2", + "reference": "5fba957a30161d8724aade093593cd22f815bea2", "shasum": "" }, "require": { @@ -2009,35 +2191,140 @@ "MIT" ], "authors": [ - { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" - }, { "name": "Nicolas Grekas", "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" } ], "description": "Symfony mechanism for exploring and dumping PHP variables", - "homepage": "http://symfony.com", + "homepage": "https://symfony.com", "keywords": [ "debug", "dump" ], - "time": "2015-03-31 08:12:29" + "time": "2015-07-01 10:03:42" }, { - "name": "vlucas/phpdotenv", - "version": "v1.1.0", + "name": "thomaswelton/gravatarlib", + "version": "0.1.0", + "target-dir": "thomaswelton/GravatarLib", "source": { "type": "git", - "url": "https://github.com/vlucas/phpdotenv.git", - "reference": "732d2adb7d916c9593b9d58c3b0d9ebefead07aa" + "url": "https://github.com/thomaswelton/gravatarlib.git", + "reference": "8a4e829c53ca2abb51ef2e514f696938a9bdbd0c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/vlucas/phpdotenv/zipball/732d2adb7d916c9593b9d58c3b0d9ebefead07aa", - "reference": "732d2adb7d916c9593b9d58c3b0d9ebefead07aa", + "url": "https://api.github.com/repos/thomaswelton/gravatarlib/zipball/8a4e829c53ca2abb51ef2e514f696938a9bdbd0c", + "reference": "8a4e829c53ca2abb51ef2e514f696938a9bdbd0c", + "shasum": "" + }, + "require": { + "php": ">=5.3.0" + }, + "suggest": { + "twig/twig": ">=1.4.0" + }, + "type": "library", + "autoload": { + "psr-0": { + "thomaswelton\\GravatarLib\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Sam Thompson", + "email": "sam@emberlabs.org" + }, + { + "name": "Damian Bushong", + "email": "damian@emberlabs.org" + }, + { + "name": "Thomas Welton", + "email": "thomaswelton@me.com", + "homepage": "https://github.com/thomaswelton", + "role": "Developer" + } + ], + "description": "A lightweight PHP 5.3 OOP library providing easy gravatar integration.", + "keywords": [ + "gravatar", + "templating", + "twig" + ], + "time": "2014-03-02 18:29:18" + }, + { + "name": "thomaswelton/laravel-gravatar", + "version": "1.0.0", + "source": { + "type": "git", + "url": "https://github.com/thomaswelton/laravel-gravatar.git", + "reference": "c688c5823778a22f511358fd0717aa44f5655a26" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/thomaswelton/laravel-gravatar/zipball/c688c5823778a22f511358fd0717aa44f5655a26", + "reference": "c688c5823778a22f511358fd0717aa44f5655a26", + "shasum": "" + }, + "require": { + "illuminate/support": "~5.0", + "php": ">=5.4.0", + "thomaswelton/gravatarlib": "0.1.x" + }, + "type": "library", + "autoload": { + "psr-0": { + "Thomaswelton\\LaravelGravatar": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "ThomasWelton", + "email": "thomaswelton@me.com", + "role": "Developer" + }, + { + "name": "Antoine Augusti", + "email": "antoine.augusti@gmail.com", + "role": "Developer" + } + ], + "description": "Laravel 5 Gravatar helper", + "homepage": "https://github.com/thomaswelton/laravel-gravatar", + "keywords": [ + "gravatar", + "laravel", + "laravel5" + ], + "time": "2015-05-14 15:26:16" + }, + { + "name": "vlucas/phpdotenv", + "version": "v1.1.1", + "source": { + "type": "git", + "url": "https://github.com/vlucas/phpdotenv.git", + "reference": "0cac554ce06277e33ddf9f0b7ade4b8bbf2af3fa" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/vlucas/phpdotenv/zipball/0cac554ce06277e33ddf9f0b7ade4b8bbf2af3fa", + "reference": "0cac554ce06277e33ddf9f0b7ade4b8bbf2af3fa", "shasum": "" }, "require": { @@ -2047,11 +2334,6 @@ "phpunit/phpunit": "~4.0" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0-dev" - } - }, "autoload": { "psr-0": { "Dotenv": "src/" @@ -2075,7 +2357,7 @@ "env", "environment" ], - "time": "2014-12-05 15:19:21" + "time": "2015-05-30 15:59:26" }, { "name": "vsmoraes/laravel-pdf", @@ -2126,16 +2408,16 @@ "packages-dev": [ { "name": "doctrine/instantiator", - "version": "1.0.4", + "version": "1.0.5", "source": { "type": "git", "url": "https://github.com/doctrine/instantiator.git", - "reference": "f976e5de371104877ebc89bd8fecb0019ed9c119" + "reference": "8e884e78f9f0eb1329e445619e04456e64d8051d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/instantiator/zipball/f976e5de371104877ebc89bd8fecb0019ed9c119", - "reference": "f976e5de371104877ebc89bd8fecb0019ed9c119", + "url": "https://api.github.com/repos/doctrine/instantiator/zipball/8e884e78f9f0eb1329e445619e04456e64d8051d", + "reference": "8e884e78f9f0eb1329e445619e04456e64d8051d", "shasum": "" }, "require": { @@ -2146,7 +2428,7 @@ "ext-pdo": "*", "ext-phar": "*", "phpunit/phpunit": "~4.0", - "squizlabs/php_codesniffer": "2.0.*@ALPHA" + "squizlabs/php_codesniffer": "~2.0" }, "type": "library", "extra": { @@ -2155,8 +2437,8 @@ } }, "autoload": { - "psr-0": { - "Doctrine\\Instantiator\\": "src" + "psr-4": { + "Doctrine\\Instantiator\\": "src/Doctrine/Instantiator/" } }, "notification-url": "https://packagist.org/downloads/", @@ -2176,7 +2458,7 @@ "constructor", "instantiate" ], - "time": "2014-10-13 12:58:55" + "time": "2015-06-14 21:17:01" }, { "name": "phpdocumentor/reflection-docblock", @@ -2263,16 +2545,16 @@ }, { "name": "phpspec/phpspec", - "version": "2.2.0", + "version": "2.2.1", "source": { "type": "git", "url": "https://github.com/phpspec/phpspec.git", - "reference": "9727d75919a00455433e867565bc022f0b985a39" + "reference": "e9a40577323e67f1de2e214abf32976a0352d8f8" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpspec/phpspec/zipball/9727d75919a00455433e867565bc022f0b985a39", - "reference": "9727d75919a00455433e867565bc022f0b985a39", + "url": "https://api.github.com/repos/phpspec/phpspec/zipball/e9a40577323e67f1de2e214abf32976a0352d8f8", + "reference": "e9a40577323e67f1de2e214abf32976a0352d8f8", "shasum": "" }, "require": { @@ -2337,7 +2619,7 @@ "testing", "tests" ], - "time": "2015-04-18 16:22:51" + "time": "2015-05-30 15:21:40" }, { "name": "phpspec/prophecy", @@ -2401,16 +2683,16 @@ }, { "name": "phpunit/php-code-coverage", - "version": "2.0.16", + "version": "2.2.2", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-code-coverage.git", - "reference": "934fd03eb6840508231a7f73eb8940cf32c3b66c" + "reference": "2d7c03c0e4e080901b8f33b2897b0577be18a13c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/934fd03eb6840508231a7f73eb8940cf32c3b66c", - "reference": "934fd03eb6840508231a7f73eb8940cf32c3b66c", + "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/2d7c03c0e4e080901b8f33b2897b0577be18a13c", + "reference": "2d7c03c0e4e080901b8f33b2897b0577be18a13c", "shasum": "" }, "require": { @@ -2418,7 +2700,7 @@ "phpunit/php-file-iterator": "~1.3", "phpunit/php-text-template": "~1.2", "phpunit/php-token-stream": "~1.3", - "sebastian/environment": "~1.0", + "sebastian/environment": "^1.3.2", "sebastian/version": "~1.0" }, "require-dev": { @@ -2433,7 +2715,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "2.0.x-dev" + "dev-master": "2.2.x-dev" } }, "autoload": { @@ -2459,20 +2741,20 @@ "testing", "xunit" ], - "time": "2015-04-11 04:35:00" + "time": "2015-08-04 03:42:39" }, { "name": "phpunit/php-file-iterator", - "version": "1.4.0", + "version": "1.4.1", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-file-iterator.git", - "reference": "a923bb15680d0089e2316f7a4af8f437046e96bb" + "reference": "6150bf2c35d3fc379e50c7602b75caceaa39dbf0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/a923bb15680d0089e2316f7a4af8f437046e96bb", - "reference": "a923bb15680d0089e2316f7a4af8f437046e96bb", + "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/6150bf2c35d3fc379e50c7602b75caceaa39dbf0", + "reference": "6150bf2c35d3fc379e50c7602b75caceaa39dbf0", "shasum": "" }, "require": { @@ -2506,20 +2788,20 @@ "filesystem", "iterator" ], - "time": "2015-04-02 05:19:05" + "time": "2015-06-21 13:08:43" }, { "name": "phpunit/php-text-template", - "version": "1.2.0", + "version": "1.2.1", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-text-template.git", - "reference": "206dfefc0ffe9cebf65c413e3d0e809c82fbf00a" + "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/206dfefc0ffe9cebf65c413e3d0e809c82fbf00a", - "reference": "206dfefc0ffe9cebf65c413e3d0e809c82fbf00a", + "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/31f8b717e51d9a2afca6c9f046f5d69fc27c8686", + "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686", "shasum": "" }, "require": { @@ -2528,20 +2810,17 @@ "type": "library", "autoload": { "classmap": [ - "Text/" + "src/" ] }, "notification-url": "https://packagist.org/downloads/", - "include-path": [ - "" - ], "license": [ "BSD-3-Clause" ], "authors": [ { "name": "Sebastian Bergmann", - "email": "sb@sebastian-bergmann.de", + "email": "sebastian@phpunit.de", "role": "lead" } ], @@ -2550,20 +2829,20 @@ "keywords": [ "template" ], - "time": "2014-01-30 17:20:04" + "time": "2015-06-21 13:50:34" }, { "name": "phpunit/php-timer", - "version": "1.0.5", + "version": "1.0.7", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-timer.git", - "reference": "19689d4354b295ee3d8c54b4f42c3efb69cbc17c" + "reference": "3e82f4e9fc92665fafd9157568e4dcb01d014e5b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/19689d4354b295ee3d8c54b4f42c3efb69cbc17c", - "reference": "19689d4354b295ee3d8c54b4f42c3efb69cbc17c", + "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/3e82f4e9fc92665fafd9157568e4dcb01d014e5b", + "reference": "3e82f4e9fc92665fafd9157568e4dcb01d014e5b", "shasum": "" }, "require": { @@ -2572,13 +2851,10 @@ "type": "library", "autoload": { "classmap": [ - "PHP/" + "src/" ] }, "notification-url": "https://packagist.org/downloads/", - "include-path": [ - "" - ], "license": [ "BSD-3-Clause" ], @@ -2594,20 +2870,20 @@ "keywords": [ "timer" ], - "time": "2013-08-02 07:42:54" + "time": "2015-06-21 08:01:12" }, { "name": "phpunit/php-token-stream", - "version": "1.4.1", + "version": "1.4.3", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-token-stream.git", - "reference": "eab81d02569310739373308137284e0158424330" + "reference": "7a9b0969488c3c54fd62b4d504b3ec758fd005d9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/eab81d02569310739373308137284e0158424330", - "reference": "eab81d02569310739373308137284e0158424330", + "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/7a9b0969488c3c54fd62b4d504b3ec758fd005d9", + "reference": "7a9b0969488c3c54fd62b4d504b3ec758fd005d9", "shasum": "" }, "require": { @@ -2643,20 +2919,20 @@ "keywords": [ "tokenizer" ], - "time": "2015-04-08 04:46:07" + "time": "2015-06-19 03:43:16" }, { "name": "phpunit/phpunit", - "version": "4.6.6", + "version": "4.7.7", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "3afe303d873a4d64c62ef84de491b97b006fbdac" + "reference": "9b97f9d807b862c2de2a36e86690000801c85724" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/3afe303d873a4d64c62ef84de491b97b006fbdac", - "reference": "3afe303d873a4d64c62ef84de491b97b006fbdac", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/9b97f9d807b862c2de2a36e86690000801c85724", + "reference": "9b97f9d807b862c2de2a36e86690000801c85724", "shasum": "" }, "require": { @@ -2667,10 +2943,10 @@ "ext-spl": "*", "php": ">=5.3.3", "phpspec/prophecy": "~1.3,>=1.3.1", - "phpunit/php-code-coverage": "~2.0,>=2.0.11", + "phpunit/php-code-coverage": "~2.1", "phpunit/php-file-iterator": "~1.4", "phpunit/php-text-template": "~1.2", - "phpunit/php-timer": "~1.0", + "phpunit/php-timer": ">=1.0.6", "phpunit/phpunit-mock-objects": "~2.3", "sebastian/comparator": "~1.1", "sebastian/diff": "~1.2", @@ -2689,7 +2965,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "4.6.x-dev" + "dev-master": "4.7.x-dev" } }, "autoload": { @@ -2715,26 +2991,27 @@ "testing", "xunit" ], - "time": "2015-04-29 15:18:52" + "time": "2015-07-13 11:28:34" }, { "name": "phpunit/phpunit-mock-objects", - "version": "2.3.1", + "version": "2.3.6", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit-mock-objects.git", - "reference": "74ffb87f527f24616f72460e54b595f508dccb5c" + "reference": "18dfbcb81d05e2296c0bcddd4db96cade75e6f42" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit-mock-objects/zipball/74ffb87f527f24616f72460e54b595f508dccb5c", - "reference": "74ffb87f527f24616f72460e54b595f508dccb5c", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit-mock-objects/zipball/18dfbcb81d05e2296c0bcddd4db96cade75e6f42", + "reference": "18dfbcb81d05e2296c0bcddd4db96cade75e6f42", "shasum": "" }, "require": { "doctrine/instantiator": "~1.0,>=1.0.2", "php": ">=5.3.3", - "phpunit/php-text-template": "~1.2" + "phpunit/php-text-template": "~1.2", + "sebastian/exporter": "~1.2" }, "require-dev": { "phpunit/phpunit": "~4.4" @@ -2770,20 +3047,20 @@ "mock", "xunit" ], - "time": "2015-04-02 05:36:41" + "time": "2015-07-10 06:54:24" }, { "name": "sebastian/comparator", - "version": "1.1.1", + "version": "1.2.0", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/comparator.git", - "reference": "1dd8869519a225f7f2b9eb663e225298fade819e" + "reference": "937efb279bd37a375bcadf584dec0726f84dbf22" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/1dd8869519a225f7f2b9eb663e225298fade819e", - "reference": "1dd8869519a225f7f2b9eb663e225298fade819e", + "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/937efb279bd37a375bcadf584dec0726f84dbf22", + "reference": "937efb279bd37a375bcadf584dec0726f84dbf22", "shasum": "" }, "require": { @@ -2797,7 +3074,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.1.x-dev" + "dev-master": "1.2.x-dev" } }, "autoload": { @@ -2834,7 +3111,7 @@ "compare", "equality" ], - "time": "2015-01-29 16:28:08" + "time": "2015-07-26 15:48:44" }, { "name": "sebastian/diff", @@ -2890,16 +3167,16 @@ }, { "name": "sebastian/environment", - "version": "1.2.2", + "version": "1.3.2", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/environment.git", - "reference": "5a8c7d31914337b69923db26c4221b81ff5a196e" + "reference": "6324c907ce7a52478eeeaede764f48733ef5ae44" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/5a8c7d31914337b69923db26c4221b81ff5a196e", - "reference": "5a8c7d31914337b69923db26c4221b81ff5a196e", + "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/6324c907ce7a52478eeeaede764f48733ef5ae44", + "reference": "6324c907ce7a52478eeeaede764f48733ef5ae44", "shasum": "" }, "require": { @@ -2936,20 +3213,20 @@ "environment", "hhvm" ], - "time": "2015-01-01 10:01:08" + "time": "2015-08-03 06:14:51" }, { "name": "sebastian/exporter", - "version": "1.2.0", + "version": "1.2.1", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/exporter.git", - "reference": "84839970d05254c73cde183a721c7af13aede943" + "reference": "7ae5513327cb536431847bcc0c10edba2701064e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/84839970d05254c73cde183a721c7af13aede943", - "reference": "84839970d05254c73cde183a721c7af13aede943", + "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/7ae5513327cb536431847bcc0c10edba2701064e", + "reference": "7ae5513327cb536431847bcc0c10edba2701064e", "shasum": "" }, "require": { @@ -3002,7 +3279,7 @@ "export", "exporter" ], - "time": "2015-01-27 07:23:06" + "time": "2015-06-21 07:55:53" }, { "name": "sebastian/global-state", @@ -3057,16 +3334,16 @@ }, { "name": "sebastian/recursion-context", - "version": "1.0.0", + "version": "1.0.1", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/recursion-context.git", - "reference": "3989662bbb30a29d20d9faa04a846af79b276252" + "reference": "994d4a811bafe801fb06dccbee797863ba2792ba" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/3989662bbb30a29d20d9faa04a846af79b276252", - "reference": "3989662bbb30a29d20d9faa04a846af79b276252", + "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/994d4a811bafe801fb06dccbee797863ba2792ba", + "reference": "994d4a811bafe801fb06dccbee797863ba2792ba", "shasum": "" }, "require": { @@ -3106,20 +3383,20 @@ ], "description": "Provides functionality to recursively process PHP variables", "homepage": "http://www.github.com/sebastianbergmann/recursion-context", - "time": "2015-01-24 09:48:32" + "time": "2015-06-21 08:04:50" }, { "name": "sebastian/version", - "version": "1.0.5", + "version": "1.0.6", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/version.git", - "reference": "ab931d46cd0d3204a91e1b9a40c4bc13032b58e4" + "reference": "58b3a85e7999757d6ad81c787a1fbf5ff6c628c6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/ab931d46cd0d3204a91e1b9a40c4bc13032b58e4", - "reference": "ab931d46cd0d3204a91e1b9a40c4bc13032b58e4", + "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/58b3a85e7999757d6ad81c787a1fbf5ff6c628c6", + "reference": "58b3a85e7999757d6ad81c787a1fbf5ff6c628c6", "shasum": "" }, "type": "library", @@ -3141,25 +3418,24 @@ ], "description": "Library that helps with managing the version number of Git-hosted PHP projects", "homepage": "https://github.com/sebastianbergmann/version", - "time": "2015-02-24 06:35:25" + "time": "2015-06-21 13:59:46" }, { "name": "symfony/yaml", - "version": "v2.6.6", - "target-dir": "Symfony/Component/Yaml", + "version": "v2.7.3", "source": { "type": "git", "url": "https://github.com/symfony/Yaml.git", - "reference": "174f009ed36379a801109955fc5a71a49fe62dd4" + "reference": "71340e996171474a53f3d29111d046be4ad8a0ff" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/Yaml/zipball/174f009ed36379a801109955fc5a71a49fe62dd4", - "reference": "174f009ed36379a801109955fc5a71a49fe62dd4", + "url": "https://api.github.com/repos/symfony/Yaml/zipball/71340e996171474a53f3d29111d046be4ad8a0ff", + "reference": "71340e996171474a53f3d29111d046be4ad8a0ff", "shasum": "" }, "require": { - "php": ">=5.3.3" + "php": ">=5.3.9" }, "require-dev": { "symfony/phpunit-bridge": "~2.7" @@ -3167,11 +3443,11 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "2.6-dev" + "dev-master": "2.7-dev" } }, "autoload": { - "psr-0": { + "psr-4": { "Symfony\\Component\\Yaml\\": "" } }, @@ -3180,23 +3456,25 @@ "MIT" ], "authors": [ - { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" - }, { "name": "Fabien Potencier", "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" } ], "description": "Symfony Yaml Component", - "homepage": "http://symfony.com", - "time": "2015-03-30 15:54:10" + "homepage": "https://symfony.com", + "time": "2015-07-28 14:07:07" } ], "aliases": [], "minimum-stability": "stable", - "stability-flags": [], + "stability-flags": { + "neitanod/forceutf8": 20 + }, "prefer-stable": false, "prefer-lowest": false, "platform": [], diff --git a/code/config/app.php b/code/code/config/app.php similarity index 75% rename from code/config/app.php rename to code/code/config/app.php index d63b3d0f5..dbc75be77 100644 --- a/code/config/app.php +++ b/code/code/config/app.php @@ -11,7 +11,7 @@ return [ | stack traces will be shown on every error that occurs within your | application. If disabled, a simple generic error page is shown. | - */ + */ 'debug' => true, @@ -24,7 +24,7 @@ return [ | the Artisan command line tool. You should set this to the root of | your application so that it is used when running Artisan tasks. | - */ + */ 'url' => 'http://localhost', @@ -37,7 +37,7 @@ return [ | will be used by the PHP date and date-time functions. We have gone | ahead and set this to a sensible default for you out of the box. | - */ + */ 'timezone' => 'UTC', @@ -50,7 +50,7 @@ return [ | by the translation service provider. You are free to set this value | to any of the locales which will be supported by the application. | - */ + */ 'locale' => 'en', @@ -63,7 +63,7 @@ return [ | is not available. You may change the value to correspond to any of | the language folders that are provided through your application. | - */ + */ 'fallback_locale' => 'en', @@ -76,9 +76,9 @@ return [ | to a random, 32 character string, otherwise these encrypted strings | will not be safe. Please do this before deploying an application! | - */ + */ - 'key' => env('APP_KEY', 'SomeRandomString'), + 'key' => env('APP_KEY', 'AEVQf2ecD6Czpw6r2jairFxbXohG72fH'), 'cipher' => MCRYPT_RIJNDAEL_128, @@ -93,7 +93,7 @@ return [ | | Available Settings: "single", "daily", "syslog", "errorlog" | - */ + */ 'log' => 'daily', @@ -106,7 +106,7 @@ return [ | request to your application. Feel free to add your own services to | this array to grant expanded functionality to your applications. | - */ + */ 'providers' => [ @@ -146,8 +146,8 @@ return [ 'App\Providers\RouteServiceProvider', 'Propaganistas\LaravelPhone\LaravelPhoneServiceProvider', 'Bugsnag\BugsnagLaravel\BugsnagLaravelServiceProvider', - - + 'Vsmoraes\Pdf\PdfServiceProvider', + 'Thomaswelton\LaravelGravatar\LaravelGravatarServiceProvider', ], @@ -160,49 +160,48 @@ return [ | is started. However, feel free to register as many as you wish as | the aliases are "lazy" loaded so they don't hinder performance. | - */ + */ 'aliases' => [ - 'App' => 'Illuminate\Support\Facades\App', - 'Artisan' => 'Illuminate\Support\Facades\Artisan', - 'Auth' => 'Illuminate\Support\Facades\Auth', - 'Blade' => 'Illuminate\Support\Facades\Blade', - 'Bus' => 'Illuminate\Support\Facades\Bus', - 'Cache' => 'Illuminate\Support\Facades\Cache', - 'Config' => 'Illuminate\Support\Facades\Config', - 'Cookie' => 'Illuminate\Support\Facades\Cookie', - 'Crypt' => 'Illuminate\Support\Facades\Crypt', - 'DB' => 'Illuminate\Support\Facades\DB', - 'Eloquent' => 'Illuminate\Database\Eloquent\Model', - 'Event' => 'Illuminate\Support\Facades\Event', - 'File' => 'Illuminate\Support\Facades\File', - 'Hash' => 'Illuminate\Support\Facades\Hash', - 'Input' => 'Illuminate\Support\Facades\Input', + 'App' => 'Illuminate\Support\Facades\App', + 'Artisan' => 'Illuminate\Support\Facades\Artisan', + 'Auth' => 'Illuminate\Support\Facades\Auth', + 'Blade' => 'Illuminate\Support\Facades\Blade', + 'Bus' => 'Illuminate\Support\Facades\Bus', + 'Cache' => 'Illuminate\Support\Facades\Cache', + 'Config' => 'Illuminate\Support\Facades\Config', + 'Cookie' => 'Illuminate\Support\Facades\Cookie', + 'Crypt' => 'Illuminate\Support\Facades\Crypt', + 'DB' => 'Illuminate\Support\Facades\DB', + 'Eloquent' => 'Illuminate\Database\Eloquent\Model', + 'Event' => 'Illuminate\Support\Facades\Event', + 'File' => 'Illuminate\Support\Facades\File', + 'Hash' => 'Illuminate\Support\Facades\Hash', + 'Input' => 'Illuminate\Support\Facades\Input', 'Inspiring' => 'Illuminate\Foundation\Inspiring', - 'Lang' => 'Illuminate\Support\Facades\Lang', - 'Log' => 'Illuminate\Support\Facades\Log', - 'Mail' => 'Illuminate\Support\Facades\Mail', - 'Password' => 'Illuminate\Support\Facades\Password', - 'Queue' => 'Illuminate\Support\Facades\Queue', - 'Redirect' => 'Illuminate\Support\Facades\Redirect', - 'Redis' => 'Illuminate\Support\Facades\Redis', - 'Request' => 'Illuminate\Support\Facades\Request', - 'Response' => 'Illuminate\Support\Facades\Response', - 'Route' => 'Illuminate\Support\Facades\Route', - 'Schema' => 'Illuminate\Support\Facades\Schema', - 'Session' => 'Illuminate\Support\Facades\Session', - 'Storage' => 'Illuminate\Support\Facades\Storage', - 'URL' => 'Illuminate\Support\Facades\URL', + 'Lang' => 'Illuminate\Support\Facades\Lang', + 'Log' => 'Illuminate\Support\Facades\Log', + 'Mail' => 'Illuminate\Support\Facades\Mail', + 'Password' => 'Illuminate\Support\Facades\Password', + 'Queue' => 'Illuminate\Support\Facades\Queue', + 'Redirect' => 'Illuminate\Support\Facades\Redirect', + 'Redis' => 'Illuminate\Support\Facades\Redis', + 'Request' => 'Illuminate\Support\Facades\Request', + 'Response' => 'Illuminate\Support\Facades\Response', + 'Route' => 'Illuminate\Support\Facades\Route', + 'Schema' => 'Illuminate\Support\Facades\Schema', + 'Session' => 'Illuminate\Support\Facades\Session', + 'Storage' => 'Illuminate\Support\Facades\Storage', + 'URL' => 'Illuminate\Support\Facades\URL', 'Validator' => 'Illuminate\Support\Facades\Validator', - 'View' => 'Illuminate\Support\Facades\View', - 'Form' =>'Illuminate\Html\FormFacade', - 'HTML' => 'Illuminate\Html\HtmlFacade', + 'View' => 'Illuminate\Support\Facades\View', + 'Form' => 'Illuminate\Html\FormFacade', + 'HTML' => 'Illuminate\Html\HtmlFacade', "phone" => "The :attribute field contains an invalid number.", 'Bugsnag' => 'Bugsnag\BugsnagLaravel\BugsnagFacade', - - - + 'PDF' => 'Vsmoraes\Pdf\PdfFacade', + 'Gravatar' => 'Thomaswelton\LaravelGravatar\Facades\Gravatar', ], diff --git a/code/config/auth.php b/code/code/config/auth.php similarity index 99% rename from code/config/auth.php rename to code/code/config/auth.php index 5b436aa4f..3f6115281 100644 --- a/code/config/auth.php +++ b/code/code/config/auth.php @@ -13,7 +13,7 @@ return [ | | Supported: "database", "eloquent" | - */ + */ 'driver' => 'eloquent', @@ -26,7 +26,7 @@ return [ | Eloquent model should be used to retrieve your users. Of course, it | is often just the "User" model but you may use whatever you like. | - */ + */ 'model' => 'App\User', @@ -39,7 +39,7 @@ return [ | table should be used to retrieve your users. We have chosen a basic | default value but you may easily change it to any table you like. | - */ + */ 'table' => 'users', @@ -56,7 +56,7 @@ return [ | considered valid. This security feature keeps tokens short-lived so | they have less time to be guessed. You may change this as needed. | - */ + */ 'password' => [ 'email' => 'emails.password', diff --git a/code/code/config/bugsnag.php b/code/code/config/bugsnag.php new file mode 100644 index 000000000..3ac43c142 --- /dev/null +++ b/code/code/config/bugsnag.php @@ -0,0 +1,5 @@ + 'f27b54f858d9bff115b84ae438876380' +// ); \ No newline at end of file diff --git a/code/config/cache.php b/code/code/config/cache.php similarity index 100% rename from code/config/cache.php rename to code/code/config/cache.php diff --git a/code/config/compile.php b/code/code/config/compile.php similarity index 100% rename from code/config/compile.php rename to code/code/config/compile.php diff --git a/code/config/database.php b/code/code/config/database.php similarity index 75% rename from code/config/database.php rename to code/code/config/database.php index ecebb9b3a..2f59c527b 100644 --- a/code/config/database.php +++ b/code/code/config/database.php @@ -11,7 +11,7 @@ return [ | stdClass object; however, you may desire to retrieve records in an | array format for simplicity. Here you can tweak the fetch style. | - */ + */ 'fetch' => PDO::FETCH_CLASS, @@ -24,9 +24,9 @@ return [ | to use as your default connection for all database work. Of course | you may use many connections at once using the Database library. | - */ + */ - 'default' => '', + 'default' => '%default%', /* |-------------------------------------------------------------------------- @@ -42,46 +42,46 @@ return [ | so make sure you have the driver for your particular database of | choice installed on your machine before you begin development. | - */ + */ 'connections' => [ 'sqlite' => [ - 'driver' => 'sqlite', - 'database' => storage_path().'/database.sqlite', - 'prefix' => '', + 'driver' => 'sqlite', + 'database' => storage_path() . '/database.sqlite', + 'prefix' => '', ], 'mysql' => [ - 'driver' => 'mysql', - 'host' => 'localhost', - 'database' => '', - 'username' => '', - 'password' => '', - 'charset' => 'utf8', + 'driver' => 'mysql', + 'host' => '%host%', + 'database' => '%database%', + 'username' => '%username%', + 'password' => '%password%', + 'charset' => 'utf8', 'collation' => 'utf8_unicode_ci', - 'prefix' => '', - 'strict' => false, + 'prefix' => '', + 'strict' => false, ], 'pgsql' => [ - 'driver' => 'pgsql', - 'host' => env('DB_HOST', 'localhost'), + 'driver' => 'pgsql', + 'host' => env('DB_HOST', 'localhost'), 'database' => env('DB_DATABASE', 'forge'), 'username' => env('DB_USERNAME', 'forge'), 'password' => env('DB_PASSWORD', ''), - 'charset' => 'utf8', - 'prefix' => '', - 'schema' => 'public', + 'charset' => 'utf8', + 'prefix' => '', + 'schema' => 'public', ], 'sqlsrv' => [ - 'driver' => 'sqlsrv', - 'host' => env('DB_HOST', 'localhost'), + 'driver' => 'sqlsrv', + 'host' => env('DB_HOST', 'localhost'), 'database' => env('DB_DATABASE', 'forge'), 'username' => env('DB_USERNAME', 'forge'), 'password' => env('DB_PASSWORD', ''), - 'prefix' => '', + 'prefix' => '', ], ], @@ -95,10 +95,22 @@ return [ | your application. Using this information, we can determine which of | the migrations on disk haven't actually been run in the database. | - */ + */ 'migrations' => 'migrations', + /* + |-------------------------------------------------------------------------- + | Installer value + |-------------------------------------------------------------------------- + | + | This key is used for the installer to know wether this project is + | installed or not. + | + */ + + 'install' => '%0%', + /* |-------------------------------------------------------------------------- | Redis Databases @@ -108,15 +120,15 @@ return [ | provides a richer set of commands than a typical key-value systems | such as APC or Memcached. Laravel makes it easy to dig right in. | - */ + */ 'redis' => [ 'cluster' => false, 'default' => [ - 'host' => '127.0.0.1', - 'port' => 6379, + 'host' => '127.0.0.1', + 'port' => 6379, 'database' => 0, ], diff --git a/code/config/filesystems.php b/code/code/config/filesystems.php similarity index 100% rename from code/config/filesystems.php rename to code/code/config/filesystems.php diff --git a/code/code/config/gravatar.php b/code/code/config/gravatar.php new file mode 100644 index 000000000..1d5b318ae --- /dev/null +++ b/code/code/config/gravatar.php @@ -0,0 +1,23 @@ + 80, + + // --- The default avatar to display if we have no results + // (bool) false + // (string) 404 + // (string) mm: (mystery-man) a simple, cartoon-style silhouetted outline of a person (does not vary by email hash). + // (string) identicon: a geometric pattern based on an email hash. + // (string) monsterid: a generated 'monster' with different colors, faces, etc. + // (string) wavatar: generated faces with differing features and backgrounds. + // (string) retro: awesome generated, 8-bit arcade-style pixelated faces. + 'default' => 'identicon', + + // --- Set the type of avatars we allow to show + // - g: suitable for display on all websites with any audience type. + // - pg: may contain rude gestures, provocatively dressed individuals, the lesser swear words, or mild violence. + // - r: may contain such things as harsh profanity, intense violence, nudity, or hard drug use. + // - x: may contain hardcore sexual imagery or extremely disturbing violence. + 'maxRating' => 'g' +); diff --git a/code/config/mail.php b/code/code/config/mail.php similarity index 97% rename from code/config/mail.php rename to code/code/config/mail.php index 22454556b..9ce48192e 100644 --- a/code/config/mail.php +++ b/code/code/config/mail.php @@ -13,7 +13,7 @@ return [ | | Supported: "smtp", "mail", "sendmail", "mailgun", "mandrill", "log" | - */ + */ 'driver' => 'smtp', @@ -26,9 +26,9 @@ return [ | applications. A default option is provided that is compatible with | the Mailgun mail service which will provide reliable deliveries. | - */ + */ - 'host' => 'smtp.mailgun.com', + 'host' => '', /* |-------------------------------------------------------------------------- @@ -39,9 +39,9 @@ return [ | users of the application. Like the host we have set this value to | stay compatible with the Mailgun e-mail application by default. | - */ + */ - 'port' => 465, + 'port' => '', /* |-------------------------------------------------------------------------- @@ -52,7 +52,7 @@ return [ | the same address. Here, you may specify a name and address that is | used globally for all e-mails that are sent by your application. | - */ + */ 'from' => ['address' => '', 'name' => ''], @@ -65,9 +65,9 @@ return [ | the application send e-mail messages. A sensible default using the | transport layer security protocol should provide great security. | - */ + */ - 'encryption' => 'tls', + 'encryption' => '', /* |-------------------------------------------------------------------------- @@ -78,7 +78,7 @@ return [ | set it here. This will get used to authenticate with your server on | connection. You may also set the "password" value below this one. | - */ + */ 'username' => '', @@ -91,7 +91,7 @@ return [ | messages from your application. This will be given to the server on | connection so that the application will be able to send messages. | - */ + */ 'password' => '', @@ -104,7 +104,7 @@ return [ | the path to where Sendmail lives on this server. A default path has | been provided here, which will work well on most of your systems. | - */ + */ 'sendmail' => '', @@ -117,7 +117,7 @@ return [ | web and will instead be written to your application's logs files so | you may inspect the message. This is great for local development. | - */ + */ 'pretend' => false, diff --git a/code/config/queue.php b/code/code/config/queue.php similarity index 100% rename from code/config/queue.php rename to code/code/config/queue.php diff --git a/code/config/services.php b/code/code/config/services.php similarity index 100% rename from code/config/services.php rename to code/code/config/services.php diff --git a/code/config/session.php b/code/code/config/session.php similarity index 100% rename from code/config/session.php rename to code/code/config/session.php diff --git a/code/config/view.php b/code/code/config/view.php similarity index 100% rename from code/config/view.php rename to code/code/config/view.php diff --git a/code/database/.gitignore b/code/code/database/.gitignore similarity index 100% rename from code/database/.gitignore rename to code/code/database/.gitignore diff --git a/code/database/migrations/.gitkeep b/code/code/database/migrations/.gitkeep similarity index 100% rename from code/database/migrations/.gitkeep rename to code/code/database/migrations/.gitkeep diff --git a/code/code/database/migrations/2014_10_12_000000_create_users_table.php b/code/code/database/migrations/2014_10_12_000000_create_users_table.php new file mode 100644 index 000000000..7d20bc83f --- /dev/null +++ b/code/code/database/migrations/2014_10_12_000000_create_users_table.php @@ -0,0 +1,54 @@ +increments('id'); + $table->string('user_name'); + $table->string('first_name'); + $table->string('last_name'); + $table->boolean('gender'); + $table->string('email')->unique(); + $table->boolean('ban'); + $table->string('password', 60); + $table->integer('active'); + $table->string('ext'); + $table->string('phone_number'); + $table->string('mobile'); + $table->string('agent_sign'); + $table->string('account_type'); + $table->string('account_status'); + $table->string('assign_group'); + $table->string('primary_dpt'); + $table->string('agent_tzone'); + $table->string('daylight_save'); + $table->string('limit_access'); + $table->string('directory_listing'); + $table->string('vocation_mode'); + $table->string('company'); + $table->string('role'); + $table->string('profile_pic'); + $table->rememberToken(); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() { + Schema::drop('users'); + } + +} diff --git a/code/database/migrations/2014_10_12_100000_create_password_resets_table.php b/code/code/database/migrations/2014_10_12_100000_create_password_resets_table.php similarity index 100% rename from code/database/migrations/2014_10_12_100000_create_password_resets_table.php rename to code/code/database/migrations/2014_10_12_100000_create_password_resets_table.php diff --git a/code/database/migrations/2015_03_24_061445_create_forms_table.php b/code/code/database/migrations/2015_05_06_073651_create_footers_table.php similarity index 54% rename from code/database/migrations/2015_03_24_061445_create_forms_table.php rename to code/code/database/migrations/2015_05_06_073651_create_footers_table.php index bccf745cb..7d165c031 100644 --- a/code/database/migrations/2015_03_24_061445_create_forms_table.php +++ b/code/code/database/migrations/2015_05_06_073651_create_footers_table.php @@ -1,20 +1,20 @@ increments('id'); + $table->string('title'); + $table->string('footer'); $table->timestamps(); }); } @@ -24,9 +24,8 @@ class CreateFormsTable extends Migration { * * @return void */ - public function down() - { - Schema::drop('forms'); + public function down() { + Schema::drop('footer'); } } diff --git a/code/database/migrations/2015_03_23_050755_create_banlists_table.php b/code/code/database/migrations/2015_05_06_082026_create_footer2s_table.php similarity index 54% rename from code/database/migrations/2015_03_23_050755_create_banlists_table.php rename to code/code/database/migrations/2015_05_06_082026_create_footer2s_table.php index 08a346573..794cf9eff 100644 --- a/code/database/migrations/2015_03_23_050755_create_banlists_table.php +++ b/code/code/database/migrations/2015_05_06_082026_create_footer2s_table.php @@ -1,20 +1,20 @@ increments('id'); + $table->string('title'); + $table->string('footer'); $table->timestamps(); }); } @@ -24,9 +24,8 @@ class CreateBanlistsTable extends Migration { * * @return void */ - public function down() - { - Schema::drop('banlists'); + public function down() { + Schema::drop('footer2'); } } diff --git a/code/code/database/migrations/2015_05_06_092125_create_footer3s_table.php b/code/code/database/migrations/2015_05_06_092125_create_footer3s_table.php new file mode 100644 index 000000000..99ddb5573 --- /dev/null +++ b/code/code/database/migrations/2015_05_06_092125_create_footer3s_table.php @@ -0,0 +1,31 @@ +increments('id'); + $table->string('title'); + $table->string('footer'); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() { + Schema::drop('footer3'); + } + +} diff --git a/code/code/database/migrations/2015_05_06_092132_create_footer4s_table.php b/code/code/database/migrations/2015_05_06_092132_create_footer4s_table.php new file mode 100644 index 000000000..32cea4c0b --- /dev/null +++ b/code/code/database/migrations/2015_05_06_092132_create_footer4s_table.php @@ -0,0 +1,31 @@ +increments('id'); + $table->string('title'); + $table->string('footer'); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() { + Schema::drop('footer4'); + } + +} diff --git a/code/code/database/migrations/2015_05_06_103949_create_timezone_table.php b/code/code/database/migrations/2015_05_06_103949_create_timezone_table.php new file mode 100644 index 000000000..54fb95494 --- /dev/null +++ b/code/code/database/migrations/2015_05_06_103949_create_timezone_table.php @@ -0,0 +1,30 @@ +increments('id'); + $table->string('name'); + $table->string('location'); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() { + Schema::drop('timezone'); + } + +} diff --git a/code/code/database/migrations/2015_05_06_105005_create_ticket_thread_table.php b/code/code/database/migrations/2015_05_06_105005_create_ticket_thread_table.php new file mode 100644 index 000000000..f74c5a8b3 --- /dev/null +++ b/code/code/database/migrations/2015_05_06_105005_create_ticket_thread_table.php @@ -0,0 +1,40 @@ +increments('id'); + $table->integer('pid'); + $table->integer('ticket_id'); + $table->integer('staff_id'); + $table->integer('user_id'); + $table->string('poster'); + $table->string('source'); + $table->boolean('is_internal'); + $table->string('title'); + $table->mediumText('body'); + $table->string('format'); + $table->string('ip_address'); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() { + Schema::drop('ticket_thread'); + } + +} diff --git a/code/code/database/migrations/2015_05_06_110518_create_ticket_status_table.php b/code/code/database/migrations/2015_05_06_110518_create_ticket_status_table.php new file mode 100644 index 000000000..38b6571f1 --- /dev/null +++ b/code/code/database/migrations/2015_05_06_110518_create_ticket_status_table.php @@ -0,0 +1,36 @@ +increments('id'); + $table->string('name'); + $table->string('state'); + $table->integer('mode'); + $table->string('message'); + $table->integer('flags'); + $table->integer('sort'); + $table->string('properties'); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() { + Schema::drop('ticket_status'); + } + +} diff --git a/code/code/database/migrations/2015_05_06_112140_create_ticket_settings_table.php b/code/code/database/migrations/2015_05_06_112140_create_ticket_settings_table.php new file mode 100644 index 000000000..826c2ef88 --- /dev/null +++ b/code/code/database/migrations/2015_05_06_112140_create_ticket_settings_table.php @@ -0,0 +1,46 @@ +increments('id'); + $table->string('num_format'); + $table->string('num_sequence'); + $table->string('priority'); + $table->string('sla'); + $table->string('help_topic'); + $table->string('max_open_ticket'); + $table->string('collision_avoid'); + $table->string('captcha'); + $table->boolean('status'); + $table->boolean('claim_response'); + $table->boolean('assigned_ticket'); + $table->boolean('answered_ticket'); + $table->boolean('agent_mask'); + $table->boolean('html'); + $table->boolean('client_update'); + $table->boolean('max_file_size'); + $table->timestamps(); + }); + + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() { + Schema::drop('ticket_settings'); + } + +} diff --git a/code/code/database/migrations/2015_05_06_114327_create_ticket_priority_table.php b/code/code/database/migrations/2015_05_06_114327_create_ticket_priority_table.php new file mode 100644 index 000000000..452bb3192 --- /dev/null +++ b/code/code/database/migrations/2015_05_06_114327_create_ticket_priority_table.php @@ -0,0 +1,33 @@ +increments('priority_id'); + $table->string('priority'); + $table->string('priority_desc'); + $table->string('priority_color'); + $table->boolean('priority_urgency'); + $table->boolean('ispublic'); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() { + Schema::drop('ticket_priority'); + } + +} diff --git a/code/code/database/migrations/2015_05_06_115133_create_ticket_collaborator_table.php b/code/code/database/migrations/2015_05_06_115133_create_ticket_collaborator_table.php new file mode 100644 index 000000000..e09bdaf93 --- /dev/null +++ b/code/code/database/migrations/2015_05_06_115133_create_ticket_collaborator_table.php @@ -0,0 +1,33 @@ +increments('id'); + $table->boolean('isactive'); + $table->integer('ticket_id'); + $table->integer('user_id'); + $table->string('role'); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() { + Schema::drop('ticket_collaborator'); + } + +} diff --git a/code/code/database/migrations/2015_05_06_115733_create_ticket_attachment_table.php b/code/code/database/migrations/2015_05_06_115733_create_ticket_attachment_table.php new file mode 100644 index 000000000..86771579f --- /dev/null +++ b/code/code/database/migrations/2015_05_06_115733_create_ticket_attachment_table.php @@ -0,0 +1,36 @@ +increments('id'); + $table->string('name'); + $table->integer('thread_id'); + $table->string('size'); + $table->string('type'); + $table->string('poster'); + $table->timestamps(); + }); + + \DB::statement("ALTER TABLE `ticket_attachment` ADD `file` MEDIUMBLOB"); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() { + Schema::drop('ticket_attachment'); + } + +} diff --git a/code/code/database/migrations/2015_05_06_120651_create_ticket_table.php b/code/code/database/migrations/2015_05_06_120651_create_ticket_table.php new file mode 100644 index 000000000..01052b048 --- /dev/null +++ b/code/code/database/migrations/2015_05_06_120651_create_ticket_table.php @@ -0,0 +1,58 @@ +increments('id'); + $table->string('ticket_number'); + $table->integer('user_id'); + $table->integer('dept_id'); + $table->integer('sla_id'); + $table->integer('staff_id'); + $table->integer('team_id'); + $table->integer('priority_id'); + $table->integer('sla'); + $table->integer('help_topic_id'); + $table->integer('status'); + $table->integer('flags'); + $table->integer('ip_address'); + $table->integer('assigned_to'); + $table->integer('lock_by'); + $table->integer('lock_at'); + $table->integer('source'); + $table->integer('isoverdue'); + $table->date('duedate'); + $table->integer('reopened'); + $table->integer('isanswered'); + $table->integer('html'); + $table->integer('is_deleted'); + $table->integer('closed'); + $table->string('last_message'); + $table->string('last_response'); + $table->dateTime('reopened_at'); + $table->dateTime('closed_at'); + $table->dateTime('last_message_at'); + $table->dateTime('last_response_at'); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() { + Schema::drop('tickets'); + } + +} diff --git a/code/code/database/migrations/2015_05_06_122431_create_template_table.php b/code/code/database/migrations/2015_05_06_122431_create_template_table.php new file mode 100644 index 000000000..1ee0bca9e --- /dev/null +++ b/code/code/database/migrations/2015_05_06_122431_create_template_table.php @@ -0,0 +1,34 @@ +increments('id'); + $table->string('name'); + $table->boolean('status'); + $table->string('template_set_to_clone'); + $table->string('language'); + $table->string('internal_note'); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() { + Schema::drop('template'); + } + +} diff --git a/code/code/database/migrations/2015_05_06_122830_create_team_assign_agent_table.php b/code/code/database/migrations/2015_05_06_122830_create_team_assign_agent_table.php new file mode 100644 index 000000000..53d3f3384 --- /dev/null +++ b/code/code/database/migrations/2015_05_06_122830_create_team_assign_agent_table.php @@ -0,0 +1,31 @@ +increments('id'); + $table->string('team_id'); + $table->string('agent_id'); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() { + Schema::drop('team_assign_agent'); + } + +} diff --git a/code/code/database/migrations/2015_05_06_123154_create_team_table.php b/code/code/database/migrations/2015_05_06_123154_create_team_table.php new file mode 100644 index 000000000..fdc21323e --- /dev/null +++ b/code/code/database/migrations/2015_05_06_123154_create_team_table.php @@ -0,0 +1,34 @@ +increments('id'); + $table->string('name'); + $table->boolean('status'); + $table->string('team_lead'); + $table->boolean('assign_alert'); + $table->string('admin_notes'); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() { + Schema::drop('teams'); + } + +} diff --git a/code/code/database/migrations/2015_05_06_123624_create_system_table.php b/code/code/database/migrations/2015_05_06_123624_create_system_table.php new file mode 100644 index 000000000..c9470f710 --- /dev/null +++ b/code/code/database/migrations/2015_05_06_123624_create_system_table.php @@ -0,0 +1,43 @@ +increments('id'); + $table->boolean('status'); + $table->string('url'); + $table->string('name'); + $table->string('department'); + $table->string('page_size'); + $table->string('log_level'); + $table->string('purge_log'); + $table->string('name_format'); + $table->string('time_farmat'); + $table->string('date_format'); + $table->string('date_time_format'); + $table->string('day_date_time'); + $table->string('time_zone'); + $table->string('content'); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() { + Schema::drop('system'); + } + +} diff --git a/code/code/database/migrations/2015_05_06_123928_create_sla_table.php b/code/code/database/migrations/2015_05_06_123928_create_sla_table.php new file mode 100644 index 000000000..e7680f82e --- /dev/null +++ b/code/code/database/migrations/2015_05_06_123928_create_sla_table.php @@ -0,0 +1,36 @@ +increments('id'); + $table->string('name'); + $table->string('grace_period'); + $table->string('admin_note'); + $table->boolean('status'); + $table->boolean('transient'); + $table->boolean('ticket_overdue'); + $table->timestamps(); + }); + + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() { + Schema::drop('sla_plan'); + } + +} diff --git a/code/code/database/migrations/2015_05_06_125328_create_organization_table.php b/code/code/database/migrations/2015_05_06_125328_create_organization_table.php new file mode 100644 index 000000000..595a5bdce --- /dev/null +++ b/code/code/database/migrations/2015_05_06_125328_create_organization_table.php @@ -0,0 +1,34 @@ +increments('id'); + $table->string('name'); + $table->string('phone'); + $table->string('website'); + $table->string('address'); + $table->string('internal_notes'); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() { + Schema::drop('organization'); + } + +} diff --git a/code/code/database/migrations/2015_05_06_125817_create_mailbox_protocol_table.php b/code/code/database/migrations/2015_05_06_125817_create_mailbox_protocol_table.php new file mode 100644 index 000000000..8e0f9574c --- /dev/null +++ b/code/code/database/migrations/2015_05_06_125817_create_mailbox_protocol_table.php @@ -0,0 +1,29 @@ +increments('id'); + $table->string('name'); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() { + Schema::drop('mailbox_protocol'); + } + +} diff --git a/code/database/migrations/2015_04_07_073117_create_logs_table.php b/code/code/database/migrations/2015_05_06_130627_create_log_table.php similarity index 61% rename from code/database/migrations/2015_04_07_073117_create_logs_table.php rename to code/code/database/migrations/2015_05_06_130627_create_log_table.php index 3538ac4b6..6dabba85d 100644 --- a/code/database/migrations/2015_04_07_073117_create_logs_table.php +++ b/code/code/database/migrations/2015_05_06_130627_create_log_table.php @@ -1,21 +1,19 @@ increments('id'); - $table->timestamps(); + $table->string('level'); }); } @@ -24,8 +22,7 @@ class CreateLogsTable extends Migration { * * @return void */ - public function down() - { + public function down() { Schema::drop('logs'); } diff --git a/code/database/migrations/2015_03_23_083455_create_languages_table.php b/code/code/database/migrations/2015_05_06_131238_create_languages_table.php similarity index 66% rename from code/database/migrations/2015_03_23_083455_create_languages_table.php rename to code/code/database/migrations/2015_05_06_131238_create_languages_table.php index 38e0bd8f8..0c16e58a8 100644 --- a/code/database/migrations/2015_03_23_083455_create_languages_table.php +++ b/code/code/database/migrations/2015_05_06_131238_create_languages_table.php @@ -1,7 +1,7 @@ increments('id'); - $table->timestamps(); + $table->string('name'); + $table->string('locale'); }); } @@ -24,8 +23,7 @@ class CreateLanguagesTable extends Migration { * * @return void */ - public function down() - { + public function down() { Schema::drop('languages'); } diff --git a/code/code/database/migrations/2015_05_06_132844_create_help_topic_table.php b/code/code/database/migrations/2015_05_06_132844_create_help_topic_table.php new file mode 100644 index 000000000..ef4cf7d47 --- /dev/null +++ b/code/code/database/migrations/2015_05_06_132844_create_help_topic_table.php @@ -0,0 +1,43 @@ +increments('id'); + $table->string('topic'); + $table->string('parent_topic'); + $table->string('custom_form'); + $table->string('department'); + $table->string('ticket_status'); + $table->string('priority'); + $table->string('sla_plan'); + $table->string('thank_page'); + $table->string('ticket_num_format'); + $table->string('internal_notes'); + $table->boolean('status'); + $table->boolean('type'); + $table->boolean('auto_assign'); + $table->boolean('auto_response'); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() { + Schema::drop('help_topic'); + } + +} diff --git a/code/code/database/migrations/2015_05_06_133346_create_guest_note_table.php b/code/code/database/migrations/2015_05_06_133346_create_guest_note_table.php new file mode 100644 index 000000000..69760924d --- /dev/null +++ b/code/code/database/migrations/2015_05_06_133346_create_guest_note_table.php @@ -0,0 +1,30 @@ +increments('id'); + $table->string('heading'); + $table->string('content'); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() { + Schema::drop('guest_note'); + } + +} diff --git a/code/code/database/migrations/2015_05_07_040647_create_group_assign_department_table.php b/code/code/database/migrations/2015_05_07_040647_create_group_assign_department_table.php new file mode 100644 index 000000000..3fee92a92 --- /dev/null +++ b/code/code/database/migrations/2015_05_07_040647_create_group_assign_department_table.php @@ -0,0 +1,31 @@ +increments('id'); + $table->integer('group_id'); + $table->integer('department_id'); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() { + Schema::drop('group_assign_department'); + } + +} diff --git a/code/code/database/migrations/2015_05_07_040934_create_groups_table.php b/code/code/database/migrations/2015_05_07_040934_create_groups_table.php new file mode 100644 index 000000000..7919323f4 --- /dev/null +++ b/code/code/database/migrations/2015_05_07_040934_create_groups_table.php @@ -0,0 +1,44 @@ +increments('id'); + $table->string('name'); + $table->boolean('group_status'); + $table->boolean('can_create_ticket'); + $table->boolean('can_edit_ticket'); + $table->boolean('can_post_ticket'); + $table->boolean('can_close_ticket'); + $table->boolean('can_assign_ticket'); + $table->boolean('can_trasfer_ticket'); + $table->boolean('can_delete_ticket'); + $table->boolean('can_ban_email'); + $table->boolean('can_manage_canned'); + $table->boolean('can_manage_faq'); + $table->boolean('can_view_agent_stats'); + $table->boolean('department_access'); + $table->string('admin_notes'); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() { + Schema::drop('groups'); + } + +} diff --git a/code/code/database/migrations/2015_05_07_041448_create_form_value_table.php b/code/code/database/migrations/2015_05_07_041448_create_form_value_table.php new file mode 100644 index 000000000..82911f729 --- /dev/null +++ b/code/code/database/migrations/2015_05_07_041448_create_form_value_table.php @@ -0,0 +1,31 @@ +increments('id'); + $table->integer('form_detail_id'); + $table->string('values'); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() { + Schema::drop('form_value'); + } + +} diff --git a/code/code/database/migrations/2015_05_07_041459_create_form_name_table.php b/code/code/database/migrations/2015_05_07_041459_create_form_name_table.php new file mode 100644 index 000000000..fd6e4016f --- /dev/null +++ b/code/code/database/migrations/2015_05_07_041459_create_form_name_table.php @@ -0,0 +1,32 @@ +increments('id'); + $table->string('name'); + $table->string('status'); + $table->string('no_of_fields'); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() { + Schema::drop('form_name'); + } + +} diff --git a/code/database/migrations/2015_04_10_070455_create_form_details_table.php b/code/code/database/migrations/2015_05_07_041509_create_form_details_table.php similarity index 63% rename from code/database/migrations/2015_04_10_070455_create_form_details_table.php rename to code/code/database/migrations/2015_05_07_041509_create_form_details_table.php index 888e1a30e..fdc3b7794 100644 --- a/code/database/migrations/2015_04_10_070455_create_form_details_table.php +++ b/code/code/database/migrations/2015_05_07_041509_create_form_details_table.php @@ -1,7 +1,7 @@ increments('id'); + $table->integer('form_name_id'); + $table->string('label'); + $table->string('type'); $table->timestamps(); }); } @@ -24,8 +25,7 @@ class CreateFormDetailsTable extends Migration { * * @return void */ - public function down() - { + public function down() { Schema::drop('form_details'); } diff --git a/code/code/database/migrations/2015_05_07_043529_create_emails_table.php b/code/code/database/migrations/2015_05_07_043529_create_emails_table.php new file mode 100644 index 000000000..6298dba06 --- /dev/null +++ b/code/code/database/migrations/2015_05_07_043529_create_emails_table.php @@ -0,0 +1,52 @@ +increments('id'); + $table->string('email_address'); + $table->string('email_name'); + $table->string('department'); + $table->string('priority'); + $table->string('help_topic'); + $table->string('user_name'); + $table->string('password'); + $table->string('fetching_host'); + $table->string('fetching_port'); + $table->string('mailbox_protocol'); + $table->string('imap_config'); + $table->string('folder'); + $table->string('sending_host'); + $table->string('sending_port'); + $table->string('internal_notes'); + $table->boolean('auto_response'); + $table->boolean('fetching_status'); + $table->boolean('move_to_folder'); + $table->boolean('delete_email'); + $table->boolean('do_nothing'); + $table->boolean('sending_status'); + $table->boolean('authentication'); + $table->boolean('header_spoofing'); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() { + Schema::drop('emails'); + } + +} diff --git a/code/code/database/migrations/2015_05_07_043904_create_email_table.php b/code/code/database/migrations/2015_05_07_043904_create_email_table.php new file mode 100644 index 000000000..26ab44dbc --- /dev/null +++ b/code/code/database/migrations/2015_05_07_043904_create_email_table.php @@ -0,0 +1,39 @@ +increments('id'); + $table->string('template'); + $table->string('sys_email'); + $table->string('alert_email'); + $table->string('admin_email'); + $table->string('mta'); + $table->boolean('email_fetching'); + $table->boolean('strip'); + $table->boolean('separator'); + $table->boolean('all_emails'); + $table->boolean('email_collaborator'); + $table->boolean('attachment'); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() { + Schema::drop('email'); + } +} diff --git a/code/code/database/migrations/2015_05_07_044229_create_department_table.php b/code/code/database/migrations/2015_05_07_044229_create_department_table.php new file mode 100644 index 000000000..d387ee4f4 --- /dev/null +++ b/code/code/database/migrations/2015_05_07_044229_create_department_table.php @@ -0,0 +1,42 @@ +increments('id'); + $table->string('name'); + $table->string('type'); + $table->string('sla'); + $table->string('manager'); + $table->string('ticket_assignment'); + $table->string('outgoing_email'); + $table->string('template_set'); + $table->string('auto_ticket_response'); + $table->string('auto_message_response'); + $table->string('auto_response_email'); + $table->string('recipient'); + $table->string('group_access'); + $table->string('department_sign'); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() { + Schema::drop('department'); + } + +} diff --git a/code/database/migrations/2015_04_01_061538_create_mailbox_protocols_table.php b/code/code/database/migrations/2015_05_07_044521_create_date_time_format_table.php similarity index 52% rename from code/database/migrations/2015_04_01_061538_create_mailbox_protocols_table.php rename to code/code/database/migrations/2015_05_07_044521_create_date_time_format_table.php index 4c72ee2b5..f55c96e10 100644 --- a/code/database/migrations/2015_04_01_061538_create_mailbox_protocols_table.php +++ b/code/code/database/migrations/2015_05_07_044521_create_date_time_format_table.php @@ -1,21 +1,19 @@ increments('id'); - $table->timestamps(); + $table->string('format'); }); } @@ -24,9 +22,9 @@ class CreateMailboxProtocolsTable extends Migration { * * @return void */ - public function down() - { - Schema::drop('mailbox_protocols'); + public function down() { + Schema::create('date_time_format'); + } } diff --git a/code/code/database/migrations/2015_05_07_045158_create_date_format_table.php b/code/code/database/migrations/2015_05_07_045158_create_date_format_table.php new file mode 100644 index 000000000..714038b36 --- /dev/null +++ b/code/code/database/migrations/2015_05_07_045158_create_date_format_table.php @@ -0,0 +1,29 @@ +increments('id'); + $table->string('format'); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() { + Schema::drop('date_format'); + } + +} diff --git a/code/code/database/migrations/2015_05_07_045611_create_company_table.php b/code/code/database/migrations/2015_05_07_045611_create_company_table.php new file mode 100644 index 000000000..956632907 --- /dev/null +++ b/code/code/database/migrations/2015_05_07_045611_create_company_table.php @@ -0,0 +1,38 @@ +increments('id'); + $table->string('company_name'); + $table->string('website'); + $table->string('phone'); + $table->string('address'); + $table->string('landing_page'); + $table->string('offline_page'); + $table->string('thank_page'); + $table->string('logo'); + $table->string('use_logo'); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() { + Schema::drop('company'); + } + +} diff --git a/code/code/database/migrations/2015_05_07_052638_create_banlist_table.php b/code/code/database/migrations/2015_05_07_052638_create_banlist_table.php new file mode 100644 index 000000000..9aa21d9eb --- /dev/null +++ b/code/code/database/migrations/2015_05_07_052638_create_banlist_table.php @@ -0,0 +1,32 @@ +increments('id'); + $table->boolean('ban_status'); + $table->string('email_address'); + $table->string('internal_notes'); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() { + Schema::drop('banlist'); + } + +} diff --git a/code/code/database/migrations/2015_05_07_052924_create_auto_response_table.php b/code/code/database/migrations/2015_05_07_052924_create_auto_response_table.php new file mode 100644 index 000000000..83ef0d754 --- /dev/null +++ b/code/code/database/migrations/2015_05_07_052924_create_auto_response_table.php @@ -0,0 +1,35 @@ +increments('id'); + $table->boolean('new_ticket'); + $table->boolean('agent_new_ticket'); + $table->boolean('submitter'); + $table->boolean('participants'); + $table->boolean('overlimit'); + $table->timestamps(); + }); + + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() { + Schema::drop('auto_response'); + } + +} diff --git a/code/code/database/migrations/2015_05_07_053318_create_alert_notice_table.php b/code/code/database/migrations/2015_05_07_053318_create_alert_notice_table.php new file mode 100644 index 000000000..1037d13ce --- /dev/null +++ b/code/code/database/migrations/2015_05_07_053318_create_alert_notice_table.php @@ -0,0 +1,58 @@ +increments('id'); + $table->boolean('ticket_status'); + $table->boolean('ticket_admin_email'); + $table->boolean('ticket_department_manager'); + $table->boolean('ticket_department_member'); + $table->boolean('ticket_organization_accmanager'); + $table->boolean('message_status'); + $table->boolean('message_last_responder'); + $table->boolean('message_assigned_agent'); + $table->boolean('message_department_manager'); + $table->boolean('message_organization_accmanager'); + $table->boolean('internal_status'); + $table->boolean('internal_last_responder'); + $table->boolean('internal_assigned_agent'); + $table->boolean('internal_department_manager'); + $table->boolean('assignment_status'); + $table->boolean('assignment_assigned_agent'); + $table->boolean('assignment_team_leader'); + $table->boolean('assignment_team_member'); + $table->boolean('transfer_status'); + $table->boolean('transfer_assigned_agent'); + $table->boolean('transfer_department_manager'); + $table->boolean('transfer_department_member'); + $table->boolean('overdue_status'); + $table->boolean('overdue_assigned_agent'); + $table->boolean('overdue_department_manager'); + $table->boolean('overdue_department_member'); + $table->boolean('system_error'); + $table->boolean('sql_error'); + $table->boolean('excessive_failure'); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() { + Schema::create('alert_notice'); + } + +} diff --git a/code/code/database/migrations/2015_05_07_053704_create_access_table.php b/code/code/database/migrations/2015_05_07_053704_create_access_table.php new file mode 100644 index 000000000..241c18708 --- /dev/null +++ b/code/code/database/migrations/2015_05_07_053704_create_access_table.php @@ -0,0 +1,39 @@ +increments('id'); + $table->string('password_expire'); + $table->string('reg_method'); + $table->string('user_session'); + $table->string('agent_session'); + $table->string('reset_ticket_expire'); + $table->boolean('password_reset'); + $table->boolean('bind_agent_ip'); + $table->boolean('reg_require'); + $table->boolean('quick_access'); + $table->timestamps(); + }); + + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() { + Schema::create('access'); + } + +} diff --git a/code/code/database/migrations/2015_05_07_063628_create_time_format_table.php b/code/code/database/migrations/2015_05_07_063628_create_time_format_table.php new file mode 100644 index 000000000..67aec17a5 --- /dev/null +++ b/code/code/database/migrations/2015_05_07_063628_create_time_format_table.php @@ -0,0 +1,30 @@ +increments('id'); + $table->string('format'); + }); + + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() { + Schema::drop('time_format'); + } + +} diff --git a/code/database/migrations/2015_03_25_050723_create_systems_table.php b/code/code/database/migrations/2015_06_09_062121_create_priority_table.php similarity index 54% rename from code/database/migrations/2015_03_25_050723_create_systems_table.php rename to code/code/database/migrations/2015_06_09_062121_create_priority_table.php index 6e3a0317f..c00862fd2 100644 --- a/code/database/migrations/2015_03_25_050723_create_systems_table.php +++ b/code/code/database/migrations/2015_06_09_062121_create_priority_table.php @@ -1,21 +1,19 @@ increments('id'); - $table->timestamps(); + $table->string('name'); }); } @@ -24,9 +22,8 @@ class CreateSystemsTable extends Migration { * * @return void */ - public function down() - { - Schema::drop('systems'); + public function down() { + Schema::drop('priority'); } } diff --git a/code/database/migrations/2015_03_23_081500_create_templates_table.php b/code/code/database/migrations/2015_07_10_061107_create_ticketsource_table.php similarity index 60% rename from code/database/migrations/2015_03_23_081500_create_templates_table.php rename to code/code/database/migrations/2015_07_10_061107_create_ticketsource_table.php index ad1a6c6c5..550fe3c96 100644 --- a/code/database/migrations/2015_03_23_081500_create_templates_table.php +++ b/code/code/database/migrations/2015_07_10_061107_create_ticketsource_table.php @@ -3,7 +3,7 @@ use Illuminate\Database\Schema\Blueprint; use Illuminate\Database\Migrations\Migration; -class CreateTemplatesTable extends Migration { +class CreateTicketsourceTable extends Migration { /** * Run the migrations. @@ -12,10 +12,10 @@ class CreateTemplatesTable extends Migration { */ public function up() { - Schema::create('templates', function(Blueprint $table) - { + Schema::create('ticket_source', function (Blueprint $table) { $table->increments('id'); - $table->timestamps(); + $table->string('name'); + $table->string('value'); }); } @@ -26,7 +26,7 @@ class CreateTemplatesTable extends Migration { */ public function down() { - Schema::drop('templates'); + Schema::drop('ticket_source'); } } diff --git a/code/database/migrations/2014_10_12_000000_create_users_table.php b/code/code/database/migrations/2015_08_10_114142_create_smtp_table.php similarity index 54% rename from code/database/migrations/2014_10_12_000000_create_users_table.php rename to code/code/database/migrations/2015_08_10_114142_create_smtp_table.php index 36a1db9bc..20e6e5d6a 100644 --- a/code/database/migrations/2014_10_12_000000_create_users_table.php +++ b/code/code/database/migrations/2015_08_10_114142_create_smtp_table.php @@ -3,7 +3,7 @@ use Illuminate\Database\Schema\Blueprint; use Illuminate\Database\Migrations\Migration; -class CreateUsersTable extends Migration { +class CreateSmtpTable extends Migration { /** * Run the migrations. @@ -12,14 +12,14 @@ class CreateUsersTable extends Migration { */ public function up() { - Schema::create('users', function(Blueprint $table) - { + Schema::create('send_mail', function (Blueprint $table) { $table->increments('id'); + $table->string('host'); + $table->string('port'); + $table->string('encryption'); $table->string('name'); - $table->string('email')->unique(); - $table->string('password', 60); - $table->rememberToken(); - $table->timestamps(); + $table->string('email'); + $table->string('password'); }); } @@ -30,7 +30,7 @@ class CreateUsersTable extends Migration { */ public function down() { - Schema::drop('users'); + Schema::drop('send_mail'); } } diff --git a/code/database/seeds/.gitkeep b/code/code/database/seeds/.gitkeep similarity index 100% rename from code/database/seeds/.gitkeep rename to code/code/database/seeds/.gitkeep diff --git a/code/code/database/seeds/DatabaseSeeder.php b/code/code/database/seeds/DatabaseSeeder.php new file mode 100644 index 000000000..db7039d66 --- /dev/null +++ b/code/code/database/seeds/DatabaseSeeder.php @@ -0,0 +1,301 @@ + 'H:i:s')); + Time_format::create(array('format' => 'H.i.s')); + + $timezone = ['Pacific/Midway' => '(GMT-11:00) Midway Island', + 'US/Samoa' => '(GMT-11:00) Samoa', + 'US/Hawaii' => '(GMT-10:00) Hawaii', + 'US/Alaska' => '(GMT-09:00) Alaska', + 'US/Pacific' => '(GMT-08:00) Pacific Time (US & Canada)', + 'America/Tijuana' => '(GMT-08:00) Tijuana', + 'US/Arizona' => '(GMT-07:00) Arizona', + 'US/Mountain' => '(GMT-07:00) Mountain Time (US & Canada)', + 'America/Chihuahua' => '(GMT-07:00) Chihuahua', + 'America/Mazatlan' => '(GMT-07:00) Mazatlan', + 'America/Mexico_City' => '(GMT-06:00) Mexico City', + 'America/Monterrey' => '(GMT-06:00) Monterrey', + 'Canada/Saskatchewan' => '(GMT-06:00) Saskatchewan', + 'US/Central' => '(GMT-06:00) Central Time (US & Canada)', + 'US/Eastern' => '(GMT-05:00) Eastern Time (US & Canada)', + 'US/East-Indiana' => '(GMT-05:00) Indiana (East)', + 'America/Bogota' => '(GMT-05:00) Bogota', + 'America/Lima' => '(GMT-05:00) Lima', + 'America/Caracas' => '(GMT-04:30) Caracas', + 'Canada/Atlantic' => '(GMT-04:00) Atlantic Time (Canada)', + 'America/La_Paz' => '(GMT-04:00) La Paz', + 'America/Santiago' => '(GMT-04:00) Santiago', + 'Canada/Newfoundland' => '(GMT-03:30) Newfoundland', + 'America/Buenos_Aires' => '(GMT-03:00) Buenos Aires', + 'Greenland' => '(GMT-03:00) Greenland', + 'Atlantic/Stanley' => '(GMT-02:00) Stanley', + 'Atlantic/Azores' => '(GMT-01:00) Azores', + 'Atlantic/Cape_Verde' => '(GMT-01:00) Cape Verde Is.', + 'Africa/Casablanca' => '(GMT) Casablanca', + 'Europe/Dublin' => '(GMT) Dublin', + 'Europe/Lisbon' => '(GMT) Lisbon', + 'Europe/London' => '(GMT) London', + 'Africa/Monrovia' => '(GMT) Monrovia', + 'Europe/Amsterdam' => '(GMT+01:00) Amsterdam', + 'Europe/Belgrade' => '(GMT+01:00) Belgrade', + 'Europe/Berlin' => '(GMT+01:00) Berlin', + 'Europe/Bratislava' => '(GMT+01:00) Bratislava', + 'Europe/Brussels' => '(GMT+01:00) Brussels', + 'Europe/Budapest' => '(GMT+01:00) Budapest', + 'Europe/Copenhagen' => '(GMT+01:00) Copenhagen', + 'Europe/Ljubljana' => '(GMT+01:00) Ljubljana', + 'Europe/Madrid' => '(GMT+01:00) Madrid', + 'Europe/Paris' => '(GMT+01:00) Paris', + 'Europe/Prague' => '(GMT+01:00) Prague', + 'Europe/Rome' => '(GMT+01:00) Rome', + 'Europe/Sarajevo' => '(GMT+01:00) Sarajevo', + 'Europe/Skopje' => '(GMT+01:00) Skopje', + 'Europe/Stockholm' => '(GMT+01:00) Stockholm', + 'Europe/Vienna' => '(GMT+01:00) Vienna', + 'Europe/Warsaw' => '(GMT+01:00) Warsaw', + 'Europe/Zagreb' => '(GMT+01:00) Zagreb', + 'Europe/Athens' => '(GMT+02:00) Athens', + 'Europe/Bucharest' => '(GMT+02:00) Bucharest', + 'Africa/Cairo' => '(GMT+02:00) Cairo', + 'Africa/Harare' => '(GMT+02:00) Harare', + 'Europe/Helsinki' => '(GMT+02:00) Helsinki', + 'Europe/Istanbul' => '(GMT+02:00) Istanbul', + 'Asia/Jerusalem' => '(GMT+02:00) Jerusalem', + 'Europe/Kiev' => '(GMT+02:00) Kyiv', + 'Europe/Minsk' => '(GMT+02:00) Minsk', + 'Europe/Riga' => '(GMT+02:00) Riga', + 'Europe/Sofia' => '(GMT+02:00) Sofia', + 'Europe/Tallinn' => '(GMT+02:00) Tallinn', + 'Europe/Vilnius' => '(GMT+02:00) Vilnius', + 'Asia/Baghdad' => '(GMT+03:00) Baghdad', + 'Asia/Kuwait' => '(GMT+03:00) Kuwait', + 'Africa/Nairobi' => '(GMT+03:00) Nairobi', + 'Asia/Riyadh' => '(GMT+03:00) Riyadh', + 'Asia/Tehran' => '(GMT+03:30) Tehran', + 'Europe/Moscow' => '(GMT+04:00) Moscow', + 'Asia/Baku' => '(GMT+04:00) Baku', + 'Europe/Volgograd' => '(GMT+04:00) Volgograd', + 'Asia/Muscat' => '(GMT+04:00) Muscat', + 'Asia/Tbilisi' => '(GMT+04:00) Tbilisi', + 'Asia/Yerevan' => '(GMT+04:00) Yerevan', + 'Asia/Kabul' => '(GMT+04:30) Kabul', + 'Asia/Karachi' => '(GMT+05:00) Karachi', + 'Asia/Tashkent' => '(GMT+05:00) Tashkent', + 'Asia/Kolkata' => '(GMT+05:30) Kolkata', + 'Asia/Kathmandu' => '(GMT+05:45) Kathmandu', + 'Asia/Yekaterinburg' => '(GMT+06:00) Ekaterinburg', + 'Asia/Almaty' => '(GMT+06:00) Almaty', + 'Asia/Dhaka' => '(GMT+06:00) Dhaka', + 'Asia/Novosibirsk' => '(GMT+07:00) Novosibirsk', + 'Asia/Bangkok' => '(GMT+07:00) Bangkok', + 'Asia/Ho_Chi_Minh' => '(GMT+07.00) Ho Chi Minh', + 'Asia/Jakarta' => '(GMT+07:00) Jakarta', + 'Asia/Krasnoyarsk' => '(GMT+08:00) Krasnoyarsk', + 'Asia/Chongqing' => '(GMT+08:00) Chongqing', + 'Asia/Hong_Kong' => '(GMT+08:00) Hong Kong', + 'Asia/Kuala_Lumpur' => '(GMT+08:00) Kuala Lumpur', + 'Australia/Perth' => '(GMT+08:00) Perth', + 'Asia/Singapore' => '(GMT+08:00) Singapore', + 'Asia/Taipei' => '(GMT+08:00) Taipei', + 'Asia/Ulaanbaatar' => '(GMT+08:00) Ulaan Bataar', + 'Asia/Urumqi' => '(GMT+08:00) Urumqi', + 'Asia/Irkutsk' => '(GMT+09:00) Irkutsk', + 'Asia/Seoul' => '(GMT+09:00) Seoul', + 'Asia/Tokyo' => '(GMT+09:00) Tokyo', + 'Australia/Adelaide' => '(GMT+09:30) Adelaide', + 'Australia/Darwin' => '(GMT+09:30) Darwin', + 'Asia/Yakutsk' => '(GMT+10:00) Yakutsk', + 'Australia/Brisbane' => '(GMT+10:00) Brisbane', + 'Australia/Canberra' => '(GMT+10:00) Canberra', + 'Pacific/Guam' => '(GMT+10:00) Guam', + 'Australia/Hobart' => '(GMT+10:00) Hobart', + 'Australia/Melbourne' => '(GMT+10:00) Melbourne', + 'Pacific/Port_Moresby' => '(GMT+10:00) Port Moresby', + 'Australia/Sydney' => '(GMT+10:00) Sydney', + 'Asia/Vladivostok' => '(GMT+11:00) Vladivostok', + 'Asia/Magadan' => '(GMT+12:00) Magadan', + 'Pacific/Auckland' => '(GMT+12:00) Auckland', + 'Pacific/Fiji' => '(GMT+12:00) Fiji']; + + foreach ($timezone as $name => $location) { + Timezones::create(array('name' => $name, 'location' => $location)); + } + + Ticket_status::create(array('name' => 'Open', 'state' => 'open', 'mode' => '3', 'message'=>'Ticket have been Reopened by', 'flags' => '0', 'sort' => '1', 'properties' => 'Open tickets.')); + Ticket_status::create(array('name' => 'Resolved', 'state' => 'closed', 'mode' => '1','message'=>'Ticket have been Resolved by', 'flags' => '0', 'sort' => '2', 'properties' => 'Resolved tickets.')); + Ticket_status::create(array('name' => 'Closed', 'state' => 'closed', 'mode' => '3','message'=>'Ticket have been Closed by', 'flags' => '0', 'sort' => '3', 'properties' => 'Closed tickets. Tickets will still be accessible on client and staff panels.')); + Ticket_status::create(array('name' => 'Archived', 'state' => 'archived', 'mode' => '3','message'=>'Ticket have been Archived by', 'flags' => '0', 'sort' => '4', 'properties' => 'Tickets only adminstratively available but no longer accessible on ticket queues and client panel.')); + Ticket_status::create(array('name' => 'Deleted', 'state' => 'deleted', 'mode' => '3','message'=>'Ticket have been Deleted by', 'flags' => '0', 'sort' => '5', 'properties' => 'Tickets queued for deletion. Not accessible on ticket queues.')); + + Ticket::create(array('num_format' => '#ABCD 1234 1234567', 'num_sequence' => '0', 'priority' => 'low', 'sla' => '12 Hours', 'help_topic' => 'support query')); + + Ticket_priority::create(array('priority' => 'low', 'priority_desc' => 'Low', 'priority_color' => 'info', 'priority_urgency' => '4', 'ispublic' => '1')); + Ticket_priority::create(array('priority' => 'normal', 'priority_desc' => 'Normal', 'priority_color' => 'info', 'priority_urgency' => '3', 'ispublic' => '1')); + Ticket_priority::create(array('priority' => 'high', 'priority_desc' => 'High', 'priority_color' => 'warning', 'priority_urgency' => '2', 'ispublic' => '1')); + Ticket_priority::create(array('priority' => 'emergency', 'priority_desc' => 'Emergency', 'priority_color' => 'danger', 'priority_urgency' => '1', 'ispublic' => '1')); + + Sla_plan::create(array('name' => 'Sla 1', 'grace_period' => '6 Hours', 'status' => '1')); + Sla_plan::create(array('name' => 'Sla 2', 'grace_period' => '12 Hours', 'status' => '1')); + Sla_plan::create(array('name' => 'Sla 3', 'grace_period' => '24 Hours', 'status' => '1')); + + $mailbox = ['IMAP+SSl', 'IMAP', 'POP+SSL', 'POP']; + + foreach ($mailbox as $protocol) { + MailboxProtocol::create(array('name' => $protocol)); + } + + $logs = ['WARN', 'DEBUG', 'ERROR']; + + foreach ($logs as $log) { + Logs::create(['level' => $log]); + } + + $languages = [ + 'English' => 'en', + 'Italian' => 'it', + 'German' => 'de', + 'French' => 'fr', + 'Brazilian Portuguese' => 'pt_BR', + 'Dutch' => 'nl', + 'Spanish' => 'es', + 'Norwegian' => 'nb_NO', + 'Danish' => 'da']; + + foreach ($languages as $language => $locale) { + Languages::create(['name' => $language, 'locale' => $locale]); + } + + Guest_note::create(['heading' => 'Welcome to the Support Center', 'content' => 'Hello this is a new helpdesk support system ans it is in the development phase.']); + + Form_name::create(['name' => 'form', 'status' => '1', 'no_of_fields' => '2']); + + Form_details::create(['form_name_id' => '1', 'label' => 'Name', 'type' => 'text']); + Form_details::create(['form_name_id' => '1', 'label' => 'Phone', 'type' => 'number']); + Form_details::create(['form_name_id' => '1', 'label' => 'Email', 'type' => 'text']); + Form_details::create(['form_name_id' => '1', 'label' => 'Subject', 'type' => 'text']); + Form_details::create(['form_name_id' => '1', 'label' => 'Details', 'type' => 'textarea']); + + $date_time_formats = [ + 'd/m/Y H:i:s', + 'd.m.Y H:i:s', + 'd-m-Y H:i:s', + 'm/d/Y H:i:s', + 'm.d.Y H:i:s', + 'm-d-Y H:i:s', + 'Y/m/d H:i:s', + 'Y.m.d H:i:s', + 'Y-m-d H:i:s']; + + foreach ($date_time_formats as $date_time_format) { + Date_time_format::create(['format' => $date_time_format]); + } + + $date_formats = [ + 'dd/mm/yyyy', + 'dd-mm-yyyy', + 'dd.mm.yyyy', + 'mm/dd/yyyy', + 'mm:dd:yyyy', + 'mm-dd-yyyy', + 'dd-mm-yyyy', + 'yyyy/mm/dd', + 'yyyy.mm.dd', + 'yyyy-mm-dd']; + + foreach ($date_formats as $date_format) { + Date_format::create(['format' => $date_format]); + } + + Teams::create(array('name' => 'Level 1 Support')); + Teams::create(array('name' => 'Level 2 Support')); + Teams::create(array('name' => 'Developer')); + + Groups::create(array('name' => 'Group A', 'group_status' => '1', 'can_create_ticket' => '1', 'can_edit_ticket' => '1', 'can_post_ticket' => '1', 'can_close_ticket' => '1', 'can_assign_ticket' => '1', 'can_transfer_ticket' => '1', 'can_delete_ticket' => '1', 'can_ban_email' => '1', 'can_manage_canned' => '1', 'can_manage_faq' => '1', 'can_view_agent_stats' => '1', 'department_access' => '1')); + Groups::create(array('name' => 'Group B', 'group_status' => '1', 'can_create_ticket' => '1', 'can_edit_ticket' => '0', 'can_post_ticket' => '0', 'can_close_ticket' => '1', 'can_assign_ticket' => '1', 'can_transfer_ticket' => '1', 'can_delete_ticket' => '1', 'can_ban_email' => '1', 'can_manage_canned' => '1', 'can_manage_faq' => '1', 'can_view_agent_stats' => '1', 'department_access' => '1')); + Groups::create(array('name' => 'Group C', 'group_status' => '1', 'can_create_ticket' => '0', 'can_edit_ticket' => '0', 'can_post_ticket' => '0', 'can_close_ticket' => '1', 'can_assign_ticket' => '0', 'can_transfer_ticket' => '0', 'can_delete_ticket' => '0', 'can_ban_email' => '0', 'can_manage_canned' => '0', 'can_manage_faq' => '0', 'can_view_agent_stats' => '0', 'department_access' => '0')); + + Department::create(array('name' => 'Support')); + Department::create(array('name' => 'Sales')); + Department::create(array('name' => 'Operation')); + + // Access::create(array('password_expire' => '1 Months', 'reg_method' => 'disable')); + // Access::create(array('password_expire' => '2 Months', 'reg_method' => 'private')); + // Access::create(array('password_expire' => '6 Months', 'reg_method' => 'public')); + + // Company::create(array('company_name' => 'D company', 'website' => 'dcompany.org', 'phone' => '8606574126')); + + // Emails::create(array('email_address' => 'maintanance@dcompany.com', 'email_name' => 'maintain', 'department' => 'maintanance', 'priority' => 'low', 'help_topic' => 'maintanance query', 'user_name' => 'maintanance')); + + help_topic::create(array('topic' => 'Support query', 'parent_topic' => 'Support query', 'custom_form' => '1', 'department' => '1', 'ticket_status' => '1', 'priority' => '2', 'sla_plan' => '1', 'ticket_num_format' => '1', 'status' => '1', 'type' => '1', 'auto_response' => '0')); + help_topic::create(array('topic' => 'Sales query', 'parent_topic' => 'Sale query', 'custom_form' => '1', 'department' => '2', 'ticket_status' => '1', 'priority' => '2', 'sla_plan' => '1', 'ticket_num_format' => '1', 'status' => '1', 'type' => '1', 'auto_response' => '0')); + help_topic::create(array('topic' => 'Operational query', 'parent_topic' => 'Operational query', 'custom_form' => '1', 'department' => '3', 'ticket_status' => '1', 'priority' => '2', 'sla_plan' => '1', 'ticket_num_format' => '1', 'status' => '1', 'type' => '1', 'auto_response' => '0')); + + Priority::create(array('name' => 'low')); + Priority::create(array('name' => 'high')); + + Access::create(array('id' => '1')); + Alert::create(array('id' => '1')); + Company::create(array('id' => '1')); + Email::create(array('id' => '1')); + Responder::create(array('id' => '1')); + System::create(array('id' => '1')); + Footer::create(array('id' => '1')); + Footer2::create(array('id' => '1')); + Footer3::create(array('id' => '1')); + Footer4::create(array('id' => '1')); + // Ticket::create(array('id' => '1')); + + Ticket_source::create(array('name'=>'web', 'value'=>'Web')); + Ticket_source::create(array('name'=>'email', 'value'=>'E-mail')); + Ticket_source::create(array('name'=>'agent', 'value'=>'Agent Panel')); + + Smtp::create(array('id' => '1')); + + } +} \ No newline at end of file diff --git a/code/gulpfile.js b/code/code/gulpfile.js similarity index 100% rename from code/gulpfile.js rename to code/code/gulpfile.js diff --git a/code/code/nbproject/private/private.properties b/code/code/nbproject/private/private.properties new file mode 100644 index 000000000..fa0c378f8 --- /dev/null +++ b/code/code/nbproject/private/private.properties @@ -0,0 +1,6 @@ +copy.src.files=false +copy.src.on.open=false +copy.src.target= +index.file= +run.as=LOCAL +url=http://localhost/faveonew/ diff --git a/code/code/nbproject/private/private.xml b/code/code/nbproject/private/private.xml new file mode 100644 index 000000000..6807a2ba1 --- /dev/null +++ b/code/code/nbproject/private/private.xml @@ -0,0 +1,7 @@ + + + + + + + diff --git a/code/code/nbproject/project.properties b/code/code/nbproject/project.properties new file mode 100644 index 000000000..712f9b035 --- /dev/null +++ b/code/code/nbproject/project.properties @@ -0,0 +1,7 @@ +include.path=${php.global.include.path} +php.version=PHP_55 +source.encoding=UTF-8 +src.dir=. +tags.asp=false +tags.short=false +web.root=. diff --git a/code/code/nbproject/project.xml b/code/code/nbproject/project.xml new file mode 100644 index 000000000..cc8ca013c --- /dev/null +++ b/code/code/nbproject/project.xml @@ -0,0 +1,9 @@ + + + org.netbeans.modules.php.project + + + faveonew + + + diff --git a/code/package.json b/code/code/package.json similarity index 100% rename from code/package.json rename to code/code/package.json diff --git a/code/phpspec.yml b/code/code/phpspec.yml similarity index 100% rename from code/phpspec.yml rename to code/code/phpspec.yml diff --git a/code/phpunit.xml b/code/code/phpunit.xml similarity index 100% rename from code/phpunit.xml rename to code/code/phpunit.xml diff --git a/code/code/public/2912_1052596827134979585_loading.gif b/code/code/public/2912_1052596827134979585_loading.gif new file mode 100644 index 000000000..1f07d32dd Binary files /dev/null and b/code/code/public/2912_1052596827134979585_loading.gif differ diff --git a/code/code/public/2912_9857554221399993403_image001.png b/code/code/public/2912_9857554221399993403_image001.png new file mode 100644 index 000000000..01122c5f7 Binary files /dev/null and b/code/code/public/2912_9857554221399993403_image001.png differ diff --git a/code/code/public/2912_ii_id77xg8q0_14f1c5a04ece7337_11796441_10155785073840394_7703197718762503845_n.jpg b/code/code/public/2912_ii_id77xg8q0_14f1c5a04ece7337_11796441_10155785073840394_7703197718762503845_n.jpg new file mode 100644 index 000000000..ae488a6ef Binary files /dev/null and b/code/code/public/2912_ii_id77xg8q0_14f1c5a04ece7337_11796441_10155785073840394_7703197718762503845_n.jpg differ diff --git a/code/code/public/2912_ii_id77xg951_14f1c5a04ece7337_loading.gif b/code/code/public/2912_ii_id77xg951_14f1c5a04ece7337_loading.gif new file mode 100644 index 000000000..1f07d32dd Binary files /dev/null and b/code/code/public/2912_ii_id77xg951_14f1c5a04ece7337_loading.gif differ diff --git a/code/readme.md b/code/code/readme.md similarity index 100% rename from code/readme.md rename to code/code/readme.md diff --git a/code/resources/assets/less/app.less b/code/code/resources/assets/less/app.less similarity index 100% rename from code/resources/assets/less/app.less rename to code/code/resources/assets/less/app.less diff --git a/code/resources/assets/less/bootstrap/alerts.less b/code/code/resources/assets/less/bootstrap/alerts.less similarity index 100% rename from code/resources/assets/less/bootstrap/alerts.less rename to code/code/resources/assets/less/bootstrap/alerts.less diff --git a/code/resources/assets/less/bootstrap/badges.less b/code/code/resources/assets/less/bootstrap/badges.less similarity index 100% rename from code/resources/assets/less/bootstrap/badges.less rename to code/code/resources/assets/less/bootstrap/badges.less diff --git a/code/resources/assets/less/bootstrap/bootstrap.less b/code/code/resources/assets/less/bootstrap/bootstrap.less similarity index 100% rename from code/resources/assets/less/bootstrap/bootstrap.less rename to code/code/resources/assets/less/bootstrap/bootstrap.less diff --git a/code/resources/assets/less/bootstrap/breadcrumbs.less b/code/code/resources/assets/less/bootstrap/breadcrumbs.less similarity index 100% rename from code/resources/assets/less/bootstrap/breadcrumbs.less rename to code/code/resources/assets/less/bootstrap/breadcrumbs.less diff --git a/code/resources/assets/less/bootstrap/button-groups.less b/code/code/resources/assets/less/bootstrap/button-groups.less similarity index 100% rename from code/resources/assets/less/bootstrap/button-groups.less rename to code/code/resources/assets/less/bootstrap/button-groups.less diff --git a/code/resources/assets/less/bootstrap/buttons.less b/code/code/resources/assets/less/bootstrap/buttons.less similarity index 100% rename from code/resources/assets/less/bootstrap/buttons.less rename to code/code/resources/assets/less/bootstrap/buttons.less diff --git a/code/resources/assets/less/bootstrap/carousel.less b/code/code/resources/assets/less/bootstrap/carousel.less similarity index 100% rename from code/resources/assets/less/bootstrap/carousel.less rename to code/code/resources/assets/less/bootstrap/carousel.less diff --git a/code/resources/assets/less/bootstrap/close.less b/code/code/resources/assets/less/bootstrap/close.less similarity index 100% rename from code/resources/assets/less/bootstrap/close.less rename to code/code/resources/assets/less/bootstrap/close.less diff --git a/code/resources/assets/less/bootstrap/code.less b/code/code/resources/assets/less/bootstrap/code.less similarity index 100% rename from code/resources/assets/less/bootstrap/code.less rename to code/code/resources/assets/less/bootstrap/code.less diff --git a/code/resources/assets/less/bootstrap/component-animations.less b/code/code/resources/assets/less/bootstrap/component-animations.less similarity index 100% rename from code/resources/assets/less/bootstrap/component-animations.less rename to code/code/resources/assets/less/bootstrap/component-animations.less diff --git a/code/resources/assets/less/bootstrap/dropdowns.less b/code/code/resources/assets/less/bootstrap/dropdowns.less similarity index 100% rename from code/resources/assets/less/bootstrap/dropdowns.less rename to code/code/resources/assets/less/bootstrap/dropdowns.less diff --git a/code/resources/assets/less/bootstrap/forms.less b/code/code/resources/assets/less/bootstrap/forms.less similarity index 100% rename from code/resources/assets/less/bootstrap/forms.less rename to code/code/resources/assets/less/bootstrap/forms.less diff --git a/code/resources/assets/less/bootstrap/glyphicons.less b/code/code/resources/assets/less/bootstrap/glyphicons.less similarity index 100% rename from code/resources/assets/less/bootstrap/glyphicons.less rename to code/code/resources/assets/less/bootstrap/glyphicons.less diff --git a/code/resources/assets/less/bootstrap/grid.less b/code/code/resources/assets/less/bootstrap/grid.less similarity index 100% rename from code/resources/assets/less/bootstrap/grid.less rename to code/code/resources/assets/less/bootstrap/grid.less diff --git a/code/resources/assets/less/bootstrap/input-groups.less b/code/code/resources/assets/less/bootstrap/input-groups.less similarity index 100% rename from code/resources/assets/less/bootstrap/input-groups.less rename to code/code/resources/assets/less/bootstrap/input-groups.less diff --git a/code/resources/assets/less/bootstrap/jumbotron.less b/code/code/resources/assets/less/bootstrap/jumbotron.less similarity index 100% rename from code/resources/assets/less/bootstrap/jumbotron.less rename to code/code/resources/assets/less/bootstrap/jumbotron.less diff --git a/code/resources/assets/less/bootstrap/labels.less b/code/code/resources/assets/less/bootstrap/labels.less similarity index 100% rename from code/resources/assets/less/bootstrap/labels.less rename to code/code/resources/assets/less/bootstrap/labels.less diff --git a/code/resources/assets/less/bootstrap/list-group.less b/code/code/resources/assets/less/bootstrap/list-group.less similarity index 100% rename from code/resources/assets/less/bootstrap/list-group.less rename to code/code/resources/assets/less/bootstrap/list-group.less diff --git a/code/resources/assets/less/bootstrap/media.less b/code/code/resources/assets/less/bootstrap/media.less similarity index 100% rename from code/resources/assets/less/bootstrap/media.less rename to code/code/resources/assets/less/bootstrap/media.less diff --git a/code/resources/assets/less/bootstrap/mixins.less b/code/code/resources/assets/less/bootstrap/mixins.less similarity index 100% rename from code/resources/assets/less/bootstrap/mixins.less rename to code/code/resources/assets/less/bootstrap/mixins.less diff --git a/code/resources/assets/less/bootstrap/mixins/alerts.less b/code/code/resources/assets/less/bootstrap/mixins/alerts.less similarity index 100% rename from code/resources/assets/less/bootstrap/mixins/alerts.less rename to code/code/resources/assets/less/bootstrap/mixins/alerts.less diff --git a/code/resources/assets/less/bootstrap/mixins/background-variant.less b/code/code/resources/assets/less/bootstrap/mixins/background-variant.less similarity index 100% rename from code/resources/assets/less/bootstrap/mixins/background-variant.less rename to code/code/resources/assets/less/bootstrap/mixins/background-variant.less diff --git a/code/resources/assets/less/bootstrap/mixins/border-radius.less b/code/code/resources/assets/less/bootstrap/mixins/border-radius.less similarity index 100% rename from code/resources/assets/less/bootstrap/mixins/border-radius.less rename to code/code/resources/assets/less/bootstrap/mixins/border-radius.less diff --git a/code/resources/assets/less/bootstrap/mixins/buttons.less b/code/code/resources/assets/less/bootstrap/mixins/buttons.less similarity index 100% rename from code/resources/assets/less/bootstrap/mixins/buttons.less rename to code/code/resources/assets/less/bootstrap/mixins/buttons.less diff --git a/code/resources/assets/less/bootstrap/mixins/center-block.less b/code/code/resources/assets/less/bootstrap/mixins/center-block.less similarity index 100% rename from code/resources/assets/less/bootstrap/mixins/center-block.less rename to code/code/resources/assets/less/bootstrap/mixins/center-block.less diff --git a/code/resources/assets/less/bootstrap/mixins/clearfix.less b/code/code/resources/assets/less/bootstrap/mixins/clearfix.less similarity index 100% rename from code/resources/assets/less/bootstrap/mixins/clearfix.less rename to code/code/resources/assets/less/bootstrap/mixins/clearfix.less diff --git a/code/resources/assets/less/bootstrap/mixins/forms.less b/code/code/resources/assets/less/bootstrap/mixins/forms.less similarity index 100% rename from code/resources/assets/less/bootstrap/mixins/forms.less rename to code/code/resources/assets/less/bootstrap/mixins/forms.less diff --git a/code/resources/assets/less/bootstrap/mixins/gradients.less b/code/code/resources/assets/less/bootstrap/mixins/gradients.less similarity index 100% rename from code/resources/assets/less/bootstrap/mixins/gradients.less rename to code/code/resources/assets/less/bootstrap/mixins/gradients.less diff --git a/code/resources/assets/less/bootstrap/mixins/grid-framework.less b/code/code/resources/assets/less/bootstrap/mixins/grid-framework.less similarity index 100% rename from code/resources/assets/less/bootstrap/mixins/grid-framework.less rename to code/code/resources/assets/less/bootstrap/mixins/grid-framework.less diff --git a/code/resources/assets/less/bootstrap/mixins/grid.less b/code/code/resources/assets/less/bootstrap/mixins/grid.less similarity index 100% rename from code/resources/assets/less/bootstrap/mixins/grid.less rename to code/code/resources/assets/less/bootstrap/mixins/grid.less diff --git a/code/resources/assets/less/bootstrap/mixins/hide-text.less b/code/code/resources/assets/less/bootstrap/mixins/hide-text.less similarity index 100% rename from code/resources/assets/less/bootstrap/mixins/hide-text.less rename to code/code/resources/assets/less/bootstrap/mixins/hide-text.less diff --git a/code/resources/assets/less/bootstrap/mixins/image.less b/code/code/resources/assets/less/bootstrap/mixins/image.less similarity index 100% rename from code/resources/assets/less/bootstrap/mixins/image.less rename to code/code/resources/assets/less/bootstrap/mixins/image.less diff --git a/code/resources/assets/less/bootstrap/mixins/labels.less b/code/code/resources/assets/less/bootstrap/mixins/labels.less similarity index 100% rename from code/resources/assets/less/bootstrap/mixins/labels.less rename to code/code/resources/assets/less/bootstrap/mixins/labels.less diff --git a/code/resources/assets/less/bootstrap/mixins/list-group.less b/code/code/resources/assets/less/bootstrap/mixins/list-group.less similarity index 100% rename from code/resources/assets/less/bootstrap/mixins/list-group.less rename to code/code/resources/assets/less/bootstrap/mixins/list-group.less diff --git a/code/resources/assets/less/bootstrap/mixins/nav-divider.less b/code/code/resources/assets/less/bootstrap/mixins/nav-divider.less similarity index 100% rename from code/resources/assets/less/bootstrap/mixins/nav-divider.less rename to code/code/resources/assets/less/bootstrap/mixins/nav-divider.less diff --git a/code/resources/assets/less/bootstrap/mixins/nav-vertical-align.less b/code/code/resources/assets/less/bootstrap/mixins/nav-vertical-align.less similarity index 100% rename from code/resources/assets/less/bootstrap/mixins/nav-vertical-align.less rename to code/code/resources/assets/less/bootstrap/mixins/nav-vertical-align.less diff --git a/code/resources/assets/less/bootstrap/mixins/opacity.less b/code/code/resources/assets/less/bootstrap/mixins/opacity.less similarity index 100% rename from code/resources/assets/less/bootstrap/mixins/opacity.less rename to code/code/resources/assets/less/bootstrap/mixins/opacity.less diff --git a/code/resources/assets/less/bootstrap/mixins/pagination.less b/code/code/resources/assets/less/bootstrap/mixins/pagination.less similarity index 100% rename from code/resources/assets/less/bootstrap/mixins/pagination.less rename to code/code/resources/assets/less/bootstrap/mixins/pagination.less diff --git a/code/resources/assets/less/bootstrap/mixins/panels.less b/code/code/resources/assets/less/bootstrap/mixins/panels.less similarity index 100% rename from code/resources/assets/less/bootstrap/mixins/panels.less rename to code/code/resources/assets/less/bootstrap/mixins/panels.less diff --git a/code/resources/assets/less/bootstrap/mixins/progress-bar.less b/code/code/resources/assets/less/bootstrap/mixins/progress-bar.less similarity index 100% rename from code/resources/assets/less/bootstrap/mixins/progress-bar.less rename to code/code/resources/assets/less/bootstrap/mixins/progress-bar.less diff --git a/code/resources/assets/less/bootstrap/mixins/reset-filter.less b/code/code/resources/assets/less/bootstrap/mixins/reset-filter.less similarity index 100% rename from code/resources/assets/less/bootstrap/mixins/reset-filter.less rename to code/code/resources/assets/less/bootstrap/mixins/reset-filter.less diff --git a/code/resources/assets/less/bootstrap/mixins/resize.less b/code/code/resources/assets/less/bootstrap/mixins/resize.less similarity index 100% rename from code/resources/assets/less/bootstrap/mixins/resize.less rename to code/code/resources/assets/less/bootstrap/mixins/resize.less diff --git a/code/resources/assets/less/bootstrap/mixins/responsive-visibility.less b/code/code/resources/assets/less/bootstrap/mixins/responsive-visibility.less similarity index 100% rename from code/resources/assets/less/bootstrap/mixins/responsive-visibility.less rename to code/code/resources/assets/less/bootstrap/mixins/responsive-visibility.less diff --git a/code/resources/assets/less/bootstrap/mixins/size.less b/code/code/resources/assets/less/bootstrap/mixins/size.less similarity index 100% rename from code/resources/assets/less/bootstrap/mixins/size.less rename to code/code/resources/assets/less/bootstrap/mixins/size.less diff --git a/code/resources/assets/less/bootstrap/mixins/tab-focus.less b/code/code/resources/assets/less/bootstrap/mixins/tab-focus.less similarity index 100% rename from code/resources/assets/less/bootstrap/mixins/tab-focus.less rename to code/code/resources/assets/less/bootstrap/mixins/tab-focus.less diff --git a/code/resources/assets/less/bootstrap/mixins/table-row.less b/code/code/resources/assets/less/bootstrap/mixins/table-row.less similarity index 100% rename from code/resources/assets/less/bootstrap/mixins/table-row.less rename to code/code/resources/assets/less/bootstrap/mixins/table-row.less diff --git a/code/resources/assets/less/bootstrap/mixins/text-emphasis.less b/code/code/resources/assets/less/bootstrap/mixins/text-emphasis.less similarity index 100% rename from code/resources/assets/less/bootstrap/mixins/text-emphasis.less rename to code/code/resources/assets/less/bootstrap/mixins/text-emphasis.less diff --git a/code/resources/assets/less/bootstrap/mixins/text-overflow.less b/code/code/resources/assets/less/bootstrap/mixins/text-overflow.less similarity index 100% rename from code/resources/assets/less/bootstrap/mixins/text-overflow.less rename to code/code/resources/assets/less/bootstrap/mixins/text-overflow.less diff --git a/code/resources/assets/less/bootstrap/mixins/vendor-prefixes.less b/code/code/resources/assets/less/bootstrap/mixins/vendor-prefixes.less similarity index 100% rename from code/resources/assets/less/bootstrap/mixins/vendor-prefixes.less rename to code/code/resources/assets/less/bootstrap/mixins/vendor-prefixes.less diff --git a/code/resources/assets/less/bootstrap/modals.less b/code/code/resources/assets/less/bootstrap/modals.less similarity index 100% rename from code/resources/assets/less/bootstrap/modals.less rename to code/code/resources/assets/less/bootstrap/modals.less diff --git a/code/resources/assets/less/bootstrap/navbar.less b/code/code/resources/assets/less/bootstrap/navbar.less similarity index 100% rename from code/resources/assets/less/bootstrap/navbar.less rename to code/code/resources/assets/less/bootstrap/navbar.less diff --git a/code/resources/assets/less/bootstrap/navs.less b/code/code/resources/assets/less/bootstrap/navs.less similarity index 100% rename from code/resources/assets/less/bootstrap/navs.less rename to code/code/resources/assets/less/bootstrap/navs.less diff --git a/code/resources/assets/less/bootstrap/normalize.less b/code/code/resources/assets/less/bootstrap/normalize.less similarity index 100% rename from code/resources/assets/less/bootstrap/normalize.less rename to code/code/resources/assets/less/bootstrap/normalize.less diff --git a/code/resources/assets/less/bootstrap/pager.less b/code/code/resources/assets/less/bootstrap/pager.less similarity index 100% rename from code/resources/assets/less/bootstrap/pager.less rename to code/code/resources/assets/less/bootstrap/pager.less diff --git a/code/resources/assets/less/bootstrap/pagination.less b/code/code/resources/assets/less/bootstrap/pagination.less similarity index 100% rename from code/resources/assets/less/bootstrap/pagination.less rename to code/code/resources/assets/less/bootstrap/pagination.less diff --git a/code/resources/assets/less/bootstrap/panels.less b/code/code/resources/assets/less/bootstrap/panels.less similarity index 100% rename from code/resources/assets/less/bootstrap/panels.less rename to code/code/resources/assets/less/bootstrap/panels.less diff --git a/code/resources/assets/less/bootstrap/popovers.less b/code/code/resources/assets/less/bootstrap/popovers.less similarity index 100% rename from code/resources/assets/less/bootstrap/popovers.less rename to code/code/resources/assets/less/bootstrap/popovers.less diff --git a/code/resources/assets/less/bootstrap/print.less b/code/code/resources/assets/less/bootstrap/print.less similarity index 100% rename from code/resources/assets/less/bootstrap/print.less rename to code/code/resources/assets/less/bootstrap/print.less diff --git a/code/resources/assets/less/bootstrap/progress-bars.less b/code/code/resources/assets/less/bootstrap/progress-bars.less similarity index 100% rename from code/resources/assets/less/bootstrap/progress-bars.less rename to code/code/resources/assets/less/bootstrap/progress-bars.less diff --git a/code/resources/assets/less/bootstrap/responsive-embed.less b/code/code/resources/assets/less/bootstrap/responsive-embed.less similarity index 100% rename from code/resources/assets/less/bootstrap/responsive-embed.less rename to code/code/resources/assets/less/bootstrap/responsive-embed.less diff --git a/code/resources/assets/less/bootstrap/responsive-utilities.less b/code/code/resources/assets/less/bootstrap/responsive-utilities.less similarity index 100% rename from code/resources/assets/less/bootstrap/responsive-utilities.less rename to code/code/resources/assets/less/bootstrap/responsive-utilities.less diff --git a/code/resources/assets/less/bootstrap/scaffolding.less b/code/code/resources/assets/less/bootstrap/scaffolding.less similarity index 100% rename from code/resources/assets/less/bootstrap/scaffolding.less rename to code/code/resources/assets/less/bootstrap/scaffolding.less diff --git a/code/resources/assets/less/bootstrap/tables.less b/code/code/resources/assets/less/bootstrap/tables.less similarity index 100% rename from code/resources/assets/less/bootstrap/tables.less rename to code/code/resources/assets/less/bootstrap/tables.less diff --git a/code/resources/assets/less/bootstrap/theme.less b/code/code/resources/assets/less/bootstrap/theme.less similarity index 100% rename from code/resources/assets/less/bootstrap/theme.less rename to code/code/resources/assets/less/bootstrap/theme.less diff --git a/code/resources/assets/less/bootstrap/thumbnails.less b/code/code/resources/assets/less/bootstrap/thumbnails.less similarity index 100% rename from code/resources/assets/less/bootstrap/thumbnails.less rename to code/code/resources/assets/less/bootstrap/thumbnails.less diff --git a/code/resources/assets/less/bootstrap/tooltip.less b/code/code/resources/assets/less/bootstrap/tooltip.less similarity index 100% rename from code/resources/assets/less/bootstrap/tooltip.less rename to code/code/resources/assets/less/bootstrap/tooltip.less diff --git a/code/resources/assets/less/bootstrap/type.less b/code/code/resources/assets/less/bootstrap/type.less similarity index 100% rename from code/resources/assets/less/bootstrap/type.less rename to code/code/resources/assets/less/bootstrap/type.less diff --git a/code/resources/assets/less/bootstrap/utilities.less b/code/code/resources/assets/less/bootstrap/utilities.less similarity index 100% rename from code/resources/assets/less/bootstrap/utilities.less rename to code/code/resources/assets/less/bootstrap/utilities.less diff --git a/code/resources/assets/less/bootstrap/variables.less b/code/code/resources/assets/less/bootstrap/variables.less similarity index 100% rename from code/resources/assets/less/bootstrap/variables.less rename to code/code/resources/assets/less/bootstrap/variables.less diff --git a/code/resources/assets/less/bootstrap/wells.less b/code/code/resources/assets/less/bootstrap/wells.less similarity index 100% rename from code/resources/assets/less/bootstrap/wells.less rename to code/code/resources/assets/less/bootstrap/wells.less diff --git a/code/resources/lang/en/lang.php b/code/code/resources/lang/en/lang.php similarity index 97% rename from code/resources/lang/en/lang.php rename to code/code/resources/lang/en/lang.php index a91a43bd8..72d9053d0 100644 --- a/code/resources/lang/en/lang.php +++ b/code/code/resources/lang/en/lang.php @@ -25,7 +25,7 @@ return array( 'signmein' => 'Sign me In', 'iforgot' => 'I forgot my Password', 'email_address' => 'E-Mail Address', - 'password' => 'password', + 'password' => 'Password', 'woops' => 'Whoops!', 'theirisproblem' => 'There were some problems with your input.', 'login' => 'Login', @@ -90,8 +90,8 @@ return array( 'website' =>'Website', 'phone' =>'Phone', 'address' =>'Address', - 'landing' =>'landing Page', - 'offline' =>'offline Page', + 'landing' =>'Landing Page', + 'offline' =>'Offline Page', 'thank' =>'Thank Page', 'logo' =>'Logo', 'save' =>'Save', @@ -209,8 +209,9 @@ return array( |-------------------------------------- | Alert & Notice Settings Page |-------------------------------------- - */ - + */ + 'disable' =>'Disable', + 'admin_email_2' =>'Admin Email', 'alert_notices' =>'Alert & Notices', 'new_ticket_alert' =>'New Ticket Alert', 'department_manager' =>'Department Manager', @@ -481,6 +482,18 @@ return array( 'group_name' =>'Group Name', + /* + |-------------------------------------- + | SMTP Page + |-------------------------------------- + */ + 'smtp' => 'SMTP', + 'host'=>'Host', + 'port'=>'Port', + 'encryption'=>'Encryption', + + + /* |---------------------------------------------------------------------------------------- | Agent Panel [English(en)] @@ -510,7 +523,7 @@ return array( */ 'organization' => 'Organization', - 'create_organization' => 'Create Organization', + 'create_organisations' => 'Create Organization', 'account_manager' => 'Account Manager', /* diff --git a/code/resources/lang/en/pagination.php b/code/code/resources/lang/en/pagination.php similarity index 100% rename from code/resources/lang/en/pagination.php rename to code/code/resources/lang/en/pagination.php diff --git a/code/resources/lang/en/passwords.php b/code/code/resources/lang/en/passwords.php similarity index 100% rename from code/resources/lang/en/passwords.php rename to code/code/resources/lang/en/passwords.php diff --git a/code/resources/lang/en/validation.php b/code/code/resources/lang/en/validation.php similarity index 100% rename from code/resources/lang/en/validation.php rename to code/code/resources/lang/en/validation.php diff --git a/code/code/resources/views/404.blade.php b/code/code/resources/views/404.blade.php new file mode 100644 index 000000000..1ea343db2 --- /dev/null +++ b/code/code/resources/views/404.blade.php @@ -0,0 +1,26 @@ +@extends('themes.default1.layouts.installer') +@section('content') +
+ +
+

+ 404 Error Page +

+
+ + +
+ +
+

404

+
+

Oops! Page not found.

+

+ We could not find the page you were looking for. +

+
+
+
+
+ +@stop \ No newline at end of file diff --git a/code/code/resources/views/app.blade.php b/code/code/resources/views/app.blade.php new file mode 100644 index 000000000..4f5c1d299 --- /dev/null +++ b/code/code/resources/views/app.blade.php @@ -0,0 +1,79 @@ + + + + + + + Laravel + + + + + + + + + + + + + + @yield('content') + + + + + + diff --git a/code/public/activate.blade.php b/code/code/resources/views/auth/activate.blade.php similarity index 100% rename from code/public/activate.blade.php rename to code/code/resources/views/auth/activate.blade.php diff --git a/code/code/resources/views/auth/login.blade.php b/code/code/resources/views/auth/login.blade.php new file mode 100644 index 000000000..380fc0e2b --- /dev/null +++ b/code/code/resources/views/auth/login.blade.php @@ -0,0 +1,40 @@ +@extends('themes.default1.layouts.login') + +@section('body') + + +

Sign in to start your session

+ + {!! Form::open(['action'=>'Auth\AuthController@postLogin', 'method'=>'post']) !!} + +
+ {!! Form::text('email',null,['placeholder'=>'Email','class' => 'form-control']) !!} + {!! $errors->first('email', ':message') !!} + +
+ + +
+ {!! Form::password('password',['placeholder'=>'Password','class' => 'form-control']) !!} + {!! $errors->first('password', ':message') !!} + +
+
+
+
+ +
+
+
+ +
+
+ + + + I forgot my password
+ Register a new membership + +@stop diff --git a/code/code/resources/views/auth/password.blade.php b/code/code/resources/views/auth/password.blade.php new file mode 100644 index 000000000..e43819dfb --- /dev/null +++ b/code/code/resources/views/auth/password.blade.php @@ -0,0 +1,19 @@ +@extends('themes.default1.layouts.login') + +@section('body') + +

Enter E-mail to reset password

+ +
+ + + +
+ + +
+
+ + I know my password + +@stop diff --git a/code/code/resources/views/auth/register.blade.php b/code/code/resources/views/auth/register.blade.php new file mode 100644 index 000000000..96c16941d --- /dev/null +++ b/code/code/resources/views/auth/register.blade.php @@ -0,0 +1,67 @@ +@extends('themes.default1.layouts.login') +@section('body') + + + +

Registration

+ + {!! Form::open(['action'=>'Auth\AuthController@postRegister', 'method'=>'post']) !!} + + +
+ + {!! Form::text('full_name',null,['placeholder'=>'Full Name','class' => 'form-control']) !!} + {!! $errors->first('full_name', ':message') !!} + + +
+ + +
+ + {!! Form::text('email',null,['placeholder'=>'Email','class' => 'form-control']) !!} + {!! $errors->first('email', ':message') !!} + + +
+ + +
+ {!! Form::password('password',['placeholder'=>'Password','class' => 'form-control']) !!} + {!! $errors->first('password', ':message') !!} + +
+ + +
+ {!! Form::password('password_confirmation',['placeholder'=>'Retype Password','class' => 'form-control']) !!} + {!! $errors->first('password_confirmation', ':message') !!} + +
+ + + + +
+
+
+ +
+
+
+ +
+
+ + + + I already have a membership + {!! Form::close()!!} + + + + @stop + + diff --git a/code/code/resources/views/auth/reset.blade.php b/code/code/resources/views/auth/reset.blade.php new file mode 100644 index 000000000..84ad7266d --- /dev/null +++ b/code/code/resources/views/auth/reset.blade.php @@ -0,0 +1,41 @@ +@extends('themes.default1.layouts.login') + +@section('body') +

Reset Password

+
+
+ + + +
+ + {!! $errors->first('email', ':message') !!} + +
+ +
+ + {!! $errors->first('password', ':message') !!} + +
+ +
+ + {!! $errors->first('password_confirmation', ':message') !!} + +
+ + + +
+
+
+ +
+
+
+
+ +@stop diff --git a/code/code/resources/views/emails/Admin_mail.blade.php b/code/code/resources/views/emails/Admin_mail.blade.php new file mode 100644 index 000000000..0e2151ef8 --- /dev/null +++ b/code/code/resources/views/emails/Admin_mail.blade.php @@ -0,0 +1,14 @@ +Hi {!! $agent !!},

+New ticket {!! $ticket_number !!} created
+
+To view or respond to the ticket, please login to the support ticket system
+
+Your friendly {!! $system !!}
+
+From +Name :- {!! $name !!}
+E-mail :- {!! $email !!}
+
+Regards,
+{!! $from !!} + diff --git a/code/code/resources/views/emails/Ticket_Create.blade.php b/code/code/resources/views/emails/Ticket_Create.blade.php new file mode 100644 index 000000000..f35bd3fe8 --- /dev/null +++ b/code/code/resources/views/emails/Ticket_Create.blade.php @@ -0,0 +1,20 @@ +---Reply above this line---

+ +{!!$name!!}

+ +Thank you for contacting us. This is an automated response confirming the receipt of your ticket. Our team will get back to you as soon as possible. When replying, please make sure that the ticket ID is kept in the subject so that we can track your replies.

+ +Ticket ID: {!!$ticket_number!!}
+Subject: Ticket Subject
+Department: Support
+Type: Need Information
+Status: Open
+Priority: Normal

+ +You can check the status of or update this ticket online at: {!! \URL::route('ticket2') !!}

+ +Thank You.

+ +Kind regards,

+ +{!! $from !!} \ No newline at end of file diff --git a/code/resources/views/emails/Ticket_Reply.blade.php b/code/code/resources/views/emails/Ticket_Reply.blade.php similarity index 84% rename from code/resources/views/emails/Ticket_Reply.blade.php rename to code/code/resources/views/emails/Ticket_Reply.blade.php index c77ca6952..9e920175e 100644 --- a/code/resources/views/emails/Ticket_Reply.blade.php +++ b/code/code/resources/views/emails/Ticket_Reply.blade.php @@ -2,12 +2,3 @@ hello {{$name}}

Your ticket have been created please visit this link for your ticket query.

- -fngvy -y -u -y -y -b -gguycuuv -]bu \ No newline at end of file diff --git a/code/code/resources/views/emails/Ticket_assign.blade.php b/code/code/resources/views/emails/Ticket_assign.blade.php new file mode 100644 index 000000000..39596486c --- /dev/null +++ b/code/code/resources/views/emails/Ticket_assign.blade.php @@ -0,0 +1,11 @@ +Hi {!! $agent !!},
+Ticket No. :- {!! $ticket_number !!}
+ +Has been assigned to you by {!! $master !!}
+ +Your friendly {!! $system !!}
+
+Regards,
+{!! $from !!} + + diff --git a/code/code/resources/views/emails/check_ticket.blade.php b/code/code/resources/views/emails/check_ticket.blade.php new file mode 100644 index 000000000..922f2b020 --- /dev/null +++ b/code/code/resources/views/emails/check_ticket.blade.php @@ -0,0 +1,9 @@ +Hi {!! $user !!},

+ + +Click the link below to view your Requested ticket

+{!! $link !!} + + +Regards,
+{!! $from !!} \ No newline at end of file diff --git a/code/code/resources/views/emails/close_ticket.blade.php b/code/code/resources/views/emails/close_ticket.blade.php new file mode 100644 index 000000000..58e951133 --- /dev/null +++ b/code/code/resources/views/emails/close_ticket.blade.php @@ -0,0 +1,9 @@ +Ticket No.: {{ $ticket_number }}
+
+Your ticket have been closed.
+
+Thank you
+
+Kind regards,
+{!! $from !!} + diff --git a/code/code/resources/views/emails/email_reply.blade.php b/code/code/resources/views/emails/email_reply.blade.php new file mode 100644 index 000000000..df7521c63 --- /dev/null +++ b/code/code/resources/views/emails/email_reply.blade.php @@ -0,0 +1,13 @@ +Hi {!! $agent !!},

+A reply been made to ticket {!! $ticket_number !!}
+
+To view or respond to the ticket, please login to the support ticket system
+
+Your friendly {!! $system !!}
+
+From +Name :- {!! $name !!}
+E-mail :- {!! $email !!}
+
+Regards,
+{!! $from !!} \ No newline at end of file diff --git a/code/code/resources/views/emails/pass.blade.php b/code/code/resources/views/emails/pass.blade.php new file mode 100644 index 000000000..91e2a2577 --- /dev/null +++ b/code/code/resources/views/emails/pass.blade.php @@ -0,0 +1,13 @@ +Hello {!! $name !!},

+ +Your account has been created.

+ +Password: {{$password}}

+ +To view or respond to the ticket, please login {!! \URL::route('ticket2') !!} to the support ticket system

+ +Thank You.

+ +Kind regards,

+ +{!! $from !!} \ No newline at end of file diff --git a/code/code/resources/views/emails/password.blade (2).php b/code/code/resources/views/emails/password.blade (2).php new file mode 100644 index 000000000..c97bca905 --- /dev/null +++ b/code/code/resources/views/emails/password.blade (2).php @@ -0,0 +1 @@ +Click here to reset your password: {!! url('password/reset/'.$token) !!} diff --git a/code/code/resources/views/emails/password.blade.php b/code/code/resources/views/emails/password.blade.php new file mode 100644 index 000000000..71ee14206 --- /dev/null +++ b/code/code/resources/views/emails/password.blade.php @@ -0,0 +1,14 @@ +Hello

+ +You asked to reset your Sync password. To do so, please click this link:

+ + {!! url('password/reset/'.$token) !!}

+ +
+This will let you change your password to something new. If you didn't ask for this, don't worry, we'll keep your password safe.

+ +Thank You.
+
+Kind regards,

+first(); $company = $company->company_name; ?> +{!! $company !!} \ No newline at end of file diff --git a/code/code/resources/views/emails/report.blade.php b/code/code/resources/views/emails/report.blade.php new file mode 100644 index 000000000..1e6423ec1 --- /dev/null +++ b/code/code/resources/views/emails/report.blade.php @@ -0,0 +1 @@ +
{{$e}}
\ No newline at end of file diff --git a/code/code/resources/views/emails/ticket_re-reply.blade.php b/code/code/resources/views/emails/ticket_re-reply.blade.php new file mode 100644 index 000000000..d7d989630 --- /dev/null +++ b/code/code/resources/views/emails/ticket_re-reply.blade.php @@ -0,0 +1,16 @@ +---Reply above this line---


+ +Hello {!! $name !!},

+ +{!! $content !!}

+ +Regards,
+{!! $Agent_Signature !!}
+{!! $From !!}
+
+Ticket Details
+Ticket ID: {!! $ticket_number !!}
+Department: Support
+{{-- Type: Need Information
--}} +{{-- Status: Open
--}} +{{-- Priority: Normal
--}} diff --git a/code/code/resources/views/errors/404.blade.php b/code/code/resources/views/errors/404.blade.php new file mode 100644 index 000000000..834eb7efd --- /dev/null +++ b/code/code/resources/views/errors/404.blade.php @@ -0,0 +1,50 @@ + + + + + + +
+
+
404 Not Found.
+
+

Oops! Page not found.

+

+ We could not find the page you were looking for. +

+
+
+
+ + \ No newline at end of file diff --git a/code/code/resources/views/errors/503.blade.php b/code/code/resources/views/errors/503.blade.php new file mode 100644 index 000000000..ce24a9818 --- /dev/null +++ b/code/code/resources/views/errors/503.blade.php @@ -0,0 +1,50 @@ + + + + + + +
+
+
503 Be right back.
+
+

Sorry!

+

+ We are working on it. +

+
+
+
+ + \ No newline at end of file diff --git a/code/code/resources/views/home.blade.php b/code/code/resources/views/home.blade.php new file mode 100644 index 000000000..65ffa9e03 --- /dev/null +++ b/code/code/resources/views/home.blade.php @@ -0,0 +1,17 @@ +@extends('app') + +@section('content') +
+
+
+
+
Home
+ +
+ You are logged in! +
+
+
+
+
+@endsection diff --git a/code/code/resources/views/settings/new.blade.php b/code/code/resources/views/settings/new.blade.php new file mode 100644 index 000000000..ebf802b30 --- /dev/null +++ b/code/code/resources/views/settings/new.blade.php @@ -0,0 +1,23 @@ + {!! Form::open( array('route' => 'settings.create','method' => 'post', 'id' => 'form-add-setting' ) ) !!} + + {!! Form::label( 'setting_name', 'Setting Name:' ) !!} + {!! Form::text( 'setting_name', '', array( + 'id' => 'setting_name', + 'placeholder' => 'Enter Setting Name', + 'maxlength' => 20, + 'required' => true, + ) ) !!} + {!! Form::label( 'setting_value', 'Setting Value:' ) !!} + {!! Form::text( 'setting_value', '', array( + 'id' => 'setting_value', + 'placeholder' => 'Enter Setting Value', + 'maxlength' => 255, + 'required' => true, + ) ) !!} + + {!! Form::submit( 'Add Setting', array( + 'id' => 'btn-add-setting', + ) ) !!} + + {!! Form::close() !!} + diff --git a/code/code/resources/views/test.blade.php b/code/code/resources/views/test.blade.php new file mode 100644 index 000000000..d9b5314fa --- /dev/null +++ b/code/code/resources/views/test.blade.php @@ -0,0 +1,66 @@ +{{-- @extends('themes.default1.Agent.ticket.layout') + +@section('content') + + +
+
+ Group boxCenter Title: + +
+
Address 1: + +
+
+
+ +@stop --}} \ No newline at end of file diff --git a/code/resources/views/themes/check.blade.php b/code/code/resources/views/themes/check.blade.php similarity index 100% rename from code/resources/views/themes/check.blade.php rename to code/code/resources/views/themes/check.blade.php diff --git a/code/resources/views/themes/default1/admin/agent/agents/create.blade.php b/code/code/resources/views/themes/default1/admin/agent/agents/create.blade.php similarity index 94% rename from code/resources/views/themes/default1/admin/agent/agents/create.blade.php rename to code/code/resources/views/themes/default1/admin/agent/agents/create.blade.php index bd936160e..038aaf212 100644 --- a/code/resources/views/themes/default1/admin/agent/agents/create.blade.php +++ b/code/code/resources/views/themes/default1/admin/agent/agents/create.blade.php @@ -1,4 +1,4 @@ -@extends('themes.default1.layouts.blank') +@extends('themes.default1.layouts.admin') @section('Staffs') class="active" @@ -45,7 +45,7 @@ class="active"
- +
{!! Form::label('user_name',Lang::get('lang.user_name')) !!} @@ -53,7 +53,7 @@ class="active" {!! Form::text('user_name',null,['class' => 'form-control']) !!}
- +
{!! Form::label('first_name',Lang::get('lang.first_name')) !!} @@ -61,7 +61,7 @@ class="active" {!! Form::text('first_name',null,['class' => 'form-control']) !!}
- +
{!! Form::label('last_name',Lang::get('lang.last_name')) !!} @@ -73,7 +73,7 @@ class="active"
- +
{!! Form::label('email',Lang::get('lang.email_address')) !!} @@ -81,7 +81,7 @@ class="active" {!! Form::email('email',null,['class' => 'form-control']) !!}
- +
{!! Form::label('phone',Lang::get('lang.phone')) !!} @@ -89,7 +89,7 @@ class="active" {!! Form::text('phone',null,['class' => 'form-control']) !!}
- +
{!! Form::label('mobile',Lang::get('lang.mobile_number')) !!} @@ -113,16 +113,12 @@ class="active"
- - - - -

{{Lang::get('lang.account_status_setting')}}

+
{!! Form::label('role',Lang::get('lang.role')) !!} @@ -136,7 +132,7 @@ class="active"
- +
{!! Form::label('account_type',Lang::get('lang.account_type')) !!} @@ -154,7 +150,7 @@ class="active"
- +
{!! Form::label('',Lang::get('lang.day_light_saving')) !!} @@ -164,7 +160,7 @@ class="active"
- +
{!! Form::label('limit_access',Lang::get('lang.limit_access')) !!} @@ -174,6 +170,7 @@ class="active"
+
{!! Form::label('directory_listing',Lang::get('lang.directory_listing')) !!} @@ -183,6 +180,7 @@ class="active"
+
{!! Form::label('vocation_mode',Lang::get('lang.vocation_mode')) !!} @@ -195,7 +193,7 @@ class="active"
- +
{!! Form::label('assign_group',Lang::get('lang.assigned_group')) !!} @@ -204,6 +202,7 @@ class="active"
+
{!! Form::label('primary_dpt',Lang::get('lang.primary_department')) !!} @@ -212,8 +211,7 @@ class="active"
- - +
{!! Form::label('agent_tzone',Lang::get('lang.agent_time_zone')) !!} @@ -223,7 +221,7 @@ class="active"
- +

{{Lang::get('lang.assigned_team')}}

diff --git a/code/resources/views/themes/default1/admin/agent/agents/edit.blade.php b/code/code/resources/views/themes/default1/admin/agent/agents/edit.blade.php similarity index 94% rename from code/resources/views/themes/default1/admin/agent/agents/edit.blade.php rename to code/code/resources/views/themes/default1/admin/agent/agents/edit.blade.php index 9b470a945..abc7c84e8 100644 --- a/code/resources/views/themes/default1/admin/agent/agents/edit.blade.php +++ b/code/code/resources/views/themes/default1/admin/agent/agents/edit.blade.php @@ -1,4 +1,4 @@ -@extends('themes.default1.layouts.blank') +@extends('themes.default1.layouts.admin') @section('Staffs') class="active" @@ -47,6 +47,7 @@ class="active"
+
{!! Form::label('user_name',Lang::get('lang.user_name')) !!} @@ -55,8 +56,7 @@ class="active"
- - +
{!! Form::label('first_name',Lang::get('lang.first_name')) !!} @@ -65,6 +65,7 @@ class="active"
+
{!! Form::label('last_name',Lang::get('lang.last_name')) !!} @@ -78,6 +79,7 @@ class="active"
+
{!! Form::label('email',Lang::get('lang.email_address')) !!} @@ -86,6 +88,7 @@ class="active"
+
{!! Form::label('phone_number',Lang::get('lang.phone')) !!} @@ -94,6 +97,7 @@ class="active"
+
{!! Form::label('mobile',Lang::get('lang.mobile_number')) !!} @@ -103,7 +107,7 @@ class="active"
- +

{{Lang::get('lang.agent_signature')}}

@@ -117,16 +121,12 @@ class="active"
- - - - -

{{Lang::get('lang.account_status_setting')}}

+
{!! Form::label('role',Lang::get('lang.role')) !!} @@ -140,7 +140,7 @@ class="active"
- +
{!! Form::label('account_type',Lang::get('lang.account_type')) !!} @@ -156,7 +156,7 @@ class="active"
- +
@@ -168,7 +168,7 @@ class="active"
- +
{!! Form::label('limit_access',Lang::get('lang.limit_access')) !!} @@ -178,6 +178,7 @@ class="active"
+
{!! Form::label('directory_listing',Lang::get('lang.directory_listing')) !!} @@ -187,6 +188,7 @@ class="active"
+
{!! Form::label('vocation_mode',Lang::get('lang.vocation_mode')) !!} @@ -199,15 +201,15 @@ class="active"
- +
{!! Form::label('assign_group',Lang::get('lang.assigned_group')) !!} {!! $errors->first('assign_group', ':message') !!} {!!Form::select('assign_group', [''=>'Select a Group','Groups'=>$groups->lists('name','name')],null,['class' => 'form-control select']) !!} -
+
{!! Form::label('primary_dpt',Lang::get('lang.primary_department')) !!} @@ -218,7 +220,7 @@ class="active"
- +
{!! Form::label('agent_tzone',Lang::get('lang.agent_time_zone')) !!} @@ -229,7 +231,7 @@ class="active"
- +

{{Lang::get('lang.assigned_team')}}

diff --git a/code/resources/views/themes/default1/admin/agent/agents/index.blade.php b/code/code/resources/views/themes/default1/admin/agent/agents/index.blade.php similarity index 61% rename from code/resources/views/themes/default1/admin/agent/agents/index.blade.php rename to code/code/resources/views/themes/default1/admin/agent/agents/index.blade.php index de620561a..0ff898325 100644 --- a/code/resources/views/themes/default1/admin/agent/agents/index.blade.php +++ b/code/code/resources/views/themes/default1/admin/agent/agents/index.blade.php @@ -1,4 +1,4 @@ -@extends('themes.default1.layouts.blank') +@extends('themes.default1.layouts.admin') @section('Staffs') class="active" @@ -30,8 +30,7 @@ class="active" @section('content') -
-
+

{{Lang::get('lang.agents')}}

{{Lang::get('lang.create_agent')}}
@@ -55,66 +54,62 @@ class="active" {{Session::get('fails')}}
@endif - - + - + + - + {{-- --}} - @foreach($user as $use) + @if($use->role == 'admin' || $use->role == 'agent') - - + + + role == 'admin') + { + echo ''; + } + elseif ($use->role == 'agent') { + echo ''; + } + ?> - - - + + + + {{-- --}} + @endif @endforeach - - - -
{{Lang::get('lang.name')}} {{Lang::get('lang.user_name')}}{{Lang::get('lang.role')}} {{Lang::get('lang.status')}} {{Lang::get('lang.group')}} {{Lang::get('lang.department')}} {{Lang::get('lang.created')}}{{Lang::get('lang.lastlogin')}}{{Lang::get('lang.lastlogin')}}{{Lang::get('lang.action')}}
{{$use -> user_name }} {{$use -> user_name }} {!! $use->first_name !!} {!! " ". $use->last_name !!} {!! $use->user_name !!} @if($use->account_type=='1') -

{{'Active'}}

+ {{'Active'}} @else -

{{'Inactive'}}

+ {{'Inactive'}} @endif - - -
{{$use -> assign_group }}{{$use -> primary_dpt }}{{$use -> created_at}}{{$use -> Lastlogin_at}}{{$use->assign_group }}{{$use->primary_dpt }}{{$use->created_at}}{{$use->Lastlogin_at}} {!! Form::open(['route'=>['agents.destroy', $use->id],'method'=>'DELETE']) !!} - -
+ Edit - {!! Form::button(' Delete', + {!! Form::button(' Delete', ['type' => 'submit', - 'class'=> 'actions-line icon-trash', + 'class'=> 'btn btn-warning btn-xs btn-flat', 'onclick'=>'return confirm("Are you sure?")']) !!} - -
- {!! Form::close() !!}
+ +
+
-
-
-
- - - @section('FooterInclude') - @stop @stop \ No newline at end of file diff --git a/code/resources/views/themes/default1/admin/agent/departments/create.blade.php b/code/code/resources/views/themes/default1/admin/agent/departments/create.blade.php similarity index 94% rename from code/resources/views/themes/default1/admin/agent/departments/create.blade.php rename to code/code/resources/views/themes/default1/admin/agent/departments/create.blade.php index 26f7e99dd..b0a9709be 100644 --- a/code/resources/views/themes/default1/admin/agent/departments/create.blade.php +++ b/code/code/resources/views/themes/default1/admin/agent/departments/create.blade.php @@ -1,4 +1,4 @@ -@extends('themes.default1.layouts.blank') +@extends('themes.default1.layouts.admin') @section('Staffs') class="active" @@ -44,7 +44,7 @@ class="active"
- +
{!! Form::label('name',Lang::get('lang.name')) !!} @@ -52,7 +52,7 @@ class="active" {!! Form::text('name',null,['class' => 'form-control']) !!}
- +
{!! Form::label('type',Lang::get('lang.type')) !!} @@ -71,7 +71,7 @@ class="active"
- +
{!! Form::label('sla',Lang::get('lang.SLA_plan')) !!} @@ -79,7 +79,7 @@ class="active" {!!Form::select('sla', ['SLA Plans'=>$slas->lists('grace_period','grace_period')],null,['class' => 'form-control select']) !!}
- +
{!! Form::label('manager',Lang::get('lang.manager')) !!} @@ -89,7 +89,7 @@ class="active"
- +
{!! Form::label('ticket_assignment',Lang::get('lang.ticket_assignment')) !!}
@@ -100,7 +100,7 @@ class="active"
- +
{!! Form::label('outgoing_email',Lang::get('lang.outgoing_emails')) !!} @@ -108,13 +108,12 @@ class="active" {!!Form::select('outgoing_email', [''=>'Select an Email','Outgoing Emails'=>$emails->lists('email_address','email_address')],null,['class' => 'form-control select']) !!}
- +
{!! Form::label('template_set',Lang::get('lang.template_set')) !!} {!! $errors->first('template_set', ':message') !!} {!!Form::select('template_set', [''=>'Select a Template','Templates'=>$templates->lists('name','name')],null,['class' => 'form-control select']) !!} -
@@ -122,7 +121,7 @@ class="active"
- +
{!! Form::label('auto_ticket_response',Lang::get('lang.auto_responding_settings')) !!}
{!! Form::checkbox('auto_ticket_response',1,null,['class' => 'checkbox']) !!} @@ -131,7 +130,7 @@ class="active"
- +
{!! Form::label('auto_message_response',Lang::get('lang.new_message')) !!}
{!! Form::checkbox('auto_message_response',1,null,['class' => 'checkbox']) !!} @@ -145,7 +144,7 @@ class="active"
- +
{!! Form::label('auto_response_email',Lang::get('lang.auto_response_email')) !!} @@ -154,7 +153,7 @@ class="active"
- +
{!! Form::label('recipient',Lang::get('lang.recipient')) !!} @@ -164,7 +163,7 @@ class="active"
- +

{{Lang::get('lang.group_access')}}

diff --git a/code/resources/views/themes/default1/admin/agent/departments/edit.blade.php b/code/code/resources/views/themes/default1/admin/agent/departments/edit.blade.php similarity index 94% rename from code/resources/views/themes/default1/admin/agent/departments/edit.blade.php rename to code/code/resources/views/themes/default1/admin/agent/departments/edit.blade.php index 8a42354d5..bec5fbcdf 100644 --- a/code/resources/views/themes/default1/admin/agent/departments/edit.blade.php +++ b/code/code/resources/views/themes/default1/admin/agent/departments/edit.blade.php @@ -1,4 +1,4 @@ -@extends('themes.default1.layouts.blank') +@extends('themes.default1.layouts.admin') @section('Staffs') class="active" @@ -43,7 +43,7 @@ class="active"
- +
{!! Form::label('name',Lang::get('lang.name')) !!} @@ -51,7 +51,7 @@ class="active" {!! Form::text('name',null,['disabled'=>'disabled','class' => 'form-control']) !!}
- +
{!! Form::label('type',Lang::get('lang.type')) !!} @@ -70,7 +70,7 @@ class="active"
- +
{!! Form::label('sla',Lang::get('lang.SLA_plan')) !!} @@ -78,7 +78,7 @@ class="active" {!!Form::select('sla', ['SLA Plans'=>$slas->lists('grace_period','grace_period')],null,['class' => 'form-control select']) !!}
- +
{!! Form::label('manager',Lang::get('lang.manager')) !!} @@ -88,7 +88,7 @@ class="active"
- +
{!! Form::label('ticket_assignment',Lang::get('lang.ticket_assignment')) !!}
@@ -99,7 +99,7 @@ class="active"
- +
{!! Form::label('outgoing_email',Lang::get('lang.outgoing_emails')) !!} @@ -107,7 +107,7 @@ class="active" {!!Form::select('outgoing_email', [''=>'Select an Email','Outgoing Emails'=>$emails->lists('email_address','email_address')],null,['class' => 'form-control select']) !!}
- +
{!! Form::label('template_set',Lang::get('lang.template_set')) !!} @@ -121,7 +121,7 @@ class="active"
- +
{!! Form::label('auto_ticket_response',Lang::get('lang.auto_responding_settings')) !!}
{!! Form::checkbox('auto_ticket_response',1,null,['class' => 'checkbox']) !!} @@ -130,7 +130,7 @@ class="active"
- +
{!! Form::label('auto_message_response',Lang::get('lang.new_message')) !!}
{!! Form::checkbox('auto_message_response',1,null,['class' => 'checkbox']) !!} @@ -144,7 +144,7 @@ class="active"
- +
{!! Form::label('auto_response_email',Lang::get('lang.auto_response_email')) !!} @@ -153,7 +153,7 @@ class="active"
- +
{!! Form::label('recipient',Lang::get('lang.recipient')) !!} @@ -163,7 +163,7 @@ class="active"
- +

{{Lang::get('lang.group_access')}}

diff --git a/code/resources/views/themes/default1/admin/agent/departments/index.blade.php b/code/code/resources/views/themes/default1/admin/agent/departments/index.blade.php similarity index 81% rename from code/resources/views/themes/default1/admin/agent/departments/index.blade.php rename to code/code/resources/views/themes/default1/admin/agent/departments/index.blade.php index ac06a6608..8908f641e 100644 --- a/code/resources/views/themes/default1/admin/agent/departments/index.blade.php +++ b/code/code/resources/views/themes/default1/admin/agent/departments/index.blade.php @@ -1,4 +1,4 @@ -@extends('themes.default1.layouts.blank') +@extends('themes.default1.layouts.admin') @section('Staffs') class="active" @@ -56,7 +56,7 @@ class="active" {{Session::get('fails')}}
@endif - + @@ -72,29 +72,22 @@ class="active" - - + + diff --git a/code/resources/views/themes/default1/admin/agent/groups/create.blade.php b/code/code/resources/views/themes/default1/admin/agent/groups/create.blade.php similarity index 91% rename from code/resources/views/themes/default1/admin/agent/groups/create.blade.php rename to code/code/resources/views/themes/default1/admin/agent/groups/create.blade.php index 33ed019ee..c501fe7bb 100644 --- a/code/resources/views/themes/default1/admin/agent/groups/create.blade.php +++ b/code/code/resources/views/themes/default1/admin/agent/groups/create.blade.php @@ -1,4 +1,4 @@ -@extends('themes.default1.layouts.blank') +@extends('themes.default1.layouts.admin') @section('Staffs') class="active" @@ -43,7 +43,7 @@ class="active"
- +
{!! Form::label('name',Lang::get('lang.name')) !!} @@ -51,7 +51,7 @@ class="active" {!! Form::text('name',null,['class' => 'form-control']) !!}
- +
{!! Form::label('group_status',Lang::get('lang.status')) !!} @@ -68,7 +68,7 @@ class="active"
- +
{!! Form::label('can_create_ticket',Lang::get('lang.can_create_ticket')) !!}
@@ -79,7 +79,7 @@ class="active" - +
{!! Form::label('can_edit_ticket',Lang::get('lang.can_edit_ticket')) !!}
@@ -90,7 +90,7 @@ class="active" - +
{!! Form::label('can_post_ticket',Lang::get('lang.can_post_ticket')) !!}
@@ -101,7 +101,7 @@ class="active" - +
{!! Form::label('can_close_ticket',Lang::get('lang.can_close_ticket')) !!}
@@ -112,7 +112,7 @@ class="active" - +
{!! Form::label('can_delete_ticket',Lang::get('lang.can_delete_ticket')) !!}
@@ -123,7 +123,7 @@ class="active" - +
{!! Form::label('can_assign_ticket',Lang::get('lang.can_assign_ticket')) !!}
@@ -134,7 +134,7 @@ class="active" - +
{!! Form::label('can_trasfer_ticket',Lang::get('lang.can_transfer_ticket')) !!}
@@ -143,7 +143,7 @@ class="active"
- +
{!! Form::label('can_ban_email',Lang::get('lang.can_ban_emails')) !!}
@@ -152,7 +152,7 @@ class="active"
- +
{!! Form::label('can_manage_canned',Lang::get('lang.can_manage_premade')) !!}
@@ -161,7 +161,7 @@ class="active"
- +
{!! Form::label('can_manage_faq',Lang::get('lang.can_manage_FAQ')) !!}
@@ -170,7 +170,7 @@ class="active"
- +
{!! Form::label('can_view_agent_stats',Lang::get('lang.can_view_agent_stats')) !!}
@@ -179,7 +179,7 @@ class="active"
- +
{!! Form::label('department_access',Lang::get('lang.department_access')) !!}
diff --git a/code/resources/views/themes/default1/admin/agent/groups/edit.blade.php b/code/code/resources/views/themes/default1/admin/agent/groups/edit.blade.php similarity index 90% rename from code/resources/views/themes/default1/admin/agent/groups/edit.blade.php rename to code/code/resources/views/themes/default1/admin/agent/groups/edit.blade.php index 3297c8fc3..dad320ad0 100644 --- a/code/resources/views/themes/default1/admin/agent/groups/edit.blade.php +++ b/code/code/resources/views/themes/default1/admin/agent/groups/edit.blade.php @@ -1,4 +1,4 @@ -@extends('themes.default1.layouts.blank') +@extends('themes.default1.layouts.admin') @section('Staffs') class="active" @@ -45,7 +45,7 @@ class="active"
- +
{!! Form::label('name',Lang::get('lang.name')) !!} @@ -53,7 +53,7 @@ class="active" {!! Form::text('name',null,['disabled'=>'disabled','class' => 'form-control']) !!}
- +
{!! Form::label('group_status',Lang::get('lang.status')) !!} @@ -70,7 +70,7 @@ class="active"
- +
{!! Form::label('can_create_ticket',Lang::get('lang.can_create_ticket')) !!}
@@ -81,7 +81,7 @@ class="active" - +
{!! Form::label('can_edit_ticket',Lang::get('lang.can_edit_ticket')) !!}
@@ -91,7 +91,7 @@ class="active" - +
{!! Form::label('can_post_ticket',Lang::get('lang.can_post_ticket')) !!} @@ -102,7 +102,7 @@ class="active" - +
{!! Form::label('can_close_ticket',Lang::get('lang.can_close_ticket')) !!} @@ -114,7 +114,7 @@ class="active" - +
{!! Form::label('can_delete_ticket',Lang::get('lang.can_delete_ticket')) !!}
@@ -125,7 +125,7 @@ class="active" - +
{!! Form::label('can_assign_ticket',Lang::get('lang.can_assign_ticket')) !!}
@@ -136,7 +136,7 @@ class="active" - +
{!! Form::label('can_trasfer_ticket',Lang::get('lang.can_transfer_ticket')) !!}
@@ -145,7 +145,7 @@ class="active"
- +
{!! Form::label('can_ban_email',Lang::get('lang.can_ban_emails')) !!}
@@ -154,7 +154,7 @@ class="active"
- +
{!! Form::label('can_manage_canned',Lang::get('lang.can_manage_premade')) !!}
@@ -163,7 +163,7 @@ class="active"
- +
{!! Form::label('can_manage_faq',Lang::get('lang.can_manage_FAQ')) !!}
@@ -172,7 +172,7 @@ class="active"
- +
{!! Form::label('can_view_agent_stats',Lang::get('lang.can_view_agent_stats')) !!}
@@ -181,7 +181,7 @@ class="active"
- +
{!! Form::label('department_access',Lang::get('lang.department_access')) !!}
@@ -192,7 +192,7 @@ class="active"
- + {!! Form::label('admin_notes',Lang::get('lang.admin_notes')) !!} {!! Form::textarea('admin_notes',null,['class' => 'form-control','size' => '30x5']) !!} diff --git a/code/resources/views/themes/default1/admin/agent/groups/index.blade.php b/code/code/resources/views/themes/default1/admin/agent/groups/index.blade.php similarity index 84% rename from code/resources/views/themes/default1/admin/agent/groups/index.blade.php rename to code/code/resources/views/themes/default1/admin/agent/groups/index.blade.php index 028b9e3d6..98e39fdb4 100644 --- a/code/resources/views/themes/default1/admin/agent/groups/index.blade.php +++ b/code/code/resources/views/themes/default1/admin/agent/groups/index.blade.php @@ -1,4 +1,4 @@ -@extends('themes.default1.layouts.blank') +@extends('themes.default1.layouts.admin') @section('Staffs') class="active" @@ -56,7 +56,7 @@ class="active" {{Session::get('fails')}}
@endif - +
{{$department -> name }} @if($department->type=='1') -

{{'Public'}}

+ {{'Public'}} @else -

{{'Private'}}

+ {{'Private'}} @endif - - -
{{$department -> outgoing_email}}{{$department -> manager}}{{$department->outgoing_email}}{{$department->manager}} {!! Form::open(['route'=>['departments.destroy', $department->id],'method'=>'DELETE']) !!} - -
+ Edit - {!! Form::button(' Delete', + {!! Form::button(' Delete', ['type' => 'submit', - 'class'=> 'actions-line icon-trash', + 'class'=> 'btn btn-warning btn-xs btn-flat', 'onclick'=>'return confirm("Are you sure?")']) !!} - -
- {!! Form::close() !!}
@@ -73,9 +73,9 @@ class="active" diff --git a/code/resources/views/themes/default1/admin/agent/teams/create.blade.php b/code/code/resources/views/themes/default1/admin/agent/teams/create.blade.php similarity index 86% rename from code/resources/views/themes/default1/admin/agent/teams/create.blade.php rename to code/code/resources/views/themes/default1/admin/agent/teams/create.blade.php index a9cf53919..d67a2ac69 100644 --- a/code/resources/views/themes/default1/admin/agent/teams/create.blade.php +++ b/code/code/resources/views/themes/default1/admin/agent/teams/create.blade.php @@ -1,4 +1,4 @@ -@extends('themes.default1.layouts.blank') +@extends('themes.default1.layouts.admin') @section('Staffs') class="active" @@ -48,6 +48,7 @@ class="active"
+
{!! Form::label('name',Lang::get('lang.name')) !!} @@ -56,16 +57,18 @@ class="active"
+
{!! Form::label('team_lead',Lang::get('lang.team_lead')) !!} {!! $errors->first('team_lead', ':message') !!} - {!!Form::select('team_lead',[''=>'Select a Team Lead','Team Members'=>$user->where('role','agent')->lists('user_name','user_name')],null,['class' => 'form-control select']) !!} + orWhere('role','agent')->get(); ?> + {!! Form::select('team_lead',[''=>'Select a Team Leader','Members'=>$user->lists('user_name','id')],null,['class' => 'form-control']) !!}
- +
{!! Form::label('status',Lang::get('lang.status')) !!} @@ -82,7 +85,7 @@ class="active"
- +
@@ -96,6 +99,7 @@ class="active"
+
{!! Form::label('admin_notes',Lang::get('lang.admin_notes')) !!} diff --git a/code/resources/views/themes/default1/admin/agent/teams/edit.blade.php b/code/code/resources/views/themes/default1/admin/agent/teams/edit.blade.php similarity index 86% rename from code/resources/views/themes/default1/admin/agent/teams/edit.blade.php rename to code/code/resources/views/themes/default1/admin/agent/teams/edit.blade.php index f99b84e13..10c6532fe 100644 --- a/code/resources/views/themes/default1/admin/agent/teams/edit.blade.php +++ b/code/code/resources/views/themes/default1/admin/agent/teams/edit.blade.php @@ -1,4 +1,4 @@ -@extends('themes.default1.layouts.blank') +@extends('themes.default1.layouts.admin') @section('Staffs') class="active" @@ -46,7 +46,7 @@ class="active"
- +
{!! Form::label('name',Lang::get('lang.name')) !!} @@ -56,23 +56,17 @@ class="active"
- +
{!! Form::label('team_lead',Lang::get('lang.team_lead')) !!} {!! $errors->first('team_lead', ':message') !!} - - +orWhere('role','agent')->get(); ?> + {!! Form::select('team_lead',[''=>'Select a Team Leader','Members'=>$user->lists('user_name','id')],null,['class' => 'form-control']) !!}
- +
{!! Form::label('status',Lang::get('lang.status')) !!} @@ -89,7 +83,7 @@ class="active"
- +
@@ -102,7 +96,7 @@ class="active"
- +
{!! Form::label('admin_notes',Lang::get('lang.admin_notes')) !!} diff --git a/code/resources/views/themes/default1/admin/agent/teams/index.blade.php b/code/code/resources/views/themes/default1/admin/agent/teams/index.blade.php similarity index 85% rename from code/resources/views/themes/default1/admin/agent/teams/index.blade.php rename to code/code/resources/views/themes/default1/admin/agent/teams/index.blade.php index 33fd90733..e42722382 100644 --- a/code/resources/views/themes/default1/admin/agent/teams/index.blade.php +++ b/code/code/resources/views/themes/default1/admin/agent/teams/index.blade.php @@ -1,4 +1,4 @@ -@extends('themes.default1.layouts.blank') +@extends('themes.default1.layouts.admin') @section('Staffs') class="active" @@ -71,9 +71,9 @@ class="active"
@endforeach -
{{$group -> name }} @if($group->group_status=='1') -

{{'Active'}}

+ {{'Active'}} @else -

{{'Inactive'}}

+ {{'Inactive'}} @endif @@ -85,16 +85,13 @@ class="active"
{{$group -> updated_at}} {!! Form::open(['route'=>['groups.destroy', $group->id],'method'=>'DELETE']) !!} - -
+ Edit - {!! Form::button(' Delete', + {!! Form::button(' Delete', ['type' => 'submit', - 'class'=> 'actions-line icon-trash', + 'class'=> 'btn btn-warning btn-xs btn-flat', 'onclick'=>'return confirm("Are you sure?")']) !!} - -
{!! Form::close() !!}
{{$team -> name }} @if($team->status=='1') -

{{'Active'}}

+ {{'Active'}} @else -

{{'Inactive'}}

+ {{'Inactive'}} @endif @@ -83,22 +83,17 @@ class="active"
{{$team -> updated_at}} {!! Form::open(['route'=>['teams.destroy', $team->id],'method'=>'DELETE']) !!} - -
- {!! Form::button(' Delete', + Edit + {!! Form::button(' Delete', ['type' => 'submit', - 'class'=> 'actions-line icon-trash', + 'class'=> 'btn btn-warning btn-xs btn-flat', 'onclick'=>'return confirm("Are you sure?")']) !!} - -
- {!! Form::close() !!}
diff --git a/code/resources/views/themes/default1/admin/dashboard.blade.php b/code/code/resources/views/themes/default1/admin/dashboard.blade.php similarity index 88% rename from code/resources/views/themes/default1/admin/dashboard.blade.php rename to code/code/resources/views/themes/default1/admin/dashboard.blade.php index 410fa4279..2f2e900df 100644 --- a/code/resources/views/themes/default1/admin/dashboard.blade.php +++ b/code/code/resources/views/themes/default1/admin/dashboard.blade.php @@ -1,5 +1,4 @@ - -@extends('themes.default1.layouts.blank') +@extends('themes.default1.layouts.admin') @section('HeadInclude') @stop @@ -13,7 +12,7 @@ @section('breadcrumbs') @stop diff --git a/code/resources/views/themes/default1/admin/emails/banlist/create.blade.php b/code/code/resources/views/themes/default1/admin/emails/banlist/create.blade.php similarity index 98% rename from code/resources/views/themes/default1/admin/emails/banlist/create.blade.php rename to code/code/resources/views/themes/default1/admin/emails/banlist/create.blade.php index 0fa80cdec..fc12eb419 100644 --- a/code/resources/views/themes/default1/admin/emails/banlist/create.blade.php +++ b/code/code/resources/views/themes/default1/admin/emails/banlist/create.blade.php @@ -1,4 +1,4 @@ -@extends('themes.default1.layouts.blank') +@extends('themes.default1.layouts.admin') @section('Emails') diff --git a/code/resources/views/themes/default1/admin/emails/banlist/edit.blade.php b/code/code/resources/views/themes/default1/admin/emails/banlist/edit.blade.php similarity index 98% rename from code/resources/views/themes/default1/admin/emails/banlist/edit.blade.php rename to code/code/resources/views/themes/default1/admin/emails/banlist/edit.blade.php index 34c7878d5..24e2199e3 100644 --- a/code/resources/views/themes/default1/admin/emails/banlist/edit.blade.php +++ b/code/code/resources/views/themes/default1/admin/emails/banlist/edit.blade.php @@ -1,4 +1,4 @@ -@extends('themes.default1.layouts.blank') +@extends('themes.default1.layouts.admin') @section('Emails') class="active" diff --git a/code/resources/views/themes/default1/admin/emails/banlist/index.blade.php b/code/code/resources/views/themes/default1/admin/emails/banlist/index.blade.php similarity index 89% rename from code/resources/views/themes/default1/admin/emails/banlist/index.blade.php rename to code/code/resources/views/themes/default1/admin/emails/banlist/index.blade.php index 091184f5e..31537f3f3 100644 --- a/code/resources/views/themes/default1/admin/emails/banlist/index.blade.php +++ b/code/code/resources/views/themes/default1/admin/emails/banlist/index.blade.php @@ -1,4 +1,4 @@ -@extends('themes.default1.layouts.blank') +@extends('themes.default1.layouts.admin') @section('Emails') class="active" @@ -89,18 +89,13 @@ class="active" {!! Form::open(['route'=>['banlist.destroy', $ban->id],'method'=>'DELETE']) !!} - -
- - + Edit - {!! Form::button(' Delete', + {!! Form::button(' Delete', ['type' => 'submit', - 'class'=> 'actions-line icon-trash', + 'class'=> 'btn btn-warning btn-xs btn-flat', 'onclick'=>'return confirm("Are you sure?")']) !!} - -
{!! Form::close() !!} @endforeach diff --git a/code/resources/views/themes/default1/admin/emails/emails/create.blade.php b/code/code/resources/views/themes/default1/admin/emails/emails/create.blade.php similarity index 94% rename from code/resources/views/themes/default1/admin/emails/emails/create.blade.php rename to code/code/resources/views/themes/default1/admin/emails/emails/create.blade.php index 0b93cb9cd..942f2c0ff 100644 --- a/code/resources/views/themes/default1/admin/emails/emails/create.blade.php +++ b/code/code/resources/views/themes/default1/admin/emails/emails/create.blade.php @@ -1,4 +1,4 @@ -@extends('themes.default1.layouts.blank') +@extends('themes.default1.layouts.admin') @section('Emails') class="active" @@ -43,7 +43,7 @@ class="active"
- +
{!! Form::label('email_address',Lang::get('lang.email_address')) !!} @@ -51,7 +51,7 @@ class="active" {!! Form::text('email_address',null,['class' => 'form-control']) !!}
- +
{!! Form::label('email_name',Lang::get('lang.email_name')) !!} @@ -63,7 +63,7 @@ class="active"
- +
{!! Form::label('department',Lang::get('lang.department')) !!} @@ -71,7 +71,7 @@ class="active" {!!Form::select('department', [''=>'Select a Department','departments'=>$departments->lists('name','name')],null,['class' => 'form-control select']) !!}
- +
{!! Form::label('priority',Lang::get('lang.priority')) !!} @@ -79,7 +79,7 @@ class="active" {!!Form::select('priority', [''=>'Select a Priority','Priorities'=>$priority->lists('name','name')],null,['class' => 'form-control select']) !!}
- +
{!! Form::label('help_topic',Lang::get('lang.help_topic')) !!} @@ -89,7 +89,7 @@ class="active"
- +
{!! Form::label('',Lang::get('lang.auto_response')) !!} @@ -99,7 +99,7 @@ class="active"
- +
{!! Form::label('user_name',Lang::get('lang.user_name')) !!} @@ -107,7 +107,7 @@ class="active" {!! Form::text('user_name',null,['class' => 'form-control']) !!}
- +
{!! Form::label('password',Lang::get('lang.password')) !!} @@ -131,7 +131,7 @@ class="active"
- +
{!! Form::label('fetching_status',Lang::get('lang.status')) !!}
@@ -170,7 +170,7 @@ class="active" {!!Form::select('mailbox_protocol', [''=>'Select a Mailbox Protocol','Mailbox Protocols'=>$mailbox_protocols->lists('name','name')],null,['class' => 'form-control select']) !!}
--> - +
{!! Form::label('imap_config',Lang::get('lang.imap_config')) !!} @@ -192,7 +192,7 @@ class="active"
- +
@@ -210,7 +210,7 @@ class="active"
- +
{!! Form::label('sending_port',Lang::get('lang.port_number')) !!} @@ -218,7 +218,7 @@ class="active" {!! Form::text('sending_port',null,['class' => 'form-control']) !!}
- +
{!! Form::label('sending_host',Lang::get('lang.host_name')) !!} @@ -230,7 +230,7 @@ class="active"
- +
@@ -246,7 +246,7 @@ class="active"
- +
{!! Form::label('',Lang::get('lang.header_spoofing')) !!} @@ -257,7 +257,7 @@ class="active"
- +
{!! Form::label('internal_notes',Lang::get('lang.internal_notes')) !!} diff --git a/code/resources/views/themes/default1/admin/emails/emails/edit.blade.php b/code/code/resources/views/themes/default1/admin/emails/emails/edit.blade.php similarity index 94% rename from code/resources/views/themes/default1/admin/emails/emails/edit.blade.php rename to code/code/resources/views/themes/default1/admin/emails/emails/edit.blade.php index e2e3579d6..b6c66dd68 100644 --- a/code/resources/views/themes/default1/admin/emails/emails/edit.blade.php +++ b/code/code/resources/views/themes/default1/admin/emails/emails/edit.blade.php @@ -1,4 +1,4 @@ -@extends('themes.default1.layouts.blank') +@extends('themes.default1.layouts.admin') @section('Emails') class="active" @@ -43,7 +43,7 @@ class="active"
- +
{!! Form::label('email_address',Lang::get('lang.email_address')) !!} @@ -51,7 +51,7 @@ class="active" {!! Form::text('email_address',null,['disabled'=>'disabled','class' => 'form-control']) !!}
- +
{!! Form::label('email_name',Lang::get('lang.email_name')) !!} @@ -63,7 +63,7 @@ class="active"
- +
{!! Form::label('department',Lang::get('lang.department')) !!} @@ -71,7 +71,7 @@ class="active" {!!Form::select('department', [''=>'Select a Department','departments'=>$departments->lists('name','name')],null,['class' => 'form-control select']) !!}
- +
{!! Form::label('priority',Lang::get('lang.priority')) !!} @@ -79,17 +79,16 @@ class="active" {!!Form::select('priority', [''=>'Select a Priority','Priorities'=>$priority->lists('name','name')],null,['class' => 'form-control select']) !!}
- +
{!! Form::label('help_topic',Lang::get('lang.help_topic')) !!} {!! $errors->first('help_topic', ':message') !!} {!!Form::select('help_topic', [''=>'Select a Helptopic','Help Topics'=>$helps->lists('topic','topic')],null,['class' => 'form-control select']) !!} -
- +
{!! Form::label('',Lang::get('lang.auto_response')) !!} @@ -99,7 +98,7 @@ class="active"
- +
{!! Form::label('user_name',Lang::get('lang.user_name')) !!} @@ -107,7 +106,7 @@ class="active" {!! Form::text('user_name',null,['class' => 'form-control']) !!}
- +
{!! Form::label('password',Lang::get('lang.password')) !!} @@ -131,7 +130,7 @@ class="active"
- +
{!! Form::label('fetching_status',Lang::get('lang.status')) !!}
@@ -170,7 +169,7 @@ class="active" {!!Form::select('mailbox_protocol', [''=>'Select a Mailbox Protocol','Mailbox Protocols'=>$mailbox_protocols->lists('name','name')],null,['class' => 'form-control select']) !!}
--> - +
{!! Form::label('imap_config',Lang::get('lang.imap_config')) !!} @@ -192,7 +191,7 @@ class="active"
- +
@@ -210,7 +209,7 @@ class="active"
- +
{!! Form::label('sending_port',Lang::get('lang.port_number')) !!} @@ -218,7 +217,7 @@ class="active" {!! Form::text('sending_port',null,['class' => 'form-control']) !!}
- +
{!! Form::label('sending_host',Lang::get('lang.host_name')) !!} @@ -230,7 +229,7 @@ class="active"
- +
@@ -246,7 +245,7 @@ class="active"
- +
{!! Form::label('',Lang::get('lang.header_spoofing')) !!} @@ -257,7 +256,7 @@ class="active"
- +
{!! Form::label('internal_notes',Lang::get('lang.internal_notes')) !!} diff --git a/code/resources/views/themes/default1/admin/emails/emails/index.blade.php b/code/code/resources/views/themes/default1/admin/emails/emails/index.blade.php similarity index 82% rename from code/resources/views/themes/default1/admin/emails/emails/index.blade.php rename to code/code/resources/views/themes/default1/admin/emails/emails/index.blade.php index dcbe93e40..b46a5acc5 100644 --- a/code/resources/views/themes/default1/admin/emails/emails/index.blade.php +++ b/code/code/resources/views/themes/default1/admin/emails/emails/index.blade.php @@ -1,4 +1,4 @@ -@extends('themes.default1.layouts.blank') +@extends('themes.default1.layouts.admin') @section('Emails') class="active" @@ -55,7 +55,7 @@ class="active" {{Session::get('fails')}}
@endif - + @@ -74,16 +74,13 @@ class="active" diff --git a/code/code/resources/views/themes/default1/admin/emails/smtp.blade.php b/code/code/resources/views/themes/default1/admin/emails/smtp.blade.php new file mode 100644 index 000000000..85024c909 --- /dev/null +++ b/code/code/resources/views/themes/default1/admin/emails/smtp.blade.php @@ -0,0 +1,94 @@ +@extends('themes.default1.layouts.admin') + + +@section('Emails') +class="active" +@stop + +@section('emails-bar') +active +@stop + +@section('smtp') +class="active" +@stop + +@section('HeadInclude') +@stop + + + +@section('content') + +@if(Session::has('success')) +
+ + Success! + + {{Session::get('success')}} +
+ @endif + + @if(Session::has('fails')) +
+ + Alert! Failed. + + {{Session::get('fails')}} +
+ @endif + + +
+
+

{{Lang::get('lang.smtp')}}

+
+ {!! Form::submit(Lang::get('lang.save'),['class'=>'btn btn-primary'])!!} +
+
+ +
+
+ + +
+ {!! Form::label('host',Lang::get('lang.host')) !!} + {!! $errors->first('host', ':message') !!} + {!! Form::text('host',null,['class' => 'form-control']) !!} +
+ +
+ {!! Form::label('port',Lang::get('lang.port')) !!} + {!! $errors->first('port', ':message') !!} + {!! Form::text('port',null,['class' => 'form-control']) !!} +
+ +
+ {!! Form::label('encryption',Lang::get('lang.encryption')) !!} + {!! $errors->first('encryption', ':message') !!} + {!! Form::text('encryption',null,['class' => 'form-control']) !!} +
+ +
+ {!! Form::label('name',Lang::get('lang.name')) !!} + {!! $errors->first('name', ':message') !!} + {!! Form::text('name',null,['class' => 'form-control']) !!} +
+ +
+ {!! Form::label('email',Lang::get('lang.email')) !!} + {!! $errors->first('email', ':message') !!} + {!! Form::text('email',null,['class' => 'form-control']) !!} +
+ +
+ {!! Form::label('password',Lang::get('lang.password')) !!} + {!! $errors->first('password', ':message') !!} + {!! Form::text('password',null,['class' => 'form-control']) !!} +
+
+ +
+
+ +@stop \ No newline at end of file diff --git a/code/resources/views/themes/default1/admin/emails/template/connection.blade.php b/code/code/resources/views/themes/default1/admin/emails/template/connection.blade.php similarity index 100% rename from code/resources/views/themes/default1/admin/emails/template/connection.blade.php rename to code/code/resources/views/themes/default1/admin/emails/template/connection.blade.php diff --git a/code/resources/views/themes/default1/admin/emails/template/create.blade.php b/code/code/resources/views/themes/default1/admin/emails/template/create.blade.php similarity index 98% rename from code/resources/views/themes/default1/admin/emails/template/create.blade.php rename to code/code/resources/views/themes/default1/admin/emails/template/create.blade.php index 993136047..8efab69cf 100644 --- a/code/resources/views/themes/default1/admin/emails/template/create.blade.php +++ b/code/code/resources/views/themes/default1/admin/emails/template/create.blade.php @@ -1,4 +1,4 @@ -@extends('themes.default1.layouts.blank') +@extends('themes.default1.layouts.admin') @section('Emails') class="active" diff --git a/code/resources/views/themes/default1/admin/emails/template/edit.blade.php b/code/code/resources/views/themes/default1/admin/emails/template/edit.blade.php similarity index 98% rename from code/resources/views/themes/default1/admin/emails/template/edit.blade.php rename to code/code/resources/views/themes/default1/admin/emails/template/edit.blade.php index cc7966453..fdffd179d 100644 --- a/code/resources/views/themes/default1/admin/emails/template/edit.blade.php +++ b/code/code/resources/views/themes/default1/admin/emails/template/edit.blade.php @@ -1,4 +1,4 @@ -@extends('themes.default1.layouts.blank') +@extends('themes.default1.layouts.admin') @section('Emails') class="active" diff --git a/code/resources/views/themes/default1/admin/emails/template/formDiagno.blade.php b/code/code/resources/views/themes/default1/admin/emails/template/formDiagno.blade.php similarity index 98% rename from code/resources/views/themes/default1/admin/emails/template/formDiagno.blade.php rename to code/code/resources/views/themes/default1/admin/emails/template/formDiagno.blade.php index d488a9cf1..3111ceac7 100644 --- a/code/resources/views/themes/default1/admin/emails/template/formDiagno.blade.php +++ b/code/code/resources/views/themes/default1/admin/emails/template/formDiagno.blade.php @@ -1,4 +1,4 @@ -@extends('themes.default1.layouts.blank') +@extends('themes.default1.layouts.admin') @section('Emails') class="active" diff --git a/code/resources/views/themes/default1/admin/emails/template/index.blade.php b/code/code/resources/views/themes/default1/admin/emails/template/index.blade.php similarity index 89% rename from code/resources/views/themes/default1/admin/emails/template/index.blade.php rename to code/code/resources/views/themes/default1/admin/emails/template/index.blade.php index 7f1da12fc..5ed2d8770 100644 --- a/code/resources/views/themes/default1/admin/emails/template/index.blade.php +++ b/code/code/resources/views/themes/default1/admin/emails/template/index.blade.php @@ -1,4 +1,4 @@ -@extends('themes.default1.layouts.blank') +@extends('themes.default1.layouts.admin') @section('Emails') class="active" @@ -88,17 +88,13 @@ class="active" @endforeach diff --git a/code/resources/views/themes/default1/admin/login.blade.php b/code/code/resources/views/themes/default1/admin/login.blade.php similarity index 93% rename from code/resources/views/themes/default1/admin/login.blade.php rename to code/code/resources/views/themes/default1/admin/login.blade.php index 7d109d275..4837cd4f0 100644 --- a/code/resources/views/themes/default1/admin/login.blade.php +++ b/code/code/resources/views/themes/default1/admin/login.blade.php @@ -4,20 +4,22 @@
+
+
-
+
-
+
diff --git a/code/resources/views/themes/default1/admin/manage/form/create.blade.php b/code/code/resources/views/themes/default1/admin/manage/form/create.blade.php similarity index 98% rename from code/resources/views/themes/default1/admin/manage/form/create.blade.php rename to code/code/resources/views/themes/default1/admin/manage/form/create.blade.php index cc17355f8..7ec42dbf3 100644 --- a/code/resources/views/themes/default1/admin/manage/form/create.blade.php +++ b/code/code/resources/views/themes/default1/admin/manage/form/create.blade.php @@ -1,4 +1,4 @@ -@extends('themes.default1.layouts.blank') +@extends('themes.default1.layouts.admin') @section('Manage') class="active" diff --git a/code/resources/views/themes/default1/admin/manage/form/edit.blade.php b/code/code/resources/views/themes/default1/admin/manage/form/edit.blade.php similarity index 98% rename from code/resources/views/themes/default1/admin/manage/form/edit.blade.php rename to code/code/resources/views/themes/default1/admin/manage/form/edit.blade.php index ff584dd8c..8143c997e 100644 --- a/code/resources/views/themes/default1/admin/manage/form/edit.blade.php +++ b/code/code/resources/views/themes/default1/admin/manage/form/edit.blade.php @@ -1,4 +1,4 @@ -@extends('themes.default1.layouts.blank') +@extends('themes.default1.layouts.admin') @section('Manage') class="active" diff --git a/code/resources/views/themes/default1/admin/manage/form/index.blade.php b/code/code/resources/views/themes/default1/admin/manage/form/index.blade.php similarity index 98% rename from code/resources/views/themes/default1/admin/manage/form/index.blade.php rename to code/code/resources/views/themes/default1/admin/manage/form/index.blade.php index 619292e3e..42e492b37 100644 --- a/code/resources/views/themes/default1/admin/manage/form/index.blade.php +++ b/code/code/resources/views/themes/default1/admin/manage/form/index.blade.php @@ -1,4 +1,4 @@ -@extends('themes.default1.layouts.blank') +@extends('themes.default1.layouts.admin') @section('Manage') class="active" diff --git a/code/resources/views/themes/default1/admin/manage/helptopic/create.blade.php b/code/code/resources/views/themes/default1/admin/manage/helptopic/create.blade.php similarity index 99% rename from code/resources/views/themes/default1/admin/manage/helptopic/create.blade.php rename to code/code/resources/views/themes/default1/admin/manage/helptopic/create.blade.php index 967298c10..0ee1116d1 100644 --- a/code/resources/views/themes/default1/admin/manage/helptopic/create.blade.php +++ b/code/code/resources/views/themes/default1/admin/manage/helptopic/create.blade.php @@ -1,4 +1,4 @@ -@extends('themes.default1.layouts.blank') +@extends('themes.default1.layouts.admin') @section('Manage') class="active" diff --git a/code/resources/views/themes/default1/admin/manage/helptopic/edit.blade.php b/code/code/resources/views/themes/default1/admin/manage/helptopic/edit.blade.php similarity index 99% rename from code/resources/views/themes/default1/admin/manage/helptopic/edit.blade.php rename to code/code/resources/views/themes/default1/admin/manage/helptopic/edit.blade.php index d96b94307..1066bdd04 100644 --- a/code/resources/views/themes/default1/admin/manage/helptopic/edit.blade.php +++ b/code/code/resources/views/themes/default1/admin/manage/helptopic/edit.blade.php @@ -1,4 +1,4 @@ -@extends('themes.default1.layouts.blank') +@extends('themes.default1.layouts.admin') @section('Manage') class="active" diff --git a/code/resources/views/themes/default1/admin/manage/helptopic/index.blade.php b/code/code/resources/views/themes/default1/admin/manage/helptopic/index.blade.php similarity index 85% rename from code/resources/views/themes/default1/admin/manage/helptopic/index.blade.php rename to code/code/resources/views/themes/default1/admin/manage/helptopic/index.blade.php index 3b2c577d8..3afe3ece5 100644 --- a/code/resources/views/themes/default1/admin/manage/helptopic/index.blade.php +++ b/code/code/resources/views/themes/default1/admin/manage/helptopic/index.blade.php @@ -1,4 +1,4 @@ -@extends('themes.default1.layouts.blank') +@extends('themes.default1.layouts.admin') @section('Manage') class="active" @@ -28,16 +28,10 @@ class="active" @section('content') -
-
-
-

{{Lang::get('lang.help_topic')}}

{{Lang::get('lang.create_help_topic')}}
- -
@@ -84,9 +78,9 @@ class="active"
@@ -94,9 +88,9 @@ class="active" @@ -108,14 +102,11 @@ class="active" @@ -89,17 +89,13 @@ class="active" @endforeach diff --git a/code/resources/views/themes/default1/admin/profile.blade.php b/code/code/resources/views/themes/default1/admin/profile-edit.blade.php similarity index 95% rename from code/resources/views/themes/default1/admin/profile.blade.php rename to code/code/resources/views/themes/default1/admin/profile-edit.blade.php index d37351c2e..0da178f8d 100644 --- a/code/resources/views/themes/default1/admin/profile.blade.php +++ b/code/code/resources/views/themes/default1/admin/profile-edit.blade.php @@ -1,4 +1,4 @@ -@extends('themes.default1.layouts.blank') +@extends('themes.default1.layouts.admin') @section('content')
@@ -34,6 +34,7 @@
@endif +
{!! Form::label('first_name',Lang::get('lang.first_name')) !!} @@ -41,7 +42,7 @@ {!! Form::text('first_name',null,['class' => 'form-control']) !!}
- +
{!! Form::label('last_name',Lang::get('lang.last_name')) !!} @@ -49,7 +50,7 @@ {!! Form::text('last_name',null,['class' => 'form-control']) !!}
- +
{!! Form::label('gender',Lang::get('lang.gender')) !!}
@@ -71,7 +72,7 @@ {{$user->email}}
- +
{!! Form::label('company',Lang::get('lang.company')) !!} @@ -81,6 +82,7 @@
+
{!! Form::label('ext',Lang::get('lang.ext')) !!} @@ -88,7 +90,7 @@ {!! Form::text('ext',null,['class' => 'form-control']) !!}
- +
{!! Form::label('phone_number',Lang::get('lang.phone')) !!} @@ -97,7 +99,7 @@
- +
{!! Form::label('mobile',Lang::get('lang.mobile_number')) !!} @@ -106,7 +108,7 @@
- +
{!! Form::label('profile_pic',Lang::get('lang.profile_pic')) !!} @@ -150,21 +152,21 @@ {{Session::get('fails')}}
@endif - +
{!! Form::label('old_password',Lang::get('lang.old_password')) !!} {!! Form::password('old_password',['placeholder'=>'Password','class' => 'form-control']) !!} {!! $errors->first('old_password', ':message') !!}
- +
{!! Form::label('new_password',Lang::get('lang.new_password')) !!} {!! Form::password('new_password',['placeholder'=>'New Password','class' => 'form-control']) !!} {!! $errors->first('new_password', ':message') !!}
- +
{!! Form::label('confirm_password',Lang::get('lang.confirm_password')) !!} {!! Form::password('confirm_password',['placeholder'=>'Confirm Password','class' => 'form-control']) !!} diff --git a/code/code/resources/views/themes/default1/admin/profile.blade.php b/code/code/resources/views/themes/default1/admin/profile.blade.php new file mode 100644 index 000000000..0e11440c0 --- /dev/null +++ b/code/code/resources/views/themes/default1/admin/profile.blade.php @@ -0,0 +1,55 @@ +@extends('themes.default1.layouts.admin') + +@section('content') + +
+ +
+ +

Profile

+ +
+ +
+ + @if(Session::has('success')) +
+ + Alert! Success. + + {{Session::get('success')}} +
+ @endif + + @if(Session::has('fails')) +
+ + Alert! Failed. + + {{Session::get('fails')}} +
+ @endif + + +
+
+ +
+
+ +

User Information

+

{{ $user->user_name }}

+

{{ $user->primary_dpt }}

+

{{ $user->assign_group }}

+

{{ $user->ext }}{{ $user->phone_number }}

+

Contact Information

+

{{ $user->mobile }}

+

{{ $user->company }}

+

{{ $user->agent_tzone }}

+

{{ $user->role }}

+
+
+
+
+ +@stop diff --git a/code/code/resources/views/themes/default1/admin/report.blade.php b/code/code/resources/views/themes/default1/admin/report.blade.php new file mode 100644 index 000000000..1e6423ec1 --- /dev/null +++ b/code/code/resources/views/themes/default1/admin/report.blade.php @@ -0,0 +1 @@ +
{{$e}}
\ No newline at end of file diff --git a/code/resources/views/themes/default1/admin/setting.php b/code/code/resources/views/themes/default1/admin/setting.php similarity index 100% rename from code/resources/views/themes/default1/admin/setting.php rename to code/code/resources/views/themes/default1/admin/setting.php diff --git a/code/resources/views/themes/default1/admin/settings/access.blade.php b/code/code/resources/views/themes/default1/admin/settings/access.blade.php similarity index 99% rename from code/resources/views/themes/default1/admin/settings/access.blade.php rename to code/code/resources/views/themes/default1/admin/settings/access.blade.php index bb6d2baac..da06e7c1e 100644 --- a/code/resources/views/themes/default1/admin/settings/access.blade.php +++ b/code/code/resources/views/themes/default1/admin/settings/access.blade.php @@ -1,4 +1,4 @@ -@extends('themes.default1.layouts.blank') +@extends('themes.default1.layouts.admin') @section('Settings') class="active" diff --git a/code/resources/views/themes/default1/admin/settings/alert.blade.php b/code/code/resources/views/themes/default1/admin/settings/alert.blade.php similarity index 80% rename from code/resources/views/themes/default1/admin/settings/alert.blade.php rename to code/code/resources/views/themes/default1/admin/settings/alert.blade.php index 3fc510426..6dd27a3f9 100644 --- a/code/resources/views/themes/default1/admin/settings/alert.blade.php +++ b/code/code/resources/views/themes/default1/admin/settings/alert.blade.php @@ -1,4 +1,4 @@ -@extends('themes.default1.layouts.blank') +@extends('themes.default1.layouts.admin') @section('Settings') class="active" @@ -33,12 +33,12 @@ class="active" {!! Form::model($alerts,['url' => 'postalert/'.$alerts->id, 'method' => 'PATCH']) !!}
-
+
-

{{Lang::get('lang.alert_notices')}} {!! Form::submit(Lang::get('lang.save'),['class'=>'form-group btn btn-primary pull-right'])!!}

- -
+

{{Lang::get('lang.alert_notices')}}

{!! Form::submit(Lang::get('lang.save'),['class'=>' btn btn-primary pull-right'])!!} +
+
@if(Session::has('success')) @@ -59,13 +59,6 @@ class="active"
@endif - -
- -
- -
-
@@ -78,18 +71,19 @@ class="active"
- +
- {!! Form::checkbox('ticket_status',1) !!} - {!! Form::label('ticket_status',Lang::get('lang.status')) !!} + + {!! Form::label('ticket_status',Lang::get('lang.status').":") !!}   + {!! Form::radio('ticket_status',1) !!} {!! Lang::get('lang.enable') !!}    {!! Form::radio('ticket_status',0) !!} {!! Lang::get('lang.disable') !!}
- - {!! Form::checkbox('ticket_admin_email',1) !!} - {!! Form::label('ticket_admin_email',Lang::get('lang.admin_email')) !!} + + {!! Form::checkbox('ticket_admin_email',1) !!} + {!! Form::label('ticket_admin_email',Lang::get('lang.admin_email_2')) !!}
@@ -119,12 +113,12 @@ class="active"
- +
- {!! Form::checkbox('message_status',1) !!} - {!! Form::label('message_status',Lang::get('lang.status')) !!} + {!! Form::label('message_status',Lang::get('lang.status').":") !!}   + {!! Form::radio('message_status',1) !!} {!! Lang::get('lang.enable') !!}    {!! Form::radio('message_status',0) !!} {!! Lang::get('lang.disable') !!}
@@ -159,15 +153,13 @@ class="active"
- +
- {!! Form::checkbox('transfer_status',1) !!} - {!! Form::label('transfer_status',Lang::get('lang.status')) !!} - - + {!! Form::label('transfer_status',Lang::get('lang.status').":") !!} + {!! Form::radio('transfer_status',1) !!} {!! Lang::get('lang.enable') !!}    {!! Form::radio('transfer_status',0) !!} {!! Lang::get('lang.disable') !!}
@@ -175,8 +167,6 @@ class="active"
{!! Form::checkbox('transfer_assigned_agent',1) !!} {!! Form::label('transfer_assigned_agent',Lang::get('lang.ticket_assignment_alert')) !!} - -
@@ -184,8 +174,6 @@ class="active"
{!! Form::checkbox('transfer_department_manager',1) !!} {!! Form::label('transfer_department_manager',Lang::get('lang.department_manager')) !!} - -
@@ -193,13 +181,9 @@ class="active"
{!! Form::checkbox('transfer_department_member',1) !!} {!! Form::label('transfer_department_member',Lang::get('lang.department_members')) !!} - -
- -
@@ -209,15 +193,13 @@ class="active"
- +
{!! Form::checkbox('system_error',1) !!} {!! Form::label('system_error',Lang::get('lang.system_errors')) !!} - -
@@ -225,8 +207,6 @@ class="active"
{!! Form::checkbox('sql_error',1) !!} {!! Form::label('sql_error',Lang::get('lang.SQL_errors')) !!} - -
@@ -234,13 +214,9 @@ class="active"
{!! Form::checkbox('excessive_failure',1) !!} {!! Form::label('excessive_failure',Lang::get('lang.excessive_failed_login_attempts')) !!} - -
- -
@@ -253,11 +229,12 @@ class="active"
- +
- {!! Form::checkbox('overdue_status',1) !!} - {!! Form::label('overdue_status',Lang::get('lang.status')) !!} + {!! Form::label('overdue_status',Lang::get('lang.status').":") !!} + {!! Form::radio('overdue_status',1) !!} {!! Lang::get('lang.enable') !!}    {!! Form::radio('overdue_status',0) !!} {!! Lang::get('lang.disable') !!} +
@@ -293,22 +270,18 @@ class="active"
-

{{Lang::get('lang.new_internal_note_alert')}}

+

{{Lang::get('lang.ticket_transfer_alert')}}

- +
- - - {!! Form::checkbox('internal_status',1) !!} - {!! Form::label('internal_status',Lang::get('lang.status')) !!} - - + {!! Form::label('internal_status',Lang::get('lang.status').":") !!} + {!! Form::radio('internal_status',1) !!} {!! Lang::get('lang.enable') !!}    {!! Form::radio('internal_status',0) !!} {!! Lang::get('lang.disable') !!}
@@ -316,8 +289,6 @@ class="active"
{!! Form::checkbox('internal_last_responder',1) !!} {!! Form::label('internal_last_responder',Lang::get('lang.last_respondent')) !!} - -
@@ -325,8 +296,6 @@ class="active"
{!! Form::checkbox('internal_assigned_agent',1) !!} {!! Form::label('internal_assigned_agent',Lang::get('lang.assigned_agent_team')) !!} - -
@@ -334,7 +303,6 @@ class="active"
{!! Form::checkbox('internal_department_manager',1) !!} {!! Form::label('internal_department_manager',Lang::get('lang.department_manager')) !!} -
@@ -349,15 +317,13 @@ class="active"
- +
- {!! Form::checkbox('assignment_status',1) !!} - {!! Form::label('assignment_status',Lang::get('lang.status')) !!} - - + {!! Form::label('assignment_status',Lang::get('lang.status').":") !!} + {!! Form::radio('assignment_status',1) !!} {!! Lang::get('lang.enable') !!}    {!! Form::radio('assignment_status',0) !!} {!! Lang::get('lang.disable') !!}
@@ -365,8 +331,6 @@ class="active"
{!! Form::checkbox('assignment_assigned_agent',1) !!} {!! Form::label('assignment_assigned_agent',Lang::get('lang.assigned_agent_team')) !!} - -
@@ -374,8 +338,6 @@ class="active"
{!! Form::checkbox('assignment_team_leader',1) !!} {!! Form::label('assignment_team_leader',Lang::get('lang.team_lead')) !!} - -
@@ -383,20 +345,11 @@ class="active"
{!! Form::checkbox('assignment_team_member',1) !!} {!! Form::label('assignment_team_member',Lang::get('lang.team_members')) !!} - -
-
- - - - - - - - - - + + + + @stop diff --git a/code/resources/views/themes/default1/admin/settings/company.blade.php b/code/code/resources/views/themes/default1/admin/settings/company.blade.php similarity index 67% rename from code/resources/views/themes/default1/admin/settings/company.blade.php rename to code/code/resources/views/themes/default1/admin/settings/company.blade.php index 5d097fa91..a3831d4ea 100644 --- a/code/resources/views/themes/default1/admin/settings/company.blade.php +++ b/code/code/resources/views/themes/default1/admin/settings/company.blade.php @@ -1,4 +1,4 @@ -@extends('themes.default1.layouts.blank') +@extends('themes.default1.layouts.admin') @section('Settings') class="active" @@ -36,41 +36,37 @@ class="active" -
-
-
- -
-

{{Lang::get('lang.company')}}{!! Form::submit(Lang::get('lang.save'),['class'=>'form-group btn btn-primary pull-right'])!!}

-
- +
+

{{Lang::get('lang.company')}}

{!! Form::submit(Lang::get('lang.save'),['class'=>'form-group btn btn-primary pull-right'])!!}
- -@if(Session::has('success')) -
- - Success! - - {{Session::get('success')}} -
+ @if(Session::has('success')) +
+ + Success! + + {{Session::get('success')}} +
@endif @if(Session::has('fails')) -
- - Alert! Failed. - - {{Session::get('fails')}} -
+
+ + Alert! Failed. + + {{Session::get('fails')}} +
@endif -
+
+ + {{--
--}}
+
{!! Form::label('company_name',Lang::get('lang.name')) !!} @@ -82,6 +78,7 @@ class="active"
+
{!! Form::label('website',Lang::get('lang.website')) !!} @@ -92,6 +89,7 @@ class="active"
+
{!! Form::label('phone',Lang::get('lang.phone')) !!} @@ -102,6 +100,7 @@ class="active"
+
{!! Form::label('address',Lang::get('lang.address')) !!} @@ -112,6 +111,7 @@ class="active"
+
{!! Form::label('landing_page',Lang::get('lang.landing')) !!} @@ -121,6 +121,7 @@ class="active"
+
{!! Form::label('offline_page',Lang::get('lang.offline')) !!} @@ -130,28 +131,35 @@ class="active"
+
{!! Form::label('thank_page',Lang::get('lang.thank')) !!} - {!!Form::select('thank_page', ['thank page'],null,['class' => 'form-control select']) !!} + {!! Form::select('thank_page', ['thank page'],null,['class' => 'form-control select']) !!}
-
-
- +
+ + {!! Form::label('logo',Lang::get('lang.logo')) !!} +
Upload file {!! Form::file('logo') !!} +
+
-
-
+ @if($companys->logo != null) +
+ {!! Form::checkbox('use_logo') !!} +
+ @endif +
+
+
-
-
-
@stop -
+ @section('FooterInclude') @stop diff --git a/code/resources/views/themes/default1/admin/settings/email.blade.php b/code/code/resources/views/themes/default1/admin/settings/email.blade.php similarity index 99% rename from code/resources/views/themes/default1/admin/settings/email.blade.php rename to code/code/resources/views/themes/default1/admin/settings/email.blade.php index ab489552d..4153be48a 100644 --- a/code/resources/views/themes/default1/admin/settings/email.blade.php +++ b/code/code/resources/views/themes/default1/admin/settings/email.blade.php @@ -1,4 +1,4 @@ -@extends('themes.default1.layouts.blank') +@extends('themes.default1.layouts.admin') @section('Settings') class="active" diff --git a/code/resources/views/themes/default1/admin/settings/responder.blade.php b/code/code/resources/views/themes/default1/admin/settings/responder.blade.php similarity index 90% rename from code/resources/views/themes/default1/admin/settings/responder.blade.php rename to code/code/resources/views/themes/default1/admin/settings/responder.blade.php index 85e4dbcfd..0fef4578f 100644 --- a/code/resources/views/themes/default1/admin/settings/responder.blade.php +++ b/code/code/resources/views/themes/default1/admin/settings/responder.blade.php @@ -1,4 +1,4 @@ -@extends('themes.default1.layouts.blank') +@extends('themes.default1.layouts.admin') @section('Settings') class="active" @@ -66,12 +66,10 @@ class="active" -
+
{!! Form::checkbox('new_ticket',1) !!}   {!! Form::label('new_ticket',Lang::get('lang.new_ticket')) !!} - -
@@ -79,8 +77,6 @@ class="active"
{!! Form::checkbox('agent_new_ticket',1) !!}  {!! Form::label('agent_new_ticket',Lang::get('lang.new_ticket_by_agent')) !!} - -
-
@@ -67,23 +63,24 @@ class="active" - -
- -
- {!! Form::label('status',Lang::get('lang.status')) !!} + +
-
- {!! Form::radio('status','1',true) !!}{{Lang::get('lang.online')}} +
+
+ {!! Form::label('status',Lang::get('lang.status')) !!} +
+
+ {!! Form::radio('status','1',true) !!}{{Lang::get('lang.online')}} +
+
+ {!! Form::radio('status','0') !!}{{Lang::get('lang.offline')}} +
+
+
-
- {!! Form::radio('status','0') !!}{{Lang::get('lang.offline')}} -
-
-
-
@@ -110,7 +107,7 @@ class="active" {!! Form::label('department',Lang::get('lang.default_department')) !!} {!! $errors->first('department', ':message') !!} - {!!Form::select('department', [''=>'Select a Department','Department'=>$departments->lists('name','name')],null,['class'=>'form-control']) !!} + {!!Form::select('department', [''=>'Select a Department','Department'=>$departments->lists('name','id')],null,['class'=>'form-control']) !!}
@@ -160,8 +157,8 @@ class="active"
- {!! Form::label('name_format',Lang::get('lang.nameformat')) !!} - {!!Form::select('name_format', ['First Last','Last First'],null,['class'=>'form-control']) !!} + {!! Form::label('name_format',Lang::get('lang.nameformat')) !!} + {!!Form::select('name_format', ['First Last','Last First'],null,['class'=>'form-control']) !!}
@@ -183,9 +180,9 @@ class="active"
- {!! Form::label('date_format',Lang::get('lang.dateformat')) !!} - {!! $errors->first('date_format', ':message') !!} - {!! Form::select('date_format',[''=>'Select a Date Format','Date Formats'=>$date->lists('format','format')],null,['class' => 'form-control']) !!} + {!! Form::label('date_format',Lang::get('lang.dateformat')) !!} + {!! $errors->first('date_format', ':message') !!} + {!! Form::select('date_format',[''=>'Select a Date Format','Date Formats'=>$date->lists('format','format')],null,['class' => 'form-control']) !!}
@@ -220,18 +217,14 @@ class="active"
- {!! Form::label('content',Lang::get('lang.content')) !!} - {!! Form::textarea('content',null,['id'=>'content','class' => 'form-control','size' => '30x5']) !!} + {!! Form::label('content',Lang::get('lang.content')) !!} + {!! Form::textarea('content',null,['id'=>'content','class' => 'form-control','size' => '30x5']) !!}
- // +
-
-
-
+ @stop
diff --git a/code/resources/views/themes/default1/admin/settings/ticket.blade.php b/code/code/resources/views/themes/default1/admin/settings/ticket.blade.php similarity index 52% rename from code/resources/views/themes/default1/admin/settings/ticket.blade.php rename to code/code/resources/views/themes/default1/admin/settings/ticket.blade.php index 51b689e1c..a3cffc33c 100644 --- a/code/resources/views/themes/default1/admin/settings/ticket.blade.php +++ b/code/code/resources/views/themes/default1/admin/settings/ticket.blade.php @@ -1,4 +1,4 @@ -@extends('themes.default1.layouts.blank') +@extends('themes.default1.layouts.admin') @section('Settings') class="active" @@ -65,156 +65,139 @@ class="active" @endif -
-
-
-
+
+
+ {{--
--}} + {{--
--}} - {!! Form::label('num_format',Lang::get('lang.default_ticket_number_format')) !!} - {!! $errors->first('num_format', ':message') !!} - {!! Form::text('num_format',$tickets->num_format,['class' => 'form-control']) !!} + {{-- {!! Form::label('num_format',Lang::get('lang.default_ticket_number_format')) !!} --}} + {{-- {!! $errors->first('num_format', ':message') !!} --}} + {{-- {!! Form::text('num_format',$tickets->num_format,['class' => 'form-control']) !!} --}} -
-
+ {{--
--}} + {{--
--}} -
-
+ {{--
--}} + {{--
--}} - {!! Form::label('num_sequence',Lang::get('lang.default_ticket_number_sequence')) !!} - {!! $errors->first('num_sequence', ':message') !!} - {!!Form::select('num_sequence', ['random','general'],null,['class' => 'form-control select']) !!} + {{-- {!! Form::label('num_sequence',Lang::get('lang.default_ticket_number_sequence')) !!} --}} + {{-- {!! $errors->first('num_sequence', ':message') !!} --}} + {{-- {!!Form::select('num_sequence', ['random','general'],null,['class' => 'form-control select']) !!} --}} -
-
+ {{--
--}} + {{--
--}}
- {!! Form::label('status',Lang::get('lang.default_status')) !!} {!! $errors->first('status', ':message') !!} - {!!Form::select('status', ['open'],null,['class' => 'form-control']) !!} +
- {!! Form::label('priority',Lang::get('lang.default_priority')) !!} {!! $errors->first('priority', ':message') !!} - {!!Form::select('priority', [''=>'select a priority','Priorities'=>$priority->lists('name','name')],null,['class' => 'form-control']) !!} + {!!Form::select('priority', [''=>'select a priority','Priorities'=>$priority->lists('name','id')],null,['class' => 'form-control']) !!}
- {!! Form::label('sla',Lang::get('lang.default_sla')) !!} {!! $errors->first('sla', ':message') !!} - {!!Form::select('sla', $slas->lists('grace_period','grace_period'),null,['class' => 'form-control']) !!} + {!!Form::select('sla', $slas->lists('grace_period','id'),null,['class' => 'form-control']) !!}
-
-
- - {!! Form::label('help_topic',Lang::get('lang.default_help_topic')) !!} - {!! $errors->first('help_topic', ':message') !!} - {!!Form::select('help_topic', $topics->lists('topic','topic'),null,['class' => 'form-control']) !!} +
+
+ {!! Form::label('help_topic',Lang::get('lang.default_help_topic')) !!} + {!! $errors->first('help_topic', ':message') !!} + {!!Form::select('help_topic', $topics->lists('topic','id'),null,['class' => 'form-control']) !!}
-
+
- - {!! Form::label('max_open_ticket',Lang::get('lang.maximum_open_tickets')) !!} - {!! $errors->first('max_open_ticket', ':message') !!} - {!! Form::text('max_open_ticket',$tickets->max_open_ticket,['class' => 'form-control']) !!} + {!! Form::label('max_open_ticket',Lang::get('lang.maximum_open_tickets')) !!} + {!! $errors->first('max_open_ticket', ':message') !!} + {!! Form::text('max_open_ticket',$tickets->max_open_ticket,['class' => 'form-control']) !!}
-
-
- - {!! Form::label('collision_avoid',Lang::get('lang.agent_collision_avoidance_duration')) !!} - {!! $errors->first('collision_avoid', ':message') !!} - {!! Form::text('collision_avoid',$tickets->collision_avoid,['class' => 'form-control']) !!} -
-
+
+
+ {!! Form::label('collision_avoid',Lang::get('lang.agent_collision_avoidance_duration')) !!} + {!! $errors->first('collision_avoid', ':message') !!} + {!! Form::text('collision_avoid',$tickets->collision_avoid,['class' => 'form-control']) !!} +
+
+
-
- {!! Form::checkbox('captcha',1,true) !!}  - {!! Form::label('captcha',Lang::get('lang.human_verification')) !!} - -
- - +
+ {!! Form::checkbox('captcha',1,true) !!}  + {!! Form::label('captcha',Lang::get('lang.human_verification')) !!} +
-
- {!! Form::checkbox('claim_response',1,true) !!}  - {!! Form::label('claim_response',Lang::get('lang.claim_on_response')) !!} - - -
+
+ {!! Form::checkbox('claim_response',1,true) !!}  + {!! Form::label('claim_response',Lang::get('lang.claim_on_response')) !!} +
-
- {!! Form::checkbox('assigned_ticket',1,true) !!}  - {!! Form::label('assigned_ticket',Lang::get('lang.assigned_tickets')) !!} - - -
+
+ {!! Form::checkbox('assigned_ticket',1,true) !!}  + {!! Form::label('assigned_ticket',Lang::get('lang.assigned_tickets')) !!} +
-
- {!! Form::checkbox('answered_ticket',1,true) !!}  - {!! Form::label('answered_ticket',Lang::get('lang.answered_tickets')) !!} - - -
+
+ {!! Form::checkbox('answered_ticket',1,true) !!}  + {!! Form::label('answered_ticket',Lang::get('lang.answered_tickets')) !!} +
-
- {!! Form::checkbox('agent_mask',1,true) !!}   - {!! Form::label('agent_mask',Lang::get('lang.agent_identity_masking')) !!} - - -
+
+ {!! Form::checkbox('agent_mask',1,true) !!}   + {!! Form::label('agent_mask',Lang::get('lang.agent_identity_masking')) !!} +
-
- {!! Form::checkbox('html',1,true) !!}  - {!! Form::label('html',Lang::get('lang.enable_HTML_ticket_thread')) !!} - -
+
+ {!! Form::checkbox('html',1,true) !!}  + {!! Form::label('html',Lang::get('lang.enable_HTML_ticket_thread')) !!} +
-
- {!! Form::checkbox('client_update',1,true) !!}  - {!! Form::label('client_update',Lang::get('lang.allow_client_updates')) !!} - - -
+
+ {!! Form::checkbox('client_update',1,true) !!}  + {!! Form::label('client_update',Lang::get('lang.allow_client_updates')) !!} +
diff --git a/code/code/resources/views/themes/default1/admin/theme/footer.blade.php b/code/code/resources/views/themes/default1/admin/theme/footer.blade.php new file mode 100644 index 000000000..4fd77b656 --- /dev/null +++ b/code/code/resources/views/themes/default1/admin/theme/footer.blade.php @@ -0,0 +1,60 @@ +@extends('themes.default1.layouts.admin') + +@section('Themes') +class="active" +@stop + +@section('theme-bar') +active +@stop + +@section('footer') +class="active" +@stop + +@section('content') + + + {!! Form::model($footer,['url' => 'post-create-footer/'.$footer->id, 'method' => 'PATCH','files'=>true]) !!} + +
+
+

Footer

{!! Form::submit('save',['class'=>'form-group btn btn-primary pull-right'])!!} +
+ + @if(Session::has('success')) +
+ + Success! + + {{Session::get('success')}} +
+ @endif + + @if(Session::has('fails')) +
+ + Alert! Failed. + + {{Session::get('fails')}} +
+ @endif + +
+
+ {!! Form::label('title','Title') !!} + {!! $errors->first('title', ':message') !!} + {!! Form::text('title',null,['class' => 'form-control']) !!} +
+ +
+ {!! Form::label('footer','Footer') !!} + {!! $errors->first('footer', ':message') !!} + {!! Form::textarea('footer',null,['class' => 'form-control','size' => '30x5','id'=>'footer']) !!} +
+
+ +
+@stop diff --git a/code/code/resources/views/themes/default1/admin/theme/footer2.blade.php b/code/code/resources/views/themes/default1/admin/theme/footer2.blade.php new file mode 100644 index 000000000..0002d9d45 --- /dev/null +++ b/code/code/resources/views/themes/default1/admin/theme/footer2.blade.php @@ -0,0 +1,62 @@ +@extends('themes.default1.layouts.admin') + +@section('Themes') +class="active" +@stop + +@section('theme-bar') +active +@stop + +@section('footer2') +class="active" +@stop + +@section('content') + + + {!! Form::model($footer2,['url' => 'post-create-footer2/'.$footer2->id, 'method' => 'PATCH','files'=>true]) !!} + + + + +
+
+

Footer 2

{!! Form::submit('save',['class'=>'form-group btn btn-primary pull-right'])!!} +
+ + @if(Session::has('success')) +
+ + Success! + + {{Session::get('success')}} +
+ @endif + + @if(Session::has('fails')) +
+ + Alert! Failed. + + {{Session::get('fails')}} +
+ @endif + +
+
+ {!! Form::label('title','Title') !!} + {!! $errors->first('title', ':message') !!} + {!! Form::text('title',null,['class' => 'form-control']) !!} +
+
+ {!! Form::label('footer','Footer') !!} + {!! $errors->first('footer', ':message') !!} + {!! Form::textarea('footer',null,['class' => 'form-control','size' => '30x5','id'=>'footer']) !!} +
+
+ +
+
+@stop diff --git a/code/code/resources/views/themes/default1/admin/theme/footer3.blade.php b/code/code/resources/views/themes/default1/admin/theme/footer3.blade.php new file mode 100644 index 000000000..381ef1242 --- /dev/null +++ b/code/code/resources/views/themes/default1/admin/theme/footer3.blade.php @@ -0,0 +1,56 @@ +@extends('themes.default1.layouts.admin') + +@section('Themes') +class="active" +@stop + +@section('theme-bar') +active +@stop + +@section('footer3') +class="active" +@stop + +@section('content') + + {!! Form::model($footer3,['url' => 'post-create-footer3/'.$footer3->id, 'method' => 'PATCH','files'=>true]) !!} +
+
+

Footer 3

{!! Form::submit('save',['class'=>'form-group btn btn-primary pull-right'])!!} +
+ @if(Session::has('success')) +
+ + Success! + + {{Session::get('success')}} +
+ @endif + + @if(Session::has('fails')) +
+ + Alert! Failed. + + {{Session::get('fails')}} +
+ @endif + +
+
+ {!! Form::label('title','Title') !!} + {!! $errors->first('title', ':message') !!} + {!! Form::text('title',null,['class' => 'form-control']) !!} +
+
+ {!! Form::label('footer','Footer') !!} + {!! $errors->first('footer', ':message') !!} + {!! Form::textarea('footer',null,['class' => 'form-control','size' => '30x5','id'=>'footer']) !!} +
+
+ +
+
+@stop diff --git a/code/code/resources/views/themes/default1/admin/theme/footer4.blade.php b/code/code/resources/views/themes/default1/admin/theme/footer4.blade.php new file mode 100644 index 000000000..ce0b3a98f --- /dev/null +++ b/code/code/resources/views/themes/default1/admin/theme/footer4.blade.php @@ -0,0 +1,54 @@ +@extends('themes.default1.layouts.admin') + +@section('Themes') +class="active" +@stop + +@section('theme-bar') +active +@stop + +@section('footer4') +class="active" +@stop + +@section('content') + + {!! Form::model($footer4,['url'=>'post-create-footer4/'.$footer4->id, 'method'=>'PATCH','files'=>true]) !!} +
+
+

Footer 4

{!! Form::submit('save',['class'=>'form-group btn btn-primary pull-right'])!!} +
+ + @if(Session::has('success')) +
+ + Success! + + {{Session::get('success')}} +
+ @endif + + @if(Session::has('fails')) +
+ + Alert! Failed. + + {{Session::get('fails')}} +
+ @endif + +
+
+ {!! Form::label('title','Title') !!} + {!! $errors->first('title', ':message') !!} + {!! Form::text('title',null,['class' => 'form-control']) !!} +
+
+ {!! Form::label('footer','Footer') !!} + {!! $errors->first('footer', ':message') !!} + {!! Form::textarea('footer',null,['class' => 'form-control','size' => '30x5','id'=>'footer']) !!} +
+
+
+@stop diff --git a/code/resources/views/themes/default1/admin/tickets/ticket.blade.php b/code/code/resources/views/themes/default1/admin/tickets/ticket.blade.php similarity index 100% rename from code/resources/views/themes/default1/admin/tickets/ticket.blade.php rename to code/code/resources/views/themes/default1/admin/tickets/ticket.blade.php diff --git a/code/resources/views/themes/default1/admin/tickets/timeline.blade.php b/code/code/resources/views/themes/default1/admin/tickets/timeline.blade.php similarity index 100% rename from code/resources/views/themes/default1/admin/tickets/timeline.blade.php rename to code/code/resources/views/themes/default1/admin/tickets/timeline.blade.php diff --git a/code/code/resources/views/themes/default1/agent/dashboard/dashboard.blade.php b/code/code/resources/views/themes/default1/agent/dashboard/dashboard.blade.php new file mode 100644 index 000000000..00fe8971c --- /dev/null +++ b/code/code/resources/views/themes/default1/agent/dashboard/dashboard.blade.php @@ -0,0 +1,161 @@ +@extends('themes.default1.layouts.agent') + +@section('Dashboard') +class="active" +@stop + +@section('dashboard-bar') +active +@stop + +@section('dashboard') +class="active" +@stop + +@section('content') + +
+ + =',date('Y-m-d'))->get(); + + // echo count($tickets); + + ?> +
+

Line Chart

+
+ + +
+
+
+
+
+ +
+
+
+
+
+
+

Statistics

+ +
+
+
{{Lang::get('lang.email')}}{{$email -> updated_at}} {!! Form::open(['route'=>['emails.destroy', $email->id],'method'=>'DELETE']) !!} - -
- - {!! Form::button(' Delete', - ['type' => 'submit', - 'class'=> 'actions-line icon-trash', - 'onclick'=>'return confirm("Are you sure?")']) - !!} - -
+ Edit + + {!! Form::button(' Delete', + ['type' => 'submit', + 'class'=> 'btn btn-warning btn-xs btn-flat', + 'onclick'=>'return confirm("Are you sure?")']) + !!} {!! Form::close() !!}
{!! Form::open(['route'=>['template.destroy', $template->id],'method'=>'DELETE']) !!} - -
+ Edit - {!! Form::button(' Delete', + {!! Form::button(' Delete', ['type' => 'submit', - 'class'=> 'actions-line icon-trash', + 'class'=> 'btn btn-warning btn-xs btn-flat', 'onclick'=>'return confirm("Are you sure?")']) !!} - -
- {!! Form::close() !!}
@if($topic->ticket_status=='1') -

Active

+ Active @else -

Disable

+ Disable @endif
@if($topic->type=='1') -

Public

+ Public @else -

Private

+ Private @endif
{!! Form::open(['route'=>['helptopic.destroy', $topic->id],'method'=>'DELETE']) !!} - -
- - + Edit - {!! Form::button(' Delete', + {!! Form::button(' Delete', ['type' => 'submit', - 'class'=> 'actions-line icon-trash', + 'class'=> 'btn btn-warning btn-xs btn-flat', 'onclick'=>'return confirm("Are you sure?")']) !!} diff --git a/code/resources/views/themes/default1/admin/manage/sla/create.blade.php b/code/code/resources/views/themes/default1/admin/manage/sla/create.blade.php similarity index 98% rename from code/resources/views/themes/default1/admin/manage/sla/create.blade.php rename to code/code/resources/views/themes/default1/admin/manage/sla/create.blade.php index 189e4ae0a..cfe7398b9 100644 --- a/code/resources/views/themes/default1/admin/manage/sla/create.blade.php +++ b/code/code/resources/views/themes/default1/admin/manage/sla/create.blade.php @@ -1,4 +1,4 @@ -@extends('themes.default1.layouts.blank') +@extends('themes.default1.layouts.admin') @section('Manage') class="active" diff --git a/code/resources/views/themes/default1/admin/manage/sla/edit.blade.php b/code/code/resources/views/themes/default1/admin/manage/sla/edit.blade.php similarity index 98% rename from code/resources/views/themes/default1/admin/manage/sla/edit.blade.php rename to code/code/resources/views/themes/default1/admin/manage/sla/edit.blade.php index e223897ae..902feddea 100644 --- a/code/resources/views/themes/default1/admin/manage/sla/edit.blade.php +++ b/code/code/resources/views/themes/default1/admin/manage/sla/edit.blade.php @@ -1,4 +1,4 @@ -@extends('themes.default1.layouts.blank') +@extends('themes.default1.layouts.admin') @section('Manage') class="active" diff --git a/code/resources/views/themes/default1/admin/manage/sla/index.blade.php b/code/code/resources/views/themes/default1/admin/manage/sla/index.blade.php similarity index 87% rename from code/resources/views/themes/default1/admin/manage/sla/index.blade.php rename to code/code/resources/views/themes/default1/admin/manage/sla/index.blade.php index 914267f1e..7ab052e68 100644 --- a/code/resources/views/themes/default1/admin/manage/sla/index.blade.php +++ b/code/code/resources/views/themes/default1/admin/manage/sla/index.blade.php @@ -1,4 +1,4 @@ -@extends('themes.default1.layouts.blank') +@extends('themes.default1.layouts.admin') @section('Manage') class="active" @@ -75,9 +75,9 @@ class="active"
@if($sla->status=='1') -

Active

+ Active @else -

Disable

+ Disable @endif
{!! Form::open(['route'=>['sla.destroy', $sla->id],'method'=>'DELETE']) !!} - -
+ Edit - {!! Form::button(' Delete', + {!! Form::button(' Delete', ['type' => 'submit', - 'class'=> 'actions-line icon-trash', + 'class'=> 'btn btn-warning btn-xs btn-flat', 'onclick'=>'return confirm("Are you sure?")']) !!} - -
- {!! Form::close() !!}
+ + + + + + + + + + @foreach($tickets as $ticket) + + + + + + + + + + + @endforeach +
AgentOpenedClosedAssignedReopenedSLA
Sujit Prasad1{!! $ticket->closed !!}{!! $ticket->source !!}{!! $ticket->reopened !!}{!! $ticket->sla !!}
+
+
+ + + + +@stop diff --git a/code/code/resources/views/themes/default1/agent/organization/create.blade.php b/code/code/resources/views/themes/default1/agent/organization/create.blade.php new file mode 100644 index 000000000..c30d9dfbf --- /dev/null +++ b/code/code/resources/views/themes/default1/agent/organization/create.blade.php @@ -0,0 +1,93 @@ +@extends('themes.default1.layouts.agent') + +@section('Users') +class="active" +@stop + +@section('user-bar') +active +@stop + +@section('organizations') +class="active" +@stop + +@section('HeadInclude') +@stop + +@section('PageHeader') + + +@stop + + +@section('breadcrumbs') + +@stop + + +@section('content') + + + +{!! Form::open(['action'=>'Agent\OrganizationController@store','method'=>'post']) !!} + +
+
+

{{Lang::get('lang.create')}} {!! Form::submit(Lang::get('lang.save'),['class'=>'form-group btn btn-primary pull-right'])!!}

+
+
+ +
+
+ {!! Form::label('name',Lang::get('lang.name')) !!} + {!! $errors->first('name', ':message') !!} + {!! Form::text('name',null,['class' => 'form-control']) !!} +
+ +
+ {!! Form::label('phone',Lang::get('lang.phone')) !!} + {!! $errors->first('phone', ':message') !!} + {!! Form::text('phone',null,['class' => 'form-control']) !!} +
+ +
+ {!! Form::label('website',Lang::get('lang.website')) !!} + {!! $errors->first('website', ':message') !!} + {!! Form::text('website',null,['class' => 'form-control']) !!} +
+
+ +
+
+ {!! Form::label('address',Lang::get('lang.address')) !!} + {!! Form::textarea('address',null,['class' => 'form-control']) !!} + +
+ +
+ + {!! Form::label('internal_notes',Lang::get('lang.internal_notes')) !!} + {!! Form::textarea('internal_notes',null,['class' => 'form-control']) !!} + +
+ +
+ +
+
+ + +@section('FooterInclude') + +@stop +@stop + +@stop +@section('FooterInclude') + +@stop + + \ No newline at end of file diff --git a/code/code/resources/views/themes/default1/agent/organization/edit.blade.php b/code/code/resources/views/themes/default1/agent/organization/edit.blade.php new file mode 100644 index 000000000..9f72aed71 --- /dev/null +++ b/code/code/resources/views/themes/default1/agent/organization/edit.blade.php @@ -0,0 +1,115 @@ +@extends('themes.default1.layouts.agent') +@section('Users') +class="active" +@stop + +@section('user-bar') +active +@stop + +@section('organizations') +class="active" +@stop + +@section('HeadInclude') +@stop + +@section('PageHeader') + + +@stop + + +@section('breadcrumbs') + +@stop + + +@section('content') + + + +{!! Form::model($orgs,['url'=>'organizations/'.$orgs->id,'method'=>'PATCH']) !!} + +
+
+ +

{{Lang::get('lang.edit')}} {!! Form::submit(Lang::get('lang.save'),['class'=>'form-group btn btn-primary pull-right'])!!}

+ +
+ +
+ + + +
+ +
+ + {!! Form::label('name',Lang::get('lang.name')) !!} + {!! $errors->first('name', ':message') !!} + {!! Form::text('name',null,['disabled'=>'disabled','class' => 'form-control']) !!} + +
+ + + + + +
+ + {!! Form::label('phone',Lang::get('lang.phone')) !!} + {!! $errors->first('phone', ':message') !!} + {!! Form::text('phone',null,['class' => 'form-control']) !!} + +
+ + + +
+ + {!! Form::label('website',Lang::get('lang.website')) !!} + {!! $errors->first('website', ':message') !!} + {!! Form::text('website',null,['class' => 'form-control']) !!} + +
+ +
+ + + +
+ +
+ + {!! Form::label('address',Lang::get('lang.address')) !!} + {!! Form::textarea('address',null,['class' => 'form-control']) !!} + +
+ +
+ + {!! Form::label('internal_notes',Lang::get('lang.internal_notes')) !!} + {!! Form::textarea('internal_notes',null,['class' => 'form-control']) !!} + +
+ +
+ +
+
+ + +@section('FooterInclude') + +@stop +@stop + +@stop +@section('FooterInclude') + +@stop + + \ No newline at end of file diff --git a/code/code/resources/views/themes/default1/agent/organization/index.blade.php b/code/code/resources/views/themes/default1/agent/organization/index.blade.php new file mode 100644 index 000000000..6a6d011b0 --- /dev/null +++ b/code/code/resources/views/themes/default1/agent/organization/index.blade.php @@ -0,0 +1,87 @@ +@extends('themes.default1.layouts.agent') + +@section('Users') +class="active" +@stop + +@section('user-bar') +active +@stop + +@section('organizations') +class="active" +@stop + + +@section('content') + +
+
+

{{Lang::get('lang.organization')}}

{{Lang::get('lang.create_organisations')}}
+
+ + @if(Session::has('success')) +
+ + Success! + + {{Session::get('success')}} +
+ @endif + + @if(Session::has('fails')) +
+ + Alert! Failed. + + {{Session::get('fails')}} +
+ @endif + + + + + + + + + + + @foreach($orgs as $org) + + + + + + + + @endforeach +
{{Lang::get('lang.name')}}{{Lang::get('lang.user')}}{{Lang::get('lang.created')}}{{Lang::get('lang.last_updated')}}{{Lang::get('lang.action')}}
{{$org -> name }}{{$org -> created_at}}{{$org -> updated_at}} + {!! Form::open(['route'=>['organizations.destroy', $org->id],'method'=>'DELETE']) !!} + +
+ + {!! Form::button(' Delete', + ['type' => 'submit', + 'class'=> 'btn btn-warning btn-sm actions-line icon-trash', + 'onclick'=>'return confirm("Are you sure?")']) + !!} + +
+ {!! Form::close() !!} +
+
+
+ + +@section('FooterInclude') + +@stop +@stop + +@stop +@section('FooterInclude') + +@stop + + \ No newline at end of file diff --git a/code/code/resources/views/themes/default1/agent/organization/show.blade.php b/code/code/resources/views/themes/default1/agent/organization/show.blade.php new file mode 100644 index 000000000..337a490cd --- /dev/null +++ b/code/code/resources/views/themes/default1/agent/organization/show.blade.php @@ -0,0 +1,86 @@ +@extends('themes.default1.layouts.agent') + +@section('Users') +class="active" +@stop + +@section('user-bar') +active +@stop + +@section('organizations') +class="active" +@stop + +@section('HeadInclude') +@stop + +@section('PageHeader') + + +@stop + + +@section('breadcrumbs') + +@stop + + +@section('content') + + +
+
+

{{$orgs->name}}

+
+
+ +
+ {{Lang::get('lang.name')}} +
+ +
+ +
+
+ {{Lang::get('lang.account_manager')}} +
+
+
+
+
+
+ +
+
+ {{Lang::get('lang.created')}} +
+
+ {{$orgs -> created_at}} +
+
+ +
+
+ {{Lang::get('lang.last_updated')}} +
+
+ {{$orgs -> updated_at}} +
+
+
+
+@section('FooterInclude') +@stop +@stop + +@stop +@section('FooterInclude') + +@stop + + \ No newline at end of file diff --git a/code/code/resources/views/themes/default1/agent/ticket/answered.blade.php b/code/code/resources/views/themes/default1/agent/ticket/answered.blade.php new file mode 100644 index 000000000..6f61af26f --- /dev/null +++ b/code/code/resources/views/themes/default1/agent/ticket/answered.blade.php @@ -0,0 +1,206 @@ +@extends('themes.default1.layouts.agent') + +@section('Tickets') +class="active" +@stop + +@section('ticket-bar') +active +@stop + +@section('answered') +class="active" +@stop + + +@section('content') + +
+
+

Answered

5 new messages + +
+ @if(Session::has('success')) +
+ Success + + {{Session::get('success')}} +
+ @endif + + @if(Session::has('fails')) +
+ Alert! + + {{Session::get('fails')}} +
+ @endif +
+ {!! Form::open(['route'=>'select_all','method'=>'post']) !!} +
+ + + + + +
+ where('isanswered', '=', '1')->get()); +if ($counted < 20) { + echo $counted . "/" . $counted; +} else { + echo "20/" . $counted; +} +?> +
+
+
+ + + + + + + + + + + + + + + + role == 'agent') { + $tickets = App\Model\Ticket\Tickets::where('status', '=', 1)->where('dept_id','=',Auth::user()->primary_dpt)->where('isanswered', '=', 1)->orderBy('id', 'DESC')->paginate(20); + } else { + $tickets = App\Model\Ticket\Tickets::where('status', '=', 1)->where('isanswered', '=', 1)->orderBy('id', 'DESC')->paginate(20); + } + ?> + @foreach ($tickets as $ticket ) + seen_by == null) {?> style="color:green;" > + + id)->get(); + $collab = count($collaborators); + + // title + $title = App\Model\Ticket\Ticket_Thread::where('ticket_id', '=', $ticket->id)->first(); + $string = strip_tags($title->title); + + // check atatchments + $attachments = App\Model\Ticket\Ticket_attachments::where('thread_id','=',$title->id)->first(); + $attach = count($attachments); + + if (strlen($string) > 40) { + $stringCut = substr($string, 0, 40); + $string = substr($stringCut, 0, strrpos($stringCut, ' ')).' ...'; + } + $TicketData = App\Model\Ticket\Ticket_Thread::where('ticket_id', '=', $ticket->id)->max('id'); + $TicketDatarow = App\Model\Ticket\Ticket_Thread::where('id', '=', $TicketData)->first(); + $LastResponse = App\User::where('id', '=', $TicketDatarow->user_id)->first(); + if($LastResponse->role == "user") { + $rep = "#F39C12"; + $username = $LastResponse->user_name; + } else { $rep = "#000"; $username = $LastResponse->first_name ." ". $LastResponse->last_name; + if($LastResponse->first_name==null || $LastResponse->last_name==null) { + $username = $LastResponse->user_name; + }} + $titles = App\Model\Ticket\Ticket_Thread::where('ticket_id', '=', $ticket->id)->get(); + $count = count($titles); + foreach($titles as $title) + { + $title = $title; + } + + $assigned_to = App\User::where('id','=',$ticket->assigned_to)->first(); + if($assigned_to == null) + { + $assigned = "Unassigned"; + } + else + { + $assigned = $assigned_to->first_name ." ". $assigned_to->last_name; + } + ?> + + + priority_id)->first();?> + + user_id)->first(); ?> + @if($from->role == "user") + + @else + + @endif + + + + + + @endforeach + +
SubjectTicket IDPriorityFromLast ReplierAssigned ToLast ActivityReply Due
{{$string}} ({!! $count!!}) + @if($collab > 0) @endif + @if($attach > 0) @endif#{!! $ticket->ticket_number !!}{{$priority->priority}}{!! $from->user_name !!}{!! $from->first_name." ".$from->last_name !!}{!! $username !!}{!! $assigned !!}{!! $title->updated_at !!}
+
+ setPath(url('/ticket/answered'))->render();?>  +
+
+ {!! Form::close() !!} +
+
+ + + +@stop \ No newline at end of file diff --git a/code/code/resources/views/themes/default1/agent/ticket/closed.blade.php b/code/code/resources/views/themes/default1/agent/ticket/closed.blade.php new file mode 100644 index 000000000..ffb0f4995 --- /dev/null +++ b/code/code/resources/views/themes/default1/agent/ticket/closed.blade.php @@ -0,0 +1,204 @@ +@extends('themes.default1.layouts.agent') + +@section('Tickets') +class="active" +@stop + +@section('ticket-bar') +active +@stop + +@section('closed') +class="active" +@stop + + +@section('content') + +
+
+

Closed

5 new messages + +
+ @if(Session::has('success')) +
+ Success + + {{Session::get('success')}} +
+ @endif + + @if(Session::has('fails')) +
+ Alert! + + {{Session::get('fails')}} +
+ @endif +
+ + {!! Form::open(['route'=>'select_all','method'=>'post']) !!} +
+ + + + + +
+ ', 1)->where('status', '<', 4)->get()); +if ($counted < 20) { + echo $counted . "/" . $counted; +} else { + echo "20/" . $counted; +} +?> +
+
+
+ + + + + + + + + + + + + + + + role == 'agent') { + $tickets = App\Model\Ticket\Tickets::where('status', '>', 1)->where('dept_id','=',Auth::user()->primary_dpt)->where('status', '<', 4)->orderBy('id', 'DESC')->paginate(20); + } else { + $tickets = App\Model\Ticket\Tickets::where('status', '>', 1)->where('status', '<', 4)->orderBy('id', 'DESC')->paginate(20); + } + ?> + + @foreach ($tickets as $ticket ) + seen_by == null) {?> style="color:green;" > + + id)->first(); + $string = strip_tags($title->title); + // collaborators + $collaborators = App\Model\Ticket\Ticket_Collaborator::where('ticket_id','=',$ticket->id)->get(); + $collab = count($collaborators); + // check atatchments + $attachments = App\Model\Ticket\Ticket_attachments::where('thread_id','=',$title->id)->first(); + $attach = count($attachments); + + if (strlen($string) > 40) { + $stringCut = substr($string, 0, 40); + $string = substr($stringCut, 0, strrpos($stringCut, ' ')).' ...'; + } + $TicketData = App\Model\Ticket\Ticket_Thread::where('ticket_id', '=', $ticket->id)->max('id'); + $TicketDatarow = App\Model\Ticket\Ticket_Thread::where('id', '=', $TicketData)->first(); + $LastResponse = App\User::where('id', '=', $TicketDatarow->user_id)->first(); + if($LastResponse->role == "user") { + $rep = "#F39C12"; + $username = $LastResponse->user_name; + } else { $rep = "#000"; $username = $LastResponse->first_name ." ". $LastResponse->last_name; + if($LastResponse->first_name==null || $LastResponse->last_name==null) { + $username = $LastResponse->user_name; + }} + $titles = App\Model\Ticket\Ticket_Thread::where('ticket_id', '=', $ticket->id)->get(); + $count = count($titles); + foreach($titles as $title) + { + $title = $title; + } + $assigned_to = App\User::where('id','=',$ticket->assigned_to)->first(); + if($assigned_to == null) + { + $assigned = "Unassigned"; + } + else + { + $assigned = $assigned_to->first_name ." ". $assigned_to->last_name; + } + ?> + + + priority_id)->first();?> + + user_id)->first(); ?> + @if($from->role == "user") + + @else + + @endif + + + + + + @endforeach + +
SubjectTicket IDPriorityFromLast ReplierAssigned ToLast ActivityReply Due
{{$string}} ({!! $count!!}) + @if($collab > 0) @endif + @if($attach > 0) @endif#{!! $ticket->ticket_number !!}{{$priority->priority}}{!! $from->user_name !!}{!! $from->first_name." ".$from->last_name !!}{!! $username !!}{!! $assigned !!}{!! $title->updated_at !!}
+
+ setPath(url('/ticket/closed'))->render();?>  +
+
+ {!! Form::close() !!} +
+
+ + + +@stop \ No newline at end of file diff --git a/code/resources/views/themes/default1/Agent/ticket/layout.blade.php b/code/code/resources/views/themes/default1/agent/ticket/layout.blade.php similarity index 99% rename from code/resources/views/themes/default1/Agent/ticket/layout.blade.php rename to code/code/resources/views/themes/default1/agent/ticket/layout.blade.php index 5a9f74313..2b5576aee 100644 --- a/code/resources/views/themes/default1/Agent/ticket/layout.blade.php +++ b/code/code/resources/views/themes/default1/agent/ticket/layout.blade.php @@ -247,7 +247,7 @@ - + @yield('footer') diff --git a/code/code/resources/views/themes/default1/agent/ticket/myticket.blade.php b/code/code/resources/views/themes/default1/agent/ticket/myticket.blade.php new file mode 100644 index 000000000..6d911a0a2 --- /dev/null +++ b/code/code/resources/views/themes/default1/agent/ticket/myticket.blade.php @@ -0,0 +1,202 @@ +@extends('themes.default1.layouts.agent') + +@section('Tickets') +class="active" +@stop + +@section('ticket-bar') +active +@stop + +@section('myticket') +class="active" +@stop + +@section('content') + +
+
+

My Ticket

+ +
+ @if(Session::has('success')) +
+ Success + + {{Session::get('success')}} +
+ @endif + + @if(Session::has('fails')) +
+ Alert! + + {{Session::get('fails')}} +
+ @endif +
+ + {!! Form::open(['route'=>'select_all','method'=>'post']) !!} +
+ + + + + +
+ where('assigned_to', '=', Auth::user()->id)->get()); +if ($counted < 20) { + echo $counted . "/" . $counted; +} else { + echo "20/" . $counted; +} +?> +
+
+
+ + + + + + + + + + + + + + + + role == 'agent') { + $tickets = App\Model\Ticket\Tickets::where('status', '=', 1)->where('dept_id','=',Auth::user()->primary_dpt)->where('assigned_to', '=', Auth::user()->id)->orderBy('id', 'ASC')->paginate(20); + } else { + $tickets = App\Model\Ticket\Tickets::where('status', '=', 1)->where('assigned_to', '=', Auth::user()->id)->orderBy('id', 'ASC')->paginate(20); + } + ?> + @foreach ($tickets as $ticket ) + seen_by == null) {?> style="color:green;" > + + id)->get(); + $collab = count($collaborators); + // title + $title = App\Model\Ticket\Ticket_Thread::where('ticket_id', '=', $ticket->id)->first(); + $string = strip_tags($title->title); + // check atatchments + $attachments = App\Model\Ticket\Ticket_attachments::where('thread_id','=',$title->id)->first(); + $attach = count($attachments); + + if (strlen($string) > 40) { + $stringCut = substr($string, 0, 40); + $string = substr($stringCut, 0, strrpos($stringCut, ' ')).' ...'; + } + $TicketData = App\Model\Ticket\Ticket_Thread::where('ticket_id', '=', $ticket->id)->max('id'); + $TicketDatarow = App\Model\Ticket\Ticket_Thread::where('id', '=', $TicketData)->first(); + $LastResponse = App\User::where('id', '=', $TicketDatarow->user_id)->first(); + if($LastResponse->role == "user") { + $rep = "#F39C12"; + $username = $LastResponse->user_name; + } else { $rep = "#000"; $username = $LastResponse->first_name ." ". $LastResponse->last_name; + if($LastResponse->first_name==null || $LastResponse->last_name==null) { + $username = $LastResponse->user_name; + }} + $titles = App\Model\Ticket\Ticket_Thread::where('ticket_id', '=', $ticket->id)->get(); + $count = count($titles); + foreach($titles as $title) + { + $title = $title; + } + $assigned_to = App\User::where('id','=',$ticket->assigned_to)->first(); + if($assigned_to == null) + { + $assigned = "Unassigned"; + } + else + { + $assigned = $assigned_to->first_name ." ". $assigned_to->last_name; + } + ?> + + + priority_id)->first();?> + + user_id)->first(); ?> + @if($from->role == "user") + + @else + + @endif + + + + + + @endforeach + +
SubjectTicket IDPriorityFromLast ReplierAssigned ToLast ActivityReply Due
{{$string}} ({!! $count!!}) + @if($collab > 0) @endif + @if($attach > 0) @endif#{!! $ticket->ticket_number !!}{{$priority->priority}}{!! $from->user_name !!}{!! $from->first_name." ".$from->last_name !!}{!! $username !!}{!! $assigned !!}{!! $title->updated_at !!}
+
+ setPath(url('/ticket/myticket'))->render();?>  +
+
+ {!! Form::close() !!} +
+
+ + + +@stop \ No newline at end of file diff --git a/code/code/resources/views/themes/default1/agent/ticket/new.blade.php b/code/code/resources/views/themes/default1/agent/ticket/new.blade.php new file mode 100644 index 000000000..ea1770256 --- /dev/null +++ b/code/code/resources/views/themes/default1/agent/ticket/new.blade.php @@ -0,0 +1,221 @@ +@extends('themes.default1.layouts.agent') + +@section('Tickets') +class="active" +@stop + +@section('ticket-bar') +active +@stop + +@section('newticket') +class="active" +@stop + + +@section('content') + +{!! Form::open(['route'=>'post.newticket','method'=>'post']) !!} +
+
+

Create Ticket

+ +
+
+ + @if(Session::has('success')) +
+ + + {{Session::get('success')}} +
+ @endif + + @if(Session::has('fails')) +
+ + + {{Session::get('fails')}} +
+ @endif +
+

User Details:

+
+
+ +
+ + + {!! $errors->first('email', ':message') !!} +
+
+
+ +
+ + + {!! $errors->first('fullname', ':message') !!} +
+
+ +
+
+ +
+

Ticket Option

+
+
+
+ + + + {!! $errors->first('helptopic', ':message') !!} +
+
+
+ +
+ + + {!! $errors->first('dept', ':message') !!} +
+
+
+ +
+ + + {!! $errors->first('sla', ':message') !!} +
+
+
+ +
+ + +
+
+
+ +
+ + +
+
+
+
+ +
+

Ticket Detail

+ +
+
+
+ +
+
+ + {!! $errors->first('subject', ':message') !!} +
+
+
+
+ +
+
+ +
+
+ + {!! $errors->first('body', ':message') !!} +
+
+
+
+ +
+
+ +
+
+ + {!! $errors->first('priority', ':message') !!} +
+
+
+
+
+ +
+ {!! Form::close() !!} + + + @stop \ No newline at end of file diff --git a/code/code/resources/views/themes/default1/agent/ticket/open.blade.php b/code/code/resources/views/themes/default1/agent/ticket/open.blade.php new file mode 100644 index 000000000..16146311f --- /dev/null +++ b/code/code/resources/views/themes/default1/agent/ticket/open.blade.php @@ -0,0 +1,249 @@ +@extends('themes.default1.layouts.agent') + +@section('Tickets') +class="active" +@stop + +@section('ticket-bar') +active +@stop + +@section('open') +class="active" +@stop + +@section('content') + +
+
+

Open

5 new messages +
+
+ {!! Form::open(array('url' => 'tickets/search/','method' => 'POST')) !!} +{!! Form::text('auto', $value = null, array('placeholder' => 'Search here', 'id' => 'auto', 'class' => 'form-control input-sm')) !!} + + +{!! Form::close() !!} +
+
+
+ @if(Session::has('success')) +
+ Success + + {{Session::get('success')}} +
+ @endif + + @if(Session::has('fails')) +
+ Alert! + + {{Session::get('fails')}} +
+ @endif +
+ + {!! Form::open(['route'=>'select_all','method'=>'post']) !!} +
+ + + + + +
+ get()); +if ($counted < 20) { + echo $counted . "/" . $counted; +} else { + echo "20/" . $counted; +} +?> +
+
+
+ + + + + + + + + + + + + + + + role == 'agent') + { + $tickets = App\Model\Ticket\Tickets::where('status', '=', 1)->where('dept_id','=',Auth::user()->primary_dpt)->orderBy('id', 'DESC')->paginate(20); + } else { + $tickets = App\Model\Ticket\Tickets::where('status', '=', 1)->orderBy('id', 'DESC')->paginate(20); + } + ?> + @foreach ($tickets as $ticket) + id)->first(); + $string = strip_tags($title->title); + if($title == null){ + + } else { + ?> + seen_by == null) {?> style="color:green;" > + + id)->get(); + $collab = count($collaborators); + + // check atatchments + $attachments = App\Model\Ticket\Ticket_attachments::where('thread_id','=',$title->id)->first(); + $attach = count($attachments); + + if (strlen($string) > 40) { + $stringCut = substr($string, 0, 40); + $string = substr($stringCut, 0, strrpos($stringCut, ' ')).' ...'; + } + $TicketData = App\Model\Ticket\Ticket_Thread::where('ticket_id', '=', $ticket->id)->max('id'); + $TicketDatarow = App\Model\Ticket\Ticket_Thread::where('id', '=', $TicketData)->first(); + $LastResponse = App\User::where('id', '=', $TicketDatarow->user_id)->first(); + if($LastResponse->role == "user") { + $rep = "#F39C12"; + $username = $LastResponse->user_name; + } else { $rep = "#000"; $username = $LastResponse->first_name ." ". $LastResponse->last_name; + if($LastResponse->first_name==null || $LastResponse->last_name==null) { + $username = $LastResponse->user_name; + }} + $titles = App\Model\Ticket\Ticket_Thread::where('ticket_id', '=', $ticket->id)->get(); + $count = count($titles); + foreach($titles as $title) + { + $title = $title; + } + $assigned_to = App\User::where('id','=',$ticket->assigned_to)->first(); + if($assigned_to == null) + { + $assigned = "Unassigned"; + } + else + { + $assigned = $assigned_to->first_name ." ". $assigned_to->last_name; + } + ?> + + + priority_id)->first();?> + + user_id)->first(); ?> + @if($from->role == "user") + + @else + + @endif + + + + + + + @endforeach + +
+ SubjectTicket IDPriorityFromLast ReplierAssigned ToLast ActivityReply Due
{{$string}} ({!! $count!!}) + @if($collab > 0) @endif + @if($attach > 0) @endif#{!! $ticket->ticket_number !!}{{$priority->priority}}{!! $from->user_name !!}{!! $from->first_name." ".$from->last_name !!}{!! $username !!}{!! $assigned !!}{!! $title->updated_at !!}
+ +
+ setPath(url('/ticket/open'))->render();?>  +
+
+ {!! Form::close() !!} +
+
+ + + +@stop \ No newline at end of file diff --git a/code/code/resources/views/themes/default1/agent/ticket/overdue.blade.php b/code/code/resources/views/themes/default1/agent/ticket/overdue.blade.php new file mode 100644 index 000000000..3b8ce28be --- /dev/null +++ b/code/code/resources/views/themes/default1/agent/ticket/overdue.blade.php @@ -0,0 +1,203 @@ +@extends('themes.default1.layouts.agent') + +@section('Tickets') +class="active" +@stop + +@section('ticket-bar') +active +@stop + +@section('overdue') +class="active" +@stop + +@section('content') + +
+
+

Overdue

5 new messages + +
+ @if(Session::has('success')) +
+ Success + + {{Session::get('success')}} +
+ @endif + + @if(Session::has('fails')) +
+ Alert! + + {{Session::get('fails')}} +
+ @endif +
+ + {!! Form::open(['route'=>'select_all','method'=>'post']) !!} +
+ + + + + +
+ where('isoverdue', '=', 1)->get()); +if ($counted < 20) { + echo $counted . "/" . $counted; +} else { + echo "20/" . $counted; +} +?> +
+
+
+ + + + + + + + + + + + + + + + role == 'agent') { + $tickets = App\Model\Ticket\Tickets::where('status', '=', 1)->where('dept_id','=',Auth::user()->primary_dpt)->where('isoverdue', '=', 1)->orderBy('id', 'DESC')->paginate(20); + } else { + $tickets = App\Model\Ticket\Tickets::where('status', '=', 1)->where('isoverdue', '=', 1)->orderBy('id', 'DESC')->paginate(20); + } + ?> + @foreach ($tickets as $ticket ) + seen_by == null) {?> style="color:green;" > + + id)->get(); + $collab = count($collaborators); + // title + $title = App\Model\Ticket\Ticket_Thread::where('ticket_id', '=', $ticket->id)->first(); + $string = strip_tags($title->title); + // check atatchments + $attachments = App\Model\Ticket\Ticket_attachments::where('thread_id','=',$title->id)->first(); + $attach = count($attachments); + + if (strlen($string) > 40) { + $stringCut = substr($string, 0, 40); + $string = substr($stringCut, 0, strrpos($stringCut, ' ')).' ...'; + } + $TicketData = App\Model\Ticket\Ticket_Thread::where('ticket_id', '=', $ticket->id)->max('id'); + $TicketDatarow = App\Model\Ticket\Ticket_Thread::where('id', '=', $TicketData)->first(); + $LastResponse = App\User::where('id', '=', $TicketDatarow->user_id)->first(); + if($LastResponse->role == "user") { + $rep = "#F39C12"; + $username = $LastResponse->user_name; + } else { $rep = "#000"; $username = $LastResponse->first_name ." ". $LastResponse->last_name; + if($LastResponse->first_name==null || $LastResponse->last_name==null) { + $username = $LastResponse->user_name; + }} + $titles = App\Model\Ticket\Ticket_Thread::where('ticket_id', '=', $ticket->id)->get(); + $count = count($titles); + foreach($titles as $title) + { + $title = $title; + } + $assigned_to = App\User::where('id','=',$ticket->assigned_to)->first(); + if($assigned_to == null) + { + $assigned = "Unassigned"; + } + else + { + $assigned = $assigned_to->first_name ." ". $assigned_to->last_name; + } + ?> + + + priority_id)->first();?> + + user_id)->first(); ?> + @if($from->role == "user") + + @else + + @endif + + + + + + @endforeach + +
SubjectTicket IDPriorityFromLast ReplierAssigned ToLast ActivityReply Due
{{$string}} ({!! $count!!}) + @if($collab > 0) @endif + @if($attach > 0) @endif#{!! $ticket->ticket_number !!}{{$priority->priority}}{!! $from->user_name !!}{!! $from->first_name." ".$from->last_name !!}{!! $username !!}{!! $assigned !!}{!! $title->updated_at !!}
+
+ setPath(url('/ticket/overdue'))->render();?>  +
+
+ {!! Form::close() !!} +
+
+ + + +@stop \ No newline at end of file diff --git a/code/code/resources/views/themes/default1/agent/ticket/pdf.blade.php b/code/code/resources/views/themes/default1/agent/ticket/pdf.blade.php new file mode 100644 index 000000000..72b82a666 --- /dev/null +++ b/code/code/resources/views/themes/default1/agent/ticket/pdf.blade.php @@ -0,0 +1,208 @@ + + + + + + + + +

+
+

+ +

{{$thread->title}}


+ + + user_id)->first(); ?> + id)->get(); ?> + @foreach($response as $last) + created_at; ?> + @endforeach + + status)->first(); ?> + priority_id)->first(); ?> + help_topic_id)->first(); ?> + help_topic_id)->first(); ?> + + + + + + + + + + + +
Status: {{$status->state}}
Priority: {{$priority->priority}}
Department: {{$help_topic->department}}
Email: {{$user->email}}
Phone: {{$thread->user_id}}
Source: {{$thread->ip_address}}
Help Topic: {{$help_topic->topic}}
Last Message: {{$last->poster}}
+ + id)->get(); ?> + @foreach($conversations as $conversation) +

+ + user_id)->first(); + ?> + is_internal) { ?> + + role == 'agent' || $role->role == 'admin') { ?> + + role == 'user') { ?> + + + + id)->first(); + if($attachment == null ) { + $body = $conversation->body; + } + else { + // dd($attachment->file); + // print $attachment->file; + // header("Content-type: image/jpeg"); + // echo " "; + $body = $conversation->body; + + $attachments = App\Model\Ticket\Ticket_attachments::where('thread_id','=',$conversation->id)->orderBy('id', 'DESC')->get(); + + // $i = 0; + + foreach($attachments as $attachment) + { + // $i++; + if($attachment->type == 'pdf') + { + // echo "hello"; + }elseif($attachment->type == 'docx') + { + // echo "hello"; + } + else + { + $image = @imagecreatefromstring($attachment->file); + ob_start(); + imagejpeg($image, null, 80); + $data = ob_get_contents(); + ob_end_clean(); + $var = ''; + // echo $var; + // echo $attachment->name; + // $body = explode($attachment->name, $body); + $body = str_replace($attachment->name, "data:image/jpg;base64," . base64_encode($data), $body); + + $string = $body; + $start = ""; + $end = ""; + if(strpos($string,$start) == false || strpos($string,$start) == false) + { + } + else + { + $ini = strpos($string,$start); + $ini += strlen($start); + $len = strpos($string,$end,$ini) - $ini; + $parsed = substr($string,$ini,$len); + $body2 = $parsed; + $body = str_replace($body2 ," " ,$body); + } + } + } + // echo $body; + + // $body = explode($attachment->file, $body); + // $body = $body[0]; + } + ?> + + "; + $end = ""; + if(strpos($string,$start) == false || strpos($string,$start) == false) + { + } + else + { + $ini = strpos($string,$start); + $ini += strlen($start); + $len = strpos($string,$end,$ini) - $ini; + $parsed = substr($string,$ini,$len); + $body2 = $parsed; + $body = str_replace($body2 ," " ,$body); + } + ?> +
+ {{date_format($conversation->created_at, 'd/m/Y H:i:s')}} + +

+ role == "user") {echo $role->user_name; } else { echo $role->first_name . " " . $role->last_name; } ?> Date: {!! $thread->created_at !!}

+
+ {!! $body !!} +
+ +
+ @endforeach + + \ No newline at end of file diff --git a/code/resources/views/themes/default1/Agent/ticket/myticket.blade.php b/code/code/resources/views/themes/default1/agent/ticket/ticket.blade.php similarity index 54% rename from code/resources/views/themes/default1/Agent/ticket/myticket.blade.php rename to code/code/resources/views/themes/default1/agent/ticket/ticket.blade.php index 321b7467d..1a04d1e1d 100644 --- a/code/resources/views/themes/default1/Agent/ticket/myticket.blade.php +++ b/code/code/resources/views/themes/default1/agent/ticket/ticket.blade.php @@ -1,4 +1,4 @@ -@extends('themes.default1.layouts.agentblank') +@extends('themes.default1.layouts.blank') @section('Tickets') class="active" @@ -8,21 +8,16 @@ class="active" active @stop -@section('myticket') +@section('ticket') class="active" @stop -@section('content') - -

- Tickets -

- +@section('content')
-

Inbox

+

Ticket

5 new messages
-
+ @if(Session::has('success')) +
+ Success + + {{Session::get('success')}} +
+ @endif + + @if(Session::has('fails')) +
+ Alert! + + {{Session::get('fails')}} +
+ @endif +
+ + {!! Form::open(['route'=>'select_all','method'=>'post']) !!}
- - - + + + +
where('assigned_to', '=', Auth::user()->id)->get()); -if ($counted < 10) { +$counted = count(App\Model\Ticket\Tickets::where('status', '=', 1)->get()); +if ($counted < 20) { echo $counted . "/" . $counted; } else { - echo "10/" . $counted; + echo "20/" . $counted; } ?>
+ - - - - - - - - + + + + + + + - where('assigned_to', '=', Auth::user()->id)->paginate(2);?> + orderBy('id', 'DESC')->paginate(20);?> - @foreach ($tickets as $ticket ) - - - id)->first();?> - + @foreach ($tickets as $ticket ) + seen_by == null) {?> style="color:green;" > + + id)->first(); + $string = strip_tags($title->title); + if (strlen($string) > 40) { + $stringCut = substr($string, 0, 40); + $string = substr($stringCut, 0, strrpos($stringCut, ' ')).' ...'; + } + $TicketData = App\Model\Ticket\Ticket_Thread::where('ticket_id', '=', $ticket->id)->max('id'); + $TicketDatarow = App\Model\Ticket\Ticket_Thread::where('id', '=', $TicketData)->first(); + $LastResponse = App\User::where('id', '=', $TicketDatarow->user_id)->first(); + if($LastResponse->role == "user") { + $rep = "#F39C12"; + $username = $LastResponse->user_name; + } else { $rep = "#000"; $username = $LastResponse->first_name ." ". $LastResponse->last_name; + if($LastResponse->first_name==null || $LastResponse->last_name==null) { + $username = $LastResponse->user_name; + }} + $titles = App\Model\Ticket\Ticket_Thread::where('ticket_id', '=', $ticket->id)->get(); + $count = count($titles); + foreach($titles as $title) + { + $title = $title; + } ?> + - - priority_id)->first();?> - - + + + + @endforeach @@ -132,7 +180,7 @@ if ($counted < 10) { $(document).ready(function() { /// Wait till page is loaded $('#click').click(function() { - $('#refresh').load('myticket #refresh'); + $('#refresh').load('ticket #refresh'); }); }); diff --git a/code/code/resources/views/themes/default1/agent/ticket/timeline.blade.php b/code/code/resources/views/themes/default1/agent/ticket/timeline.blade.php new file mode 100644 index 000000000..24fb492bb --- /dev/null +++ b/code/code/resources/views/themes/default1/agent/ticket/timeline.blade.php @@ -0,0 +1,1511 @@ +@extends('themes.default1.layouts.agent') + +@section('Tickets') +class="active" +@stop + +@section('ticket-bar') +active +@stop + +user_id)->first(); + $assignedto = App\User::where('id', '=', $tickets->assigned_to)->first(); + $agent_group = Auth::user()->assign_group; + $group = App\Model\Agent\Groups::where('name', '=', $agent_group)->where('group_status', '=', '1')->first(); +?> + +@section('sidebar') +
  • TICKET INFORMATION
  • +
  • + + TICKET ID +
    #{{$tickets->ticket_number}} +
    +
  • +
  • + + USER +
    {{$user->user_name}} +
    +
  • +
  • + @if($tickets->assigned_to > 0) + + ASSIGNED TO +
    {{$assignedto->first_name}} +
    + @else + + UNASSIGNED + + @endif +
  • +@stop + +@section('content') + +
    +
    +

    @if($thread->title){!! $thread->title !!} @endif

    +
    + + can_edit_ticket == 1) {?> + + + Generate PDF +
    + + +
    + can_delete_ticket == 1 || $group->can_ban_email == 1) {?> +
    + + +
    + + +
    +
    + +
    + + + +
    +
    +
    + priority_id)->first(); +?> +
    +
    +
    + sla; +$SlaPlan = App\Model\Manage\Sla_plan::where('id', '=', $sla)->first(); +?> + SLA Plan: {{$SlaPlan->grace_period}} +
    +
    + Created Date: {{date_format($tickets->created_at, 'd/m/Y H:i:s')}} +
    +
    + Due Date: + created_at; +$time = date_create($time); +date_add($time, date_interval_create_from_date_string($SlaPlan->grace_period)); +echo date_format($time, 'd/m/Y H:i:s'); +?> +
    +
    + id)->get();?> + @foreach($response as $last) + created_at;?> + @endforeach + Last Response: {{date_format($ResponseDate, 'd/m/Y H:i:s')}} +
    +
    +
    +
    + +
    +
    +
    subjectTicket IDlast ReplierReplies PriorityLast ActivityReply Due + + Subject + + Ticket ID + + Priority + + Last Replier + + Last Activity + + Reply Due +
    {{$title->title}}
    {{$string}} ({!! $count!!}) #{!! $ticket->ticket_number !!}client11 {{$priority->priority}}11h 59m 23s5h 23m 03s{!! $username !!}{!! $title->updated_at !!}
    + status)->first();?> + priority_id)->first();?> + help_topic_id)->first();?> + +
    Status: {{$status->name}}
    Priority: {{$priority->priority_desc}}
    Department: {{$help_topic->topic}}
    Email: {{$user->email}}
    +
    +
    +user_id)->first(); + $TicketData = App\Model\Ticket\Ticket_Thread::where('ticket_id', '=', $thread->ticket_id)->max('id'); + $TicketDatarow = App\Model\Ticket\Ticket_Thread::where('id', '=', $TicketData)->first(); + $LastResponse = App\User::where('id', '=', $TicketDatarow->user_id)->first(); + if($LastResponse->role == "user") { + $rep = "#F39C12"; + $username = $LastResponse->user_name; + } else { $rep = "#000"; $username = $LastResponse->first_name ." ". $LastResponse->last_name; + if($LastResponse->first_name==null || $LastResponse->last_name==null) { + $username = $LastResponse->user_name; + }} + if($tickets->source > 0) + { + $ticket_source = App\Model\Ticket\Ticket_source::where('id','=',$tickets->source)->first(); + $ticket_source = $ticket_source->value; + } + else + $ticket_source = $tickets->source; +?> + + @if($user_phone != null)@endif + + help_topic_id)->first();?> + +
    Phone: {{$user_phone->mobile}}
    Source: {{$ticket_source}}
    Help Topic: {{$help_topic->topic}}
    Last Message: {{$username}}
    +
    +
    + +
    +
    +
    +
    +
    + + + +
    +
    +
    + +
      + + id)->paginate(10); +foreach ($conversations as $conversation) { + if($conversation == null){}else{ + ?> +
    • + created_at; + $ConvDate = explode(' ', $ConvDate1); + + $date = $ConvDate[0]; + $time = $ConvDate[1]; + $time = substr($time, 0, -3); + if (isset($data) && $date == $data) { + + } else { + ?> + {{date_format($conversation->created_at, 'd/m/Y')}} + user_id)->first(); + ?> +
    • +
    • + is_internal) { ?> + + role == 'agent' || $role->role == 'admin') { ?> + + role == 'user') { ?> + + + + id)->first(); + if($attachment == null ) { + $body = $conversation->body; + } + else { + // dd($attachment->file); + // print $attachment->file; + // header("Content-type: image/jpeg"); + // echo " "; + $body = $conversation->body; + + $attachments = App\Model\Ticket\Ticket_attachments::where('thread_id','=',$conversation->id)->orderBy('id', 'DESC')->get(); + + // $i = 0; + + foreach($attachments as $attachment) + { + + // $i++; + if($attachment->type == 'pdf') + { + // echo "hello"; + }elseif($attachment->type == 'docx') + { + // echo "hello"; + } + else + { + $image = @imagecreatefromstring($attachment->file); + ob_start(); + imagejpeg($image, null, 80); + $data = ob_get_contents(); + ob_end_clean(); + $var = ''; + // echo $var; + // echo $attachment->name; + // $body = explode($attachment->name, $body); + $body = str_replace($attachment->name, "data:image/jpg;base64," . base64_encode($data), $body); + + $string = $body; + $start = ""; + $end = ""; + if(strpos($string,$start) == false || strpos($string,$start) == false) + { + } + else + { + $ini = strpos($string,$start); + $ini += strlen($start); + $len = strpos($string,$end,$ini) - $ini; + $parsed = substr($string,$ini,$len); + $body2 = $parsed; + $body = str_replace($body2 ," " ,$body); + } + } + } + // echo $body; + + // $body = explode($attachment->file, $body); + // $body = $body[0]; + } + ?> + + "; + $end = ""; + if(strpos($string,$start) == false || strpos($string,$start) == false) + { + } + else + { + $ini = strpos($string,$start); + $ini += strlen($start); + $len = strpos($string,$end,$ini) - $ini; + $parsed = substr($string,$ini,$len); + $body2 = $parsed; + $body = str_replace($body2 ," " ,$body); + } + + ?> +
      + {{date_format($conversation->created_at, 'd/m/Y H:i:s')}} +

      + role == "user") {echo $role->user_name; } else { echo $role->first_name . " " . $role->last_name; } ?>

      +
      + {!! $body !!} +
      + +
      +
    • + id?> + +
    • + +
    • +
        +setPath(url('/thread/' . $tickets->id))->render();?> +
      +
    +
    +
    +
    +
    +
    + + + + +
    + +can_edit_ticket == 1) {?> + + +can_ban_email == 1) {?> + + + + + +can_assign_ticket == 1) {?> + + + + + + + + + + +
    + + + +
    +
    + + + + + + + +@stop + + {{-- // --}} \ No newline at end of file diff --git a/code/code/resources/views/themes/default1/agent/ticket/trash.blade.php b/code/code/resources/views/themes/default1/agent/ticket/trash.blade.php new file mode 100644 index 000000000..9371b08df --- /dev/null +++ b/code/code/resources/views/themes/default1/agent/ticket/trash.blade.php @@ -0,0 +1,212 @@ + @extends('themes.default1.layouts.agent') + +@section('Tickets') +class="active" +@stop + +@section('ticket-bar') +active +@stop + +@section('trash') +class="active" +@stop + +@section('content') + +{{--

    + Tickets +

    --}} + + + +
    +
    + get());?> +

    Trash

    {{$counted}} Messages + +
    + @if(Session::has('success')) +
    + Success + + {{Session::get('success')}} +
    + @endif + + @if(Session::has('fails')) +
    + Alert! + + {{Session::get('fails')}} +
    + @endif +
    + + {!! Form::open(['route'=>'select_all','method'=>'post']) !!} +
    + + + + + +
    + get()); +if ($counted < 20) { + echo $counted . "/" . $counted; +} else { + echo "20/" . $counted; +} +?> +
    +
    +
    + + + + + + + + + + + + + + + + role == 'agent') { + $tickets = App\Model\Ticket\Tickets::where('status', '=', 5)->where('dept_id','=',Auth::user()->primary_dpt)->orderBy('id', 'DESC')->paginate(20); + } else { + $tickets = App\Model\Ticket\Tickets::where('status', '=', 5)->orderBy('id', 'DESC')->paginate(20); + } + ?> + + @foreach ($tickets as $ticket ) + seen_by == null) {?> style="color:green;" > + + id)->get(); + $collab = count($collaborators); + // title + $title = App\Model\Ticket\Ticket_Thread::where('ticket_id', '=', $ticket->id)->first(); + $string = strip_tags($title->title); + // check atatchments + $attachments = App\Model\Ticket\Ticket_attachments::where('thread_id','=',$title->id)->first(); + $attach = count($attachments); + + if (strlen($string) > 40) { + $stringCut = substr($string, 0, 40); + $string = substr($stringCut, 0, strrpos($stringCut, ' ')).' ...'; + } + $TicketData = App\Model\Ticket\Ticket_Thread::where('ticket_id', '=', $ticket->id)->max('id'); + $TicketDatarow = App\Model\Ticket\Ticket_Thread::where('id', '=', $TicketData)->first(); + $LastResponse = App\User::where('id', '=', $TicketDatarow->user_id)->first(); + if($LastResponse->role == "user") { + $rep = "#F39C12"; + $username = $LastResponse->user_name; + } else { $rep = "#000"; $username = $LastResponse->first_name ." ". $LastResponse->last_name; + if($LastResponse->first_name==null || $LastResponse->last_name==null) { + $username = $LastResponse->user_name; + }} + $titles = App\Model\Ticket\Ticket_Thread::where('ticket_id', '=', $ticket->id)->get(); + $count = count($titles); + foreach($titles as $title) + { + $title = $title; + } + $assigned_to = App\User::where('id','=',$ticket->assigned_to)->first(); + if($assigned_to == null) + { + $assigned = "Unassigned"; + } + else + { + $assigned = $assigned_to->first_name ." ". $assigned_to->last_name; + } + ?> + + + priority_id)->first();?> + + user_id)->first(); ?> + @if($from->role == "user") + + @else + + @endif + + + + + + @endforeach + +
    + SubjectTicket IDPriorityFromLast ReplierAssigned ToLast ActivityReply Due
    {{$string}} ({!! $count!!}) + @if($collab > 0) @endif + @if($attach > 0) @endif#{!! $ticket->ticket_number !!}{{$priority->priority}}{!! $from->user_name !!}{!! $from->first_name." ".$from->last_name !!}{!! $username !!}{!! $assigned !!}{!! $title->updated_at !!}
    +
    + setPath(url('/trash'))->render();?>  +
    +
    + {!! Form::close() !!} +
    +
    + + + +@stop \ No newline at end of file diff --git a/code/code/resources/views/themes/default1/agent/ticket/unassigned.blade.php b/code/code/resources/views/themes/default1/agent/ticket/unassigned.blade.php new file mode 100644 index 000000000..d4c3ce362 --- /dev/null +++ b/code/code/resources/views/themes/default1/agent/ticket/unassigned.blade.php @@ -0,0 +1,215 @@ +@extends('themes.default1.layouts.agent') + +@section('Tickets') +class="active" +@stop + +@section('ticket-bar') +active +@stop + +@section('unassigned') +class="active" +@stop + +@section('content') + +{{--

    + Tickets +

    --}} + + + +
    +
    + get());?> +

    Unassigned

    {{$counted}} Messages + +
    + @if(Session::has('success')) +
    + Success + + {{Session::get('success')}} +
    + @endif + + @if(Session::has('fails')) +
    + Alert! + + {{Session::get('fails')}} +
    + @endif +
    + + {!! Form::open(['route'=>'select_all','method'=>'post']) !!} +
    + + + + + +
    + get()); +if ($counted < 20) { + echo $counted . "/" . $counted; +} else { + echo "20/" . $counted; +} +?> +
    +
    +
    + + + + + + + + + + + + + + + + role == 'agent') { + $tickets = App\Model\Ticket\Tickets::where('assigned_to', '=', 0)->where('dept_id','=',Auth::user()->primary_dpt)->where('status','1')->orderBy('id', 'DESC')->paginate(20); + } else { + $tickets = App\Model\Ticket\Tickets::where('assigned_to', '=', 0)->where('status','1')->orderBy('id', 'DESC')->paginate(20); + } + + ?> + + + @foreach ($tickets as $ticket ) + seen_by == null) {?> style="color:green;" > + + id)->get(); + $collab = count($collaborators); + // title + $title = App\Model\Ticket\Ticket_Thread::where('ticket_id', '=', $ticket->id)->first(); + $string = strip_tags($title->title); + // check atatchments + $attachments = App\Model\Ticket\Ticket_attachments::where('thread_id','=',$title->id)->first(); + $attach = count($attachments); + + if (strlen($string) > 40) { + $stringCut = substr($string, 0, 40); + $string = substr($stringCut, 0, strrpos($stringCut, ' ')).' ...'; + } + $TicketData = App\Model\Ticket\Ticket_Thread::where('ticket_id', '=', $ticket->id)->max('id'); + $TicketDatarow = App\Model\Ticket\Ticket_Thread::where('id', '=', $TicketData)->first(); + $LastResponse = App\User::where('id', '=', $TicketDatarow->user_id)->first(); + if($LastResponse->role == "user") { + $rep = "#F39C12"; + $username = $LastResponse->user_name; + } else { $rep = "#000"; $username = $LastResponse->first_name ." ". $LastResponse->last_name; + if($LastResponse->first_name==null || $LastResponse->last_name==null) { + $username = $LastResponse->user_name; + }} + $titles = App\Model\Ticket\Ticket_Thread::where('ticket_id', '=', $ticket->id)->get(); + $count = count($titles); + foreach($titles as $title) + { + $title = $title; + } + $assigned_to = App\User::where('id','=',$ticket->assigned_to)->first(); + if($assigned_to == null) + { + $assigned = "Unassigned"; + } + else + { + $assigned = $assigned_to->first_name ." ". $assigned_to->last_name; + } + ?> + + + priority_id)->first();?> + + user_id)->first(); ?> + @if($from->role == "user") + + @else + + @endif + + + + + + @endforeach + +
    + SubjectTicket IDPriorityFromLast ReplierAssigned ToLast ActivityReply Due
    {{$string}} ({!! $count!!}) + @if($collab > 0) @endif + @if($attach > 0) @endif#{!! $ticket->ticket_number !!}{{$priority->priority}}{!! $from->user_name !!}{!! $from->first_name." ".$from->last_name !!}{!! $username !!}{!! $assigned !!}{!! $title->updated_at !!}
    +
    + setPath(url('/unassigned'))->render();?>  +
    +
    + {!! Form::close() !!} +
    +
    + + + +@stop \ No newline at end of file diff --git a/code/resources/views/themes/default1/Agent/user/create.blade.php b/code/code/resources/views/themes/default1/agent/user/create.blade.php similarity index 97% rename from code/resources/views/themes/default1/Agent/user/create.blade.php rename to code/code/resources/views/themes/default1/agent/user/create.blade.php index a8a3ca1a7..f22ca7d22 100644 --- a/code/resources/views/themes/default1/Agent/user/create.blade.php +++ b/code/code/resources/views/themes/default1/agent/user/create.blade.php @@ -1,4 +1,4 @@ -@extends('themes.default1.layouts.agentblank') +@extends('themes.default1.layouts.agent') @section('Users') class="active" diff --git a/code/resources/views/themes/default1/Agent/user/edit.blade.php b/code/code/resources/views/themes/default1/agent/user/edit.blade.php similarity index 97% rename from code/resources/views/themes/default1/Agent/user/edit.blade.php rename to code/code/resources/views/themes/default1/agent/user/edit.blade.php index f0ffbf50b..9b29e0cec 100644 --- a/code/resources/views/themes/default1/Agent/user/edit.blade.php +++ b/code/code/resources/views/themes/default1/agent/user/edit.blade.php @@ -1,4 +1,4 @@ -@extends('themes.default1.layouts.agentblank') +@extends('themes.default1.layouts.agent') @section('Users') class="active" diff --git a/code/resources/views/themes/default1/Agent/user/index.blade.php b/code/code/resources/views/themes/default1/agent/user/index.blade.php similarity index 78% rename from code/resources/views/themes/default1/Agent/user/index.blade.php rename to code/code/resources/views/themes/default1/agent/user/index.blade.php index fba45a0ed..e32473cf8 100644 --- a/code/resources/views/themes/default1/Agent/user/index.blade.php +++ b/code/code/resources/views/themes/default1/agent/user/index.blade.php @@ -1,4 +1,4 @@ -@extends('themes.default1.layouts.agentblank') +@extends('themes.default1.layouts.agent') @section('Users') class="active" @@ -32,12 +32,9 @@ class="active" -
    -
    -
    -

    {{Lang::get('lang.user')}}

    {{Lang::get('lang.create_user')}}
    +

    {{Lang::get('lang.user')}}

    {{Lang::get('lang.create_user')}}
    @@ -62,12 +59,7 @@ class="active"
    @endif - - - - - - +
    @@ -79,22 +71,21 @@ class="active" @foreach($users as $user) - - + + @@ -107,9 +98,6 @@ class="active"
    {{Lang::get('lang.name')}} {{Lang::get('lang.status')}}
    {{$user -> full_name }} {{$user -> user_name }}active == 1) { ?> {{$user -> created_at}} {{$user -> updated_at}} {!! Form::open(['route'=>['user.destroy', $user->id],'method'=>'DELETE']) !!} -
    + {{--
    --}} - {!! Form::button(' Delete', - ['type' => 'submit', - 'class'=> 'actions-line icon-trash', + {!! Form::button(' Delete',['type' => 'submit', + 'class'=> 'btn btn-warning btn-xs btn-flat', 'onclick'=>'return confirm("Are you sure?")']) !!} -
    + {{--
    --}} {!! Form::close() !!}
    -
    -
    - @section('FooterInclude') diff --git a/code/resources/views/themes/default1/Agent/user/profile.blade.php b/code/code/resources/views/themes/default1/agent/user/profile-edit.blade.php similarity index 91% rename from code/resources/views/themes/default1/Agent/user/profile.blade.php rename to code/code/resources/views/themes/default1/agent/user/profile-edit.blade.php index 4362b01b3..bdb55e9c7 100644 --- a/code/resources/views/themes/default1/Agent/user/profile.blade.php +++ b/code/code/resources/views/themes/default1/agent/user/profile-edit.blade.php @@ -1,4 +1,17 @@ -@extends('themes.default1.layouts.blank') +@extends('themes.default1.layouts.agent') + +@section('Dashboard') +class="active" +@stop + +@section('dashboard-bar') +active +@stop + +@section('profile') +class="active" +@stop + @section('content')
    @@ -34,6 +47,7 @@
    @endif +
    {!! Form::label('first_name',Lang::get('lang.first_name')) !!} @@ -41,7 +55,7 @@ {!! Form::text('first_name',null,['class' => 'form-control']) !!}
    - +
    {!! Form::label('last_name',Lang::get('lang.last_name')) !!} @@ -49,7 +63,7 @@ {!! Form::text('last_name',null,['class' => 'form-control']) !!}
    - +
    {!! Form::label('gender',Lang::get('lang.gender')) !!}
    @@ -65,7 +79,7 @@
    - + {!! Form::label('email',Lang::get('lang.email_address')) !!}
    {{$user->email}} @@ -73,7 +87,7 @@
    - + {!! Form::label('company',Lang::get('lang.company')) !!} {!! $errors->first('company', ':message') !!} {!! Form::text('company',null,['class' => 'form-control']) !!} @@ -81,6 +95,7 @@
    +
    {!! Form::label('ext',Lang::get('lang.ext')) !!} @@ -88,7 +103,7 @@ {!! Form::text('ext',null,['class' => 'form-control']) !!}
    - +
    {!! Form::label('phone_number',Lang::get('lang.phone')) !!} @@ -97,7 +112,7 @@
    - +
    {!! Form::label('mobile',Lang::get('lang.mobile_number')) !!} @@ -108,7 +123,7 @@
    - + {!! Form::label('profile_pic',Lang::get('lang.profile_pic')) !!} {!! $errors->first('profile_pic', ':message') !!} {!! Form::file('profile_pic') !!} @@ -133,38 +148,39 @@
    - @if(Session::has('success')) + @if(Session::has('success1'))
    Alert! Success. - {{Session::get('success')}} + {{Session::get('success1')}}
    @endif - @if(Session::has('fails')) + @if(Session::has('fails1'))
    Alert! Failed. - {{Session::get('fails')}} + {{Session::get('fails1')}}
    @endif +
    {!! Form::label('old_password',Lang::get('lang.old_password')) !!} {!! Form::password('old_password',['placeholder'=>'Password','class' => 'form-control']) !!} {!! $errors->first('old_password', ':message') !!}
    - +
    {!! Form::label('new_password',Lang::get('lang.new_password')) !!} {!! Form::password('new_password',['placeholder'=>'New Password','class' => 'form-control']) !!} {!! $errors->first('new_password', ':message') !!}
    - +
    {!! Form::label('confirm_password',Lang::get('lang.confirm_password')) !!} {!! Form::password('confirm_password',['placeholder'=>'Confirm Password','class' => 'form-control']) !!} @@ -172,14 +188,10 @@
    - - -
    - {!! Form::close() !!} @stop \ No newline at end of file diff --git a/code/code/resources/views/themes/default1/agent/user/profile.blade.php b/code/code/resources/views/themes/default1/agent/user/profile.blade.php new file mode 100644 index 000000000..debcbe0ab --- /dev/null +++ b/code/code/resources/views/themes/default1/agent/user/profile.blade.php @@ -0,0 +1,74 @@ +@extends('themes.default1.layouts.agent') + +@section('content') + +@section('Dashboard') +class="active" +@stop + +@section('dashboard-bar') +active +@stop + +@section('profile') +class="active" +@stop + + + @section('profileimg') + @if(Auth::user() && Auth::user()->profile_pic) + User Image + @else + @if(Auth::user()) + User Image + @endif + @endif + @stop + + + +
    +
    +{{-- style="background-image:url({{ URL::asset('/dist/img/boxed-bg.jpg')}}); color:#DBDBDB;" --}} +
    +
    + {{--
    --}} + {{--
    --}} + {{--
    --}} +

    User Information  

    + {{--
    --}} +
    + + @if($user->gender == 1) + + @else + + @endif + + + + + +

    Gender:

    {{ 'Male' }}

    gender:

    {{ 'Female' }}

    department:

    {{ $user->primary_dpt }}

    group:

    {{ $user->assign_group }}

    Company:

    {{ $user->company }}

    Time-zone:

    {{ $user->agent_tzone }}

    Role:

    {{ $user->role }}

    +
    + {{--
    --}} + {{--
    --}} +
    +
    + {{--
    --}} + {{--
    --}} +

    Contact Information

    +
    + + + + +

    Email:

    {{ $user->email }}

    Phone Number:

    {{ $user->ext }}{{ $user->phone_number }}

    Moble:

    {{ $user->mobile }}

    +
    + {{--
    --}} +
    + {{--
    --}} +
    +
    +
    +@stop diff --git a/code/code/resources/views/themes/default1/agent/user/show.blade.php b/code/code/resources/views/themes/default1/agent/user/show.blade.php new file mode 100644 index 000000000..5b8acbae7 --- /dev/null +++ b/code/code/resources/views/themes/default1/agent/user/show.blade.php @@ -0,0 +1,627 @@ +@extends('themes.default1.layouts.agent') + +@section('Users') +class="active" +@stop + +@section('user-bar') +active +@stop + +@section('user') +class="active" +@stop + +@section('HeadInclude') +@stop + +@section('PageHeader') + + +@stop + + +@section('breadcrumbs') + +@stop + + +@section('content') + + +
    +
    + +@if($users->first_name || $users->last_name) +

    {{$users->first_name}} {{$users->last_name}}

    +@else +

    {{$users->user_name}}

    +@endif +
    +
    +
    + {{Lang::get('lang.name')}} +
    +
    + @if($users->first_name || $users->last_name) + {{$users->first_name}} {{$users->last_name}} + @else + {{$users -> user_name }} + @endif +
    +
    +
    + +
    + {{Lang::get('lang.email')}} +
    +
    + {{$users -> email }} +
    +
    +
    +
    +
    + +
    + {{Lang::get('lang.organization')}} +
    + +
    +
    + +
    + {{Lang::get('lang.status')}} +
    +
    + @if($users->active == '1') + Active + @else + Inactive + @endif +
    +
    +
    +
    +
    + +
    + {{Lang::get('lang.created')}} +
    +
    + {{$users -> created_at}} +
    +
    +
    + +
    + {{Lang::get('lang.last_updated')}} +
    +
    + {{$users -> updated_at}} +
    +
    +
    +
    +{{-- detals table starts --}} +id)->first(); ?> +id)->where('status', '=','1')->get()); +$counted = count(App\Model\Ticket\Tickets::where('user_id', '=', $users->id)->where('status', '=','2')->get()); +$deleted = count(App\Model\Ticket\Tickets::where('user_id', '=', $users->id)->where('status', '=','5')->get()); ?> +
    +
    + + + + +
    + + + + + + + +{{-- details table ends --}} +@section('FooterInclude') + +@stop +@stop + +@stop +@section('FooterInclude') + +@stop + + + + + + + + + + diff --git a/code/resources/views/themes/default1/ckeditor.blade.php b/code/code/resources/views/themes/default1/ckeditor.blade.php similarity index 100% rename from code/resources/views/themes/default1/ckeditor.blade.php rename to code/code/resources/views/themes/default1/ckeditor.blade.php diff --git a/code/resources/views/themes/default1/client/guest-user/checkticket.blade.php b/code/code/resources/views/themes/default1/client/guest-user/checkticket.blade.php similarity index 99% rename from code/resources/views/themes/default1/client/guest-user/checkticket.blade.php rename to code/code/resources/views/themes/default1/client/guest-user/checkticket.blade.php index f022aa432..5eae04fc6 100644 --- a/code/resources/views/themes/default1/client/guest-user/checkticket.blade.php +++ b/code/code/resources/views/themes/default1/client/guest-user/checkticket.blade.php @@ -78,12 +78,12 @@ class="active" priority_id)->first(); ?> -
    +
    sla; - $SlaPlan = App\Model\Manage\Sla_plan::where('id','=',$sla)->first();?> + $SlaPlan = App\Model\Manage\Sla_plan::where('id','=',1)->first();?> SLA Plan: {{$SlaPlan->grace_period}}
    diff --git a/code/code/resources/views/themes/default1/client/guest-user/form.blade.php b/code/code/resources/views/themes/default1/client/guest-user/form.blade.php new file mode 100644 index 000000000..e2b6109fe --- /dev/null +++ b/code/code/resources/views/themes/default1/client/guest-user/form.blade.php @@ -0,0 +1,125 @@ +@extends('themes.default1.layouts.blank') +@section('HeadInclude') +@stop + +@section('PageHeader') + + +@stop + + +@section('breadcrumbs') + +@stop + + +@section('content') + + + + + + + + + + + + + +encrypt(csrf_token()); + ?> + +{!! Form::open(['action'=>'Guest\FormController@postedForm','method'=>'post']) !!} +
    +
    +

    Ticket {!! Form::submit(Lang::get('lang.send'),['class'=>'form-group btn btn-primary pull-right'])!!}

    +
    +
    + + {!! $errors->first('Name', ':message') !!} + {!! $errors->first('Email', ':message') !!} + {!! $errors->first('Phone', ':message') !!} + {!! $errors->first('Subject', ':message') !!} + {!! $errors->first('Details', ':message') !!} + +
    + {!! Form::label('help_topic',Lang::get('lang.help_topic')) !!} + {!! $errors->first('help_topic', ':message') !!} + get(); ?> + + +
    + + + + +
    + +
    +
    +
    +{!! Form::close() !!} + + + + + +@stop + diff --git a/code/resources/views/themes/default1/client/guest-user/form_ajax.blade.php b/code/code/resources/views/themes/default1/client/guest-user/form_ajax.blade.php similarity index 99% rename from code/resources/views/themes/default1/client/guest-user/form_ajax.blade.php rename to code/code/resources/views/themes/default1/client/guest-user/form_ajax.blade.php index d338bdb5d..5d3ac94c7 100644 --- a/code/resources/views/themes/default1/client/guest-user/form_ajax.blade.php +++ b/code/code/resources/views/themes/default1/client/guest-user/form_ajax.blade.php @@ -28,6 +28,8 @@ + + + + + +@stop +@section('breadcrumb') +
    + + +
    + +@stop + +@section('content') + + +
    + +
    +
    + @if(Auth::user()) + @else + + + Register + + + + + Sign In + + + @endif + @if(App\Model\Settings\System::first()->status == 1) + + + Submit a Ticket + + + @endif + + + My Tickets + + +
    +
    + + + +
    + +@stop \ No newline at end of file diff --git a/code/resources/views/themes/default1/Agent/ticket/ticket.blade.php b/code/code/resources/views/themes/default1/client/guest-user/mytickets.blade.php similarity index 70% rename from code/resources/views/themes/default1/Agent/ticket/ticket.blade.php rename to code/code/resources/views/themes/default1/client/guest-user/mytickets.blade.php index d35153ec0..b355e2a65 100644 --- a/code/resources/views/themes/default1/Agent/ticket/ticket.blade.php +++ b/code/code/resources/views/themes/default1/client/guest-user/mytickets.blade.php @@ -1,4 +1,4 @@ -@extends('themes.default1.layouts.agentblank') +@extends('themes.default1.layouts.blank') @section('Tickets') class="active" @@ -14,16 +14,10 @@ class="active" @section('content') - -

    - Tickets -

    - -
    -

    Inbox

    5 new messages +

    Ticket

    5 new messages - - + @@ -76,20 +68,42 @@ if ($counted < 10) { - paginate(2);?> + orderBy('id', 'DESC')->paginate(20);?> - @foreach ($tickets as $ticket ) - + @foreach ($tickets as $ticket ) + seen_by == null) {?> style="color:green;" > - id)->first();?> - + id)->first(); + $string = strip_tags($title->title); + if (strlen($string) > 40) { + $stringCut = substr($string, 0, 40); + $string = substr($stringCut, 0, strrpos($stringCut, ' ')).' ...'; + } + $TicketData = App\Model\Ticket\Ticket_Thread::where('ticket_id', '=', $ticket->id)->max('id'); + $TicketDatarow = App\Model\Ticket\Ticket_Thread::where('id', '=', $TicketData)->first(); + $LastResponse = App\User::where('id', '=', $TicketDatarow->user_id)->first(); + if($LastResponse->role == "user") { + $rep = "#F39C12"; + $username = $LastResponse->user_name; + } else { $rep = "#000"; $username = $LastResponse->first_name ." ". $LastResponse->last_name; + if($LastResponse->first_name==null || $LastResponse->last_name==null) { + $username = $LastResponse->user_name; + }} + $titles = App\Model\Ticket\Ticket_Thread::where('ticket_id', '=', $ticket->id)->get(); + $count = count($titles); + foreach($titles as $title) + { + $title = $title; + } ?> + priority_id)->first();?> - - - - + + + + @endforeach diff --git a/code/resources/views/themes/default1/client/guest-user/newticket.blade.php b/code/code/resources/views/themes/default1/client/guest-user/newticket.blade.php similarity index 95% rename from code/resources/views/themes/default1/client/guest-user/newticket.blade.php rename to code/code/resources/views/themes/default1/client/guest-user/newticket.blade.php index ada1746b5..3cb88f654 100644 --- a/code/resources/views/themes/default1/client/guest-user/newticket.blade.php +++ b/code/code/resources/views/themes/default1/client/guest-user/newticket.blade.php @@ -10,7 +10,7 @@ @section('breadcrumbs') @stop @@ -19,12 +19,12 @@ {!! Form::model($ticket,array('url' => 'postcheck' , 'method' => 'post') )!!} - +

    New Ticket {!! Form::submit(Lang::get('lang.send'),['class'=>'form-group btn btn-primary pull-right'])!!}

    - +
    @@ -41,26 +41,26 @@
    - {{Session::get('fails')}} + {{Session::get('fails')}}
    @endif - - + +
    - + {!! Form::label('email',Lang::get('lang.email')) !!} {!! $errors->first('email', ':message') !!} {!! Form::text('email',null,['class' => 'form-control']) !!} - +
    - +
    - + {!! Form::label('ticket_number',Lang::get('lang.ticket_number')) !!} {!! $errors->first('ticket_number', ':message') !!} {!! Form::text('ticket_number',null,['class' => 'form-control']) !!} - +
    diff --git a/code/resources/views/themes/default1/client/guest-user/profile.blade.php b/code/code/resources/views/themes/default1/client/guest-user/profile.blade.php similarity index 96% rename from code/resources/views/themes/default1/client/guest-user/profile.blade.php rename to code/code/resources/views/themes/default1/client/guest-user/profile.blade.php index 71a283ad3..54aebed65 100644 --- a/code/resources/views/themes/default1/client/guest-user/profile.blade.php +++ b/code/code/resources/views/themes/default1/client/guest-user/profile.blade.php @@ -35,7 +35,7 @@ @endif
    - + {!! Form::label('first_name',Lang::get('lang.first_name')) !!} {!! $errors->first('first_name', ':message') !!} {!! Form::text('first_name',null,['class' => 'form-control']) !!} @@ -43,7 +43,7 @@
    - + {!! Form::label('last_name',Lang::get('lang.last_name')) !!} {!! $errors->first('last_name', ':message') !!} {!! Form::text('last_name',null,['class' => 'form-control']) !!} @@ -51,6 +51,7 @@
    + {!! Form::label('gender',Lang::get('lang.gender')) !!}
    @@ -65,7 +66,7 @@
    - + {!! Form::label('email',Lang::get('lang.email_address')) !!}
    {{$user->email}} @@ -73,7 +74,7 @@
    - + {!! Form::label('company',Lang::get('lang.company')) !!} {!! $errors->first('company', ':message') !!} {!! Form::text('company',null,['class' => 'form-control']) !!} @@ -82,7 +83,7 @@
    - + {!! Form::label('ext',Lang::get('lang.ext')) !!} {!! $errors->first('ext', ':message') !!} {!! Form::text('ext',null,['class' => 'form-control']) !!} @@ -90,7 +91,7 @@
    - + {!! Form::label('phone_number',Lang::get('lang.phone')) !!} {!! $errors->first('phone_number', ':message') !!} {!! Form::text('phone_number',null,['class' => 'form-control']) !!} @@ -99,7 +100,7 @@
    - + {!! Form::label('mobile',Lang::get('lang.mobile_number')) !!} {!! $errors->first('mobile', ':message') !!} {!! Form::text('mobile',null,['class' => 'form-control']) !!} @@ -108,7 +109,7 @@
    - + {!! Form::label('profile_pic',Lang::get('lang.profile_pic')) !!} {!! $errors->first('profile_pic', ':message') !!} {!! Form::file('profile_pic') !!} @@ -150,21 +151,21 @@ {{Session::get('fails')}}
    @endif - +
    {!! Form::label('old_password',Lang::get('lang.old_password')) !!} {!! Form::password('old_password',['placeholder'=>'Password','class' => 'form-control']) !!} {!! $errors->first('old_password', ':message') !!}
    - +
    {!! Form::label('new_password',Lang::get('lang.new_password')) !!} {!! Form::password('new_password',['placeholder'=>'New Password','class' => 'form-control']) !!} {!! $errors->first('new_password', ':message') !!}
    - +
    {!! Form::label('confirm_password',Lang::get('lang.confirm_password')) !!} {!! Form::password('confirm_password',['placeholder'=>'Confirm Password','class' => 'form-control']) !!} @@ -172,9 +173,6 @@
    - - -
    diff --git a/code/resources/views/themes/default1/Agent/ticket/timeline.blade.php b/code/code/resources/views/themes/default1/client/guest-user/view_ticket.blade.php similarity index 60% rename from code/resources/views/themes/default1/Agent/ticket/timeline.blade.php rename to code/code/resources/views/themes/default1/client/guest-user/view_ticket.blade.php index 7b6449d78..ea9db2d5a 100644 --- a/code/resources/views/themes/default1/Agent/ticket/timeline.blade.php +++ b/code/code/resources/views/themes/default1/client/guest-user/view_ticket.blade.php @@ -1,13 +1,4 @@ -@extends('themes.default1.layouts.agentblank') - -@section('Tickets') -class="active" -@stop - -@section('ticket-bar') -active -@stop - +@extends('themes.default1.layouts.blank') user_id)->first();?> assigned_to)->first();?> @@ -20,22 +11,24 @@ active
  • - + USER
    {{$user->user_name}}
  • - @if($tickets->assigned_to > 0) + ASSIGNED TO -
    {{$assignedto->user_name}}
    {{$assignedto->email}} +
    {{$assignedto->first_name}} +
    @else + UNASSIGNED + @endif -
  • -@stop +@stop @section('content') @@ -44,7 +37,9 @@ active

    {!! $thread->title !!}

    + + Print
    + - +
    - +
    + + +
    @@ -108,22 +121,53 @@ echo date_format($time, 'd/m/Y H:i:s');
    + +
    - subject + Subject Ticket ID - last Replier - - Replies - Priority + Last Replier + Last Activity
    {{$title->title}}{{$string}} ({!! $count!!}) #{!! $ticket->ticket_number !!} {{$priority->priority}}client1111h 59m 23s5h 23m 03s{!! $username !!}{!! $title->updated_at !!}
    -
    status)->first();?>
    - priority_id)->first();?> - help_topic_id)->first();?> +
    status)->first();?>
    + priority_id)->first();?> + help_topic_id)->first();?>
    Status: {{$status->state}}
    Priority: {{$priority->priority}}
    Department: {{$help_topic->department}}
    Status: {{$status->name}}
    Priority: {{$priority->priority_desc}}
    Department: {{$help_topic->topic}}
    Email: {{$user->email}}
    +user_id)->first(); + + $TicketData = App\Model\Ticket\Ticket_Thread::where('ticket_id', '=', $thread->ticket_id)->max('id'); + $TicketDatarow = App\Model\Ticket\Ticket_Thread::where('id', '=', $TicketData)->first(); + $LastResponse = App\User::where('id', '=', $TicketDatarow->user_id)->first(); + if($LastResponse->role == "user") { + $rep = "#F39C12"; + $username = $LastResponse->user_name; + } else { $rep = "#000"; $username = $LastResponse->first_name ." ". $LastResponse->last_name; + if($LastResponse->first_name==null || $LastResponse->last_name==null) { + $username = $LastResponse->user_name; + }} + if($tickets->source > 0) + { + $ticket_source = App\Model\Ticket\Ticket_source::where('id','=',$tickets->source)->first(); + $ticket_source = $ticket_source->value; + } + else + $ticket_source = $tickets->source; + +?> - - + @if($user_phone != null)@endif + help_topic_id)->first();?> - +
    Phone: {{$thread->user_id}}
    Source: {{$thread->ip_address}}
    Phone: {{$user_phone->mobile}}
    Source: {{$ticket_source}}
    Help Topic: {{$help_topic->topic}}
    Last Message: {{$last->poster}}
    Last Message: {{$username}}
    +
    @@ -137,32 +181,69 @@ echo date_format($time, 'd/m/Y H:i:s');
    + + +
    + + - + +
    + + - - {!! Form::model($tickets->id, ['id'=>'form3','method' => 'PATCH'] )!!} + {!! Form::model($tickets->id, ['id'=>'form3','method' => 'PATCH', 'enctype'=>'multipart/form-data'] )!!}
    +
    +
    {!! Form::label('To', 'To:') !!}
    - {!! Form::text('To',$user->email,['class'=>'form-control','style'=>'width:55%'])!!} + {!! Form::text('To',$user->email,['id'=>'email','class'=>'form-control','style'=>'width:55%'])!!} {!! $errors->first('To', ':message') !!} + + Add Ccc
    +
    @@ -177,17 +258,22 @@ echo date_format($time, 'd/m/Y H:i:s');
    +
    {!! Form::label('Reply Content', 'ReplyContent:') !!}
    - + {!! $errors->first('ReplyContent', ':message') !!} +
    + {{--
    Attachment

    + Max. 10MB --}}
    +
    @@ -201,18 +287,19 @@ echo date_format($time, 'd/m/Y H:i:s');
    {!!Form::close()!!} - + - +
    @@ -319,37 +406,188 @@ $ConvDate1 = $conversation->created_at; $time = $ConvDate[1]; $time = substr($time, 0, -3); if (isset($data) && $date == $data) { + } else { ?> {{date_format($conversation->created_at, 'd/m/Y')}} user_id)->first(); ?>
  • - staff_id > 0) {?> - - user_id > 0) {?> + is_internal) { ?> + + role == 'agent' || $role->role == 'admin') { ?> + + role == 'user') { ?> - + - + id)->first(); + if($attachment == null ) { + $body = $conversation->body; + } + else { + // dd($attachment->file); + // print $attachment->file; + // header("Content-type: image/jpeg"); + // echo " "; + $body = $conversation->body; + + $attachments = App\Model\Ticket\Ticket_attachments::where('thread_id','=',$conversation->id)->orderBy('id', 'DESC')->get(); + + // $i = 0; + + foreach($attachments as $attachment) + { + + // $i++; + if($attachment->type == 'pdf') + { + // echo "hello"; + }elseif($attachment->type == 'docx') + { + // echo "hello"; + } + else + { + $image = imagecreatefromstring($attachment->file); + ob_start(); + imagejpeg($image, null, 80); + $data = ob_get_contents(); + ob_end_clean(); + $var = ''; + // echo $var; + // echo $attachment->name; + // $body = explode($attachment->name, $body); + $body = str_replace($attachment->name, "data:image/jpg;base64," . base64_encode($data), $body); + + $string = $body; + $start = ""; + $end = ""; + if(strpos($string,$start) == false || strpos($string,$start) == false) + { + } + else + { + $ini = strpos($string,$start); + $ini += strlen($start); + $len = strpos($string,$end,$ini) - $ini; + $parsed = substr($string,$ini,$len); + $body2 = $parsed; + $body = str_replace($body2 ," " ,$body); + } + } + } + // echo $body; + + // $body = explode($attachment->file, $body); + // $body = $body[0]; + } + ?> + + "; + $end = ""; + if(strpos($string,$start) == false || strpos($string,$start) == false) + { + } + else + { + $ini = strpos($string,$start); + $ini += strlen($start); + $len = strpos($string,$end,$ini) - $ini; + $parsed = substr($string,$ini,$len); + $body2 = $parsed; + $body = str_replace($body2 ," " ,$body); + } + + ?>
    {{date_format($conversation->created_at, 'd/m/Y H:i:s')}} -

    {{$conversation->poster}}

    +

    + role == "user") {echo $role->user_name; } else { echo $role->first_name . " " . $role->last_name; } ?>

    - {!! $conversation->body !!} + {!! $body !!} + +
    +
  • id?> - +
    • - setPath(url('/thread/' . $tickets->id))->render();?> +setPath(url('/thread/' . $tickets->id))->render();?>
    @@ -358,16 +596,19 @@ $data = $ConvDate[0];
    + +
    - + diff --git a/code/code/resources/views/themes/default1/user/article-list/category.blade.php b/code/code/resources/views/themes/default1/user/article-list/category.blade.php new file mode 100644 index 000000000..be8c0aabf --- /dev/null +++ b/code/code/resources/views/themes/default1/user/article-list/category.blade.php @@ -0,0 +1,74 @@ +@extends('themes.default1.layouts.client') +@section('breadcrumb') +
    + + +
    +@stop +@section('content') + + +
    + @foreach($categorys as $category) +

    {!! $category->name !!}

    +
    + + + + @endforeach + +
    + +get(); ?> + @foreach($article as $arti) +
    +
    + +

    {{$arti->name}}

    +
    + description?> + +
    +
    +

    {!!$excerpt!!}


    + Read more + +
    +
    +
    + +
    +
    + @endforeach + + + render(); + ?> + +
    + + +@stop + + diff --git a/code/code/resources/views/themes/default1/user/article-list/contact-details.blade.php b/code/code/resources/views/themes/default1/user/article-list/contact-details.blade.php new file mode 100644 index 000000000..169250b16 --- /dev/null +++ b/code/code/resources/views/themes/default1/user/article-list/contact-details.blade.php @@ -0,0 +1,4 @@ +{!!$name!!} +{!!$email!!} +{!!$subject!!} +{!!$details!!} \ No newline at end of file diff --git a/code/code/resources/views/themes/default1/user/article-list/contact.blade.php b/code/code/resources/views/themes/default1/user/article-list/contact.blade.php new file mode 100644 index 000000000..f3e19852a --- /dev/null +++ b/code/code/resources/views/themes/default1/user/article-list/contact.blade.php @@ -0,0 +1,90 @@ +@extends('themes.default1.layouts.client') +@section('breadcrumb') + +
    + + +
    + @stop +@section('check') + + + + +
    +

    Our Address

    + {!! $settings->address !!} +
    +@stop +@section('content') +
    +
    +

    + Contact us +

    +
    +

    +
    + {!! Form::open(['method'=>'post','action'=>'UserController@postContact']) !!} + @if(Session::has('success')) +
    + + + {{Session::get('success')}} +
    + @endif + + @if(Session::has('fails')) +
    + + + {{Session::get('fails')}} +
    + @endif + +
    + + {!! Form::label('name','Name') !!} + {!! $errors->first('name', ':message') !!} + {!! Form::text('name',null,['class' => 'form-control']) !!} + +
    + +
    + + {!! Form::label('email','Email') !!} + {!! $errors->first('email', ':message') !!} + {!! Form::text('email',null,['class' => 'form-control']) !!} + +
    + +
    + + {!! Form::label('subject','Subject') !!} + {!! $errors->first('subject', ':message') !!} + {!! Form::text('subject',null,['class' => 'form-control']) !!} + +
    + +
    + {!! Form::label('message','Messege', ['style' => 'display: block']) !!} + {!! $errors->first('message', ':message') !!} + + {!! Form::textarea('message',null,['class' => 'span6','form-control','id'=>'message']) !!} + +
    +
    + + {!! Form::submit('Send Message',['class'=>'form-group btn btn-primary'])!!} + +
    + + {!! Form::close() !!} +
    +@stop \ No newline at end of file diff --git a/code/code/resources/views/themes/default1/user/article-list/faq.blade.php b/code/code/resources/views/themes/default1/user/article-list/faq.blade.php new file mode 100644 index 000000000..fac75a0db --- /dev/null +++ b/code/code/resources/views/themes/default1/user/article-list/faq.blade.php @@ -0,0 +1,46 @@ +@extends('themes.default1.layouts.client') +@section('breadcrumb') +
    + + +
    +@stop +@section('content') +
    + + +
    +
    +

    Faq

    +
    + +
    + {!! $faq->faq !!} +
    + +
    + + + +
    +@stop +@section('category') +

    Categories

    + + @stop + diff --git a/code/code/resources/views/themes/default1/user/article-list/home.blade.php b/code/code/resources/views/themes/default1/user/article-list/home.blade.php new file mode 100644 index 000000000..1d611b661 --- /dev/null +++ b/code/code/resources/views/themes/default1/user/article-list/home.blade.php @@ -0,0 +1,125 @@ +@extends('themes.default1.layouts.client') +@section('breadcrumb') +
    + + +
    +@stop +@section('check') + +@stop +@section('content') +@if(Session::has('success')) +
    + + Success! + + {{Session::get('success')}} +
    + @endif + + @if(Session::has('fails')) +
    + + Alert! Failed. + + {{Session::get('fails')}} +
    + @endif +
    +
    + + @foreach($categorys as $category) +{{-- get the article_id where category_id == current category --}} +id)->get(); +/* from whole attribute pick the article_id */ +$page = App\Model\Relationship::where('category_id', $category->id)->paginate(3); +/* from whole attribute pick the article_id */ +$article_id = $page->lists('article_id'); +$count = count($article_id); +?> + +
    +
    +

    + + 6 + {{$category->name}} +

    +
      + +where('status','=','1')->where('type','=', '1')->get(); +?> + @foreach($article as $arti) +
    • + +

      {{$arti->name}}

      + + description; $len = strlen($str); ?> + + +

      {!!$excerpt!!}
      Read more

      + +
    • + @endforeach + + +
    + + +
    + +
    + + @endforeach + {!! $categories->setPath('kb/show/'); !!} +
    + +
    + +
    +
    +@stop +@section('category') +

    Categories

    + + @stop diff --git a/code/code/resources/views/themes/default1/user/article-list/profile.blade.php b/code/code/resources/views/themes/default1/user/article-list/profile.blade.php new file mode 100644 index 000000000..b16c01d9a --- /dev/null +++ b/code/code/resources/views/themes/default1/user/article-list/profile.blade.php @@ -0,0 +1,204 @@ +@extends('themes.default1.layouts.client') +@section('HeadInclude') + +@stop +@section('breadcrumb') + +
    + + +
    + @stop +@section('content') +
    +
    +

    + Profile Settings

    +
    +
    +
    + +{!! Form::model($user,['url'=>'client-profile-edit', 'method' => 'PATCH','files'=>true]) !!} + +
    + +
    + +

    Profile {!! Form::submit(Lang::get('lang.save'),['class'=>'form-group btn btn-primary pull-right'])!!}

    + +
    + +
    + +@if(Session::has('success')) +
    + + Alert! Success. + + {{Session::get('success')}} +
    + @endif + + @if(Session::has('fails')) +
    + + Alert! Failed. + + {{Session::get('fails')}} +
    + @endif + +
    + + {!! Form::label('first_name',Lang::get('lang.first_name')) !!} + {!! $errors->first('first_name', ':message') !!} + {!! Form::text('first_name',null,['class' => 'form-control']) !!} + +
    + +
    + + {!! Form::label('last_name',Lang::get('lang.last_name')) !!} + {!! $errors->first('last_name', ':message') !!} + {!! Form::text('last_name',null,['class' => 'form-control']) !!} + +
    + +
    + + {!! Form::label('gender',Lang::get('lang.gender')) !!} +
    +
    + {!! Form::radio('gender','1',true) !!}{{Lang::get('lang.male')}} +
    +
    + {!! Form::radio('gender','0') !!}{{Lang::get('lang.female')}} +
    +
    +
    + + + +
    + + {!! Form::label('email',Lang::get('lang.email_address')) !!} +
    + {{$user->email}} +
    +
    + +
    + + {!! Form::label('company',Lang::get('lang.company')) !!} + {!! $errors->first('company', ':message') !!} + {!! Form::text('company',null,['class' => 'form-control']) !!} + +
    + +
    +
    + + {!! Form::label('ext',Lang::get('lang.ext')) !!} + {!! $errors->first('ext', ':message') !!} + {!! Form::text('ext',null,['class' => 'form-control']) !!} + +
    + +
    + + {!! Form::label('phone_number',Lang::get('lang.phone')) !!} + {!! $errors->first('phone_number', ':message') !!} + {!! Form::text('phone_number',null,['class' => 'form-control']) !!} + +
    +
    + +
    + + {!! Form::label('mobile',Lang::get('lang.mobile_number')) !!} + {!! $errors->first('mobile', ':message') !!} + {!! Form::text('mobile',null,['class' => 'form-control']) !!} + +
    + + +
    + + {!! Form::label('profile_pic',Lang::get('lang.profile_pic')) !!} + {!! $errors->first('profile_pic', ':message') !!} + {!! Form::file('profile_pic') !!} + +
    + + {!! Form::token() !!} + {!! Form::close() !!} +
    +
    +
    +
    + + {!! Form::model($user,['url'=>'client-profile-password/'.$user->id , 'method' => 'PATCH']) !!} + +
    + +
    + +

    Change Password {!! Form::submit(Lang::get('lang.save'),['class'=>'form-group btn btn-primary pull-right'])!!}

    + +
    + +
    + @if(Session::has('success')) +
    + + Alert! Success. + + {{Session::get('success')}} +
    + @endif + + @if(Session::has('fails')) +
    + + Alert! Failed. + + {{Session::get('fails')}} +
    + @endif + +
    + {!! Form::label('old_password',Lang::get('lang.old_password')) !!} + {!! Form::password('old_password',['placeholder'=>'Password','class' => 'form-control']) !!} + {!! $errors->first('old_password', ':message') !!} + +
    + +
    + {!! Form::label('new_password',Lang::get('lang.new_password')) !!} + {!! Form::password('new_password',['placeholder'=>'New Password','class' => 'form-control']) !!} + {!! $errors->first('new_password', ':message') !!} + +
    + +
    + {!! Form::label('confirm_password',Lang::get('lang.confirm_password')) !!} + {!! Form::password('confirm_password',['placeholder'=>'Confirm Password','class' => 'form-control']) !!} + {!! $errors->first('confirm_password', ':message') !!} + +
    + +
    +
    +
    +
    + + +{!! Form::close() !!} +
    +@stop \ No newline at end of file diff --git a/code/code/resources/views/themes/default1/user/article-list/search.blade.php b/code/code/resources/views/themes/default1/user/article-list/search.blade.php new file mode 100644 index 000000000..0aee1b9c1 --- /dev/null +++ b/code/code/resources/views/themes/default1/user/article-list/search.blade.php @@ -0,0 +1,45 @@ +@extends('themes.default1.layouts.client') +@section('breadcrumb') +
    + + +
    +@stop +@section('content') + + @foreach($result as $arti) + + + + + + + +@stop +
    \ No newline at end of file diff --git a/code/code/resources/views/themes/default1/user/article-list/show.blade.php b/code/code/resources/views/themes/default1/user/article-list/show.blade.php new file mode 100644 index 000000000..cbe51888e --- /dev/null +++ b/code/code/resources/views/themes/default1/user/article-list/show.blade.php @@ -0,0 +1,189 @@ +@extends('themes.default1.layouts.client') +@section('breadcrumb') + + {{-- get the article_id where category_id == current category --}} +id)->get(); +/* from whole attribute pick the article_id */ +$category_id = $all->lists('category_id'); + +?> + +
    + + +
    + @stop +@section('content') +
    + + + +
    +
    +

    {{$arti->name}}

    + + +
    + +
    + +

    {!!$arti->description!!}

    + +
    + +
    +
    +
    +
    +
      +
    • +
    • +
    + 19 votes +
      +
    • +
    • +
    • +
    • +
    • +
    +
    + + +
    +
    +
    +
    +id)->get(); ?> + +
    + @foreach($comments as $comment) +
      +
    1. + +
    2. + + +
    + @endforeach +
    +

    Leave a Reply

    + {!! Form::open(['method'=>'post','url'=>'kb/postcomment/'.$arti->id]) !!} +
    +
    +
    + + + @if(Session::has('success')) +
    + + + {{Session::get('success')}} +
    + @endif + + @if(Session::has('fails')) +
    + + + {{Session::get('fails')}} +
    + @endif + +
    + + {!! Form::label('name','Name') !!} + {!! $errors->first('name', ':message') !!} + {!! Form::text('name',null,['class' => 'form-control']) !!} + +
    + +
    + + {!! Form::label('email','Email') !!} + {!! $errors->first('email', ':message') !!} + {!! Form::text('email',null,['class' => 'form-control']) !!} + +
    + +
    + + {!! Form::label('website','website') !!} + {!! $errors->first('website', ':message') !!} + {!! Form::text('website',null,['class' => 'form-control']) !!} + +
    +
    +
    +
    + {!! Form::label('comment','Messege') !!} + {!! $errors->first('comment', ':message') !!} + + {!! Form::textarea('comment',null,['class' => 'form-control','size' => '30x8','id'=>'comment']) !!} + +
    +
    +
    +
    +
    + +
    + + {!! Form::close() !!} +
    +
    + +
    + +@stop \ No newline at end of file diff --git a/code/code/resources/views/themes/default1/user/tickets/ckeckticket.blade.php b/code/code/resources/views/themes/default1/user/tickets/ckeckticket.blade.php new file mode 100644 index 000000000..ecaa73818 --- /dev/null +++ b/code/code/resources/views/themes/default1/user/tickets/ckeckticket.blade.php @@ -0,0 +1,288 @@ +@extends('themes.default1.layouts.client') + + +@section('HeadInclude') + +@stop + +@section('breadcrumb') +
    + +
    +@stop + +@section('content') +first(); +$thread = App\Model\ticket\Ticket_thread::where('ticket_id','=',\Crypt::decrypt($id))->first(); +//$user = App\User::where('id','=',$id1)->first();?> + + + +
    +
    + +

    {{$thread->title}}

    ( {{$tickets->ticket_number}} ) +
    +
    + + + +
    + + +
    + {!! Form::close() !!} +
    +
    + +
    +
    +
    +
    + priority_id)->first(); + ?> +
    +
    +
    + sla; + $SlaPlan = App\Model\Manage\Sla_plan::where('id','=',1)->first();?> + SLA Plan: {{$SlaPlan->grace_period}} +
    +
    + Created Date: {{date_format($tickets->created_at, 'd/m/Y H:i:s')}} +
    +
    + Due Date: + created_at; + $time = date_create($time); + date_add($time, date_interval_create_from_date_string($SlaPlan->grace_period)); + echo date_format($time, 'd/m/Y H:i:s'); + ?> +
    +
    + id)->get();?> + @foreach($response as $last) + created_at; ?> + @endforeach + Last Response: {{date_format($ResponseDate, 'd/m/Y H:i:s')}} +
    +
    +
    +
    +
    + + + status)->first();?> + priority_id)->first();?> + help_topic_id)->first();?> +
    Status: {{$status->state}}
    Priority: {{$priority->priority}}
    Department: {{$help_topic->department}}
    + +
    +
    + + + + help_topic_id)->first();?> + +
    Help Topic: {{$help_topic->topic}}
    Last Message: {{$last->poster}}
    +
    + +
    +
    +
    +
    + +id)->where('is_internal', '=', 0)->paginate(10); +foreach ($conversations as $conversation) { +$ConvDate1 = $conversation->created_at; + $ConvDate = explode(' ', $ConvDate1); + + $date = $ConvDate[0]; + $time = $ConvDate[1]; + $time = substr($time, 0, -3); + if (isset($data) && $date == $data) { + + } else { +$data = $ConvDate[0]; + } + $role = App\User::where('id','=',$conversation->user_id)->first(); + + $attachment = App\Model\Ticket\Ticket_attachments::where('thread_id','=',$conversation->id)->first(); + if($attachment == null ) { + $body = $conversation->body; + } + else { + $body = $conversation->body; + $attachments = App\Model\Ticket\Ticket_attachments::where('thread_id','=',$conversation->id)->orderBy('id', 'DESC')->get(); + foreach($attachments as $attachment) + { + if($attachment->type == 'pdf') + { + }elseif($attachment->type == 'docx') + { + } + else + { + $image = @imagecreatefromstring($attachment->file); + ob_start(); + imagejpeg($image, null, 80); + $data = ob_get_contents(); + ob_end_clean(); + $var = ''; + $body = str_replace($attachment->name, "data:image/jpg;base64," . base64_encode($data), $body); + + $string = $body; + $start = ""; + $end = ""; + if(strpos($string,$start) == false || strpos($string,$start) == false) + { + } + else + { + $ini = strpos($string,$start); + $ini += strlen($start); + $len = strpos($string,$end,$ini) - $ini; + $parsed = substr($string,$ini,$len); + $body2 = $parsed; + $body = str_replace($body2 ," " ,$body); + } + } + } + } + $string = $body; + $start = ""; + $end = ""; + if(strpos($string,$start) == false || strpos($string,$start) == false) + { + } + else + { + $ini = strpos($string,$start); + $ini += strlen($start); + $len = strpos($string,$end,$ini) - $ini; + $parsed = substr($string,$ini,$len); + $body2 = $parsed; + $body = str_replace($body2 ," " ,$body); + } +?> + +
      +
    1. +
      +
      role == "user") { ?> style="background-color: hsla(100, 100%, 51%, 0.15)" style="background-color:#FFFCB3" > +
      + role == "user") { ?>style="box-shadow: 0 1px 3px #00FF26;" style="box-shadow: 0 1px 3px #FFEC00;" > + @if($role->role == "user") + {{$role->user_name}} + @else + {{$role->first_name." ".$role->last_name}} + @endif +
      + +
      +
      +

      {!! $body !!}

      +
      +
      +
    2. +
    + + + + + +
    +setPath( url('check_ticket/{'.$id.'}'))->render(); ?> +
    +



    +
    +

    Leave a Reply

    + {!! Form::open(['route'=>'ticket.reply']) !!} +
    +
    +
    +
    + +
    +
    +
    +
    +
    + +
    + {!! Form::close() !!} +
    + + + + + + +@stop + + + + + + \ No newline at end of file diff --git a/code/code/resources/views/themes/default1/user/tickets/form.blade.php b/code/code/resources/views/themes/default1/user/tickets/form.blade.php new file mode 100644 index 000000000..d0aff204b --- /dev/null +++ b/code/code/resources/views/themes/default1/user/tickets/form.blade.php @@ -0,0 +1,143 @@ +@extends('themes.default1.layouts.client') + +@section('breadcrumb') +
    + +
    +@stop + +@section('check') + +@stop + +@section('content') +
    + @if(Session::has('message')) +
    + + Success! + + {{Session::get('message')}} +
    + @endif + + + + +encrypt(csrf_token()); + ?> + +{!! Form::open(['action'=>'Guest\FormController@postedForm','method'=>'post']) !!} +
    +
    +

    Ticket {!! Form::submit(Lang::get('lang.send'),['class'=>'form-group btn btn-info pull-right'])!!}

    +
    +
    + + {!! $errors->first('Name', ':message') !!} + {!! $errors->first('Email', ':message') !!} + {!! $errors->first('Phone', ':message') !!} + {!! $errors->first('Subject', ':message') !!} + {!! $errors->first('Details', ':message') !!} + +
    + {!! Form::label('help_topic', 'Choose a Help Topic') !!} + {!! $errors->first('help_topic', ':message') !!} + +
    + + + + +
    + +
    +
    +
    +{!! Form::close() !!} +
    + + + + +@stop + diff --git a/code/resources/views/themes/default1/Agent/ticket/open.blade.php b/code/code/resources/views/themes/default1/user/tickets/mytickets.blade.php similarity index 54% rename from code/resources/views/themes/default1/Agent/ticket/open.blade.php rename to code/code/resources/views/themes/default1/user/tickets/mytickets.blade.php index e1b919a0f..8211a2916 100644 --- a/code/resources/views/themes/default1/Agent/ticket/open.blade.php +++ b/code/code/resources/views/themes/default1/user/tickets/mytickets.blade.php @@ -1,36 +1,27 @@ -@extends('themes.default1.layouts.agentblank') - -@section('Tickets') -class="active" -@stop - -@section('ticket-bar') -active -@stop - -@section('open') -class="active" +@extends('themes.default1.layouts.client') +@section('HeadInclude') + @stop +@section('breadcrumb') +
    + + +
    + @stop @section('content') - -

    - Tickets -

    - - -
    -
    -

    Inbox

    5 new messages - +
    +
    +
    +

    Tickets

    -
    +
    @@ -38,55 +29,88 @@ class="active"
    get()); -if ($counted < 10) { +$counted = count(App\Model\Ticket\Tickets::where('status', '=', 1)->where('user_id', '=' , Auth::user()->id)->get()); +if ($counted < 20) { echo $counted . "/" . $counted; } else { - echo "10/" . $counted; + echo "20/" . $counted; } ?>
    + + + + + + + - - - - - - - - paginate(10);?> + where('user_id', '=' , Auth::user()->id)->orderBy('id', 'DESC')->paginate(20);?> - @foreach ($tickets as $ticket ) - + @foreach ($tickets as $ticket ) + seen_by == null) {?> style="color:green;" > - id)->first();?> - + id)->first(); + $string = strip_tags($title->title); + if (strlen($string) > 40) { + $stringCut = substr($string, 0, 40); + $string = substr($stringCut, 0, strrpos($stringCut, ' ')).' ...'; + } + $TicketData = App\Model\Ticket\Ticket_Thread::where('ticket_id', '=', $ticket->id)->max('id'); + $TicketDatarow = App\Model\Ticket\Ticket_Thread::where('id', '=', $TicketData)->first(); + $LastResponse = App\User::where('id', '=', $TicketDatarow->user_id)->first(); + if($LastResponse->role == "user") { + $rep = "#F39C12"; + $username = $LastResponse->user_name; + } else { $rep = "#000"; $username = $LastResponse->first_name ." ". $LastResponse->last_name; + if($LastResponse->first_name==null || $LastResponse->last_name==null) { + $username = $LastResponse->user_name; + }} + $titles = App\Model\Ticket\Ticket_Thread::where('ticket_id', '=', $ticket->id)->get(); + $count = count($titles); + foreach($titles as $title) + { + $title = $title; + } ?> + priority_id)->first();?> - - - - + + + + status)->first(); ?> + @endforeach
    + Subject + + Ticket ID + + Priority + + Last Replier + + Last Activity + + Status subjectTicket IDPrioritylast ReplierRepliesLast ActivityReply Due
    {{$title->title}}{{$string}} ({!! $count!!}) #{!! $ticket->ticket_number !!} {{$priority->priority}}client1111h 59m 23s5h 23m 03s{!! $username !!}{!! $title->updated_at !!}{!! $status->name !!}
    - setPath(url('/ticket'))->render();?>  + setPath(url('mytickets'))->render();?> 
    - - +
    + + +@stop + + {{-- // --}} \ No newline at end of file diff --git a/code/resources/views/vendor/.gitkeep b/code/code/resources/views/vendor/.gitkeep similarity index 100% rename from code/resources/views/vendor/.gitkeep rename to code/code/resources/views/vendor/.gitkeep diff --git a/code/resources/views/vendor/Chumper/javascript.blade.php b/code/code/resources/views/vendor/Chumper/javascript.blade.php similarity index 100% rename from code/resources/views/vendor/Chumper/javascript.blade.php rename to code/code/resources/views/vendor/Chumper/javascript.blade.php diff --git a/code/resources/views/vendor/Chumper/options.blade.php b/code/code/resources/views/vendor/Chumper/options.blade.php similarity index 100% rename from code/resources/views/vendor/Chumper/options.blade.php rename to code/code/resources/views/vendor/Chumper/options.blade.php diff --git a/code/resources/views/vendor/Chumper/template.blade.php b/code/code/resources/views/vendor/Chumper/template.blade.php similarity index 100% rename from code/resources/views/vendor/Chumper/template.blade.php rename to code/code/resources/views/vendor/Chumper/template.blade.php diff --git a/code/code/resources/views/welcome.blade.php b/code/code/resources/views/welcome.blade.php new file mode 100644 index 000000000..8c8ae3040 --- /dev/null +++ b/code/code/resources/views/welcome.blade.php @@ -0,0 +1,48 @@ + + + Tickets + + + + + + +
    +
    +
    Tickets
    +
    Ticket base System Under Construction
    +
    +
    + + diff --git a/code/server.php b/code/code/server.php similarity index 100% rename from code/server.php rename to code/code/server.php diff --git a/code/storage/.gitignore b/code/code/storage/.gitignore similarity index 100% rename from code/storage/.gitignore rename to code/code/storage/.gitignore diff --git a/code/storage/app/.gitignore b/code/code/storage/app/.gitignore similarity index 100% rename from code/storage/app/.gitignore rename to code/code/storage/app/.gitignore diff --git a/code/storage/framework/.gitignore b/code/code/storage/framework/.gitignore similarity index 100% rename from code/storage/framework/.gitignore rename to code/code/storage/framework/.gitignore diff --git a/code/storage/framework/cache/.gitignore b/code/code/storage/framework/cache/.gitignore similarity index 100% rename from code/storage/framework/cache/.gitignore rename to code/code/storage/framework/cache/.gitignore diff --git a/code/storage/framework/sessions/.gitignore b/code/code/storage/framework/sessions/.gitignore similarity index 100% rename from code/storage/framework/sessions/.gitignore rename to code/code/storage/framework/sessions/.gitignore diff --git a/code/storage/framework/views/.gitignore b/code/code/storage/framework/views/.gitignore similarity index 100% rename from code/storage/framework/views/.gitignore rename to code/code/storage/framework/views/.gitignore diff --git a/code/storage/logs/.gitignore b/code/code/storage/logs/.gitignore similarity index 100% rename from code/storage/logs/.gitignore rename to code/code/storage/logs/.gitignore diff --git a/code/tests/ExampleTest.php b/code/code/tests/ExampleTest.php similarity index 100% rename from code/tests/ExampleTest.php rename to code/code/tests/ExampleTest.php diff --git a/code/tests/TestCase.php b/code/code/tests/TestCase.php similarity index 100% rename from code/tests/TestCase.php rename to code/code/tests/TestCase.php diff --git a/code/config/bugsnag.php b/code/config/bugsnag.php deleted file mode 100644 index 06180263d..000000000 --- a/code/config/bugsnag.php +++ /dev/null @@ -1,5 +0,0 @@ - 'f27b54f858d9bff115b84ae438876380' -); \ No newline at end of file diff --git a/code/public/css/app.css b/code/css/app.css similarity index 100% rename from code/public/css/app.css rename to code/css/app.css diff --git a/code/database/migrations/2015_03_11_082618_helpdesk.php b/code/database/migrations/2015_03_11_082618_helpdesk.php deleted file mode 100644 index 0dbc3144b..000000000 --- a/code/database/migrations/2015_03_11_082618_helpdesk.php +++ /dev/null @@ -1,342 +0,0 @@ -increments('id'); - $table->string('user_name')->unique(); - $table->string('first_name'); - $table->string('last_name'); - $table->string('email'); - $table->string('phone'); - $table->string('mobile'); - $table->string('agent_sign'); - $table->boolean('account_type'); - $table->boolean('account_status'); - $table->string('assign_group'); - $table->string('primary_dpt'); - $table->string('agent_tzone'); - $table->boolean('daylight_save'); - $table->boolean('limit_access'); - $table->boolean('directory_listing'); - $table->boolean('vocation_mode'); - $table->string('assign_team'); - $table->rememberToken(); - $table->timestamps(); - }); - Schema::create('teams', function(Blueprint $table) - { - $table->increments('id'); - $table->string('name'); - $table->boolean('status'); - $table->string('team_lead'); - $table->boolean('assign_alert'); - $table->string('admin_notes'); - $table->rememberToken(); - $table->timestamps(); - }); - Schema::create('groups', function(Blueprint $table) - { - $table->increments('id'); - $table->string('name'); - $table->boolean('group_status'); - $table->boolean('can_create_ticket'); - $table->boolean('can_edit_ticket'); - $table->boolean('can_post_ticket'); - $table->boolean('can_close_ticket'); - $table->boolean('can_assign_ticket'); - $table->boolean('can_trasfer_ticket'); - $table->boolean('can_delete_ticket'); - $table->boolean('can_ban_email'); - $table->boolean('can_manage_canned'); - $table->boolean('can_manage_faq'); - $table->boolean('can_view_agent_stats'); - $table->boolean('department_access'); - $table->string('admin_notes'); - $table->rememberToken(); - $table->timestamps(); - }); - Schema::create('department', function(Blueprint $table) - { - $table->increments('id'); - $table->string('name'); - $table->boolean('type'); - $table->string('sla'); - $table->string('manager'); - $table->boolean('ticket_assignment'); - $table->string('outgoing_email'); - $table->string('template_set'); - $table->boolean('auto_ticket_response'); - $table->boolean('auto_message_response'); - $table->string('auto_response_email'); - $table->string('recipient'); - $table->boolean('group_access'); - $table->string('department_sign'); - $table->rememberToken(); - $table->timestamps(); - }); - Schema::create('emails', function(Blueprint $table) - { - $table->increments('id'); - $table->string('email_address'); - $table->string('email_name'); - $table->string('department'); - $table->string('priority'); - $table->string('help_topic'); - $table->string('user_name'); - $table->string('password'); - $table->string('fetching_host'); - $table->string('fetching_port'); - $table->string('mailbox_protocol'); - $table->string('folder'); - $table->string('sending_host'); - $table->string('sending_port'); - $table->boolean('internal_notes'); - $table->boolean('auto_response'); - $table->boolean('fetching_status'); - $table->boolean('move_to_folder'); - $table->boolean('delete_email'); - $table->boolean('do_nothing'); - $table->boolean('sending_status'); - $table->boolean('authentication'); - $table->boolean('header_spoofing'); - $table->rememberToken(); - $table->timestamps(); - }); - Schema::create('banlist', function(Blueprint $table) - { - $table->increments('id'); - $table->boolean('ban_status'); - $table->string('email_address'); - $table->string('internal_notes'); - $table->rememberToken(); - $table->timestamps(); - - }); - Schema::create('template', function(Blueprint $table) - { - $table->increments('id'); - $table->string('name'); - $table->boolean('status'); - $table->string('template_set_to_clone'); - $table->string('language'); - $table->string('internal_note'); - $table->rememberToken(); - $table->timestamps(); - }); - Schema::create('help_topic', function(Blueprint $table) - { - $table->increments('id'); - $table->string('topic'); - $table->string('parent_topic'); - $table->string('custom_form'); - $table->string('department'); - $table->string('ticket_status'); - $table->string('priority'); - $table->string('sla_plan'); - $table->string('thank_page'); - $table->string('ticket_num_format'); - $table->string('internal_notes'); - $table->boolean('status'); - $table->boolean('type'); - $table->boolean('auto_response'); - $table->rememberToken(); - $table->timestamps(); - }); - Schema::create('sla_plan', function(Blueprint $table) - { - $table->increments('id'); - $table->string('name'); - $table->string('grace_period'); - $table->string('admin_note'); - $table->boolean('status'); - $table->boolean('transient'); - $table->boolean('ticket_overdue'); - $table->rememberToken(); - $table->timestamps(); - }); - Schema::create('forms', function(Blueprint $table) - { - $table->increments('id'); - $table->string('title'); - $table->string('instruction'); - $table->string('label'); - $table->string('type'); - $table->string('visibility'); - $table->string('variable'); - $table->string('internal_notes'); - $table->rememberToken(); - $table->timestamps(); - }); - Schema::create('company', function(Blueprint $table) - { - $table->increments('id'); - $table->string('company_name'); - $table->string('website'); - $table->string('phone'); - $table->string('address'); - $table->string('landing_page'); - $table->string('offline_page'); - $table->string('thank_page'); - $table->string('logo'); - $table->rememberToken(); - $table->timestamps(); - }); - Schema::create('system', function(Blueprint $table) - { - $table->increments('id'); - $table->boolean('status'); - $table->string('url'); - $table->string('name'); - $table->string('department'); - $table->string('page_size'); - $table->string('log_level'); - $table->string('purge_log'); - $table->string('name_format'); - $table->string('time_farmat'); - $table->string('date_format'); - $table->string('date_time_format'); - $table->string('day_date_time'); - $table->string('time_zone'); - $table->rememberToken(); - $table->timestamps(); - }); - Schema::create('tickets', function(Blueprint $table) - { - $table->increments('id'); - $table->string('num_format'); - $table->string('num_sequence'); - $table->string('priority'); - $table->string('sla'); - $table->string('help_topic'); - $table->string('max_open_ticket'); - $table->string('collision_avoid'); - $table->string('captcha'); - $table->boolean('status'); - $table->boolean('claim_response'); - $table->boolean('assigned_ticket'); - $table->boolean('answered_ticket'); - $table->boolean('agent_mask'); - $table->boolean('html'); - $table->boolean('client_update'); - $table->boolean('max_file_size'); - $table->rememberToken(); - $table->timestamps(); - }); - Schema::create('email', function(Blueprint $table) - { - $table->increments('id'); - $table->string('template'); - $table->string('sys_email'); - $table->string('alert_email'); - $table->string('admin_email'); - $table->string('mta'); - $table->boolean('email_fetching'); - $table->boolean('strip'); - $table->boolean('separator'); - $table->boolean('all_emails'); - $table->boolean('email_collaborator'); - $table->boolean('attachment'); - $table->rememberToken(); - $table->timestamps(); - }); - Schema::create('access', function(Blueprint $table) - { - $table->increments('id'); - $table->string('password_expire'); - $table->string('reg_method'); - $table->string('user_session'); - $table->string('agent_session'); - $table->string('reset_ticket_expire'); - $table->boolean('password_reset'); - $table->boolean('bind_agent_ip'); - $table->boolean('reg_require'); - $table->boolean('quick_access'); - $table->rememberToken(); - $table->timestamps(); - }); - Schema::create('auto_response', function(Blueprint $table) - { - $table->increments('id'); - $table->boolean('new_ticket'); - $table->boolean('agent_new_ticket'); - $table->boolean('new_message'); - $table->boolean('overlimit'); - $table->rememberToken(); - $table->timestamps(); - }); - Schema::create('alert_notice', function(Blueprint $table) - { - $table->increments('id'); - $table->boolean('ticket_status'); - $table->boolean('ticket_admin_email'); - $table->boolean('ticket_department_manager'); - $table->boolean('ticket_organization_accmanager'); - $table->boolean('message_status'); - $table->boolean('message_last_responder'); - $table->boolean('message_assigned_agent'); - $table->boolean('message_department_manager'); - $table->boolean('message_organization_accmanager'); - $table->boolean('internal_status'); - $table->boolean('internal_last_responder'); - $table->boolean('internal_assigned_agent'); - $table->boolean('internal_department_manager'); - $table->boolean('assignment_status'); - $table->boolean('assignment_assigned_agent'); - $table->boolean('assignment_team_leader'); - $table->boolean('assignment_team_member'); - $table->boolean('transfer_status'); - $table->boolean('transfer_assigned_agent'); - $table->boolean('transfer_department_manager'); - $table->boolean('transfer_department_member'); - $table->boolean('overdue_status'); - $table->boolean('overdue_assigned_agent'); - $table->boolean('overdue_department_manager'); - $table->boolean('overdue_department_member'); - $table->boolean('system_error'); - $table->boolean('sql_error'); - $table->boolean('excessive_failure'); - $table->rememberToken(); - $table->timestamps(); - }); - - } - - /** - * Reverse the migrations. - * - * @return void - */ - public function down() - { - Schema::drop('alert_notice'); - Schema::drop('auto_response'); - Schema::drop('access'); - Schema::drop('email'); - Schema::drop('tickets'); - Schema::drop('system'); - Schema::drop('company'); - Schema::drop('forms'); - Schema::drop('sla_plan'); - Schema::drop('help_topic'); - Schema::drop('template'); - Schema::drop('banlist'); - Schema::drop('emails'); - Schema::drop('department'); - Schema::drop('groups'); - Schema::drop('teams'); - Schema::drop('agents'); - } - -} diff --git a/code/database/migrations/2015_03_25_050938_create_tickets_table.php b/code/database/migrations/2015_03_25_050938_create_tickets_table.php deleted file mode 100644 index b1fe7110b..000000000 --- a/code/database/migrations/2015_03_25_050938_create_tickets_table.php +++ /dev/null @@ -1,32 +0,0 @@ -increments('id'); - $table->timestamps(); - }); - } - - /** - * Reverse the migrations. - * - * @return void - */ - public function down() - { - Schema::drop('tickets'); - } - -} diff --git a/code/database/migrations/2015_03_25_050951_create_emails_table.php b/code/database/migrations/2015_03_25_050951_create_emails_table.php deleted file mode 100644 index 46d75efe3..000000000 --- a/code/database/migrations/2015_03_25_050951_create_emails_table.php +++ /dev/null @@ -1,32 +0,0 @@ -increments('id'); - $table->timestamps(); - }); - } - - /** - * Reverse the migrations. - * - * @return void - */ - public function down() - { - Schema::drop('emails'); - } - -} diff --git a/code/database/migrations/2015_03_25_051011_create_responders_table.php b/code/database/migrations/2015_03_25_051011_create_responders_table.php deleted file mode 100644 index 55f36c0b5..000000000 --- a/code/database/migrations/2015_03_25_051011_create_responders_table.php +++ /dev/null @@ -1,32 +0,0 @@ -increments('id'); - $table->timestamps(); - }); - } - - /** - * Reverse the migrations. - * - * @return void - */ - public function down() - { - Schema::drop('responders'); - } - -} diff --git a/code/database/migrations/2015_03_25_051023_create_alerts_table.php b/code/database/migrations/2015_03_25_051023_create_alerts_table.php deleted file mode 100644 index feffd6f93..000000000 --- a/code/database/migrations/2015_03_25_051023_create_alerts_table.php +++ /dev/null @@ -1,32 +0,0 @@ -increments('id'); - $table->timestamps(); - }); - } - - /** - * Reverse the migrations. - * - * @return void - */ - public function down() - { - Schema::drop('alerts'); - } - -} diff --git a/code/database/migrations/2015_03_30_123901_create_ticket_threads_table.php b/code/database/migrations/2015_03_30_123901_create_ticket_threads_table.php deleted file mode 100644 index c06ef7985..000000000 --- a/code/database/migrations/2015_03_30_123901_create_ticket_threads_table.php +++ /dev/null @@ -1,32 +0,0 @@ -increments('id'); - $table->timestamps(); - }); - } - - /** - * Reverse the migrations. - * - * @return void - */ - public function down() - { - Schema::drop('ticket_threads'); - } - -} diff --git a/code/database/migrations/2015_03_30_123926_create_priorities_table.php b/code/database/migrations/2015_03_30_123926_create_priorities_table.php deleted file mode 100644 index c64d7c798..000000000 --- a/code/database/migrations/2015_03_30_123926_create_priorities_table.php +++ /dev/null @@ -1,32 +0,0 @@ -increments('id'); - $table->timestamps(); - }); - } - - /** - * Reverse the migrations. - * - * @return void - */ - public function down() - { - Schema::drop('priorities'); - } - -} diff --git a/code/database/migrations/2015_04_01_090844_create_form_visibilities_table.php b/code/database/migrations/2015_04_01_090844_create_form_visibilities_table.php deleted file mode 100644 index 8c37471c5..000000000 --- a/code/database/migrations/2015_04_01_090844_create_form_visibilities_table.php +++ /dev/null @@ -1,32 +0,0 @@ -increments('id'); - $table->timestamps(); - }); - } - - /** - * Reverse the migrations. - * - * @return void - */ - public function down() - { - Schema::drop('form_visibilities'); - } - -} diff --git a/code/database/migrations/2015_04_01_091940_create_form_types_table.php b/code/database/migrations/2015_04_01_091940_create_form_types_table.php deleted file mode 100644 index 3da6fa6de..000000000 --- a/code/database/migrations/2015_04_01_091940_create_form_types_table.php +++ /dev/null @@ -1,32 +0,0 @@ -increments('id'); - $table->timestamps(); - }); - } - - /** - * Reverse the migrations. - * - * @return void - */ - public function down() - { - Schema::drop('form_types'); - } - -} diff --git a/code/database/migrations/2015_04_07_070037_create_time_formats_table.php b/code/database/migrations/2015_04_07_070037_create_time_formats_table.php deleted file mode 100644 index 6fcb054f4..000000000 --- a/code/database/migrations/2015_04_07_070037_create_time_formats_table.php +++ /dev/null @@ -1,32 +0,0 @@ -increments('id'); - $table->timestamps(); - }); - } - - /** - * Reverse the migrations. - * - * @return void - */ - public function down() - { - Schema::drop('time_formats'); - } - -} diff --git a/code/database/migrations/2015_04_07_070050_create_date_formats_table.php b/code/database/migrations/2015_04_07_070050_create_date_formats_table.php deleted file mode 100644 index e8b3ea285..000000000 --- a/code/database/migrations/2015_04_07_070050_create_date_formats_table.php +++ /dev/null @@ -1,32 +0,0 @@ -increments('id'); - $table->timestamps(); - }); - } - - /** - * Reverse the migrations. - * - * @return void - */ - public function down() - { - Schema::drop('date_formats'); - } - -} diff --git a/code/database/migrations/2015_04_07_070103_create_date_time_formats_table.php b/code/database/migrations/2015_04_07_070103_create_date_time_formats_table.php deleted file mode 100644 index d97dbbabc..000000000 --- a/code/database/migrations/2015_04_07_070103_create_date_time_formats_table.php +++ /dev/null @@ -1,32 +0,0 @@ -increments('id'); - $table->timestamps(); - }); - } - - /** - * Reverse the migrations. - * - * @return void - */ - public function down() - { - Schema::drop('date_time_formats'); - } - -} diff --git a/code/database/migrations/2015_04_08_071025_create_sys_users_table.php b/code/database/migrations/2015_04_08_071025_create_sys_users_table.php deleted file mode 100644 index 689073145..000000000 --- a/code/database/migrations/2015_04_08_071025_create_sys_users_table.php +++ /dev/null @@ -1,32 +0,0 @@ -increments('id'); - $table->timestamps(); - }); - } - - /** - * Reverse the migrations. - * - * @return void - */ - public function down() - { - Schema::drop('sys_users'); - } - -} diff --git a/code/database/migrations/2015_04_08_095508_create_organizations_table.php b/code/database/migrations/2015_04_08_095508_create_organizations_table.php deleted file mode 100644 index 99f0b1d55..000000000 --- a/code/database/migrations/2015_04_08_095508_create_organizations_table.php +++ /dev/null @@ -1,32 +0,0 @@ -increments('id'); - $table->timestamps(); - }); - } - - /** - * Reverse the migrations. - * - * @return void - */ - public function down() - { - Schema::drop('organizations'); - } - -} diff --git a/code/database/migrations/2015_04_10_070153_create_form_names_table.php b/code/database/migrations/2015_04_10_070153_create_form_names_table.php deleted file mode 100644 index 42e8d511c..000000000 --- a/code/database/migrations/2015_04_10_070153_create_form_names_table.php +++ /dev/null @@ -1,32 +0,0 @@ -increments('id'); - $table->timestamps(); - }); - } - - /** - * Reverse the migrations. - * - * @return void - */ - public function down() - { - Schema::drop('form_names'); - } - -} diff --git a/code/database/migrations/2015_04_10_070249_create_form_names_table.php b/code/database/migrations/2015_04_10_070249_create_form_names_table.php deleted file mode 100644 index 42e8d511c..000000000 --- a/code/database/migrations/2015_04_10_070249_create_form_names_table.php +++ /dev/null @@ -1,32 +0,0 @@ -increments('id'); - $table->timestamps(); - }); - } - - /** - * Reverse the migrations. - * - * @return void - */ - public function down() - { - Schema::drop('form_names'); - } - -} diff --git a/code/database/migrations/2015_04_10_070603_create_form_values_table.php b/code/database/migrations/2015_04_10_070603_create_form_values_table.php deleted file mode 100644 index 1e2bbc8c4..000000000 --- a/code/database/migrations/2015_04_10_070603_create_form_values_table.php +++ /dev/null @@ -1,32 +0,0 @@ -increments('id'); - $table->timestamps(); - }); - } - - /** - * Reverse the migrations. - * - * @return void - */ - public function down() - { - Schema::drop('form_values'); - } - -} diff --git a/code/database/migrations/2015_04_14_055222_create_assign_team_agents_table.php b/code/database/migrations/2015_04_14_055222_create_assign_team_agents_table.php deleted file mode 100644 index 3719a5796..000000000 --- a/code/database/migrations/2015_04_14_055222_create_assign_team_agents_table.php +++ /dev/null @@ -1,32 +0,0 @@ -increments('id'); - $table->timestamps(); - }); - } - - /** - * Reverse the migrations. - * - * @return void - */ - public function down() - { - Schema::drop('assign_team_agents'); - } - -} diff --git a/code/database/migrations/2015_04_14_105147_create_guest_notes_table.php b/code/database/migrations/2015_04_14_105147_create_guest_notes_table.php deleted file mode 100644 index 155c634ca..000000000 --- a/code/database/migrations/2015_04_14_105147_create_guest_notes_table.php +++ /dev/null @@ -1,32 +0,0 @@ -increments('id'); - $table->timestamps(); - }); - } - - /** - * Reverse the migrations. - * - * @return void - */ - public function down() - { - Schema::drop('guest_notes'); - } - -} diff --git a/code/database/migrations/2015_04_21_115826_create_group_assign_departments_table.php b/code/database/migrations/2015_04_21_115826_create_group_assign_departments_table.php deleted file mode 100644 index fbd91b769..000000000 --- a/code/database/migrations/2015_04_21_115826_create_group_assign_departments_table.php +++ /dev/null @@ -1,32 +0,0 @@ -increments('id'); - $table->timestamps(); - }); - } - - /** - * Reverse the migrations. - * - * @return void - */ - public function down() - { - Schema::drop('group_assign_departments'); - } - -} diff --git a/code/database/seeds/DatabaseSeeder.php b/code/database/seeds/DatabaseSeeder.php deleted file mode 100644 index ef9c72628..000000000 --- a/code/database/seeds/DatabaseSeeder.php +++ /dev/null @@ -1,58 +0,0 @@ - '1 Months' , 'reg_method' => 'disable')); - Access::create(array('password_expire' => '2 Months' , 'reg_method' => 'private')); - Access::create(array('password_expire' => '6 Months' , 'reg_method' => 'public')); - Access::create(array('password_expire' => '10 Months' , 'reg_method' => '')); - Access::create(array('password_expire' => '12 Months' , 'reg_method' => '')); - - Agents::create(array('user_name' => 'user 1','assign_group' => 'group A' , 'primary_dpt' => 'support' , 'assign_team' => 'developer')); - Agents::create(array('user_name' => 'user 2','assign_group' => 'group B' , 'primary_dpt' => 'sale' , 'assign_team' => 'level 1 support')); - Agents::create(array('user_name' => 'user 3','assign_group' => 'group C' , 'primary_dpt' => 'maintanance' , 'assign_team' => 'level 2 support')); - - Department::create(array('name' => 'opration')); - Department::create(array('name' => 'sale')); - Department::create(array('name' => 'support')); - - Company::create(array('company_name' => 'D company' , 'website' => 'dcompany.org', 'phone' => '8606574126')); - - Emails::create(array('email_address' => 'maintanance@dcompany.com', 'email_name' => 'maintain', 'department' => 'maintanance', 'priority' => 'low', 'help_topic' => 'maintanance query', 'user_name' => 'maintanance')); - Emails::create(array('email_address' => 'support@dcompany.com', 'email_name' => 'support', 'department' => 'support', 'priority' => 'low', 'help_topic' => 'support query', 'user_name' => 'support')); - Emails::create(array('email_address' => 'sale@dcompany.com', 'email_name' => 'sale', 'department' => 'sales', 'priority' => 'low', 'help_topic' => 'sales query', 'user_name' => 'sale')); - - Groups::create(array('name' => 'group A')); - Groups::create(array('name' => 'group B')); - Groups::create(array('name' => 'group C')); - - help_topic::create(array('topic' => 'support query', 'department' => 'support', 'priority' =>'low', 'sla_plan' => '12 hours')); - help_topic::create(array('topic' => 'sale query', 'department' => 'sale', 'priority' =>'high', 'sla_plan' => '6 hours')); - - Sla_plan::create(array('name' => 'sla 1', 'grace_period' => '12 Hours')); - Sla_plan::create(array('name' => 'sla 2', 'grace_period' => '6 Hours')); - - Teams::create(array('name' => 'developer', 'team_lead' => 'Code Name 47')); - Teams::create(array('name' => 'Level 1 Support', 'team_lead' => 'Code Name 007')); - Teams::create(array('name' => 'Level 2 Support', 'team_lead' => 'Code Name')); - - } -} diff --git a/code/public/dist/css/AdminLTE.css b/code/dist/css/AdminLTE.css similarity index 82% rename from code/public/dist/css/AdminLTE.css rename to code/dist/css/AdminLTE.css index 517262756..9932d34c1 100644 --- a/code/public/dist/css/AdminLTE.css +++ b/code/dist/css/AdminLTE.css @@ -2863,658 +2863,7 @@ table.text-center th { * Plugin: Social Buttons * ---------------------- */ -.btn-social { - position: relative; - padding-left: 44px !important; - text-align: left; - white-space: nowrap; - overflow: hidden; - text-overflow: ellipsis; -} -.btn-social :first-child { - position: absolute; - left: 0; - top: 0; - bottom: 0; - width: 32px !important; - line-height: 34px !important; - font-size: 1.6em!important; - text-align: center; - border-right: 1px solid rgba(0, 0, 0, 0.2); -} -.btn-social.btn-lg { - padding-left: 61px !important; -} -.btn-social.btn-lg :first-child { - line-height: 45px; - width: 45px; - font-size: 1.8em; -} -.btn-social.btn-sm { - padding-left: 38px !important; -} -.btn-social.btn-sm :first-child { - line-height: 28px; - width: 28px; - font-size: 1.4em; -} -.btn-social.btn-xs { - padding-left: 30px !important; -} -.btn-social.btn-xs :first-child { - line-height: 20px; - width: 20px; - font-size: 1.2em; -} -.btn-social-icon { - position: relative; - padding-left: 44px !important; - text-align: left; - white-space: nowrap; - overflow: hidden; - text-overflow: ellipsis; - height: 34px; - width: 34px; - padding: 0; -} -.btn-social-icon :first-child { - position: absolute; - left: 0; - top: 0; - bottom: 0; - width: 32px !important; - line-height: 34px !important; - font-size: 1.6em!important; - text-align: center; - border-right: 1px solid rgba(0, 0, 0, 0.2); -} -.btn-social-icon.btn-lg { - padding-left: 61px !important; -} -.btn-social-icon.btn-lg :first-child { - line-height: 45px; - width: 45px; - font-size: 1.8em; -} -.btn-social-icon.btn-sm { - padding-left: 38px !important; -} -.btn-social-icon.btn-sm :first-child { - line-height: 28px; - width: 28px; - font-size: 1.4em; -} -.btn-social-icon.btn-xs { - padding-left: 30px !important; -} -.btn-social-icon.btn-xs :first-child { - line-height: 20px; - width: 20px; - font-size: 1.2em; -} -.btn-social-icon :first-child { - border: none; - text-align: center; - width: 100%!important; -} -.btn-social-icon.btn-lg { - height: 45px; - width: 45px; - padding-left: 0; - padding-right: 0; -} -.btn-social-icon.btn-sm { - height: 30px; - width: 30px; - padding-left: 0; - padding-right: 0; -} -.btn-social-icon.btn-xs { - height: 22px; - width: 22px; - padding-left: 0; - padding-right: 0; -} -.btn-bitbucket { - color: #ffffff; - background-color: #205081; - border-color: rgba(0, 0, 0, 0.2); -} -.btn-bitbucket:hover, -.btn-bitbucket:focus, -.btn-bitbucket.focus, -.btn-bitbucket:active, -.btn-bitbucket.active, -.open > .dropdown-toggle.btn-bitbucket { - color: #ffffff; - background-color: #163758; - border-color: rgba(0, 0, 0, 0.2); -} -.btn-bitbucket:active, -.btn-bitbucket.active, -.open > .dropdown-toggle.btn-bitbucket { - background-image: none; -} -.btn-bitbucket.disabled, -.btn-bitbucket[disabled], -fieldset[disabled] .btn-bitbucket, -.btn-bitbucket.disabled:hover, -.btn-bitbucket[disabled]:hover, -fieldset[disabled] .btn-bitbucket:hover, -.btn-bitbucket.disabled:focus, -.btn-bitbucket[disabled]:focus, -fieldset[disabled] .btn-bitbucket:focus, -.btn-bitbucket.disabled.focus, -.btn-bitbucket[disabled].focus, -fieldset[disabled] .btn-bitbucket.focus, -.btn-bitbucket.disabled:active, -.btn-bitbucket[disabled]:active, -fieldset[disabled] .btn-bitbucket:active, -.btn-bitbucket.disabled.active, -.btn-bitbucket[disabled].active, -fieldset[disabled] .btn-bitbucket.active { - background-color: #205081; - border-color: rgba(0, 0, 0, 0.2); -} -.btn-bitbucket .badge { - color: #205081; - background-color: #ffffff; -} -.btn-dropbox { - color: #ffffff; - background-color: #1087dd; - border-color: rgba(0, 0, 0, 0.2); -} -.btn-dropbox:hover, -.btn-dropbox:focus, -.btn-dropbox.focus, -.btn-dropbox:active, -.btn-dropbox.active, -.open > .dropdown-toggle.btn-dropbox { - color: #ffffff; - background-color: #0d6aad; - border-color: rgba(0, 0, 0, 0.2); -} -.btn-dropbox:active, -.btn-dropbox.active, -.open > .dropdown-toggle.btn-dropbox { - background-image: none; -} -.btn-dropbox.disabled, -.btn-dropbox[disabled], -fieldset[disabled] .btn-dropbox, -.btn-dropbox.disabled:hover, -.btn-dropbox[disabled]:hover, -fieldset[disabled] .btn-dropbox:hover, -.btn-dropbox.disabled:focus, -.btn-dropbox[disabled]:focus, -fieldset[disabled] .btn-dropbox:focus, -.btn-dropbox.disabled.focus, -.btn-dropbox[disabled].focus, -fieldset[disabled] .btn-dropbox.focus, -.btn-dropbox.disabled:active, -.btn-dropbox[disabled]:active, -fieldset[disabled] .btn-dropbox:active, -.btn-dropbox.disabled.active, -.btn-dropbox[disabled].active, -fieldset[disabled] .btn-dropbox.active { - background-color: #1087dd; - border-color: rgba(0, 0, 0, 0.2); -} -.btn-dropbox .badge { - color: #1087dd; - background-color: #ffffff; -} -.btn-facebook { - color: #ffffff; - background-color: #3b5998; - border-color: rgba(0, 0, 0, 0.2); -} -.btn-facebook:hover, -.btn-facebook:focus, -.btn-facebook.focus, -.btn-facebook:active, -.btn-facebook.active, -.open > .dropdown-toggle.btn-facebook { - color: #ffffff; - background-color: #2d4373; - border-color: rgba(0, 0, 0, 0.2); -} -.btn-facebook:active, -.btn-facebook.active, -.open > .dropdown-toggle.btn-facebook { - background-image: none; -} -.btn-facebook.disabled, -.btn-facebook[disabled], -fieldset[disabled] .btn-facebook, -.btn-facebook.disabled:hover, -.btn-facebook[disabled]:hover, -fieldset[disabled] .btn-facebook:hover, -.btn-facebook.disabled:focus, -.btn-facebook[disabled]:focus, -fieldset[disabled] .btn-facebook:focus, -.btn-facebook.disabled.focus, -.btn-facebook[disabled].focus, -fieldset[disabled] .btn-facebook.focus, -.btn-facebook.disabled:active, -.btn-facebook[disabled]:active, -fieldset[disabled] .btn-facebook:active, -.btn-facebook.disabled.active, -.btn-facebook[disabled].active, -fieldset[disabled] .btn-facebook.active { - background-color: #3b5998; - border-color: rgba(0, 0, 0, 0.2); -} -.btn-facebook .badge { - color: #3b5998; - background-color: #ffffff; -} -.btn-flickr { - color: #ffffff; - background-color: #ff0084; - border-color: rgba(0, 0, 0, 0.2); -} -.btn-flickr:hover, -.btn-flickr:focus, -.btn-flickr.focus, -.btn-flickr:active, -.btn-flickr.active, -.open > .dropdown-toggle.btn-flickr { - color: #ffffff; - background-color: #cc006a; - border-color: rgba(0, 0, 0, 0.2); -} -.btn-flickr:active, -.btn-flickr.active, -.open > .dropdown-toggle.btn-flickr { - background-image: none; -} -.btn-flickr.disabled, -.btn-flickr[disabled], -fieldset[disabled] .btn-flickr, -.btn-flickr.disabled:hover, -.btn-flickr[disabled]:hover, -fieldset[disabled] .btn-flickr:hover, -.btn-flickr.disabled:focus, -.btn-flickr[disabled]:focus, -fieldset[disabled] .btn-flickr:focus, -.btn-flickr.disabled.focus, -.btn-flickr[disabled].focus, -fieldset[disabled] .btn-flickr.focus, -.btn-flickr.disabled:active, -.btn-flickr[disabled]:active, -fieldset[disabled] .btn-flickr:active, -.btn-flickr.disabled.active, -.btn-flickr[disabled].active, -fieldset[disabled] .btn-flickr.active { - background-color: #ff0084; - border-color: rgba(0, 0, 0, 0.2); -} -.btn-flickr .badge { - color: #ff0084; - background-color: #ffffff; -} -.btn-foursquare { - color: #ffffff; - background-color: #0072b1; - border-color: rgba(0, 0, 0, 0.2); -} -.btn-foursquare:hover, -.btn-foursquare:focus, -.btn-foursquare.focus, -.btn-foursquare:active, -.btn-foursquare.active, -.open > .dropdown-toggle.btn-foursquare { - color: #ffffff; - background-color: #00517e; - border-color: rgba(0, 0, 0, 0.2); -} -.btn-foursquare:active, -.btn-foursquare.active, -.open > .dropdown-toggle.btn-foursquare { - background-image: none; -} -.btn-foursquare.disabled, -.btn-foursquare[disabled], -fieldset[disabled] .btn-foursquare, -.btn-foursquare.disabled:hover, -.btn-foursquare[disabled]:hover, -fieldset[disabled] .btn-foursquare:hover, -.btn-foursquare.disabled:focus, -.btn-foursquare[disabled]:focus, -fieldset[disabled] .btn-foursquare:focus, -.btn-foursquare.disabled.focus, -.btn-foursquare[disabled].focus, -fieldset[disabled] .btn-foursquare.focus, -.btn-foursquare.disabled:active, -.btn-foursquare[disabled]:active, -fieldset[disabled] .btn-foursquare:active, -.btn-foursquare.disabled.active, -.btn-foursquare[disabled].active, -fieldset[disabled] .btn-foursquare.active { - background-color: #0072b1; - border-color: rgba(0, 0, 0, 0.2); -} -.btn-foursquare .badge { - color: #0072b1; - background-color: #ffffff; -} -.btn-github { - color: #ffffff; - background-color: #444444; - border-color: rgba(0, 0, 0, 0.2); -} -.btn-github:hover, -.btn-github:focus, -.btn-github.focus, -.btn-github:active, -.btn-github.active, -.open > .dropdown-toggle.btn-github { - color: #ffffff; - background-color: #2b2b2b; - border-color: rgba(0, 0, 0, 0.2); -} -.btn-github:active, -.btn-github.active, -.open > .dropdown-toggle.btn-github { - background-image: none; -} -.btn-github.disabled, -.btn-github[disabled], -fieldset[disabled] .btn-github, -.btn-github.disabled:hover, -.btn-github[disabled]:hover, -fieldset[disabled] .btn-github:hover, -.btn-github.disabled:focus, -.btn-github[disabled]:focus, -fieldset[disabled] .btn-github:focus, -.btn-github.disabled.focus, -.btn-github[disabled].focus, -fieldset[disabled] .btn-github.focus, -.btn-github.disabled:active, -.btn-github[disabled]:active, -fieldset[disabled] .btn-github:active, -.btn-github.disabled.active, -.btn-github[disabled].active, -fieldset[disabled] .btn-github.active { - background-color: #444444; - border-color: rgba(0, 0, 0, 0.2); -} -.btn-github .badge { - color: #444444; - background-color: #ffffff; -} -.btn-google-plus { - color: #ffffff; - background-color: #dd4b39; - border-color: rgba(0, 0, 0, 0.2); -} -.btn-google-plus:hover, -.btn-google-plus:focus, -.btn-google-plus.focus, -.btn-google-plus:active, -.btn-google-plus.active, -.open > .dropdown-toggle.btn-google-plus { - color: #ffffff; - background-color: #c23321; - border-color: rgba(0, 0, 0, 0.2); -} -.btn-google-plus:active, -.btn-google-plus.active, -.open > .dropdown-toggle.btn-google-plus { - background-image: none; -} -.btn-google-plus.disabled, -.btn-google-plus[disabled], -fieldset[disabled] .btn-google-plus, -.btn-google-plus.disabled:hover, -.btn-google-plus[disabled]:hover, -fieldset[disabled] .btn-google-plus:hover, -.btn-google-plus.disabled:focus, -.btn-google-plus[disabled]:focus, -fieldset[disabled] .btn-google-plus:focus, -.btn-google-plus.disabled.focus, -.btn-google-plus[disabled].focus, -fieldset[disabled] .btn-google-plus.focus, -.btn-google-plus.disabled:active, -.btn-google-plus[disabled]:active, -fieldset[disabled] .btn-google-plus:active, -.btn-google-plus.disabled.active, -.btn-google-plus[disabled].active, -fieldset[disabled] .btn-google-plus.active { - background-color: #dd4b39; - border-color: rgba(0, 0, 0, 0.2); -} -.btn-google-plus .badge { - color: #dd4b39; - background-color: #ffffff; -} -.btn-instagram { - color: #ffffff; - background-color: #3f729b; - border-color: rgba(0, 0, 0, 0.2); -} -.btn-instagram:hover, -.btn-instagram:focus, -.btn-instagram.focus, -.btn-instagram:active, -.btn-instagram.active, -.open > .dropdown-toggle.btn-instagram { - color: #ffffff; - background-color: #305777; - border-color: rgba(0, 0, 0, 0.2); -} -.btn-instagram:active, -.btn-instagram.active, -.open > .dropdown-toggle.btn-instagram { - background-image: none; -} -.btn-instagram.disabled, -.btn-instagram[disabled], -fieldset[disabled] .btn-instagram, -.btn-instagram.disabled:hover, -.btn-instagram[disabled]:hover, -fieldset[disabled] .btn-instagram:hover, -.btn-instagram.disabled:focus, -.btn-instagram[disabled]:focus, -fieldset[disabled] .btn-instagram:focus, -.btn-instagram.disabled.focus, -.btn-instagram[disabled].focus, -fieldset[disabled] .btn-instagram.focus, -.btn-instagram.disabled:active, -.btn-instagram[disabled]:active, -fieldset[disabled] .btn-instagram:active, -.btn-instagram.disabled.active, -.btn-instagram[disabled].active, -fieldset[disabled] .btn-instagram.active { - background-color: #3f729b; - border-color: rgba(0, 0, 0, 0.2); -} -.btn-instagram .badge { - color: #3f729b; - background-color: #ffffff; -} -.btn-linkedin { - color: #ffffff; - background-color: #007bb6; - border-color: rgba(0, 0, 0, 0.2); -} -.btn-linkedin:hover, -.btn-linkedin:focus, -.btn-linkedin.focus, -.btn-linkedin:active, -.btn-linkedin.active, -.open > .dropdown-toggle.btn-linkedin { - color: #ffffff; - background-color: #005983; - border-color: rgba(0, 0, 0, 0.2); -} -.btn-linkedin:active, -.btn-linkedin.active, -.open > .dropdown-toggle.btn-linkedin { - background-image: none; -} -.btn-linkedin.disabled, -.btn-linkedin[disabled], -fieldset[disabled] .btn-linkedin, -.btn-linkedin.disabled:hover, -.btn-linkedin[disabled]:hover, -fieldset[disabled] .btn-linkedin:hover, -.btn-linkedin.disabled:focus, -.btn-linkedin[disabled]:focus, -fieldset[disabled] .btn-linkedin:focus, -.btn-linkedin.disabled.focus, -.btn-linkedin[disabled].focus, -fieldset[disabled] .btn-linkedin.focus, -.btn-linkedin.disabled:active, -.btn-linkedin[disabled]:active, -fieldset[disabled] .btn-linkedin:active, -.btn-linkedin.disabled.active, -.btn-linkedin[disabled].active, -fieldset[disabled] .btn-linkedin.active { - background-color: #007bb6; - border-color: rgba(0, 0, 0, 0.2); -} -.btn-linkedin .badge { - color: #007bb6; - background-color: #ffffff; -} -.btn-tumblr { - color: #ffffff; - background-color: #2c4762; - border-color: rgba(0, 0, 0, 0.2); -} -.btn-tumblr:hover, -.btn-tumblr:focus, -.btn-tumblr.focus, -.btn-tumblr:active, -.btn-tumblr.active, -.open > .dropdown-toggle.btn-tumblr { - color: #ffffff; - background-color: #1c2d3f; - border-color: rgba(0, 0, 0, 0.2); -} -.btn-tumblr:active, -.btn-tumblr.active, -.open > .dropdown-toggle.btn-tumblr { - background-image: none; -} -.btn-tumblr.disabled, -.btn-tumblr[disabled], -fieldset[disabled] .btn-tumblr, -.btn-tumblr.disabled:hover, -.btn-tumblr[disabled]:hover, -fieldset[disabled] .btn-tumblr:hover, -.btn-tumblr.disabled:focus, -.btn-tumblr[disabled]:focus, -fieldset[disabled] .btn-tumblr:focus, -.btn-tumblr.disabled.focus, -.btn-tumblr[disabled].focus, -fieldset[disabled] .btn-tumblr.focus, -.btn-tumblr.disabled:active, -.btn-tumblr[disabled]:active, -fieldset[disabled] .btn-tumblr:active, -.btn-tumblr.disabled.active, -.btn-tumblr[disabled].active, -fieldset[disabled] .btn-tumblr.active { - background-color: #2c4762; - border-color: rgba(0, 0, 0, 0.2); -} -.btn-tumblr .badge { - color: #2c4762; - background-color: #ffffff; -} -.btn-twitter { - color: #ffffff; - background-color: #55acee; - border-color: rgba(0, 0, 0, 0.2); -} -.btn-twitter:hover, -.btn-twitter:focus, -.btn-twitter.focus, -.btn-twitter:active, -.btn-twitter.active, -.open > .dropdown-toggle.btn-twitter { - color: #ffffff; - background-color: #2795e9; - border-color: rgba(0, 0, 0, 0.2); -} -.btn-twitter:active, -.btn-twitter.active, -.open > .dropdown-toggle.btn-twitter { - background-image: none; -} -.btn-twitter.disabled, -.btn-twitter[disabled], -fieldset[disabled] .btn-twitter, -.btn-twitter.disabled:hover, -.btn-twitter[disabled]:hover, -fieldset[disabled] .btn-twitter:hover, -.btn-twitter.disabled:focus, -.btn-twitter[disabled]:focus, -fieldset[disabled] .btn-twitter:focus, -.btn-twitter.disabled.focus, -.btn-twitter[disabled].focus, -fieldset[disabled] .btn-twitter.focus, -.btn-twitter.disabled:active, -.btn-twitter[disabled]:active, -fieldset[disabled] .btn-twitter:active, -.btn-twitter.disabled.active, -.btn-twitter[disabled].active, -fieldset[disabled] .btn-twitter.active { - background-color: #55acee; - border-color: rgba(0, 0, 0, 0.2); -} -.btn-twitter .badge { - color: #55acee; - background-color: #ffffff; -} -.btn-vk { - color: #ffffff; - background-color: #587ea3; - border-color: rgba(0, 0, 0, 0.2); -} -.btn-vk:hover, -.btn-vk:focus, -.btn-vk.focus, -.btn-vk:active, -.btn-vk.active, -.open > .dropdown-toggle.btn-vk { - color: #ffffff; - background-color: #466482; - border-color: rgba(0, 0, 0, 0.2); -} -.btn-vk:active, -.btn-vk.active, -.open > .dropdown-toggle.btn-vk { - background-image: none; -} -.btn-vk.disabled, -.btn-vk[disabled], -fieldset[disabled] .btn-vk, -.btn-vk.disabled:hover, -.btn-vk[disabled]:hover, -fieldset[disabled] .btn-vk:hover, -.btn-vk.disabled:focus, -.btn-vk[disabled]:focus, -fieldset[disabled] .btn-vk:focus, -.btn-vk.disabled.focus, -.btn-vk[disabled].focus, -fieldset[disabled] .btn-vk.focus, -.btn-vk.disabled:active, -.btn-vk[disabled]:active, -fieldset[disabled] .btn-vk:active, -.btn-vk.disabled.active, -.btn-vk[disabled].active, -fieldset[disabled] .btn-vk.active { - background-color: #587ea3; - border-color: rgba(0, 0, 0, 0.2); -} -.btn-vk .badge { - color: #587ea3; - background-color: #ffffff; -} + /* * Plugin: Full Calendar * --------------------- diff --git a/code/public/dist/css/AdminLTE.min.css b/code/dist/css/AdminLTE.min.css similarity index 100% rename from code/public/dist/css/AdminLTE.min.css rename to code/dist/css/AdminLTE.min.css diff --git a/code/dist/css/AdminLTE.min2 (2).css b/code/dist/css/AdminLTE.min2 (2).css new file mode 100644 index 000000000..91672560b --- /dev/null +++ b/code/dist/css/AdminLTE.min2 (2).css @@ -0,0 +1,7 @@ +@import url(https://fonts.googleapis.com/css?family=Source+Sans+Pro:300,400,600,700,300italic,400italic,600italic);/*! + * AdminLTE v2.1.0 + * Author: Almsaeed Studio + * Website: Almsaeed Studio + * License: Open source - MIT + * Please visit http://opensource.org/licenses/MIT for more information +!*/html,body{min-height:100%}.layout-boxed html,.layout-boxed body{height:100%}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:'Source Sans Pro','Helvetica Neue',Helvetica,Arial,sans-serif;font-weight:400;overflow-x:hidden;overflow-y:auto}.wrapper{min-height:100%;position:relative;overflow:hidden!important}.wrapper:before,.wrapper:after{content:" ";display:table}.wrapper:after{clear:both}.layout-boxed .wrapper{max-width:1250px;margin:0 auto;min-height:100%;box-shadow:0 0 8px rgba(0,0,0,0.5);position:relative}.layout-boxed{background:url('../img/boxed-bg.jpg') repeat fixed}.content-wrapper,.right-side,.main-footer{-webkit-transition:-webkit-transform .3s ease-in-out,margin .3s ease-in-out;-moz-transition:-moz-transform .3s ease-in-out,margin .3s ease-in-out;-o-transition:-o-transform .3s ease-in-out,margin .3s ease-in-out;transition:transform .3s ease-in-out,margin .3s ease-in-out;margin-left:230px;z-index:820}.layout-top-nav .content-wrapper,.layout-top-nav .right-side,.layout-top-nav .main-footer{margin-left:0}@media (max-width:767px){.content-wrapper,.right-side,.main-footer{margin-left:0}}@media (min-width:768px){.sidebar-collapse .content-wrapper,.sidebar-collapse .right-side,.sidebar-collapse .main-footer{margin-left:0}}@media (max-width:767px){.sidebar-open .content-wrapper,.sidebar-open .right-side,.sidebar-open .main-footer{-webkit-transform:translate(230px, 0);-ms-transform:translate(230px, 0);-o-transform:translate(230px, 0);transform:translate(230px, 0)}}.content-wrapper,.right-side{min-height:100%;background-color:#ecf0f5;z-index:800}.main-footer{background:#fff;padding:15px;color:#444;border-top:1px solid #d2d6de}.fixed .main-header,.fixed .main-sidebar,.fixed .left-side{position:fixed}.fixed .main-header{top:0;right:0;left:0}.fixed .content-wrapper,.fixed .right-side{padding-top:50px}@media (max-width:767px){.fixed .content-wrapper,.fixed .right-side{padding-top:100px}}.fixed.layout-boxed .wrapper{max-width:100%}.content{min-height:250px;padding:15px;margin-right:auto;margin-left:auto;padding-left:15px;padding-right:15px}h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6{font-family:'Source Sans Pro',sans-serif}a{color:#3c8dbc}a:hover,a:active,a:focus{outline:none;text-decoration:none;color:#72afd2}.page-header{margin:10px 0 20px 0;font-size:22px}.page-header>small{color:#666;display:block;margin-top:5px}.main-header{position:relative;max-height:100px;z-index:1030}.main-header>.navbar{-webkit-transition:margin-left .3s ease-in-out;-o-transition:margin-left .3s ease-in-out;transition:margin-left .3s ease-in-out;margin-bottom:0;margin-left:230px;border:none;min-height:50px;border-radius:0}.layout-top-nav .main-header>.navbar{margin-left:0!important}.main-header #navbar-search-input{background:rgba(255,255,255,0.2);border-color:transparent}.main-header #navbar-search-input:focus,.main-header #navbar-search-input:active{border-color:rgba(0,0,0,0.1) !important;background:rgba(255,255,255,0.9)}.main-header #navbar-search-input::-moz-placeholder{color:#ccc;opacity:1}.main-header #navbar-search-input:-ms-input-placeholder{color:#ccc}.main-header #navbar-search-input::-webkit-input-placeholder{color:#ccc}.main-header .navbar-custom-menu,.main-header .navbar-right{float:right}@media (max-width:991px){.main-header .navbar-custom-menu a,.main-header .navbar-right a{color:inherit;background:transparent}}@media (max-width:767px){.main-header .navbar-right{float:none}.navbar-collapse .main-header .navbar-right{margin:7.5px -15px}.main-header .navbar-right>li{color:inherit;border:0}}.main-header .sidebar-toggle{float:left;background-color:transparent;background-image:none;padding:15px 15px;font-family:fontAwesome}.main-header .sidebar-toggle:before{content:"\f0c9"}.main-header .sidebar-toggle:hover{color:#fff}.main-header .sidebar-toggle:focus,.main-header .sidebar-toggle:active{background:transparent}.main-header .sidebar-toggle .icon-bar{display:none}.main-header .navbar .nav>li.user>a>.fa,.main-header .navbar .nav>li.user>a>.glyphicon,.main-header .navbar .nav>li.user>a>.ion{margin-right:5px}.main-header .navbar .nav>li>a>.label{position:absolute;top:9px;right:7px;text-align:center;font-size:9px;padding:2px 3px;line-height:.9}.main-header .logo{-webkit-transition:width .3s ease-in-out;-o-transition:width .3s ease-in-out;transition:width .3s ease-in-out;display:block;float:left;height:50px;font-size:20px;line-height:50px;text-align:center;width:230px;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;padding:0 15px;font-weight:300;overflow:hidden}.main-header .logo .logo-lg{display:block}.main-header .logo .logo-mini{display:none}.main-header .navbar-brand{color:#fff}.content-header{position:relative;padding:15px 15px 0 15px}.content-header>h1{margin:0;font-size:24px}.content-header>h1>small{font-size:15px;display:inline-block;padding-left:4px;font-weight:300}.content-header>.breadcrumb{float:right;background:transparent;margin-top:0px;margin-bottom:0;font-size:12px;padding:7px 5px;position:absolute;top:15px;right:10px;border-radius:2px}.content-header>.breadcrumb>li>a{color:#444;text-decoration:none;display:inline-block}.content-header>.breadcrumb>li>a>.fa,.content-header>.breadcrumb>li>a>.glyphicon,.content-header>.breadcrumb>li>a>.ion{margin-right:5px}.content-header>.breadcrumb>li+li:before{content:'>\00a0'}@media (max-width:991px){.content-header>.breadcrumb{position:relative;margin-top:5px;top:0;right:0;float:none;background:#d2d6de;padding-left:10px}.content-header>.breadcrumb li:before{color:#97a0b3}}.navbar-toggle{color:#fff;border:0;margin:0;padding:15px 15px}@media (max-width:991px){.navbar-custom-menu .navbar-nav>li{float:left}.navbar-custom-menu .navbar-nav{margin:0;float:left}.navbar-custom-menu .navbar-nav>li>a{padding-top:15px;padding-bottom:15px;line-height:20px}}@media (max-width:767px){.main-header{position:relative}.main-header .logo,.main-header .navbar{width:100%;float:none;position:relative!important}.main-header .navbar{margin:0}.main-header .navbar-custom-menu{float:right}.main-sidebar,.left-side{padding-top:100px!important}}@media (max-width:991px){.navbar-collapse.pull-left{float:none!important}.navbar-collapse.pull-left+.navbar-custom-menu{display:block;position:absolute;top:0;right:40px}}.main-sidebar,.left-side{position:absolute;top:0;left:0;padding-top:50px;min-height:100%;width:230px;z-index:810;-webkit-transition:-webkit-transform .3s ease-in-out,width .3s ease-in-out;-moz-transition:-moz-transform .3s ease-in-out,width .3s ease-in-out;-o-transition:-o-transform .3s ease-in-out,width .3s ease-in-out;transition:transform .3s ease-in-out,width .3s ease-in-out}@media (max-width:767px){.main-sidebar,.left-side{-webkit-transform:translate(-230px, 0);-ms-transform:translate(-230px, 0);-o-transform:translate(-230px, 0);transform:translate(-230px, 0)}}@media (min-width:768px){.sidebar-collapse .main-sidebar,.sidebar-collapse .left-side{-webkit-transform:translate(-230px, 0);-ms-transform:translate(-230px, 0);-o-transform:translate(-230px, 0);transform:translate(-230px, 0)}}@media (max-width:767px){.sidebar-open .main-sidebar,.sidebar-open .left-side{-webkit-transform:translate(0, 0);-ms-transform:translate(0, 0);-o-transform:translate(0, 0);transform:translate(0, 0)}}.sidebar{padding-bottom:10px}.sidebar-form input:focus{border-color:transparent!important}.user-panel{position:relative;width:100%;padding:10px;overflow:hidden}.user-panel:before,.user-panel:after{content:" ";display:table}.user-panel:after{clear:both}.user-panel>.image>img{width:100%;max-width:45px;height:auto}.user-panel>.info{padding:5px 5px 5px 15px;line-height:1;position:absolute;left:55px}.user-panel>.info>p{font-weight:600;margin-bottom:9px}.user-panel>.info>a{text-decoration:none;padding-right:5px;margin-top:3px;font-size:11px}.user-panel>.info>a>.fa,.user-panel>.info>a>.ion,.user-panel>.info>a>.glyphicon{margin-right:3px}.sidebar-menu{list-style:none;margin:0;padding:0}.sidebar-menu>li{position:relative;margin:0;padding:0}.sidebar-menu>li>a{padding:12px 5px 12px 15px;display:block}.sidebar-menu>li>a>.fa,.sidebar-menu>li>a>.glyphicon,.sidebar-menu>li>a>.ion{width:20px}.sidebar-menu>li .label,.sidebar-menu>li .badge{margin-top:3px;margin-right:5px}.sidebar-menu li.header{padding:10px 25px 10px 15px;font-size:12px}.sidebar-menu li>a>.fa-angle-left{width:auto;height:auto;padding:0;margin-right:10px;margin-top:3px}.sidebar-menu li.active>a>.fa-angle-left{-webkit-transform:rotate(-90deg);-ms-transform:rotate(-90deg);-o-transform:rotate(-90deg);transform:rotate(-90deg)}.sidebar-menu li.active>.treeview-menu{display:block}.sidebar-menu .treeview-menu{display:none;list-style:none;padding:0;margin:0;padding-left:5px}.sidebar-menu .treeview-menu .treeview-menu{padding-left:20px}.sidebar-menu .treeview-menu>li{margin:0}.sidebar-menu .treeview-menu>li>a{padding:5px 5px 5px 15px;display:block;font-size:14px}.sidebar-menu .treeview-menu>li>a>.fa,.sidebar-menu .treeview-menu>li>a>.glyphicon,.sidebar-menu .treeview-menu>li>a>.ion{width:20px}.sidebar-menu .treeview-menu>li>a>.fa-angle-left,.sidebar-menu .treeview-menu>li>a>.fa-angle-down{width:auto}@media (min-width:768px){.sidebar-mini.sidebar-collapse .content-wrapper,.sidebar-mini.sidebar-collapse .right-side,.sidebar-mini.sidebar-collapse .main-footer{margin-left:50px!important;z-index:840}.sidebar-mini.sidebar-collapse .main-sidebar{-webkit-transform:translate(0, 0);-ms-transform:translate(0, 0);-o-transform:translate(0, 0);transform:translate(0, 0);width:50px!important;z-index:850}.sidebar-mini.sidebar-collapse .sidebar-menu>li{position:relative}.sidebar-mini.sidebar-collapse .sidebar-menu>li>a{margin-right:0}.sidebar-mini.sidebar-collapse .sidebar-menu>li>a>span{border-top-right-radius:4px}.sidebar-mini.sidebar-collapse .sidebar-menu>li:not(.treeview)>a>span{border-bottom-right-radius:4px}.sidebar-mini.sidebar-collapse .sidebar-menu>li>.treeview-menu{padding-top:5px;padding-bottom:5px;border-bottom-right-radius:4px}.sidebar-mini.sidebar-collapse .sidebar-menu>li:hover>a>span:not(.pull-right),.sidebar-mini.sidebar-collapse .sidebar-menu>li:hover>.treeview-menu{display:block!important;position:absolute;width:180px;left:50px}.sidebar-mini.sidebar-collapse .sidebar-menu>li:hover>a>span{top:0;margin-left:-3px;padding:12px 5px 12px 20px;background-color:inherit}.sidebar-mini.sidebar-collapse .sidebar-menu>li:hover>.treeview-menu{top:44px;margin-left:0}.sidebar-mini.sidebar-collapse .main-sidebar .user-panel>.info,.sidebar-mini.sidebar-collapse .sidebar-form,.sidebar-mini.sidebar-collapse .sidebar-menu>li>a>span,.sidebar-mini.sidebar-collapse .sidebar-menu>li>.treeview-menu,.sidebar-mini.sidebar-collapse .sidebar-menu>li>a>.pull-right,.sidebar-mini.sidebar-collapse .sidebar-menu li.header{display:none!important}.sidebar-mini.sidebar-collapse .main-header .logo{width:50px}.sidebar-mini.sidebar-collapse .main-header .logo>.logo-mini{display:block;margin-left:-15px;margin-right:-15px;font-size:18px}.sidebar-mini.sidebar-collapse .main-header .logo>.logo-lg{display:none}.sidebar-mini.sidebar-collapse .main-header .navbar{margin-left:50px}}.sidebar-menu,.main-sidebar .user-panel,.sidebar-menu>li.header{white-space:nowrap!important;overflow:hidden}.sidebar-menu:hover{overflow:visible}.sidebar-form,.sidebar-menu>li.header{overflow:hidden;text-overflow:clip}.sidebar-menu li>a{position:relative}.sidebar-menu li>a>.pull-right{position:absolute;top:50%;right:10px;margin-top:-7px}.control-sidebar-bg{position:fixed;z-index:1000;bottom:0}.control-sidebar-bg,.control-sidebar{top:0;right:-230px;width:230px;-webkit-transition:right .3s ease-in-out;-o-transition:right .3s ease-in-out;transition:right .3s ease-in-out}.control-sidebar{position:absolute;padding-top:50px;z-index:1010}@media (max-width:768px){.control-sidebar{padding-top:100px}}.control-sidebar>.tab-content{padding:10px 15px}.control-sidebar.control-sidebar-open,.control-sidebar.control-sidebar-open+.control-sidebar-bg{right:0}.control-sidebar-open .control-sidebar-bg,.control-sidebar-open .control-sidebar{right:0}@media (min-width:768px){.control-sidebar-open .content-wrapper,.control-sidebar-open .right-side,.control-sidebar-open .main-footer{margin-right:230px}}.control-sidebar-tabs>li:first-of-type>a{margin-left:1px}.control-sidebar-tabs>li:first-of-type>a,.control-sidebar-tabs>li:first-of-type>a:hover{border-left-width:0!important}.control-sidebar-tabs>li>a{border-radius:0 !important}.control-sidebar-tabs>li>a,.control-sidebar-tabs>li>a:hover{border-top:none;border-right:none;border-left:1px solid transparent!important;border-bottom:1px solid transparent!important}.control-sidebar-tabs>li>a .icon{font-size:16px}.control-sidebar-tabs>li.active>a,.control-sidebar-tabs>li.active>a:hover,.control-sidebar-tabs>li.active>a:focus,.control-sidebar-tabs>li.active>a:active{border-top:none!important;border-right:none!important;border-bottom:none!important}@media (max-width:768px){.control-sidebar-tabs{display:table}.control-sidebar-tabs>li{display:table-cell !important}}.control-sidebar-heading{font-weight:400;font-size:16px;padding:10px 0;margin-bottom:10px}.control-sidebar-subheading{display:block;font-weight:400;font-size:14px}.control-sidebar-menu{list-style:none;padding:0;margin:0 -15px}.control-sidebar-menu>li>a{display:block;padding:10px 15px}.control-sidebar-menu>li>a:before,.control-sidebar-menu>li>a:after{content:" ";display:table}.control-sidebar-menu>li>a:after{clear:both}.control-sidebar-menu>li>a>.control-sidebar-subheading{margin-top:0}.control-sidebar-menu .menu-icon{float:left;width:35px;height:35px;border-radius:50%;text-align:center;line-height:35px}.control-sidebar-menu .menu-info{margin-left:45px;margin-top:3px}.control-sidebar-menu .menu-info>.control-sidebar-subheading{margin:0}.control-sidebar-menu .menu-info>p{margin:0;font-size:11px}.control-sidebar-menu .progress{margin:0}.control-sidebar-dark{color:#b8c7ce}.control-sidebar-dark,.control-sidebar-dark+.control-sidebar-bg{background:#222d32}.control-sidebar-dark .control-sidebar-tabs{border-bottom:#1c2529}.control-sidebar-dark .control-sidebar-tabs>li>a{background:#181f23;color:#b8c7ce}.control-sidebar-dark .control-sidebar-tabs>li>a,.control-sidebar-dark .control-sidebar-tabs>li>a:hover{border-left-color:#141a1d !important;border-bottom-color:#141a1d !important}.control-sidebar-dark .control-sidebar-tabs>li>a:hover,.control-sidebar-dark .control-sidebar-tabs>li>a:focus,.control-sidebar-dark .control-sidebar-tabs>li>a:active{background:#1c2529}.control-sidebar-dark .control-sidebar-tabs>li.active>a,.control-sidebar-dark .control-sidebar-tabs>li.active>a:hover,.control-sidebar-dark .control-sidebar-tabs>li.active>a:focus,.control-sidebar-dark .control-sidebar-tabs>li.active>a:active{background:#222d32;color:#fff}.control-sidebar-dark .control-sidebar-heading,.control-sidebar-dark .control-sidebar-subheading{color:#fff}.control-sidebar-dark .control-sidebar-menu>li>a:hover{background:#1e282c}.control-sidebar-dark .control-sidebar-menu>li>a .menu-info>p{color:#b8c7ce}.control-sidebar-light{color:#5e5e5e}.control-sidebar-light,.control-sidebar-light+.control-sidebar-bg{background:#f9fafc;border-left:1px solid #d2d6de}.control-sidebar-light .control-sidebar-tabs{border-bottom:#d2d6de}.control-sidebar-light .control-sidebar-tabs>li>a{background:#e8ecf4;color:#444}.control-sidebar-light .control-sidebar-tabs>li>a,.control-sidebar-light .control-sidebar-tabs>li>a:hover{border-left-color:#d2d6de !important;border-bottom-color:#d2d6de !important}.control-sidebar-light .control-sidebar-tabs>li>a:hover,.control-sidebar-light .control-sidebar-tabs>li>a:focus,.control-sidebar-light .control-sidebar-tabs>li>a:active{background:#eff1f7}.control-sidebar-light .control-sidebar-tabs>li.active>a,.control-sidebar-light .control-sidebar-tabs>li.active>a:hover,.control-sidebar-light .control-sidebar-tabs>li.active>a:focus,.control-sidebar-light .control-sidebar-tabs>li.active>a:active{background:#f9fafc;color:#111}.control-sidebar-light .control-sidebar-heading,.control-sidebar-light .control-sidebar-subheading{color:#111}.control-sidebar-light .control-sidebar-menu{margin-left:-14px}.control-sidebar-light .control-sidebar-menu>li>a:hover{background:#f4f4f5}.control-sidebar-light .control-sidebar-menu>li>a .menu-info>p{color:#5e5e5e}.dropdown-menu{box-shadow:none;border-color:#eee}.dropdown-menu>li>a{color:#777}.dropdown-menu>li>a>.glyphicon,.dropdown-menu>li>a>.fa,.dropdown-menu>li>a>.ion{margin-right:10px}.dropdown-menu>li>a:hover{background-color:#e1e3e9;color:#333}.dropdown-menu>.divider{background-color:#eee}.navbar-nav .dropdown-menu{-webkit-box-shadow:none !important;box-shadow:none !important}.navbar-nav>.notifications-menu,.navbar-nav>.messages-menu,.navbar-nav>.tasks-menu{position:relative}.navbar-nav>.notifications-menu>.dropdown-menu,.navbar-nav>.messages-menu>.dropdown-menu,.navbar-nav>.tasks-menu>.dropdown-menu{width:280px;padding:0 0 0 0!important;margin:0!important;top:100%}.navbar-nav>.notifications-menu>.dropdown-menu>li,.navbar-nav>.messages-menu>.dropdown-menu>li,.navbar-nav>.tasks-menu>.dropdown-menu>li{position:relative}.navbar-nav>.notifications-menu>.dropdown-menu>li.header,.navbar-nav>.messages-menu>.dropdown-menu>li.header,.navbar-nav>.tasks-menu>.dropdown-menu>li.header{border-top-left-radius:4px;border-top-right-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0;background-color:#ffffff;padding:7px 10px;border-bottom:1px solid #f4f4f4;color:#444444;font-size:14px}.navbar-nav>.notifications-menu>.dropdown-menu>li.footer>a,.navbar-nav>.messages-menu>.dropdown-menu>li.footer>a,.navbar-nav>.tasks-menu>.dropdown-menu>li.footer>a{border-top-left-radius:0;border-top-right-radius:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px;font-size:12px;background-color:#fff;padding:7px 10px;border-bottom:1px solid #eeeeee;color:#444!important;text-align:center}@media (max-width:991px){.navbar-nav>.notifications-menu>.dropdown-menu>li.footer>a,.navbar-nav>.messages-menu>.dropdown-menu>li.footer>a,.navbar-nav>.tasks-menu>.dropdown-menu>li.footer>a{background:#fff!important;color:#444!important}}.navbar-nav>.notifications-menu>.dropdown-menu>li.footer>a:hover,.navbar-nav>.messages-menu>.dropdown-menu>li.footer>a:hover,.navbar-nav>.tasks-menu>.dropdown-menu>li.footer>a:hover{text-decoration:none;font-weight:normal}.navbar-nav>.notifications-menu>.dropdown-menu>li .menu,.navbar-nav>.messages-menu>.dropdown-menu>li .menu,.navbar-nav>.tasks-menu>.dropdown-menu>li .menu{max-height:200px;margin:0;padding:0;list-style:none;overflow-x:hidden}.navbar-nav>.notifications-menu>.dropdown-menu>li .menu>li>a,.navbar-nav>.messages-menu>.dropdown-menu>li .menu>li>a,.navbar-nav>.tasks-menu>.dropdown-menu>li .menu>li>a{display:block;white-space:nowrap;border-bottom:1px solid #f4f4f4}.navbar-nav>.notifications-menu>.dropdown-menu>li .menu>li>a:hover,.navbar-nav>.messages-menu>.dropdown-menu>li .menu>li>a:hover,.navbar-nav>.tasks-menu>.dropdown-menu>li .menu>li>a:hover{background:#f4f4f4;text-decoration:none}.navbar-nav>.notifications-menu>.dropdown-menu>li .menu>li>a{color:#444444;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:10px}.navbar-nav>.notifications-menu>.dropdown-menu>li .menu>li>a>.glyphicon,.navbar-nav>.notifications-menu>.dropdown-menu>li .menu>li>a>.fa,.navbar-nav>.notifications-menu>.dropdown-menu>li .menu>li>a>.ion{width:20px}.navbar-nav>.messages-menu>.dropdown-menu>li .menu>li>a{margin:0px;padding:10px 10px}.navbar-nav>.messages-menu>.dropdown-menu>li .menu>li>a>div>img{margin:auto 10px auto auto;width:40px;height:40px}.navbar-nav>.messages-menu>.dropdown-menu>li .menu>li>a>h4{padding:0;margin:0 0 0 45px;color:#444444;font-size:15px;position:relative}.navbar-nav>.messages-menu>.dropdown-menu>li .menu>li>a>h4>small{color:#999999;font-size:10px;position:absolute;top:0px;right:0px}.navbar-nav>.messages-menu>.dropdown-menu>li .menu>li>a>p{margin:0 0 0 45px;font-size:12px;color:#888888}.navbar-nav>.messages-menu>.dropdown-menu>li .menu>li>a:before,.navbar-nav>.messages-menu>.dropdown-menu>li .menu>li>a:after{content:" ";display:table}.navbar-nav>.messages-menu>.dropdown-menu>li .menu>li>a:after{clear:both}.navbar-nav>.tasks-menu>.dropdown-menu>li .menu>li>a{padding:10px}.navbar-nav>.tasks-menu>.dropdown-menu>li .menu>li>a>h3{font-size:14px;padding:0;margin:0 0 10px 0;color:#666666}.navbar-nav>.tasks-menu>.dropdown-menu>li .menu>li>a>.progress{padding:0;margin:0}.navbar-nav>.user-menu>.dropdown-menu{border-top-right-radius:0;border-top-left-radius:0;padding:1px 0 0 0;border-top-width:0;width:280px}.navbar-nav>.user-menu>.dropdown-menu,.navbar-nav>.user-menu>.dropdown-menu>.user-body{border-bottom-right-radius:4px;border-bottom-left-radius:4px}.navbar-nav>.user-menu>.dropdown-menu>li.user-header{height:175px;padding:10px;text-align:center}.navbar-nav>.user-menu>.dropdown-menu>li.user-header>img{z-index:5;height:90px;width:90px;border:3px solid;border-color:transparent;border-color:rgba(255,255,255,0.2)}.navbar-nav>.user-menu>.dropdown-menu>li.user-header>p{z-index:5;color:#fff;color:rgba(255,255,255,0.8);font-size:17px;margin-top:10px}.navbar-nav>.user-menu>.dropdown-menu>li.user-header>p>small{display:block;font-size:12px}.navbar-nav>.user-menu>.dropdown-menu>.user-body{padding:15px;border-bottom:1px solid #f4f4f4;border-top:1px solid #dddddd}.navbar-nav>.user-menu>.dropdown-menu>.user-body:before,.navbar-nav>.user-menu>.dropdown-menu>.user-body:after{content:" ";display:table}.navbar-nav>.user-menu>.dropdown-menu>.user-body:after{clear:both}.navbar-nav>.user-menu>.dropdown-menu>.user-body a{color:#444 !important}@media (max-width:991px){.navbar-nav>.user-menu>.dropdown-menu>.user-body a{background:#fff !important;color:#444 !important}}.navbar-nav>.user-menu>.dropdown-menu>.user-footer{background-color:#f9f9f9;padding:10px}.navbar-nav>.user-menu>.dropdown-menu>.user-footer:before,.navbar-nav>.user-menu>.dropdown-menu>.user-footer:after{content:" ";display:table}.navbar-nav>.user-menu>.dropdown-menu>.user-footer:after{clear:both}.navbar-nav>.user-menu>.dropdown-menu>.user-footer .btn-default{color:#666666}.navbar-nav>.user-menu .user-image{float:left;width:25px;height:25px;border-radius:50%;margin-right:10px;margin-top:-2px}@media (max-width:767px){.navbar-nav>.user-menu .user-image{float:none;margin-right:0;margin-top:-8px;line-height:10px}}.open:not(.dropup)>.animated-dropdown-menu{backface-visibility:visible !important;-webkit-animation:flipInX .7s both;-o-animation:flipInX .7s both;animation:flipInX .7s both}@keyframes flipInX{0%{transform:perspective(400px) rotate3d(1, 0, 0, 90deg);transition-timing-function:ease-in;opacity:0}40%{transform:perspective(400px) rotate3d(1, 0, 0, -20deg);transition-timing-function:ease-in}60%{transform:perspective(400px) rotate3d(1, 0, 0, 10deg);opacity:1}80%{transform:perspective(400px) rotate3d(1, 0, 0, -5deg)}100%{transform:perspective(400px)}}@-webkit-keyframes flipInX{0%{-webkit-transform:perspective(400px) rotate3d(1, 0, 0, 90deg);-webkit-transition-timing-function:ease-in;opacity:0}40%{-webkit-transform:perspective(400px) rotate3d(1, 0, 0, -20deg);-webkit-transition-timing-function:ease-in}60%{-webkit-transform:perspective(400px) rotate3d(1, 0, 0, 10deg);opacity:1}80%{-webkit-transform:perspective(400px) rotate3d(1, 0, 0, -5deg)}100%{-webkit-transform:perspective(400px)}}.navbar-custom-menu>.navbar-nav>li{position:relative}.navbar-custom-menu>.navbar-nav>li>.dropdown-menu{position:absolute;right:0;left:auto}@media (max-width:991px){.navbar-custom-menu>.navbar-nav{float:right}.navbar-custom-menu>.navbar-nav>li{position:static}.navbar-custom-menu>.navbar-nav>li>.dropdown-menu{position:absolute;right:5%;left:auto;border:1px solid #ddd;background:#fff}}.form-control{border-radius:0 !important;box-shadow:none;border-color:#d2d6de}.form-control:focus{border-color:#3c8dbc !important;box-shadow:none}.form-control::-moz-placeholder{color:#bbb;opacity:1}.form-control:-ms-input-placeholder{color:#bbb}.form-control::-webkit-input-placeholder{color:#bbb}.form-control:not(select){-webkit-appearance:none;-moz-appearance:none;appearance:none}.form-group.has-success label{color:#00a65a}.form-group.has-success .form-control{border-color:#00a65a !important;box-shadow:none}.form-group.has-warning label{color:#f39c12}.form-group.has-warning .form-control{border-color:#f39c12 !important;box-shadow:none}.form-group.has-error label{color:#dd4b39}.form-group.has-error .form-control{border-color:#dd4b39 !important;box-shadow:none}.input-group .input-group-addon{border-radius:0;border-color:#d2d6de;background-color:#fff}.btn-group-vertical .btn.btn-flat:first-of-type,.btn-group-vertical .btn.btn-flat:last-of-type{border-radius:0}.icheck>label{padding-left:0}.progress,.progress>.progress-bar{-webkit-box-shadow:none;box-shadow:none}.progress,.progress>.progress-bar,.progress .progress-bar,.progress>.progress-bar .progress-bar{border-radius:1px}.progress.sm,.progress-sm{height:10px}.progress.sm,.progress-sm,.progress.sm .progress-bar,.progress-sm .progress-bar{border-radius:1px}.progress.xs,.progress-xs{height:7px}.progress.xs,.progress-xs,.progress.xs .progress-bar,.progress-xs .progress-bar{border-radius:1px}.progress.xxs,.progress-xxs{height:3px}.progress.xxs,.progress-xxs,.progress.xxs .progress-bar,.progress-xxs .progress-bar{border-radius:1px}.progress.vertical{position:relative;width:30px;height:200px;display:inline-block;margin-right:10px}.progress.vertical>.progress-bar{width:100%!important;position:absolute;bottom:0}.progress.vertical.sm,.progress.vertical.progress-sm{width:20px}.progress.vertical.xs,.progress.vertical.progress-xs{width:10px}.progress.vertical.xxs,.progress.vertical.progress-xxs{width:3px}.progress-group .progress-text{font-weight:600}.progress-group .progress-number{float:right}.table tr>td .progress{margin:0}.progress-bar-light-blue,.progress-bar-primary{background-color:#3c8dbc}.progress-striped .progress-bar-light-blue,.progress-striped .progress-bar-primary{background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-o-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)}.progress-bar-green,.progress-bar-success{background-color:#00a65a}.progress-striped .progress-bar-green,.progress-striped .progress-bar-success{background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-o-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)}.progress-bar-aqua,.progress-bar-info{background-color:#00c0ef}.progress-striped .progress-bar-aqua,.progress-striped .progress-bar-info{background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-o-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)}.progress-bar-yellow,.progress-bar-warning{background-color:#f39c12}.progress-striped .progress-bar-yellow,.progress-striped .progress-bar-warning{background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-o-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)}.progress-bar-red,.progress-bar-danger{background-color:#dd4b39}.progress-striped .progress-bar-red,.progress-striped .progress-bar-danger{background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-o-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)}.small-box{border-radius:2px;position:relative;display:block;margin-bottom:20px;box-shadow:0 1px 1px rgba(0,0,0,0.1)}.small-box>.inner{padding:10px}.small-box>.small-box-footer{position:relative;text-align:center;padding:3px 0;color:#fff;color:rgba(255,255,255,0.8);display:block;z-index:10;background:rgba(0,0,0,0.1);text-decoration:none}.small-box>.small-box-footer:hover{color:#fff;background:rgba(0,0,0,0.15)}.small-box h3{font-size:38px;font-weight:bold;margin:0 0 10px 0;white-space:nowrap;padding:0}.small-box p{font-size:15px}.small-box p>small{display:block;color:#f9f9f9;font-size:13px;margin-top:5px}.small-box h3,.small-box p{z-index:5px}.small-box .icon{-webkit-transition:all .3s linear;-o-transition:all .3s linear;transition:all .3s linear;position:absolute;top:-10px;right:10px;z-index:0;font-size:90px;color:rgba(0,0,0,0.15)}.small-box:hover{text-decoration:none;color:#f9f9f9}.small-box:hover .icon{font-size:95px}@media (max-width:767px){.small-box{text-align:center}.small-box .icon{display:none}.small-box p{font-size:12px}}.box{position:relative;border-radius:3px;background:#ffffff;border-top:3px solid #d2d6de;margin-bottom:20px;width:100%;box-shadow:0 1px 1px rgba(0,0,0,0.1)}.box.box-primary{border-top-color:#3c8dbc}.box.box-info{border-top-color:#00c0ef}.box.box-danger{border-top-color:#dd4b39}.box.box-warning{border-top-color:#f39c12}.box.box-success{border-top-color:#00a65a}.box.box-default{border-top-color:#d2d6de}.box.collapsed-box .box-body,.box.collapsed-box .box-footer{display:none}.box .nav-stacked>li{border-bottom:1px solid #f4f4f4;margin:0}.box .nav-stacked>li:last-of-type{border-bottom:none}.box.height-control .box-body{max-height:300px;overflow:auto}.box .border-right{border-right:1px solid #f4f4f4}.box .border-left{border-left:1px solid #f4f4f4}.box.box-solid{border-top:0px}.box.box-solid>.box-header .btn.btn-default{background:transparent}.box.box-solid>.box-header .btn:hover,.box.box-solid>.box-header a:hover{background:rgba(0,0,0,0.1) !important}.box.box-solid.box-default{border:1px solid #d2d6de}.box.box-solid.box-default>.box-header{color:#444;background:#d2d6de;background-color:#d2d6de}.box.box-solid.box-default>.box-header a,.box.box-solid.box-default>.box-header .btn{color:#444}.box.box-solid.box-primary{border:1px solid #3c8dbc}.box.box-solid.box-primary>.box-header{color:#fff;background:#3c8dbc;background-color:#3c8dbc}.box.box-solid.box-primary>.box-header a,.box.box-solid.box-primary>.box-header .btn{color:#fff}.box.box-solid.box-info{border:1px solid #00c0ef}.box.box-solid.box-info>.box-header{color:#fff;background:#00c0ef;background-color:#00c0ef}.box.box-solid.box-info>.box-header a,.box.box-solid.box-info>.box-header .btn{color:#fff}.box.box-solid.box-danger{border:1px solid #dd4b39}.box.box-solid.box-danger>.box-header{color:#fff;background:#dd4b39;background-color:#dd4b39}.box.box-solid.box-danger>.box-header a,.box.box-solid.box-danger>.box-header .btn{color:#fff}.box.box-solid.box-warning{border:1px solid #f39c12}.box.box-solid.box-warning>.box-header{color:#fff;background:#f39c12;background-color:#f39c12}.box.box-solid.box-warning>.box-header a,.box.box-solid.box-warning>.box-header .btn{color:#fff}.box.box-solid.box-success{border:1px solid #00a65a}.box.box-solid.box-success>.box-header{color:#fff;background:#00a65a;background-color:#00a65a}.box.box-solid.box-success>.box-header a,.box.box-solid.box-success>.box-header .btn{color:#fff}.box.box-solid>.box-header>.box-tools .btn{border:0;box-shadow:none}.box.box-solid[class*='bg']>.box-header{color:#fff}.box .box-group>.box{margin-bottom:5px}.box .knob-label{text-align:center;color:#333;font-weight:100;font-size:12px;margin-bottom:0.3em}.box>.overlay,.overlay-wrapper>.overlay,.box>.loading-img,.overlay-wrapper>.loading-img{position:absolute;top:0;left:0;width:100%;height:100%}.box .overlay,.overlay-wrapper .overlay{z-index:50;background:rgba(255,255,255,0.7);border-radius:3px}.box .overlay>.fa,.overlay-wrapper .overlay>.fa{position:absolute;top:50%;left:50%;margin-left:-15px;margin-top:-15px;color:#000;font-size:30px}.box .overlay.dark,.overlay-wrapper .overlay.dark{background:rgba(0,0,0,0.5)}.box-header:before,.box-body:before,.box-footer:before,.box-header:after,.box-body:after,.box-footer:after{content:" ";display:table}.box-header:after,.box-body:after,.box-footer:after{clear:both}.box-header{color:#444;display:block;padding:10px;position:relative}.box-header.with-border{border-bottom:1px solid #f4f4f4}.collapsed-box .box-header.with-border{border-bottom:none}.box-header>.fa,.box-header>.glyphicon,.box-header>.ion,.box-header .box-title{display:inline-block;font-size:18px;margin:0;line-height:1}.box-header>.fa,.box-header>.glyphicon,.box-header>.ion{margin-right:5px}.box-header>.box-tools{position:absolute;right:10px;top:5px}.box-header>.box-tools [data-toggle="tooltip"]{position:relative}.box-header>.box-tools.pull-right .dropdown-menu{right:0;left:auto}.btn-box-tool{padding:5px;font-size:12px;background:transparent;box-shadow:none!important;color:#97a0b3}.open .btn-box-tool,.btn-box-tool:hover{color:#606c84}.btn-box-tool:active{outline:none!important}.box-body{border-top-left-radius:0;border-top-right-radius:0;border-bottom-right-radius:3px;border-bottom-left-radius:3px;padding:10px}.no-header .box-body{border-top-right-radius:3px;border-top-left-radius:3px}.box-body>.table{margin-bottom:0}.box-body .fc{margin-top:5px}.box-body .full-width-chart{margin:-19px}.box-body.no-padding .full-width-chart{margin:-9px}.box-body .box-pane{border-top-left-radius:0;border-top-right-radius:0;border-bottom-right-radius:0;border-bottom-left-radius:3px}.box-body .box-pane-right{border-top-left-radius:0;border-top-right-radius:0;border-bottom-right-radius:3px;border-bottom-left-radius:0}.box-footer{border-top-left-radius:0;border-top-right-radius:0;border-bottom-right-radius:3px;border-bottom-left-radius:3px;border-top:1px solid #f4f4f4;padding:10px;background-color:#fff}.chart-legend{margin:10px 0}@media (max-width:991px){.chart-legend>li{float:left;margin-right:10px}}.todo-list{margin:0;padding:0px 0px;list-style:none;overflow:auto}.todo-list>li{border-radius:2px;padding:10px;background:#f4f4f4;margin-bottom:2px;border-left:2px solid #e6e7e8;color:#444}.todo-list>li:last-of-type{margin-bottom:0}.todo-list>li.danger{border-left-color:#dd4b39}.todo-list>li.warning{border-left-color:#f39c12}.todo-list>li.info{border-left-color:#00c0ef}.todo-list>li.success{border-left-color:#00a65a}.todo-list>li.primary{border-left-color:#3c8dbc}.todo-list>li>input[type='checkbox']{margin:0 10px 0 5px}.todo-list>li .text{display:inline-block;margin-left:5px;font-weight:600}.todo-list>li .label{margin-left:10px;font-size:9px}.todo-list>li .tools{display:none;float:right;color:#dd4b39}.todo-list>li .tools>.fa,.todo-list>li .tools>.glyphicon,.todo-list>li .tools>.ion{margin-right:5px;cursor:pointer}.todo-list>li:hover .tools{display:inline-block}.todo-list>li.done{color:#999}.todo-list>li.done .text{text-decoration:line-through;font-weight:500}.todo-list>li.done .label{background:#d2d6de !important}.todo-list .handle{display:inline-block;cursor:move;margin:0 5px}.chat{padding:5px 20px 5px 10px}.chat .item{margin-bottom:10px}.chat .item:before,.chat .item:after{content:" ";display:table}.chat .item:after{clear:both}.chat .item>img{width:40px;height:40px;border:2px solid transparent;border-radius:50% !important}.chat .item>img.online{border:2px solid #00a65a}.chat .item>img.offline{border:2px solid #dd4b39}.chat .item>.message{margin-left:55px;margin-top:-40px}.chat .item>.message>.name{display:block;font-weight:600}.chat .item>.attachment{border-radius:3px;background:#f4f4f4;margin-left:65px;margin-right:15px;padding:10px}.chat .item>.attachment>h4{margin:0 0 5px 0;font-weight:600;font-size:14px}.chat .item>.attachment>p,.chat .item>.attachment>.filename{font-weight:600;font-size:13px;font-style:italic;margin:0}.chat .item>.attachment:before,.chat .item>.attachment:after{content:" ";display:table}.chat .item>.attachment:after{clear:both}.box-input{max-width:200px}.info-box{display:block;min-height:90px;background:#fff;width:100%;box-shadow:0 1px 1px rgba(0,0,0,0.1);border-radius:2px;margin-bottom:15px}.info-box small{font-size:14px}.info-box .progress{background:rgba(0,0,0,0.2);margin:5px -10px 5px -10px;height:2px}.info-box .progress,.info-box .progress .progress-bar{border-radius:0}.info-box .progress .progress-bar{background:#fff}.info-box-icon{border-top-left-radius:2px;border-top-right-radius:0;border-bottom-right-radius:0;border-bottom-left-radius:2px;display:block;float:left;height:90px;width:90px;text-align:center;font-size:45px;line-height:90px;background:rgba(0,0,0,0.2)}.info-box-content{padding:5px 10px;margin-left:90px}.info-box-number{display:block;font-weight:bold;font-size:18px}.progress-description,.info-box-text{display:block;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.info-box-text{text-transform:uppercase}.info-box-more{display:block}.progress-description{margin:0}.timeline{position:relative;margin:0 0 30px 0;padding:0;list-style:none}.timeline:before{content:'';position:absolute;top:0px;bottom:0;width:4px;background:#ddd;left:31px;margin:0;border-radius:2px}.timeline>li{position:relative;margin-right:10px;margin-bottom:15px}.timeline>li:before,.timeline>li:after{content:" ";display:table}.timeline>li:after{clear:both}.timeline>li>.timeline-item{-webkit-box-shadow:0 1px 1px rgba(0,0,0,0.1);box-shadow:0 1px 1px rgba(0,0,0,0.1);border-radius:3px;margin-top:0px;background:#fff;color:#444;margin-left:60px;margin-right:15px;padding:0;position:relative}.timeline>li>.timeline-item>.time{color:#999;float:right;padding:10px;font-size:12px}.timeline>li>.timeline-item>.timeline-header{margin:0;color:#555;border-bottom:1px solid #f4f4f4;padding:10px;font-size:16px;line-height:1.1}.timeline>li>.timeline-item>.timeline-header>a{font-weight:600}.timeline>li>.timeline-item>.timeline-body,.timeline>li>.timeline-item>.timeline-footer{padding:10px}.timeline>li.time-label>span{font-weight:600;padding:5px;display:inline-block;background-color:#fff;border-radius:4px}.timeline>li>.fa,.timeline>li>.glyphicon,.timeline>li>.ion{width:30px;height:30px;font-size:15px;line-height:30px;position:absolute;color:#666;background:#d2d6de;border-radius:50%;text-align:center;left:18px;top:0}.btn{border-radius:3px;-webkit-box-shadow:none;box-shadow:none;border:1px solid transparent}.btn.uppercase{text-transform:uppercase}.btn.btn-flat{border-radius:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;border-width:1px}.btn:active{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,0.125);-moz-box-shadow:inset 0 3px 5px rgba(0,0,0,0.125);box-shadow:inset 0 3px 5px rgba(0,0,0,0.125)}.btn:focus{outline:none}.btn.btn-file{position:relative;overflow:hidden}.btn.btn-file>input[type='file']{position:absolute;top:0;right:0;min-width:100%;min-height:100%;font-size:100px;text-align:right;opacity:0;filter:alpha(opacity=0);outline:none;background:white;cursor:inherit;display:block}.btn-default{background-color:#f4f4f4;color:#444;border-color:#ddd}.btn-default:hover,.btn-default:active,.btn-default.hover{background-color:#e7e7e7 !important}.btn-primary{background-color:#3c8dbc;border-color:#367fa9}.btn-primary:hover,.btn-primary:active,.btn-primary.hover{background-color:#367fa9}.btn-success{background-color:#00a65a;border-color:#008d4c}.btn-success:hover,.btn-success:active,.btn-success.hover{background-color:#008d4c}.btn-info{background-color:#00c0ef;border-color:#00acd6}.btn-info:hover,.btn-info:active,.btn-info.hover{background-color:#00acd6}.btn-danger{background-color:#dd4b39;border-color:#d73925}.btn-danger:hover,.btn-danger:active,.btn-danger.hover{background-color:#d73925}.btn-warning{background-color:#f39c12;border-color:#e08e0b}.btn-warning:hover,.btn-warning:active,.btn-warning.hover{background-color:#e08e0b}.btn-outline{border:1px solid #fff;background:transparent;color:#fff}.btn-outline:hover,.btn-outline:focus,.btn-outline:active{color:rgba(255,255,255,0.7);border-color:rgba(255,255,255,0.7)}.btn-link{-webkit-box-shadow:none;box-shadow:none}.btn[class*='bg-']:hover{-webkit-box-shadow:inset 0 0 100px rgba(0,0,0,0.2);box-shadow:inset 0 0 100px rgba(0,0,0,0.2)}.btn-app{border-radius:3px;position:relative;padding:15px 5px;margin:0 0 10px 10px;min-width:80px;height:60px;text-align:center;color:#666;border:1px solid #ddd;background-color:#f4f4f4;font-size:12px}.btn-app>.fa,.btn-app>.glyphicon,.btn-app>.ion{font-size:20px;display:block}.btn-app:hover{background:#f4f4f4;color:#444;border-color:#aaa}.btn-app:active,.btn-app:focus{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,0.125);-moz-box-shadow:inset 0 3px 5px rgba(0,0,0,0.125);box-shadow:inset 0 3px 5px rgba(0,0,0,0.125)}.btn-app>.badge{position:absolute;top:-3px;right:-10px;font-size:10px;font-weight:400}.callout{border-radius:3px;margin:0 0 20px 0;padding:15px 30px 15px 15px;border-left:5px solid #eee}.callout a{color:#fff;text-decoration:underline}.callout a:hover{color:#eee}.callout h4{margin-top:0;font-weight:600}.callout p:last-child{margin-bottom:0}.callout code,.callout .highlight{background-color:#fff}.callout.callout-danger{border-color:#c23321}.callout.callout-warning{border-color:#c87f0a}.callout.callout-info{border-color:#0097bc}.callout.callout-success{border-color:#00733e}.alert{border-radius:3px}.alert h4{font-weight:600}.alert .icon{margin-right:10px}.alert .close{color:#000;opacity:.2;filter:alpha(opacity=20)}.alert .close:hover{opacity:.5;filter:alpha(opacity=50)}.alert a{color:#fff;text-decoration:underline}.alert-success{border-color:#008d4c}.alert-danger,.alert-error{border-color:#d73925}.alert-warning{border-color:#e08e0b}.alert-info{border-color:#00acd6}.nav>li>a:hover,.nav>li>a:active,.nav>li>a:focus{color:#444;background:#f7f7f7}.nav-pills>li>a{border-radius:0;border-top:3px solid transparent;color:#444}.nav-pills>li>a>.fa,.nav-pills>li>a>.glyphicon,.nav-pills>li>a>.ion{margin-right:5px}.nav-pills>li.active>a,.nav-pills>li.active>a:hover,.nav-pills>li.active>a:focus{border-top-color:#3c8dbc}.nav-pills>li.active>a{font-weight:600}.nav-stacked>li>a{border-radius:0;border-top:0;border-left:3px solid transparent;color:#444}.nav-stacked>li.active>a,.nav-stacked>li.active>a:hover{border-top:0;border-left-color:#3c8dbc}.nav-stacked>li.header{border-bottom:1px solid #ddd;color:#777;margin-bottom:10px;padding:5px 10px;text-transform:uppercase}.nav-tabs-custom{margin-bottom:20px;background:#fff;box-shadow:0 1px 1px rgba(0,0,0,0.1);border-radius:3px}.nav-tabs-custom>.nav-tabs{margin:0;border-bottom-color:#f4f4f4;border-top-right-radius:3px;border-top-left-radius:3px}.nav-tabs-custom>.nav-tabs>li{border-top:3px solid transparent;margin-bottom:-2px;margin-right:5px}.nav-tabs-custom>.nav-tabs>li>a{color:#444;border-radius:0 !important}.nav-tabs-custom>.nav-tabs>li>a,.nav-tabs-custom>.nav-tabs>li>a:hover{background:transparent;margin:0}.nav-tabs-custom>.nav-tabs>li>a:hover{color:#999}.nav-tabs-custom>.nav-tabs>li:not(.active)>a:hover,.nav-tabs-custom>.nav-tabs>li:not(.active)>a:focus,.nav-tabs-custom>.nav-tabs>li:not(.active)>a:active{border-color:transparent}.nav-tabs-custom>.nav-tabs>li.active{border-top-color:#3c8dbc}.nav-tabs-custom>.nav-tabs>li.active>a,.nav-tabs-custom>.nav-tabs>li.active:hover>a{background-color:#fff;color:#444}.nav-tabs-custom>.nav-tabs>li.active>a{border-top-color:transparent;border-left-color:#f4f4f4;border-right-color:#f4f4f4}.nav-tabs-custom>.nav-tabs>li:first-of-type{margin-left:0}.nav-tabs-custom>.nav-tabs>li:first-of-type.active>a{border-left-color:transparent}.nav-tabs-custom>.nav-tabs.pull-right{float:none!important}.nav-tabs-custom>.nav-tabs.pull-right>li{float:right}.nav-tabs-custom>.nav-tabs.pull-right>li:first-of-type{margin-right:0}.nav-tabs-custom>.nav-tabs.pull-right>li:first-of-type>a{border-left-width:1px}.nav-tabs-custom>.nav-tabs.pull-right>li:first-of-type.active>a{border-left-color:#f4f4f4;border-right-color:transparent}.nav-tabs-custom>.nav-tabs>li.header{line-height:35px;padding:0 10px;font-size:20px;color:#444}.nav-tabs-custom>.nav-tabs>li.header>.fa,.nav-tabs-custom>.nav-tabs>li.header>.glyphicon,.nav-tabs-custom>.nav-tabs>li.header>.ion{margin-right:5px}.nav-tabs-custom>.tab-content{background:#fff;padding:10px;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.nav-tabs-custom .dropdown.open>a:active,.nav-tabs-custom .dropdown.open>a:focus{background:transparent;color:#999}.pagination>li>a{background:#fafafa;color:#666;border-radius:0 !important}.products-list{list-style:none;margin:0;padding:0}.products-list>.item{border-radius:3px;-webkit-box-shadow:0 1px 1px rgba(0,0,0,0.1);box-shadow:0 1px 1px rgba(0,0,0,0.1);padding:10px 0;background:#fff}.products-list>.item:before,.products-list>.item:after{content:" ";display:table}.products-list>.item:after{clear:both}.products-list .product-img{float:left}.products-list .product-img img{width:50px;height:50px}.products-list .product-info{margin-left:60px}.products-list .product-title{font-weight:600}.products-list .product-description{display:block;color:#999;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.product-list-in-box>.item{-webkit-box-shadow:none;box-shadow:none;border-radius:0;border-bottom:1px solid #f4f4f4}.product-list-in-box>.item:last-of-type{border-bottom-width:0}.table>thead>tr>th,.table>tbody>tr>th,.table>tfoot>tr>th,.table>thead>tr>td,.table>tbody>tr>td,.table>tfoot>tr>td{border-top:1px solid #f4f4f4}.table>thead>tr>th{border-bottom:2px solid #f4f4f4}.table tr td .progress{margin-top:5px}.table-bordered{border:1px solid #f4f4f4}.table-bordered>thead>tr>th,.table-bordered>tbody>tr>th,.table-bordered>tfoot>tr>th,.table-bordered>thead>tr>td,.table-bordered>tbody>tr>td,.table-bordered>tfoot>tr>td{border:1px solid #f4f4f4}.table-bordered>thead>tr>th,.table-bordered>thead>tr>td{border-bottom-width:2px}.table.no-border,.table.no-border td,.table.no-border th{border:0}table.text-center,table.text-center td,table.text-center th{text-align:center}.table.align th{text-align:left}.table.align td{text-align:right}.label-default{background-color:#d2d6de;color:#444}.direct-chat .box-body{border-bottom-right-radius:0;border-bottom-left-radius:0;position:relative;overflow-x:hidden;padding:0}.direct-chat.chat-pane-open .direct-chat-contacts{-webkit-transform:translate(0, 0);-ms-transform:translate(0, 0);-o-transform:translate(0, 0);transform:translate(0, 0)}.direct-chat-messages{-webkit-transform:translate(0, 0);-ms-transform:translate(0, 0);-o-transform:translate(0, 0);transform:translate(0, 0);padding:10px;height:250px;overflow:auto}.direct-chat-msg,.direct-chat-text{display:block}.direct-chat-msg{margin-bottom:10px}.direct-chat-msg:before,.direct-chat-msg:after{content:" ";display:table}.direct-chat-msg:after{clear:both}.direct-chat-messages,.direct-chat-contacts{-webkit-transition:-webkit-transform .5s ease-in-out;-moz-transition:-moz-transform .5s ease-in-out;-o-transition:-o-transform .5s ease-in-out;transition:transform .5s ease-in-out}.direct-chat-text{border-radius:5px;position:relative;padding:5px 10px;background:#d2d6de;border:1px solid #d2d6de;margin:5px 0 0 50px;color:#444}.direct-chat-text:after,.direct-chat-text:before{position:absolute;right:100%;top:15px;border:solid transparent;border-right-color:#d2d6de;content:' ';height:0;width:0;pointer-events:none}.direct-chat-text:after{border-width:5px;margin-top:-5px}.direct-chat-text:before{border-width:6px;margin-top:-6px}.right .direct-chat-text{margin-right:50px;margin-left:0}.right .direct-chat-text:after,.right .direct-chat-text:before{right:auto;left:100%;border-right-color:transparent;border-left-color:#d2d6de}.direct-chat-img{border-radius:50%;float:left;width:40px;height:40px}.right .direct-chat-img{float:right}.direct-chat-info{display:block;margin-bottom:2px;font-size:12px}.direct-chat-name{font-weight:600}.direct-chat-timestamp{color:#999}.direct-chat-contacts-open .direct-chat-contacts{-webkit-transform:translate(0, 0);-ms-transform:translate(0, 0);-o-transform:translate(0, 0);transform:translate(0, 0)}.direct-chat-contacts{-webkit-transform:translate(101%, 0);-ms-transform:translate(101%, 0);-o-transform:translate(101%, 0);transform:translate(101%, 0);position:absolute;top:0;bottom:0;height:250px;width:100%;background:#222d32;color:#fff;overflow:auto}.contacts-list>li{border-bottom:1px solid rgba(0,0,0,0.2);padding:10px;margin:0}.contacts-list>li:before,.contacts-list>li:after{content:" ";display:table}.contacts-list>li:after{clear:both}.contacts-list>li:last-of-type{border-bottom:none}.contacts-list-img{border-radius:50%;width:40px;float:left}.contacts-list-info{margin-left:45px;color:#fff}.contacts-list-name,.contacts-list-status{display:block}.contacts-list-name{font-weight:600}.contacts-list-status{font-size:12px}.contacts-list-date{color:#aaa;font-weight:normal}.contacts-list-msg{color:#999}.direct-chat-danger .right>.direct-chat-text{background:#dd4b39;border-color:#dd4b39;color:#fff}.direct-chat-danger .right>.direct-chat-text:after,.direct-chat-danger .right>.direct-chat-text:before{border-left-color:#dd4b39}.direct-chat-primary .right>.direct-chat-text{background:#3c8dbc;border-color:#3c8dbc;color:#fff}.direct-chat-primary .right>.direct-chat-text:after,.direct-chat-primary .right>.direct-chat-text:before{border-left-color:#3c8dbc}.direct-chat-warning .right>.direct-chat-text{background:#f39c12;border-color:#f39c12;color:#fff}.direct-chat-warning .right>.direct-chat-text:after,.direct-chat-warning .right>.direct-chat-text:before{border-left-color:#f39c12}.direct-chat-info .right>.direct-chat-text{background:#00c0ef;border-color:#00c0ef;color:#fff}.direct-chat-info .right>.direct-chat-text:after,.direct-chat-info .right>.direct-chat-text:before{border-left-color:#00c0ef}.direct-chat-success .right>.direct-chat-text{background:#00a65a;border-color:#00a65a;color:#fff}.direct-chat-success .right>.direct-chat-text:after,.direct-chat-success .right>.direct-chat-text:before{border-left-color:#00a65a}.users-list>li{width:25%;float:left;padding:10px;text-align:center}.users-list>li img{border-radius:50%;max-width:100%;height:auto}.users-list>li>a:hover,.users-list>li>a:hover .users-list-name{color:#999}.users-list-name,.users-list-date{display:block}.users-list-name{font-weight:600;color:#444;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.users-list-date{color:#999;font-size:12px}.carousel-control{background-image:none!important}.carousel-control>.fa{font-size:40px;position:absolute;top:50%;z-index:5;display:inline-block;margin-top:-20px}.modal{background:rgba(0,0,0,0.3)}.modal-content{border-radius:0;-webkit-box-shadow:0 2px 3px rgba(0,0,0,0.125) !important;box-shadow:0 2px 3px rgba(0,0,0,0.125) !important;border:0}@media (min-width:768px){.modal-content{-webkit-box-shadow:0 2px 3px rgba(0,0,0,0.125) !important;box-shadow:0 2px 3px rgba(0,0,0,0.125) !important}}.modal-header{border-bottom-color:#f4f4f4}.modal-footer{border-top-color:#f4f4f4}.modal-primary .modal-header,.modal-primary .modal-footer{border-color:#307095}.modal-warning .modal-header,.modal-warning .modal-footer{border-color:#c87f0a}.modal-info .modal-header,.modal-info .modal-footer{border-color:#0097bc}.modal-success .modal-header,.modal-success .modal-footer{border-color:#00733e}.modal-danger .modal-header,.modal-danger .modal-footer{border-color:#c23321}.mailbox-messages>.table{margin:0}.mailbox-controls{padding:5px}.mailbox-controls.with-border{border-bottom:1px solid #f4f4f4}.mailbox-read-info{border-bottom:1px solid #f4f4f4;padding:10px}.mailbox-read-info h3{font-size:20px;margin:0}.mailbox-read-info h5{margin:0;padding:5px 0 0 0}.mailbox-read-time{color:#999;font-size:13px}.mailbox-read-message{padding:10px}.mailbox-attachments li{float:left;width:200px;border:1px solid #eee;margin-bottom:10px;margin-right:10px}.mailbox-attachment-name{font-weight:bold;color:#666}.mailbox-attachment-icon,.mailbox-attachment-info,.mailbox-attachment-size{display:block}.mailbox-attachment-info{padding:10px;background:#f4f4f4}.mailbox-attachment-size{color:#999;font-size:12px}.mailbox-attachment-icon{text-align:center;font-size:65px;color:#666;padding:20px 10px}.mailbox-attachment-icon.has-img{padding:0}.mailbox-attachment-icon.has-img>img{max-width:100%;height:auto}.lockscreen{background:#d2d6de}.lockscreen-logo{font-size:35px;text-align:center;margin-bottom:25px;font-weight:300}.lockscreen-logo a{color:#444}.lockscreen-wrapper{max-width:400px;margin:0 auto;margin-top:10%}.lockscreen .lockscreen-name{text-align:center;font-weight:600}.lockscreen-item{border-radius:4px;padding:0;background:#fff;position:relative;margin:10px auto 30px auto;width:290px}.lockscreen-image{border-radius:50%;position:absolute;left:-10px;top:-25px;background:#fff;padding:5px;z-index:10}.lockscreen-image>img{border-radius:50%;width:70px;height:70px}.lockscreen-credentials{margin-left:70px}.lockscreen-credentials .form-control{border:0 !important}.lockscreen-credentials .btn{background-color:#fff;border:0;padding:0 10px}.lockscreen-footer{margin-top:10px}.login-logo,.register-logo{font-size:35px;text-align:center;margin-bottom:25px;font-weight:300}.login-logo a,.register-logo a{color:#444}.login-page,.register-page{background:#d2d6de}.login-box,.register-box{width:360px;margin:7% auto}@media (max-width:768px){.login-box,.register-box{width:90%;margin-top:20px}}.login-box-body,.register-box-body{background:#fff;padding:20px;color:#444;border-top:0;color:#666}.login-box-body .form-control-feedback,.register-box-body .form-control-feedback{color:#777}.login-box-msg,.register-box-msg{margin:0;text-align:center;padding:0 20px 20px 20px}.social-auth-links{margin:10px 0}.error-page{width:600px;margin:20px auto 0 auto}@media (max-width:991px){.error-page{width:100%}}.error-page>.headline{float:left;font-size:100px;font-weight:300}@media (max-width:991px){.error-page>.headline{float:none;text-align:center}}.error-page>.error-content{margin-left:190px;display:block}@media (max-width:991px){.error-page>.error-content{margin-left:0}}.error-page>.error-content>h3{font-weight:300;font-size:25px}@media (max-width:991px){.error-page>.error-content>h3{text-align:center}}.invoice{position:relative;background:#fff;border:1px solid #f4f4f4;padding:20px;margin:10px 25px}.invoice-title{margin-top:0}.btn-social{position:relative;padding-left:44px !important;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.btn-social :first-child{position:absolute;left:0;top:0;bottom:0;width:32px !important;line-height:34px !important;font-size:1.6em!important;text-align:center;border-right:1px solid rgba(0,0,0,0.2)}.btn-social.btn-lg{padding-left:61px !important}.btn-social.btn-lg :first-child{line-height:45px;width:45px;font-size:1.8em}.btn-social.btn-sm{padding-left:38px !important}.btn-social.btn-sm :first-child{line-height:28px;width:28px;font-size:1.4em}.btn-social.btn-xs{padding-left:30px !important}.btn-social.btn-xs :first-child{line-height:20px;width:20px;font-size:1.2em}.btn-social-icon{position:relative;padding-left:44px !important;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;height:34px;width:34px;padding:0}.btn-social-icon :first-child{position:absolute;left:0;top:0;bottom:0;width:32px !important;line-height:34px !important;font-size:1.6em!important;text-align:center;border-right:1px solid rgba(0,0,0,0.2)}.btn-social-icon.btn-lg{padding-left:61px !important}.btn-social-icon.btn-lg :first-child{line-height:45px;width:45px;font-size:1.8em}.btn-social-icon.btn-sm{padding-left:38px !important}.btn-social-icon.btn-sm :first-child{line-height:28px;width:28px;font-size:1.4em}.btn-social-icon.btn-xs{padding-left:30px !important}.btn-social-icon.btn-xs :first-child{line-height:20px;width:20px;font-size:1.2em}.btn-social-icon :first-child{border:none;text-align:center;width:100%!important}.btn-social-icon.btn-lg{height:45px;width:45px;padding-left:0;padding-right:0}.btn-social-icon.btn-sm{height:30px;width:30px;padding-left:0;padding-right:0}.btn-social-icon.btn-xs{height:22px;width:22px;padding-left:0;padding-right:0}.btn-bitbucket{color:#fff;background-color:#205081;border-color:rgba(0,0,0,0.2)}.btn-bitbucket:hover,.btn-bitbucket:focus,.btn-bitbucket.focus,.btn-bitbucket:active,.btn-bitbucket.active,.open>.dropdown-toggle.btn-bitbucket{color:#fff;background-color:#163758;border-color:rgba(0,0,0,0.2)}.btn-bitbucket:active,.btn-bitbucket.active,.open>.dropdown-toggle.btn-bitbucket{background-image:none}.btn-bitbucket.disabled,.btn-bitbucket[disabled],fieldset[disabled] .btn-bitbucket,.btn-bitbucket.disabled:hover,.btn-bitbucket[disabled]:hover,fieldset[disabled] .btn-bitbucket:hover,.btn-bitbucket.disabled:focus,.btn-bitbucket[disabled]:focus,fieldset[disabled] .btn-bitbucket:focus,.btn-bitbucket.disabled.focus,.btn-bitbucket[disabled].focus,fieldset[disabled] .btn-bitbucket.focus,.btn-bitbucket.disabled:active,.btn-bitbucket[disabled]:active,fieldset[disabled] .btn-bitbucket:active,.btn-bitbucket.disabled.active,.btn-bitbucket[disabled].active,fieldset[disabled] .btn-bitbucket.active{background-color:#205081;border-color:rgba(0,0,0,0.2)}.btn-bitbucket .badge{color:#205081;background-color:#fff}.btn-dropbox{color:#fff;background-color:#1087dd;border-color:rgba(0,0,0,0.2)}.btn-dropbox:hover,.btn-dropbox:focus,.btn-dropbox.focus,.btn-dropbox:active,.btn-dropbox.active,.open>.dropdown-toggle.btn-dropbox{color:#fff;background-color:#0d6aad;border-color:rgba(0,0,0,0.2)}.btn-dropbox:active,.btn-dropbox.active,.open>.dropdown-toggle.btn-dropbox{background-image:none}.btn-dropbox.disabled,.btn-dropbox[disabled],fieldset[disabled] .btn-dropbox,.btn-dropbox.disabled:hover,.btn-dropbox[disabled]:hover,fieldset[disabled] .btn-dropbox:hover,.btn-dropbox.disabled:focus,.btn-dropbox[disabled]:focus,fieldset[disabled] .btn-dropbox:focus,.btn-dropbox.disabled.focus,.btn-dropbox[disabled].focus,fieldset[disabled] .btn-dropbox.focus,.btn-dropbox.disabled:active,.btn-dropbox[disabled]:active,fieldset[disabled] .btn-dropbox:active,.btn-dropbox.disabled.active,.btn-dropbox[disabled].active,fieldset[disabled] .btn-dropbox.active{background-color:#1087dd;border-color:rgba(0,0,0,0.2)}.btn-dropbox .badge{color:#1087dd;background-color:#fff}.btn-facebook{color:#fff;background-color:#3b5998;border-color:rgba(0,0,0,0.2)}.btn-facebook:hover,.btn-facebook:focus,.btn-facebook.focus,.btn-facebook:active,.btn-facebook.active,.open>.dropdown-toggle.btn-facebook{color:#fff;background-color:#2d4373;border-color:rgba(0,0,0,0.2)}.btn-facebook:active,.btn-facebook.active,.open>.dropdown-toggle.btn-facebook{background-image:none}.btn-facebook.disabled,.btn-facebook[disabled],fieldset[disabled] .btn-facebook,.btn-facebook.disabled:hover,.btn-facebook[disabled]:hover,fieldset[disabled] .btn-facebook:hover,.btn-facebook.disabled:focus,.btn-facebook[disabled]:focus,fieldset[disabled] .btn-facebook:focus,.btn-facebook.disabled.focus,.btn-facebook[disabled].focus,fieldset[disabled] .btn-facebook.focus,.btn-facebook.disabled:active,.btn-facebook[disabled]:active,fieldset[disabled] .btn-facebook:active,.btn-facebook.disabled.active,.btn-facebook[disabled].active,fieldset[disabled] .btn-facebook.active{background-color:#3b5998;border-color:rgba(0,0,0,0.2)}.btn-facebook .badge{color:#3b5998;background-color:#fff}.btn-flickr{color:#fff;background-color:#ff0084;border-color:rgba(0,0,0,0.2)}.btn-flickr:hover,.btn-flickr:focus,.btn-flickr.focus,.btn-flickr:active,.btn-flickr.active,.open>.dropdown-toggle.btn-flickr{color:#fff;background-color:#cc006a;border-color:rgba(0,0,0,0.2)}.btn-flickr:active,.btn-flickr.active,.open>.dropdown-toggle.btn-flickr{background-image:none}.btn-flickr.disabled,.btn-flickr[disabled],fieldset[disabled] .btn-flickr,.btn-flickr.disabled:hover,.btn-flickr[disabled]:hover,fieldset[disabled] .btn-flickr:hover,.btn-flickr.disabled:focus,.btn-flickr[disabled]:focus,fieldset[disabled] .btn-flickr:focus,.btn-flickr.disabled.focus,.btn-flickr[disabled].focus,fieldset[disabled] .btn-flickr.focus,.btn-flickr.disabled:active,.btn-flickr[disabled]:active,fieldset[disabled] .btn-flickr:active,.btn-flickr.disabled.active,.btn-flickr[disabled].active,fieldset[disabled] .btn-flickr.active{background-color:#ff0084;border-color:rgba(0,0,0,0.2)}.btn-flickr .badge{color:#ff0084;background-color:#fff}.btn-foursquare{color:#fff;background-color:#0072b1;border-color:rgba(0,0,0,0.2)}.btn-foursquare:hover,.btn-foursquare:focus,.btn-foursquare.focus,.btn-foursquare:active,.btn-foursquare.active,.open>.dropdown-toggle.btn-foursquare{color:#fff;background-color:#00517e;border-color:rgba(0,0,0,0.2)}.btn-foursquare:active,.btn-foursquare.active,.open>.dropdown-toggle.btn-foursquare{background-image:none}.btn-foursquare.disabled,.btn-foursquare[disabled],fieldset[disabled] .btn-foursquare,.btn-foursquare.disabled:hover,.btn-foursquare[disabled]:hover,fieldset[disabled] .btn-foursquare:hover,.btn-foursquare.disabled:focus,.btn-foursquare[disabled]:focus,fieldset[disabled] .btn-foursquare:focus,.btn-foursquare.disabled.focus,.btn-foursquare[disabled].focus,fieldset[disabled] .btn-foursquare.focus,.btn-foursquare.disabled:active,.btn-foursquare[disabled]:active,fieldset[disabled] .btn-foursquare:active,.btn-foursquare.disabled.active,.btn-foursquare[disabled].active,fieldset[disabled] .btn-foursquare.active{background-color:#0072b1;border-color:rgba(0,0,0,0.2)}.btn-foursquare .badge{color:#0072b1;background-color:#fff}.btn-github{color:#fff;background-color:#444;border-color:rgba(0,0,0,0.2)}.btn-github:hover,.btn-github:focus,.btn-github.focus,.btn-github:active,.btn-github.active,.open>.dropdown-toggle.btn-github{color:#fff;background-color:#2b2b2b;border-color:rgba(0,0,0,0.2)}.btn-github:active,.btn-github.active,.open>.dropdown-toggle.btn-github{background-image:none}.btn-github.disabled,.btn-github[disabled],fieldset[disabled] .btn-github,.btn-github.disabled:hover,.btn-github[disabled]:hover,fieldset[disabled] .btn-github:hover,.btn-github.disabled:focus,.btn-github[disabled]:focus,fieldset[disabled] .btn-github:focus,.btn-github.disabled.focus,.btn-github[disabled].focus,fieldset[disabled] .btn-github.focus,.btn-github.disabled:active,.btn-github[disabled]:active,fieldset[disabled] .btn-github:active,.btn-github.disabled.active,.btn-github[disabled].active,fieldset[disabled] .btn-github.active{background-color:#444;border-color:rgba(0,0,0,0.2)}.btn-github .badge{color:#444;background-color:#fff}.btn-google-plus{color:#fff;background-color:#dd4b39;border-color:rgba(0,0,0,0.2)}.btn-google-plus:hover,.btn-google-plus:focus,.btn-google-plus.focus,.btn-google-plus:active,.btn-google-plus.active,.open>.dropdown-toggle.btn-google-plus{color:#fff;background-color:#c23321;border-color:rgba(0,0,0,0.2)}.btn-google-plus:active,.btn-google-plus.active,.open>.dropdown-toggle.btn-google-plus{background-image:none}.btn-google-plus.disabled,.btn-google-plus[disabled],fieldset[disabled] .btn-google-plus,.btn-google-plus.disabled:hover,.btn-google-plus[disabled]:hover,fieldset[disabled] .btn-google-plus:hover,.btn-google-plus.disabled:focus,.btn-google-plus[disabled]:focus,fieldset[disabled] .btn-google-plus:focus,.btn-google-plus.disabled.focus,.btn-google-plus[disabled].focus,fieldset[disabled] .btn-google-plus.focus,.btn-google-plus.disabled:active,.btn-google-plus[disabled]:active,fieldset[disabled] .btn-google-plus:active,.btn-google-plus.disabled.active,.btn-google-plus[disabled].active,fieldset[disabled] .btn-google-plus.active{background-color:#dd4b39;border-color:rgba(0,0,0,0.2)}.btn-google-plus .badge{color:#dd4b39;background-color:#fff}.btn-instagram{color:#fff;background-color:#3f729b;border-color:rgba(0,0,0,0.2)}.btn-instagram:hover,.btn-instagram:focus,.btn-instagram.focus,.btn-instagram:active,.btn-instagram.active,.open>.dropdown-toggle.btn-instagram{color:#fff;background-color:#305777;border-color:rgba(0,0,0,0.2)}.btn-instagram:active,.btn-instagram.active,.open>.dropdown-toggle.btn-instagram{background-image:none}.btn-instagram.disabled,.btn-instagram[disabled],fieldset[disabled] .btn-instagram,.btn-instagram.disabled:hover,.btn-instagram[disabled]:hover,fieldset[disabled] .btn-instagram:hover,.btn-instagram.disabled:focus,.btn-instagram[disabled]:focus,fieldset[disabled] .btn-instagram:focus,.btn-instagram.disabled.focus,.btn-instagram[disabled].focus,fieldset[disabled] .btn-instagram.focus,.btn-instagram.disabled:active,.btn-instagram[disabled]:active,fieldset[disabled] .btn-instagram:active,.btn-instagram.disabled.active,.btn-instagram[disabled].active,fieldset[disabled] .btn-instagram.active{background-color:#3f729b;border-color:rgba(0,0,0,0.2)}.btn-instagram .badge{color:#3f729b;background-color:#fff}.btn-linkedin{color:#fff;background-color:#007bb6;border-color:rgba(0,0,0,0.2)}.btn-linkedin:hover,.btn-linkedin:focus,.btn-linkedin.focus,.btn-linkedin:active,.btn-linkedin.active,.open>.dropdown-toggle.btn-linkedin{color:#fff;background-color:#005983;border-color:rgba(0,0,0,0.2)}.btn-linkedin:active,.btn-linkedin.active,.open>.dropdown-toggle.btn-linkedin{background-image:none}.btn-linkedin.disabled,.btn-linkedin[disabled],fieldset[disabled] .btn-linkedin,.btn-linkedin.disabled:hover,.btn-linkedin[disabled]:hover,fieldset[disabled] .btn-linkedin:hover,.btn-linkedin.disabled:focus,.btn-linkedin[disabled]:focus,fieldset[disabled] .btn-linkedin:focus,.btn-linkedin.disabled.focus,.btn-linkedin[disabled].focus,fieldset[disabled] .btn-linkedin.focus,.btn-linkedin.disabled:active,.btn-linkedin[disabled]:active,fieldset[disabled] .btn-linkedin:active,.btn-linkedin.disabled.active,.btn-linkedin[disabled].active,fieldset[disabled] .btn-linkedin.active{background-color:#007bb6;border-color:rgba(0,0,0,0.2)}.btn-linkedin .badge{color:#007bb6;background-color:#fff}.btn-tumblr{color:#fff;background-color:#2c4762;border-color:rgba(0,0,0,0.2)}.btn-tumblr:hover,.btn-tumblr:focus,.btn-tumblr.focus,.btn-tumblr:active,.btn-tumblr.active,.open>.dropdown-toggle.btn-tumblr{color:#fff;background-color:#1c2d3f;border-color:rgba(0,0,0,0.2)}.btn-tumblr:active,.btn-tumblr.active,.open>.dropdown-toggle.btn-tumblr{background-image:none}.btn-tumblr.disabled,.btn-tumblr[disabled],fieldset[disabled] .btn-tumblr,.btn-tumblr.disabled:hover,.btn-tumblr[disabled]:hover,fieldset[disabled] .btn-tumblr:hover,.btn-tumblr.disabled:focus,.btn-tumblr[disabled]:focus,fieldset[disabled] .btn-tumblr:focus,.btn-tumblr.disabled.focus,.btn-tumblr[disabled].focus,fieldset[disabled] .btn-tumblr.focus,.btn-tumblr.disabled:active,.btn-tumblr[disabled]:active,fieldset[disabled] .btn-tumblr:active,.btn-tumblr.disabled.active,.btn-tumblr[disabled].active,fieldset[disabled] .btn-tumblr.active{background-color:#2c4762;border-color:rgba(0,0,0,0.2)}.btn-tumblr .badge{color:#2c4762;background-color:#fff}.btn-twitter{color:#fff;background-color:#55acee;border-color:rgba(0,0,0,0.2)}.btn-twitter:hover,.btn-twitter:focus,.btn-twitter.focus,.btn-twitter:active,.btn-twitter.active,.open>.dropdown-toggle.btn-twitter{color:#fff;background-color:#2795e9;border-color:rgba(0,0,0,0.2)}.btn-twitter:active,.btn-twitter.active,.open>.dropdown-toggle.btn-twitter{background-image:none}.btn-twitter.disabled,.btn-twitter[disabled],fieldset[disabled] .btn-twitter,.btn-twitter.disabled:hover,.btn-twitter[disabled]:hover,fieldset[disabled] .btn-twitter:hover,.btn-twitter.disabled:focus,.btn-twitter[disabled]:focus,fieldset[disabled] .btn-twitter:focus,.btn-twitter.disabled.focus,.btn-twitter[disabled].focus,fieldset[disabled] .btn-twitter.focus,.btn-twitter.disabled:active,.btn-twitter[disabled]:active,fieldset[disabled] .btn-twitter:active,.btn-twitter.disabled.active,.btn-twitter[disabled].active,fieldset[disabled] .btn-twitter.active{background-color:#55acee;border-color:rgba(0,0,0,0.2)}.btn-twitter .badge{color:#55acee;background-color:#fff}.btn-vk{color:#fff;background-color:#587ea3;border-color:rgba(0,0,0,0.2)}.btn-vk:hover,.btn-vk:focus,.btn-vk.focus,.btn-vk:active,.btn-vk.active,.open>.dropdown-toggle.btn-vk{color:#fff;background-color:#466482;border-color:rgba(0,0,0,0.2)}.btn-vk:active,.btn-vk.active,.open>.dropdown-toggle.btn-vk{background-image:none}.btn-vk.disabled,.btn-vk[disabled],fieldset[disabled] .btn-vk,.btn-vk.disabled:hover,.btn-vk[disabled]:hover,fieldset[disabled] .btn-vk:hover,.btn-vk.disabled:focus,.btn-vk[disabled]:focus,fieldset[disabled] .btn-vk:focus,.btn-vk.disabled.focus,.btn-vk[disabled].focus,fieldset[disabled] .btn-vk.focus,.btn-vk.disabled:active,.btn-vk[disabled]:active,fieldset[disabled] .btn-vk:active,.btn-vk.disabled.active,.btn-vk[disabled].active,fieldset[disabled] .btn-vk.active{background-color:#587ea3;border-color:rgba(0,0,0,0.2)}.btn-vk .badge{color:#587ea3;background-color:#fff}.fc-button{background:#f4f4f4;background-image:none;color:#444;border-color:#ddd;border-bottom-color:#ddd}.fc-button:hover,.fc-button:active,.fc-button.hover{background-color:#e9e9e9}.fc-header-title h2{font-size:15px;line-height:1.6em;color:#666;margin-left:10px}.fc-header-right{padding-right:10px}.fc-header-left{padding-left:10px}.fc-widget-header{background:#fafafa}.fc-grid{width:100%;border:0}.fc-widget-header:first-of-type,.fc-widget-content:first-of-type{border-left:0;border-right:0}.fc-widget-header:last-of-type,.fc-widget-content:last-of-type{border-right:0}.fc-toolbar{padding:10px;margin:0}.fc-day-number{font-size:20px;font-weight:300;padding-right:10px}.fc-color-picker{list-style:none;margin:0;padding:0}.fc-color-picker>li{float:left;font-size:30px;margin-right:5px;line-height:30px}.fc-color-picker>li .fa{-webkit-transition:-webkit-transform linear .3s;-moz-transition:-moz-transform linear .3s;-o-transition:-o-transform linear .3s;transition:transform linear .3s}.fc-color-picker>li .fa:hover{-webkit-transform:rotate(30deg);-ms-transform:rotate(30deg);-o-transform:rotate(30deg);transform:rotate(30deg)}#add-new-event{-webkit-transition:all linear .3s;-o-transition:all linear .3s;transition:all linear .3s}.external-event{padding:5px 10px;font-weight:bold;margin-bottom:4px;box-shadow:0 1px 1px rgba(0,0,0,0.1);text-shadow:0 1px 1px rgba(0,0,0,0.1);border-radius:3px;cursor:move}.external-event:hover{box-shadow:inset 0 0 90px rgba(0,0,0,0.2)}.pad{padding:10px}.margin{margin:10px}.margin-bottom{margin-bottom:20px}.inline{display:inline;width:auto}.description-block{display:block;margin:10px 0;text-align:center}.description-block.margin-bottom{margin-bottom:25px}.description-block>.description-header{margin:0;padding:0;font-weight:600;font-size:16px}.description-block>.description-text{text-transform:uppercase}.bg-red,.bg-yellow,.bg-aqua,.bg-blue,.bg-light-blue,.bg-green,.bg-navy,.bg-teal,.bg-olive,.bg-lime,.bg-orange,.bg-fuchsia,.bg-purple,.bg-maroon,.bg-black,.bg-red-active,.bg-yellow-active,.bg-aqua-active,.bg-blue-active,.bg-light-blue-active,.bg-green-active,.bg-navy-active,.bg-teal-active,.bg-olive-active,.bg-lime-active,.bg-orange-active,.bg-fuchsia-active,.bg-purple-active,.bg-maroon-active,.bg-black-active,.callout.callout-danger,.callout.callout-warning,.callout.callout-info,.callout.callout-success,.alert-success,.alert-danger,.alert-error,.alert-warning,.alert-info,.label-danger,.label-info,.label-waring,.label-primary,.label-success,.modal-primary .modal-body,.modal-primary .modal-header,.modal-primary .modal-footer,.modal-warning .modal-body,.modal-warning .modal-header,.modal-warning .modal-footer,.modal-info .modal-body,.modal-info .modal-header,.modal-info .modal-footer,.modal-success .modal-body,.modal-success .modal-header,.modal-success .modal-footer,.modal-danger .modal-body,.modal-danger .modal-header,.modal-danger .modal-footer{color:#fff !important}.bg-gray{color:#000;background-color:#d2d6de !important}.bg-black{background-color:#111 !important}.bg-red,.callout.callout-danger,.alert-danger,.alert-error,.label-danger,.modal-danger .modal-body{background-color:#dd4b39 !important}.bg-yellow,.callout.callout-warning,.alert-warning,.label-waring,.modal-warning .modal-body{background-color:#f39c12 !important}.bg-aqua,.callout.callout-info,.alert-info,.label-info,.modal-info .modal-body{background-color:#00c0ef !important}.bg-blue{background-color:#0073b7 !important}.bg-light-blue,.label-primary,.modal-primary .modal-body{background-color:#3c8dbc !important}.bg-green,.callout.callout-success,.alert-success,.label-success,.modal-success .modal-body{background-color:#00a65a !important}.bg-navy{background-color:#001f3f !important}.bg-teal{background-color:#39cccc !important}.bg-olive{background-color:#3d9970 !important}.bg-lime{background-color:#01ff70 !important}.bg-orange{background-color:#ff851b !important}.bg-fuchsia{background-color:#f012be !important}.bg-purple{background-color:#605ca8 !important}.bg-maroon{background-color:#d81b60 !important}.bg-gray-active{color:#000;background-color:#b5bbc8 !important}.bg-black-active{background-color:#000 !important}.bg-red-active,.modal-danger .modal-header,.modal-danger .modal-footer{background-color:#d33724 !important}.bg-yellow-active,.modal-warning .modal-header,.modal-warning .modal-footer{background-color:#db8b0b !important}.bg-aqua-active,.modal-info .modal-header,.modal-info .modal-footer{background-color:#00a7d0 !important}.bg-blue-active{background-color:#005384 !important}.bg-light-blue-active,.modal-primary .modal-header,.modal-primary .modal-footer{background-color:#357ca5 !important}.bg-green-active,.modal-success .modal-header,.modal-success .modal-footer{background-color:#008d4c !important}.bg-navy-active{background-color:#001a35 !important}.bg-teal-active{background-color:#30bbbb !important}.bg-olive-active{background-color:#368763 !important}.bg-lime-active{background-color:#00e765 !important}.bg-orange-active{background-color:#ff7701 !important}.bg-fuchsia-active{background-color:#db0ead !important}.bg-purple-active{background-color:#555299 !important}.bg-maroon-active{background-color:#ca195a !important}[class^="bg-"].disabled{opacity:.65;filter:alpha(opacity=65)}.text-red{color:#dd4b39 !important}.text-yellow{color:#f39c12 !important}.text-aqua{color:#00c0ef !important}.text-blue{color:#0073b7 !important}.text-black{color:#111 !important}.text-light-blue{color:#3c8dbc !important}.text-green{color:#00a65a !important}.text-gray{color:#d2d6de !important}.text-navy{color:#001f3f !important}.text-teal{color:#39cccc !important}.text-olive{color:#3d9970 !important}.text-lime{color:#01ff70 !important}.text-orange{color:#ff851b !important}.text-fuchsia{color:#f012be !important}.text-purple{color:#605ca8 !important}.text-maroon{color:#d81b60 !important}.hide{display:none !important}.no-border{border:0px !important}.no-padding{padding:0px !important}.no-margin{margin:0px !important}.no-shadow{box-shadow:none!important}.list-unstyled,.chart-legend,.contacts-list,.users-list,.mailbox-attachments{list-style:none;margin:0;padding:0}.flat{border-radius:0 !important}.text-bold,.text-bold.table td,.text-bold.table th{font-weight:700}.jqstooltip{padding:5px!important;width:auto!important;height:auto!important}.bg-teal-gradient{background:#39cccc !important;background:-webkit-gradient(linear, left bottom, left top, color-stop(0, #39cccc), color-stop(1, #7adddd)) !important;background:-ms-linear-gradient(bottom, #39cccc, #7adddd) !important;background:-moz-linear-gradient(center bottom, #39cccc 0, #7adddd 100%) !important;background:-o-linear-gradient(#7adddd, #39cccc) !important;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#7adddd', endColorstr='#39cccc', GradientType=0) !important;color:#fff}.bg-light-blue-gradient{background:#3c8dbc !important;background:-webkit-gradient(linear, left bottom, left top, color-stop(0, #3c8dbc), color-stop(1, #67a8ce)) !important;background:-ms-linear-gradient(bottom, #3c8dbc, #67a8ce) !important;background:-moz-linear-gradient(center bottom, #3c8dbc 0, #67a8ce 100%) !important;background:-o-linear-gradient(#67a8ce, #3c8dbc) !important;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#67a8ce', endColorstr='#3c8dbc', GradientType=0) !important;color:#fff}.bg-blue-gradient{background:#0073b7 !important;background:-webkit-gradient(linear, left bottom, left top, color-stop(0, #0073b7), color-stop(1, #0089db)) !important;background:-ms-linear-gradient(bottom, #0073b7, #0089db) !important;background:-moz-linear-gradient(center bottom, #0073b7 0, #0089db 100%) !important;background:-o-linear-gradient(#0089db, #0073b7) !important;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#0089db', endColorstr='#0073b7', GradientType=0) !important;color:#fff}.bg-aqua-gradient{background:#00c0ef !important;background:-webkit-gradient(linear, left bottom, left top, color-stop(0, #00c0ef), color-stop(1, #14d1ff)) !important;background:-ms-linear-gradient(bottom, #00c0ef, #14d1ff) !important;background:-moz-linear-gradient(center bottom, #00c0ef 0, #14d1ff 100%) !important;background:-o-linear-gradient(#14d1ff, #00c0ef) !important;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#14d1ff', endColorstr='#00c0ef', GradientType=0) !important;color:#fff}.bg-yellow-gradient{background:#f39c12 !important;background:-webkit-gradient(linear, left bottom, left top, color-stop(0, #f39c12), color-stop(1, #f7bc60)) !important;background:-ms-linear-gradient(bottom, #f39c12, #f7bc60) !important;background:-moz-linear-gradient(center bottom, #f39c12 0, #f7bc60 100%) !important;background:-o-linear-gradient(#f7bc60, #f39c12) !important;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#f7bc60', endColorstr='#f39c12', GradientType=0) !important;color:#fff}.bg-purple-gradient{background:#605ca8 !important;background:-webkit-gradient(linear, left bottom, left top, color-stop(0, #605ca8), color-stop(1, #9491c4)) !important;background:-ms-linear-gradient(bottom, #605ca8, #9491c4) !important;background:-moz-linear-gradient(center bottom, #605ca8 0, #9491c4 100%) !important;background:-o-linear-gradient(#9491c4, #605ca8) !important;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#9491c4', endColorstr='#605ca8', GradientType=0) !important;color:#fff}.bg-green-gradient{background:#00a65a !important;background:-webkit-gradient(linear, left bottom, left top, color-stop(0, #00a65a), color-stop(1, #00ca6d)) !important;background:-ms-linear-gradient(bottom, #00a65a, #00ca6d) !important;background:-moz-linear-gradient(center bottom, #00a65a 0, #00ca6d 100%) !important;background:-o-linear-gradient(#00ca6d, #00a65a) !important;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#00ca6d', endColorstr='#00a65a', GradientType=0) !important;color:#fff}.bg-red-gradient{background:#dd4b39 !important;background:-webkit-gradient(linear, left bottom, left top, color-stop(0, #dd4b39), color-stop(1, #e47365)) !important;background:-ms-linear-gradient(bottom, #dd4b39, #e47365) !important;background:-moz-linear-gradient(center bottom, #dd4b39 0, #e47365 100%) !important;background:-o-linear-gradient(#e47365, #dd4b39) !important;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#e47365', endColorstr='#dd4b39', GradientType=0) !important;color:#fff}.bg-black-gradient{background:#111 !important;background:-webkit-gradient(linear, left bottom, left top, color-stop(0, #111), color-stop(1, #2b2b2b)) !important;background:-ms-linear-gradient(bottom, #111, #2b2b2b) !important;background:-moz-linear-gradient(center bottom, #111 0, #2b2b2b 100%) !important;background:-o-linear-gradient(#2b2b2b, #111) !important;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#2b2b2b', endColorstr='#111111', GradientType=0) !important;color:#fff}.bg-maroon-gradient{background:#d81b60 !important;background:-webkit-gradient(linear, left bottom, left top, color-stop(0, #d81b60), color-stop(1, #e73f7c)) !important;background:-ms-linear-gradient(bottom, #d81b60, #e73f7c) !important;background:-moz-linear-gradient(center bottom, #d81b60 0, #e73f7c 100%) !important;background:-o-linear-gradient(#e73f7c, #d81b60) !important;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#e73f7c', endColorstr='#d81b60', GradientType=0) !important;color:#fff}.connectedSortable{min-height:100px}.ui-helper-hidden-accessible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.sort-highlight{background:#f4f4f4;border:1px dashed #ddd;margin-bottom:10px}.full-opacity-hover{opacity:.65;filter:alpha(opacity=65)}.full-opacity-hover:hover{opacity:1;filter:alpha(opacity=100)}.chart{position:relative;overflow:hidden;width:100%}.chart svg,.chart canvas{width:100%!important}@media print{.no-print,.main-sidebar,.left-side,.main-header,.content-header{display:none!important}.content-wrapper,.right-side,.main-footer{margin-left:0!important;min-height:0!important;-webkit-transform:translate(0, 0) !important;-ms-transform:translate(0, 0) !important;-o-transform:translate(0, 0) !important;transform:translate(0, 0) !important}.fixed .content-wrapper,.fixed .right-side{padding-top:0!important}.invoice{width:100%;border:0;margin:0;padding:0}.invoice-col{float:left;width:33.3333333%}.table-responsive{overflow:auto}.table-responsive>.table tr th,.table-responsive>.table tr td{white-space:normal!important}} \ No newline at end of file diff --git a/code/dist/css/app.css b/code/dist/css/app.css new file mode 100644 index 000000000..13754bd85 --- /dev/null +++ b/code/dist/css/app.css @@ -0,0 +1,1588 @@ +/* + * Stylesheet : NonKnow + * Version : 1.0 + * Author : http://toserblog.net/ + * ----------------------------------------------------------------------------------- + */ + +/*-----------------------------------------------------------------------------------*/ +/* Table of Contents: +/* 0.0 - Commons +/* 1.0 - Bootstrap Custom +/* 1.1 - Button +/* 1.2 - Pagination +/* 1.3 - Alert +/* 1.4 - Breadcrumb +/* 2.0 - Repeatable Patterns +/* 3.0 - Basic Structure +/* 4.0 - Header +/* 4.1 - Site Header +/* 4.2 - Navigation +/* 4.3 - Search Form +/* 5.0 - Content +/* 5.1 - Entry Attributes +/* 5.2 - Archives +/* 5.3 - Homepage +/* 5.4 - 404 +/* 5.5 - Comments +/* 6.0 - Widgets +/* 7.0 - Footer +/* 7.1 - Site Footer +/* 7.2 - Twitter Feed +/* 8.0 - Media Queries +/* 9.0 - Print +/*-----------------------------------------------------------------------------------*/ + + +/* Google WebFonts */ +@import url(http://fonts.googleapis.com/css?family=Open+Sans:300,300italic,400,400italic,600,600italic,700,700italic); + + +/*-----------------------------------------------------------------------------------*/ +/* 0.0 - Commons +/*-----------------------------------------------------------------------------------*/ + +::selection { + background: #b00; + color: #fff; +} +::-moz-selection { + background: #b00; + color: #fff; +} +body { + font-family: 'Open Sans', sans-serif; + background: #fcfcfc; +} + +a { + color: #009aba; +} +a:focus, +a:hover { + color: #009aba; +} + +img { + max-width: 100%; + height: auto; +} + +pre { + padding-top: 5.5px; + background-color: rgba(0, 0, 0, 0.01); + border-top-width: 5px; + border-color: #eee; + border-radius: 0; +} +pre:hover { + border-color: #ddd; +} + +h1, +h2, +h3, +h4, +h5, +h6, +.h1, +.h2, +.h3, +.h4, +.h5, +.h6 { + font-family: inherit; + font-weight: 600; +} + + +/*-----------------------------------------------------------------------------------*/ +/* 1.0 - Bootstrap Custom +/*-----------------------------------------------------------------------------------*/ + +/* 1.1 - Button +/*-----------------------------------------------------------------------------------*/ + +.btn-custom { + font-weight: 600; + text-transform: uppercase; + color: #fff; + background-color: #009aba; + border-color: #00c0ef; +} +.btn-custom:hover, +.btn-custom:focus, +.btn-custom:active, +.btn-custom.active, +.open .dropdown-toggle.btn-custom { + color: #fff; + background-color: #00c0ef; + border-color: #00c0ef; +} +.btn-custom:active, +.btn-custom.active, +.open .dropdown-toggle.btn-custom { + background-image: none; +} +.btn-custom.disabled, +.btn-custom[disabled], +fieldset[disabled] .btn-custom, +.btn-custom.disabled:hover, +.btn-custom[disabled]:hover, +fieldset[disabled] .btn-custom:hover, +.btn-custom.disabled:focus, +.btn-custom[disabled]:focus, +fieldset[disabled] .btn-custom:focus, +.btn-custom.disabled:active, +.btn-custom[disabled]:active, +fieldset[disabled] .btn-custom:active, +.btn-custom.disabled.active, +.btn-custom[disabled].active, +fieldset[disabled] .btn-custom.active { + background-color: #f1422c; + border-color: #d72020; +} +.btn-custom { + padding-bottom: 5px; + border-bottom-width: 2px; +} +.btn-custom:active, +.btn-custom.active { + border-top-width: 2px; + border-bottom-width: 1px; +} +.btn-lg.btn-custom { + padding-bottom: 8px; + border-bottom-width: 3px; + border-radius: 4px; +} +.btn-lg.btn-custom:active, +.btn-lg.btn-custom.active { + border-top-width: 3px; + border-bottom-width: 1px; +} +.btn-sm.btn-custom, +.btn-xs.btn-custom { + padding-bottom: 4px; + border-bottom-width: 2px; +} +.btn-xs.btn-custom { + font-size: 10px; + padding-bottom: 0; + border-radius: 2px; +} +.btn-sm.btn-custom:active, +.btn-sm.btn-custom.active, +.btn-xs.btn-custom:active, +.btn-xs.btn-custom.active { + border-top-width: 2px; + border-bottom-width: 1px; +} + +/* Social Media */ +.btn-social { + padding: 4px 5px; + background-color: #fff; + color: #666; + border-color: #ccc; + border-radius: 1em; + -webkit-transition: all 0.6s linear; + transition: all 0.6s linear; +} +.btn-social > .fa-fw { + padding-right: 0; + text-align: center; +} +.btn-social:hover, +.btn-social:focus, +.btn-social:active { + color: #fff; +} +.btn-facebook:hover, +.btn-facebook:focus, +.btn-facebook:active { + background-color: #3c5fac; +} +.btn-twitter:hover, +.btn-twitter:focus, +.btn-twitter:active { + background-color: #36b8da; +} +.btn-google-plus:hover, +.btn-google-plus:focus, +.btn-google-plus:active, +.btn-youtube:hover, +.btn-youtube:focus, +.btn-youtube:active { + background-color: #c8302d; +} +.btn-vimeo:hover, +.btn-vimeo:focus, +.btn-vimeo:active { + background-color: #20b9eb; +} +.btn-linkedin:hover, +.btn-linkedin:focus, +.btn-linkedin:active { + background-color: #2089b5; +} +.btn-flickr:hover, +.btn-flickr:focus, +.btn-flickr:active { + background-color: #ff0084; +} +.btn-pinterest:hover, +.btn-pinterest:focus, +.btn-pinterest:active { + background-color: #c91f27; +} +.btn-dribbble:hover, +.btn-dribbble:focus, +.btn-dribbble:active { + background-color: #ea4c89; +} +.btn-instagram:hover, +.btn-instagram:focus, +.btn-instagram:active { + background-color: #3f729b; +} +.btn-rss:hover, +.btn-rss:focus, +.btn-rss:active { + background-color: #f27d09; +} +.btn-like:hover, +.btn-like:focus, +.btn-like:active { + background-color: #338338; +} +.btn-dislike:hover, +.btn-dislike:focus, +.btn-dislike:active { + background-color: #990707; +} + + +/* 1.2 - Pagination +/*-----------------------------------------------------------------------------------*/ + +.pagination-custom { + font-weight: 600; +} +.pagination-custom > li > a, +.pagination-custom > li > span { + padding-bottom: 5px; + color: #fff !important; + background-color: #e73827 !important; + border-color: #d30a0a !important; + border-bottom-width: 2px; +} +.pagination-custom > li > a:focus, +.pagination-custom > li > a:hover, +.pagination-custom > li > a:active, +.pagination-custom > .active > a, +.pagination-custom > .active > span { + background-color: #f5460f !important; +} +.pagination-custom > li > a:active, +.pagination-custom > .active > a, +.pagination-custom > .active > a:hover, +.pagination-custom > .active > a:focus, +.pagination-custom > .active > span, +.pagination-custom > .active > span:hover, +.pagination-custom > .active > span:focus { + border-top-width: 2px; + border-bottom-width: 1px; + -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); + box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); +} +.pagination-custom > .disabled > a, +.pagination-custom > .disabled > a:hover, +.pagination-custom > .disabled > a:focus, +.pagination-custom > .disabled > a:active, +.pagination-custom > .disabled > span, +.pagination-custom > .disabled > span:hover, +.pagination-custom > .disabled > span:focus, +.pagination-custom > .disabled > span:active { + padding-top: 6px; + padding-bottom: 5px; + border-top-width: 1px; + border-bottom-width: 2px; + background-color: #e73827 !important; + -webkit-box-shadow: none; + box-shadow: none; +} +.pagination-custom > li:first-child > a, +.pagination-custom > li:first-child > span { + border-bottom-left-radius: 3px; + border-top-left-radius: 3px; +} +.pagination-custom > li:last-child > a, +.pagination-custom > li:last-child > span { + border-top-right-radius: 3px; + border-bottom-right-radius: 3px; +} + + +/* 1.3 - Alert +/*-----------------------------------------------------------------------------------*/ + +.alert-custom { + min-height: 5em; + padding: 1em 1em 1em 5em; + color: inherit; + border-left-width: 5px; + border-radius: 0; +} +.alert-custom h4 { + margin-bottom: 5px; +} +.alert-custom .close { + width: 24px; + height: 24px; + margin: -10px -10px 0 0; + color: #fff; + text-shadow: none; + background: rgba(0, 0, 0, 0.4); + border: 1px solid #fff; + opacity: 0.5; +} +.alert-custom .close:hover, +.alert-custom .close:focus { + color: #333; + text-shadow: 0 1px 0 #ffffff; + background: rgba(0, 0, 0, 0.3); +} +.alert-custom .fa { + float: left; + margin-left: -1.25em; + font-size: 3em; + text-shadow: 0 0 1px #fff; +} + + +/* 1.4 - Breadcrumb +/*-----------------------------------------------------------------------------------*/ + +.breadcrumb-custom { + padding: 0 5px; + background: none; +} +.breadcrumb-custom > li a { + font-weight: 700; +} +.breadcrumb-custom > li:after { + display: inline-block; + content: "\f105"; + padding: 0 0.5em 0 0.6em; + font-family: FontAwesome; + font-weight: normal; + font-style: normal; + line-height: normal; + vertical-align: baseline; + text-decoration: inherit; + -webkit-font-smoothing: antialiased; + opacity: 0.75; +} +.breadcrumb-custom > li:before, +.breadcrumb-custom > li:last-child:after, +.breadcrumb-custom > .text:after { + display: none; +} +.breadcrumb-custom > .text { + padding-right: 1em; +} +.breadcrumb-custom > .active { + font-weight: 600; +} +.ie .breadcrumb-custom > li:before, +.ie .breadcrumb-custom > li:after { + display: none !important; +} +.ie .breadcrumb-custom > li a { + margin-right: 0.75em; +} + + +/*-----------------------------------------------------------------------------------*/ +/* 2.0 - Repeatable Patterns +/*-----------------------------------------------------------------------------------*/ + +/* List */ +ul.with-line-border > li, +ol.with-line-border > li { + margin-bottom: 0.25em; + padding-bottom: 0.25em; + border-bottom: 1px solid #f4f4f4; +} + +/* Frames */ +.video-frame { + padding-bottom: 56.25%; /* 16:9 */ + padding-top: 25px; + height: 0; +} +.video-frame iframe, +.video-frame embed, +.video-frame object { + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; +} +.map-frame, +.map-frame > * { + max-width: 100%; +} + +/* Form Border */ +.form-border { + background: #f4f4f4; + border: 1px solid #ddd; + border-radius: 4px; + padding: 20px; + -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05); + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05); +} + +/* Section */ +.section { + margin-bottom: 30px; +} +.section-title { + margin-top: 0; + margin-bottom: 1em; + padding-bottom: 0.25em; + font-weight: 700; + border-bottom: 1px solid #ddd; + position: relative; +} +.section-title > i.line { + float: left; + width: 35%; + border-bottom: 1px solid #0044cc; + position: absolute; + bottom: -1px; +} + +/* Banner */ +.banner-wrapper { + font-size: 0.9em; + padding: 20px; + border: 1px solid #00c0ef; + border-top-width: 5px; + -webkit-transition: all 0.6s ease-in-out; + transition: all 0.6s ease-in-out; +} +.banner-wrapper:hover { + border-color: #009aba; + background: rgba(0, 0, 0, 0.0185); +} +.banner-title, +.banner-content { + text-shadow: 0 1px #fff; +} +.banner-content { + margin: 1.5em 0.5em; +} +.banner-content .btn { + text-shadow: none; +} + +/* Banner Horizontal */ +.banner-horizontal { + border-top-width: 1px; + border-left-width: 5px; +} +.banner-horizontal .banner-title, +.banner-horizontal .banner-content { + float: left; + margin: 15px 0 0; + line-height: 20px; +} +.banner-horizontal .banner-title { + margin-top: 14px; + margin-right: 0.5em; + letter-spacing: -0.05em; +} +.banner-horizontal .btn { + float: right; + margin: 10px 0; +} + +/* Accordion */ +.accordion { + margin-bottom: 30px; +} +.accordion .panel { + margin-top: 0 !important; + border-bottom-color: #eee; + border-radius: 0; + -webkit-box-shadow: none; + box-shadow: none; +} +.accordion .panel:first-child { + border-top-color: #eee; +} +.accordion .panel-heading, +.accordion .panel-body { + padding-left: 20px !important; +} +.accordion .panel-body { + padding-top: 0 !important; + border: 0 !important; +} +.accordion .accordion-toggle > .fa-fw { + margin-left: -20px; + margin-right: 0; + text-decoration: none !important; +} +.accordion .accordion-toggle:not(.collapsed) { + color: inherit !important; + text-decoration: none !important; + cursor: default; +} +.accordion .accordion-toggle:not(.collapsed) > .fa-fw:before { + content: "\f0da"; +} + + +/*-----------------------------------------------------------------------------------*/ +/* 3.0 - Basic Structure +/*-----------------------------------------------------------------------------------*/ + +.site { + background: #fff; +} +.site-hero { + padding: 35px 0; + background: #009aba; +} +.site-main { + margin-top: -35px; + position: relative; + z-index: 1; +} +.site-main .content-area { + padding: 30px; + background-color: #fff; + border-radius: 4px; +} +.breadcrumb { + margin: 10px 0; + font-size: 0.85em; +} +.breadcrumb, +.breadcrumb a, +.breadcrumb > .active { + color: #fff; +} +.breadcrumb a:hover, +.breadcrumb > .text { + color: #ffc; +} + + +/*-----------------------------------------------------------------------------------*/ +/* 4.0 - Header +/*-----------------------------------------------------------------------------------*/ + +/* 4.1 - Site Header +/*-----------------------------------------------------------------------------------*/ + +.site-header { + background: #f9f9f9; + padding: 30px 0; +} +.site-logo { + margin-bottom: 30px; + min-height: 50px; + line-height: 50px; +} + + +/* 4.2 - Navigation +/*-----------------------------------------------------------------------------------*/ + +.navbar-wrapper { + position: relative; + margin-bottom: 30px; +} +.site-navigation { + margin-bottom: 0; + display: inline-block; + background: #fff; + border-color: #eee; + border-radius: 0; + -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05); + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05); +} +.site-navigation > ul { + margin: 0; +} +.site-navigation li > a { + color: inherit; +} +.site-navigation li > a > i.sub-indicator { + padding-right: 0; +} +.site-navigation li.active > a, +.site-navigation li:hover > a, +.site-navigation li > a:hover, +.site-navigation li > a:focus { + background: none !important; + color: #009aba !important; +} +.site-navigation > ul > li > a { + padding-top: 12px; + border-top: 3px solid transparent; + border-right: 1px solid #eee; +} +.site-navigation > ul:last-child > li:last-child > a { + border-right: 0; +} +.site-navigation > ul > li.active > a, +.site-navigation > ul > li:hover > a, +.site-navigation > ul > li > a:hover, +.site-navigation > ul > li > a:focus { + border-top-color: #ddd; +} + +/* Sub Menu */ +.site-navigation .dropdown-menu { + margin-left: -1px; + padding: 0; + text-align: left; + border-color: #eee; + border-radius: 0; + -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05); + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05); +} +.site-navigation .dropdown-menu > li { + position: relative; +} +.site-navigation .dropdown-menu > li > a { + padding: 10px 15px; + border-bottom: 1px solid #eee; +} +.site-navigation .dropdown-menu > li:last-child > a { + border-bottom: 0; +} +.site-navigation .dropdown-menu li > a > i.sub-indicator:before { + content: "\f105"; +} +.site-navigation .dropdown-menu .dropdown-menu { + margin-top: -1px; + margin-left: -10px; + top: 0; + left: 100%; +} + +/* User not Login */ +.site-navigation .navbar-login a:not(.collapsed) { + color: #b00; + border-top-color: #ddd; +} +.site-navigation .navbar-login a:not(.collapsed) > i.sub-indicator:before { + content: "\f139"; +} +.site-navigation .login-form.collapse { + visibility: hidden; +} +.site-navigation .login-form.in { + visibility: visible; +} +.site-navigation .login-form { + width: 225px; + padding: 15px; + background: #fff; + border: 1px solid #eee; + -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05); + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05); + position: absolute; + top: 100%; + right: -1px; + z-index: 9999; +} +.site-navigation .login-form ul { + margin: -3px 0; + font-size: 0.9em; +} + +/* User Login */ +.site-navigation .navbar-user .dropdown-menu { + left: auto; + right: -1px; +} +.site-navigation .user-menu { + width: 225px; + padding-top: 30px; + padding-bottom: 30px; + border: 0; +} +.site-navigation .user-menu .banner-content { + margin-bottom: 0; +} +.site-navigation .user-menu .avatar { + border: 1px solid #fff; + border-bottom-width: 4px; + -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25); + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25); +} + + +/* 4.3 - Search Form +/*-----------------------------------------------------------------------------------*/ + +.site-search .search-form { + position: relative; + -webkit-box-sizing: content-box; + -moz-box-sizing: content-box; + box-sizing: content-box; +} +.site-search .form-border { + width: 100%; + background: #fff; + border-color: #eee; + border-radius: 3px; + padding: 10px; + z-index: 999; +} +.site-search .form-inline .form-group, +.site-search .search-field, +.site-search .search-submit { + width: 100%; +} +.site-search .search-field, +.site-search .search-submit { + border-radius: 4px; +} +.site-search .search-field.loading { + background: url(../img/loader.gif) 99% center no-repeat; +} +.site-search .search-advance { + margin-top: 10px; + display: none; +} +.site-search .search-advance .form-group { + min-height: 34px; +} +.site-search .search-advance-button { + display: none; + width: 2em; + height: 2em; + margin: -1em; + background: #fff; + text-decoration: none !important; + border-radius: 1em; + -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2); + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2); + position: absolute; + top: 100%; + left: 50%; +} + +/* Search Suggestions */ +.autocomplete-suggestions { + padding: 5px 0; + background: #fff; + border: 1px solid #eee; + border-radius: 4px; + -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05); + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05); + -webkit-box-sizing: content-box; + -moz-box-sizing: content-box; + box-sizing: content-box; + overflow: auto; +} +.autocomplete-suggestion { + background: #fff; + padding: 0.5em 1em; + cursor: pointer; +} +.autocomplete-suggestion:hover { + background-color: #f4f4f4; +} +.autocomplete-suggestion strong { + font-weight: 600; +} + + +/*-----------------------------------------------------------------------------------*/ +/* 5.0 - Content +/*-----------------------------------------------------------------------------------*/ + +.entry-title, +.archive-title, +.error-title { + font-weight: 700; + margin-top: 0; +} +.entry-header, +.archive-header { + margin-bottom: 1.5em; + border-bottom: 1px solid #eee; +} + + +/* 5.1 - Entry +/*-----------------------------------------------------------------------------------*/ + +.hentry { + margin-bottom: 30px; +} +.entry-footer { + margin-top: 1em; + padding-top: 0.5em; + border-top: 1px solid #eee; +} +.entry-meta > * { + display: inline-block; + margin-right: 1em; +} +.entry-meta a { + color: inherit; +} +.entry-header .entry-meta { + margin-bottom: 1em; +} +.entry-thumbnail, +.entry-content .video-frame, +.entry-content .map-frame { + width: 100%; + position: relative; + top: -1.5em; +} +.entry-attribute { + margin-bottom: 3em; + border-bottom: 1px solid #eee; + line-height: 2.35em; +} +.entry-attribute strong { + text-transform: uppercase; +} +.entry-attribute ul.pull-left { + margin-right: 0.75em; +} +.entry-attribute ul.pull-right { + margin-left: 0.75em; +} +.entry-attribute ul > li { + padding: 0; +} +.entry-attribute ul > li > a { + color: #666; + background: #eee; + border-color: transparent; + border-radius: 0; +} +.entry-attribute ul.rate-average { + margin-left: 0.25em; + margin-right: 0.5em; +} +.entry-attribute ul.rate-average > li { + float: left; +} + + +/* 5.2 - Archives +/*-----------------------------------------------------------------------------------*/ + +.archive-description { + background: #f9f9f9; + margin-bottom: 2em; +} +.archive-list { + margin-bottom: 20px; +} +.archive-list .hentry { + border-bottom: 1px solid #eee; +} +.archive-list .entry-header { + margin-bottom: 0; + border-bottom: 0; +} +.archive-list .entry-footer { + margin-top: 0; + margin-bottom: 1em; + padding-top: 0; + border-top: 0; +} +.archive-list .entry-thumbnail { + width: 100%; + margin-bottom: 20px; + top: auto; +} +.archive-footer { + margin-bottom: 30px; +} +.archive-footer .pagination { + margin-top: 0; + margin-bottom: 10px; +} + +/* Articles Archive */ +.archive-article .hentry { + margin: 0; + padding-top: 1em; + padding-left: 3em; +} +.archive-article .entry-title { + margin-bottom: 0.25em; +} +.archive-article .entry-header > .fa-fw { + margin-left: -1.5em; + margin-right: 0; +} + + +/* 5.3 - Homepage +/*-----------------------------------------------------------------------------------*/ + +/* Features */ +.features .banner-wrapper { + margin: 30px 0; + font-size: 1em; + border-color: transparent; + background-color: #eee; + background: rgba(255, 255, 255, 0.6); +} +.features .banner-wrapper:hover { + border-color: #fff; + background: rgba(255, 255, 255, 0.8); +} +.features .banner-content { + margin: 0; +} +.features .banner-title, +.features .banner-content { + text-shadow: 0 1px rgba(255, 255, 255, 0.3); +} + +/* Categories */ +.box-categories { + margin-bottom: 30px; +} +.box-categories .section-title { + margin-bottom: 0.5em; +} +.box-categories .section-title > i.line { + width: 1.15em; +} +.box-categories .section-title small { + line-height: 1.15em; +} +.box-categories .fa-ul > li { + margin-bottom: 0.5em; +} +.box-categories .fa-ul > li > * { + margin: 0; + line-height: inherit; +} +.box-categories .more-link { + height: 11px; + border-bottom: 1px solid #eee; +} + +/* List Articles */ +.site-content .section .fa-ul > li { + margin-bottom: 0.5em; + padding-bottom: 0.5em; + border-bottom: 1px solid #eee; +} +.site-content .section .fa-ul > li > * { + margin: 0; + line-height: inherit; +} +.site-content .section .fa-ul > li > .meta > * { + display: inline-block; + margin-right: 1em; +} +.site-content .fa-ul > li a { + color: inherit; +} + + +/* 5.4 - 404 +/*-----------------------------------------------------------------------------------*/ + +.error-title { + margin-bottom: 0.5em; + font-size: 5em; + letter-spacing: -0.01em; +} +.ie .error-title .icon-frown { + display: none; +} +.ie .error-title .visible-print { + display: inline-block !important; +} +.error404 .search-form .form-group { + min-width: 35%; +} + + +/* 5.5 - Comments +/*-----------------------------------------------------------------------------------*/ + +.comments-area { + margin-bottom: 30px; +} +.comment-list, +.comment-list .children { + list-style-type: none; + padding: 0; +} +.ie .comment-list { + margin-bottom: 30px; +} +.comment-list > .comment > .comment-body { + margin-top: 20px; + padding-top: 0; +} +.comment-list > .comment:first-child > .comment-body { + margin-top: 20px; +} +.comment-list > .comment:last-child > .comment-body { + margin-bottom: 30px; +} +.comment-content > ul, +.comment-content > ol { + margin-bottom: 10px; +} +.comment-author .fn { + font-size: 1.15em; +} +.comment-author .fn, +.comment-author .fn a { + color: inherit; + text-decoration: none !important; +} +.comment-author .avatar { + float: left; + margin-left: -14px; + margin-top: -4px; +} +.comment-meta { + margin-bottom: 1em; + padding: 5px 15px; + text-shadow: 0 1px #fff; + background: rgba(0, 0, 0, 0.01); + border: 1px solid #ddd; + border-left-width: 5px; + -webkit-transition: all 0.6s ease-in-out; + transition: all 0.6s ease-in-out; +} +.comment-body:hover > .comment-meta { + border-color: #ccc; + background: rgba(0, 0, 0, 0.0185); +} + +/* User Login */ +.comment-form .user-data { + margin-bottom: 20px; + padding: 15px 5px 3px; + background: rgba(255, 255, 255, 0.5); + border-color: #ddd; +} +.comment-form .user-data .avatar { + border: 1px solid #fff; + border-bottom-width: 4px; + -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25); + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25); +} +.comment-form .user-data .btn { + margin-top: 5px; +} + + +/*-----------------------------------------------------------------------------------*/ +/* 6.0 - Widgets +/*-----------------------------------------------------------------------------------*/ + +/* Categories */ +.nav-categories li a { + padding-top: 0.5em; + padding-bottom: 0.5em; + color: inherit; + border: 1px solid #eee; + border-radius: 0; +} +.nav-categories li .badge { + font-weight: 300; + background: #009aba; +} + +/* Tags */ +.widget-area .btn-tag { + margin-bottom: 0.5em; + color: #333; + border-color: #c5c5c5; + border-color: rgba(0, 0, 0, 0.15) rgba(0, 0, 0, 0.15) rgba(0, 0, 0, 0.25); + text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75); + background: #ffffff; /* Old browsers */ + background: -moz-linear-gradient(top, #ffffff 0%, #e6e6e6 100%); /* FF3.6+ */ + background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffffff), color-stop(100%,#e6e6e6)); /* Chrome,Safari4+ */ + background: -webkit-linear-gradient(top, #ffffff 0%,#e6e6e6 100%); /* Chrome10+,Safari5.1+ */ + background: -o-linear-gradient(top, #ffffff 0%,#e6e6e6 100%); /* Opera 11.10+ */ + background: -ms-linear-gradient(top, #ffffff 0%,#e6e6e6 100%); /* IE10+ */ + background: linear-gradient(to bottom, #ffffff 0%,#e6e6e6 100%); /* W3C */ + filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#e6e6e6',GradientType=0 ); /* IE6-9 */ + -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); + box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); +} +.widget-area .btn-tag:hover, +.widget-area .btn-tag:active { + background: #e6e6e6; +} + +/* On Footer */ +.site-footer .widget-area { + margin-top: 30px; +} + + +/*-----------------------------------------------------------------------------------*/ +/* 7.0 - Footer +/*-----------------------------------------------------------------------------------*/ + +/* 7.1 - Site Footer +/*-----------------------------------------------------------------------------------*/ + +.site-footer { + padding: 1em 0; + padding-top: 20px; + background: #fcfcfc; + border-top: 1px solid #eee; +} +.site-info { + font-size: 0.9em; +} +.site-info a { + color: inherit; +} +.site-social li { + padding-left: 1px; + padding-right: 1px; +} + +/* 7.2 - Twitter Feed +/*-----------------------------------------------------------------------------------*/ + +.twitterbar { + -webkit-box-sizing: content-box; + -moz-box-sizing: content-box; + box-sizing: content-box; + position: relative; + z-index: 999; +} +.tweets-border { + clear: both; + width: 100%; + padding: 10px 10px 13px 10px; + background: #fff; + border: 1px solid #eee; + border-radius: 3px; + -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05); + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05); + z-index: 999; +} +.tweets { + width: 100%; + position: relative; +} +.tweets .meta:before { + content: "\2002\2014\2002"; + color: #ccc; +} +.tweets .meta { + display: inline-block; + font-style: italic; +} +.follow-button { + width: 100%; +} +.twitterbar .tweets-icon { + width: 8%; + margin-top: 5px; +} +.twitterbar .tweets-control { + width: 9%; + margin-top: 40px; + margin-bottom: 0; +} +.twitterbar .tweets-control li { + padding-left: 0; + padding-right: 0; +} +.twitterbar .tweets-control a { + padding: 2px 3px; + color: #ccc; + border-color: #eee; +} +.twitterbar .tweets-control a:hover { + color: #999; + border-color: #ddd; + background-color: #fff; + -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05); + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05); +} + + +/*-----------------------------------------------------------------------------------*/ +/* 8.0 - Media Queries +/*-----------------------------------------------------------------------------------*/ + +@media (min-width: 992px) { + #logo { + float: left; + margin-bottom: 0; + } + #navbar { + float: right; + } + .site-search { + clear: both; + margin-top: -35px; + } + .site-search .form-border { + width: 80%; + margin: 0 -40%; + top: 0; + left: 50%; + } + .breadcrumb { + width: 80%; + margin: 20px 10%; + } + .comment-form textarea { + height: 182px; + } + .site-info { + margin-top: 5px; + } + .tweets-border { + width: 80%; + margin: 0 -40%; + top: 0; + left: 50%; + } + .tweets-border:before, + .tweets-border:after { + content: ""; + display: block; + float: left; + width: 0; + height: 0; + border-top: 8px solid transparent; + border-bottom: 8px solid transparent; + border-right: 12px solid #fff; + position: absolute; + top: 8px; + right: 100%; + } + .tweets-border:before { + border-width: 9px 13px 9px 0; + border-right-color: #ddd; + top: 7px; + } +} + +@media (max-width: 991px) { + .comment-form .user-data { + padding-left: 20px; + padding-right: 20px; + } + .comment-form .user-data .banner-title, + .comment-form .user-data .banner-content { + margin-top: 0; + text-align: left; + } + .comment-form .user-data .avatar { + float: left; + margin-right: 20px; + } + .site-info, + .site-social { + text-align: center; + } + .twitterbar .tweets-icon { + width: 2em; + margin: 0; + position: absolute; + top: 10px; + left: 10px; + z-index: 1000; + } + .twitterbar .tweets-control { + display: none !important; + } +} + +@media (min-width: 768px) { + #navbar .site-navigation select { + display: none !important; + } + .site-search .form-border { + position: absolute; + } + .site-search .form-inline .form-group { + width: 85%; + } + .site-search .form-horizontal .form-group { + margin-bottom: 0; + } + .site-search .search-submit { + width: 14%; + } + .archive-list .entry-thumbnail { + width: 45%; + margin-right: 20px; + margin-bottom: 10px; + } + .error404 { + padding-top: 2em; + padding-bottom: 5em; + } + .error404 .error-title { + font-size: 12em; + } + .comment-body { + margin-left: 25px; + padding: 20px 0 20px 25px; + position: relative; + border-bottom: 1px dotted #ccc; + border-left: 1px dotted #ccc; + } + .comment-list .children { + margin-left: 70px; + } + .comment-body { + padding-left: 45px; + } + .comment-author .avatar { + margin-left: -90px; + margin-top: -6px; + border: 1px solid #fff; + border-bottom-width: 4px; + -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25); + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25); + } + .comment-reply { + position: absolute; + top: 32px; + right: 15px; + } + .comment-list > .comment > .comment-body .comment-reply { + top: 12px; + } + .twitterbar { + clear: both; + margin-top: -55px; + margin-bottom: 70px; + } + .tweets-border { + position: absolute; + } + .tweets { + width: 85%; + height: 45px; + margin-bottom: 0; + } + .follow-button { + width: 14%; + padding-left: 5px; + padding-right: 5px; + } + .tweets .item { + display: block; + opacity: 0; + visibility: hidden; + -webkit-transition: all 0.7s ease-in-out 0.3s; + -moz-transition: all 0.7s ease-in-out 0.3s; + transition: all 0.7s ease-in-out 0.3s; + position: absolute; + top: 0; + left: 0; + } + .tweets .item.active { + opacity: 1; + visibility: visible; + } +} + +@media (min-width: 768px) and (max-width: 991px) { + .tweets .item { + left: 2.5em; + } +} + +@media (max-width: 767px) { + .form-border { + padding: 15px; + } + .site-hero { + min-height: 65px; + padding-top: 0; + } + .site-navigation ul.navbar-menu { + display: none !important; + } + .site-navigation { + display: block; + border-radius: 4px; + min-height: 1em; + } + .site-navigation select.navbar-menu { + margin: 0; + padding-left: 10px; + } + .navbar-wrapper, + .site-navigation { + position: static; + } + .site-navigation .navbar-login, + .site-navigation .navbar-user { + background: #fff; + border: 1px solid #eee; + -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05); + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05); + position: absolute; + top: 0; + right: 0; + } + .site-navigation .navbar-login > li > a, + .site-navigation .navbar-user > li > a { + padding-top: 3px; + padding-bottom: 3px; + border-top-width: 1px; + } + .site-navigation .login-form { + top: 28px; + right: 1px; + z-index: 1000; + } + .site-navigation .login-form, + .site-navigation .navbar-user > li > .dropdown-menu { + display: none !important; + opacity: 0 !important; + visibility: hidden !important; + } + .site-navigation .login-form.in, + .site-navigation .login-form.collapsing, + .site-navigation .navbar-user > .opened > .dropdown-menu { + display: block !important; + opacity: 1 !important; + visibility: visible !important; + height: auto !important; + } + .site-navigation .navbar-user > .opened > a { + color: #b00 !important; + border-top-color: #ddd; + } + .site-navigation .navbar-user > li > a > i.sub-indicator:before { + content: "\f13a"; + } + .site-navigation .navbar-user > .opened > a > i.sub-indicator:before { + content: "\f139"; + } + .site-search .form-group { + margin-bottom: 10px; + } + .site-search .search-submit { + float: none !important; + } + .site-search .search-advance, + .site-search .search-advance-button { + display: none !important; + } + .comment-body { + margin-bottom: 30px; + border-bottom: 1px solid #ddd; + } + .comment-author .avatar { + margin-right: 15px; + } + .comment-reply { + height: 1em; + } + .tweets, + .follow-button { + float: none !important; + } + .tweets .item { + min-height: 2em; + padding-left: 2.5em; + } +} + + +/*-----------------------------------------------------------------------------------*/ +/* 9.0 - Print +/*-----------------------------------------------------------------------------------*/ + +@media print { + @page { + size: auto; + margin: 5mm 10mm; + } + .alert-custom .close, + #navbar, + #header-search, + #respond, + .breadcrumb, + .entry-attribute, + .comment-reply, + .site-sidebar, + .twitterbar, + .widget-area, + .site-social { + display: none; + } + .btn-custom, + .pagination-custom > li > a, + .pagination-custom > li > span { + background-color: #fff !important; + border-color: #aaa !important; + } + .alert-custom { + padding-left: 1em; + } + .banner-wrapper { + border-color: #ddd !important; + } + .accordion .panel-collapse { + display: block !important; + } + .video-frame { + text-align: center; + border: 1px solid #ccc !important; + } + .video-frame:before { + content: "V I D E O"; + font-size: 3em; + font-weight: bold; + color: #eee; + } + .site-header { + border-bottom: 1px solid #eee; + } + .site-logo { + margin-bottom: 0; + } + .content-area { + padding: 0 !important; + } + .archive-list .entry-thumbnail { + width: 47%; + margin-right: 20px; + margin-bottom: 10px; + } + .archive-article .hentry { + padding-left: 0; + } + .site-footer { + border: 0; + } +} \ No newline at end of file diff --git a/code/public/dist/css/bootstrap.min.css b/code/dist/css/bootstrap.min.css similarity index 100% rename from code/public/dist/css/bootstrap.min.css rename to code/dist/css/bootstrap.min.css diff --git a/code/dist/css/c3.css b/code/dist/css/c3.css new file mode 100644 index 000000000..40526404e --- /dev/null +++ b/code/dist/css/c3.css @@ -0,0 +1 @@ +../../c3.css \ No newline at end of file diff --git a/code/public/dist/css/editor.css b/code/dist/css/editor.css similarity index 100% rename from code/public/dist/css/editor.css rename to code/dist/css/editor.css diff --git a/code/public/dist/css/font-awesome.min.css b/code/dist/css/font-awesome.min.css similarity index 100% rename from code/public/dist/css/font-awesome.min.css rename to code/dist/css/font-awesome.min.css diff --git a/code/public/dist/css/skins/_all-skins.css b/code/dist/css/skins/_all-skins.css similarity index 100% rename from code/public/dist/css/skins/_all-skins.css rename to code/dist/css/skins/_all-skins.css diff --git a/code/public/dist/css/skins/_all-skins.min.css b/code/dist/css/skins/_all-skins.min.css similarity index 100% rename from code/public/dist/css/skins/_all-skins.min.css rename to code/dist/css/skins/_all-skins.min.css diff --git a/code/public/dist/css/skins/skin-black.css b/code/dist/css/skins/skin-black.css similarity index 100% rename from code/public/dist/css/skins/skin-black.css rename to code/dist/css/skins/skin-black.css diff --git a/code/public/dist/css/skins/skin-black.min.css b/code/dist/css/skins/skin-black.min.css similarity index 100% rename from code/public/dist/css/skins/skin-black.min.css rename to code/dist/css/skins/skin-black.min.css diff --git a/code/public/dist/css/skins/skin-blue.css b/code/dist/css/skins/skin-blue.css similarity index 100% rename from code/public/dist/css/skins/skin-blue.css rename to code/dist/css/skins/skin-blue.css diff --git a/code/public/dist/css/skins/skin-blue.min.css b/code/dist/css/skins/skin-blue.min.css similarity index 100% rename from code/public/dist/css/skins/skin-blue.min.css rename to code/dist/css/skins/skin-blue.min.css diff --git a/code/public/dist/css/skins/skin-green.css b/code/dist/css/skins/skin-green.css similarity index 100% rename from code/public/dist/css/skins/skin-green.css rename to code/dist/css/skins/skin-green.css diff --git a/code/public/dist/css/skins/skin-green.min.css b/code/dist/css/skins/skin-green.min.css similarity index 100% rename from code/public/dist/css/skins/skin-green.min.css rename to code/dist/css/skins/skin-green.min.css diff --git a/code/public/dist/css/skins/skin-purple.css b/code/dist/css/skins/skin-purple.css similarity index 100% rename from code/public/dist/css/skins/skin-purple.css rename to code/dist/css/skins/skin-purple.css diff --git a/code/public/dist/css/skins/skin-purple.min.css b/code/dist/css/skins/skin-purple.min.css similarity index 100% rename from code/public/dist/css/skins/skin-purple.min.css rename to code/dist/css/skins/skin-purple.min.css diff --git a/code/public/dist/css/skins/skin-red.css b/code/dist/css/skins/skin-red.css similarity index 100% rename from code/public/dist/css/skins/skin-red.css rename to code/dist/css/skins/skin-red.css diff --git a/code/public/dist/css/skins/skin-red.min.css b/code/dist/css/skins/skin-red.min.css similarity index 100% rename from code/public/dist/css/skins/skin-red.min.css rename to code/dist/css/skins/skin-red.min.css diff --git a/code/public/dist/css/skins/skin-yellow.css b/code/dist/css/skins/skin-yellow.css similarity index 100% rename from code/public/dist/css/skins/skin-yellow.css rename to code/dist/css/skins/skin-yellow.css diff --git a/code/public/dist/css/skins/skin-yellow.min.css b/code/dist/css/skins/skin-yellow.min.css similarity index 100% rename from code/public/dist/css/skins/skin-yellow.min.css rename to code/dist/css/skins/skin-yellow.min.css diff --git a/code/public/dist/css/tabby.css b/code/dist/css/tabby.css similarity index 100% rename from code/public/dist/css/tabby.css rename to code/dist/css/tabby.css diff --git a/code/public/dist/css/tabby2.css b/code/dist/css/tabby2.css similarity index 100% rename from code/public/dist/css/tabby2.css rename to code/dist/css/tabby2.css diff --git a/code/dist/css/widgetbox.css b/code/dist/css/widgetbox.css new file mode 100644 index 000000000..5286d19ca --- /dev/null +++ b/code/dist/css/widgetbox.css @@ -0,0 +1,51 @@ +/* @group widget boxes */ + +#corewidgetbox { + margin-top: 2em; + margin-bottom: 1.5em; + padding-left: 3px; +} + +.widgetrow { + width: 100%; + position: relative; + margin: 0 -20px 0 0; +} + +.widgetrowitem:focus { + outline: none; + background-color: #eee; +} + +.widgetrowitem:hover { + +} + +.defaultwidget { + background-image: url(https://support.ebs.in/app/__swift/themes/client/images/space.gif); +} + +.widgetrow a { + background-repeat: no-repeat; + background-position: 50% 12px; + font-size: 13px; + padding: 55px 2px 10px 2px; + font-weight: normal; + text-align: center; + width: 115px; + display: block; + cursor: pointer; + clear: none; + display: inline-block; + border: 1px solid #c9cfd7; + background-color: #fff; + border-radius: 4px; + line-height: 14px; + margin: 0 6px 6px 0; + font-size: 0.83em; + font-family: "segoe ui","helvetica neue", arial, helvetica, sans-serif; +} + +.widgetrow a:hover { + background-color: #e9ecef; +} diff --git a/code/public/dist/img/avatar.png b/code/dist/img/avatar.png similarity index 100% rename from code/public/dist/img/avatar.png rename to code/dist/img/avatar.png diff --git a/code/public/dist/img/avatar04.png b/code/dist/img/avatar04.png similarity index 100% rename from code/public/dist/img/avatar04.png rename to code/dist/img/avatar04.png diff --git a/code/public/dist/img/avatar2.png b/code/dist/img/avatar2.png similarity index 100% rename from code/public/dist/img/avatar2.png rename to code/dist/img/avatar2.png diff --git a/code/public/dist/img/avatar3.png b/code/dist/img/avatar3.png similarity index 100% rename from code/public/dist/img/avatar3.png rename to code/dist/img/avatar3.png diff --git a/code/public/dist/img/avatar5.png b/code/dist/img/avatar5.png similarity index 100% rename from code/public/dist/img/avatar5.png rename to code/dist/img/avatar5.png diff --git a/code/dist/img/avatar_1.png b/code/dist/img/avatar_1.png new file mode 100644 index 000000000..825ea0655 Binary files /dev/null and b/code/dist/img/avatar_1.png differ diff --git a/code/dist/img/boxed-bg.jpg b/code/dist/img/boxed-bg.jpg new file mode 100644 index 000000000..5479079a1 Binary files /dev/null and b/code/dist/img/boxed-bg.jpg differ diff --git a/code/public/dist/img/boxed-bg.png b/code/dist/img/boxed-bg.png similarity index 100% rename from code/public/dist/img/boxed-bg.png rename to code/dist/img/boxed-bg.png diff --git a/code/public/dist/img/credit/american-express.png b/code/dist/img/credit/american-express.png similarity index 100% rename from code/public/dist/img/credit/american-express.png rename to code/dist/img/credit/american-express.png diff --git a/code/public/dist/img/credit/cirrus.png b/code/dist/img/credit/cirrus.png similarity index 100% rename from code/public/dist/img/credit/cirrus.png rename to code/dist/img/credit/cirrus.png diff --git a/code/public/dist/img/credit/mastercard.png b/code/dist/img/credit/mastercard.png similarity index 100% rename from code/public/dist/img/credit/mastercard.png rename to code/dist/img/credit/mastercard.png diff --git a/code/public/dist/img/credit/mestro.png b/code/dist/img/credit/mestro.png similarity index 100% rename from code/public/dist/img/credit/mestro.png rename to code/dist/img/credit/mestro.png diff --git a/code/public/dist/img/credit/paypal.png b/code/dist/img/credit/paypal.png similarity index 100% rename from code/public/dist/img/credit/paypal.png rename to code/dist/img/credit/paypal.png diff --git a/code/public/dist/img/credit/paypal2.png b/code/dist/img/credit/paypal2.png similarity index 100% rename from code/public/dist/img/credit/paypal2.png rename to code/dist/img/credit/paypal2.png diff --git a/code/public/dist/img/credit/visa.png b/code/dist/img/credit/visa.png similarity index 100% rename from code/public/dist/img/credit/visa.png rename to code/dist/img/credit/visa.png diff --git a/code/public/dist/img/default-50x50.gif b/code/dist/img/default-50x50.gif similarity index 100% rename from code/public/dist/img/default-50x50.gif rename to code/dist/img/default-50x50.gif diff --git a/code/dist/img/gifloader.gif b/code/dist/img/gifloader.gif new file mode 100644 index 000000000..1f07d32dd Binary files /dev/null and b/code/dist/img/gifloader.gif differ diff --git a/code/public/dist/img/gifloader.gif b/code/dist/img/gifloader2.gif similarity index 100% rename from code/public/dist/img/gifloader.gif rename to code/dist/img/gifloader2.gif diff --git a/code/public/dist/img/hex-loader2.gif b/code/dist/img/hex-loader2.gif similarity index 100% rename from code/public/dist/img/hex-loader2.gif rename to code/dist/img/hex-loader2.gif diff --git a/code/public/dist/img/icons.png b/code/dist/img/icons.png similarity index 100% rename from code/public/dist/img/icons.png rename to code/dist/img/icons.png diff --git a/code/dist/img/ladybird.ico b/code/dist/img/ladybird.ico new file mode 100644 index 000000000..fed22e210 Binary files /dev/null and b/code/dist/img/ladybird.ico differ diff --git a/code/dist/img/ladybird.png b/code/dist/img/ladybird.png new file mode 100644 index 000000000..f99447839 Binary files /dev/null and b/code/dist/img/ladybird.png differ diff --git a/code/public/dist/img/photo1.png b/code/dist/img/photo1.png similarity index 100% rename from code/public/dist/img/photo1.png rename to code/dist/img/photo1.png diff --git a/code/public/dist/img/photo2.png b/code/dist/img/photo2.png similarity index 100% rename from code/public/dist/img/photo2.png rename to code/dist/img/photo2.png diff --git a/code/public/dist/img/red loader.gif b/code/dist/img/red loader.gif similarity index 100% rename from code/public/dist/img/red loader.gif rename to code/dist/img/red loader.gif diff --git a/code/public/dist/img/sprite-skin-flat.png b/code/dist/img/sprite-skin-flat.png similarity index 100% rename from code/public/dist/img/sprite-skin-flat.png rename to code/dist/img/sprite-skin-flat.png diff --git a/code/public/dist/img/sprite-skin-nice.png b/code/dist/img/sprite-skin-nice.png similarity index 100% rename from code/public/dist/img/sprite-skin-nice.png rename to code/dist/img/sprite-skin-nice.png diff --git a/code/public/dist/img/user1-128x128.jpg b/code/dist/img/user1-128x128.jpg similarity index 100% rename from code/public/dist/img/user1-128x128.jpg rename to code/dist/img/user1-128x128.jpg diff --git a/code/public/dist/img/user2-160x160.jpg b/code/dist/img/user2-160x160.jpg similarity index 100% rename from code/public/dist/img/user2-160x160.jpg rename to code/dist/img/user2-160x160.jpg diff --git a/code/public/dist/img/user3-128x128.jpg b/code/dist/img/user3-128x128.jpg similarity index 100% rename from code/public/dist/img/user3-128x128.jpg rename to code/dist/img/user3-128x128.jpg diff --git a/code/public/dist/img/user4-128x128.jpg b/code/dist/img/user4-128x128.jpg similarity index 100% rename from code/public/dist/img/user4-128x128.jpg rename to code/dist/img/user4-128x128.jpg diff --git a/code/public/dist/img/user5-128x128.jpg b/code/dist/img/user5-128x128.jpg similarity index 100% rename from code/public/dist/img/user5-128x128.jpg rename to code/dist/img/user5-128x128.jpg diff --git a/code/public/dist/img/user6-128x128.jpg b/code/dist/img/user6-128x128.jpg similarity index 100% rename from code/public/dist/img/user6-128x128.jpg rename to code/dist/img/user6-128x128.jpg diff --git a/code/public/dist/img/user7-128x128.jpg b/code/dist/img/user7-128x128.jpg similarity index 100% rename from code/public/dist/img/user7-128x128.jpg rename to code/dist/img/user7-128x128.jpg diff --git a/code/public/dist/img/user8-128x128.jpg b/code/dist/img/user8-128x128.jpg similarity index 100% rename from code/public/dist/img/user8-128x128.jpg rename to code/dist/img/user8-128x128.jpg diff --git a/code/public/dist/js/app.js b/code/dist/js/app.js similarity index 100% rename from code/public/dist/js/app.js rename to code/dist/js/app.js diff --git a/code/public/dist/js/app.min.js b/code/dist/js/app.min.js similarity index 100% rename from code/public/dist/js/app.min.js rename to code/dist/js/app.min.js diff --git a/code/public/dist/js/bootstrap.min.js b/code/dist/js/bootstrap.min.js similarity index 100% rename from code/public/dist/js/bootstrap.min.js rename to code/dist/js/bootstrap.min.js diff --git a/code/public/dist/js/demo.js b/code/dist/js/demo.js similarity index 100% rename from code/public/dist/js/demo.js rename to code/dist/js/demo.js diff --git a/code/public/dist/js/editor.js b/code/dist/js/editor.js similarity index 100% rename from code/public/dist/js/editor.js rename to code/dist/js/editor.js diff --git a/code/public/dist/js/jquery-2.1.0.min.js b/code/dist/js/jquery-2.1.0.min.js similarity index 100% rename from code/public/dist/js/jquery-2.1.0.min.js rename to code/dist/js/jquery-2.1.0.min.js diff --git a/code/public/dist/js/jquery.min.js b/code/dist/js/jquery.min.js similarity index 100% rename from code/public/dist/js/jquery.min.js rename to code/dist/js/jquery.min.js diff --git a/code/dist/js/know.js b/code/dist/js/know.js new file mode 100644 index 000000000..cae0d2e0a --- /dev/null +++ b/code/dist/js/know.js @@ -0,0 +1,70 @@ +(function($) { + "use strict"; + + /*-----------------------------------------------------------------------------------*/ + /* Site Navigation + /*-----------------------------------------------------------------------------------*/ + $('#navbar .navbar-menu').mobileMenu({className: 'form-control'}) + $('#navbar .navbar-menu li').each(function(){ + $(this).filter('.active').parents('li').addClass('active'); + if ( $('ul', this).length > 0 ) + $(this).children('a').append(' ') + }) + $('#navbar .navbar-menu, #navbar .navbar-user').superfish({ + animation: {opacity:'show', height:'show'}, + delay: 100, + speed: "fast" + }) + $('#navbar .navbar-user > li > a').on('click', function() { + $(this).parent().toggleClass('opened') + }) + + /*-----------------------------------------------------------------------------------*/ + /* Main Search + /*-----------------------------------------------------------------------------------*/ + $.ajax({ + url: 'search-terms.php', + dataType: 'json' + }).done(function (data) { + $('#header-search .search-field').autocomplete({ + lookup: data, + appendTo: '#header-search .form-inline .form-group', + onSearchStart: function(){ + $(this).addClass('loading'); + }, + onSearchComplete: function(){ + $(this).removeClass('loading'); + } + }); + }); + $('#header-search .search-field').on('focus', function() { + $('#header-search .search-advance-button').fadeIn() + $('#header-search .search-advance').slideDown() + }) + $('#header-search .search-advance-button').on('click', function(e) { + e.preventDefault() + $(this).fadeOut(100) + $('#header-search .search-advance').slideUp(100) + }) + + /*-----------------------------------------------------------------------------------*/ + /* Tooltip + /*-----------------------------------------------------------------------------------*/ + $('[data-toggle="tooltip"]').tooltip() + + /*-----------------------------------------------------------------------------------*/ + /* Accordion + /*-----------------------------------------------------------------------------------*/ + $('.accordion .accordion-toggle').prepend('') + + /*-----------------------------------------------------------------------------------*/ + /* Section + /*-----------------------------------------------------------------------------------*/ + $('.section-title').prepend('') + + /*-----------------------------------------------------------------------------------*/ + /* Tweets List + /*-----------------------------------------------------------------------------------*/ + $('#tweets-list').carousel() + +})(jQuery); \ No newline at end of file diff --git a/code/dist/js/mobilemenu.js b/code/dist/js/mobilemenu.js new file mode 100644 index 000000000..0831fdd97 --- /dev/null +++ b/code/dist/js/mobilemenu.js @@ -0,0 +1,78 @@ +/** + * jQuery Mobile Menu + * Turn unordered list menu into dropdown select menu + * version 1.1(27-JULY-2013) + * + * Built on top of the jQuery library + * http://jquery.com + * + * Documentation + * http://github.com/mambows/mobilemenu + */ +(function($){ +$.fn.mobileMenu = function(options) { + + var defaults = { + defaultText: 'Navigate to...', + className: 'select-menu', + subMenuClass: 'sub-menu', + subMenuDash: '–' + }, + settings = $.extend( defaults, options ), + el = $(this); + + this.each(function(){ + var $el = $(this), + $select_menu; + + // ad class to submenu list + $el.find('ul').addClass(settings.subMenuClass); + + // Create base menu + var $select_menu = $(' - -
    - -
    - -
    -
    - -
    -
    - -
    -
    - -
    -
    -
    -
    -
    -@endsection diff --git a/code/resources/views/auth/reset.blade.php b/code/resources/views/auth/reset.blade.php deleted file mode 100644 index 3c3536caa..000000000 --- a/code/resources/views/auth/reset.blade.php +++ /dev/null @@ -1,59 +0,0 @@ -@extends('app') - -@section('content') -
    -
    -
    -
    -
    Reset Password
    -
    - @if (count($errors) > 0) -
    - Whoops! There were some problems with your input.

    -
      - @foreach ($errors->all() as $error) -
    • {{ $error }}
    • - @endforeach -
    -
    - @endif - -
    - - - -
    - -
    - -
    -
    - -
    - -
    - -
    -
    - -
    - -
    - -
    -
    - -
    -
    - -
    -
    -
    -
    -
    -
    -
    -
    -@endsection diff --git a/code/resources/views/emails/Ticket_Create.blade.php b/code/resources/views/emails/Ticket_Create.blade.php deleted file mode 100644 index 6e52fa7ce..000000000 --- a/code/resources/views/emails/Ticket_Create.blade.php +++ /dev/null @@ -1,14 +0,0 @@ ----Reply above this line---


    - -hello {{$name}}

    -Your ticket have been created please visit this link for your ticket query.

    - -Ticket Details
    -Ticket ID: {{$ticket_number}}
    -Department: Dedicated Hosting
    -Status: Open
    -Priority: Normal
    - -dgsvhtdf8 -gfiyydiu'g -f diff --git a/code/resources/views/emails/pass.blade.php b/code/resources/views/emails/pass.blade.php deleted file mode 100644 index 2cb9d32d4..000000000 --- a/code/resources/views/emails/pass.blade.php +++ /dev/null @@ -1,11 +0,0 @@ -hello {{$name}}

    - -Your account has been created.
    -Use this password to login to this system. {{$password}}

    - -nbfgnbgbdbsdb -y -'gog -i -o -ioi' \ No newline at end of file diff --git a/code/resources/views/emails/password.blade (2).php b/code/resources/views/emails/password.blade (2).php deleted file mode 100644 index 203053936..000000000 --- a/code/resources/views/emails/password.blade (2).php +++ /dev/null @@ -1 +0,0 @@ -Click here to reset your password: {{ url('password/reset/'.$token) }} diff --git a/code/resources/views/emails/password.blade.php b/code/resources/views/emails/password.blade.php deleted file mode 100644 index 203053936..000000000 --- a/code/resources/views/emails/password.blade.php +++ /dev/null @@ -1 +0,0 @@ -Click here to reset your password: {{ url('password/reset/'.$token) }} diff --git a/code/resources/views/errors/503.blade.php b/code/resources/views/errors/503.blade.php deleted file mode 100644 index 669dcb800..000000000 --- a/code/resources/views/errors/503.blade.php +++ /dev/null @@ -1,41 +0,0 @@ - - - - - - - -
    -
    -
    Be right back.
    -
    -
    - - diff --git a/code/resources/views/home.blade.php b/code/resources/views/home.blade.php deleted file mode 100644 index 8f5e70585..000000000 --- a/code/resources/views/home.blade.php +++ /dev/null @@ -1,17 +0,0 @@ -@extends('app') - -@section('content') -
    -
    -
    -
    -
    Home
    - -
    - You are logged in! -
    -
    -
    -
    -
    -@endsection diff --git a/code/resources/views/themes/default1/Agent/organization/create.blade.php b/code/resources/views/themes/default1/Agent/organization/create.blade.php deleted file mode 100644 index fc5a5aa95..000000000 --- a/code/resources/views/themes/default1/Agent/organization/create.blade.php +++ /dev/null @@ -1,116 +0,0 @@ -@extends('themes.default1.layouts.agentblank') - -@section('Users') -class="active" -@stop - -@section('user-bar') -active -@stop - -@section('organizations') -class="active" -@stop - -@section('HeadInclude') -@stop - -@section('PageHeader') - - -@stop - - -@section('breadcrumbs') - -@stop - - -@section('content') - - - -{!! Form::open(['action'=>'Agent\OrganizationController@store','method'=>'post']) !!} - -
    -
    - -

    {{Lang::get('lang.create')}} {!! Form::submit(Lang::get('lang.save'),['class'=>'form-group btn btn-primary pull-right'])!!}

    - -
    - -
    - - - -
    - -
    - - {!! Form::label('name',Lang::get('lang.name')) !!} - {!! $errors->first('name', ':message') !!} - {!! Form::text('name',null,['class' => 'form-control']) !!} - -
    - - - - - -
    - - {!! Form::label('phone',Lang::get('lang.phone')) !!} - {!! $errors->first('phone', ':message') !!} - {!! Form::text('phone',null,['class' => 'form-control']) !!} - -
    - - - -
    - - {!! Form::label('website',Lang::get('lang.website')) !!} - {!! $errors->first('website', ':message') !!} - {!! Form::text('website',null,['class' => 'form-control']) !!} - -
    - -
    - - - -
    - -
    - - {!! Form::label('address',Lang::get('lang.address')) !!} - {!! Form::textarea('address',null,['class' => 'form-control']) !!} - -
    - -
    - - {!! Form::label('internal_notes',Lang::get('lang.internal_notes')) !!} - {!! Form::textarea('internal_notes',null,['class' => 'form-control']) !!} - -
    - -
    - -
    -
    - - -@section('FooterInclude') - -@stop -@stop - -@stop -@section('FooterInclude') - -@stop - - \ No newline at end of file diff --git a/code/resources/views/themes/default1/Agent/organization/edit.blade.php b/code/resources/views/themes/default1/Agent/organization/edit.blade.php deleted file mode 100644 index e12549d83..000000000 --- a/code/resources/views/themes/default1/Agent/organization/edit.blade.php +++ /dev/null @@ -1,115 +0,0 @@ -@extends('themes.default1.layouts.agentblank') -@section('Users') -class="active" -@stop - -@section('user-bar') -active -@stop - -@section('organizations') -class="active" -@stop - -@section('HeadInclude') -@stop - -@section('PageHeader') - - -@stop - - -@section('breadcrumbs') - -@stop - - -@section('content') - - - -{!! Form::model($orgs,['url'=>'organizations/'.$orgs->id,'method'=>'PATCH']) !!} - -
    -
    - -

    {{Lang::get('lang.edit')}} {!! Form::submit(Lang::get('lang.save'),['class'=>'form-group btn btn-primary pull-right'])!!}

    - -
    - -
    - - - -
    - -
    - - {!! Form::label('name',Lang::get('lang.name')) !!} - {!! $errors->first('name', ':message') !!} - {!! Form::text('name',null,['disabled'=>'disabled','class' => 'form-control']) !!} - -
    - - - - - -
    - - {!! Form::label('phone',Lang::get('lang.phone')) !!} - {!! $errors->first('phone', ':message') !!} - {!! Form::text('phone',null,['class' => 'form-control']) !!} - -
    - - - -
    - - {!! Form::label('website',Lang::get('lang.website')) !!} - {!! $errors->first('website', ':message') !!} - {!! Form::text('website',null,['class' => 'form-control']) !!} - -
    - -
    - - - -
    - -
    - - {!! Form::label('address',Lang::get('lang.address')) !!} - {!! Form::textarea('address',null,['class' => 'form-control']) !!} - -
    - -
    - - {!! Form::label('internal_notes',Lang::get('lang.internal_notes')) !!} - {!! Form::textarea('internal_notes',null,['class' => 'form-control']) !!} - -
    - -
    - -
    -
    - - -@section('FooterInclude') - -@stop -@stop - -@stop -@section('FooterInclude') - -@stop - - \ No newline at end of file diff --git a/code/resources/views/themes/default1/Agent/organization/index.blade.php b/code/resources/views/themes/default1/Agent/organization/index.blade.php deleted file mode 100644 index e2e09a82d..000000000 --- a/code/resources/views/themes/default1/Agent/organization/index.blade.php +++ /dev/null @@ -1,125 +0,0 @@ -@extends('themes.default1.layouts.agentblank') - -@section('Users') -class="active" -@stop - -@section('user-bar') -active -@stop - -@section('organizations') -class="active" -@stop - - -@section('HeadInclude') -@stop - -@section('PageHeader') - - -@stop - - -@section('breadcrumbs') - -@stop - - -@section('content') - - - -
    -
    -
    -
    -
    -

    {{Lang::get('lang.organization')}}

    {{Lang::get('lang.create_user')}}
    - -
    - - - - -@if(Session::has('success')) -
    - - Success! - - {{Session::get('success')}} -
    - @endif - - @if(Session::has('fails')) -
    - - Alert! Failed. - - {{Session::get('fails')}} -
    - @endif - - - - - - - - - - - - - - - @foreach($orgs as $org) - - - - - - - - @endforeach - - - - - - -
    {{Lang::get('lang.name')}}{{Lang::get('lang.user')}}{{Lang::get('lang.created')}}{{Lang::get('lang.last_updated')}}{{Lang::get('lang.action')}}
    {{$org -> name }}{{$org -> created_at}}{{$org -> updated_at}} - {!! Form::open(['route'=>['organizations.destroy', $org->id],'method'=>'DELETE']) !!} - -
    - - {!! Form::button(' Delete', - ['type' => 'submit', - 'class'=> 'actions-line icon-trash', - 'onclick'=>'return confirm("Are you sure?")']) - !!} - -
    - {!! Form::close() !!} -
    -
    -
    -
    -
    -
    - - -@section('FooterInclude') - -@stop -@stop - -@stop -@section('FooterInclude') - -@stop - - \ No newline at end of file diff --git a/code/resources/views/themes/default1/Agent/organization/show.blade.php b/code/resources/views/themes/default1/Agent/organization/show.blade.php deleted file mode 100644 index fe943b33d..000000000 --- a/code/resources/views/themes/default1/Agent/organization/show.blade.php +++ /dev/null @@ -1,123 +0,0 @@ -@extends('themes.default1.layouts.agentblank') - -@section('Users') -class="active" -@stop - -@section('user-bar') -active -@stop - -@section('organizations') -class="active" -@stop - -@section('HeadInclude') -@stop - -@section('PageHeader') - - -@stop - - -@section('breadcrumbs') - -@stop - - -@section('content') - - -
    -
    - -

    {{$orgs->name}}

    - - -
    - -
    - -
    - - {{Lang::get('lang.name')}} - -
    - - - -
    - -
    - -
    - - {{Lang::get('lang.account_manager')}} - -
    - -
    - - - -
    - -
    - -
    - -
    - -
    - -
    - - {{Lang::get('lang.created')}} - -
    - -
    - - {{$orgs -> created_at}} - -
    - -
    - -
    - -
    - - {{Lang::get('lang.last_updated')}} - -
    - -
    - - {{$orgs -> updated_at}} - -
    - -
    - -
    -
    - -@section('FooterInclude') - -@stop -@stop - -@stop -@section('FooterInclude') - -@stop - - \ No newline at end of file diff --git a/code/resources/views/themes/default1/Agent/ticket/answered.blade.php b/code/resources/views/themes/default1/Agent/ticket/answered.blade.php deleted file mode 100644 index 2c4da44c7..000000000 --- a/code/resources/views/themes/default1/Agent/ticket/answered.blade.php +++ /dev/null @@ -1,173 +0,0 @@ -@extends('themes.default1.layouts.agentblank') - -@section('Tickets') -class="active" -@stop - -@section('ticket-bar') -active -@stop - -@section('answered') -class="active" -@stop - - -@section('content') -

    - Tickets -

    - - -
    -
    -

    Inbox

    5 new messages - -
    -
    -
    - - - - -
    - where('isanswered', '=', '1')->get()); -if ($counted < 10) { - echo $counted . "/" . $counted; -} else { - echo "10/" . $counted; -} -?> -
    -
    -
    - - - - - - - - - - - - - where('isanswered', '=', 1)->paginate(10);?> - - @foreach ($tickets as $ticket ) - - - id)->first();?> - - - - - priority_id)->first();?> - - - - - @endforeach - -
    subjectTicket IDlast ReplierRepliesPriorityLast ActivityReply Due
    {{$title->title}}#{!! $ticket->ticket_number !!}client11{{$priority->priority}}11h 59m 23s5h 23m 03s
    -
    - setPath(url('/ticket'))->render();?>  -
    -
    -
    -
    - - - -@stop \ No newline at end of file diff --git a/code/resources/views/themes/default1/Agent/ticket/closed.blade.php b/code/resources/views/themes/default1/Agent/ticket/closed.blade.php deleted file mode 100644 index d68dc2022..000000000 --- a/code/resources/views/themes/default1/Agent/ticket/closed.blade.php +++ /dev/null @@ -1,175 +0,0 @@ -@extends('themes.default1.layouts.agentblank') - -@section('Tickets') -class="active" -@stop - -@section('ticket-bar') -active -@stop - -@section('closed') -class="active" -@stop - - -@section('content') - -

    - Tickets -

    - - - -
    -
    -

    Inbox

    5 new messages - -
    -
    -
    - - - - -
    - ', 1)->where('status', '<', 4)->get()); -if ($counted < 10) { - echo $counted . "/" . $counted; -} else { - echo "10/" . $counted; -} -?> -
    -
    -
    - - - - - - - - - - - - - ', 1)->where('status', '<', 4)->paginate(2);?> - - @foreach ($tickets as $ticket ) - - - id)->first();?> - - - - - priority_id)->first();?> - - - - - @endforeach - -
    subjectTicket IDlast ReplierRepliesPriorityLast ActivityReply Due
    {{$title->title}}#{!! $ticket->ticket_number !!}client11{{$priority->priority}}11h 59m 23s5h 23m 03s
    -
    - setPath(url('/ticket'))->render();?>  -
    -
    -
    -
    - - - -@stop \ No newline at end of file diff --git a/code/resources/views/themes/default1/Agent/ticket/new.blade.php b/code/resources/views/themes/default1/Agent/ticket/new.blade.php deleted file mode 100644 index 003e9e29c..000000000 --- a/code/resources/views/themes/default1/Agent/ticket/new.blade.php +++ /dev/null @@ -1,205 +0,0 @@ -@extends('themes.default1.layouts.agentblank') - -@section('Tickets') -class="active" -@stop - -@section('ticket-bar') -active -@stop - -@section('newticket') -class="active" -@stop - - -@section('content') - - -{!! Form::open(['route'=>'post.newticket','method'=>'post']) !!} -
    -
    -

    Create Ticket

    - -
    -
    - - - @if(Session::has('success')) -
    - - - {{Session::get('success')}} -
    - @endif - - @if(Session::has('fails')) -
    - - - {{Session::get('fails')}} -
    - @endif -
    -

    User Details:

    -
    -
    -
    - - - {!! $errors->first('email', ':message') !!} -
    -
    -
    -
    - - - {!! $errors->first('fullname', ':message') !!} -
    -
    - -
    -
    - -
    -

    Ticket Option

    -
    -
    -
    - - - {!! $errors->first('helptopic', ':message') !!} -
    -
    -
    -
    - - - {!! $errors->first('dept', ':message') !!} -
    -
    -
    -
    - - - {!! $errors->first('sla', ':message') !!} -
    -
    -
    -
    - - -
    -
    -
    -
    - - -
    -
    -
    -
    - -
    -

    Ticket Detail

    -
    -
    -
    - -
    -
    - - {!! $errors->first('subject', ':message') !!} -
    -
    -
    -
    -
    -
    - -
    -
    - - {!! $errors->first('body', ':message') !!} -
    -
    -
    -
    -
    -
    - -
    -
    - - {!! $errors->first('priority', ':message') !!} -
    -
    -
    -
    -
    - -
    -{!! Form::close() !!} - - - - - -@stop \ No newline at end of file diff --git a/code/resources/views/themes/default1/Agent/ticket/overdue.blade.php b/code/resources/views/themes/default1/Agent/ticket/overdue.blade.php deleted file mode 100644 index d720a4172..000000000 --- a/code/resources/views/themes/default1/Agent/ticket/overdue.blade.php +++ /dev/null @@ -1,174 +0,0 @@ -@extends('themes.default1.layouts.agentblank') - -@section('Tickets') -class="active" -@stop - -@section('ticket-bar') -active -@stop - -@section('overdue') -class="active" -@stop - -@section('content') - -

    - Tickets -

    - - - -
    -
    -

    Inbox

    5 new messages - -
    -
    -
    - - - - -
    - where('isoverdue', '=', 1)->get()); -if ($counted < 10) { - echo $counted . "/" . $counted; -} else { - echo "10/" . $counted; -} -?> -
    -
    -
    - - - - - - - - - - - - - where('isoverdue', '=', 1)->paginate(2);?> - - @foreach ($tickets as $ticket ) - - - id)->first();?> - - - - - priority_id)->first();?> - - - - - @endforeach - -
    subjectTicket IDlast ReplierRepliesPriorityLast ActivityReply Due
    {{$title->title}}#{!! $ticket->ticket_number !!}client11{{$priority->priority}}11h 59m 23s5h 23m 03s
    -
    - setPath(url('/ticket'))->render();?>  -
    -
    -
    -
    - - - -@stop \ No newline at end of file diff --git a/code/resources/views/themes/default1/Agent/ticket/pdf.blade.php b/code/resources/views/themes/default1/Agent/ticket/pdf.blade.php deleted file mode 100644 index 2aaa1422b..000000000 --- a/code/resources/views/themes/default1/Agent/ticket/pdf.blade.php +++ /dev/null @@ -1,51 +0,0 @@ - - - - - - - - -

    -
    -

    - -

    {{$thread->title}}


    - - - user_id)->first(); ?> - id)->get(); ?> - @foreach($response as $last) - created_at; ?> - @endforeach - - status)->first(); ?> - priority_id)->first(); ?> - help_topic_id)->first(); ?> - help_topic_id)->first(); ?> - - - - - - - - - - - -
    Status: {{$status->state}}
    Priority: {{$priority->priority}}
    Department: {{$help_topic->department}}
    Email: {{$user->email}}
    Phone: {{$thread->user_id}}
    Source: {{$thread->ip_address}}
    Help Topic: {{$help_topic->topic}}
    Last Message: {{$last->poster}}
    - - id)->get(); ?> - - @foreach($conversations as $conversation) -

    -
    {!! $conversation->poster !!}


    - {!! $conversation->body !!}

    - Date: {!! $thread->created_at !!}
    - - @endforeach - - - - \ No newline at end of file diff --git a/code/resources/views/themes/default1/Agent/ticket/trash.blade.php b/code/resources/views/themes/default1/Agent/ticket/trash.blade.php deleted file mode 100644 index 9c4ba3e58..000000000 --- a/code/resources/views/themes/default1/Agent/ticket/trash.blade.php +++ /dev/null @@ -1,175 +0,0 @@ -@extends('themes.default1.layouts.agentblank') - -@section('Tickets') -class="active" -@stop - -@section('ticket-bar') -active -@stop - -@section('trash') -class="active" -@stop - -@section('content') - -{{--

    - Tickets -

    --}} - - - -
    -
    -get());?> -

    Trash

    {{$counted}} Messages - -
    -
    -
    - - - - -
    - get()); -if ($counted < 10) { - echo $counted . "/" . $counted; -} else { - echo "10/" . $counted; -} -?> -
    -
    -
    - - - - - - - - - - - - - paginate(10);?> - - @foreach ($tickets as $ticket ) - - - id)->first();?> - - - - - - - - - @endforeach - -
    - subjectTicket IDPrioritylast ReplierRepliesLast ActivityReply Due
    {{$title->title}}#{!! $ticket->ticket_number !!}NONEclient1111h 59m 23s5h 23m 03s
    -
    - setPath(url('/ticket'))->render();?>  -
    -
    -
    -
    - - - -@stop \ No newline at end of file diff --git a/code/resources/views/themes/default1/Agent/ticket/unassigned.blade.php b/code/resources/views/themes/default1/Agent/ticket/unassigned.blade.php deleted file mode 100644 index 262bbe612..000000000 --- a/code/resources/views/themes/default1/Agent/ticket/unassigned.blade.php +++ /dev/null @@ -1,175 +0,0 @@ -@extends('themes.default1.layouts.agentblank') - -@section('Tickets') -class="active" -@stop - -@section('ticket-bar') -active -@stop - -@section('unassigned') -class="active" -@stop - -@section('content') - -{{--

    - Tickets -

    --}} - - - -
    -
    -get());?> -

    Unassigned

    {{$counted}} Messages - -
    -
    -
    - - - - -
    - get()); -if ($counted < 10) { - echo $counted . "/" . $counted; -} else { - echo "10/" . $counted; -} -?> -
    -
    -
    - - - - - - - - - - - - - paginate(10);?> - - @foreach ($tickets as $ticket ) - - - id)->first();?> - - - - - - - - - @endforeach - -
    - subjectTicket IDPrioritylast ReplierRepliesLast ActivityReply Due
    {{$title->title}}#{!! $ticket->ticket_number !!}NONEclient1111h 59m 23s5h 23m 03s
    -
    - setPath(url('/ticket'))->render();?>  -
    -
    -
    -
    - - - -@stop \ No newline at end of file diff --git a/code/resources/views/themes/default1/Agent/user/show.blade.php b/code/resources/views/themes/default1/Agent/user/show.blade.php deleted file mode 100644 index 2661e35d6..000000000 --- a/code/resources/views/themes/default1/Agent/user/show.blade.php +++ /dev/null @@ -1,159 +0,0 @@ -@extends('themes.default1.layouts.agentblank') - -@section('Users') -class="active" -@stop - -@section('user-bar') -active -@stop - -@section('user') -class="active" -@stop - -@section('HeadInclude') -@stop - -@section('PageHeader') - - -@stop - - -@section('breadcrumbs') - -@stop - - -@section('content') - - -
    -
    - -

    {{$users->full_name}}

    - - -
    - -
    - -
    - - {{Lang::get('lang.name')}} - -
    - - - -
    - -
    - -
    - - {{Lang::get('lang.email')}} - -
    - -
    - - {{$users -> email }} - -
    - -
    - -
    - -
    - -
    - -
    - - {{Lang::get('lang.organization')}} - -
    - - - -
    - -
    - -
    - - {{Lang::get('lang.status')}} - -
    - -
    - - - -
    - -
    - -
    - -
    - -
    - -
    - - {{Lang::get('lang.created')}} - -
    - -
    - - {{$users -> created_at}} - -
    - -
    - -
    - -
    - - {{Lang::get('lang.last_updated')}} - -
    - -
    - - {{$users -> updated_at}} - -
    - -
    - -
    -
    - -@section('FooterInclude') - -@stop -@stop - -@stop -@section('FooterInclude') - -@stop - - \ No newline at end of file diff --git a/code/resources/views/themes/default1/client/guest-user/form.blade.php b/code/resources/views/themes/default1/client/guest-user/form.blade.php deleted file mode 100644 index 1c9f9a4dd..000000000 --- a/code/resources/views/themes/default1/client/guest-user/form.blade.php +++ /dev/null @@ -1,160 +0,0 @@ -@extends('themes.default1.layouts.blank') -@section('HeadInclude') -@stop - -@section('PageHeader') - - -@stop - - -@section('breadcrumbs') - -@stop - - -@section('content') - - - - - - - - - - - - - -encrypt(csrf_token()); - ?> - -{!! Form::open(['action'=>'Guest\FormController@postedForm','method'=>'post']) !!} -
    -
    - -

    Ticket {!! Form::submit(Lang::get('lang.send'),['class'=>'form-group btn btn-primary pull-right'])!!}

    - -
    -
    - - -
    - - {!! Form::label('help_topic',Lang::get('lang.help_topic')) !!} - {!! $errors->first('help_topic', ':message') !!} - {!!Form::select('help_topic', [''=>'Select a Topic','Topics'=>'default Topic'],null,['id'=>'selectid','class' => 'form-control']) !!} - -
    - - - - - -
    - -
    -
    -
    - - - - - - - - - - -@stop - diff --git a/code/resources/views/themes/default1/client/layout/guest.blade.php b/code/resources/views/themes/default1/client/layout/guest.blade.php deleted file mode 100644 index 6e41519a8..000000000 --- a/code/resources/views/themes/default1/client/layout/guest.blade.php +++ /dev/null @@ -1,304 +0,0 @@ - - - - - - Faveo | HELP DESK - - - - - - - - - - - - - - - - - - - - - - @yield('HeadInclude') - - - - -
    - -
    - first();?> - - - - -
    - - - - - - - - - -
    - -
    - @yield('header') -
    - - -
    - @if(Auth::user()) - @yield('content1') - @else - @yield('content') - @endif - -
    -
    -first();?> - - - -
    - - Copyright © 2014-2015 {{$sys->name}}. All rights reserved. -
    -
    - - - - - - - - - - - - - - - - - - - - - -@yield('FooterInclude') - - \ No newline at end of file diff --git a/code/resources/views/themes/default1/layouts/agent.blade.php b/code/resources/views/themes/default1/layouts/agent.blade.php deleted file mode 100644 index 0b4bdbdf0..000000000 --- a/code/resources/views/themes/default1/layouts/agent.blade.php +++ /dev/null @@ -1,306 +0,0 @@ - - - - - Faveo | HELP DESK - - - - - - - - - - - - - - - - - - - - - - - - - @yield('HeadInclude') - - -
    - -
    - - - -
    - - - - -
    - -
    - -
    -
    - @yield('PageHeader') - @yield('breadcrumbs') -
    - - -
    - - @yield('content') -
    - -
    - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - @yield('FooterInclude') - - \ No newline at end of file diff --git a/code/resources/views/themes/default1/layouts/agentblank.blade.php b/code/resources/views/themes/default1/layouts/agentblank.blade.php deleted file mode 100644 index 1ac90eacc..000000000 --- a/code/resources/views/themes/default1/layouts/agentblank.blade.php +++ /dev/null @@ -1,454 +0,0 @@ - - - - - Faveo | HELP DESK - - - - - - - - - - - - - - - - - - - - - - - - - - - @yield('HeadInclude') - - -
    - -
    -first();?> - - - - -
    - - - - -
    - -
    - -
    -
    - @yield('PageHeader') - @yield('breadcrumbs') -
    - - -
    - - @yield('content') -
    - -
    - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - -@yield('FooterInclude') - - \ No newline at end of file diff --git a/code/resources/views/themes/default1/layouts/blank.blade.php b/code/resources/views/themes/default1/layouts/blank.blade.php deleted file mode 100644 index 12867f925..000000000 --- a/code/resources/views/themes/default1/layouts/blank.blade.php +++ /dev/null @@ -1,571 +0,0 @@ - - - - - Faveo | HELP DESK - - - - - - - - - - - - - - - - - - - - - - - - - - @yield('HeadInclude') - - -
    - -
    -first();?> - - - - -
    - - - - -
    - -
    - -
    -
    - @yield('PageHeader') - @yield('breadcrumbs') -
    - - -
    - - @yield('content') -
    - -
    - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - -@yield('FooterInclude') - - \ No newline at end of file diff --git a/code/resources/views/themes/default1/layouts/index.blade.php b/code/resources/views/themes/default1/layouts/index.blade.php deleted file mode 100644 index 1689035df..000000000 --- a/code/resources/views/themes/default1/layouts/index.blade.php +++ /dev/null @@ -1,104 +0,0 @@ -@extends('themes.default1.layouts.blank') - -@section('Emails') -class="active" -@stop - -@section('emails-bar') -active -@stop - -@section('emails') -class="active" -@stop - -@section('HeadInclude') -@stop - -@section('PageHeader') - -@stop - - -@section('breadcrumbs') - -@stop - - -@section('content') -
    -
    -
    -
    -

    {{Lang::get('lang.emails')}}

    {{Lang::get('lang.create_email')}}
    - -
    - - - -@if(Session::has('success')) -
    - - Success! - - {{Session::get('success')}} -
    - @endif - - @if(Session::has('fails')) -
    - - Alert! Failed. - - {{Session::get('fails')}} -
    - @endif - - - - - - - - - - - @foreach($emails as $email) - - - - - - - - - @endforeach - -
    {{Lang::get('lang.email')}}{{Lang::get('lang.priority')}}{{Lang::get('lang.department')}}{{Lang::get('lang.created')}}{{Lang::get('lang.last_updated')}}{{Lang::get('lang.action')}}
    {{$email -> email_address }}{{$email -> priority }}{{$email -> department }}{{$email -> created_at}}{{$email -> updated_at}} - {!! Form::open(['route'=>['emails.destroy', $email->id],'method'=>'DELETE']) !!} - -
    - - {!! Form::button(' Delete', - ['type' => 'submit', - 'class'=> 'actions-line icon-trash', - 'onclick'=>'return confirm("Are you sure?")']) - !!} - -
    - {!! Form::close() !!} -
    -
    -
    -
    -
    - -@stop -
    -@section('FooterInclude') - -@stop -@stop - \ No newline at end of file diff --git a/code/resources/views/themes/default1/layouts/routes.php b/code/resources/views/themes/default1/layouts/routes.php deleted file mode 100644 index f5eb3255e..000000000 --- a/code/resources/views/themes/default1/layouts/routes.php +++ /dev/null @@ -1,269 +0,0 @@ - 'Auth\AuthController', - 'password' => 'Auth\PasswordController', -]); - -$router->get('getmail/{token}', 'Auth\AuthController@getMail'); - -/* -|------------------------------------------------------------------------------- -|Admin Routes -|------------------------------------------------------------------------------- -| Here is defining entire routes for the Admin Panel -| -| - */ - -// To get the dash board -//Route::get('dashboard', 'HomeController@index'); - -Route::group(['middleware' => 'roles', 'roles' => 'user'], function () { - // resource is a function to process create,edit,read and delete - Route::resource('groups', 'Admin\GroupController'); // for group module, for CRUD - - Route::resource('departments', 'Admin\DepartmentController'); // for departments module, for CRUD - - Route::resource('teams', 'Admin\TeamController'); // in teams module, for CRUD - - Route::resource('agents', 'Admin\AgentController'); // in agents module, for CRUD - - Route::resource('emails', 'Admin\EmailsController'); // in emails module, for CRUD - - Route::resource('banlist', 'Admin\BanlistController'); // in banlist module, for CRUD - - Route::resource('template', 'Admin\TemplateController'); // in template module, for CRUD - - Route::get('getdiagno', 'Admin\TemplateController@formDiagno'); // for getting form for diagnostic - - Route::post('postdiagno', 'Admin\TemplateController@postDiagno'); // for getting form for diagnostic - - Route::resource('helptopic', 'Admin\HelptopicController'); // in helptopics module, for CRUD - - Route::resource('sla', 'Admin\SlaController'); // in SLA Plan module, for CRUD - - Route::resource('form', 'Admin\FormController'); // in Form module, for CRUD - -//$router->model('id','getcompany'); - - Route::get('getcompany', 'Admin\SettingsController@getcompany'); // direct to company setting page - - Route::patch('postcompany/{id}', 'Admin\SettingsController@postcompany'); // Updating the Company table with requests - - Route::get('getsystem', 'Admin\SettingsController@getsystem'); // direct to system setting page - - Route::patch('postsystem/{id}', 'Admin\SettingsController@postsystem'); // Updating the System table with requests - - Route::get('getticket', 'Admin\SettingsController@getticket'); // direct to ticket setting page - - Route::patch('postticket/{id}', 'Admin\SettingsController@postticket'); // Updating the Ticket table with requests - - Route::get('getemail', 'Admin\SettingsController@getemail'); // direct to email setting page - - Route::patch('postemail/{id}', 'Admin\SettingsController@postemail'); // Updating the Email table with requests - - Route::get('getaccess', 'Admin\SettingsController@getaccess'); // direct to access setting page - - Route::patch('postaccess/{id}', 'Admin\SettingsController@postaccess'); // Updating the Access table with requests - - Route::get('getresponder', 'Admin\SettingsController@getresponder'); // direct to responder setting page - - Route::patch('postresponder/{id}', 'Admin\SettingsController@postresponder'); // Updating the Responder table with requests - - Route::get('getalert', 'Admin\SettingsController@getalert'); // direct to alert setting page - - Route::patch('postalert/{id}', 'Admin\SettingsController@postalert'); // Updating the Alert table with requests - - /* Admin profile get */ - Route::get('admin-profile', 'Admin\ProfileController@getProfile'); - - /* Admin Profile Post */ - Route::patch('admin-profile', 'Admin\ProfileController@postProfile'); - - /* Admin Profile Password Post */ - Route::patch('admin-profile-password', 'Admin\ProfileController@postProfilePassword'); - -}); -/* calling ticket.blade.php file */ - -// $router->get('tickets','Admin\ThreadController@getTickets'); - -/* calling timeline.blade.php file */ - -Route::get('time', function () { - return view('themes.default1.admin.tickets.timeline'); - -}); - -/* -|------------------------------------------------------------------ -|Agent Routes -|-------------------------------------------------------------------- -| Here defining entire Agent Panel routers -| -| - */ -Route::group(['middleware' => 'role.agent'], function () { - /* User router is used to control the CRUD of user */ - Route::resource('user', 'Agent\UserController'); - - /* organization router used to deal CRUD function of organization */ - Route::resource('organizations', 'Agent\OrganizationController'); - - /* User profile get */ - Route::get('agent-profile', 'Agent\UserController@getProfile'); - - /* User Profile Post */ - Route::patch('agent-profile', 'Agent\UserController@postProfile'); - - /* Profile Password Post */ - Route::patch('agent-profile-password', 'Agent\UserController@postProfilePassword'); - -// Route::get('/abcd', 'GuestController@getList'); - -// Route::get('/qwer', ['as' => 'thread', 'uses' => 'GuestController@getThread']); - - /* Fetch Emails */ - Route::get('/test', ['as' => 'thr', 'uses' => 'Agent\MailController@fetchdata']); - - /* Get Ticket */ - Route::get('/ticket', ['as' => 'ticket', 'uses' => 'Agent\TicketController@ticket_list']); - - /* Get Open Ticket */ - Route::get('/ticket/open', ['as' => 'open.ticket', 'uses' => 'Agent\TicketController@open_ticket_list']); - - /* Get Answered Ticket */ - Route::get('/ticket/answered', ['as' => 'answered.ticket', 'uses' => 'Agent\TicketController@answered_ticket_list']); - - /* Get Tickets Assigned to logged user */ - Route::get('/ticket/myticket', ['as' => 'myticket.ticket', 'uses' => 'Agent\TicketController@myticket_ticket_list']); - - /* Get Overdue Ticket */ - Route::get('/ticket/overdue', ['as' => 'overdue.ticket', 'uses' => 'Agent\TicketController@overdue_ticket_list']); - - /* Get Closed Ticket */ - Route::get('/ticket/closed', ['as' => 'closed.ticket', 'uses' => 'Agent\TicketController@closed_ticket_list']); - - /* Get Create New Ticket */ - Route::get('/newticket', ['as' => 'newticket', 'uses' => 'Agent\TicketController@newticket']); - - /* Post Create New Ticket */ - Route::post('/newticket/post', ['as' => 'post.newticket', 'uses' => 'Agent\TicketController@post_newticket']); - - /* Get Thread by ID */ - Route::get('/thread/{id}', ['as' => 'ticket.thread', 'uses' => 'Agent\TicketController@thread']); - - /* Patch Thread Reply */ - Route::patch('/thread/reply/{id}', ['as' => 'ticket.reply', 'uses' => 'Agent\TicketController@reply']); - - /* Patch Internal Note */ - Route::patch('/internal/note/{id}', ['as' => 'Internal.note', 'uses' => 'Agent\TicketController@InternalNote']); - - /* Patch Ticket assigned to whom */ - Route::patch('/ticket/assign/{id}', ['as' => 'assign.ticket', 'uses' => 'Agent\TicketController@assign']); - - /* Patchi Ticket Edit */ - Route::patch('/ticket/post/edit/{id}', ['as' => 'ticket.post.edit', 'uses' => 'Agent\TicketController@ticket_edit_post']); - - /* Get Print Ticket */ - Route::get('/ticket/print/{id}', ['as' => 'ticket.print', 'uses' => 'Agent\TicketController@ticket_print']); - - /* Get Ticket Close */ - Route::get('/ticket/close/{id}', ['as' => 'ticket.close', 'uses' => 'Agent\TicketController@close']); - - /* Get ticket Resolve */ - Route::get('/ticket/resolve/{id}', ['as' => 'ticket.resolve', 'uses' => 'Agent\TicketController@resolve']); - - /* Get Ticket Open */ - Route::get('/ticket/open/{id}', ['as' => 'ticket.open', 'uses' => 'Agent\TicketController@open']); - - /* Get Ticket Delete */ - Route::get('/ticket/delete/{id}', ['as' => 'ticket.delete', 'uses' => 'Agent\TicketController@delete']); - - /* Get Ban Email */ - Route::get('/email/ban/{id}', ['as' => 'ban.email', 'uses' => 'Agent\TicketController@ban']); - - /* Get Ticket Surrender */ - Route::get('/ticket/surrender/{id}', ['as' => 'ticket.surrender', 'uses' => 'Agent\TicketController@surrender']); - - Route::get('/aaaa', 'Guest\GuestController@ticket_number'); - -}); - -/* -|------------------------------------------------------------------ -|Guest Routes -|-------------------------------------------------------------------- -| Here defining Guest User's routes -| -| - */ - -/* get the form for create a ticket by guest user */ -$router->get('getform', 'Guest\FormController@getForm'); - -/* post the AJAX form for create a ticket by guest user */ -$router->post('postform', 'Guest\FormController@postForm'); - -/* post the form to store the value */ -$router->post('postedform', 'Guest\FormController@postedForm'); - -//testing checkbox auto-populate -$router->get('check', 'CheckController@getcheck'); - -$router->post('postcheck/{id}', 'CheckController@postcheck'); - -//guest layout -$router->get('guest', 'Guest\OuthouseController@get'); - -//testing ckeditor -//$router->get('ck','Admin\SettingsController@getck'); - -//=================================================================================== - -Route::group(['middleware' => 'role.user', 'roles' => 'user'], function () { - /* User profile get */ - Route::get('user-profile', 'Guest\GuestController@getProfile'); - - /* User Profile Post */ - Route::patch('profile', 'Guest\GuestController@postProfile'); - - /* Profile Password Post */ - Route::patch('profile-password', 'Guest\GuestController@postProfilePassword'); - -}); -//==================================================================================== -/* Get my tickets */ -$router->get('myticket', ['as' => 'ticket', 'uses' => 'Guest\GuestController@getMyticket']); - -/* Get my ticket thread */ -//$router->get('thread/{id}',['as'=>'ticket.thread','uses'=>'Guest\GuestController@getthread']); - -// testing -// Route::get('testing','Agent\MailController@getdata'); - -/* Check your Ticket */ -$router->get('checkticket', 'Guest\GuestController@getCheckTicket'); - -/* post Check Ticket */ -$router->post('postcheck', 'Guest\GuestController@PostCheckTicket'); -$router->get('postcheck', 'Guest\GuestController@PostCheckTicket'); - -/* 404 page */ -$router->get('404', 'error\ErrorController@error404'); diff --git a/code/resources/views/themes/default1/staff/dashboard.blade.php b/code/resources/views/themes/default1/staff/dashboard.blade.php deleted file mode 100644 index 3ac00faa6..000000000 --- a/code/resources/views/themes/default1/staff/dashboard.blade.php +++ /dev/null @@ -1,8 +0,0 @@ -user_id)->first();?> - -@section('nav1') -class="active" -@stop - -@section('My') -class="active" -@stop - -@section('sidebar') -
  • TICKET INFORMATION
  • -
  • - - TICKET ID -
    #{{$tickets->ticket_number}} -
    -
  • -
  • - - USER -
    {{$user->email}} -
    -
  • -
  • - - @if($tickets->assigned_to > 0) - ASSIGNED TO -
    {{$tickets ->assigned_to}} - @else - UNASSIGNED - @endif -
    -
  • -@stop - - -@section('content') - - - -
    -

    - Timeline - example -

    -
    - - -
    - - -
    -
    - -

    {{$thread->user_id}}

    ( organisation ) -
    - - - - - -
    - - -
    - - {!! Form::close() !!} -
    -
    - -
    -
    -
    -
    - priority_id)->first(); - ?> -
    -
    -
    - sla; - $SlaPlan = App\Model\Manage\Sla_plan::where('id','=',$sla)->first();?> - SLA Plan: {{$SlaPlan->grace_period}} -
    -
    - Created Date: {{date_format($tickets->created_at, 'd/m/Y H:i:s')}} -
    -
    - Due Date: - created_at; - $time = date_create($time); - date_add($time, date_interval_create_from_date_string($SlaPlan->grace_period)); - echo date_format($time, 'd/m/Y H:i:s'); - ?> -
    -
    - id)->get();?> - @foreach($response as $last) - created_at; ?> - @endforeach - Last Response: {{date_format($ResponseDate, 'd/m/Y H:i:s')}} -
    -
    -
    -
    -
    - - - status)->first();?> - priority_id)->first();?> - help_topic_id)->first();?> - -
    Status: {{$status->state}}
    Priority: {{$priority->priority}}
    Department: {{$help_topic->department}}
    Email: {{$user->email}}
    - -
    -
    - - - - - - help_topic_id)->first();?> - -
    Phone: {{$thread->user_id}}
    Source: {{$thread->ip_address}}
    Help Topic: {{$help_topic->topic}}
    Last Message: {{$last->poster}}
    -
    - -
    -
    -
    - -
    - - - -
    -
    - - -
    -
    - -
      - - id)->paginate(2); - foreach ($conversations as $conversation) { - ?> -
    • - created_at; - $ConvDate = explode(' ',$ConvDate1); - - $date = $ConvDate[0]; - $time = $ConvDate[1]; - $time = substr($time, 0, -3); - if(isset($data) && $date==$data){ - } else { - ?> - {{date_format($conversation->created_at, 'd/m/Y')}} - -
    • -
    • - staff_id > 0) { ?> - - user_id > 0) { ?> - - - - -
      - {{date_format($conversation->created_at, 'd/m/Y H:i:s')}} -

      {{$conversation->poster}}

      -
      - {!! $conversation->body !!} -
      -
      -
    • - id ?> - -
    • - -
    • -
        - setPath( url('/thread/'.'1'))->render(); ?> -
      -
    -
    -
    -
    -
    -
    - - - -@stop \ No newline at end of file diff --git a/code/resources/views/welcome.blade.php b/code/resources/views/welcome.blade.php deleted file mode 100644 index 354b114bb..000000000 --- a/code/resources/views/welcome.blade.php +++ /dev/null @@ -1,48 +0,0 @@ - - - Tickets - - - - - - -
    -
    -
    Tickets
    -
    Ticket base System Under Construction
    -
    -
    - - diff --git a/code/public/robots.txt b/code/robots.txt similarity index 100% rename from code/public/robots.txt rename to code/robots.txt