X-Git-Url: http://git.chise.org/gitweb/?a=blobdiff_plain;f=www-page.el;h=d06d497a3a26ff84d2b2e2370ddbd4ceaade39b9;hb=887eb63ca7a5981c0dadf60c6a17fee51d2303cd;hp=1fe94417c5cf98278b11731d8724e79e7a639f8a;hpb=5a6b4fa99f63d5daefa2b3e9c5758140f98dd82c;p=elisp%2Falbum.git diff --git a/www-page.el b/www-page.el index 1fe9441..d06d497 100644 --- a/www-page.el +++ b/www-page.el @@ -27,6 +27,8 @@ ;;; Code: +(defconst www-page-version "0.3") + (defvar www-page-coding-system (if (featurep 'chise) 'utf-8-jp-er @@ -67,20 +69,22 @@ (concat dest (substring string i)) coding-system)))) +(defun www-page-open-dir (url-dir &optional image-root) + (let* ((path (expand-file-name url-dir image-root)) + (desc-file (expand-file-name "dir.desc" path))) + (cons (cons 'location path) + (with-temp-buffer + (when (file-exists-p desc-file) + (insert-file-contents desc-file) + (read (current-buffer))))))) + (defun www-page-display-dir (url-dir &optional size image-root lang title parent-url hide-cgi) (setq url-dir (file-name-as-directory url-dir)) (princ "Content-Type: text/html; charset=UTF-8 ") - (let* ((desc-file - (expand-file-name "dir.desc" - (expand-file-name url-dir image-root))) - (params - (with-temp-buffer - (when (file-exists-p desc-file) - (insert-file-contents desc-file) - (read (current-buffer))))) + (let* ((params (www-page-open-dir url-dir image-root)) source-images ref-images file i ref-file prev-file next-file file-desc note) @@ -94,6 +98,10 @@ (setq source-images (cdr source-images))) (when (setq ref-images (assq 'refs params)) (setq ref-images (cdr ref-images))) + (unless (or source-images ref-images) + (setq source-images + (directory-files (expand-file-name url-dir image-root) + nil "\\.\\(jpg\\|JPG\\)$" nil t))) (when (setq note (assq 'note params)) (setq note (cdr note))) (when (setq parent-url (assq 'exit params)) @@ -111,10 +119,19 @@ (insert "\n") (insert "\n") (insert (format "

%s

\n" title)) - (insert "
") + (cond + ((or (eq lang 'ja) + (string= lang "ja")) + (insert + "[Note] サムネイルをクリックすると大きな画像が表示されます +
+") + ) + (t + (insert (format "lang = %s
\n" lang)))) (dolist (image-file source-images) (setq file (file-name-nondirectory image-file)) (insert "Return]\n" parent-url))) + (insert + (format "
+Powered by MnjAlbum WWW-Page Version %s." www-page-version)) (insert " @@ -223,24 +243,31 @@ (when (file-exists-p desc-file) (insert-file-contents desc-file) (read (current-buffer))))) - dir-desc-file + ;; dir-desc-file image-file image-ref prev-file next-file prev-grade next-grade rest spec ret) (unless params - (setq dir-desc-file - (expand-file-name "dir.desc" - (expand-file-name (file-name-directory file) - image-root))) + ;; (setq dir-desc-file + ;; (expand-file-name "dir.desc" + ;; (expand-file-name (file-name-directory file) + ;; image-root))) (setq params - (with-temp-buffer - (when (file-exists-p dir-desc-file) - (insert-file-contents dir-desc-file) - (read (current-buffer))))) + (www-page-open-dir (file-name-directory file) image-root) + ;; (with-temp-buffer + ;; (when (file-exists-p dir-desc-file) + ;; (insert-file-contents dir-desc-file) + ;; (read (current-buffer)))) + ) (unless (assq 'refs params) - (when (setq rest (assq 'files params)) - (setq rest (cdr rest))) + (if (setq rest (assq 'files params)) + (setq rest (cdr rest)) + (setq rest + (directory-files + (expand-file-name (file-name-directory file) + image-root) + nil "\\.\\(jpg\\|JPG\\)$" nil t))) (setq ret (file-name-nondirectory file)) (while (and rest (not (string= (car rest) ret))) @@ -399,9 +426,21 @@ (insert "[index]" + (insert (format "&lang=%s&size=%s\">%s" (or lang 'en) - size)) + size + (cond ((eq lang 'ja) + "[index] に戻る") + (t + "[index]")))) + (insert + (cond ((eq lang 'ja) + "(変更した大きさは維持されます)") + (t + ""))) + (insert + (format "
+Powered by MnjAlbum WWW-Page Version %s." www-page-version)) (insert "