Example #1
0
        public void GetFieldsToEdit_ItemHasNoCustomFields_ReturnEmptyString(Db db, DbItem item)
        {
            db.Add(item);
            var testItem = db.GetItem(item.ID);

            GetFieldsToEditService.GetFieldsToEdit(testItem).Should().BeEmpty();
        }
Example #2
0
        public void GetFieldsToEdit_ItemHasNoCustomFields_ReturnEmptyString(Db db, DbItem item, BaseItemContentService itemContentService)
        {
            db.Add(item);
            var testItem = db.GetItem(item.ID);
            var service  = new GetFieldsToEditService(itemContentService);

            service.GetFieldsToEdit(testItem).Should().BeEmpty();
        }
 public override CommandState QueryState(CommandContext context)
 {
     if (!Context.PageMode.IsExperienceEditor)
     {
         return(CommandState.Hidden);
     }
     return(context.Items.Length >= 1 && !string.IsNullOrEmpty(GetFieldsToEditService.GetFieldsToEdit(context.Items[0])) ? CommandState.Enabled : CommandState.Hidden);
 }
Example #4
0
        public void GetFieldsToEdit_ItemHasFields_ReturnFields(Db db, DbItem item, DbField field1, DbField field2)
        {
            item.Add(field1);
            item.Add(field2);
            db.Add(item);
            var testItem       = db.GetItem(item.ID);
            var expectedResult = new [] { field1.Name + "|" + field2.Name, field2.Name + "|" + field1.Name };

            GetFieldsToEditService.GetFieldsToEdit(testItem).Should().BeOneOf(expectedResult);
        }
Example #5
0
        public void GetFieldEditorOptions_HasFields_DescriptorForEachField([Content] string[] fieldNames, NameValueCollection form, Db db, DbItem item)
        {
            //Arrange
            foreach (var field in fieldNames)
            {
                item.Add(new DbField(field));
            }
            db.Add(item);
            var testItem        = db.GetItem(item.ID);
            var pipedFieldNames = string.Join("|", fieldNames);
            //Act
            var result = GetFieldsToEditService.GetFieldEditorOptions(form, pipedFieldNames, testItem);

            result.Fields.Count.Should().Be(fieldNames.Length);
            //Assert
        }
        public override void Execute(CommandContext context)
        {
            Assert.ArgumentNotNull(context, nameof(context));
            if (context.Items.Length < 1)
            {
                return;
            }
            var args = new ClientPipelineArgs(context.Parameters);
            var item = context.Items[0];

            args.Parameters.Add(Parameter_Uri, item.Uri.ToString());

            var pipedFieldNames = GetFieldsToEditService.GetFieldsToEdit(item);

            args.Parameters[Parameter_Fields] = pipedFieldNames;
            Context.ClientPage.Start(this, "StartFieldEditor", args);
        }
        protected override PageEditFieldEditorOptions GetOptions(ClientPipelineArgs args, NameValueCollection form)
        {
            Assert.ArgumentNotNull(args, nameof(args));
            Assert.ArgumentNotNull(form, nameof(form));
            Assert.IsNotNullOrEmpty(args.Parameters[Parameter_Uri], $"Field Editor command expects '{Parameter_Uri}' parameter");
            Assert.IsNotNullOrEmpty(args.Parameters[Parameter_Fields], $"Field Editor command expects '{Parameter_Fields}' parameter");

            var uri = ItemUri.Parse(args.Parameters[Parameter_Uri]);

            Assert.IsNotNull(uri, Parameter_Uri + " parameter must be a valid Uri");

            var pipedFields = args.Parameters[Parameter_Fields];

            var item = Database.GetItem(uri);

            Assert.IsNotNull(item, "item");

            var options = GetFieldsToEditService.GetFieldEditorOptions(form, pipedFields, item);

            return(options);
        }