Page Menu
Home
GRNET
Search
Configure Global Search
Log In
Files
F1426792
riferimento.php
No One
Temporary
Actions
Download File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Flag For Later
Subscribers
None
File Metadata
Details
File Info
Storage
Attached
Created
Sat, Jan 17, 12:18 PM
Size
20 KB
Mime Type
text/x-php
Expires
Mon, Jan 19, 12:18 PM (21 h, 14 m)
Engine
blob
Format
Raw Data
Handle
326068
Attached To
rDIADOSIS diadosis web portal
riferimento.php
View Options
<?php
include_once
(
"db.php"
);
include_once
(
"utility.php"
);
include_once
(
"fieldrender.php"
);
include_once
(
"parserfield.php"
);
include_once
(
"OpenResolver.php"
);
class
Riferimento
{
protected
$rif
;
private
$controllo
;
public
function
__construct
(
$id
=
null
,
$type
=
null
)
{
$this
->
controllo
=
array
();
$this
->
rif
=
$_SESSION
[
'db'
]->
fetch_fields
(
"riferimento"
);
if
(
$id
!=
null
)
{
$result
=
$_SESSION
[
'db'
]->
execute
(
"SELECT * FROM riferimento WHERE ri_id=$id"
);
if
(
$result
&&
$_SESSION
[
'db'
]->
numrows
(
$result
)
==
1
)
{
$dati
=
$_SESSION
[
'db'
]->
fetch
(
$result
);
foreach
(
$this
->
rif
as
$key
=>
$v
)
$this
->
rif
[
$key
]->
value
=
$dati
[
$key
];
$type
=
$this
->
rif
[
"ri_tipomateriale"
]->
value
;
}
}
switch
(
$type
)
{
case
getConstVar
(
"TIPO_ARTICOLO"
):
unset
(
$this
->
rif
[
"ri_isbn"
]);
$this
->
rif
[
"ri_tipomateriale"
]->
value
=
getConstVar
(
"TIPO_ARTICOLO"
);
break
;
case
getConstVar
(
"TIPO_LIBRO"
):
unset
(
$this
->
rif
[
"ri_issn"
]);
unset
(
$this
->
rif
[
"ri_fasc"
]);
$this
->
rif
[
"ri_tipomateriale"
]->
value
=
getConstVar
(
"TIPO_LIBRO"
);
break
;
}
}
public
function
__get
(
$fieldname
)
{
return
$this
->
rif
[
$fieldname
]->
value
;
}
public
function
__set
(
$fieldname
,
$value
)
{
$this
->
rif
[
$fieldname
]->
value
=
$value
;
}
public
function
get_controllo
()
{
return
$this
->
controllo
;
}
public
function
reset_controllo
()
{
$this
->
controllo
=
array
();
}
public
function
__isset
(
$fieldname
)
{
return
isset
(
$this
->
rif
[
$fieldname
]);
}
public
function
__unset
(
$fieldname
)
{
unset
(
$this
->
rif
[
$fieldname
]);
}
function
__destruct
()
{
$this
->
rif
=
null
;
}
public
function
visualizza_intestazione
()
{
$ret
=
"<div class=
\"
ri_tipomateriale
\"
>"
;
if
(
$this
->
rif
[
"ri_tipomateriale"
]->
value
==
getConstVar
(
"TIPO_ARTICOLO"
))
$ret
.=
"<span>"
.
getConstVar
(
"ARTICOLO"
)
.
"</span>"
;
else
if
(
$this
->
rif
[
"ri_tipomateriale"
]->
value
==
getConstVar
(
"TIPO_LIBRO"
))
$ret
.=
"<span>"
.
getConstVar
(
"LIBRO"
)
.
"</span>"
;
$ret
.=
"</div>"
;
return
$ret
;
}
function
visualizza
(
$intestazione
=
true
,
$labels
=
true
)
{
$ret
=
""
;
foreach
(
$this
->
rif
as
$key
=>
$valore
)
if
(
$key
!=
"ri_id"
&&
$key
!=
"ri_tipomateriale"
)
{
$ret
.=
FieldRender
::
renderField
(
$this
->
rif
[
$key
]);
}
return
$ret
;
}
function
elimina
()
{
$query
=
"DELETE FROM riferimento WHERE ri_id="
.
$this
->
rif
[
"ri_id"
]->
value
;
$result
=
$_SESSION
[
'db'
]->
execute
(
$query
);
return
$result
;
}
public
function
addFormFields
(
$form
,
$new
)
{
$this
->
reset_controllo
();
if
(!
$new
)
$form
->
addHidden
(
"ri_id"
,
$this
->
rif
[
"ri_id"
]->
value
);
if
(
$this
->
rif
[
"ri_tipomateriale"
]->
value
==
getConstVar
(
"TIPO_LIBRO"
))
{
$form
->
addHidden
(
"ri_docID"
,
null
);
unset
(
$_SESSION
[
'ri_docID'
]);
}
$form
->
addHTML
(
"<div class=
\"
ri_tipomateriale
\"
>"
);
if
(
$this
->
rif
[
"ri_tipomateriale"
]->
value
==
getConstVar
(
"TIPO_ARTICOLO"
))
$form
->
addHTML
(
"<span>"
.
getConstVar
(
"ARTICOLO"
)
.
"</span>"
);
else
if
(
$this
->
rif
[
"ri_tipomateriale"
]->
value
==
getConstVar
(
"TIPO_LIBRO"
))
$form
->
addHTML
(
"<span>"
.
getConstVar
(
"LIBRO"
)
.
"</span>"
);
$form
->
addHTML
(
"</div>"
);
foreach
(
$this
->
rif
as
$key
=>
$v
)
{
if
(
$key
!=
"ri_id"
&&
$key
!=
"ri_tipomateriale"
)
{
$controllo_rif
=
$form
->
addField
(
$this
->
rif
[
$key
]);
$this
->
controllo
=
array_merge
(
$this
->
controllo
,
$controllo_rif
);
if
(
$key
==
"ri_au2"
)
$form
->
addHTML
(
"<br class=
\"
clear_float
\"
/>"
);
}
else
$noinsert
[
$key
]
=
TRUE
;
}
$code
=
urlencode
(
serialize
(
$noinsert
));
$form
->
addHidden
(
"noins_rif"
,
$code
);
return
$this
->
controllo
;
}
function
inserisci
(
$post
)
{
$attributi
=
""
;
$valori
=
""
;
$noinsert
=
unserialize
(
urldecode
(
$post
[
"noins_rif"
]));
$dbfields
=
new
ParserField
(
$post
);
$attributi
=
"ri_tipomateriale"
;
$valori
=
"'"
.
$post
[
"rif_type"
]
.
"'"
;
foreach
(
$this
->
rif
as
$key
=>
$v
)
if
(!
isset
(
$noinsert
[
$key
])
||
!
$noinsert
[
$key
])
{
$attributi
.=
","
.
$key
;
$valori
.=
","
.
$dbfields
->
parse
(
$this
->
rif
[
$key
]);
}
if
(
$attributi
!=
""
)
{
$query
=
"INSERT into riferimento ($attributi) VALUES ("
.
strip_tags
(
$valori
)
.
")"
;
$result
=
$_SESSION
[
'db'
]->
execute
(
$query
);
if
(
$result
)
return
$_SESSION
[
'db'
]->
last_id
();
}
else
return
FALSE
;
}
public
function
inserisciDB
()
{
$attributi
=
""
;
$valori
=
""
;
foreach
(
$this
->
rif
as
$key
=>
$v
)
{
if
(
$key
!=
"ri_id"
)
{
if
(
$attributi
!=
""
)
$attributi
.=
","
;
$attributi
.=
$key
;
if
(
$valori
!=
""
)
$valori
.=
","
;
$valori
.=
ParserField
::
quote
(
$this
->
rif
[
$key
]);
}
}
if
(
$attributi
!=
""
)
{
$query
=
"INSERT into riferimento ($attributi) VALUES($valori)"
;
$result
=
$_SESSION
[
'db'
]->
execute
(
$query
);
if
(
$result
)
return
$_SESSION
[
'db'
]->
last_id
();
}
else
return
FALSE
;
}
public
function
aggiorna
(
$post
)
{
$coppie
=
""
;
$noinsert
=
unserialize
(
urldecode
(
$post
[
"noins_rif"
]));
$dbfields
=
new
ParserField
(
$post
);
foreach
(
$this
->
rif
as
$key
=>
$v
)
if
(!
isset
(
$noinsert
[
$key
])
||
!
$noinsert
[
$key
])
{
if
(
$coppie
!=
""
)
$coppie
.=
","
;
$coppie
.=
$key
.
"="
.
$dbfields
->
parse
(
$this
->
rif
[
$key
]);
}
if
(
$coppie
!=
""
)
{
$query
=
"UPDATE riferimento SET "
.
strip_tags
(
$coppie
)
.
" WHERE ri_id="
.
$this
->
rif
[
"ri_id"
]->
value
;
$result
=
$_SESSION
[
'db'
]->
execute
(
$query
);
return
$result
;
}
return
TRUE
;
}
public
function
aggiornaDB
()
{
$coppie
=
""
;
foreach
(
$this
->
rif
as
$key
=>
$v
)
{
if
(
$coppie
!=
""
)
$coppie
.=
","
;
$coppie
.=
$key
.
"="
.
ParserField
::
quote
(
$this
->
rif
[
$key
]);
}
if
(
$coppie
!=
""
)
{
$query
=
"UPDATE riferimento SET "
.
strip_tags
(
$coppie
)
.
" WHERE ri_id="
.
$this
->
rif
[
"ri_id"
]->
value
;
$result
=
$_SESSION
[
'db'
]->
execute
(
$query
);
return
$result
;
}
return
TRUE
;
}
public
function
aggiornaObject
(
$post
)
{
$noinsert
=
unserialize
(
urldecode
(
$post
[
"noins_rif"
]));
$flds
=
new
ParserField
(
$post
);
foreach
(
$this
->
rif
as
$key
=>
$v
)
{
if
(!
isset
(
$noinsert
[
$key
])
||
!
$noinsert
[
$key
])
{
$value
=
$flds
->
simple_parse
(
$this
->
rif
[
$key
]);
$this
->
rif
[
$key
]->
value
=
$value
;
}
}
if
(
isset
(
$post
[
'ri_docID'
]))
$_SESSION
[
'ri_docID'
]
=
$post
[
'ri_docID'
];
return
TRUE
;
}
function
parse_openurl
(
$type
)
{
$oR
=
new
OpenResolver
();
$infoAutori
=
array
();
if
(
isset
(
$_GET
[
'sid'
])
&&
urldecode
(
$_GET
[
'sid'
])
==
'Entrez:PubMed'
&&
isset
(
$_GET
[
'id'
])
&&
strpos
(
urldecode
(
$_GET
[
'id'
]),
"pmid:"
)
===
0
)
{
$valori
=
$oR
->
parser_Pubmed
(
urldecode
(
$_GET
[
'id'
]),
urldecode
(
$_GET
[
'sid'
]));
$infoAutori
=
preg_split
(
"/,/"
,
$valori
[
'autore'
],
2
);
if
(!
isset
(
$infoAutori
[
1
]))
$infoAutori
[
1
]
=
""
;
list
(
$autore1
,
$altriautori
)
=
$infoAutori
;
$this
->
rif
[
"ri_titolopub"
]->
value
=
isset
(
$valori
[
'titolo'
])
?
$valori
[
'titolo'
]
:
null
;
$this
->
rif
[
"ri_titolopart"
]->
value
=
isset
(
$valori
[
'sottotitolo'
])
?
$valori
[
'sottotitolo'
]
:
null
;
$this
->
rif
[
"ri_au1"
]->
value
=
$autore1
;
$this
->
rif
[
"ri_au2"
]->
value
=
$altriautori
;
$this
->
rif
[
"ri_anno"
]->
value
=
isset
(
$valori
[
'anno'
])
?
$valori
[
'anno'
]
:
null
;
$this
->
rif
[
"ri_vol"
]->
value
=
isset
(
$valori
[
'volume'
])
?
$valori
[
'volume'
]
:
null
;
$this
->
rif
[
"ri_fasc"
]->
value
=
isset
(
$valori
[
'fascicolo'
])
?
$valori
[
'fascicolo'
]
:
null
;
$this
->
rif
[
"ri_pgini"
]->
value
=
isset
(
$valori
[
'pagini'
])
?
$valori
[
'pagini'
]
:
null
;
$this
->
rif
[
"ri_pgfine"
]->
value
=
isset
(
$valori
[
'pagfin'
])
?
$valori
[
'pagfin'
]
:
null
;
$this
->
rif
[
"ri_editore"
]->
value
=
isset
(
$valori
[
'editore'
])
?
$valori
[
'editore'
]
:
null
;
$this
->
rif
[
"ri_luogoed"
]->
value
=
isset
(
$valori
[
'luogo'
])
?
$valori
[
'luogo'
]
:
null
;
$this
->
rif
[
"ri_issn"
]->
value
=
isset
(
$valori
[
'issn'
])
?
$valori
[
'issn'
]
:
null
;
$this
->
rif
[
"ri_abstract"
]->
value
=
isset
(
$valori
[
'abstract'
])
?
$valori
[
'abstract'
]
:
null
;
$this
->
rif
[
"ri_sid"
]->
value
=
$_GET
[
'sid'
];
$this
->
rif
[
"ri_doi"
]->
value
=
isset
(
$valori
[
'doi'
])
?
$valori
[
'doi'
]
:
null
;
$this
->
rif
[
"ri_pmid"
]->
value
=
isset
(
$valori
[
'pmid'
])
?
$valori
[
'pmid'
]
:
null
;
}
else
{
$genericdata
=
$oR
->
getGenericData
();
$titoli
=
$oR
->
getTitle
();
$autori
=
$oR
->
getAuthor
();
$codice
=
$oR
->
getISSNISBN
();
$this
->
rif
[
"ri_titolopub"
]->
value
=
isset
(
$titoli
[
'titolo'
])
?
$titoli
[
'titolo'
]
:
null
;
$this
->
rif
[
"ri_titolopart"
]->
value
=
isset
(
$titoli
[
'sottotitolo'
])
?
$titoli
[
'sottotitolo'
]
:
null
;
$this
->
rif
[
"ri_au1"
]->
value
=
isset
(
$autori
[
0
])
?
$autori
[
0
]
:
null
;
$this
->
rif
[
"ri_au2"
]->
value
=
isset
(
$autori
[
1
])
?
$autori
[
1
]
:
null
;
$this
->
rif
[
"ri_anno"
]->
value
=
isset
(
$genericdata
[
'anno'
])
?
$genericdata
[
'anno'
]
:
null
;
$this
->
rif
[
"ri_vol"
]->
value
=
isset
(
$genericdata
[
'volume'
])
?
$genericdata
[
'volume'
]
:
null
;
$this
->
rif
[
"ri_pgini"
]->
value
=
isset
(
$genericdata
[
'pagini'
])
?
$genericdata
[
'pagini'
]
:
null
;
$this
->
rif
[
"ri_pgfine"
]->
value
=
isset
(
$genericdata
[
'pagfin'
])
?
$genericdata
[
'pagfin'
]
:
null
;
$this
->
rif
[
"ri_editore"
]->
value
=
isset
(
$genericdata
[
'editore'
])
?
$genericdata
[
'editore'
]
:
null
;
$this
->
rif
[
"ri_luogoed"
]->
value
=
isset
(
$genericdata
[
'luogo'
])
?
$genericdata
[
'luogo'
]
:
null
;
$this
->
rif
[
"ri_sid"
]->
value
=
$oR
->
getSID
();
$this
->
rif
[
"ri_doi"
]->
value
=
$oR
->
getdoi
();
if
(
$type
==
getConstVar
(
"TIPO_ARTICOLO"
))
{
$this
->
rif
[
"ri_fasc"
]->
value
=
$genericdata
[
'fascicolo'
];
}
if
(
$type
==
getConstVar
(
"TIPO_ARTICOLO"
))
{
$this
->
rif
[
"ri_issn"
]->
value
=
$codice
[
'issn'
];
}
else
{
$this
->
rif
[
"ri_isbn"
]->
value
=
$codice
[
'isbn'
];
}
}
}
// DIADOSIS TEAM Get details from DOI...
//the curl request processor
function
processCurlJsonrequest
(
$URL
)
{
//Initiate cURL request and send back the result
$ch
=
curl_init
();
curl_setopt
(
$ch
,
CURLOPT_HTTPHEADER
,
array
(
'Accept: application/json'
));
curl_setopt
(
$ch
,
CURLOPT_URL
,
$URL
);
curl_setopt
(
$ch
,
CURLOPT_RETURNTRANSFER
,
1
);
curl_setopt
(
$ch
,
CURLOPT_FOLLOWLOCATION
,
TRUE
);
curl_setopt
(
$ch
,
CURLOPT_VERBOSE
,
TRUE
);
$resulta
=
curl_exec
(
$ch
);
$contentType
=
curl_getinfo
(
$ch
,
CURLINFO_CONTENT_TYPE
);
if
(
curl_errno
(
$ch
))
{
$return
=
curl_error
(
$ch
);
}
else
if
(
$contentType
!==
'application/json'
)
{
$return
=
false
;
}
else
{
$return
=
$resulta
;
curl_close
(
$ch
);
}
return
$return
;
}
// DIADOSIS TEAM Get details from PMID...
//the curl request processor
function
processCurlXMLrequest
(
$URL
)
{
//Initiate cURL request and send back the result
$ch
=
curl_init
();
curl_setopt
(
$ch
,
CURLOPT_HTTPHEADER
,
array
(
'Accept: application/xml'
));
curl_setopt
(
$ch
,
CURLOPT_URL
,
$URL
);
curl_setopt
(
$ch
,
CURLOPT_RETURNTRANSFER
,
1
);
curl_setopt
(
$ch
,
CURLOPT_FOLLOWLOCATION
,
TRUE
);
curl_setopt
(
$ch
,
CURLOPT_VERBOSE
,
TRUE
);
$resulta
=
curl_exec
(
$ch
);
$contentType
=
curl_getinfo
(
$ch
,
CURLINFO_CONTENT_TYPE
);
if
(
curl_errno
(
$ch
))
{
$return
=
curl_error
(
$ch
);
}
else
if
(
$contentType
!==
'text/xml; charset=UTF-8'
)
{
$return
=
false
;
}
else
{
$return
=
$resulta
;
curl_close
(
$ch
);
}
return
$return
;
}
//DIADOSIS TEAM * Parse DOI
function
parse_doi_api
(
$type
)
{
if
(
isset
(
$_GET
[
'doi'
]))
{
$_GET
[
'doi'
]
=
strip_tags
(
$_GET
[
'doi'
]);
if
(
strpos
(
$_GET
[
'doi'
],
'10.'
)
!==
false
)
{
$doi
=
"https://dx.doi.org/"
.
$_GET
[
'doi'
];
$json_r
=
json_decode
(
$this
->
processCurlJsonrequest
(
$doi
));
// DIADOSIS TEAM Check if api call with doi returns results, meaning id doi is published or if there was another problem
if
(!
is_null
(
$json_r
))
{
$i
=
0
;
$infoAutori
=
$json_r
->
author
[
0
]->
family
.
' '
.
$json_r
->
author
[
0
]->
given
;
$infoAutori1
=
""
;
foreach
(
$json_r
->
author
as
$auth
)
{
if
(
$i
!=
0
)
{
$infoAutori1
.=
$auth
->
family
.
' '
.
$auth
->
given
.
", "
;
}
$i
++;
}
$infoAutori1
=
substr
(
$infoAutori1
,
0
,
-
2
);
$this
->
rif
[
"ri_titolopub"
]->
value
=
isset
(
$json_r
->{
'container-title'
})
?
$json_r
->{
'container-title'
}
:
null
;
$this
->
rif
[
"ri_titolopart"
]->
value
=
isset
(
$json_r
->
title
)
?
$json_r
->
title
:
null
;
$this
->
rif
[
"ri_au1"
]->
value
=
$infoAutori
;
$this
->
rif
[
"ri_au2"
]->
value
=
$infoAutori1
;
$this
->
rif
[
"ri_anno"
]->
value
=
isset
(
$json_r
->
issued
->{
'date-parts'
}[
0
])
?
$json_r
->
issued
->{
'date-parts'
}[
0
][
0
]
:
null
;
$this
->
rif
[
"ri_vol"
]->
value
=
isset
(
$json_r
->
volume
)
?
$json_r
->
volume
:
null
;
$this
->
rif
[
"ri_fasc"
]->
value
=
isset
(
$json_r
->
issue
)
?
$json_r
->
issue
:
null
;
$pages
=
explode
(
"-"
,
$json_r
->
page
);
$this
->
rif
[
"ri_pgini"
]->
value
=
(
isset
(
$pages
[
0
])
&&
$pages
[
0
]
!=
0
)
?
$pages
[
0
]
:
"1"
;
$this
->
rif
[
"ri_pgfine"
]->
value
=
isset
(
$pages
[
1
])
?
$pages
[
1
]
:
"1"
;
$this
->
rif
[
"ri_editore"
]->
value
=
isset
(
$json_r
->
publisher
)
?
$json_r
->
publisher
:
null
;
$this
->
rif
[
"ri_issn"
]->
value
=
isset
(
$json_r
->
ISSN
[
0
])
?
$json_r
->
ISSN
[
0
]
:
null
;
$this
->
rif
[
"ri_abstract"
]->
value
=
isset
(
$json_r
->
abstract
)
?
$json_r
->
abstract
:
null
;
$this
->
rif
[
"ri_sid"
]->
value
=
$_GET
[
'sid'
];
$this
->
rif
[
"ri_doi"
]->
value
=
isset
(
$json_r
->
DOI
)
?
$json_r
->
DOI
:
null
;
}
else
{
echo
'<script>alert(
\'
'
.
getConstVar
(
'DOI_NOT_FETCH_DETAILS'
)
.
'
\'
);</script>'
;
$this
->
rif
[
"ri_titolopub"
]->
value
=
"DOI: "
.
$_GET
[
'doi'
];
$this
->
rif
[
"ri_anno"
]->
value
=
date
(
"Y"
);
$this
->
rif
[
"ri_pgini"
]->
value
=
"1"
;
$this
->
rif
[
"ri_doi"
]->
value
=
$_GET
[
'doi'
];
}
}
else
{
$doi
=
"http://eutils.ncbi.nlm.nih.gov/entrez/eutils/efetch.fcgi?db=pubmed&retmode=xml&id="
.
$_GET
[
'doi'
];
$xml_r
=
simplexml_load_string
(
$this
->
processCurlXMLrequest
(
$doi
));
// DIADOSIS TEAM Check if api call with pmid returns results, meaning pmid was not correct or if there was another problem
if
(
isset
(
$xml_r
->
ERROR
)
||
!
isset
(
$xml_r
->
PubmedArticle
))
{
echo
'<script>alert(
\'
'
.
getConstVar
(
'PMID_NOT_FETCH_DETAILS'
)
.
'
\'
);</script>'
;
$this
->
rif
[
"ri_pmid"
]->
value
=
$_GET
[
'doi'
];
}
else
{
$i
=
0
;
$infoAutori
=
$xml_r
->
PubmedArticle
->
MedlineCitation
->
Article
->
AuthorList
->
Author
->
LastName
[
0
]
.
' '
.
$xml_r
->
PubmedArticle
->
MedlineCitation
->
Article
->
AuthorList
->
Author
->
ForeName
[
0
]
.
' '
.
$xml_r
->
PubmedArticle
->
MedlineCitation
->
Article
->
AuthorList
->
Author
->
Initials
[
0
];
$infoAutori1
=
""
;
foreach
(
$xml_r
->
PubmedArticle
->
MedlineCitation
->
Article
->
AuthorList
->
Author
as
$auth
)
{
if
(
$i
!=
0
)
{
$infoAutori1
.=
$auth
->
LastName
.
' '
.
$auth
->
ForeName
.
' '
.
$auth
->
Initials
.
", "
;
}
$i
++;
}
// DIADOSIS TEAM GET article DOI and PMID from list of IDs. if PMID not in list get it from above field in the api result
foreach
(
$xml_r
->
PubmedArticle
->
PubmedData
->
ArticleIdList
->
ArticleId
as
$ids
)
{
if
(
$ids
[
"IdType"
]
==
"doi"
)
$api_get_doi
=
(
string
)
$ids
[
0
];
if
(
$ids
[
"IdType"
]
==
"pubmed"
)
$api_get_pmid
=
(
string
)
$ids
[
0
];
}
if
(!
isset
(
$api_get_pmid
))
$api_get_pmid
=
$xml_r
->
PubmedArticle
->
MedlineCitation
->
PMID
;
if
(
isset
(
$xml_r
->
PubmedArticle
->
MedlineCitation
->
Article
->
Pagination
))
{
$pages
=
explode
(
"-"
,
$xml_r
->
PubmedArticle
->
MedlineCitation
->
Article
->
Pagination
->
MedlinePgn
);
$pages
[
1
]
=
$pages
[
0
]
+
$pages
[
1
];
}
if
(
isset
(
$xml_r
->
PubmedArticle
->
MedlineCitation
->
Article
->
Journal
->
JournalIssue
->
PubDate
->
Year
))
$year
=
(
string
)
$xml_r
->
PubmedArticle
->
MedlineCitation
->
Article
->
Journal
->
JournalIssue
->
PubDate
->
Year
;
else
if
(
isset
(
$xml_r
->
PubmedArticle
->
MedlineCitation
->
Article
->
Journal
->
JournalIssue
->
PubDate
->
MedlineDate
))
$year
=
substr
((
string
)
$xml_r
->
PubmedArticle
->
MedlineCitation
->
Article
->
Journal
->
JournalIssue
->
PubDate
->
MedlineDate
,
0
,
4
);
else
$year
=
"0"
;
$infoAutori1
=
substr
(
$infoAutori1
,
0
,
-
2
);
$this
->
rif
[
"ri_titolopub"
]->
value
=
isset
(
$xml_r
->
PubmedArticle
->
MedlineCitation
->
Article
->
Journal
->
Title
)
?
(
string
)
$xml_r
->
PubmedArticle
->
MedlineCitation
->
Article
->
Journal
->
Title
:
null
;
$this
->
rif
[
"ri_titolopart"
]->
value
=
isset
(
$xml_r
->
PubmedArticle
->
MedlineCitation
->
Article
->
ArticleTitle
)
?
(
string
)
$xml_r
->
PubmedArticle
->
MedlineCitation
->
Article
->
ArticleTitle
:
null
;
$this
->
rif
[
"ri_au1"
]->
value
=
$infoAutori
;
$this
->
rif
[
"ri_au2"
]->
value
=
$infoAutori1
;
$this
->
rif
[
"ri_anno"
]->
value
=
$year
;
$this
->
rif
[
"ri_vol"
]->
value
=
isset
(
$xml_r
->
PubmedArticle
->
MedlineCitation
->
Article
->
Journal
->
JournalIssue
->
Volume
)
?
(
string
)
$xml_r
->
PubmedArticle
->
MedlineCitation
->
Article
->
Journal
->
JournalIssue
->
Volume
:
null
;
$this
->
rif
[
"ri_fasc"
]->
value
=
isset
(
$xml_r
->
PubmedArticle
->
MedlineCitation
->
Article
->
Journal
->
JournalIssue
->
Issue
)
?
(
string
)
$xml_r
->
PubmedArticle
->
MedlineCitation
->
Article
->
Journal
->
JournalIssue
->
Issue
:
null
;
$this
->
rif
[
"ri_pgini"
]->
value
=
(
isset
(
$pages
)
&&
(
int
)
$pages
[
0
]
!=
0
)
?
$pages
[
0
]
:
"1"
;
$this
->
rif
[
"ri_pgfine"
]->
value
=
(
isset
(
$pages
)
&&
(
int
)
$pages
[
1
]
!=
0
)
?
$pages
[
1
]
:
"1"
;
$this
->
rif
[
"ri_editore"
]->
value
=
isset
(
$xml_r
->
PubmedArticle
->
MedlineCitation
->
Article
->
Abstract
->
CopyrightInformation
)
?
(
string
)
$xml_r
->
PubmedArticle
->
MedlineCitation
->
Article
->
Abstract
->
CopyrightInformation
:
null
;
$this
->
rif
[
"ri_issn"
]->
value
=
isset
(
$xml_r
->
PubmedArticle
->
MedlineCitation
->
Article
->
Journal
->
ISSN
)
?
(
string
)
$xml_r
->
PubmedArticle
->
MedlineCitation
->
Article
->
Journal
->
ISSN
:
null
;
$this
->
rif
[
"ri_abstract"
]->
value
=
isset
(
$xml_r
->
PubmedArticle
->
MedlineCitation
->
Article
->
Abstract
->
AbstractText
)
?
(
string
)
$xml_r
->
PubmedArticle
->
MedlineCitation
->
Article
->
Abstract
->
AbstractText
:
null
;
$this
->
rif
[
"ri_sid"
]->
value
=
$_GET
[
'sid'
];
$this
->
rif
[
"ri_doi"
]->
value
=
isset
(
$api_get_doi
)
?
$api_get_doi
:
null
;
$this
->
rif
[
"ri_pmid"
]->
value
=
$api_get_pmid
;
}
}
}
}
}
Event Timeline
Log In to Comment