Opendocman

From WikiName
Jump to: navigation, search

เป็นระบบ Open source สำหรับใช้ในการบริหารจัดการการจัดเก็บเอกสารในองค์กร

การตั้งค่า web server ใน XAMPP (Local)[edit]

เข้าไปที่ไฟล์สำหรับปรับแต่ง Virtual Host เช่น d:\xampp\apache\conf\extra\ แล้วเพิ่ม Virtual Host ตามต้องการ

NameVirtualHost *.80

<VirtualHost *>
DocumentRoot "d:\XAMPP\htdocs"
ServerName localhost
</VirtualHost>

<VirtualHost *>
DocumentRoot "d:/xampp/htdocs/odm"
ServerName odm.boon
<Directory "d:/xampp/htdocs/odm">
Options Indexes FollowSymLinks Includes ExecCGI
Order allow,deny
Allow from all
</Directory>
</VirtualHost>

จากนั้นให้ไปเพิ่มชื่อ Virtual Host ใน hosts ของ Windows

127.0.0.1 odm.boon www.odm.boon

ตั้งค่าการใช้งานครั้งแรกสำหรับ OpenDocMan[edit]

  1. Unzip ไฟล์ติดตั้งไปไว้ที่ Virtual Host
  2. ทำการสร้างฐานข้อมูล MySQL โดยใช้ SQL script ในไฟล์ databse.sql ที่อยู่ใน path ของ opendocman
  3. เข้าไปตั้งค่าในฐานข้อมูลที่ตาราง odm_settings โดยแก้ไขข้อมูล dataDir และ base_url ให้ถูกต้อง
  4. เข้าไปตั้งค่า opendocman ผ่านหน้าเว็บ โดยใช้ user: admin password: admin

Workflow การ setup OpenDocMan[edit]

  1. Login ด้วย admin/admin แล้วทำการเปลี่ยนรหัสผ่านสำหรับ admin
  2. เพิ่ม Department ตามต้องการผ่านเมนู Department
  3. เพิ่มผู้ใช้งานที่เมนู Users
  4. เพิ่มหมวดหมู่เอกสารที่เมนู Category

Customization by boon[edit]

ปัญหาที่เกิดคือเวลาตั้งชื่อแผนกเป็นภาษาไทยจะทำให้ไม่สามารถ Filter ตามชื่อแผนกที่เป็นภาษาไทยได้ ทางแก้คือให้ทำการ edit ไฟล์ที่ชื่อว่า search.php โดยไปที่บรรทัดประมาณ 245 ที่มี code ดังนี้ (opendocman version 1.3.5)

$search_result = search(@$_GET['where'], @$_GET['keyword'], @$_GET['exact_phrase'], @$_GET['case_sensitivity'], $view_able_files_id);

ค่า @$_GET['keyword'] ที่ได้มาจะเป็นชื่อแผนกที่เป็นภาษาไทยแต่อยู่ในรหัส % unicode ต้องเปลี่ยนให้เป็นตัวอักษรปกติเพื่อส่งไปดำเนินการค้นหาในฐานข้อมูล ให้ดำเนินการแทนที่บรรทัดข้างต้นด้วย code ดังนี้

$b_keyword = html_entity_decode(preg_replace('/%u([0-9A-F]+)/', '&#x$1;', @$_GET['keyword']), ENT_COMPAT, 'UTF-8');
$search_result = search(@$_GET['where'], $b_keyword, @$_GET['exact_phrase'], @$_GET['case_sensitivity'], $view_able_files_id);