Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > JavaScript: для новичков > Скрипт редактируемой таблицы


Автор: monzya 6.11.2012, 08:37
Есть сайт на joomla.
Есть задача: сделать прайс-лист ввиде таблицы, которую конкретный пользователь, зайдя под своим логином, может редактировать из фронтенда. Нашел скрипт редактируемой таблицы, но без возможности разделения доступа

Код

<?php
defined('_JEXEC') OR defined('_VALID_MOS') OR die( "Direct Access Is Not Allowed" );
?>   
<script type="text/javascript" src="http://yandex.st/jquery/1.6.0/jquery.min.js"></script>
    <script language="javascript">

$(function()    {
    $('table#editable td').click(function(e)    {
        var t = e.target || e.srcElement;
        var elm_name = t.tagName.toLowerCase();
        if(elm_name == 'input')    {return false;}
        var val = $(this).html();
        var code = '<input type="text" id="edit" value="'+val+'"/>';
        $(this).empty().append(code);
        $('#edit').focus();
        $('#edit').blur(function()    {
            var val = $(this).val();
            $(this).parent().empty().html(val);
        });
    });
    $(window).keydown(function(event){
        if(event.keyCode == 13) {
            $('#edit').blur();
        }
    });
});
</script>

<table border="1px" id="editable" style="width:300px;">
<tr>
    <td width="30%">1</td>
    <td width="30%">2</td>
    <td width="30%">3</td>
</tr>
<tr>
    <td>4</td>
    <td>5</td>
    <td>6</td>
</tr>
<tr>
    <td>7</td>
    <td>8</td>
    <td>9</td>
</tr>
</table>




Вопрос: как сделать возможным редактирование ячеек только для нужного пользователя, а всем остальным выводить таблицу без возможности редактирования?

Автор: zergi 6.11.2012, 10:26
Выводите данный скрипт на страницу только для нужного пользователя.
Конечно же, после отправки на сервер, нужно при сохранении проверять, можно ли этому пользователю было что-то менять.

Автор: monzya 6.11.2012, 10:34
это понятно, я могу дать права админа этому пользователю и вывести скрипт только для пользователей с этими правами. но все остальные пользователи тогда вообще не увидят таблицу, а она должна для них выводиться, только редактироваться не должна

Автор: Aliance 6.11.2012, 10:51
Для "нужных" пользователей отдавать табличку такую, для остальных - только с raw-data.

Автор: zergi 6.11.2012, 11:06
Цитата

это понятно, я могу дать права админа этому пользователю и вывести скрипт только для пользователей с этими правами. но все остальные пользователи тогда вообще не увидят таблицу, а она должна для них выводиться, только редактироваться не должна 


Почему не увидят? Табличку показываете всем, а скрипт только тем кому можно редактировать.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)