Policies: Offices
Policies related to the office home page and other screens related to
offices.
Show Office
This screen is the intranet home page for an office within an
organization.
Show Network News
- There is a screencast available for this at
http://carlos.agendaless.com/screencasts.
- You reach this screen from a portlet in the middle column of an
intranet home page, e.g. ‘/offices/nyc/’. The portlet has a link
say “MORE NETWORK NEWS” that leads to this screen.
- This is a folder at the /offices/files/network-news location.
It is a regular Folder, except:
- A KarlAdmin visited /offices/files and clicked Add Folder
- They then made network-news, but when viewing it,
Advanced appeared in the actions menu (only for admins)
- There they chose the Network News “marker” for that folder
- This is all done by default now for the src/osi/osi/run.py
loading script
- Note that start_over --yes creates this folder by default. It
is a regulary Folder but with a marker that affects the view used,
what actions are available, etc.
- Shown in the intranet layout
- Only KarlStaff can visit this screen
- Members of a certain group will get permissions assigned (as part of
the sync script) that allows editing, which will give them the “Add
News Item” action (the admin user gets that also).
- There is an “Advanced” action that appears for KarlAdmin users.
- The backlink takes them to the same URL that “HOME” takes them to,
meaning, their home office.
- The pageheading and title say “Network News”.
- Two columns in grid (Title and Date). The date used in the Date
column is the publication date, formatted like “March 19, 2009”.
The values for Title are hyperlinks to show the item.
- If there are no items, show “No Items” without any headings.
- Entries are shown sorted by publication date with a pagination box
at the top and bottom. Although KARL2 did column sorting, we’re
going to punt on that and approach OSI with a comprehensive approach
to grids (via Balazs).
Add News Item
- This form has the following fields:
- Title (required)
- Tags
- Text
- Image. File upload file with a helptext of “Will be shown in the
news listing, and in the news item itself.” (We don’t do
server-side scaling of images.)
- Image Caption. UnicodeString. Fail validation if it doesn’t
appear to be an image (this is a nice-to-have, not a must-have.)
- Attachments. In KARL2 this was just one Upload File. Let’s
follow the path of Calendar Events and allow multiple attachments.
- Publication Date. Use a date picker a la Calendar Event. When
first visiting the add form, initialize to “now”.
- Both of the fields have the same validator and formfield snippet as
Title and Text used elsewhere. Also, use the “make_unique_name”
helper to generate a “-1” duplicate transparently, as in most other
content add forms.
- Indexing
- Use the TitleAndFile adapter to make the contents searchable,
including the attached files. (Note: it’s possible that Calendar
Events doesn’t index attachments. Just do whatever it does.)
- Show the results under “Other” in LiveSearch
Show News Item
- This is the default view of a News Item
- Use the intranet layout. (Communities don’t get News Items
currently, so this can be the default layout.)
- A backlink has “Back to Network News”
- Members of a certain editorial group see actions of “Edit” and
“Delete” (as well as KarlAdmin.)
- Above the title of the News Item, we show the Publication Date
formatted as “Wednesday, Mar 25, 2009”. (Hopefully our IKarlDates
adapter has this as a “flavor”.
- We right-float the image that was uploaded (using the
newsitemImage CSS class.) Under that, we have the caption, if
present.
- Then the tagbox, then the attachments (using the snippet for
displaying attachments.)
- Finally the text.
Edit News Item
- Same as Add News Item except:
- Use the widget that preserves the uploaded file field as used in
Edit File
- Put in a status message on the URL when redirecting to the view,
to say “Your News Item has been saved.”
Show Network News Portlet
- This is a portlet that appears in the middle column for all office
home pages.
- It has a heading “Network News”, then up to five of the upcoming
news items, starting from today and using publication date as the
search criteria.
- There is a hyperlink at the bottom of the portlet that says “MORE
<PORTLET TITLE>” which goes to Show Network News.
- These portlets are currently implemented using adapters. See
src.osi.osi.views.retail._get_portlet_html. To follow this
pattern, make an adapter for the INetworkNewsMarker interface.
Show Network Events
- There is a screencast available for this at
http://carlos.agendaless.com/screencasts.
- You reach this screen from a portlet in the middle column of an
intranet home page, e.g. ‘/offices/nyc/’. The portlet has a link
say “MORE NETWORK EVENTS” that leads to this screen.
- This is a folder at the /offices/files/network-events location.
It is a regular Folder, except:
- A KarlAdmin visited /offices/files and clicked Add Folder
- They then made network-events, but when viewing it,
Advanced appeared in the actions menu (only for admins)
- There they chose the Network Events “marker” for that folder
- This is all done by default now for the src/osi/osi/run.py
loading script
- Note that start_over --yes creates this folder by default. It
is a regulary Folder but with a marker that affects the view used,
what actions are available, etc.
- Shown in the intranet layout
- Only KarlStaff can visit this screen
- Members of a certain group will get permissions assigned (as part of
the sync script) that allows editing, which will give them the “Add
Event” action (the admin user gets that also).
- There is an “Advanced” action that appears for KarlAdmin users.
- The backlink takes them to the same URL that “HOME” takes them to,
meaning, their home office.
- The pageheading and title say “Network Events”.
- We show two columns: Title and Date, where “Date” is the start date
of the event to the end date, using a short form such as “March
27-29, 2009”. In KARL2, those two columns claimed to be sortable,
but they actually weren’t. Thus, for 3.0 we can skip the sorting.
- The values for Title are hyperlinks to show the item.
- By default the listing shows events sorted in chronological order,
starting at “today”, and going forward in time. We use a pagination
box at the top and bottom. We can use the same pagination box used
in forum topics.
- If there are no items, show “No Items” without any headings.
- There is a link “Show Past Events” that toggles the direction of the
listings. Clicking this link takes you to today, but sorted
backwards in time. (That link then changes to say “Show Upcoming
Events”.)
- Above the grid we have a filterbar defined by
Filterbar.
- The add/show/edit calendar event is the same as in
Add Event except:
- Displayed in the intranet layout
- Sendalert and is private are not visible
- The backlink is “Back to Network Events”
Show Network Events Portlet
- This is a portlet that appears in the middle column for all office
home pages.
- It has a heading “Network Events”, then up to five of the upcoming
events, starting from today and using publication date as the search
criteria.
- There is a hyperlink at the bottom of the portlet that says “MORE
<PORTLET TITLE>” which goes to Show Network Events.
- These portlets are currently implemented using adapters. See
src.osi.osi.views.retail._get_portlet_html. To follow this
pattern, make an adapter for the INetworkEventsMarker interface.
Filterbar
- There is a “filterbar” that affects the current listings, whether in
Past or Upcoming mode. You can supply a searchterm (which uses the
‘texts’ index), a Year, and a Month.
- Year is a single-select dropdown showing all the years from 2007 to
the current year. There is also a choice of “All” which is the
default.
- Month is a dropdown showing all the months in a year. There is also
a choice of “All” which is the default.
- If someone choose a Month but not a Year, implicitly add the current
year to the filter.
- Choices made in the “filterbar” are preserved on the next results
screen, so people can see what filter they have applied (done via
QUERY_STRING preservation.) This also holds true when going
backwards and forwards through batches.