Skip to content

Commit 1a1bf14

Browse files
authored
deploy to prod (#11)
* feat(about): ai usage rules * fix(profile): wrong page title after year change * chore(footer): support year * chore(index): include csp * fix(index): revert policy
1 parent 4f19e72 commit 1a1bf14

File tree

3 files changed

+33
-7
lines changed

3 files changed

+33
-7
lines changed

src/app/components/about/page-about/page-about.component.html

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,30 @@ <h2>FAQ</h2>
4444
</div>
4545
</div>
4646

47+
<div class="faq-container">
48+
<div class="question">Moho používat AI pro řešení úloh?</div>
49+
<div class="answer">
50+
<p>
51+
V Naskoč použítí AI nástrojů pro generování kódu nezakazujeme, nicméně je potřeba k jejich využití přistupovat
52+
obezřetně a při dodržení tří podmínek:
53+
</p>
54+
<ul>
55+
<li>kód generovaný pomocí AI nesmí řešit hlavní část úlohy (viz pravidlo o podvádění)</li>
56+
<li>kód generovaný pomocí AI musí být ocitován (viz pravidlo o citacích), uvedení např. komentáře "Tato část kódu
57+
byla vygenerována pomocí GitHub Copilot" je pro potřeby KSI dostačující</li>
58+
<li>při dotazu ze strany organizátorů musíš umět vysvětlit, co přesně vygenerovaný kód dělá (musíš tedy vygenerovanému
59+
kódu rozumět)</li>
60+
</ul>
61+
<p>
62+
Zároveň je potřeba mít na paměti, že kód, který za tebe napíše AI je kód, jehož psaní si neprocvičíš
63+
(a procvičení psaní kódu je možná přesně to, co jako začínající programátor potřebuješ).
64+
Na druhou stranu ti AI může ukázat způsob, který tě zatím nenapadl a může ti tak pomoci naučit se něco nového.
65+
To, co je pro tebe přínosnější, necháme už na tvém vlastním zvážení. Při vytváření těchto pravidel jsme vycházeli
66+
i z <a target="_blank" href="https://www.muni.cz/o-univerzite/uredni-deska/stanovisko-k-vyuzivani-ai">Stanoviska k využívání AI</a> od MU.
67+
</p>
68+
</div>
69+
</div>
70+
4771
<div class="faq-container">
4872
<div class="question">Kdo Naskoč organizuje a podporuje?</div>
4973
<div class="answer">

src/app/components/profile/page-profile/page-profile.component.ts

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -16,14 +16,15 @@ import { BarValue } from 'ngx-bootstrap/progressbar/progressbar-type.interface';
1616
import { ROUTES } from '../../../../routes/routes';
1717
import { ProfileResponse, User } from '../../../../api/backend';
1818
import { TranslateService } from '@ngx-translate/core';
19+
import { SubscribedComponent } from '../../../util';
1920

2021
@Component({
2122
selector: 'ksi-page-profile',
2223
templateUrl: './page-profile.component.html',
2324
styleUrls: ['./page-profile.component.scss'],
2425
changeDetection: ChangeDetectionStrategy.OnPush
2526
})
26-
export class PageProfileComponent implements OnInit {
27+
export class PageProfileComponent extends SubscribedComponent implements OnInit {
2728
@ViewChild('modalDiploma', { static: true })
2829
modalDiploma: TemplateRef<unknown>;
2930

@@ -60,6 +61,7 @@ export class PageProfileComponent implements OnInit {
6061
private modal: ModalService,
6162
private achievement: AchievementService
6263
) {
64+
super();
6365
}
6466

6567
ngOnInit(): void {
@@ -274,10 +276,10 @@ export class PageProfileComponent implements OnInit {
274276
}
275277

276278
showDiploma(): void {
277-
this.user$.pipe(
279+
this.subscribe(this.user$.pipe(
278280
mergeMap((user) => this.diplomaService.userDiplomaURL(user)),
279-
take(1)
280-
).subscribe((diplomaURL) => {
281+
take(1)),
282+
(diplomaURL) => {
281283
if (diplomaURL === undefined) {
282284
return;
283285
}
@@ -290,14 +292,14 @@ export class PageProfileComponent implements OnInit {
290292

291293
grantSuccessfulTrophy(grantSuccessfulButton: HTMLButtonElement): void {
292294
grantSuccessfulButton.disabled = true;
293-
combineLatest([this.user$, this.achievement.getSpecialAchievement('successful')]).pipe(
295+
this.subscribe(combineLatest([this.user$, this.achievement.getSpecialAchievement('successful')]).pipe(
294296
take(1),
295297
mergeMap(([user, achievement]) => combineLatest([of(user), this.backend.http.adminAchievementsGrant({
296298
users: [user.id],
297299
achievement: achievement.id,
298300
task: null
299301
})])),
300302
mergeMap(([user]) => this.users.cache.refresh(user.id))
301-
).subscribe();
303+
));
302304
}
303305
}

src/assets/i18n/cs.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@
4141
}
4242
},
4343
"footer": {
44-
"license": "Naskoč na FI je akcí <a href='https://zverinec.fi.muni.cz/' target='_blank'>Spolku přátel severské zvěře</a>. Zaujalo tě to? Přidej se do našeho týmu! Obsah tohoto webu je poskytován pod licencí CC BY-NC v4.0. Copyright © Naskoč na FI 2022–2023.",
44+
"license": "Naskoč na FI je akcí <a href='https://zverinec.fi.muni.cz/' target='_blank'>Spolku přátel severské zvěře</a>. Zaujalo tě to? Přidej se do našeho týmu! Obsah tohoto webu je poskytován pod licencí CC BY-NC v4.0. Copyright © Naskoč na FI 2022–2024.",
4545
"version": "Verze webu",
4646
"bug-report": "Nahlásit chybu webu",
4747
"privacy-policy": "Zpracování osobních údajů"

0 commit comments

Comments
 (0)