Compare commits

..
12 Commits
Author SHA1 Message Date
Frederik Möllers f4298cf171 Add comment field to JanosBibliographyStyle
Print the content of "Comment" fields in JanosBibliographyStyle, similar
to how it is done in VancouverBibliographyStyle.
2025-10-24 02:26:57 +02:00
Frederik Möllers d714808318 Merge branch 'master' into staging
Pull latest upstream changes
2025-10-24 02:24:48 +02:00
Frederik Möllers c0912e172c Merge branch 'github'
Pull latest upstream changes
2025-10-24 02:23:58 +02:00
Frederik Möllers ef723ef291 Merge branch 'monperrus:master' into master 2025-10-24 00:13:16 +00:00
Martin Monperrus 95fe893121 Update README.wiki 2025-10-01 14:04:59 +02:00
Hans-Nikolai Viessmann 2381e7c412 add DokuWiki bb2dw plugin reference to readme file (#138) 2025-10-01 14:00:10 +02:00
Martin Monperrus 2867059f68 fix https://github.com/monperrus/bibtexbrowser/issues/136 2025-09-09 07:13:11 +02:00
Frederik Möllers a8c24dab18 Add internationalization for third-party styles (#137) 2025-09-08 06:59:13 +02:00
Frederik Möllers e2154ea9b0 Translate remaining english strings to german
"vol.", "no.", "pp."
2025-09-08 00:19:35 +02:00
Frederik Möllers 24689aceb4 Add internationalization for third-party styles
Added proper internationalization for JanosBibliographyStyle and
VancouverBibliographyStyle. Translation of strings like "in", "Master's
Thesis" etc. was missing.
2025-09-08 00:18:51 +02:00
Frederik Möllers 0bd87f51fd Improve use of CSS font-weight 2025-09-08 00:18:51 +02:00
Frederik Möllers 8a4122d049 Add internationalization for third-party styles
Added proper internationalization for JanosBibliographyStyle and
VancouverBibliographyStyle. Translation of strings like "in", "Master's
Thesis" etc. was missing.
2025-09-08 00:03:34 +02:00
3 changed files with 73 additions and 2 deletions
+66
View File
@@ -1455,6 +1455,72 @@ class BibtexbrowserTest extends PHPUnit_Framework_TestCase {
$this->assertEquals(0, count($results));
}
function test_tags_pagination() {
// Define the page size for pagination
bibtexbrowser_configure('TAGS_SIZE', 2);
// Create a test BibTeX database with multiple entries and keywords
$bibtex = "@article{paper1,title={Paper One},keywords={tagA, tagB},year=2020}
@article{paper2,title={Paper Two},keywords={tagC},year=2020}
@article{paper3,title={Paper Three},keywords={tagD},year=2020}
@article{paper4,title={Paper Four},keywords={tagE},year=2020}";
$test_data = fopen('php://memory','r+');
fwrite($test_data, $bibtex);
fseek($test_data, 0);
$db = new BibDataBase();
$db->update_internal("inline", $test_data);
// Create MenuManager display
$display = new MenuManager();
$display->setDB($db);
// Test the first page
$_GET["tags_page"] = '1';
ob_start();
$display->display();
$output1 = ob_get_clean();
// Tags are sorted alphabetically.
$this->assertStringContainsString('tagA', $output1);
$this->assertStringContainsString('tagB', $output1);
$this->assertStringNotContainsString('tagC', $output1);
// Verify pagination link to the next page
$this->assertStringContainsString('keywords_page=2', $output1);
// Test the second page
$_GET["keywords_page"] = '2';
ob_start();
$display->display();
$output2 = ob_get_clean();
$this->assertStringContainsString('tagC', $output2);
$this->assertStringContainsString('tagD', $output2);
$this->assertStringNotContainsString('tagA', $output2);
$this->assertStringNotContainsString('tagE', $output2);
// Verify navigation links to previous and next pages
$this->assertStringContainsString('keywords_page=1', $output2);
$this->assertStringContainsString('keywords_page=3', $output2);
// Test the third page
$_GET["keywords_page"] = '3';
ob_start();
$display->display();
$output3 = ob_get_clean();
$this->assertStringContainsString('tagE', $output3);
$this->assertStringNotContainsString('tagD', $output3);
// Verify navigation link to the previous page
$this->assertStringContainsString('keywords_page=2', $output3);
$this->assertStringNotContainsString('keywords_page=4', $output3); // No next page
// Clean up
unset($_GET["keywords_page"]);
}
function test_venuevc_pagination() {
// Define the page size for pagination
bibtexbrowser_configure('VENUE_SIZE', 2);
+2 -1
View File
@@ -60,10 +60,11 @@ The following uses bibtexbrowser under the hood:
* [[http://www.monperrus.net/martin/feeding-mysql-database-with-bibtexbrowser|Feeding a MySQL database from the content of a bibtex file]]
* Publication lists in Wordpress with [[http://www.monperrus.net/martin/wp-publications|wp-publications]]
* [[http://www.monperrus.net/martin/publication-lists-with-hal-and-bibtexbrowser|Publication lists with HAL and bibtexbrowser]]
* Generating publication lists in DokuWiki using the [[https://www.dokuwiki.org/plugin:bb4dw|bb4dw plugin]]
=====Demo and screenshot=====
Demo: [[http://bibtexbrowser.sourceforge.net/bibtexbrowser.php?bib=metrics.bib|Here, you can browse a bibtex file dedicated to software metrics]]
Demo: [[https://www.monperrus.net/martin/bibtexbrowser.php|Here, you can browse a bibtex file of Martin's papers.]]
<img height="500" src="https://www.monperrus.net/martin/bibtexbrowser/bibtexbrowser-screenshot.png" alt="bibtexbrowser screenshot"/>
+5 -1
View File
@@ -2584,6 +2584,10 @@ function JanosBibliographyStyle($bibentry) {
$result = implode(", ",$entry).'.';
// some comments (e.g. acceptance rate)?
if ($bibentry->hasField('comment')) {
$result .= " (".$bibentry->getField("comment").")";
// add the Coin URL
$result .= "\n".$bibentry->toCoins();
@@ -2994,7 +2998,7 @@ class MenuManager {
} else $page = 1;
if (count($tags)>0) $this->displayMenu('Keywords', $tags, $page, bibtexbrowser_configuration("MENU_SIZE"), Q_TAG_PAGE,
if (count($tags)>0) $this->displayMenu('Keywords', $tags, $page, bibtexbrowser_configuration("TAGS_SIZE"), Q_TAG_PAGE,
Q_TAG);
}