- 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.
123 lines
4.2 KiB
Smarty
123 lines
4.2 KiB
Smarty
<!--/* +********************************************************************************
|
|
* The contents of this file are subject to the vtiger CRM Public License Version 1.0
|
|
* ("License"); You may not use this file except in compliance with the License
|
|
* The Original Code is: vtiger CRM Open Source
|
|
* The Initial Developer of the Original Code is vtiger.
|
|
* Portions created by vtiger are Copyright (C) vtiger.
|
|
* All Rights Reserved.
|
|
* ******************************************************************************* */-->
|
|
|
|
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
{* SalesPlatform.ru begin *}
|
|
<meta charset="utf-8">
|
|
{* SalesPlatform.ru end *}
|
|
<style type="text/css">
|
|
body{
|
|
font-family: Tahoma, "Trebuchet MS","Lucida Grande",Verdana !important;
|
|
background: #F5FAEE !important;/*#f1f6e8;*/
|
|
color : #555 !important;
|
|
font-size: 85% !important;
|
|
height: 98% !important;
|
|
}
|
|
hr{
|
|
border: 1px solid #ddd;
|
|
margin: 13px 0;
|
|
}
|
|
#container{
|
|
min-width:280px;
|
|
width:50%;
|
|
margin-top:2%;
|
|
}
|
|
#content{
|
|
padding:8px 20px;
|
|
border:1px solid #ddd;
|
|
background:#fff;
|
|
border-radius:5px;
|
|
}
|
|
#footer{
|
|
float:right;
|
|
}
|
|
#footer p{
|
|
text-align:right;
|
|
margin-right:20px;
|
|
}
|
|
.button-container a{
|
|
text-decoration: none;
|
|
}
|
|
.button-container{
|
|
float: right;
|
|
}
|
|
.button-container .btn{
|
|
margin-left: 15px;
|
|
min-width: 100px;
|
|
font-weight: bold;
|
|
}
|
|
.logo{
|
|
padding: 15px 0 ;
|
|
}
|
|
</style>
|
|
<script language='JavaScript'>
|
|
function checkPassword () {
|
|
var password = document.getElementById('password').value;
|
|
var confirmPassword = document.getElementById('confirmPassword').value;
|
|
if(password == '' && confirmPassword == ''){
|
|
alert('Please enter new Password');
|
|
return false;
|
|
} else if(password != confirmPassword) {
|
|
alert('Password and Confirm Password should be same');
|
|
return false;
|
|
}else{
|
|
return true;
|
|
}
|
|
}
|
|
</script>
|
|
</head>
|
|
<body>
|
|
<div id="container">
|
|
<div class="logo">
|
|
<img src="{$LOGOURL}" alt="{$TITLE}" style="height: 4em;width: 12em;"><br><br><br>
|
|
</div>
|
|
<div>
|
|
{if $LINK_EXPIRED neq 'true'}
|
|
<div id="content">
|
|
<span><b>{vtranslate('LBL_CHANGE_PASSWORD',$MODULE)}</b></span>
|
|
<hr>
|
|
<div id="changePasswordBlock" align='left'>
|
|
<form name="changePassword" id="changePassword" action="{$TRACKURL}" method="post" accept-charset="utf-8">
|
|
<input type="hidden" name="username" value="{$USERNAME}">
|
|
<input type="hidden" name="shorturl_id" value="{$SHORTURL_ID}">
|
|
<input type="hidden" name="secret_hash" value="{$SECRET_HASH}">
|
|
<table align='center'>
|
|
<tr>
|
|
<td><label class="control-label" for="password">{vtranslate('LBL_NEW_PASSWORD',$MODULE)}</label></td>
|
|
<td><input type="password" id="password" name="password" placeholder="New Password"></td>
|
|
</tr>
|
|
<tr><td></td></tr>
|
|
<tr>
|
|
<td><label class="control-label" for="confirm_password">{vtranslate('LBL_CONFIRM_PASSWORD',$MODULE)}</label></td>
|
|
<td><input type="password" id="confirmPassword" name="confirmPassword" placeholder="Confirm Password"></td>
|
|
</tr>
|
|
<tr><td></td></tr>
|
|
<tr>
|
|
<td></td>
|
|
<td><input type="submit" id="btn" value={vtranslate('Submit', $MODULE)} onclick="return checkPassword();"/></td>
|
|
</tr>
|
|
</table>
|
|
</form>
|
|
</div>
|
|
{else}
|
|
<div id="content">
|
|
{vtranslate('LBL_PASSWORD_LINK_EXPIRED_OR_INVALID_PASSWORD', $MODULE)}
|
|
</div>
|
|
{/if}
|
|
</div>
|
|
</div>
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</body>
|
|
</html>
|