Index: modules/twiki/twiki-mod.scm ================================================================== --- modules/twiki/twiki-mod.scm +++ modules/twiki/twiki-mod.scm @@ -18,10 +18,18 @@ ;; Routines intended to be overridden by end users ;; (twiki:access keys wiki-name user-id) ;; search the code for "override" for more. +;; twiki css +;; ========= +;; Block tag +;; ----- --- +;; twiki twiki +;; twiki body div twiki-node +;; twiki main menu twiki-main-menu + ;; This is the currently supported mechanism. Postgres will be added later -mrw- 7/26/2009 ;; (define (twiki:open-db key . create-not-ok) ;; (s:log "Got to twiki:open-db with key: " key) (let* ((create-ok (if (null? create-not-ok) #t (car create-not-ok))) @@ -209,48 +217,29 @@ ;;====================================================================== ;; Routines for displaying, editing, browsing etc. tiddlers ;;====================================================================== ;; should change this to take a tiddler structure? +;; This is the display of a single tiddler (define (twiki:view dat tkey wid tiddler wiki) ;; close, close others, edit, more (let ((is-not-main (not (equal? "MainMenu" (twiki:tiddler-get-name tiddler)))) (edit-allowed (member 'w (twiki:wiki-get-perms wiki)))) - (s:div 'class "node" ;; "node" - ;; (s:hr " ") - ;; (s:p 'class (if is-not-main "float-left" "float-left-menu") - ;; (s:p 'class (if is-not-main "float-left" "float-right") - ;; (if is-not-main - ;; (s:big (s:b (twiki:tiddler-get-name tiddler))) - ;; (s:small ;; (s:b "Menu") - ;; (if edit-allowed - ;; (list "(" - ;; (s:a "edit" 'href - ;; (s:link-to (twiki:get-link-back-to-current) - ;; 'edit_tiddler (twiki:tiddler-get-id tiddler))) ")") - ;; '())))) - (s:div 'class "tiddler" - (s:p 'class "tiddlercommands" - (if (equal? "MainMenu" (twiki:tiddler-get-name tiddler)) - (if edit-allowed - (list (s:a "edit" 'href - (s:link-to (twiki:get-link-back-to-current) - 'edit_tiddler (twiki:tiddler-get-id tiddler)))) - '()) - (list - (s:a "close" 'href (s:link-to (twiki:get-link-back-to-current) 'close_tiddler (twiki:tiddler-get-id tiddler))) "." - (s:a "close others" 'href (s:link-to (twiki:get-link-back-to-current) 'close_other_tiddlers (twiki:tiddler-get-id tiddler))) "." - (if edit-allowed - (s:a "edit" 'href (s:link-to (twiki:get-link-back-to-current) 'edit_tiddler (twiki:tiddler-get-id tiddler))) - '())))) - ;; (s:p 'class "tiddler-skip-par" "-") - ;; (s:p ".") - ;; (s:p (twiki:dat->html dat wiki) (s:br)))))) - (s:p (twiki:dat->html dat wiki)))))) -;; (let ((twhtml (twiki:dat->html dat wiki))) ;; let's try to force a minimum of one paragraph -;; (if (< (length twhtml) 2) -;; (s:p twhtml (s:br)) -;; twhtml)))))) + (s:div 'class "tiddler" + (s:div 'class "tiddler-menu" + (if (equal? "MainMenu" (twiki:tiddler-get-name tiddler)) + (if edit-allowed + (list (s:a "edit" 'href + (s:link-to (twiki:get-link-back-to-current) + 'edit_tiddler (twiki:tiddler-get-id tiddler)))) + '()) + (s:div 'class "tiddler-menu-internal" + (s:a "close" 'href (s:link-to (twiki:get-link-back-to-current) 'close_tiddler (twiki:tiddler-get-id tiddler))) "." + (s:a "close others" 'href (s:link-to (twiki:get-link-back-to-current) 'close_other_tiddlers (twiki:tiddler-get-id tiddler))) "." + (if edit-allowed + (s:a "edit" 'href (s:link-to (twiki:get-link-back-to-current) 'edit_tiddler (twiki:tiddler-get-id tiddler))) + '())))) + (s:p (twiki:dat->html dat wiki))))) (define (twiki:view-tiddler db tkey wid tiddler wiki) (let* ((dat-id (twiki:tiddler-get-dat-id tiddler)) (dat (twiki:get-dat db dat-id)) (tnum (twiki:tiddler-get-id tiddler))) @@ -392,11 +381,11 @@ #f)) (define (twiki:maint_area tdb wid tkey wiki) (let ((maint (s:get-param 'twiki_maint)) (write-perm (member 'w (twiki:wiki-get-perms wiki)))) - (s:div ;; 'class "node" + (s:div 'class "twiki-menu-internal" (if write-perm (list (s:a "Orphans" 'href (s:link-to (twiki:get-link-back-to-current) 'twiki_maint 1))(s:br) (s:a "Pics" 'href (s:link-to (twiki:get-link-back-to-current) 'twiki_maint 2))(s:br) (s:a "Help" 'href (s:link-to (twiki:get-link-back-to-current) 'twiki_maint 4))(s:br)) '()) @@ -681,44 +670,30 @@ (twiki:save-tiddler tdb "MainMenu" "" "" wid (twiki:get-id)) (set! lmenu (twiki:get-tiddlers tdb wid (list "MainMenu"))))) ;; get the tiddlers from the db now (set! result - (s:table - ;; ;; A header row MainMenu WikiName Other - ;; (s:tr - ;; (s:td - ;; (let ((main-menu-tnum (twiki:tiddler-name->id tdb "MainMenu"))) - ;; (if edit-tmenu-id - ;; "MainMenu" - ;; (s:a "MainMenu" 'href (s:link-to (twiki:get-link-back-to-current) 'edit_tmenu main-menu-tnum))))) - ;; (s:td (twiki:key->fname tkey)) - ;; (s:td "")) - (s:tr - ;; The menu column (must do all this with css some time) - ;; July 5, 2010, attempting to switch to a top menu - ;; (s:td 'class "col1-tiddler" (twiki:view-tiddler tdb tkey wid (car lmenu) wikidat)) - (s:td 'class "col2-tiddler" (twiki:view-tiddler tdb tkey wid (car lmenu) wikidat) 'colspan "2")) - (s:tr - (s:td 'class "col2-tiddler" - ;; this is probably not needed as there is no reason to create tiddlers this way - ;; (if (eq? tnumedit -1)(twiki:edit-tiddler tdb tkey wid tnumedit) '()) - ;; insert the picture editor window if enabled - (if (equal? (s:get-param "twiki_maint") "2")(twiki:pic_mgmt tdb wid tkey) '()) - (if (equal? (s:get-param "twiki_maint") "4")(twiki:help 1) '()) - (if (not (null? tdlrs)) - (map (lambda (tdlr) - (let ((tnum (twiki:tiddler-get-id tdlr))) - (s:log "tnum: " tnum " tnumedit: " tnumedit) - (if (and tnumedit (not tedited) (equal? tnumedit tnum)) - (begin - (set! tedited #t) ;; only allow editing one tiddler at a time - (twiki:edit-tiddler tdb tkey wid tnum)) - (twiki:view-tiddler tdb tkey wid tdlr wikidat)))) - tdlrs) - '())) - (s:td 'valign "top" 'class "tiddler-top" (twiki:maint_area tdb wid tkey wikidat))))) + (s:div 'class "twiki" + ;; float to the right the control menu + (s:div 'class "twiki-main-menu" (twiki:maint_area tdb wid tkey wikidat)) + (twiki:view-tiddler tdb tkey wid (car lmenu) wikidat) + ;; this is probably not needed as there is no reason to create tiddlers this way + ;; (if (eq? tnumedit -1)(twiki:edit-tiddler tdb tkey wid tnumedit) '()) + ;; insert the picture editor window if enabled + (if (equal? (s:get-param "twiki_maint") "2")(twiki:pic_mgmt tdb wid tkey) '()) + (if (equal? (s:get-param "twiki_maint") "4")(twiki:help 1) '()) + (if (not (null? tdlrs)) + (map (lambda (tdlr) + (let ((tnum (twiki:tiddler-get-id tdlr))) + (s:log "tnum: " tnum " tnumedit: " tnumedit) + (if (and tnumedit (not tedited) (equal? tnumedit tnum)) + (begin + (set! tedited #t) ;; only allow editing one tiddler at a time + (twiki:edit-tiddler tdb tkey wid tnum)) + (twiki:view-tiddler tdb tkey wid tdlr wikidat)))) + tdlrs) + '()))) (dbi:close tdb) result)) ;; should do a single more efficient query but this is good enough (define (twiki:get-tiddlers db wid tnames)