├── public
├── favicon.ico
├── docs
│ ├── user
│ │ ├── interface
│ │ │ ├── README.md
│ │ │ ├── advanced-settings
│ │ │ │ ├── settings.md
│ │ │ │ ├── README.md
│ │ │ │ ├── file-types.md
│ │ │ │ └── custom-fields.md
│ │ │ ├── permissions.md
│ │ │ ├── user-management.md
│ │ │ ├── home.md
│ │ │ ├── tags-management.md
│ │ │ └── document-management.md
│ │ ├── README.md
│ │ └── getting-start.md
│ ├── dev
│ │ ├── code-guide.md
│ │ ├── README.md
│ │ ├── troubleshooting.md
│ │ └── install.md
│ ├── .gitbook
│ │ └── assets
│ │ │ ├── home_screen.png
│ │ │ ├── tags_screen.png
│ │ │ ├── upload_files.png
│ │ │ ├── user_screen.png
│ │ │ ├── add_tags_screen.png
│ │ │ ├── add_user_screen.png
│ │ │ ├── digidocu_mokup.jpg
│ │ │ ├── document_detail.png
│ │ │ ├── document_screen.png
│ │ │ ├── verification_tab.png
│ │ │ ├── add_document_screen.png
│ │ │ └── document_permissions.png
│ ├── SUMMARY.md
│ └── README.md
├── robots.txt
├── logo.png
├── mix-manifest.json
├── pick_file_placeholder.png
├── fonts
│ └── vendor
│ │ ├── Ionicons
│ │ ├── ionicons.eot
│ │ ├── ionicons.ttf
│ │ └── ionicons.woff
│ │ ├── font-awesome
│ │ ├── fontawesome-webfont.eot
│ │ ├── fontawesome-webfont.ttf
│ │ ├── fontawesome-webfont.woff
│ │ └── fontawesome-webfont.woff2
│ │ └── bootstrap
│ │ └── dist
│ │ ├── glyphicons-halflings-regular.eot
│ │ ├── glyphicons-halflings-regular.ttf
│ │ ├── glyphicons-halflings-regular.woff
│ │ └── glyphicons-halflings-regular.woff2
├── images
│ └── vendor
│ │ └── admin-lte
│ │ └── plugins
│ │ └── iCheck
│ │ └── square
│ │ ├── red.png
│ │ ├── aero.png
│ │ ├── blue.png
│ │ ├── green.png
│ │ ├── grey.png
│ │ ├── pink.png
│ │ ├── aero@2x.png
│ │ ├── blue@2x.png
│ │ ├── green@2x.png
│ │ ├── grey@2x.png
│ │ ├── orange.png
│ │ ├── pink@2x.png
│ │ ├── purple.png
│ │ ├── red@2x.png
│ │ ├── square.png
│ │ ├── yellow.png
│ │ ├── orange@2x.png
│ │ ├── purple@2x.png
│ │ ├── square@2x.png
│ │ └── yellow@2x.png
├── .htaccess
├── js
│ └── handlebar-helpers.js
├── web.config
└── vendor
│ └── bootstrap-tagsinput
│ └── css
│ └── bootstrap-tagsinput.css
├── .gitbook.yaml
├── resources
├── js
│ ├── app.js
│ └── bootstrap.js
├── infyom
│ └── infyom-generator-templates
│ │ ├── vuejs
│ │ ├── js
│ │ │ ├── fields_row.stub
│ │ │ ├── fields_col.stub
│ │ │ ├── model-config.stub
│ │ │ ├── package.json
│ │ │ └── gulpfile.js
│ │ ├── docs
│ │ │ └── controller
│ │ │ │ ├── controller.stub
│ │ │ │ ├── index.stub
│ │ │ │ ├── show.stub
│ │ │ │ ├── destroy.stub
│ │ │ │ ├── store.stub
│ │ │ │ └── update.stub
│ │ ├── routes
│ │ │ ├── api_routes.stub
│ │ │ ├── routes.stub
│ │ │ ├── api_routes_group.stub
│ │ │ └── api_routes_base.stub
│ │ ├── request
│ │ │ ├── create_request.stub
│ │ │ ├── update_request.stub
│ │ │ └── MyAPIRequest.stub
│ │ └── vendor
│ │ │ └── vue-table
│ │ │ └── components
│ │ │ └── VuetablePaginationSimple.vue
│ │ ├── scaffold
│ │ ├── layouts
│ │ │ ├── menu.stub
│ │ │ ├── home.stub
│ │ │ ├── datatables_css.stub
│ │ │ ├── menu_template.stub
│ │ │ └── datatables_js.stub
│ │ ├── views
│ │ │ ├── datatable_column.stub
│ │ │ ├── table_header.stub
│ │ │ ├── table_cell.stub
│ │ │ ├── paginate.stub
│ │ │ ├── show_field.stub
│ │ │ ├── fields.stub
│ │ │ ├── datatable_body.stub
│ │ │ ├── show.stub
│ │ │ ├── create.stub
│ │ │ ├── edit.stub
│ │ │ ├── datatables_actions.stub
│ │ │ ├── index.stub
│ │ │ ├── table.stub
│ │ │ └── blade_table_body.stub
│ │ ├── routes
│ │ │ ├── routes.stub
│ │ │ └── prefix_routes.stub
│ │ ├── fields
│ │ │ ├── radio.stub
│ │ │ ├── checkbox_group.stub
│ │ │ ├── radio_group.stub
│ │ │ ├── file.stub
│ │ │ ├── email.stub
│ │ │ ├── number.stub
│ │ │ ├── password.stub
│ │ │ ├── text.stub
│ │ │ ├── textarea.stub
│ │ │ ├── select.stub
│ │ │ ├── boolean.stub
│ │ │ ├── checkbox.stub
│ │ │ ├── toggle-switch.stub
│ │ │ └── date.stub
│ │ ├── emails
│ │ │ └── password.stub
│ │ ├── view_composer.stub
│ │ └── request
│ │ │ ├── create_request.stub
│ │ │ └── update_request.stub
│ │ ├── routes
│ │ └── auth.stub
│ │ ├── api
│ │ ├── routes
│ │ │ ├── routes.stub
│ │ │ ├── prefix_routes.stub
│ │ │ ├── api_routes.stub
│ │ │ └── api_routes_group.stub
│ │ ├── docs
│ │ │ └── controller
│ │ │ │ ├── controller.stub
│ │ │ │ ├── index.stub
│ │ │ │ ├── show.stub
│ │ │ │ ├── store.stub
│ │ │ │ ├── destroy.stub
│ │ │ │ └── update.stub
│ │ └── request
│ │ │ ├── create_request.stub
│ │ │ └── update_request.stub
│ │ ├── docs
│ │ ├── model.stub
│ │ └── repository.stub
│ │ ├── model
│ │ ├── relationship.stub
│ │ └── model.stub
│ │ ├── seeds
│ │ └── model_seeder.stub
│ │ ├── factories
│ │ └── model_factory.stub
│ │ ├── view_service_provider.stub
│ │ ├── home_controller.stub
│ │ ├── migration.stub
│ │ ├── repository.stub
│ │ ├── app_base_controller.stub
│ │ └── test
│ │ └── api_test_trait.stub
├── views
│ ├── vendor
│ │ ├── mail
│ │ │ ├── text
│ │ │ │ ├── footer.blade.php
│ │ │ │ ├── panel.blade.php
│ │ │ │ ├── promotion.blade.php
│ │ │ │ ├── subcopy.blade.php
│ │ │ │ ├── table.blade.php
│ │ │ │ ├── button.blade.php
│ │ │ │ ├── header.blade.php
│ │ │ │ ├── promotion
│ │ │ │ │ └── button.blade.php
│ │ │ │ ├── layout.blade.php
│ │ │ │ └── message.blade.php
│ │ │ └── html
│ │ │ │ ├── table.blade.php
│ │ │ │ ├── header.blade.php
│ │ │ │ ├── subcopy.blade.php
│ │ │ │ ├── promotion.blade.php
│ │ │ │ ├── footer.blade.php
│ │ │ │ ├── panel.blade.php
│ │ │ │ ├── promotion
│ │ │ │ └── button.blade.php
│ │ │ │ ├── message.blade.php
│ │ │ │ └── button.blade.php
│ │ ├── flash
│ │ │ ├── modal.blade.php
│ │ │ └── message.blade.php
│ │ ├── pagination
│ │ │ ├── simple-default.blade.php
│ │ │ └── simple-bootstrap-4.blade.php
│ │ ├── notifications
│ │ │ └── email.blade.php
│ │ └── datatables
│ │ │ └── print.blade.php
│ ├── errors
│ │ ├── 404.blade.php
│ │ ├── 401.blade.php
│ │ ├── 419.blade.php
│ │ ├── 500.blade.php
│ │ ├── 429.blade.php
│ │ ├── 403.blade.php
│ │ └── 503.blade.php
│ ├── auth
│ │ └── emails
│ │ │ └── password.blade.php
│ ├── settings
│ │ ├── datatables_actions.blade.php
│ │ ├── show_fields.blade.php
│ │ ├── table.blade.php
│ │ ├── fields.blade.php
│ │ ├── show.blade.php
│ │ ├── create.blade.php
│ │ ├── edit.blade.php
│ │ └── index.blade.php
│ ├── layouts
│ │ ├── datatables_css.blade.php
│ │ └── datatables_js.blade.php
│ ├── tags
│ │ ├── table.blade.php
│ │ ├── create.blade.php
│ │ ├── edit.blade.php
│ │ ├── datatables_actions.blade.php
│ │ ├── index.blade.php
│ │ └── show_fields.blade.php
│ ├── custom_fields
│ │ ├── table.blade.php
│ │ ├── create.blade.php
│ │ ├── datatables_actions.blade.php
│ │ ├── edit.blade.php
│ │ ├── index.blade.php
│ │ ├── show_fields.blade.php
│ │ └── show.blade.php
│ ├── components
│ │ ├── input.blade.php
│ │ ├── textarea.blade.php
│ │ └── select.blade.php
│ ├── users
│ │ ├── table.blade.php
│ │ ├── create.blade.php
│ │ ├── edit.blade.php
│ │ ├── index.blade.php
│ │ └── datatables_actions.blade.php
│ ├── file_types
│ │ ├── table.blade.php
│ │ ├── datatables_actions.blade.php
│ │ ├── create.blade.php
│ │ ├── edit.blade.php
│ │ ├── index.blade.php
│ │ ├── show_fields.blade.php
│ │ └── show.blade.php
│ ├── pdf.blade.php
│ └── documents
│ │ ├── create.blade.php
│ │ └── edit.blade.php
├── sass
│ ├── app.scss
│ └── _variables.scss
├── lang
│ └── en
│ │ ├── pagination.php
│ │ ├── auth.php
│ │ └── passwords.php
└── model_schemas
│ └── Setting.json
├── bootstrap
└── cache
│ └── .gitignore
├── storage
├── logs
│ └── .gitignore
├── app
│ ├── public
│ │ └── .gitignore
│ ├── purify
│ │ └── .gitignore
│ └── .gitignore
├── debugbar
│ └── .gitignore
└── framework
│ ├── testing
│ └── .gitignore
│ ├── views
│ └── .gitignore
│ ├── cache
│ ├── data
│ │ └── .gitignore
│ └── .gitignore
│ ├── sessions
│ └── .gitignore
│ └── .gitignore
├── database
├── .gitignore
├── factories
│ ├── SettingFactory.php
│ ├── CustomFieldFactory.php
│ ├── UserFactory.php
│ ├── TagFactory.php
│ └── FileTypeFactory.php
├── seeders
│ ├── DatabaseSeeder.php
│ ├── FileTypesSeeder.php
│ ├── UsersTableSeeder.php
│ ├── PermissionsTableSeeder.php
│ └── SettingsTableSeeder.php
└── migrations
│ ├── 2019_11_09_055735_create_settings_table.php
│ ├── 2014_10_12_100000_create_password_resets_table.php
│ ├── 2019_11_21_085158_update_custom_fields_add_field.php
│ ├── 2019_11_11_170438_create_custom_fields_table.php
│ ├── 2019_11_12_122144_create_file_types_table.php
│ ├── 2019_11_20_155709_create_activities_table.php
│ ├── 2019_08_19_000000_create_failed_jobs_table.php
│ ├── 2019_11_12_155907_create_tags_table.php
│ ├── 2019_11_21_122845_update_activities_add_field_document_id.php
│ ├── 2019_11_14_144921_create_documents_tags_table.php
│ ├── 2014_10_12_000000_create_users_table.php
│ ├── 2019_11_13_150331_create_documents_table.php
│ └── 2019_11_15_122537_create_files_table.php
├── .gitattributes
├── .github
└── FUNDING.yml
├── tests
├── TestCase.php
├── Unit
│ └── ExampleTest.php
├── Feature
│ └── ExampleTest.php
├── CreatesApplication.php
└── ApiTestTrait.php
├── .gitignore
├── .editorconfig
├── .styleci.yml
├── app
├── Http
│ ├── Middleware
│ │ ├── EncryptCookies.php
│ │ ├── CheckForMaintenanceMode.php
│ │ ├── TrimStrings.php
│ │ ├── Authenticate.php
│ │ ├── VerifyCsrfToken.php
│ │ ├── CheckBlock.php
│ │ ├── RedirectIfAuthenticated.php
│ │ └── TrustProxies.php
│ ├── Controllers
│ │ ├── Controller.php
│ │ ├── Auth
│ │ │ ├── ForgotPasswordController.php
│ │ │ ├── ResetPasswordController.php
│ │ │ ├── ConfirmPasswordController.php
│ │ │ ├── LoginController.php
│ │ │ └── VerificationController.php
│ │ └── AppBaseController.php
│ └── Requests
│ │ ├── CreateUserRequest.php
│ │ ├── CreateSettingRequest.php
│ │ ├── CreateFileTypeRequest.php
│ │ ├── CreateCustomFieldRequest.php
│ │ ├── UpdateFileTypeRequest.php
│ │ ├── UpdateSettingRequest.php
│ │ ├── UpdateCustomFieldRequest.php
│ │ ├── UpdateUserRequest.php
│ │ ├── CreateTagRequest.php
│ │ ├── UpdateTagRequest.php
│ │ ├── CreateDocumentRequest.php
│ │ └── UpdateDocumentRequest.php
├── Providers
│ ├── BroadcastServiceProvider.php
│ ├── EventServiceProvider.php
│ ├── AuthServiceProvider.php
│ └── RouteServiceProvider.php
├── Repositories
│ ├── SettingRepository.php
│ ├── FileTypeRepository.php
│ ├── UserRepository.php
│ ├── CustomFieldRepository.php
│ └── TagRepository.php
├── Rules
│ ├── ValidationRuleSyntaxChecker.php
│ └── CurrentPassword.php
├── Console
│ └── Kernel.php
├── Exceptions
│ └── Handler.php
└── Observers
│ └── FileObserver.php
├── routes
├── channels.php
├── api.php
└── console.php
├── server.php
├── webpack.mix.js
├── .env.example
├── config
├── services.php
├── tinker.php
├── view.php
└── flare.php
├── package.json
└── phpunit.xml
/public/favicon.ico:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/.gitbook.yaml:
--------------------------------------------------------------------------------
1 | root: ./public/docs/
2 |
--------------------------------------------------------------------------------
/resources/js/app.js:
--------------------------------------------------------------------------------
1 | require("jquery");
2 |
--------------------------------------------------------------------------------
/bootstrap/cache/.gitignore:
--------------------------------------------------------------------------------
1 | *
2 | !.gitignore
3 |
--------------------------------------------------------------------------------
/storage/logs/.gitignore:
--------------------------------------------------------------------------------
1 | *
2 | !.gitignore
3 |
--------------------------------------------------------------------------------
/database/.gitignore:
--------------------------------------------------------------------------------
1 | *.sqlite
2 | *.sqlite-journal
3 |
--------------------------------------------------------------------------------
/public/docs/user/interface/README.md:
--------------------------------------------------------------------------------
1 | # Interface
2 |
--------------------------------------------------------------------------------
/public/robots.txt:
--------------------------------------------------------------------------------
1 | User-agent: *
2 | Disallow:
3 |
--------------------------------------------------------------------------------
/storage/app/public/.gitignore:
--------------------------------------------------------------------------------
1 | *
2 | !.gitignore
3 |
--------------------------------------------------------------------------------
/storage/app/purify/.gitignore:
--------------------------------------------------------------------------------
1 | *
2 | !.gitignore
3 |
--------------------------------------------------------------------------------
/storage/debugbar/.gitignore:
--------------------------------------------------------------------------------
1 | *
2 | !.gitignore
3 |
--------------------------------------------------------------------------------
/public/docs/dev/code-guide.md:
--------------------------------------------------------------------------------
1 | # Code Guidelines
2 |
3 |
--------------------------------------------------------------------------------
/public/docs/user/README.md:
--------------------------------------------------------------------------------
1 | # User Documentation
2 |
3 |
--------------------------------------------------------------------------------
/storage/framework/testing/.gitignore:
--------------------------------------------------------------------------------
1 | *
2 | !.gitignore
3 |
--------------------------------------------------------------------------------
/storage/framework/views/.gitignore:
--------------------------------------------------------------------------------
1 | *
2 | !.gitignore
3 |
--------------------------------------------------------------------------------
/public/docs/dev/README.md:
--------------------------------------------------------------------------------
1 | # Developer Documentation
2 |
3 |
--------------------------------------------------------------------------------
/storage/framework/cache/data/.gitignore:
--------------------------------------------------------------------------------
1 | *
2 | !.gitignore
3 |
--------------------------------------------------------------------------------
/storage/framework/sessions/.gitignore:
--------------------------------------------------------------------------------
1 | *
2 | !.gitignore
3 |
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/vuejs/js/fields_row.stub:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/resources/views/vendor/mail/text/footer.blade.php:
--------------------------------------------------------------------------------
1 | {{ $slot }}
2 |
--------------------------------------------------------------------------------
/resources/views/vendor/mail/text/panel.blade.php:
--------------------------------------------------------------------------------
1 | {{ $slot }}
2 |
--------------------------------------------------------------------------------
/resources/views/vendor/mail/text/promotion.blade.php:
--------------------------------------------------------------------------------
1 | {{ $slot }}
2 |
--------------------------------------------------------------------------------
/resources/views/vendor/mail/text/subcopy.blade.php:
--------------------------------------------------------------------------------
1 | {{ $slot }}
2 |
--------------------------------------------------------------------------------
/resources/views/vendor/mail/text/table.blade.php:
--------------------------------------------------------------------------------
1 | {{ $slot }}
2 |
--------------------------------------------------------------------------------
/storage/framework/cache/.gitignore:
--------------------------------------------------------------------------------
1 | *
2 | !data/
3 | !.gitignore
4 |
--------------------------------------------------------------------------------
/public/docs/user/interface/advanced-settings/settings.md:
--------------------------------------------------------------------------------
1 | # Settings
2 |
--------------------------------------------------------------------------------
/public/docs/user/interface/permissions.md:
--------------------------------------------------------------------------------
1 | # Permissions Management
2 |
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/scaffold/layouts/menu.stub:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/storage/app/.gitignore:
--------------------------------------------------------------------------------
1 | *
2 | !public/
3 | !.gitignore
4 | !purify/
5 |
--------------------------------------------------------------------------------
/public/docs/user/interface/advanced-settings/README.md:
--------------------------------------------------------------------------------
1 | # Advanced Settings
2 |
--------------------------------------------------------------------------------
/public/docs/user/interface/advanced-settings/file-types.md:
--------------------------------------------------------------------------------
1 | # File Types
2 |
--------------------------------------------------------------------------------
/resources/views/vendor/mail/text/button.blade.php:
--------------------------------------------------------------------------------
1 | {{ $slot }}: {{ $url }}
2 |
--------------------------------------------------------------------------------
/public/docs/user/interface/advanced-settings/custom-fields.md:
--------------------------------------------------------------------------------
1 | # Custom Fields
2 |
--------------------------------------------------------------------------------
/public/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/harish81/digidocu/HEAD/public/logo.png
--------------------------------------------------------------------------------
/resources/views/vendor/mail/text/header.blade.php:
--------------------------------------------------------------------------------
1 | [{{ $slot }}]({{ $url }})
2 |
--------------------------------------------------------------------------------
/resources/views/vendor/mail/text/promotion/button.blade.php:
--------------------------------------------------------------------------------
1 | [{{ $slot }}]({{ $url }})
2 |
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/scaffold/views/datatable_column.stub:
--------------------------------------------------------------------------------
1 | '$FIELD_NAME$'
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/scaffold/views/table_header.stub:
--------------------------------------------------------------------------------
1 |
$FIELD_NAME_TITLE$ |
--------------------------------------------------------------------------------
/public/mix-manifest.json:
--------------------------------------------------------------------------------
1 | {
2 | "/js/app.js": "/js/app.js",
3 | "/css/app.css": "/css/app.css"
4 | }
5 |
--------------------------------------------------------------------------------
/public/pick_file_placeholder.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/harish81/digidocu/HEAD/public/pick_file_placeholder.png
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/scaffold/views/table_cell.stub:
--------------------------------------------------------------------------------
1 | {!! $$MODEL_NAME_CAMEL$->$FIELD_NAME$ !!} |
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/routes/auth.stub:
--------------------------------------------------------------------------------
1 | Auth::routes();
2 |
3 | Route::get('/home', 'HomeController@index');
--------------------------------------------------------------------------------
/resources/views/vendor/mail/html/table.blade.php:
--------------------------------------------------------------------------------
1 |
2 | {{ Illuminate\Mail\Markdown::parse($slot) }}
3 |
4 |
--------------------------------------------------------------------------------
/public/fonts/vendor/Ionicons/ionicons.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/harish81/digidocu/HEAD/public/fonts/vendor/Ionicons/ionicons.eot
--------------------------------------------------------------------------------
/public/fonts/vendor/Ionicons/ionicons.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/harish81/digidocu/HEAD/public/fonts/vendor/Ionicons/ionicons.ttf
--------------------------------------------------------------------------------
/public/fonts/vendor/Ionicons/ionicons.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/harish81/digidocu/HEAD/public/fonts/vendor/Ionicons/ionicons.woff
--------------------------------------------------------------------------------
/public/docs/.gitbook/assets/home_screen.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/harish81/digidocu/HEAD/public/docs/.gitbook/assets/home_screen.png
--------------------------------------------------------------------------------
/public/docs/.gitbook/assets/tags_screen.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/harish81/digidocu/HEAD/public/docs/.gitbook/assets/tags_screen.png
--------------------------------------------------------------------------------
/public/docs/.gitbook/assets/upload_files.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/harish81/digidocu/HEAD/public/docs/.gitbook/assets/upload_files.png
--------------------------------------------------------------------------------
/public/docs/.gitbook/assets/user_screen.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/harish81/digidocu/HEAD/public/docs/.gitbook/assets/user_screen.png
--------------------------------------------------------------------------------
/.gitattributes:
--------------------------------------------------------------------------------
1 | * text=auto
2 | *.css linguist-vendored
3 | *.scss linguist-vendored
4 | *.js linguist-vendored
5 | CHANGELOG.md export-ignore
6 |
--------------------------------------------------------------------------------
/public/docs/.gitbook/assets/add_tags_screen.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/harish81/digidocu/HEAD/public/docs/.gitbook/assets/add_tags_screen.png
--------------------------------------------------------------------------------
/public/docs/.gitbook/assets/add_user_screen.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/harish81/digidocu/HEAD/public/docs/.gitbook/assets/add_user_screen.png
--------------------------------------------------------------------------------
/public/docs/.gitbook/assets/digidocu_mokup.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/harish81/digidocu/HEAD/public/docs/.gitbook/assets/digidocu_mokup.jpg
--------------------------------------------------------------------------------
/public/docs/.gitbook/assets/document_detail.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/harish81/digidocu/HEAD/public/docs/.gitbook/assets/document_detail.png
--------------------------------------------------------------------------------
/public/docs/.gitbook/assets/document_screen.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/harish81/digidocu/HEAD/public/docs/.gitbook/assets/document_screen.png
--------------------------------------------------------------------------------
/public/docs/.gitbook/assets/verification_tab.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/harish81/digidocu/HEAD/public/docs/.gitbook/assets/verification_tab.png
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/api/routes/routes.stub:
--------------------------------------------------------------------------------
1 | Route::resource('$MODEL_NAME_PLURAL_SNAKE$', '$PATH_PREFIX$$MODEL_NAME$APIController');
--------------------------------------------------------------------------------
/public/docs/.gitbook/assets/add_document_screen.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/harish81/digidocu/HEAD/public/docs/.gitbook/assets/add_document_screen.png
--------------------------------------------------------------------------------
/public/docs/.gitbook/assets/document_permissions.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/harish81/digidocu/HEAD/public/docs/.gitbook/assets/document_permissions.png
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/scaffold/routes/routes.stub:
--------------------------------------------------------------------------------
1 | Route::resource('$MODEL_NAME_PLURAL_CAMEL$', '$PATH_PREFIX$$MODEL_NAME$Controller');
--------------------------------------------------------------------------------
/storage/framework/.gitignore:
--------------------------------------------------------------------------------
1 | config.php
2 | routes.php
3 | schedule-*
4 | compiled.php
5 | services.json
6 | events.scanned.php
7 | routes.scanned.php
8 | down
9 |
--------------------------------------------------------------------------------
/public/fonts/vendor/font-awesome/fontawesome-webfont.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/harish81/digidocu/HEAD/public/fonts/vendor/font-awesome/fontawesome-webfont.eot
--------------------------------------------------------------------------------
/public/fonts/vendor/font-awesome/fontawesome-webfont.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/harish81/digidocu/HEAD/public/fonts/vendor/font-awesome/fontawesome-webfont.ttf
--------------------------------------------------------------------------------
/public/fonts/vendor/font-awesome/fontawesome-webfont.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/harish81/digidocu/HEAD/public/fonts/vendor/font-awesome/fontawesome-webfont.woff
--------------------------------------------------------------------------------
/public/fonts/vendor/font-awesome/fontawesome-webfont.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/harish81/digidocu/HEAD/public/fonts/vendor/font-awesome/fontawesome-webfont.woff2
--------------------------------------------------------------------------------
/public/images/vendor/admin-lte/plugins/iCheck/square/red.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/harish81/digidocu/HEAD/public/images/vendor/admin-lte/plugins/iCheck/square/red.png
--------------------------------------------------------------------------------
/public/images/vendor/admin-lte/plugins/iCheck/square/aero.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/harish81/digidocu/HEAD/public/images/vendor/admin-lte/plugins/iCheck/square/aero.png
--------------------------------------------------------------------------------
/public/images/vendor/admin-lte/plugins/iCheck/square/blue.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/harish81/digidocu/HEAD/public/images/vendor/admin-lte/plugins/iCheck/square/blue.png
--------------------------------------------------------------------------------
/public/images/vendor/admin-lte/plugins/iCheck/square/green.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/harish81/digidocu/HEAD/public/images/vendor/admin-lte/plugins/iCheck/square/green.png
--------------------------------------------------------------------------------
/public/images/vendor/admin-lte/plugins/iCheck/square/grey.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/harish81/digidocu/HEAD/public/images/vendor/admin-lte/plugins/iCheck/square/grey.png
--------------------------------------------------------------------------------
/public/images/vendor/admin-lte/plugins/iCheck/square/pink.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/harish81/digidocu/HEAD/public/images/vendor/admin-lte/plugins/iCheck/square/pink.png
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/api/docs/controller/controller.stub:
--------------------------------------------------------------------------------
1 | /**
2 | * Class $MODEL_NAME$Controller
3 | * @package $NAMESPACE_API_CONTROLLER$
4 | */
5 |
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/docs/model.stub:
--------------------------------------------------------------------------------
1 | /**
2 | * Class $MODEL_NAME$
3 | * @package $NAMESPACE_MODEL$
4 | * @version $GENERATE_DATE$
5 | *
6 | $PHPDOC$ */
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/vuejs/docs/controller/controller.stub:
--------------------------------------------------------------------------------
1 | /**
2 | * Class $MODEL_NAME$Controller
3 | * @package $NAMESPACE_API_CONTROLLER$
4 | */
5 |
--------------------------------------------------------------------------------
/public/images/vendor/admin-lte/plugins/iCheck/square/aero@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/harish81/digidocu/HEAD/public/images/vendor/admin-lte/plugins/iCheck/square/aero@2x.png
--------------------------------------------------------------------------------
/public/images/vendor/admin-lte/plugins/iCheck/square/blue@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/harish81/digidocu/HEAD/public/images/vendor/admin-lte/plugins/iCheck/square/blue@2x.png
--------------------------------------------------------------------------------
/public/images/vendor/admin-lte/plugins/iCheck/square/green@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/harish81/digidocu/HEAD/public/images/vendor/admin-lte/plugins/iCheck/square/green@2x.png
--------------------------------------------------------------------------------
/public/images/vendor/admin-lte/plugins/iCheck/square/grey@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/harish81/digidocu/HEAD/public/images/vendor/admin-lte/plugins/iCheck/square/grey@2x.png
--------------------------------------------------------------------------------
/public/images/vendor/admin-lte/plugins/iCheck/square/orange.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/harish81/digidocu/HEAD/public/images/vendor/admin-lte/plugins/iCheck/square/orange.png
--------------------------------------------------------------------------------
/public/images/vendor/admin-lte/plugins/iCheck/square/pink@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/harish81/digidocu/HEAD/public/images/vendor/admin-lte/plugins/iCheck/square/pink@2x.png
--------------------------------------------------------------------------------
/public/images/vendor/admin-lte/plugins/iCheck/square/purple.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/harish81/digidocu/HEAD/public/images/vendor/admin-lte/plugins/iCheck/square/purple.png
--------------------------------------------------------------------------------
/public/images/vendor/admin-lte/plugins/iCheck/square/red@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/harish81/digidocu/HEAD/public/images/vendor/admin-lte/plugins/iCheck/square/red@2x.png
--------------------------------------------------------------------------------
/public/images/vendor/admin-lte/plugins/iCheck/square/square.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/harish81/digidocu/HEAD/public/images/vendor/admin-lte/plugins/iCheck/square/square.png
--------------------------------------------------------------------------------
/public/images/vendor/admin-lte/plugins/iCheck/square/yellow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/harish81/digidocu/HEAD/public/images/vendor/admin-lte/plugins/iCheck/square/yellow.png
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/scaffold/views/paginate.stub:
--------------------------------------------------------------------------------
1 |
2 | @include('adminlte-templates::common.paginate', ['records' => $$MODEL_NAME_PLURAL_CAMEL$])
3 |
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/vuejs/js/fields_col.stub:
--------------------------------------------------------------------------------
1 | {
2 | name: '$FIELD_NAME$',
3 | sortField: '$FIELD_NAME$',
4 | visible: $FIELD_VISIBLE$
5 | },
--------------------------------------------------------------------------------
/public/fonts/vendor/bootstrap/dist/glyphicons-halflings-regular.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/harish81/digidocu/HEAD/public/fonts/vendor/bootstrap/dist/glyphicons-halflings-regular.eot
--------------------------------------------------------------------------------
/public/fonts/vendor/bootstrap/dist/glyphicons-halflings-regular.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/harish81/digidocu/HEAD/public/fonts/vendor/bootstrap/dist/glyphicons-halflings-regular.ttf
--------------------------------------------------------------------------------
/public/images/vendor/admin-lte/plugins/iCheck/square/orange@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/harish81/digidocu/HEAD/public/images/vendor/admin-lte/plugins/iCheck/square/orange@2x.png
--------------------------------------------------------------------------------
/public/images/vendor/admin-lte/plugins/iCheck/square/purple@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/harish81/digidocu/HEAD/public/images/vendor/admin-lte/plugins/iCheck/square/purple@2x.png
--------------------------------------------------------------------------------
/public/images/vendor/admin-lte/plugins/iCheck/square/square@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/harish81/digidocu/HEAD/public/images/vendor/admin-lte/plugins/iCheck/square/square@2x.png
--------------------------------------------------------------------------------
/public/images/vendor/admin-lte/plugins/iCheck/square/yellow@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/harish81/digidocu/HEAD/public/images/vendor/admin-lte/plugins/iCheck/square/yellow@2x.png
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/docs/repository.stub:
--------------------------------------------------------------------------------
1 | /**
2 | * Class $MODEL_NAME$Repository
3 | * @package $NAMESPACE_REPOSITORY$
4 | * @version $GENERATE_DATE$
5 | */
6 |
--------------------------------------------------------------------------------
/public/fonts/vendor/bootstrap/dist/glyphicons-halflings-regular.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/harish81/digidocu/HEAD/public/fonts/vendor/bootstrap/dist/glyphicons-halflings-regular.woff
--------------------------------------------------------------------------------
/public/fonts/vendor/bootstrap/dist/glyphicons-halflings-regular.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/harish81/digidocu/HEAD/public/fonts/vendor/bootstrap/dist/glyphicons-halflings-regular.woff2
--------------------------------------------------------------------------------
/resources/views/errors/404.blade.php:
--------------------------------------------------------------------------------
1 | @extends('errors.illustrated-layout')
2 |
3 | @section('title', __('Not Found'))
4 | @section('code', '404')
5 | @section('message', __('Not Found'))
6 |
--------------------------------------------------------------------------------
/resources/views/vendor/mail/html/header.blade.php:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
--------------------------------------------------------------------------------
/.github/FUNDING.yml:
--------------------------------------------------------------------------------
1 | # These are supported funding model platforms
2 |
3 | github: [harish81]
4 | custom: ["https://paypal.me/nandoliyaharish", "https://www.buymeacoffee.com/nandoliyaharish"]
5 |
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/scaffold/fields/radio.stub:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/resources/views/errors/401.blade.php:
--------------------------------------------------------------------------------
1 | @extends('errors.illustrated-layout')
2 |
3 | @section('title', __('Unauthorized'))
4 | @section('code', '401')
5 | @section('message', __('Unauthorized'))
6 |
--------------------------------------------------------------------------------
/resources/views/errors/419.blade.php:
--------------------------------------------------------------------------------
1 | @extends('errors.illustrated-layout')
2 |
3 | @section('title', __('Page Expired'))
4 | @section('code', '419')
5 | @section('message', __('Page Expired'))
6 |
--------------------------------------------------------------------------------
/resources/views/errors/500.blade.php:
--------------------------------------------------------------------------------
1 | @extends('errors.illustrated-layout')
2 |
3 | @section('title', __('Server Error'))
4 | @section('code', '500')
5 | @section('message', __('Server Error'))
6 |
--------------------------------------------------------------------------------
/public/docs/dev/troubleshooting.md:
--------------------------------------------------------------------------------
1 | # Troubleshooting
2 |
3 | ## Permissions
4 |
5 | * Run `php artisan cache:forget spatie.permission.cache` in case you have problem
6 |
7 | with permissions.
8 |
9 |
--------------------------------------------------------------------------------
/resources/views/errors/429.blade.php:
--------------------------------------------------------------------------------
1 | @extends('errors.illustrated-layout')
2 |
3 | @section('title', __('Too Many Requests'))
4 | @section('code', '429')
5 | @section('message', __('Too Many Requests'))
6 |
--------------------------------------------------------------------------------
/resources/sass/app.scss:
--------------------------------------------------------------------------------
1 | // Fonts
2 | @import url('https://fonts.googleapis.com/css?family=Nunito');
3 |
4 | // Variables
5 | @import 'variables';
6 |
7 | // Bootstrap
8 | @import '~bootstrap/scss/bootstrap';
9 |
--------------------------------------------------------------------------------
/resources/views/auth/emails/password.blade.php:
--------------------------------------------------------------------------------
1 | Click here to reset your password: {{ $link }}
2 |
--------------------------------------------------------------------------------
/resources/views/errors/403.blade.php:
--------------------------------------------------------------------------------
1 | @extends('errors.illustrated-layout')
2 |
3 | @section('title', __('Forbidden'))
4 | @section('code', '403')
5 | @section('message', __($exception->getMessage() ?: 'Forbidden'))
6 |
--------------------------------------------------------------------------------
/tests/TestCase.php:
--------------------------------------------------------------------------------
1 | getEmailForPasswordReset()) }}"> {{ $link }}
2 |
--------------------------------------------------------------------------------
/resources/views/errors/503.blade.php:
--------------------------------------------------------------------------------
1 | @extends('errors.illustrated-layout')
2 |
3 | @section('title', __('Service Unavailable'))
4 | @section('code', '503')
5 | @section('message', __($exception->getMessage() ?: 'Service Unavailable'))
6 |
--------------------------------------------------------------------------------
/resources/views/settings/datatables_actions.blade.php:
--------------------------------------------------------------------------------
1 |
6 |
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/api/routes/prefix_routes.stub:
--------------------------------------------------------------------------------
1 | Route::group(['prefix' => '$RAW_ROUTE_PREFIX$'], function () {
2 | Route::resource('$MODEL_NAME_PLURAL_SNAKE$', '$PATH_PREFIX$$MODEL_NAME$APIController');
3 | });
4 |
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/scaffold/layouts/home.stub:
--------------------------------------------------------------------------------
1 | @extends('layouts.app')
2 |
3 | @section('content')
4 |
10 | @endsection
11 |
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/api/docs/controller/index.stub:
--------------------------------------------------------------------------------
1 | /**
2 | * Display a listing of the $MODEL_NAME$.
3 | * GET|HEAD /$MODEL_NAME_PLURAL_CAMEL$
4 | *
5 | * @param Request $request
6 | * @return Response
7 | */
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/api/docs/controller/show.stub:
--------------------------------------------------------------------------------
1 | /**
2 | * Display the specified $MODEL_NAME$.
3 | * GET|HEAD /$MODEL_NAME_PLURAL_CAMEL$/{id}
4 | *
5 | * @param int $id
6 | *
7 | * @return Response
8 | */
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/vuejs/docs/controller/index.stub:
--------------------------------------------------------------------------------
1 | /**
2 | * Display a listing of the $MODEL_NAME$.
3 | * GET|HEAD /$MODEL_NAME_PLURAL_CAMEL$
4 | *
5 | * @param Request $request
6 | * @return Response
7 | */
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/vuejs/docs/controller/show.stub:
--------------------------------------------------------------------------------
1 | /**
2 | * Display the specified $MODEL_NAME$.
3 | * GET|HEAD /$MODEL_NAME_PLURAL_CAMEL$/{id}
4 | *
5 | * @param int $id
6 | *
7 | * @return Response
8 | */
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/scaffold/routes/prefix_routes.stub:
--------------------------------------------------------------------------------
1 | Route::group(['prefix' => '$RAW_ROUTE_PREFIX$'], function () {
2 | Route::resource('$MODEL_NAME_PLURAL_CAMEL$', '$PATH_PREFIX$$MODEL_NAME$Controller', ["as" => '$RAW_ROUTE_PREFIX$']);
3 | });
4 |
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/scaffold/views/show_field.stub:
--------------------------------------------------------------------------------
1 |
2 |
6 |
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/vuejs/docs/controller/destroy.stub:
--------------------------------------------------------------------------------
1 | /**
2 | * Remove the specified $MODEL_NAME$ from storage.
3 | * DELETE /$MODEL_NAME_PLURAL_CAMEL$/{id}
4 | *
5 | * @param int $id
6 | *
7 | * @return Response
8 | */
--------------------------------------------------------------------------------
/resources/views/vendor/mail/html/subcopy.blade.php:
--------------------------------------------------------------------------------
1 |
2 |
3 | |
4 | {{ Illuminate\Mail\Markdown::parse($slot) }}
5 | |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/resources/views/layouts/datatables_css.blade.php:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | /node_modules
2 | /public/hot
3 | /public/storage
4 | /storage/*.key
5 | /vendor
6 | .env
7 | .env.backup
8 | .phpunit.result.cache
9 | Homestead.json
10 | Homestead.yaml
11 | npm-debug.log
12 | yarn-error.log
13 | /.idea
14 | .phpstorm.meta.php
15 | _ide_helper.php
16 |
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/api/docs/controller/store.stub:
--------------------------------------------------------------------------------
1 | /**
2 | * Store a newly created $MODEL_NAME$ in storage.
3 | * POST /$MODEL_NAME_PLURAL_CAMEL$
4 | *
5 | * @param Create$MODEL_NAME$APIRequest $request
6 | *
7 | * @return Response
8 | */
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/vuejs/docs/controller/store.stub:
--------------------------------------------------------------------------------
1 | /**
2 | * Store a newly created $MODEL_NAME$ in storage.
3 | * POST /$MODEL_NAME_PLURAL_CAMEL$
4 | *
5 | * @param Create$MODEL_NAME$APIRequest $request
6 | *
7 | * @return Response
8 | */
--------------------------------------------------------------------------------
/.editorconfig:
--------------------------------------------------------------------------------
1 | root = true
2 |
3 | [*]
4 | charset = utf-8
5 | end_of_line = lf
6 | insert_final_newline = true
7 | indent_style = space
8 | indent_size = 4
9 | trim_trailing_whitespace = true
10 |
11 | [*.md]
12 | trim_trailing_whitespace = false
13 |
14 | [*.{yml,yaml}]
15 | indent_size = 2
16 |
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/scaffold/view_composer.stub:
--------------------------------------------------------------------------------
1 | View::composer(['$COMPOSER_VIEWS$'], function ($view) {
2 | $$COMPOSER_VIEW_VARIABLE$ = $COMPOSER_VIEW_VARIABLE_VALUES$;
3 | $view->with('$COMPOSER_VIEW_VARIABLE$', $$COMPOSER_VIEW_VARIABLE$);
4 | });
--------------------------------------------------------------------------------
/resources/views/vendor/mail/html/promotion.blade.php:
--------------------------------------------------------------------------------
1 |
8 |
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/scaffold/layouts/datatables_css.stub:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/vuejs/js/model-config.stub:
--------------------------------------------------------------------------------
1 | var objectRow = {
2 | $FIELDS_ROW$
3 | };
4 |
5 | var tableColumns = [
6 | $FIELDS_COL$
7 | {
8 | name: '__actions',
9 | dataClass: 'center aligned',
10 | callback: null
11 | }
12 | ];
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/api/docs/controller/destroy.stub:
--------------------------------------------------------------------------------
1 | /**
2 | * Remove the specified $MODEL_NAME$ from storage.
3 | * DELETE /$MODEL_NAME_PLURAL_CAMEL$/{id}
4 | *
5 | * @param int $id
6 | *
7 | * @throws \Exception
8 | *
9 | * @return Response
10 | */
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/model/relationship.stub:
--------------------------------------------------------------------------------
1 | /**
2 | * @return \Illuminate\Database\Eloquent\Relations\$RELATIONSHIP_CLASS$
3 | **/
4 | public function $FUNCTION_NAME$()
5 | {
6 | return $this->$RELATION$(\$NAMESPACE_MODEL$\$RELATION_MODEL_NAME$::class$INPUT_FIELDS$);
7 | }
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/api/docs/controller/update.stub:
--------------------------------------------------------------------------------
1 | /**
2 | * Update the specified $MODEL_NAME$ in storage.
3 | * PUT/PATCH /$MODEL_NAME_PLURAL_CAMEL$/{id}
4 | *
5 | * @param int $id
6 | * @param Update$MODEL_NAME$APIRequest $request
7 | *
8 | * @return Response
9 | */
--------------------------------------------------------------------------------
/.styleci.yml:
--------------------------------------------------------------------------------
1 | php:
2 | preset: laravel
3 | enabled:
4 | - alpha_ordered_imports
5 | disabled:
6 | - length_ordered_imports
7 | - unused_use
8 | finder:
9 | not-name:
10 | - index.php
11 | - server.php
12 | js:
13 | finder:
14 | not-name:
15 | - webpack.mix.js
16 | css: true
17 |
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/vuejs/docs/controller/update.stub:
--------------------------------------------------------------------------------
1 | /**
2 | * Update the specified $MODEL_NAME$ in storage.
3 | * PUT/PATCH /$MODEL_NAME_PLURAL_CAMEL$/{id}
4 | *
5 | * @param int $id
6 | * @param Update$MODEL_NAME$APIRequest $request
7 | *
8 | * @return Response
9 | */
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/scaffold/layouts/menu_template.stub:
--------------------------------------------------------------------------------
1 |
2 | $MODEL_NAME_PLURAL_HUMAN$
3 |
4 |
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/scaffold/views/fields.stub:
--------------------------------------------------------------------------------
1 | $FIELDS$
2 |
3 |
4 |
8 |
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/seeds/model_seeder.stub:
--------------------------------------------------------------------------------
1 | table(['width' => '100%', 'class' => 'table table-striped table-bordered table-mini']) !!}
6 |
7 | @section('scripts')
8 | @include('layouts.datatables_js')
9 | {!! $dataTable->scripts() !!}
10 | @endsection
11 |
--------------------------------------------------------------------------------
/database/factories/SettingFactory.php:
--------------------------------------------------------------------------------
1 | define(Setting::class, function (Faker $faker) {
9 |
10 | return [
11 | 'name' => $faker->word,
12 | 'value' => $faker->word
13 | ];
14 | });
15 |
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/vuejs/routes/api_routes.stub:
--------------------------------------------------------------------------------
1 | define($MODEL_NAME$::class, function (Faker $faker) {
9 |
10 | return [
11 | $FIELDS$
12 | ];
13 | });
14 |
--------------------------------------------------------------------------------
/resources/views/custom_fields/table.blade.php:
--------------------------------------------------------------------------------
1 | @section('css')
2 | @include('layouts.datatables_css')
3 | @endsection
4 |
5 | {!! $dataTable->table(['width' => '100%', 'class' => 'table table-striped table-bordered table-mini']) !!}
6 |
7 | @section('scripts')
8 | @include('layouts.datatables_js')
9 | {!! $dataTable->scripts() !!}
10 | @endsection
11 |
--------------------------------------------------------------------------------
/resources/views/settings/show_fields.blade.php:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
8 |
9 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/vuejs/routes/routes.stub:
--------------------------------------------------------------------------------
1 | /*
2 | * ------------------- Route index for $MODEL_NAME$ ---------------
3 | */
4 | Route::get('$ROUTE_PREFIX$$MODEL_NAME_PLURAL_CAMEL$', [
5 | 'as' => '$VIEW_PREFIX$$MODEL_NAME_PLURAL_CAMEL$.index',
6 | 'uses' => function() {
7 | return view('$VIEW_PREFIX$$MODEL_NAME_PLURAL_CAMEL$.index');
8 | }
9 | ]);
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/scaffold/fields/checkbox_group.stub:
--------------------------------------------------------------------------------
1 |
2 |
3 | {!! Form::label('$FIELD_NAME$', '$FIELD_NAME_TITLE$:') !!}
4 | $CHECKBOXES$
5 | {!! $errors->first('$FIELD_NAME$',':message') !!}
6 |
7 |
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/scaffold/fields/radio_group.stub:
--------------------------------------------------------------------------------
1 |
2 |
3 | {!! Form::label('$FIELD_NAME$', '$FIELD_NAME_TITLE$:') !!}
4 | $RADIO_BUTTONS$
5 | {!! $errors->first('$FIELD_NAME$',':message') !!}
6 |
7 |
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/scaffold/views/datatable_body.stub:
--------------------------------------------------------------------------------
1 | @section('css')
2 | @include('layouts.datatables_css')
3 | @endsection
4 |
5 | {!! $dataTable->table(['width' => '100%', 'class' => 'table table-striped table-bordered']) !!}
6 |
7 | @section('scripts')
8 | @include('layouts.datatables_js')
9 | {!! $dataTable->scripts() !!}
10 | @endsection
--------------------------------------------------------------------------------
/resources/views/components/input.blade.php:
--------------------------------------------------------------------------------
1 |
2 | {!! Form::label($name, empty($label)?ucfirst($name).':':$label.":") !!}
3 | {!! Form::text($name, $value, array_merge(['class' => 'form-control'],$attributes)) !!}
4 | {!! $errors->first($name,':message') !!}
5 |
6 |
--------------------------------------------------------------------------------
/resources/views/components/textarea.blade.php:
--------------------------------------------------------------------------------
1 |
2 | {!! Form::label($name, empty($label)?ucfirst($name).':':$label.":") !!}
3 | {!! Form::textarea($name, $value, array_merge(['class' => 'form-control'],$attributes)) !!}
4 | {!! $errors->first($name,':message') !!}
5 |
6 |
--------------------------------------------------------------------------------
/resources/views/users/table.blade.php:
--------------------------------------------------------------------------------
1 | @section('css')
2 | @include('layouts.datatables_css')
3 | @endsection
4 |
5 | {!! $dataTable->table(['width' => '100%', 'class' => 'table table-striped table-bordered table-mini']) !!}
6 |
7 | @section('scripts')
8 | @include('layouts.datatables_js')
9 | {!! $dataTable->scripts() !!}
10 | @endsection
11 |
--------------------------------------------------------------------------------
/resources/views/file_types/table.blade.php:
--------------------------------------------------------------------------------
1 | @section('css')
2 | @include('layouts.datatables_css')
3 | @endsection
4 |
5 | {!! $dataTable->table(['width' => '100%', 'class' => 'table table-striped table-bordered table-mini']) !!}
6 |
7 | @section('scripts')
8 | @include('layouts.datatables_js')
9 | {!! $dataTable->scripts() !!}
10 | @endsection
11 |
--------------------------------------------------------------------------------
/resources/views/settings/table.blade.php:
--------------------------------------------------------------------------------
1 | @section('css')
2 | @include('layouts.datatables_css')
3 | @endsection
4 |
5 | {!! $dataTable->table(['width' => '100%', 'class' => 'table table-striped table-bordered table-mini']) !!}
6 |
7 |
8 | @section('scripts')
9 | @include('layouts.datatables_js')
10 | {!! $dataTable->scripts() !!}
11 | @endsection
12 |
--------------------------------------------------------------------------------
/app/Http/Middleware/EncryptCookies.php:
--------------------------------------------------------------------------------
1 | assertTrue(true);
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/public/docs/user/interface/user-management.md:
--------------------------------------------------------------------------------
1 | # User Management
2 |
3 | 
4 |
5 | 
6 |
7 | - **User Detail** - Basic system user detail.
8 | - **Global Permissions** - Global Permissions of user.
9 | - **Tags Wise Permissions** - Tag wise permissions of the user, what they can do
10 | in the given tag.
11 |
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/scaffold/fields/file.stub:
--------------------------------------------------------------------------------
1 |
2 |
3 | {!! Form::label('$FIELD_NAME$', '$FIELD_NAME_TITLE$:') !!}
4 | {!! Form::file('$FIELD_NAME$') !!}
5 | {!! $errors->first('$FIELD_NAME$',':message') !!}
6 |
7 |
8 |
--------------------------------------------------------------------------------
/resources/sass/_variables.scss:
--------------------------------------------------------------------------------
1 | // Body
2 | $body-bg: #f8fafc;
3 |
4 | // Typography
5 | $font-family-sans-serif: 'Nunito', sans-serif;
6 | $font-size-base: 0.9rem;
7 | $line-height-base: 1.6;
8 |
9 | // Colors
10 | $blue: #3490dc;
11 | $indigo: #6574cd;
12 | $purple: #9561e2;
13 | $pink: #f66d9b;
14 | $red: #e3342f;
15 | $orange: #f6993f;
16 | $yellow: #ffed4a;
17 | $green: #38c172;
18 | $teal: #4dc0b5;
19 | $cyan: #6cb2eb;
20 |
--------------------------------------------------------------------------------
/resources/views/vendor/mail/html/footer.blade.php:
--------------------------------------------------------------------------------
1 |
2 | |
3 |
10 | |
11 |
12 |
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/scaffold/fields/email.stub:
--------------------------------------------------------------------------------
1 |
2 |
3 | {!! Form::label('$FIELD_NAME$', '$FIELD_NAME_TITLE$:') !!}
4 | {!! Form::email('$FIELD_NAME$', null, ['class' => 'form-control']) !!}
5 | {!! $errors->first('$FIELD_NAME$',':message') !!}
6 |
7 |
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/scaffold/fields/number.stub:
--------------------------------------------------------------------------------
1 |
2 |
3 | {!! Form::label('$FIELD_NAME$', '$FIELD_NAME_TITLE$:') !!}
4 | {!! Form::number('$FIELD_NAME$', null, ['class' => 'form-control']) !!}
5 | {!! $errors->first('$FIELD_NAME$',':message') !!}
6 |
7 |
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/scaffold/fields/password.stub:
--------------------------------------------------------------------------------
1 |
2 |
3 | {!! Form::label('$FIELD_NAME$', '$FIELD_NAME_TITLE$:') !!}
4 | {!! Form::password('$FIELD_NAME$', ['class' => 'form-control']) !!}
5 | {!! $errors->first('$FIELD_NAME$',':message') !!}
6 |
7 |
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/scaffold/fields/text.stub:
--------------------------------------------------------------------------------
1 |
2 |
3 | {!! Form::label('$FIELD_NAME$', '$FIELD_NAME_TITLE$:') !!}
4 | {!! Form::text('$FIELD_NAME$', null, ['class' => 'form-control']) !!}
5 | {!! $errors->first('$FIELD_NAME$',':message') !!}
6 |
7 |
--------------------------------------------------------------------------------
/app/Http/Controllers/Controller.php:
--------------------------------------------------------------------------------
1 |
2 |
3 | {!! Form::label('$FIELD_NAME$', '$FIELD_NAME_TITLE$:') !!}
4 | {!! Form::textarea('$FIELD_NAME$', null, ['class' => 'form-control']) !!}
5 | {!! $errors->first('$FIELD_NAME$',':message') !!}
6 |
7 |
--------------------------------------------------------------------------------
/resources/views/users/create.blade.php:
--------------------------------------------------------------------------------
1 | @extends('layouts.app')
2 | @section('title','New User')
3 | @section('content')
4 |
9 |
10 |
11 | {!! Form::open(['route' => 'users.store']) !!}
12 |
13 | @include('users.fields')
14 |
15 | {!! Form::close() !!}
16 |
17 | @endsection
18 |
--------------------------------------------------------------------------------
/app/Http/Middleware/CheckForMaintenanceMode.php:
--------------------------------------------------------------------------------
1 | has(preg_replace("/\[.?\]/",'',$name)) ? 'has-error' :'' }}">
2 | {!! Form::label($name, empty($label)?ucfirst($name).':':$label.":") !!}
3 | {!! Form::select($name, $list, $value, array_merge(['class' => 'form-control select2'],$attributes)) !!}
4 | {!! $errors->first(preg_replace("/\[.?\]/",'',$name),':message') !!}
5 |
6 |
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/scaffold/fields/select.stub:
--------------------------------------------------------------------------------
1 |
2 |
3 | {!! Form::label('$FIELD_NAME$', '$FIELD_NAME_TITLE$:') !!}
4 | {!! Form::select('$FIELD_NAME$', $INPUT_ARR$, null, ['class' => 'form-control select2']) !!}
5 | {!! $errors->first('$FIELD_NAME$',':message') !!}
6 |
7 |
--------------------------------------------------------------------------------
/tests/Feature/ExampleTest.php:
--------------------------------------------------------------------------------
1 | get('/');
18 |
19 | $response->assertStatus(200);
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/resources/views/users/edit.blade.php:
--------------------------------------------------------------------------------
1 | @extends('layouts.app')
2 | @section('title','Edit User')
3 | @section('content')
4 |
9 |
10 | {!! Form::model($user, ['route' => ['users.update', $user->id], 'method' => 'patch']) !!}
11 |
12 | @include('users.fields')
13 |
14 | {!! Form::close() !!}
15 |
16 | @endsection
17 |
--------------------------------------------------------------------------------
/public/docs/user/interface/home.md:
--------------------------------------------------------------------------------
1 | # Home
2 |
3 | The Home or Dashboard is the first page you see when you enter digidocu.
4 |
5 | 
6 |
7 | - **Quick Upload** - Helps to quickly upload files to document.
8 | - **Tags** - Showing total tags under you(based on permissions).
9 | - **Documents** - Showing total documents & their files.
10 | - **Activity** - The activity of all documents, you can filter activity by dates also.
11 |
12 |
--------------------------------------------------------------------------------
/tests/CreatesApplication.php:
--------------------------------------------------------------------------------
1 | make(Kernel::class)->bootstrap();
19 |
20 | return $app;
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/app/Providers/BroadcastServiceProvider.php:
--------------------------------------------------------------------------------
1 | '$API_PREFIX$', 'namespace' => 'API'], function () {
8 | Route::group(['prefix' => '$API_VERSION$'], function () {
9 | require config('infyom.laravel_generator.path.api_routes');
10 | });
11 | });
12 |
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/vuejs/routes/api_routes_group.stub:
--------------------------------------------------------------------------------
1 | /*
2 | |--------------------------------------------------------------------------
3 | | API routes
4 | |--------------------------------------------------------------------------
5 | */
6 |
7 | Route::group(['prefix' => '$API_PREFIX$', 'namespace' => 'API'], function () {
8 | Route::group(['prefix' => '$API_VERSION$'], function () {
9 | require config('infyom.laravel_generator.path.api_routes');
10 | });
11 | });
12 |
--------------------------------------------------------------------------------
/database/factories/CustomFieldFactory.php:
--------------------------------------------------------------------------------
1 | define(CustomField::class, function (Faker $faker) {
9 |
10 | return [
11 | 'model_type' => $faker->word,
12 | 'name' => $faker->word,
13 | 'validation' => $faker->word,
14 | 'created_at' => $faker->date('Y-m-d H:i:s'),
15 | 'updated_at' => $faker->date('Y-m-d H:i:s')
16 | ];
17 | });
18 |
--------------------------------------------------------------------------------
/database/seeders/DatabaseSeeder.php:
--------------------------------------------------------------------------------
1 | call([
15 | SettingsTableSeeder::class,
16 | UsersTableSeeder::class,
17 | PermissionsTableSeeder::class,
18 | FileTypesSeeder::class
19 | ]);
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/database/factories/UserFactory.php:
--------------------------------------------------------------------------------
1 | define(User::class, function (Faker $faker) {
9 |
10 | return [
11 | 'name' => $faker->word,
12 | 'email' => $faker->word,
13 | 'username' => $faker->word,
14 | 'address' => $faker->word,
15 | 'description' => $faker->text,
16 | 'password' => $faker->word,
17 | 'status' => $faker->word
18 | ];
19 | });
20 |
--------------------------------------------------------------------------------
/resources/views/vendor/mail/html/panel.blade.php:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | |
7 | {{ Illuminate\Mail\Markdown::parse($slot) }}
8 | |
9 |
10 |
11 | |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/database/factories/TagFactory.php:
--------------------------------------------------------------------------------
1 | define(Tag::class, function (Faker $faker) {
9 |
10 | return [
11 | 'name' => $faker->word,
12 | 'color' => $faker->word,
13 | 'created_by' => $faker->randomDigitNotNull,
14 | 'custom_fields' => $faker->word,
15 | 'created_at' => $faker->date('Y-m-d H:i:s'),
16 | 'updated_at' => $faker->date('Y-m-d H:i:s')
17 | ];
18 | });
19 |
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/scaffold/fields/boolean.stub:
--------------------------------------------------------------------------------
1 |
2 |
3 | {!! Form::label('$FIELD_NAME$', '$FIELD_NAME_TITLE$:') !!}
4 |
8 | {!! $errors->first('$FIELD_NAME$',':message') !!}
9 |
10 |
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/scaffold/fields/checkbox.stub:
--------------------------------------------------------------------------------
1 |
2 |
3 | {!! Form::label('$FIELD_NAME$', '$FIELD_NAME_TITLE$:') !!}
4 |
8 | {!! $errors->first('$FIELD_NAME$',':message') !!}
9 |
10 |
--------------------------------------------------------------------------------
/resources/views/vendor/mail/html/promotion/button.blade.php:
--------------------------------------------------------------------------------
1 |
2 |
3 | |
4 |
11 | |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/resources/views/pdf.blade.php:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
7 |
8 | {{$docName}}
9 |
10 |
11 | @foreach ($filePaths as $file)
12 |
13 | @endforeach
14 |
15 |
16 |
--------------------------------------------------------------------------------
/app/Http/Middleware/Authenticate.php:
--------------------------------------------------------------------------------
1 | expectsJson()) {
18 | return route('login');
19 | }
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/routes/channels.php:
--------------------------------------------------------------------------------
1 | id === (int) $id;
16 | });
17 |
--------------------------------------------------------------------------------
/database/seeders/FileTypesSeeder.php:
--------------------------------------------------------------------------------
1 | 'General',
17 | 'no_of_files' => 2,
18 | 'labels' => 'page1,page2',
19 | 'file_validations' => 'mimes:jpeg,bmp,png,jpg',
20 | 'file_maxsize' => 8
21 | ]);
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/scaffold/fields/toggle-switch.stub:
--------------------------------------------------------------------------------
1 |
2 |
3 | {!! Form::label('$FIELD_NAME$', '$FIELD_NAME_TITLE$:') !!}
4 |
8 | {!! $errors->first('$FIELD_NAME$',':message') !!}
9 |
10 |
--------------------------------------------------------------------------------
/app/Http/Middleware/VerifyCsrfToken.php:
--------------------------------------------------------------------------------
1 | 'Super Admin',
18 | 'username' => 'super',
19 | 'password' => bcrypt('123456'),
20 | 'status' => config('constants.STATUS.ACTIVE')
21 | ]);
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/public/docs/user/interface/tags-management.md:
--------------------------------------------------------------------------------
1 | # Tags Management
2 |
3 | Tags are treated as like departments or branches or just tags.
4 | tag's label can be changed in [settings](advanced-settings/settings.md) as per your requirements.
5 |
6 | 
7 |
8 | 
9 |
10 | - **Name** - The name of the tag.
11 | - **Color** - The color of the tag label.
12 |
13 | > **Note:** The additional or custom fields can be configured
14 | for tags from the [custom fields](advanced-settings/custom-fields.md) section.
15 |
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/view_service_provider.stub:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/routes/api.php:
--------------------------------------------------------------------------------
1 | get('/user', function (Request $request) {
17 | return $request->user();
18 | });
19 |
--------------------------------------------------------------------------------
/resources/views/settings/fields.blade.php:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | {!! Form::label('value', optional($setting)->name) !!}
5 | {!! Form::text('value', null, ['class' => 'form-control']) !!}
6 | {!! $errors->first('value',':message') !!}
7 |
8 |
9 |
10 |
11 |
15 |
--------------------------------------------------------------------------------
/database/factories/FileTypeFactory.php:
--------------------------------------------------------------------------------
1 | define(FileType::class, function (Faker $faker) {
9 |
10 | return [
11 | 'name' => $faker->word,
12 | 'no_of_files' => $faker->randomDigitNotNull,
13 | 'labels' => $faker->word,
14 | 'file_validations' => $faker->word,
15 | 'file_maxsize' => $faker->randomDigitNotNull,
16 | 'created_at' => $faker->date('Y-m-d H:i:s'),
17 | 'updated_at' => $faker->date('Y-m-d H:i:s')
18 | ];
19 | });
20 |
--------------------------------------------------------------------------------
/public/docs/SUMMARY.md:
--------------------------------------------------------------------------------
1 | # Table of contents
2 |
3 | * [Home](README.md)
4 | * [User Documentation](user/README.md)
5 | * [Getting Started](user/getting-start.md)
6 | * [Interface](user/interface/README.md)
7 | * [Home](user/interface/home.md)
8 | * [User Management](user/interface/user-management.md)
9 | * [Tags Management](user/interface/tags-management.md)
10 | * [Documents Management](user/interface/document-management.md)
11 | * [Developer Documentation](dev/README.md)
12 | * [Installation](dev/install.md)
13 | * [Code Guidelines](dev/code-guide.md)
14 | * [Troubleshooting](dev/troubleshooting.md)
15 |
16 |
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/scaffold/layouts/datatables_js.stub:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/home_controller.stub:
--------------------------------------------------------------------------------
1 | middleware('auth');
17 | }
18 |
19 | /**
20 | * Show the application dashboard.
21 | *
22 | * @return \Illuminate\Http\Response
23 | */
24 | public function index()
25 | {
26 | return view('home');
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/resources/lang/en/pagination.php:
--------------------------------------------------------------------------------
1 | '« Previous',
17 | 'next' => 'Next »',
18 |
19 | ];
20 |
--------------------------------------------------------------------------------
/routes/console.php:
--------------------------------------------------------------------------------
1 | comment(Inspiring::quote());
18 | })->describe('Display an inspiring quote');
19 |
--------------------------------------------------------------------------------
/resources/views/settings/show.blade.php:
--------------------------------------------------------------------------------
1 | @extends('layouts.app')
2 |
3 | @section('content')
4 |
9 |
10 |
11 |
12 |
13 | @include('settings.show_fields')
14 |
Back
15 |
16 |
17 |
18 |
19 | @endsection
20 |
--------------------------------------------------------------------------------
/app/Http/Requests/CreateUserRequest.php:
--------------------------------------------------------------------------------
1 |
8 | */
9 |
10 | $uri = urldecode(
11 | parse_url($_SERVER['REQUEST_URI'], PHP_URL_PATH)
12 | );
13 |
14 | // This file allows us to emulate Apache's "mod_rewrite" functionality from the
15 | // built-in PHP web server. This provides a convenient way to test a Laravel
16 | // application without having installed a "real" web server software here.
17 | if ($uri !== '/' && file_exists(__DIR__.'/public'.$uri)) {
18 | return false;
19 | }
20 |
21 | require_once __DIR__.'/public/index.php';
22 |
--------------------------------------------------------------------------------
/app/Http/Middleware/CheckBlock.php:
--------------------------------------------------------------------------------
1 | user()->status==config('constants.STATUS.BLOCK')){
19 | \Auth::logout();
20 | return redirect('/login')->withErrors(['username'=>'You are blocked/suspended.']);
21 | }
22 | return $next($request);
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/app/Http/Requests/CreateSettingRequest.php:
--------------------------------------------------------------------------------
1 | check()) {
21 | return redirect('/home');
22 | }
23 |
24 | return $next($request);
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/webpack.mix.js:
--------------------------------------------------------------------------------
1 | const mix = require('laravel-mix');
2 |
3 | /*
4 | |--------------------------------------------------------------------------
5 | | Mix Asset Management
6 | |--------------------------------------------------------------------------
7 | |
8 | | Mix provides a clean, fluent API for defining some Webpack build steps
9 | | for your Laravel application. By default, we are compiling the Sass
10 | | file for the application as well as bundling up all the JS files.
11 | |
12 | */
13 |
14 | mix.js('resources/js/app.js', 'public/js')
15 | .sass('resources/sass/app.scss', 'public/css');
16 |
17 | //mix.config.fileLoaderDirs.fonts = 'digidocu/public/fonts';
18 |
--------------------------------------------------------------------------------
/app/Http/Requests/CreateCustomFieldRequest.php:
--------------------------------------------------------------------------------
1 |
2 |
3 | Options -MultiViews -Indexes
4 |
5 | RewriteEngine On
6 |
7 | # Handle Authorization Header
8 | RewriteCond %{HTTP:Authorization} .
9 | RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
10 |
11 | # Redirect Trailing Slashes If Not A Folder...
12 | RewriteCond %{REQUEST_FILENAME} !-d
13 | RewriteCond %{REQUEST_URI} (.+)/$
14 | RewriteRule ^ %1 [L,R=301]
15 |
16 | # Handle Front Controller...
17 | RewriteCond %{REQUEST_FILENAME} !-d
18 | RewriteCond %{REQUEST_FILENAME} !-f
19 | RewriteRule ^ index.php [L]
20 |
21 |
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/vuejs/request/create_request.stub:
--------------------------------------------------------------------------------
1 |
5 |
6 | Setting
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 | {!! Form::open(['route' => 'settings.store']) !!}
15 |
16 | @include('settings.fields')
17 |
18 | {!! Form::close() !!}
19 |
20 |
21 |
22 |
23 | @endsection
24 |
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/migration.stub:
--------------------------------------------------------------------------------
1 |
2 |
3 | {!! Form::label('$FIELD_NAME$', '$FIELD_NAME_TITLE$:') !!}
4 | {!! Form::date('$FIELD_NAME$', null, ['class' => 'form-control','id'=>'$FIELD_NAME$']) !!}
5 | {!! $errors->first('$FIELD_NAME$',':message') !!}
6 |
7 |
8 | @section('scripts')
9 |
15 | @endsection
16 |
--------------------------------------------------------------------------------
/app/Http/Requests/UpdateFileTypeRequest.php:
--------------------------------------------------------------------------------
1 |
5 |
6 | Custom Field
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 | {!! Form::open(['route' => 'customFields.store']) !!}
15 |
16 | @include('custom_fields.fields')
17 |
18 | {!! Form::close() !!}
19 |
20 |
21 |
22 |
23 | @endsection
24 |
--------------------------------------------------------------------------------
/resources/lang/en/auth.php:
--------------------------------------------------------------------------------
1 | 'These credentials do not match our records.',
17 | 'throttle' => 'Too many login attempts. Please try again in :seconds seconds.',
18 |
19 | ];
20 |
--------------------------------------------------------------------------------
/resources/views/settings/edit.blade.php:
--------------------------------------------------------------------------------
1 | @extends('layouts.app')
2 | @section('title','Edit Settings')
3 | @section('content')
4 |
9 |
10 |
11 |
12 |
13 | {!! Form::model($setting, ['route' => ['settings.update', $setting->id], 'method' => 'patch']) !!}
14 |
15 | @include('settings.fields')
16 |
17 | {!! Form::close() !!}
18 |
19 |
20 |
21 |
22 | @endsection
23 |
--------------------------------------------------------------------------------
/app/Http/Requests/UpdateCustomFieldRequest.php:
--------------------------------------------------------------------------------
1 | ['fileTypes.destroy', $id], 'method' => 'delete']) !!}
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 | {!! Form::button('
', [
10 | 'type' => 'submit',
11 | 'class' => 'btn btn-danger btn-xs',
12 | 'onclick' => "return conformDel(this,event)"
13 | ]) !!}
14 |
15 | {!! Form::close() !!}
16 |
--------------------------------------------------------------------------------
/resources/views/settings/index.blade.php:
--------------------------------------------------------------------------------
1 | @extends('layouts.app')
2 | @section('title','Settings List')
3 | @section('content')
4 |
9 |
10 |
11 |
12 | @include('flash::message')
13 |
14 |
15 |
16 |
17 | @include('settings.table')
18 |
19 |
20 |
21 |
22 |
23 |
24 | @endsection
25 |
26 |
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/api/request/create_request.stub:
--------------------------------------------------------------------------------
1 | ['customFields.destroy', $id], 'method' => 'delete']) !!}
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 | {!! Form::button('
', [
10 | 'type' => 'submit',
11 | 'class' => 'btn btn-danger btn-xs',
12 | 'onclick' => "return conformDel(this,event)"
13 | ]) !!}
14 |
15 | {!! Form::close() !!}
16 |
--------------------------------------------------------------------------------
/resources/views/custom_fields/edit.blade.php:
--------------------------------------------------------------------------------
1 | @extends('layouts.app')
2 | @section('title','Edit Custom Field')
3 | @section('content')
4 |
9 |
10 |
11 |
12 |
13 | {!! Form::model($customField, ['route' => ['customFields.update', $customField->id], 'method' => 'patch']) !!}
14 |
15 | @include('custom_fields.fields')
16 |
17 | {!! Form::close() !!}
18 |
19 |
20 |
21 |
22 | @endsection
23 |
--------------------------------------------------------------------------------
/resources/views/tags/create.blade.php:
--------------------------------------------------------------------------------
1 | @extends('layouts.app')
2 | @section('title','New '.ucfirst(config('settings.tags_label_singular')))
3 | @section('content')
4 |
9 |
10 |
11 |
12 |
13 |
14 | {!! Form::open(['route' => 'tags.store']) !!}
15 |
16 | @include('tags.fields')
17 |
18 | {!! Form::close() !!}
19 |
20 |
21 |
22 |
23 | @endsection
24 |
--------------------------------------------------------------------------------
/resources/views/tags/edit.blade.php:
--------------------------------------------------------------------------------
1 | @extends('layouts.app')
2 | @section('title','Edit '.ucfirst(config('settings.tags_label_singular')))
3 | @section('content')
4 |
9 |
10 |
11 |
12 |
13 | {!! Form::model($tag, ['route' => ['tags.update', $tag->id], 'method' => 'patch']) !!}
14 |
15 | @include('tags.fields')
16 |
17 | {!! Form::close() !!}
18 |
19 |
20 |
21 |
22 | @endsection
23 |
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/api/request/update_request.stub:
--------------------------------------------------------------------------------
1 | fieldSearchable;
26 | }
27 |
28 | /**
29 | * Configure the Model
30 | **/
31 | public function model()
32 | {
33 | return $MODEL_NAME$::class;
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/resources/views/vendor/flash/modal.blade.php:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
9 |
10 |
13 |
14 |
17 |
18 |
19 |
20 |
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/scaffold/views/show.stub:
--------------------------------------------------------------------------------
1 | @extends('layouts.app')
2 | @section('title','Show $MODEL_NAME_HUMAN$')
3 | @section('content')
4 |
9 |
10 |
11 |
12 |
13 | @include('$VIEW_PREFIX$$MODEL_NAME_PLURAL_SNAKE$.show_fields')
14 |
Back
15 |
16 |
17 |
18 |
19 | @endsection
20 |
--------------------------------------------------------------------------------
/resources/views/documents/create.blade.php:
--------------------------------------------------------------------------------
1 | @extends('layouts.app')
2 | @section('title',"Add ".ucfirst(config('settings.document_label_singular')))
3 | @section('content')
4 |
9 |
10 |
11 |
12 |
13 |
14 | {!! Form::open(['route' => 'documents.store']) !!}
15 | @include('documents.fields',['document'=>null])
16 | {!! Form::close() !!}
17 |
18 |
19 |
20 |
21 | @endsection
22 |
--------------------------------------------------------------------------------
/resources/views/file_types/create.blade.php:
--------------------------------------------------------------------------------
1 | @extends('layouts.app')
2 | @section('title','New '.ucfirst(config('settings.file_label_singular')).' Type')
3 | @section('content')
4 |
9 |
10 |
11 |
12 |
13 |
14 | {!! Form::open(['route' => 'fileTypes.store']) !!}
15 |
16 | @include('file_types.fields')
17 |
18 | {!! Form::close() !!}
19 |
20 |
21 |
22 |
23 | @endsection
24 |
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/scaffold/request/update_request.stub:
--------------------------------------------------------------------------------
1 |
5 |
6 | $MODEL_NAME_HUMAN$
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 | {!! Form::open(['route' => '$ROUTE_NAMED_PREFIX$$MODEL_NAME_PLURAL_CAMEL$.store']) !!}
15 |
16 | @include('$VIEW_PREFIX$$MODEL_NAME_PLURAL_SNAKE$.fields')
17 |
18 | {!! Form::close() !!}
19 |
20 |
21 |
22 |
23 | @endsection
24 |
--------------------------------------------------------------------------------
/app/Http/Middleware/TrustProxies.php:
--------------------------------------------------------------------------------
1 | config('app.url')])
5 | {{ config('app.name') }}
6 | @endcomponent
7 | @endslot
8 |
9 | {{-- Body --}}
10 | {{ $slot }}
11 |
12 | {{-- Subcopy --}}
13 | @isset($subcopy)
14 | @slot('subcopy')
15 | @component('mail::subcopy')
16 | {{ $subcopy }}
17 | @endcomponent
18 | @endslot
19 | @endisset
20 |
21 | {{-- Footer --}}
22 | @slot('footer')
23 | @component('mail::footer')
24 | © {{ date('Y') }} {{ config('app.name') }}. @lang('All rights reserved.')
25 | @endcomponent
26 | @endslot
27 | @endcomponent
28 |
--------------------------------------------------------------------------------
/resources/views/vendor/mail/text/message.blade.php:
--------------------------------------------------------------------------------
1 | @component('mail::layout')
2 | {{-- Header --}}
3 | @slot('header')
4 | @component('mail::header', ['url' => config('app.url')])
5 | {{ config('app.name') }}
6 | @endcomponent
7 | @endslot
8 |
9 | {{-- Body --}}
10 | {{ $slot }}
11 |
12 | {{-- Subcopy --}}
13 | @isset($subcopy)
14 | @slot('subcopy')
15 | @component('mail::subcopy')
16 | {{ $subcopy }}
17 | @endcomponent
18 | @endslot
19 | @endisset
20 |
21 | {{-- Footer --}}
22 | @slot('footer')
23 | @component('mail::footer')
24 | © {{ date('Y') }} {{ config('app.name') }}. @lang('All rights reserved.')
25 | @endcomponent
26 | @endslot
27 | @endcomponent
28 |
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/model/model.stub:
--------------------------------------------------------------------------------
1 |
5 |
6 | {{ucfirst(config('settings.document_label_singular'))}}
7 |
8 |
9 |
10 |
11 |
12 |
13 | {!! Form::model($document, ['route' => ['documents.update', $document->id], 'method' => 'patch']) !!}
14 |
15 | @include('documents.fields')
16 |
17 | {!! Form::close() !!}
18 |
19 |
20 |
21 |
22 | @endsection
23 |
--------------------------------------------------------------------------------
/resources/views/file_types/edit.blade.php:
--------------------------------------------------------------------------------
1 | @extends('layouts.app')
2 | @section('title','Edit '.ucfirst(config('settings.file_label_singular')).' Type')
3 | @section('content')
4 |
9 |
10 |
11 |
12 |
13 | {!! Form::model($fileType, ['route' => ['fileTypes.update', $fileType->id], 'method' => 'patch']) !!}
14 |
15 | @include('file_types.fields')
16 |
17 | {!! Form::close() !!}
18 |
19 |
20 |
21 |
22 | @endsection
23 |
--------------------------------------------------------------------------------
/resources/views/tags/datatables_actions.blade.php:
--------------------------------------------------------------------------------
1 | {!! Form::open(['route' => ['tags.destroy', $id], 'method' => 'delete']) !!}
2 |
3 |
4 |
5 |
6 | @can('update tags')
7 |
8 |
9 |
10 | @endcan
11 | @can('delete tags')
12 | {!! Form::button('
', [
13 | 'type' => 'submit',
14 | 'class' => 'btn btn-danger btn-xs',
15 | 'onclick' => "return conformDel(this,event)"
16 | ]) !!}
17 | @endcan
18 |
19 | {!! Form::close() !!}
20 |
--------------------------------------------------------------------------------
/app/Http/Requests/UpdateUserRequest.php:
--------------------------------------------------------------------------------
1 | user;
30 | $rules['username'] .= ",".$this->user;
31 | $rules['password'] = 'nullable';
32 |
33 | return $rules;
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/public/js/handlebar-helpers.js:
--------------------------------------------------------------------------------
1 | /*Handlebar js Helpers*/
2 | Handlebars.registerHelper('formatDate', function(dateString) {
3 | return new Handlebars.SafeString(
4 | moment(dateString).format("DD/MM/YYYY hh:mm a").toUpperCase()
5 | );
6 | });
7 |
8 | Handlebars.registerHelper('titleize', function(str) {
9 | var title = str.replace(/[- _]+/g, ' ');
10 | var words = title.split(' ');
11 | var len = words.length;
12 | var res = [];
13 | var j = 0;
14 | while (len--) {
15 | var word = words[j++];
16 | var splitStr = word.toLowerCase().split(' ');
17 | for (var i = 0; i < splitStr.length; i++) {
18 | splitStr[i] = splitStr[i].charAt(0).toUpperCase() + splitStr[i].substring(1);
19 | }
20 | res.push(splitStr.join(' '));
21 | }
22 | return res.join(' ');
23 | });
24 |
--------------------------------------------------------------------------------
/app/Repositories/SettingRepository.php:
--------------------------------------------------------------------------------
1 | fieldSearchable;
32 | }
33 |
34 | /**
35 | * Configure the Model
36 | **/
37 | public function model()
38 | {
39 | return Setting::class;
40 | }
41 | }
42 |
--------------------------------------------------------------------------------
/resources/lang/en/passwords.php:
--------------------------------------------------------------------------------
1 | 'Your password has been reset!',
17 | 'sent' => 'We have e-mailed your password reset link!',
18 | 'token' => 'This password reset token is invalid.',
19 | 'user' => "We can't find a user with that e-mail address.",
20 | 'throttled' => 'Please wait before retrying.',
21 |
22 | ];
23 |
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/app_base_controller.stub:
--------------------------------------------------------------------------------
1 |
5 |
6 | $MODEL_NAME_HUMAN$
7 |
8 |
9 |
10 |
11 |
12 |
13 | {!! Form::model($$MODEL_NAME_CAMEL$, ['route' => ['$ROUTE_NAMED_PREFIX$$MODEL_NAME_PLURAL_CAMEL$.update', $$MODEL_NAME_CAMEL$->$PRIMARY_KEY_NAME$], 'method' => 'patch']) !!}
14 |
15 | @include('$VIEW_PREFIX$$MODEL_NAME_PLURAL_SNAKE$.fields')
16 |
17 | {!! Form::close() !!}
18 |
19 |
20 |
21 |
22 | @endsection
23 |
--------------------------------------------------------------------------------
/database/migrations/2019_11_09_055735_create_settings_table.php:
--------------------------------------------------------------------------------
1 | bigIncrements('id');
18 | $table->string('name')->unique();
19 | $table->string('value');
20 | $table->timestamps();
21 | });
22 | }
23 |
24 | /**
25 | * Reverse the migrations.
26 | *
27 | * @return void
28 | */
29 | public function down()
30 | {
31 | Schema::dropIfExists('settings');
32 | }
33 | }
34 |
--------------------------------------------------------------------------------
/database/migrations/2014_10_12_100000_create_password_resets_table.php:
--------------------------------------------------------------------------------
1 | string('email')->index();
18 | $table->string('token');
19 | $table->timestamp('created_at')->nullable();
20 | });
21 | }
22 |
23 | /**
24 | * Reverse the migrations.
25 | *
26 | * @return void
27 | */
28 | public function down()
29 | {
30 | Schema::dropIfExists('password_resets');
31 | }
32 | }
33 |
--------------------------------------------------------------------------------
/app/Providers/EventServiceProvider.php:
--------------------------------------------------------------------------------
1 | [
19 | SendEmailVerificationNotification::class,
20 | ],
21 | ];
22 |
23 | /**
24 | * Register any events for your application.
25 | *
26 | * @return void
27 | */
28 | public function boot()
29 | {
30 | parent::boot();
31 |
32 | //
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/database/migrations/2019_11_21_085158_update_custom_fields_add_field.php:
--------------------------------------------------------------------------------
1 | text('suggestions')->after('validation')->nullable();
18 | });
19 | }
20 |
21 | /**
22 | * Reverse the migrations.
23 | *
24 | * @return void
25 | */
26 | public function down()
27 | {
28 | Schema::table('custom_fields', function (Blueprint $table) {
29 | $table->dropColumn('suggestions');
30 | });
31 | }
32 | }
33 |
--------------------------------------------------------------------------------
/resources/views/vendor/pagination/simple-default.blade.php:
--------------------------------------------------------------------------------
1 | @if ($paginator->hasPages())
2 |
19 | @endif
20 |
--------------------------------------------------------------------------------
/database/migrations/2019_11_11_170438_create_custom_fields_table.php:
--------------------------------------------------------------------------------
1 | increments('id');
18 | $table->string('model_type');
19 | $table->string('name');
20 | $table->string('validation')->nullable();
21 | $table->timestamps();
22 | });
23 | }
24 |
25 | /**
26 | * Reverse the migrations.
27 | *
28 | * @return void
29 | */
30 | public function down()
31 | {
32 | Schema::drop('custom_fields');
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/scaffold/views/datatables_actions.stub:
--------------------------------------------------------------------------------
1 | {!! Form::open(['route' => ['$ROUTE_NAMED_PREFIX$$MODEL_NAME_PLURAL_CAMEL$.destroy', $$PRIMARY_KEY_NAME$], 'method' => 'delete']) !!}
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 | {!! Form::button('
', [
10 | 'type' => 'submit',
11 | 'class' => 'btn btn-danger btn-xs',
12 | 'onclick' => "return conformDel(this,event)"
13 | ]) !!}
14 |
15 | {!! Form::close() !!}
16 |
--------------------------------------------------------------------------------
/resources/views/vendor/mail/html/button.blade.php:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | |
7 |
14 | |
15 |
16 |
17 | |
18 |
19 |
20 |
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/vuejs/vendor/vue-table/components/VuetablePaginationSimple.vue:
--------------------------------------------------------------------------------
1 |
2 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/.env.example:
--------------------------------------------------------------------------------
1 | APP_NAME=Laravel
2 | APP_ENV=local
3 | APP_KEY=
4 | APP_DEBUG=true
5 | APP_URL=http://localhost
6 |
7 | LOG_CHANNEL=stack
8 |
9 | DB_CONNECTION=mysql
10 | DB_HOST=127.0.0.1
11 | DB_PORT=3306
12 | DB_DATABASE=laravel
13 | DB_USERNAME=root
14 | DB_PASSWORD=
15 |
16 | BROADCAST_DRIVER=log
17 | CACHE_DRIVER=file
18 | QUEUE_CONNECTION=sync
19 | SESSION_DRIVER=file
20 | SESSION_LIFETIME=120
21 |
22 | REDIS_HOST=127.0.0.1
23 | REDIS_PASSWORD=null
24 | REDIS_PORT=6379
25 |
26 | MAIL_DRIVER=smtp
27 | MAIL_HOST=smtp.mailtrap.io
28 | MAIL_PORT=2525
29 | MAIL_USERNAME=null
30 | MAIL_PASSWORD=null
31 | MAIL_ENCRYPTION=null
32 |
33 | AWS_ACCESS_KEY_ID=
34 | AWS_SECRET_ACCESS_KEY=
35 | AWS_DEFAULT_REGION=us-east-1
36 | AWS_BUCKET=
37 |
38 | PUSHER_APP_ID=
39 | PUSHER_APP_KEY=
40 | PUSHER_APP_SECRET=
41 | PUSHER_APP_CLUSTER=mt1
42 |
43 | MIX_PUSHER_APP_KEY="${PUSHER_APP_KEY}"
44 | MIX_PUSHER_APP_CLUSTER="${PUSHER_APP_CLUSTER}"
45 |
--------------------------------------------------------------------------------
/app/Rules/ValidationRuleSyntaxChecker.php:
--------------------------------------------------------------------------------
1 | -
3 | DigiDocu provides an easy way to manage documents with features like
4 | permissions, resize & compress images, combine multiple images into single pdf
5 | and much more...
6 | ---
7 |
8 | # Home
9 |
10 | 
11 |
12 | DigiDocu help to manage documents in an organization easily with following set of features:
13 | - User management with permissions.
14 | - Tag wise document management.
15 | - Document activity timeline.
16 | - Dynamically resize documents.
17 | - Marge multiple images into a single pdf.
18 | - Preview a large set of files & Edit images.
19 | - Custom fields with validation.
20 | - Custom validation constraints for each type of file.
21 | - Dynamic naming of `tags`, `documents` & `files` to suits your organization need.
22 | - Read more at [interface](user/interface/README.md) guide.
23 |
24 |
--------------------------------------------------------------------------------
/app/Http/Controllers/Auth/ResetPasswordController.php:
--------------------------------------------------------------------------------
1 | get();
31 | foreach ($customFields as $customField) {
32 | $rules["custom_fields.$customField->name"] = $customField->validation ?? 'nullable';
33 | }
34 |
35 | return $rules;
36 | }
37 | }
38 |
--------------------------------------------------------------------------------
/app/Repositories/FileTypeRepository.php:
--------------------------------------------------------------------------------
1 | fieldSearchable;
35 | }
36 |
37 | /**
38 | * Configure the Model
39 | **/
40 | public function model()
41 | {
42 | return FileType::class;
43 | }
44 | }
45 |
--------------------------------------------------------------------------------
/app/Providers/AuthServiceProvider.php:
--------------------------------------------------------------------------------
1 | 'App\Policies\ModelPolicy',
21 | ];
22 |
23 | /**
24 | * Register any authentication / authorization services.
25 | *
26 | * @return void
27 | */
28 | public function boot()
29 | {
30 | $this->registerPolicies();
31 |
32 | Gate::before(function ($user, $ability) {
33 | return $user->is_super_admin ? true : null;
34 | });
35 | }
36 | }
37 |
--------------------------------------------------------------------------------
/app/Repositories/UserRepository.php:
--------------------------------------------------------------------------------
1 | fieldSearchable;
37 | }
38 |
39 | /**
40 | * Configure the Model
41 | **/
42 | public function model()
43 | {
44 | return User::class;
45 | }
46 | }
47 |
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/vuejs/js/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "private": true,
3 | "devDependencies": {
4 | "babel-core": "^6.7.6",
5 | "babel-loader": "^6.2.4",
6 | "babel-plugin-espower": "^2.2.0",
7 | "babel-plugin-transform-runtime": "^6.7.5",
8 | "babel-preset-es2015": "^6.6.0",
9 | "babel-runtime": "^6.9.2",
10 | "css-loader": "^0.23.1",
11 | "eslint": "^4.19.1",
12 | "eslint-loader": "^1.3.0",
13 | "gulp": "^3.8.8",
14 | "vue": "^1.0.24",
15 | "vue-hot-reload-api": "^1.3.2",
16 | "vue-html-loader": "^1.2.2",
17 | "vue-loader": "^8.2.3",
18 | "vue-select": "^0.1.2",
19 | "vue-style-loader": "^1.0.0",
20 | "vue-validator": "^2.1.3",
21 | "vueify": "^8.5.1",
22 | "vuetable": "^1.1.1",
23 | "webpack": "^1.13.0",
24 | "webpack-dev-server": ">=3.1.11"
25 | },
26 | "dependencies": {
27 | "laravel-elixir": "^3.0.0",
28 | "bootstrap-sass": "^3.0.0"
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/resources/views/vendor/flash/message.blade.php:
--------------------------------------------------------------------------------
1 | @foreach (session('flash_notification', collect())->toArray() as $message)
2 | @if ($message['overlay'])
3 | @include('flash::modal', [
4 | 'modalClass' => 'flash-modal',
5 | 'title' => $message['title'],
6 | 'body' => $message['message']
7 | ])
8 | @else
9 |
14 |
15 |
20 |
21 | {!! $message['message'] !!}
22 |
23 | @endif
24 | @endforeach
25 |
26 | {{ session()->forget('flash_notification') }}
27 |
--------------------------------------------------------------------------------
/database/migrations/2019_11_12_122144_create_file_types_table.php:
--------------------------------------------------------------------------------
1 | increments('id');
18 | $table->string('name');
19 | $table->integer('no_of_files');
20 | $table->string('labels');
21 | $table->string('file_validations');
22 | $table->integer('file_maxsize');
23 | $table->timestamps();
24 | });
25 | }
26 |
27 | /**
28 | * Reverse the migrations.
29 | *
30 | * @return void
31 | */
32 | public function down()
33 | {
34 | Schema::drop('file_types');
35 | }
36 | }
37 |
--------------------------------------------------------------------------------
/app/Http/Controllers/AppBaseController.php:
--------------------------------------------------------------------------------
1 | user()->is_super_admin, 403, 'This action is unauthorized.');
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/resources/views/custom_fields/index.blade.php:
--------------------------------------------------------------------------------
1 | @extends('layouts.app')
2 | @section('title','List Custom Fields')
3 | @section('content')
4 |
14 |
15 |
16 |
17 | @include('flash::message')
18 |
19 |
20 |
21 |
22 | @include('custom_fields.table')
23 |
24 |
25 |
26 |
27 |
28 |
29 | @endsection
30 |
31 |
--------------------------------------------------------------------------------
/database/migrations/2019_11_20_155709_create_activities_table.php:
--------------------------------------------------------------------------------
1 | bigIncrements('id');
18 | $table->unsignedBigInteger('created_by');
19 | $table->text('activity')->nullable();
20 |
21 | $table->foreign('created_by')->references('id')->on('users');
22 | $table->timestamps();
23 | });
24 | }
25 |
26 | /**
27 | * Reverse the migrations.
28 | *
29 | * @return void
30 | */
31 | public function down()
32 | {
33 | Schema::dropIfExists('activities');
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/database/migrations/2019_08_19_000000_create_failed_jobs_table.php:
--------------------------------------------------------------------------------
1 | bigIncrements('id');
18 | $table->text('connection');
19 | $table->text('queue');
20 | $table->longText('payload');
21 | $table->longText('exception');
22 | $table->timestamp('failed_at')->useCurrent();
23 | });
24 | }
25 |
26 | /**
27 | * Reverse the migrations.
28 | *
29 | * @return void
30 | */
31 | public function down()
32 | {
33 | Schema::dropIfExists('failed_jobs');
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/database/migrations/2019_11_12_155907_create_tags_table.php:
--------------------------------------------------------------------------------
1 | increments('id');
18 | $table->string('name');
19 | $table->string('color');
20 | $table->unsignedBigInteger('created_by');
21 | $table->text('custom_fields')->nullable();
22 | $table->timestamps();
23 | $table->foreign('created_by')->references('id')->on('users');
24 | });
25 | }
26 |
27 | /**
28 | * Reverse the migrations.
29 | *
30 | * @return void
31 | */
32 | public function down()
33 | {
34 | Schema::drop('tags');
35 | }
36 | }
37 |
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/vuejs/js/gulpfile.js:
--------------------------------------------------------------------------------
1 | var elixir = require('laravel-elixir');
2 | elixir.config.sourcemaps = false;
3 |
4 | /*
5 | |--------------------------------------------------------------------------
6 | | Elixir Asset Management
7 | |--------------------------------------------------------------------------
8 | |
9 | | Elixir provides a clean, fluent API for defining some basic Gulp tasks
10 | | for your Laravel application. By default, we are compiling the Sass
11 | | file for our application, as well as publishing vendor resources.
12 | |
13 | */
14 |
15 | elixir(function(mix) {
16 | mix.styles([
17 | 'vue-styles.css'
18 | ], 'public/app/css/vue-styles.css');
19 |
20 | mix.browserify('crud.js', 'public/app/js/crud.js');
21 | // Add all model-config.js and generate
22 | // then using gulp, but, generate one for each model.
23 | mix.scripts(['models/model-config.js'], 'public/app/js/models/model-config.js')
24 |
25 | });
26 |
--------------------------------------------------------------------------------
/app/Http/Requests/UpdateTagRequest.php:
--------------------------------------------------------------------------------
1 | tag";
31 | $customFields = CustomField::where('model_type','tags')->get();
32 | foreach ($customFields as $customField) {
33 | $rules["custom_fields.$customField->name"] = $customField->validation ?? 'nullable';
34 | }
35 |
36 | return $rules;
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/scaffold/views/index.stub:
--------------------------------------------------------------------------------
1 | @extends('layouts.app')
2 | @section('title','List $MODEL_NAME_PLURAL_HUMAN$')
3 | @section('content')
4 |
10 |
11 |
12 |
13 | @include('flash::message')
14 |
15 |
16 |
17 |
18 | @include('$VIEW_PREFIX$$MODEL_NAME_PLURAL_SNAKE$.table')
19 |
20 |
21 |
22 | $PAGINATE$
23 |
24 |
25 | @endsection
26 |
27 |
--------------------------------------------------------------------------------
/tests/ApiTestTrait.php:
--------------------------------------------------------------------------------
1 | assertApiSuccess();
9 |
10 | $response = json_decode($this->response->getContent(), true);
11 | $responseData = $response['data'];
12 |
13 | $this->assertNotEmpty($responseData['id']);
14 | $this->assertModelData($actualData, $responseData);
15 | }
16 |
17 | public function assertApiSuccess()
18 | {
19 | $this->response->assertStatus(200);
20 | $this->response->assertJson(['success' => true]);
21 | }
22 |
23 | public function assertModelData(Array $actualData, Array $expectedData)
24 | {
25 | foreach ($actualData as $key => $value) {
26 | if (in_array($key, ['created_at', 'updated_at'])) {
27 | continue;
28 | }
29 | $this->assertEquals($actualData[$key], $expectedData[$key]);
30 | }
31 | }
32 | }
33 |
--------------------------------------------------------------------------------
/resources/views/users/index.blade.php:
--------------------------------------------------------------------------------
1 | @extends('layouts.app')
2 | @section('title','Users List')
3 | @section('content')
4 |
16 |
17 |
18 |
19 | @include('flash::message')
20 |
21 |
22 |
23 |
24 | @include('users.table')
25 |
26 |
27 |
28 |
29 |
30 |
31 | @endsection
32 |
33 |
--------------------------------------------------------------------------------
/app/Console/Kernel.php:
--------------------------------------------------------------------------------
1 | command('inspire')
28 | // ->hourly();
29 | }
30 |
31 | /**
32 | * Register the commands for the application.
33 | *
34 | * @return void
35 | */
36 | protected function commands()
37 | {
38 | $this->load(__DIR__.'/Commands');
39 |
40 | require base_path('routes/console.php');
41 | }
42 | }
43 |
--------------------------------------------------------------------------------
/database/migrations/2019_11_21_122845_update_activities_add_field_document_id.php:
--------------------------------------------------------------------------------
1 | integer('document_id')->unsigned()->nullable();
18 | $table->foreign('document_id')->references('id')->on('documents')
19 | ->onDelete('set null')->onUpdate('cascade');
20 | });
21 | }
22 |
23 | /**
24 | * Reverse the migrations.
25 | *
26 | * @return void
27 | */
28 | public function down()
29 | {
30 | Schema::table('activities', function (Blueprint $table) {
31 | $table->dropColumn('document_id');
32 | });
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/resources/views/file_types/index.blade.php:
--------------------------------------------------------------------------------
1 | @extends('layouts.app')
2 | @section('title','List '.ucfirst(config('settings.file_label_plural')).' Types')
3 | @section('content')
4 |
13 |
14 |
15 |
16 | @include('flash::message')
17 |
18 |
19 |
20 |
21 | @include('file_types.table')
22 |
23 |
24 |
25 |
26 |
27 |
28 | @endsection
29 |
30 |
--------------------------------------------------------------------------------
/public/docs/dev/install.md:
--------------------------------------------------------------------------------
1 | # Installation
2 |
3 | Digidocu provide simple & easy installation.
4 |
5 | ## Steps
6 | 1. Download the latest release from [here](https://github.com/harish81/digidocu/releases) or clone repository.
7 | 2. Run `composer install`.
8 | 3. Copy & setup `.env` file.
9 | 4. Create database & Change `DB_DATABASE` in `.env`.
10 | 5. Migrate the Database `php artisan migrate`.
11 | 6. Run `php artisan key:generate`
12 | 7. Run `php artisan db:seed` (This will generate super-admin & basic settings [required]).
13 | 8. Visit URL in the browser
14 |
15 | ##### Default Login Credential for super admin
16 | | Username | Password |
17 | |----------|----------|
18 | | super | 123456 |
19 |
20 | ## System Requirement
21 | You will need to make sure your server meets the following requirements:
22 | - PHP >= 7.2.0
23 | - [Laravel 6](https://laravel.com/docs/6.x#server-requirements)
24 |
25 | ## Support
26 | If there is any issue with the installation, please report us at
27 | github [issue](https://github.com/harish81/digidocu/issues).
28 |
--------------------------------------------------------------------------------
/app/Rules/CurrentPassword.php:
--------------------------------------------------------------------------------
1 | hash = $hash;
26 | }
27 |
28 | /**
29 | * Determine if the validation rule passes.
30 | *
31 | * @param string $attribute
32 | * @param mixed $value
33 | * @return bool
34 | */
35 | public function passes($attribute, $value)
36 | {
37 | return Hash::check($value, $this->hash);
38 | }
39 |
40 | /**
41 | * Get the validation error message.
42 | *
43 | * @return string
44 | */
45 | public function message()
46 | {
47 | return 'The :attribute is invalid';
48 | }
49 | }
50 |
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/test/api_test_trait.stub:
--------------------------------------------------------------------------------
1 | assertApiSuccess();
9 |
10 | $response = json_decode($this->response->getContent(), true);
11 | $responseData = $response['data'];
12 |
13 | $this->assertNotEmpty($responseData['id']);
14 | $this->assertModelData($actualData, $responseData);
15 | }
16 |
17 | public function assertApiSuccess()
18 | {
19 | $this->response->assertStatus(200);
20 | $this->response->assertJson(['success' => true]);
21 | }
22 |
23 | public function assertModelData(Array $actualData, Array $expectedData)
24 | {
25 | foreach ($actualData as $key => $value) {
26 | if (in_array($key, $TIMESTAMPS$)) {
27 | continue;
28 | }
29 | $this->assertEquals($actualData[$key], $expectedData[$key]);
30 | }
31 | }
32 | }
33 |
--------------------------------------------------------------------------------
/app/Repositories/CustomFieldRepository.php:
--------------------------------------------------------------------------------
1 | fieldSearchable;
33 | }
34 |
35 | /**
36 | * Configure the Model
37 | **/
38 | public function model()
39 | {
40 | return CustomField::class;
41 | }
42 |
43 | public function getForModel($model)
44 | {
45 | return $this->allQuery()
46 | ->where('model_type',$model)
47 | ->get();
48 | }
49 | }
50 |
--------------------------------------------------------------------------------
/resources/views/users/datatables_actions.blade.php:
--------------------------------------------------------------------------------
1 | {!! Form::open(['route' => ['users.destroy', $id], 'method' => 'delete']) !!}
2 |
3 |
4 |
5 |
6 | @can('update users')
7 |
8 |
9 |
10 |
11 |
12 |
13 | @endcan
14 | @can('delete users')
15 | {!! Form::button('
', [
16 | 'type' => 'submit',
17 | 'title' => 'Delete',
18 | 'class' => 'btn btn-danger btn-xs',
19 | 'onclick' => "return conformDel(this,event)"
20 | ]) !!}
21 | @endcan
22 |
23 | {!! Form::close() !!}
24 |
--------------------------------------------------------------------------------
/config/services.php:
--------------------------------------------------------------------------------
1 | [
18 | 'domain' => env('MAILGUN_DOMAIN'),
19 | 'secret' => env('MAILGUN_SECRET'),
20 | 'endpoint' => env('MAILGUN_ENDPOINT', 'api.mailgun.net'),
21 | ],
22 |
23 | 'postmark' => [
24 | 'token' => env('POSTMARK_TOKEN'),
25 | ],
26 |
27 | 'ses' => [
28 | 'key' => env('AWS_ACCESS_KEY_ID'),
29 | 'secret' => env('AWS_SECRET_ACCESS_KEY'),
30 | 'region' => env('AWS_DEFAULT_REGION', 'us-east-1'),
31 | ],
32 |
33 | ];
34 |
--------------------------------------------------------------------------------
/resources/views/tags/index.blade.php:
--------------------------------------------------------------------------------
1 | @extends('layouts.app')
2 | @section('title','List '.ucfirst(config('settings.tags_label_plural')))
3 | @section('content')
4 |
16 |
17 |
18 |
19 | @include('flash::message')
20 |
21 |
22 |
23 |
24 | @include('tags.table')
25 |
26 |
27 |
28 |
29 |
30 |
31 | @endsection
32 |
33 |
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/vuejs/request/MyAPIRequest.stub:
--------------------------------------------------------------------------------
1 | false,
34 | 'errors' => $errors,
35 | ];
36 |
37 | if (!empty($data)) {
38 | $res['data'] = $data;
39 | }
40 |
41 | return $res;
42 | }
43 | }
44 |
--------------------------------------------------------------------------------
/database/migrations/2019_11_14_144921_create_documents_tags_table.php:
--------------------------------------------------------------------------------
1 | unsignedInteger('document_id');
18 | $table->unsignedInteger('tag_id');
19 | $table->foreign('document_id')->references('id')->on('documents')
20 | ->onUpdate('cascade')->onDelete('cascade');
21 | $table->foreign('tag_id')->references('id')->on('tags')
22 | ->onUpdate('cascade');
23 | $table->primary(['document_id','tag_id']);
24 | });
25 | }
26 |
27 | /**
28 | * Reverse the migrations.
29 | *
30 | * @return void
31 | */
32 | public function down()
33 | {
34 | Schema::dropIfExists('documents_tags');
35 | }
36 | }
37 |
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/vuejs/routes/api_routes_base.stub:
--------------------------------------------------------------------------------
1 | /*
2 | * ------------------- Route API CRUD for $MODEL_NAME$ ---------------
3 | */
4 | Route::group(['prefix' => '$MODEL_NAME_PLURAL_CAMEL$', 'namespace' => '$PATH_PREFIX$'], function () {
5 | Route::get('/', [
6 | 'as' => '$API_PREFIX$.$API_VERSION$.$VIEW_PREFIX$$MODEL_NAME_PLURAL_CAMEL$.index',
7 | 'uses' => '$MODEL_NAME$APIController@index'
8 | ]);
9 | Route::get('show/{id?}', [
10 | 'as' => '$API_PREFIX$.$API_VERSION$.$VIEW_PREFIX$$MODEL_NAME_PLURAL_CAMEL$.show',
11 | 'uses' => '$MODEL_NAME$APIController@show'
12 | ]);
13 | Route::patch('update/{id?}', [
14 | 'as' => '$API_PREFIX$.$API_VERSION$.$VIEW_PREFIX$$MODEL_NAME_PLURAL_CAMEL$.update',
15 | 'uses' => '$MODEL_NAME$APIController@update'
16 | ]);
17 | Route::delete('delete/{id?}', [
18 | 'as' => '$API_PREFIX$.$API_VERSION$.$VIEW_PREFIX$$MODEL_NAME_PLURAL_CAMEL$.delete',
19 | 'uses' => '$MODEL_NAME$APIController@destroy'
20 | ]);
21 | Route::post('store', [
22 | 'as' => '$API_PREFIX$.$API_VERSION$.$VIEW_PREFIX$$MODEL_NAME_PLURAL_CAMEL$.store',
23 | 'uses' => '$MODEL_NAME$APIController@store'
24 | ]);
25 | });
--------------------------------------------------------------------------------
/config/tinker.php:
--------------------------------------------------------------------------------
1 | [
17 | // App\Console\Commands\ExampleCommand::class,
18 | ],
19 |
20 | /*
21 | |--------------------------------------------------------------------------
22 | | Alias Blacklist
23 | |--------------------------------------------------------------------------
24 | |
25 | | Typically, Tinker automatically aliases classes as you require them in
26 | | Tinker. However, you may wish to never alias certain classes, which
27 | | you may accomplish by listing the classes in the following array.
28 | |
29 | */
30 |
31 | 'dont_alias' => [
32 | 'App\Nova',
33 | ],
34 |
35 | ];
36 |
--------------------------------------------------------------------------------
/app/Http/Controllers/Auth/ConfirmPasswordController.php:
--------------------------------------------------------------------------------
1 | middleware('auth');
38 | }
39 | }
40 |
--------------------------------------------------------------------------------
/public/docs/user/interface/document-management.md:
--------------------------------------------------------------------------------
1 | # Documents Management
2 |
3 | Document is like physical file of your employee or just directory/folder for your personal
4 | space. Inside document you can store all files of them. The document's label can be change
5 | from [settings](advanced-settings/settings.md).
6 |
7 | ## All Documents
8 | 
9 |
10 | - **Search** - Search for document.
11 | - **Choose tag** - Filter by tags.
12 | - **Status** - Filter by document's status.
13 |
14 | ## New Document
15 | 
16 | Creating a document is not actual upload of files, is just like a creating a space
17 | (i.e. employee information) or creating folder/directory for your documents.
18 |
19 | - **Name** - The name of document (i.e. employee name or folder name).
20 | - **Tags** - Select the tag corresponding to the current document.
21 | - **Description** - Additional information or remark or notes.
22 |
23 | > **Note:** The additional or custom fields can be configured
24 | for the document from the [custom fields](advanced-settings/custom-fields.md) section.
25 |
--------------------------------------------------------------------------------
/config/view.php:
--------------------------------------------------------------------------------
1 | [
17 | resource_path('views'),
18 | ],
19 |
20 | /*
21 | |--------------------------------------------------------------------------
22 | | Compiled View Path
23 | |--------------------------------------------------------------------------
24 | |
25 | | This option determines where all the compiled Blade templates will be
26 | | stored for your application. Typically, this is within the storage
27 | | directory. However, as usual, you are free to change this value.
28 | |
29 | */
30 |
31 | 'compiled' => env(
32 | 'VIEW_COMPILED_PATH',
33 | realpath(storage_path('framework/views'))
34 | ),
35 |
36 | ];
37 |
--------------------------------------------------------------------------------
/resources/views/vendor/pagination/simple-bootstrap-4.blade.php:
--------------------------------------------------------------------------------
1 | @if ($paginator->hasPages())
2 |
27 | @endif
28 |
--------------------------------------------------------------------------------
/database/migrations/2014_10_12_000000_create_users_table.php:
--------------------------------------------------------------------------------
1 | bigIncrements('id');
18 | $table->string('name');
19 | $table->string('email')->unique()->nullable();
20 | $table->string('username')->unique();
21 | $table->string('address',500)->nullable();
22 | $table->text('description')->nullable();
23 | $table->timestamp('email_verified_at')->nullable();
24 | $table->string('password');
25 | $table->string('status');
26 | $table->rememberToken();
27 | $table->timestamps();
28 | });
29 | }
30 |
31 | /**
32 | * Reverse the migrations.
33 | *
34 | * @return void
35 | */
36 | public function down()
37 | {
38 | Schema::dropIfExists('users');
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "private": true,
3 | "scripts": {
4 | "dev": "npm run development",
5 | "development": "cross-env NODE_ENV=development node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js",
6 | "watch": "npm run development -- --watch",
7 | "watch-poll": "npm run watch -- --watch-poll",
8 | "hot": "cross-env NODE_ENV=development node_modules/webpack-dev-server/bin/webpack-dev-server.js --inline --hot --config=node_modules/laravel-mix/setup/webpack.config.js",
9 | "prod": "npm run production",
10 | "production": "cross-env NODE_ENV=production node_modules/webpack/bin/webpack.js --no-progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js"
11 | },
12 | "devDependencies": {
13 | "bootstrap": "^4.0.0",
14 | "bootstrap-tagsinput": "^0.7.1",
15 | "cross-env": "^5.1",
16 | "jquery": "^3.2",
17 | "laravel-mix": "^4.0.7",
18 | "popper.js": "^1.12",
19 | "resolve-url-loader": "^2.3.1",
20 | "sass": "^1.15.2",
21 | "sass-loader": "^7.1.0",
22 | "vue-template-compiler": "^2.6.10"
23 | },
24 | "dependencies": {}
25 | }
26 |
--------------------------------------------------------------------------------
/app/Http/Controllers/Auth/LoginController.php:
--------------------------------------------------------------------------------
1 | middleware('guest')->except('logout');
38 | }
39 |
40 | public function username()
41 | {
42 | return 'username';
43 | }
44 |
45 |
46 | }
47 |
--------------------------------------------------------------------------------
/database/migrations/2019_11_13_150331_create_documents_table.php:
--------------------------------------------------------------------------------
1 | increments('id');
18 | $table->string('name');
19 | $table->text('description')->nullable();
20 | $table->string('status');
21 | $table->unsignedBigInteger('created_by');
22 | $table->text('custom_fields')->nullable();
23 | $table->unsignedBigInteger('verified_by')->nullable();
24 | $table->dateTime('verified_at')->nullable();
25 | $table->timestamps();
26 | $table->foreign('created_by')->references('id')->on('users');
27 | $table->foreign('verified_by')->references('id')->on('users');
28 | });
29 | }
30 |
31 | /**
32 | * Reverse the migrations.
33 | *
34 | * @return void
35 | */
36 | public function down()
37 | {
38 | Schema::drop('documents');
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/app/Http/Controllers/Auth/VerificationController.php:
--------------------------------------------------------------------------------
1 | middleware('auth');
38 | $this->middleware('signed')->only('verify');
39 | $this->middleware('throttle:6,1')->only('verify', 'resend');
40 | }
41 | }
42 |
--------------------------------------------------------------------------------
/resources/views/tags/show_fields.blade.php:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
8 |
9 |
13 |
14 |
15 |
16 | @foreach ($tag->custom_fields??[] as $custom_field_name=>$custom_field_value)
17 |
21 | @endforeach
22 |
23 |
24 |
28 |
29 |
30 |
34 |
35 |
36 |
37 |
41 |
42 |
43 |
--------------------------------------------------------------------------------
/phpunit.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
9 | ./tests/Unit
10 |
11 |
12 | ./tests/Feature
13 |
14 |
15 |
16 |
17 | ./app
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
--------------------------------------------------------------------------------
/public/web.config:
--------------------------------------------------------------------------------
1 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
--------------------------------------------------------------------------------
/app/Exceptions/Handler.php:
--------------------------------------------------------------------------------
1 | increments('id');
18 | $table->string('name');
19 | $table->string('file', 500);
20 | $table->integer('document_id')->unsigned();
21 | $table->integer('file_type_id')->unsigned();
22 | $table->unsignedBigInteger('created_by');
23 | $table->text('custom_fields')->nullable();
24 | $table->timestamps();
25 | $table->foreign('document_id')->references('id')->on('documents')
26 | ->onDelete('cascade');
27 | $table->foreign('file_type_id')->references('id')->on('file_types');
28 | $table->foreign('created_by')->references('id')->on('users');
29 | });
30 | }
31 |
32 | /**
33 | * Reverse the migrations.
34 | *
35 | * @return void
36 | */
37 | public function down()
38 | {
39 | Schema::drop('files');
40 | }
41 | }
42 |
--------------------------------------------------------------------------------
/resources/views/file_types/show_fields.blade.php:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
8 |
9 |
13 |
14 |
15 |
16 |
20 |
21 |
22 |
23 |
27 |
28 |
29 |
30 |
34 |
35 |
36 |
37 |
41 |
42 |
43 |
44 |
48 |
49 |
50 |
--------------------------------------------------------------------------------
/database/seeders/PermissionsTableSeeder.php:
--------------------------------------------------------------------------------
1 | 'create users']);
18 | Permission::create(['name'=>'read users']);
19 | Permission::create(['name'=>'update users']);
20 | Permission::create(['name'=>'delete users']);
21 | Permission::create(['name'=>'user manage permission']);
22 |
23 | Permission::create(['name'=>'create tags']);
24 | Permission::create(['name'=>'read tags']);
25 | Permission::create(['name'=>'update tags']);
26 | Permission::create(['name'=>'delete tags']);
27 |
28 | Permission::create(['name'=>'create documents']);
29 | Permission::create(['name'=>'read documents']);
30 | Permission::create(['name'=>'update documents']);
31 | Permission::create(['name'=>'delete documents']);
32 | Permission::create(['name'=>'verify documents']);
33 | //Permission::create(['name'=>'create comments']);
34 | //Permission::create(['name'=>'read comments']);
35 | }
36 | }
37 |
--------------------------------------------------------------------------------
/database/seeders/SettingsTableSeeder.php:
--------------------------------------------------------------------------------
1 | 'system_title','value'=>'Digi Docu']);
16 | \App\Setting::create(['name'=>'system_logo','value'=>'logo.png']);
17 |
18 | \App\Setting::create(['name'=>'tags_label_singular','value'=>'tag']);
19 | \App\Setting::create(['name'=>'tags_label_plural','value'=>'tags']);
20 |
21 | \App\Setting::create(['name'=>'document_label_singular','value'=>'document']);
22 | \App\Setting::create(['name'=>'document_label_plural','value'=>'documents']);
23 |
24 | \App\Setting::create(['name'=>'file_label_singular','value'=>'file']);
25 | \App\Setting::create(['name'=>'file_label_plural','value'=>'files']);
26 |
27 | \App\Setting::create(['name'=>'default_file_validations','value'=>'mimes:jpeg,bmp,png,jpg']);
28 | \App\Setting::create(['name'=>'default_file_maxsize','value'=>'8']);
29 |
30 | \App\Setting::create(['name'=>'image_files_resize','value'=>'300,500,700']);
31 |
32 | \App\Setting::create(['name'=>'show_missing_files_errors','value'=>'true']);
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/scaffold/views/table.stub:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | $FIELD_HEADERS$
5 | | Action |
6 |
7 |
8 |
9 | @foreach($$MODEL_NAME_PLURAL_CAMEL$ as $$MODEL_NAME_CAMEL$)
10 |
11 | $FIELD_BODY$
12 |
13 | {!! Form::open(['route' => ['$ROUTE_NAMED_PREFIX$$MODEL_NAME_PLURAL_CAMEL$.destroy', $$MODEL_NAME_CAMEL$->$PRIMARY_KEY_NAME$], 'method' => 'delete']) !!}
14 |
15 |
16 |
17 | {!! Form::button(' ', ['type' => 'submit', 'class' => 'btn btn-danger btn-xs', 'onclick' => "return confirm('Are you sure?')"]) !!}
18 |
19 | {!! Form::close() !!}
20 | |
21 |
22 | @endforeach
23 |
24 |
--------------------------------------------------------------------------------
/resources/js/bootstrap.js:
--------------------------------------------------------------------------------
1 | window._ = require('lodash');
2 |
3 | /**
4 | * We'll load jQuery and the Bootstrap jQuery plugin which provides support
5 | * for JavaScript based Bootstrap features such as modals and tabs. This
6 | * code may be modified to fit the specific needs of your application.
7 | */
8 |
9 | try {
10 | window.Popper = require('popper.js').default;
11 | window.$ = window.jQuery = require('jquery');
12 |
13 | require('bootstrap');
14 | } catch (e) {}
15 |
16 | /**
17 | * We'll load the axios HTTP library which allows us to easily issue requests
18 | * to our Laravel back-end. This library automatically handles sending the
19 | * CSRF token as a header based on the value of the "XSRF" token cookie.
20 | */
21 |
22 | window.axios = require('axios');
23 |
24 | window.axios.defaults.headers.common['X-Requested-With'] = 'XMLHttpRequest';
25 |
26 | /**
27 | * Echo exposes an expressive API for subscribing to channels and listening
28 | * for events that are broadcast by Laravel. Echo and event broadcasting
29 | * allows your team to easily build robust real-time web applications.
30 | */
31 |
32 | // import Echo from 'laravel-echo';
33 |
34 | // window.Pusher = require('pusher-js');
35 |
36 | // window.Echo = new Echo({
37 | // broadcaster: 'pusher',
38 | // key: process.env.MIX_PUSHER_APP_KEY,
39 | // cluster: process.env.MIX_PUSHER_APP_CLUSTER,
40 | // encrypted: true
41 | // });
42 |
--------------------------------------------------------------------------------
/app/Http/Requests/CreateDocumentRequest.php:
--------------------------------------------------------------------------------
1 | customFieldRepository = $customFieldRepository;
22 | }
23 |
24 | /**
25 | * Determine if the user is authorized to make this request.
26 | *
27 | * @return bool
28 | */
29 | public function authorize()
30 | {
31 | return true;
32 | }
33 |
34 | /**
35 | * Get the validation rules that apply to the request.
36 | *
37 | * @return array
38 | */
39 | public function rules()
40 | {
41 | $rules = Document::$rules;
42 | $customFields = $this->customFieldRepository->getForModel('documents');
43 | foreach ($customFields as $customField) {
44 | $rules["custom_fields.$customField->name"] = $customField->validation ?? 'nullable';
45 | }
46 | return $rules;
47 | }
48 | }
49 |
--------------------------------------------------------------------------------
/app/Http/Requests/UpdateDocumentRequest.php:
--------------------------------------------------------------------------------
1 | customFieldRepository = $customFieldRepository;
22 | }
23 |
24 | /**
25 | * Determine if the user is authorized to make this request.
26 | *
27 | * @return bool
28 | */
29 | public function authorize()
30 | {
31 | return true;
32 | }
33 |
34 | /**
35 | * Get the validation rules that apply to the request.
36 | *
37 | * @return array
38 | */
39 | public function rules()
40 | {
41 | $rules = Document::$rules;
42 | $customFields = $this->customFieldRepository->getForModel('documents');
43 | foreach ($customFields as $customField) {
44 | $rules["custom_fields.$customField->name"] = $customField->validation ?? 'nullable';
45 | }
46 | return $rules;
47 | }
48 | }
49 |
--------------------------------------------------------------------------------
/app/Observers/FileObserver.php:
--------------------------------------------------------------------------------
1 | document;
18 | $doc->updated_at = now();
19 | $doc->save();
20 | }
21 |
22 | /**
23 | * Handle the file "updated" event.
24 | *
25 | * @param \App\File $file
26 | * @return void
27 | */
28 | public function updated(File $file)
29 | {
30 | //
31 | }
32 |
33 | /**
34 | * Handle the file "deleted" event.
35 | *
36 | * @param \App\File $file
37 | * @return void
38 | */
39 | public function deleted(File $file)
40 | {
41 | $doc = $file->document;
42 | $doc->updated_at = now();
43 | $doc->save();
44 | }
45 |
46 | /**
47 | * Handle the file "restored" event.
48 | *
49 | * @param \App\File $file
50 | * @return void
51 | */
52 | public function restored(File $file)
53 | {
54 | //
55 | }
56 |
57 | /**
58 | * Handle the file "force deleted" event.
59 | *
60 | * @param \App\File $file
61 | * @return void
62 | */
63 | public function forceDeleted(File $file)
64 | {
65 | //
66 | }
67 | }
68 |
--------------------------------------------------------------------------------
/resources/views/vendor/notifications/email.blade.php:
--------------------------------------------------------------------------------
1 | @component('mail::message')
2 | {{-- Greeting --}}
3 | @if (! empty($greeting))
4 | # {{ $greeting }}
5 | @else
6 | @if ($level === 'error')
7 | # @lang('Whoops!')
8 | @else
9 | # @lang('Hello!')
10 | @endif
11 | @endif
12 |
13 | {{-- Intro Lines --}}
14 | @foreach ($introLines as $line)
15 | {{ $line }}
16 |
17 | @endforeach
18 |
19 | {{-- Action Button --}}
20 | @isset($actionText)
21 |
31 | @component('mail::button', ['url' => $actionUrl, 'color' => $color])
32 | {{ $actionText }}
33 | @endcomponent
34 | @endisset
35 |
36 | {{-- Outro Lines --}}
37 | @foreach ($outroLines as $line)
38 | {{ $line }}
39 |
40 | @endforeach
41 |
42 | {{-- Salutation --}}
43 | @if (! empty($salutation))
44 | {{ $salutation }}
45 | @else
46 | @lang('Regards'),
47 | {{ config('app.name') }}
48 | @endif
49 |
50 | {{-- Subcopy --}}
51 | @isset($actionText)
52 | @slot('subcopy')
53 | @lang(
54 | "If you’re having trouble clicking the \":actionText\" button, copy and paste the URL below\n".
55 | 'into your web browser: [:actionURL](:actionURL)',
56 | [
57 | 'actionText' => $actionText,
58 | 'actionURL' => $actionUrl,
59 | ]
60 | )
61 | @endslot
62 | @endisset
63 | @endcomponent
64 |
--------------------------------------------------------------------------------
/resources/views/custom_fields/show_fields.blade.php:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
8 |
9 |
13 |
14 |
15 |
16 |
20 |
21 | {{--suggestions--}}
22 |
35 |
36 |
37 |
38 |
42 |
43 |
44 |
45 |
49 |
50 |
51 |
--------------------------------------------------------------------------------
/app/Repositories/TagRepository.php:
--------------------------------------------------------------------------------
1 | fieldSearchable;
34 | }
35 |
36 | /**
37 | * Configure the Model
38 | **/
39 | public function model()
40 | {
41 | return Tag::class;
42 | }
43 |
44 | public function deleteWithPermissions($tag)
45 | {
46 | $this->delete($tag->id);
47 | //delete tag permissions
48 | $permissions = [];
49 | foreach (config('constants.TAG_LEVEL_PERMISSIONS') as $perm_key => $perm) {
50 | $permissions[] = $perm_key . $tag->id;
51 | }
52 |
53 | /** @var User $user */
54 | $users=User::permission($permissions)->get();
55 | foreach ($users as $user){
56 | $user->revokePermissionTo($permissions);
57 | }
58 | Permission::whereIn('name', $permissions)->delete();
59 | }
60 | }
61 |
--------------------------------------------------------------------------------
/resources/model_schemas/Setting.json:
--------------------------------------------------------------------------------
1 | [
2 | {
3 | "name": "id",
4 | "dbType": "increments",
5 | "htmlType": null,
6 | "validations": "",
7 | "searchable": false,
8 | "fillable": false,
9 | "primary": true,
10 | "inForm": false,
11 | "inIndex": false,
12 | "inView": false
13 | },
14 | {
15 | "name": "name",
16 | "dbType": "string",
17 | "htmlType": "text",
18 | "validations": "required",
19 | "searchable": true,
20 | "fillable": true,
21 | "primary": false,
22 | "inForm": true,
23 | "inIndex": true,
24 | "inView": true
25 | },
26 | {
27 | "name": "value",
28 | "dbType": "string",
29 | "htmlType": "text",
30 | "validations": "required",
31 | "searchable": true,
32 | "fillable": true,
33 | "primary": false,
34 | "inForm": true,
35 | "inIndex": true,
36 | "inView": true
37 | },
38 | {
39 | "name": "created_at",
40 | "dbType": "timestamp",
41 | "htmlType": null,
42 | "validations": null,
43 | "searchable": false,
44 | "fillable": false,
45 | "primary": false,
46 | "inForm": false,
47 | "inIndex": false,
48 | "inView": true
49 | },
50 | {
51 | "name": "updated_at",
52 | "dbType": "timestamp",
53 | "htmlType": null,
54 | "validations": null,
55 | "searchable": false,
56 | "fillable": false,
57 | "primary": false,
58 | "inForm": false,
59 | "inIndex": false,
60 | "inView": true
61 | }
62 | ]
63 |
--------------------------------------------------------------------------------
/resources/views/custom_fields/show.blade.php:
--------------------------------------------------------------------------------
1 | @extends('layouts.app')
2 | @section('title','Show Custom Field')
3 | @section('content')
4 |
25 |
26 |
27 |
28 |
29 | @include('custom_fields.show_fields')
30 |
31 |
32 |
33 |
34 | @endsection
35 |
--------------------------------------------------------------------------------
/resources/views/vendor/datatables/print.blade.php:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Print Table
5 |
6 |
7 |
8 |
9 |
10 |
11 |
14 |
15 |
16 |
17 | @foreach($data as $row)
18 | @if ($row == reset($data))
19 |
20 | @foreach($row as $key => $value)
21 | | {!! $key !!} |
22 | @endforeach
23 |
24 | @endif
25 |
26 | @foreach($row as $key => $value)
27 | @if(is_string($value) || is_numeric($value))
28 | | {!! $value !!} |
29 | @else
30 | |
31 | @endif
32 | @endforeach
33 |
34 | @endforeach
35 |
36 |
37 |
38 |
--------------------------------------------------------------------------------
/config/flare.php:
--------------------------------------------------------------------------------
1 | env('FLARE_KEY'),
17 |
18 | /*
19 | |--------------------------------------------------------------------------
20 | | Reporting Options
21 | |--------------------------------------------------------------------------
22 | |
23 | | These options determine which information will be transmitted to Flare.
24 | |
25 | */
26 |
27 | 'reporting' => [
28 | 'anonymize_ips' => true,
29 | 'collect_git_information' => true,
30 | 'report_queries' => true,
31 | 'maximum_number_of_collected_queries' => 200,
32 | 'report_query_bindings' => true,
33 | 'report_view_data' => true,
34 | ],
35 |
36 | /*
37 | |--------------------------------------------------------------------------
38 | | Reporting Log statements
39 | |--------------------------------------------------------------------------
40 | |
41 | | If this setting is `false` log statements won't be send as events to Flare,
42 | | no matter which error level you specified in the Flare log channel.
43 | |
44 | */
45 |
46 | 'send_logs_as_events' => true,
47 | ];
48 |
--------------------------------------------------------------------------------
/resources/infyom/infyom-generator-templates/scaffold/views/blade_table_body.stub:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | $FIELD_HEADERS$
6 | | Action |
7 |
8 |
9 |
10 | @foreach($$MODEL_NAME_PLURAL_CAMEL$ as $$MODEL_NAME_CAMEL$)
11 |
12 | $FIELD_BODY$
13 |
14 | {!! Form::open(['route' => ['$ROUTE_NAMED_PREFIX$$MODEL_NAME_PLURAL_CAMEL$.destroy', $$MODEL_NAME_CAMEL$->$PRIMARY_KEY_NAME$], 'method' => 'delete']) !!}
15 |
16 |
17 |
18 | {!! Form::button(' ', ['type' => 'submit', 'class' => 'btn btn-danger btn-xs', 'onclick' => "return confirm('Are you sure?')"]) !!}
19 |
20 | {!! Form::close() !!}
21 | |
22 |
23 | @endforeach
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/public/vendor/bootstrap-tagsinput/css/bootstrap-tagsinput.css:
--------------------------------------------------------------------------------
1 | .bootstrap-tagsinput {
2 | background-color: #fff;
3 | border: 1px solid #ccc;
4 | box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
5 | display: inline-block;
6 | padding: 4px 6px;
7 | color: #555;
8 | vertical-align: middle;
9 | border-radius: 4px;
10 | max-width: 100%;
11 | line-height: 22px;
12 | cursor: text;
13 | }
14 | .bootstrap-tagsinput input {
15 | border: none;
16 | box-shadow: none;
17 | outline: none;
18 | background-color: transparent;
19 | padding: 0 6px;
20 | margin: 0;
21 | width: auto;
22 | max-width: inherit;
23 | }
24 | .bootstrap-tagsinput.form-control input::-moz-placeholder {
25 | color: #777;
26 | opacity: 1;
27 | }
28 | .bootstrap-tagsinput.form-control input:-ms-input-placeholder {
29 | color: #777;
30 | }
31 | .bootstrap-tagsinput.form-control input::-webkit-input-placeholder {
32 | color: #777;
33 | }
34 | .bootstrap-tagsinput input:focus {
35 | border: none;
36 | box-shadow: none;
37 | }
38 | .bootstrap-tagsinput .tag {
39 | margin-right: 2px;
40 | color: white;
41 | }
42 | .bootstrap-tagsinput .tag [data-role="remove"] {
43 | margin-left: 8px;
44 | cursor: pointer;
45 | }
46 | .bootstrap-tagsinput .tag [data-role="remove"]:after {
47 | content: "x";
48 | padding: 0px 2px;
49 | }
50 | .bootstrap-tagsinput .tag [data-role="remove"]:hover {
51 | box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
52 | }
53 | .bootstrap-tagsinput .tag [data-role="remove"]:hover:active {
54 | box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
55 | }
56 |
--------------------------------------------------------------------------------
/app/Providers/RouteServiceProvider.php:
--------------------------------------------------------------------------------
1 | configureRateLimiting();
34 |
35 | $this->routes(function () {
36 | Route::middleware('api')
37 | ->prefix('api')
38 | ->group(base_path('routes/api.php'));
39 |
40 | Route::middleware('web')
41 | ->group(base_path('routes/web.php'));
42 | });
43 | }
44 |
45 | /**
46 | * Configure the rate limiters for the application.
47 | *
48 | * @return void
49 | */
50 | protected function configureRateLimiting()
51 | {
52 | RateLimiter::for('api', function (Request $request) {
53 | return Limit::perMinute(60)->by(optional($request->user())->id ?: $request->ip());
54 | });
55 | }
56 | }
57 |
--------------------------------------------------------------------------------
/resources/views/file_types/show.blade.php:
--------------------------------------------------------------------------------
1 | @extends('layouts.app')
2 | @section('title','Show '.ucfirst(config('settings.file_label_singular')).' Type')
3 | @section('content')
4 |
27 |
28 |
29 |
30 |
31 | @include('file_types.show_fields')
32 |
33 |
34 |
35 |
36 | @endsection
37 |
--------------------------------------------------------------------------------