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.


  • 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.


  • PF_FormInputs.php - base class for each form input class

...one file for each form input type...


  • 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


  • 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


  • PageForms.css - main CSS file for Page Forms
  • jquery.fancybox.css - CSS file for the Fancybox library

...various other image and CSS files...


  • 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