-
Notifications
You must be signed in to change notification settings - Fork 7
Module.article
Hossein Azizabadi edited this page Jul 19, 2013
·
7 revisions
I use some of added options by linzongshu too
-
Article
- Operation
- Create draft
- Title/Sub title
- Setting category
- Multi category
- Setting channel
- Multi channel
- Published at fix time
- Setting SEO
- Setting tags
- Inserting photos
- Featured image ?
- Support Attach extra files
- Video files : play on player under article
- Audio files : play on player under article
- Image files : Show as gallery under article
- Others : download
- Support extra fields
- Add Tag
- Select related articles
- Save draft
- Pending
- Publish
- Preview
- Create draft
- Management
- Searching
- Edit article
- Delete article
- Active/Deactivate article
- Operation
-
Category
- Operation
- Add category
- Set permissions
- Read
- Write
- Comment
- vote
- Set view options
- Select list of articles template
- News type
- List type
- Table type
- Media type
- Spotlight type
- Select fields
- Show date
- Show hits
- Show author
- Show topic
- Show topic informations
- And more
- Select list of articles template
- Set list of articles type * List of all article from topic and all sub category * List of all articles from just main category * List of all articles from just sub category
- Set sub category
- Set title / information / image
- Set permissions
- Add category
- Management
- Edit category
- Delete category
- Searching
- Operation
-
Spotlight
- Operation
- Add category
- Select article
- Select category (Show article to this category)
- Set publish time
- Set expire time
- Set status
- Add category
- Management
- Edit Spotlight
- Delete Spotlight
- Searching
- Operation
-
Extra field
- Operation
- Add Extra field
- Set title
- Set image / logo
- Set type ('text'| | |'link'| | |'currency'| | |'date'| | |'number'| | | ?)
- Set searchable or not
- Add Extra field
- Management
- Edit Extra field
- Delete Extra field
- Change order
- Operation
-
Attach
- Operation
- Add Attach ( Unser article or Attachment page)
- Management
- Edit Attach
- Delete Attach
- Operation
-
Homepage
- link
** Description ** For join each article to some category ( multicategory system ), This is most important table on article module and all querys make on this table. for get any list of article by date / hit / vote and ... , we shuld use this table for get article list , after that get full actilce inforamtion from article table
name | type | property | default value | description |
---|---|---|---|---|
id | int (10) unsigned NOT NULL auto_increment | |||
story | int(10) unsigned NOT NULL | |||
topic | int(10) unsigned NOT NULL | |||
publish | int(10) unsigned NOT NULL | |||
status | tinyint(1) unsigned NOT NULL | |||
author | int(10) unsigned NOT NULL |
- article
name | type | property | default value | description |
---|---|---|---|---|
id | int(10) | unsigned NOT NULL auto_increment | ||
title | varchar(255) | NOT NULL | ||
subtitle | varchar(255) | NOT NULL | ||
category | varchar(255) | NOT NULL | Save as json for just use on article page | |
short | text | |||
body | text | |||
markup | ENUM('html','text','markdown') | html | ||
seo_title | varchar(255) | NOT NULL | ||
seo_keywords | varchar(255) | NOT NULL | ||
seo_description | varchar(255) | NOT NULL | ||
slug | varchar(255) | NOT NULL | ||
important | tinyint(1) | unsigned NOT NULL | Or recommended | |
status | tinyint(1) | unsigned NOT NULL | ||
time_create | int(10) | unsigned NOT NULL | ||
time_update | int(10) | unsigned NOT NULL | ||
time_publish | int(10) | unsigned NOT NULL | ||
author | int(10) | unsigned NOT NULL | ||
hits | int(10) | unsigned NOT NULL | ||
image | varchar(255) | NOT NULL | ||
image_path | varchar(16) | NOT NULL | Make page by year/month | |
comments | int(10) | unsigned NOT NULL | Get information form comment module | |
point | int(10) | NOT NULL | Get information form vote module ( dont set unsigned ) | |
count | int(10) | unsigned NOT NULL | Get information form vote module | |
favorite | int(10) | unsigned NOT NULL | Get information form favorite module | |
attach | tinyint(3) | unsigned NOT NULL | Count of attached files if > 0 get list | |
extra | tinyint(3) | unsigned NOT NULL | Count of extra fields if > 0 get list | |
related_type | tinyint(3) UNSIGNED NOT NULL | DEFAULT 0 | ||
pages | tinyint(3) UNSIGNED NOT NULL | DEFAULT 0 |
- draft
name | type | property | default value | description |
---|---|---|---|---|
id | int(10) | unsigned NOT NULL auto_increment | ||
article | int(10) UNSIGNED NOT NULL | |||
title | varchar(255) | NOT NULL | ||
subtitle | varchar(255) | NOT NULL | ||
category | varchar(255) | NOT NULL | Save as json for just use on article page | |
short | text | |||
body | text | |||
markup | ENUM('html','text','markdown') | html | ||
image | varchar(255) | NOT NULL | ||
image_path | varchar(16) | NOT NULL | Make page by year/month | |
author | int(10) | unsigned NOT NULL | ||
pages | tinyint(3) UNSIGNED NOT NULL | DEFAULT 0 | ||
category | varchar(255) | NOT NULL | Save as json for just use on article page | |
tag | varchar(255) NOT NULL | |||
related_type | tinyint(3) UNSIGNED NOT NULL | DEFAULT 0 | ||
seo_title | varchar(255) | NOT NULL | ||
seo_keywords | varchar(255) | NOT NULL | ||
seo_description | varchar(255) | NOT NULL | ||
slug | varchar(255) | NOT NULL | ||
time_create | int(10) | unsigned NOT NULL | ||
time_update | int(10) | unsigned NOT NULL | ||
time_publish | int(10) | unsigned NOT NULL | ||
time_save | int(10) | unsigned NOT NULL | ||
important | tinyint(1) | unsigned NOT NULL | Or recommended | |
status | tinyint(1) | unsigned NOT NULL |
- category
name | type | property | default value | description |
---|---|---|---|---|
id | int(10) | unsigned NOT NULL auto_increment | ||
left | int(10) UNSIGNED NOT NULL | |||
right | int(10) UNSIGNED NOT NULL | |||
depth | int(10) UNSIGNED NOT NULL | |||
title | varchar(255) | NOT NULL | ||
slug | varchar(255) | NOT NULL | ||
body | text | |||
markup | ENUM('html','text','markdown') | html | ||
image | varchar(255) | NOT NULL | ||
image_path | varchar(16) | NOT NULL | ||
keywords | varchar(255) | NOT NULL | ||
description | varchar(255) | NOT NULL | ||
author | int(10) | unsigned NOT NULL | ||
time_create | int(10) | unsigned NOT NULL | ||
status | tinyint(1) | unsigned NOT NULL | ||
inlist | tinyint(1) | unsigned NOT NULL | default '1' | |
topic_type | enum('module','topic') NOT NULL | |||
topic_homepage | enum('type1','type2','type3') NOT NULL | |||
topic_style | varchar(64) | NOT NULL | ||
perpage | tinyint(3) | unsigned NOT NULL | ||
columns | tinyint(3) | unsigned NOT NULL | ||
show_topic | tinyint(1) | unsigned NOT NULL | default '1' | |
show_topicinfo | tinyint(1) | unsigned NOT NULL | default '1' | |
show_author | tinyint(1) | unsigned NOT NULL | default '1' | |
show_date | tinyint(1) | unsigned NOT NULL | default '1' | |
show_pdf | tinyint(1) | unsigned NOT NULL | default '1' | |
show_print | tinyint(1) | unsigned NOT NULL | default '1' | |
show_mail | tinyint(1) | unsigned NOT NULL | default '1' | |
show_nav | tinyint(1) | unsigned NOT NULL | default '1' | |
show_hits | tinyint(1) | unsigned NOT NULL | default '1' | |
show_coms | tinyint(1) | unsigned NOT NULL | default '1' |
- spotlight
name | type | property | default value | description |
---|---|---|---|---|
id | int(10) unsigned NOT NULL auto_increment | |||
story | int(10) unsigned NOT NULL | |||
topic | int(10) NOT NULL | |||
author | int(10) unsigned NOT NULL | |||
publish | int(10) unsigned NOT NULL | |||
expire | int(10) unsigned NOT NULL | |||
status | tinyint(1) unsigned NOT NULL | default '1' |
- attach
name | type | property | default value | description |
---|---|---|---|---|
id | int (10) unsigned NOT NULL auto_increment | |||
title | varchar (255) NOT NULL | |||
file | varchar (255) NOT NULL | |||
path | varchar(16) NOT NULL | |||
story | int(10) unsigned NOT NULL | |||
create | int(10) unsigned NOT NULL | |||
size | int(10) unsigned NOT NULL | |||
type | enum('archive','image','video','audio','pdf','doc','other') NOT NULL | |||
status | tinyint(1) unsigned NOT NULL | |||
hits | int(10) unsigned NOT NULL |
- extra field
name | type | property | default value | description |
---|---|---|---|---|
id | int (10) unsigned NOT NULL auto_increment | |||
title | varchar (255) NOT NULL | |||
image | varchar (255) NOT NULL | |||
type | enum('text','link','currency','date','number') NOT NULL | |||
order | int(10) unsigned NOT NULL | |||
status | tinyint(1) unsigned NOT NULL | default '1' | ||
search | tinyint(1) unsigned NOT NULL | default '1' |
- extra field data
name | type | property | default value | description |
---|---|---|---|---|
id | int (10) unsigned NOT NULL auto_increment | |||
field | int(10) unsigned NOT NULL | |||
story | int(10) unsigned NOT NULL | |||
data | varchar(255) NOT NULL |
- related
name | type | property | default value | description |
---|---|---|---|---|
id | int(10) UNSIGNED NOT NULL AUTO_INCREMENT | |||
article | int(10) UNSIGNED NOT NULL | |||
related | int(10) UNSIGNED NOT NULL | |||
order | tinyint(3) UNSIGNED NOT NULL |
- visit
name | type | property | default value | description |
---|---|---|---|---|
id | int(10) UNSIGNED NOT NULL AUTO_INCREMENT | |||
article | int(10) UNSIGNED NOT NULL | |||
date | int(10) UNSIGNED NOT NULL | |||
count | int(10) UNSIGNED NOT NULL |
- author
name | type | property | default value | description |
---|---|---|---|---|
id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT | ||||
name` varchar(64) NOT NULL | ||||
photo` varchar(255) NOT NULL | ||||
description` text NOT NULL | ||||
uid | int(10) UNSIGNED NOT NULL | |||
count | int(10) UNSIGNED NOT NULL |
- statistics
name | type | property | default value | description |
---|---|---|---|---|
id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT | ||||
article | int(10) UNSIGNED NOT NULL | |||
visits | int(10) UNSIGNED NOT NULL | |||
vote | varchar(255) NOT NULL |
-
User side
-
Index
- Description : list of articles for index
- class Structure
- class IndexController extends ActionController
- Actions
- index action
- Check permition
- Check configs
- Check params
- Set query informtion ( Make query by : IndexController::Articlelist )
- Set paginator informtion ( Make query by : IndexController::ArticlePaginator )
- Set Spotlight
- Set view
- Articlelist action
- Check configs
- Make settings
- Get list of arctiles from link table
- Get article information from article table
- ArticlePaginator action
- index action
-
Category
- Description : list of articles for each category
- class Structure
- class CategoryController extends IndexController
- Actions
- index action
- Check permition
- Check configs
- Check params
- Set query informtion ( Make query by : IndexController::Articlelist )
- Set paginator informtion ( Make query by : IndexController::ArticlePaginator )
- Set Spotlight
- Set view
- ListCategory action
- Get list of all categoryes
- Set view
- index action
-
Tag
- Description : list of articles for each tag ( get from tag module )
- class Structure
- class TagController extends IndexController
- Actions
- index action
- Check permition
- Check configs
- Check params
- Set query informtion ( Make query by : IndexController::Articlelist )
- Set paginator informtion ( Make query by : IndexController::ArticlePaginator )
- Set Spotlight
- Set view
- ListTag action
- Get list of all article module tags from tag module
- Set view
- index action
-
Author
- Description : list of articles for each author
- class Structure
- class AuthorController extends IndexController
- Actions
- index action
- Check permition
- Check configs
- Check params
- Set query informtion ( Make query by : IndexController::Articlelist )
- Set paginator informtion ( Make query by : IndexController::ArticlePaginator )
- Set Spotlight
- Set view
- ListAuthor action
- Get list of all Author
- Set view
- index action
-
Favorite
- Description : list of favorite articles by each user ( get from tag favorite )
- class Structure
- class FavoriteController extends IndexController
- Actions
- index action
- Check permition
- Check configs
- Check params
- Set query informtion ( Make query by : IndexController::Articlelist )
- Set paginator informtion ( Make query by : IndexController::ArticlePaginator )
- Set Spotlight
- Set view
- index action
-
Archive
- Description : list of articles by selected date
- class Structure
- class ArchiveController extends IndexController
- Actions
- index action
- Check permition
- Check configs
- Check params
- Set query informtion ( Make query by : IndexController::Articlelist )
- Set paginator informtion ( Make query by : IndexController::ArticlePaginator )
- Set Spotlight
- Set view
- ListDate action
- Get list of years and months
- Set view
- index action
-
Article
- Description : show / print / submit article
- class Structure
- class ArticleController extends ActionController
- Actions
- index action
- Check permition
- Check configs
- Check params
- Get article
- Get all attach files
- Get all extra data
- Get all related
- Set view
- print action
- Check permition
- Check configs
- Check params
- Make printable verion
- Set view
- submit action ( If needed )
- Check permition
- Check configs
- Check params
- Get submit form
- Set view
- index action
-
-
Admin aide
-
Link Api
- LinkSet : Set articles on link table
- LinkGet : get list of articles by category id
-
Article Api
- ArticleCategoryList : Get all category information of this article
- ArticlePager : Get next and prev acticles
- Articlepage : Make multy page article
- ArticleRelatedList : Get related articles
-
Attach Api
- AttachCount : Get count of attached files
- AttachList : Get List of attached files
- AttachAdd
- AttachDelete
-
Extra Api
- ExtraCount : Get count of extra fields
- ExtraGet : Get list of extra fields for show in forms
- ExtraSet : Save extra field datas to DB
- ExtraForm : Get and Set extra field data valuse to form
- ExtraArticle : Get all extra field data for selected article
-
Spotlight Api
- SpotlightList : make Spotlight list for homepage and each category
-
Category Api
- CategorySetting : Set page setting from topic or module config
- Column : Set column class for Setting function
- Template : Set template for Setting function
- CategorySet : Set article categoryes to link table
- CategoryGet : make list and information of categorys for load articles ides from link table
- CategorySetting : Set page setting from topic or module config
-
Author Api
- AuthorAdd : Add article and update Author
- AuthorDelete : Delete article and update Author
- AuthorReset : Reset author information