Extension:Page Forms/Code structure

The following are the directories and files in the Page Forms extension:


 * PageForms.php - Initializes the code, and defines global settings and functions.

/includes


 * PF_AutocompleteAPI.php - defines a class, PFAutocompleteAPI, that adds a new action, 'pfautocomplete', to the MediaWiki API, to enable remote setting of autocompletion values.
 * PF_AutoeditAPI.php - defines a class, PFAutoeditAPI, that adds the API action 'pfautoedit'.
 * PF_CreatePageJob.php - defines a 'job' class used by the 'CreateClass' page.
 * PF_Form.php - defines a class, PFForm, that holds information about a user-defined form.
 * PF_FormEditAction.php - defines a tab that shows up on data pages to let the user edit them with a form, if a default form for this page's category or namespace has been specified.
 * PF_FormField.php - defines a class, PFFormField, used in displaying user-created forms.
 * PF_FormLinker.php - utility functions for linking to pages and forms.
 * PF_FormPrinter.php - defines a class, PFFormPrinter, that handles the display and running of a user-created form.
 * PF_FormUtils.php - utility functions for displaying a form.
 * PF_PageSchemas.php - defines functions to be used by the Page Schemas extension to define and generate forms.
 * PF_ParserFunctions.php - defines PF's parser functions.
 * PF_Template.php - defines a class, PFTemplate, used in generating templates.
 * PF_TemplateField.php - defines a class, PFTemplateField, used in displaying user-created forms.
 * PF_TemplateInForm.php - defines a class, PFTemplateInForm, that holds information about the section of a form devoted to one template.
 * PF_Utils.php - general utility functions.

/includes/forminputs

...one file for each form input type...
 * PF_FormInputs.php - base class for each form input class

/languages


 * PF_Aliases.php - aliases for special-page names for all languages
 * PF_Language.php - parent class for all language files
 * ...various other language files...
 * PF_Messages.php - display messages for all languages

/libs


 * jquery.fancybox-1.3.1.js - the Fancybox Javascript library
 * PageForms.js - Javascript utility helper functions
 * PF_autoedit.js - functionality for the #autoedit parser function
 * PF_autogrow.js - "autogrow" functionality for form textareas
 * PF_collapsible.js - "collapsing" functions, for use in special pages
 * PF_imagePreview.js - functionality for "image preview" parameter for uploadable fields
 * PF_popupform.js - functionality for popup forms
 * PF_preview.js - functionality for preview button in forms
 * PF_submit.js - functionality for the "save and continue" button
 * PF_wikieditor.js - adds the WikiEditor

/skins

...various other image and CSS files...
 * PageForms.css - main CSS file for Page Forms
 * jquery.fancybox.css - CSS file for the Fancybox library

/specials


 * PF_CreateCategory.php - defines the 'CreateCategory' special page
 * PF_CreateClass.php - defines the 'CreateClass' special page
 * PF_CreateForm.php - defines the 'CreateForm' special page
 * PF_CreateTemplate.php - defines the 'CreateTemplate' special page
 * PF_CreateProperty.php - defines the 'CreateProperty' special page
 * PF_Forms.php - defines the 'Forms' special page
 * PF_FormEdit.php - defines the 'FormEdit' special page
 * PF_FormStart.php - defines the 'FormStart' special page
 * PF_Templates.php - defines the 'Templates' special page
 * PF_UploadWindow.php - defines the 'UploadWindow' special page