Portfolio Module
From Fishcakes Wiki
This page contains info about the Exponent Portfolio Module developed by Fishcakes.
For information about using this module, see the Portfolio Module User Guide.
Contents |
About Portfolio Module
A module for creating a Portfolio of projects with a logo, text, links and multiple images for each project. The module includes a variety of custom Smarty generated views which allow you to display projects by Year or by Company. These can be easily modified to create a custom view tailored to individual requirements.
- Developed by Dan Salmon, June 2007.
File Structure
Module Folder
-
modules/portfoliomodule— contains files as indicated below.
Definitions
-
datatypes/definitions/portfolio_project.php— creates database table of 29 fields defining Projects. Enables upload of a logo for each project. -
datatypes/definitions/portfolio_image.php— creates database table of 8 fields defining project Images with... Enables upload of multiple images for each project.
Datatypes
-
datatypes/portfolio_project.php— field input definitions for module configuration. -
datatypes/portfolio_image.php— field input definitions for Maps.
Class
-
modules/portfoliomodule/class.php— class definition. -
modules/portfoliomodule/manifest.php— list of files.
Actions
-
modules/portfoliomodule/actions/delete_image.php— delete images. -
modules/portfoliomodule/actions/delete_project.php— delete projects. -
modules/portfoliomodule/actions/edit_image.php— edit images. -
modules/portfoliomodule/actions/edit_project.php— edit projects. -
modules/portfoliomodule/actions/order_images.php— order images (REMOVE) -
modules/portfoliomodule/actions/save_image.php— save images. -
modules/portfoliomodule/actions/save_multiple.php— save multiple images -
modules/portfoliomodule/actions/save_project.php— save project. -
modules/portfoliomodule/actions/sort_images.php— sort images. -
modules/portfoliomodule/actions/upload_multiple.php— upload multiple images. -
modules/portfoliomodule/actions/view_image.php— view individual image. -
modules/portfoliomodule/actions/view_project.php— view individual project.
Views
Primary Views
These have class defintions and associated subsystem files.
-
modules/portfoliomodule/views/Default.tpl— default view displays all projects. -
modules/portfoliomodule/views/Default by Date.tpl— view sorted by Date. -
modules/portfoliomodule/views/Default Recent.tpl— view only 10 most recent projects (change by editing XX field in XXX file). -
modules/portfoliomodule/views/_form_editimage.tpl— edit image template. -
modules/portfoliomodule/views/_form_editproject.tpl— edit project template. -
modules/portfoliomodule/views/_form_multiple.tpl— edit multiples template -
modules/portfoliomodule/views/_view_image.tpl— view image template. -
modules/portfoliomodule/views/_view_project.tpl— view project template. -
modules/portfoliomodule/views/_view_simple_project_valign.tpl— simple view template. -
modules/portfoliomodule/views/_view_simple_project.tpl— simple view template.
Sidebar List Views
Views designed for use in left or right column to display list. Have class defintions and associated subsystem files.
-
modules/portfoliomodule/views/Sidebar List.tpl— view list. -
modules/portfoliomodule/views/Sidebar List by Date.tpl— view sorted by Date. -
modules/portfoliomodule/views/Sidebar List Recent.tpl— view 10 most recent.
Sidebar Logo Views
Views designed for use in left or right column to display list with small logo. Have class defintions and associated subsystem files.
-
modules/portfoliomodule/views/Sidebar Logos.tpl— view list with small Logos. -
modules/portfoliomodule/views/Sidebar Logos by Date.tpl— view sorted by Date. -
modules/portfoliomodule/views/Sidebar Logos Recent.tpl— view 10 most recent.
Simple View
Allows display of single project with images on main module page.
-
modules/portfoliomodule/views/Simple.tpl— tbd. -
modules/portfoliomodule/views/SimpleV.tpl— tbd.
Company Views
These display data delimited by the 'Company' field and use Smarty for functionality and language support.
-
modules/portfoliomodule/views/Company Fishcakes.tpl— display Projects for specific company. -
modules/portfoliomodule/views/Company JLE.tpl— ditto. -
modules/portfoliomodule/views/Company LCT.tpl— ditto. -
modules/portfoliomodule/views/Company MMC.tpl— ditto. -
modules/portfoliomodule/views/Company PMTE.tpl— ditto. -
modules/portfoliomodule/views/Company Spunkflakes.tpl— ditto. -
modules/portfoliomodule/views/Company YSP.tpl— ditto.
Title Views
These display data delimited by the 'Title' field and use Smarty for functionality and language support.
-
modules/portfoliomodule/views/Title ABC.tpl— display projects whose titles start with a specific range of letters (A-C, M-O, etc)
Year Views
These display data delimited by the 'Year' field and use Smarty for functionality and language support.
-
modules/portfoliomodule/views/Year 1993 & Past.tpl— display Projects for year or range of years. -
modules/portfoliomodule/views/Year 1995 & 1994.tpl— ditto. -
modules/portfoliomodule/views/Year 1997 & 1996.tpl— ditto. -
modules/portfoliomodule/views/Year 1999 & 1998.tpl— ditto. -
modules/portfoliomodule/views/Year 2001 & 2000.tpl— ditto. -
modules/portfoliomodule/views/Year 2003 & 2002.tpl— ditto. -
modules/portfoliomodule/views/Year 2005 & 2004.tpl— ditto. -
modules/portfoliomodule/views/Year 2007 & 2006.tpl— ditto. -
modules/portfoliomodule/views/Year 2009 & 2008.tpl— ditto.
Subsystem Files Datatypes
-
subsystems/lang/eng_US/datatypes/portfoliomodule_config.php— text (English US) used by datatypes template.
Subsystem Files Module Views
-
subsystems/lang/eng_US/modules/portfoliomodule/views/Default.php— text (English US) used by views template. -
subsystems/lang/eng_US/modules/portfoliomodule/views/Default by Date.php— ditto. -
subsystems/lang/eng_US/modules/portfoliomodule/views/Default Recent.php— ditto. -
subsystems/lang/eng_US/modules/portfoliomodule/views/_view_simple_project.php— ditto. -
subsystems/lang/eng_US/modules/portfoliomodule/views/Sidebar List by Date.php— ditto. -
subsystems/lang/eng_US/modules/portfoliomodule/views/Sidebar List Recent.php— ditto. -
subsystems/lang/eng_US/modules/portfoliomodule/views/Sidebar List.php— ditto. -
subsystems/lang/eng_US/modules/portfoliomodule/views/Sidebar Logos by Date.php— ditto. -
subsystems/lang/eng_US/modules/portfoliomodule/views/Sidebar Logos Recent.php— ditto. -
subsystems/lang/eng_US/modules/portfoliomodule/views/Sidebar Logos.php— ditto. -
subsystems/lang/eng_US/modules/portfoliomodule/views/Title ABC.php— ditto. -
subsystems/lang/eng_US/modules/portfoliomodule/views/_form_editimage.php— ditto. -
subsystems/lang/eng_US/modules/portfoliomodule/views/_form_editproject.php— ditto. -
subsystems/lang/eng_US/modules/portfoliomodule/views/_form_multiple.php— ditto. -
subsystems/lang/eng_US/modules/portfoliomodule/views/_view_project.php— ditto. -
subsystems/lang/eng_US/modules/portfoliomodule/views/_view_simple_project_valign.php— ditto.
Database Fields
Project Fields
- id — (id) —
- location_data — (string 200) —
- name — (string 150) —
- prefix — (string 50) —
- company — (string 200) —
- commisioner — (string 200) —
- type — (string 200) —
- liveurl — (string 200) —
- liveurltitle — (string 200) —
- liveurltarget — (string 200) —
- liveurlwidth — (integer) —
- liveurlheight — (integer) —
- archurl — (string 200) —
- archurltitle — (string 200) —
- archurltarget — (string 200) —
- archurlwidth — (integer) —
- archurlheight — (integer) —
- summary — (string 10000) —
- details — (string 10000) —
- technology — (string 10000) —
- credits — (string 10000) —
- file_name — (string 22) —
- completed — (integer) —
- box_size — (integer) —
- perrow — (integer) —
- perpage — (integer) —
- file_id_logo — (id) —
Images Fields
- id — (id) —
- name — (string 50) —
- description — (string 10000) —
- file_id — (id) —
- project_id — (timestamp) —
- posted — (integer) —
- rank — (boolean) —
Subsystems
Dropdown lists used by datatype files for Module configuration and Map configuration.
tbd
Used to select TBD, called by files:
- Subsystem —
subsystems/lang/eng_US/datatypes/tbd - Datatype List —
datatypes/tbd
Values:
- tbd = tbd
Revisions
Not implemented. No plans to add this.
Search
TBD.
Workflow
Not implemented. No plans to add this.
Code Corrections
Necessary code changes required to fix bugs.
Code Modifications
Optional code changes which extend functionality.
tbd
tbd
Portfolio Module Resources
- tbd
Exponent CMS Resources
Official Exponent Resources
- exponentcms.org — official website.
- exponentcms.org Download — get Exponent.
- sourceforge.net Exponent — get Exponent from SourceForge.
- exponentcms.org Download Themes — change the look.
- exponentcms.org Download Modules — extend Exponent.
- exponentcms.org Forums — for advice.
- exponentcms.org FAQ — How Do I guide to common questions.
- exponentcms.org User Guides — PDF downloads.
- exponentcms.org Designers Guide — doesn't really exist yet!
- exponentcms.org Developers Guide — doesn't really exist yet!
- exponentcms.org How To Create a Module — basic module structure explained.
Unofficial Exponent Resources
- phpxref.com Exponent — online browsing of Exponent 0.96.3 source code.
- netstepcms.com eXponent Overview — good review of what's on offer.
- zimmertech.com Tutorials — excellent tutorials on variety of topics, including great Themes tutorial.
MySQL Resources
- mysql.com — MySQL official website.
- mysql.com Documentation — official user guide.
- wikipedia.org MySQL — good history and definition.
- php.net MySQL Functions — using PHP and MySQL together.
PHP Resources
- php.net — PHP Hypertext Processor official website.
- wikipedia.org PHP — good history and definition.
- w3schools.com PHP Tutorial — excellent online tutorial.
- php.resourceindex.com — index of PHP code snippets for the seriously techie.

