/// <summary>
        /// Called by Umbraco when saving the node
        /// </summary>
        public void Save()
        {
            Property property = new Property(((umbraco.cms.businesslogic.datatype.DefaultData) this.data).PropertyId);

            if (property.PropertyType.Mandatory && this.dropDownList.SelectedValue == "-1")
            {
                // Property is mandatory, but no value selected in the DropDownList
                this.customValidator.IsValid = false;

                DocumentType     documentType = new DocumentType(property.PropertyType.ContentTypeId);
                ContentType.TabI tab          = documentType.getVirtualTabs.Where(x => x.Id == property.PropertyType.TabId).FirstOrDefault();

                if (tab != null)
                {
                    this.customValidator.ErrorMessage = ui.Text("errorHandling", "errorMandatory", new string[] { property.PropertyType.Alias, tab.Caption }, User.GetCurrent());
                }
            }

            this.data.Value = this.dropDownList.SelectedValue;
        }
Ejemplo n.º 2
0
    // -------------------------------------------------------------------------

    protected void Install(object sender, EventArgs e)
    {
        pnlInstaller.Visible = false;

        // Get MultipleFileUpload DataType
        DataTypeDefinition ddMultipleFileUpload = null;

        foreach (DataTypeDefinition dt in DataTypeDefinition.GetAll())
        {
            if (dt.DataType != null && dt.DataType.Id.Equals(DATATYPE_UID))
            {
                ddMultipleFileUpload = dt;
            }
        }

        if (ddMultipleFileUpload != null)
        {
            // Add tab to Folder Media type
            MediaType        mediaType = MediaType.GetByAlias("Folder");
            ContentType.TabI uploadTab = null;
            foreach (ContentType.TabI tab in mediaType.getVirtualTabs)
            {
                if (tab.Caption.Equals("Upload"))
                {
                    uploadTab = tab;
                }
            }

            if (uploadTab == null)
            {
                int tabId = mediaType.AddVirtualTab("Upload");
                mediaType.AddPropertyType(ddMultipleFileUpload, "MultipleFileUpload", "Upload multiple files");
                mediaType.SetTabOnPropertyType(mediaType.getPropertyType("MultipleFileUpload"), tabId);
                mediaType.Save();
            }
        }

        pnlUninstall.Visible = true;
    }