MT-73: Order window changed for the Selective import feature.

This commit is contained in:
Gustavo Adolfo Cruz Laura
2016-03-30 20:04:17 -04:00
parent 34cdc338d1
commit 4c01c1543d
3 changed files with 191 additions and 95 deletions

View File

@@ -29,32 +29,32 @@ $affectedGroups = array();
$granularImport = false;
$objectImport = array();
if (isset($_FILES["PROCESS_FILENAME"]["name"]) && (preg_match("/^(?:pm|pmx)$/", pathinfo($_FILES["PROCESS_FILENAME"]["name"], PATHINFO_EXTENSION)))) {
$import = new XmlImporter();
$data = $import->load($_FILES["PROCESS_FILENAME"]["tmp_name"]);
if (version_compare($data['version'], '3.0', '>') && isset($_POST['objectsToImport']) && $_POST['objectsToImport'] === '') {
$objectImport = (isset($data['objects'])) ? explode('|', $data['objects']) : "";
$ids = new \ProcessMaker\BusinessModel\Migrator\ExportObjects();
$objectImport = $ids->getIdObjectList($objectImport);
$granularImport = true;
$result = array(
"success" => true,
"catchMessage" => '',
"ExistProcessInDatabase" => 0,
"ExistGroupsInDatabase" => 0,
"notExistProcessInDatabase" => 0,
"affectedGroups" => '',
"sNewProUid" => '',
"project_type" => 'bpmn',
"isGranularImport" => $granularImport,
"objectGranularImport" => $objectImport,
"project_type_aux" => ''
);
echo G::json_encode($result);
exit(0);
}
}
//if (isset($_FILES["PROCESS_FILENAME"]["name"]) && (preg_match("/^(?:pm|pmx)$/", pathinfo($_FILES["PROCESS_FILENAME"]["name"], PATHINFO_EXTENSION)))) {
// $import = new XmlImporter();
// $data = $import->load($_FILES["PROCESS_FILENAME"]["tmp_name"]);
//
// if (version_compare($data['version'], '3.0', '>') && isset($_POST['objectsToImport']) && $_POST['objectsToImport'] === '') {
// $objectImport = (isset($data['objects'])) ? explode('|', $data['objects']) : "";
// $ids = new \ProcessMaker\BusinessModel\Migrator\ExportObjects();
// $objectImport = $ids->getIdObjectList($objectImport);
// $granularImport = true;
// $result = array(
// "success" => true,
// "catchMessage" => '',
// "ExistProcessInDatabase" => 0,
// "ExistGroupsInDatabase" => 0,
// "notExistProcessInDatabase" => 0,
// "affectedGroups" => '',
// "sNewProUid" => '',
// "project_type" => 'bpmn',
// "isGranularImport" => $granularImport,
// "objectGranularImport" => $objectImport,
// "project_type_aux" => ''
// );
// echo G::json_encode($result);
// exit(0);
// }
//}
/*----------------------------------********---------------------------------*/
if (PMLicensedFeatures::getSingleton()->verifyfeature("B0oWlBLY3hHdWY0YUNpZEtFQm5CeTJhQlIwN3IxMEkwaG4=") &&
isset($_FILES["PROCESS_FILENAME"]) &&
@@ -148,6 +148,7 @@ if (isset($_FILES["PROCESS_FILENAME"]) &&
$opt2 = XmlImporter::GROUP_IMPORT_OPTION_CREATE_NEW;
$prjUid = '';
$proType = '';
$granularImport = false;
$objectsToImport = '';
if (isset($_POST['objectsToImport']) && sizeof(G::json_decode($_POST['objectsToImport']))){
$objectsToImport = G::json_decode($_POST['objectsToImport']);
@@ -261,11 +262,49 @@ if (isset($_POST["PRO_FILENAME"]) &&
try {
$objectsToImport = '';
/*if (isset($_POST['PRO_FILENAME']) && (preg_match("/^(?:pm|pmx)$/", pathinfo($_POST['PRO_FILENAME'], PATHINFO_EXTENSION)))) {
$import = new XmlImporter();*/
$data = $importer->load();
// only uploadFileNewProcessExist??
if (version_compare($data['version'], '3.0', '>') && isset($_POST['objectsToImport']) && $_POST['objectsToImport'] === '' && $_POST['IMPORT_OPTION']==="1") {
$objectImport = (isset($data['objects'])) ? explode('|', $data['objects']) : "";
$ids = new \ProcessMaker\BusinessModel\Migrator\ExportObjects();
$objectImport = $ids->getIdObjectList($objectImport);
$granularImport = true;
$result = array(
"success" => true,
"catchMessage" => '',
"ExistProcessInDatabase" => 0,
"ExistGroupsInDatabase" => 0,
"notExistProcessInDatabase" => 0,
"affectedGroups" => '',
"sNewProUid" => '',
"project_type" => 'bpmn',
"isGranularImport" => $granularImport,
"objectGranularImport" => $objectImport,
"project_type_aux" => ''
);
echo G::json_encode($result);
exit(0);
}
// }
if (version_compare($data['version'], '3.0', '>') && $_POST['IMPORT_OPTION']==="3") {
$objectsToImport = [];
$objects = (isset($data['objects'])) ? explode('|', $data['objects']) : "";
$ids = new \ProcessMaker\BusinessModel\Migrator\ExportObjects();
$objects = $ids->getIdObjectList($objects);
foreach ($objects as $object) {
$objectsToImport[] = (object)array('id' => $object, 'action' => 'replace');
}
}
if (isset($_POST['objectsToImport']) && sizeof(G::json_decode($_POST['objectsToImport']))){
$objectsToImport = G::json_decode($_POST['objectsToImport']);
}
$prjUid = $importer->import($option, $optionGroup, null, $objectsToImport);
G::LoadClass( 'Process' );
$oProcess = new Process();
$processData = $oProcess->load( $prjUid );