403Webshell
Server IP : 85.158.181.41  /  Your IP : 216.73.217.12
Web Server : Apache
System : Linux cloud9-vm129 6.1.178+1-ph #ph SMP PREEMPT_DYNAMIC Wed Jul 29 09:00:54 UTC 2026 x86_64
User : moncbefd ( 1024)
PHP Version : 7.3.33
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /home/moncbefd/www.moneta.at/admin/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /home/moncbefd/www.moneta.at/admin/gm_module_export.php
<?php
/* --------------------------------------------------------------
  gm_module_export.php 2015-09-28 gm
  Gambio GmbH
  http://www.gambio.de
  Copyright (c) 2015 Gambio GmbH
  Released under the GNU General Public License (Version 2)
  [http://www.gnu.org/licenses/gpl-2.0.html]

   IMPORTANT! THIS FILE IS DEPRECATED AND WILL BE REPLACED IN THE FUTURE. 
   MODIFY IT ONLY FOR FIXES. DO NOT APPEND IT WITH NEW FEATURES, USE THE
   NEW GX-ENGINE LIBRARIES INSTEAD.
  --------------------------------------------------------------

  based on:
  (c) 2000-2001 The Exchange Project  (earlier name of osCommerce)
  (c) 2002-2003 osCommerce(modules.php,v 1.45 2003/05/28); www.oscommerce.com
  (c) 2003	 nextcommerce (modules.php,v 1.23 2003/08/19); www.nextcommerce.org
  (c) 2003 XT-Commerce - community made shopping http://www.xt-commerce.com ($Id: module_export.php 1179 2005-08-25 12:37:13Z mz $)

  Released under the GNU General Public License
  -------------------------------------------------------------- */

require('includes/application_top.php');

// include needed functions (for modules)
require_once(DIR_WS_FUNCTIONS . 'export_functions.php');

if(!is_writeable(DIR_FS_CATALOG . 'export/'))
{
	$messageStack->add(ERROR_EXPORT_FOLDER_NOT_WRITEABLE, 'error');
}

$module_type = 'export';
$module_directory = DIR_WS_MODULES . 'gm_export/';
$module_key = 'MODULE_EXPORT_INSTALLED';
$file_extension = '.php';
define('HEADING_TITLE', HEADING_TITLE_MODULES_EXPORT);

if(isset($_GET['error']))
{
	$map = 'error';
	
	if($_GET['kind'] == 'success')
	{
		$map = 'success';
	}
	
	$messageStack->add($_GET['error'], $map);
}

switch($_GET['action'])
{
	case 'save':
		$_SESSION['coo_page_token']->is_valid($_REQUEST['page_token']);
		
		if(is_array($_POST['configuration']))
		{
			if(count($_POST['configuration']))
			{
				foreach($_POST['configuration'] as $key => $value)
				{
					xtc_db_query("update " . TABLE_CONFIGURATION . " set configuration_value = '" . xtc_db_prepare_input($value) . "' where configuration_key = '" . xtc_db_prepare_input($key) . "'");
					
					if(strpos($key, 'FILE') !== false)
					{
						$file = $value;
					}
				}
			}
		}

		$class = basename($_GET['module']);
		include($module_directory . $class . $file_extension);

		$module = new $class;
		$module->process($file);
		
		xtc_redirect(xtc_href_link(FILENAME_GM_MODULE_EXPORT, 'set=' . $_GET['set'] . '&module=' . $class));
		break;

	case 'install':
	case 'remove':
		$_SESSION['coo_page_token']->is_valid($_REQUEST['page_token']);
		
		$file_extension = substr($_SERVER['PHP_SELF'], strrpos($_SERVER['PHP_SELF'], '.'));
		$class = basename($_GET['module']);
		
		if(file_exists($module_directory . $class . $file_extension))
		{
			include($module_directory . $class . $file_extension);
			$module = new $class;
			
			if($_GET['action'] == 'install')
			{
				$module->install();
			}
			elseif($_GET['action'] == 'remove')
			{
				$module->remove();
			}
		}
		
		xtc_redirect(xtc_href_link(FILENAME_GM_MODULE_EXPORT, 'set=' . $_GET['set'] . '&module=' . $class));
		break;
}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html <?php echo HTML_PARAMS; ?>>
	<head>
		<meta http-equiv="x-ua-compatible" content="IE=edge">
		<meta http-equiv="Content-Type" content="text/html; charset=<?php echo $_SESSION['language_charset']; ?>"> 
		<title><?php echo TITLE; ?></title>
		<link rel="stylesheet" type="text/css" href="html/assets/styles/legacy/stylesheet.css">
	</head>
	<body marginwidth="0" marginheight="0" topmargin="0" bottommargin="0" leftmargin="0" rightmargin="0" bgcolor="#FFFFFF">
		<!-- header //-->
		<?php require(DIR_WS_INCLUDES . 'header.php'); ?>
		<!-- header_eof //-->

		<!-- body //-->
		<table border="0" width="100%" cellspacing="2" cellpadding="2">
			<tr>
				<td class="columnLeft2" width="<?php echo BOX_WIDTH; ?>" valign="top">
					<table border="0" width="<?php echo BOX_WIDTH; ?>" cellspacing="1" cellpadding="1" class="columnLeft">
						<!-- left_navigation //-->
						<?php require(DIR_WS_INCLUDES . 'column_left.php'); ?>
						<!-- left_navigation_eof //-->
					</table>
				</td>
				<!-- body_text //-->
				<td class="boxCenter" width="100%" valign="top">
					<table border="0" width="100%" cellspacing="0" cellpadding="2">
						<tr>
							<td>
								<div class="pageHeading" style="background-image:url(html/assets/images/legacy/gm_icons/module.png)"><?php echo HEADING_TITLE; ?></div>
							</td>
						</tr>
						<tr>
							<td>
								<table border="0" width="100%" cellspacing="0" cellpadding="0">
									<tr>
										<td valign="top">
											<table class="gx-modules-table left-table" border="0" width="100%" cellspacing="0" cellpadding="2">
												<tr class="dataTableHeadingRow">
													<td class="dataTableHeadingContent"><?php echo TABLE_HEADING_MODULES; ?></td>
													<td class="dataTableHeadingContent"></td>
												</tr>
												<?php
												$file_extension = substr($_SERVER['PHP_SELF'], strrpos($_SERVER['PHP_SELF'], '.'));
												$directory_array = array();
												
												if($dir = @dir($module_directory))
												{
													while($file = $dir->read())
													{
														if(!is_dir($module_directory . $file))
														{
															if(substr($file, strrpos($file, '.')) == $file_extension)
															{
																$directory_array[] = $file;
															}
														}
													}
													
													sort($directory_array);
													$dir->close();
												}

												$installed_modules = array();
												for($i = 0, $n = sizeof($directory_array); $i < $n; $i++)
												{
													$file = $directory_array[$i];

													//   include(DIR_FS_LANGUAGES . $_SESSION['language'] . '/modules/' . $module_type . '/' . $file);
													include($module_directory . $file);

													$class = substr($file, 0, strrpos($file, '.'));
													if(xtc_class_exists($class))
													{
														$module = new $class;
														if($module->check() > 0)
														{
															if($module->sort_order > 0)
															{
																$installed_modules[$module->sort_order] = $file;
															}
															else
															{
																$installed_modules[] = $file;
															}
														}

														if((!$_GET['module'] || $_GET['module'] == $class) && !$mInfo)
														{
															$module_info = array('code' => $module->code,
																					'title' => $module->title,
																					'description' => $module->description,
																					'status' => $module->check());

															$module_keys = $module->keys();
															$keys_extra = array();
															
															for($j = 0, $k = sizeof($module_keys); $j < $k; $j++)
															{
																$key_value_query = xtc_db_query("select configuration_key,configuration_value, use_function, set_function from " . TABLE_CONFIGURATION . " where configuration_key = '" . $module_keys[$j] . "'");
																$key_value = xtc_db_fetch_array($key_value_query);
																
																if($key_value['configuration_key'] != '')
																{
																	$keys_extra[$module_keys[$j]]['title'] = constant(strtoupper($key_value['configuration_key'] . '_TITLE'));
																}
																
																$keys_extra[$module_keys[$j]]['value'] = $key_value['configuration_value'];
																
																if($key_value['configuration_key'] != '')
																{
																	$keys_extra[$module_keys[$j]]['description'] = constant(strtoupper($key_value['configuration_key'] . '_DESC'));
																}
																
																$keys_extra[$module_keys[$j]]['use_function'] = $key_value['use_function'];
																$keys_extra[$module_keys[$j]]['set_function'] = $key_value['set_function'];
															}

															$module_info['keys'] = $keys_extra;

															$mInfo = new objectInfo($module_info);
														}

														if(is_object($mInfo) && $class == $mInfo->code)
														{
															echo '<tr class="dataTableRowSelected active">';
														}
														else
														{
															echo '<tr class="dataTableRow" data-gx-extension="link" data-link-url="' . xtc_href_link(FILENAME_GM_MODULE_EXPORT, 'set=' . $_GET['set'] . '&module=' . $class) . '">';
														}
														?>
														<td class="dataTableContent"><?php echo $module->title; ?></td>
														<td class="dataTableContent"></td>
													</tr>
													<?php
													}
												}

												ksort($installed_modules);
												$check_query = xtc_db_query("select configuration_value from " . TABLE_CONFIGURATION . " where configuration_key = '" . $module_key . "'");
												if(xtc_db_num_rows($check_query))
												{
													$check = xtc_db_fetch_array($check_query);
													if($check['configuration_value'] != implode(';', $installed_modules))
													{
														xtc_db_query("update " . TABLE_CONFIGURATION . " set configuration_value = '" . implode(';', $installed_modules) . "', last_modified = now() where configuration_key = '" . $module_key . "'");
													}
												}
												else
												{
													xtc_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_key, configuration_value, configuration_group_id, sort_order, date_added) values ( '" . $module_key . "', '" . implode(';', $installed_modules) . "','6', '0', now())");
												}
												?>
											</table>
										</td>
									</tr>
								</table>
							</td>
						</tr>
					</table>
				</td>
				<!-- body_text_eof //-->
			</tr>
		</table>
		<!-- body_eof //-->
		
		<!-- footer //-->
		<?php require(DIR_WS_INCLUDES . 'footer.php'); ?>
		<!-- footer_eof //-->

		<div class="hidden">
			<?php
			$heading = array();
			$contents = array();
			$buttons = '';
			$formIsEditable = false;
			$formAction = '';
			$formMethod = 'post';
			$formAttributes = '';

			$languageTextManager = MainFactory::create_object('LanguageTextManager', true);
			
			if($mInfo->status == '1')
			{
				$statusButton = '<a href="' . xtc_href_link(FILENAME_GM_MODULE_EXPORT, 'set=' . $_GET['set'] . '&module=' . $mInfo->code . '&action=remove&page_token=' . $_SESSION['coo_page_token']->generate_token()) . '" class="btn">' . htmlspecialchars_wrapper($languageTextManager->get_text('uninstall', 'buttons')) . '</a>';
			}
			else
			{
				$statusButton = '<a href="' . xtc_href_link(FILENAME_GM_MODULE_EXPORT, 'set=' . $_GET['set'] . '&module=' . $mInfo->code . '&action=install&page_token=' . $_SESSION['coo_page_token']->generate_token()) . '" class="btn btn-primary">' . htmlspecialchars_wrapper($languageTextManager->get_text('install', 'buttons')) . '</a>';
			}

			switch($_GET['action'])
			{
				case 'edit':
					$formAction = xtc_href_link(FILENAME_GM_MODULE_EXPORT, 'set=' . $_GET['set'] . '&module=' . $_GET['module'] . '&action=save');
					$formAttributes = ['target="_blank"'];
					
					$keys = '';
					reset($mInfo->keys);

					foreach($mInfo->keys as $key => $value)
					{

						$keys .= '<span class="options-title">' . $value['title'] . '</span><br />' . $value['description'] . '<br />';

						if($value['set_function'])
						{
							eval('$keys .= ' . $value['set_function'] . "'" . $value['value'] . "', '" . $key . "');");
						}
						else
						{
							$keys .= xtc_draw_input_field('configuration[' . $key . ']', $value['value']);
						}

						$keys .= '<br /><br />';
					}

					$keys = substr($keys, 0, strrpos($keys, '<br /><br />'));

					$heading[] = array('text' => '<b>' . $mInfo->title . '</b>');
					$class = substr($file, 0, strrpos($file, '.'));
					$module = new $_GET['module'];
					$contents[] = array('text' => $keys);
					// display module fields
					$contents[] = $module->display();
					
					$buttons = '<input type="submit" value="' . BUTTON_EXPORT . '" onclick="this.blur();" class="btn btn-primary">' .
					           xtc_button_link(BUTTON_CANCEL, xtc_href_link(FILENAME_GM_MODULE_EXPORT, 'set=' . $_GET['set'] . '&module=' . $_GET['module']));

					break;

				default:
					$editButton = '';
					if($mInfo->status == '1')
					{
						$editButton = '<a class="btn btn-primary btn-edit" href="' . xtc_href_link(FILENAME_GM_MODULE_EXPORT, 'set=' . $_GET['set'] . '&module=' . $mInfo->code . '&action=edit&page_token=' . $_SESSION['coo_page_token']->generate_token()) . '">' . BUTTON_EDIT . '</a>';
					}
					$heading[] = array('text' => '<b>' . $mInfo->title . '</b>');
					$contents[] = array('text' => '' . $mInfo->description);

					if($mInfo->status == '1')
					{
						$keys = '';
						reset($mInfo->keys);
						
						foreach($mInfo->keys as $value)
						{
							$keys .= '<b>' . $value['title'] . '</b><br />';

							if($value['use_function'])
							{
								$use_function = $value['use_function'];
								if(strpos($use_function, '->') !== false)
								{
									$class_method = explode('->', $use_function);
									if(!is_object(${$class_method[0]}))
									{
										include(DIR_WS_CLASSES . $class_method[0] . '.php');
										${$class_method[0]} = new $class_method[0]();
									}

									$keys .= xtc_call_function($class_method[1], $value['value'], ${$class_method[0]});
								}
								else
								{
									$keys .= xtc_call_function($use_function, $value['value']);
								}
							}
							else
							{
								if(strlen($value['value']) > 30)
								{
									$keys .= substr($value['value'], 0, 30) . ' ...';
								}
								else
								{
									$keys .= $value['value'];
								}
							}

							$keys .= '<br /><br />';
						}

						$keys = substr($keys, 0, strrpos($keys, '<br /><br />'));

						$contents[] = array('text' => '<br />' . $keys);
					}
					
					$buttons = $editButton . $statusButton;
					break;
			}
			
			$configurationBoxContentView = MainFactory::create_object('ConfigurationBoxContentView');
			$configurationBoxContentView->setOldSchoolHeading($heading);
			$configurationBoxContentView->setOldSchoolContents($contents);
			$configurationBoxContentView->set_content_data('buttons', $buttons);
			$configurationBoxContentView->setFormEditable($formIsEditable);
			$configurationBoxContentView->setFormAction($formAction);
			$configurationBoxContentView->setFormAttributes($formAttributes);
			echo $configurationBoxContentView->get_html();
			?>
		</div>
	</body>
</html>
<?php require(DIR_WS_INCLUDES . 'application_bottom.php'); ?>

Youez - 2016 - github.com/yon3zu
LinuXploit