Class: ArPage

Inherits:
ApplicationRecord
  • Object
show all
Includes:
ArPageConcern
Defined in:
app/models/ar_page.rb

Overview

Schema information

Table name: ar_page : Pages

id                 Integer           id
created_at           Time          created_at
updated_at           Time          Updated
subject              String        Articles subject
link                 String        Friendly link defined
alt_link             String        Alternative link, by which page could be found
sub_subject          String        Sub subject, short description of text
picture              String        Picture used in conjunction with page
gallery              Boolean       Picture gallery defined on page. Picture data is saved to document parts with id gallery.
body                 String        Content of this page
css                  String        CSS only for this menu page
script               String        Javascript only for this page
params               String        Special parameters which may come handy when displaying page
menu_id              Integer       Top menu under where this page is displayed
author_id            Integer       Author of the article
ar_poll_id           Integer       Select poll, if poll is to be used with page
author_name          String        Author of the article
publish_date         DateTime      Publish date
user_name            String        user_name
valid_from           DateTime      Article is valid from date
valid_to             DateTime      Article is valid to date
comments             Integer       Comments on this article are allowed
active               Boolean       Page is active
created_by           Integer       created_by
updated_by           Integer       updated_by
kats                 Array         Categories for this article
policy_id            Integer       Access policy for the page
ar_site_id           Object        ar_site_id
ar_design_id         Object        Design used for rendering page

ArPage documents are anchors for urls. Default ArApplicationController.ar_process_default_request() method searches for ArPage document by link, id or alt_link. When found it loads design document defined by design_id and renders view code defined by design.

Site owner has all control of how ArPage data is rendered by providing its own page renderer methods.

Every ArPage document may embed many ArPart documents. ArPart documents mostly contain fields with same names and functionality as ArPage fields. And may therefore represent whole subpage data system within single document. Clever programmer may provide data for whole web site in just one ArSite, one ArMenu, one ArDesign and one ArPage document (with some embedded documents). And since AgileRails runs multiple sites on single Rails instance by default it may run hundreds of small sites on single Ruby on Rails instance.