summaryrefslogtreecommitdiffstats
path: root/app (follow)
AgeCommit message (Collapse)AuthorFilesLines
2016-03-27Add function User::setEmail()Malf Furious1-2/+11
This function handles internal vars while updating a user's email address.
2016-03-27Add function User::setPassword()Malf Furious1-2/+10
This user function will update the salt and key for a user object to change its password.
2016-03-27Add User settings tab for Setting modalMalf Furious1-5/+82
This commit adds the basic structure to the Setting modal in Common MVC. The meat of this commit is the content for the webform for the modal's form for user account settings. The next commit should implement form submission handling.
2016-03-27Only include the Setting modal if currently logged inMalf Furious1-1/+3
This prevents sending un-necessary HTML to the client on login/signup pages and allows code on the setting modal to assume that getCurrentUser() will always return an object.
2016-03-27Add settings modal to Common MVCMalf Furious2-0/+27
This modal dialog will be used to change app and object settings from any page in the app. The link to open it is added to the user button menu.
2016-03-27Update application navbarMalf Furious1-1/+14
The navbar now has a different view when logged in. I added the 'user button' which shows alert info and has a menu. Currently, the only menu item is 'Log out'.
2016-03-27Add function getCurrentUserGlyphicon() to Common modelMalf Furious1-0/+13
This helps render data for the common topp view (navbar). This function will return the glyphicon to use next to the current user's name.
2016-03-27Add function getDisplayName() to User classMalf Furious1-0/+11
If a user has an alias set, it should be displayed throughout the app instead of the username.
2016-03-27Hook Deauth and Dashboard MVCs from Root controllerMalf Furious1-4/+18
These two MVC trees are now accessable from the app. Also, the root controller is finally in a clean state :).
2016-03-27Add Dashboard controllerMalf Furious1-0/+27
2016-03-27Add Dashboard modelMalf Furious1-0/+15
2016-03-27Add Dashboard MVC default viewMalf Furious1-0/+13
2016-03-26Fix bug in Framework::getCurrentUser() functionMalf Furious1-1/+8
If, by some means, the GUID for a logged in user is not valid, that session should be terminated ("$this->setCurrentUser();") This might happen if the database gets flushed, or if an account gets removed while it is in use...
2016-03-05Add Deauth controllerMalf Furious1-0/+26
Model added in previous commit.
2016-03-05Add Deauth modelMalf Furious1-0/+17
Deauth is the MVC used to de-authenticate a session -- logout. This MVC will have no views.
2016-03-05Add sec_verify_ip to app root controllerMalf Furious1-0/+3
2016-03-05Add verify_ip security assertionMalf Furious1-0/+15
This assertion will be used app-wide. This asserts that the IP address a client uses to conenct to the app is constant throughout the the session's lifetime. This is to detect any session hijacking. If a session suddenly appears to be comming from a different IP address, the session will be killed.
2016-03-01Add garbage collection logic to Object::delObj()Malf Furious1-0/+8
Now, on deletion of objects, all refs to it are purged from the xref tables, obj_member and msg_read
2016-02-22Create a basic flow for the application Root controllerMalf Furious1-11/+22
This applies the rules for requiring or forbiding the use of SSL/HTTPS and reorganizes the rest of root's handle() function (that is, the check for displaying sysconf, auth, or a placeholder message).
2016-02-20Hook new Except MVC from the Root controllerMalf Furious1-17/+26
This patch encapsulates all app operations in a try block, and handles any exception by passing it into the new 'Except' MVC to be displayed
2016-02-20Finish initial exception reporting pageMalf Furious1-1/+6
2016-02-17Update Except model, deflt action to consume $message for display on pageMalf Furious1-1/+2
2016-02-17Add 'Except' MVC -- Used to show application exception messages to userMalf Furious3-0/+66
This MVC should be triggered by the root controller if normal routines throw an exception and should pass the exception message to the Except controller.
2016-02-07Add in-app administrative setting: settSSLMalf Furious1-0/+18
This is the in-app version of $_SCROTT['settSSL'] system-level setting. Setting::settSSL() overrides $_SCROTT['settSSL'] only if the latter is set to 'neither'. If both are set to 'neither', the app will run on either HTTP or HTTPS depending on how the page was requested.
2016-02-07Add fields to Issue objectMalf Furious1-1/+3
This adds attributes to an issue: due date (optional datetime) tags (space separated string of words to help categorize issues (again, optional))
2016-02-07Modify Auth controller descriptionMalf Furious1-1/+1
This MVC will not be used to handle deauth (logout) anymore. To improve app flow, a separate one will be created for this purpose
2016-02-06Update Auth controller to work with recent MVC redesign (HEAD^^)Malf Furious1-16/+4
2016-02-06Update Auth model to reflect changes in previous commitMalf Furious1-15/+18
2016-02-06Merge the two auth views togetherMalf Furious2-84/+90
For design reasons and to simplify flow of control throughout the app login/signup sequence, these two views are being merged together. This will autimately make the auth MVC less stateful, which I think is good. NOTE: This breaks the Auth MVC, the model and controller will need updated to support this new, single default view
2016-02-02Add admin setting 'allowPublicSignup'Malf Furious1-0/+13
This setting will be used to decide if the app should allow unauthenticated users to create their own user accounts or if an admin must create them.
2016-02-02Add helper function to Setting classMalf Furious1-0/+17
Added a static helper function to replacing (or inserting) an option value in the database, longhand.
2016-02-01Implement 'login' action on Auth MVCMalf Furious2-0/+37
Finished initial functionality for Auth MVC by implementing the login feature
2016-02-01Implement authentication helper functions in User classMalf Furious1-0/+24
Added function to initialize a User object by username wrather than GUID. Added function to validate a user-supplied plain-text password for a given user
2016-01-31Log in on signup successMalf Furious2-1/+10
Now, on a successful submission of the signup view form (Auth MVC), the app automatically logs in the newly-created user and redirects to Framework::ap() . "/". Placeholder code has been added to the root controller to simply var_dump() the current logged in user if one exists, otherwise the login view (Auth MVC) is shown
2016-01-31Implement PHP session semantics in Framework classMalf Furious1-0/+41
Added PHP session handling to core framework. Functions now exist to set the current user, get the current user, and get the IP address used to login (to compare with furure requests on the same session to combat session hijacking).
2016-01-31Merge Auth MVC, initial_signup action into signupMalf Furious2-15/+5
There was a mistake that caused the page notice about no accounts existing to sometimes not showup in error. This merge resolves that issue as well as tidys up the code a bit.
2016-01-30Implement signup_submit action on Auth MVCMalf Furious2-0/+44
Submissions to the Auth signup page are now fully handled by either creating a new account (User object in the system) or posting an error message to the page (Auth model)
2016-01-30Add functionality to create new User objectsMalf Furious1-0/+54
User class now has a new function which will take a $username and a $password and use it to initialize itself as well as write new object data to the database. This commit introduces a helper function getKey() (from class User) for creating user object keys by hashing the contatenation of its password and salt. This commit introduces a helper function usernameInUse() (from class User) for ensuring the uniqueness of names amongst user-type objects
2016-01-30Update app source of entropy for creating random blobsMalf Furious1-2/+9
Removed use of PHP's rand() functon in favor of openssl extension's openssl_random_pseudo_bytes() to create blobs with better entropy. Created function getBlob (from class Object) to get a sha256 hash created from randomness for use as object GUIDs, password salts, application tokens, etc.
2016-01-30Handle object timestamps automatically in Object::saveObj()Malf Furious1-0/+14
The saveObj() function now initializes and update the timeCreated and timeUpdated fields of objects on its own. A new function, getCurrentTimestamp() (from class Object) is introduced to aid simpler fetching of the date and time
2016-01-28Finish signup and initialSignup actions on Auth MVCMalf Furious2-2/+35
If no accounts exist no login page will be shown. Instead, the app presents the signup page to allow the administrator to create his account. This is the only case where a new account should be an admin by default.
2016-01-28Add admin field to user tableMalf Furious1-0/+1
User accounts now have a field to denote whether they are site administrators. The first account created during app initial configuration is an admin automatically.
2016-01-27+ Added view for account registrationMalf Furious1-0/+60
2016-01-26+ Added function to User class to fetch all users from DBMalf Furious2-0/+26
* Altered Auth MVC deflt action to return false if no users are found. This way, the Auth controller can automatically present user a page to create an admin account
2016-01-26+ Added a basic login page designMalf Furious1-0/+34
2016-01-03Merge branch 'dev' into authMalf Furious1-1/+1
2016-01-03* Bug fix in sysconf model - save action: problem with how the code is ↵Malf Furious1-1/+1
redirecting to the app root on success (needed to add a trailing shash character)
2016-01-03* Start of application navbarMalf Furious2-0/+27
* Digested some example code
2016-01-03+ Adding default view for Auth MVCMalf Furious1-0/+13
2016-01-03* Hooked the Auth MVC from the Root controllerMalf Furious1-1/+6