- Added comprehensive AI Assistant system (aiassist/ directory): * Vector search and embedding capabilities * Typebot proxy integration * Elastic search functionality * Message classification and chat history * MCP proxy for external integrations - Implemented Court Status API (GetCourtStatus.php): * Real-time court document status checking * Integration with external court systems * Comprehensive error handling and logging - Enhanced S3 integration: * Improved file backup system with metadata * Batch processing capabilities * Enhanced error logging and recovery * Copy operations with URL fixing - Added Telegram contact creation API - Improved error logging across all modules - Enhanced callback system for AI responses - Extensive backup file storage with timestamps - Updated documentation and README files - File storage improvements: * Thousands of backup files with proper metadata * Fix operations for broken file references * Project-specific backup and recovery systems * Comprehensive file integrity checking Total: 26,461+ files added/modified including AWS SDK, vendor dependencies, and extensive backup system.
63 lines
1.9 KiB
PHP
63 lines
1.9 KiB
PHP
<?php
|
|
/* * *******************************************************************************
|
|
* The content of this file is subject to the ITS4YouInstaller license.
|
|
* ("License"); You may not use this file except in compliance with the License
|
|
* The Initial Developer of the Original Code is IT-Solutions4You s.r.o.
|
|
* Portions created by IT-Solutions4You s.r.o. are Copyright(C) IT-Solutions4You s.r.o.
|
|
* All Rights Reserved.
|
|
* ****************************************************************************** */
|
|
|
|
class Settings_ITS4YouInstaller_Hosting_Model extends Vtiger_Base_Model
|
|
{
|
|
public $headers;
|
|
|
|
/**
|
|
* @param array $data
|
|
* @return Settings_ITS4YouInstaller_Hosting_Model|void
|
|
*/
|
|
public static function getInstanceFromArray($data)
|
|
{
|
|
if (empty($data['hostingData'])) {
|
|
return;
|
|
}
|
|
|
|
$instance = new self();
|
|
$instance->headers = $data['hostingHeaders'];
|
|
$instance->setData($data['hostingData']);
|
|
|
|
return $instance;
|
|
}
|
|
|
|
public function getExpireString()
|
|
{
|
|
if(1 === (int)$this->get('dontuseworkflow')) {
|
|
return ', ' . vtranslate('LBL_UNLIMITED', 'Settings:ITS4YouInstaller');
|
|
}
|
|
|
|
if(($this->has('closingdate_raw') && !$this->isEmpty('closingdate_raw') && strtotime($this->get('closingdate_raw')))) {
|
|
return ', ' . Settings_ITS4YouInstaller_License_Model::formatDateDiffInStrings($this->get('closingdate_raw'));
|
|
}
|
|
|
|
return '';
|
|
}
|
|
|
|
public function getHeaders()
|
|
{
|
|
return $this->headers;
|
|
}
|
|
|
|
public function isExpired()
|
|
{
|
|
if (1 === (int)$this->get('dontuseworkflow')) {
|
|
return false;
|
|
}
|
|
|
|
$closingDate = $this->get('closingdate_raw');
|
|
|
|
if (empty($closingDate) || $closingDate > date('Y-m-d')) {
|
|
return false;
|
|
}
|
|
|
|
return true;
|
|
}
|
|
} |