Sweden Democrats' Meeting Tool
 All Classes Files Functions Variables Pages
Public Member Functions | Private Member Functions | Private Attributes | List of all members
SD_Meeting_Tool_Lists Class Reference

Standard, basic and complete list handling plugin. More...

Inheritance diagram for SD_Meeting_Tool_Lists:
SD_Meeting_Tool_0 interface_SD_Meeting_Tool_Lists SD_Meeting_Tool_Base

Public Member Functions

 __construct ()
 sd_mt_admin_menu ($menus)
 activate ()
 uninstall ()
 admin ()
 admin_overview ()
 admin_edit ()
 admin_copy_participants ()
 admin_show_participants ()
 sd_mt_configure_action_item ($item)
 sd_mt_trigger_action_item ($item_trigger)
 sd_mt_add_list_participant ($SD_Meeting_Tool_List, $SD_Meeting_Tool_Participant)
 sd_mt_add_list_participants ($SD_Meeting_Tool_List, $SD_Meeting_Tool_Participants)
 sd_mt_clone_list ($list)
 sd_mt_delete_list ($list)
 sd_mt_get_all_lists ()
 sd_mt_get_list ($list_id)
 sd_mt_list_participants ($list)
 sd_mt_remove_list_participant ($list, $participant)
 sd_mt_remove_list_participants ($list)
 sd_mt_update_list ($list)
 sd_mt_delete_participant ($SD_Meeting_Tool_Participant)
 sd_mt_display_participant_field ($SD_Meeting_Tool_Participant_Field)
 sd_mt_get_action_item_types ($action_items)
 sd_mt_get_action_item_description ($SD_Meeting_Tool_Action_Item)
 sd_mt_get_participant_fields ($fields)
 compare_lists ($list_ids)
 Compares several lists and shows a comparison table.

Private Member Functions

 collect_participants ($SD_Meeting_Tool_List_Collection, $SD_Meeting_Tool_List)
 sql_to_list ($sql)
 get_list_participants ($list)
 set_list_participants ($SD_Meeting_Tool_List)
 sort_list ($SD_Meeting_Tool_List)
 sort_participants ($SD_Meeting_Tool_Participants, $SD_Meeting_Tool_List)
 strings ()

Private Attributes

 $strings

Additional Inherited Members

- Public Attributes inherited from SD_Meeting_Tool_Base
 $paths = array()
- Protected Member Functions inherited from SD_Meeting_Tool_0
 cache_directory ()
 Return the cache directory for the plugin.
 cache_file ($id)
 Returns the name of the cache file for this session.
 cache_url ()
 Returns the complete URL to the cache directory.
 check_cache_directory ()
 Check whether the cache directory is OK.
- Protected Attributes inherited from SD_Meeting_Tool_0
 $language_domain = 'SD_Meeting_Tool'

Detailed Description

Standard, basic and complete list handling plugin.

Provides a basic amount of list handling. Lists are the hub of participant exchange amongst SD Meeting Tool plugins.

Author
Edward Plainview edwar.nosp@m.d.pl.nosp@m.ainvi.nosp@m.ew@s.nosp@m.verig.nosp@m.edem.nosp@m.okrat.nosp@m.erna.nosp@m..se
Changelog
1.1

Constructor & Destructor Documentation

SD_Meeting_Tool_Lists::__construct ( )

Member Function Documentation

SD_Meeting_Tool_Lists::activate ( )

Overridable activation function.

It's here in case plugins need a common activation method in the future.

Reimplemented from SD_Meeting_Tool_Base.

SD_Meeting_Tool_Lists::admin ( )
SD_Meeting_Tool_Lists::admin_copy_participants ( )

Copy the participants of a list to other lists.

SD_Meeting_Tool_Lists::admin_edit ( )

Edit a list.

SD_Meeting_Tool_Lists::admin_overview ( )
SD_Meeting_Tool_Lists::admin_show_participants ( )

Show list collected participants.

SD_Meeting_Tool_Lists::collect_participants (   $SD_Meeting_Tool_List_Collection,
  $SD_Meeting_Tool_List 
)
private

Recurses a list and updates the collection with participants.

Each list include and exclude is calculated separately and then merged into the mainline collection.

Explanation: If the collection has an include, i1, that includes i2 and excludes i3, i2 and i3 will be merge and whatever is left will be included in i1.

Likewise, if the collection has an exclude e1, that includes e2 and excludes i1, first i1 will be calculated and then e2 - i1, and whatever is left is excluded from e1.

Has primitive recursion prevention: will ignore and lists that it has seen previously in that include/exclude tree.

Parameters
$SD_Meeting_Tool_List_CollectionExisting SD_Meeting_Tool_List_Collection to add to.
$SD_Meeting_Tool_ListSD_Meeting_Tool_List to parse.
SD_Meeting_Tool_Lists::compare_lists (   $list_ids)

Compares several lists and shows a comparison table.

Parameters
$list_idsArray of list ids.
Returns
HTML table comparing the lists.
SD_Meeting_Tool_Lists::get_list_participants (   $list)
private

Returns a list of all the participants of a list.

Note that the list isn't assembled, only the manually entered users are listed.

Returns
Array of {SD_Meeting_Tool_List_Participant}s
SD_Meeting_Tool_Lists::sd_mt_add_list_participant (   $list,
  $participant 
)

Add a participant to a list.

Wordpress
Filter
Parameters
SD_Meeting_Tool_List$listList to add to.
SD_Meeting_Tool_Participant$participantA SD_Meeting_Tool_Participant or participant id (int) to add to the list.

Implements interface_SD_Meeting_Tool_Lists.

SD_Meeting_Tool_Lists::sd_mt_add_list_participants (   $SD_Meeting_Tool_List,
  $SD_Meeting_Tool_Participants 
)

Adds an array of participants to a list.

Wordpress
Filter
Parameters
SD_Meeting_Tool_List$SD_Meeting_Tool_ListList to add to.
array$SD_Meeting_Tool_ParticipantsAn array of SD_Meeting_Tool_Participant or participant ids (int) to add to the list.

Implements interface_SD_Meeting_Tool_Lists.

SD_Meeting_Tool_Lists::sd_mt_admin_menu (   $menus)
SD_Meeting_Tool_Lists::sd_mt_clone_list (   $list)

Clones a list completely.

Wordpress
Filter
Parameters
SD_Meeting_Tool_List$listAn existing list to clone.
Returns
New list.

Implements interface_SD_Meeting_Tool_Lists.

SD_Meeting_Tool_Lists::sd_mt_configure_action_item (   $item)
SD_Meeting_Tool_Lists::sd_mt_delete_list (   $list)

Delete a list.

Wordpress
Filter
Parameters
SD_Meeting_Tool_List$listList object to delete.

Implements interface_SD_Meeting_Tool_Lists.

SD_Meeting_Tool_Lists::sd_mt_delete_participant (   $SD_Meeting_Tool_Participant)

Clean up removed participants.

Parameters
$SD_Meeting_Tool_ParticipantParticipant being removed.
SD_Meeting_Tool_Lists::sd_mt_display_participant_field (   $SD_Meeting_Tool_Participant_Field)
SD_Meeting_Tool_Lists::sd_mt_get_action_item_description (   $SD_Meeting_Tool_Action_Item)

Describes the action provided (if it's our own).

Parameters
$SD_Meeting_Tool_Action_ItemSD_Meeting_Tool_Action_Item to describe.
Returns
Updated array of SD_Meeting_Tool_Action_Item.
SD_Meeting_Tool_Lists::sd_mt_get_action_item_types (   $action_items)

Provides list action items.

Parameters
$action_itemsArray of SD_Meeting_Tool_Action_Item.
Returns
Updated array of SD_Meeting_Tool_Action_Item.
SD_Meeting_Tool_Lists::sd_mt_get_all_lists ( )

Return an array of all available lists.

Wordpress
Filter
Returns
Array of SD_Meeting_Tool_List objects.

Implements interface_SD_Meeting_Tool_Lists.

SD_Meeting_Tool_Lists::sd_mt_get_list (   $list_id)

Return a list.

Wordpress
Filter
Parameters
int$list_idList ID to get.
Returns
Returned SD_Meeting_Tool_List, or false if it doesn't exist.

Implements interface_SD_Meeting_Tool_Lists.

SD_Meeting_Tool_Lists::sd_mt_get_participant_fields (   $fields)

Append "registered" as a field.

Parameters
$fieldsArray of SD_Meeting_Tool_Participant_Field
Returns
The array, but with a new field: registered.
SD_Meeting_Tool_Lists::sd_mt_list_participants (   $list)

Lists the participants in a list.

Assembles the list from all the includes and excludes.

Wordpress
Filter
Parameters
SD_Meeting_Tool_List$listList to assemble.
Returns
Array of SD_Meeting_Tool_Participant objects.

Implements interface_SD_Meeting_Tool_Lists.

SD_Meeting_Tool_Lists::sd_mt_remove_list_participant (   $list,
  $participant 
)

Remove a participant from a list.

Wordpress
Filter
Parameters
SD_Meeting_Tool_List$listList to remove from.
SD_Meeting_Tool_Participant$participantParticipant to remove.

Implements interface_SD_Meeting_Tool_Lists.

SD_Meeting_Tool_Lists::sd_mt_remove_list_participants (   $list)

Remove all participants from a list.

Wordpress
Filter
Parameters
SD_Meeting_Tool_List$listList to remove from.

Implements interface_SD_Meeting_Tool_Lists.

SD_Meeting_Tool_Lists::sd_mt_trigger_action_item (   $item_trigger)

Triggers an item.

Requires that ->action_item and ->trigger is set.

Parameters
$item_triggerSD_Meeting_Tool_Action_Item_Trigger Action item trigger.
SD_Meeting_Tool_Lists::sd_mt_update_list (   $list)

Creates or updates a list.

If the ID is null, a new list will be created in the database.

Wordpress
Filter
Parameters
SD_Meeting_Tool_List$listList to create or update.
Returns
The complete list.

Implements interface_SD_Meeting_Tool_Lists.

SD_Meeting_Tool_Lists::set_list_participants (   $SD_Meeting_Tool_List)
private

Sets which participants are in a list.

Only makes changes.

New participants are taken från the ->participants field. The field can be an array of participant IDs or whole participant objects.

Parameters
$SD_Meeting_Tool_ListList object with new ->participants.
SD_Meeting_Tool_Lists::sort_list (   $SD_Meeting_Tool_List)
private

Sorts a list according to its list sort.

Parameters
$SD_Meeting_Tool_ListSD_Meeting_Tool_List to sort.
Returns
Sorted SD_Meeting_Tool_List.
SD_Meeting_Tool_Lists::sort_participants (   $SD_Meeting_Tool_Participants,
  $SD_Meeting_Tool_List 
)
private

Sort the participants using the list's sort.

Parameters
$SD_Meeting_Tool_ParticipantsArray of $SD_Meeting_Tool_Participant.
$SD_Meeting_Tool_ListList to fetch sort values from.
Returns
Sorted array of $SD_Meeting_Tool_Participant.
SD_Meeting_Tool_Lists::sql_to_list (   $sql)
private

Convert a list row from SQL to an SD_Meeting_Tool_List.

Parameters
$sqlRow from the database as an array.
Returns
A complete SD_Meeting_Tool_List object.
SD_Meeting_Tool_Lists::strings ( )
private

Load the translated strings.

SD_Meeting_Tool_Lists::uninstall ( )

Overridable uninstall method.

Reimplemented from SD_Meeting_Tool_Base.

Member Data Documentation

SD_Meeting_Tool_Lists::$strings
private

Provides human-readable strings to for {SD_Meeting_Tool_Action_Item}s.


The documentation for this class was generated from the following file: