Esempio n. 1
0
        [EditArticles]  public static urn.microsoft.guidanceexplorer.View           xmlDB_NewView(this TM_Xml_Database tmDatabase, Guid parentFolderId, View tmView)
        {
            UserRole.EditArticles.demand();
            if (tmView.isNull())
            {
                return(null);
            }
            var tmLibrary = tmDatabase.tmLibrary(tmView.library.guid());

            //var guidanceExplorer = tmDatabase.xmlDB_GuidanceExplorer(tmView.library.guid());
            if (tmLibrary.notNull())
            {
                if (tmView.id.isNull() || (tmView.id.isGuid() && tmView.id == Guid.Empty.str()))
                {
                    tmView.id = Guid.NewGuid().str();
                }
                var view = tmView.view();

                if (parentFolderId == Guid.Empty)
                {
                    var guidanceExplorer = tmLibrary.guidanceExplorer(tmDatabase);
                    guidanceExplorer.library.libraryStructure.view.Add(view);
                    //tmLibrary.xmlDB_Save_GuidanceExplorer(tmDatabase);
                    //return tmDatabase.xmlDB_View(tmView.id.guid());
                }
                else
                {
                    var folder = tmDatabase.xmlDB_Folder(tmLibrary.Id, parentFolderId);
                    if (folder.isNull())
                    {
                        "[xmlDB_NewView] could not find parent folder (to add view) with id {0}".error(parentFolderId);
                        return(null);
                    }
                    folder.view.Add(view);
                }
                tmLibrary.xmlDB_Save_GuidanceExplorer(tmDatabase);
                return(view);
                //return folder.xmlDB_View(tmView.id.guid());                   // I have to get the reference again since the object is different after the calls to xmlDB_Save_GuidanceExplorer
            }
            return(null);
        }
Esempio n. 2
0
        [EditArticles]  public static urn.microsoft.guidanceexplorer.View           xmlDB_UpdateView(this TM_Xml_Database tmDatabase, View tmView, List <Guid> guidanceItems)
        {
            UserRole.EditArticles.demand();
            if (tmView.isNull())
            {
                return(null);
            }
            var tmLibrary = tmDatabase.tmLibrary(tmView.library.guid());

            if (tmLibrary.isNull())
            {
                "[TM_Xml_Database] in xmlDB_UpdateView, could not find library with id: {0}".error(tmView.library);
                return(null);
            }

            /*var targetFolder = tmLibrary.xmlDB_Folder(tmView.parentFolder, tmDatabase);
             * if (targetFolder.isNull())
             * {
             *  "[TM_Xml_Database] in xmlDB_UpdateView, could not find target Folder with name: {0}".error(tmView.parentFolder);
             *  return null;
             * }*/
            var targetView = tmDatabase.xmlDB_View(tmView.id.guid());

            if (targetView.isNull())
            {
                "[TM_Xml_Database] in xmlDB_UpdateView, could not find view with id: {0}".error(tmView.id);
                return(null);
            }
            //"Updating view with caption {0} in folder {1} with id {2}".info(targetView.caption, targetFolder.caption, targetView.id);
            targetView.caption = tmView.caption;
            targetView.author  = tmView.creator;

            //foreach(var guid in guidanceItems)

            tmLibrary.xmlDB_Save_GuidanceExplorer(tmDatabase);
            return(targetView);
            //existingView.creationDate = tmView.lastUpdate // should we also update this?
        }
        public static urn.microsoft.guidanceexplorer.View xmlDB_UpdateView(this TM_Xml_Database tmDatabase, View tmView, List<Guid> guidanceItems)
        {
            UserRole.EditArticles.demand();
            if (tmView.isNull())
                return null;
            var tmLibrary = tmDatabase.tmLibrary(tmView.library.guid());
            if (tmLibrary.isNull())
            {
                "[TM_Xml_Database] in xmlDB_UpdateView, could not find library with id: {0}".error(tmView.library);
                return null;
            }
            /*var targetFolder = tmLibrary.xmlDB_Folder(tmView.parentFolder, tmDatabase);
            if (targetFolder.isNull())
            {
                "[TM_Xml_Database] in xmlDB_UpdateView, could not find target Folder with name: {0}".error(tmView.parentFolder);
                return null;
            }*/
            var targetView = tmDatabase.xmlDB_View(tmView.id.guid());
            if (targetView.isNull())
            {
                "[TM_Xml_Database] in xmlDB_UpdateView, could not find view with id: {0}".error(tmView.id);
                return null;
            }
            //"Updating view with caption {0} in folder {1} with id {2}".info(targetView.caption, targetFolder.caption, targetView.id);
            targetView.caption = tmView.caption;
            targetView.author = tmView.creator;

            //foreach(var guid in guidanceItems)

            tmLibrary.xmlDB_Save_GuidanceExplorer(tmDatabase);
            return targetView;
            //existingView.creationDate = tmView.lastUpdate // should we also update this?
        }
        public static urn.microsoft.guidanceexplorer.View xmlDB_NewView(this TM_Xml_Database tmDatabase, Guid parentFolderId, View tmView)
        {
            UserRole.EditArticles.demand();
            if (tmView.isNull())
                return null;
            var tmLibrary = tmDatabase.tmLibrary(tmView.library.guid());
            //var guidanceExplorer = tmDatabase.xmlDB_GuidanceExplorer(tmView.library.guid());
            if (tmLibrary.notNull())
            {
                if (tmView.id.isNull() || (tmView.id.isGuid() && tmView.id == Guid.Empty.str()))
                    tmView.id = Guid.NewGuid().str();
                var view = tmView.view();

                if (parentFolderId == Guid.Empty)
                {
                    var guidanceExplorer = tmLibrary.guidanceExplorer(tmDatabase);
                    guidanceExplorer.library.libraryStructure.view.Add(view);
                    //tmLibrary.xmlDB_Save_GuidanceExplorer(tmDatabase);
                    //return tmDatabase.xmlDB_View(tmView.id.guid());
                }
                else
                {
                    var folder = tmDatabase.xmlDB_Folder(tmLibrary.Id, parentFolderId);
                    if (folder.isNull())
                    {
                        "[xmlDB_NewView] could not find parent folder (to add view) with id {0}".error(parentFolderId);
                        return null;
                    }
                    folder.view.Add(view);
                }
                tmLibrary.xmlDB_Save_GuidanceExplorer(tmDatabase);
                return view;
                //return folder.xmlDB_View(tmView.id.guid()); 					// I have to get the reference again since the object is different after the calls to xmlDB_Save_GuidanceExplorer
            }
            return null;
        }