Commit graph

113 commits

Author SHA1 Message Date
Josh Sherman
650c16efae Removed session_start in controller, removed exception from Security class
Security class doesn't need to bark so much, just fail and move on
2013-02-20 11:38:16 -05:00
Josh Sherman
cbb75e7064 Added @geoffoliver attributes.
Geoff likes to exploit the URI and inject key/value pairs into it. It's not something I do, but I was intrigued enough to implement it. Basic usage is /path/to/page/id:123/spam:eggs. The variables are removed from the request variable as to not bork module loading and are made available via Browser::get('variable');
2013-02-04 23:34:09 -05:00
Josh Sherman
340b336a49 Controller bug and Distance class
Fixed a bug in the Controller that was throwing some notices when a module didn't return any data. Also finished up the calculateDistance() method in the Distance class. Seems I left it in somewhat of a bug filled incomplete state last week.
2012-12-18 13:24:19 -05:00
Josh Sherman
33bbcc014b Updated to allow for both object variables and explicit module returns to be merged into $__module 2012-12-08 15:38:05 -05:00
Josh Sherman
f75862fabd Added dot notation magic for URIs
Used to be very rigid in that each URI had to map to a single module. Now the inclusion of dots in the URI allow you to have multiple end points in a single file. /user/edit and /user/edit.save both resolve to /modules/user/edit.php
2012-11-30 17:33:53 -05:00
Josh Sherman
b31746b1c2 Added role based default methods
One of @geoffoliver's suggestions, default methods that are exclusive to the user's permission level. Named __default_ROLE(). No more conditionals in the code since you can now isolate the logic
2012-10-14 18:46:29 -04:00
Josh Sherman
8fb7622061 If the module doesn't return anything, pass the return array instead
Now you can set variables in the module itself and have them returned to the template instead of needing to explicitly return the data. Will come in handy in scenarios where you've extended another module and want to retain it's return data. Previously you had to set a variable and then add to that and return it from the child class.
2012-10-14 18:08:27 -04:00
Josh Sherman
3c2c936cee Added fluid variable to the Module class
As a developer you still need to code for it (it's shown at work in the bootstrap) but you can use the variable to toggle fluid and fixed right from the module itself
2012-10-14 17:53:23 -04:00
Josh Sherman
482f77c10b Set _REQUEST['request'] by default
Should alleviate some redundant isset()s throughout a site's code
2012-10-11 22:50:32 -04:00
Josh Sherman
c27fbf8694 Fixed issue with _SERVER['HTTPS'] being set on nginx 2012-10-01 22:49:49 -04:00
Josh Sherman
6f114361bd Updated copyright, website and contact email 2012-09-30 12:40:29 -04:00
Josh Sherman
9cd9304cf8 Moved meta data to be after the module execution
Modules were unable to override the meta data because the values were pulled before the module was being executed.
2012-05-18 21:10:01 -04:00
Josh Sherman
df5a2e2aaa Removed logic to load /__pickles/(js|css)/*.(js|css) files. It didn't work in nginx without trickery and it was a fundamentally ignorant approach since it caused PHP overload just to load a static file. The inclusion of the boilerplate will allow users to fork said project and have all files readily available. 2011-08-28 18:00:30 -04:00
Josh Sherman
3a89586eb1 Added configuration variable to disable logging. Currently it is a boolean value, but eventually it will probably be broken out into an array with key/value pairs to correspond with the different logging options within the PICKLES core. 2011-06-15 21:13:28 -04:00
Josh Sherman
7fba0d231d Added File class. 2011-06-12 18:08:59 -04:00
Josh Sherman
5d63e032f5 Added sanity check to _REQUEST['request'] when redirecting to the login page. Alleviates an issue when securing the default module. 2011-05-14 21:38:06 -04:00
Josh Sherman
996241debb Updated headers to have 2011 in the copyright date. Also updated copyright to my name as the LLC is currently defunct. 2011-05-09 22:14:55 -04:00
Josh Sherman
d9436919bd Fixed missing Content-Type headers when loading internal static assets (e.g. /__pickles/css/reset.css) 2011-04-09 16:34:49 -04:00
Josh Sherman
b2047bd0cb Fixed issue with request method and security hash validation. 2011-01-28 23:21:44 -05:00
Josh Sherman
95e75226d3 Return authentication error as JSON when script was POSTed to instead of performing a redirect to the login page. 2011-01-26 23:42:16 -05:00
Josh Sherman
04471d607a Added database session handling. 2011-01-16 15:40:59 -05:00
Josh Sherman
bef224d5ec Removed logic that interacted with passed IDs. This logic belongs in the .htaccess file (assuming it's even necessary for the site). 2010-12-26 14:27:45 -05:00
Josh Sherman
261b2546e7 Added better support for hyphens in a URI. 2010-12-17 23:55:28 -05:00
Josh Sherman
346c93e393 Added some comments. 2010-12-17 22:38:40 -05:00
Josh Sherman
25e78fc569 Updated replacement logic to be strict, just in case there is a scenario where the string could be replaced more than once. 2010-12-17 22:30:55 -05:00
Josh Sherman
e008ffcf2b Added redirect to force URI to be lowercase. 2010-12-17 22:18:25 -05:00
Josh Sherman
8fa5471aa7 Added private module functionality. 2010-12-09 22:52:26 -05:00
Josh Sherman
89e2c3db19 Cleaned up stray whitespace. 2010-12-09 20:12:05 -05:00
Josh Sherman
4c366d72a8 Auto start session from main file (before Controller is loaded) if session is enabled in the config. 2010-12-05 17:07:55 -05:00
Josh Sherman
c32ee1a12e Added support for passing in a .rss extension to force the rendering engine RSS. 2010-11-26 23:16:30 -05:00
Josh Sherman
4c0baeb00a Removed internal() method to generate references to PICKLES files. Should use existing methods, but make sure to include the PICKLES path (e.g. /__pickles/js/core.js). 2010-11-26 13:50:48 -05:00
Josh Sherman
2add111b9b Removed debug code. 2010-11-26 02:46:18 -05:00
Josh Sherman
212843386d Added optional security hash check. 2010-11-26 02:43:41 -05:00
Josh Sherman
98e7f0fb34 Added optional request method checking. 2010-11-26 01:36:06 -05:00
Josh Sherman
14f0efbea0 Implemented secure variable in the module, removed request variable and will potentially add it back in at a later time. 2010-11-25 01:52:00 -05:00
Josh Sherman
9adc9d868d Added redirect to the login page when user is not properly authorized. 2010-11-24 23:27:31 -05:00
Josh Sherman
4dd9249ba0 Implemented automatic security checks in the Controller. Opened up the security class to accept an array as an argument and will great that array as if it's the array coming from func_get_args(). 2010-11-17 23:39:45 -05:00
Josh Sherman
7c7fe769a8 Added sanity checking on return type overloading. 2010-11-14 17:20:26 -05:00
Josh Sherman
eccb07e786 Default to JSON if there are no PHP templates 2010-11-14 16:47:06 -05:00
Josh Sherman
6639fae6ed Updated Controller to handle fatal errors directly instead of throwing an exception. 2010-11-07 00:09:33 -04:00
Josh Sherman
9a4fe84b9b Added timer capabilities to the profiler, refactored a bunch of the sanity checks associated with the profiler. 2010-10-22 22:26:45 -04:00
Josh Sherman
92e4b0391a Added profiler options. 2010-10-22 00:31:26 -04:00
Josh Sherman
5ea7756803 Added private templates via the __shared directory. 2010-10-20 01:06:11 -04:00
Josh Sherman
013fa77ec2 Added sanity check on variable. 2010-10-18 23:34:42 -04:00
Josh Sherman
2d466d98e7 Gave the controller some more smarts with the ability to detect requests for internal files and pass them through. Used to use the Javascript and CSS that is provided in PICKLES without the need of copying the files into the public scope, symlinking or Apache aliasing. 2010-10-17 23:10:48 -04:00
Josh Sherman
1cd61dda42 Updated licensing to use the [better suited] MIT License. 2010-10-14 20:12:40 -04:00
Josh Sherman
630a1276aa Gutted config system to use a PHP array instead of 1980's INI files. Broke down the database layer to support multiple types of interfaces and started laying out the Mongo interface class. 2010-10-12 01:44:10 -04:00
Josh Sherman
9fe5ce72d4 Building in security capabilities. 2010-10-06 00:01:49 -04:00
Josh Sherman
0a6c124302 Fixed some issued with PHP <5.3, added more built in profiling and ditched the Singleton class (related to <5.3 issues). 2010-10-03 23:07:48 -04:00
Josh Sherman
9b4763dd23 Removed whitespace. 2010-10-03 15:16:01 -04:00