Coding Standards

From FusionPBX
Revision as of 16:02, 10 October 2012 by Mcrane (talk | contribs) (Created page with "==Coding standards== * '''General''' ** function and method names *** lower case *** words separated with an underscore '''Applications''' * apps are stored in fusionpbx/app...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Coding standards

  • General
    • function and method names
      • lower case
      • words separated with an underscore

Applications

  • apps are stored in fusionpbx/app directory
  • root.php
    • ensures the document_root server variable is set and then sets the include path from the root of the website
  • app_config.php
    • application
      • app_name
      • app_uuid
      • app_category
      • app_subcategory
      • app_description
    • menu
      • defines location in the menu
    • permissions
      • defines the permissions the application uses
      • and the default groups assigned to those permissions
    • data schema
      • define the structure of the field names, and types
  • app_defaults.php
    • is run during the install and when upgrade schema is called
  • app_languages.php
    • defines a php array of the words, phrases and sentences used in the project
  • Files
    • names
      • written in lower case
      • words are seperated by an underscore
      • use full words when possible
      • do not prefix with 'v_' files that are currently prefix in this way will be renamed to remove the 'v_'
    • program showing invisible spaces
      • to eliminate tabs and spaces at the end of a line
    • line feed only
      • no carriage return and line feed

Database

  • tables
    • prefixed with v_ this may be configurable in the future
    • tables names are plural unless the name used is an Acronymn
    • use full words not abbreviations
    • uuids used for relational id instead of auto increment identifiers
  • fields
    • domain_uuid
    • primary key name is defined by for the table use the name of the table without
      • How to create the primary key name
        • If the table name is v_users take remove the 'v_', make it non-plural and add '_uuid' to the end of the field name. In this example the primary key would be user_uuid