Site:Frontend:Controllers
From Metrixstream
Revision as of 10:37, 20 June 2012 by MetrixJustin (Talk | contribs)
Contents |
Introduction
A Controller is a javascript class that will manage all the necessary javascript. This class is broken down by functionality and should only be instantiated when necessary.
Basic Site Controller
Example Controller
<script type="text/javascript"> function siteController(authUser, publicUser, publicContentId) { this.authUser = authUser; this.publicUser = publicUser; this.contentId = publicContentId; this.urls = []; } siteController.prototype.registerUrls = function(urls) { this.urls = urls; }; siteController.prototype.registerProfileFunctions = function() { var myThis = this; $('#getUserState').click(function(e) { e.preventDefault(); $.ajax({ type: 'get', url: myThis.urls['userStateUrl'], data: { 'user': myThis.publicUser }, success: function(data) { alert('This user is '+ data.state); } }); }); }; </script>
Instantiating
In the example controller, siteController is instantiated with the authenticated username, the public username (if avaliable), and the public contentId (if avaliable) which are stored so they can be accessed throughout the class.
<script type="text/javascript"> var site = new siteController('Justin', 'Roy', ); $(document).ready(function() { site.registerUrls({ 'someUrl':'http://somesite.com' }); }); </script>