本文整理匯總了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];
}