CVS log for advokit-installer/advokit.ini.tpl |
|
Help |
Request diff between arbitrary revisions
Prettifying the teamjob details page. Also added count-down to the time that polls open to the teamjob, team and operation details pages. This required modifying the EditOperation page so that you can specify the time that polls open. The time of day is just appended to the _operation.election_date in the hours portion of the string. This also necessitated creating a config variable to enable compensating for a different server time.
I've been accumulating these changes for a couple weeks. I've been banging on it pretty heavily and I think these are quite solid, and rather than delay getting the committed by trying to itemize all the changes, I'll just commit them all and list the highlights: - Big progress in implementing "ownjob": This is a big improvement in tracking what role the user is currently operating from. Rather than a muddled combination of user attributes and lists of the user's leader and activist jobs, ownjob provides explicit information on the user's own teamjob state. This allows us to have sidebar links, breadcrumbs and teamdetails pages that make sense for "where the user is coming from". When he clicks a campaign leader job, for example, the "upload voterfile" link stays in the sidebar regardless of where he has navigated to, what teamjob he may have assumed, etc. The sidebar displays the ownjob as the active job until he explicitly chooses another job that he owns. If he chooses an activist job, all the campaign leader stuff goes away from the sidebar, breadcrumbs disappear, etc. I haven't worked this down into the permission system, though logically it should. - Created tabbed interface for operation and team details pages (campaign details page remains to be done). Ustate is used to remember the user's tab-state for each team_id. The display php code pays attention to the tab number and will not do a lot of sql that is unecessary for the current tab. The team report data, which is a huge DB hit is now in a tab, so it is only calculated when you choose to view it rather than every time the teamdetails page loads. So overall it should speed things up. I also have cleaned and spiffed these templates up a lot. - Implemented three-homepage system - anonymous, admin, activist - and include better sample homepages which also demonstrate templating. Modified the edit homepage page so that you can choose which of the three homepages to edit. - Cleaned up badly formed html ...
Significant improvements to getlogin (recovery of login when password is lost) - An advokit.ini config lets you enable "easy_get_login", which allows the user to provide the username or email, rather than requiring both. If only the email is provided, it must be unique in the database. - It will not reset the password if there is not a plausible email address to send the confirmation email to (this can be improved - it just checks to see if it's at least 9 characters long)
Added ability to choose logo image in advokit.ini - puts logo inside a div so that a background image can be used - includes option for no logo (enter "none") - if blank, default logo is used
Removed dependence upon the "include_voteranswer" switch for voter filters that wish to filter on the voteranswer table. Added support for filtering on votercampaign table. In each case where voter filters are applied, we test the cumulative filter string for "va." for voteranswer, and "vc." for votercampaign. If a match is found, then the table is joined in the select statement.
Made walklist generation iterative for lists larger than csv_chunk_size. This was supposed to be the first phase of the "generate HTML for all walklists" request for the NYDems. If I can make it efficient enough, I'll implement the function by repeatedly calling the Action for each contact list in the system. Otherwise, I may hack out a perl script.
Added "title_override" configuration variable in advokit.ini. When a string is supplied in this variable, it is used for the browser page title in preference to the product string.
- Fixed memory problem with searching from sidebar - Fixed some subtle problems with rights-checking, which may have lead to other issues - Various other fixes for things encountered while trying to test issues 335, 367, 370, 327, and 369.
Implemented a first cut at new security handling. Hooked the action and display classes to call functions in Context (probably not the right place) to handle security. Current checking is for viewing and deleting of ContactLists and viewing and updating voter records. If the user does not have "rights" - the object does not "belong" to them - then the display will blank out and messages logged (debug). Added a new variable to the ini - implement_data_security = 0. Setting this false for now so that if bugs have been introduced this feature can be disabled. The final release will NOT have a variable
Added the ability to filter on voteranswer. Introduced a new parameter in the ini file - include_voteranswer (default false). When set to true the table voteranswer (with the identifier of va) will be placed in the appropriate queries. If a user edits the SQL for a filter they can introduce logic to do a selection on questions that have been answered. An example might be: ( va.question_id=1 and va.answer_id=1 )
couple app vars added
Changes to allow voters to be on one contact list per operation, rather than one contact list at all. Tentatively configurable...needs more testing.
added config var for autopopulation bucket size
Alternative to MySQL "order by rand()" statement. Admins can still use it by setting the right parameter in advokit.ini, but the native method is faster. We get a random sampling of ids between 1 and max(voter.id), then pick 3 * bucket size, then limit the select to bucket size.
C. Scott Ananian's changes to http authentication.
- Fixed stupid-ass bug I introduced in Request.class.php - CSV generation now iterative.
Bugzilla #149 -- applied patches provided by C. Scott Ananian **** DO NOT USE THIS CODE YET **** or else you won't be able to login anymore on your existing installation.
retructuring job handling,
- job revamping - fixed crappy html - removed tabs - making login more secure - added message to display on too many failed login attempts
removed orphaned comment.
- Added code and config parameters to limit login attempts. - Working on job revamp.
- bugzilla #72 - Voter report for operation and teams
- bugzilla #91 - browse household link missing from browse voters
- Show Open Jobs shows job name ("job type name") and description
if no ad title or body is present.
Bugzilla #93 -- added default sections to advokit.ini. These are used when approving new users.
Bugzilla #47 - Voterfile upload needs work - Added max_script_size parameter to advokit.ini. Defaults to 2 meg. When this size is exceeded, the script generator writes the script epilogue, then refreshes, at which point a new script is started. - Generates a final script to call the other scripts one at a time, so the entire import doesn't have to be compiled at once.
- Added config parameter action_timeout to let user specify how long to spend doing voterfile mappings before refreshing - Added caution about using http to upload large files
Fix download_prefix.
- Modified download link to use version information from database. - Added "download_prefix" config var in advokit.ini.tpl.
adding license.
- fix small format problems - implemented concept of current contact list - implemented homepage editor - restricted pagebar size Look for upcoming adds.
Mostly voterfile upload.
changed color
- Cleaned up breadcrumbs - Color coded some stuff - Fixed js bug
- Added transient data support for aborted "Add" screens, so user doesn't have to re-enter in case of error - Add actions check for duplicate usernames and fail more gracefully if username exists
- Random voter selection. Added config parameter for random list size. - The getCumulativeFilter function in Context.class.php now considers extra parameters in operation. - Working out how to do sidebar.
- Removed caching options from ini template, as caching is next to impossible - Cleaned up admin side. Admin can basically create and edit campaigns and campaign leaders, plus system information. Lower level stuff is done by people within campaigns. This scheme follows from the requirement that a user is acting within the context of a job -- since the admin has no job, we only let the admin do a few campaign-related things. - I don't know about you, but the word "campaign" is starting to look funny. - Tightening up Details screens.
Added leaders, separated from jobs. Job (leadership or not) is added at the time the activist is created, rather than beforehand. Normalized verbiage. Reworked sections a bit to handle leader business.
Re-importing advokit-installer into voter2voter cvs with name changes for various db entities
Initial revision
| cvsadmin@voter2voter.org | CVS Snapshots (updated daily) |