'empty', ); // For each categories (Core, Plugin and Theme) we need to format theirs actions switch ($rows['object_id']) { case ACTIVITY_SYSTEM_CORE: $object_icon = 'icon-piwigo'; $object = l10n('Core'); switch ($rows['action']) { case 'install': $action_icon = 'icon-download'; $action_color = 'icon-green'; $action = l10n('Install'); break; case 'config': $action_icon = 'icon-cog-alt'; $action_color = 'icon-yellow'; $action = l10n('Configuration'); // for config we need to specific format details if (isset($details['config_section'])) { $c_icon = ''; $c_text = ''; switch ($details['config_section']) { case 'main': $c_icon = 'icon-cog'; $c_text = l10n('General'); break; case 'watermark': $c_icon = 'icon-file-image'; $c_text = l10n('Watermark'); break; case 'sizes': $c_icon = 'icon-zoom-square'; $c_text = l10n('Photo sizes'); // sizes have 2 params always Photo sizes and sometimes config_action if (isset($details['config_action']) && 'restore_settings' == $details['config_action']) { $detail[] = array( 'icon' => 'icon-back-in-time', 'text' => l10n('Set as default') ); } break; case 'comments': $c_icon = 'icon-chat'; $c_text = l10n('Comments'); break; case 'display': $c_icon = 'icon-television'; $c_text = l10n('Display'); break; default: $c_icon = 'icon-cog-alt'; $c_text = $details['config_section']; break; } $detail['type'] = 'config_section'; $detail[] = array( 'icon' => $c_icon, 'text' => $c_text ); } break; case 'maintenance': $action_icon = 'icon-cone'; $action_color = 'icon-yellow'; $action = l10n('Maintenance'); // for maintenance we need to specific format details if (isset($details['maintenance_action'])) { $action_detail = $details['maintenance_action']; $detail = array( 'type' => 'maintenance_action', 'icon' => $maint_actions[$action_detail]['icon'] ?? 'icon-cone', 'text' => $maint_actions[$action_detail]['label'] ?? $action_detail, ); } break; case 'update': $action_icon = 'icon-arrows-cw'; $action_color = 'icon-blue'; $action = l10n('Update'); $major_infos = true; break; case 'autoupdate': $action_icon = 'icon-arrows-cw'; $action_color = 'icon-blue'; $action = l10n('Auto-update'); $major_infos = true; break; default: $action_icon = 'icon-download'; $action_color = 'icon-yellow'; break; } break; case ACTIVITY_SYSTEM_PLUGIN: $object_icon = 'icon-puzzle'; $object = 'plugin'; if (isset($details['plugin_id'])) { $object = str_replace(['_', '-'], ' ', $details['plugin_id']); } switch ($rows['action']) { case 'install': $action_icon = 'icon-download'; $action_color = 'icon-green'; $action = l10n('Install'); break; case 'update': $action_icon = 'icon-arrows-cw'; $action_color = 'icon-blue'; $action = l10n('Update'); break; case 'activate': $action_icon = 'icon-check'; $action_color = 'icon-green'; $action = l10n('Activate'); break; case 'deactivate': $action_icon = 'icon-block'; $action_color = 'icon-purple'; $action = l10n('Deactivate'); break; case 'uninstall': $action_icon = 'icon-trash-1'; $action_color = 'icon-red'; $action = l10n('Uninstall'); break; case 'restore': $action_icon = 'icon-back-in-time'; $action_color = 'icon-blue'; $action = l10n('Restore'); break; case 'delete': $action_icon = 'icon-trash-1'; $action_color = 'icon-red'; $action = l10n('Delete'); // for delete we need to specific format details if (isset($details['db_version'])) { $detail['type'] = 'db_fs_version'; $detail[] = array( 'icon' => 'icon-flow-branch', 'text' => 'database : ' . $details['db_version'] ); } if (isset($details['fs_version'])) { $detail['type'] = 'db_fs_version'; $detail[] = array( 'icon' => 'icon-flow-branch', 'text' => 'filesystem : ' . $details['fs_version'] ); } break; case 'autoupdate': $action_icon = 'icon-arrows-cw'; $action_color = 'icon-blue'; $action = l10n('Auto-update'); break; default: $action_icon = 'icon-puzzle'; $action_color = 'icon-yellow'; break; } break; case ACTIVITY_SYSTEM_THEME: $object_icon = 'icon-brush'; $object = 'theme'; if (isset($details['theme_id'])) { $object = str_replace(['_', '-'], ' ', $details['theme_id']); } switch ($rows['action']) { case 'install': $action_icon = 'icon-download'; $action_color = 'icon-green'; $action = l10n('Install'); break; case 'activate': $action_icon = 'icon-check'; $action_color = 'icon-green'; $action = l10n('Activate'); break; case 'deactivate': $action_icon = 'icon-block'; $action_color = 'icon-purple'; $action = l10n('Deactivate'); break; case 'delete': $action_icon = 'icon-trash-1'; $action_color = 'icon-red'; $action = l10n('Delete'); break; case 'set_default': $action_icon = 'icon-star'; $action_color = 'icon-yellow'; $action = l10n('Set as default'); break; case 'update': $action_icon = 'icon-arrows-cw'; $action_color = 'icon-blue'; $action = l10n('Update'); break; default: $action_icon = 'icon-brush'; $action_color = 'icon-yellow'; break; } break; default: break; } // For each lines we need to format theirs details (general details) if (isset($details['from_version'])) { $detail = array( 'type' => 'from_to', array( 'icon' => 'icon-flow-branch', 'text' => $details['from_version'], ), array( 'icon' => isset($details['to_version']) ? 'icon-flow-branch' : 'icon-block', 'text' => isset($details['to_version']) ? $details['to_version'] : ($details['result'] ?? ''), ), ); } else if (isset($details['version'])) { $detail = array( 'type' => 'version', 'icon' => 'icon-flow-branch', 'text' => $details['version'] ); } else if (isset($details['result'])) { $detail = array( 'type' => 'error', 'icon' => 'icon-block', 'text' => $details['result'] ); } // Format our data before send // This data will be manipulate by maintenance_sys.js list($date, $hour) = explode(' ', $rows['occured_on']); $data[] = array( 'major_infos' => $major_infos, 'id' => $rows['activity_id'], 'object_icon' => $object_icon, 'object' => ucwords($object), 'action_icon' => $action_icon, 'action_color' => $action_color, 'action' => $action, 'user_id' => $rows['performed_by'], 'username' => $rows['username'], 'date' => format_date($date), 'hour' => $hour, 'detail' => $detail ); } // Now we good to send our response data $response = array( 'data' => $data, ); echo json_encode($response); exit; } } else { $page['warnings'][] = str_replace('%s', l10n('user_status_webmaster'), l10n('%s status is required to edit parameters.')); } // +-----------------------------------------------------------------------+ // | template init | // +-----------------------------------------------------------------------+ $template->assign('isWebmaster', (is_webmaster()) ? 1 : 0); $template->set_filenames(array('maintenance'=>'maintenance_sys.tpl')); // +-----------------------------------------------------------------------+ // | sending html code | // +-----------------------------------------------------------------------+ $template->assign_var_from_handle('ADMIN_CONTENT', 'maintenance'); ?>