- {translate text="Powered By Aspen Discovery supported by %1%" 1=$supportingCompany isPublicFacing=true}
+ {if !empty($supportingCompany)}
+ {translate text="Powered By Aspen Discovery supported by %1%" 1=$supportingCompany isPublicFacing=true}
+ {else}
+ {translate text="Powered By Aspen Discovery" isPublicFacing=true}
+ {/if}
{if empty($productionServer)}
{$physicalLocation}{if !empty($debug)} ({$activeIp}){/if} - {$deviceName}
{/if}
diff --git a/code/web/migrations/importSymphonyLists.php b/code/web/migrations/importSymphonyLists.php
index a54e427b7e..b4dff172fc 100644
--- a/code/web/migrations/importSymphonyLists.php
+++ b/code/web/migrations/importSymphonyLists.php
@@ -59,7 +59,7 @@ function importLists($startTime, $exportPath, &$existingUsers, &$missingUsers, &
while ($patronListRow = fgetcsv($listsfHnd, 0, '|')) {
$numImports++;
- if (sizeof($patronListRow) != 12) {
+ if (sizeof($patronListRow) != 10) {
echo("Skipping row because it has the wrong number of columns");
//We got a bad export, likely
continue;
@@ -74,10 +74,10 @@ function importLists($startTime, $exportPath, &$existingUsers, &$missingUsers, &
$userKey = $patronListRow[2];
//last activity
//email
- $listName = $patronListRow[5];
- $listId = $patronListRow[6];
- $myListOrder = $patronListRow[7];
- $originalTime = $patronListRow[8];
+ $listName = $patronListRow[3];
+ $listId = $patronListRow[4];
+ $myListOrder = $patronListRow[5];
+ $originalTime = $patronListRow[6];
$dateAddedToList = strtotime($originalTime);
if ($dateAddedToList == false) {
$firstDot = strpos($originalTime, '.');
@@ -92,9 +92,9 @@ function importLists($startTime, $exportPath, &$existingUsers, &$missingUsers, &
$timeWithHoursAndMinutes = str_replace('.', ':', $timeWithHoursAndMinutes);
$dateAddedToList = strtotime($timeWithHoursAndMinutes);
}
- $documentId = $patronListRow[9];
- $title = $patronListRow[10];
- $titleOrder = $patronListRow[11];
+ $documentId = $patronListRow[7];
+ $title = $patronListRow[8];
+ $titleOrder = $patronListRow[9];
//Figure out the user for the list
$userId = getUserIdForBarcode($userBarcode, $existingUsers, $missingUsers, $usersWithSearchPermissions);
diff --git a/code/web/release_notes/24.10.10.MD b/code/web/release_notes/24.10.10.MD
index 22d7bd7424..2a45042d15 100644
--- a/code/web/release_notes/24.10.10.MD
+++ b/code/web/release_notes/24.10.10.MD
@@ -1,4 +1,7 @@
## Aspen Discovery Updates
+### Aspen LiDA Setting Updates
+- Allow Checkouts to be assigned to the Item Location for Symphony. (*DIS-35*) (*MDN*)
+
### CloudSource Updates
- Allow repeating searches within [CloudSource](https://cloudsource.net) so open articles, eBooks, eTextbooks, and more can be searched. (DIS-36)
@@ -10,9 +13,28 @@
- Primary Configuration > Library Systems > Locations > Searching > Search Box > Repeat In CloudSource
+### Symphony Updates
+- Allow titles to be checked in and out using the Symphony APIs. (DIS-35) (*MDN*)
+- Add a testing page to allow API paths to be described easily. (*MDN*)
+
+
+
+#### New Settings
+- Aspen LiDA > Self-Check Settings > Assign Checkouts To - Add Symphony to the list of ILSs that support Item Location
+
+
+
+### Other updates
+- Fix issue that doesn't allow users to freeze a hold without an end date. (*LM*)
+- Change array position for columns in symphony list import to reflect their current practices (*KL*)
+
## This release includes code contributions from
-- Grove For Libraries
- - Mark Noble (MDN)
+- Grove For Libraries
+ - Mark Noble (MDN)
+- Theke Solutions
+ - Lucas Montoya (LM)
+- ByWater Solutions
+ - Kodi Lein (KL)
## This release includes sponsored developments from
- CLEVNET
\ No newline at end of file
diff --git a/code/web/release_notes/24.11.00.MD b/code/web/release_notes/24.11.00.MD
index 017d70bcea..774fba018c 100644
--- a/code/web/release_notes/24.11.00.MD
+++ b/code/web/release_notes/24.11.00.MD
@@ -3,8 +3,18 @@
## Aspen Discovery Updates
//mark - grove
+### CARL.X Updates
+- When checking for order records based on shelf location, allow any casing of XORD. (*MDN*)
+
+### Indexing Updates
+- When determining CD+Book format, do not mark as CD+Book if the 300e includes booklet rather than book. (*MDN*)
+- Add a new format for Zines based on the 655a (*MDN*)
+
+### Install Updates
+- Make it easier to create new Symphony sites by creating account profiles and indexing profiles (similar to how Koha sites can be set up). (*MDN*)
+
### SHAREit Updates
-- Add the ability to search SHAREit as an Inter Library Loan Service. (*MDN*)
+- Add the ability to search SHAREit as an Inter Library Loan Service. (DIS-27) (*MDN*)
- Patrons can repeat their search in SHAREit from the search bar.
- Search results from SHAREit are automatically shown at the bottom of search results.
- Results from SHAREit can be configured to show within Combined Results.
@@ -37,6 +47,8 @@
//kirstien - bywater
//kodi - bywater
+### Other Updates
+- Remove partner-specific directories in the /sites directory (*KL*)
//morgan - bywater
@@ -51,8 +63,12 @@
//james - nashville
//alexander - ptfse
+### Other Updates
+- Add check to saveToList function to ensure the user attempting to add a book to the list is authorised to do so. (*AB*)
//chloe - ptfse
+### Other
+- Ebsco EDS and host passwords are encrypted before being stored in the Aspen database (*CZ*)
//lucas - theke
### Aspen Materials Request Updates
diff --git a/code/web/services/Admin/SymphonyApiTester.php b/code/web/services/Admin/SymphonyApiTester.php
new file mode 100644
index 0000000000..f75cebde0a
--- /dev/null
+++ b/code/web/services/Admin/SymphonyApiTester.php
@@ -0,0 +1,56 @@
+assign('pathToDescribe', $_REQUEST['pathToDescribe']);
+ $catalogConnection = CatalogFactory::getCatalogConnectionInstance();
+ if ($catalogConnection->driver instanceof SirsiDynixROA) {
+ $symphonyDriver = $catalogConnection->driver;
+ $describeResults = $symphonyDriver->describePath($_REQUEST['pathToDescribe']);
+ if (is_null($describeResults)) {
+ $describeResults = "Path not found";
+ }
+ $interface->assign('describeResults', $describeResults);
+ } else{
+ $interface->assign('describeResults', 'Could not describe path, this instance is not connected to Symphony.');
+ }
+ }else if (!empty($_REQUEST['getRequest'])) {
+ $interface->assign('getRequest', $_REQUEST['getRequest']);
+ $catalogConnection = CatalogFactory::getCatalogConnectionInstance();
+ if ($catalogConnection->driver instanceof SirsiDynixROA) {
+ $symphonyDriver = $catalogConnection->driver;
+ $getRequestResults = $symphonyDriver->getRequest($_REQUEST['getRequest']);
+ if (is_null($getRequestResults)) {
+ $getRequestResults = "Request failed";
+ }
+ $interface->assign('getRequestResults', $getRequestResults);
+ } else{
+ $interface->assign('getRequestResults', 'Could get request, this instance is not connected to Symphony.');
+ }
+ }
+
+ $this->display('symphonyApiTester.tpl', 'Symphony API Tester');
+ }
+
+ function getBreadcrumbs(): array {
+ $breadcrumbs = [];
+ if (UserAccount::isLoggedIn() && !empty(UserAccount::getActivePermissions())) {
+ $breadcrumbs[] = new Breadcrumb('/Admin/Home', 'Administration Home');
+ }
+ $breadcrumbs[] = new Breadcrumb('', 'Symphony API Tester');
+ return $breadcrumbs;
+ }
+
+ function getActiveAdminSection(): string {
+ return 'primary_configuration';
+ }
+
+ function canView(): bool {
+ return UserAccount::userHasPermission('Administer Account Profiles');
+ }
+}
\ No newline at end of file
diff --git a/code/web/services/MyAccount/AJAX.php b/code/web/services/MyAccount/AJAX.php
index 85e119b1cd..c32c4d123a 100644
--- a/code/web/services/MyAccount/AJAX.php
+++ b/code/web/services/MyAccount/AJAX.php
@@ -7085,7 +7085,6 @@ function saveToList() {
$totalRecords = 0;
} else {
$userList->id = $listId;
- $totalRecords = $userList->numValidListItems();
if (!$userList->find(true)) {
$result['success'] = false;
$result['message'] = translate([
@@ -7093,6 +7092,18 @@ function saveToList() {
'isPublicFacing' => true,
]);
$listOk = false;
+ } else {
+ //Authorization check: Ensure list belongs to logged in user
+ $currentUser = UserAccount::getActiveUserObj();
+ if (!$currentUser->canEditList($userList)) {
+ $result['success'] = false;
+ $result['message'] =translate([
+ 'text' => 'You are not authorized to modify this list.',
+ 'isPublicFacing' => true,
+ ]);
+ return $result;
+ }
+ $totalRecords = $userList->numValidListItems();
}
}
diff --git a/code/web/sys/AspenLiDA/SelfCheckSetting.php b/code/web/sys/AspenLiDA/SelfCheckSetting.php
index 8805bfc690..dd04548260 100644
--- a/code/web/sys/AspenLiDA/SelfCheckSetting.php
+++ b/code/web/sys/AspenLiDA/SelfCheckSetting.php
@@ -30,7 +30,7 @@ static function getObjectStructure($context = ''): array {
$checkout_location_options = [
'0' => 'Current Location User is Logged Into',
'1' => 'User Home Location',
- '2' => 'Item Location (Koha 23.11+ and Sierra Only)'
+ '2' => 'Item Location (Koha 23.11+, Sierra, Symphony Only)'
];
$structure = [
diff --git a/code/web/sys/CloudLibrary/LibraryCloudLibraryScope.php b/code/web/sys/CloudLibrary/LibraryCloudLibraryScope.php
index b0422e51f0..6fbfc51237 100644
--- a/code/web/sys/CloudLibrary/LibraryCloudLibraryScope.php
+++ b/code/web/sys/CloudLibrary/LibraryCloudLibraryScope.php
@@ -1,4 +1,4 @@
- [
+ 'title' => 'EBSCO Passwords Are Stored As Hash',
+ 'description' => 'allow for longer strings so passwords can be stored as hashed values',
+ 'continueOnError' => false,
+ 'sql' => [
+ "ALTER TABLE ebsco_eds_settings MODIFY COLUMN edsApiPassword VARCHAR(255)",
+ "ALTER TABLE ebscohost_settings MODIFY COLUMN profilePwd VARCHAR(255)"
+ ]
+ ] // ebsco_passwords_are_stored_as_hash
//pedro - PTFS-Europe
diff --git a/code/web/sys/Ebsco/EBSCOhostSetting.php b/code/web/sys/Ebsco/EBSCOhostSetting.php
index aee0fcc9aa..68fe5bfbae 100644
--- a/code/web/sys/Ebsco/EBSCOhostSetting.php
+++ b/code/web/sys/Ebsco/EBSCOhostSetting.php
@@ -13,6 +13,10 @@ class EBSCOhostSetting extends DataObject {
private $_searchSettings;
+ function getEncryptedFieldNames(): array {
+ return ['profilePwd'];
+ }
+
static function getObjectStructure($context = ''): array {
$ebscoHostSearchSettingStructure = EBSCOhostSearchSetting::getObjectStructure($context);
diff --git a/code/web/sys/Ebsco/EDSSettings.php b/code/web/sys/Ebsco/EDSSettings.php
index ec6d6aa75b..e9354c8b03 100644
--- a/code/web/sys/Ebsco/EDSSettings.php
+++ b/code/web/sys/Ebsco/EDSSettings.php
@@ -11,6 +11,10 @@ class EDSSettings extends DataObject {
public $edsSearchProfile;
public $fullTextLimiter;
+ function getEncryptedFieldNames(): array {
+ return ['edsApiPassword'];
+ }
+
public static function getObjectStructure($context = ''): array {
return [
'id' => [
diff --git a/code/web/sys/Grouping/GroupedWorkTestSearch.php b/code/web/sys/Grouping/GroupedWorkTestSearch.php
index d4d5c74d3f..0d1a307847 100644
--- a/code/web/sys/Grouping/GroupedWorkTestSearch.php
+++ b/code/web/sys/Grouping/GroupedWorkTestSearch.php
@@ -149,6 +149,6 @@ public function update($context = '') {
$this->status = 0;
$this->notes = '';
}
- return parent::update(); // TODO: Change the autogenerated stub
+ return parent::update();
}
}
\ No newline at end of file
diff --git a/code/web/sys/Indexing/FormatMapValue.php b/code/web/sys/Indexing/FormatMapValue.php
index 47a444d406..b538dcb88c 100644
--- a/code/web/sys/Indexing/FormatMapValue.php
+++ b/code/web/sys/Indexing/FormatMapValue.php
@@ -227,6 +227,6 @@ public function __get($name) {
return 'book';
}
}
- return parent::__get($name); // TODO: Change the autogenerated stub
+ return parent::__get($name);
}
}
\ No newline at end of file
diff --git a/code/web/sys/Redwood/UserContribution.php b/code/web/sys/Redwood/UserContribution.php
index c577733c46..c0de79d1c0 100644
--- a/code/web/sys/Redwood/UserContribution.php
+++ b/code/web/sys/Redwood/UserContribution.php
@@ -108,6 +108,6 @@ public function insert($context = '') {
$this->dateContributed = time();
$this->userId = $user->id;
$this->status = 'submitted';
- return parent::insert(); // TODO: Change the autogenerated stub
+ return parent::insert();
}
}
\ No newline at end of file
diff --git a/code/web/sys/SystemVariables.php b/code/web/sys/SystemVariables.php
index b2d0eb5f4d..44b6c6b5da 100644
--- a/code/web/sys/SystemVariables.php
+++ b/code/web/sys/SystemVariables.php
@@ -332,7 +332,7 @@ static function getObjectStructure($context = ''): array {
'type' => 'text',
'label' => 'Support Company',
'description' => 'Sets supporting company name in footer',
- 'default' => 'ByWater Solutions',
+ 'default' => '',
],
'trackIpAddresses' => [
'property' => 'trackIpAddresses',
diff --git a/code/web/sys/Theming/Theme.php b/code/web/sys/Theming/Theme.php
index 7325e9daca..3ebb8a8df2 100644
--- a/code/web/sys/Theming/Theme.php
+++ b/code/web/sys/Theming/Theme.php
@@ -2694,7 +2694,7 @@ public function delete($useWhere = false) : int {
$this->clearLibraries();
$this->clearLocations();
$this->clearDefaultCovers();
- return parent::delete($useWhere); // TODO: Change the autogenerated stub
+ return parent::delete($useWhere);
}
public function applyDefaults() {
diff --git a/install/createSite.php b/install/createSite.php
index 9000ac88b7..ae4c0f37a9 100644
--- a/install/createSite.php
+++ b/install/createSite.php
@@ -13,10 +13,15 @@
$runningOnWindows = false;
}
+$linuxOS = null;
$linuxArray = ['centos', 'debian'];
$foundConfig = false;
$variables = [];
+$siteOnWindows = false;
+$sitename = null;
+$cleanSitename = null;
+
if (count($_SERVER['argv']) > 1){
//Read the file
$siteConfigFile = __DIR__ . '/' . $_SERVER['argv'][1];
@@ -61,6 +66,11 @@
$variables['ilsDatabaseTimezone'] = $configArray['Koha']['DBTimezone'];
$variables['ilsClientId'] = $configArray['Koha']['ClientId'];
$variables['ilsClientSecret'] = $configArray['Koha']['ClientSecret'];
+ }elseif ($variables['ils'] == 'Symphony') {
+ $variables['ilsDriver'] = 'SirsiDynixROA';
+ $variables['ilsClientId'] = $configArray['Symphony']['ClientId'];
+ $variables['ilsStaffUser'] = $configArray['Symphony']['StaffUser'];
+ $variables['ilsStaffPassword'] = $configArray['Symphony']['StaffPassword'];
}else{
$variables['ilsDriver'] = $configArray['ILS']['ilsDriver'];
}
@@ -87,7 +97,7 @@
'cleanSitename' => $cleanSitename,
];
- //Prompt for needed information
+ //Prompt for any information we need to set up the site
$variables['library'] = '';
while (empty($variables['library'])) {
@@ -166,6 +176,11 @@
}
$variables['ilsClientId'] = readline("Client ID for Koha API > ");
$variables['ilsClientSecret'] = readline("Client Secret for Koha API > ");
+ }elseif ($variables['ils'] == 'Symphony'){
+ $variables['ilsDriver'] = 'SirsiDynixROA';
+ $variables['ilsClientId'] = readline("Client ID for Symphony API > ");
+ $variables['ilsStaffUser'] = readline("Staff Username for use with the Symphony API > ");
+ $variables['ilsStaffPassword'] = readline("Staff Password for use with the Symphony API > ");
}
while (empty($variables['ilsDriver'])) {
@@ -205,7 +220,7 @@
$variables['databasePassword'] = readline("Database password for {$variables['databaseUser']} for Aspen > ");
}
- $variables['timezone'] = readline("Enter the timezone of the library (e.g. America/Los_Angeles, check http://www.php.net/manual/en/timezones.php) > ");
+ $variables['timezone'] = readline("Enter the timezone of the library (e.g. America/Los_Angeles, check https://www.php.net/manual/en/timezones.php) > ");
if (empty($variables['timezone'])){
$variables['timezone'] = "America/Los_Angeles";
}
@@ -259,7 +274,7 @@
$variables['servername'] = preg_replace('~https?://~', '', $variables['url']);
/*
- * Setup the server
+ * Set up the server
*/
//Create the basic sites directory
@@ -270,19 +285,19 @@
}
//Rename files appropriately based on the sitename
-rename($siteDir . '/httpd-{sitename}.conf', $siteDir . "/httpd-{$sitename}.conf");
+rename($siteDir . '/httpd-{sitename}.conf', $siteDir . "/httpd-$sitename.conf");
if ($siteOnWindows){
- rename($siteDir . '/{sitename}.bat', $siteDir . "/{$sitename}.bat");
+ rename($siteDir . '/{sitename}.bat', $siteDir . "/$sitename.bat");
}else{
- rename($siteDir . '/{sitename}.sh', $siteDir . "/{$sitename}.sh");
+ rename($siteDir . '/{sitename}.sh', $siteDir . "/$sitename.sh");
}
rename($siteDir . '/conf/config.pwd.ini.template', $siteDir . "/conf/config.pwd.ini");
-replaceVariables($siteDir . "/httpd-{$sitename}.conf", $variables);
+replaceVariables($siteDir . "/httpd-$sitename.conf", $variables);
if ($siteOnWindows) {
- replaceVariables($siteDir . "/{$sitename}.bat", $variables);
+ replaceVariables($siteDir . "/$sitename.bat", $variables);
}else{
- replaceVariables($siteDir . "/{$sitename}.sh", $variables);
+ replaceVariables($siteDir . "/$sitename.sh", $variables);
}
replaceVariables($siteDir . "/conf/config.ini", $variables);
replaceVariables($siteDir . "/conf/config.cron.ini", $variables);
@@ -325,6 +340,7 @@
$updateUserStmt->execute();
//Assign supportingCompany in the db
+/** @noinspection SqlWithoutWhere */
$postSupportingCompanyStmt = $aspen_db->prepare("UPDATE system_variables set supportingCompany=" . $aspen_db->quote($variables['supportingCompany']));
$postSupportingCompanyStmt->execute();
@@ -334,7 +350,13 @@
echo("Loading Koha information to database\r\n");
copy("$installDir/install/koha_connection.sql", "$tmp_dir/koha_connection_$sitename.sql");
replaceVariables("$tmp_dir/koha_connection_$sitename.sql", $variables);
- exec("mysql -u{$variables['databaseUser']} -p\"{$variables['databasePassword']}\" {$variables['databaseName']} < $tmp_dir/koha_connection_{$sitename}.sql");
+ exec("mysql -u{$variables['databaseUser']} -p\"{$variables['databasePassword']}\" {$variables['databaseName']} < $tmp_dir/koha_connection_$sitename.sql");
+}elseif ($variables['ils'] == 'Symphony'){
+ $tmp_dir = rtrim(sys_get_temp_dir(), "/");
+ echo("Loading Koha information to database\r\n");
+ copy("$installDir/install/symphony_connection.sql", "$tmp_dir/symphony_connection_$sitename.sql");
+ replaceVariables("$tmp_dir/symphony_connection_$sitename.sql", $variables);
+ exec("mysql -u{$variables['databaseUser']} -p\"{$variables['databasePassword']}\" {$variables['databaseName']} < $tmp_dir/symphony_connection_$sitename.sql");
}
$aspen_db = null;
@@ -390,9 +412,10 @@
//Link the httpd conf file
if (!$siteOnWindows){
- symlink($siteDir . "/httpd-{$sitename}.conf", $$linuxOS['apacheDir'] . "/httpd-{$sitename}.conf");
+ symlink($siteDir . "/httpd-$sitename.conf", $$linuxOS['apacheDir'] . "/httpd-$sitename.conf");
if ($linuxOS == 'debian') {
- exec("a2ensite httpd-{$sitename}");
+ /** @noinspection SpellCheckingInspection */
+ exec("a2ensite httpd-$sitename");
}
//Restart apache
exec("systemctl restart " . $$linuxOS['service']);
@@ -407,10 +430,10 @@
if (!$siteOnWindows){
//Start solr
- exec('chmod +x ' . $siteDir . "/{$sitename}.sh");
- execInBackground($siteDir . "/{$sitename}.sh start");
+ exec('chmod +x ' . $siteDir . "/$sitename.sh");
+ execInBackground($siteDir . "/$sitename.sh start");
//Link cron to /etc/cron.d folder
- exec("ln -s /usr/local/aspen-discovery/sites/{$sitename}/conf/crontab_settings.txt /etc/cron.d/{$cleanSitename}");
+ exec("ln -s /usr/local/aspen-discovery/sites/$sitename/conf/crontab_settings.txt /etc/cron.d/$cleanSitename");
}
//Update my.cnf for backups
@@ -424,7 +447,7 @@
echo("Next Steps\r\n");
$step = 1;
if ($siteOnWindows) {
- echo($step++ . ") Add Include \"$siteDir/httpd-{$sitename}.conf\" to the httpd.conf file\r\n");
+ echo($step++ . ") Add Include \"$siteDir/httpd-$sitename.conf\" to the httpd.conf file\r\n");
echo($step++ . ") Add {$variables['servername']} to the hosts file\r\n");
echo($step++ . ") Restart apache\r\n");
echo($step++ . ") Start Solr\r\n");
@@ -437,15 +460,14 @@
exit();
-function recursive_copy($src,$dst) {
+function recursive_copy($src,$dst) : void {
$dir = opendir($src);
@mkdir($dst);
while(( $file = readdir($dir)) ) {
if (( $file != '.' ) && ( $file != '..' )) {
if ( is_dir($src . '/' . $file) ) {
recursive_copy($src .'/'. $file, $dst .'/'. $file);
- }
- else {
+ } else {
copy($src .'/'. $file,$dst .'/'. $file);
}
}
@@ -453,7 +475,7 @@ function recursive_copy($src,$dst) {
closedir($dir);
}
-function recursive_rmdir($dir) {
+function recursive_rmdir($dir) : void {
if (is_dir($dir)) {
$objects = scandir($dir);
foreach ($objects as $object) {
@@ -468,7 +490,7 @@ function recursive_rmdir($dir) {
}
}
-function replaceVariables($filename, $variables){
+function replaceVariables($filename, $variables) : void {
$contents = file ($filename);
$fHnd = fopen($filename, 'w');
foreach ($contents as $line){
@@ -480,9 +502,9 @@ function replaceVariables($filename, $variables){
fclose($fHnd);
}
-function execInBackground($cmd) {
+function execInBackground($cmd) : void {
echo ("Running $cmd\r\n");
- if (substr(php_uname(), 0, 7) == "Windows"){
+ if (str_starts_with(php_uname(), "Windows")){
$cmd = str_replace('/', '\\', $cmd);
pclose(popen("start /B ". $cmd, "r"));
} else {
diff --git a/install/createSiteTemplate.ini b/install/createSiteTemplate.ini
index 3c4f25b627..e7750ca869 100644
--- a/install/createSiteTemplate.ini
+++ b/install/createSiteTemplate.ini
@@ -19,7 +19,7 @@ solrPort = 8080
ils =
; timezone of the library (e.g. America/Los_Angeles, check http://www.php.net/manual/en/timezones.php)
timezone =
-; name of the supporting company (is set to ByWater Solutions by default)
+; name of the supporting company
supportingCompany =
[Aspen]
@@ -61,3 +61,11 @@ DBTimezone = US/Central
ClientId =
; Client Secret for Koha API
ClientSecret =
+
+[Symphony]
+; Client ID for Symphony API
+ClientId =
+; Staff User for Symphony API
+StaffUser =
+; Staff Password for Symphony API
+StaffPassword =
\ No newline at end of file
diff --git a/install/symphony_connection.sql b/install/symphony_connection.sql
new file mode 100644
index 0000000000..362e0641c6
--- /dev/null
+++ b/install/symphony_connection.sql
@@ -0,0 +1,80 @@
+-- MySQL dump 10.13 Distrib 5.7.23, for Win64 (x86_64)
+--
+-- Host: localhost Database: pueblo
+-- ------------------------------------------------------
+-- Server version 5.7.23-log
+
+/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
+/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
+/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
+/*!40101 SET NAMES utf8mb4 */;
+/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
+/*!40103 SET TIME_ZONE='+00:00' */;
+/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
+/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
+/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
+/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
+
+--
+-- Dumping data for table `account_profiles`
+--
+
+LOCK TABLES `account_profiles` WRITE;
+/*!40000 ALTER TABLE `account_profiles` DISABLE KEYS */;
+INSERT INTO `account_profiles` (id, name, driver, loginConfiguration, authenticationMethod, vendorOpacUrl, patronApiUrl, recordSource, weight, oAuthClientId, staffUsername, staffPassword, ils) VALUES (2,'ils','SirsiDynixROA','barcode_pin','ils','{ilsUrl}','{ilsUrl}','ils',0,'{ilsClientId}','{ilsStaffUser}','{ilsStaffPassword}', 'symphony');
+/*!40000 ALTER TABLE `account_profiles` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Dumping data for table `indexing_profiles`
+--
+
+LOCK TABLES `indexing_profiles` WRITE;
+/*!40000 ALTER TABLE `indexing_profiles` DISABLE KEYS */;
+INSERT INTO `indexing_profiles` (id, name, marcPath, marcEncoding, groupingClass, indexingClass, recordDriver, recordUrlComponent, formatSource, recordNumberTag, recordNumberSubfield, itemTag, itemRecordNumber, useItemBasedCallNumbers, callNumber, location, shelvingLocation, volume, barcode, totalCheckouts, iType, dateCreated, dateCreatedFormat, format, catalogDriver, filenamesToInclude, doAutomaticEcontentSuppression, recordNumberPrefix, noteSubfield, lastCheckinFormat, status, lastCheckinDate) VALUES (1,'ils','/data/aspen-discovery/{sitename}/ils/marc','UTF8','MarcRecordGrouper','Symphony','MarcRecordDriver','Record','bib','901', 'a','999','i',1,'a','m','l','v','i','n','t','u','MM/dd/yyyy','t','SirsiDynixROA','.*\\.ma?rc',1, '', 'o', 'MM/dd/yyyy', 'k', 'd');
+/*!40000 ALTER TABLE `indexing_profiles` ENABLE KEYS */;
+UNLOCK TABLES;
+
+
+--
+-- Dumping data for table `library_records_to_include`
+--
+
+LOCK TABLES `library_records_to_include` WRITE;
+/*!40000 ALTER TABLE `library_records_to_include` DISABLE KEYS */;
+INSERT INTO `library_records_to_include` (id, libraryId, indexingProfileId, location, subLocation, includeHoldableOnly, includeItemsOnOrder, includeEContent, weight, iType, audience, format, marcTagToMatch, marcValueToMatch, includeExcludeMatches, urlToMatch, urlReplacement, locationsToExclude, subLocationsToExclude, markRecordsAsOwned) VALUES (1,1,1,'.*','.*',0,1,1,1,'','','','','',1,'','','','', 1);
+/*!40000 ALTER TABLE `library_records_to_include` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Dumping data for table `status_map_values`
+--
+
+LOCK TABLES `status_map_values` WRITE;
+/*!40000 ALTER TABLE `status_map_values` DISABLE KEYS */;
+INSERT INTO `status_map_values` (indexingProfileId, value, status, groupedStatus, suppress) VALUES (1,'CHECKEDOUT','Checked Out','Checked Out',0),(1,'CLAIMS','Claims Returned','Currently Unavailable',1),(1,'ONSHELF','On Shelf','On Shelf',0),(1,'TRANSIT','In Transit','In Transit',0),(1,'LOST','Lost','Currently Unavailable',1),(1,'LOST-PAID','Lost and Paid For','Currently Unavailable',1),(1,'MISSING','Missing','Currently Unavailable',1),(1,'HOLDS','On Hold','Checked Out',0),(1,'ON-ORDER','On Order','On Order',0),(1,'DISCARD','Discard','Currently Unavailable',1),(1,'LOST-CLAIM','Lost Claim','Currently Unavailable',1);
+/*!40000 ALTER TABLE `status_map_values` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Dumping data for table `translation_maps`
+--
+
+LOCK TABLES `translation_maps` WRITE;
+/*!40000 ALTER TABLE `translation_maps` DISABLE KEYS */;
+INSERT INTO `translation_maps` VALUES (1,1,'audience',0),(2,1,'location',0),(3,1,'shelf_location',0),(5,1,'itype',0);
+/*!40000 ALTER TABLE `translation_maps` ENABLE KEYS */;
+UNLOCK TABLES;
+/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
+
+UPDATE modules set enabled = 1 where name = 'Koha';
+
+/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
+/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
+/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
+/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
+/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
+/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
+/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
+
+-- Dump completed on 2019-11-18 8:22:06
diff --git a/sites/arlington.production/arlington.production.sh b/sites/arlington.production/arlington.production.sh
deleted file mode 100755
index a8aec5c117..0000000000
--- a/sites/arlington.production/arlington.production.sh
+++ /dev/null
@@ -1,16 +0,0 @@
-#!/bin/sh
-
-if [ -z "$1" ]
- then
- echo "To use, run with start, stop or restart for the first parameter."
-fi
-
-if [[ ( "$1" == "stop" ) || ( "$1" == "restart") ]]
- then
- /usr/local/aspen-discovery/sites/default/solr-8.11.2/bin/solr stop -p 8080 -s "/data/aspen-discovery/arlington.production/solr7" -d "/usr/local/aspen-discovery/sites/default/solr-8.11.2/server"
-fi
-
-if [[ ( "$1" == "start" ) || ( "$1" == "restart") ]]
- then
- /usr/local/aspen-discovery/sites/default/solr-8.11.2/bin/solr start -m 3g -p 8080 -s "/data/aspen-discovery/arlington.production/solr7" -d "/usr/local/aspen-discovery/sites/default/solr-8.11.2/server"
-fi
diff --git a/sites/arlington.production/conf/config.cron.ini b/sites/arlington.production/conf/config.cron.ini
deleted file mode 100644
index 931c8d9242..0000000000
--- a/sites/arlington.production/conf/config.cron.ini
+++ /dev/null
@@ -1,35 +0,0 @@
-# Configures the processes that cron will run when it is invoked with
-# additional information about the frequency that it is invoked.
-# The ini file should have a Processes section with the name of each process to run
-#
-# Processes should have the format:
-# - Process Name = Process Handler Class
-#
-# Each process will also have a section based on the Process Name.
-# the section should contain the following keys at a minimum
-# - description = A brief description of what the process does
-# - lastRun = the timestamp the process was last run. Blank if the process has never been run.
-# - frequencyHours = the frequency with which the process should be run in hours or 0 if it should be run each time cron runs.
-#
-# General settings can also be defined that will be sent to all processes.
-# these can include database connection information, solr settings, etc.
-
-[Processes]
-UpdateReadingHistory = com.turning_leaf_technologies.cron.reading_history.UpdateReadingHistory
-BookCoverCleanup = com.turning_leaf_technologies.cron.BookCoverCleanup
-DatabaseCleanup = com.turning_leaf_technologies.cron.DatabaseCleanup
-
-[UpdateReadingHistory]
-description = Updates reading History for the patron based on what is currently checked out.
-frequencyHours = 0
-
-[BookCoverCleanup]
-description = Cleans up any book covers that are out of date (more than 2 weeks old).
-frequencyHours = 0
-
-[DatabaseCleanup]
-description = Does cleanup of the database to remove records that are no longer needed
-frequencyHours = 0
-
-
-
diff --git a/sites/arlington.production/conf/config.ini b/sites/arlington.production/conf/config.ini
deleted file mode 100644
index 184ac502a4..0000000000
--- a/sites/arlington.production/conf/config.ini
+++ /dev/null
@@ -1,40 +0,0 @@
-;
-; default config file for customization
-; Aspen Discovery Configuration
-;
-
-; No changes are necessary in the System Section
-[System]
-debug = false
-timings = false
-debugJs = true
-operatingSystem = linux
-
-; This section will need to be customized for your installation
-[Site]
-local = /usr/local/aspen-discovery/code/web
-coverPath = /data/aspen-discovery/arlington.production/covers
-url = https://libcat.arlingtonva.us
-title = "Arlington Public Library"
-libraryName = Arlington Public Library
-; Find valid timezone values here:
-; http://www.php.net/manual/en/timezones.php
-timezone = "America/New_York"
-
-[Catalog]
-ils = Koha
-driver = Koha
-showFines = true
-url = https://arlingtonva.bywatersolutions.com
-linking_url = https://arlingtonva.bywatersolutions.com
-staffClientUrl =
-api_version = 5
-
-; This section requires no changes for most installations
-[Index]
-url = http://localhost:8080/solr
-
-[Reindex]
-solrPort = 8080
-marcPath = /data/aspen-discovery/arlington.production/ils/marc
-lexileExportPath =
diff --git a/sites/arlington.production/conf/crontab_settings.txt b/sites/arlington.production/conf/crontab_settings.txt
deleted file mode 100644
index 5b6c0fd101..0000000000
--- a/sites/arlington.production/conf/crontab_settings.txt
+++ /dev/null
@@ -1,101 +0,0 @@
-##################
-## Crontab setting from a 'configuration' file
-##
-## to save current crontab to file: crontab -l > crontab_settings.txt
-##
-## to set the current crontab from a file : crontab < crontab_settings.txt
-##
-##################
-
-# !! Please make all changes to the crontab within the git repository system and apply through the above method.
-#
-# ie :
-# git pull origin {current branch}
-# sudo /usr/local/aspen-discovery/code/cron/check_crontab.sh arlington.production
-# sudo crontab < /usr/local/aspen-discovery/sites/arlington.production/conf/crontab_settings.txt
-
-###################
-# * * * * * command to execute
-# │ │ │ │ │
-# │ │ │ │ └───── day of week (0 - 6)
-# │ │ │ │ (0 to 6 are Sunday to Saturday, or use names (Sun,Mon,Tue,Wed,Thu,Fri,Sat); 7 is Sunday, the same as 0)
-# │ │ │ └────────── month (1 - 12)
-# │ │ └─────────────── day of month (1 - 31)
-# │ └──────────────────── hour (0 - 23)
-# └───────────────────────── min (0 - 59)
-## taken from https://en.wikipedia.org/wiki/Cron
-##############
-
-#############
-# Indexing Tasks #
-#############
-@reboot solr php /usr/local/aspen-discovery/code/web/cron/checkSolr.php arlington.production
-5 2 * * * solr php /usr/local/aspen-discovery/code/web/cron/updateSuggesters.php arlington.production
-7 3 * * * aspen php /usr/local/aspen-discovery/code/web/cron/createSitemaps.php arlington.production
-*/2 * * * * solr php /usr/local/aspen-discovery/code/web/cron/checkSolr.php arlington.production
-*/5 * * * * aspen php /usr/local/aspen-discovery/code/web/cron/checkBackgroundProcesses.php arlington.production
-
-########################################################
-# Regular extracts that don't need to run continuously #
-########################################################
-# 0 2 * * * aspen cd /usr/local/aspen-discovery/code/oai_indexer; java -jar oai_indexer.jar arlington.production
-0 2 * * * aspen cd /usr/local/aspen-discovery/code/reindexer; java -jar reindexer.jar arlington.production nightly
-
-######################
-# MySQL Nightly Dump #
-######################
-# backup important bits at 12:10am daily
-10 0 * * * root php /usr/local/aspen-discovery/code/web/cron/backupAspen.php arlington.production
-
-#############################################
-# New York Times Best seller Lists Updating #
-#############################################
-15 7 * * 0-1 aspen php /usr/local/aspen-discovery/code/web/cron/updateNYTLists.php arlington.production
-# update on Sundays and Mondays at 7:15
-
-###########################
-# Aspen Discovery Cleanup #
-###########################
-
-# Temp files
-26 0 * * * root cd /tmp; rm -rf CURLCOOKIE*
-
-# CRON for Aspen (book cover cache cleanup etc.)
-00 22 * * * aspen cd /usr/local/aspen-discovery/code/cron; java -jar cron.jar arlington.production
-
-00 01 * * * root certbot renew
-
-#########################
-# Update Saved Searches #
-#########################
-0 10 * * 1-5 aspen php /usr/local/aspen-discovery/code/web/cron/updateSavedSearches.php arlington.production
-
-#########################
-# Fetch Notification Receipts #
-#########################
-0 11 * * 1-5 aspen php /usr/local/aspen-discovery/code/web/cron/fetchNotificationReceipts.php arlington.production
-
-#############################
-# Refresh SAML SSO metadata #
-#############################
-00 05 * * * aspen php /usr/local/aspen-discovery/code/web/cron/refreshSsoMetadata.php arlington.production
-
-#########################
-# Send Custom LiDA Notifications #
-#########################
-*/15 * * * * aspen php /usr/local/aspen-discovery/code/web/cron/sendLiDANotifications.php arlington.production
-
-#########################
-# Run Scheduled Updates #
-#########################
-*/5 * * * * root php /usr/local/aspen-discovery/code/web/cron/runScheduledUpdate.php arlington.production
-
-#########################
-# Update Translations from Community #
-#########################
-15 1 * * * root php /usr/local/aspen-discovery/code/web/cron/updateCommunityTranslations.php arlington.production
-
-######################################
-# Run Clam AV Scans #
-######################################
-00 3 * * * root truncate -s0 /var/log/aspen-discovery/clam_av.log; /bin/clamscan --recursive=yes --quiet -i --exclude-dir=/var/lib/mysql --exclude-dir=/sys --exclude-dir=/data/aspen-discovery/arlington.production/solr7/ --exclude-dir=/var/log/aspen-discovery/arlington.production --exclude-dir=/data/aspen-discovery/arlington.production/covers/small --exclude-dir=/data/aspen-discovery/arlington.production/covers/medium --exclude-dir=/data/aspen-discovery/arlington.production/covers/large --log=/var/log/aspen-discovery/clam_av.log
diff --git a/sites/arlington.production/httpd-arlington.production-le-ssl.conf b/sites/arlington.production/httpd-arlington.production-le-ssl.conf
deleted file mode 100644
index 1d69166694..0000000000
--- a/sites/arlington.production/httpd-arlington.production-le-ssl.conf
+++ /dev/null
@@ -1,185 +0,0 @@
-
-
- ServerName libcat2.arlingtonva.us
- DocumentRoot "/usr/local/aspen-discovery/code/web"
- CustomLog /var/log/aspen-discovery/arlington.production/access.log combined
- ErrorLog /var/log/aspen-discovery/arlington.production/error.log
- ErrorDocument 404 /Error/Handle404
-
-
- Require all granted
- Options -Indexes -MultiViews
- AllowOverride All
-
- SetEnv aspen_server arlington.production
-
- # Friendly URLs
-
- RewriteEngine On
-
- # Bot Blocking
- Include /usr/local/aspen-discovery/sites/arlington.production/conf/badBotsLocal.conf
- Include /usr/local/aspen-discovery/sites/default/conf/badBotsDefault.conf
-
- RewriteRule ^robots\.txt$ /robots.php [NC,L]
- RewriteRule ^sitemapindex\.xml$ /sitemapindex.php [NC,L]
- RewriteRule ^grouped_work_site_map(.+)$ /sitemaps/grouped_work_site_map$1 [NC,L]
-
- # Anything that is a direct php file still goes to that
- RewriteRule ^(.*?\.php).*$ $1 [NC,L]
-
- # Rewrite everything else to go through index.php
- RewriteRule ^(.*)$ index.php [NC,L]
-
-
- # Disable Magic Quotes
- php_value magic_quotes_gpc false
-
- # Session Settings
- php_value session.use_cookies 1
- php_value session.use_only_cookies 1
- # important: we want to serialize objects
- php_value session.auto_start 0
- #php_value session.cookie_secure 1
- # we should check session lifetime in "read" methods
- # since PHP cookies do not "refresh" them during activity
- # hence we leave them alive until browser closes
- php_value session.cookie_lifetime 0
- php_value session.gc_maxlifetime 6000
-
- ## Uncomment these lines if you wish to show all errors on the screen.
- #php_value display_errors 1
- #php_value error_reporting 2047
-
- # enable expirations
-
- ExpiresActive On
- ExpiresByType image/gif "access plus 1 month"
- ExpiresByType image/png "access plus 1 month"
- ExpiresByType image/jpg "access plus 1 month"
- ExpiresByType image/jpeg "access plus 1 month"
- ExpiresByType image/x-icon "access plus 1 month"
- ExpiresByType text/css "access plus 2 weeks"
- ExpiresByType application/javascript "access plus 2 weeks"
-
-
- #Enable deflating (gzip) of content
-
- # Insert filter
- SetOutputFilter DEFLATE
-
- # Netscape 4.x has some problems...
- BrowserMatch ^Mozilla/4 gzip-only-text/html
-
- # Netscape 4.06-4.08 have some more problems
- BrowserMatch ^Mozilla/4\.0[678] no-gzip
-
- # MSIE masquerades as Netscape, but it is fine
- # BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
-
- # NOTE: Due to a bug in mod_setenvif up to Apache 2.0.48
- # the above regex won't work. You can use the following
- # workaround to get the desired effect:
- BrowserMatch \bMSI[E] !no-gzip !gzip-only-text/html
-
- # Don't compress images
- SetEnvIfNoCase Request_URI \
- \.(?:gif|jpe?g|png)$ no-gzip dont-vary
-
-
- SSLCertificateFile /etc/letsencrypt/live/libcat2.arlingtonva.us/cert.pem
- SSLCertificateKeyFile /etc/letsencrypt/live/libcat2.arlingtonva.us/privkey.pem
- Include /etc/letsencrypt/options-ssl-apache.conf
- SSLCertificateChainFile /etc/letsencrypt/live/libcat2.arlingtonva.us/chain.pem
-
-
-
- ServerName libcat.arlingtonva.us
- DocumentRoot "/usr/local/aspen-discovery/code/web"
- CustomLog /var/log/aspen-discovery/arlington.production/access.log combined
- ErrorLog /var/log/aspen-discovery/arlington.production/error.log
- ErrorDocument 404 /Error/Handle404
-
-
- Require all granted
- Options -Indexes -MultiViews
- AllowOverride All
-
- SetEnv aspen_server arlington.production
-
- # Friendly URLs
-
- RewriteEngine On
- RewriteRule ^robots\.txt$ /robots.php [NC,L]
- RewriteRule ^sitemapindex\.xml$ /sitemapindex.php [NC,L]
- RewriteRule ^grouped_work_site_map(.+)$ /sitemaps/grouped_work_site_map$1 [NC,L]
-
- # Anything that is a direct php file still goes to that
- RewriteRule ^(.*?\.php).*$ $1 [NC,L]
-
- # Rewrite everything else to go through index.php
- RewriteRule ^(.*)$ index.php [NC,L]
-
-
- # Disable Magic Quotes
- php_value magic_quotes_gpc false
-
- # Session Settings
- php_value session.use_cookies 1
- php_value session.use_only_cookies 1
- # important: we want to serialize objects
- php_value session.auto_start 0
- #php_value session.cookie_secure 1
- # we should check session lifetime in "read" methods
- # since PHP cookies do not "refresh" them during activity
- # hence we leave them alive until browser closes
- php_value session.cookie_lifetime 0
- php_value session.gc_maxlifetime 6000
-
- ## Uncomment these lines if you wish to show all errors on the screen.
- #php_value display_errors 1
- #php_value error_reporting 2047
-
- # enable expirations
-
- ExpiresActive On
- ExpiresByType image/gif "access plus 1 month"
- ExpiresByType image/png "access plus 1 month"
- ExpiresByType image/jpg "access plus 1 month"
- ExpiresByType image/jpeg "access plus 1 month"
- ExpiresByType image/x-icon "access plus 1 month"
- ExpiresByType text/css "access plus 2 weeks"
- ExpiresByType application/javascript "access plus 2 weeks"
-
-
- #Enable deflating (gzip) of content
-
- # Insert filter
- SetOutputFilter DEFLATE
-
- # Netscape 4.x has some problems...
- BrowserMatch ^Mozilla/4 gzip-only-text/html
-
- # Netscape 4.06-4.08 have some more problems
- BrowserMatch ^Mozilla/4\.0[678] no-gzip
-
- # MSIE masquerades as Netscape, but it is fine
- # BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
-
- # NOTE: Due to a bug in mod_setenvif up to Apache 2.0.48
- # the above regex won't work. You can use the following
- # workaround to get the desired effect:
- BrowserMatch \bMSI[E] !no-gzip !gzip-only-text/html
-
- # Don't compress images
- SetEnvIfNoCase Request_URI \
- \.(?:gif|jpe?g|png)$ no-gzip dont-vary
-
-
- SSLCertificateFile /etc/letsencrypt/live/libcat2.arlingtonva.us/cert.pem
- SSLCertificateKeyFile /etc/letsencrypt/live/libcat2.arlingtonva.us/privkey.pem
- Include /etc/letsencrypt/options-ssl-apache.conf
- SSLCertificateChainFile /etc/letsencrypt/live/libcat2.arlingtonva.us/chain.pem
-
-
-
diff --git a/sites/arlington.production/httpd-arlington.production.conf b/sites/arlington.production/httpd-arlington.production.conf
deleted file mode 100644
index 5517355a4d..0000000000
--- a/sites/arlington.production/httpd-arlington.production.conf
+++ /dev/null
@@ -1,9 +0,0 @@
-
- ServerName libcat2.arlingtonva.us
- Redirect permanent / https://libcat2.arlingtonva.us/
-
-
-
- ServerName libcat.arlingtonva.us
- Redirect permanent / https://libcat.arlingtonva.us/
-
diff --git a/sites/aspencat.production/aspencat.production.sh b/sites/aspencat.production/aspencat.production.sh
deleted file mode 100755
index 11529c206b..0000000000
--- a/sites/aspencat.production/aspencat.production.sh
+++ /dev/null
@@ -1,16 +0,0 @@
-#!/bin/sh
-
-if [ -z "$1" ]
- then
- echo "To use, run with start, stop or restart for the first parameter."
-fi
-
-if [[ ( "$1" == "stop" ) || ( "$1" == "restart") ]]
- then
- /usr/local/aspen-discovery/sites/default/solr-8.11.2/bin/solr stop -p 8080 -s "/data/aspen-discovery/aspencat.production/solr7" -d "/usr/local/aspen-discovery/sites/default/solr-8.11.2/server"
-fi
-
-if [[ ( "$1" == "start" ) || ( "$1" == "restart") ]]
- then
- /usr/local/aspen-discovery/sites/default/solr-8.11.2/bin/solr start -m 14g -p 8080 -s "/data/aspen-discovery/aspencat.production/solr7" -d "/usr/local/aspen-discovery/sites/default/solr-8.11.2/server"
-fi
diff --git a/sites/aspencat.production/conf/config.cron.ini b/sites/aspencat.production/conf/config.cron.ini
deleted file mode 100644
index 931c8d9242..0000000000
--- a/sites/aspencat.production/conf/config.cron.ini
+++ /dev/null
@@ -1,35 +0,0 @@
-# Configures the processes that cron will run when it is invoked with
-# additional information about the frequency that it is invoked.
-# The ini file should have a Processes section with the name of each process to run
-#
-# Processes should have the format:
-# - Process Name = Process Handler Class
-#
-# Each process will also have a section based on the Process Name.
-# the section should contain the following keys at a minimum
-# - description = A brief description of what the process does
-# - lastRun = the timestamp the process was last run. Blank if the process has never been run.
-# - frequencyHours = the frequency with which the process should be run in hours or 0 if it should be run each time cron runs.
-#
-# General settings can also be defined that will be sent to all processes.
-# these can include database connection information, solr settings, etc.
-
-[Processes]
-UpdateReadingHistory = com.turning_leaf_technologies.cron.reading_history.UpdateReadingHistory
-BookCoverCleanup = com.turning_leaf_technologies.cron.BookCoverCleanup
-DatabaseCleanup = com.turning_leaf_technologies.cron.DatabaseCleanup
-
-[UpdateReadingHistory]
-description = Updates reading History for the patron based on what is currently checked out.
-frequencyHours = 0
-
-[BookCoverCleanup]
-description = Cleans up any book covers that are out of date (more than 2 weeks old).
-frequencyHours = 0
-
-[DatabaseCleanup]
-description = Does cleanup of the database to remove records that are no longer needed
-frequencyHours = 0
-
-
-
diff --git a/sites/aspencat.production/conf/config.ini b/sites/aspencat.production/conf/config.ini
deleted file mode 100644
index d758ff7533..0000000000
--- a/sites/aspencat.production/conf/config.ini
+++ /dev/null
@@ -1,39 +0,0 @@
-;
-; default config file for customization
-; Aspen Discovery Configuration
-;
-
-; No changes are necessary in the System Section
-[System]
-debug = false
-timings = false
-debugJs = true
-operatingSystem = linux
-
-; This section will need to be customized for your installation
-[Site]
-local = /usr/local/aspen-discovery/code/web
-coverPath = /data/aspen-discovery/aspencat.production/covers
-url = https://catalog.aspencat.info
-title = "AspenCat"
-libraryName = AspenCat
-; Find valid timezone values here:
-; http://www.php.net/manual/en/timezones.php
-timezone = "America/Denver"
-
-[Catalog]
-ils = Koha
-driver = Koha
-showFines = true
-url = https://clic.bywatersolutions.com
-linking_url = https://clic.bywatersolutions.com
-staffClientUrl = https://staff-clic.bywatersolutions.com
-
-; This section requires no changes for most installations
-[Index]
-url = http://localhost:8080/solr
-
-[Reindex]
-solrPort = 8080
-marcPath = /data/aspen-discovery/aspencat.production/ils/marc
-lexileExportPath = /data/aspen-discovery/lexileTitles.txt
diff --git a/sites/aspencat.production/conf/crontab_settings.txt b/sites/aspencat.production/conf/crontab_settings.txt
deleted file mode 100644
index 41c96a051c..0000000000
--- a/sites/aspencat.production/conf/crontab_settings.txt
+++ /dev/null
@@ -1,107 +0,0 @@
-##################
-## Crontab setting from a 'configuration' file
-##
-## to save current crontab to file: crontab -l > crontab_settings.txt
-##
-## to set the current crontab from a file : crontab < crontab_settings.txt
-##
-##################
-
-# !! Please make all changes to the crontab within the git repository system and apply through the above method.
-#
-# ie :
-# git pull origin {current branch}
-# sudo /usr/local/aspen-discovery/code/cron/check_crontab.sh aspencat.production
-# sudo crontab < /usr/local/aspen-discovery/sites/aspencat.production/conf/crontab_settings.txt
-
-###################
-# * * * * * command to execute
-# │ │ │ │ │
-# │ │ │ │ └───── day of week (0 - 6)
-# │ │ │ │ (0 to 6 are Sunday to Saturday, or use names (Sun,Mon,Tue,Wed,Thu,Fri,Sat); 7 is Sunday, the same as 0)
-# │ │ │ └────────── month (1 - 12)
-# │ │ └─────────────── day of month (1 - 31)
-# │ └──────────────────── hour (0 - 23)
-# └───────────────────────── min (0 - 59)
-## taken from https://en.wikipedia.org/wiki/Cron
-##############
-
-#############
-# Indexing Tasks #
-#############
-@reboot solr php /usr/local/aspen-discovery/code/web/cron/checkSolr.php aspencat.production
-5 2 * * * solr php /usr/local/aspen-discovery/code/web/cron/updateSuggesters.php aspencat.production
-7 3 * * * aspen php /usr/local/aspen-discovery/code/web/cron/createSitemaps.php aspencat.production
-*/2 * * * * solr php /usr/local/aspen-discovery/code/web/cron/checkSolr.php aspencat.production
-*/5 * * * * aspen php /usr/local/aspen-discovery/code/web/cron/checkBackgroundProcesses.php aspencat.production
-
-########################################################
-# Regular extracts that don't need to run continuously #
-########################################################
-0 2 * * * aspen cd /usr/local/aspen-discovery/code/oai_indexer; java -jar oai_indexer.jar aspencat.production
-0 23 * * * aspen cd /usr/local/aspen-discovery/code/reindexer; java -jar reindexer.jar aspencat.production nightly
-
-######################
-# MySQL Nightly Dump #
-######################
-# backup important bits at 12:10am daily
-10 0 * * * root php /usr/local/aspen-discovery/code/web/cron/backupAspen.php aspencat.production
-
-#############################################
-# New York Times Best seller Lists Updating #
-#############################################
-30 10 * * 0-1 aspen php /usr/local/aspen-discovery/code/web/cron/updateNYTLists.php aspencat.production
-# update on Sundays and Mondays at 7:15
-
-###########################
-# Aspen Discovery Cleanup #
-###########################
-
-# Temp files
-26 0 * * * root cd /tmp; rm -rf CURLCOOKIE*
-
-# CRON for Aspen (book cover cache cleanup etc.)
-00 22 * * * aspen cd /usr/local/aspen-discovery/code/cron; java -jar cron.jar aspencat.production
-
-00 01 * * * root certbot renew
-
-############################
-# Fix Cover Permissions #
-############################
-*/15 * * * * root chown aspen:aspen_apache /data/aspen-discovery/aspencat.production/covers/original/*
-*/15 * * * * root chmod g+rw /data/aspen-discovery/aspencat.production/covers/original/*
-
-#############################
-# Refresh SAML SSO metadata #
-#############################
-00 05 * * * aspen php /usr/local/aspen-discovery/code/web/cron/refreshSsoMetadata.php aspencat.production
-
-#########################
-# Fetch Notification Receipts #
-#########################
-0 11 * * 1-5 aspen php /usr/local/aspen-discovery/code/web/cron/fetchNotificationReceipts.php aspencat.production
-
-#########################
-# Update Saved Searches #
-#########################
-0 10 * * 1-5 aspen php /usr/local/aspen-discovery/code/web/cron/updateSavedSearches.php aspencat.production
-
-#########################
-# Send Custom LiDA Notifications #
-#########################
-*/15 * * * * aspen php /usr/local/aspen-discovery/code/web/cron/sendLiDANotifications.php aspencat.production
-
-#########################
-# Run Scheduled Updates #
-#########################
-*/5 * * * * root php /usr/local/aspen-discovery/code/web/cron/runScheduledUpdate.php aspencat.production
-
-#########################
-# Update Translations from Community #
-#########################
-15 1 * * * root php /usr/local/aspen-discovery/code/web/cron/updateCommunityTranslations.php aspencat.production
-
-######################################
-# Run Clam AV Scans #
-######################################
-00 3 * * * root truncate -s0 /var/log/aspen-discovery/clam_av.log; /bin/clamscan --recursive=yes --quiet -i --exclude-dir=/var/lib/mysql --exclude-dir=/sys --exclude-dir=/data/aspen-discovery/aspencat.production/solr7/ --exclude-dir=/var/log/aspen-discovery/aspencat.production --exclude-dir=/data/aspen-discovery/aspencat.production/covers/small --exclude-dir=/data/aspen-discovery/aspencat.production/covers/medium --exclude-dir=/data/aspen-discovery/aspencat.production/covers/large --log=/var/log/aspen-discovery/clam_av.log
diff --git a/sites/aspencat.production/httpd-aspencat.production-le-ssl.conf b/sites/aspencat.production/httpd-aspencat.production-le-ssl.conf
deleted file mode 100644
index de1135b0de..0000000000
--- a/sites/aspencat.production/httpd-aspencat.production-le-ssl.conf
+++ /dev/null
@@ -1,193 +0,0 @@
-
-
- ServerName catalog2.aspencat.info
- ServerAlias *.catalog2.aspencat.info
- DocumentRoot "/usr/local/aspen-discovery/code/web"
- CustomLog /var/log/aspen-discovery/aspencat.production/access.log combined
- ErrorLog /var/log/aspen-discovery/aspencat.production/error.log
- ErrorDocument 404 /Error/Handle404
-
-
- Require all granted
- Options -Indexes -MultiViews
- AllowOverride All
-
- SetEnv aspen_server aspencat.production
-
- # Friendly URLs
-
- RewriteEngine On
-
- # Bot Blocking
- Include /usr/local/aspen-discovery/sites/aspencat.production/conf/badBotsLocal.conf
- Include /usr/local/aspen-discovery/sites/default/conf/badBotsDefault.conf
-
- RewriteRule ^robots\.txt$ /robots.php [NC,L]
- RewriteRule ^sitemapindex\.xml$ /sitemapindex.php [NC,L]
- RewriteRule ^grouped_work_site_map(.+)$ /sitemaps/grouped_work_site_map$1 [NC,L]
-
- # Anything that is a direct php file still goes to that
- RewriteRule ^(.*?\.php).*$ $1 [NC,L]
-
- # Rewrite everything else to go through index.php
- RewriteRule ^(.*)$ index.php [NC,L]
-
-
- # Disable Magic Quotes
- php_value magic_quotes_gpc false
-
- # Session Settings
- php_value session.use_cookies 1
- php_value session.use_only_cookies 1
- # important: we want to serialize objects
- php_value session.auto_start 0
- #php_value session.cookie_secure 1
- # we should check session lifetime in "read" methods
- # since PHP cookies do not "refresh" them during activity
- # hence we leave them alive until browser closes
- php_value session.cookie_lifetime 0
- php_value session.gc_maxlifetime 6000
-
- ## Uncomment these lines if you wish to show all errors on the screen.
- #php_value display_errors 1
- #php_value error_reporting 2047
-
- # enable expirations
-
- ExpiresActive On
- ExpiresByType image/gif "access plus 1 month"
- ExpiresByType image/png "access plus 1 month"
- ExpiresByType image/jpg "access plus 1 month"
- ExpiresByType image/jpeg "access plus 1 month"
- ExpiresByType image/x-icon "access plus 1 month"
- ExpiresByType text/css "access plus 2 weeks"
- ExpiresByType application/javascript "access plus 2 weeks"
-
-
- #Enable deflating (gzip) of content
-
- # Insert filter
- SetOutputFilter DEFLATE
-
- # Netscape 4.x has some problems...
- BrowserMatch ^Mozilla/4 gzip-only-text/html
-
- # Netscape 4.06-4.08 have some more problems
- BrowserMatch ^Mozilla/4\.0[678] no-gzip
-
- # MSIE masquerades as Netscape, but it is fine
- # BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
-
- # NOTE: Due to a bug in mod_setenvif up to Apache 2.0.48
- # the above regex won't work. You can use the following
- # workaround to get the desired effect:
- BrowserMatch \bMSI[E] !no-gzip !gzip-only-text/html
-
- # Don't compress images
- SetEnvIfNoCase Request_URI \
- \.(?:gif|jpe?g|png)$ no-gzip dont-vary
-
-
- Include /etc/letsencrypt/options-ssl-apache.conf
- SSLCertificateFile /etc/letsencrypt/live/catalog2.aspencat.info/cert.pem
- SSLCertificateKeyFile /etc/letsencrypt/live/catalog2.aspencat.info/privkey.pem
- SSLCertificateChainFile /etc/letsencrypt/live/catalog2.aspencat.info/chain.pem
-
-
-
-
-
- ServerName catalog.aspencat.info
- ServerAlias *.catalog.aspencat.info
- DocumentRoot "/usr/local/aspen-discovery/code/web"
- CustomLog /var/log/aspen-discovery/aspencat.production/access.log combined
- ErrorLog /var/log/aspen-discovery/aspencat.production/error.log
- ErrorDocument 404 /Error/Handle404
-
-
- Require all granted
- Options -Indexes -MultiViews
- AllowOverride All
-
- SetEnv aspen_server aspencat.production
-
- # Friendly URLs
-
- RewriteEngine On
-
- # Bot Blocking
- Include /usr/local/aspen-discovery/sites/aspencat.production/conf/badBotsLocal.conf
- Include /usr/local/aspen-discovery/sites/default/conf/badBotsDefault.conf
-
- RewriteRule ^robots\.txt$ /robots.php [NC,L]
- RewriteRule ^sitemapindex\.xml$ /sitemapindex.php [NC,L]
- RewriteRule ^grouped_work_site_map(.+)$ /sitemaps/grouped_work_site_map$1 [NC,L]
-
- # Anything that is a direct php file still goes to that
- RewriteRule ^(.*?\.php).*$ $1 [NC,L]
-
- # Rewrite everything else to go through index.php
- RewriteRule ^(.*)$ index.php [NC,L]
-
-
- # Disable Magic Quotes
- php_value magic_quotes_gpc false
-
- # Session Settings
- php_value session.use_cookies 1
- php_value session.use_only_cookies 1
- # important: we want to serialize objects
- php_value session.auto_start 0
- #php_value session.cookie_secure 1
- # we should check session lifetime in "read" methods
- # since PHP cookies do not "refresh" them during activity
- # hence we leave them alive until browser closes
- php_value session.cookie_lifetime 0
- php_value session.gc_maxlifetime 6000
-
- ## Uncomment these lines if you wish to show all errors on the screen.
- #php_value display_errors 1
- #php_value error_reporting 2047
-
- # enable expirations
-
- ExpiresActive On
- ExpiresByType image/gif "access plus 1 month"
- ExpiresByType image/png "access plus 1 month"
- ExpiresByType image/jpg "access plus 1 month"
- ExpiresByType image/jpeg "access plus 1 month"
- ExpiresByType image/x-icon "access plus 1 month"
- ExpiresByType text/css "access plus 2 weeks"
- ExpiresByType application/javascript "access plus 2 weeks"
-
-
- #Enable deflating (gzip) of content
-
- # Insert filter
- SetOutputFilter DEFLATE
-
- # Netscape 4.x has some problems...
- BrowserMatch ^Mozilla/4 gzip-only-text/html
-
- # Netscape 4.06-4.08 have some more problems
- BrowserMatch ^Mozilla/4\.0[678] no-gzip
-
- # MSIE masquerades as Netscape, but it is fine
- # BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
-
- # NOTE: Due to a bug in mod_setenvif up to Apache 2.0.48
- # the above regex won't work. You can use the following
- # workaround to get the desired effect:
- BrowserMatch \bMSI[E] !no-gzip !gzip-only-text/html
-
- # Don't compress images
- SetEnvIfNoCase Request_URI \
- \.(?:gif|jpe?g|png)$ no-gzip dont-vary
-
-
- Include /etc/letsencrypt/options-ssl-apache.conf
- SSLCertificateFile /etc/letsencrypt/live/catalog.aspencat.info-0001/cert.pem
- SSLCertificateKeyFile /etc/letsencrypt/live/catalog.aspencat.info-0001/privkey.pem
- SSLCertificateChainFile /etc/letsencrypt/live/catalog.aspencat.info-0001/fullchain.pem
-
-
diff --git a/sites/aspencat.production/httpd-aspencat.production.conf b/sites/aspencat.production/httpd-aspencat.production.conf
deleted file mode 100644
index 8bc1af6dd7..0000000000
--- a/sites/aspencat.production/httpd-aspencat.production.conf
+++ /dev/null
@@ -1,14 +0,0 @@
-
- ServerName catalog2.aspencat.info
-
- Redirect permanent / https://catalog2.aspencat.info
-
-
-
- ServerName catalog.aspencat.info
- ServerAlias *.catalog.aspencat.info
-
- RewriteEngine On
- RewriteCond %{HTTP_HOST} ^(.*)$ [NC]
- RewriteRule ^ https://%1%{REQUEST_URI} [L,NE,R=302]
-
diff --git a/sites/basinlibraries.production/aspen_solr.service b/sites/basinlibraries.production/aspen_solr.service
deleted file mode 100644
index 1d75b93831..0000000000
--- a/sites/basinlibraries.production/aspen_solr.service
+++ /dev/null
@@ -1,13 +0,0 @@
-[Unit]
-Description=Aspen Discovery Solr Service
-After=network.target
-
-[Service]
-Type=simple
-User=solr
-ExecStart=/usr/local/aspen-discovery/sites/basinlibraries.production/basinlibraries.production.sh start
-ExecStop=/usr/local/aspen-discovery/sites/basinlibraries.production/basinlibraries.production.sh stop
-Restart=on-abort
-
-[Install]
-WantedBy=multi-user.target
diff --git a/sites/basinlibraries.production/basinlibraries.production.sh b/sites/basinlibraries.production/basinlibraries.production.sh
deleted file mode 100755
index f33b36fac0..0000000000
--- a/sites/basinlibraries.production/basinlibraries.production.sh
+++ /dev/null
@@ -1,16 +0,0 @@
-#!/bin/sh
-
-if [ -z "$1" ]
- then
- echo "To use, run with start, stop or restart for the first parameter."
-fi
-
-if [[ ( "$1" == "stop" ) || ( "$1" == "restart") ]]
- then
- /usr/local/aspen-discovery/sites/default/solr-8.11.2/bin/solr stop -p 8080 -s "/data/aspen-discovery/basinlibraries.production/solr7" -d "/usr/local/aspen-discovery/sites/default/solr-8.11.2/server"
-fi
-
-if [[ ( "$1" == "start" ) || ( "$1" == "restart") ]]
- then
- /usr/local/aspen-discovery/sites/default/solr-8.11.2/bin/solr start -m 6g -p 8080 -s "/data/aspen-discovery/basinlibraries.production/solr7" -d "/usr/local/aspen-discovery/sites/default/solr-8.11.2/server"
-fi
diff --git a/sites/basinlibraries.production/conf/config.cron.ini b/sites/basinlibraries.production/conf/config.cron.ini
deleted file mode 100644
index 931c8d9242..0000000000
--- a/sites/basinlibraries.production/conf/config.cron.ini
+++ /dev/null
@@ -1,35 +0,0 @@
-# Configures the processes that cron will run when it is invoked with
-# additional information about the frequency that it is invoked.
-# The ini file should have a Processes section with the name of each process to run
-#
-# Processes should have the format:
-# - Process Name = Process Handler Class
-#
-# Each process will also have a section based on the Process Name.
-# the section should contain the following keys at a minimum
-# - description = A brief description of what the process does
-# - lastRun = the timestamp the process was last run. Blank if the process has never been run.
-# - frequencyHours = the frequency with which the process should be run in hours or 0 if it should be run each time cron runs.
-#
-# General settings can also be defined that will be sent to all processes.
-# these can include database connection information, solr settings, etc.
-
-[Processes]
-UpdateReadingHistory = com.turning_leaf_technologies.cron.reading_history.UpdateReadingHistory
-BookCoverCleanup = com.turning_leaf_technologies.cron.BookCoverCleanup
-DatabaseCleanup = com.turning_leaf_technologies.cron.DatabaseCleanup
-
-[UpdateReadingHistory]
-description = Updates reading History for the patron based on what is currently checked out.
-frequencyHours = 0
-
-[BookCoverCleanup]
-description = Cleans up any book covers that are out of date (more than 2 weeks old).
-frequencyHours = 0
-
-[DatabaseCleanup]
-description = Does cleanup of the database to remove records that are no longer needed
-frequencyHours = 0
-
-
-
diff --git a/sites/basinlibraries.production/conf/config.ini b/sites/basinlibraries.production/conf/config.ini
deleted file mode 100644
index c93bbb5330..0000000000
--- a/sites/basinlibraries.production/conf/config.ini
+++ /dev/null
@@ -1,35 +0,0 @@
-; No changes are necessary in the System Section
-[System]
-available = true
-debug = false
-timings = false
-operatingSystem = linux
-
-; This section will need to be customized for your installation
-[Site]
-local = /usr/local/aspen-discovery/code/web
-coverPath = /data/aspen-discovery/basinlibraries.production/covers
-url = https://catalog.uintahlibrary.org
-title = "Basin Libraries Consortium"
-libraryName = Basin Libraries
-; Find valid timezone values here:
-; http://www.php.net/manual/en/timezones.php
-timezone = "America/Denver"
-
-[Catalog]
-ils = Koha
-driver = Koha
-showFines = true
-url = https://basinlibraries.org/
-linking_url = https://basinlibraries.org/
-staffClientUrl = https://staff.basinlibraries.org
-
-; This section requires no changes for most installations
-[Index]
-url = http://localhost:8080/solr
-
-
-[Reindex]
-solrPort = 8080
-marcPath = /data/aspen-discovery/basinlibraries.production/ils/marc
-lexileExportPath = /data/aspen-discovery/lexileTitles.txt
diff --git a/sites/basinlibraries.production/conf/crontab_settings.txt b/sites/basinlibraries.production/conf/crontab_settings.txt
deleted file mode 100644
index 306de67188..0000000000
--- a/sites/basinlibraries.production/conf/crontab_settings.txt
+++ /dev/null
@@ -1,108 +0,0 @@
-##################
-## Crontab setting from a 'configuration' file
-##
-## to save current crontab to file: crontab -l > crontab_settings.txt
-##
-## to set the current crontab from a file : crontab < crontab_settings.txt
-##
-##################
-
-# !! Please make all changes to the crontab within the git repository system and apply through the above method.
-#
-# ie :
-# git pull origin {current branch}
-# sudo /usr/local/aspen-discovery/code/cron/check_crontab.sh basinlibraries.production
-# sudo crontab < /usr/local/aspen-discovery/sites/basinlibraries.production/conf/crontab_settings.txt
-
-###################
-# * * * * * command to execute
-# │ │ │ │ │
-# │ │ │ │ └───── day of week (0 - 6)
-# │ │ │ │ (0 to 6 are Sunday to Saturday, or use names (Sun,Mon,Tue,Wed,Thu,Fri,Sat); 7 is Sunday, the same as 0)
-# │ │ │ └────────── month (1 - 12)
-# │ │ └─────────────── day of month (1 - 31)
-# │ └──────────────────── hour (0 - 23)
-# └───────────────────────── min (0 - 59)
-## taken from https://en.wikipedia.org/wiki/Cron
-##############
-
-#############
-# Indexing Tasks #
-#############
-@reboot solr php /usr/local/aspen-discovery/code/web/cron/checkSolr.php basinlibraries.production
-5 2 * * * solr php /usr/local/aspen-discovery/code/web/cron/updateSuggesters.php basinlibraries.production
-7 3 * * * aspen php /usr/local/aspen-discovery/code/web/cron/createSitemaps.php basinlibraries.production
-*/2 * * * * solr php /usr/local/aspen-discovery/code/web/cron/checkSolr.php basinlibraries.production
-*/5 * * * * aspen php /usr/local/aspen-discovery/code/web/cron/checkBackgroundProcesses.php basinlibraries.production
-
-########################################################
-# Regular extracts that don't need to run continuously #
-########################################################
-0 2 * * * aspen cd /usr/local/aspen-discovery/code/oai_indexer; java -jar oai_indexer.jar basinlibraries.production
-0 2 * * * aspen cd /usr/local/aspen-discovery/code/reindexer; java -jar reindexer.jar basinlibraries.production nightly
-
-######################
-# MySQL Nightly Dump #
-######################
-# backup important bits at 12:10am daily
-10 0 * * * root php /usr/local/aspen-discovery/code/web/cron/backupAspen.php basinlibraries.production
-
-#############################################
-# New York Times Best seller Lists Updating #
-#############################################
-0 21 * * 3 aspen php /usr/local/aspen-discovery/code/web/cron/updateNYTLists.php basinlibraries.production
-# update on Sundays and Mondays at 7:07
-
-###########################
-# Aspen Discovery Cleanup #
-###########################
-
-# Temp files
-26 0 * * * root cd /tmp; rm -rf CURLCOOKIE*
-
-# CRON for Aspen (book cover cache cleanup etc.)
-00 22 * * * aspen cd /usr/local/aspen-discovery/code/cron; java -jar cron.jar basinlibraries.production
-
-00 01 * * * root certbot renew
-
-
-############################
-# Fix Cover Permissions #
-############################
-*/15 * * * * root chown aspen:aspen_apache /data/aspen-discovery/basinlibraries.production/covers/original/*
-*/15 * * * * root chmod g+rw /data/aspen-discovery/basinlibraries.production/covers/original/*
-
-#############################
-# Refresh SAML SSO metadata #
-#############################
-00 05 * * * aspen php /usr/local/aspen-discovery/code/web/cron/refreshSsoMetadata.php basinlibraries.production
-
-#########################
-# Fetch Notification Receipts #
-#########################
-0 11 * * 1-5 aspen php /usr/local/aspen-discovery/code/web/cron/fetchNotificationReceipts.php basinlibraries.production
-
-#########################
-# Update Saved Searches #
-#########################
-0 10 * * 1-5 aspen php /usr/local/aspen-discovery/code/web/cron/updateSavedSearches.php basinlibraries.production
-
-#########################
-# Send Custom LiDA Notifications #
-#########################
-*/15 * * * * aspen php /usr/local/aspen-discovery/code/web/cron/sendLiDANotifications.php basinlibraries.production
-
-#########################
-# Run Scheduled Updates #
-#########################
-*/5 * * * * root php /usr/local/aspen-discovery/code/web/cron/runScheduledUpdate.php basinlibraries.production
-
-#########################
-# Update Translations from Community #
-#########################
-15 1 * * * root php /usr/local/aspen-discovery/code/web/cron/updateCommunityTranslations.php basinlibraries.production
-
-######################################
-# Run Clam AV Scans #
-######################################
-00 3 * * * root truncate -s0 /var/log/aspen-discovery/clam_av.log; /bin/clamscan --recursive=yes --quiet -i --exclude-dir=/var/lib/mysql --exclude-dir=/sys --exclude-dir=/data/aspen-discovery/basinlibraries.production/solr7/ --exclude-dir=/var/log/aspen-discovery/basinlibraries.production --exclude-dir=/data/aspen-discovery/basinlibraries.production/covers/small --exclude-dir=/data/aspen-discovery/basinlibraries.production/covers/medium --exclude-dir=/data/aspen-discovery/basinlibraries.production/covers/large --log=/var/log/aspen-discovery/clam_av.log
diff --git a/sites/basinlibraries.production/httpd-basinlibraries.production-le-ssl.conf b/sites/basinlibraries.production/httpd-basinlibraries.production-le-ssl.conf
deleted file mode 100644
index e8161458bf..0000000000
--- a/sites/basinlibraries.production/httpd-basinlibraries.production-le-ssl.conf
+++ /dev/null
@@ -1,123 +0,0 @@
-
-
- RewriteEngine On
-
-
- ServerName catalog.uintahlibrary.org
- ServerAlias catalog.uintahlibrary.org
- ServerAlias uintahlibrary.org
- ServerAlias www.uintahlibrary.org
- ServerAlias history.uintahlibrary.org
- ServerAlias rhc.uintahlibrary.org
- ServerAlias catalog.duchesnelibraries.org
- ServerAlias catalog.wasatchlibrary.org
- ServerAlias wasatchlibrary.org
- ServerAlias www.wasatchlibrary.org
- ServerAlias www.wasatch.lib.ut.us
-
- DocumentRoot "/usr/local/aspen-discovery/code/web"
- CustomLog /var/log/aspen-discovery/basinlibraries.production/access.log combined
- ErrorLog /var/log/aspen-discovery/basinlibraries.production/error.log
- ErrorDocument 404 /Error/Handle404
-
-
- Require all granted
- Options -Indexes -MultiViews
- AllowOverride All
-
- SetEnv aspen_server basinlibraries.production
- SetEnvIf Host catalog.uintahlibrary.org active_library=uintah
- SetEnvIf Host uintahlibrary.org active_library=uintah
- SetEnvIf Host www.uintahlibrary.org active_library=uintah
- SetEnvIf Host library.uintah.gov active_library=uintah
- SetEnvIf Host history.uintahlibrary.org active_library=rhc
- SetEnvIf Host rhc.uintahlibrary.org active_library=rhc
- SetEnvIf Host catalog.duchesnelibraries.org active_library=duchesne
- SetEnvIf Host catalog.wasatchlibrary.org active_library=wcl
- SetEnvIf Host wasatchlibrary.org active_library=wcl
- SetEnvIf Host www.wasatchlibrary.org active_library=wcl
- SetEnvIf Host www.wasatch.lib.ut.us active_library=wcl
- SetEnvIf Host basintest.aspendiscovery.org active_library=basintest
-
- # Friendly URLs
-
- RewriteEngine On
-
- # Bot Blocking
- Include /usr/local/aspen-discovery/sites/basinlibraries.production/conf/badBotsLocal.conf
- Include /usr/local/aspen-discovery/sites/default/conf/badBotsDefault.conf
-
- RewriteRule ^robots\.txt$ /robots.php [NC,L]
- RewriteRule ^sitemapindex\.xml$ /sitemapindex.php [NC,L]
- RewriteRule ^grouped_work_site_map(.+)$ /sitemaps/grouped_work_site_map$1 [NC,L]
-
- # Anything that is a direct php file still goes to that
- RewriteRule ^(.*?\.php).*$ $1 [NC,L]
-
- # Rewrite everything else to go through index.php
- RewriteRule ^(.*)$ index.php [NC,L]
-
-
- # Disable Magic Quotes
- php_value magic_quotes_gpc false
-
- # Session Settings
- php_value session.use_cookies 1
- php_value session.use_only_cookies 1
- # important: we want to serialize objects
- php_value session.auto_start 0
- #php_value session.cookie_secure 1
- # we should check session lifetime in "read" methods
- # since PHP cookies do not "refresh" them during activity
- # hence we leave them alive until browser closes
- php_value session.cookie_lifetime 0
- php_value session.gc_maxlifetime 6000
-
- ## Uncomment these lines if you wish to show all errors on the screen.
- #php_value display_errors 1
- #php_value error_reporting 2047
-
- # enable expirations
-
- ExpiresActive On
- ExpiresByType image/gif "access plus 1 month"
- ExpiresByType image/png "access plus 1 month"
- ExpiresByType image/jpg "access plus 1 month"
- ExpiresByType image/jpeg "access plus 1 month"
- ExpiresByType image/x-icon "access plus 1 month"
- ExpiresByType text/css "access plus 2 weeks"
- ExpiresByType application/javascript "access plus 2 weeks"
-
-
- #Enable deflating (gzip) of content
-
- # Insert filter
- SetOutputFilter DEFLATE
-
- # Netscape 4.x has some problems...
- BrowserMatch ^Mozilla/4 gzip-only-text/html
-
- # Netscape 4.06-4.08 have some more problems
- BrowserMatch ^Mozilla/4\.0[678] no-gzip
-
- # MSIE masquerades as Netscape, but it is fine
- # BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
-
- # NOTE: Due to a bug in mod_setenvif up to Apache 2.0.48
- # the above regex won't work. You can use the following
- # workaround to get the desired effect:
- BrowserMatch \bMSI[E] !no-gzip !gzip-only-text/html
-
- # Don't compress images
- SetEnvIfNoCase Request_URI \
- \.(?:gif|jpe?g|png)$ no-gzip dont-vary
-
-
- ServerAlias basintest.aspendiscovery.org
- ServerAlias library.uintah.gov
- Include /etc/letsencrypt/options-ssl-apache.conf
- SSLCertificateFile /etc/letsencrypt/live/catalog.duchesnelibraries.org/cert.pem
- SSLCertificateKeyFile /etc/letsencrypt/live/catalog.duchesnelibraries.org/privkey.pem
- SSLCertificateChainFile /etc/letsencrypt/live/catalog.duchesnelibraries.org/chain.pem
-
-
diff --git a/sites/basinlibraries.production/httpd-basinlibraries.production.conf b/sites/basinlibraries.production/httpd-basinlibraries.production.conf
deleted file mode 100644
index ae00e4499a..0000000000
--- a/sites/basinlibraries.production/httpd-basinlibraries.production.conf
+++ /dev/null
@@ -1,59 +0,0 @@
-
- ServerName catalog.uintahlibrary.org
-
- Redirect permanent / https://catalog.uintahlibrary.org/
-
-
-
- ServerName history.uintahlibrary.org
-
- Redirect permanent / https://history.uintahlibrary.org/
-
-
-
- ServerName rhc.uintahlibrary.org
-
- Redirect permanent / https://rhc.uintahlibrary.org/
-
-
-
- ServerName uintahlibrary.org
-
- Redirect permanent / https://uintahlibrary.org/
-
-
-
- ServerName www.uintahlibrary.org
-
- Redirect permanent / https://www.uintahlibrary.org/
-
-
-
- ServerName catalog.duchesnelibraries.org
-
- Redirect permanent / https://catalog.duchesnelibraries.org/
-
-
-
- ServerName catalog.wasatchlibrary.org
-
- Redirect permanent / https://catalog.wasatchlibrary.org/
-
-
-
- ServerName wasatchlibrary.org
-
- Redirect permanent / https://wasatchlibrary.org/
-
-
-
- ServerName www.wasatchlibrary.org
-
- Redirect permanent / https://www.wasatchlibrary.org/
-
-
-
- ServerName www.wasatch.lib.ut.us
-
- Redirect permanent / https://www.wasatch.lib.ut.us/
-
diff --git a/sites/basinlibraries.production/lang/en.ini b/sites/basinlibraries.production/lang/en.ini
deleted file mode 100644
index 504d3ca8bf..0000000000
--- a/sites/basinlibraries.production/lang/en.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-# case sensitive, key=value, no need for quotation marks
-Reset My PIN = Reset My Password
\ No newline at end of file
diff --git a/sites/default/translation_maps/format_map.csv b/sites/default/translation_maps/format_map.csv
index b9530c06fb..26a1e9c528 100644
--- a/sites/default/translation_maps/format_map.csv
+++ b/sites/default/translation_maps/format_map.csv
@@ -127,6 +127,7 @@ Wonderbook, Playaway Wonderbook, Audio Books,3
Xbox360, Xbox 360, Other,3
XboxOne, Xbox One, Other,3
XBoxSeriesX, Xbox Series X, Other,3
+Zines, Zines, Books,3
eAudiobook, eAudiobook, Audio Books,9
eBook, eBook, eBook,1
eComic, eComic, eBook,9
diff --git a/sites/model.production/conf/config.cron.ini b/sites/model.production/conf/config.cron.ini
deleted file mode 100644
index 931c8d9242..0000000000
--- a/sites/model.production/conf/config.cron.ini
+++ /dev/null
@@ -1,35 +0,0 @@
-# Configures the processes that cron will run when it is invoked with
-# additional information about the frequency that it is invoked.
-# The ini file should have a Processes section with the name of each process to run
-#
-# Processes should have the format:
-# - Process Name = Process Handler Class
-#
-# Each process will also have a section based on the Process Name.
-# the section should contain the following keys at a minimum
-# - description = A brief description of what the process does
-# - lastRun = the timestamp the process was last run. Blank if the process has never been run.
-# - frequencyHours = the frequency with which the process should be run in hours or 0 if it should be run each time cron runs.
-#
-# General settings can also be defined that will be sent to all processes.
-# these can include database connection information, solr settings, etc.
-
-[Processes]
-UpdateReadingHistory = com.turning_leaf_technologies.cron.reading_history.UpdateReadingHistory
-BookCoverCleanup = com.turning_leaf_technologies.cron.BookCoverCleanup
-DatabaseCleanup = com.turning_leaf_technologies.cron.DatabaseCleanup
-
-[UpdateReadingHistory]
-description = Updates reading History for the patron based on what is currently checked out.
-frequencyHours = 0
-
-[BookCoverCleanup]
-description = Cleans up any book covers that are out of date (more than 2 weeks old).
-frequencyHours = 0
-
-[DatabaseCleanup]
-description = Does cleanup of the database to remove records that are no longer needed
-frequencyHours = 0
-
-
-
diff --git a/sites/model.production/conf/config.ini b/sites/model.production/conf/config.ini
deleted file mode 100644
index 2da68f3728..0000000000
--- a/sites/model.production/conf/config.ini
+++ /dev/null
@@ -1,38 +0,0 @@
-;
-; default config file for customization
-; Aspen Discovery Configuration
-;
-
-; No changes are necessary in the System Section
-[System]
-debug = false
-timings = false
-debugJs = true
-operatingSystem = linux
-
-; This section will need to be customized for your installation
-[Site]
-local = /usr/local/aspen-discovery/code/web
-coverPath = /data/aspen-discovery/model.production/covers
-url = https://aspen-model.bywatersolutions.com
-title = "Aspen Demo"
-libraryName = ByWater Solutions Demo
-; Find valid timezone values here:
-; http://www.php.net/manual/en/timezones.php
-timezone = "America/Los_Angeles"
-
-[Catalog]
-driver = Koha
-showFines = true
-url = https://model.bywatersolutions.com
-linking_url = https://model.bywatersolutions.com
-staffClientUrl = https://staff.model.bywatersolutions.com/
-
-; This section requires no changes for most installations
-[Index]
-url = http://localhost:8080/solr
-
-[Reindex]
-solrPort = 8080
-marcPath = /data/aspen-discovery/model.production/ils/marc
-lexileExportPath = /data/aspen-discovery/lexileTitles.txt
diff --git a/sites/model.production/conf/crontab_settings.txt b/sites/model.production/conf/crontab_settings.txt
deleted file mode 100644
index 0865011be8..0000000000
--- a/sites/model.production/conf/crontab_settings.txt
+++ /dev/null
@@ -1,107 +0,0 @@
-##################
-## Crontab setting from a 'configuration' file
-##
-## to save current crontab to file: crontab -l > crontab_settings.txt
-##
-## to set the current crontab from a file : crontab < crontab_settings.txt
-##
-##################
-
-# !! Please make all changes to the crontab within the git repository system and apply through the above method.
-#
-# ie :
-# git pull origin {current branch}
-# sudo /usr/local/aspen-discovery/code/cron/check_crontab.sh model.production
-# sudo crontab < /usr/local/aspen-discovery/sites/model.production/conf/crontab_settings.txt
-
-###################
-# * * * * * command to execute
-# │ │ │ │ │
-# │ │ │ │ └───── day of week (0 - 6)
-# │ │ │ │ (0 to 6 are Sunday to Saturday, or use names (Sun,Mon,Tue,Wed,Thu,Fri,Sat); 7 is Sunday, the same as 0)
-# │ │ │ └────────── month (1 - 12)
-# │ │ └─────────────── day of month (1 - 31)
-# │ └──────────────────── hour (0 - 23)
-# └───────────────────────── min (0 - 59)
-## taken from https://en.wikipedia.org/wiki/Cron
-##############
-
-#############
-# Indexing Tasks #
-#############
-@reboot solr php /usr/local/aspen-discovery/code/web/cron/checkSolr.php model.production
-5 2 * * * solr php /usr/local/aspen-discovery/code/web/cron/updateSuggesters.php model.production
-7 3 * * * aspen php /usr/local/aspen-discovery/code/web/cron/createSitemaps.php model.production
-*/2 * * * * solr php /usr/local/aspen-discovery/code/web/cron/checkSolr.php model.production
-*/5 * * * * aspen php /usr/local/aspen-discovery/code/web/cron/checkBackgroundProcesses.php model.production
-
-########################################################
-# Regular extracts that don't need to run continuously #
-########################################################
-0 2 * * * aspen cd /usr/local/aspen-discovery/code/oai_indexer; java -jar oai_indexer.jar model.production
-0 2 * * * aspen cd /usr/local/aspen-discovery/code/reindexer; java -jar reindexer.jar model.production nightly
-
-######################
-# MySQL Nightly Dump #
-######################
-# backup important bits at 12:10am daily
-10 0 * * * root php /usr/local/aspen-discovery/code/web/cron/backupAspen.php model.production
-
-#############################################
-# New York Times Best seller Lists Updating #
-#############################################
-15 7 * * 0-1 aspen php /usr/local/aspen-discovery/code/web/cron/updateNYTLists.php model.production
-# update on Sundays and Mondays at 7:15
-
-###########################
-# Aspen Discovery Cleanup #
-###########################
-
-# Temp files
-26 0 * * * root cd /tmp; rm -rf CURLCOOKIE*
-
-# CRON for Aspen (book cover cache cleanup etc.)
-00 22 * * * aspen cd /usr/local/aspen-discovery/code/cron; java -jar cron.jar model.production
-
-00 01 * * * root certbot renew
-
-############################
-# Fix Cover Permissions #
-############################
-*/15 * * * * root chown aspen:aspen_apache /data/aspen-discovery/model.production/covers/original/*
-*/15 * * * * root chmod g+rw /data/aspen-discovery/model.production/covers/original/*
-
-#############################
-# Refresh SAML SSO metadata #
-#############################
-00 05 * * * aspen php /usr/local/aspen-discovery/code/web/cron/refreshSsoMetadata.php model.production
-
-#########################
-# Fetch Notification Receipts #
-#########################
-0 11 * * 1-5 aspen php /usr/local/aspen-discovery/code/web/cron/fetchNotificationReceipts.php model.production
-
-#########################
-# Update Saved Searches #
-#########################
-0 10 * * 1-5 aspen php /usr/local/aspen-discovery/code/web/cron/updateSavedSearches.php model.production
-
-#########################
-# Send Custom LiDA Notifications #
-#########################
-*/15 * * * * aspen php /usr/local/aspen-discovery/code/web/cron/sendLiDANotifications.php model.production
-
-#########################
-# Run Scheduled Updates #
-#########################
-*/5 * * * * root php /usr/local/aspen-discovery/code/web/cron/runScheduledUpdate.php model.production
-
-#########################
-# Update Translations from Community #
-#########################
-15 1 * * * root php /usr/local/aspen-discovery/code/web/cron/updateCommunityTranslations.php model.production
-
-######################################
-# Run Clam AV Scans #
-######################################
-00 3 * * * root truncate -s0 /var/log/aspen-discovery/clam_av.log; /bin/clamscan --recursive=yes --quiet -i --exclude-dir=/var/lib/mysql --exclude-dir=/sys --exclude-dir=/data/aspen-discovery/model.production/solr7/ --exclude-dir=/var/log/aspen-discovery/model.production --exclude-dir=/data/aspen-discovery/model.production/covers/small --exclude-dir=/data/aspen-discovery/model.production/covers/medium --exclude-dir=/data/aspen-discovery/model.production/covers/large --log=/var/log/aspen-discovery/clam_av.log
diff --git a/sites/model.production/httpd-model.production-le-ssl.conf b/sites/model.production/httpd-model.production-le-ssl.conf
deleted file mode 100644
index 8a62891ce5..0000000000
--- a/sites/model.production/httpd-model.production-le-ssl.conf
+++ /dev/null
@@ -1,104 +0,0 @@
-
-
- ServerName aspen-model.bywatersolutions.com
- ServerAlias aspen-model.bywatersolutions.com
- DocumentRoot "/usr/local/aspen-discovery/code/web"
- CustomLog /var/log/aspen-discovery/model.production/access.log combined
- ErrorLog /var/log/aspen-discovery/model.production/error.log
- ErrorDocument 404 /Error/Handle404
-
-
- Require all granted
- Options -Indexes -MultiViews
- AllowOverride All
-
- SetEnv aspen_server model.production
- SetEnvIf Host bywaterconsortium.aspendiscovery.org active_library=bywaterconsortium
- SetEnvIf Host bookmobile.aspendiscovery.org active_library=bookmobile
- SetEnvIf Host southwest.aspendiscovery.org active_library=southwest
- SetEnvIf Host tribranches.aspendiscovery.org active_library=tribranches
-
- # Friendly URLs
-
- RewriteEngine On
-
- # Bot Blocking
- Include /usr/local/aspen-discovery/sites/model.production/conf/badBotsLocal.conf
- Include /usr/local/aspen-discovery/sites/default/conf/badBotsDefault.conf
-
- RewriteRule ^robots\.txt$ /robots.php [NC,L]
- RewriteRule ^sitemapindex\.xml$ /sitemapindex.php [NC,L]
- RewriteRule ^grouped_work_site_map(.+)$ /sitemaps/grouped_work_site_map$1 [NC,L]
-
- # Anything that is a direct php file still goes to that
- RewriteRule ^(.*?\.php).*$ $1 [NC,L]
-
- # Rewrite everything else to go through index.php
- RewriteRule ^(.*)$ index.php [NC,L]
-
-
- # Disable Magic Quotes
- php_value magic_quotes_gpc false
-
- # Session Settings
- php_value session.use_cookies 1
- php_value session.use_only_cookies 1
- # important: we want to serialize objects
- php_value session.auto_start 0
- #php_value session.cookie_secure 1
- # we should check session lifetime in "read" methods
- # since PHP cookies do not "refresh" them during activity
- # hence we leave them alive until browser closes
- php_value session.cookie_lifetime 0
- php_value session.gc_maxlifetime 6000
-
- ## Uncomment these lines if you wish to show all errors on the screen.
- #php_value display_errors 1
- #php_value error_reporting 2047
-
- # enable expirations
-
- ExpiresActive On
- ExpiresByType image/gif "access plus 1 month"
- ExpiresByType image/png "access plus 1 month"
- ExpiresByType image/jpg "access plus 1 month"
- ExpiresByType image/jpeg "access plus 1 month"
- ExpiresByType image/x-icon "access plus 1 month"
- ExpiresByType text/css "access plus 2 weeks"
- ExpiresByType application/javascript "access plus 2 weeks"
-
-
- #Enable deflating (gzip) of content
-
- # Insert filter
- SetOutputFilter DEFLATE
-
- # Netscape 4.x has some problems...
- BrowserMatch ^Mozilla/4 gzip-only-text/html
-
- # Netscape 4.06-4.08 have some more problems
- BrowserMatch ^Mozilla/4\.0[678] no-gzip
-
- # MSIE masquerades as Netscape, but it is fine
- # BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
-
- # NOTE: Due to a bug in mod_setenvif up to Apache 2.0.48
- # the above regex won't work. You can use the following
- # workaround to get the desired effect:
- BrowserMatch \bMSI[E] !no-gzip !gzip-only-text/html
-
- # Don't compress images
- SetEnvIfNoCase Request_URI \
- \.(?:gif|jpe?g|png)$ no-gzip dont-vary
-
-
- ServerAlias bywaterconsortium.aspendiscovery.org
- ServerAlias bookmobile.aspendiscovery.org
- ServerAlias tribranches.aspendiscovery.org
- ServerAlias southwest.aspendiscovery.org
- Include /etc/letsencrypt/options-ssl-apache.conf
- SSLCertificateFile /etc/letsencrypt/live/bywaterconsortium.aspendiscovery.org/cert.pem
- SSLCertificateKeyFile /etc/letsencrypt/live/bywaterconsortium.aspendiscovery.org/privkey.pem
- SSLCertificateChainFile /etc/letsencrypt/live/bywaterconsortium.aspendiscovery.org/chain.pem
-
-
diff --git a/sites/model.production/httpd-model.production.conf b/sites/model.production/httpd-model.production.conf
deleted file mode 100644
index 780e01fd57..0000000000
--- a/sites/model.production/httpd-model.production.conf
+++ /dev/null
@@ -1,6 +0,0 @@
-
- ServerName aspen-model.bywatersolutions.com
-
- Redirect permanent / https://aspen-model.bywatersolutions.com/
-
-
diff --git a/sites/model.production/model.production.sh b/sites/model.production/model.production.sh
deleted file mode 100755
index 17d0f46982..0000000000
--- a/sites/model.production/model.production.sh
+++ /dev/null
@@ -1,16 +0,0 @@
-#!/bin/sh
-
-if [ -z "$1" ]
- then
- echo "To use, run with start, stop or restart for the first parameter."
-fi
-
-if [[ ( "$1" == "stop" ) || ( "$1" == "restart") ]]
- then
- /usr/local/aspen-discovery/sites/default/solr-8.11.2/bin/solr stop -p 8080 -s "/data/aspen-discovery/model.production/solr7" -d "/usr/local/aspen-discovery/sites/default/solr-8.11.2/server"
-fi
-
-if [[ ( "$1" == "start" ) || ( "$1" == "restart") ]]
- then
- /usr/local/aspen-discovery/sites/default/solr-8.11.2/bin/solr start -m 5g -p 8080 -s "/data/aspen-discovery/model.production/solr7" -d "/usr/local/aspen-discovery/sites/default/solr-8.11.2/server"
-fi
diff --git a/sites/model2.production/conf/config.cron.ini b/sites/model2.production/conf/config.cron.ini
deleted file mode 100644
index 931c8d9242..0000000000
--- a/sites/model2.production/conf/config.cron.ini
+++ /dev/null
@@ -1,35 +0,0 @@
-# Configures the processes that cron will run when it is invoked with
-# additional information about the frequency that it is invoked.
-# The ini file should have a Processes section with the name of each process to run
-#
-# Processes should have the format:
-# - Process Name = Process Handler Class
-#
-# Each process will also have a section based on the Process Name.
-# the section should contain the following keys at a minimum
-# - description = A brief description of what the process does
-# - lastRun = the timestamp the process was last run. Blank if the process has never been run.
-# - frequencyHours = the frequency with which the process should be run in hours or 0 if it should be run each time cron runs.
-#
-# General settings can also be defined that will be sent to all processes.
-# these can include database connection information, solr settings, etc.
-
-[Processes]
-UpdateReadingHistory = com.turning_leaf_technologies.cron.reading_history.UpdateReadingHistory
-BookCoverCleanup = com.turning_leaf_technologies.cron.BookCoverCleanup
-DatabaseCleanup = com.turning_leaf_technologies.cron.DatabaseCleanup
-
-[UpdateReadingHistory]
-description = Updates reading History for the patron based on what is currently checked out.
-frequencyHours = 0
-
-[BookCoverCleanup]
-description = Cleans up any book covers that are out of date (more than 2 weeks old).
-frequencyHours = 0
-
-[DatabaseCleanup]
-description = Does cleanup of the database to remove records that are no longer needed
-frequencyHours = 0
-
-
-
diff --git a/sites/model2.production/conf/config.ini b/sites/model2.production/conf/config.ini
deleted file mode 100644
index 8a97732216..0000000000
--- a/sites/model2.production/conf/config.ini
+++ /dev/null
@@ -1,38 +0,0 @@
-;
-; default config file for customization
-; Aspen Discovery Configuration
-;
-
-; No changes are necessary in the System Section
-[System]
-debug = false
-timings = false
-debugJs = true
-operatingSystem = linux
-
-; This section will need to be customized for your installation
-[Site]
-local = /usr/local/aspen-discovery/code/web
-coverPath = /data/aspen-discovery/model2.production/covers
-url = https://aspen-model2.bywatersolutions.com
-title = "Aspen Academic Demo"
-libraryName = Academic Demo
-; Find valid timezone values here:
-; http://www.php.net/manual/en/timezones.php
-timezone = "America/Los_Angeles"
-
-[Catalog]
-driver = Koha
-showFines = true
-url = https://model2.bywatersolutions.com
-linking_url = https://model2.bywatersolutions.com
-staffClientUrl = https://staff-model2.bywatersolutions.com
-
-; This section requires no changes for most installations
-[Index]
-url = http://localhost:8081/solr
-
-[Reindex]
-solrPort = 8081
-marcPath = /data/aspen-discovery/model2.production/ils/marc
-lexileExportPath = /data/aspen-discovery/lexileTitles.txt
diff --git a/sites/model2.production/conf/crontab_settings.txt b/sites/model2.production/conf/crontab_settings.txt
deleted file mode 100644
index 580b6ca2e5..0000000000
--- a/sites/model2.production/conf/crontab_settings.txt
+++ /dev/null
@@ -1,102 +0,0 @@
-##################
-## Crontab setting from a 'configuration' file
-##
-## to save current crontab to file: crontab -l > crontab_settings.txt
-##
-## to set the current crontab from a file : crontab < crontab_settings.txt
-##
-##################
-
-# !! Please make all changes to the crontab within the git repository system and apply through the above method.
-#
-# ie :
-# git pull origin {current branch}
-# sudo /usr/local/aspen-discovery/code/cron/check_crontab.sh model2.production
-# sudo crontab < /usr/local/aspen-discovery/sites/model2.production/conf/crontab_settings.txt
-
-###################
-# * * * * * command to execute
-# │ │ │ │ │
-# │ │ │ │ └───── day of week (0 - 6)
-# │ │ │ │ (0 to 6 are Sunday to Saturday, or use names (Sun,Mon,Tue,Wed,Thu,Fri,Sat); 7 is Sunday, the same as 0)
-# │ │ │ └────────── month (1 - 12)
-# │ │ └─────────────── day of month (1 - 31)
-# │ └──────────────────── hour (0 - 23)
-# └───────────────────────── min (0 - 59)
-## taken from https://en.wikipedia.org/wiki/Cron
-##############
-
-#############
-# Indexing Tasks #
-#############
-@reboot solr php /usr/local/aspen-discovery/code/web/cron/checkSolr.php model2.production
-5 2 * * * solr php /usr/local/aspen-discovery/code/web/cron/updateSuggesters.php model2.production
-7 3 * * * aspen php /usr/local/aspen-discovery/code/web/cron/createSitemaps.php model2.production
-*/2 * * * * solr php /usr/local/aspen-discovery/code/web/cron/checkSolr.php model2.production
-*/5 * * * * aspen php /usr/local/aspen-discovery/code/web/cron/checkBackgroundProcesses.php model2.production
-
-########################################################
-# Regular extracts that don't need to run continuously #
-########################################################
-# 0 2 * * * aspen cd /usr/local/aspen-discovery/code/oai_indexer; java -jar oai_indexer.jar model2.production
-0 2 * * * aspen cd /usr/local/aspen-discovery/code/reindexer; java -jar reindexer.jar model2.production nightly
-
-######################
-# MySQL Nightly Dump #
-######################
-# backup important bits at 12:10am daily
-10 0 * * * root php /usr/local/aspen-discovery/code/web/cron/backupAspen.php model2.production
-
-#############################################
-# New York Times Best seller Lists Updating #
-#############################################
-15 7 * * 0-1 root php /usr/local/aspen-discovery/code/web/cron/updateNYTLists.php model2.production
-# update on Sundays and Mondays at 7:15
-
-###########################
-# Aspen Discovery Cleanup #
-###########################
-
-# Temp files
-26 0 * * * root cd /tmp; rm -rf CURLCOOKIE*
-
-# CRON for Aspen (book cover cache cleanup etc.)
-00 22 * * * aspen cd /usr/local/aspen-discovery/code/cron; java -jar cron.jar model2.production
-
-00 01 * * * root certbot renew
-
-############################
-# Fix Cover Permissions #
-############################
-*/15 * * * * root chown aspen:aspen_apache /data/aspen-discovery/model2.production/covers/original/*
-*/15 * * * * root chmod g+rw /data/aspen-discovery/model2.production/covers/original/*
-
-#############################
-# Refresh SAML SSO metadata #
-#############################
-00 05 * * * aspen php /usr/local/aspen-discovery/code/web/cron/refreshSsoMetadata.php model2.production
-
-#########################
-# Fetch Notification Receipts #
-#########################
-0 11 * * 1-5 aspen php /usr/local/aspen-discovery/code/web/cron/fetchNotificationReceipts.php model2.production
-
-#########################
-# Update Saved Searches #
-#########################
-0 10 * * 1-5 aspen php /usr/local/aspen-discovery/code/web/cron/updateSavedSearches.php model2.production
-
-#########################
-# Send Custom LiDA Notifications #
-#########################
-*/15 * * * * aspen php /usr/local/aspen-discovery/code/web/cron/sendLiDANotifications.php model2.production
-
-#########################
-# Run Scheduled Updates #
-#########################
-*/5 * * * * root php /usr/local/aspen-discovery/code/web/cron/runScheduledUpdate.php model2.production
-
-#########################
-# Update Translations from Community #
-#########################
-15 1 * * * root php /usr/local/aspen-discovery/code/web/cron/updateCommunityTranslations.php model2.production
\ No newline at end of file
diff --git a/sites/model2.production/httpd-model2.production-le-ssl.conf b/sites/model2.production/httpd-model2.production-le-ssl.conf
deleted file mode 100644
index efcd08d58e..0000000000
--- a/sites/model2.production/httpd-model2.production-le-ssl.conf
+++ /dev/null
@@ -1,95 +0,0 @@
-
-
- ServerName aspen-model2.bywatersolutions.com
- DocumentRoot "/usr/local/aspen-discovery/code/web"
- CustomLog /var/log/aspen-discovery/model2.production/access.log combined
- ErrorLog /var/log/aspen-discovery/model2.production/error.log
- ErrorDocument 404 /Error/Handle404
-
-
- Require all granted
- Options -Indexes -MultiViews
- AllowOverride All
-
- SetEnv aspen_server model2.production
-
- # Friendly URLs
-
- RewriteEngine On
-
- # Bot Blocking
- Include /usr/local/aspen-discovery/sites/model2.production/conf/badBotsLocal.conf
- Include /usr/local/aspen-discovery/sites/default/conf/badBotsDefault.conf
-
- RewriteRule ^robots\.txt$ /robots.php [NC,L]
- RewriteRule ^sitemapindex\.xml$ /sitemapindex.php [NC,L]
- RewriteRule ^grouped_work_site_map(.+)$ /sitemaps/grouped_work_site_map$1 [NC,L]
-
- # Anything that is a direct php file still goes to that
- RewriteRule ^(.*?\.php).*$ $1 [NC,L]
-
- # Rewrite everything else to go through index.php
- RewriteRule ^(.*)$ index.php [NC,L]
-
-
- # Disable Magic Quotes
- php_value magic_quotes_gpc false
-
- # Session Settings
- php_value session.use_cookies 1
- php_value session.use_only_cookies 1
- # important: we want to serialize objects
- php_value session.auto_start 0
- #php_value session.cookie_secure 1
- # we should check session lifetime in "read" methods
- # since PHP cookies do not "refresh" them during activity
- # hence we leave them alive until browser closes
- php_value session.cookie_lifetime 0
- php_value session.gc_maxlifetime 6000
-
- ## Uncomment these lines if you wish to show all errors on the screen.
- #php_value display_errors 1
- #php_value error_reporting 2047
-
- # enable expirations
-
- ExpiresActive On
- ExpiresByType image/gif "access plus 1 month"
- ExpiresByType image/png "access plus 1 month"
- ExpiresByType image/jpg "access plus 1 month"
- ExpiresByType image/jpeg "access plus 1 month"
- ExpiresByType image/x-icon "access plus 1 month"
- ExpiresByType text/css "access plus 2 weeks"
- ExpiresByType application/javascript "access plus 2 weeks"
-
-
- #Enable deflating (gzip) of content
-
- # Insert filter
- SetOutputFilter DEFLATE
-
- # Netscape 4.x has some problems...
- BrowserMatch ^Mozilla/4 gzip-only-text/html
-
- # Netscape 4.06-4.08 have some more problems
- BrowserMatch ^Mozilla/4\.0[678] no-gzip
-
- # MSIE masquerades as Netscape, but it is fine
- # BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
-
- # NOTE: Due to a bug in mod_setenvif up to Apache 2.0.48
- # the above regex won't work. You can use the following
- # workaround to get the desired effect:
- BrowserMatch \bMSI[E] !no-gzip !gzip-only-text/html
-
- # Don't compress images
- SetEnvIfNoCase Request_URI \
- \.(?:gif|jpe?g|png)$ no-gzip dont-vary
-
-
- SSLCertificateFile /etc/letsencrypt/live/aspen-model2.bywatersolutions.com/cert.pem
- SSLCertificateKeyFile /etc/letsencrypt/live/aspen-model2.bywatersolutions.com/privkey.pem
- Include /etc/letsencrypt/options-ssl-apache.conf
- SSLCertificateChainFile /etc/letsencrypt/live/aspen-model2.bywatersolutions.com/chain.pem
-
-
diff --git a/sites/model2.production/httpd-model2.production.conf b/sites/model2.production/httpd-model2.production.conf
deleted file mode 100644
index e5554971b2..0000000000
--- a/sites/model2.production/httpd-model2.production.conf
+++ /dev/null
@@ -1,4 +0,0 @@
-
- ServerName aspen-model2.bywatersolutions.com
- Redirect permanent / https://aspen-model2.bywatersolutions.com/
-
diff --git a/sites/model2.production/model2.production.sh b/sites/model2.production/model2.production.sh
deleted file mode 100755
index fca61539a4..0000000000
--- a/sites/model2.production/model2.production.sh
+++ /dev/null
@@ -1,16 +0,0 @@
-#!/bin/sh
-
-if [ -z "$1" ]
- then
- echo "To use, run with start, stop or restart for the first parameter."
-fi
-
-if [[ ( "$1" == "stop" ) || ( "$1" == "restart") ]]
- then
- /usr/local/aspen-discovery/sites/default/solr-8.11.2/bin/solr stop -p 8081 -s "/data/aspen-discovery/model2.production/solr7" -d "/usr/local/aspen-discovery/sites/default/solr-8.11.2/server"
-fi
-
-if [[ ( "$1" == "start" ) || ( "$1" == "restart") ]]
- then
- /usr/local/aspen-discovery/sites/default/solr-8.11.2/bin/solr start -m 1g -p 8081 -s "/data/aspen-discovery/model2.production/solr7" -d "/usr/local/aspen-discovery/sites/default/solr-8.11.2/server"
-fi
diff --git a/sites/pueblo.production/aspen_solr.service b/sites/pueblo.production/aspen_solr.service
deleted file mode 100644
index 65f6271f10..0000000000
--- a/sites/pueblo.production/aspen_solr.service
+++ /dev/null
@@ -1,18 +0,0 @@
-[Unit]
-Description=Aspen Discovery Solr Service
-After=network.target
-
-[Service]
-Type=simple
-User=root
-ExecStart=/usr/local/aspen-discovery/sites/pueblo.production/pueblo.production.sh start
-ExecStop=/usr/local/aspen-discovery/sites/pueblo.production/pueblo.production.sh stop
-Restart=on-abort
-
-[Install]
-WantedBy=multi-user.target
-
-REM
-REM sudo ln -s /usr/local/aspen-discovery/sites/basinlibraries.production/aspen_solr.service /etc/systemd/system/aspen_solr.service
-REM
-REM Need to figure out how to start appropriately
\ No newline at end of file
diff --git a/sites/pueblo.production/conf/config.cron.ini b/sites/pueblo.production/conf/config.cron.ini
deleted file mode 100644
index 931c8d9242..0000000000
--- a/sites/pueblo.production/conf/config.cron.ini
+++ /dev/null
@@ -1,35 +0,0 @@
-# Configures the processes that cron will run when it is invoked with
-# additional information about the frequency that it is invoked.
-# The ini file should have a Processes section with the name of each process to run
-#
-# Processes should have the format:
-# - Process Name = Process Handler Class
-#
-# Each process will also have a section based on the Process Name.
-# the section should contain the following keys at a minimum
-# - description = A brief description of what the process does
-# - lastRun = the timestamp the process was last run. Blank if the process has never been run.
-# - frequencyHours = the frequency with which the process should be run in hours or 0 if it should be run each time cron runs.
-#
-# General settings can also be defined that will be sent to all processes.
-# these can include database connection information, solr settings, etc.
-
-[Processes]
-UpdateReadingHistory = com.turning_leaf_technologies.cron.reading_history.UpdateReadingHistory
-BookCoverCleanup = com.turning_leaf_technologies.cron.BookCoverCleanup
-DatabaseCleanup = com.turning_leaf_technologies.cron.DatabaseCleanup
-
-[UpdateReadingHistory]
-description = Updates reading History for the patron based on what is currently checked out.
-frequencyHours = 0
-
-[BookCoverCleanup]
-description = Cleans up any book covers that are out of date (more than 2 weeks old).
-frequencyHours = 0
-
-[DatabaseCleanup]
-description = Does cleanup of the database to remove records that are no longer needed
-frequencyHours = 0
-
-
-
diff --git a/sites/pueblo.production/conf/config.ini b/sites/pueblo.production/conf/config.ini
deleted file mode 100644
index 3cb1a339f9..0000000000
--- a/sites/pueblo.production/conf/config.ini
+++ /dev/null
@@ -1,34 +0,0 @@
-; No changes are necessary in the System Section
-[System]
-available = true
-debug = false
-timings = false
-operatingSystem = linux
-
-; This section will need to be customized for your installation
-[Site]
-local = /usr/local/aspen-discovery/code/web
-coverPath = /data/aspen-discovery/pueblo.production/covers
-url = https://catalog.pueblolibrary.org
-title = "Pueblo City-County Library"
-libraryName = Pueblo Library
-; Find valid timezone values here:
-; http://www.php.net/manual/en/timezones.php
-timezone = "America/Denver"
-
-[Catalog]
-driver = Koha
-showFines = true
-url = https://pueblopl.bywatersolutions.com/
-linking_url = https://pueblopl.bywatersolutions.com/
-staffClientUrl = https://staff-pueblopl.bywatersolutions.com
-
-; This section requires no changes for most installations
-[Index]
-url = http://localhost:8080/solr
-
-
-[Reindex]
-solrPort = 8080
-marcPath = /data/aspen-discovery/pueblo.production/ils/marc
-lexileExportPath = /data/aspen-discovery/lexileTitles.txt
diff --git a/sites/pueblo.production/conf/crontab_settings.txt b/sites/pueblo.production/conf/crontab_settings.txt
deleted file mode 100644
index 50c28461e3..0000000000
--- a/sites/pueblo.production/conf/crontab_settings.txt
+++ /dev/null
@@ -1,107 +0,0 @@
-##################
-## Crontab setting from a 'configuration' file
-##
-## to save current crontab to file: crontab -l > crontab_settings.txt
-##
-## to set the current crontab from a file : crontab < crontab_settings.txt
-##
-##################
-
-# !! Please make all changes to the crontab within the git repository system and apply through the above method.
-#
-# ie :
-# git pull origin {current branch}
-# sudo /usr/local/aspen-discovery/code/cron/check_crontab.sh pueblo.production
-# sudo crontab < /usr/local/aspen-discovery/sites/pueblo.production/conf/crontab_settings.txt
-
-###################
-# * * * * * command to execute
-# │ │ │ │ │
-# │ │ │ │ └───── day of week (0 - 6)
-# │ │ │ │ (0 to 6 are Sunday to Saturday, or use names (Sun,Mon,Tue,Wed,Thu,Fri,Sat); 7 is Sunday, the same as 0)
-# │ │ │ └────────── month (1 - 12)
-# │ │ └─────────────── day of month (1 - 31)
-# │ └──────────────────── hour (0 - 23)
-# └───────────────────────── min (0 - 59)
-## taken from https://en.wikipedia.org/wiki/Cron
-##############
-
-#############
-# Indexing Tasks #
-#############
-@reboot solr php /usr/local/aspen-discovery/code/web/cron/checkSolr.php pueblo.production
-5 2 * * * solr php /usr/local/aspen-discovery/code/web/cron/updateSuggesters.php pueblo.production
-7 3 * * * aspen php /usr/local/aspen-discovery/code/web/cron/createSitemaps.php pueblo.production
-*/2 * * * * solr php /usr/local/aspen-discovery/code/web/cron/checkSolr.php pueblo.production
-*/5 * * * * aspen php /usr/local/aspen-discovery/code/web/cron/checkBackgroundProcesses.php pueblo.production
-
-########################################################
-# Regular extracts that don't need to run continuously #
-########################################################
-0 2 * * * aspen cd /usr/local/aspen-discovery/code/oai_indexer; java -jar oai_indexer.jar pueblo.production
-0 2 * * * aspen cd /usr/local/aspen-discovery/code/reindexer; java -jar reindexer.jar pueblo.production nightly
-
-######################
-# MySQL Nightly Dump #
-######################
-# backup important bits at 12:10am daily
-10 0 * * * root php /usr/local/aspen-discovery/code/web/cron/backupAspen.php pueblo.production aspen
-
-#############################################
-# New York Times Best seller Lists Updating #
-#############################################
-00 10 * * 0-1 aspen php /usr/local/aspen-discovery/code/web/cron/updateNYTLists.php pueblo.production
-# update on Sundays and Mondays at 7:15
-
-###########################
-# Aspen Discovery Cleanup #
-###########################
-
-# Temp files
-26 0 * * * root cd /tmp; rm -rf CURLCOOKIE*
-
-# CRON for Aspen (book cover cache cleanup etc.)
-00 22 * * * aspen cd /usr/local/aspen-discovery/code/cron; java -jar cron.jar pueblo.production
-
-00 01 * * * root certbot renew
-
-############################
-# Fix Cover Permissions #
-############################
-*/15 * * * * root chown aspen:aspen_apache /data/aspen-discovery/pueblo.production/covers/original/*
-*/15 * * * * root chmod g+rw /data/aspen-discovery/pueblo.production/covers/original/*
-
-#############################
-# Refresh SAML SSO metadata #
-#############################
-00 05 * * * aspen php /usr/local/aspen-discovery/code/web/cron/refreshSsoMetadata.php pueblo.production
-
-#########################
-# Fetch Notification Receipts #
-#########################
-0 11 * * 1-5 aspen php /usr/local/aspen-discovery/code/web/cron/fetchNotificationReceipts.php pueblo.production
-
-#########################
-# Update Saved Searches #
-#########################
-0 10 * * 1-5 aspen php /usr/local/aspen-discovery/code/web/cron/updateSavedSearches.php pueblo.production
-
-#########################
-# Send Custom LiDA Notifications #
-#########################
-*/15 * * * * aspen php /usr/local/aspen-discovery/code/web/cron/sendLiDANotifications.php pueblo.production
-
-#########################
-# Run Scheduled Updates #
-#########################
-*/5 * * * * root php /usr/local/aspen-discovery/code/web/cron/runScheduledUpdate.php pueblo.production
-
-#########################
-# Update Translations from Community #
-#########################
-15 1 * * * root php /usr/local/aspen-discovery/code/web/cron/updateCommunityTranslations.php pueblo.production
-
-######################################
-# Run Clam AV Scans #
-######################################
-00 3 * * * root truncate -s0 /var/log/aspen-discovery/clam_av.log; /bin/clamscan --recursive=yes --quiet -i --exclude-dir=/var/lib/mysql --exclude-dir=/sys --exclude-dir=/data/aspen-discovery/pueblo.production/solr7/ --exclude-dir=/var/log/aspen-discovery/pueblo.production --exclude-dir=/data/aspen-discovery/pueblo.production/covers/small --exclude-dir=/data/aspen-discovery/pueblo.production/covers/medium --exclude-dir=/data/aspen-discovery/pueblo.production/covers/large --log=/var/log/aspen-discovery/clam_av.log
diff --git a/sites/pueblo.production/httpd-pueblo.production-le-ssl.conf b/sites/pueblo.production/httpd-pueblo.production-le-ssl.conf
deleted file mode 100644
index b413b84f17..0000000000
--- a/sites/pueblo.production/httpd-pueblo.production-le-ssl.conf
+++ /dev/null
@@ -1,103 +0,0 @@
-
-
- ServerName catalog.pueblolibrary.org
- ServerAlias catalog.pueblolibrary.org
- DocumentRoot "/usr/local/aspen-discovery/code/web"
- LogLevel warn
-
- SSLCertificateFile /etc/letsencrypt/live/catalog.pueblolibrary.org/cert.pem
- SSLCertificateKeyFile /etc/letsencrypt/live/catalog.pueblolibrary.org/privkey.pem
- Include /etc/letsencrypt/options-ssl-apache.conf
- SSLCertificateChainFile /etc/letsencrypt/live/catalog.pueblolibrary.org/chain.pem
-
-
- #Order allow,deny
- #allow from all
- Require all granted
- Options -Indexes -MultiViews
- AllowOverride All
-
- SetEnv aspen_server pueblo.production
- SetEnv active_library uintah
-
- # Friendly URLs
- #
- # You may need to adjust the RewriteBase to match your VuFind path.
- # You can remove the line if your vufind instance will be located at the web
- # server root.
- #
-
- RewriteEngine On
-
- # Bot Blocking
- Include /usr/local/aspen-discovery/sites/pueblo.production/conf/badBotsLocal.conf
- Include /usr/local/aspen-discovery/sites/default/conf/badBotsDefault.conf
-
- RewriteRule ^robots\.txt$ /robots.php [NC,L]
- RewriteRule ^sitemapindex\.xml$ /sitemapindex.php [NC,L]
- RewriteRule ^grouped_work_site_map(.+)$ /sitemaps/grouped_work_site_map$1 [NC,L]
-
- # Anything that is a direct php file still goes to that
- RewriteRule ^(.*?\.php).*$ $1 [NC,L]
-
- # Rewrite everything else to go through index.php
- RewriteRule ^(.*)$ index.php [NC,L]
-
-
- # Disable Magic Quotes
- php_value magic_quotes_gpc false
-
- # Session Settings
- php_value session.use_cookies 1
- php_value session.use_only_cookies 1
- # important: we want to serialize objects
- php_value session.auto_start 0
- #php_value session.cookie_secure 1
- # we should check session lifetime in "read" methods
- # since PHP cookies do not "refresh" them during activity
- # hence we leave them alive until browser closes
- php_value session.cookie_lifetime 0
- php_value session.gc_maxlifetime 6000
-
- ## Uncomment these lines if you wish to show all errors on the screen.
- #php_value display_errors 1
- #php_value error_reporting 2047
-
- # enable expirations
-
- ExpiresActive On
- ExpiresByType image/gif "access plus 1 month"
- ExpiresByType image/png "access plus 1 month"
- ExpiresByType image/jpg "access plus 1 month"
- ExpiresByType image/jpeg "access plus 1 month"
- ExpiresByType image/x-icon "access plus 1 month"
- ExpiresByType text/css "access plus 2 weeks"
- ExpiresByType application/javascript "access plus 2 weeks"
-
-
- #Enable deflating (gzip) of content
-
- # Insert filter
- SetOutputFilter DEFLATE
-
- # Netscape 4.x has some problems...
- BrowserMatch ^Mozilla/4 gzip-only-text/html
-
- # Netscape 4.06-4.08 have some more problems
- BrowserMatch ^Mozilla/4\.0[678] no-gzip
-
- # MSIE masquerades as Netscape, but it is fine
- # BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
-
- # NOTE: Due to a bug in mod_setenvif up to Apache 2.0.48
- # the above regex won't work. You can use the following
- # workaround to get the desired effect:
- BrowserMatch \bMSI[E] !no-gzip !gzip-only-text/html
-
- # Don't compress images
- SetEnvIfNoCase Request_URI \
- \.(?:gif|jpe?g|png)$ no-gzip dont-vary
-
-
-
-
diff --git a/sites/pueblo.production/httpd-pueblo.production.conf b/sites/pueblo.production/httpd-pueblo.production.conf
deleted file mode 100644
index c9f4805be6..0000000000
--- a/sites/pueblo.production/httpd-pueblo.production.conf
+++ /dev/null
@@ -1,7 +0,0 @@
-
-
- ServerName catalog.pueblolibrary.org
-
- Redirect permanent / https://catalog.pueblolibrary.org/
-
-
diff --git a/sites/pueblo.production/pueblo.production.sh b/sites/pueblo.production/pueblo.production.sh
deleted file mode 100755
index 22c7f531bb..0000000000
--- a/sites/pueblo.production/pueblo.production.sh
+++ /dev/null
@@ -1,16 +0,0 @@
-#!/bin/sh
-
-if [ -z "$1" ]
- then
- echo "To use, run with start, stop or restart for the first parameter."
-fi
-
-if [[ ( "$1" == "stop" ) || ( "$1" == "restart") ]]
- then
- /usr/local/aspen-discovery/sites/default/solr-8.11.2/bin/solr stop -p 8080 -s "/data/aspen-discovery/pueblo.production/solr7" -d "/usr/local/aspen-discovery/sites/default/solr-8.11.2/server"
-fi
-
-if [[ ( "$1" == "start" ) || ( "$1" == "restart") ]]
- then
- /usr/local/aspen-discovery/sites/default/solr-8.11.2/bin/solr start -m 6g -p 8080 -s "/data/aspen-discovery/pueblo.production/solr7" -d "/usr/local/aspen-discovery/sites/default/solr-8.11.2/server"
-fi