Hướng dẫn xây dựng ứng dụng tra cứu thông tin các khóa học cho mạng xã hội nguồn mở Dolphin

MỤC LỤC

MẠNG XÃ HỘI DOLPHIN

TRIỄN KHAI DOLPHIN TRÊN MÁY CỤC BỘ

Triễn khai Dolphin trên máy cục bộ

Cài đặt Dolphin trên máy cục bộ

- Sau khi tải về ta giải nén và sao chép vào thư mục gốc của máy chủ. - Tuy nhiên, nếu người dùng sử dụng Xampp để giả lập máy chủ thì sao chép thư mục “dolphin” vào thư mục “htdocs” của Xampp. - Bước tiếp theo cần cài đặt ImageMagick để tiếp tục, tải ImageMagick tại địa chỉ sau: http://www.imagemagick.org/, sau đó chỉ đường dẫn đến thư mục chứa.

- Đến đây quá trình cài đặt Dolphin đã hoàn tất, bước cuối cùng là xóa thư mục. “install” trong thư mục “dolphin” và gừ vào thanh địa chỉ trỡnh duyệt địa chỉ sau: “http://localhost/dolphin/index.php”.

Hình  - Thư mục "dolphin" trong máy chủ
Hình - Thư mục "dolphin" trong máy chủ

Quản lý tài khoản admin

Khi một mô-đun mới được cài vào hệ thống, tùy thuộc vào việc mô-đun đó có cần phải được điều khiển bằng Admin hay không, thì mô-đun đó có hiển thị ở đây hay không. Tuy nhiên, chức năng này chỉnh sửa cho toàn bộ các thành viên chứ không riêng cho một thành viên nào. Cũng giống như “Member Menu”, chức năng này cũng chỉ áp dụng cho toàn bộ thành viên, chứ không phục vụ được cho từng ý muốn của thành viên.

 Basic Settings: Cho phép thiết lập các cấu hình đơn giản như: Địa chỉ thư của mạng xã hội, Tên trang mạng xã hội, Logo của mạng xã hội, …. • Profiles: Quản lý trang trang hồ sơ cá nhân như: Số lượng bạn bè hiển thị mỗi trang, Lưu vết tất cả hồ sơ khác đã xem, Cho phép bầu chọn, …. Quản lý tài khoản FTP, Số lượng ký tự tối đa trong một tin nhắn, Hiển thị tin tức trong hộp điều khiển của Admin hoặc chỉ cho phép đăng ký tài khoản thông qua lời mời, ….

• Variables: Cấu hình một số giá trị trong trang mạng xã hội như: Mã số bản quyền của Dolphin, Mã số hội viên Boonex, Cho phép liên lạc từ trang “Contact us” (“Liên. Cho phép người dùng thay đổi template, Cho phép sử dụng bộ nhớ tạm (Cache) cho HTML, Cho phép sử dung bộ nhớ tạm (Cache) cho CSS, Cho phép sử dung bộ nhớ tạm (Cache) cho JS, …. • Security: Cho phép tùy biến một số thông tin bảo mật cho mạng xã hội như: Lưu địa chỉ IP của thành viên đã đăng nhập vào mạng xã hội, Loại danh sách IP, ….

 Tags Settings: Cấu hình các thẻ như: Định nghĩa thêm các thẻ, Số lượng các thẻ hiển thị, …. Bao gồm: Xóa tin nhắn cũ, Xóa những hồ sơ không đăng nhập trong một khoảng thời gian quy định, ….  Meta Tags: Cho phép tùy chỉnh thẻ Meta (Thẻ meta là dòng mã ở trên cùng của một trang html mà hướng dẫn các công cụ tìm kiếm và cung cấp cho họ các thông tin về trang web).

 Moderation Settings: Cho phép cấu hình các thông tin liên quan đến sự kiểm duyệt như: Tự động kích hoạt tài khoản sau khi đăng ký, Tự động xác nhận hồ sơ không thông qua xác nhận thư, ….  Categories Settings: Cho phép quản lý các thể loại trong từng mô- đun đã được cài trong hệ thống.  Watermark: Cho phép cấu hình liên quan đến Watermark (Watermark là một dòng chữ, hình ảnh được nhúng vào tấm hình để đánh dấu chủ quyền tác giả).

Hình  - Khu vực quản lý của Admin
Hình - Khu vực quản lý của Admin

Cách cài một mô-đun mới vào hệ thống

    - Ngoài cách sao chép thư mục mô-đun vào thư mục của Dolphin, ta còn cách sau để có thể thêm một mô-đun mới vào hệ thống. - Để cài đặt, ta đánh dấu chọn vào mô-đun, sau đó nhấn “Install”, nếu việc cài đặt không có lỗi, hệ thống sẽ thông báo trong phần. - Trường hợp ta cần biên dịch lại tập tin ngôn ngữ là khi ta có sự chỉnh sửa trong tập tin ngôn ngữ.

    Khi đó, để hệ thống có thể hiểu được, Admin cần biên dịch lại tập tin ngôn ngữ này.

    Hình  - Cài đặt mô-đun thành công 3.4.3. Biên dịch lại tập tin ngôn ngữ của mô-đun
    Hình - Cài đặt mô-đun thành công 3.4.3. Biên dịch lại tập tin ngôn ngữ của mô-đun

    CẤU TRÚC MÔ-ĐUN TRONG DOLPHIN

    Các thư viện cần thiết khi xây dựng mô-đun

    - ACL (the old name is Memberships) – admin can set access to different sections of the site for different members roles. - Calendar – displays calendar with your custom content to your module, see BxDolCalendar class for more information. It is possible to add new items to member’s menu with custom submenus and notifications, see BxDolMemberMenu class for more information.

    - Admin Top Menu – admin top menu can be customizable via sys_menu_admin_top table but please keep in mind that this menu contains outer links. - Email templates – every module can have email templates which can be managed via admin panel, see BxDolEmailTemplates. - Paginate – use ready paginate class to implement unified interface for your content paginate, see BxDolPaginate.

    XÂY DỰNG MÔ-ĐUN TÌM KIẾM KHểA HỌC

    Xây dựng mô-đun tìm kiếm khóa học

    • Cơ sở dữ liệu của mô-đun
      • Hướng dẫn cài đặt

         Đăng kí 1 khóa học: người dùng có thể đăng kí hoặc hủy đăng kí nếu khóa học đó còn thời gian đăng kí.  Lưu lại danh sách khóa học quan tâm: người dùng có thể lưu lại, xem và xóa bỏ các khóa học mà họ quan tâm.  Thảo luận khóa học: người dùng có thể thảo luận ngay tại trang hiển thị thông tin của khóa học.

         Bình chọn khóa học: người dùng có thể bình chọn ngay tại trang hiển thị thông tin của khóa học. - Tìm kiếm nâng cao: người dùng có thể tìm kiếm chi tiết theo các tiêu chí do họ lựa chọn. - So sánh khóa học trong kết quả tìm được: người dùng có thể so sánh bất kì 2 khóa học trong kết quả danh sách các khóa học.

        - Lưu lại các thông tin tìm kiếm để thông báo cho người dùng khi có khóa học giống với nhu cầu họ tìm. - Thông báo người dùng khi có khóa học tương tự những khóa họ đang lưu lại trong danh sách khóa học mong muốn. Là khóa chính, duy nhất và được tự động tăng dần mỗi khi 1 trung tâm mới được thêm vào.

        Là khóa ngoại được tham chiếu đến ID trong bảng profiles (csdl dolphin) Name varchar(255) Tên trung tâm. Là khóa ngoại được tham chiếu đến ID của bảng profiles (csdl dolphin) PostCaption varchar(255) Tên khóa học. AudienceParticipation varchar(255) Đối tượng có thể tham gia khóa học Contact varchar(255) Thông tin liên lạc.

        Là khóa chính, duy nhất và được tự động tăng dần mỗi khi 1 thảo luận mới được thêm vào. - Ý nghĩa: lưu trữ thông tin người dùng muốn nhận thông báo khi khóa học mới tương tự được mở. Là khóa chính, duy nhất và được tự động tăng dần mỗi khi 1 thông tin mới được thêm vào.

        Bảng  - Bảng thông tin Trung tâm (Center)
        Bảng - Bảng thông tin Trung tâm (Center)

        CHỨC NĂNG TÌM KIẾM NÂNG CAO TRONG Mễ-ĐUN TèM KHểA HỌC

        Giới thiệu chung

          - Cho phép người dùng đăng kí / hủy khóa học (nếu còn trong thời gian mở) ngay trên kết quả tìm kiếm. - Cho phép người dùng vào trực tiếp trang thông tin trung tâm cũng như khóa học tìm được. - Cho phép người dùng chọn hệ thống tự động thông báo (notify) cho người dùng qua message hỗ trợ bởi hệ thống.

          Các tiêu chí tìm kiếm

             Ngày bắt đầu: có thể để trống sẽ tìm không giới hạn thời gian bắt đầu.  Ngày kết thúc: có thể để trống sẽ tìm không giới hạn thời gian kết thúc.

            Các chức năng hỗ trợ

              - Người dùng muốn hệ thống thông báo tự động qua message khi có khóa học tương tự với các thông tin được tìm kiếm (“Từ khóa”, “Lĩnh vực”,. - Có thể hủy, không muốn nhận thông báo nữa, người dùng sẽ có tùy chọn trong link kèm theo lúc hệ thống gửi thông báo. - Kết quả tìm kiếm nếu có từ khóa trong tên khóa học thì sẽ được highlight lên cho người dùng dễ nhìn thấy.

              XÂY DỰNG MÔ-ĐUN TÙY BIẾN THANH THỰC ĐƠN CỦA NGƯỜI DÙNG

              Xây dựng mô-đun tùy biến thanh thực đơn của người dùng

                PHÂN QUYỀN TRUY CẬP TRONG DOLPHIN

                Cấu hình trong cơ sở dữ liệu

                - Trong trường hợp này, ta tạo thêm một cấp độ thành viên mới, đó Trung tâm (Center). AddtionalParamName varchar Các tham số kèm theo (nếu có) Bảng - Bảng lưu trữ tên các quyền.  Bảng “sys_acl_actions” lưu tất cả tên các quyền để thiết lập cho từng cấp độ thành viên.

                AllowedCount smallint Cho phép đếm số lần sử dụng quyền AllowedPeriodLen smallint Cho phép tạo khoảng thời gian có hiệu lực AllowedPeriodStart smallint Cho phép tạo thời gian bắt đầu.

                Bảng  - Bảng lưu trữ tên các quyền
                Bảng - Bảng lưu trữ tên các quyền

                Phân quyền truy cập trong Dolphin

                Tùy biến trong mã nguồn

                - Sau khi cài đặt mô-đun vào hệ thống, những câu truy vấn trên sẽ được thực thi và thêm vào cơ sở dữ liệu. - Hàm defineMembershipActions($aActions, $sPrefix) này sẽ định nghĩa lại các quyền theo cấu trúc của Dolphin. - Khi đã tạo xong các hàm kiểm tra thành viên có được phép sử dụng quyền hay không, bước tiếp theo là khi thực hiện chức năng, phải kèm theo một bước kiểm tra.