Chương 3 – Xây dựng bộ sưu tập
Trang 42
Hình 3.4 - Tìm kiếm tài liệu theo chỉ mục document và section
Trong hình trên, chapters và section titles xác định chỉ mục theo section,
còn entire documents xác định chỉ mục theo document.
3.8. Tập tin cấu hình bộ sưu tập
Tập tin cấu hình của mỗi bộ sưu tập có tên collect.cfg được đặt trong thư
mục “greenstone\collect\<tên bộ sưu tập>\etc” dùng để quản lý giao diện, cách
thức xử lý tài liệu, cách hiển thị nội dung tài liệu…
Trong quá trình xây dựng bộ sưu tập, khi ta thực thi chương trình mkcol.pl,
một tập tin cấu hình đơn giản cho bộ sưu tập được tạo, chứa các giá trị mặc định
cho bộ sưu tậ
p. Thông tin trong tập tin cấu hình bộ sưu tập bao gồm:
Tên Ý nghĩa
creator Email người tạo bộ sưu tập
maintainer Email người quản lý bộ sưu tập
public Xác định bộ sưu tập có cho phép công khai
truy cập không
beta Xác định bộ sưu tập có phải là phiên bản beta
hay không
indexes
Chương 3 – Xây dựng bộ sưu tập
Trang 44
Ví dụ nội dung một tập tin cấu hình :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
creator
maintainer
public True
beta True
indexes document:text
Khi này, trong quá trình tìm kiếm tài liệu, Greenstone sẽ tìm trong cả n +1 bộ
sưu tập: bộ sưu tập hiện tại, bộ sưu tập 1, bộ sưu tập 2,…,bộ sưu tập n Chương 4 – Hiệu chỉnh giao diện của Greenstone
Trang 45
CHƯƠNG 4. HIỆU CHỈNH GIAO DIỆN
GREENSTONE
Giới thiệu
Ảnh tiêu đề
Các nút duyệt trên cùng
Ảnh header
Các trang web của Greenstone không được thiết kế sẵn, các trang này được
phát sinh từ các tập tin macro. Ví dụ tập tin home.dm sẽ phát sinh ra trang chủ của
Greenstone, tập tin help.dm sẽ phát sinh ra trang trợ giúp của Greenstone…
Mỗi tập tin macro chứa một hay nhiều package. Mỗi package chứa một loạt
các macro. Một macro có thể được viết cho một bộ sưu tập với từ khóa [c=tên bộ
sưu tập], nghĩa là ta sẽ override macro mặc định của Greenstone.
Cần tạo các macro trong package đúng. Ví dụ: muốn tạo macro
“imagecollect” cho bộ sưu tập “fenian” và muốn macro này làm việc cho tất cả màn
hình hiển thị, đặt macro này trong package Global :
package Global
_imagecollect_[c=fenian] {_gsimage_(_httppagecollect_,_httpiconccollectof_,
_httpiconccollecton_,collect,_textimagecollect_)}
Sau đây là danh sách các package có sẵn và vai trò của chúng (tên các
package có phân biệt chữ hoa, chữ thường)
Chương 4 – Hiệu chỉnh giao diện của Greenstone
Trang 47
Tên package Tên tập tin Vai trò
package Global base.dm
english.dm
giao diện duyệt tài liệu
package home home.dm Chứa những macro cho
giao diện của trang chủ
Bảng 4.1 – Danh sách các package
- Những tập tin ảnh :
Tất cả những tập tin ảnh được chứa trong thư mục “greenstone\images”
- Main.cfg :
Chứa các khai báo các tập tin macro được dùng trong Greenstone. Nếu tạo
tập tin macro mới, để tập tin macro này có hiệu lực, cần thêm tên tập tin macro đó Chương 4 – Hiệu chỉnh giao diện của Greenstone
Trang 48
vào nội dung tập tin main.cfg. Tập tin main.cfg được lưu trong thư mục
“greenstone\etc”.
Giao diện Greenstone gồm 5 phần như hình vẽ bên dưới : Hình 4.1 - Các phần trong giao diện web của Greenstone
Sau đây ta sẽ đi chi tiết từng phần của giao diện theo thứ tự hình trên
4.2. Ảnh tiêu đề bộ sưu tập
{<! page banner (\_style:pagebanner\_) >
<center>
<table width=_pagewidth_ cellspacing=0 cellpadding=0 border=0>
<tr>
<td colspan=3 height=6>
</td>
</tr>
<tr>
<td width=373 valign=top height=106 align=right
border=0>_imagecollection_</td>
<td width=132 valign=top height=106 align=left border=0>_imagethispage_</td>
<td width=90 valign=top height=106 align=right border=0>_javalinks_</td>
</tr>
<tr>
<td colspan=3>_pagebannerextra_</td>
</tr>
</table>
</center>
<! end of page banner >}
Hình 4.2 – Các nút duyệt tài liệu
Có thể thay đổi vị trí của những nút này, thêm mới hoặc xóa nút duyệt trang. Chương 4 – Hiệu chỉnh giao diện của Greenstone
Trang 51
Macro này hiển thị 3 nút theo chiều dọc như minh họa ở hình 4.2
Xóa nút duyệt trang
Giả sử ta cần xóa nút HOME, trong tập tin base.dm, ở package Global, ta
thay đổi macro _javalinks_ như sau:
_javalinks_ {_imagehelp_ _imagepref_}
_javalinks_ [v=1] {
_imagehelp_<br>
_imagepref_<br> }
Ở macro _javalinks_ trên , macro _imagehome_ đã được xóa.
Thay đổi nút duyệt trang
Có thể thay đổi nội dung trên nút duyệt trang bằng cách chỉnh sửa các ảnh
của nút, hoặc thay đổi liên kết của nút duyệt trang bằng cách chỉnh sửa macro
_httppageX_(ví dụ _httppagecollect_), thay đổi chuỗi mô tả ảnh bằng cách chỉnh
sửa macro _textimageX_ (ví dụ _textimagecollect_) hoặc thay đổi vị trí của nút này
so với nút khác bằng cách chỉnh sửa macro _javalinks_
4.3.2. Vị trí đặt các ảnh
Những macro xác định vị trí ảnh của những nút duyệt trang được chỉ ra trong
package Global trong tập tin english.dm. Theo quy ước các macro này bắt đầu với
_httpicon_, theo sau là kí tự “c” và tên nút. Mỗi nút được tạo bởi một cặp ảnh ”on”
và “off”. Để thay đổi những nút này, ta cần tạo 2 ảnh
package help
_imagethispage_ [c=auhist] {_iconthispage_}
_iconthispage_ [c=auhist] {<img src="_httpiconhhelp_" alt="_textHelp_"
width=_widthhhelp_ height=_heighthhelp_>}
Khi ta định nghĩa _imagethispage_, ta phải định nghĩa _iconthispage_.
Không có ảnh tiêu đề cho những trang hiển thị tài liệu.
Vị trí của những ảnh tiêu đề được định nghĩa trong package document của
tập tin english.dm. Tất cả macro này bắt đầu với _httpicon_, theo sau là “h” và tên
nút. Ta quy ước đặt tên cho các ảnh này là h_imagename. Ví dụ: h_title.gif,
h_subj.gif…
## "titles a-z" ## green_title ## h_title #
_httpiconhtitle_ {_httpimg_/h\_title.gif}
_widthhtitle_ {200} Chương 4 – Hiệu chỉnh giao diện của Greenstone
Trang 53
_heighthtitle_ {57}
Độ rộng và chiều cao là số pixel. Ta có thể thay đổi chúng nếu cần thay đổi
độ rộng và chiều cao của ảnh
Để thay đổi vị trí lưu trữ ảnh, ta cần thay đối đường dẫn đến những tập tin
ảnh trong cặp ngoặc { }
#Title header
Một nút trên thanh duyệt được tạo bỏi 3 ảnh, ảnh “off”, ảnh “on”, và ảnh
“gr”. Nếu ta muốn thay đổi các hiển thị của những nút này, ta cần tạo ra 3 ảnh
## "titles AZ" ## nav_bar_button ## ttitl ##
_httpiconttitlgr_ {_httpimg_/ttitlgr.gif}
_httpiconttitlof_ {_httpimg_/ttitlof.gif}
_httpiconttitlon_ {_httpimg_/ttitlon.gif}
_widthttitlx_ {87}
## "authors AZ" ## nav_bar_button ## tauth ##
_httpicontauthgr_ {_httpimg_/tauthgr.gif}
_httpicontauthof_ {_httpimg_/tauthof.gif}
_httpicontauthon_ {_httpimg_/tauthon.gif}
_widthtauthx_ {110}
Ta cũng cần thay đổi cách hiển thị của những ảnh khoảng trống (space
image) đặt giữa những nút này. Tập tin ảnh khoảng trống này được đặt tên là
“tspace.gif” và nó được chỉ ra trong package Global trong tập tin base.dm
_httpicontspace_ {_httpimg_/tspace.gif}
_heighttspace_ {17}
Độ rộng của những ảnh này là số pixel. Nếu muốn có một dòng chữ dài, ví
dụ như “Place Names”, và nút này rộng hơn những nút khác, ta thiết đặt độ rộng
trong cặp ngoặc{}. Khi xây dựng bộ sưu tập, Greenstone sẽ tự động tính toán
khoảng trống giữa những nút và tập tin tspace.gif sẽ phủ toàn bộ khoảng trống này
4.5.3. Thêm nút mới
Có 2 cách để thêm một nút mới
- Dùng một nút đã có và thay đối đoạn chữ trên ảnh
- Tạo một macro mới cho nút mới và tạo những tập tin ảnh cho nút mới này
_widthtmuseumsx_ {110}
Tạo 3 ảnh và lưu chúng trong thư mục images Chương 4 – Hiệu chỉnh giao diện của Greenstone
Trang 56
4.5.4. Xóa nút duyệt tài liệu
Xóa nút duyệt tài liệu bằng cách xóa macro ảnh _imageX_ (ví dụ
_imagemuseum_) trong package Global
4.5.5. Thay đổi nút duyệt tài liệu
Thay đổi nút duyệt tài liệu bằng cách thay đổi macro _httpbrowseX_ (ví dụ
_httpbrowseMuseum_) hay _httpicontX_ (ví dụ _httpicontmuseumgr_) hay
_textimageX_ (ví dụ _textimageMuseum_)…
4.6. Hiển thị văn bản
Có 2 cách hiển thị văn bản. Chúng được quản lý trong tập tin collect.cfg.
4.6.1. Hiển thị loại CL list
Hiển thị danh sách các tài liệu được được quản lý bởi những chuỗi format
trong tập tin collect.cfg. Ví dụ, chuỗi format sau sẽ hiển thị danh sách các tiêu đề
của tài liệu là classifier đầu tiên, với một thumbnail và phần mô tả chung, được
minh họa ở hình 4.3
format CL1VList
‘<td valign=top align=center width=150>[ImageHTML]</td>
<td width=10> </td>
<td align=left valign=top>
Chương 4 – Hiệu chỉnh giao diện của Greenstone
Trang 58
Hình 4.4 – Hiển thị nội dung tài liệu
4.7. Override các macro
Thay vì sửa trực tiếp trong các tập tin macro mặc định của Greenstone, có
thể tạo một tập tin macro mới, sau đó override những macro muốn sửa đổi. Khi
override các macro, phải chỉ ra macro này nằm trong package nào. Ngoài override
các macro có sẵn trong Greenstone, có thể thêm các macro mới vào tập tin này.
Ví dụ cách override một macro: giả sử ta muốn thay đổi giao diện trang chủ
của Greenstone như hình vẽ dưới đây ta làm như sau : Chương 4 – Hiệu chỉnh giao diện của Greenstone
Trang 59
Hình 4.5 - Hiệu chỉnh giao diện trang chủ
#Xóa 3 nút home, help, pref mặc định của Greenstone
_javalinks_ {}
_javalinks_ [v=1] {}
#Tên trang web
_pagetitle_ {Tra cứu}
#Nội dung trang web
_content_ {
#phần nội dung trang web
}
Giải thích cấu trúc tập tin zitlibweb.dm:
Tập tin macro home.dm phát sinh trang chủ của Greenstone. Trong trang
này, package home được định nghĩa. Để sửa đổi giao diện của trang chủ, phải định
nghĩa lại package home
Nội dung của trang chủ sẽ được chứa trong macro _content_ .Ta có thể dùng
một chương trình thiết kế website (Frontpage,Dreamweaver…) thiết kế giao diện
trang chủ, sau đó copy phần source code trong đoạn <body> </body> vào macro
_content_ này
4.8. Thêm một trang mới
Để tạo một trang mới ta cần tạo một tập tin macro mới. Ví dụ thêm một trang
web tên là mypage :