Example #1
0
 public function isInUse()
 {
     $Extension = Extension::where('customer', Auth::user()->customer)->where('app', 'Queue')->where('appdata', $this->name)->first();
     if ($Extension) {
         return true;
     }
     return false;
 }
Example #2
0
 public function isInUse()
 {
     $Extension = Extension::where('customer', Auth::user()->customer)->where('app', 'Goto')->where('appdata', Auth::user()->Customer->internal_context . ',' . $this->sd_exten . ',1')->first();
     if ($Extension) {
         return true;
     }
     return false;
 }
Example #3
0
 public static function getExtensionId($data)
 {
     $var = \App\Extension::where('file_extenstion', '=', $data)->first();
     if ($var) {
         $var = $var->id;
         return $var;
     }
 }
 /**
  * Update the specified resource in storage.
  *
  * @param  \Illuminate\Http\Request  $request
  * @param  int  $id
  * @return \Illuminate\Http\Response
  */
 public function update(Requests\ChangeDIDRequest $request, $id)
 {
     $DID = DID::find($id);
     $Route = Extension::where('customer', Auth::user()->customer)->where('priority', 1)->where('exten', $DID->did_did)->where('context', Auth::user()->Customer->incoming_context)->first();
     $DID->dest_type = $request->input('destination_type');
     switch ($request->input('destination_type')) {
         case 'hangup':
             $DID->dest_target = '';
             $Route->app = 'Hangup';
             $Route->appdata = '';
             break;
         case 'forward':
             $DID->dest_target = $request->input('forward');
             $Route->app = 'Dial';
             $Route->appdata = '${TRUNK1}/' . $request->input('forward') . ',60';
             break;
         case 'extension':
             $DID->dest_target = $request->input('extension');
             $Route->app = 'Goto';
             $Route->appdata = Auth::user()->Customer->internal_context . ',' . $request->input('extension') . ',1';
             break;
         case 'ivr':
             $DID->dest_target = $request->input('ivr');
             break;
         case 'ringgroup':
             $DID->dest_target = $request->input('ringgroup');
             break;
         case 'schedule':
             $DID->dest_target = $request->input('schedule');
             break;
         case 'confbridge':
             $DID->dest_target = $request->input('confbridge');
             break;
         case 'voicemail':
             $DID->dest_target = $request->input('voicemail');
             break;
         case 'queue':
             $DID->dest_target = $request->input('queue');
             break;
         case 'busy':
             $DID->dest_target = '';
             $Route->app = 'Busy';
             $Route->appdata = '';
             break;
         default:
             $DID->dest_target = '';
             $Route->app = 'Hangup';
             $Route->appdata = '';
             break;
     }
     $DID->save();
     $Route->save();
     return redirect('/did');
 }
 public function delete()
 {
     parent::delete();
     $Extensions = Extension::where('app', 'ConfBridge')->where('appdata', Auth::user()->customer . '_' . $this->conf_name)->where('customer', Auth::user()->customer)->get();
     foreach ($Extensions as $Extension) {
         if ($Extension->context == Auth::user()->Customer->internal_context) {
             UsedExtension::where('customer', Auth::user()->customer)->where('extension', $Extension->exten)->delete();
         }
         Extension::where('context', $Extension->context)->where('exten', $Extension->exten)->where('customer', Auth::user()->customer)->delete();
     }
 }
 public static function genRoute($context, $exten, $type, $dest)
 {
     switch ($type) {
         case 'hangup':
             return "Hangup";
             break;
         case 'forward':
             return "Forward - " . $this->attributes['dest_target'];
             break;
         case 'extension':
             return "Extenstion - ";
             break;
         case 'ivr':
             return "Auto Attendant - ";
             break;
         case 'ringgroup':
             return "Ring Group - ";
             break;
         case 'schedule':
             return "Schedule - ";
             break;
         case 'confbridge':
             $Conf = ConferenceBridge::find($dest);
             Extension::create(['context' => $context, 'exten' => $exten, 'priority' => '1', 'app' => 'Answer', 'appdata' => '', 'customer' => Auth::user()->customer]);
             $priority = 2;
             if ($Conf->conf_auth) {
                 Extension::create(['context' => $context, 'exten' => $exten, 'priority' => $priority, 'app' => 'Authenticate', 'appdata' => $Conf->conf_auth, 'customer' => Auth::user()->customer]);
                 $priority++;
             }
             Extension::create(['context' => $context, 'exten' => $exten, 'priority' => $priority, 'app' => 'ConfBridge', 'appdata' => Auth::user()->customer . '_' . $Conf->conf_name, 'customer' => Auth::user()->customer]);
             break;
         case 'voicemail':
             return "Voicemail - ";
             break;
         case 'queue':
             return "Queue - ";
             break;
         case 'busy':
             return "Busy";
             break;
         default:
             return "Error";
             break;
     }
 }
Example #7
0
 /**
  * Overrides eloquent delete method
  * 
  */
 public function delete()
 {
     parent::delete();
     Extension::where('customer', Auth::user()->customer)->where('context', Auth::user()->Customer->internal_context)->where('exten', $this->exten)->delete();
 }
Example #8
0
 /**
  * Store a newly created resource in storage.
  *
  * @return Response
  */
 public function handleCreate()
 {
     $user_id = Auth::id();
     $user = User::find($user_id);
     $user_name = $user->first_name;
     $date = HelperController::convertCurrentTime();
     $file = Input::file('file');
     $extension = $file->getClientOriginalExtension();
     // getting file extension
     $fileName = $file->getClientOriginalName();
     //$fileName=  HelperController::explodefile($fileName);//explode the file name and file's extension and retrieve only file name
     $path = '/files/' . $user_name . '/' . $date . '/' . $extension;
     $destinationPath = public_path() . $path;
     // upload path
     $upload_success = $file->move($destinationPath, $fileName);
     // uploading file to given path
     if ($upload_success) {
         $file_name_from_db = HelperController::checkFileName($fileName);
         $file_path_from_db = HelperController::checkFilePath($path);
         if ($fileName != $file_name_from_db && $path != $file_path_from_db) {
             /*
              * file data is stored in database
              * 
              */
             $db_file = new File();
             $db_file->file_name = $fileName;
             $db_file->file_path = 'files/' . $user_name . '/' . $date . '/' . $extension;
             $db_file->save();
             $db_file->members()->attach($user_id);
             //check file extension from extension collection
             $ext_from_db = HelperController::checkExtension($extension);
             if ($extension != $ext_from_db) {
                 $db_file_extension = new Extension();
                 $db_file_extension->file_extension = $extension;
                 $db_file_extension->save();
                 $db_file_extension->files()->attach($db_file);
             } elseif ($extension == $ext_from_db) {
                 //$old_extension=  Extension::where('file_extension','=',$extension)->first();
                 //$extension_id=$old_extension->id;
                 $ext_id = HelperController::getExtensionId($extension);
                 $db_file->extensions()->attach($ext_id);
             }
         }
         return Response::json('success', 200);
     } else {
         return Response::json('error', 400);
     }
     //echo $file;
 }