} else if (!DiaryDAO.canUserEditDiary(loginUser, diary)) {
msgs.add("editlog", new ActionMessage("error.access_deny"));
} else {
boolean catalog_can_access = false;
if (diary.getCatalog().getId() != diaryForm.getCatalogId()) {
SiteBean site = diary.getSite();
CatalogBean catalog = null;
// վ�����Է���վ�ڵ��κη���
if (site.isOwner(loginUser)) {
catalog = CatalogDAO.getCatalogByID(diaryForm
.getCatalogId());
if (catalog.getSite().getId() == site.getId())
catalog_can_access = true;
} else {
// �г��û��ڸ�վ��ɷ��ʵ��ռǷ���
List catalogs = CatalogDAO.listCatalogs(site, loginUser, true);
for (int i = 0; catalogs != null && i < catalogs.size(); i++) {
CatalogBean t_catalog = (CatalogBean) catalogs
.get(i);
if (t_catalog.getId() == diaryForm.getCatalogId()) {
catalog = t_catalog;
catalog_can_access = true;
break;
}
}
}
// �����ռ���������
if (catalog != null) {
diary.getCatalog().incArticleCount(-1);
diary.setCatalog(catalog);
catalog.incArticleCount(1);
}
} else
catalog_can_access = true;
if (catalog_can_access) {
SiteBean site = diary.getSite();
// �����ռ�
boolean updateTags = false;
if (!StringUtils.equals(diary.getKeyword(), diaryForm
.getTags())) {
updateTags = true;