Modification.xml

From Online Manual

Jump to: navigation, search

Before reading on, you should know some definitions used in this documentation:

  • element aka tag: an instruction used to tell the package manager what to do. ie <install></install>
  • attribute aka property: an additional value used to describe an element
  • inline: code or text that is written in this file instead of coming from an outside source
  • file: the name or location of a file to be used instead of "inline"
  • location aka path: the location on the computer of a directory and/or file
  • ignore: used to ignore an error
  • skip: skip this operation/file
  • fatal: stop the entire modification and return an error

There are also variables that may be used in place of a path. Italics denotes the commonly used path so you get an understanding of what the variable references.

  • $boarddir: The directory where index.php is found. Usually one level beneath the source files are contained.
  • $sourcedir: The directory where the source files are contained (ie Post.php, Admin.php, etc) /Sources
  • $avatardir: The directory where the avatars may be found /Avatars
  • $themedir: The directory of the default theme
  • $themes_dir: The directory containing the default, and other themes
  • $imagesdir: The images directory of the default theme
  • $languagedir: The location of the directories of language files
  • $smileysdir: The location of the smiley directory

modification.xml All elements, unless otherwise stated, are not optional and contain no attributes.

  • <modification></modification>
    • Contains the id of the package. Should be in the format of [username]:[package name]. For instance groundup:bestmod When submitting a mod to the mod site, the username should be your username from www.simplemachines.org
  • <version></version>
    • The package's current version.
  • <file></file>
    • The file to modify. Including all of the operations to take on this file.
    • Attributes:
      • name: the name of the file and path
      • error: what to do when this file cannot be modified; "ignore" "fatal" or "skip"; use "ignore" to create a new file; optional; default to "fatal"
    • Elements:
      • <operation></operation>
        • An operation to be perfomed on this file
        • Attributes:
          • error: what to do if this operation can not be performed; "ignore" "fatal" or "required"; use "required" if this operation must fail; defaults to "fatal"; optional
          • Elements:
            • <search></search> or <search /> (for use with position="end" only)
              • The code to search for
              • Attributes:
                • position: the position of where the search code should exist after changes: "before" (to put the code before your addition), "after" (to put the code after your addition), or "replace"; required
                • whitespace: Whether to ignore whitespace or not: "exact" (default) or "loose"; optional; default: exact
                • regexp: If the search is a regular expression or not. "true" or "false"; optional; default: false
            • <add></add>
              • The code to add