# -*- coding:utf-8; -*- # Parent of all command/response (CR) bundles. Copyright 2007-2008, 2013, Michael Allan. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Votorola Software"), to deal in the Votorola Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicence, and/or sell copies of the Votorola Software, and to permit persons to whom the Votorola Software is furnished to do so, subject to the following conditions: The preceding copyright notice and this permission notice shall be included in all copies or substantial portions of the Votorola Software. THE VOTOROLA SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE VOTOROLA SOFTWARE OR THE USE OR OTHER DEALINGS IN THE VOTOROLA SOFTWARE. # # CR bundles are used by the mail-based interface, and other plain-text interfaces. This # particular bundle (CR.properties) encodes the default locale, 'en-GB'. Other locales # are encoded in child bundles (CR_*.properties). # # Whitespace, such as newlines (\n), and multiple, contiguous spaces (\ \ ), will usually # be preserved in the rendered text (depending on the configuration of the users's email # client). # # Currently, pronouns are not adjusted to match the --alter option. So we are replying # with phrases like "You are voting for...", when we ought instead to reply with "Voter # so-and-so is voting for..." The original command (with --alter=so-and-so in it) is # echoed, however, immediately before the reply. !---- a ---------------------------------------------------------------------------------- a.VoterService.unrecognized(1) = Unrecognized command '%s'. a.VoterService.unrecognizedHelp = For a list of commands, please use: a.VoterService.help.reply.body = Below are the commands recognized \ by this service. Command syntax is summarized using these typographic conventions: a.VoterService.help.reply.body-legend = \ item literal, just type 'item' as shown\n\ \n\ ITEM variable, subtitute your own value for 'ITEM'\n\ \n\ [item] optional, type 'item' or nothing\n\ \n\ a | b choice, type either 'a' or 'b' a.VoterService.help.reply.summary(1,2) =\ Service: %1$s\n\ \n\ Access: %2$s a.VoterService.help.reply.summary-uid(1,2,3) =\ Service: %1$s\n\ \n\ UID: %3$s\n\ \n\ Access: %2$s !---- a . c o u n t ---------------------------------------------------------------------- # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - a.count.CR_Reconstruct.commandName = reconstruct a.VoterService.className.noTrans(reconstruct) = votorola.a.count.CR_Reconstruct # set inside the () to match commandName, and leave the rest unchanged a.count.CR_Reconstruct.help.body = The service constucts the poll from scratch \ by ignoring any configuration items that were cached in previous constructions. \ It replies with detailed progress reports \ that are generated during the reconstruction process. a.count.CR_Reconstruct.help.summary = Reconstruct a count from scratch. a.count.CR_Reconstruct.help.syntax = reconstruct # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - a.count.CR_Unvote.commandName = unvote a.VoterService.className.noTrans(unvote) = votorola.a.count.CR_Unvote # set inside the () to match commandName, and leave the rest unchanged a.count.CR_Unvote.help.body(1) = The service replies, confirming the withdrawal:\ \n\n\ \ \ \ \ %s\ \n\n\ \ \ \ \ You were voting for: mychoice@somewhere.net\n\ \ \ \ \ You are now voting for: nobody\ \n\n\ If you change your mind later, and wish to vote again, use the 'vote' command. a.count.CR_Unvote.help.summary = Withdraw a vote from a count. a.count.CR_Unvote.help.syntax = unvote # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - a.count.CR_Vote.commandName = vote a.VoterService.className.noTrans(vote) = votorola.a.count.CR_Vote # set inside the () to match commandName, and leave the rest unchanged a.count.CR_Vote.help.body(1) = You may vote for anyone you choose. \ All you need is a personal identifier \ in the form of either an email address or a mailish username. For example:\ \n\n\ \ \ \ \ vote myChoice@somewhere.net\ \n\n\ To recall whom you last voted for, simply send:\ \n\n\ \ \ \ \ vote\ \n\n\ The service replies identifying the recipient of your vote:\ \n\n\ \ \ \ \ %s\ \n\n\ \ \ \ \ You are voting for: myChoice@somewhere.net\ \n\n\ If that person also casts a vote, then your vote is carried with it. \ Whomever receives that person\'s vote also receives yours. \ And so on. Your vote is carried until it reaches someone who does not vote. \ This is called a 'delegate cascade'. At the end of the cascade, \ the votes accumulate to reveal the favoured candidates.\ \n\n\ A trace of the cascade is included in the reply. \ It shows the path of your vote and who ultimately receives it. \ To see how another person is voting:\ \n\n\ \ \ \ \ vote --alter ID\ \n\n\ You may change your vote by sending another 'vote' command. \ Or withdraw it altogether using 'unvote'. a.count.CR_Vote.help.summary = Cast a vote in a count. # a.count.CR_Vote.help.syntax = vote CANDIDATE-ID [--cascade yes|no]\ a.count.CR_Vote.help.syntax = vote CANDIDATE-ID\ \n\n\ vote [--alter ID] a.count.CR_Vote.reply.candidate(1,2) = You are voting for: %1$s # You are voting for: %1$s (%2$s) a.count.CR_Vote.reply.candidateOld(1,2) = You were voting for: %1$s # You were voting for: %1$s (%2$s) a.count.CR_Vote.reply.candidateNew(1,2) = You are now voting for: %1$s # You are now voting for: %1$s (%2$s) a.count.CR_Vote.reply.countNode.holding(1) = %s held from flow a.count.CR_Vote.reply.poll(1) = %s # title of poll, preceding the vote trace a.count.CR_Vote.reply.emptyTrace = (empty trace, nothing to show) a.count.CR_Vote.reply.finalRecipient(1) = The final recipient of the vote is %s. a.count.CR_Vote.reply.traceAtLastCount = Trace from last reported count, \ or [FIX this bug] newer image: a.count.CR_Vote.reply.traceAtLastCount(1) = The vote trace above is from \ the last reported count: %s. It excludes subsequent changes made by voters. # copied in W.properties, s.wic.count.WP_Vote.result.traceAtLastCount(1) a.count.CR_Vote.reply.traceProjected(1) = The vote trace above is a projection \ based on the last reported count. \ It includes subsequent changes made by %s, but excludes the changes of other voters. \ The changes of all voters will be included in the next count. # copied in W.properties, s.wic.count.WP_Vote.result.traceProjected(1) !---- a . m a i l ------------------------------------------------------------------------ # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - s.mail.MailMetaService.help.reply.general = How To Communicate with the Vote-Server s.mail.MailMetaService.help.reply.general.body = To communicate with the vote-server, \ simply send email messages. In return, it sends replies.\ \n\n\ Your messages may contain commands. \ Commands are typically sent in order to request information (such as poll counts), \ or to change information (such as changing a vote). \ Commands are typically sent one at a time, but you may also send multiple commands. \ To send multiple commands use blank lines to separate them. For example:\ \n\n\ \ \ \ \ hello this is one command\ \n\n\ \ \ \ \ hello this is\n\ \ \ \ \ a second command\ \n\n\ \ \ \ \ hello this a third command\ \n\n\ When the vote-server receives your message it will first attempt to verify your identity. \ It does this by sending a challenge. After you reply to the challenge \ it will reply to your message.\ \n\n\ Listed below are the voter services that are provided. \ Each service has its own address. To obtain further instructions, pick a service, \ and send it a message consisting of the command: s.mail.MailMetaService.help.reply.self = (this is the service that created \ the help message you are currently reading) s.mail.MailMetaService.help.reply.summary.trailer(1) = This vote-server provides \ multiple voter services. The service which generated this message (%s) \ is the meta-service for the whole vote-server. Other services include polls, \ and a trustserver. They will be listed farther below. \ First, we describe the few commands that are recognized by this service. \ [Note, this service is rate limited. If you send it too many messages, \ it will stop replying for a while.] s.mail.MailMetaService.serviceTypeTitle.polls = Polls on the vote-server s.mail.MailMetaService.serviceTypeTitle.other = Other services # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - s.mail.VOFaceMail.addr(1) = In reply to your message dated %s. s.mail.VOFaceMail.addr(1Date) = In reply to your message received %tF. s.mail.VOFaceMail.addr(1,2) = To voter %2$s, in reply to your message dated %1$s. s.mail.VOFaceMail.addr(1Date,2) = To voter %2$s, in reply to your message received %1$tF. s.mail.VOFaceMail.emptyText = You sent an empty message, \ having no content of type text/plain. s.mail.VOFaceMail.instructionsHelp = For help, \ please send a message containing the single command: s.mail.VOFaceMail.nonCriticalX = I had some trouble handling your message: s.mail.VOFaceMail.noTextPart = I cannot read your message, \ it has no content of type text/plain. # MCA fixed this key 2008-6-4 s.mail.VOFaceMail.replyTooLong = Sorry, this reply has become too long. \ The remaining commands are unprocessed. Please re-submit them in a separate message. s.mail.VOFaceMail.tooManyCommands = Sorry, your message has too many commands. \ That\'s all I can process. !---- a . v o t e r ---------------------------------------------------------------------- a.voter.CommandResponder.canonicalEmail(1,2,3) = %1$s: \ cannot translate personal identifier '%2$s' to canonical email address: %3$s a.voter.CommandResponder.helpPrompt(1) = Try '%s --help' for more information. a.voter.CommandResponder.missingValueForOption(1) = %s: missing value for option a.voter.CommandResponder.option.alter = alter a.voter.CommandResponder.option.help = help a.voter.CommandResponder.unrecognizedArgument(1,2) = %1$s: \ unrecognized argument: %2$s a.voter.CommandResponder.unrecognizedArgument.ignored(1,2) = %1$s: ignoring \ unrecognized argument: %2$s a.voter.CommandResponder.unrecognizedOption(1) = %s: unrecognized option a.voter.CommandResponder.writePermissionDenied(1,2,3) = %1$s: write permission denied, \ voter %2$s is not allowed to modify the input data of voter %3$s a.voter.CommandResponder.wrongNumberOfArguments(1,2,3) = %1$s: wrong number of arguments; \ expecting %2$s, found %3$s # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - a.response.CR_Hello.commandName = hello a.VoterService.className.noTrans(hello) = votorola.a.response.CR_Hello # set inside the () to match commandName, and leave the rest unchanged a.response.CR_Hello.help.body = The service replies 'hello'. \ Any TEXT arguments are ignored. a.response.CR_Hello.help.summary = Ping the service, say hello to it. a.response.CR_Hello.help.syntax = hello\ \n\n\ hello TEXT a.response.CR_Hello.reply = hello # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - a.response.CR_Help.commandName = help a.VoterService.className.noTrans(help) = votorola.a.response.CR_Help # set inside the () to match commandName, and leave the rest unchanged a.response.CR_Help.help.body = The service replies with information and instructions.\ \n\n\ To request help for a specific command, try 'COMMAND --help'; for instance 'vote --help'. a.response.CR_Help.help.summary = Request general information on the service, \ and instructions on using it. a.response.CR_Help.help.syntax = help # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - a.response.CR_Version.commandName = version a.VoterService.className.noTrans(version) = votorola.a.response.CR_Version # set inside the () to match commandName, and leave the rest unchanged a.response.CR_Version.help.body = The service replies with the version. a.response.CR_Version.help.summary = Ask what version of software \ the vote-server is running. a.response.CR_Version.help.syntax = version a.response.CR_Version.reply(1) = Votorola %s