function suggest_store_form($auto_select = array('intent' => 1), $loc = '') { global $LANG; // id is important only for auto select (intent), please read the documentation $intent = array(1 => $LANG['suggestion_store_owner'], 2 => $LANG['suggestion_just_suggestion']); $form = '<div class="suggest_store_form other_form">'; if ($_SERVER['REQUEST_METHOD'] == 'POST' && isset($_POST['suggest_store_form' . $loc]) && \site\utils::check_csrf($_POST['suggest_store_form' . $loc]['csrf'], 'suggest_store' . $loc . '_csrf')) { $pd = \site\utils::validate_user_data($_POST['suggest_store_form' . $loc]); try { $id = $GLOBALS['me'] ? $GLOBALS['me']->ID : 0; \user\main::suggest_store($id, $pd, $intent); $form .= '<div class="success">' . $LANG['suggestion_sent'] . '</div>'; unset($pd); } catch (Exception $e) { $form .= '<div class="error">' . $e->getMessage() . '</div>'; } } $csrf = $_SESSION['suggest_store' . $loc . '_csrf'] = \site\utils::str_random(12); $form .= '<form method="POST" action="#widget_suggest"> <div class="form_field"><label for="suggest_store_form' . $loc . '[intent]"></label> <div><select name="suggest_store_form' . $loc . '[intent]" id="suggest_store_form' . $loc . '[intent]">'; foreach ($intent as $k => $v) { $form .= '<option value="' . $k . '"' . ($_SERVER['REQUEST_METHOD'] != 'POST' && !empty($auto_select['intent']) && ($auto_select['intent'] == $k || $auto_select['intent'] == $v) || isset($pd['intent']) && $pd['intent'] == $k ? ' selected' : '') . '>' . $v . '</option>'; } $form .= '</select></div> </div> <div class="form_field"><label for="suggest_store_form' . $loc . '[name]">' . $LANG['form_name'] . ':</label> <div><input type="text" name="suggest_store_form' . $loc . '[name]" id="suggest_store_form[name]" value="' . (isset($pd['name']) ? $pd['name'] : '') . '" placeholder="' . $LANG['suggestion_name_ph'] . '" required /></div></div> <div class="form_field"><label for="suggest_store_form' . $loc . '[url]">' . $LANG['form_store_url'] . ':</label> <div><input type="text" name="suggest_store_form' . $loc . '[url]" id="suggest_store_form[url]" value="' . (isset($pd['url']) ? $pd['url'] : 'http://') . '" placeholder="http://" required /></div></div> <div class="form_field"><label for="suggest_store_form' . $loc . '[description]">' . $LANG['form_description'] . ':</label> <div><textarea name="suggest_store_form' . $loc . '[description]" id="suggest_store_form[description]">' . (isset($pd['description']) ? $pd['description'] : '') . '</textarea></div></div> <div class="form_field"><label for="suggest_store_form' . $loc . '[message]">' . $LANG['form_message_for_us'] . ':</label> <div><textarea name="suggest_store_form' . $loc . '[message]" id="suggest_store_form[message]">' . (isset($pd['message']) ? $pd['message'] : '') . '</textarea></div></div> <input type="hidden" name="suggest_store_form' . $loc . '[csrf]" value="' . $csrf . '" /> <button>' . $LANG['send'] . '</button> </form> </div>'; return $form; }