mirror of
				https://git.code.sf.net/p/seeddms/code
				synced 2025-10-31 13:18:06 +00:00 
			
		
		
		
	Merge branch 'seeddms-5.1.x' into seeddms-6.0.x
This commit is contained in:
		
						commit
						ee656527c2
					
				|  | @ -177,7 +177,7 @@ | |||
| - open the right page or tab after a document version has been removed | ||||
|   (go to folder page if the whole document was removed, go to previous tab | ||||
|   if an old version was removed and there are other older version, otherwise | ||||
|   to to current tab) | ||||
|   go to current tab) | ||||
| - expiration of document can be set through webdav | ||||
| - prefix each attribute with 'attr_' when read through webdav | ||||
| - actually set owner as notified user, not the logged in user, | ||||
|  |  | |||
							
								
								
									
										179
									
								
								Gruntfile.js
									
									
									
									
									
								
							
							
						
						
									
										179
									
								
								Gruntfile.js
									
									
									
									
									
								
							|  | @ -1,205 +1,191 @@ | |||
| module.exports = function (grunt) { | ||||
|     'use strict'; | ||||
| 
 | ||||
|     var vendorDir = 'views/bootstrap/vendors', | ||||
|     var bootstrapDir = 'views/bootstrap/vendors', | ||||
|         tdkDir = 'views/tdk/vendors', | ||||
|         nodeDir = 'node_modules'; | ||||
| 
 | ||||
|     grunt.initConfig({ | ||||
|         clean: { | ||||
|             vendors: [ vendorDir ] | ||||
|             vendors: [ bootstrapDir ] | ||||
|         }, | ||||
|         copy: { | ||||
| 					'jquery': { | ||||
| 					'bootstrap': { | ||||
| 						files: [{ | ||||
| 								expand: true, | ||||
| 								src: [ | ||||
| 										nodeDir + '/jquery/dist/*' | ||||
| 								], | ||||
| 								dest: vendorDir + '/jquery', | ||||
| 								dest: bootstrapDir + '/jquery', | ||||
| 								flatten: true | ||||
| 						}] | ||||
| 					}, | ||||
| 					'chartjs': { | ||||
| 						files: [{ | ||||
| 						}, { | ||||
| 								expand: true, | ||||
| 								src: [ | ||||
| 										nodeDir + '/chartjs/chart.js', | ||||
| 										nodeDir + '/chartjs/README.md', | ||||
| 										nodeDir + '/chartjs/LICENSE' | ||||
| 								], | ||||
| 								dest: vendorDir + '/chartjs', | ||||
| 								dest: bootstrapDir + '/chartjs', | ||||
| 								flatten: true | ||||
| 						}] | ||||
| 					}, | ||||
| 					'cytoscape': { | ||||
| 						files: [{ | ||||
| 						},{ | ||||
| 								expand: true, | ||||
| 								src: [ | ||||
| 										nodeDir + '/cytoscape/dist/*', | ||||
| 										nodeDir + '/cytoscape-grid-guide/cytoscape-grid-guide.js' | ||||
| 								], | ||||
| 								dest: vendorDir + '/cytoscape', | ||||
| 								dest: bootstrapDir + '/cytoscape', | ||||
| 								flatten: true | ||||
| 						}] | ||||
| 					}, | ||||
| 					'jqtree': { | ||||
| 						files: [{ | ||||
| 						},{ | ||||
| 								expand: true, | ||||
| 								src: [ | ||||
| 										nodeDir + '/jqtree/tree.jquery.js', | ||||
| 										nodeDir + '/jqtree/jqtree.css' | ||||
| 								], | ||||
| 								dest: vendorDir + '/jqtree', | ||||
| 								dest: bootstrapDir + '/jqtree', | ||||
| 								flatten: true | ||||
| 						}] | ||||
| 					}, | ||||
| 					'noty': { | ||||
| 						files: [{ | ||||
| 						},{ | ||||
| 								expand: true, | ||||
| 								src: [ | ||||
| 										nodeDir + '/noty/js/noty/jquery.noty.js' | ||||
| 								], | ||||
| 								dest: vendorDir + '/noty', | ||||
| 								dest: bootstrapDir + '/noty', | ||||
| 								flatten: true | ||||
| 						},{ | ||||
| 								expand: true, | ||||
| 								src: [ | ||||
| 										nodeDir + '/noty/js/noty/themes/*' | ||||
| 								], | ||||
| 								dest: vendorDir + '/noty/themes', | ||||
| 								dest: bootstrapDir + '/noty/themes', | ||||
| 								flatten: true | ||||
| 						},{ | ||||
| 								expand: true, | ||||
| 								src: [ | ||||
| 										nodeDir + '/noty/js/noty/layouts/*' | ||||
| 								], | ||||
| 								dest: vendorDir + '/noty/layouts', | ||||
| 								dest: bootstrapDir + '/noty/layouts', | ||||
| 								flatten: true | ||||
| 						}] | ||||
| 					}, | ||||
| 					'select2': { | ||||
| 						files: [{ | ||||
| 						},{ | ||||
| 								expand: true, | ||||
| 								src: [ | ||||
| 										nodeDir + '/select2/dist/js/*' | ||||
| 								], | ||||
| 								dest: vendorDir + '/select2/js', | ||||
| 								dest: bootstrapDir + '/select2/js', | ||||
| 								flatten: true | ||||
| 						},{ | ||||
| 								expand: true, | ||||
| 								src: [ | ||||
| 										nodeDir + '/select2/dist/css/*' | ||||
| 								], | ||||
| 								dest: vendorDir + '/select2/css', | ||||
| 								dest: bootstrapDir + '/select2/css', | ||||
| 								flatten: true | ||||
| 						}] | ||||
| 					}, | ||||
| 					'fine-uploader': { | ||||
| 						files: [{ | ||||
| 						},{ | ||||
| 								expand: true, | ||||
| 								src: [ | ||||
| 										nodeDir + '/fine-uploader/jquery.fine-uploader/*' | ||||
| 								], | ||||
| 								dest: vendorDir + '/fine-uploader', | ||||
| 								dest: bootstrapDir + '/fine-uploader', | ||||
| 								flatten: true | ||||
| 						}] | ||||
| 					}, | ||||
| 					'jquery-validation': { | ||||
| 						files: [{ | ||||
| 						},{ | ||||
| 								expand: true, | ||||
| 								src: [ | ||||
| 										nodeDir + '/jquery-validation/dist/*' | ||||
| 								], | ||||
| 								dest: vendorDir + '/jquery-validation', | ||||
| 								dest: bootstrapDir + '/jquery-validation', | ||||
| 								flatten: true | ||||
| 						}] | ||||
| 					}, | ||||
| 					'flot': { | ||||
| 						files: [{ | ||||
| 						},{ | ||||
| 								expand: true, | ||||
| 								src: [ | ||||
| 										nodeDir + '/flot/source/jquery.canvaswrapper.js', | ||||
| 										nodeDir + '/flot/source/jquery.colorhelpers.js', | ||||
| 										nodeDir + '/flot/source/jquery.flot.*' | ||||
| 								], | ||||
| 								dest: vendorDir + '/flot', | ||||
| 								dest: bootstrapDir + '/flot', | ||||
| 								flatten: true | ||||
| 						}] | ||||
| 					}, | ||||
| 					'font-awesome': { | ||||
| 						files: [{ | ||||
| 						},{ | ||||
| 								expand: true, | ||||
| 								src: [ | ||||
| 										nodeDir + '/font-awesome/fonts/*' | ||||
| 								], | ||||
| 								dest: vendorDir + '/font-awesome/fonts', | ||||
| 								dest: bootstrapDir + '/font-awesome/fonts', | ||||
| 								flatten: true | ||||
| 						},{ | ||||
| 								expand: true, | ||||
| 								src: [ | ||||
| 										nodeDir + '/font-awesome/css/*' | ||||
| 								], | ||||
| 								dest: vendorDir + '/font-awesome/css', | ||||
| 								dest: bootstrapDir + '/font-awesome/css', | ||||
| 								flatten: true | ||||
| 						}] | ||||
| 					}, | ||||
| 					'fullcalendar': { | ||||
| 						files: [{ | ||||
| 						},{ | ||||
| 								expand: true, | ||||
| 								src: [ | ||||
| 										nodeDir + '/fullcalendar/LICENSE.txt', | ||||
| 										nodeDir + '/fullcalendar/dist/*' | ||||
| 								], | ||||
| 								dest: vendorDir + '/fullcalendar', | ||||
| 								dest: bootstrapDir + '/fullcalendar', | ||||
| 								flatten: true | ||||
| 						},{ | ||||
| 								expand: true, | ||||
| 								src: [ | ||||
| 										nodeDir + '/fullcalendar/dist/locale/*' | ||||
| 								], | ||||
| 								dest: vendorDir + '/fullcalendar/locale', | ||||
| 								dest: bootstrapDir + '/fullcalendar/locale', | ||||
| 								flatten: true | ||||
| 						}] | ||||
| 					}, | ||||
| 					'moment': { | ||||
| 						files: [{ | ||||
| 						},{ | ||||
| 								expand: true, | ||||
| 								src: [ | ||||
| 										nodeDir + '/moment/LICENSE.txt', | ||||
| 										nodeDir + '/moment/min/*' | ||||
| 								], | ||||
| 								dest: vendorDir + '/moment', | ||||
| 								dest: bootstrapDir + '/moment', | ||||
| 								flatten: true | ||||
| 						},{ | ||||
| 								expand: true, | ||||
| 								src: [ | ||||
| 										nodeDir + '/moment/dist/locale/*' | ||||
| 								], | ||||
| 								dest: vendorDir + '/moment/locale', | ||||
| 								dest: bootstrapDir + '/moment/locale', | ||||
| 								flatten: true | ||||
| 						}] | ||||
| 					}, | ||||
| 					'bootstrap-datepicker': { | ||||
| 						files: [{ | ||||
| 						},{ | ||||
| 								expand: true, | ||||
| 								src: [ | ||||
| 										nodeDir + '/perfect-scrollbar/dist/*' | ||||
| 								], | ||||
| 								dest: bootstrapDir + '/perfect-scrollbar', | ||||
| 								flatten: true | ||||
| 						},{ | ||||
| 								expand: true, | ||||
| 								src: [ | ||||
| 										nodeDir + '/bootstrap-datepicker/dist/js/*' | ||||
| 								], | ||||
| 								dest: vendorDir + '/bootstrap-datepicker/js', | ||||
| 								dest: bootstrapDir + '/bootstrap-datepicker/js', | ||||
| 								flatten: true | ||||
| 						},{ | ||||
| 								expand: true, | ||||
| 								src: [ | ||||
| 										nodeDir + '/bootstrap-datepicker/dist/css/*' | ||||
| 								], | ||||
| 								dest: vendorDir + '/bootstrap-datepicker/css', | ||||
| 								dest: bootstrapDir + '/bootstrap-datepicker/css', | ||||
| 								flatten: true | ||||
| 						},{ | ||||
| 								expand: true, | ||||
| 								src: [ | ||||
| 										nodeDir + '/bootstrap-datepicker/dist/locales/*' | ||||
| 								], | ||||
| 								dest: vendorDir + '/bootstrap-datepicker/locales', | ||||
| 								dest: bootstrapDir + '/bootstrap-datepicker/locales', | ||||
| 								flatten: true | ||||
| 						},{ | ||||
| 								expand: true, | ||||
| 								src: [ | ||||
| 										nodeDir + '/@coreui/coreui/dist/js/*' | ||||
| 								], | ||||
| 								dest: bootstrapDir + '/coreui/js', | ||||
| 								flatten: true | ||||
| 						},{ | ||||
| 								expand: true, | ||||
| 								src: [ | ||||
| 										nodeDir + '/@coreui/coreui/dist/css/*' | ||||
| 								], | ||||
| 								dest: bootstrapDir + '/coreui/css', | ||||
| 								flatten: true | ||||
| 						}] | ||||
| 					}, | ||||
|  | @ -209,29 +195,64 @@ module.exports = function (grunt) { | |||
| 								src: [ | ||||
| 										nodeDir + '/@coreui/coreui/dist/js/*' | ||||
| 								], | ||||
| 								dest: vendorDir + '/coreui/js', | ||||
| 								dest: tdkDir + '/coreui/js', | ||||
| 								flatten: true | ||||
| 						},{ | ||||
| 								expand: true, | ||||
| 								src: [ | ||||
| 										nodeDir + '/@coreui/coreui/dist/css/*' | ||||
| 								], | ||||
| 								dest: vendorDir + '/coreui/css', | ||||
| 								dest: tdkDir + '/coreui/css', | ||||
| 								flatten: true | ||||
| 						},{ | ||||
| 								expand: true, | ||||
| 								src: [ | ||||
| 										nodeDir + '/perfect-scrollbar/dist/*' | ||||
| 								], | ||||
| 								dest: tdkDir + '/perfect-scrollbar', | ||||
| 								flatten: true | ||||
| 						},{ | ||||
| 								expand: true, | ||||
| 								src: [ | ||||
| 										nodeDir + '/bootstrap/dist/js/*' | ||||
| 								], | ||||
| 								dest: tdkDir + '/bootstrap/js', | ||||
| 								flatten: true | ||||
| 						},{ | ||||
| 								expand: true, | ||||
| 								src: [ | ||||
| 										nodeDir + '/bootstrap/dist/css/*' | ||||
| 								], | ||||
| 								dest: tdkDir + '/bootstrap/css', | ||||
| 								flatten: true | ||||
| 						},{ | ||||
| 								expand: true, | ||||
| 								src: [ | ||||
| 										nodeDir + '/font-awesome/fonts/*' | ||||
| 								], | ||||
| 								dest: tdkDir + '/font-awesome/fonts', | ||||
| 								flatten: true | ||||
| 						},{ | ||||
| 								expand: true, | ||||
| 								src: [ | ||||
| 										nodeDir + '/font-awesome/css/*' | ||||
| 								], | ||||
| 								dest: tdkDir + '/font-awesome/css', | ||||
| 								flatten: true | ||||
| 						}] | ||||
| 					} | ||||
| 					}, | ||||
| 				} | ||||
|     }); | ||||
| 
 | ||||
|     grunt.registerTask('createVendorDir', 'Creates the necessary vendor directory', function() { | ||||
|         // Create the vendorDir when it doesn't exists.
 | ||||
|         if (!grunt.file.isDir(vendorDir)) { | ||||
|             grunt.file.mkdir(vendorDir); | ||||
|         // Create the bootstrapDir when it doesn't exists.
 | ||||
|         if (!grunt.file.isDir(bootstrapDir)) { | ||||
|             grunt.file.mkdir(bootstrapDir); | ||||
| 
 | ||||
|             // Output a success message
 | ||||
|             grunt.log.oklns(grunt.template.process( | ||||
|                 'Directory "<%= directory %>" was created successfully.', | ||||
|                 { data: { directory: vendorDir } } | ||||
|                 { data: { directory: bootstrapDir } } | ||||
|             )); | ||||
|         } | ||||
|     }); | ||||
|  |  | |||
|  | @ -94,7 +94,7 @@ if (isset($_COOKIE["mydms_session"])) { | |||
|  */ | ||||
| header("Cache-Control: no-cache,no-store"); | ||||
| 
 | ||||
| $command = $_REQUEST["command"]; | ||||
| $command = isset($_REQUEST["command"]) ? $_REQUEST["command"] : ''; | ||||
| switch($command) { | ||||
| 	case 'checkpwstrength': /* {{{ */ | ||||
| 		$ps = new Password_Strength(); | ||||
|  |  | |||
|  | @ -36,7 +36,7 @@ if (!$settings->_backupDir) { | |||
| } | ||||
| 
 | ||||
| $v = new SeedDMS_Version; | ||||
| $dump_name = addDirSep($settings->_backupDir).date('Y-m-d\TH-i-s')."_".$v->_number.".sql"; | ||||
| $dump_name = addDirSep($settings->_backupDir).date('Y-m-d\TH-i-s')."_".$v->version().".sql"; | ||||
| if(!$dms->createDump($dump_name)) | ||||
| 	UI::exitError(getMLText("admin_tools"),getMLText("error_occured")); | ||||
| 
 | ||||
|  |  | |||
|  | @ -10,6 +10,8 @@ | |||
|   "license": "ISC", | ||||
|   "dependencies": { | ||||
|     "@coreui/coreui": "^3.2.2", | ||||
|     "@popperjs/core": "^2.4.4", | ||||
|     "bootstrap": "^4.5.2", | ||||
|     "bootstrap-datepicker": "^1.9.0", | ||||
|     "chartjs": "^0.3.24", | ||||
|     "cytoscape": "^3.15.2", | ||||
|  | @ -26,6 +28,7 @@ | |||
|     "jquery-validation": "^1.19.2", | ||||
|     "moment": "^2.17.1", | ||||
|     "noty": "^2.4.1", | ||||
|     "perfect-scrollbar": "^1.5.0", | ||||
|     "select2": "^4.0.13" | ||||
|   } | ||||
| } | ||||
|  |  | |||
|  | @ -411,7 +411,10 @@ console.log(element); | |||
| 						} | ||||
| 					} | ||||
| 					if($tmp) { | ||||
| 						$fieldwrap[1] .= '<div class="mandatories"><span>'.getMLText('mandatory_reviewers').':</span> '.implode(', ', $tmp)."</div>\n"; | ||||
| 						if(isset($fieldwrap[1])) | ||||
| 							$fieldwrap[1] .= '<div class="mandatories"><span>'.getMLText('mandatory_reviewers').':</span> '.implode(', ', $tmp)."</div>\n"; | ||||
| 						else | ||||
| 							$fieldwrap[1] = '<div class="mandatories"><span>'.getMLText('mandatory_reviewers').':</span> '.implode(', ', $tmp)."</div>\n"; | ||||
| 					} | ||||
| 				} | ||||
| 
 | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue
	
	Block a user
	 Uwe Steinmann
						Uwe Steinmann