У товара частично такая фиксация и так есть штатно, но без логина, только дата/время.
Очевидно, что дополнение имеет смысл только когда администрируют сайт несколько разных людей и у них отдельные (свои) логины.
Недостатки:
===========
Не ведется история изменений, информация сохраняется только о последнем. Сделать легко, но задача не ставилась.
Нет фиксации какие именно из полей были изменены. Тоже задача не ставилась. Сделать довольно непросто, но можно.
1.jpg 35.44К 17 Количество загрузок:
2.jpg 37.67К 19 Количество загрузок:
3.jpg 40.25К 16 Количество загрузок:
4.jpg 25.22К 9 Количество загрузок:
1. копируем файлы
changer_functions.php -> /core/functions/admin/
addon.php -> /core/includes/admin/
2. в файле admin.php
2.1. после строк (строк!)
$pid = (int)$_POST["must_delete"];
}
вставляем
# BEGIN логгинг меняющего админа
changeSetCategory($pid);
# END логгинг меняющего админа
2.2. ищем
<select name="parent" id="parent"
и чуть ниже (строк на двадцать) вместо
</select></td></tr>
вставляем
<!-- BEGIN логгинг меняющего админа -->
<!--</select></td></tr>-->
</select> Изменено: <span style="color:red;"><?php echo changeGetCategory((int)$_GET["categoryID"]);?></span></td></tr>
<!-- END логгинг меняющего админа -->
2.3. ищем
<select name="categoryID" >
и чуть ниже (строк на десять) вместо
</select></td></tr>
вставляем
<!-- BEGIN логгинг меняющего админа -->
<!--</select></td></tr>-->
</select> Изменено: <span style="color:red;"><?php echo changeGetProduct((int)$_GET["productID"]);?></span></td></tr>
<!-- END логгинг меняющего админа -->
3. в файле product_functions.php
3.1. в функции UpdateProduct в начало или еще куда вставляем
# BEGIN логгинг меняющего админа
changeSetProduct($productID);
# END логгинг меняющего админа
3.2. в функции AddProduct
после
$insert_id = db_insert_id();
вставляем
# BEGIN логгинг меняющего админа
changeSetProduct($insert_id);
# END логгинг меняющего админа
4. в файле aux_pages_functions.php
4.1. в функции auxpgUpdateAuxPage в начало или еще куда вставляем
# BEGIN логгинг меняющего админа
changeSetPage((int)$aux_page_ID);
# END логгинг меняющего админа
4.2. в функции auxpgAddAuxPage в конец вставляем
# BEGIN логгинг меняющего админа
changeSetPage(db_insert_id());
# END логгинг меняющего админа
5. в файле news_function.php
5.1. в функции newsAddNews
вместо
return db_insert_id();
вставляем
# BEGIN логгинг меняющего админа
#return db_insert_id();
$nid = db_insert_id();
changeSetNews($nid);
return $nid;
# END логгинг меняющего админа
5.2. в функции newsUpdateNews в начало или еще куда вставляем
# BEGIN логгинг меняющего админа
changeSetNews((int)$id_news);
# END логгинг меняющего админа
6. в файле catalog_products_categories.php
6.1. после строк (строк!)
if ( isset($val["price"]) )
{
вставляем
# BEGIN логгинг меняющего админа
changeSetProduct((int)$key);
# END логгинг меняющего админа
эти строки в файле встречаются два раза, т.е. и вставку надо сделать в двух местах
6.2. в случае дополнения "колонки цен"
после
else db_query("REPLACE ".DB_PRFX."multiprice SET priceID=".$_GET['to'].", prdID=".$row['productID'].", mprice=$new_price");
вставляем
# BEGIN логгинг меняющего админа
changeSetProduct($row['productID']);
# END логгинг меняющего админа
7. в файле custord_aux_pages.tpl.html
7.1. после
<td align="left" width="100%" class="toph3">{$smarty.const.AUX_PAGE_REF}</td>
вставляем
{* BEGIN логгинг меняющего админа *}
<td>Изменено</td>
{* END логгинг меняющего админа *}
7.2. после
<td align="left"><a href="{if $smarty.const.CONF_MOD_REWRITE eq 1}page_{$aux_pages[i].aux_page_ID}.html">{$aux_pages[i].aux_page_name}{else}index.php?show_aux_page={$aux_pages[i].aux_page_ID}">{$aux_pages[i].aux_page_name}{/if}</a></td>
вставляем
{* BEGIN логгинг меняющего админа *}
<td>{$aux_pages[i].aux_page_ID|changeGetPage|replace:' ':' '}</td>
{* END логгинг меняющего админа *}
7.3. чуть выше и ниже меняем colspan="4" на colspan="5"
8. в файле modules_news.tpl.html
8.1. после
<td align="left" width="100%">{$smarty.const.ADMIN_NEWS_NAMEF}</td>
вставляем
{* BEGIN логгинг меняющего админа *}
<td>Изменено</td>
{* END логгинг меняющего админа *}
8.2. после
<td align="left">{$news_posts[i].title}</td>
вставляем
{* BEGIN логгинг меняющего админа *}
<td>{$news_posts[i].NID|changeGetNews|replace:' ':' '}</td>
{* END логгинг меняющего админа *}
8.3. чуть выше и ниже меняем colspan="3" на colspan="4"