| Commit message (Collapse) | Author | Age |
| |
|
|
|
|
|
|
|
|
|
|
| |
improved the code/Doxygen comments.
As discussed before, the path "taxonomy/page/or/1,2" becomes "taxonomy/term/1+2" and the path "taxonomy/page/and/1,2" becomes "taxonomy/term/1,2". The most common case of listing nodes attached to a single term becomes simpler, since it doesn't require a meaningless "or" or "and". A depth of "0" is assumed, but a positive integer or "all" can be used. Feeds are available at "taxonomy/term/1+2/all/feed" and the like.
This iteration of the patch also changes the structure of taxonomy_select_nodes(), since it was not following Drupal conventions. A handful of contrib modules call this function, and will need to be updated. Instead of passing in a $taxonomy object containing parameters for the function, the parameters are passed independently. This simplifies the code quite a bit. The queries were changed to only return node IDs for speed; all results from this function are passed through node_load() anyway, so the extra information returned was discarded. The AND query was also changed to avoid the strange trick and remove an extra query, at the expense of a table join per root term in the AND. This cleans up the code substantially while at the same time enabling the use of AND with a depth parameter.
TODO: update contribution modules.
|
| |
|
|
|
|
| |
problems created by the new comment and node access permissions code.
|
|
|
|
| |
Replaced the use of ucfirst() with a CSS-based solution.
|
| |
|
|
|
|
|
|
| |
visibility.
- #9811: Remove session ID before matching block path
|
| |
|
|
|
|
| |
password.
|
| |
|
|
|
|
| |
individual node views inaccessible to users who should have permission. This does not affect node listings, so was missed.
|
|
|
|
| |
"delete foo," and "view foo" links into simply "edit," "delete," and "view".
|
| |
|
|
|
|
| |
is set to unlimited and fixed up some code comments.
|
|
|
|
| |
left-overs.
|
|
|
|
| |
able to use this patch too.
|
| |
|
|
|
|
| |
the point.
|
|
|
|
| |
attribute for links to provide a slightly more detailed explanation as to the purpose of a link or where it goes.
|
|
|
|
|
| |
+ the confirmation before deleting a comment was missing a check_output.
+ after editing a comment, two pages were shown (two calls to theme('page',..)), replaced this by a drupal_goto.
|
| |
|
|
|
|
| |
should be simplified more.
|
|
|
|
| |
in repeating the title).
|
| |
|
|
|
|
| |
to set book breadcrumbs for nodes that weren't books.
|
|
|
|
|
|
|
|
|
|
|
|
| |
which maintains a list of modules that have already been loaded in a static array, and will not load another module of the same name, or if the file does not exist.
Modules can be stored anywhere, as there is now a set of functions called module_get_filename, and module_set_filename .. which allow system_listing and module_list to specify the locations of the files.
A new function module_load_all() replaces the hardcoded includes in module_init, and loads all modules which have been enabled, using module_load.
module_listing no longer includes files itself, instead it just keeps the listing (and sets the filenames).
This patch is a requirement for the multisite configuration patch, as overriding modules are currently being loaded due to the only protection of loading them is include_once.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Here's a new patch that unifies the node/52 and book/view/52 paths for nodes. It involves a small change to hook_view(), which is discussed first:
Currently hook_view() expects node modules to return a themed node. However, each module does this the same way; they modify $node as necessary, then call theme('node', $node) and return the result. We can refactor this so that the calling function node_view() calls theme('node') instead. By doing this, it becomes possible for hook_nodeapi('view') to be called after hook_view() where the node contents are filtered, and before theme('node') where the body is enclosed in other HTML. This way the book module can insert its navigation into the body right before the theming.
Advantages of this refactoring:
- I can use it for book.module to remove the extra viewing path.
- The function of hook_nodeapi('view') becomes more like hook_view(), as neither will expect a return value.
- We more closely follow the flow of other nodeapi calls, which usually directly follow their corresponding specific node type hooks (instead of preceding them).
- The attachment.module people could use it to append their attachments in a list after the node.
- Gabor could use it instead of his filter perversion for his "articles in a series" module.
- A little less code in each view hook.
- The content hook is no longer needed, so that means even less code.
Disadvantages:
- Any modules written to use nodeapi('view') could be affected (but these would all be post-4.4 modules).
- Implementations of hook_view() would need to be updated (but return values would be ignored, so most would work without updates anyway).
Now the patch takes advantage of this API shift to inject its navigation at the end of all book nodes, regardless of the viewing path. In fact, since the paths become identical, I've removed the book/view handler entirely. We should probably provide an .htaccess rewrite for this (one is still needed for node/view/nn anyway). At the same time, there is a check in book_block() that shows the block appropriately on these pages.
|
| |
|
| |
|
| |
|
|
|
|
| |
GPL). The main benefit here is that timezones are handled properly (I have been noticing increasing complaints about that). I tested with a few feeds of different time formats and time zones and everything appeared correctly in my site's local time. Making this another function adds the benefit of parsability by other RSS (or other contexts) and RSS extension handling functions, where the W3C DTF is recomended.
|
| |
|
| |
|
|
|
|
| |
db_next_id().
|
| |
|
|
|
|
|
|
| |
Currently pager_query() is the black sheep of the database query family, because it does not allow for printf-style arguments to be inserted in the query. This is a problem because it introduces developer confusion when moving from an unpaged query to a paged one, and it encourages substitution of variables directly into the query, which can bypass our check_query() security feature.
This patch adds this ability to pager_query(). The change is backwards-compatible, but a couple calls to the function in core have been changed to use the new capability.
|
| |
|
|
|
|
|
| |
- #8193: Moving the two instances of the timezone list into a function.
- #3859: Adding drupal_goto for module/theme/settings pages. Aside from general drupal_goto usability, this fixes the bug of menu items not immediately appearing after enabling a module.
|
| |
|
| |
|
|
|
|
| |
else's account.
|
|
|
|
| |
if "user_register" was set to 0.
|
| |
|
|
|
|
| |
by adding a items column to the categories table which acts like the same column in the feeds table.
|
|
|
|
|
|
|
|
| |
blocks not to render any output. If I create a new menu and menu items, and then enable the block, no output from that block is visible.
This commit fixes the problem: custom menus were being defined as MENU_CUSTOM_ITEM rather than MENU_CUSTOM_MENU. It also fixes a problem in which custom menus were mistakenly given the MENU_VISIBLE_IN_BREADCRUMB bit when edited. This would cause their titles to show up in the breadcrumb (which is undesirable... only menu items should be in there).
Note that this will not fix any non-functioning custom menus you've defined since this bug appeared. You'll have to delete and recreate them or update the "type" column in the DB manually.
|
|
|
|
| |
page when a user has submitted a comment that goes into the moderation queue. Part of the problem seemed to be that the "your comment is in the moderation queue" message was set as a theme print, as opposed to a drupal_set_message(). This patch fixes that, as well as adding a drupal_goto() to redirect the user back to where they came.
|
|
|
|
| |
timestamp from {history}" SQL statement is executed multiple times in two different functions. This duplicated code should be placed in a function, and that's been done already with node_last_visited() - the remaining code was just never updated to use the new routine. This patch changes the old code to use node_last_visited, and also modifies node_last_visited() to cache the result of the database call.
|
|
|
|
|
|
|
|
|
| |
modules (and all occurrances elsewhere) to match their 4.4.x equivalents. In the discussion when these permissions were introduced, it was decided that "edit own ..." was clearer, but "maintain personal ..." slipped into CVS HEAD anyway, while "edit own ..." landed in the 4.4.x branch.
Changes are as follows:
"maintain personal blog" -> "edit own blog" (aggregator.module, blog.module, blogapi.module)
"maintain personal pages" -> "edit own pages" (page.module)
"maintain personal stories" -> "edit own stories (story.module)
|
|
|
|
|
| |
- Small usability improvement thanks to using drupal_goto() after deleting an
alias.
|