예제 #1
0
파일: filter.php 프로젝트: ASDAFF/entask.ru
	/**
	 * Shows information about WAF stats in Admin's informer popup
	 * @return bool|void
	 */
	public static function OnAdminInformerInsertItems()
	{
		/** @global CMain $APPLICATION */
		global $APPLICATION;
		if ($APPLICATION->GetGroupRight("security") < "W")
			return false;

		$setupLink = '/bitrix/admin/security_filter.php?lang='.LANGUAGE_ID;
		$WAFAIParams = array(
			"TITLE" => getMessage("SECURITY_FILTER_INFORM_TITLE"),
			"COLOR" => "blue",
			"FOOTER" => '<a href="'.$setupLink.'">'.getMessage("SECURITY_FILTER_INFORM_LINK_TO_SETUP_ON").'</a>'
		);

		try
		{
			if (self::IsActive())
			{

				$days = COption::getOptionInt("main", "event_log_cleanup_days", 7);
				if($days > 7)
					$days = 7;
				$timestampX = ConvertTimeStamp(time()-$days*24*3600+CTimeZone::getOffset());
				$eventLink = '/bitrix/admin/event_log.php?set_filter=Y&find_type=audit_type_id&find_audit_type[]=SECURITY_FILTER_SQL&find_audit_type[]=SECURITY_FILTER_XSS&find_audit_type[]=SECURITY_FILTER_XSS2&find_audit_type[]=SECURITY_FILTER_PHP&mod=security&find_timestamp_x_1='.$timestampX.'&lang='.LANGUAGE_ID;

				$eventCount = self::getEventsCount($timestampX);
				if($eventCount > 999)
					$eventCount = round($eventCount/1000,1).'K';

				if($eventCount > 0)
					$descriptionText = getMessage("SECURITY_FILTER_INFORM_EVENT_COUNT").'<a href="'.$eventLink.'">'.$eventCount.'</a>';
				else
					$descriptionText = getMessage("SECURITY_FILTER_INFORM_EVENT_COUNT_EMPTY");

				$WAFAIParams["FOOTER"] = '<a href="'.$setupLink.'">'.getMessage("SECURITY_FILTER_INFORM_LINK_TO_SETUP").'</a>';
				$WAFAIParams["ALERT"] = false;

				$WAFAIParams["HTML"] = '
<div class="adm-informer-item-section">
	<span class="adm-informer-item-l">
		<span class="adm-informer-strong-text">'.getMessage("SECURITY_FILTER_INFORM_FILTER_ON").'</span>
		<span>'.$descriptionText.'</span>
	</span>
</div>
';
			}
			else
			{
				$WAFAIParams["ALERT"] = true;

				$WAFAIParams["HTML"] = '
<div class="adm-informer-item-section">
		<span class="adm-informer-item-l">
			<span class="adm-informer-strong-text">'.getMessage("SECURITY_FILTER_INFORM_FILTER_OFF").'</span>
			<span>'.getMessage("SECURITY_FILTER_INFORM_FILTER_ON_RECOMMENDATION", array("#LINK#" => $setupLink)).'</span>
		</span>
</div>
';
			}
		}
		catch (Exception $e)
		{
			$WAFAIParams["TITLE"] .= " - ".getMessage("top_panel_ai_title_err");
			$WAFAIParams["ALERT"] = true;
			$WAFAIParams["HTML"] = $e->getMessage();
		}

		CAdminInformer::AddItem($WAFAIParams);
		return true;
	}
예제 #2
0
    /**
     * Shows information about CDN free space in Admin's informer popup
     *
     * @return void
     */
    public function OnAdminInformerInsertItems()
    {
        $CDNAIParams = array("TITLE" => GetMessage("BCL_BACKUP_AI_TITLE"), "COLOR" => "peach");
        $backup = self::getInstance();
        $backup->loadFromOptions();
        $last_request_time_option = CBitrixCloudOption::getOption("backup_last_backup_time");
        try {
            if ($backup->getQuota() <= 0 && $last_request_time_option->getIntegerValue() <= 0) {
                $backup->_getInformation(true);
                $backup->saveToOptions();
                $last_request_time_option->setStringValue((string) time());
            }
        } catch (CBitrixCloudException $e) {
            ///TODO show error to user
            return;
        }
        if ($backup->getQuota() <= 0) {
            return;
        }
        $arFiles = $backup->listFiles();
        if (empty($arFiles)) {
            $PROGRESS_FREE = 100;
            $AVAIL = $backup->getQuota();
            $ALLOWED = CFile::FormatSize($backup->getQuota(), 0);
            $CDNAIParams["ALERT"] = true;
            $MESS = '<span class="adm-informer-strong-text">' . GetMessage("BCL_BACKUP_AI_NO_FILES") . '</span>';
            $CDNAIParams["FOOTER"] = '<a href="/bitrix/admin/dump.php?lang=' . LANGUAGE_ID . '">' . GetMessage("BCL_BACKUP_AI_DO_BACKUP_STRONGLY") . '</a>';
        } elseif ($backup->getLastTimeBackup() < time() - 7 * 24 * 3600) {
            $AVAIL = $backup->getQuota() - $backup->getUsage();
            if ($AVAIL < 0.0) {
                $AVAIL = 0.0;
            }
            $PROGRESS_FREE = round($AVAIL / $backup->getQuota() * 100);
            $ALLOWED = CFile::FormatSize($backup->getQuota(), 0);
            $CDNAIParams["ALERT"] = true;
            $MESS = '<span class="adm-informer-strong-text">' . GetMessage("BCL_BACKUP_AI_LAST_TIME") . ': ' . FormatDate(array("today" => "today", "yesterday" => "yesterday", "" => "dago"), $backup->getLastTimeBackup()) . '.</span>';
            $CDNAIParams["FOOTER"] = '<a href="/bitrix/admin/dump.php?lang=' . LANGUAGE_ID . '">' . GetMessage("BCL_BACKUP_AI_DO_BACKUP_STRONGLY") . '</a>';
        } else {
            $AVAIL = $backup->getQuota() - $backup->getUsage();
            if ($AVAIL < 0.0) {
                $AVAIL = 0.0;
            }
            $PROGRESS_FREE = round($AVAIL / $backup->getQuota() * 100);
            $ALLOWED = CFile::FormatSize($backup->getQuota(), 0);
            $CDNAIParams["ALERT"] = false;
            $MESS = GetMessage("BCL_BACKUP_AI_LAST_TIME") . ': ' . FormatDate(array("today" => "today", "yesterday" => "yesterday", "" => "dago"), $backup->getLastTimeBackup());
            $CDNAIParams["FOOTER"] = '<a href="/bitrix/admin/dump.php?lang=' . LANGUAGE_ID . '">' . GetMessage("BCL_BACKUP_AI_DO_BACKUP") . '</a>';
        }
        if (isset($CDNAIParams["ALERT"])) {
            $PROGRESS_FREE_BAR = $PROGRESS_FREE < 0 ? 0 : $PROGRESS_FREE;
            $CDNAIParams["HTML"] = '
				<div class="adm-informer-item-section">
					<span class="adm-informer-item-l">
						<span class="adm-informer-strong-text">' . GetMessage("BCL_BACKUP_AI_USAGE_TOTAL") . '</span> ' . $ALLOWED . '
					</span>
					<span class="adm-informer-item-r">
							<span class="adm-informer-strong-text">' . GetMessage("BCL_BACKUP_AI_USAGE_AVAIL") . '</span> ' . CFile::FormatSize($AVAIL, 0) . '
					</span>
				</div>
				<div class="adm-informer-status-bar-block" >
					<div class="adm-informer-status-bar-indicator" style="width:' . (100 - $PROGRESS_FREE_BAR) . '%; "></div>
					<div class="adm-informer-status-bar-text">' . (100 - $PROGRESS_FREE) . '%</div>
				</div>
			' . $MESS;
            CAdminInformer::AddItem($CDNAIParams);
        }
    }
예제 #3
0
 public static function OnAdminInformerInsertItems()
 {
     global $USER;
     if (!defined("BX_AUTH_FORM")) {
         $tasksCount = CUserCounter::GetValue($USER->GetID(), 'bp_tasks');
         if ($tasksCount > 0) {
             $bpAIParams = array("TITLE" => GetMessage("BPTS_AI_BIZ_PROC"), "HTML" => '<span class="adm-informer-strong-text">' . GetMessage("BPTS_AI_EX_TASKS") . '</span><br>' . GetMessage("BPTS_AI_TASKS_NUM") . ' ' . $tasksCount, "FOOTER" => '<a href="/bitrix/admin/bizproc_task_list.php?lang=' . LANGUAGE_ID . '">' . GetMessage("BPTS_AI_TASKS_PERF") . '</a>', "COLOR" => "red", "ALERT" => true);
             CAdminInformer::AddItem($bpAIParams);
         }
     }
 }
예제 #4
0
    /**
     * @return bool
     */
    public static function OnAdminInformerInsertItems()
    {
        /** @global CUser $USER */
        global $USER;
        if (!$USER->isAdmin()) {
            return false;
        }
        if (!self::isNewTestNeeded()) {
            return false;
        }
        try {
            $adminUrl = self::ADMIN_PAGE_URL . "?lang=" . LANGUAGE_ID;
            $htmlText = '
<div class="adm-informer-item-section">
	<span class="adm-informer-item-l">
		<span>' . GetMessage("SEC_CHECKER_INFORMER_DESCRIPTION") . '</span>
	</span>
</div>
';
            $WAFAIParams = array("TITLE" => GetMessage("SEC_CHECKER_INFORMER_TITLE"), "COLOR" => "blue", "ALERT" => true, "HTML" => $htmlText, "FOOTER" => '<a href="' . $adminUrl . '">' . GetMessage("SEC_CHECKER_INFORMER_LINK") . '</a>');
        } catch (Exception $e) {
            $WAFAIParams = array("TITLE" => GetMessage("SEC_CHECKER_INFORMER_TITLE") . " - " . GetMessage("top_panel_ai_title_err"), "ALERT" => true, "HTML" => $e->getMessage());
        }
        CAdminInformer::AddItem($WAFAIParams);
        return true;
    }
예제 #5
0
파일: cdn.php 프로젝트: DarneoStudio/bitrix
    /**
     * Shows information about CDN free space in Admin's informer popup
     *
     * @return void
     */
    public function OnAdminInformerInsertItems()
    {
        if (IsModuleInstalled('intranet')) {
            return;
        }
        $CDNAIParams = array("TITLE" => GetMessage("BCL_CDN_AI_TITLE"), "COLOR" => "green");
        if (self::IsActive()) {
            $CDNAIParams["FOOTER"] = '<a href="/bitrix/admin/bitrixcloud_cdn.php?lang=' . LANGUAGE_ID . '">' . GetMessage("BCL_CDN_AI_SETT") . '</a>';
            $cdn_config = CBitrixCloudCDNConfig::getInstance()->loadFromOptions();
            $cdn_quota = $cdn_config->getQuota();
            $PROGRESS_TOTAL = $cdn_quota->getAllowedSize();
            $PROGRESS_VALUE = $cdn_quota->getTrafficSize();
            if ($PROGRESS_TOTAL > 0.0 || $PROGRESS_VALUE > 0.0) {
                $PROGRESS_AVAILABLE = $PROGRESS_TOTAL - $PROGRESS_VALUE;
                if ($PROGRESS_AVAILABLE < 0.0) {
                    $PROGRESS_AVAILABLE = 0.0;
                }
                $PROGRESS_FREE = 0.0;
                if ($PROGRESS_TOTAL > 0.0) {
                    $PROGRESS_FREE = round(($PROGRESS_TOTAL - $PROGRESS_VALUE) / $PROGRESS_TOTAL * 100);
                }
                $PROGRESS_FREE_BAR = $PROGRESS_FREE > 100.0 ? 100 : intval($PROGRESS_FREE);
                $PROGRESS_FREE_BAR = $PROGRESS_FREE < 0.0 ? 0 : intval($PROGRESS_FREE_BAR);
                $CDNAIParams["ALERT"] = false;
                if ($PROGRESS_FREE < 10.0) {
                    $CDNAIParams["ALERT"] = true;
                } elseif (!$cdn_config->isActive()) {
                    $CDNAIParams["ALERT"] = true;
                }
                $CDNAIParams["HTML"] = '
					<div class="adm-informer-item-section">
						<span class="adm-informer-item-l">
							<span class="adm-informer-strong-text">' . GetMessage("BCL_CDN_AI_USAGE_TOTAL") . '</span> ' . CFile::FormatSize($PROGRESS_TOTAL, 0) . '
						</span>
						<span class="adm-informer-item-r">
								<span class="adm-informer-strong-text">' . GetMessage("BCL_CDN_AI_USAGE_AVAIL") . '</span> ' . CFile::FormatSize($PROGRESS_AVAILABLE, 0) . '
						</span>
					</div>
					<div class="adm-informer-status-bar-block" >
						<div class="adm-informer-status-bar-indicator" style="width:' . (100 - $PROGRESS_FREE_BAR) . '%; "></div>
						<div class="adm-informer-status-bar-text">' . (100 - $PROGRESS_FREE) . '%</div>
					</div>
				';
            }
        } else {
            $CDNAIParams["HTML"] = '
				<div class="adm-informer-item-section">
					<span class="adm-informer-strong-text">' . GetMessage("BCL_CDN_AI_IS_OFF") . '</span>
				</div>
				<div class="adm-informer-status-bar-block" >
					<div class="adm-informer-status-bar-indicator" style="width:0%; "></div>
					<div class="adm-informer-status-bar-text">0%</div>
				</div>
			';
            $CDNAIParams["ALERT"] = true;
            $CDNAIParams["FOOTER"] = '<a href="/bitrix/admin/bitrixcloud_cdn.php?lang=' . LANGUAGE_ID . '">' . GetMessage("BCL_CDN_AI_TURN_ON") . '</a>';
        }
        CAdminInformer::AddItem($CDNAIParams);
    }
예제 #6
0
 public function OnAdminInformerInsertItems()
 {
     $CDNAIParams = array("TITLE" => GetMessage("Ўаблоны дл¤ печати"), "COLOR" => "green", "HTML" => "Hello", "FOOTER" => "<a href='/test/index'>Testing footer</a>", "ALERT" => true);
     CAdminInformer::AddItem($CDNAIParams);
 }