GithubHelp home page GithubHelp logo

collectiveaccess / pawtucket2 Goto Github PK

View Code? Open in Web Editor NEW
82.0 82.0 73.0 1.1 GB

Pawtucket Improved

License: GNU General Public License v3.0

PHP 80.63% HTML 2.39% CSS 1.51% JavaScript 12.77% Shell 0.01% PowerShell 0.01% Smarty 0.16% Batchfile 0.01% Pascal 0.12% TypeScript 1.07% TSQL 0.01% SCSS 0.33% Handlebars 0.04% Less 0.97% Hack 0.01%

pawtucket2's People

Contributors

collectiveaccess avatar dependabot[bot] avatar gautiermichelin avatar gjerdery avatar inquisite avatar jcamac01 avatar juliaweist avatar kehh avatar mariamotorina avatar miqrogroove avatar mwbenowitz avatar olivierb2 avatar sethkaufman avatar sethlundst avatar stockmind avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

pawtucket2's Issues

Object_x_Object Search Results are Not Helpful

When searching for a keyword in Pawtucket, the search results include objects that don't have that keyword anywhere, except that there is an object_x_object relationship to a different object that does have the keyword in its title. Both objects get displayed in the search results, even though one of them seems to be mostly irrelevant to the keyword.

# Index names of related objects
related = {
fields = {
name = { BOOST = 100, INDEX_ANCESTORS, INDEX_ANCESTORS_START_AT_LEVEL = 0, INDEX_ANCESTORS_MAX_NUMBER_OF_LEVELS = 4, INDEX_ANCESTORS_AS_PATH_WITH_DELIMITER = . }
}
}

Where related objects are desired in search results, this should be limited to specific relationship_type values rather than assuming all related objects are needed.

Criteria not being rendered when _search facet

I have narrowed down an issue where the criteria listing is showing blank if the criteria is of type _search

In this commit c9cd425 on line 415 of app/controllers/SearchController.php

If I comment this block out, then it works as I am expecting.

It detects the criteria as existing, but $criterion['value'] is empty.

Best way to reproduce this is to do a search on the _fulltext field of the advanced search, or via the 'search within results' of the browse.

Get related objects has started failing in detail view

Using this snippet:

{{{<ifcount code="ca_objects" min="2">
		<div class="container">
			<h2>Items in Collection</h2>
			<div class="row">
				<div id="browseResultsContainer">
					<?php print caBusyIndicatorIcon($this->request).' '.addslashes(_t('Loading...')); ?>
				</div><!-- end browseResultsContainer -->
			</div><!-- end row -->
		</div>
			<script type="text/javascript">
				jQuery(document).ready(function() {
					jQuery("#browseResultsContainer").load("<?php print caNavUrl($this->request, '', 'Search', 'objects', array('search' => 'collection_id:^ca_collections.collection_id'), array('dontURLEncodeParameters' => true)); ?>", function() {
						jQuery('#browseResultsContainer').jscroll({
							autoTrigger: true,
							loadingHtml: '<?php print caBusyIndicatorIcon($this->request).' '.addslashes(_t('Loading...')); ?>',
							padding: 20,
							nextSelector: 'a.jscroll-next'
						});
					});
					
					
				});
			</script>
		</ifcount>}}}

Which was working the last time I looked (couple of weeks ago?). Has started to produce this

Screenshot 2024-05-16 at 4 49 58 PM

Happens in the collections detail as above and entities detail views when trying to get a search result of related objects (the entity view has related objects and collections done the same way and only objects throws the error)

Access points not searching as AND boolean

When searching on multiple access points with AND or no boolean, it is return results as if you searched with OR.
eg. type_id='journal' AND abstract='text to search' This returns all results as an OR boolean instead.

If you search on the same fields using full notion (eg. ca_objects.typeid='journal' AND ca_objects.abstract="text to search") then it returned as you would expect.

caUtils error

When a start support/bin/caUtils a get this error:
PHP Fatal error: Trait method replicate_data has not been applied, because there are collisions with other trait methods on CLIUtils in /var/www/html/providence/pawtucket2/app/lib/Utils/CLIUtils.php on line 51

Invalid Repetitious Template for Occurrences

The default theme repeatedly uses a variable named ca_occurrences.displaye_exhibition however there is no mention of this in any of the default profiles, and there would be no reason to display the same value multiple times for the same unit.

{{{<unit relativeTo="ca_occurrences.related" delimiter="<br/>"><p><l>^ca_occurrences.displaye_exhibition</l> (^relationship_typename)</p></unit>}}}
<!-- Gruppenausstellungen -->
{{{<ifcount code="ca_occurrences.related" min="1" max="1" restrictToTypes="exhibition_group"><H6>Related group show</H6></ifcount>}}}
{{{<ifcount code="ca_occurrences.related" min="2" restrictToTypes="exhibition_group"><H6>Related group shows</H6></ifcount>}}}
{{{<unit relativeTo="ca_occurrences.related" delimiter="<br/>"><p><l>^ca_occurrences.displaye_exhibition</l> (^relationship_typename)</p></unit>}}}

Restore advanced search form autocomplete functionality

There is currently limited support for autocomplete lookups in the advanced search form facility. We should, at a minimum, extend the current implementation to:

  1. Actually work :-)
  2. Support collection record lookups
  3. Support authority metadata elements

"Share This Item" Generates Email Blob

After clicking the "Share" link on a Details page and completing the email form, Pawtucket generates a multipart message including what appears to be a malformed thumbnail attachment. The payload begins with:

Content-Type: application/octet-stream
Content-Transfer-Encoding: base64
Content-Disposition: attachment

After that, my email client creates a generic filename with no extension. I had to open this in a text editor to find out that it was supposed to be an image. So, this is taking up space in the message and doing nothing else.

Detail Thumbnails Sometimes Link to Wrong Image

When an object has several representations, scrolling through the images on the Detail page doesn't work. After loading or reloading the page, clicking any thumbnail other than the first one will advance to the wrong image.

PHP Fatal Error, replicate_data method

public static function replicate_data($po_opts=null) {

Some sneaky extra lines of code have duplicated themselves into the importExport.php from Replication.php.

edit: Looks like there were meant to be removed from importExport.php when Replication.php was created. :)

When trying to run caUtils from pawtucket, getting the following error
PHP Fatal error: Trait method replicate_data has not been applied, because there are collisions with other trait methods on CLIUtils in /var/www/html/pawtucket/app/lib/Utils/CLIUtils.php on line 51

Templates tags not showing in site page content in order

Not sure if I should log this on the providence side or the pawtucket side...

If I have a template (.tmpl) in pawtucket, that has tags {{{ }}} inside a php if statement eg.

<?php 			
	if($howtouse){ 
?>
		<h3>How to use this guide</h3>
		<div>{{{howtouse}}}</div>
<?php 
	} 
?>	

then those tags don't show in the site page content bundle in providence in the order they are used on the page. All tags inside php ifs are put to the bottom.

Bug, or by design?

dev/php8

themeHelpers: SQL broken when browsing Object_lots

Attempting to browse Ca_Object_lots will throw an error: "Object_lots: Not unique table/alias: 'ca_objects' in /...."

Unless the SQL is modified (in themeHelpers.php) adding "as ca_objectsx":

$vs_sql = "SELECT DISTINCT ca_object_representations.media, {$vs_table}.{$vs_pk}
FROM {$vs_table}
INNER JOIN {$vs_linking_table} ON {$vs_linking_table}.{$vs_pk} = {$vs_table}.{$vs_pk}
INNER JOIN ca_objects as ca_objectsx ON ca_objects.object_id = {$vs_linking_table}.object_id
INNER JOIN ca_objects_x_object_representations ON ca_objects_x_object_representations.object_id = ca_objects.object_id
INNER JOIN ca_object_representations ON ca_object_representations.representation_id = ca_objects_x_object_representations.representation_id
WHERE
ca_objects_x_object_representations.is_primary = 1 {$vs_access_wheres} {$vs_rel_type_where} {$vs_type_where} {$vs_id_sql}";

And changing $va_access_wheres to:
$vs_access_wheres = " AND ca_objectsx.access IN (".join(",", $pa_access_values).") AND ca_object_representations.access IN (".join(",", $pa_access_values).")";

Collection facet not showing top level

I have a dev system with both providence and pawtucket on the newest dev/php8 (pulled today).

It's set up with the ca_objects_x_collections_hierarchy_enabled.

The following facet is set in both providence and pawtucket under ca_objects

    collection_facet = {
			type = authority,
			table = ca_collections,
			relationship_table = ca_objects_x_collections,
			restrict_to_types = [],
			restrict_to_relationship_types = [],
			
			group_mode = alphabetical,
			
			label_singular = _("collection"),
			label_plural = _("collections")
		},

In providence it shows all levels of the hierarchy (collection, series etc) even if it's not the direct parent, and if I restrict_to_types = [collection] then it will only show the top level... this is what I am after.

but in Pawtucket, it will only show the immediate collection related to the object and if I was the restrict to collection type, then only top level collections directly related to the object will show.

Is there something in indexing causing this, or have I found a bug?

Thank you.
Monica

Wikipedia InformationService not retrieving information

Hello,

I recently discovered that the InformationService for Wikipedia is not able to retrieve the information in our project. After some investigation I found that the Wikipedia API is responding with the following error:

{"error":{"code":"badinteger","info":"Invalid value \"200px\" for integer parameter \"pithumbsize\".","*":"See https://de.wikipedia.org/w/api.php for API usage. Subscribe to the mediawiki-api-announce mailing list at &lt;https://lists.wikimedia.org/mailman/listinfo/mediawiki-api-announce&gt; for notice of API deprecations and breaking changes."},"servedby":"mw1277"}

I reckon this problem arises due to a change in the API. I tackled the problem by removing the 'px' in the InformationService for Wikipedia:

Can you confirm that this change is correct and maybe implement it?

Best regards and stay healthy!

Searching on open quotes causes fatal error

Performing a search in Pawtucket with one set of quotation marks at the start of a phrase or word ("new york) causes the following fatal error:

Fatal error: Uncaught Error: Call to undefined method Zend_Search_Lucene_Index_Term::getTerm() in /var/www/pawtucket/app/helpers/searchHelpers.php:883 Stack trace: #0 /var/www/pawtucket/app/lib/pawtucket/BaseMultiSearchController.php(95): caGetDisplayStringForSearch('"new york') #1 /var/www/pawtucket/app/controllers/MultiSearchController.php(59): BaseMultiSearchController->Index(NULL) #2 /var/www/pawtucket/app/lib/Controller/RequestDispatcher.php(281): MultiSearchController->Index(NULL) #3 /var/www/pawtucket/app/lib/Controller/AppController.php(113): RequestDispatcher->dispatch(Array) #4 /var/www/pawtucket/index.php(132): AppController->dispatch(true) #5 {main} thrown in /var/www/pawtucket/app/helpers/searchHelpers.php on line 883

Quotes elsewhere in the search bar are fine (new york" / "new york" / new " york).

We are currently running 1.7.13 for Pawtucket and 1.7.17 for Providence. This issue is occurring our our digital collections site (https://digital.archives.newschool.edu) as well as others (for example: https://kress.nga.gov/).

Pawtucket is behind Providence because the updated version ignores hyphens in record identifiers, and prevents those pages from loading.

Filename Corruption Upon Download

Steps to reproduce bug:

  • Upload a media file containing an ampersand (&) in the name.
  • First tested with the BinaryFile plugin. For example, John & Jane.pspimage
  • Additional testing showed same result with JPG files when downloading through Pawtucket.

Expected result:

  • Name should appear correctly in the media section.
  • Upon clicking the Download link in Pawtucket, the original filename or a reasonable substitute should be provided.

Actual result:

  • Name is correct in media section.
  • Upon download, the provided filename is corrupted like John_&amp with incomplete name and no extension.

Workaround:

It would be necessary to change the filename prior to upload. I had attempted to add the Original filename field to the Object representation editor; it displays the name but will not save any changes.

Carousel Slides in Wrong Order

When loading an object Details page in v1.7.15, the carousel slides are in ascending numerical order by representation ID. The detailRepresentationThumbnails on the other hand are in catalog order. This discrepancy causes unexpected behavior of the left and right arrow clicks.

This is a continuation of problems described in #38.

Suspected bug in SearchResult.php with access control

Hi,
with Pawtucket 1.7.11, with access control on, using the "sibling" filter for formatting in ca_objects_default_html.php as p.e.

results in the error pasted below.
It is caused by the
{$vs_access_sql} clause in the SQL instruction
$vs_sql = "
SELECT t.{$vs_pk}, t.{$vs_parent_id_fld}, p.{$vs_pk} sibling_id
FROM {$ps_tablename} AS t
INNER JOIN {$ps_tablename} AS p ON t.{$vs_parent_id_fld} = p.{$vs_parent_id_fld}
WHERE
t.{$vs_pk} IN (?)".($t_rel_instance->hasField('deleted') ? " AND (t.deleted = 0) AND (p.deleted = 0)" : "")."
{$vs_type_sql}
-- {$vs_access_sql}
";
on line 601 in SearchResult.php
I suppressed the clause and the error no longer shows up. There is no functionality change in my case but I suspect this is a bug.
Thanks,
Etienne


Something went wrong
Unknown column 'ca_objects.access' in 'where clause' in /home/augusteb/www/CA/CA_EM/vision/app/lib/Db/mysqli.php line 316:

In Db_mysqli->execute(Object DbStatement, Object DbStatement, ' SELECT t.object_id, t.parent_id, p.object_id sibling_id FROM ca_objects AS t INNER JOIN ca_objects AS p ON t.parent_id = p.parent_id WHERE t.object_id IN (?) AND (t.deleted = 0) AND (p.deleted = 0) AND (ca_objects.access IN (1)) ', Array(1), ) in DbStatement line 151
At DbStatement->executeWithParamsAsArray(Array(1), ) in Db line 259
At Db->query(' SELECT t.object_id, t.parent_id, p.object_id sibling_id FROM ca_objects AS t INNER JOIN ca_objects AS p ON t.parent_id = p.parent_id WHERE t.object_id IN (?) AND (t.deleted = 0) AND (p.deleted = 0) AND (ca_objects.access IN (1)) ', Array(1)) in SearchResult line 611
At SearchResult->prefetchHierarchySiblings('ca_objects', 0, 50, Array(13)) in SearchResult line 1466
At SearchResult->get('ca_objects.siblings.object_id', Array(13)) in ObjectSearchResult line 104
At ObjectSearchResult->get('ca_objects.siblings.object_id', Array(11)) in DisplayTemplateParser line 601
At DisplayTemplateParser::_processChildren(Object ObjectSearchResult, Array(1), Array(0), Array(3)) in DisplayTemplateParser line 426
At DisplayTemplateParser::_processChildren(Object ObjectSearchResult, Array(3), Array(1), Array(3)) in DisplayTemplateParser line 852
At DisplayTemplateParser::_processChildren(Object ObjectSearchResult, Array(2), Array(1), Array(3)) in DisplayTemplateParser line 259
At DisplayTemplateParser::process('
^ca_objects.preferred_labels.name^ca_objects.preferred_labels.name
', 'ca_objects', Array(1), Array(2)) in DisplayTemplateParser line 59
At DisplayTemplateParser::evaluate('
^ca_objects.preferred_labels.name^ca_objects.preferred_labels.name
', 'ca_objects', Array(1), Array(1)) in displayHelpers line 2452
At caProcessTemplateForIDs('
^ca_objects.preferred_labels.name^ca_objects.preferred_labels.name
', 'ca_objects', Array(1), Array(1)) in BundlableLabelableBaseModelWithAttributes line 690
At BundlableLabelableBaseModelWithAttributes->getWithTemplate('
^ca_objects.preferred_labels.name^ca_objects.preferred_labels.name
', Array(1)) in displayHelpers line 4330
At caDoTemplateTagSubstitution(Object View, Object ca_objects, 'Details/ca_objects_default_html.php', Array(1)) in DetailController line 476
At DetailController->__call('objects', Array(1)) in RequestDispatcher line 273
At RequestDispatcher->dispatch(Array(2)) in AppController line 113
At AppController->dispatch(true) in index line 124

Request parameters:

collectiveaccess => 3d3033c7-25e5-409c-89a3-d0e45fd3c5cc
CA_collectiveaccess_ui_locale => fr_FR

"Back" Link on Object Details Throws Error 500

If I navigate from a collection details page to an object details page, it shows a Back link in the upper-left corner. This link never works. It causes a long delay, followed by a server error.

PHP error log excerpt:

[01-May-2023 09:30:58 America/New_York] PHP Fatal error:  Allowed memory size of 134217728 bytes exhausted (tried to allocate 3221344 bytes) in app/lib/View.php on line 331
[01-May-2023 09:30:58 America/New_York] PHP Fatal error:  Allowed memory size of 134217728 bytes exhausted (tried to allocate 3227648 bytes) in Unknown on line 0

Back link source:

	<div class='navLeftRight col-xs-1 col-sm-1 col-md-1 col-lg-1'>
		<div class="detailNavBgLeft">
			<a href='/Browse/objects/facet/row_id/4227/key/ecc7411b22d8481e480b6140ebe83778'><i class='fa fa-angle-double-left'></i><div class='small'>Back</div></a>
		</div><!-- end detailNavBgLeft -->
	</div><!-- end col -->

Workaround:

Remove all references to {{{resultsLink}}} from theme file ca_objects_default_html.php to hide the Back link.

Frequent PHP Warnings

Seeing this several times per day:

PHP Warning: join(): Invalid arguments passed in themes/default/views/system/fatal_error_html.php on line 52

for reference...

print "<li>".(($vn_i == 0) ? "In " : "At ").$va_trace['class'].$va_trace['type'].$va_trace['function']."(".join(', ', $pa_errcontext_args[$vn_i]).") in <a class='tracelistEntry' title='".$va_trace['file']."' ondblclick='var f=this.innerHTML;this.innerHTML=this.title;this.title=f;'>".pathinfo($va_trace['file'], PATHINFO_FILENAME)."</a> line ".$va_trace['line']."</li>\n";

external_applications.conf to be brought inline with providence?

I was having issues on php8 branch with printing detail pages to PDF as it didn't seem to be obeying the css file.
I finally narrowed it down to not using wkhtmltopdf library as the external_applications only has it pointed to the one place /usr/bin/local instead of multiple location. I copied the providence conf over to pawtucket and the pdf generation started to work correctly.

I am unsure if some of the applications listed in the pawtucket conf (but not in the providence conf) are still needed or not, so didn't want to just submit a pull request with a providence copy.

Date Search Broken?

When I navigate to /Search/advanced/objects it shows this label with no corresponding input element:

DATE RANGE (E.G. 1970-1979)

The raw output looks like this:

	<div class='row'>
		<div class="advancedSearchField col-sm-12">
			<span class='formLabel' data-toggle="popover" data-trigger="hover" data-content="Search records of a particular date or date range.">Date range <i>(e.g. 1970-1979)</i></span>
			
		</div>
	</div>

Using Pawtucket 1.7.15

For reference...

<div class="advancedSearchField col-sm-12">
<span class='formLabel' data-toggle="popover" data-trigger="hover" data-content="Search records of a particular date or date range.">Date range <i>(e.g. 1970-1979)</i></span>
{{{ca_objects.dates.dates_value%width=200px&height=40px&useDatePicker=0}}}
</div>

Detail Thumbnails Don't Work With > 2 Representations

This is the third bug previously described as part of #38

When an object Detail page has more than 2 representations, clicking the thumbnails in a non-sequential order sometimes has one of these undesirable effects:

  1. Sometimes nothing happens (carousel does not scroll).
  2. Sometimes the carousel scrolls but becomes blank (as if HTML is missing).

For the first item above, I have so far determined that the onclick event always runs as expected, but the animateend event does not. I'm experimenting with the scroll method call to find out why it sometimes works and sometimes doesn't. The problem is not totally about thumbnail clicks. If I click on the last thumbnail, then click the arrow for the previous item, the previous item will not scroll by that method either.

To better summarize the behavior:

The carousel will scroll forward to any thumbnail in the sequence, but will fail to scroll to any previous thumbnail unless it was already initialized by a forward scroll.

For the second item above, the carousel is scrolling too far in some situations. It happens most often with objects having a thumbnail with a taller aspect in the last position than in the first position. If the first thumbnail has a taller aspect, then the bug does not happen.

Tags Point to Keyword Search Instead of Tag Search

As discussed in the support forum https://support.collectiveaccess.org/d/301077-301077/2

When tags are displayed on detail pages, the links point to a general search page that always displays results that are not tagged.

This is caused by a mistake in one of the app helper functions here...

$va_tag_links[] = caNavLink($po_request, $vs_tag, '', '', 'MultiSearch', 'Index', array('search' => $vs_tag));

Composer error when using PHP 7.3

Pawtucket Master branch is presenting this error when installing from Master on MacOS Monterey using Homebrew:
Fatal error: Composer detected issues in your platform: Your Composer dependencies require a PHP version ">= 7.4.0". You are running 7.3.33. in /path/to/pawtucket/vendor/composer/platform_check.php on line 24

If I run composer install the issue resolves.

The release notes say it should run in PHP 7.3

Providence does not cause this error

Password Handling Failure

I just got my Pawtucket site set up and connected to Providence for the first time.

While surfing the Pawtucket features, I logged in using the default credentials admin:h3r1tag3

I then went to the profile page and attempted to reset my password. I used a random password generator and pasted this new password into both fields, exactly:

R=ZL["e\v^ys";5K

I am now unable to login using either password and effectively locked out of both websites. This seems to represent a major bug in the Collective Access password I/O. At this time I do not have any reason to believe it represents a security issue.

using providence develop branch database, pawtucket search gives ca_search_log foreign key constraint failure

using providence develop branch database, searching for any term in pawtucket, or clicking a collection hierarchy link for an object results in:

Cannot add or update a child row: a foreign key constraint fails (`providencedev`.`ca_search_log`, CONSTRAINT `fk_ca_search_log_user_id` FOREIGN KEY (`user_id`) REFERENCES `ca_users` (`user_id`)) in /usr/share/nginx/html/pawtucket/app/lib/Db/mysqli.php line 316:

Warning: join(): Invalid arguments passed in /usr/share/nginx/html/pawtucket/themes/default/views/system/fatal_error_html.php on line 52
In Db_mysqli->execute() in DbStatement line 151

Warning: join(): Invalid arguments passed in /usr/share/nginx/html/pawtucket/themes/default/views/system/fatal_error_html.php on line 52
At DbStatement->executeWithParamsAsArray() in Db line 261

Warning: join(): Invalid arguments passed in /usr/share/nginx/html/pawtucket/themes/default/views/system/fatal_error_html.php on line 52
At Db->query() in Searchlog line 58

Warning: join(): Invalid arguments passed in /usr/share/nginx/html/pawtucket/themes/default/views/system/fatal_error_html.php on line 52
At Searchlog->log() in SearchEngine line 373

Warning: join(): Invalid arguments passed in /usr/share/nginx/html/pawtucket/themes/default/views/system/fatal_error_html.php on line 52
At SearchEngine->doSearch() in CollectionSearch line 50

Warning: join(): Invalid arguments passed in /usr/share/nginx/html/pawtucket/themes/default/views/system/fatal_error_html.php on line 52
At CollectionSearch->search() in searchHelpers line 449

Warning: join(): Invalid arguments passed in /usr/share/nginx/html/pawtucket/themes/default/views/system/fatal_error_html.php on line 52
At caPuppySearch() in BaseMultiSearchController line 104

Warning: join(): Invalid arguments passed in /usr/share/nginx/html/pawtucket/themes/default/views/system/fatal_error_html.php on line 52
At BaseMultiSearchController->Index() in MultiSearchController line 59

Warning: join(): Invalid arguments passed in /usr/share/nginx/html/pawtucket/themes/default/views/system/fatal_error_html.php on line 52
At MultiSearchController->Index() in RequestDispatcher line 273

Warning: join(): Invalid arguments passed in /usr/share/nginx/html/pawtucket/themes/default/views/system/fatal_error_html.php on line 52
At RequestDispatcher->dispatch() in AppController line 113

Warning: join(): Invalid arguments passed in /usr/share/nginx/html/pawtucket/themes/default/views/system/fatal_error_html.php on line 52
At AppController->dispatch() in index line 124

Image Viewer Needs Touch Support

Is there an updated version of the included image viewer? It works great with a mouse and keyboard, but on my touch screen I can't pan or pinch zoom at all.

Dropdown lists are not populated according to chosen locale

Hi,
I currently maintain a Pawtucket installation with dual language support (English/Arabic) that utilizes an advanced search form. The search functionality is robust, leveraging several metadata elements as search fields. However, I've encountered this issues that I'm seeking assistance with.

The Issue is that dropdown list do not get populated with appropriate locale values

When I switch the language/locale, the dropdown list associated with a metadata element of type "list" fails to repopulate with the new locale-specific values. Currently, I have to manually clear both Pawtucket and browser caches to ensure that the dropdown list reflects the appropriate locale values. I reached with this issue at gitter . and Monica suggested to report this issue.

Entities without IDs do not reolve when use_identifiers_in_urls = 1

We've copied things to a new server, updated from 1.7.9 to 1.7.13 (db schema 158), and created a new theme.

When use_identifiers_in_urls was set to 0 in the new theme, the URLs resolved correctly. When we changed the value to 1, entities without IDs no longer resolve and the URL encoding seems to not work. We did not have this issue in our past installation. I'm trying to track down where this is happening. Here are examples from the 2 servers old and new.
Old install: https://digitalarchives.library.newschool.edu/index.php/Detail/people/id%3A4079
New Install: https://dev-digital.archives.newschool.edu/index.php/Detail/entities/id%3A4079

if you manually replace the '%3A' with the deencoded ':', the URL resolves correctly.

Composer error when installing or branching to dev/php8

The following error occurs when branching to dev/php8 from current master. I reverted to develop for now. With develop I am able to connect to a Providence dev/php8 instance which is running without issue on same server.

Automatic installation of the required vendor libraries failed: Library installation failed: Installing dependencies from lock file (including require-dev); Verifying lock file contents can be installed on current platform.; Warning: The lock file is not up to date with the latest changes in composer.json. You may be getting outdated dependencies. It is recommended that you run composer updateorcomposer update .; - Required package "caseyamcl/phpoaipmh" is not present in the lock file.; - Required package "collectiveaccess/service-wrapper" is not present in the lock file.; - Required package "dompdf/dompdf" is not present in the lock file.; - Required package "easyrdf/easyrdf" is not present in the lock file.; - Required package "elasticsearch/elasticsearch" is not present in the lock file.; - Required package "ezyang/htmlpurifier" is not present in the lock file.; - Required package "guzzlehttp/guzzle" is not present in the lock file.; - Required package "guzzlehttp/psr7" is not present in the lock file.; - Required package "james-heinrich/getid3" is not present in the lock file.; - Required package "joshralph/password-policy" is not present in the lock file.; - Required package "knplabs/github-api" is not present in the lock file.; - Required package "laminas/laminas-stdlib" is not present in the lock file.; - Required package "laminas/laminas-escaper" is not present in the lock file.; - Required package "league/climate" is not present in the lock file.; - Required package "league/flysystem-aws-s3-v3" is not present in the lock file.; - Required package "league/flysystem-cached-adapter" is not present in the lock file.; - Required package "league/flysystem-webdav" is not present in the lock file.; - Required package "league/flysystem-ziparchive" is not present in the lock file.; - Required package "magento/zendframework1" is not present in the lock file.; - Required package "maximebf/debugbar" is not present in the lock file.; - Required package "monolog/monolog" is not present in the lock file.; - Required package "opis/json-schema" is not present in the lock file.; - Required package "pear/file_marc" is not present in the lock file.; - Required package "phpoffice/phppresentation" is not present in the lock file.; - Required package "phpoffice/phpspreadsheet" is not present in the lock file.; - Required package "phpoffice/phpword" is not present in the lock file.; - Required package "phpunit/phpunit" is not present in the lock file.; - Required package "srmklive/flysystem-dropbox-v2" is not present in the lock file.; - Required package "webonyx/graphql-php" is not present in the lock file.; - Required package "zendframework/zend-stdlib" is not present in the lock file.; - Required package "ankitpokhrel/tus-php" is not present in the lock file.; - Required package "tedivm/stash" is not present in the lock file.; - Required package "firebase/php-jwt" is not present in the lock file.; - Required package "softonic/graphql-client" is not present in the lock file.; - Required package "whikloj/bagittools" is not present in the lock file.; - Required package "voku/stop-words" is not present in the lock file.; - Required package "tecnickcom/tc-lib-barcode" is not present in the lock file.; - Required package "symfony/process" is not present in the lock file.; - Required package "deeplcom/deepl-php" is not present in the lock file.; - Required package "google/cloud-translate" is not present in the lock file.; - Required package "phpmailer/phpmailer" is not present in the lock file.; This usually happens when composer files are incorrectly merged or the composer.json file is manually edited.; Read more about correctly resolving merge conflicts https://getcomposer.org/doc/articles/resolving-merge-conflicts.md; and prefer using the "require" command over editing the composer.json file directly https://getcomposer.org/doc/03-cli.md#require-r

Timeline doesn't handle Intrinsics

Timeline doesn't work with intrinsic data sources, such as lifespan.
The problem could be caused by BaseFindEngine.php function _sortByIntrinsic()
not being aware of intrinsic fields that are not table fields.

Fatal Error When Root Node is Accessible

After setting the Places root node Access level to "accessible to public" in Providence, then attempting to visit /Detail/places/1 in Pawtucket results in a status 500 and the following log entry:

PHP Fatal error:  Uncaught Error: Call to a member function getHierarchyAncestors() on null in app/controllers/DetailController.php:455
Stack trace:
#0 app/lib/Controller/RequestDispatcher.php(273): DetailController->__call()
#1 app/lib/Controller/AppController.php(113): RequestDispatcher->dispatch()
#2 index.php(124): AppController->dispatch()
#3 {main}
  thrown in app/controllers/DetailController.php on line 455

Using version 1.7.15.

I haven't figured out why exactly, but the root node type was NULL in the database. This is the "DACS Coverage Authority" root node. Changing the node type through Providence causes the error to disappear.

Multiple images attached to one object

In a response to my posting on the Support Forum, Monica suggested that I submit the
following behavior as a likely bug:

I am using the dev/php8.1 branch of Pawtucket2. My issue is with multiple representations attached to an object. When there is only one single image attached, pulling up the info on the object displays everything perfectly fine. When there are
multiple images attached, jcarousel displays the thumbnails fine. However, upon clicking a thumbnail or the arrows, there is always one image that will not be displayed in full, nor will its caption show. It is always the last image listed in Providence, except when that last image is the primary representation, in which case the penultimate image will not show. As far as I can tell, this behavior does not occur in Providence.

Monica suggested this behavior might be a counter issue and for what it is worth, I agree.

Detail Carousel Doesn't Work With > 2 Representations

After more testing, it looks like the carousel on the object Detail page is initialized incorrectly and as a result will only work when there are exactly 1 or 2 representations attached to an object. Any more than that and it is necessary to click through all of the slides before the carousel is properly initialized.

Note 1: The TileViewer is not affected by this bug. After clicking to enlarge, the little links at the bottom of the viewer will advance through the images as expected.

Note 2: The Gallery carousel is not affected by this bug. That one works as expected.

Note 3: Much of the carousel code lives in https://github.com/collectiveaccess/pawtucket2/blob/master/themes/default/views/bundles/representation_viewer_html.php

Note 4: The carousel is invoked by

Reference to manuscriptcookbook inside Maps plugin

Hello,

At this line :

$vs_buf .= " caMap_{$vs_id}_markers.push(caMap_{$vs_id}.makeMarker(".$vn_latitude.", ".$vn_longitude.", '".preg_replace("![\n\r]+!", " ", addslashes($vs_label))."', '".preg_replace("![\n\r]+!", " ", addslashes($vs_balloon_content))."', '".preg_replace("![\n\r]+!", " ", ($vs_ajax_content_url ? addslashes($vs_ajax_content_url."/_ajax/1/id/".join(';', $va_ajax_ids)) : ''))."', {icon: 'http://manuscriptcookbook.whirl-i-gig.com/pawtucket/assets/ca/js/mcs_marker.png'} ));\n";
and 3/4 lines after that is a reference to :
http://manuscriptcookbook.whirl-i-gig.com/pawtucket/assets/ca/js/mcs_marker.png

The image is not there on this server, but it is there inside pawtucket/assets/ca/js/mcs_marker.png

relationship_typename Still Backward in 1.7.15

In Providence, I still have, for example, an object where I added a relationship to a place, showing "was created at".

In Pawtucket 1.7.15, the default theme detail view of the object says "was creation location of".

I thought this was fixed already?

MultiSearch Sorted by Relevance, Full Results Sorted by ID

When using the Search box in the default theme, I'm sent to /MultiSearch/Index with results sorted by relevance. This is useful because some search results are low relevance due to matching things like an object's collection's meta values.

When I click the "FULL RESULTS" link, I'm sent to /Search/objects/search/ where the only sort options are Identifier and Title.

This inconsistency can be very frustrating.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.