本文整理汇总了PHP中yii\db\BaseActiveRecord::getWorkflowStatus方法的典型用法代码示例。如果您正苦于以下问题:PHP BaseActiveRecord::getWorkflowStatus方法的具体用法?PHP BaseActiveRecord::getWorkflowStatus怎么用?PHP BaseActiveRecord::getWorkflowStatus使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类yii\db\BaseActiveRecord
的用法示例。
在下文中一共展示了BaseActiveRecord::getWorkflowStatus方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: renderLabel
/**
* Displays the status for the model passed as argument.
*
* This method assumes that the status includes a metadata value called 'labelTemplate' that contains
* the HTML template of the rendering status. In this template the string '{label}' will be replaced by the
* status label.
*
* Example :
* 'status' => [
* 'draft' => [
* 'label' => 'Draft',
* 'transition' => ['ready' ],
* 'metadata' => [
* 'labelTemplate' => '<span class="label label-default">{label}</span>'
* ]
* ],
*
* @param BaseActiveRecord $model
* @return string|NULL the HTML rendered status or null if not labelTemplate is found
*/
public static function renderLabel($model)
{
if ($model->hasWorkflowStatus()) {
$labelTemplate = $model->getWorkflowStatus()->getMetadata('labelTemplate');
if (!empty($labelTemplate)) {
return strtr($labelTemplate, ['{label}' => $model->getWorkflowStatus()->getLabel()]);
}
}
return null;
}
示例2: getStatusDropDownData
/**
* Returns the items and options for a dropDownList
* All status options are in the list, but invalid transitions are disabled
*
* Example:
* <pre>
* $statusDropDownData = WorkflowHelper::getStatusDropDownData($model);
* // Html
* echo Html::dropDownList('status', $model->status, $statusDropdown['items'], ['options' => $statusDropdown['options']]);
* // ActiveForm
* echo $form->field($model, 'status')->dropDownList($statusDropDownData['items'], ['options' => $statusDropDownData['options']]);
* </pre>
*
* @param BaseActiveRecord|SimpleWorkflowBehavior $model
* @return array
*/
public static function getStatusDropDownData($model)
{
$transitions = array_keys($model->getWorkflowSource()->getTransitions($model->getWorkflowStatus()->getId()));
$items = WorkflowHelper::getAllStatusListData($model->getWorkflow()->getId(), $model->getWorkflowSource());
$options = [];
foreach (array_keys($items) as $status) {
if ($status != $model->getWorkflowStatus()->getId() && !in_array($status, $transitions)) {
$options[$status]['disabled'] = true;
}
}
return ['items' => $items, 'options' => $options];
}