1 |
35459
|
argiro.kok
|
<?php
|
2 |
|
|
defined('_JEXEC') or die('Restricted access');
|
3 |
|
|
|
4 |
|
|
|
5 |
|
|
jimport('joomla.environment.uri');
|
6 |
|
|
jimport('joomla.html.html');
|
7 |
|
|
jimport('joomla.methods');
|
8 |
|
|
jimport('joomla.log.log');
|
9 |
|
|
JHtml :: _('behavior.framework',true);
|
10 |
|
|
JHtml :: _('behavior.calendar');
|
11 |
|
|
require_once(JPATH_COMPONENT . DS . 'helpers' . DS . 'form.php');
|
12 |
|
|
|
13 |
|
|
$document = JFactory::getDocument();
|
14 |
|
|
$application = JFactory :: getApplication();
|
15 |
|
|
$application->set("jquery", true);
|
16 |
|
|
$document->addStyleSheet(JRoute :: _(JUri :: base() . 'components/com_openaire/js/DataTables-1.10.0/extensions/TableTools/css/dataTables.tableTools.css'));
|
17 |
|
|
$document->addStyleSheet(JRoute :: _(JUri :: base() . 'components/com_openaire/js/DataTables-1.10.0/media/css/jquery.dataTables.css'));
|
18 |
|
|
$document->addScript(JRoute :: _(JUri :: base() . 'templates/yoo_solar/warp/libraries/jquery/jquery.js'));
|
19 |
|
|
$document->addScript(JRoute :: _(JUri :: base() . 'components/com_openaire/js/DataTables-1.10.0/media/js/jquery.dataTables.min.js'));
|
20 |
|
|
$document->addScript(JRoute :: _(JUri :: base() . 'components/com_openaire/js/DataTables-1.10.0/extensions/TableTools/js/dataTables.tableTools.min.js'));
|
21 |
|
|
$document->setTitle("Claims");
|
22 |
|
|
$document->addStyleSheet('http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.6/themes/smoothness/jquery-ui.css');
|
23 |
|
|
$document->addScript("http://code.jquery.com/ui/1.11.1/jquery-ui.min.js");
|
24 |
|
|
//$tipModel = $this->getModel('tooltip');
|
25 |
|
|
JViewLegacy:: loadHelper('PublicationHelper');
|
26 |
|
|
JViewLegacy:: loadHelper('DatasetHelper');
|
27 |
|
|
JViewLegacy:: loadHelper('ProjectHelper');
|
28 |
|
|
?>
|
29 |
|
|
|
30 |
|
|
<div class="headline">
|
31 |
|
|
<h1 class="title">Claimed Documents (<?php echo($this->fromDate) ?> - <?php echo($this->toDate) ?>)</h1>
|
32 |
|
|
</div>
|
33 |
|
|
<h4> </h4>
|
34 |
|
|
|
35 |
|
|
<h5>Change period:</h5>
|
36 |
|
|
<?php OpenaireHelperForm :: openForm(array('option' => JFactory :: getApplication()->input->get('option'), 'view' => JFactory :: getApplication()->input->get('view'), 'Itemid' => JFactory :: getApplication()->input->get('Itemid')), array('method' => 'post', 'id' => 'form')); ?>
|
37 |
|
|
From
|
38 |
|
|
<input type="text" id="fromDate" value="<?php echo($this->fromDate) ?>" size="10" />
|
39 |
|
|
<input type="hidden" id="fromDateShadow" name="fromDate" value="<?php echo urlencode($this->fromDate); ?>"/>
|
40 |
|
|
To
|
41 |
|
|
<input type="text" id="toDate" value="<?php echo($this->toDate) ?>" size="10" />
|
42 |
|
|
<input type="hidden" id="toDateShadow" name="toDate" value="<?php echo urlencode($this->toDate); ?>"/>
|
43 |
|
|
<input type="hidden" name="action" id="action" value="changeDate" />
|
44 |
|
|
<input type="hidden" id="toRemove" name="toRemove" value="" />
|
45 |
|
|
<input type="hidden" id="toRemoveEmails" name="toRemoveEmails" value="" />
|
46 |
|
|
|
47 |
|
|
<input type="submit" />
|
48 |
|
|
<?php OpenaireHelperForm :: closeForm();
|
49 |
|
|
if (count($this->claims) == 0) { ?>
|
50 |
|
|
No publications were deposited in the specified date range.
|
51 |
|
|
<?php } else { ?>
|
52 |
|
|
<div class="filterClaims">
|
53 |
|
|
<input type="checkbox" class="cat_project" id="cat_project" value="cat_project">Projects
|
54 |
|
|
<input type="checkbox" class="cat_concept" id="cat_concept" value="cat_concept">Concepts
|
55 |
|
|
<input type="checkbox" class="cat_publ_dataset" id="cat_publ_dataset" value="cat_publ_dataset">Publication/Dataset
|
56 |
|
|
</div>
|
57 |
|
|
<table width="100%" cellspacing="0" cellpadding="0" border="0" class=" display data-table" id="claimsTable">
|
58 |
|
|
<thead>
|
59 |
|
|
<tr class="even">
|
60 |
|
|
<!-- <th align="left" valign="bottom" nowrap="nowrap">Source type</th>-->
|
61 |
|
|
<th align="left" valign="bottom" nowrap="nowrap" width="40%">Title</th>
|
62 |
|
|
<th align="left" valign="bottom" nowrap="nowrap" width="30%">Link to</th>
|
63 |
|
|
<th align="left" valign="bottom" nowrap="nowrap" width="15%">Claim Date</th>
|
64 |
|
|
<?php
|
65 |
|
|
if (JFactory::getUser()->get('isRoot')) {
|
66 |
|
|
?>
|
67 |
|
|
<th align="left" valign="bottom" nowrap="nowrap" width="10%">
|
68 |
|
|
Claimed by
|
69 |
|
|
</th>
|
70 |
|
|
<?php
|
71 |
|
|
}
|
72 |
|
|
?>
|
73 |
|
|
</tr>
|
74 |
|
|
</thead>
|
75 |
|
|
|
76 |
|
|
<tbody>
|
77 |
|
|
<?php
|
78 |
|
|
$i = 0;
|
79 |
|
|
foreach ($this->claims as $doc) {
|
80 |
|
|
if ($doc->publication != NULL &&(count($doc->projects)>0||count($doc->concepts)>0||count($doc->publications)>0||count($doc->datasets)>0)) {
|
81 |
|
|
$oddEven = (($i % 2 == 0) ? 'even' : 'odd');
|
82 |
|
|
foreach ($doc->publications as $pub) {
|
83 |
|
|
$i++;
|
84 |
|
|
write_table_row($oddEven,'tr_publication','Publication/Dataset',$doc,'Publication/Dataset',
|
85 |
|
|
htmlspecialchars($pub -> title),$pub->date,isset($pub->userEmail)?$pub->userEmail:'',$pub->claimId);
|
86 |
|
|
}
|
87 |
|
|
foreach ($doc->datasets as $dataset) {
|
88 |
|
|
$i++;
|
89 |
|
|
write_table_row($oddEven,'tr_dataset','Publication/Dataset',$doc ,'Publication/Dataset',
|
90 |
|
|
htmlspecialchars($dataset -> title),$dataset->date,isset($dataset->userEmail)?$dataset->userEmail:'',$dataset->claimId);
|
91 |
|
|
}
|
92 |
|
|
foreach ($doc->projects as $project) {
|
93 |
|
|
$i++;
|
94 |
|
|
$project_title= '<div class ="project" id="project" title="'.$project -> title.'">
|
95 |
|
|
<span class="acronym" id="acronym" data-info="'.($project -> projectId).'">
|
96 |
|
|
<span class="tooltip" id="tooltip">'.
|
97 |
|
|
|
98 |
|
|
($project -> acronym == NULL)
|
99 |
|
|
? (
|
100 |
|
|
(strlen($project -> title) > OpenAireViewClaim3 :: MAX_TITLE)
|
101 |
|
|
? (substr($project -> title, 0, OpenAireViewClaim3 :: MAX_TITLE - strlen("...")) . "...")
|
102 |
|
|
: $project -> title) : $project -> acronym.'</span></span>
|
103 |
|
|
<div style="display: none;">
|
104 |
|
|
<div id="'.($project -> projectId).'">'.($project -> title).
|
105 |
|
|
'</div></div> </div>';
|
106 |
|
|
write_table_row($oddEven,'tr_project','Publication/Dataset',$doc ,'Project',
|
107 |
|
|
$project_title,$project->date, isset($project->userEmail)?$project->userEmail:'' ,$project->claimId);
|
108 |
|
|
}
|
109 |
|
|
foreach ($doc->concepts as $concept) {
|
110 |
|
|
$i++;
|
111 |
|
|
write_table_row($oddEven,'tr_concept','Publication/Dataset',$doc,'Concept',
|
112 |
|
|
$concept->title ,$concept->date,isset($concept->userEmail)?$concept->userEmail:'',$concept->claimId);
|
113 |
|
|
}
|
114 |
|
|
}
|
115 |
|
|
}
|
116 |
|
|
|
117 |
|
|
?>
|
118 |
|
|
|
119 |
|
|
</tbody>
|
120 |
|
|
</table>
|
121 |
|
|
<div id="dialog-confirm"></div>
|
122 |
|
|
<?php }
|
123 |
|
|
|
124 |
|
|
function write_table_row($oddEven,$category,$source_type,$doc,$target_type,$target_title,$date,$email,$id) {
|
125 |
|
|
$publication=$doc -> publication;
|
126 |
|
|
?>
|
127 |
|
|
<tr class="publication-<?php echo $publication->id.' '.$category ?> " id="<?php echo $id;?>" data-email="<?php echo $email;?>" style="display:table-row;">
|
128 |
|
|
<!-- <td >
|
129 |
|
|
<?php echo($source_type); ?>
|
130 |
|
|
</td>-->
|
131 |
|
|
<td >
|
132 |
|
|
<div id="claimed" class="yoo-tooltip-toggler">
|
133 |
|
|
<?php
|
134 |
|
|
format_title($doc);
|
135 |
|
|
?>
|
136 |
|
|
</div>
|
137 |
|
|
</td>
|
138 |
|
|
<td title="<?php echo ($target_title);?>">
|
139 |
|
|
<?php
|
140 |
|
|
echo ($target_type.' : <h4>'.$target_title.'</h4>');
|
141 |
|
|
?>
|
142 |
|
|
|
143 |
|
|
</td>
|
144 |
|
|
|
145 |
|
|
<td >
|
146 |
|
|
<?php
|
147 |
|
|
echo date("Y/m/d H:i", $date / 1000)
|
148 |
|
|
?>
|
149 |
|
|
</td>
|
150 |
|
|
<?php
|
151 |
|
|
if (JFactory::getUser()->get('isRoot')) {
|
152 |
|
|
?>
|
153 |
|
|
<td >
|
154 |
|
|
<?php echo $email?>
|
155 |
|
|
</td>
|
156 |
|
|
<?php
|
157 |
|
|
}
|
158 |
|
|
?>
|
159 |
|
|
</tr>
|
160 |
|
|
<?php
|
161 |
|
|
}
|
162 |
|
|
|
163 |
|
|
function format_title($doc) {
|
164 |
|
|
$publication=$doc -> publication;
|
165 |
|
|
if ( $doc -> type==='dataset'){
|
166 |
|
|
$title=DatasetHelper :: _formatTitle(htmlspecialchars($publication -> title), $publication -> accessMode, $publication -> id, $publication -> source, $publication -> url, '',
|
167 |
|
|
isset($publication -> inferred)?$publication -> inferred:false,
|
168 |
|
|
isset($publication -> trust)?$publication -> trust:"",
|
169 |
|
|
isset($publication -> provenance)?$publication -> provenance:"");
|
170 |
|
|
echo ($title);
|
171 |
|
|
|
172 |
|
|
|
173 |
|
|
}else{
|
174 |
|
|
?>
|
175 |
|
|
|
176 |
|
|
<?php
|
177 |
|
|
echo( PublicationHelper :: _formatTitle(htmlspecialchars($publication -> title), $publication -> accessMode, $publication -> id, $publication -> source,
|
178 |
|
|
$publication -> url, '',
|
179 |
|
|
isset($publication -> inferred)?$publication -> inferred:false,
|
180 |
|
|
isset($publication -> trust)?$publication -> trust:"",
|
181 |
|
|
isset($publication -> provenance)?$publication -> provenance:""));
|
182 |
|
|
?>
|
183 |
|
|
|
184 |
|
|
<?php
|
185 |
|
|
}
|
186 |
|
|
}
|
187 |
|
|
?>
|
188 |
|
|
<script language="javascript" type="text/javascript">
|
189 |
|
|
var tableOptions = {};
|
190 |
|
|
var table = null;
|
191 |
|
|
var size ="";
|
192 |
|
|
<?php
|
193 |
|
|
if(!isset($i)){
|
194 |
|
|
//do nothing
|
195 |
|
|
}
|
196 |
|
|
else if($i>50){
|
197 |
|
|
?>
|
198 |
|
|
tableOptions = {
|
199 |
|
|
|
200 |
|
|
"lengthMenu": [[10, 20, 50, -1], [10, 20, 50, "All"]],
|
201 |
|
|
"order": [[ 3, "desc" ]],
|
202 |
|
|
"dom": 'T<"top"iflp>rt<"bottom"ip><"clear">',
|
203 |
|
|
tableTools: {
|
204 |
|
|
"sRowSelect": "multi",
|
205 |
|
|
"aButtons": [ "select_all", "select_none", "delete_selected" ]
|
206 |
|
|
|
207 |
|
|
|
208 |
|
|
}
|
209 |
|
|
};
|
210 |
|
|
<?php
|
211 |
|
|
}else if($i>20){
|
212 |
|
|
?>
|
213 |
|
|
tableOptions = {
|
214 |
|
|
|
215 |
|
|
"lengthMenu": [[10, 20, -1], [10, 20, "All"]],
|
216 |
|
|
"order": [[ 3, "desc" ]],
|
217 |
|
|
"dom": 'T<"top"iflp>rt<"bottom"ip><"clear">',
|
218 |
|
|
tableTools: {
|
219 |
|
|
"sRowSelect": "multi",
|
220 |
|
|
"aButtons": [ "select_all", "select_none", "delete_selected" ]
|
221 |
|
|
|
222 |
|
|
|
223 |
|
|
}
|
224 |
|
|
};
|
225 |
|
|
|
226 |
|
|
<?php
|
227 |
|
|
}else if($i>10){
|
228 |
|
|
?>
|
229 |
|
|
tableOptions = {
|
230 |
|
|
|
231 |
|
|
"lengthMenu": [[10, -1], [10, "All"]],
|
232 |
|
|
"order": [[ 3, "desc" ]],
|
233 |
|
|
"dom": 'T<"top"iflp>rt<"bottom"ip><"clear">',
|
234 |
|
|
tableTools: {
|
235 |
|
|
"sRowSelect": "multi",
|
236 |
|
|
"aButtons": [ "select_all", "select_none", "delete_selected" ]
|
237 |
|
|
|
238 |
|
|
|
239 |
|
|
}
|
240 |
|
|
};
|
241 |
|
|
|
242 |
|
|
<?php
|
243 |
|
|
}else {
|
244 |
|
|
|
245 |
|
|
?>
|
246 |
|
|
tableOptions = {
|
247 |
|
|
"order": [[ 3, "desc" ]],
|
248 |
|
|
"dom": 'T<"top"f>rt<"bottom"><"clear">',
|
249 |
|
|
tableTools: {
|
250 |
|
|
"sRowSelect": "multi",
|
251 |
|
|
"aButtons": [ "select_all", "select_none", "delete_selected" ]
|
252 |
|
|
|
253 |
|
|
|
254 |
|
|
}
|
255 |
|
|
};
|
256 |
|
|
|
257 |
|
|
<?php
|
258 |
|
|
}
|
259 |
|
|
?>
|
260 |
|
|
|
261 |
|
|
|
262 |
|
|
jQuery.fn.dataTable.TableTools.buttons.delete_selected = jQuery.extend(
|
263 |
|
|
true,
|
264 |
|
|
jQuery.fn.dataTable.TableTools.buttonBase,
|
265 |
|
|
{
|
266 |
|
|
"sNewLine": "<br>",
|
267 |
|
|
"sButtonText": "Delete",
|
268 |
|
|
"sDiv": "",
|
269 |
|
|
"fnClick": function( nButton, oConfig ) {
|
270 |
|
|
jQuery("#dialog-confirm").html("Confirm Dialog Box");
|
271 |
|
|
//confirm("Are you sure you want to delete this?")
|
272 |
|
|
/*if( jQuery("#dialog-confirm").dialog({
|
273 |
|
|
resizable: false,
|
274 |
|
|
modal: true,
|
275 |
|
|
title: "Modal",
|
276 |
|
|
height: 250,
|
277 |
|
|
width: 400,
|
278 |
|
|
buttons: {
|
279 |
|
|
"Yes": function () {
|
280 |
|
|
$(this).dialog('close');
|
281 |
|
|
callback(true);
|
282 |
|
|
},
|
283 |
|
|
"No": function () {
|
284 |
|
|
$(this).dialog('close');
|
285 |
|
|
callback(false);
|
286 |
|
|
}
|
287 |
|
|
}
|
288 |
|
|
})){
|
289 |
|
|
*/
|
290 |
|
|
var selected = [];
|
291 |
|
|
var selectedEmail = [];
|
292 |
|
|
var rows = this.fnGetSelected();
|
293 |
|
|
if(confirm(rows.length+" selected claim(s). Are you sure you want to delete them?")){
|
294 |
|
|
|
295 |
|
|
jQuery.each (rows, function(index, row){
|
296 |
|
|
selected.push(row.id);
|
297 |
|
|
selectedEmail.push(row.getAttribute('data-email'));
|
298 |
|
|
});
|
299 |
|
|
jQuery("#action").val('removeSelected');
|
300 |
|
|
jQuery("#toRemove").val(selected.join(","));
|
301 |
|
|
jQuery("#toRemoveEmails").val(selectedEmail.join(","));
|
302 |
|
|
|
303 |
|
|
jQuery("#form").submit();
|
304 |
|
|
}
|
305 |
|
|
else{
|
306 |
|
|
return false;
|
307 |
|
|
}
|
308 |
|
|
|
309 |
|
|
|
310 |
|
|
|
311 |
|
|
// Define the Dialog and its properties.
|
312 |
|
|
|
313 |
|
|
}
|
314 |
|
|
}
|
315 |
|
|
);
|
316 |
|
|
window.addEvent('domready', function() {
|
317 |
|
|
Calendar.setup({
|
318 |
|
|
inputField: 'fromDate', // id of the input field
|
319 |
|
|
ifFormat: '%d/%m/%Y', // format of the input field
|
320 |
|
|
button: 'fromDate', // trigger for the calendar (button ID)
|
321 |
|
|
align: 'Tl', // alignment (defaults to "Bl")
|
322 |
|
|
step: 1,
|
323 |
|
|
singleClick: true
|
324 |
|
|
});
|
325 |
|
|
Calendar.setup({
|
326 |
|
|
inputField: 'toDate', // id of the input field
|
327 |
|
|
ifFormat: '%d/%m/%Y', // format of the input field
|
328 |
|
|
button: 'toDate', // trigger for the calendar (button ID)
|
329 |
|
|
align: 'Tl', // alignment (defaults to "Bl")
|
330 |
|
|
step: 1,
|
331 |
|
|
singleClick: true
|
332 |
|
|
});
|
333 |
|
|
$('form').addEvent('submit', function() {
|
334 |
|
|
$('fromDateShadow').value = encodeURIComponent($('fromDate').value);
|
335 |
|
|
$('toDateShadow').value = encodeURIComponent($('toDate').value);
|
336 |
|
|
});
|
337 |
|
|
|
338 |
|
|
$('cat_project').addEvent('click', function() {
|
339 |
|
|
table.draw();
|
340 |
|
|
});
|
341 |
|
|
|
342 |
|
|
$('cat_publ_dataset').addEvent('click', function() {
|
343 |
|
|
table.draw();
|
344 |
|
|
});
|
345 |
|
|
$('cat_concept').addEvent('click', function() {
|
346 |
|
|
table.draw();
|
347 |
|
|
});
|
348 |
|
|
table = jQuery('.data-table').DataTable(tableOptions);
|
349 |
|
|
/* Custom filtering function which will search data in column four between two values */
|
350 |
|
|
jQuery.fn.dataTable.ext.search.push(
|
351 |
|
|
function( settings, data, dataIndex ) {
|
352 |
|
|
var type = data[1] ; // use data for the target type column
|
353 |
|
|
if($('cat_project').checked&& type.indexOf( "Project" ) != -1){
|
354 |
|
|
return true;
|
355 |
|
|
}
|
356 |
|
|
if($('cat_concept').checked&& type.indexOf( "Concept" ) != -1){
|
357 |
|
|
return true;
|
358 |
|
|
}
|
359 |
|
|
if($('cat_publ_dataset').checked&& type.indexOf( "Publication/Dataset" ) != -1){
|
360 |
|
|
return true;
|
361 |
|
|
}
|
362 |
|
|
if(!$('cat_project').checked &&! $('cat_concept').checked && !$('cat_publ_dataset').checked){
|
363 |
|
|
return true;
|
364 |
|
|
}
|
365 |
|
|
return false;
|
366 |
|
|
}
|
367 |
|
|
);
|
368 |
|
|
|
369 |
|
|
});
|
370 |
|
|
|
371 |
|
|
|
372 |
|
|
</script>
|