/** * Manage updates sent from the AdminConfig@index form. */ protected function update() { if (Auth::isAdmin()) { $this->module->setSetting('MAJ_SHOW_CERT', Filter::post('MAJ_SHOW_CERT')); $this->module->setSetting('MAJ_SHOW_NO_WATERMARK', Filter::post('MAJ_SHOW_NO_WATERMARK')); if ($MAJ_WM_DEFAULT = Filter::post('MAJ_WM_DEFAULT')) { $this->module->setSetting('MAJ_WM_DEFAULT', $MAJ_WM_DEFAULT); } if ($MAJ_WM_FONT_MAXSIZE = Filter::postInteger('MAJ_WM_FONT_MAXSIZE')) { $this->module->setSetting('MAJ_WM_FONT_MAXSIZE', $MAJ_WM_FONT_MAXSIZE); } // Only accept valid color for MAJ_WM_FONT_COLOR $MAJ_WM_FONT_COLOR = Filter::post('MAJ_WM_FONT_COLOR', '#([a-fA-F0-9]{3}){1,2}'); if ($MAJ_WM_FONT_COLOR) { $this->module->setSetting('MAJ_WM_FONT_COLOR', $MAJ_WM_FONT_COLOR); } // Only accept valid folders for MAJ_CERT_ROOTDIR $MAJ_CERT_ROOTDIR = preg_replace('/[\\/\\\\]+/', '/', Filter::post('MAJ_CERT_ROOTDIR') . '/'); if (substr($MAJ_CERT_ROOTDIR, 0, 1) === '/') { $MAJ_CERT_ROOTDIR = substr($MAJ_CERT_ROOTDIR, 1); } if ($MAJ_CERT_ROOTDIR) { if (is_dir(WT_DATA_DIR . $MAJ_CERT_ROOTDIR)) { $this->module->setSetting('MAJ_CERT_ROOTDIR', $MAJ_CERT_ROOTDIR); } elseif (File::mkdir(WT_DATA_DIR . $MAJ_CERT_ROOTDIR)) { $this->module->setSetting('MAJ_CERT_ROOTDIR', $MAJ_CERT_ROOTDIR); FlashMessages::addMessage(I18N::translate('The folder %s has been created.', Html::filename(WT_DATA_DIR . $MAJ_CERT_ROOTDIR)), 'info'); } else { FlashMessages::addMessage(I18N::translate('The folder %s does not exist, and it could not be created.', Html::filename(WT_DATA_DIR . $MAJ_CERT_ROOTDIR)), 'danger'); } } FlashMessages::addMessage(I18N::translate('The preferences for the module “%s” have been updated.', $this->module->getTitle()), 'success'); return; } }
$messages = true; } } if ($oldServerThumb != $newServerThumb) { $move_file = true; if (!file_exists($newServerThumb) || md5_file($oldServerFile) == md5_file($newServerThumb)) { try { rename($oldServerThumb, $newServerThumb); FlashMessages::addMessage(I18N::translate('The thumbnail file %1$s has been renamed to %2$s.', Html::filename($oldFilename), Html::filename($newFilename))); } catch (\ErrorException $ex) { FlashMessages::addMessage(I18N::translate('The thumbnail file %1$s could not be renamed to %2$s.', Html::filename($oldFilename), Html::filename($newFilename))); } $messages = true; } if (!file_exists($newServerThumb)) { FlashMessages::addMessage(I18N::translate('The thumbnail file %s does not exist.', Html::filename($newFilename))); $messages = true; } } } // Insert the 1 FILE xxx record into the arrays used by function FunctionsEdit::handle_updatesges() $glevels = array_merge(array('1'), $glevels); $tag = array_merge(array('FILE'), $tag); $islink = array_merge(array(0), $islink); $text = array_merge(array($newFilename), $text); $record = GedcomRecord::getInstance($pid, $WT_TREE); $newrec = "0 @{$pid}@ OBJE\n"; $newrec = FunctionsEdit::handleUpdates($newrec); $record->updateRecord($newrec, $update_CHAN); if ($move_file) { // We've moved a file. Therefore we must approve the change, as rejecting
$WT_TREE->setPreference('WEBMASTER_USER_ID', Filter::post('WEBMASTER_USER_ID')); $WT_TREE->setPreference('WEBTREES_EMAIL', Filter::post('WEBTREES_EMAIL')); $WT_TREE->setPreference('title', Filter::post('title')); // Only accept valid folders for MEDIA_DIRECTORY $MEDIA_DIRECTORY = preg_replace('/[\\/\\\\]+/', '/', Filter::post('MEDIA_DIRECTORY') . '/'); if (substr($MEDIA_DIRECTORY, 0, 1) === '/') { $MEDIA_DIRECTORY = substr($MEDIA_DIRECTORY, 1); } if ($MEDIA_DIRECTORY) { if (is_dir(WT_DATA_DIR . $MEDIA_DIRECTORY)) { $WT_TREE->setPreference('MEDIA_DIRECTORY', $MEDIA_DIRECTORY); } elseif (File::mkdir(WT_DATA_DIR . $MEDIA_DIRECTORY)) { $WT_TREE->setPreference('MEDIA_DIRECTORY', $MEDIA_DIRECTORY); FlashMessages::addMessage(I18N::translate('The folder %s has been created.', Html::filename(WT_DATA_DIR . $MEDIA_DIRECTORY)), 'info'); } else { FlashMessages::addMessage(I18N::translate('The folder %s does not exist, and it could not be created.', Html::filename(WT_DATA_DIR . $MEDIA_DIRECTORY)), 'danger'); } } $gedcom = Filter::post('gedcom'); if ($gedcom && $gedcom !== $WT_TREE->getName()) { try { Database::prepare("UPDATE `##gedcom` SET gedcom_name = ? WHERE gedcom_id = ?")->execute(array($gedcom, $WT_TREE->getTreeId())); Database::prepare("UPDATE `##site_setting` SET setting_value = ? WHERE setting_name='DEFAULT_GEDCOM' AND setting_value = ?")->execute(array($gedcom, $WT_TREE->getName())); } catch (\Exception $ex) { // Probably a duplicate name. } } FlashMessages::addMessage(I18N::translate('The preferences for the family tree “%s” have been updated.', $WT_TREE->getTitleHtml()), 'success'); header('Location: ' . WT_BASE_URL . 'admin_trees_manage.php'); return; }
if (in_array($delete_file, $disk_files)) { $tmp = WT_DATA_DIR . $media_folder . $delete_file; try { unlink($tmp); FlashMessages::addMessage(I18N::translate('The file %s has been deleted.', Html::filename($tmp)), 'success'); } catch (\ErrorException $ex) { FlashMessages::addMessage(I18N::translate('The file %s could not be deleted.', Html::filename($tmp)) . '<hr><samp dir="ltr">' . $ex->getMessage() . '</samp>', 'danger'); } // Delete any corresponding thumbnail $tmp = WT_DATA_DIR . $media_folder . 'thumbs/' . $delete_file; if (file_exists($tmp)) { try { unlink($tmp); FlashMessages::addMessage(I18N::translate('The file %s has been deleted.', Html::filename($tmp)), 'success'); } catch (\ErrorException $ex) { FlashMessages::addMessage(I18N::translate('The file %s could not be deleted.', Html::filename($tmp)) . '<hr><samp dir="ltr">' . $ex->getMessage() . '</samp>', 'danger'); } } } else { // File no longer exists? Maybe it was already deleted or renamed. } $controller->pageHeader(); return; } //////////////////////////////////////////////////////////////////////////////// // GET callback for server-side pagination //////////////////////////////////////////////////////////////////////////////// switch ($action) { case 'load_json': $search = Filter::get('search'); $search = $search['value'];
} else { echo '<br>', I18N::translate('The file %s could not be deleted.', Html::filename($lock_file)), $icon_failure; } echo '</li>'; //////////////////////////////////////////////////////////////////////////////// // Clean up //////////////////////////////////////////////////////////////////////////////// echo '<li>', I18N::translate('Delete temporary files…'); reset_timeout(); if (File::delete($zip_dir)) { echo '<br>', I18N::translate('The folder %s has been deleted.', Html::filename($zip_dir)), $icon_success; } else { echo '<br>', I18N::translate('The folder %s could not be deleted.', Html::filename($zip_dir)), $icon_failure; } if (File::delete($zip_file)) { echo '<br>', I18N::translate('The file %s has been deleted.', Html::filename($zip_file)), $icon_success; } else { echo '<br>', I18N::translate('The file %s could not be deleted.', Html::filename($zip_file)), $icon_failure; } echo '</li>'; echo '</ul>'; echo '<p>', I18N::translate('The upgrade is complete.'), '</p>'; /** * Reset the time limit, as timeouts in this script could leave the upgrade incomplete. */ function reset_timeout() { if (!ini_get('safe_mode') && strpos(ini_get('disable_functions'), 'set_time_limit') === false) { set_time_limit(ini_get('max_execution_time')); } }
} if (move_uploaded_file($_FILES['mediafile' . $i]['tmp_name'], $serverFileName)) { FlashMessages::addMessage(I18N::translate('The file %s has been uploaded.', Html::filename($serverFileName))); Log::addMediaLog('Media file ' . $serverFileName . ' uploaded'); } else { FlashMessages::addMessage(I18N::translate('There was an error uploading your file.') . '<br>' . Functions::fileUploadErrorText($_FILES['mediafile' . $i]['error'])); $filename = ''; break; } // Now copy the (optional thumbnail) if (!empty($_FILES['thumbnail' . $i]['name']) && preg_match('/^image\\/(png|gif|jpeg)/', $_FILES['thumbnail' . $i]['type'], $match)) { $extension = $match[1]; $thumbFile = preg_replace('/\\.[a-z0-9]{3,5}$/', '.' . $extension, $fileName); $serverFileName = WT_DATA_DIR . $MEDIA_DIRECTORY . 'thumbs/' . $folderName . $thumbFile; if (move_uploaded_file($_FILES['thumbnail' . $i]['tmp_name'], $serverFileName)) { FlashMessages::addMessage(I18N::translate('The file %s has been uploaded.', Html::filename($serverFileName))); Log::addMediaLog('Thumbnail file ' . $serverFileName . ' uploaded'); } } } } } } $controller->pageHeader(); $mediaFolders = QueryMedia::folderListAll(); // Determine file size limit $filesize = ini_get('upload_max_filesize'); if (empty($filesize)) { $filesize = "2M"; } ?>