Example #1
0
        /// <summary>
        /// Save template
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        public ResponseModel SaveTemplateManageModel(WidgetTemplateManageModel model)
        {
            ResponseModel response;
            var           template = GetById(model.Id);

            if (template != null)
            {
                var log = new WidgetTemplateLogManageModel(template);
                template.Name        = model.Name;
                template.Widgets     = SerializeUtilities.Serialize(model.Shortcuts);
                template.Content     = model.Content;
                template.Style       = model.Style;
                template.Script      = model.Script;
                template.FullContent = GetFullTemplate(model);

                response = Update(template);
                if (response.Success)
                {
                    _templateLogService.SaveTemplateLog(log);
                }
                return(response.SetMessage(response.Success
                    ? T("WidgetTemplate_Message_UpdateSuccessfully")
                    : T("WidgetTemplate_Message_UpdateFailure")));
            }
            Mapper.CreateMap <WidgetTemplateManageModel, WidgetTemplate>();
            template             = Mapper.Map <WidgetTemplateManageModel, WidgetTemplate>(model);
            template.FullContent = GetFullTemplate(model);
            response             = CreateTemplate(template);
            return(response.SetMessage(response.Success
                ? T("WidgetTemplate_Message_CreateSuccessfully")
                : T("WidgetTemplate_Message_CreateFailure")));
        }
Example #2
0
        public JsonResult LoadFullContent(WidgetTemplateManageModel widgetTemplate)
        {
            var content = _widgetTemplateService.GetFullTemplate(widgetTemplate);

            return(Json(new ResponseModel
            {
                Success = true,
                Data = content
            }));
        }
Example #3
0
        public ActionResult Edit(int?id, int?logId)
        {
            WidgetTemplateManageModel model = null;

            if (id.HasValue)
            {
                model = _widgetTemplateService.GetTemplateManageModel(id.Value);
            }
            else if (logId.HasValue)
            {
                model = _widgetTemplateService.GetTemplateManageModelByLogId(logId.Value);
            }
            if (model == null || model.Id == null)
            {
                SetErrorMessage(T("WidgetTemplate_Message_ObjectNotFound"));
                return(RedirectToAction("Index"));
            }
            return(View(model));
        }
Example #4
0
        public ActionResult Edit(WidgetTemplateManageModel model, SubmitType submit)
        {
            if (ModelState.IsValid)
            {
                var response = _widgetTemplateService.SaveTemplateManageModel(model);
                SetResponseMessage(response);
                if (response.Success)
                {
                    switch (submit)
                    {
                    case SubmitType.Save:
                        return(RedirectToAction("Index"));

                    default:
                        return(RedirectToAction("Edit", new { id = model.Id }));
                    }
                }
            }
            return(View(model));
        }
Example #5
0
        /// <summary>
        /// Get template manage model from name
        /// </summary>
        /// <param name="widget"></param>
        /// <param name="templateId"></param>
        /// <returns></returns>
        public WidgetTemplateManageModel GetTemplateManageModel(string widget, int?templateId)
        {
            var template = GetById(templateId);

            if (template != null)
            {
                return(new WidgetTemplateManageModel(template)
                {
                    Id = 0,
                    IsDefaultTemplate = false,
                    Name = string.Empty
                });
            }

            var setup =
                WorkContext.Widgets.FirstOrDefault(
                    c => c.Widget.Equals(widget, StringComparison.CurrentCultureIgnoreCase));

            if (setup != null)
            {
                var model = new WidgetTemplateManageModel
                {
                    DataType          = setup.Type.AssemblyQualifiedName,
                    Widget            = widget,
                    IsDefaultTemplate = false
                };

                try
                {
                    if (!string.IsNullOrEmpty(setup.DefaultTemplate))
                    {
                        model.Content   = DataInitializeHelper.GetTemplateContent(setup);
                        model.Script    = DataInitializeHelper.GetTemplateScript(setup);
                        model.Style     = DataInitializeHelper.GetTemplateStyle(setup);
                        model.Shortcuts =
                            SerializeUtilities.Deserialize <List <Shortcut> >(
                                DataInitializeHelper.GetTemplateWidgets(setup));
                        model.FullContent = DataInitializeHelper.GetTemplateFullContent(setup);
                    }
                }
                catch
                {
                    //The default template may not existed in current dll
                    // Or maybe it come from plugins
                    // So we will get the default template
                    var defaultTemplate = GetTemplate(setup.DefaultTemplate);
                    if (defaultTemplate != null)
                    {
                        model = new WidgetTemplateManageModel(defaultTemplate)
                        {
                            Id = 0,
                            IsDefaultTemplate = false,
                            Name = string.Empty
                        };
                    }
                }

                return(model);
            }

            return(null);
        }
Example #6
0
 /// <summary>
 /// Get full template
 /// </summary>
 /// <param name="model"></param>
 /// <returns></returns>
 public string GetFullTemplate(WidgetTemplateManageModel model)
 {
     return(WidgetHelper.GetFullTemplate(model.Content, model.Style, model.Script, model.DataType,
                                         model.Shortcuts));
 }