You are here

README.txt in Party 8.2

Introduction
------------

The Party module provides an extremely flexible CRM solution for Drupal, utilizing
a generic entity (the Party entity) to which other entities (Drupal Users, Nodes,
Profile2 profiles, eCommerce customers, Facebook profiles, etc.) can be attached.

Requirements
------------

PHP 5.3
Drupal greater than 7.14
Dependencies:
 - Entity API
 - CTools
 - Views

Installation
------------

Install and enable the Party module as usual.
For a typical installation, the following Party sub-modules should be enabled:
Party Hat, Party Profile, Party User.

Overview
========

What follows is a brief overview of some of the concepts used in Party. For
more detail, see the Party documentation at http://drupal.org/node/1600330.

The Party
---------

The Party entity is simply a wrapper around other entities representing whatever,
e.g. a Drupal User, CiviCRM Constituent, Facebook account, eCommerce Customer,
Employee profile, etc. A Party may wrap one or more such entities.

A Party can represent an individual or an organization (multiple individuals).
Entity relations are typically used for managing the individual/organization relationship.

A Party entity does not have bundles and normally has no fields, except those used
by the core Party module for tracking the entity attachments, or special purpose
custom modules that enhance party core.


Data Sets
---------

Data sets define where a Party's data is stored. A data set specifies a particular
entity type which may be connected to a party. This may be an entity type provided
by another module, or one defined along with the data set.

Party provides submodules that define data sets for:

- profile2, one data set per type
- user accounts
- commerce module customer profiles

Hats
----

Instead of having bundles, a party can have multiple hats, which can be changed
over time. Each hat allows the party to use one of more data sets.

Hats are organized in hierarchies, with the root level of the hierarchy
normally being occupied by either the 'Group' Hat or 'Individual' Hat. Hats can
be created in code or through the Party UI.

A hat hierarchy for a library might look like:

Individual
--Library Patron
--Donor
--Employee
----Exempt Employee
----Non-exempt Employee
----Volunteer Employee
Group
--Publisher
----Periodicals Publication Publisher
----Books Publication Publisher
----Reference Publications Publisher
--Department
----Administration
----Circulation
----Information Technology
----Legal
----Accounting
----HR

Party Labels
------------

When a party is created in the system, whether manually or programmatically, a
label is generated for it. It is possible to specify how this label is generated
by configuring any number of 'Party Name Label' plugins. Under 'Label Plugins'
in the Party configuration menu, you can sort and modify settings for these
plugins. For example, the 'attached entity field' label plugin will allow you
to use a field from a data set to use for the label - thus a 'Name' field on an
attached profile2 entity could be used. The sorting allows you to choose in
which order these labels are applied - thus, for parties that do not have
attached users, username will not work, but the pid example will.

To create your own Party Label plugins, refer to the Developer Documentation Section.

File

README.txt
View source
  1. Introduction
  2. ------------
  3. The Party module provides an extremely flexible CRM solution for Drupal, utilizing
  4. a generic entity (the Party entity) to which other entities (Drupal Users, Nodes,
  5. Profile2 profiles, eCommerce customers, Facebook profiles, etc.) can be attached.
  6. Requirements
  7. ------------
  8. PHP 5.3
  9. Drupal greater than 7.14
  10. Dependencies:
  11. - Entity API
  12. - CTools
  13. - Views
  14. Installation
  15. ------------
  16. Install and enable the Party module as usual.
  17. For a typical installation, the following Party sub-modules should be enabled:
  18. Party Hat, Party Profile, Party User.
  19. Overview
  20. ========
  21. What follows is a brief overview of some of the concepts used in Party. For
  22. more detail, see the Party documentation at http://drupal.org/node/1600330.
  23. The Party
  24. ---------
  25. The Party entity is simply a wrapper around other entities representing whatever,
  26. e.g. a Drupal User, CiviCRM Constituent, Facebook account, eCommerce Customer,
  27. Employee profile, etc. A Party may wrap one or more such entities.
  28. A Party can represent an individual or an organization (multiple individuals).
  29. Entity relations are typically used for managing the individual/organization relationship.
  30. A Party entity does not have bundles and normally has no fields, except those used
  31. by the core Party module for tracking the entity attachments, or special purpose
  32. custom modules that enhance party core.
  33. Data Sets
  34. ---------
  35. Data sets define where a Party's data is stored. A data set specifies a particular
  36. entity type which may be connected to a party. This may be an entity type provided
  37. by another module, or one defined along with the data set.
  38. Party provides submodules that define data sets for:
  39. - profile2, one data set per type
  40. - user accounts
  41. - commerce module customer profiles
  42. Hats
  43. ----
  44. Instead of having bundles, a party can have multiple hats, which can be changed
  45. over time. Each hat allows the party to use one of more data sets.
  46. Hats are organized in hierarchies, with the root level of the hierarchy
  47. normally being occupied by either the 'Group' Hat or 'Individual' Hat. Hats can
  48. be created in code or through the Party UI.
  49. A hat hierarchy for a library might look like:
  50. Individual
  51. --Library Patron
  52. --Donor
  53. --Employee
  54. ----Exempt Employee
  55. ----Non-exempt Employee
  56. ----Volunteer Employee
  57. Group
  58. --Publisher
  59. ----Periodicals Publication Publisher
  60. ----Books Publication Publisher
  61. ----Reference Publications Publisher
  62. --Department
  63. ----Administration
  64. ----Circulation
  65. ----Information Technology
  66. ----Legal
  67. ----Accounting
  68. ----HR
  69. Party Labels
  70. ------------
  71. When a party is created in the system, whether manually or programmatically, a
  72. label is generated for it. It is possible to specify how this label is generated
  73. by configuring any number of 'Party Name Label' plugins. Under 'Label Plugins'
  74. in the Party configuration menu, you can sort and modify settings for these
  75. plugins. For example, the 'attached entity field' label plugin will allow you
  76. to use a field from a data set to use for the label - thus a 'Name' field on an
  77. attached profile2 entity could be used. The sorting allows you to choose in
  78. which order these labels are applied - thus, for parties that do not have
  79. attached users, username will not work, but the pid example will.
  80. To create your own Party Label plugins, refer to the Developer Documentation Section.