Bug 883910

Summary: [ja_JP] Test case failure: Disk Tab: Remove Disk(s) dialog: "[disk-alias] is Bootable and Attached to [n] VM(s)" message structure need to be revised.
Product: Red Hat Enterprise Virtualization Manager Reporter: Idith Tal-Kohen <italkohe>
Component: ovirt-engine-webadmin-portalAssignee: Shahar Havivi <shavivi>
Status: CLOSED ERRATA QA Contact: Yuko Katabami <ykatabam>
Severity: urgent Docs Contact:
Priority: high    
Version: 3.1.0CC: abaron, cpelland, derez, dyasny, ecohen, eng-i18n-bugs, iheim, lijli, Rhev-m-bugs, sgordon, sgrinber, ykatabam, ykaul, zdover
Target Milestone: ---Keywords: i18n, Translation, ZStream
Target Release: 3.1.2   
Hardware: Unspecified   
OS: Linux   
Whiteboard: ux i18n
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Previously, under the Disk tab, the way that the information in the "Remove Disks" window was structured made it difficult to translate into grammatically correct Japanese. The structure of the information in the "Remove Disks" window under the Disk tab has been changed to make it easier to translate into Japanese.
Story Points: ---
Clone Of: 871222 Environment:
Last Closed: 2013-02-04 23:34:48 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
Fixed Remove Disk none

Description Idith Tal-Kohen 2012-12-05 14:51:57 UTC
+++ This bug was initially created as a clone of Bug #871222 +++

Filed from caserun (INSERT URL HERE)

Version-Release number of selected component (if applicable):
unspecified

Steps to Reproduce: 
  * Portal should be in other than English Interface


  * Click on Disk tab in portal
  * Select a disk from the list (I picked icssi-d_Disk1)
  * Click on "Remove" button to open Remove Disk(s) window.
  * It contains message Note: icssi-d_Disk1 is Bootable and Attached to 1 VM(s)



Actual results: 
Japanese translation of that message is: 
注: icssi-d_Disk1 は  ブート可能および仮想マシン 1 台にアタッチ です。
This does not make sense. 
It is because of the string "Note: {0} is {1}" 
It seems that "{0} = icssi-d_Disk1"  which if fine, but
"{1} = Bootable and Attached to 1 VM(s)" This is too complicated to fit in this simple syntax. Verb has to be changed depending on what is placed in {1}. A full sentense without variable must be provided for translation, otherwise it will not make sense at all.
Expected results:
  注: icssi-d_Disk1 は ブート可能かつ仮想マシン 1 台にアタッチされています。

--- Additional comment from Einav Cohen on 2012-11-04 12:45:53 EST ---

code logic currently forces the structure, using localized "sentence-particles".
need a solution that will includue localizing full sentences, insead of "sentence-particles", as grammer of each locale is different, and requires a different sentence structure.

--- Additional comment from Einav Cohen on 2012-11-05 11:43:12 EST ---

Derez came up with a solution that will have both code logic and ux reasonable:

Instead of having a potentially long and complex message for each disk, e.g.:
"Note: 
    * Disk1 is Bootable and Shareable and Attached to 2 VM(s) other than VM1
    * Disk2 is Bootable
    * Disk3 is Shareable and Attached to 4 VM(s) other than VM1
    * ..."

We can have a small set of short, simple messages, so dialog will contain something like:

"Note:
    * Disk1 is Bootable
    * Disk1 is Shareable
    * Disk1 is Attached to 2 VM(s) other than VM1
    * Disk2 is Bootable
    * Disk3 is Shareable
    * Disk3 is Attached to 4 VM(s) other than VM1
    * ..."

This will prevent the need to hold/localize all possible permutations of sentences that contain (or not) "bootable", "shareable", "attached to x VMs", etc., therefore code logic will be much more simple and easily-maintainable.

ux-wise: although in some aspects this is less user-friendly, short messages like this are also more "easily-digestable" and there is less of a chance that the user will miss an important detail about a certain disk.

Simon - any objection to proceed with the suggestion above?

--- Additional comment from Simon Grinberg on 2012-11-05 13:52:29 EST ---

(In reply to comment #2)
 
> "Note:
>     * Disk1 is Bootable
>     * Disk1 is Shareable
>     * Disk1 is Attached to 2 VM(s) other than VM1
>     * Disk2 is Bootable
>     * Disk3 is Shareable
>     * Disk3 is Attached to 4 VM(s) other than VM1
>     * ..."

Why not

"Note:
      * Disk one is:
        Bootable
        Shareable
        Attached to 2 VM(s) other than VM1
      * Disk two is:
        Bootable 
Etc....

Isn't that even shorter and does not look repetitive    

> 
> Simon - any objection to proceed with the suggestion above?

I'm fine if you take Derez suggestion if mine is more complex to implement.

--- Additional comment from Einav Cohen on 2012-11-06 16:21:07 EST ---

After checking with all relevant people, we are going with Simon's suggestion in Comment #3.

That means that the localized strings would be as follows:

    @DefaultMessage("Note:")
    String diskNote();

    @DefaultMessage("{0} is:")
    String diskIs(String diskAlias);

    @DefaultStringValue("Shareable")
    String shareable();

    @DefaultStringValue("Bootable")
    String bootable();

    @DefaultMessage("Attached to {0} VM(s) other than {1}")
    String diskAttachedToOtherVMs(int numberOfVms, String vmName);

    @DefaultMessage("Attached to {0} VM(s)")
    String diskAttachedToVMs(int numberOfVms);

And code logic in the GUI should change in order to eventually construct a message like Simon's suggesed in Comment #3.

--- Additional comment from Shahar Havivi on 2012-11-07 08:23:59 EST ---

Created attachment 640062 [details]
reformat remove disk message

Added screenshot for the patch solution

--- Additional comment from Shahar Havivi on 2012-11-07 08:25:00 EST ---

posted at: http://gerrit.ovirt.org/#/c/9101/

--- Additional comment from Einav Cohen on 2012-11-08 15:42:51 EST ---

My original thought was that the dialog content will be structured as follows:

"
   are you sure you want to remove the following disk(s)?

   - disk1
   - disk2
   - disk3
   - disk4

   Note:
   -----
     - disk1 is:
        * shareable
        * bootable
        * attached to 1 VM(s)

     - disk3 is:
        * shareable
"

Apparently, the "Note"s are "embedded" within the list of items to be removed, and not separated from them, like this:

"
   are you sure you want to remove the following disk(s)?

   - disk1
    Note:
     disk1 is:
       shareable
       bootable
       attached to 1 VM(s)

   - disk2

   - disk3
    Note:
       disk3 is:
         shareable

   - disk4
"

It actually makes sense to embed the Notes witihn the items to be removed.

However, in this case:
- there is no need to mention the disk alias again within the Note.
- No real need to separate the "Note:" and the "[disk-alias] is:" parts.

So it would make more sense that the dialog text will be structured as follows:

"
   are you sure you want to remove the following disk(s)?

   - disk1
     Note that the disk is:
       shareable
       bootable
       attached to 1 VM(s)

   - disk2

   - disk3
     Note that the disk is:
       shareable

   - disk4
"

--- Additional comment from Einav Cohen on 2012-11-08 15:56:04 EST ---

Hi Yuko,

Will it be OK (grammar-wise in the different locales) if the messages for translation would be:

- Note that the Disk is:
- Shareable
- Bootable
- Attached to {0} VM(s) other than {1}  // {0} : number of VMs, {1} : VM name

to eventually form a dialog message that would look something like:

"
   are you sure you want to remove the following disk(s)?

   - disk1
     Note that the Disk is:
       Shareable
       Bootable
       Attached to 1 VM(s) other than VM2

   - disk2

   - disk3
     Note that the Disk is:
       shareable

   - disk4
"

[this is instead of the suggested following strings that we have discussed before to eventually form something like Simon's suggestion in Comment #3:

- Note:
- {0} is:                               // {0} : Disk Alias
- Shareable
- Bootable
- Attached to {0} VM(s) other than {1}  // {0} : number of VMs, {1} : VM name
]

(see comment #7 for a some background for the change, if you want)
Thanks.

--- Additional comment from Yuko Katabami on 2012-11-08 21:49:35 EST ---

Hi Einav,

I checked with other language translators and confirmed that following langs have no problems with the change you are making: br-PT, fr-FR, es-ES, 
de-DE, and ja-JP

Unfortunately zh-CH translator is not available today. I need to confirm this with her on Monday. Sorry to hold you up.

--- Additional comment from Shahar Havivi on 2012-11-09 05:50:51 EST ---

new patch sent with the following format
   - disk1
     Note that the Disk is:
       Shareable
       Bootable

--- Additional comment from Einav Cohen on 2012-11-09 13:03:52 EST ---

Created attachment 641728 [details]
screen-shot: Remove Disk dialog with updated messages

--- Additional comment from Einav Cohen on 2012-11-09 13:07:08 EST ---

You can see the updated dialog content structure in attachment 641728 [details].
Looks much better.

--- Additional comment from Yuko Katabami on 2012-11-11 19:39:21 EST ---

Confirmed with the Simplified Chinese translator that the new format works with zh-CH as well. Thanks.

--- Additional comment from Einav Cohen on 2012-12-04 17:32:04 EST ---

merged upstream:

http://gerrit.ovirt.org/gitweb?p=ovirt-engine.git;a=commit;h=5a2f500dff5e976cd15cb083891916cadc9dbf25

Comment 3 Einav Cohen 2013-01-09 05:05:15 UTC
QA: This bug is only about checking (in English only!) that the messages structure in the "remove disk" dialog has changed to be as follows:

"
   are you sure you want to remove the following disk(s)?

   - disk1
     Note that the Disk is:
       Shareable
       Bootable
       Attached to 1 VM(s) other than VM2

   - disk2

   - disk3
     Note that the Disk is:
       shareable

   - disk4
"

The non-English strings change will be tracked/tested in the context of the BZ that will be cloned to z-stream from Bug 889232.

Comment 5 Lijun Li 2013-01-11 10:29:56 UTC
Verified on the latest rhevm si build, it's fixed.

# rpm -q rhevm rhevm-webadmin-portal
rhevm-3.1.0-41.el6ev.noarch
rhevm-webadmin-portal-3.1.0-41.el6ev.noarch

Please refer to the attached screen shot.

Thanks,
Robert

Comment 6 Lijun Li 2013-01-11 10:31:18 UTC
Created attachment 676780 [details]
Fixed Remove Disk

Comment 8 errata-xmlrpc 2013-02-04 23:34:48 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

http://rhn.redhat.com/errata/RHSA-2013-0211.html