dr:classified
Differences
This shows you the differences between two versions of the page.
| Next revision | Previous revision | ||
| dr:classified [2010/09/17 20:24] – created fgm | dr:classified [2020/11/23 17:23] (current) – external edit 127.0.0.1 | ||
|---|---|---|---|
| Line 4: | Line 4: | ||
| Download or clone from http:// | Download or clone from http:// | ||
| + | |||
| + | ===== Battle plan for multiple node types ===== | ||
| + | < | ||
| + | <div class=" | ||
| + | < | ||
| + | <p>As per #195494, the goal is to support multiple node types.</ | ||
| + | <ul> | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | fields by a proper field</ | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | automatically be identified by the presence of an instance of the | ||
| + | expiration field</ | ||
| + | </ul> | ||
| + | |||
| + | < | ||
| + | < | ||
| + | and < | ||
| + | <ul> | ||
| + | < | ||
| + | < | ||
| + | <ul> | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | </ul> | ||
| + | </li> | ||
| + | </ | ||
| + | |||
| + | < | ||
| + | < | ||
| + | fields.</ | ||
| + | < | ||
| + | the new custom view mode introduced in 7.3. With multiple node types, this | ||
| + | is no longer doable so we replace these lists by taxonomy-filtered views.</ | ||
| + | |||
| + | < | ||
| + | |||
| + | <ul> | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | sub-category links, and breadcrumbs generation. This is likely to | ||
| + | involve attached views and/or new specific handlers.</ | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | </ul> | ||
| + | |||
| + | < | ||
| + | <ul> | ||
| + | < | ||
| + | < | ||
| + | </ul> | ||
| + | |||
| + | < | ||
| + | < | ||
| + | expires generation and update. This needs to be adapted for the additional | ||
| + | complexity of a field over an extra field. Existing node form hooks and | ||
| + | handlers must be replaced by field hooks since we no longer know which forms | ||
| + | to intercept.</ | ||
| + | |||
| + | < | ||
| + | <p>A number of users have expressed frustration at the lack of i18n support | ||
| + | in the module. Switching the extra fields to a field and the custom lists | ||
| + | to Views will help with this. New code should be i18n-compatible, | ||
| + | later changes can bring full i18n compliance</ | ||
| + | |||
| + | < | ||
| + | < | ||
| + | increase towards 100% C0.</ | ||
| + | |||
| + | <ul> | ||
| + | < | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | < | ||
| + | < | ||
| + | The move from an extra field to a normal field is in the right direction. Other significant | ||
| + | changes regard code placement outside the module file and the use of | ||
| + | autoloaded namespaced classes, one per file.</ | ||
| + | |||
| + | <ul> | ||
| + | < | ||
| + | methods</ | ||
| + | < | ||
| + | < | ||
| + | usable at the admin level by exposing it as a core action, typically for | ||
| + | the user or node entities</ | ||
| + | < | ||
| + | to apply PSR-0, or declare classes the D7 way, manually in the info file.</ | ||
| + | </ | ||
| + | </ | ||
| + | </ | ||
| + | | ||
| + | ===== Services provided by the module ===== | ||
| + | |||
| + | - 1 specific vocabulary: `classified_categories`, | ||
| + | - 1 specific node type: `classified` equipped with | ||
| + | - a taxonomy_term_reference field pointing to the module vocabulary | ||
| + | - a body field | ||
| + | - 3 blocks: | ||
| + | - recent ads (public) | ||
| + | - popular ads (public) | ||
| + | - ad stars (admin) | ||
| + | - 1 Context Condition plugin | ||
| + | - 1 CTools " | ||
| + | - 2 permissions | ||
| + | - `administer classified ads` | ||
| + | - `reset classified ads expiration` | ||
| + | - 2 extra fields | ||
| + | - `expires_fs`: | ||
| + | - `expires`: a display extra field formatting the expiration date for ad nodes | ||
| + | - 1 notifications submodule: send notifications | ||
| + | - at half-life | ||
| + | - before|on expiration | ||
| + | - before|on purge | ||
| + | - 3 drush commands | ||
| + | - `classified-purge` to purge expired nodes | ||
| + | - `classified-expire` to expire nodes | ||
| + | - `classified-notify` to send notifications | ||
| + | - 1 custom view mode for `node` | ||
| + | - 2 menu loaders | ||
| + | - notify kind | ||
| + | - taxonomy term, only accepting terms from the module vocabulary | ||
| + | - 3 user tokens | ||
| + | - `[classified-ads]` themed list of user ads | ||
| + | - `[classified-ads-plain]` raw list of user ads | ||
| + | - `[classified-ads-url]` url of a user's ads list | ||
| + | - 2 theme items | ||
| + | - `classified_admin_lifetimes` | ||
| + | - `classified_expires` for the `expires` extra field | ||
| + | - 1 field formatter for term_reference fields, linking to the per-term ad list instead of the default term page, with an optional link title | ||
| + | - node form logic | ||
| + | - handle the extra field | ||
| + | - provide fieldset-level access control for expiration type | ||
| + | - maxlength JS | ||
| + | - auto-hiding manual expiration date when irrelevant | ||
| + | - node access logic | ||
| + | - requirements logic | ||
| + | - detect incompatible older version | ||
| + | - detect missing Statistics module | ||
| + | - detect misconfigured Statistics module | ||
| + | - detect non-tree hierarchy in the module vocabulary | ||
| + | - taxonomy change logic for terms and vocabularies | ||
| + | - URL outbound rewriting logic to redirect term links to ad lists when applicable | ||
| + | - Views integration logic | ||
| + | - expose virtual fields: | ||
| + | - `expires`: field, sort, filter | ||
| + | - `purge`: field | ||
| + | - 1 field handler for `purge` | ||
| + | - default views logic scanning the `views/` folder, but no views provided | ||
| + | - configuration variables | ||
| + | - `classified-max-length` for the maxlength JS | ||
| + | - `classified-list-body` List display format | ||
| + | - `classified-edit-modr8` (obsolete) modr8 integration | ||
| + | - `classified-lifetime-default` default lifetime | ||
| + | - `classified-lifetime-< | ||
| + | - `classified-grace` grace delay before purge | ||
| + | - 100% S0 Simpletest coverage | ||
| + | - pages | ||
| + | - an overview page | ||
| + | - term pages listing ads and ad counts | ||
| + | - per-user ads profile tab page | ||
| + | - 7 advanced help pages | ||
| + | - custom CSS | ||
| + | - specific formatting for `expires` | ||
| + | - advanced help improvements | ||
| + | - ads list custom formats | ||
| + | |||
| ===== OK Paths ===== | ===== OK Paths ===== | ||
dr/classified.1284755059.txt.gz · Last modified: (external edit)
