Commit graph

60 commits

Author SHA1 Message Date
d6da64043e Increased list output to 50 items per page 2015-01-01 21:30:07 +01:00
837c3df0e0 Renamed updated_action() to updates_action() 2015-01-01 20:56:32 +01:00
a586efcc8c Refactored member search 2015-01-01 20:49:18 +01:00
e98fc57206 Refactored reset_action() 2014-12-21 17:31:52 +01:00
b5a7cdbcb7 Refactored remaining prototypes for UIKit support as well as unified and smoothed already refactored ones 2014-12-21 17:22:01 +01:00
777fc161ef Slightly improved membership display 2014-12-17 23:55:34 +01:00
d12e2a1d65 Refactored membership handling for UIKit support 2014-12-14 23:40:05 +01:00
b4ca0e0281 Always return to current action after submit (instead of parent action) 2014-12-14 10:16:34 +01:00
780f250d90 Renamed User Profile to Account 2014-12-10 16:51:08 +01:00
ab8560b057 Updated license header and unified comments 2014-07-04 17:16:51 +02:00
a70d7e9029 Replaced most double ticks with single ones 2014-07-04 15:44:41 +02:00
c7d78eba65 Reduced line indent from 3 to 2 spaces 2014-07-04 15:32:18 +02:00
21ccb28f60 Fixed Members.getPermission() method to enable Features to work with restricted sites 2014-01-01 14:42:02 +00:00
2cb742024d * Added new static add() method to most of the prototypes doing all necessary stuff to create the desired object, updating it, adding it to the right collection etc.
* Disburdened constructor methods of most of the prototypes by moving most of the code to the new static add() method.
 * Added temporary debugging method HopObject.confirmConstructor() to log a warning whenever a constructor is directly called – in which case it should be checked if the static add() method is to be preferred.
 * Removed obsolete code in Poll.edit_action() method.
2012-05-12 13:50:41 +00:00
b5947d888a Changed way to invoke Feature.getPermission() by using Function.apply() with object instance and arguments array 2011-03-29 11:18:45 +00:00
52eda0b11b Reverted rendering of login et al. pages back from root to the current site 2011-03-28 18:40:19 +00:00
28808135d4 Refactored plugin handling:
* Removed “extras” code because I just forgot I already implemented a Feature prototype
 * Added global <% feature %> macro calling the main() method of the desired feature
 * Added Feature.getPermission() method which can be invoked from HopObject.getPermission()
 * Refactored connect feature to work with modified Feature prototype
2011-03-24 01:54:21 +00:00
91b45b3732 Implemented basic extra handling (ie. plug-ins in Antville):
* Added global app.data.extras collection and registerExtra() method
 * Defined res.handlers.extra in HopObject.onRequest() handler to provide extra macros
 * Implemented reCAPTCHA for anonymously contacting an Antville member as proof of concept
2011-03-23 13:35:02 +00:00
fe159c3112 Fixed bad security hole allowing anyone to reset a user’s password if the user id and e-mail address are known 2011-03-08 17:07:08 +00:00
dacaba9b3f * Implemented next attempt of a module framework called Features
* Added type argument to global formatDate() and format_filter() methods
 * Added JSON.js module
 * Added app.data.features collection
 * Fixed routine for salting passwords (probably due to jQuery upgrade)
 * Renamed Members.salt_js_action() method to Members.salt_txt_action()
2011-02-12 17:47:30 +00:00
1570f2bcf6 Updated code according to changes in Metadata handling 2011-02-10 23:51:17 +00:00
31f249fc79 Removed spambot honeypot input fields for good. Fixes issue 131. 2011-01-20 19:01:10 +00:00
1d27d412c8 * Removed obsolete modSorua code
* Removed redundant setting of res.handlers.sender in Members.add_action(); will be already done in Membership.notify()
2010-12-21 14:08:47 +00:00
ae44c39d6f * Heavily edited wording of gettext() calls in notification messages
* Removed numbered, footnote-like links in most of the noficitaion messages
 * Added prefix to subjects of notification mails (like “[Antville] ...”) for convenience
 * Added markgettext() calls for most of the prototype names and their plural forms – this time in each corresponding prototype file, though
 * Added options argument to global sendMail() method, currently only to switch inclusion of generic footer in mail body
 * Fix bug in Membership.contact_action() method when an unknown (i.e. unregistered or unsubscribed) user tries to send a message via contact form
 * Unified naming of notify skins (e.g. #notify_delete instead of #notify_deletion)
 * Updated and rebuilt i18n and message files
2010-05-24 13:32:40 +00:00
741b00c1ff Slightly modified wording 2010-04-25 20:36:43 +00:00
669f5fe550 Slightly modified wording of subscriptions views 2010-04-25 18:45:21 +00:00
90eac20152 Fixed bug causing subscriptions being displayed with the corresponding site’s locale instead of the current site’s one 2010-04-25 18:01:37 +00:00
b2be44fabf * Rewrote direct Database access in Archive.stories_macro(), Archive.getSize(), Archive.getFilter(), Members.search() and Root.mrtg_action() methods using the Sql prototype and trying to make the statements work in all MySql, PostgreSql and H2 databases
* Added default setting for root.replyTo when first setup is encountered in Root.main_action()
 * Renamed user table to account in User.properties (“user” is a reserved keyword in PostgreSql)
2010-01-20 14:28:17 +00:00
5523ab28d2 * Refactored Admin prototype by reducing interface, eliminating lenghty help texts and leaving out meaningless features
* Moved SITENOTIFICATIONPERIOD constant, health property as well as getFormOptions(), commitEntries(), commitRequests(), purgeReferrers(), invokeCallbacks(), updateHealth(), exportImport(), updateDomains(), queue() and dequeue() methods from Root to Admin prototype
 * Renamed Admin.purgeDatabase() method to Admin.purgeSites() and added code for automatic blocking/deletion of restricted/abandoned sites
 * Renamed Root.getScopes() method to Admin.getNotificationScopes()
 * Renamed User.getScopes() method to Admin.getCreationScopes()
 * Added Admin.getPhaseOutModes() method
 * Removed obsolete code
 * Fixed and renamed Admin.privateSites to Admin.restrictedSites collection
 * Finally added simple and reasonable quota implementation
 * Fixed gettext_macro() and ngettext_macro() with check for necessary arguments
 * Removed sender argument from global sendMail() method – instead, the root.replyTo property is used
 * Fixed some i18n messages
 * Moved code setting res.handlers.layout before permission check in HopObject.onRequest() to prevent broken layout in error screen
 * Completely rewrote HopObject.notify() method (hopefully fixing issue 49)
 * Check free disk space before invoking create_action() of Files and Images prototypes
 * Modified output of Membership.toString() method
 * Fixed some linebreaks in Membership.skin
 * Added option to set session.data.error for additonal information in $Root#error skin
 * Slightly modified output of $Root#health skin
 * Replaced Root.phaseOutInactiveSites and Root.phaseOutPrivateSites with Root.phaseOutMode
 * Removed qualifyingDate property from Root
 * Renamed Root.qualifyingPeriod property to Root.probationPeriod
 * Removed autoCleanupEnabled and autoCleanupStartTime properties from Root
 * Added replyTo property to Root
 * Rewrote Root.getCreationPermission() method
 * Added #notify_blocking and #notify_deletion skins to $Site.skin
 * Replaced Site.notifiedOfBlocking and Site.notifiedOfDeletion properties with Site.notified
 * Added Site.diskspace_macro() returning the free disk space in MB
 * Fixed bug in Site.main_action() causing erroneous display of deletion warning
2010-01-15 21:32:11 +00:00
32c52791fe * Refactored code and skins in respect for comprehensive i18n
* Refactored and unified remove() methods and calls for greater flexibility as well as reliability
 * Added option to remove all comments by a user to Comment.remove() method and $Comment#delete skin
 * Added global #listItemFlag skin as well as listItemFlag_macro() for rendering vertically written text of items in a list view (e.g. closed)
 * Fixed bug in gettext_macro() and ngettext_macro() causing incorrect whitespace
 * Refactored timezone and locale handling
 * Modified automatic translation of untitled links in HopObject.link_macro()
 * Added honeypot to login and registration forms
 * Fixed client-side JavaScript to be evaluated when login or registration form is submitted, not only when the submit button is clicked
 * Removed redundant filter expression from DB mapping of Membership.images collection
 * Added Membership.content collection
 * Changed terminology from open to running polls, thus renaming Polls.open_action() method and Polls.open collection
 * Moved a lot of CSS used in root or administration sections from Site#stylesheet to $Root#stylesheet skin
 * Added Root.updateDomains() method (most likely already obsolete)
 * Removed Root.processHref() method (only necessary for very advanced setup) and obsolete comments
 * Fixed Root.xgettext() method to correctly read UTF-8 encoded data
 * Fixed Site.deleted_macro() to return the date object for late formatting
 * Refactored Site.processHref() for more convenient custom domain name mapping
 * Renamed Skins.advanced_action() method to Skins.all_action()
 * Removed redundant filter from Stories.comments collection
 * Removed unnecessary filter from Story.comments collection
2010-01-10 14:40:36 +00:00
cca8f2c03a * Modified some res.data.title and res.messages assignments
* Added second argument to HopObject.remove() method; if set to true, any object will be removed without any checks for permissions or the like
 * Enhanced notfound and error screens
 * Removed obsolete Image.site property
 * Added missing LogEntry.remove() method
 * Added Site.deleted property
 * Fixed missing calls for remove() methods of some collections in Site.remove()
 * Added Root#stylesheet skin for future CSS classes necessary for GUI elements
 * Added missing Site.entries collection
 * Removed troublesome if condition in Skin.remove()
 * Generally deny access to Skin.main_action
 * Added missing Skin.getFormValue() method
 * Added check in Skin.update() if the Site#page skin contains the <% response.body %> macro 
 * Added Skins.onRequest() method checking if we are in-between two Skins objects
2009-12-13 22:29:21 +00:00
dcc9cbcfc8 * Added basic doctags to the code
* Removed obsolete code
2009-11-02 16:16:41 +00:00
fd653c4198 * Fixed tiny bug causing confusing display of subscriptions and privileges in Members prototype
* Modified site permissions to allow unsubscribing one site from within another. (It’s complicated, I know.)
2009-10-31 20:25:08 +00:00
d7d716fa95 * Updated text of $Admin#welcome skin (sites cannot be made the front page so easily, anymore)
* Added setup routine to Root.main_action() which is executed when there is an unconfigured root site or no privileged user (admin)
 * Modified $Image#edit skin: check for Image.fileName property insteaed of "created" when deciding whether to show the name and dimension input fields
 * Added missing res.data.title to $Members#register skin
 * Removed app.log() calls when catching login or registration exceptions
 * Added empty User.onLogout() method to get rid of some "errors" in the log file
 * Removed obsolete code
2008-09-21 17:44:18 +00:00
d44e34dd1d * Renamed User.pushLocation() method to User.setLocation() and User.popLocation() to User.getLocation()
* Modified location setting and getting to achieve adequate redirection after logging in, unsubscribing etc.
 * Removed obsolete code
2008-05-12 17:37:17 +00:00
e2a849b2cc * Simplified User.pushLocation() and User.popLocation() methods
* Added location pushing / popping to Members.login_action() method
2008-05-12 16:12:03 +00:00
86145cd8f7 * Added short text to Members.add_action()
* Changed order of roles in $Members.main skin
 * Removed obsolete addRepository() calls in Global.js
2008-05-12 14:04:33 +00:00
3e32e976db Fixed generic permission model to redirect to login page if anonymous user was not granted access 2008-05-08 17:05:51 +00:00
ab57de955f * Added static Skin.getByName() method
* Modified Skins.getSkin() method to make use of Skin.getByName()
 * Re-enabled controls in Tag#main skin
 * Cleaned up and reorganized code
 * Added some remarks to explain the most illicit code
 * Removed a lot of obsolete code
2008-05-02 21:33:40 +00:00
943d7ae4dc Fixed bug allowing anonymous users to create stories, files, images and polls as well as call various actions in Members 2008-04-27 09:10:31 +00:00
91def0b843 * For now only import layouts with exact the same version strings
* Fixed password reset feature: before any other action is taken a confirmation e-mail will be sent
2008-04-22 14:57:18 +00:00
239af7195b * Fixed list_macro (but still list rendering is really inconsistent throughout the whole application!)
* Fixed various b/w compatibility issues found in some sites
 * Fixed pager action in Images
 * Added confirmation dialog before resetting a layout
 * Added collection containing updated sites in reverse chronological order
 * Modified site listing (still work in progress)
 * Save site name as title if no title is entered
 * Removed some res.debug() calls
2008-04-21 20:46:29 +00:00
0d84e21291 Removed trailing semicolons after closing curly brackets for good (hopefully :) 2008-04-21 13:57:01 +00:00
124e6f4257 * Added protected skin files (currently prefixed with "$") that cannot be customized or overwritten by the user
* Removed obsolete skin files (ie. content moved to the protected skin file)
 * Moved contents of Messages.skins to their protected siblings
 * Prefixed notification skins (used in e-mails) with "notify_"
 * Fixed and simplified a whole bunch of issues in compatibility layer
2008-04-21 13:35:50 +00:00
487e4fc2b6 Fixed display of membership / subscription lists 2008-03-27 15:43:47 +00:00
4a201fa476 * Fixed name of Membership#listItem skin in Members prototype
* Fixed default permission in Membership prototype
2008-01-19 18:50:44 +00:00
0ba8805d02 * Fixed skin names according to issue #16
* Fixed rendering of values stored in res.meta.values
 * Removed obsolete code (mostly disabled by comments already)
2008-01-19 17:36:33 +00:00
9b7af5620a * Finally moved page.skin, stylesheet.skin and javascript.skin as subskins into Site.skin
* Disabled file tags for now
 * Renamed global renderPageNavigation() method to renderPager()
 * Added support for rendering the list of updated sites in global list_macro()
 * Fixed return point when cancelling a file edit action
 * Fixed nasty bug in deletion routine
 * Implemented sorting of values in Layout.values_macro()
 * Disabled layout title, description, origin and sharing for now
 * Renamed list_action() to sites_action() in Root prototype
 * Enabled filter of root site in default collection
 * Moved Root's list.skin as subskin in Root.skin
 * Added experimental Root.search_xml_action()
 * Renamed "unpublish" link to "close" in Story list
 * Reduced display of backlinks to last 24 hours
 * Removed obsolete skin files
2008-01-13 01:39:01 +00:00
adfef8a635 * Fixed permissions in Images, Layout, Skins and Tags prototypes
* Removed obsolete links in Images.skin
 * Added comment to Skin.js reminding of the inconsistency between renderSkin() and app.skinfilesInPath() methods
 * Disabled custom href() method in Skins prototype (still marked with FIXME)
 * Zapped a gremlin in Comments.js!
2008-01-11 21:09:44 +00:00
8b41993ced * Fixed debug code to be present in HTML output only
* Removed obsolete debug code
 * Added content type to JavaScript / CSS output
 * Moved client-side JavaScript code from Root/javascript.skin to static directory
 * Removed hack in Site.main_action() to provide jQuery
 * Added debugging CSS classes for skins
 * Fixed b/w compatible logo_macro()
 * Removed option to set a layout value in compatibility module
 * Call global link_macro() when argument in HopObject.link_macro() contains a colon (probably not sufficient)
2007-11-02 18:13:01 +00:00