public ActionResult ImportMetadata(long metadataStructureId, bool edit = true, bool created = false, bool locked = false)
{
ViewBag.Title = PresentationModel.GetViewTitleForTenant("Create Dataset", this.Session.GetTenant());
TaskManager = (CreateTaskmanager)Session["CreateDatasetTaskmanager"];
XmlDocument newMetadata = (XmlDocument)TaskManager.Bus[CreateTaskmanager.METADATA_XML];
List<StepModelHelper> stepInfoModelHelpers = new List<StepModelHelper>();
MetadataEditorModel Model = new MetadataEditorModel();
TaskManager.AddToBus(CreateTaskmanager.METADATA_XML, XmlUtility.ToXDocument(newMetadata));
AdvanceTaskManagerBasedOnExistingMetadata(metadataStructureId);
foreach (var stepInfo in TaskManager.StepInfos)
{
StepModelHelper stepModelHelper = GetStepModelhelper(stepInfo.Id);
if (stepModelHelper.Model == null)
{
if (stepModelHelper.Usage is MetadataPackageUsage)
{
stepModelHelper.Model = CreatePackageModel(stepInfo.Id, false);
if (stepModelHelper.Model.StepInfo.IsInstanze)
LoadSimpleAttributesForModelFromXml(stepModelHelper);
}
if (stepModelHelper.Usage is MetadataNestedAttributeUsage)
{
stepModelHelper.Model = CreateCompoundModel(stepInfo.Id, false);
if (stepModelHelper.Model.StepInfo.IsInstanze)
LoadSimpleAttributesForModelFromXml(stepModelHelper);
}
getChildModelsHelper(stepModelHelper);
}
stepInfoModelHelpers.Add(stepModelHelper);
}
Model.StepModelHelpers = stepInfoModelHelpers;
Model.Import = IsImportAvavilable(metadataStructureId);
//set addtionaly functions
Model.Actions = getAddtionalActions();
Model.FromEditMode = edit;
Model.Created = created;
if (TaskManager.Bus.ContainsKey(CreateTaskmanager.ENTITY_ID))
{
long entityId = Convert.ToInt64(TaskManager.Bus[CreateTaskmanager.ENTITY_ID]);
Model.EditRight = hasUserEditRights(entityId);
Model.EditAccessRight = hasUserEditAccessRights(entityId);
//Model.DatasetId = entityId;
}
else
{
Model.EditRight = false;
Model.EditAccessRight = false;
Model.DatasetId = -1;
}
ViewData["Locked"] = locked;
return PartialView("MetadataEditor", Model);
}