GithubHelp home page GithubHelp logo

mkucej / i-librarian Goto Github PK

View Code? Open in Web Editor NEW
98.0 23.0 38.0 11.48 MB

Legacy I, Librarian - collaborative PDF manager. Not maintained, new version is at https://github.com/mkucej/i-librarian-free

Home Page: https://i-librarian.net

PHP 78.27% CSS 0.84% HTML 0.09% JavaScript 20.80%

i-librarian's Issues

Add support for custom publication types

Try to add an unsupported bibtex publication type e.g., @mastersthesis or @inproceedings

It would be great to be able to add new publication types using the tools menu. I use I-Librarian in combination with LaTeX and it is quite inconvenient that I manually have to fix publication types each time I export entries.

Therefore, it would be great to be able to add custom publication types and remove unneeded ones.

The difference between @MasterThesis and @PhDThesis is that many LaTeX bibliography schemes add predefined text depending on the quotation type.

E.g., if I add a "@mastersthesis" reference, the words "Master’s thesis" are automatically added to the reference, at a position which is determined by the current Bibtex style.
If the reference's type is "@PhDThesis", "Ph.D. dissertation" is added instead.

The nice thing about this is not only that the position of the publication type can be chosen freely at compile time (I.e., different quotation styles can be used with one literature database) but that these supplements are automatically translated depending on the document's language.

If I have to use a somewhat generic quotation type and then manually add "Master's thesis" to the title field, I have to modify my literature database depending on the language I currently write in.

Same goes for most of the other Bibtex quotation types. It's (not only) about the required and optional fields, but about the additional text which is added to the reference by bibtex, depending on the document language and bibtex style.

Stall when accessing Windows I, Librarian installation from Internet Explorer 11 using hostname

I can access my local I, Librarian test installation (Windows 7, 64bit) using http://127.0.0.1:8080/librarian/ or the IP address http://10.x.x.x:8080/librarian/. However, if I use my hostname (which resolves to the same IP, i.e. 10.x.x.x.), the website gets stuck at the "load screen" (blue background, spinning wheel next to "I, Librarian" test). In other browsers (Firefox, Chrome) this does not happen, i.e. everything works fine).

Add Record hung - with manual upload of office file (W2K12)

Hello,
today I had an issue with adding new records using the manual option and selecting a .docx file before saving first time.
There wasn't any error message, it was just sort of hung.

On the server side there were multiple soffice.bin processes running (working in a weired temp folder).

Is there an error handling in case soffice.bin is not returning?
How could I get more details why soffice.bin processes did not return?

I killed all soffice.bin process and was able to proceed.

Thanks

No way to delete PDFs?

Am I missing something or is there no way to delete an entry/a pdf once imported?
(E.g. to weed out duplicates)

Dedicated workspaces for groups

Is is possible to limit access to items for different groups of users or would you recommend adding a second directory (copy)+Apache configuration to a current installation?
Later option would mean Apache is serving two directories and I have to maintain users for both environments.

Adding an option to specify the LDAP field to use as login username

Hi,

First let me thanks you for your nice application, I'm using it for more than two or three years now, and I'm really happy about it πŸ˜€

I'm using the LDAP authentication with success, but one detail annoys me: the common name being used as login. In my database the common name is the full name of the person, and as a posix account they have an uid field which is the username. Because of this, users have to use their real name (i.e. "John Doe") as login instead of their traditional username (i.e. uid= field, like "john.doe"), and it's different to all other services linked to the LDAP database. This is a big source of errors πŸ˜‰.

Did I miss a LDAP option that allows to specify the field to use as username? Otherwise it is hard to implement?
I'm ready to help if needed. I just looked at the code and I suppose this is the part to edit, right?

Improvements to 'Add Record UX'

I have two suggestions for improving the user experience of editing the details of a new record:

  • When a user adds a single item by specifying the URL of a PDF on the web, this URL should be automatically recorded in the URL field (unless it is over-written by data obtained using the doi).
  • Since changing the 'publication type' field changes the displayed names of other fields, it should probably be repositioned to be more promiment and nearer the top of the list of fields

Required binary executables not working

Hey, i have a problem with Required binary executables.

Pdftotext PDF full-text search not working !!!
Pdfinfo built-in PDF viewer not working !!!
Pdftohtml PDF search in the built-in PDF viewer not working !!!
Ghostscript icon views, built-in PDF viewer not working !!!
Pdfdetach unpacking PDF-attached files not working !!!

OS: Windows Server 2008 R2.

Have you a idea?

Thanks.

Add SiteMinder / Shibboleth integration

Since institutions are very concerned with security, we're having trouble deploying i-librarian on any of our servers. They prefer that all authentication be performed with CA SiteMinder or Shibboleth and the central database. This feature would really ease the integration of i-librarian in such contexts.

There are already ready-to-use PHP libraries that might be easily be integrated with I, Librarian like SimpleSAML (http://simplesamlphp.org/) (http://www.zeitoun.net/articles/configure-simplesaml-1.3-sp-and-shibboleth-2.1-idp/start)

Jabref Bibtex Import

Hi,
I-librarian has complex problem on import bibtex from Jabref:

  1. Import only work for bibtex key and first line of multiline title. No other information can be imported.
  2. It imports title with {}, signs.
  3. I have many custom fields in my bibtex file, more than 5
  4. I've changed pdf file path relative to my server, but PDF not imported.

User Rights Management

Hi there,

I have switched from Mendeley to i-librarian recently and I found many things with it great. I am running the code from my home-server and did set it up successfully to access it through the www. My issue is that security is a great concern, as currently anyone that finds my domain can create an account and access all documents. I might restrict them to read-only access, but what I would like to be able to do is to stop them from the chance of getting an account in the first place.

Thanks for the great software,
Lubo

Batch Import seems to fail on large folders

IT kindly installed i-librarian for me (on CentOS 6.7 - it is what is used "here").

So far so good, BUT if I try to import a large folder in one go (400 documents) it starts and then stops seemingly...
(Side note: The link to databases does not work due to our proxy - just in case that could be the issue.)

Bug in recording changes to a note

Changes to a note can be apparently lost (whilst really being stored as duplicate rows in the database and ignored) if a user creates a new note and then saves different versions without reloading the editor.

Example scenario:

Suppose I open a file with no attached notes, and click on Notes->Edit to open the pop-up MCE editor.

I write some text, and click save. This fires a POST request to notes.php.

Then I edit this text, and click save again. This fires another POST request to notes.php.

Both requests have the notes and file paramaters set correctly, but the notesID parameter is "". Thus isset($_POST['notesID']) in notes.php evaluates to true, and update_notes in functions.php is called twice. Since empty($notesID) evaluates as true both time, two INSERTs, but no DELETEs, are performed in the database.

Now I look at a different document, before going back to the notes pane for the first document: notes.php will return the first version of my note (since this has the lowest value of notesID), and it will appear that my subsequent changes have been lost.

Potential fix:

One way to fix this would be to get rid of the notesID parameter from the POST request, and modifify the update_notes function so that it looks up the notesID parameter itself rather than trusting the value provided to it as an argument.

New queries in Miscellaneous menu

Hello, Martin.

What do you think about this small enhancement: add in "Miscellaneous" menu (left side of Library interface) queries "Items with notes" and "Items with discussions"?

Best,
Eugene.

Journal name not correctly exported to BibTeX

I have some papers with a 'Journal abbreviation', but no 'Secondary title'.

When I export these to RIS, the journal name is exported correctly (in the J2 field). However, when I export to BibTeX, no journal name is exported (there is no 'journal' field in the output).

I think this is because of line 438 of export.php: this sets $bibtex_translation['journal = '] to 'secondary_title', overriding its definition as 'journal' on line 432. Deleting this line seems to fix the problem.

When importing metadata from Crossref, editor sometimes added as first author

When importing metadata from Crossref, the editor is sometimes incorrectly added as the first author

An example for which this happens is doi:10.1371/journal.pcbi.1004457 - Costas D. Maranas is added to the author list.

The function fetch_from_crossref($doi) in functions.php loads the url http://www.crossref.org/openurl/?id=doi:10.1371/journal.pcbi.1004457&noredirect=true&[email protected]

However, it extracts the name of every contributor, rather than only those contributors whose contributor_role="author".

<ID>-temp.sq3 files in library\database folder

Hi,

my installation shows multiple (41) files named -temp.sq3 in the folder library\database. Is it save to remove those or when should these be cleaned up as it looks like a temporary file.

Thanks.

Add category suggestion during recording

I, Librarian suggests related categories when you click on the "Categ." icon in the entry dialog. Add similar feature to the "Add Record" dialog, so that it can suggest categories during import.

Backup in 4.1 and 4.0

Hi.
The backup utility does not work as expected in 4.1 and 4.0. The web interface does not show any errors, and I checked that the backup folder is readable/writable.
Here is an extract of the apache error log :

cp: cannot create regular file '/home/Backup/pdfs/01/00338.pdf': No such file or directory
...
cp: cannot create regular file '/home/Backup/database/history.sq3': No such file or directory
...
cp: cannot create regular file '/home/Backup/supplement/._00087graphical_abstract.pdf': No such file or directory
...

The library folder is not created like the former versions of i-librarian. Therefore, the backup function does not find the subfolder. Creating them manually allow the backup to finish without error in the log.

Thanks.

Version : 4.0 and 4.1
OS : Linux 3.16.0-38-generic, Ubuntu 14.04.

RTF scan of citations using citeproc-js

I, Librarian uses citeproc-js library to format references. It would be nice to also use it for RTF citation scanning. Any suggestions about how to accomplish that are welcome.

soffice.exe hung

  • Sometimes soffice.exe/soffice.bin processes are left over.

I did not yet find how to reproduce this however sometimes it is the case (running on Windows).

The exec call does not include a timeout in case soffice (or any of the other OS calls) do not return "within time".

Could such a function be included into the code?
http://blog.dubbelboer.com/2012/08/24/execute-with-timeout.html

Autocomplete feature in Advanced search

Hello Martin!

Want to offer you another improvement. How about autocomplete feature in Advanced search dialog? I believe these dropdown lists will be very handy in search for author, journal, secondary and tertiary titles. May be it's worth to also consider title field.

Best wishes,
Eugene.

Item key in new line (version 4.0)

Hello Martin!

I'm wondering why in new version 4.0 item key appears in new line after item rating and so on (in "icons" display). Maybe where is some special sense about it? But, after all, it takes an additional line and fewer items appear at a time on one screen. Maybe it's more reasonable to revert things back to old configuration where all item info took only 2 lines.

Best, Eugene.

Error! No text found in this PDF

Hello Martin,

After last major update I can't (quite often in fact) attach PDF file to item. When I "Add single Item" and point to PDF file it says that "PDF file haven't been recorded". If I add PDF manually via Edit > Files I got "Error! No text found in this PDF". I attached example of PDF file that doesn't work out. At glance this is ordinary PDF from journal site with text layer so everything should work well but it doesn't.

1.4942032.pdf

Best wishes,
Evgeny Govras.

Adding option to pick temporary directory

Is it possible to add an option to select a temporary directory ?
The installtion at the moment uses /var/tmp/ by default with Linux, which isn't suitable for me.
I managed to change it directly in data.php, but it would be better to have an option somewhere to change this.

Also, it would be nice to have a clear error message when the temporary directory isn't writable, as this leads to all sorts of failures, such as the content being imported but unaccessible, uneditable and undeletable. This also makes it impossible to import pdfs.
This is totally understandable, but there is no error message signalling that this is not normal behavior.

No record found! error with IEEE upload enabled

We just noticed an issue in iLibrarian 4.0 when uploading certain references when IEEE is enabled for lookup on the Add Single Item page. If IEEE is enabled with or without the other databases, you get an error message saying "No record found!". If I turn of IEEE, then the paper is found correctly in Pubmed and uploaded.

This looks to be related to Line 1508 in functions.php. The if( $count == 0) ... die()... is opposite of how all the other fetch functions work. I think this should be changed to:
if($count != 0) {
...fetch and extract code...
}

Unable to follow links in PDF?

Hey, thanks for this great OSS tool. It's a great amount of time and effort in this project and I sincerely hope it's paying off for you, because it's certainly some good piece of software.

I've googled around and found nothing. Today I tried reading my first pdf document in i-librarian and, although I was surprised of how well it managed annotations, I found it strange I couldn't follow the links inside the pdf (to it's own equations). Text is formatted as link, but impossible to use.

If this is a known bug (which I guess it is) let this report RIP. Otherwise, if solicited, I could upload the PDF.

Thanks for everything!

I coundn't login in when using microsoft edge browser

The version of I-librarian was 4.1. I can login in using Chrome, Firefox, but failed when using Microsoft edge software. After entered the right username and password, and pressed "Sign in" button, it retain the login page.

Search in Citation key field

Hello Martin,

Maybe it could be useful to add feature of searching through "Citation key" fields as well? As for me these keys contains some meaningful information that will help in searching.

Best,
Eugene.

Multiple PDF add record not working

Hello, Everyone.

I recently installed the 4.1 Version using the full installer (with Apache&Php) after having unstialled my precedent version (4.0 wihich was working nicely). I am now unable to "Add record" multiple pdf from localhost. The system just says "batch imports has finished" but nothing happened. While "Add single item works" it does not recognize the DOI of the pdf (there is actually a by default DOI number writen in the field).

Looking at my instal Details I get several errors (all the rest is OK) :

Required php.ini settings:
max_input_vars recommended 10000 1000 !!!

Required binary executables:

Pdftotext PDF full-text search not working !!!
Pdfinfo built-in PDF viewer not working !!!
Pdftohtml PDF search in the built-in PDF viewer not working !!!
Ghostscript icon views, built-in PDF viewer not working !!!
Pdfdetach unpacking PDF-attached files not working !!!

*Optional binary executables:

Tesseract OCR optical character recognition not working !!!
LibreOffice office documents import and conversion not working !!!

thanks for your inputs

JM

SAVE button not active after adding record - by design ?

Version 4.1

Steps:

  • Stop librarianserver
  • Cleanup Librarian TEMP folder
  • Start librarianserver
  • check that no soffice (LibreOffice4 is installed) processes are running
  • Logon
  • Add Record
  • Manual Upload
  • Choose a DOCX file to import
  • Set title - "TEST RECORD"
  • PRESS SAVE
  • WAIT FOR ITEM has been recorded notification

Any other changes within add record cannot be saved as the SAVE button is not active.
Should the saved record be displayed at this point?

Now open the Library and edit recently added record, edit, save OK.

Now select "Add Record" : Still the previous add record is displayed.

Author autocomplete in manual upload & edit

Hello Martin,
I wrote about this bug in previous tracking system, maybe it was lost.
During manually upload the item if one clicks on "+" button for adding authors and starts to print author name in this new field no quick guess appears. It also happens when editing existing item and doesn't depend on overall author name already present. I assume something wrong with the very text field which is added by "+" button on any stage.

Good luck,
Eugene.

Bibtex export

Hi.
When exporting references in bibtex format, most of the fields contains an extra '{' and '}'.

@article{Nowak-2001-ID504,
author    = {{Nowak, U. and Misra, A. and Usadel, K. D.}},
title     = {{Domain state model for exchange bias}},
journal   = {{Journal of Applied Physics}},
year      = {{2001}},
volume    = {{89}},
pages     = {{7269--7271}},
doi       = {{10.1063/1.1358829}},
abstract  = {{Monte Carlo simulations of a system consisting of a ferromagnetic layer
            exchange 

Thanks.

Version : 4.0 and 4.1
OS : Linux 3.16.0-38-generic, Ubuntu 14.04.

Sorting by 'Date Added' broken

Running the latest version of i-Librarian, sorting by 'Date Added' on the library page is broken: the top entries are papers I added on June 1014.

Debugging by adding a print statement to the perform_search() function in functions.php, I see that the query being executed is:

SELECT id,file,authors,title,journal,secondary_title,year,volume,pages,abstract,uid,doi,url,addition_date,rating,bibtex FROM library WHERE id IN (SELECT itemID FROM history.`search_d827f0ca` ORDER BY id DESC LIMIT 5 OFFSET 0) ORDER BY id DESC 

Using sqlite3 at the commandline to run

SELECT id,file,authors,title,journal,secondary_title,year,volume,pages,abstract,uid,doi,url,addition_date,rating,bibtex FROM library ORDER BY id DESC LIMIT 5

shows the top 5 papers I would expect.

It therefore looks like the cache table is breaking something.

Bibtex key can not be changed after mass upload of pdf : Bug

In 3.4.1 there seems to be a bug:
When mass uploading pdfs afterwards the BibTex key can not be edited - the letters in the fields are greyed out. This does not appear when uploading one by one.

Especially when new listings are marked as unknown (with keys like unknown-000-idx) this makes no sense.

Allow multiple simultaneous sessions from same user

I run i-librarian on a server, and it would be convenient for me to remain logged in on both my laptop and desktop.

However, this is currently not possible, since whenever a user logs in, any existing sessions are deleted from the database by the block of code under the comment "ALLOW ONLY ONE LOGIN AT A TIME" in index2.php.

Why is the rationale for this design?

Spaces in custom BibTex fields can cause problems

The defaut name of the custom fields ('Custom 1', 'Custom 2' etc.) contain spaces, which are included when records are exported to bibtex files.

This causes some tools (e.g. pandoc-citeproc) to fail to parse the .bib file unless it is manually fixed.

A solution would be to export the custom fields with the spaces in their names replaced by a hyphen (e.g. 'Custom-1').

Batch rename authors

Hello Martin,

Here are two features that I believe will be of use in Librarian.

  1. Wrote about it in forum, maybe you didn't noticed. So, I think it might be useful to rename custom1+ fields to something meaningful. For example, for me it's vital to know language of publication for correct BibTeX compilation. I assume it's hard to rename fields in the very library.sq3 file because of backward compatibility. Maybe, it's good to offer user to choose in settings menu how custom fields will be named/shown. And show these names only in web-interface and in export while in database they remain custom1+.

  2. Maybe you should add batch rename interface for authors name, as you did for journals. Of course, it's not so vital as with journals name, but it's quite odd when you have author with one last name and 5 different initials. Interface with quick sorting by first letter will be also very handy as it is in left menu bar.

Hope, you find these suggestions meaningful.

Best wishes,
Eugene.

In PDF viewer, the search results panel is not cleared after a search with no results

In the PDF viewer, searching for a word contained in the PDF populates the 'search results' panel of the left.

If I then perform a search for a phrase that is not in the PDF, I receive a 'No hits' message, but the 'search results' panel is not cleared. It still contains the results from the previous search (and confusingly, clicking on a result no longer takes me to the corresponding position in the PDF).

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.