1 DoodleComponent subclass: DoodleApp [
4 DoodleApp class >> canBeRoot [ ^true ]
8 currentView := ListPollView new.
13 children [ ^{ currentView } ]
19 initialRequest: aRequest [
20 super initialRequest: aRequest.
21 aRequest fields at: 'pollId'
23 self currentView: (EditPollView new).
24 currentView pollId: value.
28 renderMenuItemOn: html callback: aCallback with: aName [
30 class: 'pure-menu-item';
33 class: 'pure-menu-link';
41 class: 'pure-menu pure-menu-horizontal';
44 class: 'pure-menu-list';
46 self renderMenuItemOn: html
47 callback: [ self currentView: (ListPollView new) ]
49 self renderMenuItemOn: html
50 callback: [ self currentView: (NewPollView new) ]
52 (Seaside.WACurrentSession value user) ifNil: [
53 self renderMenuItemOn: html
54 callback: [ self currentView: (LoginUserView new) ]
56 self renderMenuItemOn: html
57 callback: [ self currentView: (NewUserView new) ]
60 self renderMenuItemOn: html
61 callback: [ self currentView: (UserAccountView new) ]
68 updateRoot: anHtmlRoot [
69 super updateRoot: anHtmlRoot.
70 anHtmlRoot stylesheet url: '/css/pure-min.css'.
71 anHtmlRoot stylesheet url: '/css/font-awesome.min.css'.
72 anHtmlRoot stylesheet url: '/css/doodle.css'.
75 renderContentOn: html [
76 self renderMenuOn: html.
77 html render: currentView.
79 html text: 'Generated at: '.
80 html render: (DateTime now).
84 (DoodleApp registerAsApplication: 'doodle')
85 preferenceAt: #sessionClass put: DoodleSession