We're updating the issue view to help you get more done.Learn more

Change frontend and editor path

At the moment, frontend path uses /a, and alpha editor uses /app, as part of this change:

Scope changes

  • Changed new glossary path from

    /glossary/{id}

    to

    /glossary?locale={localeid}

    • There is no glossary id since we only have a global glossary

    • Discussed 1/Sep/16 by damason, sflanigan

  • Added

    Requirements

    section.

    • In yesterday's meeting, we discussed several requirements, but they were not written down.

    • Checked with aeng about what we discussed for redirects.

Requirements

  • "Try the new alpha editor" button in old editor still opens the new editor.

  • Opening a bookmark to the previous location of the alpha editor should show a 404 page.

    • There was discussion of a link from the 404 page to the new alpha editor path, but no one wrote it down. No one will remember by the time it is being tested, so I guess I should just add this if I feel like it.

  • Profile and glossary pages are not deployed yet so no redirect is needed.

New paths to implement

Profile:

1 /profile/view/{username}
  • currently

    1 /a/#/profile/{username}

Glossary:

1 /glossary?locale={localeid}
  • currently

    1 /a/#/glossary?locale={localeid}

Editor:

1 /project/{project}/v/{version}/translate/{document}?lang={locale}
  • currently

    1 /app/#/{project}/{version}/translate/{document}/{locale}
  • document

    should be standard url encoded, but / characters can be included literally. Spaces, percentage sign, comma, quotes, apostrophe, semicolon, question mark, etc. will still need to be encoded, similar to github. e.g.

    1 /project/my-project/v/1.5/translate/path1/path2/my%20files/file.name?lang=en_us

Technical notes

This will require some server-side rules, similar to the ones we use on the project pages (which use crossroads.js for client-side routing):

1 2 3 .addRule(Join.path("/project/view/{slug}").to("/project/project.xhtml")) .addRule(Join.path("/project/view/{slug}/{section}").to("/project/project.xhtml")) .where("section").matches(".*")

Status

Assignee

David Mason

Reporter

Alex Eng

Tested Version/s

None

Story point estimate

3

Time estimate

36h

Sprint

None

Fix versions

Priority

unspecified