<?php
/* Some cool php code to get things started */
$_CONTEXT['mfs'] = array();
// keeps track of the current row when defining properties, which makes it easier to add and remove new rows
$_CONTEXT['mfs']['currentrow'] = 0;
// sets current module
$_CONTEXT['mfs']['module'] = $_CONTEXT['module_current'];
// form properties: you can use all properties by naming the property as key and set its value, this example will use an iframe to send the request to, the iframe will be included automatically so you won't need to add the data array as in previous versions
$_CONTEXT['mfs']['form'] = array();
$_CONTEXT['mfs']['form']['target'] = $_CONTEXT['screen']['name'];
$_CONTEXT['mfs']['form']['method'] = "post";
$_CONTEXT['mfs']['form']['action'] = $_CONTEXT['screen']['src'];
// setup the table properties
$_CONTEXT['mfs']['table'] = array();
// table header: you can always use this part like this, it will define the gui header with the image and description
$_CONTEXT['mfs']['table']['header'] = array();
$_CONTEXT['mfs']['table']['header']['name'] = $_CONTEXT['modules'][$_CONTEXT['mfs']['module']]['name'];
$_CONTEXT['mfs']['table']['header']['description'] = $_CONTEXT['modules'][$_CONTEXT['mfs']['module']]['description'];
// start creating table rows
$_CONTEXT['mfs']['table']['rows'] = array();
// new table row
$_CONTEXT['mfs']['table']['rows'][$_CONTEXT['mfs']['currentrow']] = array();
// properties for table row - start
$_CONTEXT['mfs']['table']['rows'][$_CONTEXT['mfs']['currentrow']]['class'] = "modrow";
$_CONTEXT['mfs']['table']['rows'][$_CONTEXT['mfs']['currentrow']]['id'] = "test";
$_CONTEXT['mfs']['table']['rows'][$_CONTEXT['mfs']['currentrow']]['cells'] = array();
$_CONTEXT['mfs']['table']['rows'][$_CONTEXT['mfs']['currentrow']]['cells'][0] = array();
$_CONTEXT['mfs']['table']['rows'][$_CONTEXT['mfs']['currentrow']]['cells'][0]['class'] = "modleft";
$_CONTEXT['mfs']['table']['rows'][$_CONTEXT['mfs']['currentrow']]['cells'][0]['value'] = "start from";
$_CONTEXT['mfs']['table']['rows'][$_CONTEXT['mfs']['currentrow']]['cells'][0]['id'] = "start";
$_CONTEXT['mfs']['table']['rows'][$_CONTEXT['mfs']['currentrow']]['cells'][1] = array();
$_CONTEXT['mfs']['table']['rows'][$_CONTEXT['mfs']['currentrow']]['cells'][1]['class'] = "modright";
$_CONTEXT['mfs']['table']['rows'][$_CONTEXT['mfs']['currentrow']]['cells'][1]['value'] = "<input type=\"text\" name=\"sRoot\" value=\"".$_SERVER['DOCUMENT_ROOT']."\" size=\"55\" onclick=\"this.value=''\" />";
// properties for table row - end
/*
creates:
<div class="modrow" id="test">
    <div class="modleft" id="start">start from</div>
    <div class="modright"><input type="text" name="sRoot" value="/home/user/bla/htdocs" size="55" onclick="this.value=''" /></div>
</div>
*/
// next row
$_CONTEXT['mfs']['currentrow']++;
$_CONTEXT['mfs']['table']['rows'][$_CONTEXT['mfs']['currentrow']] = array();
$_CONTEXT['mfs']['table']['rows'][$_CONTEXT['mfs']['currentrow']]['class'] = "modrow";
$_CONTEXT['mfs']['table']['rows'][$_CONTEXT['mfs']['currentrow']]['cells'] = array();
$_CONTEXT['mfs']['table']['rows'][$_CONTEXT['mfs']['currentrow']]['cells'][0] = array();
$_CONTEXT['mfs']['table']['rows'][$_CONTEXT['mfs']['currentrow']]['cells'][0]['class'] = "modleft";
$_CONTEXT['mfs']['table']['rows'][$_CONTEXT['mfs']['currentrow']]['cells'][0]['value'] = "find this";
$_CONTEXT['mfs']['table']['rows'][$_CONTEXT['mfs']['currentrow']]['cells'][1] = array();
$_CONTEXT['mfs']['table']['rows'][$_CONTEXT['mfs']['currentrow']]['cells'][1]['class'] = "modright";
// buffering data into the right div (modright)
$_CONTEXT['mfs']['table']['rows'][$_CONTEXT['mfs']['currentrow']]['cells'][1]['value'] = "";
foreach(
$_CONTEXT['test'] as $sKey=>$aValues){
    
$_CONTEXT['mfs']['table']['rows'][$_CONTEXT['mfs']['currentrow']]['cells'][1]['value'] .= $aValues[0]."\n";
}
/*
creates:
<div class="modrow">
    <div class="modleft">find this</div>
    <div class="modright">[buffered stuff in right cell]</div>
</div>
*/
$_CONTEXT['mfs']['currentrow']++;
$_CONTEXT['mfs']['table']['rows'][$_CONTEXT['mfs']['currentrow']] = array();
$_CONTEXT['mfs']['table']['rows'][$_CONTEXT['mfs']['currentrow']]['class'] = "modrow";
$_CONTEXT['mfs']['table']['rows'][$_CONTEXT['mfs']['currentrow']]['value'] = "<div class=\"modrowleft mt5\"><input type=\"submit\" name=\"submit\" value=\"Discover\" /></div>";
/*
creates:
<div class="modrow">
    <div class="modrowleft mt5"><input type="submit" name="submit" value="Discover" /></div>
</div>
*/
// as in previous versions of the hacksuite, output will be buffered in $sCode, as you can see you need to use the ModForm function in order to create the form
$sCode = isset($sCode) ? $sCode.ModForm($_CONTEXT['mfs']) : ModForm($_CONTEXT['mfs']);
?>