Giter Site home page Giter Site logo

docoms's Introduction

ASQ Vietnam Company Limited

DoCoMS

Construction Correspondence Management System

DEMO: ASQ Vietnam Company Limited

Login Credentials (login:pass)

  • User -> user:user
  • Editor -> editor:editor
  • Admin -> admin:admin

DoCoMS is a simple Document Management System designed specifically for the management of correspondence generated during the execution of a construction project. DoCoMS is targeted at document controllers and key staff of a construction project. The system can be used by the staff of the Contractor, the Engineer and / or the Employer.

Why DoCoMS came to life? Simply because I wanted to scratch an itch! I wanted to create a simple yet powerful web-based document management system specifically for the management of correspondence generated during the execution of a construction project. I needed a system that can be used by the construction team and has the ability to control the access to the data based on the role of each user. Also wanted the system to be easily and readily accessible (i.e. using just a WEB browser) and have the ability to export data in Microsoft Excel format for further analysis and presentation.

Installing / Getting started

DoCoMS was built using the excellent CakePHP framework with the following plugins:

Requirements

  • LAMP or WAMP
  • HTTP Server. For example: Apache. Having mod_rewrite is preferred, but by no means required.
  • PHP 5.6.0 or greater (including PHP 7.1).
  • mbstring PHP extension
  • intl PHP extension
  • simplexml PHP extension
  • MySQL (5.1.10 or greater)

Installation

Before you start you will need the following installed on your system:

Step by step installation instructions:

  • Clone the DoCoMS files from GitHub: git clone http://github.com/chrmina/DoCoMS.git
  • Update composer: composer selfupdate
  • Run composer to download all required dependencies: composer update
  • Create a database named "DoCoMS" in MySQL
  • Import the database dump in MySQL: mysql -u username -p DoCoMS < DoCoMS-DB.sql
  • Rename app.default.php to app.php
  • Edit app.php to match your system configuration.

Find the the security salt code in app.php and change it to a random alphanumerical string.

<?php
'Security' => [
    'salt' => 'CHANGE_THIS_TO_A_RANDOM_ALPHANUMERIC_STRING',
],

Find the default datasources in app.php and change the username, password and database names to match your system's configuration.

<?php
'Datasources' => [
    'default' => [
        'className' => 'Cake\Database\Connection',
        'driver' => 'Cake\Database\Driver\Mysql',
        'persistent' => false,
        'host' => 'localhost',
        // CHANGE username, password and database to match yours
        'username' => 'user',
        'password' => 'pass',
        'database' => 'DoCoMS',
        'encoding' => 'utf8',
        'timezone' => 'UTC',
        'cacheMetadata' => true,
        'log' => false,

Edit the file users.php in the config directory and enable user registration:

<?php
$config = [
  'Registration' => [
    //determines if the register is enabled
    'active' => true,

Edit the AppController.php file in the src/Controller directory to make the default registered user an admin:

<?php
$config['Auth']['authorize']['CakeDC/Users.SimpleRbac'] = [
  //default role, used in new users registered and also as role matcher when no role is available
  'default_role' => 'admin',

Access DoCoMS with your browser and go to users/users/register to register a new user. Fill the form and activate the user. Note that this user will be an admin. Use the user info to login and add other users through the Admin Menu. Once done edit the users.php to turn off user registration.

<?php
$config = [
  'Registration' => [
    //determines if the register is enabled
    'active' => false,

Finally change the default role in AppController.php to user:

<?php
$config['Auth']['authorize']['CakeDC/Users.SimpleRbac'] = [
  //default role, used in new users registered and also as role matcher when no role is available
  'default_role' => 'user',

For more information about user management please refer to the documentation of the CakeDC users plugin.

Documentation

For documentation, as well as details about the system, see the Docs.

Support

For bugs and feature requests, please use the issues section of this repository.

Commercial support is also available; contact ASQ Vietnam Company Limited for more information.

Contributing

If you'd like to contribute new features, enhancements or bug fixes to DoCoMS, please read the Contribution Guidelines for detailed instructions.

Disclaimer

DoCoMS is distributed in the hope that it will be useful, but without any warranty: without even the implied warranty of merchantability or fitness for a particular purpose. While every precaution has been taken in the creation of DoCoMS, in no event shall the creators and contributors of DoCoMS be liable to any party for direct, indirect, special, incidental, or consequential damages, including lost profits, arising out of the use of DoCoMS and/or of information contained in DoCoMS documents and/or from the use of programs and source code that may accompany it, even if the creators of DoCoMS have been advised of the possibility of such damage. DoCoMS is provided on as "as is" basis, and its creators have no obligations to provide maintenance, support, updates, enhancements, or modifications.

License

Copyright ASQ Vietnam Company Limited.

DoCoMS is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

DoCoMS is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

docoms's People

Contributors

namkyodai avatar

Watchers

 avatar

Forkers

hai-hoang-88

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.