Welcome | Get started | Dive | Contribute | Topics | Reference | Changes | More
menu¶
>>> import lino
>>> lino.startup('lino_book.projects.noi1r.settings')
>>> from lino.api.doctest import *
>>> from pprint import pprint
>>> test_client.force_login(rt.login('robin').user)
>>> pprint_json_string(test_client.get("/ui/menu/?fmt=json").content)
...
[
{
"menu": {
"items": [
{
"handler": {
"action": "grid.contacts.Persons",
"rp": null,
"status": {}
},
"text": "Persons",
"toolTip": "Shows all persons."
},
{
"handler": {
"action": "grid.contacts.Companies",
"rp": null,
"status": {}
},
"text": "Organizations",
"toolTip": "An organisation. The verbose name is \"Organization\" while the\ninternal name is \"Company\" because the latter easier to type and\nfor historical reasons."
},
{
"handler": {
"action": "grid.lists.Lists",
"rp": null,
"status": {}
},
"text": "Partner Lists"
}
]
},
"text": "Contacts"
},
{
"menu": {
"items": [
{
"handler": {
"action": "grid.cal.MyEntries",
"rp": null,
"status": {}
},
"text": "My appointments",
"toolTip": "Table of appointments for which I am responsible."
},
{
"handler": {
"action": "grid.cal.OverdueAppointments",
"rp": null,
"status": {}
},
"text": "Overdue appointments",
"toolTip": "Shows overdue appointments, i.e. appointments whose date is\nover but who are still in a nonstable state."
},
{
"handler": {
"action": "grid.cal.MyUnconfirmedAppointments",
"rp": null,
"status": {}
},
"text": "Unconfirmed appointments",
"toolTip": "Shows my appointments in the near future which are in suggested or\ndraft state."
},
{
"handler": {
"action": "grid.cal.MyTasks",
"rp": null,
"status": {}
},
"text": "My tasks",
"toolTip": "Shows my tasks whose start date is today or in the future."
},
{
"handler": {
"action": "grid.cal.MyGuests",
"rp": null,
"status": {}
},
"text": "My guests",
"toolTip": "The default table of presences."
},
{
"handler": {
"action": "grid.cal.MyPresences",
"rp": null,
"status": {}
},
"text": "My presences",
"toolTip": "Shows all my presences in calendar events, independently of their\nstate."
},
{
"handler": {
"action": "grid.cal.MyOverdueAppointments",
"rp": null,
"status": {}
},
"text": "My overdue appointments",
"toolTip": "Like OverdueAppointments, but only for myself."
},
{
"handler": {
"action": "grid.extensible.CalendarPanel",
"rp": null,
"status": {}
},
"iconCls": "x-tbar-calendar",
"text": "Calendar",
"toolTip": "Displays your events in a \"calendar view\" with the possibility to switch between daily, weekly, monthly view."
}
]
},
"text": "Calendar"
},
{
"menu": {
"items": [
{
"handler": {
"action": "grid.excerpts.MyExcerpts",
"rp": null,
"status": {}
},
"text": "My Excerpts",
"toolTip": "Base class for all tables on Excerpt."
},
{
"handler": {
"action": "grid.comments.MyComments",
"rp": null,
"status": {}
},
"text": "My Comments"
},
{
"handler": {
"action": "grid.comments.RecentComments",
"rp": null,
"status": {}
},
"text": "Recent comments"
},
{
"handler": {
"action": "grid.notify.MyMessages",
"rp": null,
"status": {}
},
"text": "My Notification messages",
"toolTip": "Shows messages emitted to me."
},
{
"handler": {
"action": "grid.uploads.MyUploads",
"rp": null,
"status": {}
},
"text": "My Uploads",
"toolTip": "Shows only my Uploads (i.e. those whose author is current user)."
}
]
},
"text": "Office"
},
{
"menu": {
"items": [
{
"handler": {
"action": "grid.tickets.MyTickets",
"rp": null,
"status": {}
},
"text": "My tickets",
"toolTip": "Show all active tickets reported by me."
},
{
"handler": {
"action": "grid.tickets.ActiveTickets",
"rp": null,
"status": {}
},
"text": "Active tickets",
"toolTip": "Show all tickets that are in an active state."
},
{
"handler": {
"action": "grid.tickets.AllTickets",
"rp": null,
"status": {}
},
"text": "All tickets",
"toolTip": "Shows all tickets."
},
{
"handler": {
"action": "grid.tickets.UnassignedTickets",
"rp": null,
"status": {}
},
"text": "Unassigned Tickets",
"toolTip": "Base class for all tables of tickets."
},
{
"handler": {
"action": "grid.tickets.RefTickets",
"rp": null,
"status": {}
},
"text": "Reference Tickets",
"toolTip": "Shows all tickets that have a reference."
},
{
"handler": {
"action": "grid.tickets.MySites",
"rp": null,
"status": {}
},
"text": "My sites",
"toolTip": "Shows the sites for which I have a subscription."
},
{
"handler": {
"action": "grid.tickets.MyTicketsToWork",
"rp": null,
"status": {}
},
"text": "Tickets to work",
"toolTip": "Show all active tickets assigned to me."
}
]
},
"text": "Tickets"
},
{
"menu": {
"items": [
{
"handler": {
"action": "grid.working.MySessions",
"rp": null,
"status": {}
},
"text": "Sessions"
},
{
"handler": {
"action": "grid.working.ServiceReports",
"rp": null,
"status": {}
},
"text": "Service Reports"
},
{
"handler": {
"action": "grid.working.WorkedHours",
"rp": null,
"status": {}
},
"text": "Worked hours"
}
]
},
"text": "Working time"
},
{
"menu": {
"items": [
{
"handler": {
"action": "grid.github.MyCommits",
"rp": null,
"status": {}
},
"text": "My Commits"
}
]
},
"text": "GitHub"
},
{
"menu": {
"items": [
{
"handler": {
"action": "grid.mailbox.UnassignedMessages",
"rp": null,
"status": {}
},
"text": "Messages"
}
]
},
"text": "Mailbox"
},
{
"menu": {
"items": [
{
"menu": {
"items": [
{
"handler": {
"action": "detail.system.SiteConfigs",
"rp": null,
"status": {
"record_id": 1
}
},
"iconCls": "x-tbar-application_form",
"text": "Site configuration"
},
{
"handler": {
"action": "grid.users.AllUsers",
"rp": null,
"status": {}
},
"text": "Users",
"toolTip": "Shows the list of all users on this site."
}
]
},
"text": "System"
},
{
"menu": {
"items": [
{
"handler": {
"action": "grid.countries.Countries",
"rp": null,
"status": {}
},
"text": "Countries"
},
{
"handler": {
"action": "grid.countries.Places",
"rp": null,
"status": {}
},
"text": "Places",
"toolTip": "\n The table of known geographical places.\n A geographical place can be a city, a town, a suburb,\n a province, a lake... any named geographic entity,\n except for countries because these have their own table.\n "
}
]
},
"text": "Places"
},
{
"menu": {
"items": [
{
"handler": {
"action": "grid.contacts.CompanyTypes",
"rp": null,
"status": {}
},
"text": "Organization types"
},
{
"handler": {
"action": "grid.contacts.RoleTypes",
"rp": null,
"status": {}
},
"text": "Functions"
},
{
"handler": {
"action": "grid.lists.ListTypes",
"rp": null,
"status": {}
},
"text": "List Types"
}
]
},
"text": "Contacts"
},
{
"menu": {
"items": [
{
"handler": {
"action": "grid.cal.Calendars",
"rp": null,
"status": {}
},
"text": "Calendars"
},
{
"handler": {
"action": "grid.cal.AllRooms",
"rp": null,
"status": {}
},
"text": "Rooms",
"toolTip": "List of rooms where calendar events can happen."
},
{
"handler": {
"action": "grid.cal.Priorities",
"rp": null,
"status": {}
},
"text": "Priorities",
"toolTip": "List of possible priorities of calendar events."
},
{
"handler": {
"action": "grid.cal.RecurrentEvents",
"rp": null,
"status": {}
},
"text": "Recurring events",
"toolTip": "The list of all recurrent events (RecurrentEvent)."
},
{
"handler": {
"action": "grid.cal.GuestRoles",
"rp": null,
"status": {}
},
"text": "Guest roles",
"toolTip": "Global table of guest roles."
},
{
"handler": {
"action": "grid.cal.EventTypes",
"rp": null,
"status": {}
},
"text": "Calendar entry types",
"toolTip": "The list of entry types defined on this site."
},
{
"handler": {
"action": "grid.cal.EventPolicies",
"rp": null,
"status": {}
},
"text": "Recurrency policies",
"toolTip": "Global table of all possible recurrencly policies."
},
{
"handler": {
"action": "grid.cal.RemoteCalendars",
"rp": null,
"status": {}
},
"text": "Remote Calendars"
},
{
"handler": {
"action": "grid.cal.DailyPlannerRows",
"rp": null,
"status": {}
},
"text": "Planner rows"
}
]
},
"text": "Calendar"
},
{
"menu": {
"items": [
{
"handler": {
"action": "grid.excerpts.ExcerptTypes",
"rp": null,
"status": {}
},
"text": "Excerpt Types",
"toolTip": "Displays all rows of ExcerptType."
},
{
"handler": {
"action": "grid.comments.CommentTypes",
"rp": null,
"status": {}
},
"text": "Comment Types",
"toolTip": "The table with all existing comment types."
},
{
"handler": {
"action": "grid.uploads.UploadTypes",
"rp": null,
"status": {}
},
"text": "Upload Types",
"toolTip": "The table with all existing upload types."
},
{
"handler": {
"action": "grid.tinymce.MyTextFieldTemplates",
"rp": null,
"status": {}
},
"text": "My Text Field Templates"
}
]
},
"text": "Office"
},
{
"menu": {
"items": [
{
"handler": {
"action": "grid.tickets.TicketTypes",
"rp": null,
"status": {}
},
"text": "Ticket types"
},
{
"handler": {
"action": "grid.tickets.AllSites",
"rp": null,
"status": {}
},
"text": "Sites"
}
]
},
"text": "Tickets"
},
{
"menu": {
"items": [
{
"handler": {
"action": "grid.working.SessionTypes",
"rp": null,
"status": {}
},
"text": "Session Types"
}
]
},
"text": "Working time"
},
{
"menu": {
"items": [
{
"handler": {
"action": "grid.github.Repositories",
"rp": null,
"status": {}
},
"text": "Repositories"
}
]
},
"text": "GitHub"
},
{
"menu": {
"items": [
{
"handler": {
"action": "grid.mailbox.Mailboxes",
"rp": null,
"status": {}
},
"text": "Mailboxes"
}
]
},
"text": "Mailbox"
}
]
},
"text": "Configure"
},
{
"menu": {
"items": [
{
"menu": {
"items": [
{
"handler": {
"action": "grid.gfks.ContentTypes",
"rp": null,
"status": {}
},
"text": "content types",
"toolTip": "Default table for django.contrib.ContentType."
},
{
"handler": {
"action": "grid.users.Authorities",
"rp": null,
"status": {}
},
"text": "Authorities"
},
{
"handler": {
"action": "grid.users.UserTypes",
"rp": null,
"status": {}
},
"text": "User types",
"toolTip": "The list of user types available in this application."
},
{
"handler": {
"action": "grid.users.UserRoles",
"rp": null,
"status": {}
},
"text": "User roles"
},
{
"handler": {
"action": "grid.changes.Changes",
"rp": null,
"status": {}
},
"text": "Changes",
"toolTip": "The default table for Change."
},
{
"handler": {
"action": "grid.notify.AllMessages",
"rp": null,
"status": {}
},
"text": "Notification messages",
"toolTip": "The gobal list of all messages."
},
{
"handler": {
"action": "grid.checkdata.Checkers",
"rp": null,
"status": {}
},
"text": "Data checkers",
"toolTip": "The list of data problem types known by this application."
},
{
"handler": {
"action": "grid.checkdata.AllMessages",
"rp": null,
"status": {}
},
"text": "Data problem messages",
"toolTip": "Show all data problems."
},
{
"handler": {
"action": "grid.dashboard.AllWidgets",
"rp": null,
"status": {}
},
"text": "All dashboard widgets"
},
{
"handler": {
"action": "grid.userstats.UserStats",
"rp": null,
"status": {}
},
"text": "User Statistics"
}
]
},
"text": "System"
},
{
"menu": {
"items": [
{
"handler": {
"action": "grid.contacts.Roles",
"rp": null,
"status": {}
},
"text": "Contact persons"
},
{
"handler": {
"action": "grid.contacts.Partners",
"rp": null,
"status": {}
},
"text": "Partners"
},
{
"handler": {
"action": "grid.lists.AllMembers",
"rp": null,
"status": {}
},
"text": "List memberships"
}
]
},
"text": "Contacts"
},
{
"menu": {
"items": [
{
"handler": {
"action": "grid.cal.AllEntries",
"rp": null,
"status": {}
},
"text": "events",
"toolTip": "Table which shows all calendar events."
},
{
"handler": {
"action": "grid.cal.Tasks",
"rp": null,
"status": {}
},
"text": "Tasks",
"toolTip": "Global table of all tasks for all users."
},
{
"handler": {
"action": "grid.cal.Subscriptions",
"rp": null,
"status": {}
},
"text": "Subscriptions"
},
{
"handler": {
"action": "grid.cal.EntryStates",
"rp": null,
"status": {}
},
"text": "Event states",
"toolTip": "The possible states of a calendar entry.\nStored in the state field."
},
{
"handler": {
"action": "grid.cal.GuestStates",
"rp": null,
"status": {}
},
"text": "Guest states",
"toolTip": "Global choicelist of possible guest states."
},
{
"handler": {
"action": "grid.cal.TaskStates",
"rp": null,
"status": {}
},
"text": "Task states",
"toolTip": "Possible values for the state of a Task. The list of\nchoices for the Task.state field."
}
]
},
"text": "Calendar"
},
{
"menu": {
"items": [
{
"handler": {
"action": "grid.excerpts.AllExcerpts",
"rp": null,
"status": {}
},
"text": "Excerpts",
"toolTip": "Base class for all tables on Excerpt."
},
{
"handler": {
"action": "grid.comments.AllComments",
"rp": null,
"status": {}
},
"text": "Comments"
},
{
"handler": {
"action": "grid.uploads.AllUploads",
"rp": null,
"status": {}
},
"text": "Uploads",
"toolTip": "Shows all Uploads"
},
{
"handler": {
"action": "grid.uploads.UploadAreas",
"rp": null,
"status": {}
},
"text": "Upload Areas"
},
{
"handler": {
"action": "grid.tinymce.TextFieldTemplates",
"rp": null,
"status": {}
},
"text": "Text Field Templates"
}
]
},
"text": "Office"
},
{
"menu": {
"items": [
{
"handler": {
"action": "grid.tickets.Links",
"rp": null,
"status": {}
},
"text": "Dependencies"
},
{
"handler": {
"action": "grid.tickets.TicketStates",
"rp": null,
"status": {}
},
"text": "Ticket states",
"toolTip": "The choicelist of possible values for the state of a ticket."
},
{
"handler": {
"action": "grid.tickets.Subscriptions",
"rp": null,
"status": {}
},
"text": "Site subscriptions"
}
]
},
"text": "Tickets"
},
{
"menu": {
"items": [
{
"handler": {
"action": "grid.working.Sessions",
"rp": null,
"status": {}
},
"text": "Sessions"
},
{
"handler": {
"action": "grid.working.AllSummaries",
"rp": null,
"status": {}
},
"text": "Site summaries"
}
]
},
"text": "Working time"
},
{
"menu": {
"items": [
{
"handler": {
"action": "grid.github.Commits",
"rp": null,
"status": {}
},
"text": "Commits"
}
]
},
"text": "GitHub"
},
{
"menu": {
"items": [
{
"handler": {
"action": "grid.mailbox.Messages",
"rp": null,
"status": {}
},
"text": "Messages"
}
]
},
"text": "Mailbox"
}
]
},
"text": "Explorer"
},
{
"menu": {
"items": [
{
"handler": {
"action": "show.about.About",
"rp": null,
"status": {
"record_id": -99998
}
},
"text": "About",
"toolTip": "Show information about this site."
}
]
},
"text": "Site"
}
]