<?php
use Illuminate\Support\Facades\Input;
use Illuminate\Support\Collection;

/*
|--------------------------------------------------------------------------
| Web Routes
|--------------------------------------------------------------------------
|
| Here is where you can register web routes for your application. These
| routes are loaded by the RouteServiceProvider within a group which
| contains the "web" middleware group. Now create something great!
|
*/

Route::get('/', function () {
    return redirect('login');
});

Auth::routes();

Route::get('/noseat', function () {
    return view('noseat');
});


/////subscription new links////////////////////////////////////////////////////////////////////////////////////////////////
Route::get('/subscription',  'SubscriptionController@subscription');
Route::get('/subscription_create/{planname}/{frequency}',  'SubscriptionController@subscription_create');
Route::post('/subscription_post',  'SubscriptionController@subscription_post');
Route::get('/verify/{token}', 'SubscriptionController@verifyUser');
Route::get('/verification_msg/{user_id}',  'SubscriptionController@verification_msg');
Route::get('/show_msg/{id}',  'SubscriptionController@show_msg');
Route::get('/subscription_payment_msg',  'SubscriptionController@subscription_payment_msg');
Route::get('/resendemail',  'SubscriptionController@resendemail');
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
Route::get('mail_invoice_sent', 'MailInvoiceController@mail_invoice_sent');

Route::get('mail_invoice_sent_test', 'MailInvoiceController@mail_invoice_sent_test');

/////Edit Plan/////////////////
Route::get('plan_edit', 'PlanController@plan_edit');
Route::post('change_plan', 'PlanController@change_plan');
Route::post('/change_plan_subscription',  'PlanController@change_plan_subscription');
Route::post('/change_plan_subscription_msg',  'PlanController@change_plan_subscription_msg');
////////////////////////////////////////////////////////////////////////////////////////////////////////////////

Route::group(['middleware' => ['checkseat']], function () 
{

    Route::get('/home', 'HomeController@index')->name('home');

    Route::post('/sessionpost','HomeController@sessionpost')->name('sessionpost');

    Route::get('profile','OfficeController@profile');

    Route::get('password_settings','OfficeController@password_settings');

    Route::post('password_settings_post','OfficeController@password_settings_post');


    Route::get('/user', 'OfficeController@user')->name('user');

    Route::post('/userpost', 'OfficeController@userpost')->name('userpost');
    Route::get('/verifyemail/{token}', 'OfficeController@verifyemail');
    Route::get('/userpostdata', 'OfficeController@userpostdata')->name('userpostdata');

    Route::get('/showuserdata/{id}', 'OfficeController@showuserdata');

    Route::post('/updateuserdata', 'OfficeController@updateuserdata')->name('updateuserdata');




    Route::get('/office', 'OfficeController@office')->name('office');

    Route::post('/officepost', 'OfficeController@officepost')->name('officepost');

    Route::get('/officepostdata', 'OfficeController@officepostdata')->name('officepostdata');

    Route::get('/showofficedata/{id}', 'OfficeController@showofficedata');

    Route::post('/updateofficedata', 'OfficeController@updateofficedata')->name('updateofficedata');




    Route::get('/department', 'OfficeController@department')->name('department');

    Route::post('/departmentpost', 'OfficeController@departmentpost')->name('departmentpost');

    Route::get('/departmentpostdata', 'OfficeController@departmentpostdata')->name('departmentpostdata');

    Route::get('/showdepartmentdata/{id}', 'OfficeController@showdepartmentdata');

    Route::post('/updatedepartmentdata', 'OfficeController@updatedepartmentdata')->name('updatedepartmentdata');




    Route::get('/section', 'OfficeController@section')->name('section');

    Route::post('/sectionpost', 'OfficeController@sectionpost')->name('sectionpost');

    Route::get('/sectionpostdata', 'OfficeController@sectionpostdata')->name('sectionpostdata');

    Route::get('/showsectiondata/{id}', 'OfficeController@showsectiondata');

    Route::post('/updatesectiondata', 'OfficeController@updatesectiondata')->name('updatesectiondata');




    Route::get('/seat', 'OfficeController@seat')->name('seat');

    Route::post('/seatpost', 'OfficeController@seatpost')->name('seatpost');

    Route::get('/seatpostdata', 'OfficeController@seatpostdata')->name('seatpostdata');

    Route::get('/showseatdata/{id}', 'OfficeController@showseatdata');

    Route::post('/updateseatdata', 'OfficeController@updateseatdata')->name('updateseatdata');


    Route::get('getdepartment', function () {
            $id = Input::get('option');
            $departments = \App\Department::where('office_id',$id)->get();
            return $departments->pluck('dept_name', 'id');
        });

    Route::get('getsection', function () {
            $id = Input::get('option');
            $sections = \App\Section::where('department_id',$id)->get();
            return $sections->pluck('section_name', 'id');
        });

    Route::get('getseat', function () {
           $id = Input::get('option');
            $seates = \App\Seat::where('office_id',$id)->with('office','department','section')->get();
            $department="";
            $section="";
            foreach ($seates as $seat) 
            {
                $office=$seat->office->office_name;
                if($seat->department_id)
                {
                    $department=$seat->department->dept_name;
                }
                if($seat->section_id)
                {
                    $section=$seat->section->section_name;
                }
                $sname=$seat->seat_name;
                $scode=$seat->seat_code;
                $seat_new = $department.'-'.$section.'-'.$sname.'('.$scode.')';
            }

            return $seates->pluck('seat_name', 'id');
        });
    Route::get('getseatfromoffice', function () {
       $id = Input::get('option');
         $userid = Auth::user()->id;

         //$userseat =\App\User_Seat::where('user_id',$userid)->with('seat')->get();
        /////all seats corresponding to selected department/////////////////////////////////
        $seats = \App\Seat::where('office_id',$id)->get();
        //dd($seats);
        $i=0;
        foreach ($seats as $officeseat) 
        {
            $seatid=$officeseat->id;
            $seatname=$officeseat->seat_name;
            
            $flag=0;

            /////seat id corresponding to the current user//////////////////////////////////////
            $userseat =\App\User_Seat::where('user_id',$userid)->with('seat')->get();
            foreach ($userseat as $currentuserseat) 
            {
                $currentseatid=$currentuserseat->seat_id;
                $currentseatname=$currentuserseat->seat->seat_name;
                if($seatid==$currentseatid)    /////if seatid from dept == current seat id
                {
                    $flag=1;
                }
            }
            //////////////////////////////////////////
            
            if($flag==0)
            {
               $seatobj = array();
               $seatobj[$i]['id']=$seatid;
               $seatobj[$i]['name']=$seatname;
               $i++;
                //$obj=new \stdclass;
                //$obj->id=$seatid;
                //$obj->seatname=$seatname;
               // $data[$i]=$obj;
                //$i++;
                
            }

        }
        //dd($seatobj);
        return $seatobj;
        //return $seats->pluck('seat_name', 'id');
    });

    Route::get('getseatfrmdept', function () {
       $id = Input::get('option');
        $seates = \App\Seat::where('department_id',$id)->with('office')->get();
      
        
        return $seates->pluck('seat_name', 'id');
    });

    Route::get('getseatfrmsection', function () {
       $id = Input::get('option');
        $seates = \App\Seat::where('section_id',$id)->with('office')->get();
      
        
        return $seates->pluck('seat_name', 'id');
    });

    Route::get('getseatfromdept', function () {
        $id = Input::get('option');
         $userid = Auth::user()->id;

         //$userseat =\App\User_Seat::where('user_id',$userid)->with('seat')->get();
        /////all seats corresponding to selected department/////////////////////////////////
        $seats = \App\Seat::where('department_id',$id)->get();
        $i=0;
        foreach ($seats as $deptseat) 
        {
            $seatid=$deptseat->id;
            $seatname=$deptseat->seat_name;
            
            $flag=0;

            /////seat id corresponding to the current user//////////////////////////////////////
            $userseat =\App\User_Seat::where('user_id',$userid)->with('seat')->get();
            foreach ($userseat as $currentuserseat) 
            {
                $currentseatid=$currentuserseat->seat_id;
                $currentseatname=$currentuserseat->seat->seat_name;
                if($seatid==$currentseatid)    /////if seatid from dept == current seat id
                {
                    $flag=1;
                }
            }
            //////////////////////////////////////////
            
            if($flag==0)
            {
                $seatobj[$i]['id']=$seatid;
                $seatobj[$i]['name']=$seatname;
                $i++;
                
            }

        }

        return $seatobj;
        //return $seats->pluck('seat_name', 'id');
    });

    Route::get('getofficedept', function () {
        $id = Input::get('option');
        $department = \App\Department::where('office_id',$id)->get();
        //dd($seats);
        return $department->pluck('dept_name', 'id');
    });

    Route::get('getofficeroute', function () {
        $id = Input::get('option');
        $off_arr = [];
        $trouts=\App\Trouteconf::where('troute_id',$id)->with('office')->get();
        $troutarr=[];
        $i=0;
        foreach($trouts as $trout)
        {
            $office_id = $trout->office_id;
            if(!in_array($office_id, $off_arr))
            {
                $off_arr[] = $office_id;
            }
           
        }
        foreach($off_arr as $office_id)
        {   
            $off = \App\Office::where('id',$office_id)->first();
            if(isset($off))
            {
                $troutoff=$off->id;
                $troutname=$off->office_name;
                $troutarr[$i]['id']=$troutoff;
                $troutarr[$i]['name']=$troutname;
                $i++;
            }
        }
       return $troutarr;
    });
    Route::get('getseatfromtroute', function () {
        $id = Input::get('option');
        $office_id = Input::get('office_id');
        $currentseatid = Input::get('currentseatid');
        $trouts=\App\Trouteconf::where('troute_id',$id)->where('seat_id','!=',$currentseatid)->with('seat')->get();
        $troutarr=[];
        $i=0;
        foreach($trouts as $trout)
        {
            $seat_id=$trout->seat_id;
            $seat_name=$trout->seat->seat_name;
            $userarr=\App\User_Seat::where('seat_id',$seat_id)->with('user')->first();
            if(isset($userarr))
            {
                $username = $userarr->user->name;
                $email = $userarr->user->email;
                $name = $username."(".$email.")";
            }
            $final_name = $seat_name." - ".$name;
            $troutarr[$i]['id']=$seat_id;
            $troutarr[$i]['name']=$final_name;
            $i++;
        }
        return $troutarr;
    });
    /////////////////////////////////////////////////File Routing Functions
    Route::get('getseatfromfroute', function () {
        $id = Input::get('option');
        $office_id = Input::get('office_id');
        $currentseatid = Input::get('currentseatid');
        $trouts=\App\Trouteconf::where('troute_id',$id)->where('seat_id','!=',$currentseatid)->with('seat')->get();
        $troutarr=[];
        $i=0;
        foreach($trouts as $trout)
        {
            $seat_id=$trout->seat_id;
            $seat_name=$trout->seat->seat_name;
            $userarr=\App\User_Seat::where('seat_id',$seat_id)->with('user')->first();
            if(isset($userarr))
            {
                $username = $userarr->user->name;
                $email = $userarr->user->email;
                $name = $username."(".$email.")";
            }
            $final_name = $seat_name." - ".$name;
            $troutarr[$i]['id']=$seat_id;
            $troutarr[$i]['name']=$final_name;
            $i++;
        }
        return $troutarr;
    });
    /////////////////////////////////
    Route::get('getofficefroute', function () {
        $id = Input::get('option');
             
        
            $trouts=\App\Trouteconf::where('troute_id',$id)->with('office')->get();
            $troutarr=[];
            $i=0;
            $off_arr = [];
            foreach($trouts as $trout)
            {
                $office_id = $trout->office_id;
                if(!in_array($office_id, $off_arr))
                {
                    $off_arr[] = $office_id;
                }
               
            }
            foreach($off_arr as $office_id)
            {   
                $off = \App\Office::where('id',$office_id)->first();
                if(isset($off))
                {
                    $troutoff=$off->id;
                    $troutname=$off->office_name;
                    $troutarr[$i]['id']=$troutoff;
                    $troutarr[$i]['name']=$troutname;
                    $i++;
                }
            }
       return $troutarr;
    });

    Route::get('getofficedept1', function () {
        $id = Input::get('option');
        $department = \App\Department::where('office_id',$id)->get();
        //dd($seats);
        return $department->pluck('dept_name', 'id');
         });

        Route::get('getsectiondept1', function () {
        $id = Input::get('option');
        $sections = \App\Section::where('department_id',$id)->get();
        //dd($seats);
        return $sections->pluck('section_name', 'id');
   

    });
    Route::get('getseattable', function () {
       $id = Input::get('option');
       $code=\App\Seat::where('seat_id',$id)->get();

        $name = \App\Seat::where('seat_name',$code->seat_name)->where('seat_code',$code->seat_code)->get();
        
        return $name->pluck('seat_name', 'seat_code','id');
        
    });

    /////////////////////////////////////////////////////////////////////////////////////////////////
    Route::get('getsectiondept', function () {
        $id = Input::get('option');
        $sections = \App\Section::where('department_id',$id)->get();
        //dd($seats);
        return $sections->pluck('section_name', 'id');
    });  
    Route::get('getseat1', function () {
        $id = Input::get('option');
         $userid = Auth::user()->id;

         //$userseat =\App\User_Seat::where('user_id',$userid)->with('seat')->get();
        /////all seats corresponding to selected department/////////////////////////////////
        $seats1 = \App\Seat::where('section_id',$id)->get();
        $i=0;
        foreach ($seats1 as $sectionseat) 
        {
            $seatid=$sectionseat->id;
            $seatname=$sectionseat->seat_name;
            
            $flag=0;

            /////seat id corresponding to the current user//////////////////////////////////////
            $userseat =\App\User_Seat::where('user_id',$userid)->with('seat')->get();
            foreach ($userseat as $currentuserseat) 
            {
                $currentseatid=$currentuserseat->seat_id;
                $currentseatname=$currentuserseat->seat->seat_name;
                if($seatid==$currentseatid)    /////if seatid from dept == current seat id
                {
                    $flag=1;
                }
            }
            //////////////////////////////////////////
            
            if($flag==0)
            {
                $seatobj[$i]['id']=$seatid;
                $seatobj[$i]['name']=$seatname;
                $i++;
                
            }

        }
        return $seatobj;
        //return $seats1->pluck('seat_name', 'id');
    });

    /////////////////////////////////////////////////////////////

    Route::get('getseatfromroute', function () {

        $id = Input::get('option');
        dd($id);

         $userid = Auth::user()->id;

         //$userseat =\App\User_Seat::where('user_id',$userid)->with('seat')->get();
        /////all seats corresponding to selected department/////////////////////////////////
        $troutcons = \App\Trouteconf::where('trout_id',$id)->with('seat')->get();
        $i=0;
        foreach ($troutcons as $yroutconfs) 
        {
            $seatid=$troutconfs->seat_id;
            $seatname=$troutconfs->seat->seat_name;
            $level=$troutconfs->level;
            $flag=0;

            /////seat id corresponding to the current user//////////////////////////////////////
            for($j=1;$j<$level;$j++)
              {
                 $userseat =\App\User_Seat::where('user_id',$userid)->with('seat')->get();
                 foreach ($userseat as $currentuserseat) 
                    {
                       $currentseatid=$currentuserseat->seat_id;
                       $currentseatname=$currentuserseat->seat->seat_name;
                       if($seatid==$currentseatid)    /////if seatid from dept == current seat id
                         {
                             $flag=1;
                         }
                    }
            //////////////////////////////////////////
            
                  if($flag==0)
                   {
                      $seatobj[$i]['id']=$seatid;
                      $seatobj[$i]['name']=$seatname;
                      $i++;
                
                    }
               }
        }
        return $seatobj;
    });

    /////////////////////////////////////////////////////////////////
    Route::get('getseattable', function () {
       $id = Input::get('option');
       $code=\App\Seat::where('seat_id',$id)->get();

        $name = \App\Seat::where('seat_name',$code->seat_name)->where('seat_code',$code->seat_code)->get();
        
        return $name->pluck('seat_name', 'seat_code','id');
        
    });

Route::get('/role', 'OfficeController@role')->name('role');

Route::post('/rolepost', 'OfficeController@rolepost')->name('rolepost');

Route::get('/rolepostdata', 'OfficeController@rolepostdata')->name('rolepostdata');

Route::get('/showroledata/{id}', 'OfficeController@showroledata');

Route::post('/updateroledata', 'OfficeController@updateroledata')->name('updateroledata');





Route::get('/permission', 'OfficeController@permission')->name('permission');

Route::post('/permissionpost', 'OfficeController@permissionpost')->name('permissionpost');

Route::get('/permissionpostdata', 'OfficeController@permissionpostdata')->name('permissionpostdata');

Route::get('/showpermissiondata/{id}', 'OfficeController@showpermissiondata');

Route::post('/updatepermissiondata', 'OfficeController@updatepermissiondata')->name('updatepermissiondata');




Route::get('/role_permission', 'OfficeController@role_permission')->name('role_permission');

Route::post('/role_permissionpost', 'OfficeController@role_permissionpost')->name('role_permissionpost');

Route::get('/role_permissionpostdata', 'OfficeController@role_permissionpostdata')->name('role_permissionpostdata');

Route::get('/showrole_permissiondata/{id}', 'OfficeController@showrole_permissiondata');

Route::post('/cancelrole_permissiondata', 'OfficeController@cancelrole_permissiondata');



Route::get('/seat_permission', 'OfficeController@seat_permission')->name('seat_permission');

Route::post('/seat_permissionpost', 'OfficeController@seat_permissionpost')->name('seat_permissionpost');

Route::get('/seat_permissionpostdata', 'OfficeController@seat_permissionpostdata')->name('seat_permissionpostdata');

Route::get('/showseat_permissiondata/{id}', 'OfficeController@showseat_permissiondata');

Route::post('/cancelseat_permissiondata', 'OfficeController@cancelseat_permissiondata');



Route::get('/seat_role', 'OfficeController@seat_role')->name('seat_role');

Route::post('/seat_rolepost', 'OfficeController@seat_rolepost')->name('seat_rolepost');

Route::get('/seat_rolepostdata', 'OfficeController@seat_rolepostdata')->name('seat_rolepostdata');

Route::get('/showseat_roledata/{id}', 'OfficeController@showseat_roledata');

Route::post('/cancelseat_roledata', 'OfficeController@cancelseat_roledata');



Route::get('/user_seat', 'OfficeController@user_seat')->name('user_seat');

Route::post('/user_seatpost', 'OfficeController@user_seatpost')->name('user_seatpost');

Route::get('/user_seatpostdata', 'OfficeController@user_seatpostdata')->name('user_seatpostdata');

Route::get('/showuser_seatdata/{id}', 'OfficeController@showuser_seatdata');

Route::post('/canceluser_seatdata', 'OfficeController@canceluser_seatdata');



Route::get('/subject', 'SubjectController@subject')->name('subject');

Route::post('/subjectpost', 'SubjectController@subjectpost')->name('subjectpost');

Route::get('/subjectpostdata', 'SubjectController@subjectpostdata')->name('subjectpostdata');

Route::get('/showsubjectdata/{id}', 'SubjectController@showsubjectdata');

Route::post('/updatesubjectdata', 'SubjectController@updatesubjectdata')->name('updatesubjectdata');



Route::get('/template', 'SubjectController@template')->name('template');

Route::post('/templatepost', 'SubjectController@templatepost')->name('templatepost');

Route::get('/templatepostdata', 'SubjectController@templatepostdata')->name('templatepostdata');

Route::get('/showtemplatedata/{id}', 'SubjectController@showtemplatedata');

Route::post('/updatetemplatedata', 'SubjectController@updatetemplatedata')->name('updatetemplatedata');



Route::get('/priority', 'SubjectController@priority')->name('priority');

Route::post('/prioritypost', 'SubjectController@prioritypost')->name('prioritypost');

Route::get('/prioritypostdata', 'SubjectController@prioritypostdata')->name('prioritypostdata');

Route::get('/showprioritydata/{id}', 'SubjectController@showprioritydata');

Route::post('/updateprioritydata', 'SubjectController@updateprioritydata')->name('updateprioritydata');



Route::get('/subject_group', 'SubjectController@subject_group')->name('subject_group');

Route::post('/subject_grouppost', 'SubjectController@subject_grouppost')->name('subject_grouppost');

Route::get('/subject_grouppostdata', 'SubjectController@subject_grouppostdata')->name('subject_grouppostdata');

Route::get('/showsubject_groupdata/{id}', 'SubjectController@showsubject_groupdata');

Route::post('/updatesubject_groupdata', 'SubjectController@updatesubject_groupdata')->name('updatesubject_groupdata');




Route::get('/file_group', 'SubjectController@file_group')->name('file_group');

Route::post('/file_grouppost', 'SubjectController@file_grouppost')->name('file_grouppost');

Route::get('/file_grouppostdata', 'SubjectController@file_grouppostdata')->name('file_grouppostdata');

Route::get('/showfile_groupdata/{id}', 'SubjectController@showfile_groupdata');

Route::post('/updatefile_groupdata', 'SubjectController@updatefile_groupdata')->name('updatefile_groupdata');





Route::get('/subjectgroup_subject', 'SubjectController@subjectgroup_subject')->name('subjectgroup_subject');

Route::post('/subjectgroup_subjectpost', 'SubjectController@subjectgroup_subjectpost')->name('subjectgroup_subjectpost');

Route::get('/subjectgroup_subjectpostdata', 'SubjectController@subjectgroup_subjectpostdata')->name('subjectgroup_subjectpostdata');

Route::get('/showsubjectgroup_subjectdata/{id}', 'SubjectController@showsubjectgroup_subjectdata');

Route::post('/cancelsubjectgroup_subjectdata', 'SubjectController@cancelsubjectgroup_subjectdata');



Route::get('/action', 'SubjectController@action')->name('action');

Route::post('/actionpost', 'SubjectController@actionpost')->name('actionpost');

Route::get('/actionpostdata', 'SubjectController@actionpostdata')->name('actionpostdata');

Route::get('/showactiondata/{id}', 'SubjectController@showactiondata');

Route::post('/updateactiondata', 'SubjectController@updateactiondata')->name('updateactiondata');



Route::get('/search', 'SubjectController@search')->name('search');

Route::post('/searchpostdata', 'SubjectController@searchpostdata')->name('searchpostdata');

Route::get('/searchdisplay', 'SubjectController@searchdisplay')->name('searchdisplay');

Route::get('/inboxjson', 'SubjectController@inboxjson')->name('inboxjson');

Route::get('/tapal_view/{id}', 'SubjectController@tapal_view')->name('tapal_view');

Route::get('/file_view/{id}', 'SubjectController@file_view')->name('file_view');




Route::get('/action_subjectgroup', 'SubjectController@action_subjectgroup')->name('action_subjectgroup');

Route::post('/action_subjectgrouppost', 'SubjectController@action_subjectgrouppost')->name('action_subjectgrouppost');

Route::get('/action_subjectgrouppostdata', 'SubjectController@action_subjectgrouppostdata')->name('action_subjectgrouppostdata');

Route::get('/showaction_subjectgroupdata/{id}', 'SubjectController@showaction_subjectgroupdata');

Route::post('/cancelaction_subjectgroupdata', 'SubjectController@cancelaction_subjectgroupdata');

Route::group(['middleware' => ['GeneralRules']], function () 
{

    /////invoice pdf/////////////////
    Route::get('invoice_list', 'PlanController@invoice_list');
    Route::post('invoice_pdf', 'PlanController@invoice_pdf');
    /////Cancel Plan//////////////////////////////////////////////////////////////
    Route::get('subscription_cancel', 'PlanController@subscription_cancel');
    Route::post('subscription_cancel_post', 'PlanController@subscription_cancel_post');
    /////////////////////////////////////////////////////////////////////////////////////////

	Route::get('/creation_of_tapal', 'TapalController@creation_of_tapal')->name('creation_of_tapal');

	Route::get('/permissiondenied', 'TapalController@permissiondenied')->name('permissiondenied');

    Route::get('/duplicatefile', 'FileController@duplicatefile')->name('duplicatefile');

    Route::get('/duplicatetapal', 'TapalController@duplicatetapal')->name('duplicatetapal');

    Route::get('/denied', 'FileController@denied')->name('denied');

    Route::get('/tapaldenied', 'TapalController@tapaldenied')->name('tapaldenied');

    Route::get('/nouser', 'TapalController@nouser')->name('nouser');



	Route::post('/creation_of_tapalpost', 'TapalController@creation_of_tapalpost')->name('creation_of_tapalpost');

	Route::get('/creation_of_tapalpostdata', 'TapalController@creation_of_tapalpostdata')->name('creation_of_tapalpostdata');

	Route::get('/showcreation_of_tapaldata/{id}', 'TapalController@showcreation_of_tapaldata');

	Route::post('/updatecreation_of_tapaldata', 'TapalController@updatecreation_of_tapaldata');
});


Route::get('getsubject', function () {
        $id = Input::get('option');
        $subjects = \App\Subjectgroup_subject::with('subject')->where('subject_group_id',$id)->get();
       // print_r($subjects);
        return $subjects->pluck('subject.subject','subject.id');
    });



Route::get('/tapal_view/{id}', 'TapalController@tapal_view')->name('tapal_view');


Route::post('/tapal_viewpost', 'TapalController@tapal_viewpost');
Route::post('/tapalcapture_viewpost', 'TapalController@tapalcapture_viewpost');
Route::post('/tapal_viewcommentpost', 'TapalController@tapal_viewcommentpost');
Route::post('/newcomment', 'TapalController@newcomment');


Route::get('/tapal_actionpost', 'TapalController@tapal_actionpost');
Route::post('/tapalcapture_actionpost', 'TapalController@tapalcapture_actionpost');
Route::post('/tapal_action', 'TapalController@tapal_action');
Route::post('/newaction', 'TapalController@newaction');


Route::post('/tapal_attachmentpost', 'TapalController@tapal_attachmentpost');
Route::post('/tapalcapture_attachmentpost', 'TapalController@tapalcapture_attachmentpost');

Route::post('/tapal_attachmentpostdata', 'TapalController@tapal_attachmentpostdata');


Route::post('/file_viewpost', 'FileController@file_viewpost');
Route::post('/filecapture_viewpost', 'FileController@filecapture_viewpost');

Route::post('/file_viewcommentpost', 'FileController@file_viewcommentpost');
Route::post('/newfilecomment', 'FileController@newfilecomment');


Route::get('/file_actionpost', 'FileController@file_actionpost');
Route::post('/filecapture_actionpost', 'FileController@filecapture_actionpost');

Route::post('/file_action', 'FileController@file_action');
Route::post('/newfileaction', 'FileController@newfileaction');


Route::post('/file_attachmentpost', 'FileController@file_attachmentpost');
Route::post('/filecapture_attachmentpost', 'FileController@filecapture_attachmentpost');

Route::post('/file_attachmentpostdata', 'FileController@file_attachmentpostdata');


Route::get('/closed_tapal', 'ClosedController@closed_tapal');
Route::get('/closedinboxjson', 'ClosedController@closedinboxjson');
Route::get('/closedmodaltapalview/{id}', 'ClosedController@closedmodaltapalview');
Route::post('/reopentapal', 'ClosedController@reopentapal');


Route::get('/closed_file', 'ClosedController@closed_file');
Route::get('/closedfileinboxjson', 'ClosedController@closedfileinboxjson');
Route::get('/closedmodalfileview/{id}', 'ClosedController@closedmodalfileview');
Route::post('/reopenfile', 'ClosedController@reopenfile');


Route::post('/postit_comment', 'TapalController@postit_comment');

Route::post('/move_to_inbox', 'TapalController@move_to_inbox');

Route::post('/tapal_forwardpost', 'TapalController@tapal_forwardpost');

Route::post('/tapalnewforwardpost', 'TapalController@tapalnewforwardpost');

//Route::get('/comment_view/{tapalid}', 'TapalController@tapal_view')->name('tapal_view');

Route::post('/capture1', 'TapalController@capture1');

Route::get('/gettapallist/{id}', 'TapalController@gettapallist');


/////capture files//////////////////////////////////////////////////////
Route::get('/capturetapal', 'TapalController@capturetapal')->name('capturetapal');

Route::get('/getchildseats1/{parent}', 'TapalController@getchildseats1');

Route::post('/capture1post', 'TapalController@capture1post')->name('capture1post');

Route::get('/modaltapalview/{id}', 'InboxController@modaltapalview')->name('modaltapalview');

Route::get('/modalfileview/{id}', 'InboxController@modalfileview')->name('modalfileview');

Route::get('/gettitlename/{fileid}', 'FileController@gettitlename')->name('gettitlename');

Route::get('/getapprovetemp/{fileid}', 'FileController@getapprovetemp')->name('getapprovetemp');

Route::get('/word/{id}', 'FileController@word')->name('word');

Route::post('/wordtemppost/{fileview_template_id}', 'FileController@wordtemppost')->name('wordtemppost');

Route::get('/pdf/{id}', 'FileController@pdf')->name('pdf');

Route::post('/pdftemppost', 'FileController@pdftemppost')->name('pdftemppost');

Route::post('/filepostit_comment', 'FileController@filepostit_comment');


Route::get('/inbox', 'InboxController@inbox')->name('inbox');

Route::get('/inboxtapal_view/{id}', 'InboxController@inboxtapal_view')->name('inboxtapal_view');




Route::post('/file_attachmentpost1', 'InboxController@file_attachmentpost1');


Route::get('/inboxjson', 'InboxController@inboxjson')->name('inboxjson');
Route::get('/outbox', 'OutboxController@outbox')->name('outbox');

Route::get('/outboxtapal_view/{id}', 'OutboxController@outboxtapal_view')->name('outboxtapal_view');

Route::post('/tapal_attachmentpost01', 'OutboxController@tapal_attachmentpost01');

Route::post('/file_attachmentpost01', 'OutboxController@file_attachmentpost01');

Route::get('/outboxjson', 'OutboxController@outboxjson')->name('outboxjson');

Route::get('/gethistory/{tapalid}', 'InboxController@gethistory')->name('gethistory');
Route::get('/getcomment/{tapalid}', 'InboxController@getcomment')->name('getcomment');

Route::get('/getaction/{tapalid}', 'InboxController@getaction')->name('getaction');

Route::get('/getattachment/{tapalid}', 'InboxController@getattachment')->name('getattachment');

Route::get('/creation_of_file', 'FileController@creation_of_file')->name('creation_of_file');

Route::get('/permissiondenied', 'FileController@permissiondenied')->name('permissiondenied');

Route::post('/creation_of_filepost', 'FileController@creation_of_filepost')->name('creation_of_filepost');

Route::get('/creation_of_filepostdata', 'FileController@creation_of_filepostdata')->name('creation_of_filepostdata');

Route::get('/showcreation_of_filedata/{id}', 'FileController@showcreation_of_filedata');

Route::post('/updatecreation_of_filedata', 'FileController@updatecreation_of_filedata')->name('updatecreation_of_filedata');

Route::get('/file_view/{id}', 'FileController@file_view')->name('file_view');


Route::post('/move_to_inboxfile', 'FileController@move_to_inboxfile');


Route::post('/fileview_templatepost', 'FileController@fileview_templatepost');

Route::post('/edit_templatepost', 'FileController@edit_templatepost');

Route::post('/approve_templatepost', 'FileController@approve_templatepost');

Route::get('/gettitle/{id}', 'FileController@getdetails');

Route::get('/getfiletemp/{id}', 'FileController@getfiletemp');

Route::post('/file_forwardpost', 'FileController@file_forwardpost');

Route::post('/filenewforwardpost', 'FileController@filenewforwardpost');

Route::post('/capture', 'FileController@capture');

Route::get('/getfilelist/{id}', 'FileController@getfilelist');


/////capture files//////////////////////////////////////////////////////
Route::get('/capturefile', 'FileController@capturefile')->name('capturefile');

Route::get('/getchildseats/{parent}', 'FileController@getchildseats');

Route::post('/capturepost', 'FileController@capturepost')->name('capturepost');
///////////////////////////////////////////////////////////////////////////////////////

Route::post('/file_createpost', 'TapalController@file_createpost');

Route::post('/file_existpost', 'TapalController@file_existpost');

Route::get('getfile', function () {
        $id = Input::get('option');

        $userid=\Auth::user()->id;

        $seatobj=\App\User_Seat::where('user_id',$userid)->first();
        $seatid=$seatobj->seat_id;

        $files=\App\File_forward::where('to_seat',$seatid)->where('active_flag',1)->whereHas('file', function ($query) use($id) {
        $query->where('file_group_id','=',$id);
    })->with('file')->get();

    return $files;
    });


//////////////////////////////////////////////////////////////////

Route::get('/noseatassigned', function () {
   return view('noseatassigned');
});

Route::get('/modaloldfile', 'InboxController@modaloldfile')->name('modaloldfile');

Route::get('/modalnewfile', 'InboxController@modalnewfile')->name('modalnewfile');

Route::get('/fileinbox', 'InboxController@fileinbox')->name('fileinbox');

Route::get('/inboxfile_view/{id}', 'InboxController@inboxfile_view')->name('inboxfile_view');

Route::get('/fileinboxjson', 'InboxController@fileinboxjson')->name('fileinboxjson');

Route::get('/getfilehistory/{fileid}', 'InboxController@getfilehistory')->name('getfilehistory');

Route::get('/getcomment1/{fileid}', 'InboxController@getcomment1')->name('getcomment1');

Route::get('/getaction1/{fileid}', 'InboxController@getaction1')->name('getaction1');


Route::get('/getattachment1/{fileid}', 'InboxController@getattachment1')->name('getattachment1');

Route::get('/fileoutbox', 'OutboxController@fileoutbox')->name('fileoutbox');

Route::get('/fileoutboxfile_view/{id}', 'OutboxController@fileoutboxfile_view')->name('fileoutboxfile_view');

Route::get('/fileoutboxjson', 'OutboxController@fileoutboxjson')->name('fileoutboxjson');
});
Route::get('/getofficedepartment/{department_id}', 'TapalRouteController@getofficedepartment');
//////////////////////Merging Tapals
Route::get('/mergetapal','MergeController@show');
Route::post('/merges','MergeController@merge');
///////////////////////////////
Route::get('/globalconfig','GlobalController@show');
Route::post('/globalconfig','GlobalController@index');
///////Tapal Routing:
Route::get('/tapalroute','TapalRouteController@show');
Route::post('/tapalroute','TapalRouteController@routeset');
Route::get('/routetabledata','TapalRouteController@tableindex');
Route::get('/showroutetable/{id}', 'TapalRouteController@showroutedata');
Route::post('/troutedata', 'TapalRouteController@updateroutedata');
Route::get('/getdepartmentsection/{department_id}', 'TapalRouteController@getdepartmentsection');
Route::get('/getsectionseat/{section_id}', 'TapalRouteController@getsectionseat');
Route::get('/getseatuser/{seat_id}', 'TapalRouteController@getseatuser');

///////File Routing:
Route::get('/fileroute','TapalRouteController@fshow');
Route::post('/fileroute','TapalRouteController@frouteset');
Route::get('/froutedatatable','TapalRouteController@ftableindex');
Route::get('/showfroutetable/{id}', 'TapalRouteController@showfroutedata');
Route::post('/froutedata', 'TapalRouteController@updatefroutedata');

////////////Tapal Reports and File Reports
Route::get('/tapal_report','InboxController@tapalreport');
Route::get('/file_report','InboxController@filereport');
Route::get('/tapal_countlist','InboxController@tapalcountlist');
Route::get('/pendingtapal_countlist','InboxController@pendingtapalcountlist');


