mirror of
https://github.com/IRBorisov/ConceptPortal.git
synced 2025-06-26 13:00:39 +03:00
Fix library UI errors
This commit is contained in:
parent
8459b49032
commit
81931d06d6
|
@ -213,10 +213,14 @@ class TestLibraryViewset(APITestCase):
|
||||||
self.assertEqual(response.status_code, 200)
|
self.assertEqual(response.status_code, 200)
|
||||||
self.assertFalse(_response_contains(response, self.unowned))
|
self.assertFalse(_response_contains(response, self.unowned))
|
||||||
|
|
||||||
|
user2 = User.objects.create(username='UserTest2')
|
||||||
Subscription.subscribe(user=self.user, item=self.unowned)
|
Subscription.subscribe(user=self.user, item=self.unowned)
|
||||||
|
Subscription.subscribe(user=user2, item=self.unowned)
|
||||||
|
Subscription.subscribe(user=user2, item=self.owned)
|
||||||
response = self.client.get('/api/library/active')
|
response = self.client.get('/api/library/active')
|
||||||
self.assertEqual(response.status_code, 200)
|
self.assertEqual(response.status_code, 200)
|
||||||
self.assertTrue(_response_contains(response, self.unowned))
|
self.assertTrue(_response_contains(response, self.unowned))
|
||||||
|
self.assertEqual(len(response.data), 3)
|
||||||
|
|
||||||
def test_subscriptions(self):
|
def test_subscriptions(self):
|
||||||
response = self.client.delete(f'/api/library/{self.unowned.id}/unsubscribe')
|
response = self.client.delete(f'/api/library/{self.unowned.id}/unsubscribe')
|
||||||
|
|
|
@ -25,7 +25,9 @@ class LibraryActiveView(generics.ListAPIView):
|
||||||
user = self.request.user
|
user = self.request.user
|
||||||
if not user.is_anonymous:
|
if not user.is_anonymous:
|
||||||
# pylint: disable=unsupported-binary-operation
|
# pylint: disable=unsupported-binary-operation
|
||||||
return m.LibraryItem.objects.filter(Q(is_common=True) | Q(owner=user) | Q(subscription__user=user))
|
return m.LibraryItem.objects.filter(
|
||||||
|
Q(is_common=True) | Q(owner=user) | Q(subscription__user=user)
|
||||||
|
).distinct()
|
||||||
else:
|
else:
|
||||||
return m.LibraryItem.objects.filter(is_common=True)
|
return m.LibraryItem.objects.filter(is_common=True)
|
||||||
|
|
||||||
|
|
|
@ -28,7 +28,7 @@ function UserDropdown({ hideDropdown }: UserDropdownProps) {
|
||||||
|
|
||||||
const navigateMyWork = () => {
|
const navigateMyWork = () => {
|
||||||
hideDropdown();
|
hideDropdown();
|
||||||
navigate(`/library?filter=${LibraryFilterStrategy.PERSONAL}`);
|
navigate(`/library`);
|
||||||
};
|
};
|
||||||
|
|
||||||
return (
|
return (
|
||||||
|
|
|
@ -12,7 +12,7 @@ import { useRSForm } from '../../context/RSFormContext';
|
||||||
import { useConceptTheme } from '../../context/ThemeContext';
|
import { useConceptTheme } from '../../context/ThemeContext';
|
||||||
import useModificationPrompt from '../../hooks/useModificationPrompt';
|
import useModificationPrompt from '../../hooks/useModificationPrompt';
|
||||||
import { prefixes, TIMEOUT_UI_REFRESH } from '../../utils/constants';
|
import { prefixes, TIMEOUT_UI_REFRESH } from '../../utils/constants';
|
||||||
import { ICstCreateData, ICstRenameData, LibraryFilterStrategy, SyntaxTree } from '../../utils/models';
|
import { ICstCreateData, ICstRenameData, SyntaxTree } from '../../utils/models';
|
||||||
import { createAliasFor } from '../../utils/staticUI';
|
import { createAliasFor } from '../../utils/staticUI';
|
||||||
import DlgCloneRSForm from './DlgCloneRSForm';
|
import DlgCloneRSForm from './DlgCloneRSForm';
|
||||||
import DlgCreateCst from './DlgCreateCst';
|
import DlgCreateCst from './DlgCreateCst';
|
||||||
|
@ -207,7 +207,7 @@ function RSTabs() {
|
||||||
}
|
}
|
||||||
destroySchema(schema.id, () => {
|
destroySchema(schema.id, () => {
|
||||||
toast.success('Схема удалена');
|
toast.success('Схема удалена');
|
||||||
navigate(`/library?filter=${LibraryFilterStrategy.PERSONAL}`);
|
navigate('/library');
|
||||||
});
|
});
|
||||||
}, [schema, destroySchema, navigate]);
|
}, [schema, destroySchema, navigate]);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user