Open Journal Systems  3.3.0
PKP\Services\QueryBuilders\PKPEmailTemplateQueryBuilder Class Reference
Inheritance diagram for PKP\Services\QueryBuilders\PKPEmailTemplateQueryBuilder:
PKP\Services\QueryBuilders\Interfaces\EntityQueryBuilderInterface

Public Member Functions

 filterByContext ($contextId)
 
 filterByFromRoleIds ($fromRoleIds)
 
 filterByIsCustom ($isCustom)
 
 filterByIsEnabled ($isEnabled)
 
 filterByKeys ($keys)
 
 filterByStageIds ($stageIds)
 
 filterByToRoleIds ($toRoleIds)
 
 getCompiledQuery ()
 
 getCount ()
 
 getIds ()
 
 getModified ()
 
 getQuery ()
 
 limitTo ($count)
 
 offsetBy ($offset)
 
 searchPhrase ($phrase)
 

Protected Member Functions

 getCustom ()
 
 getDefault ()
 
 setCommonColumns ()
 

Protected Attributes

 $contextId = null
 
 $fromRoleIds = []
 
 $isCustom = null
 
 $isEnabled = null
 
 $keys = []
 
 $searchPhrase = null
 
 $stageIds = []
 
 $toRoleIds = []
 

Detailed Description

Definition at line 20 of file PKPEmailTemplateQueryBuilder.inc.php.

Member Function Documentation

◆ filterByContext()

PKP\Services\QueryBuilders\PKPEmailTemplateQueryBuilder::filterByContext (   $contextId)

Set context filter

Parameters
$contextIdinteger
Returns
\PKP\Services\QueryBuilders\PKPEmailTemplateQueryBuilder

Definition at line 77 of file PKPEmailTemplateQueryBuilder.inc.php.

References PKP\Services\QueryBuilders\PKPEmailTemplateQueryBuilder\$contextId.

◆ filterByFromRoleIds()

PKP\Services\QueryBuilders\PKPEmailTemplateQueryBuilder::filterByFromRoleIds (   $fromRoleIds)

Set sender roles filter

Parameters
$fromRoleIdsarray
Returns
\PKP\Services\QueryBuilders\PKPEmailTemplateQueryBuilder

Definition at line 113 of file PKPEmailTemplateQueryBuilder.inc.php.

References PKP\Services\QueryBuilders\PKPEmailTemplateQueryBuilder\$fromRoleIds.

◆ filterByIsCustom()

PKP\Services\QueryBuilders\PKPEmailTemplateQueryBuilder::filterByIsCustom (   $isCustom)

Set isCustom filter

Parameters
$isCustomboolean
Returns
\PKP\Services\QueryBuilders\PKPEmailTemplateQueryBuilder

Definition at line 101 of file PKPEmailTemplateQueryBuilder.inc.php.

References PKP\Services\QueryBuilders\PKPEmailTemplateQueryBuilder\$isCustom.

◆ filterByIsEnabled()

PKP\Services\QueryBuilders\PKPEmailTemplateQueryBuilder::filterByIsEnabled (   $isEnabled)

Set isEnabled filter

Parameters
$isEnabledboolean
Returns
\PKP\Services\QueryBuilders\PKPEmailTemplateQueryBuilder

Definition at line 89 of file PKPEmailTemplateQueryBuilder.inc.php.

References PKP\Services\QueryBuilders\PKPEmailTemplateQueryBuilder\$isEnabled.

◆ filterByKeys()

PKP\Services\QueryBuilders\PKPEmailTemplateQueryBuilder::filterByKeys (   $keys)

Set email keys filter

Parameters
$keysarray
Returns
\PKP\Services\QueryBuilders\PKPEmailTemplateQueryBuilder

Definition at line 137 of file PKPEmailTemplateQueryBuilder.inc.php.

References PKP\Services\QueryBuilders\PKPEmailTemplateQueryBuilder\$keys.

◆ filterByStageIds()

PKP\Services\QueryBuilders\PKPEmailTemplateQueryBuilder::filterByStageIds (   $stageIds)

Set stage ID filter

Parameters
$stageIdsarray
Returns
\PKP\Services\QueryBuilders\PKPEmailTemplateQueryBuilder

Definition at line 149 of file PKPEmailTemplateQueryBuilder.inc.php.

References PKP\Services\QueryBuilders\PKPEmailTemplateQueryBuilder\$stageIds.

◆ filterByToRoleIds()

PKP\Services\QueryBuilders\PKPEmailTemplateQueryBuilder::filterByToRoleIds (   $toRoleIds)

Set recipient roles filter

Parameters
$toRoleIdsarray
Returns
\PKP\Services\QueryBuilders\PKPEmailTemplateQueryBuilder

Definition at line 125 of file PKPEmailTemplateQueryBuilder.inc.php.

References PKP\Services\QueryBuilders\PKPEmailTemplateQueryBuilder\$toRoleIds.

◆ getCompiledQuery()

PKP\Services\QueryBuilders\PKPEmailTemplateQueryBuilder::getCompiledQuery ( )

Get the compiled SQL string and bindings

This method performs a UNION on the default and custom template tables, and returns the final SQL string and merged bindings.

This is required due to a bug in Laravel's QueryBuilder when performing a UNION in postgresql. This bug was fixed in Laravel v5.7.

https://github.com/laravel/framework/pull/27589

Once we can upgrade to that version, this wrapper should be removed in favor of the QueryBuilder::get() approach used in other QueryBuilders.

Returns
array [ @option string The compiled query string @option array The merged bindings (key/value) ]

Definition at line 237 of file PKPEmailTemplateQueryBuilder.inc.php.

References PKP\Services\QueryBuilders\PKPEmailTemplateQueryBuilder\getCustom(), PKP\Services\QueryBuilders\PKPEmailTemplateQueryBuilder\getDefault(), and PKP\Services\QueryBuilders\PKPEmailTemplateQueryBuilder\setCommonColumns().

Referenced by PKP\Services\QueryBuilders\PKPEmailTemplateQueryBuilder\getCount().

◆ getCount()

PKP\Services\QueryBuilders\PKPEmailTemplateQueryBuilder::getCount ( )

Get a count of the number of rows that match the select conditions configured in this query builder.

Returns
int

Implements PKP\Services\QueryBuilders\Interfaces\EntityQueryBuilderInterface.

Definition at line 200 of file PKPEmailTemplateQueryBuilder.inc.php.

References PKP\Services\QueryBuilders\PKPEmailTemplateQueryBuilder\getCompiledQuery().

◆ getCustom()

PKP\Services\QueryBuilders\PKPEmailTemplateQueryBuilder::getCustom ( )
protected

Execute query builder for custom email templates and email templates that have been modified from the default.

See also
self::getCompiledQuery()
Returns
QueryObject

Definition at line 417 of file PKPEmailTemplateQueryBuilder.inc.php.

References HookRegistry\call(), and PKP\Services\QueryBuilders\PKPEmailTemplateQueryBuilder\searchPhrase().

Referenced by PKP\Services\QueryBuilders\PKPEmailTemplateQueryBuilder\getCompiledQuery(), and PKP\Services\QueryBuilders\PKPEmailTemplateQueryBuilder\getModified().

◆ getDefault()

PKP\Services\QueryBuilders\PKPEmailTemplateQueryBuilder::getDefault ( )
protected

◆ getIds()

PKP\Services\QueryBuilders\PKPEmailTemplateQueryBuilder::getIds ( )

◆ getModified()

PKP\Services\QueryBuilders\PKPEmailTemplateQueryBuilder::getModified ( )

Retrieve all matches from query builder limited by those which are custom templates or have been modified from the default.

Default templates that have not been modified have no entry in the email_templates table and so et.email_id is null.

Returns
QueryObject

Definition at line 270 of file PKPEmailTemplateQueryBuilder.inc.php.

References PKP\Services\QueryBuilders\PKPEmailTemplateQueryBuilder\getCustom(), and PKP\Services\QueryBuilders\PKPEmailTemplateQueryBuilder\setCommonColumns().

◆ getQuery()

PKP\Services\QueryBuilders\PKPEmailTemplateQueryBuilder::getQuery ( )

Do not use this method.

See also
self::getCompiledQuery()

Implements PKP\Services\QueryBuilders\Interfaces\EntityQueryBuilderInterface.

Definition at line 212 of file PKPEmailTemplateQueryBuilder.inc.php.

◆ limitTo()

PKP\Services\QueryBuilders\PKPEmailTemplateQueryBuilder::limitTo (   $count)

Set query limit

Parameters
int$count
Returns
\PKP\Services\QueryBuilders\PKPEmailTemplateQueryBuilder

Definition at line 173 of file PKPEmailTemplateQueryBuilder.inc.php.

◆ offsetBy()

PKP\Services\QueryBuilders\PKPEmailTemplateQueryBuilder::offsetBy (   $offset)

Set how many results to skip

Parameters
int$offset
Returns
\PKP\Services\QueryBuilders\PKPEmailTemplateQueryBuilder

Definition at line 185 of file PKPEmailTemplateQueryBuilder.inc.php.

◆ searchPhrase()

PKP\Services\QueryBuilders\PKPEmailTemplateQueryBuilder::searchPhrase (   $phrase)

Set query search phrase

Parameters
$phrasestring
Returns
\PKP\Services\QueryBuilders\PKPEmailTemplateQueryBuilder

Definition at line 161 of file PKPEmailTemplateQueryBuilder.inc.php.

Referenced by PKP\Services\QueryBuilders\PKPEmailTemplateQueryBuilder\getCustom(), and PKP\Services\QueryBuilders\PKPEmailTemplateQueryBuilder\getDefault().

◆ setCommonColumns()

PKP\Services\QueryBuilders\PKPEmailTemplateQueryBuilder::setCommonColumns ( )
protected

Field Documentation

◆ $contextId

integer PKPEmailTemplateQueryBuilder::$contextId = null
protected

◆ $fromRoleIds

array PKPEmailTemplateQueryBuilder::$fromRoleIds = []
protected

◆ $isCustom

boolean PKPEmailTemplateQueryBuilder::$isCustom = null
protected

custom emails with no default template

Definition at line 38 of file PKPEmailTemplateQueryBuilder.inc.php.

Referenced by PKP\Services\QueryBuilders\PKPEmailTemplateQueryBuilder\filterByIsCustom().

◆ $isEnabled

boolean PKPEmailTemplateQueryBuilder::$isEnabled = null
protected

◆ $keys

array PKPEmailTemplateQueryBuilder::$keys = []
protected

◆ $searchPhrase

string PKPEmailTemplateQueryBuilder::$searchPhrase = null
protected

search phrase

Definition at line 62 of file PKPEmailTemplateQueryBuilder.inc.php.

◆ $stageIds

array PKPEmailTemplateQueryBuilder::$stageIds = []
protected

filter by workflow stage IDs

Definition at line 68 of file PKPEmailTemplateQueryBuilder.inc.php.

Referenced by PKP\Services\QueryBuilders\PKPEmailTemplateQueryBuilder\filterByStageIds().

◆ $toRoleIds

array PKPEmailTemplateQueryBuilder::$toRoleIds = []
protected

filter by recipient role IDs

Definition at line 50 of file PKPEmailTemplateQueryBuilder.inc.php.

Referenced by PKP\Services\QueryBuilders\PKPEmailTemplateQueryBuilder\filterByToRoleIds().


The documentation for this class was generated from the following file: