This repository has been archived on 2024-11-28. You can view files and clone it, but cannot push or open issues or pull requests.
MatritumCantat_Web/www/administrator/components/com_checkin/admin.checkin.php

118 lines
3.1 KiB
PHP
Raw Permalink Normal View History

<?php
/**
* @version $Id: admin.checkin.php 10002 2008-02-08 10:56:57Z willebil $
* @package Joomla
* @subpackage Checkin
* @copyright Copyright (C) 2005 Open Source Matters. All rights reserved.
* @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPL, see LICENSE.php
* Joomla! is free software. This version may have been modified pursuant
* to the GNU General Public License, and as distributed it includes or
* is derivative of works licensed under the GNU General Public License or
* other free or open source software licenses.
* See COPYRIGHT.php for copyright notices and details.
*/
// no direct access
defined( '_VALID_MOS' ) or die( 'Restricted access' );
if (!$acl->acl_check( 'administration', 'config', 'users', $my->usertype )) {
mosRedirect( 'index2.php?', _NOT_AUTH );
}
$nullDate = $database->getNullDate();
?>
<table class="adminheading">
<tr>
<th class="checkin">
Global Check-in
</th>
</tr>
</table>
<table class="adminform">
<tr>
<th class="title">
Database Table
</th>
<th class="title">
# of Items
</th>
<th class="title">
Checked-In
</th>
<th class="title">
</th>
</tr>
<?php
$tables = $database->getTableList();
$k = 0;
foreach ($tables as $tn) {
// make sure we get the right tables based on prefix
if (!preg_match( "/^".$mosConfig_dbprefix."/i", $tn )) {
continue;
}
$fields = $database->getTableFields( array( $tn ) );
$foundCO = false;
$foundCOT = false;
$foundE = false;
$foundCO = isset( $fields[$tn]['checked_out'] );
$foundCOT = isset( $fields[$tn]['checked_out_time'] );
$foundE = isset( $fields[$tn]['editor'] );
if ($foundCO && $foundCOT) {
if ($foundE) {
$query = "SELECT checked_out, editor"
. "\n FROM $tn"
. "\n WHERE checked_out > 0"
;
} else {
$query = "SELECT checked_out"
. "\n FROM $tn"
. "\n WHERE checked_out > 0"
;
}
$database->setQuery( $query );
$res = $database->query();
$num = $database->getNumRows( $res );
if ($foundE) {
$query = "UPDATE $tn"
. "\n SET checked_out = 0, checked_out_time = " . $database->Quote( $nullDate ) . ", editor = NULL"
. "\n WHERE checked_out > 0"
;
} else {
$query = "UPDATE $tn"
. "\n SET checked_out = 0, checked_out_time = " . $database->Quote( $nullDate )
. "\n WHERE checked_out > 0"
;
}
$database->setQuery( $query );
$res = $database->query();
if ($res == 1) {
if ($num > 0) {
echo "<tr class=\"row$k\">";
echo "\n <td width=\"350\">Checking table - $tn</td>";
echo "\n <td width=\"150\">Checked in <b>$num</b> items</td>";
echo "\n <td width=\"100\" align=\"center\"><img src=\"images/tick.png\" border=\"0\" alt=\"tick\" /></td>";
echo "\n <td>&nbsp;</td>";
echo "\n</tr>";
} else {
echo "<tr class=\"row$k\">";
echo "\n <td width=\"350\">Checking table - $tn</td>";
echo "\n <td width=\"150\">Checked in <b>$num</b> items</td>";
echo "\n <td width=\"100\">&nbsp;</td>";
echo "\n <td>&nbsp;</td>";
echo "\n</tr>";
}
$k = 1 - $k;
}
}
}
?>
<tr>
<td colspan="4">
<strong>Checked out items have now been all checked in</strong>
</td>
</tr>
</table>