Beispiel #1
0
 /**
  * @param string $fixtureName
  * @param string $inputJson
  * @param string $ignore
  * @dataProvider definitionProvider
  */
 public function testRoundtrip_JsonToXmlToJson($fixtureName, $inputJson, $ignore)
 {
     $tempXml = CRM_Case_BAO_CaseType::convertDefinitionToXML('Housing Support', json_decode($inputJson, TRUE));
     $actualDefinition = CRM_Case_BAO_CaseType::convertXmlToDefinition(simplexml_load_string($tempXml));
     $expectedDefinition = json_decode($inputJson, TRUE);
     $this->assertEquals($expectedDefinition, $actualDefinition);
 }
Beispiel #2
0
/**
 * Format definition.
 *
 * @param array $result
 *
 * @return array
 * @throws \CRM_Core_Exception
 */
function _civicrm_api3_case_type_get_formatResult(&$result)
{
    foreach ($result['values'] as $key => $caseType) {
        $caseTypeName = isset($caseType['name']) ? $caseType['name'] : CRM_Core_DAO::getFieldValue('CRM_Case_DAO_CaseType', $caseType['id'], 'name', 'id', TRUE);
        $xml = CRM_Case_XMLRepository::singleton()->retrieve($caseTypeName);
        if ($xml) {
            $result['values'][$key]['definition'] = CRM_Case_BAO_CaseType::convertXmlToDefinition($xml);
        } else {
            $result['values'][$key]['definition'] = array();
        }
        $result['values'][$key]['is_forkable'] = CRM_Case_BAO_CaseType::isForkable($result['values'][$key]['id']);
        $result['values'][$key]['is_forked'] = CRM_Case_BAO_CaseType::isForked($result['values'][$key]['id']);
    }
    return $result;
}