Commit graph

77 commits

Author SHA1 Message Date
5888797569 Added URL keyword to svn:keywords property 2011-02-23 16:24:32 +00:00
14cc9a6988 Rewrote Metadata prototype for more efficient database handling:
* Metadata is now written to its own table instead of a column only
 * Values are saved as JSON-like structure only for certain types (like Array or Function)
 * Adding custom metadata is more generic using the new HopObject methods setMetadata(), getMetadata() and deleteMetadata()
 * Searching keys and values via common SQL query is much more straightforward (no JSON-like structure involved when basic types like String and Number)
2011-02-10 23:35:00 +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
9917068dc7 * Modified order of actions in item list views
* Slightly modified the message informing about successful deletion of an object
 * Fixed type when calling Membership.remove() in Site.unsubscribe_action() method
 * Fixed bug causing exception when calling Membership.remove() method with no arguments
 * FIxed still incorrect permissions for editing and deleting a membership
2010-04-26 00:22:20 +00:00
12309653a5 * Decentralized markgettext() calls by moving them from i18n.js to the places where the messages actually are defined
* Added markgettext_macro()
 * Readjusted Admin.dropdown_macro() and the global defineConstants() methods to work with the modified markgettext() calls
 * Updated Members.properties and added SQL patch for lowercasing all membership status due to the modified margettext() calls
 * Added Membership.role_macro() as convenience method
 * Removed syntactic sugar from HopObject.link_macro() and moved it to the compatibility layer to prevent current layouts from breaking
 * Removed obsolete permission for non-existing Image.replace_action()
2010-04-25 17:31:44 +00:00
356364bda3 * Added Site.comments collection and use it in $Admin#editSite skin. Fixes issue 89.
* Modified default sorting of user list in $Admin#users skin. Fixes issue 70.
 * Added property argument to HopObject.self_macro() to allow access to subnodes of the HopObject
 * Replace macros directly accessing HopObject subnodes with <% this.self property %> ones
 * Reverted changes made in r4026
2010-04-02 12:45:27 +00:00
896f5daf28 * Added Membership.comments collection to fix a bug causing display of the number of comments of a user throughout the whole installation instead of those of the member of the site only
* Replaced custom SQL query in Comment.remove() with code using new Membership.comments collection
 * Removed obsolete Sql.COMMENTS statement
 * Added getConfirmText() method to Comment, File, Image, Layout, Membership, Poll, Skin and Story prototypes – which is used in HopObject.delete_action() for more convenient feedback about what is going to be deleted (fixes issue 37 for now)
 * Fully enabled translation in global breadcrumb_macro()
 * Removed obsolete Layout.getTitle() method
 * Disabled translation in HopObject.toString() methods
 * Fixed and added some i18n messages to ease translation
2010-02-06 15:13:39 +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
c4fcb7ec80 * Replaced custom code in Poll.remove() and Choice.remove() with call for HopObject.remove()
* Extended HopObject.remove() to automatically remove nodes with their prototype’s remove() method if no options are given
2010-01-10 16:29:37 +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
b86ea5c736 * Modified SQL statements for compatibility with H2 database (experimental)
* Hopefully fixed redirect loop bug of XSS check in HopObject.onRequest()
 * Added Root.xgettext() method as a more reliable way of extracting gettext call strings (esp. from skins)
2009-11-01 11:22:33 +00:00
517f6ce067 * Added various fixes for issues observed in the event log of Antville.org
* Added ugly hack for providing support of rssCloud and PubSubHubbub in XML feeds
2009-09-30 09:48:23 +00:00
Philipp Naderer
9111aefcdd Added tobi's fix from Minnegard. 2009-05-15 20:44:55 +00:00
444371b9b4 * Fixed bug caused by null value of "name" parameter in HopObject.getFromPath()
* Removed work-around for Helma bug #625 in HopObject.getFromPath()
2008-12-15 14:20:48 +00:00
7444d1b227 * Replaced <% comment.created %> with <% comment.creator %> macro in <% if %> macro of Comment#edit skin (fixes issue #27)
* Wrapped display of creation and modification dates in <% if %> macros in Comment#edit skin
 * Slightly reduced code in global formatDate() method
 * Modified HopObject.created_macro() to prevent creation dates of  transient objects from being displayed or formatted incorrectly
 * Modified HopObject.modified_macro() accordingly
 * Added width attribute to CSS definition for fieldset elements
 * Reduced macro code in Story#edit skin
2008-12-11 18:08:51 +00:00
11685b4818 * Removed translations of most special characters in HopObject.getFromPath() except for ampersand which still is an issue due to Helma bug #625 (reopened)
* Unified HopObject.created_macro() and HopObject.modified_macro()
2008-10-02 18:11:14 +00:00
3d8ad6984c * Renamed app.data.log to app.data.entries
* Renamed Root.commitLog() method to Root.commitEntries()
2008-06-15 17:42:49 +00:00
94a6a87c84 * Renamed app.data.referrers to app.data.log
* Renamed Root.commitReferrers() method to Root.commitLog()
2008-06-15 17:22:44 +00:00
c0d9c5cee1 Fixed output of macro code for global skins 2008-06-04 10:19:17 +00:00
1aa5e7f25e * Rounded up LogEntry
* Slightly modified #referrer and #referrers skins of Site and Story
2008-05-15 13:02:50 +00:00
af8b05d1bd * Added HopObject.log() method currently caching referrers of story and site requests
* Modified LogEntry to fit into the new logging mechanics
 * Added commitRequests(), commitReferrers() and purgeReferrers() to Root prototype
 * Added referrers collection to Root
 * Re-added Site.spamfilter property for now
 * Refactored Site.referrers_macro() and Story.referrers_macro() (formerly backlinks_macro, but compatibility is granted)
 * Removed obsolete method Stories.flushRequests()
 * Reactivated referrers (thus, including backlinks) for privileged users for testing purposes
 * Added global nightly() method which is called from a new cronjob at 5 am
 * Added calls for referrer purge and commit methods in Root to scheduler
 * Added Story.count() method to increment the request counter; overwrites Helma's built-in HopObject method but it's anyway redundant with HopObject.size()
 * Added utility methods for database access in Sql.js
2008-05-15 12:58:26 +00:00
9923a0e0e7 Added ugly work-around for Helma bug #625 2008-05-13 14:13:51 +00:00
b3ffe1acb6 Enabled viewing of skin sources of root site (other sites will probably follow) 2008-05-13 12:06:28 +00:00
1112dc1395 * Grant full site access to privileged users
* Removed obsolete code
2008-05-12 18:08: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
7ce924ead0 * Fixed res.handlers.membership when sending notifications
* Removed obsolete code
2008-05-12 15:06:20 +00:00
aed81e62b1 * Fixed permissions for authenticated users to create images, files and polls in open sites
* Fixed name of list item skin in Poll prototype
 * Fixed fallback to _id property in HopObject.macro_macro() method
 * Fixed bug in Membership.getPermission() method causing a subscriber getting the "Owner is not allowed to unsubscribe" error message when trying to unsubscribe from a site
 * Removed relics of tests with ColourMod jQuery plugin in Site#page skin
2008-05-12 11:33:53 +00:00
6b00ab1fc7 * Fixed bug that caused exception and database mess when trying to rename a tag to the same name
* Additionally, added checks to avoid inaccessible tag names
2008-05-10 10:33:17 +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
62dae28c06 * Re-implemented alphanumeric (and even more) names for files and images; hopefully, catching all the troublesome characters which put at risk correctly writing to and reading from disk as well as accessing by URL
* Added File.getName() method removing any characters troubling the file system or the web server
 * Slightly modified global quote() method to wrap a string in double quotes (") if it contains any non-word or non-digit character
 * Set Story.name to empty string by default (until we do something with it :)
2008-05-02 18:06:05 +00:00
dff39778a6 * Added check if remove() method exists in a prototype's constructor
* Fixed bug that caused exception when calling Layout.reset() due to undefined main skin of a third-party prototype (e.g. Feed)
2008-04-27 10:54:07 +00:00
b006cbdf0b * Fixed formatDate() method
* Extended HopObject.modified_macro to return the date object if no format pattern can be applied (good?)
2008-04-22 15:20:10 +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
29ca787190 * Added RSS output for tagged stories
* Fixe paging of tagged items
 * Fixed permissions of Archive when archive mode is "closed"
 * Fixed global breadcrumbs_macro for Root
 * Fixed default value for pageSize in site preferences to reset to the stored value if available
 * Reactivated Skins.safe_action
 * Removed debugging code
2008-04-16 18:03:41 +00:00
d18a5b95fc * Added extra HopObject.skin_macro rendering subskins by default
* Renamed Skin.restore_action to reset_action
 * Trimmed skin sources before writing them to file
 * Slightly improved skin handling code
 * Removed obsolete code
2008-04-15 22:02:29 +00:00
578fcfc03a * Replaced relic of setContent() with setMetadata() in Comment.js
* Added $Global.skin as first attempt to move certain skins in a namespace protected from customization
 * Very much improved image editor interface
 * Thoroughly fixed and tested image upload, fetching, thumbnail generation and replacement
2008-04-15 15:01:20 +00:00
98fbd6158b * Edited messages
* Removed obsolete lines from app.properties
 * Re-enabled setting of res.skinpath in HopObject.onRequest
 * Fixed images collection in Tag prototype
2008-04-12 18:55:08 +00:00
84492cc922 * Modified HopObject.link_macro() to automatically capitalize the default link text
* Added global i18n.js file containing markgettext() calls
 * Wrapped messages with gettext macros wherever found missing
 * Moved contents of remaining diff skin files to Skin.skin
 * Removed Layouts prototype
 * Removed obsolete files
2008-03-27 15:10:31 +00:00
e72cf84ce4 * Fixed gettext call in HopObject.delete_action
* Renamed HopObject#delete skin to #confirm
 * Added client-side code for adding layout values
 * Improved skin management (compare aka diff is available again!)
2008-03-21 22:16:54 +00:00
dff9ab34c2 Removed debugging code 2008-03-17 19:47:34 +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
e94340c279 * Simplified redirecting to anchored comments by removing the custom href() method and fixing the URL in the main_action() only
* Added option to retrieve the redirect URL from the static remove() method of a prototype
 * Added Layout.getMacroHandler() method to enable linking the Skins prototype from here
 * Fixed the (in)correct spelling of req.data.referer in the LogEntry() constructor method
 * Fixed referrer display by correcting the skin name for the referrer item and the variable name for the referrer count
 * Fixed link to galleries (ie. image tags)
 * Fixed output of RSS feed when there's no site tagline
 * Disabled moderated comments for now
 * Modified permission check for displaying tags to always refer to the site's permissions
2008-01-11 23:46:44 +00:00
0f44265d26 * Moved setTags(), addTag() and removeTag() from Story to HopObject prototype
* Added HopObject.getTags() method which returns the list of an object's tags as array
 * Fixed TagHub.skin to always display the skin corresponding to the tagged object
2008-01-09 22:21:40 +00:00
36cc8c32a8 * Removed module-related methods (module engine will be rewritten from scratch)
* Fixed searching for empty/null string (ie. no form data)
 * Removed inherited methods in Root prototype of compatibility layer
 * Fixed compatibility methods of Skin and Topics prototypes
 * Fixed most compatibility methods of Root, Site and Story prototypes
2008-01-06 00:47:19 +00:00
65359c0482 * Improved HopObject.link_filter() method to fallback to main action by default - unlike HopObject.link_macro()
* Added missing cases for Tags and Root prototypes in Images.getPermission() and Images.main_action()
 * Extended Story.url_filter() to display files as link followed by the host in brackets
 * Renamed type.properties to ImageMgr.properties in compatibility layer
 * Fixed most compatibility methods of File, HopObject, Image, Members, Membership, Metadata prototypes
 * Fixed a few compatibility methods in Root, Site and Story prototypes
 * Fixed creation of Image.thumbnailName in updater
 * Added setting of Image.contentType in updater
 * Fixed creation of thumbnail information in SQL for image conversion
 * Added target to create log table in case ACCESS_LOG is too big to be dumped from original database
2008-01-05 17:57:39 +00:00