#5818: Organize JavaScript into MVC structure
---------------------------+------------------------------------------------
    Reporter:  colinodell  |          Type:  Enhancement
      Status:  new         |      Priority:  Low        
   Milestone:  2.0.0.x     |     Component:  View       
     Version:              |      Severity:  Trivial    
    Keywords:              |   Php_version:  n/a        
Cake_version:              |  
---------------------------+------------------------------------------------
 There are already a couple 3rd-party ways of doing this, such as Jamal
 (http://bakery.cakephp.org/articles/view/another-jamal-helper) and JLM
 from the WildFlower CMS
 (http://github.com/klevo/wildflower/tree/master/app/plugins/wildflower/jlm)

 Essentially, it allows you to divide JavaScripts in a similar MVC
 structure.  All files are merged and cached, but only the required
 functionality is actually executed.  So anything within an
 'app_controller.js' file would be executed application-wide, while
 something like '/forum/view/topic:7' would run the functions specific to
 that controller and those for the action.

 Although the execution stuff is primarily client-side and framework-
 specific, core improvements would be HUGE for facilitating this:

 1.  An 'official' filenaming convention for seperating JS files (global
 ones, components, controller-specific, action-specific, etc)
 2.  Have the view merge these files together into one JS file.  All the
 code used to identify each piece would be defined by the user (all the
 variables which say 'this block of code should be run here or there).
 3.  Optional - Have the view also spit out javscript defining variables
 like the current action, controller, js components used, etc.  The
 javascript would then take these variables and execute only the needed
 code.  This could be the user's responsibility, built into the AJAX
 helper, or built into the view.
 4.  Ability to create different 'merges' based on the prefix or other
 criteria.  This way, random visitors can't view JS specific to the admin
 section.

 I know its a long shot, but I strongly believe that Javascript should
 follow a similar structure as Cake does with PHP.  Otherwise, everything
 is lumped together in one folder and difficult to maintain.  3rd party
 solutions do work, but there's no standard path structure or core
 functionality for organizing/utilizing client-side code in a smart manner
 consistent with everything else in CakePHP.

 At the very least, I think there should be a standard, MVC-friendly
 convention of where to place files.

-- 
Ticket URL: <https://trac.cakephp.org/ticket/5818>
CakePHP : The Rapid Development Framework for PHP <https://trac.cakephp.org/>
Cake is a rapid development framework for PHP which uses commonly known design 
patterns like ActiveRecord, Association Data Mapping, Front Controller and MVC. 
Our primary goal is to provide a structured framework that enables PHP users at 
all levels to rapidly develop robust web applications, without any loss to 
flexibility.
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"tickets cakephp" group.
To post to this group, send email to tickets-cakephp@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/tickets-cakephp?hl=en
-~----------~----~----~----~------~----~------~--~---

  • [CakePHP : The Rapid Dev... CakePHP : The Rapid Development Framework for PHP

Reply via email to