+--------------------------------------------------------------------+
| CiviCRM version 4.7 |
+--------------------------------------------------------------------+
- | Copyright CiviCRM LLC (c) 2004-2016 |
+ | Copyright CiviCRM LLC (c) 2004-2018 |
+--------------------------------------------------------------------+
| This file is a part of CiviCRM. |
| |
/**
*
* @package CRM
- * @copyright CiviCRM LLC (c) 2004-2016
+ * @copyright CiviCRM LLC (c) 2004-2018
*/
class CRM_Utils_Migrate_Import {
/**
public function run($file) {
// read xml file
$dom = new DomDocument();
- if (!$dom->load($file)) {
+ $xmlString = file_get_contents($file);
+ $load = $dom->loadXML($xmlString);
+ if (!$load) {
throw new CRM_Core_Exception("Failed to parse XML file \"$file\"");
}
$dom->xinclude();
foreach ($optionValuesXML->OptionValue as $optionValueXML) {
$optionValue = new CRM_Core_DAO_OptionValue();
$optionValue->option_group_id = $idMap['option_group'][(string ) $optionValueXML->option_group_name];
+ if (empty($optionValue->option_group_id)) {
+ //CRM-17410 check if option group already exist.
+ $optionValue->option_group_id = CRM_Core_DAO::getFieldValue('CRM_Core_DAO_OptionGroup', $optionValueXML->option_group_name, 'id', 'name');
+ }
$this->copyData($optionValue, $optionValueXML, FALSE, 'label');
if (!isset($optionValue->value)) {
$sql = "