public ActionResult LoadMetadata(long entityId, bool locked = false, bool created = false, bool fromEditMode = false, bool resetTaskManager = false, XmlDocument newMetadata = null)
{
bool loadFromExternal = resetTaskManager;
long metadataStructureId = -1;
ViewBag.Title = PresentationModel.GetViewTitleForTenant("Create Dataset", this.Session.GetTenant());
ViewData["Locked"] = locked;
ViewData["ShowOptional"] = false;
TaskManager = (CreateTaskmanager)Session["CreateDatasetTaskmanager"];
if (TaskManager == null)
{
TaskManager = new CreateTaskmanager();
loadFromExternal = true;
}
List<StepModelHelper> stepInfoModelHelpers = new List<StepModelHelper>();
MetadataEditorModel Model = new MetadataEditorModel();
stepInfoModelHelpers = (List<StepModelHelper>)TaskManager.Bus[CreateTaskmanager.METADATA_STEP_MODEL_HELPER];
if (TaskManager.Bus.ContainsKey(CreateTaskmanager.ENTITY_TITLE))
{
if (TaskManager.Bus[CreateTaskmanager.ENTITY_TITLE] != null)
Model.DatasetTitle = TaskManager.Bus[CreateTaskmanager.ENTITY_TITLE].ToString();
}
else
Model.DatasetTitle = "No Title available.";
Model.DatasetId = entityId;
Model.StepModelHelpers = stepInfoModelHelpers;
Model.Created = created;
//check if a metadatastructure has a import mapping
if (TaskManager.Bus.ContainsKey(CreateTaskmanager.METADATASTRUCTURE_ID))
metadataStructureId = Convert.ToInt64(TaskManager.Bus[CreateTaskmanager.METADATASTRUCTURE_ID]);
if(metadataStructureId!=-1)
Model.Import = IsImportAvavilable(metadataStructureId);
//FromCreateOrEditMode
TaskManager.AddToBus(CreateTaskmanager.EDIT_MODE, fromEditMode);
Model.FromEditMode = (bool)TaskManager.Bus[CreateTaskmanager.EDIT_MODE];
Model.EditRight = hasUserEditRights(entityId);
Model.EditAccessRight = hasUserEditAccessRights(entityId);
//set addtionaly functions
Model.Actions = getAddtionalActions();
return PartialView("MetadataEditor", Model);
}