Files
CRM/modules/Rss/actions/Save.php
BACHIR SOULDI 2794e62571 first commit
2025-09-28 08:49:37 +01:00

45 lines
1.8 KiB
PHP

<?php
/*+***********************************************************************************
* 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.
*************************************************************************************/
require_once('libraries/magpierss/rss_fetch.inc');
class Rss_Save_Action extends Vtiger_Save_Action {
public function checkPermission(Vtiger_Request $request) {
$moduleName = $request->getModule();
$record = $request->get('record');
$actionName = ($record) ? 'EditView' : 'CreateView';
if(!Users_Privileges_Model::isPermitted($moduleName, $actionName, $record)) {
throw new AppException(vtranslate('LBL_PERMISSION_DENIED'));
}
if(!Users_Privileges_Model::isPermitted($moduleName, 'Save', $record)) {
throw new AppException(vtranslate('LBL_PERMISSION_DENIED'));
}
}
public function process(Vtiger_Request $request) {
$response = new Vtiger_Response();
$moduleName = $request->getModule();
$url = $request->get('feedurl');
$recordModel = Rss_Record_Model::getCleanInstance($moduleName);
$result = $recordModel->validateRssUrl($url);
if($result) {
$recordModel->save($url);
$response->setResult(array('success' => true, 'message' => vtranslate('JS_RSS_SUCCESSFULLY_SAVED', $moduleName), 'id' => $recordModel->getId(), 'title' => $recordModel->get('rsstitle')));
} else {
$response->setResult(array('success' => false, 'message' => vtranslate('JS_INVALID_RSS_URL', $moduleName)));
}
$response->emit();
}
}