Electronic Document Archive System (EDAS) |
12/3/2022 3:53:47 PM |
PHPRunner Tips and Tricks | |
F
fhumanes author
This is an example of possibilities of a file system. It is made so that it can serve as an example/template for those PHPRunner developers who want to have a small, simple solution with high growth capacity, taking into account the great capacity that the PHPRunner solution has in network storage and management. of security and access that has been provided to the solution. Goal Have electronic document archiving management with very dynamic access security features, so that access can be organized by organizational structure of a company or by functional structure, depending on the company's procedures. DEMO : https://fhumanes.com/edas/ Test users: user1 , user2 , and admin . The password is the same as the login System Requirements
Immediately, I am going to start developing a complement to this system that will allow access to it through Rest Full API , and in this way it can be integrated into the developments that are done in PHPRunner or other systems. This new system is the one that I really wanted to undertake. Technical solution The data model I have used is very, very simple.
As you can see, it is a table to define the directories and their hierarchy and another for the files/documents . The most special thing comes in the relations of users ( owners ) and access groups in reading and writing ( reading_groups and writing_groups ), which you can see are multiple values in a single field. I have done the same in the relation of users to groups ( belongingGroups ), but to simplify the assignment of groups to users I have used functional templates, in such a way that it is much easier to manage permissions, with a solution (please , review it) which is very simple and elegant. I will show some screens to explain those most relevant features.
(1) .- It provides the information of the directory where it is positioned. (2) .- The system has been provided with a "crumb trail" or "path" so that you can identify the "depth" of the directory. This information can be used to navigate in that structure. (3) .- Information of the directories that are below the current one and that the user has access to. (4) .- Information of the files/documents that are dependent on the directory and that the user has access to. (5) .- I have modified the presentation of the files to provide information, but not allow, from this page, the download of the same.
(1) .- The "crumb trail" continues to be displayed, to provide information on the dependency. (2) .- A button has been programmed to copy the "path" or "link" of the document to the clipboard. This facilitates communication by reference through email or any other application. (3).- A reference implies that there can be several files, accessible if you have the permissions.
(2) .- You have searched for the requested document and it shows it in red. (3) .- I show an example of viewing the set of permissions of the directory. It is shown with a visualization as if it were some tags. There is very little code, so I consider it a good example for:
I hope you like it and if you need an explanation, tell me through my email fernandohumanes@gmail.com As always, I leave the sources for you to download and try on your PC's. |
|
![]() |
fhumanes author 12/8/2022 | |
|