/**
  * Return value from somewhere inside the loaded flexForm structure
  *
  * @param   mixed      $flexForm, (optional) a flexForm array or a key array that contains a flexform
  * @param   string     $fieldName, Field name to extract. Can be given like "test/el/2/test/el/field_templateObject" where each part will dig a level deeper in the FlexForm data.
  * @param   string     $sheet Sheet pointer, eg. "sDEF"
  * @param   string     $lang Language pointer, eg. "lDEF"
  * @param   string     $value Value pointer, eg. "vDEF"
  * @return  array      The content.
  */
 function get()
 {
     //true when the first arguement is a flexForm or a reference to flexForm
     if (is_array(func_get_arg(0)) || array_key_exists(func_get_arg(0), tx_div2007_ff::$flexForms)) {
         //case 1, $args 1 is an array...     case 2, $args 1 is a key array that contains a flexform
         is_array(func_get_arg(0)) ? $_flexForm = func_get_arg(0) : ($_flexForm =& tx_div2007_ff::getFlexForm(func_get_arg(0)));
         $index = 1;
     } else {
         $_flexForm =& self::$flexForm;
         $index = 0;
     }
     $fieldName = func_get_arg($index);
     @func_get_arg($index + 1) ? $sheet = func_get_arg($index + 1) : ($sheet = 'sDEF');
     @func_get_arg($index + 2) ? $lang = func_get_arg($index + 2) : ($lang = 'lDEF');
     @func_get_arg($index + 3) ? $value = func_get_arg($index + 3) : ($value = 'vDEF');
     is_array($_flexForm) ? $sheetArray = $_flexForm['data'][$sheet][$lang] : ($sheetArray = '');
     $result = null;
     if (is_array($sheetArray)) {
         $result = self::_getFFValueFromSheetArray($sheetArray, explode('/', $fieldName), $value);
     }
     return $result;
 }