public function getRadiogroup($field_id) { $result = array(); $result = FieldRadiogroupTable::instance()->findRadiogroupByFieldId($field_id)->toArray(); return $result; }
/** * Saves Radiogroup * * @param int $id, id of the parent field * @param array $data, Post data */ public function saveRadiogroup($id, $data) { FieldRadiogroupTable::instance()->setRadiogroupToNullById($id); if($data['removeItem'] != '') { $delted_fields = explode(',', $data['removeItem']); Doctrine::getTable('FieldRadiogroup')->createQuery('frg')->whereIn('frg.id', $delted_fields)->execute()->delete(); } $records = $data['grid']; $position = 1; foreach($records as $item) { $radiogroup = $item['databseId'] == '' ? new FieldRadiogroup() : Doctrine::getTable('FieldRadiogroup')->find($item['databseId']); $radiogroup->setValue($item['value']); $radiogroup->setIsactive($item['checked']); $radiogroup->setFieldId($id); $radiogroup->setPosition($position++); $radiogroup->save(); } }
/** * Add all fields with its values to the slot. Value depends on the flag if old values are used or not * @param <type> $type * @param <type> $field_id * @param <type> $workflowslotfield_id * @return <type> */ public function getItems($type, $field_id, $workflowslotfield_id) { $result = array(); $a = 0; switch($type) { case 'TEXTFIELD': if($this->newValue == 0) { $data = FieldTextfieldTable::instance()->getTextfieldByFieldId($field_id)->toArray(); $result[0]['value'] = $data[0]['defaultvalue']; return $result; } else { $data = WorkflowSlotFieldTextfieldTable::instance()->getAllItemsByWorkflowFieldId($workflowslotfield_id)->toArray(); $result[0]['value'] = $data[0]['value']; return $result; } break; case 'CHECKBOX': if($this->newValue == 0) { $result[0]['value'] = 0; return $result; } else { $data = WorkflowSlotFieldCheckboxTable::instance()->getAllItemsByWorkflowFieldId($workflowslotfield_id)->toArray(); $result[0]['value'] = $data[0]['value']; return $result; } break; case 'NUMBER': if($this->newValue == 0) { $data = FieldNumberTable::instance()->getNumberByFieldId($field_id)->toArray(); $result[0]['value'] = $data[0]['defaultvalue']; return $result; } else { $data = WorkflowSlotFieldNumberTable::instance()->getAllItemsByWorkflowFieldId($workflowslotfield_id)->toArray(); $result[0]['value'] = $data[0]['value']; return $result; } break; case 'DATE': if($this->newValue == 0) { $data = FieldDateTable::instance()->getDateByFieldId($field_id)->toArray(); $result[0]['value'] = $data[0]['defaultvalue']; return $result; } else { $data = WorkflowSlotFieldDateTable::instance()->getAllItemsByWorkflowFieldId($workflowslotfield_id)->toArray(); $result[0]['value'] = $data[0]['value']; return $result; } break; case 'TEXTAREA': if($this->newValue == 0) { $data = FieldTextareaTable::instance()->getTextareaByFieldId($field_id)->toArray(); $result[0]['value'] = $data[0]['content']; return $result; } else { $data = WorkflowSlotFieldTextareaTable::instance()->getAllItemsByWorkflowFieldId($workflowslotfield_id)->toArray(); $result[0]['value'] = $data[0]['value']; return $result; } break; case 'RADIOGROUP': if($this->newValue == 0) { $data = FieldRadiogroupTable::instance()->findRadiogroupByFieldId($field_id)->toArray(); foreach($data as $item) { $result[$a]['value'] = $item['isactive']; $result[$a]['fieldradiogroup_id'] = $item['id']; $result[$a++]['position'] = $item['position']; } return $result; } else { $data = WorkflowSlotFieldRadiogroupTable::instance()->getAllItemsByWorkflowFieldId($workflowslotfield_id)->toArray(); foreach($data as $item) { $result[$a]['value'] = $item['value']; $result[$a]['fieldradiogroup_id'] = $item['fieldradiogroup_id']; $result[$a++]['position'] = $item['position']; } return $result; } break; case 'CHECKBOXGROUP': if($this->newValue == 0) { $data = FieldCheckboxgroupTable::instance()->findCheckboxgroupByFieldId($field_id)->toArray(); foreach($data as $item) { $result[$a]['value'] = $item['isactive']; $result[$a]['fieldradiogroup_id'] = $item['id']; $result[$a++]['position'] = $item['position']; } return $result; } else { $data = WorkflowSlotFieldCheckboxgroupTable::instance()->getAllItemsByWorkflowFieldId($workflowslotfield_id)->toArray(); foreach($data as $item) { $result[$a]['value'] = $item['value']; $result[$a]['fieldradiogroup_id'] = $item['fieldcheckboxgroup_id']; $result[$a++]['position'] = $item['position']; } return $result; } break; case 'COMBOBOX': if($this->newValue == 0) { $data = FieldComboboxTable::instance()->findComboboxByFieldId($field_id)->toArray(); foreach($data as $item) { $result[$a]['value'] = $item['isactive']; $result[$a]['fieldradiogroup_id'] = $item['id']; $result[$a++]['position'] = $item['position']; } return $result; } else { $data = WorkflowSlotFieldComboboxTable::instance()->getAllItemsByWorkflowFieldId($workflowslotfield_id)->toArray(); foreach($data as $item) { $result[$a]['value'] = $item['value']; $result[$a]['fieldradiogroup_id'] = $item['fieldcombobox_id']; $result[$a++]['position'] = $item['position']; } return $result; } break; case 'FILE': $data = WorkflowSlotFieldFileTable::instance()->getAllItemsByWorkflowFieldId($workflowslotfield_id)->toArray(); return $data; break; } }
public function getFieldItems(WorkflowSlotField $field, $type, sfContext $context, $versionid) { $result = array(); $a = 0; switch ($type) { case 'TEXTFIELD': $items = WorkflowSlotFieldTextfieldTable::instance()->getAllItemsByWorkflowFieldId($field->getId())->toArray(); $fieldData = FieldTextfieldTable::instance()->getTextfieldByFieldId($field->getFieldId())->toArray(); $replaceObj = new ReplaceTags($versionid, $items[0]['value'], $this->culture, $context); $value = $replaceObj->getText(); $result['value'] = $value; $result['regex'] = $fieldData[0]['regex']; $result['id'] = $items[0]['id']; break; case 'CHECKBOX': $items = WorkflowSlotFieldCheckboxTable::instance()->getAllItemsByWorkflowFieldId($field->getId())->toArray(); $result['value'] = $items[0]['value']; $result['id'] = $items[0]['id']; break; case 'NUMBER': $items = WorkflowSlotFieldNumberTable::instance()->getAllItemsByWorkflowFieldId($field->getId())->toArray(); $fieldData = FieldNumberTable::instance()->getNumberByFieldId($field->getFieldId())->toArray(); if($fieldData[0]['comboboxvalue'] != 'EMPTY') { $result['emptytext'] = $context->getI18N()->__($fieldData[0]['comboboxvalue'] ,null,'field'); } else { $result['emptytext'] = $fieldData[0]['regex']; } $result['value'] = $items[0]['value']; $result['regex'] = $fieldData[0]['regex']; $result['id'] = $items[0]['id']; break; case 'DATE': $items = WorkflowSlotFieldDateTable::instance()->getAllItemsByWorkflowFieldId($field->getId())->toArray(); $format = FieldDateTable::instance()->getDateByFieldId($field->getFieldId())->toArray(); $result['value'] = $items[0]['value']; $result['dateformat'] = $format[0]['dateformat']; $result['regex'] = $format[0]['regex']; $result['id'] = $items[0]['id']; break; case 'TEXTAREA': $items = WorkflowSlotFieldTextareaTable::instance()->getAllItemsByWorkflowFieldId($field->getId())->toArray(); $textarea = FieldTextareaTable::instance()->getTextareaById($field->getFieldId())->toArray(); $result['value'] = $items[0]['value']; $result['contenttype'] = $textarea[0]['contenttype']; $result['id'] = $items[0]['id']; break; case 'RADIOGROUP': $items = WorkflowSlotFieldRadiogroupTable::instance()->getAllItemsByWorkflowFieldId($field->getId()); foreach($items as $item) { $name = FieldRadiogroupTable::instance()->getRadiogroupItemById($item->getFieldradiogroupId())->toArray(); $result[$a]['value'] = $item->getValue(); $result[$a]['id'] = $item->getId(); $result[$a++]['name'] = $name[0]['value']; } break; case 'CHECKBOXGROUP': $items = WorkflowSlotFieldCheckboxgroupTable::instance()->getAllItemsByWorkflowFieldId($field->getId()); foreach($items as $item) { $name = FieldCheckboxgroupTable::instance()->getCheckboxgroupItemById($item->getFieldcheckboxgroupId())->toArray(); $result[$a]['value'] = $item->getValue(); $result[$a]['id'] = $item->getId(); $result[$a++]['name'] = $name[0]['value']; } break; case 'COMBOBOX': $items = WorkflowSlotFieldComboboxTable::instance()->getAllItemsByWorkflowFieldId($field->getId()); foreach($items as $item) { $name = FieldComboboxTable::instance()->getComboboxItemById($item->getFieldcomboboxId())->toArray(); $result[$a]['value'] = $item->getValue(); $result[$a]['id'] = $item->getId(); $result[$a++]['name'] = $name[0]['value']; } break; case 'FILE': $file = WorkflowSlotFieldFileTable::instance()->getAllItemsByWorkflowFieldId($field->getId())->toArray(); $workflowtemplate = WorkflowVersionTable::instance()->getWorkflowVersionById($versionid)->toArray(); $result['filepath'] = sfConfig::get('sf_upload_dir') . '/' . $workflowtemplate[0]['workflowtemplate_id'] . '/' . $versionid . '/' . $file[0]['hashname'] ; $result['hashname'] = $file[0]['hashname']; $result['filename'] = $file[0]['filename']; $url = $this->serverUrl . '/file/ShowAttachment'; $plainUrl = $this->serverUrl . '/file/ShowAttachment'; $url .= '/workflowid/' . $workflowtemplate[0]['workflowtemplate_id'] . '/versionid/' . $versionid. '/attachmentid/' . $file[0]['id'] . '/file/1'; $plainUrl .= '/workflowid/' . $workflowtemplate[0]['workflowtemplate_id'] . '/versionid/' . $versionid. '/attachmentid/' . $file[0]['id'] . '/file/1'; $result['plainurl'] = $plainUrl; $result['url'] = $url; $result['link'] = '<a href="'.$url.'" target="_blank">'.$result['filename'].'</a>'; break; } return $result; }