=head1 systempreferences.pl
-ALGO :
+ALSO :
this script use an $op to know what to do.
if $op is empty or none of the above values,
- the default screen is build (with all records, or filtered datas).
use warnings;
use CGI;
+use MIME::Base64;
use C4::Auth;
use C4::Context;
use C4::Koha;
my %tabsysprefs;
# Acquisitions
-$tabsysprefs{acquisitions} = "Acquisitions";
-$tabsysprefs{gist} = "Acquisitions";
-$tabsysprefs{emailPurchaseSuggestions} = "Acquisitions";
-$tabsysprefs{RenewSerialAddsSuggestion} = "Acquisitions";
+ $tabsysprefs{acquisitions}="Acquisitions";
+ $tabsysprefs{gist}="Acquisitions";
+ $tabsysprefs{emailPurchaseSuggestions}="Acquisitions";
+ $tabsysprefs{RenewSerialAddsSuggestion}="Acquisitions";
+ $tabsysprefs{AcqCreateItem}="Acquisitions";
+ $tabsysprefs{OrderPdfFormat}="Acquisitions";
+ $tabsysprefs{OrderPdfTemplate}="Acquisitions";
+ $tabsysprefs{CurrencyFormat}="Acquisitions";
# Admin
$tabsysprefs{singleBranchMode} = "Admin";
$tabsysprefs{BiblioAddsAuthorities} = "Authorities";
# Cataloguing
-$tabsysprefs{advancedMARCEditor} = "Cataloguing";
-$tabsysprefs{autoBarcode} = "Cataloguing";
-$tabsysprefs{hide_marc} = "Cataloguing";
-$tabsysprefs{IntranetBiblioDefaultView} = "Cataloguing";
-$tabsysprefs{ISBD} = "Cataloguing";
-$tabsysprefs{itemcallnumber} = "Cataloguing";
-$tabsysprefs{LabelMARCView} = "Cataloguing";
-$tabsysprefs{marc} = "Cataloguing";
-$tabsysprefs{marcflavour} = "Cataloguing";
-$tabsysprefs{MARCOrgCode} = "Cataloguing";
-$tabsysprefs{z3950AuthorAuthFields} = "Cataloguing";
-$tabsysprefs{z3950NormalizeAuthor} = "Cataloguing";
-$tabsysprefs{Stemming} = "Cataloguing";
-$tabsysprefs{WeightFields} = "Cataloguing";
-$tabsysprefs{NoZebra} = "Cataloguing";
-$tabsysprefs{NoZebraIndexes} = "Cataloguing";
-$tabsysprefs{ReceiveBackIssues} = "Cataloguing";
-$tabsysprefs{DefaultClassificationSource} = "Cataloguing";
-$tabsysprefs{RoutingSerials} = "Cataloguing";
-$tabsysprefs{'item-level_itypes'} = "Cataloguing";
-$tabsysprefs{OpacSuppression} = "Cataloguing";
+$tabsysprefs{advancedMARCeditor} = "Cataloging";
+$tabsysprefs{autoBarcode} = "Cataloging";
+$tabsysprefs{hide_marc} = "Cataloging";
+$tabsysprefs{IntranetBiblioDefaultView} = "Cataloging";
+$tabsysprefs{ISBD} = "Cataloging";
+$tabsysprefs{itemcallnumber} = "Cataloging";
+$tabsysprefs{LabelMARCView} = "Cataloging";
+$tabsysprefs{marc} = "Cataloging";
+$tabsysprefs{marcflavour} = "Cataloging";
+$tabsysprefs{MARCOrgCode} = "Cataloging";
+$tabsysprefs{z3950AuthorAuthFields} = "Cataloging";
+$tabsysprefs{z3950NormalizeAuthor} = "Cataloging";
+$tabsysprefs{Stemming} = "Cataloging";
+$tabsysprefs{WeightFields} = "Cataloging";
+$tabsysprefs{NoZebra} = "Cataloging";
+$tabsysprefs{NoZebraIndexes} = "Cataloging";
+$tabsysprefs{ReceiveBackIssues} = "Cataloging";
+$tabsysprefs{DefaultClassificationSource} = "Cataloging";
+$tabsysprefs{RoutingSerials} = "Cataloging";
+$tabsysprefs{'item-level_itypes'} = "Cataloging";
+$tabsysprefs{OpacSuppression} = "Cataloging";
+$tabsysprefs{SpineLabelFormat} = "Cataloging";
+$tabsysprefs{SpineLabelAutoPrint} = "Cataloging";
# Circulation
$tabsysprefs{maxoutstanding} = "Circulation";
$tabsysprefs{patronimages} = "Circulation";
$tabsysprefs{printcirculationslips} = "Circulation";
$tabsysprefs{ReturnBeforeExpiry} = "Circulation";
+$tabsysprefs{ceilingDueDate} = "Circulation";
$tabsysprefs{SpecifyDueDate} = "Circulation";
$tabsysprefs{AutomaticItemReturn} = "Circulation";
$tabsysprefs{ReservesMaxPickUpDelay} = "Circulation";
$tabsysprefs{AllowRenewalLimitOverride} = "Circulation";
$tabsysprefs{canreservefromotherbranches} = "Circulation";
$tabsysprefs{finesMode} = "Circulation";
+$tabsysprefs{numReturnedItemsToShow} = "Circulation";
$tabsysprefs{emailLibrarianWhenHoldIsPlaced} = "Circulation";
$tabsysprefs{globalDueDate} = "Circulation";
$tabsysprefs{holdCancelLength} = "Circulation";
$tabsysprefs{itemBarcodeInputFilter} = "Circulation";
$tabsysprefs{WebBasedSelfCheck} = "Circulation";
+$tabsysprefs{ShowPatronImageInWebBasedSelfCheck} = "Circulation";
$tabsysprefs{CircControl} = "Circulation";
$tabsysprefs{finesCalendar} = "Circulation";
$tabsysprefs{previousIssuesDefaultSortOrder} = "Circulation";
$tabsysprefs{StaticHoldsQueueWeight} = "Circulation";
$tabsysprefs{AllowOnShelfHolds} = "Circulation";
$tabsysprefs{AllowHoldsOnDamagedItems} = "Circulation";
+$tabsysprefs{UseBranchTransferLimits} = "Circulation";
+$tabsysprefs{AllowHoldPolicyOverride} = "Circulation";
+$tabsysprefs{BranchTransferLimitsType} = "Circulation";
+$tabsysprefs{AllowNotForLoanOverride} = "Circulation";
+$tabsysprefs{RenewalPeriodBase} = "Circulation";
+$tabsysprefs{FilterBeforeOverdueReport} = "Circulation";
+$tabsysprefs{AllowHoldDateInFuture} = "Circulation";
+$tabsysprefs{OPACFineNoRenewals} = "Circulation";
+$tabsysprefs{InProcessingToShelvingCart} = "Circulation";
+$tabsysprefs{NewItemsDefaultLocation} = "Circulation";
+$tabsysprefs{ReturnToShelvingCart} = "Circulation";
+$tabsysprefs{DisplayClearScreenButton} = "Circulation";
+$tabsysprefs{AllowAllMessageDeletion} = "Circulation";
+$tabsysprefs{OverdueNoticeBcc} = "Circulation";
# Staff Client
$tabsysprefs{TemplateEncoding} = "StaffClient";
$tabsysprefs{intranetuserjs} = "StaffClient";
$tabsysprefs{yuipath} = "StaffClient";
$tabsysprefs{IntranetmainUserblock} = "StaffClient";
+$tabsysprefs{viewMARC} = "StaffClient";
+$tabsysprefs{viewLabeledMARC} = "StaffClient";
+$tabsysprefs{viewISBD} = "StaffClient";
# Patrons
$tabsysprefs{autoMemberNum} = "Patrons";
$tabsysprefs{borrowerRelationship} = "Patrons";
$tabsysprefs{BorrowersTitles} = "Patrons";
$tabsysprefs{patronimages} = "Patrons";
-$tabsysprefs{MinPasswordLength} = "Patrons";
+$tabsysprefs{minPasswordLength} = "Patrons";
$tabsysprefs{uppercasesurnames} = "Patrons";
-$tabsysprefs{NoReturnSetLost} = "Patrons";
$tabsysprefs{MaxFine} = "Patrons";
$tabsysprefs{NotifyBorrowerDeparture} = "Patrons";
$tabsysprefs{AddPatronLists} = "Patrons";
$tabsysprefs{AutoEmailPrimaryAddress} = "Patrons";
$tabsysprefs{EnhancedMessagingPreferences} = "Patrons";
$tabsysprefs{'SMSSendDriver'} = 'Patrons';
+$tabsysprefs{HidePatronName} = "Patrons";
+
# I18N/L10N
$tabsysprefs{dateformat} = "I18N/L10N";
$tabsysprefs{opaclanguages} = "I18N/L10N";
-$tabsysprefs{opacthemes} = "I18N/L10N";
+$tabsysprefs{opaclanguagesdisplay} = "I18N/L10N";
$tabsysprefs{language} = "I18N/L10N";
# Searching
$tabsysprefs{AdvancedSearchTypes} = "Searching";
# EnhancedContent
-$tabsysprefs{AmazonContent} = "EnhancedContent";
+$tabsysprefs{AmazonEnabled} = "EnhancedContent";
+$tabsysprefs{OPACAmazonEnabled} = "EnhancedContent";
+$tabsysprefs{AmazonCoverImages} = "EnhancedContent";
+$tabsysprefs{OPACAmazonCoverImages} = "EnhancedContent";
$tabsysprefs{AWSAccessKeyID} = "EnhancedContent";
+$tabsysprefs{AWSPrivateKey} = "EnhancedContent";
$tabsysprefs{AmazonLocale} = "EnhancedContent";
$tabsysprefs{AmazonAssocTag} = "EnhancedContent";
$tabsysprefs{AmazonSimilarItems} = "EnhancedContent";
-$tabsysprefs{OPACAmazonContent} = "EnhancedContent";
$tabsysprefs{OPACAmazonSimilarItems} = "EnhancedContent";
+$tabsysprefs{AmazonReviews} = "EnhancedContent";
+$tabsysprefs{OPACAmazonReviews} = "EnhancedContent";
+
+# Babelthèque
+$tabsysprefs{Babeltheque} = "EnhancedContent";
# Baker & Taylor
$tabsysprefs{BakerTaylorBookstoreURL} = 'EnhancedContent';
$tabsysprefs{BakerTaylorPassword} = 'EnhancedContent';
$tabsysprefs{BakerTaylorUsername} = 'EnhancedContent';
+# Library Thing for Libraries
+$tabsysprefs{LibraryThingForLibrariesID} = "EnhancedContent";
+$tabsysprefs{LibraryThingForLibrariesEnabled} = "EnhancedContent";
+$tabsysprefs{LibraryThingForLibrariesTabbedView} = "EnhancedContent";
+
+# Syndetics
+$tabsysprefs{SyndeticsClientCode} = 'EnhancedContent';
+$tabsysprefs{SyndeticsEnabled} = 'EnhancedContent';
+$tabsysprefs{SyndeticsCoverImages} = 'EnhancedContent';
+$tabsysprefs{SyndeticsTOC} = 'EnhancedContent';
+$tabsysprefs{SyndeticsSummary} = 'EnhancedContent';
+$tabsysprefs{SyndeticsEditions} = 'EnhancedContent';
+$tabsysprefs{SyndeticsExcerpt} = 'EnhancedContent';
+$tabsysprefs{SyndeticsReviews} = 'EnhancedContent';
+$tabsysprefs{SyndeticsAuthorNotes} = 'EnhancedContent';
+$tabsysprefs{SyndeticsAwards} = 'EnhancedContent';
+$tabsysprefs{SyndeticsSeries} = 'EnhancedContent';
+$tabsysprefs{SyndeticsCoverImageSize} = 'EnhancedContent';
+
+
# FRBR
$tabsysprefs{FRBRizeEditions} = "EnhancedContent";
$tabsysprefs{XISBN} = "EnhancedContent";
$tabsysprefs{opacstylesheet} = "OPAC";
$tabsysprefs{opacthemes} = "OPAC";
$tabsysprefs{opacuserjs} = "OPAC";
-$tabsysprefs{SubscriptionHistory} = "OPAC";
$tabsysprefs{opacheader} = "OPAC";
-$tabsysprefs{noOPACUserLogin} = "OPAC";
$tabsysprefs{hideBiblioNumber} = "OPAC";
-$tabsysprefs{OPACDisplayExtendedSubInfo} = "OPAC";
$tabsysprefs{OpacMainUserBlock} = "OPAC";
-$tabsysprefs{OPACSubscriptionDisplay} = "OPAC";
$tabsysprefs{OPACURLOpenInNewWindow} = "OPAC";
$tabsysprefs{OPACUserCSS} = "OPAC";
$tabsysprefs{OPACHighlightedWords} = "OPAC";
$tabsysprefs{OPACViewOthersSuggestions} = "OPAC";
$tabsysprefs{URLLinkText} = "OPAC";
+$tabsysprefs{OPACSearchForTitleIn} = "OPAC";
$tabsysprefs{OPACShelfBrowser} = "OPAC";
$tabsysprefs{OPACDisplayRequestPriority} = "OPAC";
+$tabsysprefs{OPACAllowHoldDateInFuture} = "OPAC";
+$tabsysprefs{OPACPatronDetails} = "OPAC";
+$tabsysprefs{OPACFinesTab} = "OPAC";
+$tabsysprefs{DisplayOPACiconsXSLT} = "OPAC";
# OPAC
$tabsysprefs{SearchMyLibraryFirst} = "OPAC";
$tabsysprefs{hidelostitems} = "OPAC";
$tabsysprefs{opacbookbag} = "OPAC";
-$tabsysprefs{opaclanguagesdisplay} = "OPAC";
$tabsysprefs{OpacPasswordChange} = "OPAC";
$tabsysprefs{opacreadinghistory} = "OPAC";
$tabsysprefs{virtualshelves} = "OPAC";
$tabsysprefs{OPACGroupResults} = "OPAC";
$tabsysprefs{XSLTDetailsDisplay} = "OPAC";
$tabsysprefs{XSLTResultsDisplay} = "OPAC";
+$tabsysprefs{OPACShowCheckoutName} = "OPAC";
+
+# Serials
+$tabsysprefs{RoutingListAddReserves} = "Serials";
+$tabsysprefs{OPACSerialIssueDisplayCount} = "Serials";
+$tabsysprefs{StaffSerialIssueDisplayCount} = "Serials";
+$tabsysprefs{OPACDisplayExtendedSubInfo} = "Serials";
+$tabsysprefs{OPACSubscriptionDisplay} = "Serials";
+$tabsysprefs{RenewSerialAddsSuggestion} = "Serials";
+$tabsysprefs{SubscriptionHistory} = "Serials";
# LOGFeatures
$tabsysprefs{CataloguingLog} = "Logs";
$tabsysprefs{'OAI-PMH:Set'} = "OAI-PMH";
$tabsysprefs{'OAI-PMH:Subset'} = "OAI-PMH";
+# ILS-DI variables
+$tabsysprefs{'ILS-DI'} = "ILS-DI";
+
+# Creator variables
+
+$tabsysprefs{'ImageLimit'} = "Creators";
+
sub StringSearch {
my ( $searchstring, $type ) = @_;
my $dbh = C4::Context->dbh;
if ( $type and $type eq 'all' ) {
$sth = $dbh->prepare( "
SELECT *
- FROM systempreferences
- WHERE variable LIKE ? OR explanation LIKE ?
+ FROM systempreferences
+ WHERE variable LIKE ? OR explanation LIKE ?
ORDER BY VARIABLE" );
$sth->execute( "%$searchstring%", "%$searchstring%" );
} else {
if ( not defined( $data->{'type'} ) ) {
$params->{'type-free'} = 1;
$params->{'fieldlength'} = ( defined( $data->{'options'} ) and $data->{'options'} and $data->{'options'} > 0 );
+ } elsif ( $data->{'type'} eq 'Upload' ) {
+ $params->{'type-upload'} = 1;
} elsif ( $data->{'type'} eq 'Choice' ) {
$params->{'type-choice'} = 1;
} elsif ( $data->{'type'} eq 'YesNo' ) {
$value = $params->{'value'};
}
}
+
+ if ( $input->param('preftype') eq 'Upload' ) {
+ my $lgtfh = $input->upload('value');
+ $value = join '', <$lgtfh>;
+ $value = encode_base64($value);
+ }
+
if ( $sth->rows ) {
unless ( C4::Context->config('demo') ) {
my $sth = $dbh->prepare("update systempreferences set value=?,explanation=?,type=?,options=? where variable=?");
my $tab = $input->param('tab');
$template->param( $tab => 1 );
my ( $count, $results ) = StringSearch( $searchfield, $tab );
- my $toggle = 0;
my @loop_data = ();
for ( my $i = $offset ; $i < ( $offset + $pagesize < $count ? $offset + $pagesize : $count ) ; $i++ ) {
- if ( $toggle == 0 ) {
- $toggle = 1;
- } else {
- $toggle = 0;
- }
my $row_data = $results->[$i];
$row_data->{'lang'} = $template->param('lang');
$row_data = GetPrefParams($row_data); # get a fresh hash for the row data
- $row_data->{toggle} = $toggle;
$row_data->{edit} = "$script_name?op=add_form&searchfield=" . $results->[$i]{'variable'};
$row_data->{delete} = "$script_name?op=delete_confirm&searchfield=" . $results->[$i]{'variable'};
push( @loop_data, $row_data );