Cheetah
actions.inc.php
Go to the documentation of this file.
1 <?php
2 
8 $sId = isset($_REQUEST['id']) ? (int)$_REQUEST['id'] : 0;
9 $sPassword = isset($_REQUEST['password']) ? process_db_input($_REQUEST['password']) : "";
10 $sTitle = isset($_REQUEST['title']) ? process_db_input($_REQUEST['title']) : "Untitled";
11 $sTags = isset($_REQUEST['tags']) ? process_db_input($_REQUEST['tags']) : "";
12 $sDesc = isset($_REQUEST['desc']) ? process_db_input($_REQUEST['desc']) : "";
13 
14 $sSkin = isset($_REQUEST['skin']) ? process_db_input($_REQUEST['skin']) : "";
15 $sLanguage = isset($_REQUEST['language']) ? process_db_input($_REQUEST['language']) : "english";
16 
17 switch ($sAction) {
18  case 'getPlugins':
19  $sFolder = "/plugins/";
20  $sContents = "";
21  $sPluginsPath = $sModulesPath . $sModule . $sFolder;
22  if(is_dir($sPluginsPath)) {
23  if($rDirHandle = opendir($sModulesPath . $sModule . $sFolder))
24  while(false !== ($sPlugin = readdir($rDirHandle)))
25  if(strpos($sPlugin, ".swf") === strlen($sPlugin)-4)
26  $sContents .= parseXml(array(1 => '<plugin><![CDATA[#1#]]></plugin>'), $sModulesUrl . $sModule . $sFolder . $sPlugin);
27  closedir($rDirHandle);
28  }
29  $sContents = makeGroup($sContents, "plugins");
30  break;
31 
35  case 'getSkins':
36  $sContents = printFiles($sModule, "skins", false, true);
37  break;
38 
42  case 'setSkin':
43  setCurrentFile($sModule, $sSkin, "skins");
44  break;
45 
49  case 'getLanguages':
50  $sContents = printFiles($sModule, "langs", false, true);
51  break;
52 
56  case 'setLanguage':
58  break;
59 
63  case 'userAuthorize':
64  $sContents = parseXml($aXmlTemplates['result'], "msgAuthorizingUserError");
65  if(loginUser($sId, $sPassword) == TRUE_VAL) {
67  $sContents = parseXml($aXmlTemplates['result'], TRUE_VAL);
68  }
69  break;
70 
74  case 'config':
75  $sFileName = $sModulesPath . $sModule . "/xml/config.xml";
76  $rHandle = fopen($sFileName, "rt");
77  $sContents = fread($rHandle, filesize($sFileName)) ;
78  fclose($rHandle);
79  $sContents = str_replace("#filesUrl#", $sFilesUrl, $sContents);
80  break;
81 
82  case 'transmit':
83  //--- Prepare data ---//
84  $iWidth = isset($_REQUEST['width']) ? (int)$_REQUEST['width'] : 0;
85  $iHeight = isset($_REQUEST['height']) ? (int)$_REQUEST['height'] : 0;
86  $sData = isset($_REQUEST['data']) ? process_db_input($_REQUEST['data']) : "";
87  $aImageData = explode(',', $sData);
88  $iLength = count($aImageData);
89  for($i=0; $i<$iLength; $i++)
90  $aImageData[$i] = base_convert($aImageData[$i], 36, 10);
91  if($iLength != $iWidth * $iHeight) {
92  $sContents = parseXml($aXmlTemplates['result'], 'msgErrorSizes', FAILED_VAL);
93  break;
94  }
95  if(!function_exists("imagecreatetruecolor")) {
96  $sContents = parseXml($aXmlTemplates['result'], 'msgErrorGD', FAILED_VAL);
97  break;
98  }
99 
100  //--- Create Image Resource ---//
101  $rImage = @imagecreatetruecolor($iWidth, $iHeight);
102  for($i=0, $y=0; $y<$iHeight; $y++ )
103  for($x=0; $x<$iWidth; $x++, $i++)
104  @imagesetpixel($rImage, $x, $y, $aImageData[$i]);
105 
106  //--- Save image file ---//
107  $sFileName = $sFilesPath . $sId . IMAGE_EXTENSION;
108  $iQuality = getSettingValue($sModule, "quality");
109  if(!is_numeric($iQuality)) $iQuality = 75;
110  if(!@imagejpeg($rImage, $sFileName, $iQuality))
111  $sContents = parseXml($aXmlTemplates['result'], 'msgErrorFile', FAILED_VAL);
112  else
113  $sContents = parseXml($aXmlTemplates['result'], '', SUCCESS_VAL);
114  break;
115 
116  case 'post':
117  $sTable = isset($_REQUEST['table']) ? process_db_input($_REQUEST['table']) : "";
118  $sAuthor = isset($_REQUEST['author']) ? process_db_input($_REQUEST['author']) : "";
119  $sParent = isset($_REQUEST['parent']) ? process_db_input($_REQUEST['parent']) : "";
120  $sMood = isset($_REQUEST['mood']) ? process_db_input($_REQUEST['mood']) : "";
121 
122  $sContents = "";
123  $aResult = initFile($sAuthor);
124  if($aResult['status'] == SUCCESS_VAL)
125  $sContents = post($sTable, $sId, $sAuthor, $sParent, $sMood, $aResult['file']);
126  $sContentsType = "text";
127  //break shouln't be here
128 
129  case 'removeTempFiles':
130  removeFiles($sId);
131  break;
132 }
process_db_input
process_db_input($sText, $iStripTags=0)
Definition: utils.inc.php:256
$sContentsType
$sContentsType
Definition: XML.php:39
post
post($sTable, $sId, $sAuthor, $sParent, $sMood, $sFileId)
Definition: customFunctions.inc.php:8
$sFilesUrl
$sFilesUrl
Definition: header.inc.php:11
$aResult
$aResult
Definition: index.php:19
$sModulesUrl
$sModulesUrl
Definition: header.inc.php:52
php
$sModule
if(!file_exists($sRayHeaderPath)) $sModule
Definition: index.php:14
setCurrentFile
setCurrentFile($sModule, $sFile, $sFolder="langs")
Definition: apiFunctions.inc.php:212
removeFiles
removeFiles($sId)
Definition: functions.inc.php:8
initFile
initFile($sId, $sTitle, $sCategory, $sTags, $sDesc)
Definition: functions.inc.php:79
$sModulesPath
$sModulesPath
Definition: header.inc.php:53
$sLanguage
$sLanguage
Definition: actions.inc.php:19
$sPassword
$sPassword
Definition: actions.inc.php:10
$sTitle
$sTitle
Definition: actions.inc.php:13
$sFolder
$sFolder
Definition: index.php:15
$_REQUEST
$_REQUEST['action']
Definition: cmd.php:11
$sTags
$sTags
Definition: actions.inc.php:12
parseXml
parseXml($aXmlTemplates)
Definition: apiFunctions.inc.php:15
makeGroup
makeGroup($sXmlContent, $sXmlGroup="ray")
Definition: apiFunctions.inc.php:32
$aXmlTemplates
$aXmlTemplates
Definition: xmlTemplates.inc.php:8
$sId
$sId
Definition: actions.inc.php:8
$sSkin
$sSkin
Definition: actions.inc.php:18
getSettingValue
getSettingValue($sWidget, $sSettingKey, $sFile="config", $bFullReturn=false, $sFolder="xml")
Definition: apiFunctions.inc.php:82
$sFilesPath
$sFilesPath
Definition: header.inc.php:10
$sContents
$sContents
Definition: XML.php:38
$sAction
$sAction
Definition: categories.php:274
$sDesc
$sDesc
Definition: actions.inc.php:21
loginUser
loginUser($sName, $sPassword, $bLogin=false)
Definition: customFunctions.inc.php:19
printFiles
printFiles($sModule, $sFolder="langs", $bGetDate=false, $bGetNames=false)
Definition: apiFunctions.inc.php:224