Age | Commit message (Collapse) | Author | |
---|---|---|---|
2011-10-23 | Refactor to *finally* get rid of the god-class "MessageManager". | Luke Shumaker | |
Accomplish this largely by using singletons. Now, I know this breaks the "build", at least in PHP 5.2. But there's a lot here that's good stuff, so just wait for the next commit. Now, a *LOT* changed, as you can see by the size of the diff; it's about a day and a half of editing worth of editing. I'll describe a little of it, but I'm not going to go into a ton of detail, and won't bother trying to break it into separate commits (they're all so interconnected, it would be mental masturbation). 'Cause I'm the only one looking at it at this point. 1. MessageManager did 3 things: A. Act as a global site class. This has been moved into `lib/Site.class.php' B. Act as a registry for singletons. Now there's a `lib/Singleton.class.php' abstract class to let them manage themselves. : Note: With the possible exception of Database, none of the : : singletons *need* to be singletons, but to create : : multiple of them would be wasteful. : C. Check if the database conf file exists, and if it doesn't show an error message. This has been moved into index.php, and the message has been turned into a proper view. 2. Recognize `Auth.class.php' for what it is, a multiton. Rename Auth::getObj to Auth::getInstance to be consistant with singletons. 3. Make Site->baseUrl() (formerly `MessageManager->baseUrl()') figure the base URL each time, either with or without the database. This way we can be more flexible with initing the Template. 4. Init Template (now a singleton) sanely. We can now use views with no DB. I will use the above to shorten the below file changes: index.php: [1C] Also, just tidy up. src/controllers/Users.class.php: [1B] [2] src/lib/Controller.class.php: [4] src/lib/DB.class.php: [1B] [2] src/lib/Database.class.php: [1B] src/lib/Hasher.class.php: [1B] (new file) A singleton wrapper around `ext/PasswordHash.class.php', use bcrypt while exposing fewer internals. src/lib/Login.class.php: [1B] src/lib/MessageManager.class.php: [1] src/lib/Model.class.php: [1B] (new file) A abstract class for models, so they don't have to worry about initing the DB. src/lib/PluginManager.class.php: [1B] src/lib/Singleton.class.php: [1B] (new file) An abstract class that will take care of being a singleton for you; in order to make a class a singleton, just extend Singleton. src/lib/Site.class.php: [1A] [3] (new file) src/lib/View.class.php: [4] src/models/Auth.class.php: [2] [1B] Also make getUsername safely return false if the DB isn't connected. src/models/ContactMethod: extend `Model' src/views/Template.class.php: [1B] [3] src/views/pages/no-conf.html.php: [1C] src/views/pages/plugins/index.html.php: [1B] src/views/pages/users/500.html.php: [1B] | |||
2011-10-09 | Fix bug in Users::getIndexAttribs() where auth_name was being omitted.concurrent-editing | Luke Shumaker | |
2011-10-09 | Select ! to be username separator. | Luke Shumaker | |
2011-10-09 | Merge branch 'anon-userlist' | Luke Shumaker | |
2011-10-09 | Fix the markup with the spreadsheet link in the user index. | Luke Shumaker | |
2011-10-09 | Link to the userlist from the user registration page, if anon_userlist is ↵ | Luke Shumaker | |
enabled. | |||
2011-10-09 | Change users/index.html a bit depending on if logged in or not. | Luke Shumaker | |
2011-10-09 | Add the system config option 'anon_userlist' to control if an anonymous ↵ | Luke Shumaker | |
userlist is visible or not. | |||
2011-10-09 | Allow username lookup even if $user->canRead()==false | Luke Shumaker | |
2011-10-09 | Merge branch 'concurrent-editing' into anon-userlist | Luke Shumaker | |
Conflicts: src/controllers/Users.class.php | |||
2011-10-09 | Don't show full name to anon users, comment out security check for index. | Luke Shumaker | |
2011-10-09 | Merge branch 'master' into concurrent-editing | Luke Shumaker | |
So, here's the deal: * The meat of [concurrent-editing]:Form.class got merged into [master]:DB.class * The string-generation stuff in [concurrent-editing]:Form.class didn't fit nicely anywhere anymore, so I got rid of it by makeing datatype explicit. * Users.class: declare datatypes explicitly in attrib() * index.html.php: use this new explicit data * style.scss: add a .small, which we can do because of the datatypes thing. Conflicts: src/controllers/Users.class.php | |||
2011-10-09 | Move Users->[gs]etConf into a new DB.class.php, add in some wrappers for ↵ | Luke Shumaker | |
equivalent stuff with plugin and system config. | |||
2011-10-09 | Begin adding a userlist visable to non-authenticated users. | Luke Shumaker | |
2011-10-09 | Properly use thead and tbody. | Luke Shumaker | |
2011-10-09 | Add auth_uid as a parameter for forms in the Users controller. | Luke Shumaker | |
2011-10-05 | Edit individual.html to allow showing multiple users at once. Add | Luke Shumaker | |
a hack to the Users.class controller to show all users for the "all" username. Mark "all" as forbiddent in the Auth.class model. | |||
2011-10-04 | Change the title on user pages from "Users: NAME" to "User: NAME". | Luke Shumaker | |
2011-10-04 | Add some (S)CSS for printing. | Luke Shumaker | |
2011-10-04 | Begin work on safely allowing concurrent edits on data, giving better form ↵ | Luke Shumaker | |
interface. | |||
2011-10-04 | Add a trailing newline to Database.class.php | Luke Shumaker | |
2011-10-04 | Add the ability to close user registration. | Luke Shumaker | |
2011-10-01 | Fix the multiple-edit protection (I'd done this yesterday, but didn't commit) | Luke Shumaker | |
2011-09-30 | Move username validation from the Users controller to the Auth model. | Luke Shumaker | |
2011-09-30 | Fix a typo in a individual.html.php that caused an error to show whenever a ↵ | Luke Shumaker | |
username was changed. When the message does show, it will say username "", since $new_name is never set, but that's another bug. | |||
2011-09-30 | Quick and ugly hack to safely allow multiple users to edit data at once | Luke Shumaker | |
2011-09-28 | On the user index page, add field names to the bottom of the table, | Luke Shumaker | |
and a save botton to the top. | |||
2011-09-28 | Force users to give an email address when they create an account. | Luke Shumaker | |
2011-09-28 | Move the contact info to above the plugin-configurable area on the | Luke Shumaker | |
individual user page. | |||
2011-09-25 | Don't let a logged in user go through new-user registration. | Luke Shumaker | |
2011-09-25 | Make the first page of new user registration say "Go on to Step 2" | Luke Shumaker | |
instead of "Submit". | |||
2011-09-25 | don't allow deleted users to log in. (They'd get permission denied on ↵ | Luke Shumaker | |
everything, but they could log in) | |||
2011-09-22 | Merge branch 'master' of https://git.gitorious.org/messagemanager/messagemanager | Luke Shumaker | |
2011-09-22 | whitespace fix | mckenzierobotics.org | |
2011-09-22 | Implement ReCaptcha entirely as a plugin, remove all of the ugliness | Luke Shumaker | |
from my old implementation. | |||
2011-09-22 | Add an ugly hacky-hacked reCaptcha to new user registration. | Luke Shumaker | |
2011-09-22 | Implement actual plugin management. I was tired of doing the SQL queries by ↵ | Luke Shumaker | |
hand :) | |||
2011-09-22 | Misc. cleanup: improve comments in Login, add description to SenderIdentica | Luke Shumaker | |
2011-09-22 | Finally get around to implementing deleting users. (status=4) | Luke Shumaker | |
2011-09-22 | Fix a terrible, terrible bug in Database.class.php, I was calling ↵ | Luke Shumaker | |
getSysConf() without this "$this->" in front of it. | |||
2011-09-19 | Don't give back 201 for the HTML view after creating a user. Doing so will ↵ | Luke Shumaker | |
prevent the browser from following the Location: header, which is not what HTML users want. | |||
2011-09-19 | Add a decent fallback for when both file extension and Accept methods of ↵ | Luke Shumaker | |
selecting the view fail (as they do in IE6-8) | |||
2011-09-07 | Fix a bug I introduced while picking apart my last changes into | mckenzierobotics.org | |
separate commits. | |||
2011-09-06 | Update InformationPlugin to (mostly) match the form that Mr. Smith sent me. | Luke Shumaker | |
2011-09-06 | Fix a few style issues (use .wide class for $t->inputTextArea(), css tweaks) | Luke Shumaker | |
2011-09-06 | add 'paragraph' and 'checkbox' datatypes to individual.html.php's inputField() | Luke Shumaker | |
2011-09-06 | Differentiate between when we want checkboxes to be booleans, or bit arrays. | Luke Shumaker | |
For the booleans, we use a hidden input to send false back if they aren't selected. * Template.class.php: rename inputBool() to inputBoolArray(), create new inputBool() * index.html.php: use a hidden input to send false when an checkbox isn't selected. * individual.html.php: add inputBool() function, use $t->inputBoolArray() in inputArray() | |||
2011-09-05 | Update TODO/Bugs in README.txt, change appearance a bit | Luke Shumaker | |
2011-09-05 | Fix 3 bugs (stray * in SQL, typo in variable name, a place where ↵ | Luke Shumaker | |
isLoggedIn() was still being called on the DB | |||
2011-09-05 | (mostly) Fix the installer. We still need to set baseurl in the 'conf' table ↵ | mckenzierobotics.org | |
manually. |