Пример #1
0
function EditNote($login, $action, $text, $rating = 0)
{
    session_start();
    $objResponse = new xajaxResponse();
    $nuid = get_uid(false);
    //$text = str_replace('&', '&', $text);
    //$text = stripslashes($text);
    $text = strip_only(trim($text), '<script>');
    $text = change_q_x($text, FALSE, TRUE, "", false, false);
    // !! кол-во символов также указано в /scripts/note.js
    if (strlen($text) > 200) {
        $text = substr($text, 0, 200);
    }
    switch ($action) {
        case "add":
            if ($text) {
                $error = notes::Add($nuid, $login, $text, 0, "?");
            }
            break;
        case "update":
            if ($text) {
                $error = notes::Update($nuid, $login, $text, $rating, "?");
            } else {
                $error = notes::DeleteNote($nuid, $login, "?");
                $action = 'delete';
            }
            break;
    }
    if ($error) {
        return false;
    }
    $text_src = input_ref_scr(stripslashes($text));
    $text_src = str_replace('&', '&amp;', $text_src);
    $text = reformat($text, 54, 0, 0, 1, 54);
    //$text = addslashes($text);
    switch ($action) {
        case 'add':
        case 'update':
            if (is_empty_html($text)) {
                $s = "\n                    document.getElement('div.form-templ').setStyle('display', 'none');\n                    document.getElement('div.form-templ input').set('disabled', false);\n                    cancelNote();\n                ";
                break;
            }
            $s = "\n                n = \$('note_{$login}');\n                n.getElement('.uprj-note-cnt>p').set('html', '{$text}');\n                n.setStyle('display', 'block');\n\n                document.getElement('div.form-templ').setStyle('display', 'none');\n                document.getElement('div.form-templ input').set('disabled', false);\n\n                if(\$('team_{$login}')) \$('team_{$login}').getElement('.uprj-st3').setStyle('display', 'none');\n                cancelNote();\n            ";
            break;
        case 'delete':
            $s = "\n                n = \$('note_{$login}');\n                n.getElement('.uprj-note-cnt>p').set('html', '');\n                n.setStyle('display', 'none');\n\n                if(\$('team_{$login}')) \$('team_{$login}').getElement('.uprj-st3').setStyle('display', 'inline-block');\n                document.getElement('div.uprj-note.form-templ').store('action', false);\n                cancelNote();\n            ";
            break;
    }
    $objResponse->script($s);
    return $objResponse;
}
Пример #2
0
function FormSave($login, $text, $action, $rl, $num)
{
    require_once $_SERVER['DOCUMENT_ROOT'] . "/classes/users.php";
    session_start();
    $objResponse = new xajaxResponse();
    $action = trim($action);
    // Режем тег <script>
    $text = strip_only(trim($text), '<script>');
    //$text = stripslashes($text);
    $text = change_q_x($text, FALSE, TRUE, "", false, false);
    if ($rl == '1') {
        $s_role = "_emp";
    } else {
        $s_role = "_frl";
    }
    if ($text == '') {
        $s_role = "";
    }
    $noassign = 0;
    $nuid = get_uid(false);
    $user = new users();
    $nTargetId = $user->GetUid($sError, $login);
    switch ($action) {
        case "add":
            if ($text) {
                $error = notes::Add($nuid, (int) $nTargetId, $text);
            }
            break;
        case "update":
            if ($text) {
                $error = notes::Update($nuid, (int) $nTargetId, $text);
            } else {
                $error = notes::DeleteNote($nuid, (int) $nTargetId);
            }
            break;
        default:
            $noassign = 1;
    }
    $text = stripslashes($text);
    $text = reformat($text, 24, 0, 0, 1, 24);
    if ($s_role == "") {
        $text = "Вы можете оставить заметку о&nbsp;пользователе. Видеть написанное будете только вы и никто другой.";
    }
    if (!$noassign) {
        $GLOBALS['xajax']->setCharEncoding("windows-1251");
        $objResponse->assign("notetext" . $num, "innerHTML", $text);
        $objResponse->assign("notetd" . $num, "className", "note" . $s_role);
        if (!$s_role == "") {
            $objResponse->script("txt[" . $num . "] = '" . $text . "';");
        }
        $objResponse->script("act[" . $num . "] = '" . ($s_role ? "update" : "add") . "';");
    }
    return $objResponse;
}