Skip to content

Instantly share code, notes, and snippets.

@mrbanzai
Last active December 10, 2015 22:59
Show Gist options
  • Save mrbanzai/4506476 to your computer and use it in GitHub Desktop.
Save mrbanzai/4506476 to your computer and use it in GitHub Desktop.
Comporium Training Agenda
  1. Introduction to the environment
    1. PHP 5.3 / 5.4
      1. Required modules
      2. Configuration settings (php.ini)
      3. Composer
      4. Behat / Mink / Sahi
    2. Makefile
      1. Local server
      2. Testing (work-in-progress)
      3. Deployment
    3. Capistrano
    4. CodeIgniter
      1. Configuration settings
        1. Database configuration
          1. Environment variable
        2. REST config
          1. Authentication of services requests
      2. General structure
        1. Modules
        2. Controllers
        3. Libraries
        4. Models
        5. Helpers
    5. PHP-POS
      1. Conventions within CodeIgniter
        1. Models
        2. Controllers (Secure_area)
    6. Javascript
      1. Ender.js
        1. Included modules / purpose
        2. Build process walkthrough
      2. RequireJS
      3. Jasmine / Sinon tests
    7. Stylesheets
      1. Stylus
        1. Format
        2. Watcher (rebuild)
  2. CashierStation
    1. Database
      1. Configuration per-environment
      2. Database selection
      3. phppos_items
      4. Comporium extensions
        1. Post-processing
        2. Modifications of pre-existing tables
          1. Adapting data between various subsystems
    2. Sales Register
      1. General separation of responsibilities
        1. Backend services
          1. PHP-POS cart layout
          2. Exposed services
        2. Frontend state
          1. Cart object
      2. Loading initial cart
        1. Reloading the page
      3. Service integration points
        1. Account lookup (quick search)
        2. Item lookup
          1. Local lookup
          2. Item master
        3. Tax calculation
        4. Cart operations
          1. Add / edit / remove items
            1. Integration with tax / inventory
          2. Account relation
          3. Suspend / resume
          4. Cart load
        5. Account search
        6. Account details
          1. Uncollectible
        7. Credit card processing
          1. Verification
          2. "Pre-auth"
      4. Finalizing
        1. Invoice creation
        2. Credit card
        3. Post-processing
    3. Services
      1. Libraries
        1. SoapClient / wsdl2php
          1. Environmental WSDL differences
        2. Service wrappers
        3. ComporiumAPI
      2. Controllers
    4. API
      1. REST Controller
        1. Routing
        2. Verbs
      2. API Controller
        1. Cart fetch
        2. Cart creation
    5. Post-processing
      1. Database connection
      2. Controller
      3. Models
        1. Transaction
        2. Item
        3. Tender
      4. Execution from CLI
  3. General topics
    1. IE9 errata
    2. Logging
    3. Questions, etc.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment