Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Test xpdf with php
#1
Hi,

I set up xpdf on my Test DMS to run the fulltext index, but it doesn't index the documents contents.

I ran xpdf on the console and was successfully able to convert a PDF to text (i took one in the DMS directory).

Is there a way how i can test if PHP is able to find the xpdf binary and use it?

Thanks
Daniel
Reply
#2
(11-19-2012, 12:04 AM)Daniel Wrote: Hi,

I set up xpdf on my Test DMS to run the fulltext index, but it doesn't index the documents contents.

I ran xpdf on the console and was successfully able to convert a PDF to text (i took one in the DMS directory).

Is there a way how i can test if PHP is able to find the xpdf binary and use it?
It doesn't use xpdf but pdftotext which may come with xpdf. The conversion programm from any mimetype to plain text is set in the configuration.

Uwe
Reply
#3
(11-19-2012, 12:23 AM)steinm Wrote:
(11-19-2012, 12:04 AM)Daniel Wrote: Hi,

I set up xpdf on my Test DMS to run the fulltext index, but it doesn't index the documents contents.

I ran xpdf on the console and was successfully able to convert a PDF to text (i took one in the DMS directory).

Is there a way how i can test if PHP is able to find the xpdf binary and use it?
It doesn't use xpdf but pdftotext which may come with xpdf. The conversion programm from any mimetype to plain text is set in the configuration.

Uwe

Hi Uwe,

Sorry, my mistake, i meant pdftotext. Just checked my Apache log, it just says "pdftotext not found".

Where do i need to set this in the configuration? I went through the sample file, but maybe i just looked at the wrong place.

Daniel

Reply
#4
(11-19-2012, 12:57 AM)Daniel Wrote:
(11-19-2012, 12:23 AM)steinm Wrote:
(11-19-2012, 12:04 AM)Daniel Wrote: I set up xpdf on my Test DMS to run the fulltext index, but it doesn't index the documents contents.

I ran xpdf on the console and was successfully able to convert a PDF to text (i took one in the DMS directory).

Is there a way how i can test if PHP is able to find the xpdf binary and use it?
It doesn't use xpdf but pdftotext which may come with xpdf. The conversion programm from any mimetype to plain text is set in the configuration.
Sorry, my mistake, i meant pdftotext. Just checked my Apache log, it just says "pdftotext not found".

Where do i need to set this in the configuration? I went through the sample file, but maybe i just looked at the wrong place.

install/settings.xml.template_install of LetoDMS 3.4.0 has as secton <converters>.
In LetoDMS 3.3.x it was still hardcoded in the source.

Uwe
Reply
#5
Thanks Uwe

My fault that just i copied the configuration file over from 3.3.10. I created a new one with LetoDMS 3.4.0 now.

It seems to do something, in the Apache log i get now the following error:

PHP Code:
[Mon Nov 19 18:25:13 2012] [error] [client 10.1.7.53PHP Warning:  Invalid argument supplied for foreach() in /volume1/web/docutest/out/out.MyDocuments.php on line 78refererhttp://10.1.3.13/docutest/out/out.Indexer.php?create=1&confirm=1 

This is this code line:

PHP Code:
    foreach ($approvalStatus["grpstatus"] as $st) {
        if (!
in_array($st["documentID"], $dList)) {
            
$dList[] = $st["documentID"];
        } 

Can you help me on this? It is LetoDMS 3.4.0 RC4

Daniel
Reply
#6
(11-19-2012, 11:15 PM)Daniel Wrote: Thanks Uwe

My fault that just i copied the configuration file over from 3.3.10. I created a new one with LetoDMS 3.4.0 now.

It seems to do something, in the Apache log i get now the following error:

PHP Code:
[Mon Nov 19 18:25:13 2012] [error] [client 10.1.7.53PHP Warning:  Invalid argument supplied for foreach() in /volume1/web/docutest/out/out.MyDocuments.php on line 78refererhttp://10.1.3.13/docutest/out/out.Indexer.php?create=1&confirm=1 

This is this code line:

PHP Code:
    foreach ($approvalStatus["grpstatus"] as $st) {
        if (!
in_array($st["documentID"], $dList)) {
            
$dList[] = $st["documentID"];
        } 

Can you help me on this? It is LetoDMS 3.4.0 RC4

Hard to tell from the distance. Can you vardump the $user object and the output of $user->getApprovalStatus(); in line 58?

Uwe
Reply
#7
(11-20-2012, 12:11 AM)steinm Wrote:
(11-19-2012, 11:15 PM)Daniel Wrote: Thanks Uwe

My fault that just i copied the configuration file over from 3.3.10. I created a new one with LetoDMS 3.4.0 now.

It seems to do something, in the Apache log i get now the following error:

PHP Code:
[Mon Nov 19 18:25:13 2012] [error] [client 10.1.7.53PHP Warning:  Invalid argument supplied for foreach() in /volume1/web/docutest/out/out.MyDocuments.php on line 78refererhttp://10.1.3.13/docutest/out/out.Indexer.php?create=1&confirm=1 

This is this code line:

PHP Code:
    foreach ($approvalStatus["grpstatus"] as $st) {
        if (!
in_array($st["documentID"], $dList)) {
            
$dList[] = $st["documentID"];
        } 

Can you help me on this? It is LetoDMS 3.4.0 RC4

Hard to tell from the distance. Can you vardump the $user object and the output of $user->getApprovalStatus(); in line 58?

Uwe

Sure, if you can tell a PHP Beginner from where to do that or which file i need to edit.
Reply
#8
(11-20-2012, 12:15 AM)Daniel Wrote:
(11-20-2012, 12:11 AM)steinm Wrote:
(11-19-2012, 11:15 PM)Daniel Wrote: Thanks Uwe

My fault that just i copied the configuration file over from 3.3.10. I created a new one with LetoDMS 3.4.0 now.

It seems to do something, in the Apache log i get now the following error:

PHP Code:
[Mon Nov 19 18:25:13 2012] [error] [client 10.1.7.53PHP Warning:  Invalid argument supplied for foreach() in /volume1/web/docutest/out/out.MyDocuments.php on line 78refererhttp://10.1.3.13/docutest/out/out.Indexer.php?create=1&confirm=1 

This is this code line:

PHP Code:
    foreach ($approvalStatus["grpstatus"] as $st) {
        if (!
in_array($st["documentID"], $dList)) {
            
$dList[] = $st["documentID"];
        } 

Can you help me on this? It is LetoDMS 3.4.0 RC4

Hard to tell from the distance. Can you vardump the $user object and the output of $user->getApprovalStatus(); in line 58?

Uwe

Sure, if you can tell a PHP Beginner from where to do that or which file i need to edit.

Go into line 59 right after the line
Code:
$approvalStatus = $user->getApprovalStatus();

and put in

Code:
var_dump($user);
var_dump($approvalStatus);

Uwe
Reply
#9
Ok, i changed that and went to My Documents menu point where it shows me this message at the top of the page:

PHP Code:
object(LetoDMS_Core_User)#8 (14) { ["_id"]=> string(1) "1" ["_login"]=> string(5) "admin" ["_pwd"]=> string(32) "21232f297a57a5a743894a0e4a801fc3" ["_pwdExpiration"]=> string(19) "0000-00-00 00:00:00" ["_fullName"]=> string(13) "Administrator" ["_email"]=> string(18) "address@server.com" 
["_language"]=> string(7"English" ["_theme"]=> string(5"clean" ["_comment"]=> string(0"" ["_role"]=> string(1"1" ["_isHidden"]=> string(1"0" ["_isDisabled"]=> string(1"0" ["_loginFailures"]=> string(1"0" ["_dms"]=> object(LetoDMS_Core_DMS)#11 (10) 
{ ["db":protected]=> object(LetoDMS_Core_DatabaseAccess)#13 (12) { ["_debug"]=> bool(false) ["_driver"]=> string(5) "mysql" ["_hostname"]=> string(9) "localhost" ["_database"]=> string(8) "docutest" ["_user"]=> string(9) "dmsaccess" ["_passw"]=> string(6) "pw4dms" ["_conn"]=> object(ADODB_mysql)#12 (88) 
{ ["databaseType"]=> string(5"mysql" ["dataProvider"]=> string(5"mysql" ["hasInsertID"]=> bool(true) ["hasAffectedRows"]=> bool(true) ["metaTablesSQL"]=> string(11"SHOW TABLES" ["metaColumnsSQL"]=> string(22"SHOW COLUMNS FROM `%s`" ["fmtTimeStamp"]=> string(13"'Y-m-d H:i:s'" ["hasLimit"]=> bool(true) ["hasMoveFirst"]=> bool(true) ["hasGenID"]=> bool(true) ["isoDates"]=> bool(true) ["sysDate"]=> string(9"CURDATE()" ["sysTimeStamp"]=> string(5"NOW()" ["hasTransactions"]=> bool(false) ["forceNewConnect"]=> bool(false) ["poorAffectedRows"]=> bool(true)
[
"clientFlags"]=> int(0) ["substr"]=> string(9"substring" ["nameQuote"]=> string(1"`" 
["compat323"]=> bool(false) ["_genIDSQL"]=> string(38"update %s set id=LAST_INSERT_ID(id+1);" ["_genSeqSQL"]=> string(33"create table %s (id int not null)" ["_genSeqCountSQL"]=> string(23"select count(*) from %s" 
["_genSeq2SQL"]=> string(26"insert into %s values (%s)" ["_dropSeqSQL"]=> string(13"drop table %s" ["database"]=> string(8"docutest" ["host"]=> string(9"localhost" ["user"]=> string(9"dmsaccess" ["password"]=> string(10"not stored" ["debug"]=> bool(false) ["maxblobsize"]=> int(262144
[
"concat_operator"]=> string(1"+" ["length"]=> string(6"length" ["random"]=> string(6"rand()" ["upperCase"]=> string(5"upper" ["fmtDate"]=> string(7"'Y-m-d'" ["true"]=> string(1"1" ["false"]=> string(1"0" ["replaceQuote"]=> string(2"\'" ["charSet"]=> bool(false) ["metaDatabasesSQL"]=> string(0"" 
["uniqueOrderBy"]=> bool(false) ["emptyDate"]=> string(6" " ["emptyTimeStamp"]=> string(6" " ["lastInsID"]=> bool(false) ["hasTop"]=> bool(false) ["readOnly"]=> bool(false) ["genID"]=> int(0) ["raiseErrorFn"]=> bool(false) ["cacheSecs"]=> int(3600) ["memCache"]=> bool(false
[
"memCacheHost"]=> NULL ["memCachePort"]=> int(11211) ["memCacheCompress"]=> bool(false) ["sysUTimeStamp"]=> bool(false) ["arrayClass"]=> string(18"ADORecordSet_array" ["noNullStrings"]=> bool(false) ["numCacheHits"]=> int(0) ["numCacheMisses"]=> int(0
[
"pageExecuteCountRows"]=> bool(true) ["uniqueSort"]=> bool(false) ["leftOuter"]=> bool(false) ["rightOuter"]=> bool(false) ["ansiOuter"]=> bool(false) ["autoRollback"]=> bool(false) ["fnExecute"]=> bool(false) ["fnCacheExecute"]=> bool(false) ["blobEncodeType"]=> bool(false
[
"rsPrefix"]=> string(13"ADORecordSet_" ["autoCommit"]=> bool(true) ["transOff"]=> int(0) ["transCnt"]=> int(0) ["fetchMode"]=> int(2) ["null2null"]=> string(4"null" ["bulkBind"]=> bool(false) ["_oldRaiseFn"]=> bool(false) ["_transOK"]=> NULL ["_connectionID"]=> resource(22of type (mysql link
[
"_errorMsg"]=> bool(false) ["_errorCode"]=> bool(false) ["_queryID"]=> bool(false) ["_isPersistentConnection"]=> bool(false) ["_bindInputArray"]=> bool(false) ["_evalAll"]=> bool(false) ["_affected"]=> bool(false) ["_logsql"]=> bool(false) ["_transmode"]=> string(0"" ["databaseName"]=> string(8"docutest" }
 [
"_connected"]=> bool(true) ["_ttreviewid"]=> bool(false) ["_ttapproveid"]=> bool(false) ["_ttstatid"]=> bool(true) ["_ttcontentid"]=> bool(true) } ["user":"LetoDMS_Core_DMS":private]=> *RECURSION* ["contentDir"]=> string(40"/var/services/web/docutest/data/1048576/" ["rootFolderID"]=> int(1
[
"enableConverting"]=> bool(true) ["convertFileTypes"]=> array(0) { } ["viewOnlineFileTypes"]=> array(9) { [0]=> string(4".txt" [1]=> string(5".text" [2]=> string(5".html" [3]=> string(4".htm" [4]=> string(4".pdf" [5]=> string(4".gif" [6]=> string(4".png" [7]=> string(4".jpg" [8]=> string(5".jpeg" 
[
"version"]=> string(8"3.4.0RC4" ["maxDirID"]=> int(0) ["enableAdminRevApp"]=> bool(false) } } bool(false
WarningInvalid argument supplied for foreach() in /volume1/web/docutest/out/out.MyDocuments.php on line 66 WarningInvalid argument supplied for foreach() in /volume1/web/docutest/out/out.MyDocuments.php on line 71 WarningInvalid argument supplied for foreach() 
in /volume1/web/docutest/out/out.MyDocuments.php on line 76 WarningInvalid argument supplied for foreach() in /volume1/web/docutest/out/out.MyDocuments.php on line 81 

Daniel

Btw. Sorry i had to insert breaks, otherwise it messes up the forum layout.
Reply
#10
(11-20-2012, 12:54 AM)Daniel Wrote: Ok, i changed that and went to My Documents menu point where it shows me this message at the top of the page:

....

Looks like the sql statements in $user->getApprovalStatus() failed for some reason.

Are you using the right version of LetoDMS_Core?

The next step would be to echo the sql statements in getApprovalStatus()
found in the file LetoDMS_Core/Core/inc.ClassUser.php

Uwe
Reply


Forum Jump:


Users browsing this thread: