diff --git a/db/postgresql/issue395_pass_recovery.sql b/db/postgresql/issue395_pass_recovery.sql deleted file mode 100644 index c1ff01942cb3253493ff1d22a426a015bbbfd81c..0000000000000000000000000000000000000000 --- a/db/postgresql/issue395_pass_recovery.sql +++ /dev/null @@ -1,42 +0,0 @@ -DROP FUNCTION IF EXISTS public.createrecoverytoken(paccountoremail character varying, ptoken character varying); -CREATE OR REPLACE FUNCTION public.createrecoverytoken(paccountoremail character varying, ptoken character varying) - RETURNS character varying -LANGUAGE plpgsql -AS $function$ -DECLARE vAccountID INT DEFAULT null; - DECLARE vUserFullName TEXT; -BEGIN - --select public.createrecoverytoken( - -- :paccountoremail, -- put the paccountoremail parameter value instead of 'paccountoremail' (varchar) - -- :ptoken -- put the ptoken parameter value instead of 'ptoken' (varchar) - --); - -- get account ID - SELECT accounts.ID INTO vAccountID - FROM accounts - WHERE accounts.EMail = pAccountOrEMail OR - accounts.Login = pAccountOrEMail - LIMIT 1; - IF vAccountID is null THEN - RETURN ''; - END IF; - - vUserFullName := GetUserFullNameByAccountID(vAccountID); - IF vUserFullName IS NULL OR vUserFullName = '' THEN - RETURN ''; - END IF; - - -- transform all unused recovery tokens into used - UPDATE recovery_tokens - SET isUsed = 1 - WHERE isUsed = 0 AND - AccountID = vAccountID; - - -- handle catch constraints violations - INSERT INTO recovery_tokens - ( AccountID, Token ) - VALUES (vAccountID, pToken); - RETURN vUserFullName; - EXCEPTION - when others then RETURN -2; -- тип ??? -END -$function$; diff --git a/db/postgresql/issue335_copy_map.sql b/db/postgresql/patch_2_5_0.sql similarity index 78% rename from db/postgresql/issue335_copy_map.sql rename to db/postgresql/patch_2_5_0.sql index 12be3451a135670b0cde4ac968b73b621523b670..621601c30bdfdeb4be5078bdd4f77a26d5df0c29 100644 --- a/db/postgresql/issue335_copy_map.sql +++ b/db/postgresql/patch_2_5_0.sql @@ -1,3 +1,4 @@ +DROP FUNCTION IF EXISTS public.copy_map(withukd integer, withoutukd integer); CREATE OR REPLACE FUNCTION public.copy_map(withukd integer, withoutukd integer) RETURNS integer LANGUAGE plpgsql @@ -113,3 +114,46 @@ begin return vCountModules; end; $function$; + +DROP FUNCTION IF EXISTS public.createrecoverytoken(paccountoremail character varying, ptoken character varying); +CREATE OR REPLACE FUNCTION public.createrecoverytoken(paccountoremail character varying, ptoken character varying) + RETURNS character varying +LANGUAGE plpgsql +AS $function$ +DECLARE vAccountID INT DEFAULT null; + DECLARE vUserFullName TEXT; +BEGIN + --select public.createrecoverytoken( + -- :paccountoremail, -- put the paccountoremail parameter value instead of 'paccountoremail' (varchar) + -- :ptoken -- put the ptoken parameter value instead of 'ptoken' (varchar) + --); + -- get account ID + SELECT accounts.ID INTO vAccountID + FROM accounts + WHERE accounts.EMail = pAccountOrEMail OR + accounts.Login = pAccountOrEMail + LIMIT 1; + IF vAccountID is null THEN + RETURN ''; + END IF; + + vUserFullName := GetUserFullNameByAccountID(vAccountID); + IF vUserFullName IS NULL OR vUserFullName = '' THEN + RETURN ''; + END IF; + + -- transform all unused recovery tokens into used + UPDATE recovery_tokens + SET isUsed = 1 + WHERE isUsed = 0 AND + AccountID = vAccountID; + + -- handle catch constraints violations + INSERT INTO recovery_tokens + ( AccountID, Token ) + VALUES (vAccountID, pToken); + RETURN vUserFullName; + EXCEPTION + when others then RETURN -2; -- тип ??? +END +$function$; diff --git a/~dev_rating/application/views/faq.twig b/~dev_rating/application/views/faq.twig index 53c190072d2ee61c636a00c8932bf658ed2f31b2..4dfea9ecdc4dd30bfc40001e5706b267cb3e3d4e 100644 --- a/~dev_rating/application/views/faq.twig +++ b/~dev_rating/application/views/faq.twig @@ -91,6 +91,23 @@ </p> </div> + <div class="question"> + <p> + <b>Р’РѕРїСЂРѕСЃ:</b> РњРЅРµ как преподавателю приходится заполнять РЈРљР” РїРѕ большому числу одинаковых дисциплин. + Нельзя ли как-то упростить этот процесс? + </p> + <p> + <p style="background-color:#C2E4FF;"> + <b>Ответ:</b> Возможно cкопировать уже заполненную РЈРљР” между дисциплинами. Для этого нужно нажать + РЅР° РєРЅРѕРїРєСѓ "Рмпортировать РЈРљР”" РЅР° странице редактирования дисциплины. Делать это может только автор дисциплины. + Обратите внимание, что копировать можно только РЈРљР” дисциплины СЃ одинаковым типом контроля. + <p style="background-color:#ECDDDD;"> + Перед копированием РІСЃРµ старые модули (если есть) РёР· РЈРљР” Р±СѓРґСѓС‚ удалены! + </p> + </p> + </p> + </div> + <div class="question"> <p> <b>Р’РѕРїСЂРѕСЃ:</b> Дисциплина РїРѕ РєСѓСЂСЃРѕРІРѕР№ работе или практике есть РІ моей нагрузке преподавателя, РЅРѕ РЅРµ появилась РІ СБРС, почему?