diff --git a/libraries/legacy/model/admin.php b/libraries/legacy/model/admin.php index fff8e1118ee65..6e8f660d9063c 100644 --- a/libraries/legacy/model/admin.php +++ b/libraries/legacy/model/admin.php @@ -926,10 +926,22 @@ public function publish(&$pks, $value = 1) { // Prune items that you can't change. unset($pks[$i]); + JLog::add(JText::_('JLIB_APPLICATION_ERROR_EDITSTATE_NOT_PERMITTED'), JLog::WARNING, 'jerror'); return false; } + + // If the table is checked out by another user, drop it and report to the user trying to change its state. + if (property_exists($table, 'checked_out') && $table->checked_out && ($table->checked_out != $user->id)) + { + JLog::add(JText::_('JLIB_APPLICATION_ERROR_CHECKIN_USER_MISMATCH'), JLog::WARNING, 'jerror'); + + // Prune items that you can't change. + unset($pks[$i]); + + return false; + } } }