public ActionResult Create(string id, CreateElementBlueprintViewModel model)
        {
            if (!Services.Authorizer.Authorize(Permissions.ManageLayouts, T("Not authorized to manage layouts.")))
            {
                return(new HttpUnauthorizedResult());
            }

            var describeContext = DescribeElementsContext.Empty;
            var descriptor      = _elementManager.GetElementDescriptorByTypeName(describeContext, id);
            var baseElement     = _elementManager.ActivateElement(descriptor);

            model.BaseElement = baseElement;

            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            var blueprint = _elementBlueprintService.CreateBlueprint(
                baseElement,
                model.ElementTypeName.TrimSafe(),
                model.ElementDisplayName.TrimSafe(),
                model.ElementDescription.TrimSafe(),
                model.ElementCategory.TrimSafe());

            return(RedirectToAction("Edit", new { id = blueprint.Id }));
        }
        public ActionResult Create(string id)
        {
            if (String.IsNullOrWhiteSpace(id))
            {
                return(RedirectToAction("Browse"));
            }

            var describeContext = DescribeElementsContext.Empty;
            var descriptor      = _elementManager.GetElementDescriptorByTypeName(describeContext, id);
            var baseElement     = _elementManager.ActivateElement(descriptor);
            var viewModel       = new CreateElementBlueprintViewModel {
                BaseElement = baseElement
            };

            return(View(viewModel));
        }
        public ActionResult Create(string id)
        {
            if (!Services.Authorizer.Authorize(Permissions.ManageLayouts, T("Not authorized to manage layouts.")))
            {
                return(new HttpUnauthorizedResult());
            }

            if (String.IsNullOrWhiteSpace(id))
            {
                return(RedirectToAction("Browse"));
            }

            var describeContext = DescribeElementsContext.Empty;
            var descriptor      = _elementManager.GetElementDescriptorByTypeName(describeContext, id);
            var baseElement     = _elementManager.ActivateElement(descriptor);
            var viewModel       = new CreateElementBlueprintViewModel {
                BaseElement = baseElement
            };

            return(View(viewModel));
        }
        public ActionResult Create(string id, CreateElementBlueprintViewModel model)
        {
            var describeContext = DescribeElementsContext.Empty;
            var descriptor      = _elementManager.GetElementDescriptorByTypeName(describeContext, id);
            var baseElement     = _elementManager.ActivateElement(descriptor);

            model.BaseElement = baseElement;

            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            var blueprint = _elementBlueprintService.CreateBlueprint(
                baseElement,
                model.ElementTypeName.TrimSafe(),
                model.ElementDisplayName.TrimSafe(),
                model.ElementDescription.TrimSafe(),
                model.ElementCategory.TrimSafe());

            return(RedirectToAction("Edit", new { id = blueprint.Id }));
        }