Merge branch 'seeddms-5.1.x' into seeddms-6.0.x

This commit is contained in:
Uwe Steinmann 2025-12-10 06:47:04 +01:00
commit 226d2844da
11 changed files with 49 additions and 7 deletions

View File

@ -363,6 +363,7 @@
- droping an url in the drag&drop area will download the url
- add button to all password fields to make password visible
- fix formatting of date input fields
- do not remove custom attributes which were not set when editing attributes
--------------------------------------------------------------------------------
Changes in version 5.1.42

View File

@ -72,7 +72,8 @@
"symfony/console": "^7.2",
"twig/twig": "^3.0",
"league/commonmark": "^2.7",
"symfony/process": "^7.3"
"symfony/process": "^7.3",
"symfony/http-client": "^7.4"
},
"require-dev": {
"composer/composer": "dev-main"

View File

@ -75,7 +75,8 @@
"symfony/console": "^7.2",
"twig/twig": "^3.0",
"league/commonmark": "^2.7",
"symfony/process": "^7.3"
"symfony/process": "^7.3",
"symfony/http-client": "^7.4"
},
"require-dev": {
"composer/composer": "dev-main",

View File

@ -83,7 +83,6 @@ class SeedDMS_Controller_EditAttributes extends SeedDMS_Controller_Common {
if(!isset($oldattributes[$attrdefid]) || $attribute != $oldattributes[$attrdefid]->getValue()) {
if(!$version->setAttributeValue($dms->getAttributeDefinition($attrdefid), $attribute)) {
//UI::exitError(getMLText("document_title", array("documentname" => $document->getName())),getMLText("error_occured"));
return false;
}
}
@ -92,7 +91,6 @@ class SeedDMS_Controller_EditAttributes extends SeedDMS_Controller_Common {
return false;
} elseif(isset($oldattributes[$attrdefid])) {
if(!$version->removeAttribute($dms->getAttributeDefinition($attrdefid)))
// UI::exitError(getMLText("document_title", array("documentname" => $folder->getName())),getMLText("error_occured"));
return false;
}
} else {
@ -102,12 +100,14 @@ class SeedDMS_Controller_EditAttributes extends SeedDMS_Controller_Common {
}
}
}
/* Do not remove any old attributes if they have not be set by the form
foreach($oldattributes as $attrdefid=>$oldattribute) {
if(!isset($attributes[$attrdefid])) {
if(!$version->removeAttribute($dms->getAttributeDefinition($attrdefid)))
return false;
}
}
*/
} elseif($result === false) {
if(empty($this->errormsg))

View File

@ -174,12 +174,14 @@ class SeedDMS_Controller_EditDocument extends SeedDMS_Controller_Common {
}
}
}
/* Do not remove any old attributes if they have not be set by the form
foreach($oldattributes as $attrdefid=>$oldattribute) {
if(!isset($attributes[$attrdefid])) {
if(!$document->removeAttribute($dms->getAttributeDefinition($attrdefid)))
return false;
}
}
*/
$sequence = $this->params['sequence'];
if(strcasecmp($sequence, "keep")) {

View File

@ -30,6 +30,7 @@ require_once("../inc/inc.ClassController.php");
require_once("../inc/inc.Notification.php");
use Seeddms\Seeddms\Session;
use Seeddms\Seeddms\Utilities;
require_once("../inc/inc.ClassSession.php");
require_once("../inc/inc.ClassPasswordStrength.php");
@ -105,6 +106,12 @@ switch($command) {
}
break; /* }}} */
case 'randomstring': /* {{{ */
$len = $_REQUEST["len"] ?? 16;
header('Content-Type: application/json');
echo json_encode(array('success'=>true, 'string'=>Utilities::makeRandomString($len)));
break; /* }}} */
case 'sessioninfo': /* {{{ */
if($user) {
header('Content-Type: application/json');

View File

@ -1388,7 +1388,7 @@ background-image: linear-gradient(to bottom, #882222, #111111);;
break;
default:
if(!empty($value['addon']))
echo '<span class="input-append'.($value["type"]=='password' ? ' show-hide-password' : '').'">';
echo '<span class="input-append'.($value["type"]=='password' ? ' show-hide-password' : '').' '.substr(md5($value['addon']), 0, 6).'">';
echo '<input'.
(!empty($value['type']) ? ' type="'.$value['type'].'"' : '').
(!empty($value['id']) ? ' id="'.$value['id'].'"' : '').

View File

@ -785,7 +785,7 @@ if(($kkk = $this->callHook('getFullSearchEngine')) && is_array($kkk))
<?php $this->showConfigUser('settings_autoLoginUser', 'autoLoginUser', true); ?>
<?php $this->showConfigText('settings_quota', 'quota'); ?>
<?php $this->showConfigUser('settings_undelUserIds', 'undelUserIds', true, true); ?>
<?php $this->showConfigText('settings_encryptionKey', 'encryptionKey'); ?>
<?php $this->showConfigText('settings_encryptionKey', 'encryptionKey', 'password'); ?>
<?php $this->showConfigText('settings_cookieLifetime', 'cookieLifetime'); ?>
<?php $this->showConfigOption('settings_defaultAccessDocs', 'defaultAccessDocs', array(' 0'=>'inherited', ' '.M_NONE=>'access_mode_none', ' '.M_READ=>'access_mode_read', ' '.M_READWRITE=>'access_mode_readwrite'), false, true); ?>

View File

@ -385,6 +385,21 @@ $(document).ready( function() {
}
}); /* }}} */
$('body').on('click', 'div.8cf73c span', function(ev) { /* {{{ */
ev.preventDefault();
closest = $(this).closest('div.8cf73c');
$.get(seeddms_webroot+'op/op.Ajax.php',
{ command: 'randomstring', len: 16 },
function(data) {
if(data.success) {
input = closest.children(":first");
input.val(data.string);
}
},
'json'
);
}); /* }}} */
$('body').on('touchstart.dropdown', '.dropdown-menu', function (e) { e.stopPropagation(); });
initMost();

View File

@ -1299,7 +1299,7 @@ background-image: linear-gradient(to bottom, #882222, #111111);;
break;
default:
if(!empty($value['addon']))
echo '<div class="input-group date'.($value["type"]=='password' ? ' show-hide-password' : '').'">';
echo '<div class="input-group'.($value["type"]=='password' ? ' show-hide-password' : '').' '.substr(md5($value['addon']), 0, 6).'">';
echo '<input'.
(!empty($value['type']) ? ' type="'.$value['type'].'"' : '').
(!empty($value['id']) ? ' id="'.$value['id'].'"' : '').

View File

@ -419,6 +419,21 @@ $(document).ready( function() {
}
}); /* }}} */
$('body').on('click', 'div.8cf73c span', function(ev) { /* {{{ */
ev.preventDefault();
closest = $(this).closest('div.8cf73c');
$.get(seeddms_webroot+'op/op.Ajax.php',
{ command: 'randomstring', len: 16 },
function(data) {
if(data.success) {
input = closest.children(":first");
input.val(data.string);
}
},
'json'
);
}); /* }}} */
// $('body').on('touchstart.dropdown', '.dropdown-menu', function (e) { e.stopPropagation(); });
initMost();