コード例 #1
0
        private void SaveAdditionalData(string key)
        {
            OpenContentSettings settings = this.OpenContentSettings();
            int ModId        = settings.IsOtherModule ? settings.ModuleId : ModuleId;
            var manifest     = settings.Manifest;
            var dataManifest = manifest.GetAdditionalData(key);
            var ds           = DataSourceManager.GetDataSource(manifest.DataSource);
            var dsContext    = new DataSourceContext()
            {
                PortalId       = PortalSettings.PortalId,
                TabId          = TabId,
                ModuleId       = ModId,
                TabModuleId    = this.TabModuleId,
                UserId         = UserInfo.UserID,
                TemplateFolder = settings.TemplateDir.FolderPath,
                Config         = manifest.DataSourceConfig,
                //Options = reqOptions
            };
            var dsItem = ds.GetData(dsContext, dataManifest.ScopeType, dataManifest.StorageKey ?? key);

            if (dsItem == null)
            {
                ds.AddData(dsContext, dataManifest.ScopeType, dataManifest.StorageKey ?? key, JToken.Parse(txtSource.Text));
            }
            else
            {
                ds.UpdateData(dsContext, dsItem, JToken.Parse(txtSource.Text));
            }
        }
コード例 #2
0
        private void SaveAdditionalData(string key)
        {
            var module = OpenContentModuleConfig.Create(this.ModuleConfiguration, PortalSettings);
            OpenContentSettings settings = this.OpenContentSettings();
            int modId        = settings.IsOtherModule ? settings.ModuleId : ModuleId;
            var manifest     = settings.Manifest;
            var dataManifest = manifest.GetAdditionalData(key);
            var ds           = DataSourceManager.GetDataSource(manifest.DataSource);
            var dsContext    = new DataSourceContext()
            {
                PortalId           = PortalSettings.PortalId,
                CurrentCultureCode = DnnLanguageUtils.GetCurrentCultureCode(),
                TabId          = TabId,
                ModuleId       = modId,
                TabModuleId    = this.TabModuleId,
                UserId         = UserInfo.UserID,
                TemplateFolder = settings.TemplateDir.FolderPath,
                Config         = manifest.DataSourceConfig,
                //Options = reqOptions
            };
            var dsItem = ds.GetData(dsContext, dataManifest.ScopeType, dataManifest.StorageKey ?? key);

            if (dsItem == null)
            {
                ds.AddData(dsContext, dataManifest.ScopeType, dataManifest.StorageKey ?? key, JToken.Parse(txtSource.Text));
            }
            else
            {
                ds.UpdateData(dsContext, dsItem, JToken.Parse(txtSource.Text));
            }
            App.Services.CacheAdapter.SyncronizeCache(module);
        }
コード例 #3
0
        private void IndexModuleData(LuceneController lc, int moduleId, OpenContentSettings settings)
        {
            bool index = false;

            if (settings.TemplateAvailable)
            {
                index = settings.Manifest.Index;
            }
            FieldConfig indexConfig = null;

            if (index)
            {
                indexConfig = OpenContentUtils.GetIndexConfig(settings.Template.Key.TemplateDir);
            }

            if (settings.IsOtherModule)
            {
                moduleId = settings.ModuleId;
            }

            lc.Store.Delete(new TermQuery(new Term("$type", moduleId.ToString())));
            OpenContentController occ = new OpenContentController();

            foreach (var item in occ.GetContents(moduleId))
            {
                lc.Add(item, indexConfig);
            }
        }
コード例 #4
0
        private void IndexModuleData(LuceneController lc, int moduleId, OpenContentSettings settings)
        {
            bool index = false;

            if (settings.TemplateAvailable)
            {
                index = settings.Manifest.Index;
            }
            FieldConfig indexConfig = null;

            if (index)
            {
                indexConfig = OpenContentUtils.GetIndexConfig(settings.Template);
            }

            if (settings.IsOtherModule)
            {
                moduleId = settings.ModuleId;
            }
            lc.Store.Delete(new TermQuery(new Term("$type", OpenContentInfo.GetScope(moduleId, settings.Template.Collection))));
            OpenContentController occ = new OpenContentController(PortalSettings.Current.PortalId);

            foreach (var item in occ.GetContents(moduleId, settings.Template.Collection))
            {
                lc.Add(item, indexConfig);
            }
        }
コード例 #5
0
        protected override void OnInit(EventArgs e)
        {
            base.OnInit(e);
            var  bootstrap      = App.Services.CreateGlobalSettingsRepository(ModuleContext.PortalId).GetEditLayout() != AlpacaLayoutEnum.DNN;
            bool loadBootstrap  = bootstrap && App.Services.CreateGlobalSettingsRepository(ModuleContext.PortalId).GetLoadBootstrap();
            bool loadGlyphicons = bootstrap && App.Services.CreateGlobalSettingsRepository(ModuleContext.PortalId).GetLoadGlyphicons();

            hlCancel.NavigateUrl = Globals.NavigateURL();
            cmdSave.NavigateUrl  = Globals.NavigateURL();
            cmdCopy.NavigateUrl  = Globals.NavigateURL();
            OpenContentSettings settings = this.OpenContentSettings();

            string prefix = (string.IsNullOrEmpty(settings.Template.Collection) || settings.Template.Collection == "Items") ? "" : settings.Template.Collection;

            AlpacaEngine alpaca = new AlpacaEngine(Page, ModuleContext.PortalId, settings.Template.ManifestFolderUri.FolderPath, prefix);

            alpaca.RegisterAll(bootstrap, loadBootstrap, loadGlyphicons);
            string itemId = Request.QueryString["id"];

            AlpacaContext                      = new AlpacaContext(PortalId, ModuleId, itemId, ScopeWrapper.ClientID, hlCancel.ClientID, cmdSave.ClientID, cmdCopy.ClientID, hlDelete.ClientID, ddlVersions.ClientID);
            AlpacaContext.Bootstrap            = bootstrap;
            AlpacaContext.Horizontal           = App.Services.CreateGlobalSettingsRepository(ModuleContext.PortalId).GetEditLayout() == AlpacaLayoutEnum.BootstrapHorizontal;
            AlpacaContext.IsNew                = settings.Template.IsListTemplate && string.IsNullOrEmpty(itemId);
            AlpacaContext.DeleteConfirmMessage = LocalizeSafeJsString("txtDeleteConfirmMessage");
            if (DnnLanguageUtils.IsMultiLingualPortal(PortalId))
            {
                AlpacaContext.DeleteConfirmMessage = LocalizeSafeJsString("txtMLDeleteConfirmMessage");
            }
        }
コード例 #6
0
        protected override void OnInit(EventArgs e)
        {
            base.OnInit(e);
            ModuleInfo module = ModuleContext.Configuration;

            if (App.Services.CreateGlobalSettingsRepository(ModuleContext.PortalId).GetAutoAttach())
            {
                // auto attach a ContentLocalized OpenContent module to the reference module of the default language
                AutoAttachLocalizedModule(ref module);
            }
            _engine             = new RenderEngine(OpenContentModuleConfig.Create(module, PortalSettings.Current), new DnnRenderContext(ModuleContext), LocalResourceFile);
            _renderinfo         = _engine.Info;
            _settings           = _engine.Settings;
            _engine.QueryString = Page.Request.QueryString;
            if (Page.Request.QueryString["id"] != null)
            {
                _engine.ItemId = Page.Request.QueryString["id"];
            }

            //initialize TemplateInitControl
            TemplateInit ti = (TemplateInit)TemplateInitControl;

            ti.ModuleContext = ModuleContext;
            ti.Settings      = _settings;
            ti.Renderinfo    = _renderinfo;
            ti.ResourceFile  = LocalResourceFile;
        }
コード例 #7
0
        public RenderEngine(ModuleInfo moduleinfo)
        {
            var ocModuleConfig = OpenContentModuleConfig.Create(moduleinfo.ModuleID, moduleinfo.TabID, PortalSettings.Current);

            _module     = ocModuleConfig;
            _renderinfo = new RenderInfo(_module.Settings.Template, _module.Settings.IsOtherModule);
            _settings   = _module.Settings;
        }
コード例 #8
0
 public RenderEngine(OpenContentModuleConfig ocModuleConfig, IRenderContext renderContext, string localResourceFile)
 {
     _module       = ocModuleConfig;
     _renderinfo   = new RenderInfo(_module.Settings.Template, _module.Settings.IsOtherModule);
     _settings     = _module.Settings;
     RenderContext = renderContext;
     ResourceFile  = localResourceFile;
 }
コード例 #9
0
        public HttpResponseMessage Post(string entity, [FromBody] JObject value)
        {
            // Add
            try
            {
                bool index = false;
                OpenContentSettings settings = ActiveModule.OpenContentSettings();
                ModuleInfo          module   = ActiveModule;
                if (settings.ModuleId > 0)
                {
                    ModuleController mc = new ModuleController();
                    module = mc.GetModule(settings.ModuleId, settings.TabId, false);
                }
                var manifest = settings.Template.Manifest;
                TemplateManifest templateManifest = settings.Template;
                index = settings.Template.Manifest.Index;
                string editRole = manifest.GetEditRole();

                bool listMode        = templateManifest != null && templateManifest.IsListTemplate;
                int  createdByUserid = -1;
                var  ds        = DataSourceManager.GetDataSource(manifest.DataSource);
                var  dsContext = new DataSourceContext()
                {
                    ModuleId       = module.ModuleID,
                    TemplateFolder = settings.TemplateDir.FolderPath,
                    Index          = index,
                    UserId         = UserInfo.UserID,
                    PortalId       = module.PortalID,
                    Config         = manifest.DataSourceConfig
                };

                if (!OpenContentUtils.HasEditPermissions(PortalSettings, ActiveModule, editRole, createdByUserid))
                {
                    return(Request.CreateResponse(HttpStatusCode.Unauthorized));
                }
                //var indexConfig = OpenContentUtils.GetIndexConfig(settings.Template.Key.TemplateDir);
                ds.Add(dsContext, value.Properties().First().Value as JObject);
                //if (json["form"]["ModuleTitle"] != null && json["form"]["ModuleTitle"].Type == JTokenType.String)
                //{
                //    string moduleTitle = json["form"]["ModuleTitle"].ToString();
                //    OpenContentUtils.UpdateModuleTitle(ActiveModule, moduleTitle);
                //}
                //else if (json["form"]["ModuleTitle"] != null && json["form"]["ModuleTitle"].Type == JTokenType.Object)
                //{
                //    if (json["form"]["ModuleTitle"][DnnUtils.GetCurrentCultureCode()] != null)
                //    {
                //        string moduleTitle = json["form"]["ModuleTitle"][DnnUtils.GetCurrentCultureCode()].ToString();
                //        OpenContentUtils.UpdateModuleTitle(ActiveModule, moduleTitle);
                //    }
                //}
                return(Request.CreateResponse(HttpStatusCode.OK, ""));
            }
            catch (Exception exc)
            {
                Log.Logger.Error(exc);
                return(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, exc));
            }
        }
コード例 #10
0
        public HttpResponseMessage Get(string entity)
        {
            try
            {
                OpenContentSettings settings = ActiveModule.OpenContentSettings();
                ModuleInfo          module   = ActiveModule;
                if (settings.ModuleId > 0)
                {
                    ModuleController mc = new ModuleController();
                    module = mc.GetModule(settings.ModuleId, settings.TabId, false);
                }
                var manifest = settings.Manifest;
                TemplateManifest templateManifest = settings.Template;
                if (manifest.AdditionalDataExists(entity))
                {
                    var dataManifest = manifest.AdditionalData[entity];
                    //string scope = AdditionalDataUtils.GetScope(dataManifest, PortalSettings.PortalId, ActiveModule.TabID, module.ModuleID, ActiveModule.TabModuleID);

                    //var templateFolder = string.IsNullOrEmpty(dataManifest.TemplateFolder) ? settings.TemplateDir : settings.TemplateDir.ParentFolder.Append(dataManifest.TemplateFolder);
                    //var fb = new FormBuilder(templateFolder);
                    //JObject json = fb.BuildForm(entity);
                    var res = new JObject();

                    int createdByUserid = -1;
                    var ds        = DataSourceManager.GetDataSource(manifest.DataSource);
                    var dsContext = new DataSourceContext()
                    {
                        PortalId       = PortalSettings.PortalId,
                        TabId          = ActiveModule.TabID,
                        ModuleId       = module.ModuleID,
                        TabModuleId    = ActiveModule.TabModuleID,
                        UserId         = UserInfo.UserID,
                        TemplateFolder = settings.TemplateDir.FolderPath,
                        Config         = manifest.DataSourceConfig,
                        //Options = reqOptions
                    };
                    var dsItem = ds.GetData(dsContext, dataManifest.ScopeType, dataManifest.StorageKey ?? entity);
                    if (dsItem != null)
                    {
                        var json = dsItem.Data;
                        createdByUserid = dsItem.CreatedByUserId;
                        JsonUtils.IdJson(json);
                        res[entity] = json;
                    }
                    return(Request.CreateResponse(HttpStatusCode.OK, res));
                }
                else
                {
                    return(Get(entity, 0, 100, null, null));
                }
            }
            catch (Exception exc)
            {
                Log.Logger.Error(exc);
                return(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, exc));
            }
        }
コード例 #11
0
        private void IndexModule(LuceneController lc, ModuleInfo module)
        {
            OpenContentSettings settings = new OpenContentSettings(module.ModuleSettings);

            OpenContentUtils.CheckOpenContentSettings(module, settings);

            if (settings.IsListTemplate() && !settings.IsOtherModule)
            {
                IndexModuleData(lc, module.ModuleID, settings);
            }
        }
コード例 #12
0
        protected override void OnInit(EventArgs e)
        {
            base.OnInit(e);
            var globalSettingsController = App.Services.CreateGlobalSettingsRepository(ModuleContext.PortalId);

            hlCancel.NavigateUrl = Globals.NavigateURL();
            cmdSave.NavigateUrl  = Globals.NavigateURL();

            var  editLayout     = globalSettingsController.GetEditLayout();
            var  bootstrap      = globalSettingsController.GetEditLayout() != AlpacaLayoutEnum.DNN;
            bool loadBootstrap  = bootstrap && globalSettingsController.GetLoadBootstrap();
            bool loadGlyphicons = bootstrap && App.Services.CreateGlobalSettingsRepository(ModuleContext.PortalId).GetLoadGlyphicons();

            OpenContentSettings settings = this.OpenContentSettings();
            AlpacaEngine        alpaca   = new AlpacaEngine(Page, ModuleContext.PortalId, "" /*settings.Template.Uri().FolderPath*/, "builder");

            alpaca.RegisterAll(bootstrap, loadBootstrap, loadGlyphicons);

            //string ItemId = Request.QueryString["id"];
            //AlpacaContext = new AlpacaContext(PortalId, ModuleId, ItemId, ScopeWrapper.ClientID, null, cmdSave.ClientID, null, null);
            ClientResourceManager.RegisterScript(Page, "~/DesktopModules/OpenContent/js/builder/formbuilder.js", FileOrder.Js.DefaultPriority + 10);
            ClientResourceManager.RegisterStyleSheet(Page, "~/DesktopModules/OpenContent/js/builder/formbuilder.css", FileOrder.Css.DefaultPriority);
            //ClientResourceManager.RegisterScript(Page, "~/DesktopModules/OpenContent/js/bootstrap/js/bootstrap.min.js", FileOrder.Js.DefaultPriority);
            //ClientResourceManager.RegisterStyleSheet(Page, "~/DesktopModules/OpenContent/js/bootstrap/css/bootstrap.min.css", FileOrder.Css.DefaultPriority);

            if (OpenContentUtils.BuilderExist(settings.Template.ManifestFolderUri))
            {
                string title = string.IsNullOrEmpty(settings.Template.Manifest.Title) ? "Data" : settings.Template.Manifest.Title + " ";
                ddlForms.Items.Add(new ListItem(title, ""));
            }
            if (OpenContentUtils.BuilderExist(settings.Template.ManifestFolderUri, settings.Template.Key.ShortKey))
            {
                ddlForms.Items.Add(new ListItem("Settings", settings.Template.Key.ShortKey));
            }
            if (settings.Template.Manifest.AdditionalDataDefined())
            {
                foreach (var addData in settings.Template.Manifest.AdditionalDataDefinition)
                {
                    if (OpenContentUtils.BuilderExist(settings.Template.ManifestFolderUri, addData.Key))
                    {
                        string title = string.IsNullOrEmpty(addData.Value.Title) ? addData.Key : addData.Value.Title;
                        ddlForms.Items.Add(new ListItem(title, addData.Key));
                    }
                }
            }
            if (OpenContentUtils.BuilderExist(settings.Template.ManifestFolderUri, "form"))
            {
                ddlForms.Items.Add(new ListItem("Form", "form"));
            }

            AlpacaContext            = new AlpacaContext(PortalId, ModuleId, null, ScopeWrapper.ClientID, hlCancel.ClientID, cmdSave.ClientID, null, null, null);
            AlpacaContext.Bootstrap  = bootstrap;
            AlpacaContext.Horizontal = globalSettingsController.GetEditLayout() == AlpacaLayoutEnum.BootstrapHorizontal;
        }
コード例 #13
0
        private void cmdImport_Click(object sender, EventArgs e)
        {
            OpenContentSettings settings = this.OpenContentSettings();

            switch (sourceList.SelectedValue)
            {
            case DATATYPE_DATA:
            {
                txtSource.Text = File.ReadAllText(settings.TemplateDir.PhysicalFullDirectory + "\\data.json");
            }
            break;
            }
        }
コード例 #14
0
        protected override void OnInit(EventArgs e)
        {
            base.OnInit(e);
            Key = Request.QueryString["key"];
            hlCancel.NavigateUrl = Globals.NavigateURL();
            cmdSave.NavigateUrl  = Globals.NavigateURL();
            OpenContentSettings settings = this.OpenContentSettings();
            AlpacaEngine        alpaca   = new AlpacaEngine(Page, ModuleContext.PortalId, settings.Template.ManifestFolderUri.FolderPath, Key);

            alpaca.RegisterAll(false, false);
            string itemId = null;//Request.QueryString["id"] == null ? -1 : int.Parse(Request.QueryString["id"]);

            AlpacaContext = new AlpacaContext(PortalId, ModuleId, itemId, ScopeWrapper.ClientID, hlCancel.ClientID, cmdSave.ClientID, null, null, null);
        }
コード例 #15
0
        public void GetSingleData(RenderInfo info, OpenContentSettings settings)
        {
            info.ResetData();

            IDataSource ds        = DataSourceManager.GetDataSource(Settings.Manifest.DataSource);
            var         dsContext = OpenContentUtils.CreateDataContext(_module, -1, true);

            var dsItem = ds.Get(dsContext, null);

            if (dsItem != null)
            {
                info.SetData(dsItem, dsItem.Data, settings.Data);
            }
        }
コード例 #16
0
        protected override void OnInit(EventArgs e)
        {
            base.OnInit(e);
            hlCancel.NavigateUrl = Globals.NavigateURL();
            cmdSave.NavigateUrl  = Globals.NavigateURL();
            OpenContentSettings settings = this.OpenContentSettings();
            AlpacaEngine        alpaca   = new AlpacaEngine(Page, ModuleContext.PortalId, "~/DeskTopModules/OpenContent", "formsettings");

            //AlpacaEngine alpaca = new AlpacaEngine(Page, ModuleContext, "", "");
            alpaca.RegisterAll();
            string itemId = null;

            AlpacaContext = new AlpacaContext(PortalId, ModuleId, itemId, ScopeWrapper.ClientID, hlCancel.ClientID, cmdSave.ClientID, null, null, null);
        }
コード例 #17
0
        protected ModelFactoryBase(OpenContentModuleConfig module, string collection)
        {
            OpenContentSettings settings = module.Settings;

            this._settingsJson     = settings.Data;
            this._manifest         = settings.Template.Manifest;
            this._templateFiles    = settings.Template?.Main;
            this._module           = module;
            this._portalId         = module.PortalId;
            this._templateManifest = settings.Template;
            this._collection       = collection;
            this._detailTabId      = DnnUtils.GetTabByCurrentCulture(this._portalId, module.GetDetailTabId(), GetCurrentCultureCode());
            _ds        = DataSourceManager.GetDataSource(_manifest.DataSource);
            _dsContext = OpenContentUtils.CreateDataContext(_module);
        }
コード例 #18
0
 public void ReIndexModuleData(int moduleId, OpenContentSettings settings)
 {
     try
     {
         using (LuceneController lc = LuceneController.Instance)
         {
             IndexModuleData(lc, moduleId, settings);
             lc.Store.Commit();
             lc.Store.OptimizeSearchIndex(true);
         }
     }
     finally
     {
         LuceneController.ClearInstance();
     }
 }
コード例 #19
0
        public ModelFactoryBase(OpenContentModuleInfo module, PortalSettings portalSettings, string collection)
        {
            OpenContentSettings settings = module.Settings;

            this._settingsJson           = settings.Data;
            this._physicalTemplateFolder = settings.Template.ManifestFolderUri.PhysicalFullDirectory + "\\";
            this._manifest         = settings.Template.Manifest;
            this._templateFiles    = settings.Template?.Main;
            this._module           = module;
            this._portalSettings   = portalSettings;
            this._portalId         = portalSettings.PortalId;
            this._templateManifest = settings.Template;
            this._collection       = collection;
            this._detailTabId      = DnnUtils.GetTabByCurrentCulture(this._portalId, module.GetDetailTabId(), GetCurrentCultureCode());
            _ds        = DataSourceManager.GetDataSource(_manifest.DataSource);
            _dsContext = OpenContentUtils.CreateDataContext(_module);
        }
コード例 #20
0
        private void SaveSettings(OpenContentSettings settings)
        {
            var set = new JObject();

            set["Name"]     = Path.GetFileName(settings.Template.Key.Folder);
            set["PortalId"] = PortalId;
            set["TabId"]    = TabId;
            set["ModuleId"] = ModuleId;
            set["Template"] = settings.Template.Key.ToString();
            if (!string.IsNullOrEmpty(settings.Data))
            {
                set["Settings"] = JObject.Parse(settings.Data);
            }
            set["Query"] = settings.Query;
            set["Files"] = Files;
            File.WriteAllText(ModuleExportDirectory + "export.json", set.ToString());
        }
コード例 #21
0
ファイル: View.ascx.cs プロジェクト: mvanlaar/OpenContent
        protected override void OnInit(EventArgs e)
        {
            base.OnInit(e);
            ModuleInfo module = ModuleContext.Configuration;
            // auto attach a ContentLocalized OpenContent module to the reference module of the default language
            string openContentAutoAttach = PortalController.GetPortalSetting("OpenContent_AutoAttach", ModuleContext.PortalId, "False");
            bool   autoAttach            = bool.Parse(openContentAutoAttach);

            if (autoAttach)
            {
                //var module = (new ModuleController()).GetModule(ModuleContext.moduleId, ModuleContext.tabId, false);
                var defaultModule = module.DefaultLanguageModule;
                if (defaultModule != null)
                {
                    if (ModuleContext.ModuleId != defaultModule.ModuleID)
                    {
                        var mc = (new ModuleController());
                        mc.DeLocalizeModule(module);

                        mc.ClearCache(defaultModule.TabID);
                        mc.ClearCache(module.TabID);
                        const string MODULE_SETTINGS_CACHE_KEY = "ModuleSettings{0}"; // to be compatible with dnn 7.2
                        DataCache.RemoveCache(string.Format(MODULE_SETTINGS_CACHE_KEY, defaultModule.TabID));
                        DataCache.RemoveCache(string.Format(MODULE_SETTINGS_CACHE_KEY, module.TabID));

                        //DataCache.ClearCache();
                        module = mc.GetModule(defaultModule.ModuleID, ModuleContext.TabId, true);
                        //_settings = module.OpenContentSettings();
                    }
                }
            }
            _engine     = new RenderEngine(module);
            _renderinfo = _engine.Info;
            _settings   = _engine.Settings;

            OpenContent.TemplateInit ti = (TemplateInit)TemplateInitControl;
            ti.ModuleContext = ModuleContext;
            ti.Settings      = _settings;
            ti.Renderinfo    = _renderinfo;

            /*
             * AlpacaEngine alpaca = new AlpacaEngine(Page, ModuleContext.PortalId, _settings.Template.ManifestFolderUri.FolderPath, "Submissions");
             * alpaca.RegisterAll(true, false);
             */
        }
コード例 #22
0
        protected override void OnInit(EventArgs e)
        {
            base.OnInit(e);
            hlCancel.NavigateUrl = Globals.NavigateURL();
            cmdSave.NavigateUrl  = Globals.NavigateURL();
            bool bootstrap               = App.Services.CreateGlobalSettingsRepository(ModuleContext.PortalId).GetEditLayout() != AlpacaLayoutEnum.DNN;
            bool loadBootstrap           = bootstrap && App.Services.CreateGlobalSettingsRepository(ModuleContext.PortalId).GetLoadBootstrap();
            bool loadGlyphicons          = bootstrap && App.Services.CreateGlobalSettingsRepository(ModuleContext.PortalId).GetLoadGlyphicons();
            OpenContentSettings settings = this.OpenContentSettings();
            AlpacaEngine        alpaca   = new AlpacaEngine(Page, ModuleContext.PortalId, "DeskTopModules/OpenContent", "formsettings");

            //AlpacaEngine alpaca = new AlpacaEngine(Page, ModuleContext, "", "");
            alpaca.RegisterAll(bootstrap, loadBootstrap, loadGlyphicons);
            string itemId = null;

            AlpacaContext           = new AlpacaContext(PortalId, ModuleId, itemId, ScopeWrapper.ClientID, hlCancel.ClientID, cmdSave.ClientID, null, null, null);
            AlpacaContext.Bootstrap = true;
        }
コード例 #23
0
        protected override void OnInit(EventArgs e)
        {
            base.OnInit(e);
            var  editLayout    = OpenContentControllerFactory.Instance.OpenContentGlobalSettingsController.GetEditLayout();
            var  bootstrap     = OpenContentControllerFactory.Instance.OpenContentGlobalSettingsController.GetEditLayout() != AlpacaLayoutEnum.DNN;
            bool loadBootstrap = bootstrap && OpenContentControllerFactory.Instance.OpenContentGlobalSettingsController.GetLoadBootstrap();

            hlCancel.NavigateUrl = Globals.NavigateURL();
            cmdSave.NavigateUrl  = Globals.NavigateURL();
            OpenContentSettings settings = this.OpenContentSettings();
            AlpacaEngine        alpaca   = new AlpacaEngine(Page, ModuleContext, settings.Template.ManifestFolderUri.FolderPath, "");

            alpaca.RegisterAll(bootstrap, loadBootstrap);
            string itemId = Request.QueryString["id"];

            AlpacaContext            = new AlpacaContext(PortalId, ModuleId, itemId, ScopeWrapper.ClientID, hlCancel.ClientID, cmdSave.ClientID, hlDelete.ClientID, ddlVersions.ClientID);
            AlpacaContext.Bootstrap  = bootstrap;
            AlpacaContext.Horizontal = OpenContentControllerFactory.Instance.OpenContentGlobalSettingsController.GetEditLayout() == AlpacaLayoutEnum.BootstrapHorizontal;
        }
コード例 #24
0
        public void GetSingleData(RenderInfo info, OpenContentSettings settings)
        {
            info.ResetData();
            var ds        = DataSourceManager.GetDataSource(settings.Manifest.DataSource);
            var dsContext = new DataSourceContext()
            {
                ModuleId       = info.ModuleId,
                ActiveModuleId = _module.ModuleID,
                TemplateFolder = settings.TemplateDir.FolderPath,
                Config         = settings.Manifest.DataSourceConfig,
                Single         = true
            };
            var dsItem = ds.Get(dsContext, null);

            if (dsItem != null)
            {
                info.SetData(dsItem, dsItem.Data, settings.Data);
            }
        }
コード例 #25
0
        protected override void OnInit(EventArgs e)
        {
            base.OnInit(e);
            var  globalSettingsController = OpenContentControllerFactory.Instance.OpenContentGlobalSettingsController(ModuleContext.PortalId);
            var  bootstrap     = globalSettingsController.GetEditLayout() != AlpacaLayoutEnum.DNN;
            bool loadBootstrap = bootstrap && globalSettingsController.GetLoadBootstrap();

            Key = Request.QueryString["key"];
            hlCancel.NavigateUrl = Globals.NavigateURL();
            cmdSave.NavigateUrl  = Globals.NavigateURL();
            OpenContentSettings settings = this.OpenContentSettings();
            AlpacaEngine        alpaca   = new AlpacaEngine(Page, ModuleContext.PortalId, settings.Template.ManifestFolderUri.FolderPath, Key);

            alpaca.RegisterAll(bootstrap, loadBootstrap);
            string itemId = null;//Request.QueryString["id"] == null ? -1 : int.Parse(Request.QueryString["id"]);

            AlpacaContext            = new AlpacaContext(PortalId, ModuleId, itemId, ScopeWrapper.ClientID, hlCancel.ClientID, cmdSave.ClientID, null, null, null);
            AlpacaContext.Bootstrap  = bootstrap;
            AlpacaContext.Horizontal = globalSettingsController.GetEditLayout() == AlpacaLayoutEnum.BootstrapHorizontal;
        }
コード例 #26
0
        protected override void OnInit(EventArgs e)
        {
            base.OnInit(e);
            var  editLayout    = OpenContentControllerFactory.Instance.OpenContentGlobalSettingsController.GetEditLayout();
            var  bootstrap     = OpenContentControllerFactory.Instance.OpenContentGlobalSettingsController.GetEditLayout() != AlpacaLayoutEnum.DNN;
            bool loadBootstrap = bootstrap && OpenContentControllerFactory.Instance.OpenContentGlobalSettingsController.GetLoadBootstrap();

            hlCancel.NavigateUrl = Globals.NavigateURL();
            cmdSave.NavigateUrl  = Globals.NavigateURL();
            OpenContentSettings settings = ModuleContext.Configuration.OpenContentSettings();
            AlpacaEngine        alpaca   = new AlpacaEngine(Page, ModuleContext.PortalId, settings.Template.ManifestFolderUri.FolderPath, "");

            alpaca.RegisterAll(bootstrap, loadBootstrap);
            string itemId = Request.QueryString["id"];

            AlpacaContext            = new AlpacaContext(ModuleContext.PortalId, ModuleContext.ModuleId, itemId, ScopeWrapper.ClientID, hlCancel.ClientID, cmdSave.ClientID, null, hlDelete.ClientID, ddlVersions.ClientID);
            AlpacaContext.Bootstrap  = bootstrap;
            AlpacaContext.Horizontal = OpenContentControllerFactory.Instance.OpenContentGlobalSettingsController.GetEditLayout() == AlpacaLayoutEnum.BootstrapHorizontal;

            ModuleInfo  module         = ModuleContext.Configuration;
            IDictionary moduleSettings = new Hashtable(module.ModuleSettings);

            moduleSettings["template"] = settings.TemplateKey.Folder + "/" + "formsubmissions";
            moduleSettings["data"]     = "";
            moduleSettings["query"]    = "";

            /*
             * var moduleClone = new ModuleInfo();
             * foreach (System.Collections.DictionaryEntry item in module.ModuleSettings)
             * {
             *  moduleClone.ModuleSettings.Add(item.Key, item.Value);
             * }
             * moduleClone.ModuleID = module.ModuleID;
             * moduleClone.TabID = module.TabID;
             * moduleClone.TabModuleID = module.TabModuleID;
             * moduleClone.PortalID = module.PortalID;
             * moduleClone.ModuleSettings["template"] = settings.TemplateKey.ToString();
             * module = moduleClone;
             */
            engine = new RenderEngine(module, moduleSettings);
        }
コード例 #27
0
        public bool GetDemoData(RenderInfo info, OpenContentSettings settings)
        {
            info.ResetData();
            //bool settingsNeeded = false;
            FileUri dataFilename = null;

            if (info.Template != null)
            {
                dataFilename = new FileUri(info.Template.ManifestFolderUri.UrlFolder, "data.json");;
            }
            if (dataFilename != null && dataFilename.FileExists)
            {
                string fileContent    = File.ReadAllText(dataFilename.PhysicalFilePath);
                string settingContent = "";
                if (!string.IsNullOrWhiteSpace(fileContent))
                {
                    if (settings.Template != null && info.Template.MainTemplateUri().FilePath == settings.Template.MainTemplateUri().FilePath)
                    {
                        settingContent = settings.Data;
                    }
                    if (string.IsNullOrEmpty(settingContent))
                    {
                        var settingsFilename = info.Template.MainTemplateUri().PhysicalFullDirectory + "\\" + info.Template.Key.ShortKey + "-data.json";
                        if (File.Exists(settingsFilename))
                        {
                            settingContent = File.ReadAllText(settingsFilename);
                        }
                        else
                        {
                            //string schemaFilename = info.Template.Uri().PhysicalFullDirectory + "\\" + info.Template.Key.ShortKey + "-schema.json";
                            //settingsNeeded = File.Exists(schemaFilename);
                        }
                    }
                }
                if (!string.IsNullOrWhiteSpace(fileContent))
                {
                    info.SetData(null, fileContent, settingContent);
                }
            }
            return(!info.ShowInitControl); //!string.IsNullOrWhiteSpace(info.DataJson) && (!string.IsNullOrWhiteSpace(info.SettingsJson) || !settingsNeeded);
        }
コード例 #28
0
        private void ddlVersions_SelectedIndexChanged(object sender, EventArgs e)
        {
            OpenContentSettings settings = this.OpenContentSettings();
            int ModId     = settings.IsOtherModule ? settings.ModuleId : ModuleId;
            var ds        = DataSourceManager.GetDataSource("OpenContent");
            var dsContext = new DataSourceContext()
            {
                ModuleId       = ModId,
                ActiveModuleId = ModuleContext.ModuleId,
                TemplateFolder = settings.TemplateDir.FolderPath,
                Single         = true
            };
            var dsItem = ds.Get(dsContext, null);

            if (dsItem != null)
            {
                var ticks = long.Parse(ddlVersions.SelectedValue);
                var ver   = ds.GetVersion(dsContext, dsItem, new DateTime(ticks));
                //var ver = data.Versions.Single(v => v.CreatedOnDate == d);
                txtSource.Text = ver.ToString();
            }
        }
コード例 #29
0
        protected override void OnInit(EventArgs e)
        {
            base.OnInit(e);
            hlCancel.NavigateUrl = Globals.NavigateURL();
            cmdSave.NavigateUrl  = Globals.NavigateURL();
            OpenContentSettings settings = this.OpenContentSettings();
            AlpacaEngine        alpaca   = new AlpacaEngine(Page, ModuleContext, "" /*settings.Template.Uri().FolderPath*/, "builder");

            alpaca.RegisterAll(false);
            //string ItemId = Request.QueryString["id"];
            //AlpacaContext = new AlpacaContext(PortalId, ModuleId, ItemId, ScopeWrapper.ClientID, null, cmdSave.ClientID, null, null);
            ClientResourceManager.RegisterScript(Page, "~/DesktopModules/OpenContent/js/builder/formbuilder.js", FileOrder.Js.DefaultPriority);
            ClientResourceManager.RegisterStyleSheet(Page, "~/DesktopModules/OpenContent/js/builder/formbuilder.css", FileOrder.Css.DefaultPriority);
            //ClientResourceManager.RegisterScript(Page, "~/DesktopModules/OpenContent/js/bootstrap/js/bootstrap.min.js", FileOrder.Js.DefaultPriority);
            //ClientResourceManager.RegisterStyleSheet(Page, "~/DesktopModules/OpenContent/js/bootstrap/css/bootstrap.min.css", FileOrder.Css.DefaultPriority);

            if (OpenContentUtils.BuilderExist(settings.Template.ManifestFolderUri))
            {
                string title = string.IsNullOrEmpty(settings.Template.Manifest.Title) ? "Data" : settings.Template.Manifest.Title + " ";
                ddlForms.Items.Add(new ListItem(title, ""));
            }
            if (OpenContentUtils.BuilderExist(settings.Template.ManifestFolderUri, settings.Template.Key.ShortKey))
            {
                ddlForms.Items.Add(new ListItem("Settings", settings.Template.Key.ShortKey));
            }
            if (settings.Template.Manifest.AdditionalDataExists())
            {
                foreach (var addData in settings.Template.Manifest.AdditionalData)
                {
                    if (OpenContentUtils.BuilderExist(settings.Template.ManifestFolderUri, addData.Key))
                    {
                        string title = string.IsNullOrEmpty(addData.Value.Title) ? addData.Key : addData.Value.Title;
                        ddlForms.Items.Add(new ListItem(title, addData.Key));
                    }
                }
            }
        }
コード例 #30
0
        protected override void OnInit(EventArgs e)
        {
            base.OnInit(e);
            var  globalSettingsController = OpenContentControllerFactory.Instance.OpenContentGlobalSettingsController(ModuleContext.PortalId);
            var  bootstrap     = globalSettingsController.GetEditLayout() != AlpacaLayoutEnum.DNN;
            bool loadBootstrap = bootstrap && globalSettingsController.GetLoadBootstrap();

            hlCancel.NavigateUrl = Globals.NavigateURL();
            cmdSave.NavigateUrl  = Globals.NavigateURL();
            cmdCopy.NavigateUrl  = Globals.NavigateURL();
            OpenContentSettings settings = this.OpenContentSettings();

            string prefix = (string.IsNullOrEmpty(settings.Template.Collection) || settings.Template.Collection == "Items") ? "" : settings.Template.Collection;

            AlpacaEngine alpaca = new AlpacaEngine(Page, ModuleContext.PortalId, settings.Template.ManifestFolderUri.FolderPath, prefix);

            alpaca.RegisterAll(bootstrap, loadBootstrap);
            string itemId = Request.QueryString["id"];

            AlpacaContext            = new AlpacaContext(PortalId, ModuleId, itemId, ScopeWrapper.ClientID, hlCancel.ClientID, cmdSave.ClientID, cmdCopy.ClientID, hlDelete.ClientID, ddlVersions.ClientID);
            AlpacaContext.Bootstrap  = bootstrap;
            AlpacaContext.Horizontal = globalSettingsController.GetEditLayout() == AlpacaLayoutEnum.BootstrapHorizontal;
            AlpacaContext.IsNew      = settings.Template.IsListTemplate && string.IsNullOrEmpty(itemId);
        }