/** * Get all Fields for a slot * @param int $slot_id, id of the slot * @return array $result */ public function getFields($slot_id) { $result = array(); $a = 0; $fields = WorkflowSlotFieldTable::instance()->getWorkflowSlotFieldBySlotId($slot_id); foreach($fields as $field) { $documentField = $field->getField()->toArray(); $result[$a]['id'] = $field->getId(); $result[$a]['workflowslot_id'] = $field->getWorkflowslotId(); $result[$a]['field_id'] = $field->getFieldId(); $result[$a]['position'] = $field->getPosition(); $result[$a]['type'] = $documentField[0]['type']; $result[$a]['items'] = $this->getItems($documentField[0]['type'],$field->getFieldId(),$field->getId()); $a++; } return $result; }
public function getFields($id, $versionid) { $result = array(); $a = 0; $fields = WorkflowSlotFieldTable::instance()->getWorkflowSlotFieldBySlotId($id); $column = 'LEFT'; foreach($fields as $field) { $documentField = $field->getField()->toArray(); $result[$a]['workflowslotfield_id'] = $field->getId(); $result[$a]['workflowslot_id'] = $field->getWorkflowslotId(); $result[$a]['field_id'] = $field->getFieldId(); $result[$a]['title'] = $documentField[0]['title']; $result[$a]['type'] = $documentField[0]['type']; if($column == 'LEFT') { $column = 'RIGHT'; $result[$a]['column'] = 'LEFT'; } else { $column = 'LEFT'; $result[$a]['column'] = 'RIGHT'; } $result[$a]['position'] = $field->getPosition(); $result[$a++]['items'] = $this->getFieldItems($field, $documentField[0]['type'], $this->context, $versionid); } return $result; }
private function getFields(WorkflowSlot $slot, $versionid) { $result = array(); $a = 0; $fields = WorkflowSlotFieldTable::instance()->getWorkflowSlotFieldBySlotIdWithValues($slot->getId()); $workflowDetail = new WorkflowDetail($this->helperFlag); $workflowDetail->setServerUrl($this->serverUrl); $column = 'LEFT'; foreach($fields as $field) { $docField = $field->getField()->toArray(); $result[$a]['workflowslotfield_id'] = $field->getId(); $result[$a]['workflowslot_id'] = $field->getWorkflowslotId(); $result[$a]['fieldname'] = $docField[0]['title']; $result[$a]['type'] = $docField[0]['type']; if($column == 'LEFT') { $column = 'RIGHT'; $result[$a]['column'] = 'LEFT'; } else { $column = 'LEFT'; $result[$a]['column'] = 'RIGHT'; } $result[$a]['writeprotected'] = $docField[0]['writeprotected']; $result[$a]['color'] = $docField[0]['color']; $result[$a]['items'] = $workflowDetail->getFieldItems($field,$docField[0]['type'], $this->context, $versionid); $a++; } return $result; }
/** * Get userdefined field * * @param String $type, userdefined1, userdefined2 */ public function getFields($type, $versionId) { $view = $this->user->getAttribute('userWorkflowSettings'); $result = ''; foreach($view as $singleView) { if($singleView['store'] == $type AND $singleView['fieldid'] > -1) { $wfItem = WorkflowVersionTable::instance()->getFieldByWorkflowversionIdAndFieldId($singleView['fieldid'], $versionId)->toArray(); if(empty($wfItem) == true) { return ''; } else { $slots = WorkflowSlotTable::instance()->getFieldBySlotIdAndFieldId($singleView['fieldid'], $versionId)->toArray(); $fields = WorkflowSlotFieldTable::instance()->getWorkflowSlotFieldBySlotIdAndFieldId($slots[0]['id'],$singleView['fieldid'])->toArray(); $theType = FieldTable::instance()->getFieldById($fields[0]['field_id'])->toArray(); if(!empty($theType)) { switch ($theType[0]['type']) { case 'TEXTFIELD': $value = WorkflowSlotFieldTextfieldTable::instance()->getAllItemsByWorkflowFieldId($fields[0]['id'])->toArray(); $result = $value[0]['value']; return $result; break; case 'CHECKBOX': $value = WorkflowSlotFieldCheckboxTable::instance()->getAllItemsByWorkflowFieldId($fields[0]['id'])->toArray(); $result = $value[0]['value'] == 1 ? $this->context->getI18N()->__('Yes' ,null,'workflowmanagement') : $this->context->getI18N()->__('No' ,null,'workflowmanagement'); return $result; break; case 'NUMBER': $value = WorkflowSlotFieldNumberTable::instance()->getAllItemsByWorkflowFieldId($fields[0]['id'])->toArray(); $result = $value[0]['value']; return $result; break; case 'DATE': $value = WorkflowSlotFieldDateTable::instance()->getAllItemsByWorkflowFieldId($fields[0]['id'])->toArray(); $result = $value[0]['value']; return $result; break; case 'TEXTAREA': $value = WorkflowSlotFieldTextareaTable::instance()->getAllItemsByWorkflowFieldId($fields[0]['id'])->toArray(); $result = $value[0]['value']; return $result; break; case 'RADIOGROUP': $value = WorkflowSlotFieldRadiogroupTable::instance()->getAllItemsByWorkflowFieldId($fields[0]['id'])->toArray(); $result = $value[0]['value'] == 1 ? $this->context->getI18N()->__('Yes' ,null,'workflowmanagement') : $this->context->getI18N()->__('No' ,null,'workflowmanagement'); return $result; break; case 'CHECKBOXGROUP': $value = WorkflowSlotFieldCheckboxgroupTable::instance()->getAllItemsByWorkflowFieldId($fields[0]['id'])->toArray(); $result = $value[0]['value'] == 1 ? $this->context->getI18N()->__('Yes' ,null,'workflowmanagement') : $this->context->getI18N()->__('No' ,null,'workflowmanagement'); return $result; break; case 'COMBOBOX': $value = WorkflowSlotFieldComboboxTable::instance()->getAllItemsByWorkflowFieldId($fields[0]['id'])->toArray(); $result = $value[0]['value'] == 1 ? $this->context->getI18N()->__('Yes' ,null,'workflowmanagement') : $this->context->getI18N()->__('No' ,null,'workflowmanagement'); return $result; break; case 'FILE': $value = WorkflowSlotFieldFileTable::instance()->getAllItemsByWorkflowFieldId($fields[0]['id'])->toArray(); $url = (url_for('layout/index',true)); $url = str_replace('/layout', '', $url); $result['filepath'] = $url . '/file/showAttachment/workflowid/' . $wfItem[0]['workflowtemplate_id'] . '/versionid/' . $wfItem[0]['id'] . '/attachmentid/' . $value[0]['id'] . '/file/1'; $fileUrl = '<a href="'.$result['filepath'].'">'.$value[0]['filename'].'</a>'; return $fileUrl; break; } } else { return ''; } } } } }