PHP Class Rubenwouters\CrmLauncher\Controllers\CasesController

Inheritance: extends Illuminate\Routing\Controller, use trait Illuminate\Foundation\Validation\ValidatesRequests
Show file Open project: rubenwouters/crm-launcher

Public Properties

Property Type Description
$arActive array Pass active case filters to view

Protected Properties

Property Type Description
$answer Rubenwouters\CrmLauncher\Models\Answer
$case Rubenwouters\CrmLauncher\Models\CaseOverview
$contact Rubenwouters\CrmLauncher\Models\Contact
$facebookContent Rubenwouters\CrmLauncher\ApiCalls\FetchFacebookContent
$innerComment Rubenwouters\CrmLauncher\Models\Innercomment
$log Rubenwouters\CrmLauncher\Models\Log
$message Rubenwouters\CrmLauncher\Models\Message
$twitterContent Rubenwouters\CrmLauncher\ApiCalls\FetchTwitterContent

Public Methods

Method Description
__construct ( Log $log, CaseOverview $case, Answer $answer, Contact $contact, Message $message, InnerComment $innerComment, FetchTwitterContent $twitterContent, FetchFacebookContent $facebookContent ) Initialize Controller
deleteInner ( integer $caseId, integer $messageId ) : Illuminate\View\View Delete inner Facebook post
deletePost ( integer $caseId, integer $messageId ) : Illuminate\View\View Delete Facebook post
deleteTweet ( integer $caseId, integer $messageId ) : Illuminate\View\View Delete tweet on Twitter & in database
detail ( integer $id ) : view Shows detail of case
filter ( Illuminate\Http\Request $request ) : view Filters new/open/closed/own cases
index ( ) : view Shows cases overview
replyPost ( Illuminate\Http\Request $request, integer $caseId ) : Illuminate\View\View Reply to post on Facebook (either a comment or an inner-comment)
replyPrivate ( Illuminate\Http\Request $request, integer $caseId ) : Illuminate\View\View Reply to private message
replyTweet ( Illuminate\Http\Request $request, integer $id ) : Illuminate\View\View Posts the reply (public or private tweets)
toggleCase ( integer $caseId ) : Illuminate\View\View Toggle close/open case
toggleFollowUser ( integer $caseId ) : Illuminate\View\View Follow user on Twitter

Private Methods

Method Description
initIds ( ) : void Get most recent id's for Twitter & Facebook
insertAnswer ( string $type, Illuminate\Http\Request $request, object $case, string $message, string $reply, string $handle ) : void Inserts answer to database
insertInnerComment ( Illuminate\Http\Request $request, integer $messageId, object $reply ) : void Insert inner comment in DB
linkCaseToUser ( object $case ) : void Links case to user (person who replied)
searchByCaseType ( array $cases, Illuminate\Http\Request $request ) : object Filter search results by case type
searchByKeywords ( Illuminate\Http\Request $request ) : boolean | Builder Searches trough cases
updateLatestHelper ( object $case ) : void Update "latest helper" field

Method Details

__construct() public method

Initialize Controller
public __construct ( Log $log, CaseOverview $case, Answer $answer, Contact $contact, Message $message, InnerComment $innerComment, FetchTwitterContent $twitterContent, FetchFacebookContent $facebookContent )
$log Rubenwouters\CrmLauncher\Models\Log
$case Rubenwouters\CrmLauncher\Models\CaseOverview
$answer Rubenwouters\CrmLauncher\Models\Answer
$contact Rubenwouters\CrmLauncher\Models\Contact
$message Rubenwouters\CrmLauncher\Models\Message
$innerComment Rubenwouters\CrmLauncher\Models\InnerComment
$twitterContent Rubenwouters\CrmLauncher\ApiCalls\FetchTwitterContent
$facebookContent Rubenwouters\CrmLauncher\ApiCalls\FetchFacebookContent

deleteInner() public method

Delete inner Facebook post
public deleteInner ( integer $caseId, integer $messageId ) : Illuminate\View\View
$caseId integer
$messageId integer
return Illuminate\View\View

deletePost() public method

Delete Facebook post
public deletePost ( integer $caseId, integer $messageId ) : Illuminate\View\View
$caseId integer
$messageId integer
return Illuminate\View\View

deleteTweet() public method

Delete tweet on Twitter & in database
public deleteTweet ( integer $caseId, integer $messageId ) : Illuminate\View\View
$caseId integer
$messageId integer
return Illuminate\View\View

detail() public method

Shows detail of case
public detail ( integer $id ) : view
$id integer
return view

filter() public method

Filters new/open/closed/own cases
public filter ( Illuminate\Http\Request $request ) : view
$request Illuminate\Http\Request
return view

index() public method

Shows cases overview
public index ( ) : view
return view

replyPost() public method

Reply to post on Facebook (either a comment or an inner-comment)
public replyPost ( Illuminate\Http\Request $request, integer $caseId ) : Illuminate\View\View
$request Illuminate\Http\Request
$caseId integer
return Illuminate\View\View

replyPrivate() public method

Reply to private message
public replyPrivate ( Illuminate\Http\Request $request, integer $caseId ) : Illuminate\View\View
$request Illuminate\Http\Request
$caseId integer
return Illuminate\View\View

replyTweet() public method

Posts the reply (public or private tweets)
public replyTweet ( Illuminate\Http\Request $request, integer $id ) : Illuminate\View\View
$request Illuminate\Http\Request
$id integer
return Illuminate\View\View

toggleCase() public method

Toggle close/open case
public toggleCase ( integer $caseId ) : Illuminate\View\View
$caseId integer
return Illuminate\View\View

toggleFollowUser() public method

Follow user on Twitter
public toggleFollowUser ( integer $caseId ) : Illuminate\View\View
$caseId integer
return Illuminate\View\View

Property Details

$answer protected property

protected Answer,Rubenwouters\CrmLauncher\Models $answer
return Rubenwouters\CrmLauncher\Models\Answer

$arActive public static property

Pass active case filters to view
public static array $arActive
return array

$case protected property

protected CaseOverview,Rubenwouters\CrmLauncher\Models $case
return Rubenwouters\CrmLauncher\Models\CaseOverview

$contact protected property

protected Contact,Rubenwouters\CrmLauncher\Models $contact
return Rubenwouters\CrmLauncher\Models\Contact

$facebookContent protected property

protected FetchFacebookContent,Rubenwouters\CrmLauncher\ApiCalls $facebookContent
return Rubenwouters\CrmLauncher\ApiCalls\FetchFacebookContent

$innerComment protected property

protected Rubenwouters\CrmLauncher\Models\Innercomment $innerComment
return Rubenwouters\CrmLauncher\Models\Innercomment

$log protected property

protected Log,Rubenwouters\CrmLauncher\Models $log
return Rubenwouters\CrmLauncher\Models\Log

$message protected property

protected Message,Rubenwouters\CrmLauncher\Models $message
return Rubenwouters\CrmLauncher\Models\Message

$twitterContent protected property

protected FetchTwitterContent,Rubenwouters\CrmLauncher\ApiCalls $twitterContent
return Rubenwouters\CrmLauncher\ApiCalls\FetchTwitterContent