Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- static function _evalIf($template)
- {
- $template = preg_replace_callback (
- '/<IF (.+) >([\n.]+)<\/IF>/',
- create_function ('$matches', 'if (Fartie::_ifTry ($matches[1])){ return $matches[2]; }else{ return ""; }'),
- $template //TO-DO: Add support for IF-Blocks
- );
- }
- static function _ifTry($CONDITION)
- {
- $CONDITION = str_replace ('.', '::', $CONDITION);
- $CONDITION = preg_replace_callback ('/{(.+)}/', create_function ('$matches', '$STATE = Fartie::_ifEval ($matches[0]); if ($STATE){ return $matches[0]; }else{ return false;}'), $CONDITION);
- return $CONDITION;
- }
- static function _ifEval($CONDITION)
- {
- $CONDITION = str_replace (array ('{', '}'), array ('', ''), $CONDITION);
- $GET_STATE = create_function ('$IF', 'return Fartie::_ifDo ($IF);');
- $STATE = $GET_STATE($CONDITION);
- return $STATE;
- }
- static function _ifDo($CONDITION)
- {
- $GET_STATE = create_function ('', 'if ('. $CONDITION .'){ return 1; }else{ return 0; }');
- $STATE = $GET_STATE();
- return $STATE;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement