Policies: All KARL2
There are some policies that apply to all pages in the various “layouts”
of KARL. This document describes each policy, organized by the layout.
All
The following policies apply no matter the layout.
- The KARL logo appears in the top right screen and is clickable, taking
you to the Root URL (e.g. https://karl.soros.org/).
- Going to the Root URL redirects you to the correct place,
depending on circumstances:
- If you have not logged in, or your login is invalid, you are
redirected to login-edit.
- If you are logged in, and you are KarlStaff, you are sent to the
office-view for your screen as your Home URL
- If you are logged in, and you are not KarlStaff, you are sent to the
/communities page as you Home URL
- Support a print CSS layout as well as a screen layout
- Allow versioning of URLs to static resources, for caching purposes
- Inject Google analytics JS at the end of the </body>
- Inspect karlfunctions.xsl for some mapping of htmltitle per screen
LiveSearch
- After the third key is pressed, search is triggered
- Queue up keypresses and only search-and-update every 2 sec
- Perform a search and group results by “Kind”
- Show up to 5 results for each Kind
- Display “No Matches” in a Kind group that has no results
- Each result has a link to visit that result
- Each group has a link to do searchresults on just that group
- A “Show All” link goes to searchresults for any group
- Pressing Escape or clicking outside the box makes the results box
disappear
- Arrow keys move between results
- Pressing enter is equivalent to clicking on a result
- Pressing backspace generates a new search, caching where possible
Office Layout
- In the footer, bold the the office that the current URL lives under
and show its address if it isn’t the National Foundation
Generic KARL Layout
This layout handles screens that aren’t in a community or an office.
Examples include: communities-view, people screens, search results, and
global tag views.
Anonymous Layout
This layout handles the few screens you can see when you are not yet
logged in. E.g. login, logout, acceptinvitation, recover password.
- Don’t inject Google Analytics
- Never show actions box