If your Manila website membership list is maintained externally, for example in an Excel spreadsheet or a Filemaker data base, you face the problem of synchronizing the website membership with the actual master list.
Using the addedValues plugin, a Managing Editor can solve this problem with a minimum of fuss. It uses the feature of addedValues called import extensions, a way of extending addedValues open to skilled developers. addedValues ships with 2 import extensions, csvGemsToMembers and tabbedTextToMessages. A server administrator defines additional extensions by writing a script and then using the addedValues control panel addin
Managing Editors see these extensions from the plugin Import menu item
This particular extension knows how to read documents in comma separated values format, a pretty standard format exported by many spreadsheets and databases. CSV documents always have a first line which contains the names of the variables separated by commas. *Interestingly, the German version of Excel has a bug where it writes ; characters instead of , characters). The extension tries to match these names to variables defined as member variables in addedValues.
addedValues is able to recognise names defined in the custom prefs Xml (editors ->prefs) and seen in the signup and profile form
![]() |
![]() |
When the Managing editor elects to use this extension, he is asked to locate the csv document that he wants to use. He is expected to load it as a GEM, then to select the gem, and configure the import (click images to view fullsize version)
![]() |
![]() |
which might produce
So this is a way to create or modify member records.
One important point. addedValues will not allow passwords to be member variables. If there is a column called password in the csv file, it will actually generate an error because the extension won't find a matching variable. If a new member record is created, a random password will be generated and emailed out to the new user in the standard Manila way. If the member already exists, the password remains unchanged.
The extension never deletes members, it simply marks them blocked. Unless they are some type of editor (managing, contributing or content) members whose keys do not appear in the gem can be blocked by choosing the "Block Members not listed in GEM" radio option.
A managing editor can decide to dis-allow new member signup using the standard Manila options. If he does not members can signup and log on in the normal way. Members can also use the standard Manila urls to modify their personal details.
So how does the external database get updated with these changes? Answer, by exporting the membership into a csv document. The format of the document can be decided at the time of import by telling the save the layout as a report. An addedValue report is template for output, and typical Manila website might many of these, so there is a managment page
and a detail page
When the Managing Editor starts an export, he selects a report
chooses some options
to get the response
That's it.