23
Rules Yaroslav Doroshuk http:// donetsk.drupal.ua

Rules - Yaroslav Doroshuk

Embed Size (px)

Citation preview

Page 1: Rules - Yaroslav Doroshuk

Rules

Yaroslav Doroshuk

http://donetsk.drupal.ua

Page 2: Rules - Yaroslav Doroshuk

Ruleshttp://drupal.org/project/rules

Page 3: Rules - Yaroslav Doroshuk

Data selection

Page 4: Rules - Yaroslav Doroshuk

Loops

Page 5: Rules - Yaroslav Doroshuk

Examples

Page 6: Rules - Yaroslav Doroshuk

Mark as spam• Flag (Mark as spam)• Rules:oUnpublish spam commentoBlock spammeroNotify moderator about bad user

• Messages in spam log 

Page 7: Rules - Yaroslav Doroshuk

Moderators' workflow• Fields:oModeration status fieldoUnpublish date field

• Fields permission • Rules for publishing and notification.• VBO and Rules for bulk operations• Message module for logging changes 

Page 8: Rules - Yaroslav Doroshuk

Demo

Page 9: Rules - Yaroslav Doroshuk

Useful modules:

Page 10: Rules - Yaroslav Doroshuk

Rules Bonus Packhttp://drupal.org/project/rb

Aditional triggers, actions and conditions.

Page 11: Rules - Yaroslav Doroshuk

Views Bulk Operationshttp://drupal.org/project/views_bulk_operations

Run Your rules on the views-result.

Page 12: Rules - Yaroslav Doroshuk

Flaghttp://drupal.org/project/flag

Trigger rules on flag/unflag any item.

Page 13: Rules - Yaroslav Doroshuk

Rules Linkhttp://drupal.org/project/rules_link

Create links which trigger rules.

Page 14: Rules - Yaroslav Doroshuk

Page Managerhttp://drupal.org/project/ctools

User rules conditions to check access for page.

Page 15: Rules - Yaroslav Doroshuk

Content Accesshttp://drupal.org/project/content_access

 Give role-based access to nodes with rules.

Page 16: Rules - Yaroslav Doroshuk

Relationhttp://drupal.org/project/relation

Work with related entities and create relations.

Page 17: Rules - Yaroslav Doroshuk

Difference in performanceRules Custom module

Update user's name after account was updated.

~177,57 ms ~174,35 ms

Update user's name after node was viewed.

~230,5 ms ~193,06 ms

*Measurement was made on page load

Page 18: Rules - Yaroslav Doroshuk

Difference in performance

Page 19: Rules - Yaroslav Doroshuk

What does it mean?• ~40 ms additional page execution time• ~3 ms additional queries execution time• ~17 additional exuquted queries• ~3,5 mb additional RAM usage.

Page 20: Rules - Yaroslav Doroshuk

Development• Provide your own ations and conditions using : 

o hook_rules_action_info() o hook_rules_condition_info() 

• Define entity properties using hook_entity_property_info of the entity API

Page 21: Rules - Yaroslav Doroshuk

•Use Rules because:Rules is flexibleRules is more clear for a customerRules intagrates with other modulesYou can easily move needed functionality using FeaturesClicking is faster that writing a code

Page 22: Rules - Yaroslav Doroshuk

Useful LinksCode exampels: http://drupal.org/project/rules_example

Documentation: http://drupal.org/node/878720Screencasts: 

http://nodeone.se/node/984http://london2011.drupal.org/conference/sessions/rules-way-life

http://www.youtube.com/watch?v=1itm3t0YMfw

Page 23: Rules - Yaroslav Doroshuk

Questions?

Yaroslav Doroshukemail: [email protected]: yarrohatwitter: https://twitter.com/#!/yarrohablog: http://yarroha.name/