Thanks for writing this up Philippe. See comments in-line. I think there may be some misunderstandings about what prompts the switch to 'Updated by'. 'Updated by' only happens for message items that are Sent when users click the 'Update' button in the toolbar. It never applies to non-message items and sharing and syncing itself doesn't result in the byline displaying 'Updated by'.

Mimi

On Mar 7, 2007, at 3:14 PM, Philippe Bossut wrote:

Hi,

Leaving the title with the erroneous "bi-line" spelling so that your email reader thread this correctly...

Sheila Mooney wrote:

On Mar 1, 2007, at 8:29 PM, Mimi Yin wrote:

I also realized that there is a separate issue of what to show in the Send as: pulldown as alternatives. I have edited the Email spec with the following. (See bold paragraph for section what to show in the pulldown.)

*What appears by default in the byline?*

For non-message items: Created by, Edited by

* User name associated with 1st Sharing account; if there are no Sharing accounts;
    * Don't show the byline

Open issue: What if the user has multiple Sharing accounts and the same item is shared on multiple accounts?

For draft message items: Send as, Edited by

* Email address associated with 1st Outgoing email account user has successfully filled out; if there are no Outgoing email accounts... * Email address associated with 1st Incoming email account user has successfully filled out; if there are no Incoming email accounts;
    * User name associated with 1st Sharing account; otherwise
    * Don't show the byline
* Note: If you receive a Draft item via server sharing, Chandler does not change the Send as / Edited by field to your email address unless you actually click into the Draft item and make an edit.

*What are the options in the Send as:/Edited by: pulldown?*
*
*
* * If the user has filled out an Outgoing email account, only show email addresses associated with Outgoing email accounts; otherwise* * * Only show the email address associated with the Incoming email account or the Sharing account user name. Clicking on either will spawn the Configure email account... dialog, so there will be no opportunity to select alternatives.*

For sent/received message items: Sent by, Updated by

    * Email address the item was sent with.

Philippe, does this provide more clarity on this issue?

Somewhat I still feel I have to read between the lines to make sense of this. So, to cut through the chase, I'm reformulating the whole thing the way I understand it. I'm using the email spec (http://svn.osafoundation.org/docs/trunk/docs/specs/rel0_7/ Email-0.7.html) rather than the here above extracted text since the spec gives more context. I also incorporated changes suggested by Bryan and agreed upon by Mimi later in that thread (namely, that we will display a byline containing the date even if there's no identity to be found, e.g. "Edited on 03/05/07").

Correct what is described above is specific to a few contexts:
+ User creates a new item
+ User edits an item

It doesn't describe what happens when you receive an item from a sharee. Presumably the sharee's Chandler will assign the right value to the byline before they sync.


First, I'd like to clarify that the text here above doesn't refer so much to what goes into the byline than to what must be saved into the item's lastModifiedBy attribute. It's clear for instance that, if you sync the Office Calendar and select an item (say an event) created by Helen the Hub on Monday, you are expecting the byline to say "Created by Helen on 03/05/07". The problem with the byline as implemented right now in the trunk (a placeholder for the real thing for sure) is that because the lastModifiedBy attribute is always set to None, all item say "Created by me on <displayDate>", even when, clearly, I've nothing to do with their creation.

So the byline text should be something like:
  <edit type> <lastModifiedBy> on <displayDate>

- <edit type> must be chosen as appropriate within the following list: Created by, Send as, Sent by, Edited by, Updated by - if <lastModifiedby> is None, then the "by/as <lastModifiedBy>" section is not displayed (that's the change suggested by Bryan IIUC).

Yup.

- displayDate being always present, I don't think there's a case where we don't display the date... or is there?

Correct, there is *always* a displayDate.


(Note: for l10n reasons, the code shouldn't try to be too subtle and join pieces of strings together but, rather, adopt a more brute force approach so that translation of all the combinations can be done with correct grammar in various languages. I'll add something about this in the spec since it's off topic for this thread).

Now, onto my interpretation of Mimi's paragraph:

"""
*What the <lastModifiedBy> attribute should be: when creating or editing an item, the <lastModifiedBy> attribute is updated as follow:
*
For non-message items:
- if the user has Sharing accounts: user name associated with 1st Sharing account
  - else if the user has no Sharing account: None

Yup


Open issue: The user may have several sharing accounts with different user name. In such a case, the program should be able to pick the correct user name but that could become tricky if the item is shared multiple times or if the item is not shared at all. For Preview, we'll simply pick the 1st Sharing account. Post preview, the lastModifiedBy attribute should use the one of the user's identities described in his/her contacts.

Yup


For message items (any item stamped as a message):
- if the user has outgoing email accounts: email address of the 1st outgoing email account - else if the user has incoming email accounts: email address of the 1st incoming email account - else if the user has sharing accounts: user name associated with 1st Sharing account
  - else if the user has no account of any kind: None

Yup


Notes:
- "emailness prevails": that is to say that if an item is stamped as a message, the message items rules apply - If the user tries to send a message with no account set, the "Configure email account" prompt will display. Once the account is set, the item is updated (so that the message can be sent) and the <lastModifiedBy> attribute should be modified accordingly

Yup, thanks for clarifying that.

- for message created/edited by the local user, the byline is editable so the default here above described can be overwritten by the user (who can choose an alternative email address from another smtp account for instance). The <lastModifiedBy> should reflect whatever account has been chosen.

Yup, ditto from above.


*What the <edit type> text should be: when displaying in the detail view, the byline uses the following text:
*
For non-message items:
  - if the item has never been modified: Created by
- else if the item has been edited locally by the user but not synced: Edited by
  - all other cases: Updated by

Non-message items can never be Updated by.


For message items:
  - if the item has never been sent: Send as
- else if the item has been sent (or received) and has never been edited: Sent by - else if the item has been edited locally but never sent or synced: Edited by
  - all other cases: Updated by

Yup


Notes:

You mean these are additional Notes, not a reference to the Note Kind?

- a non shared item can have only "Created by" or "Edited by" as text, it never turns to "Updated by"

'Updated by' happens when the item has been sent. A non-message item can only have 'Created by' or 'Edited by', but never 'Updated by'.

- ideally, Chandler should have a notion of "edit session" and be able to share that state so that a shared item could be seen as "Edited by". I'm not sure we can get to that for Preview, can we?

I feel like there are a few scenarios where we want this. Particularly wrt editing recurring events: http:// bugzilla.osafoundation.org/show_bug.cgi?id=8242.


"""

Issues:
- For an item I (local user) edit, it appears that the transition from "Edited by" to "Updated by" happens after the next sync (manual or background). Is that correct?

The item byline should display ;Updated by' as soon as the user Sends the Update?

- For an item which is both shared and emailed, I suppose the emailness overwrite the shareness and then the byline should say "Send as <lastModifiedby>" rather than "Edited by <lastModifiedby>" when editing. What if the item is synced but not sent? I still think it should say "Send as" and not switch to "Updated by" (i.e. emailness always win). Is that ok?

Then the item remains 'Send as'. 'Updated by' only appears if an email has been sent. Sync by itself never prompts a switch to 'Updated by'.

- Ideally, Chandler should have a notion of "edit session" and be able to share that state so that a shared item could be seen as "Edited by". I'm not sure we can get to that for Preview, can we? There's some domain model change here (if we need to share that state) so I'm expecting Grant to pipe in

Cheers,
- Philippe


_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

Open Source Applications Foundation "Design" mailing list
http://lists.osafoundation.org/mailman/listinfo/design

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

Open Source Applications Foundation "Design" mailing list
http://lists.osafoundation.org/mailman/listinfo/design

Reply via email to