Release of v5.1.2-alpha2
Add native module builder for Joomla 4/5. Refactor dynamic get methods into dedicated classes. Move Joomla DB handling into compiler injector flow. Fix auto-check(in) method for Joomla 4/5 compatibility.
This commit is contained in:
@@ -330,12 +330,13 @@ class Components_mysql_tweaksModel extends ListModel
|
||||
}
|
||||
|
||||
/**
|
||||
* Build an SQL query to checkin all items left checked out longer then a set time.
|
||||
* Build an SQL query to check in all items left checked out longer then a set time.
|
||||
*
|
||||
* @return bool
|
||||
* @return void
|
||||
* @throws \DateMalformedStringException
|
||||
* @since 3.2.0
|
||||
*/
|
||||
protected function checkInNow(): bool
|
||||
protected function checkInNow(): void
|
||||
{
|
||||
// Get set check in time
|
||||
$time = ComponentHelper::getParams('com_componentbuilder')->get('check_in');
|
||||
@@ -349,37 +350,35 @@ class Components_mysql_tweaksModel extends ListModel
|
||||
$query->select('*');
|
||||
$query->from($db->quoteName('#__componentbuilder_component_mysql_tweaks'));
|
||||
// Only select items that are checked out.
|
||||
$query->where($db->quoteName('checked_out') . '!=0');
|
||||
$query->where(('checked_out') . ' >= 0');
|
||||
$db->setQuery($query, 0, 1);
|
||||
$db->execute();
|
||||
if ($db->getNumRows())
|
||||
{
|
||||
// Get Yesterdays date.
|
||||
// Get target date in the past.
|
||||
$date = Factory::getDate()->modify($time)->toSql();
|
||||
// Reset query.
|
||||
$query = $db->getQuery(true);
|
||||
|
||||
// Fields to update.
|
||||
$fields = array(
|
||||
$db->quoteName('checked_out_time') . '=\'0000-00-00 00:00:00\'',
|
||||
$db->quoteName('checked_out') . '=0'
|
||||
);
|
||||
$fields = [
|
||||
$db->quoteName('checked_out_time') . ' = NULL',
|
||||
$db->quoteName('checked_out') . ' = NULL'
|
||||
];
|
||||
|
||||
// Conditions for which records should be updated.
|
||||
$conditions = array(
|
||||
$db->quoteName('checked_out') . '!=0',
|
||||
$db->quoteName('checked_out_time') . '<\''.$date.'\''
|
||||
);
|
||||
$conditions = [
|
||||
$db->quoteName('checked_out') . ' = 0 OR ' . $db->quoteName('checked_out') . ' > 0',
|
||||
$db->quoteName('checked_out_time') . ' < ' . $db->quote($date)
|
||||
];
|
||||
|
||||
// Check table.
|
||||
$query->update($db->quoteName('#__componentbuilder_component_mysql_tweaks'))->set($fields)->where($conditions);
|
||||
|
||||
$db->setQuery($query);
|
||||
|
||||
return $db->execute();
|
||||
$db->execute();
|
||||
}
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user