// In Merlin "Publishing" means repeated exporting (push) or importing (pull) data to/from an external source.
// Publishers can be created via the publishing panel. There are four different types of publishers,
// (in future this might be extendable via plug-ins).

"publisher.notification.direction.pull"                         = "Update";
"publisher.notification.direction.push"                         = "Publish";

"error.publisher.generic.description.%@"                        = "Error: %@";

"error.publisher.account.incomplete.description.%@"             = "Account '%@' is incomplete.";
"error.publisher.account.incomplete.recovery"                   = "Please open the account settings to complete the missing information.";

"error.publisher.calendarNotFound.description.%@"               = "The original calendar called '%@' does not exist.";
"error.publisher.calendarNotFound.recovery"                     = "Please select an existing calendar.";

// This error is shown when the user previously clicked the "Deny" button in the calendar security dialog.
"error.publisher.calendar.accessDenied.description.osx"         = "The system settings do not allow Merlin Project access to the calendars.";
"error.publisher.calendar.accessDenied.recovery.osx"            = "To allow access, open System Preferences, choose \"Security\" tab and then \"Calendars\". Now check the mark besides the entry for Merlin Project and restart the application.";

// This error is shown when the user tries to publish to a calendar which contains manually created content.
"error.publisher.calendar.hasNonMerlinContent.description.%@"   = "The selected calendar contains events which have not been created by Merlin Project.";
"error.publisher.calendar.hasNonMerlinContent.recovery"         = "Please remove all events from the calendar or select an empty calendar.";

// This error is shown when the user previously clicked the "Deny" button in the reminders security dialog.
"error.publisher.reminders.accessDenied.description.osx"        = "The system settings do not allow Merlin Project access to the reminders.";
"error.publisher.reminders.accessDenied.recovery.osx"           = "To allow access, open System Preferences, choose \"Security\" tab and then \"Reminders\". Now check the mark besides the entry for Merlin Project and restart the application.";

// This error is shown when the user tries to publish to a reminders list which contains manually created content.
"error.publisher.reminders.hasNonMerlinContent.description.%@"  = "The selected reminders list contains entries which have not been created by Merlin Project.";
"error.publisher.reminders.hasNonMerlinContent.recovery"        = "Please remove all entries from the list or select an empty list.";

// This error is shown when the user enters an invalid path of an export publisher in the publishing panel.
"error.publisher.export.invalidPath.description"                = "This path is not valid.";
"error.publisher.export.invalidPath.recovery"                   = "Please do not use \".\", \"..\" or slashes.";

"valueType.publisher.autoPullInterval.never"                    = "Never";
"valueType.publisher.autoPullInterval.onNotification"           = "Upon notification";
"valueType.publisher.autoPullInterval.everyMinute"              = "Every minute";
"valueType.publisher.autoPullInterval.everyHour"                = "Every hour";
"valueType.publisher.autoPullInterval.everyMinutes.%@"          = "Every %@ minutes";
"valueType.publisher.autoPullInterval.everyHours.%@"            = "Every %@ hours";

"net.projectwizards.merlin.publisher.sync.name"                 = "Merlin Server";
"net.projectwizards.merlin.publisher.sync.description"          = "Synchronizes project contents with a Merlin Server.";

"net.projectwizards.merlin.publisher.export.name"               = "Export";
"net.projectwizards.merlin.publisher.export.description"        = "Regularly publishes project content via FTP, email or WebDAV using standard export modules.";
"error.publisher.export.directoryNotWritable.description.%@"    = "Cannot publish to local folder \"%@\".";
"error.publisher.export.directoryNotWritable.recovery"          = "Please choose a different folder in the publishing panel.";
"error.publisher.export.noLocalDirectory.description"           = "Cannot publish because you have not yet specified a local folder for export.";
"error.publisher.export.noLocalDirectory.recovery"              = "Please choose a folder in the publishing panel.";

"net.projectwizards.merlin.publisher.calendar.name"             = "Calendar";
"net.projectwizards.merlin.publisher.calendar.description"      = "Creates events for the Calendar app.";

"net.projectwizards.merlin.publisher.reminders.name"            = "Reminders";
"net.projectwizards.merlin.publisher.reminders.description"     = "Creates to-dos for the Reminders app.";

// When publishing into an event store (Calendar.app or Reminders.app), fields from Merlin can be mapped onto
// fields of the event store. This is done in a detail popover in the publisher configuration panel.
// When the user chooses not to map to a calendar field, the following "None" states are shown:
"publisher.eventStore.calendar.none"                            = "None";
"publisher.eventStore.calendar.unknown.%@"                      = "Unknown Calendar (%@)";
"publisher.eventStore.remindersList.none"                       = "None";
"publisher.eventStore.remindersList.unknown.%@"                 = "Unknown Reminders List (%@)";
"publisher.eventStore.notes.none"                               = "None";
"publisher.eventStore.date.none"                                = "None";
"publisher.eventStore.location.none"                            = "None";

// These are the names of the event store fields to which the user can publish Merlin data.
"publisher.eventStore.calendar.startDate"                       = "Start";
"publisher.eventStore.calendar.endDate"                         = "End";
"publisher.eventStore.calendar.dueDate"                         = "Due";
"publisher.eventStore.calendar.location"                        = "Location";
"publisher.eventStore.calendar.completionDate"                  = "Completed";
"publisher.eventStore.calendar.notes"                           = "Notes";